17dd7cddfSDavid du Colombier /* console state (for consctl) */ 27dd7cddfSDavid du Colombier typedef struct Consstate Consstate; 37dd7cddfSDavid du Colombier struct Consstate{ 47dd7cddfSDavid du Colombier int raw; 57dd7cddfSDavid du Colombier int hold; 67dd7cddfSDavid du Colombier }; 77dd7cddfSDavid du Colombier 87dd7cddfSDavid du Colombier extern Consstate* consctl(void); 97dd7cddfSDavid du Colombier extern Consstate* cs; 107dd7cddfSDavid du Colombier 117dd7cddfSDavid du Colombier #define XMARGIN 5 /* inset from border of layer */ 127dd7cddfSDavid du Colombier #define YMARGIN 5 137dd7cddfSDavid du Colombier #define INSET 3 147dd7cddfSDavid du Colombier #define BUFS 32 157dd7cddfSDavid du Colombier #define HISTSIZ 4096 /* number of history characters */ 167dd7cddfSDavid du Colombier #define BSIZE 1000 177dd7cddfSDavid du Colombier 187dd7cddfSDavid du Colombier #define SCROLL 2 197dd7cddfSDavid du Colombier #define NEWLINE 1 207dd7cddfSDavid du Colombier #define OTHER 0 217dd7cddfSDavid du Colombier 227dd7cddfSDavid du Colombier #define COOKED 0 237dd7cddfSDavid du Colombier #define RAW 1 247dd7cddfSDavid du Colombier 2580ee5cbfSDavid du Colombier /* text attributes */ 2680ee5cbfSDavid du Colombier enum { 2780ee5cbfSDavid du Colombier THighIntensity = (1<<0), 2880ee5cbfSDavid du Colombier TUnderline = (1<<1), 2980ee5cbfSDavid du Colombier TBlink = (1<<2), 3080ee5cbfSDavid du Colombier TReverse = (1<<3), 3180ee5cbfSDavid du Colombier TInvisible = (1<<4), 3280ee5cbfSDavid du Colombier }; 3380ee5cbfSDavid du Colombier 3480ee5cbfSDavid du Colombier 357dd7cddfSDavid du Colombier #define button2() ((mouse.buttons & 07)==2) 367dd7cddfSDavid du Colombier #define button3() ((mouse.buttons & 07)==4) 377dd7cddfSDavid du Colombier 387dd7cddfSDavid du Colombier struct ttystate { 397dd7cddfSDavid du Colombier int crnl; 407dd7cddfSDavid du Colombier int nlcr; 417dd7cddfSDavid du Colombier }; 427dd7cddfSDavid du Colombier extern struct ttystate ttystate[]; 437dd7cddfSDavid du Colombier 447dd7cddfSDavid du Colombier #define NKEYS 32 /* max key definitions */ 457dd7cddfSDavid du Colombier struct funckey { 467dd7cddfSDavid du Colombier char *name; 477dd7cddfSDavid du Colombier char *sequence; 487dd7cddfSDavid du Colombier }; 497dd7cddfSDavid du Colombier extern struct funckey *fk; 5032e56137SDavid du Colombier extern struct funckey vt100fk[], vt220fk[], ansifk[], xtermfk[]; 517dd7cddfSDavid du Colombier 527dd7cddfSDavid du Colombier extern int x, y, xmax, ymax, olines; 5380ee5cbfSDavid du Colombier extern int peekc, attribute; 547dd7cddfSDavid du Colombier extern char* term; 557dd7cddfSDavid du Colombier 567dd7cddfSDavid du Colombier extern void emulate(void); 577dd7cddfSDavid du Colombier extern int host_avail(void); 587dd7cddfSDavid du Colombier extern void clear(Rectangle); 597dd7cddfSDavid du Colombier extern void newline(void); 607dd7cddfSDavid du Colombier extern int get_next_char(void); 617dd7cddfSDavid du Colombier extern void ringbell(void); 6280ee5cbfSDavid du Colombier extern int number(char *, int *); 637dd7cddfSDavid du Colombier extern void scroll(int,int,int,int); 647dd7cddfSDavid du Colombier extern void backup(int); 657dd7cddfSDavid du Colombier extern void sendnchars(int, char *); 667dd7cddfSDavid du Colombier extern void sendnchars2(int, char *); 677dd7cddfSDavid du Colombier extern Point pt(int, int); 687dd7cddfSDavid du Colombier extern void funckey(int); 697dd7cddfSDavid du Colombier extern void drawstring(Point, char*, int); 707dd7cddfSDavid du Colombier 717dd7cddfSDavid du Colombier extern int debug; 727dd7cddfSDavid du Colombier extern int yscrmin, yscrmax; 737fb4e6f1SDavid du Colombier extern int attr; 747fb4e6f1SDavid du Colombier extern int defattr; 757fb4e6f1SDavid du Colombier 767fb4e6f1SDavid du Colombier extern Image *fgcolor; 777fb4e6f1SDavid du Colombier extern Image *bgcolor; 787fb4e6f1SDavid du Colombier extern Image *colors[]; 797fb4e6f1SDavid du Colombier extern Image *hicolors[]; 807fb4e6f1SDavid du Colombier extern Image *bgdefault; 817fb4e6f1SDavid du Colombier extern Image *fgdefault; 827fb4e6f1SDavid du Colombier 8380ee5cbfSDavid du Colombier extern int cursoron; 84*21abd8f2SDavid du Colombier extern int nocolor; 8580ee5cbfSDavid du Colombier 8680ee5cbfSDavid du Colombier extern void curson(int); 8780ee5cbfSDavid du Colombier extern void cursoff(void); 8880ee5cbfSDavid du Colombier extern void setdim(int, int); 8980ee5cbfSDavid du Colombier 90