Check for SYS/GL during library init. Reason is that
[AROS.git] / workbench / devs / keymaps / pc105_dvx.c
blobefcb5548dabf27874218b99d12153883dafcf097
1 // Kbddvx_Dvorak_pkf.txt
2 /*
3 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
4 $Id$
6 Desc: Dvorak PC105 Keymap
7 Lang: English
8 */
10 #include "common.h"
12 DEFINE_KEYMAP("pc105_dvx")
14 #undef N
15 #undef S
16 #undef A
17 #undef C
18 #undef D
19 #undef V
20 #undef ST
21 #undef NOP
23 #define N KC_NOQUAL
24 #define S KCF_SHIFT
25 #define A KCF_ALT
26 #define C KCF_CONTROL
27 #define D KCF_DEAD
28 #define V KC_VANILLA
29 #define ST KCF_STRING
30 #define NOP KCF_NOP
32 #define EUR 0xA4 /* ISO 8859-15: Euro = 164 = 0xA4) */
34 STATIC CONST UBYTE lokeymaptypes[] =
36 S, /* 00 */
37 S, /* 01 */
38 S|A, /* 02 */
39 S|A, /* 03 */
40 S|A, /* 04 */
41 S, /* 05 */
42 S, /* 06 */
43 S, /* 07 */
44 S, /* 08 */
45 S, /* 09 */
46 S, /* 0A */
47 S, /* 0B */
48 S, /* 0C */
49 N, /* 0D */
50 N, /* 0E */
51 S|A, /* 0F */
52 V, /* 10 q */
53 V, /* 11 w */
54 V, /* 12 e */
55 V, /* 13 r */
56 V, /* 14 t */
57 V, /* 15 z */
58 V, /* 16 u */
59 V, /* 17 i */
60 V, /* 18 o */
61 V, /* 19 p */
62 S, /* 1A */
63 S|A, /* 1B */
64 S|A, /* 1C */
65 S|A, /* 1D */
66 S|A, /* 1E */
67 S|A, /* 1F */
68 V, /* 20 a */
69 V, /* 21 s */
70 V, /* 22 d */
71 V, /* 23 f */
72 V, /* 24 g */
73 V, /* 25 h */
74 V, /* 26 j */
75 V, /* 27 k */
76 V, /* 28 l */
77 S, /* 29 */
78 S, /* 2A */
79 S, /* 2B */
80 N, /* 2C */
81 N, /* 2D */
82 N, /* 2E */
83 N, /* 2F */
84 S|A, /* 30 */
85 V, /* 31 y */
86 V, /* 32 x */
87 V, /* 33 c */
88 V, /* 34 v */
89 V, /* 35 b */
90 V, /* 36 n */
91 V, /* 37 m */
92 S|A, /* 38 */
93 S|A, /* 39 */
94 S, /* 3A */
95 N, /* 3B */
96 N, /* 3C */
97 N, /* 3D */
98 N, /* 3E */
99 N, /* 3F */
103 STATIC CONST UBYTE hikeymaptypes[] =
105 N, /* 40 SPACE */
106 N, /* 41 BACKSPACE */
107 ST|S, /* 42 TAB */
108 N, /* 43 ENTER */
109 C, /* 44 RETURN */
110 A, /* 45 ESCAPE */
111 N, /* 46 DEL */
112 ST|S, /* 47 INSERT ?? */
113 ST|S, /* 48 PAGE UP ?? */
114 ST|S, /* 49 PAGE DOWN ?? */
115 N, /* 4A NUMERIC PAD - */
116 ST|S, /* 4B F11 ?? */
117 ST|S, /* 4C CURSORUP*/
118 ST|S, /* 4D CURSORDOWN */
119 ST|S, /* 4E CURSORRIGHT */
120 ST|S, /* 4F CURSORLEFT */
121 ST|S, /* 50 F1 */
122 ST|S, /* 51 F2 */
123 ST|S, /* 52 F3 */
124 ST|S, /* 53 F4 */
125 ST|S, /* 54 F5 */
126 ST|S, /* 55 F6 */
127 ST|S, /* 56 F7 */
128 ST|S, /* 57 F8 */
129 ST|S, /* 58 F9 */
130 ST|S, /* 59 F10 */
131 NOP, /* 5A NUMLOCK */
132 N, /* 5B NUMPAD ) */
133 N, /* 5C NUMPAD / */
134 N, /* 5D NUMPAD * */
135 N, /* 5E NUMPAD + */
136 ST, /* 5F HELP */
137 NOP, /* 60 LEFT SHIFT*/
138 NOP, /* 61 RIGHT SHIFT */
139 NOP, /* 62 CAPS LOCK */
140 NOP, /* 63 CONTROL */
141 NOP, /* 64 LALT */
142 NOP, /* 65 RALT */
143 NOP, /* 66 LCOMMAND */
144 NOP, /* 67 RCOMMAND */
145 NOP, /* 68 LEFT MOUSE BUTTON*/
146 NOP, /* 69 RIGHT MOUSE BUTTON */
147 NOP, /* 6A MIDDLE MOUSE BUTTON */
148 NOP, /* 6B */
149 NOP, /* 6C */
150 NOP, /* 6D */
151 ST|A, /* 6E PAUSE/BREAK ??*/
152 ST|S, /* 6F F12 ?? */
153 ST|C, /* 70 HOME ?? */
154 ST|C, /* 71 END ?? */
155 NOP, /* 72 */
156 NOP, /* 73 */
157 NOP, /* 74 */
158 NOP, /* 75 */
159 NOP, /* 76 */
160 NOP, /* 77 */
161 NOP, /* 78 */
162 NOP, /* 79 */
163 NOP, /* 7A */
164 NOP, /* 7B */
165 NOP, /* 7C */
166 NOP, /* 7D */
167 NOP, /* 7E */
168 NOP /* 7F */
172 #undef N
173 #undef S
174 #undef A
175 #undef C
176 #undef D
177 #undef V
178 #undef ST
179 #undef NOP
181 #undef STRING
182 #undef DEAD
183 #undef BYTES
185 #define STRING(x) (IPTR)x
186 #define DEAD(x) (IPTR)x
187 #define BYTES(b0, b1, b2, b3) \
188 (((UBYTE)b0)<<24) | (((UBYTE)b1)<<16) | (((UBYTE)b2)<<8) | (((UBYTE)b3)<<0)
190 STATIC CONST IPTR lokeymap[] =
192 /*---- 1st QWERTY row - 0x00 to 0x0F */
193 BYTES(0, 0, 0x7E,0x60),
194 BYTES(0xB9,0xA1,'!' ,'1' ),
195 BYTES(0xB2,0xB2,'@' ,'2' ),
196 BYTES(0xB3,0xB3,'#' ,'3' ),
197 BYTES(0xA3,0xA4,'$' ,'4' ),
198 BYTES(0x80,0x80,'%' ,'5' ),
199 BYTES(0xBC,0xBC,0x5E,'6' ),
200 BYTES(0xBD,0xBD,'&' ,'7' ),
201 BYTES(0xBE,0xBE,'*' ,'8' ),
202 BYTES(0, 0, '(' ,'9' ),
203 BYTES(0xA5,0xA5,')' ,'0' ),
204 BYTES(0xF7,0xD7,'{' ,'[' ),
205 BYTES(0xC4,0xE4,'}' ,']' ),
206 BYTES(0, 0, 0x7E,0x60),
207 BYTES(0, 0, 0, 0 ),
208 BYTES('0', '0', '0', '0'),
209 /*---- 2nd QWERTY row - 0x10 to 0x1F */
210 BYTES(0xC5,0xE5,0x22,0x27),
211 BYTES(0xC9,0xE9,'<' ,',' ),
212 BYTES(0xAE,0xAE,'>' ,'.' ),
213 BYTES(0xDE,0xFE,'P' ,'p' ),
214 BYTES(0xDC,0xFC,'Y' ,'y' ),
215 BYTES(0xDA,0xFA,'F' ,'f' ),
216 BYTES(0xCD,0xED,'G' ,'g' ),
217 BYTES(0xD3,0xF3,'C' ,'c' ),
218 BYTES(0xD6,0xF6,'R' ,'r' ),
219 BYTES(0xAB,0xAB,'L' ,'l' ),
220 BYTES(0xBB,0xBB,'?' ,0x2F),
221 BYTES(0xC1,0xE1,'+' ,'=' ),
222 BYTES(0, 0, 0, 0 ),
223 BYTES('1', '1', '1', '1'),
224 BYTES('2', '2', '2', '2'),
225 BYTES('3', '3', '3', '3'),
226 /*---- 3rd QWERTY row - 0x20 to 0x2F */
227 BYTES(0xA7,0xDF,'A' ,'a' ),
228 BYTES(0xD0,0xF0,'O' ,'o' ),
229 BYTES(0xDE,0xFE,'E' ,'e' ),
230 BYTES(0x97,0x96,'U' ,'u' ),
231 BYTES(0x84,0x82,'I' ,'i' ),
232 BYTES(0x22,0x27,'D' ,'d' ),
233 BYTES(0x22,0x27,'H' ,'h' ),
234 BYTES(0xD8,0xF8,'T' ,'t' ),
235 BYTES(0xB0,0xB6,'N' ,'n' ),
236 BYTES(0xA8,0xB4,'S' ,'s' ),
237 BYTES(0xA6,0xAC,'_' ,'-' ),
238 BYTES(0x7C,0x5C,0x7C,0x5C),
239 BYTES(0, 0, 0, 0 ),
240 BYTES('4', '4', '4', '4'),
241 BYTES('5', '5', '5', '5'),
242 BYTES('6', '6', '6', '6'),
243 /*---- 4th QWERTY row - 0x30 to 0x3F */
244 BYTES(0x7C,0x5C,0x7C,0x5C),
245 BYTES(0xC6,0xE6,':' ,';' ),
246 BYTES(0, 0, 'Q' ,'q' ),
247 BYTES(0xA2,0xA9,'J' ,'j' ),
248 BYTES(0, 0, 'K' ,'k' ),
249 BYTES(0x95,0xB7,'X' ,'x' ),
250 BYTES(0xD1,0xF1,'B' ,'b' ),
251 BYTES(0xB5,0xB5,'M' ,'m' ),
252 BYTES(0xC7,0xE7,'W' ,'w' ),
253 BYTES(0, 0, 'V' ,'v' ),
254 BYTES(0xBF,0xBF,'Z' ,'z' ),
255 BYTES(0, 0, 0, 0 ),
256 BYTES(',', '.', ',', '.'),
257 BYTES('7', '7', '7', '7'),
258 BYTES('8', '8', '8', '8'),
259 BYTES('9', '9', '9', '9'),
262 #include "standard.h"
264 STATIC CONST IPTR hikeymap[] =
266 BYTES(0xA0, 0xA0, ' ', ' '),/* 40 SPACE */
267 BYTES(8, 8, 8, 8), /* 41 BACKSPACE */
268 STRING(tab_descr), /* 42 TAB */
269 BYTES(13, 13, 13, 13), /* 43 ENTER */
270 BYTES(0, 0, 10, 13), /* 44 RETURN */
271 BYTES(0, 0, 0x9B, 27), /* 45 ESCAPE */
272 BYTES(127, 127, 127, 127), /* 46 DEL */
273 STRING(insert_descr), /* 47 INSERT ?? */
274 STRING(pageup_descr), /* 48 PAGEUP ?? */
275 STRING(pagedown_descr), /* 49 PAGEDOWN ?? */
276 BYTES('-', '-', '-', '-'), /* 4A NUMPAD - */
277 STRING(f11_descr), /* 4B F11 ?? */
278 STRING(up_descr), /* 4C CURSOR UP*/
279 STRING(down_descr), /* 4D CURSOR DOWN*/
280 STRING(right_descr), /* 4E CURSOR RIGHT */
281 STRING(left_descr), /* 4F CURSOR LEFT */
282 STRING(f1_descr), /* 50 F1 */
283 STRING(f2_descr), /* 51 */
284 STRING(f3_descr), /* 52 */
285 STRING(f4_descr), /* 53 */
286 STRING(f5_descr), /* 54 */
287 STRING(f6_descr), /* 55 */
288 STRING(f7_descr), /* 56 */
289 STRING(f8_descr), /* 57 */
290 STRING(f9_descr), /* 58 */
291 STRING(f10_descr), /* 59 */
292 BYTES(0, 0, 0, 0), /* 5A */
293 BYTES('/', '/', '/', '/'), /* 5B */
294 BYTES('*', '*', '*', '*'), /* 5C */
295 BYTES('-', '-', '-', '-'), /* 5D */
296 BYTES('+', '+', '+', '+'), /* 5E */
297 STRING(help_descr), /* 5F HELP */
298 BYTES(0, 0, 0, 0), /* 60 */
299 BYTES(0, 0, 0, 0), /* 61 */
300 BYTES(0, 0, 0, 0), /* 62 */
301 BYTES(0, 0, 0, 0), /* 63 */
302 BYTES(0, 0, 0, 0), /* 64 */
303 BYTES(0, 0, 0, 0), /* 65 */
304 BYTES(0, 0, 0, 0), /* 66 */
305 BYTES(0, 0, 0, 0), /* 67 */
306 BYTES(0, 0, 0, 0), /* 68 */
307 BYTES(0, 0, 0, 0), /* 69 */
308 BYTES(0, 0, 0, 0), /* 6A */
309 BYTES(0, 0, 0, 0), /* 6B */
310 BYTES(0, 0, 0, 0), /* 6C */
311 BYTES(0, 0, 0, 0), /* 6D */
312 STRING(pausebreak_descr), /* 6E PAUSE/BREAK ?? */
313 STRING(f12_descr), /* 6F F12 ?? */
314 STRING(home_descr), /* 70 HOME ?? */
315 STRING(end_descr), /* 71 END ?? */
316 BYTES(0, 0, 0, 0), /* 72 */
317 BYTES(0, 0, 0, 0), /* 73 */
318 BYTES(0, 0, 0, 0), /* 74 */
319 BYTES(0, 0, 0, 0), /* 75 */
320 BYTES(0, 0, 0, 0), /* 76 */
321 BYTES(0, 0, 0, 0), /* 77 */
322 BYTES(0, 0, 0, 0), /* 78 */
323 BYTES(0, 0, 0, 0), /* 79 */
324 BYTES(0, 0, 0, 0), /* 7A */
325 BYTES(0, 0, 0, 0), /* 7B */
326 BYTES(0, 0, 0, 0), /* 7C */
327 BYTES(0, 0, 0, 0), /* 7D */
328 BYTES(0, 0, 0, 0), /* 7E */
329 BYTES(0, 0, 0, 0), /* 7F */
332 #undef SETBITS
334 #define SETBITS(b0, b1, b2, b3, b4, b5, b6, b7) \
335 (b0<<0)|(b1<<1)|(b2<<2)|(b3<<3)|(b4<<4)|(b5<<5)|(b6<<6)|(b7<<7)
337 STATIC CONST UBYTE locapsable[] =
339 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 00 - 07 */
340 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 08 - 0F */
342 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
343 SETBITS(1, 1, 0, 0, 0, 0, 0, 0), /* 18 - 1F */
345 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
346 SETBITS(1, 0, 0, 0, 0, 0, 0, 0), /* 28 - 2F */
348 SETBITS(0, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
349 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 38 - 3F */
352 STATIC CONST UBYTE hicapsable[] =
354 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 40 - 47 */
355 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 48 - 4F */
357 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
358 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 58 - 5F */
360 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
361 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
363 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
364 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */
367 STATIC CONST UBYTE lorepeatable[] =
369 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 00 - 07 */
370 SETBITS(1, 1, 1, 1, 1, 1, 0, 1), /* 08 - 0F */
372 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
373 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 18 - 1F */
375 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
376 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 28 - 2F */
378 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
379 SETBITS(1, 1, 1, 0, 1, 1, 1, 1) /* 38 - 3F */
382 STATIC CONST UBYTE hirepeatable[] =
384 SETBITS(1, 1, 1, 0, 0, 0, 1, 0), /* 40 - 47 */
385 SETBITS(1, 1, 0, 0, 1, 1, 1, 1), /* 48 - 4F */
387 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
388 SETBITS(0, 0, 1, 1, 1, 1, 1, 0), /* 58 - 5F */
390 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
391 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
393 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
394 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */