rsc | b2cfc4e | 2003-09-30 17:47:41 +0000 | [diff] [blame^] | 1 | typedef struct Keyboardctl Keyboardctl; |
| 2 | |
| 3 | struct Keyboardctl |
| 4 | { |
| 5 | struct Channel *c; /* chan(Rune)[20] */ |
| 6 | |
| 7 | char *file; |
| 8 | int consfd; /* to cons file */ |
| 9 | int ctlfd; /* to ctl file */ |
| 10 | int pid; /* of slave proc */ |
| 11 | }; |
| 12 | |
| 13 | |
| 14 | extern Keyboardctl* initkeyboard(char*); |
| 15 | extern int ctlkeyboard(Keyboardctl*, char*); |
| 16 | extern void closekeyboard(Keyboardctl*); |
| 17 | |
| 18 | enum { |
| 19 | KF= 0xF000, /* Rune: beginning of private Unicode space */ |
| 20 | /* KF|1, KF|2, ..., KF|0xC is F1, F2, ..., F12 */ |
| 21 | Khome= KF|0x0D, |
| 22 | Kup= KF|0x0E, |
| 23 | Kpgup= KF|0x0F, |
| 24 | Kprint= KF|0x10, |
| 25 | Kleft= KF|0x11, |
| 26 | Kright= KF|0x12, |
| 27 | Kdown= 0x80, |
| 28 | Kview= 0x80, |
| 29 | Kpgdown= KF|0x13, |
| 30 | Kins= KF|0x14, |
| 31 | Kend= '\r', /* [sic] */ |
| 32 | |
| 33 | Kalt= KF|0x15, |
| 34 | Kshift= KF|0x16, |
| 35 | Kctl= KF|0x17, |
| 36 | }; |