2 Copyright © 2009-2011, The AROS Development Team. All rights reserved.
5 Desc: Hellenic (Greek) PC105 Keymap
11 DEFINE_KEYMAP("pc105_gr")
31 #define EUR 0xA4 /* ISO 8859-7: Euro = 164 = 0xA4) */
33 STATIC CONST UBYTE lokeymaptypes
[] =
101 STATIC CONST UBYTE hikeymaptypes
[] =
104 N
, /* 41 BACKSPACE */
110 ST
|S
, /* 47 INSERT ?? */
111 ST
|S
, /* 48 PAGE UP ?? */
112 ST
|S
, /* 49 PAGE DOWN ?? */
113 N
, /* 4A NUMERIC PAD - */
114 ST
|S
, /* 4B F11 ?? */
115 ST
|S
, /* 4C CURSORUP*/
116 ST
|S
, /* 4D CURSORDOWN */
117 ST
|S
, /* 4E CURSORRIGHT */
118 ST
|S
, /* 4F CURSORLEFT */
129 NOP
, /* 5A NUMLOCK */
135 NOP
, /* 60 LEFT SHIFT*/
136 NOP
, /* 61 RIGHT SHIFT */
137 NOP
, /* 62 CAPS LOCK */
138 NOP
, /* 63 CONTROL */
141 NOP
, /* 66 LCOMMAND */
142 NOP
, /* 67 RCOMMAND */
143 NOP
, /* 68 LEFT MOUSE BUTTON*/
144 NOP
, /* 69 RIGHT MOUSE BUTTON */
145 NOP
, /* 6A MIDDLE MOUSE BUTTON */
149 ST
|A
, /* 6E PAUSE/BREAK ??*/
150 ST
|S
, /* 6F F12 ?? */
151 ST
|C
, /* 70 HOME ?? */
152 ST
|C
, /* 71 END ?? */
182 #define STRING(x) (IPTR)x
183 #define DEAD(x) (IPTR)x
184 #define BYTES(b0, b1, b2, b3) \
185 (((UBYTE)b0)<<24) | (((UBYTE)b1)<<16) | (((UBYTE)b2)<<8) | (((UBYTE)b3)<<0)
188 STATIC CONST UBYTE a_descr
[] =
190 DPF_MOD
, 0x10, /* key pressed without qualifier */
191 DPF_MOD
, 0x17, /* key pressed with SHIFT */
192 0, 'a', /* key pressed with ALT */
193 0, 'A', /* key pressed with SHIFT + ALT */
194 0, 0x01, /* key pressed with CONTROL */
195 0, 0x01, /* key pressed with CONTROL + SHIFT */
196 0, 0x81, /* key pressed with CONTROL + ALT */
197 0, 0x81, /* key pressed with CONTROL + ALT + SHIFT */
199 'á' /*0xAC*/, 'Ü', 0 /*0xE0*/, 0 /*0xE2*/, 0 /*0xE3*/, 0 /*0xE4*/, 0 /*0xE5*/,
200 'Á', '¶' /*0xC1*/, 0 /*0xC0*/, 0 /*0xC2*/, 0 /*0xC3*/, 0 /*0xC4*/, 0 /*0xC5*/
203 STATIC CONST UBYTE e_descr
[] =
205 DPF_MOD
, 0x10, /* key pressed without qualifier */
206 DPF_MOD
, 0x17, /* key pressed with SHIFT */
207 0, 'e', /* 0xE6 */ /* key pressed with ALT */
208 0, 'E', /* 0xC6 */ /* key pressed with SHIFT + ALT */
209 0, '¤', /* key pressed with CONTROL */
210 0, 0x01, /* key pressed with CONTROL + SHIFT */
211 0, 0x81, /* key pressed with CONTROL + ALT */
212 0, 0x81, /* key pressed with CONTROL + ALT + SHIFT */
214 'å' /*0xE1*/, 'Ý', 0 /*0xE0*/, 0 /*0xE2*/, 0 /*0xE3*/, 0 /*0xE4*/, 0 /*0xE5*/,
215 'Å', '¸' /*0xC1*/, 0 /*0xC0*/, 0 /*0xC2*/, 0 /*0xC3*/, 0 /*0xC4*/, 0 /*0xC5*/
218 STATIC CONST UBYTE h_descr
[] =
220 DPF_MOD
, 0x10, /* key pressed without qualifier */
221 DPF_MOD
, 0x17, /* key pressed with SHIFT */
222 0, 'h', /* 0xE6 */ /* key pressed with ALT */
223 0, 'H', /* 0xC6 */ /* key pressed with SHIFT + ALT */
224 0, 0x01, /* key pressed with CONTROL */
225 0, 0x01, /* key pressed with CONTROL + SHIFT */
226 0, 0x81, /* key pressed with CONTROL + ALT */
227 0, 0x81, /* key pressed with CONTROL + ALT + SHIFT */
229 'ç', 'Þ' /*0xE1*/, 0 /*0xE0*/, 0 /*0xE2*/, 0 /*0xE3*/, 0 /*0xE4*/, 0 /*0xE5*/,
230 'Ç', '¹' /*0xC1*/, 0 /*0xC0*/, 0 /*0xC2*/, 0 /*0xC3*/, 0 /*0xC4*/, 0 /*0xC5*/
233 STATIC CONST UBYTE i_descr
[] =
235 DPF_MOD
, 0x10, /* key pressed without qualifier */
236 DPF_MOD
, 0x17, /* key pressed with SHIFT */
237 0, 'i', /* 0xE6 */ /* key pressed with ALT */
238 0, 'I', /* 0xC6 */ /* key pressed with SHIFT + ALT */
239 0, 0x01, /* key pressed with CONTROL */
240 0, 0x01, /* key pressed with CONTROL + SHIFT */
241 0, 0x81, /* key pressed with CONTROL + ALT */
242 0, 0x81, /* key pressed with CONTROL + ALT + SHIFT */
244 'é', 'ß' /*0xE1*/, 'ú' /*0xE0*/, 'À' /*0xE2*/, 0 /*0xE3*/, 0 /*0xE4*/, 0 /*0xE5*/,
245 'É', 'º' /*0xC1*/, 'Ú' /*0xC0*/, 'º' /*0xC2*/, 0 /*0xC3*/, 0 /*0xC4*/, 0 /*0xC5*/
248 STATIC CONST UBYTE o_descr
[] =
250 DPF_MOD
, 0x10, /* key pressed without qualifier */
251 DPF_MOD
, 0x17, /* key pressed with SHIFT */
252 0, 'o', /* 0xE6 */ /* key pressed with ALT */
253 0, 'O', /* 0xC6 */ /* key pressed with SHIFT + ALT */
254 0, 0x01, /* key pressed with CONTROL */
255 0, 0x01, /* key pressed with CONTROL + SHIFT */
256 0, 0x81, /* key pressed with CONTROL + ALT */
257 0, 0x81, /* key pressed with CONTROL + ALT + SHIFT */
259 'o', 'ü' /*0xE1*/, 0 /*0xE0*/, 0 /*0xE2*/, 0 /*0xE3*/, 0 /*0xE4*/, 0 /*0xE5*/,
260 'O', '¼' /*0xC1*/, 0 /*0xC0*/, 0 /*0xC2*/, 0 /*0xC3*/, 0 /*0xC4*/, 0 /*0xC5*/
263 STATIC CONST UBYTE y_descr
[] =
265 DPF_MOD
, 0x10, /* key pressed without qualifier */
266 DPF_MOD
, 0x17, /* key pressed with SHIFT */
267 0, 'y', /* 0xE6 */ /* key pressed with ALT */
268 0, 'Y', /* 0xC6 */ /* key pressed with SHIFT + ALT */
269 0, 0x01, /* key pressed with CONTROL */
270 0, 0x01, /* key pressed with CONTROL + SHIFT */
271 0, 0x81, /* key pressed with CONTROL + ALT */
272 0, 0x81, /* key pressed with CONTROL + ALT + SHIFT */
274 'õ', 'ý' /*0xE1*/, 'û' /*0xE0*/, 'à' /*0xE2*/, 0 /*0xE3*/, 0 /*0xE4*/, 0 /*0xE5*/,
275 'Õ', '¾' /*0xC1*/, 'Û' /*0xC0*/, '¾' /*0xC2*/, 0 /*0xC3*/, 0 /*0xC4*/, 0 /*0xC5*/
278 STATIC CONST UBYTE v_descr
[] =
280 DPF_MOD
, 0x10, /* key pressed without qualifier */
281 DPF_MOD
, 0x17, /* key pressed with SHIFT */
282 0, 'v', /* 0xE6 */ /* key pressed with ALT */
283 0, 'V', /* 0xC6 */ /* key pressed with SHIFT + ALT */
284 0, 0x01, /* key pressed with CONTROL */
285 0, 0x01, /* key pressed with CONTROL + SHIFT */
286 0, 0x81, /* key pressed with CONTROL + ALT */
287 0, 0x81, /* key pressed with CONTROL + ALT + SHIFT */
289 'ù', 'þ' /*0xE1*/, 0 /*0xE0*/, 0 /*0xE2*/, 0 /*0xE3*/, 0 /*0xE4*/, 0 /*0xE5*/,
290 'Ù', '¿' /*0xC1*/, 0 /*0xC0*/, 0 /*0xC2*/, 0 /*0xC3*/, 0 /*0xC4*/, 0 /*0xC5*/
296 STATIC CONST UBYTE key29_descr
[] =
304 STATIC CONST IPTR lokeymap
[] =
306 /*---- 1st QWERTY row - 0x00 to 0x0F */
307 BYTES('°', '^', '~', '`'), /* 00 Left of 1 Key */
308 BYTES('!', 0, '!', '1'), /* 01 1 */
309 BYTES('"', '²', '@', '2'), /* 02 2 */
310 BYTES('#', '³', '#', '3'), /* 03 3 */
311 BYTES(0, '°', '$', '4'), /* 04 4 */
312 BYTES('%', 0, '%', '5'), /* 05 5 */
313 BYTES('^', '½', '^', '6'), /* 06 6 */
314 BYTES('&', '{', '&', '7'), /* 07 7 */
315 BYTES('*', '[', '*', '8'), /* 08 8 */
316 BYTES('(', ']', '(', '9'), /* 09 9 */
317 BYTES(')', '}', ')', '0'), /* 0A 0 */
318 BYTES(0, 0, '_', '-'), /* 0B Right of 0 */
319 BYTES('+', '=', '=', '+'), /* 0C 2nd right of 0 */
320 BYTES(0, 0, '|', '\\'), /* 0D 3rd right of 0 */
321 BYTES(0, 0, 0, 0), /* 0E undefined */
322 BYTES('0', '0', '0', '0'), /* 0F NUM 0 */
323 /*---- 2nd QWERTY row - 0x10 to 0x1F */
324 BYTES('Q', 'q', ':', ';'), /* 10 */
325 BYTES( 'W', 'w', 'Ó', 'ò'), /* 11 */
326 DEAD(e_descr
), /* 12 */
327 BYTES('R', 'r', 'Ñ', 'ñ'), /* 13 */
328 BYTES('T', 't', 'Ô', 'ô'), /* 14 */
329 DEAD(y_descr
), /* 15 */
330 BYTES('U', 'u', 'È', 'è'), /* 16 */
331 DEAD(i_descr
), /* 17 */
332 DEAD(o_descr
), /* 18 */
333 BYTES('P', 'p', 'Ð', 'ð'), /* 19 */
334 BYTES('{', '[', '{', '['), /* 1A */
335 BYTES('}', ']', '}', ']'), /* 1B */
336 BYTES(0, 0, '|', '\\'), /* 1C undefined */
337 BYTES('1', '1', '1', '1'), /* 1D NUM 1*/
338 BYTES('2', '2', '2', '2'), /* 1E NUM 2*/
339 BYTES('3', '3', '3', '3'), /* 1F NUM 3*/
340 /*---- 3rd QWERTY row - 0x20 to 0x2F */
341 DEAD(a_descr
), /* 20 */
342 BYTES('S', 's', 'Ó', 'ó'), /* 21 */
343 BYTES('D', 'd', 'Ä', 'ä'), /* 22 */
344 BYTES('F', 'f', 'Ö', 'ö'), /* 23 */
345 BYTES('G', 'g', 'Ã', 'ã'), /* 24 */
346 DEAD(h_descr
), /* 25 */
347 BYTES('J', 'j', 'Î', 'î'), /* 26 */
348 BYTES('K', 'k', 'Ê', 'ê'), /* 27 */
349 BYTES('L', 'l', 'Ë', 'ë'), /* 28 */
350 DEAD(key29_descr
), /* 29 */
351 BYTES(0, 0, '"', '\''), /* 2A */
352 BYTES(0, 0, 0, 0), /* 2B */
353 BYTES(0, 0, 0, 0), /* 2C undefined */
354 BYTES('4', '4', '4', '4'), /* 2D NUM 4 */
355 BYTES('5', '5', '5', '5'), /* 2E NUM 5 */
356 BYTES('6', '6', '6', '6'), /* 2F NUM 6 */
357 /*---- 4th QWERTY row - 0x30 to 0x3F */
358 BYTES(0 , '|', '>', '<'), /* 30 */
359 BYTES('Z', 'z', 'Æ', 'æ'), /* 31 */
360 BYTES('X', 'x', '×', '÷'), /* 32 */
361 BYTES('C', 'c', 'Ø', 'ø'), /* 33 */
362 DEAD(v_descr
), /* 34 */
363 BYTES('B', 'b', 'Â', 'â'), /* 35 */
364 BYTES('N', 'n', 'Í', 'í'), /* 36 */
365 BYTES('M', 'm', 0xCC, 0xEC), /* 37 */
366 BYTES(0, 0, '<', ','), /* 38 */
367 BYTES(0, 0, '>', '.'), /* 39 */
368 BYTES(0, 0, '?', '/'), /* 3A */
369 BYTES(0, 0, 0, 0), /* 3B */
370 BYTES(',', ',', ',', ','), /* 3C NUM . */
371 BYTES('7', '7', '7', '7'), /* 3D NUM 7 */
372 BYTES('8', '8', '8', '8'), /* 3E NUM 8 */
373 BYTES('9', '9', '9', '9'), /* 3F NUM 9 */
376 #include "standard.h"
378 STATIC CONST IPTR hikeymap
[] =
380 BYTES(0xA0, 0xA0, ' ', ' '),/* 40 SPACE */
381 BYTES(8, 8, 8, 8), /* 41 BACKSPACE */
382 STRING(tab_descr
), /* 42 TAB */
383 BYTES(13, 13, 13, 13), /* 43 ENTER */
384 BYTES(0, 0, 10, 13), /* 44 RETURN */
385 BYTES(0, 0, 0x9B, 27), /* 45 ESCAPE */
386 BYTES(127, 127, 127, 127), /* 46 DEL */
387 STRING(insert_descr
), /* 47 INSERT ?? */
388 STRING(pageup_descr
), /* 48 PAGEUP ?? */
389 STRING(pagedown_descr
), /* 49 PAGEDOWN ?? */
390 BYTES('-', '-', '-', '-'), /* 4A NUMPAD - */
391 STRING(f11_descr
), /* 4B F11 ?? */
392 STRING(up_descr
), /* 4C CURSOR UP*/
393 STRING(down_descr
), /* 4D CURSOR DOWN*/
394 STRING(right_descr
), /* 4E CURSOR RIGHT */
395 STRING(left_descr
), /* 4F CURSOR LEFT */
396 STRING(f1_descr
), /* 50 F1 */
397 STRING(f2_descr
), /* 51 */
398 STRING(f3_descr
), /* 52 */
399 STRING(f4_descr
), /* 53 */
400 STRING(f5_descr
), /* 54 */
401 STRING(f6_descr
), /* 55 */
402 STRING(f7_descr
), /* 56 */
403 STRING(f8_descr
), /* 57 */
404 STRING(f9_descr
), /* 58 */
405 STRING(f10_descr
), /* 59 */
406 BYTES(0, 0, 0, 0), /* 5A */
407 BYTES('/', '/', '/', '/'), /* 5B */
408 BYTES('*', '*', '*', '*'), /* 5C */
409 BYTES('-', '-', '-', '-'), /* 5D */
410 BYTES('+', '+', '+', '+'), /* 5E */
411 STRING(help_descr
), /* 5F HELP */
412 BYTES(0, 0, 0, 0), /* 60 */
413 BYTES(0, 0, 0, 0), /* 61 */
414 BYTES(0, 0, 0, 0), /* 62 */
415 BYTES(0, 0, 0, 0), /* 63 */
416 BYTES(0, 0, 0, 0), /* 64 */
417 BYTES(0, 0, 0, 0), /* 65 */
418 BYTES(0, 0, 0, 0), /* 66 */
419 BYTES(0, 0, 0, 0), /* 67 */
420 BYTES(0, 0, 0, 0), /* 68 */
421 BYTES(0, 0, 0, 0), /* 69 */
422 BYTES(0, 0, 0, 0), /* 6A */
423 BYTES(0, 0, 0, 0), /* 6B */
424 BYTES(0, 0, 0, 0), /* 6C */
425 BYTES(0, 0, 0, 0), /* 6D */
426 STRING(pausebreak_descr
), /* 6E PAUSE/BREAK ?? */
427 STRING(f12_descr
), /* 6F F12 ?? */
428 STRING(home_descr
), /* 70 HOME ?? */
429 STRING(end_descr
), /* 71 END ?? */
430 BYTES(0, 0, 0, 0), /* 72 */
431 BYTES(0, 0, 0, 0), /* 73 */
432 BYTES(0, 0, 0, 0), /* 74 */
433 BYTES(0, 0, 0, 0), /* 75 */
434 BYTES(0, 0, 0, 0), /* 76 */
435 BYTES(0, 0, 0, 0), /* 77 */
436 BYTES(0, 0, 0, 0), /* 78 */
437 BYTES(0, 0, 0, 0), /* 79 */
438 BYTES(0, 0, 0, 0), /* 7A */
439 BYTES(0, 0, 0, 0), /* 7B */
440 BYTES(0, 0, 0, 0), /* 7C */
441 BYTES(0, 0, 0, 0), /* 7D */
442 BYTES(0, 0, 0, 0), /* 7E */
443 BYTES(0, 0, 0, 0), /* 7F */
448 #define SETBITS(b0, b1, b2, b3, b4, b5, b6, b7) \
449 (b0<<0)|(b1<<1)|(b2<<2)|(b3<<3)|(b4<<4)|(b5<<5)|(b6<<6)|(b7<<7)
451 STATIC CONST UBYTE locapsable
[] =
453 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 00 - 07 */
454 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 08 - 0F */
456 SETBITS(0, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
457 SETBITS(1, 1, 0, 0, 0, 0, 0, 0), /* 18 - 1F */
459 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
460 SETBITS(1, 0, 0, 0, 0, 0, 0, 0), /* 28 - 2F */
462 SETBITS(0, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
463 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 38 - 3F */
466 STATIC CONST UBYTE hicapsable
[] =
468 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 40 - 47 */
469 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 48 - 4F */
471 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
472 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 58 - 5F */
474 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
475 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
477 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
478 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */
481 STATIC CONST UBYTE lorepeatable
[] =
483 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 00 - 07 */
484 SETBITS(1, 1, 1, 1, 1, 1, 0, 1), /* 08 - 0F */
486 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
487 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 18 - 1F */
489 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
490 SETBITS(1, 0, 1, 1, 0, 1, 1, 1), /* 28 - 2F */
492 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
493 SETBITS(1, 1, 1, 0, 1, 1, 1, 1) /* 38 - 3F */
496 STATIC CONST UBYTE hirepeatable
[] =
498 SETBITS(1, 1, 1, 0, 0, 0, 1, 0), /* 40 - 47 */
499 SETBITS(1, 1, 0, 0, 1, 1, 1, 1), /* 48 - 4F */
501 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
502 SETBITS(0, 0, 1, 1, 1, 1, 1, 0), /* 58 - 5F */
504 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
505 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
507 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
508 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */