63bd5be0 |
1 | #ifdef SVGALIB\r |
2 | \r |
3 | #include <vgakeyboard.h>\r |
4 | #define SCANCODE_DELETE SCANCODE_REMOVE\r |
5 | #define SCANCODE_KP_MINUS SCANCODE_KEYPADMINUS\r |
6 | #define SCANCODE_KP_PLUS SCANCODE_KEYPADPLUS\r |
7 | #define MK(k) SCANCODE_##k\r |
8 | #define MK_COUNT 256\r |
9 | #elif SDL\r |
10 | #include <SDL.h>\r |
11 | #define SDLK_A SDLK_a\r |
12 | #define SDLK_B SDLK_b\r |
13 | #define SDLK_C SDLK_c\r |
14 | #define SDLK_D SDLK_d\r |
15 | #define SDLK_E SDLK_e\r |
16 | #define SDLK_F SDLK_f\r |
17 | #define SDLK_G SDLK_g\r |
18 | #define SDLK_H SDLK_h\r |
19 | #define SDLK_I SDLK_i\r |
20 | #define SDLK_J SDLK_j\r |
21 | #define SDLK_K SDLK_k\r |
22 | #define SDLK_L SDLK_l\r |
23 | #define SDLK_M SDLK_m\r |
24 | #define SDLK_N SDLK_n\r |
25 | #define SDLK_O SDLK_o\r |
26 | #define SDLK_P SDLK_p\r |
27 | #define SDLK_Q SDLK_q\r |
28 | #define SDLK_R SDLK_r\r |
29 | #define SDLK_S SDLK_s\r |
30 | #define SDLK_T SDLK_t\r |
31 | #define SDLK_U SDLK_u\r |
32 | #define SDLK_V SDLK_v\r |
33 | #define SDLK_W SDLK_w\r |
34 | #define SDLK_X SDLK_x\r |
35 | #define SDLK_Y SDLK_y\r |
36 | #define SDLK_Z SDLK_z\r |
37 | #define SDLK_LEFTCONTROL SDLK_LCTRL\r |
38 | #define SDLK_RIGHTCONTROL SDLK_RCTRL\r |
39 | #define SDLK_LEFTALT SDLK_LALT\r |
40 | #define SDLK_RIGHTALT SDLK_RALT\r |
41 | #define SDLK_LEFTSHIFT SDLK_LSHIFT\r |
42 | #define SDLK_RIGHTSHIFT SDLK_RSHIFT\r |
43 | #define SDLK_CURSORDOWN SDLK_DOWN\r |
44 | #define SDLK_CURSORUP SDLK_UP\r |
45 | #define SDLK_CURSORLEFT SDLK_LEFT\r |
46 | #define SDLK_CURSORRIGHT SDLK_RIGHT\r |
47 | #define SDLK_ENTER SDLK_RETURN\r |
48 | #define SDLK_EQUAL SDLK_EQUALS\r |
49 | #define SDLK_APOSTROPHE SDLK_QUOTE\r |
50 | #define SDLK_BRACKET_LEFT SDLK_LEFTBRACKET\r |
51 | #define SDLK_BRACKET_RIGHT SDLK_RIGHTBRACKET\r |
52 | #define SDLK_SCROLLLOCK SDLK_SCROLLOCK /* I guess the SDL people don't like lots of Ls... */\r |
53 | #define SDLK_GRAVE SDLK_BACKQUOTE\r |
54 | #define MK(k) SDLK_##k\r |
55 | #define MK_COUNT (SDLK_LAST+1)\r |
56 | #elif DOS\r |
57 | \r |
58 | #define SCAN_GRAVE 0x29\r |
59 | #define SCAN_1 0x02\r |
60 | #define SCAN_2 0x03\r |
61 | #define SCAN_3 0x04\r |
62 | #define SCAN_4 0x05\r |
63 | #define SCAN_5 0x06\r |
64 | #define SCAN_6 0x07\r |
65 | #define SCAN_7 0x08\r |
66 | #define SCAN_8 0x09\r |
67 | #define SCAN_9 0x0A\r |
68 | #define SCAN_0 0x0B\r |
69 | #define SCAN_MINUS 0x0C\r |
70 | #define SCAN_EQUAL 0x0D\r |
71 | #define SCAN_BACKSLASH 0x2B\r |
72 | #define SCAN_BACKSPACE 0x0E\r |
73 | #define SCAN_TAB 0x0F\r |
74 | #define SCAN_Q 0x10\r |
75 | #define SCAN_W 0x11\r |
76 | #define SCAN_E 0x12\r |
77 | #define SCAN_R 0x13\r |
78 | #define SCAN_T 0x14\r |
79 | #define SCAN_Y 0x15\r |
80 | #define SCAN_U 0x16\r |
81 | #define SCAN_I 0x17\r |
82 | #define SCAN_O 0x18\r |
83 | #define SCAN_P 0x19\r |
84 | #define SCAN_BRACKET_LEFT 0x1A\r |
85 | #define SCAN_BRACKET_RIGHT 0x1B\r |
86 | #define SCAN_LOWBACKSLASH 0x2B\r |
87 | #define SCAN_CAPSLOCK 0x3A\r |
88 | #define SCAN_A 0x1E\r |
89 | #define SCAN_S 0x1F\r |
90 | #define SCAN_D 0x20\r |
91 | #define SCAN_F 0x21\r |
92 | #define SCAN_G 0x22\r |
93 | #define SCAN_H 0x23\r |
94 | #define SCAN_J 0x24\r |
95 | #define SCAN_K 0x25\r |
96 | #define SCAN_L 0x26\r |
97 | #define SCAN_SEMICOLON 0x27\r |
98 | #define SCAN_APOSTROPHE 0x28\r |
99 | #define SCAN_ENTER 0x1C\r |
100 | #define SCAN_LEFTSHIFT 0x2A\r |
101 | #define SCAN_Z 0x2C\r |
102 | #define SCAN_X 0x2D\r |
103 | #define SCAN_C 0x2E\r |
104 | #define SCAN_V 0x2F\r |
105 | #define SCAN_B 0x30\r |
106 | #define SCAN_N 0x31\r |
107 | #define SCAN_M 0x32\r |
108 | #define SCAN_COMMA 0x33\r |
109 | #define SCAN_PERIOD 0x34\r |
110 | #define SCAN_SLASH 0x35\r |
111 | #define SCAN_RIGHTSHIFT 0x36\r |
112 | #define SCAN_LEFTCONTROL 0x1D\r |
113 | #define SCAN_LEFTALT 0x38\r |
114 | #define SCAN_SPACE 0x39\r |
115 | \r |
116 | /* Extended keys. */\r |
117 | #define SCAN_RIGHTALT (0x38|0x80)\r |
118 | #define SCAN_RIGHTCONTROL (0x1D|0x80)\r |
119 | #define SCAN_BL_INSERT (0x52|0x80)\r |
120 | #define SCAN_BL_DELETE (0x53|0x80)\r |
121 | #define SCAN_BL_CURSORLEFT (0x4B|0x80)\r |
122 | #define SCAN_BL_HOME (0x47|0x80)\r |
123 | #define SCAN_BL_END (0x4F|0x80)\r |
124 | #define SCAN_BL_CURSORUP (0x48|0x80)\r |
125 | #define SCAN_BL_CURSORDOWN (0x50|0x80)\r |
126 | #define SCAN_BL_PAGEUP (0x49|0x80)\r |
127 | #define SCAN_BL_PAGEDOWN (0x51|0x80)\r |
128 | #define SCAN_BL_CURSORRIGHT (0x4D|0x80)\r |
129 | \r |
130 | #define SCAN_SCROLLLOCK 0x46\r |
131 | /* Keys in the key pad area. */\r |
132 | #define SCAN_NUMLOCK 0x45\r |
133 | #define SCAN_HOME 0x47\r |
134 | #define SCAN_CURSORLEFT 0x4B\r |
135 | #define SCAN_END 0x4F\r |
136 | #define SCAN_SLASH 0x35\r |
137 | #define SCAN_CURSORUP 0x48\r |
138 | #define SCAN_CENTER 0x4C\r |
139 | #define SCAN_CURSORDOWN 0x50\r |
140 | #define SCAN_INSERT 0x52\r |
141 | #define SCAN_ASTERISK 0x37\r |
142 | #define SCAN_PAGEUP 0x49\r |
143 | #define SCAN_CURSORRIGHT 0x4D\r |
144 | #define SCAN_PAGEDOWN 0x51\r |
145 | #define SCAN_DELETE 0x53\r |
146 | #define SCAN_KP_MINUS 0x4A\r |
147 | #define SCAN_KP_PLUS 0x4E\r |
148 | #define SCAN_KP_ENTER 0x1C\r |
149 | \r |
150 | #define SCAN_ESCAPE 0x01\r |
151 | #define SCAN_F1 0x3B\r |
152 | #define SCAN_F2 0x3C\r |
153 | #define SCAN_F3 0x3D\r |
154 | #define SCAN_F4 0x3E\r |
155 | #define SCAN_F5 0x3F\r |
156 | #define SCAN_F6 0x40\r |
157 | #define SCAN_F7 0x41\r |
158 | #define SCAN_F8 0x42\r |
159 | #define SCAN_F9 0x43\r |
160 | #define SCAN_F10 0x44\r |
161 | #define SCAN_F11 0x57\r |
162 | #define SCAN_F12 0x58\r |
163 | \r |
164 | #define MK_COUNT 256\r |
165 | #define MK(k) SCAN_##k\r |
166 | #endif\r |