|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T t
Length: 1042 (0x412) Types: TextFile Names: »tget.c«
└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987 └─⟦this⟧ »EUUGD18/General/Spacewar/tget.c«
/* * spacewar - simple simulation of termcap routines/database */ static struct { char *tnam; char *tcm,*tcl,*tce,*tso,*tse,*tus,*tue; } *tptr,ttbl[] = { {"vt100","\001\033[%02d;%02dH", "\033[;H\033[2J","\033[K","\033[7m","\033[m","\033[4m","\033[m"}, {"tvi925","\040\033=%c%c", "\032","\033T","\033G0","\033G<","\033)","\033("}, {"h19","\040\033Y%c%c", "\033E","\033K","\033p","\033q"}, {0} }; tgetent(p1,termname) char *p1,*termname; { for (tptr=ttbl;tptr->tnam && strcmp(termname,tptr->tnam);++tptr) ; return((tptr->tnam) ? 1 : 0); } char *tgetstr(cap,p2) char *cap; { if (!strcmp(cap,"cm")) return(tptr->tcm); if (!strcmp(cap,"cl")) return(tptr->tcl); if (!strcmp(cap,"ce")) return(tptr->tce); if (!strcmp(cap,"so")) return(tptr->tso); if (!strcmp(cap,"se")) return(tptr->tse); if (!strcmp(cap,"us")) return(tptr->tus); if (!strcmp(cap,"ue")) return(tptr->tue); return(0); } char *tgoto(cm,x,y) char *cm; int x,y; { static char buf[32]; sprintf(buf,cm+1,y+*cm,x+*cm); return(buf); }