prism2.device: Compiler delint
[AROS.git] / workbench / devs / keymaps / pc105_d.c
blob9d8b2c1bc48991031c4d44b89d9f5273be764148
1 /*
2 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc: Deutsch (German) PC105 Keymap
6 Lang: English
7 */
9 #include <devices/keymap.h>
11 STATIC char keymapname[] = "pc105_d";
13 STATIC CONST UBYTE lokeymaptypes[];
14 STATIC CONST IPTR lokeymap[];
15 STATIC CONST UBYTE locapsable[];
16 STATIC CONST UBYTE lorepeatable[];
18 STATIC CONST UBYTE hikeymaptypes[];
19 STATIC CONST IPTR hikeymap[];
20 STATIC CONST UBYTE hicapsable[];
21 STATIC CONST UBYTE hirepeatable[];
23 CONST struct KeyMapNode km =
26 NULL, NULL, 0, 0, keymapname
29 (UBYTE *)lokeymaptypes,
30 (IPTR *)lokeymap,
31 (UBYTE *)locapsable,
32 (UBYTE *)lorepeatable,
33 (UBYTE *)hikeymaptypes,
34 (IPTR *)hikeymap,
35 (UBYTE *)hicapsable,
36 (UBYTE *)hirepeatable
40 #undef N
41 #undef S
42 #undef A
43 #undef C
44 #undef D
45 #undef V
46 #undef ST
47 #undef NOP
49 #define N KC_NOQUAL
50 #define S KCF_SHIFT
51 #define A KCF_ALT
52 #define C KCF_CONTROL
53 #define D KCF_DEAD
54 #define V KC_VANILLA
55 #define ST KCF_STRING
56 #define NOP KCF_NOP
58 #define EUR 0xA4 /* ISO 8859-15: Euro = 164 = 0xA4) */
60 STATIC CONST UBYTE lokeymaptypes[] =
62 D|V, /* 00 */
63 S|A, /* 01 */
64 S|A, /* 02 */
65 S|A, /* 03 */
66 S|A, /* 04 */
67 S|A, /* 05 */
68 S|A, /* 06 */
69 S|A, /* 07 */
70 S|A, /* 08 */
71 S|A, /* 09 */
72 S|A, /* 0A */
73 V, /* 0B */
74 D|S|A, /* 0C */
75 V, /* 0D */
76 NOP, /* 0E */
77 N, /* 0F */
78 V, /* 10 q */
79 V, /* 11 w */
80 D|V, /* 12 e */
81 V, /* 13 r */
82 V, /* 14 t */
83 V, /* 15 z */
84 D|V, /* 16 u */
85 D|V, /* 17 i */
86 D|V, /* 18 o */
87 V, /* 19 p */
88 V, /* 1A */
89 V, /* 1B */
90 NOP, /* 1C */
91 N, /* 1D */
92 N, /* 1E */
93 N, /* 1F */
94 D|V, /* 20 a */
95 V, /* 21 s */
96 V, /* 22 d */
97 D|V, /* 23 f */
98 D|V, /* 24 g */
99 D|V, /* 25 h */
100 D|V, /* 26 j */
101 D|V, /* 27 k */
102 V, /* 28 l */
103 S|A, /* 29 */
104 S|A, /* 2A */
105 V, /* 2B */
106 NOP, /* 2C */
107 N, /* 2D */
108 N, /* 2E */
109 N, /* 2F */
110 S|A, /* 30 */
111 D|V, /* 31 y */
112 V, /* 32 x */
113 V, /* 33 c */
114 V, /* 34 v */
115 V, /* 35 b */
116 D|V, /* 36 n */
117 V, /* 37 m */
118 S|A, /* 38 */
119 S|A, /* 39 */
120 V, /* 3A */
121 NOP, /* 3B */
122 N, /* 3C */
123 N, /* 3D */
124 N, /* 3E */
125 N, /* 3F */
128 STATIC CONST UBYTE hikeymaptypes[] =
130 D|A, /* 40 SPACE */
131 N, /* 41 BACKSPACE */
132 ST|S, /* 42 TAB */
133 N, /* 43 ENTER */
134 C, /* 44 RETURN */
135 A, /* 45 ESCAPE */
136 N, /* 46 DEL */
137 ST|S, /* 47 INSERT ?? */
138 ST|S, /* 48 PAGE UP ?? */
139 ST|S, /* 49 PAGE DOWN ?? */
140 N, /* 4A NUMERIC PAD - */
141 ST|S, /* 4B F11 ?? */
142 ST|S, /* 4C CURSORUP*/
143 ST|S, /* 4D CURSORDOWN */
144 ST|S, /* 4E CURSORRIGHT */
145 ST|S, /* 4F CURSORLEFT */
146 ST|S, /* 50 F1 */
147 ST|S, /* 51 F2 */
148 ST|S, /* 52 F3 */
149 ST|S, /* 53 F4 */
150 ST|S, /* 54 F5 */
151 ST|S, /* 55 F6 */
152 ST|S, /* 56 F7 */
153 ST|S, /* 57 F8 */
154 ST|S, /* 58 F9 */
155 ST|S, /* 59 F10 */
156 NOP, /* 5A NUMLOCK */
157 N, /* 5B NUMPAD ) */
158 N, /* 5C NUMPAD / */
159 N, /* 5D NUMPAD * */
160 N, /* 5E NUMPAD + */
161 ST, /* 5F HELP */
162 NOP, /* 60 LEFT SHIFT*/
163 NOP, /* 61 RIGHT SHIFT */
164 NOP, /* 62 CAPS LOCK */
165 NOP, /* 63 CONTROL */
166 NOP, /* 64 LALT */
167 NOP, /* 65 RALT */
168 NOP, /* 66 LCOMMAND */
169 NOP, /* 67 RCOMMAND */
170 NOP, /* 68 LEFT MOUSE BUTTON*/
171 NOP, /* 69 RIGHT MOUSE BUTTON */
172 NOP, /* 6A MIDDLE MOUSE BUTTON */
173 NOP, /* 6B */
174 NOP, /* 6C */
175 NOP, /* 6D */
176 ST|A, /* 6E PAUSE/BREAK ??*/
177 ST|S, /* 6F F12 ?? */
178 ST|C, /* 70 HOME ?? */
179 ST|C, /* 71 END ?? */
180 NOP, /* 72 */
181 NOP, /* 73 */
182 NOP, /* 74 */
183 NOP, /* 75 */
184 NOP, /* 76 */
185 NOP, /* 77 */
186 NOP, /* 78 */
187 NOP, /* 79 */
188 NOP, /* 7A */
189 NOP, /* 7B */
190 NOP, /* 7C */
191 NOP, /* 7D */
192 NOP, /* 7E */
193 NOP /* 7F */
196 #undef N
197 #undef S
198 #undef A
199 #undef C
200 #undef D
201 #undef V
202 #undef ST
203 #undef NOP
205 #undef STRING
206 #undef DEAD
207 #undef BYTES
209 #define STRING(x) (IPTR)x
210 #define DEAD(x) (IPTR)x
211 #define BYTES(b0, b1, b2, b3) \
212 (((UBYTE)b0)<<24) | (((UBYTE)b1)<<16) | (((UBYTE)b2)<<8) | (((UBYTE)b3)<<0)
214 /* dead symbols
216 1= ´
217 2 = `
218 3 = ^
219 4 = ~
220 5 = "
221 6 = °
225 STATIC CONST UBYTE a_descr[] =
227 DPF_MOD, 0x10,
228 DPF_MOD, 0x25,
229 0, 'æ', /* 0xE6 */
230 0, 'Æ', /* 0xC6 */
231 0, 0x01,
232 0, 0x01,
233 0, 0x81,
234 0, 0x81,
236 'a' , 'á' /*0xE1*/, 'à' /*0xE0*/, 'â' /*0xE2*/, 'ã' /*0xE3*/, 'ä' /*0xE4*/, 'å' /*0xE5*/,
237 'á' /*0xE1*/, 'á' /*0xE1*/, 'â' /*0xE2*/, 'á' /*0xE1*/, 'á' /*0xE1*/, 'á' /*0xE1*/, 'á' /*0xE1*/,
238 'à' /*0xE0*/, 'â' /*0xE2*/, 'à' /*0xE0*/, 'à' /*0xE0*/, 'à' /*0xE0*/, 'à' /*0xE0*/, 'à' /*0xE0*/,
240 'A', 'Á' /*0xC1*/, 'À' /*0xC0*/, 'Â' /*0xC2*/, 'Ã' /*0xC3*/, 'Ä' /*0xC4*/, 'Å' /*0xC5*/,
241 'Á' /*0xC1*/, 'Á' /*0xC1*/, 'Â' /*0xC2*/, 'Á' /*0xC1*/, 'Á' /*0xC1*/, 'Á' /*0xC1*/, 'Á' /*0xC1*/,
242 'À' /*0xC0*/, 'Â' /*0xC2*/, 'À' /*0xC0*/, 'À' /*0xC0*/, 'À' /*0xC0*/, 'À' /*0xC0*/, 'À' /*0xC0*/
245 STATIC CONST UBYTE e_descr[] =
247 DPF_MOD, 0x10,
248 DPF_MOD, 0x25,
249 0, EUR,
250 0, '¢',
251 0, 0x05,
252 0, 0x05,
253 0, 0x85,
254 0, 0x85,
256 'e', 'é' /*0xE9*/, 'è' /*0xE8*/, 'ê' /*0xEA*/, 'e', 'ë' /*0xEB*/, 'e',
257 'é' /*0xE9*/, 'é' /*0xE9*/, 'ê' /*0xEA*/, 'é' /*0xE9*/, 'é' /*0xE9*/, 'é' /*0xE9*/, 'é' /*0xE9*/,
258 'è' /*0xE8*/, 'ê' /*0xEA*/, 'è' /*0xE8*/, 'è' /*0xE8*/, 'è' /*0xE8*/, 'è' /*0xE8*/, 'è' /*0xE8*/,
260 'E', 'É' /*0xC9*/, 'È' /*0xC8*/, 'Ê' /*0xCA*/, 'E', 'Ë' /*0xCB*/, 'E',
261 'É' /*0xC9*/, 'É' /*0xC9*/, 'Ê' /*0xCA*/, 'É' /*0xC9*/, 'É' /*0xC9*/, 'É' /*0xC9*/, 'É' /*0xC9*/,
262 'È' /*0xC8*/, 'Ê' /*0xCA*/, 'È' /*0xC8*/, 'È' /*0xC8*/, 'È' /*0xC8*/, 'È' /*0xC8*/, 'È' /*0xC8*/
265 STATIC CONST UBYTE u_descr[] =
267 DPF_MOD, 0x10,
268 DPF_MOD, 0x25,
269 0, 'µ', /* 0xB5 */
270 0, 'µ', /* 0xB5 */
271 0, 0x15,
272 0, 0x15,
273 0, 0x95,
274 0, 0x95,
276 'u', 'ú' /*0xFA*/, 'ù' /*0xF9*/, 'û' /*0xFB*/, 'u', 'ü' /*0xFC*/, 'u',
277 'ú' /*0xFA*/, 'ú' /*0xFA*/, 'û' /*0xFB*/, 'ú' /*0xFA*/, 'ú' /*0xFA*/, 'ú' /*0xFA*/, 'ú' /*0xFA*/,
278 'ù' /*0xF9*/, 'û' /*0xFB*/, 'ù' /*0xF9*/, 'ù' /*0xF9*/, 'ù' /*0xF9*/, 'ù' /*0xF9*/, 'ù' /*0xF9*/,
280 'U', 'Ú' /*0xDA*/, 'Ù' /*0xD9*/, 'Û' /*0xDB*/, 'U', 'Ü' /*0xDC*/, 'U',
281 'Ú' /*0xDA*/, 'Ú' /*0xDA*/, 'Û' /*0xDB*/, 'Ú' /*0xDA*/, 'Ú' /*0xDA*/, 'Ú' /*0xDA*/, 'Ú' /*0xDA*/,
282 'Ù' /*0xD9*/, 'Û' /*0xDB*/, 'Ù' /*0xD9*/, 'Ù' /*0xD9*/, 'Ù' /*0xD9*/, 'Ù' /*0xD9*/, 'Ù' /*0xD9*/
285 STATIC CONST UBYTE i_descr[] =
287 DPF_MOD, 0x10,
288 DPF_MOD, 0x25,
289 0, '¡', /* 0xA1 */
290 0, '¦', /* 0xA6 */
291 0, 0x09,
292 0, 0x09,
293 0, 0x89,
294 0, 0x89,
296 'i', 'í' /*0xED*/, 'ì' /*0xEC*/, 'î' /*0xEE*/, 'i', 'ï' /*0xEF*/, 'i',
297 'í' /*0xED*/, 'í' /*0xED*/, 'î' /*0xEE*/, 'í' /*0xED*/, 'í' /*0xED*/, 'í' /*0xED*/, 'í' /*0xED*/,
298 'ì' /*0xEC*/, 'î' /*0xEE*/, 'ì' /*0xEC*/, 'ì' /*0xEC*/, 'ì' /*0xEC*/, 'ì' /*0xEC*/, 'ì' /*0xEC*/,
300 'I', 'Í' /*0xCD*/, 'Ì' /*0xCC*/, 'Î' /*0xCE*/, 'I', 'Ï' /*0xCF*/, 'I',
301 'Í' /*0xCD*/, 'Í' /*0xCD*/, 'Î' /*0xCE*/, 'Í' /*0xCD*/, 'Í' /*0xCD*/, 'Í' /*0xCD*/, 'Í' /*0xCD*/,
302 'Ì' /*0xCC*/, 'Î' /*0xCE*/, 'Ì' /*0xCC*/, 'Ì' /*0xCC*/, 'Ì' /*0xCC*/, 'Ì' /*0xCC*/, 'Ì' /*0xCC*/
305 STATIC CONST UBYTE o_descr[] =
307 DPF_MOD, 0x10,
308 DPF_MOD, 0x25,
309 0, 'ø', /* 0xF8 */
310 0, 'Ø', /* 0xD8 */
311 0, 0x0F,
312 0, 0x0F,
313 0, 0x8F,
314 0, 0x8F,
316 'o', 'ó' /*0xF3*/, 'ò' /*0xF2*/, 'ô' /*0xF4*/, 'õ' /*0xF5*/, 'ö' /*0xF6*/, 'o',
317 'ó' /*0xF3*/, 'ó' /*0xF3*/, 'ô' /*0xF4*/, 'ó' /*0xF3*/, 'ó' /*0xF3*/, 'ó' /*0xF3*/, 'ó' /*0xF3*/,
318 'ò' /*0xF2*/, 'ô' /*0xF4*/, 'ò' /*0xF2*/, 'ò' /*0xF2*/, 'ò' /*0xF2*/, 'ò' /*0xF2*/, 'ò' /*0xF2*/,
320 'O', 'Ó' /*0xD3*/, 'Ò' /*0xD2*/, 'Ô' /*0xD4*/, 'Õ' /*0xD5*/, 'Ö' /*0xD6*/, 'O',
321 'Ó' /*0xD3*/, 'Ó' /*0xD3*/, 'Ô' /*0xD4*/, 'Ó' /*0xD3*/, 'Ó' /*0xD3*/, 'Ó' /*0xD3*/, 'Ó' /*0xD3*/,
322 'Ò' /*0xD2*/, 'Ô' /*0xD4*/, 'Ò' /*0xD2*/, 'Ò' /*0xD2*/, 'Ò' /*0xD2*/, 'Ò' /*0xD2*/, 'Ò' /*0xD2*/
325 STATIC CONST UBYTE y_descr[] =
327 DPF_MOD, 0x10,
328 DPF_MOD, 0x25,
329 0, '±',
330 0, '¬',
331 0, 0x19,
332 0, 0x19,
333 0, 0x99,
334 0, 0x99,
336 'y', 'ý', 'y', 'y', 'y', 'ÿ', 'y',
337 'ý', 'ý', 'ý', 'ý', 'ý', 'ý', 'ý',
338 'y', 'y', 'y', 'y', 'y', 'y', 'y',
340 'Y', 'Ý', 'Y', 'Y', 'Y', 'Y', 'Y',
341 'Ý', 'Ý', 'Ý', 'Ý', 'Ý', 'Ý', 'Ý',
342 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y'
345 STATIC CONST UBYTE n_descr[] =
347 DPF_MOD, 0x10,
348 DPF_MOD, 0x25,
349 0, '­',
350 0, '¯',
351 0, 0x0E,
352 0, 0x0E,
353 0, 0x8E,
354 0, 0x8E,
356 'n', 'n', 'n', 'n', 'ñ', 'n', 'n',
357 'n', 'n', 'n', 'n', 'n', 'n', 'n',
358 'n', 'n', 'n', 'n', 'n', 'n', 'n',
360 'N', 'N', 'N', 'N', 'Ñ', 'N', 'N',
361 'N', 'N', 'N', 'N', 'N', 'N', 'N',
362 'N', 'N', 'N', 'N', 'N', 'N', 'N'
365 STATIC CONST UBYTE f_descr[] =
367 0, 'f',
368 0, 'F',
369 DPF_DEAD, 1 + (7 << DP_2DFACSHIFT),
370 DPF_DEAD, 1 + (7 << DP_2DFACSHIFT),
371 0, 0x06,
372 0, 0x06,
373 0, 0x86,
374 0, 0x86
377 STATIC CONST UBYTE g_descr[] =
379 0, 'g',
380 0, 'G',
381 DPF_DEAD, 2 + (7 << DP_2DFACSHIFT),
382 DPF_DEAD, 2 + (7 << DP_2DFACSHIFT),
383 0, 0x07,
384 0, 0x07,
385 0, 0x87,
386 0, 0x87
389 STATIC CONST UBYTE h_descr[] =
391 0, 'h',
392 0, 'H',
393 DPF_DEAD, 3,
394 DPF_DEAD, 3,
395 0, 0x08,
396 0, 0x08,
397 0, 0x88,
398 0, 0x88
401 STATIC CONST UBYTE j_descr[] =
403 0, 'j',
404 0, 'J',
405 DPF_DEAD, 4,
406 DPF_DEAD, 4,
407 0, 0x0A,
408 0, 0x0A,
409 0, 0x8A,
410 0, 0x8A,
413 STATIC CONST UBYTE k_descr[] =
415 0, 'k',
416 0, 'K',
417 DPF_DEAD, 5,
418 DPF_DEAD, 5,
419 0, 0x0B,
420 0, 0x0B,
421 0, 0x8B,
422 0, 0x8B,
425 STATIC CONST UBYTE key00_descr[] =
427 0, '^', // normal state can't be made a dead key
428 0, '°',
429 DPF_DEAD, 3,
430 DPF_DEAD, 6,
431 0, 0,
432 0, 0,
433 0, 0,
434 0, 0
437 STATIC CONST UBYTE key0c_descr[] =
439 DPF_DEAD, 1 + (7 << DP_2DFACSHIFT),
440 DPF_DEAD, 2 + (7 << DP_2DFACSHIFT),
441 0, '=',
442 0, '+'
445 STATIC CONST IPTR lokeymap[] =
447 DEAD(key00_descr), /* 00 Left of 1 Key */
448 BYTES('!', '¹', '!', '1'), /* 01 1 */
449 BYTES('@', '²', '"', '2'), /* 02 2 */
450 BYTES('#', '³', '§', '3'), /* 03 3 */
451 BYTES('¢', '°', '$', '4'), /* 04 4 */
452 BYTES('%', '¼', '%', '5'), /* 05 5 */
453 BYTES('^', '½', '&', '6'), /* 06 6 */
454 BYTES('¾', '{', '/', '7'), /* 07 7 */
455 BYTES('*', '[', '(', '8'), /* 08 8 */
456 BYTES('«', ']', ')', '9'), /* 09 9 */
457 BYTES('»', '}', '=', '0'), /* 0A 0 */
458 BYTES('|', '\\', '?', 'ß'), /* 0B Right of 0 */
459 DEAD(key0c_descr), /* 0C 2nd right of 0 */
460 BYTES('`', '`', '\'', '#'), /* 0D 3rd right of 0 */
461 BYTES(0, 0, 0, 0), /* 0E undefined */
462 BYTES(0, 0, 0, '0'), /* 0F NUM 0 */
463 BYTES('@', '@', 'Q', 'q'), /* 10 */
464 BYTES('°', '°', 'W', 'w'), /* 11 */
465 DEAD(e_descr), /* 12 */
466 BYTES('®', '®', 'R', 'r'), /* 13 */
467 BYTES('Þ', 'þ', 'T', 't'), /* 14 */
468 BYTES('¥', EUR, 'Z', 'z'), /* 15 */
469 DEAD(u_descr), /* 16 */
470 DEAD(i_descr), /* 17 */
471 DEAD(o_descr), /* 18 */
472 BYTES('¶', '¶', 'P', 'p'), /* 19 */
474 BYTES('{', '[', 'Ü', 'ü'), /* 1A */
475 BYTES('*', '~', '*', '+'), /* 1B */
476 BYTES(0, 0, 0, 0), /* 1C undefined */
477 BYTES(0, 0, 0, '1'), /* 1D NUM 1*/
478 BYTES(0, 0, 0, '2'), /* 1E NUM 2*/
479 BYTES(0, 0, 0, '3'), /* 1F NUM 3*/
481 DEAD(a_descr), /* 20 */
482 BYTES('§', 'ß', 'S', 's'), /* 21 */
483 BYTES('Ð', 'ð', 'D', 'd'), /* 22 */
484 DEAD(f_descr), /* 23 */
485 DEAD(g_descr), /* 24 */
486 DEAD(h_descr), /* 25 */
487 DEAD(j_descr), /* 26 */
488 DEAD(k_descr), /* 27 */
489 BYTES('£', '£', 'L', 'l'), /* 28 */
491 BYTES(':', ';', 'Ö', 'ö'), /* 29 */
492 BYTES('"', '\'', 'Ä', 'ä'), /* 2A */
493 BYTES('`', '`', '\'', '#'), /* 2B */
494 BYTES(0, 0, 0, 0), /* 2C undefined */
495 BYTES(0, 0, 0, '4'), /* 2D NUM 4 */
496 BYTES(0, 0, 0, '5'), /* 2E NUM 5 */
497 BYTES(0, 0, 0, '6'), /* 2F NUM 6 */
498 BYTES('¦', '|', '>', '<'), /* 30 */
499 DEAD(y_descr), /* 31 */
500 BYTES('÷', '×', 'X', 'x'), /* 32 */
501 BYTES('Ç', 'ç', 'C', 'c'), /* 33 */
502 BYTES('ª', 'ª', 'V', 'v'), /* 34 */
503 BYTES('º', 'º', 'B', 'b'), /* 35 */
504 DEAD(n_descr), /* 36 */
505 BYTES('µ', 'µ', 'M', 'm'), /* 37 */
507 BYTES('<', ',', ';', ','), /* 38 */
508 BYTES('>', '.', ':', '.'), /* 39 */
509 BYTES('?', '/', '_', '-'), /* 3A */
510 BYTES(0, 0, 0, 0), /* 3B */
511 BYTES(0, 0, 0, ','), /* 3C NUM . */
512 BYTES(0, 0, 0, '7'), /* 3D NUM 7 */
513 BYTES(0, 0, 0, '8'), /* 3E NUM 8 */
514 BYTES(0, 0, 0, '9'), /* 3F NUM 9 */
517 #include "standard.h"
519 STATIC CONST UBYTE space_descr[] =
521 DPF_MOD, 0x4,
522 0, 0XA0,
524 ' ', '´' /*0xB4*/, '`', '^', '~', '¨' /*0xA8*/, '°' /*0xB0*/,
525 '´' /*0xB4*/, '´' /*0xB4*/, '^', '´' /*0xB4*/, '´' /*0xB4*/, '´' /*0xB4*/, '´' /*0xB4*/,
526 '`', '^', '`', '`', '`', '`', '`'
529 STATIC CONST IPTR hikeymap[] =
531 DEAD(space_descr), /* 40 */
532 BYTES(8, 8, 8, 8), /* 41 BACKSPACE*/
533 STRING(tab_descr), /* 42 TAB */
534 BYTES(13, 13, 13, 13), /* 43 ENTER */
535 BYTES(0, 0, 10, 13), /* 44 RETURN */
536 BYTES(0, 0, 0x9B, 27), /* 45 ESCAPE */
537 BYTES(127, 127, 127, 127), /* 46 DEL */
538 STRING(insert_descr), /* 47 INSERT ?? */
539 STRING(pageup_descr), /* 48 PAGEUP ?? */
540 STRING(pagedown_descr), /* 49 PAGEDOWN ?? */
541 BYTES('-', '-', '-', '-'), /* 4A NUMPAD - */
542 STRING(f11_descr), /* 4B F11 ?? */
543 STRING(up_descr), /* 4C CURSOR UP*/
544 STRING(down_descr), /* 4D CURSOR DOWN*/
545 STRING(right_descr), /* 4E CURSOR RIGHT */
546 STRING(left_descr), /* 4F CURSOR LEFT */
547 STRING(f1_descr), /* 50 F1 */
548 STRING(f2_descr), /* 51 */
549 STRING(f3_descr), /* 52 */
550 STRING(f4_descr), /* 53 */
551 STRING(f5_descr), /* 54 */
552 STRING(f6_descr), /* 55 */
553 STRING(f7_descr), /* 56 */
554 STRING(f8_descr), /* 57 */
555 STRING(f9_descr), /* 58 */
556 STRING(f10_descr), /* 59 */
557 BYTES(0, 0, 0, 0), /* 5A */
558 BYTES('/', '/', '/', '/'), /* 5B */
559 BYTES('*', '*', '*', '*'), /* 5C */
560 BYTES('-', '-', '-', '-'), /* 5D */
561 BYTES('+', '+', '+', '+'), /* 5E */
562 STRING(help_descr), /* 5F HELP */
563 BYTES(0, 0, 0, 0), /* 60 */
564 BYTES(0, 0, 0, 0), /* 61 */
565 BYTES(0, 0, 0, 0), /* 62 */
566 BYTES(0, 0, 0, 0), /* 63 */
567 BYTES(0, 0, 0, 0), /* 64 */
568 BYTES(0, 0, 0, 0), /* 65 */
569 BYTES(0, 0, 0, 0), /* 66 */
570 BYTES(0, 0, 0, 0), /* 67 */
571 BYTES(0, 0, 0, 0), /* 68 */
572 BYTES(0, 0, 0, 0), /* 69 */
573 BYTES(0, 0, 0, 0), /* 6A */
574 BYTES(0, 0, 0, 0), /* 6B */
575 BYTES(0, 0, 0, 0), /* 6C */
576 BYTES(0, 0, 0, 0), /* 6D */
577 STRING(pausebreak_descr), /* 6E PAUSE/BREAK ?? */
578 STRING(f12_descr), /* 6F F12 ?? */
579 STRING(home_descr), /* 70 HOME ?? */
580 STRING(end_descr), /* 71 END ?? */
581 BYTES(0, 0, 0, 0), /* 72 */
582 BYTES(0, 0, 0, 0), /* 73 */
583 BYTES(0, 0, 0, 0), /* 74 */
584 BYTES(0, 0, 0, 0), /* 75 */
585 BYTES(0, 0, 0, 0), /* 76 */
586 BYTES(0, 0, 0, 0), /* 77 */
587 BYTES(0, 0, 0, 0), /* 78 */
588 BYTES(0, 0, 0, 0), /* 79 */
589 BYTES(0, 0, 0, 0), /* 7A */
590 BYTES(0, 0, 0, 0), /* 7B */
591 BYTES(0, 0, 0, 0), /* 7C */
592 BYTES(0, 0, 0, 0), /* 7D */
593 BYTES(0, 0, 0, 0), /* 7E */
594 BYTES(0, 0, 0, 0), /* 7F */
597 #undef SETBITS
599 #define SETBITS(b0, b1, b2, b3, b4, b5, b6, b7) \
600 (b0<<0)|(b1<<1)|(b2<<2)|(b3<<3)|(b4<<4)|(b5<<5)|(b6<<6)|(b7<<7)
602 STATIC CONST UBYTE locapsable[] =
604 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 00 - 07 */
605 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 08 - 0F */
607 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
608 SETBITS(1, 1, 1, 0, 0, 0, 0, 0), /* 18 - 1F */
610 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
611 SETBITS(1, 1, 1, 0, 0, 0, 0, 0), /* 28 - 2F */
613 SETBITS(0, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
614 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 38 - 3F */
617 STATIC CONST UBYTE hicapsable[] =
619 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 40 - 47 */
620 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 48 - 4F */
622 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
623 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 58 - 5F */
625 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
626 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
628 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
629 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */
632 STATIC CONST UBYTE lorepeatable[] =
634 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 00 - 07 */
635 SETBITS(1, 1, 1, 1, 1, 1, 0, 1), /* 08 - 0F */
637 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
638 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 18 - 1F */
640 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
641 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 28 - 2F */
643 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
644 SETBITS(1, 1, 1, 0, 1, 1, 1, 1) /* 38 - 3F */
647 STATIC CONST UBYTE hirepeatable[] =
649 SETBITS(1, 1, 1, 0, 0, 0, 1, 0), /* 40 - 47 */
650 SETBITS(1, 1, 0, 0, 1, 1, 1, 1), /* 48 - 4F */
652 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
653 SETBITS(0, 0, 1, 1, 1, 1, 1, 0), /* 58 - 5F */
655 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
656 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
658 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
659 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */