DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T i

⟦207fa2bc5⟧ TextFile

    Length: 6607 (0x19cf)
    Types: TextFile
    Names: »init_disp.c«

Derivation

└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987
    └─⟦this⟧ »EUUGD18/General/Bridge/init_disp.c« 

TextFile

#ifndef lint
static	char sccsid[] = "@(#)init_disp.c 1.1 86/02/05 SMI"; /* from UCB 1.2 83/06/23 */
#endif

/*
 * init_disp contains the initialization code for the display package,
 * as well as the signal handling routines
 */

#include "talk.h"
#include <signal.h>

extern int	ID;
int    curses_initialized;

/* 
 * set up curses, catch the appropriate signals, and build the
 * various windows
 */

init_disp()
{	int i, t;

    void sig_sent();

    initscr();
    curses_initialized = 1;

    clear();
    refresh();

    noecho();
    crmode();

    signal(SIGINT, sig_sent);
    signal(SIGPIPE, sig_sent);

	/* curses takes care of ^Z */

    comwin[0].x_nlines = 4;
    comwin[0].x_ncols = 15;
    comwin[0].x_win = newwin(4, 15, 0, 22);
    
    comwin[1].x_nlines = 4;
    comwin[1].x_ncols = 15;
    comwin[1].x_win = newwin(4, 15, 6, 40);
    
    comwin[2].x_nlines = 4;
    comwin[2].x_ncols = 15;
    comwin[2].x_win = newwin(4, 15, 13, 22);
    
    comwin[3].x_nlines = 4;
    comwin[3].x_ncols = 15;
    comwin[3].x_win = newwin(4, 15, 6, 5);
    
    comwin[4].x_nlines = 1;
    comwin[4].x_ncols = 2;
    comwin[4].x_win = newwin(1, 2, 5, 28);
    
    comwin[5].x_nlines = 1;
    comwin[5].x_ncols = 2;
    comwin[5].x_win = newwin(1, 2, 8, 35);
    
    comwin[6].x_nlines = 1;
    comwin[6].x_ncols = 2;
    comwin[6].x_win = newwin(1, 2, 11, 28);
    
    comwin[7].x_nlines = 1;
    comwin[7].x_ncols = 2;
    comwin[7].x_win = newwin(1, 2, 8, 22);
    
    comwin[8].x_nlines = 2;
    comwin[8].x_ncols = 4;
    comwin[8].x_win = newwin(2, 4, 1, 7);
    
    comwin[9].x_nlines = 3;
    comwin[9].x_ncols = 11;
    comwin[9].x_win = newwin(3, 11, 5, 67);
    
    comwin[10].x_nlines = 7;
    comwin[10].x_ncols = 17;
    comwin[10].x_win = newwin(7, 17, 5, 21);
    
    comwin[11].x_nlines = 1;
    comwin[11].x_ncols = 30;
    comwin[11].x_win = newwin(1, 30, 1, 50);
    comwin[12].x_nlines = 1;
    comwin[12].x_ncols = 40;
    comwin[12].x_win = newwin(1, 40, 16, 40);
    
    comwin[13].x_nlines = 24;
    comwin[13].x_ncols = 80;
    comwin[13].x_win = newwin(24, 80, 0, 0);
    
    comwin[14].x_nlines = 5;
    comwin[14].x_ncols = 19;
    comwin[14].x_win = newwin(5, 19, 18, 0);
    
    comwin[15].x_nlines = 5;
    comwin[15].x_ncols = 19;
    comwin[15].x_win = newwin(5, 19, 18, 20);
    
    comwin[16].x_nlines = 5;
    comwin[16].x_ncols = 19;
    comwin[16].x_win = newwin(5, 19, 18, 40);
    
    comwin[17].x_nlines = 5;
    comwin[17].x_ncols = 19;
    comwin[17].x_win = newwin(5, 19, 18, 60);
    
    comwin[18].x_nlines = 1;
    comwin[18].x_ncols = 20;
    comwin[18].x_win = newwin(1, 20, 16, 0);
    for (i=0; i<19; i++){ 
    	scrollok(comwin[i].x_win, FALSE);
    	wclear(comwin[i].x_win);
    };
for (i=14; i<18;++i) scrollok(comwin[i].x_win, TRUE);
	wmove(comwin[13].x_win, 1, 1);
	wprintw(comwin[13].x_win, "HAND:");
	wmove(comwin[13].x_win, 2, 1);
	wprintw(comwin[13].x_win, "VUL.:");
	wmove(comwin[13].x_win, 4, 20);
	wprintw(comwin[13].x_win, "-------------------");
	wmove(comwin[13].x_win, 5, 20);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 6, 20);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 7, 20);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 8, 20);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 9, 20);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 10, 20);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 11, 20);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 12, 20);
	wprintw(comwin[13].x_win, "-------------------");
	wmove(comwin[13].x_win, 5, 38);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 6, 38);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 7, 38);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 8, 38);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 9, 38);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 10, 38);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 11, 38);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 3, 68);
	wprintw(comwin[13].x_win, "N-S   E-W");
	wmove(comwin[13].x_win, 4, 67);
	wprintw(comwin[13].x_win, "----- -----");
	wmove(comwin[13].x_win, 5, 60);
	wprintw(comwin[13].x_win, "TRICK:     0     0");
	wmove(comwin[13].x_win, 6, 60);
	wprintw(comwin[13].x_win, "SCORE:     0     0");
	wmove(comwin[13].x_win, 7, 60);
	wprintw(comwin[13].x_win, "TOTAL:     0     0");
	wmove(comwin[13].x_win, 9, 55);
	wprintw(comwin[13].x_win, "ABBREVIATIONS --");
	wmove(comwin[13].x_win, 10, 57);
	wprintw(comwin[13].x_win, "P:PASS     N:NO TRUMP");
	wmove(comwin[13].x_win, 11, 57);
	wprintw(comwin[13].x_win, "S:SPADE    H:HEART");
	wmove(comwin[13].x_win, 12, 57);
	wprintw(comwin[13].x_win, "D:DIAMOND  C:CLUB,");
	wmove(comwin[13].x_win, 13, 57);
	wprintw(comwin[13].x_win, "X:DOUBLE  XX:REDOUBLE");
	wmove(comwin[13].x_win, 14, 57);
	wprintw(comwin[13].x_win, "T:10      F#:Finish");
	wmove(comwin[13].x_win, 17,0);
	wprintw(comwin[13].x_win, "--------------------------------------------------------------------------------");
	wmove(comwin[13].x_win, 18,19);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 18,39);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 18,59);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 19,19);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 19,39);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 19,59);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 20,19);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 20,39);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 20,59);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 21,19);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 21,39);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 21,59);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 22,19);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 22,39);
	wprintw(comwin[13].x_win, "|");
	wmove(comwin[13].x_win, 22,59);
	wprintw(comwin[13].x_win, "|");
	wrefresh(comwin[13].x_win);

    current_state = "No connection yet";
}

void sig_sent()
{
    message("Connection closing. Exiting");
    quit();
}

/*
 * All done talking...hang up the phone and reset terminal thingy's
 */

quit()
{       int i;

	if (curses_initialized) {
	    for (i=0; i<3; i++){
 	      wmove(comwin[i].x_win, comwin[i].x_nlines-1, 0);
	       wclrtoeol(comwin[i].x_win);
	       wrefresh(comwin[i].x_win);
	    };
	    endwin();
	}

	if (invitation_waiting) {
	    send_delete();
	}

	exit(0);
}