#define FSTART 0x3B /* F1 */ #define FEND 0x44 /* F10 */ #define F1 0x3B #define F2 0x3C #define F3 0x3D #define F4 0x3E #define PGUP 0x49 #define PGDN 0x51 #define DOWN 0x50 #define UP 0x48 #define LEFT 0x4B #define RIGHT 0x4D #define CTRL 0x1D #define LSHIFT 0x2A #define RSHIFT 0x36 #define CAPS 0x3A static const char scan2ascii[] = { /* 00 */ 0,0, /* 01 */ 0x1b,0x1b, /* 02 */ '1', '!', /* 03 */ '2', '@', /* 04 */ '3', '#', /* 05 */ '4', '$', /* 06 */ '5', '%', /* 07 */ '6', '^', /* 08 */ '7', '&', /* 09 */ '8', '*', /* 0A */ '9', '9', /* 0B */ '0', '0', /* 0C */ '-', '_', /* 0D */ '=', '+', /* 0E */ 0x8,0x8, /* 0F */ 0,0, /* 10 */ 'q', 'Q', /* 11 */ 'w', 'W', /* 12 */ 'e', 'E', /* 13 */ 'r', 'R', /* 14 */ 't', 'T', /* 15 */ 'y', 'Y', /* 16 */ 'u', 'U', /* 17 */ 'i', 'I', /* 18 */ 'o', 'O', /* 19 */ 'p', 'P', /* 1A */ '[', '{', /* 1B */ ']', '}', /* 1C */ '\n','\n', /* 1D */ 0,0, /* 1E */ 'a', 'A', /* 1F */ 's', 'S', /* 20 */ 'd', 'D', /* 21 */ 'f', 'F', /* 22 */ 'g', 'G', /* 23 */ 'h', 'H', /* 24 */ 'j', 'J', /* 25 */ 'k', 'K', /* 26 */ 'l', 'L', /* 27 */ ';', ':', /* 28 */ '\'','"', /* 29 */ '`', '~', /* 2A */ 0,0, /* 2B */ '\\','|', /* 2C */ 'z', 'Z', /* 2D */ 'x', 'X', /* 2E */ 'c', 'C', /* 2F */ 'v', 'V', /* 30 */ 'b', 'B', /* 31 */ 'n', 'N', /* 32 */ 'm', 'M', /* 33 */ ',', '<', /* 34 */ '.', '>', /* 35 */ '/', '?', /* 36 */ 0,0, /* 37 */ '*', '*', /* 38 */ 0,0, /* 39 */ ' ', ' ', /* 3A */ 0,0, /* 3B */ 0,0, /* 3C */ 0,0, /* 3D */ 0,0, /* 3E */ 0,0, /* 3F */ 0,0, /* 40 */ 0,0, /* 41 */ 0,0, /* 42 */ 0,0, /* 43 */ 0,0, /* 44 */ 0,0, /* 45 */ 0,0, /* 46 */ 0,0, /* 47 */ 0,0, /* 48 */ 0,0, /* 49 */ 0,0, /* 4A */ '-', '-', /* 4B */ 0,0, /* 4C */ 0,0, /* 4D */ 0,0, /* 4E */ '+', '+', /* 4F */ 0,0, /* 50 */ 0,0, /* 51 */ 0,0, /* 52 */ 0,0, /* 53 */ 0,0, /* 54 */ 0,0, /* 55 */ 0,0, /* 56 */ 0,0, /* 57 */ 0,0, /* 58 */ 0,0, /* 59 */ 0,0, /* 5A */ 0,0, /* 5B */ 0,0, /* 5C */ 0,0, /* 5D */ 0,0, /* 5E */ 0,0, /* 5F */ 0,0, /* 60 */ 0,0, /* 61 */ 0,0, /* 62 */ 0,0, /* 63 */ 0,0, /* 64 */ 0,0, /* 65 */ 0,0, /* 66 */ 0,0, /* 67 */ 0,0, /* 68 */ 0,0, /* 69 */ 0,0, /* 6A */ 0,0, /* 6B */ 0,0, /* 6C */ 0,0, /* 6D */ 0,0, /* 6E */ 0,0, /* 6F */ 0,0, /* 70 */ 0,0, /* 71 */ 0,0, /* 72 */ 0,0, /* 73 */ 0,0, /* 74 */ 0,0, /* 75 */ 0,0, /* 76 */ 0,0, /* 77 */ 0,0, /* 78 */ 0,0, /* 79 */ 0,0, /* 7A */ 0,0, /* 7B */ 0,0, /* 7C */ 0,0, /* 7D */ 0,0, /* 7E */ 0,0, /* 7F */ 0,0 };