/* * stolen from MWC include files */ /* Keytbl() returned vector */ struct keytbl { char *kt_normal; /* Normal key mapping */ char *kt_shifted; /* Shifted key mapping */ char *kt_capslock; /* Caps Locked key mapping */ }; struct iorec { /* Structure pointed to by Iorec return value */ char *io_buff; /* Buffer */ short io_bufsiz; /* Buffer size in bytes */ short io_head; /* Current write pointer */ short io_tail; /* Current read pointer */ short io_low; /* Low water mark, unstop line */ short io_high; /* High water mark, stop line */ }; /* * Scan codes for miscellaneous keys. Some of these may be found in the * high word of the long returned by Bconin(BC_CON). */ #define KC_RET 0x1C /* Return key */ #define KC_CTRL 0x1D /* Control key - never returned by Bconin() */ #define KC_LSH 0x2A /* Left shift key - never returned by Bconin() */ #define KC_RSH 0x36 /* Right shift key - never returned by Bconin() */ #define KC_ALT 0x38 /* Alt key - never returned by Bconin() */ #define KC_CAPS 0x3A /* Caps lock key - never returned by Bconin() */ #define KC_F1 0x3B /* Function key 1 */ #define KC_F2 0x3C #define KC_F3 0x3D #define KC_F4 0x3E #define KC_F5 0x3F #define KC_F6 0x40 #define KC_F7 0x41 #define KC_F8 0x42 #define KC_F9 0x43 #define KC_F10 0x44 #define KC_CLR 0x47 /* Clr Home key */ #define KC_CUP 0x48 /* Cursor up */ #define KC_CLEFT 0x4B /* Cursor left */ #define KC_CRIGHT 0x4D /* Cursor right */ #define KC_CDOWN 0x50 /* Cursor down */ #define KC_INS 0x52 /* Insert key */ #define KC_UNDO 0x61 /* Undo key */ #define KC_HELP 0x62 /* Help key */ #define KC_ENT 0x72 /* Enter key */ /* * Shift key bits returned by Getshift(): */ #define GS_RSH 1 /* Right shift key */ #define GS_LSH 2 /* Left shift key */ #define GS_CTRL 4 /* Control key */ #define GS_ALT 8 /* Alt key */ #define GS_CAPS 16 /* Caps Lock key */ #define GS_RMB 32 /* Right mouse button - Clr Home */ #define GS_LMB 64 /* Left mouse button - Insert */