2 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
5 Desc: Italian PC105 Keymap
9 #include <devices/keymap.h>
11 STATIC
char keymapname
[] = "pc105_i";
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
,
32 (UBYTE
*)lorepeatable
,
33 (UBYTE
*)hikeymaptypes
,
58 #define EUR 0xA4 /* ISO 8859-15: Euro = 164 = 0xA4) */
60 STATIC CONST UBYTE lokeymaptypes
[] =
128 STATIC CONST UBYTE hikeymaptypes
[] =
131 N
, /* 41 BACKSPACE */
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 */
156 NOP
, /* 5A NUMLOCK */
162 NOP
, /* 60 LEFT SHIFT*/
163 NOP
, /* 61 RIGHT SHIFT */
164 NOP
, /* 62 CAPS LOCK */
165 NOP
, /* 63 CONTROL */
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 */
176 ST
|A
, /* 6E PAUSE/BREAK ??*/
177 ST
|S
, /* 6F F12 ?? */
178 ST
|C
, /* 70 HOME ?? */
179 ST
|C
, /* 71 END ?? */
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 STATIC CONST IPTR lokeymap
[] =
216 BYTES('¬', '¬', '|', '\\'), /* 00 Left of 1 Key */
217 BYTES('¡', '¹', '!', '1'), /* 01 1 */
218 BYTES('²', '²', '"', '2'), /* 02 2 */
219 BYTES('£', '³', '£', '3'), /* 03 3 */
220 BYTES('$', '¼', '$', '4'), /* 04 4 */
221 BYTES('½', '½', '%', '5'), /* 05 5 */
222 BYTES('¾', '¾', '&', '6'), /* 06 6 */
223 BYTES('{', '{', '/', '7'), /* 07 7 */
224 BYTES('[', '[', '(', '8'), /* 08 8 */
225 BYTES(']', ']', ')', '9'), /* 09 9 */
226 BYTES('}', '}', '=', '0'), /* 0A 0 */
227 BYTES('`', '`', '?', '\''), /* 0B Right of 0 */
228 BYTES('~', '~', '^', 'ì'), /* 0C 2nd right of 0 */
229 BYTES('|', '|', '|', '|'), /* 0D 3rd right of 0 */
230 BYTES(0, 0, 0, 0), /* 0E undefined */
231 BYTES('0', '0', '0', '0'), /* 0F NUM 0 */
232 BYTES('Q', 'q', 'Q', 'q'), /* 10 */
233 BYTES('W', 'w', 'W', 'w'), /* 11 */
234 BYTES(EUR
, EUR
, 'E', 'e'), /* 12 */
235 BYTES('R', 'r', 'R', 'r'), /* 13 */
236 BYTES('T', 't', 'T', 't'), /* 14 */
237 BYTES('Y', 'y', 'Y', 'y'), /* 15 */
238 BYTES('U', 'u', 'U', 'u'), /* 16 */
239 BYTES('I', 'i', 'I', 'i'), /* 17 */
240 BYTES('O', 'o', 'O', 'o'), /* 18 */
241 BYTES('P', 'p', 'P', 'p'), /* 19 */
243 BYTES('[', '[', 'é', 'è'), /* 1A */
244 BYTES(']', ']', '*', '+'), /* 1B */
245 BYTES(0, 0, 0, 0), /* 1C undefined */
246 BYTES('1', '1', '1', '1'), /* 1D NUM 1*/
247 BYTES('2', '2', '2', '2'), /* 1E NUM 2*/
248 BYTES('3', '3', '3', '3'), /* 1F NUM 3*/
250 BYTES('A', 'a', 'A', 'a'), /* 20 */
251 BYTES('S', 's', 'S', 's'), /* 21 */
252 BYTES('D', 'd', 'D', 'd'), /* 22 */
253 BYTES('F', 'f', 'F', 'f'), /* 23 */
254 BYTES('G', 'g', 'G', 'g'), /* 24 */
255 BYTES('H', 'h', 'H', 'h'), /* 25 */
256 BYTES('J', 'j', 'J', 'j'), /* 26 */
257 BYTES('K', 'k', 'K', 'k'), /* 27 */
258 BYTES('L', 'l', 'L', 'l'), /* 28 */
260 BYTES('@', '@', 'ç', 'ò'), /* 29 */
261 BYTES('#', '#', '°', 'à'), /* 2A */
262 BYTES('§', 'ù', '§', 'ù'), /* 2B */
263 BYTES(0, 0, 0, 0), /* 2C undefined */
264 BYTES('4', '4', '4', '4'), /* 2D NUM 4 */
265 BYTES('5', '5', '5', '5'), /* 2E NUM 5 */
266 BYTES('6', '6', '6', '6'), /* 2F NUM 6 */
267 BYTES('¦', '|', '>', '<'), /* 30 */
268 BYTES('<', '«', 'Z', 'z'), /* 31 */
269 BYTES('>', '»', 'X', 'x'), /* 32 */
270 BYTES('©', '¢', 'C', 'c'), /* 33 */
271 BYTES('V', 'v', 'V', 'v'), /* 34 */
272 BYTES('B', 'b', 'B', 'b'), /* 35 */
273 BYTES('N', 'n', 'N', 'n'), /* 36 */
274 BYTES('º', 'µ', 'M', 'm'), /* 37 */
276 BYTES('×', ',', ';', ','), /* 38 */
277 BYTES('÷', '·', ':', '.'), /* 39 */
278 BYTES('_', '-', '_', '-'), /* 3A */
279 BYTES(0, 0, 0, 0), /* 3B */
280 BYTES('.', '.', '.', '.'), /* 3C NUM . */
281 BYTES('7', '7', '7', '7'), /* 3D NUM 7 */
282 BYTES('8', '8', '8', '8'), /* 3E NUM 8 */
283 BYTES('9', '9', '9', '9'), /* 3F NUM 9 */
286 #include "standard.h"
288 STATIC CONST IPTR hikeymap
[] =
290 BYTES(' ', ' ', ' ', ' '), /* 40 */
291 BYTES(8, 8, 8, 8), /* 41 BACKSPACE*/
292 STRING(tab_descr
), /* 42 TAB */
293 BYTES(13, 13, 13, 13), /* 43 ENTER */
294 BYTES(0, 0, 10, 13), /* 44 RETURN */
295 BYTES(0, 0, 0x9B, 27), /* 45 ESCAPE */
296 BYTES(127, 127, 127, 127), /* 46 DEL */
297 STRING(insert_descr
), /* 47 INSERT ?? */
298 STRING(pageup_descr
), /* 48 PAGEUP ?? */
299 STRING(pagedown_descr
), /* 49 PAGEDOWN ?? */
300 BYTES('-', '-', '-', '-'), /* 4A NUMPAD - */
301 STRING(f11_descr
), /* 4B F11 ?? */
302 STRING(up_descr
), /* 4C CURSOR UP*/
303 STRING(down_descr
), /* 4D CURSOR DOWN*/
304 STRING(right_descr
), /* 4E CURSOR RIGHT */
305 STRING(left_descr
), /* 4F CURSOR LEFT */
306 STRING(f1_descr
), /* 50 F1 */
307 STRING(f2_descr
), /* 51 */
308 STRING(f3_descr
), /* 52 */
309 STRING(f4_descr
), /* 53 */
310 STRING(f5_descr
), /* 54 */
311 STRING(f6_descr
), /* 55 */
312 STRING(f7_descr
), /* 56 */
313 STRING(f8_descr
), /* 57 */
314 STRING(f9_descr
), /* 58 */
315 STRING(f10_descr
), /* 59 */
316 BYTES(0, 0, 0, 0), /* 5A */
317 BYTES('/', '/', '/', '/'), /* 5B */
318 BYTES('*', '*', '*', '*'), /* 5C */
319 BYTES('-', '-', '-', '-'), /* 5D */
320 BYTES('+', '+', '+', '+'), /* 5E */
321 STRING(help_descr
), /* 5F HELP */
322 BYTES(0, 0, 0, 0), /* 60 */
323 BYTES(0, 0, 0, 0), /* 61 */
324 BYTES(0, 0, 0, 0), /* 62 */
325 BYTES(0, 0, 0, 0), /* 63 */
326 BYTES(0, 0, 0, 0), /* 64 */
327 BYTES(0, 0, 0, 0), /* 65 */
328 BYTES(0, 0, 0, 0), /* 66 */
329 BYTES(0, 0, 0, 0), /* 67 */
330 BYTES(0, 0, 0, 0), /* 68 */
331 BYTES(0, 0, 0, 0), /* 69 */
332 BYTES(0, 0, 0, 0), /* 6A */
333 BYTES(0, 0, 0, 0), /* 6B */
334 BYTES(0, 0, 0, 0), /* 6C */
335 BYTES(0, 0, 0, 0), /* 6D */
336 STRING(pausebreak_descr
), /* 6E PAUSE/BREAK ?? */
337 STRING(f12_descr
), /* 6F F12 ?? */
338 STRING(home_descr
), /* 70 HOME ?? */
339 STRING(end_descr
), /* 71 END ?? */
340 BYTES(0, 0, 0, 0), /* 72 */
341 BYTES(0, 0, 0, 0), /* 73 */
342 BYTES(0, 0, 0, 0), /* 74 */
343 BYTES(0, 0, 0, 0), /* 75 */
344 BYTES(0, 0, 0, 0), /* 76 */
345 BYTES(0, 0, 0, 0), /* 77 */
346 BYTES(0, 0, 0, 0), /* 78 */
347 BYTES(0, 0, 0, 0), /* 79 */
348 BYTES(0, 0, 0, 0), /* 7A */
349 BYTES(0, 0, 0, 0), /* 7B */
350 BYTES(0, 0, 0, 0), /* 7C */
351 BYTES(0, 0, 0, 0), /* 7D */
352 BYTES(0, 0, 0, 0), /* 7E */
353 BYTES(0, 0, 0, 0), /* 7F */
358 #define SETBITS(b0, b1, b2, b3, b4, b5, b6, b7) \
359 (b0<<0)|(b1<<1)|(b2<<2)|(b3<<3)|(b4<<4)|(b5<<5)|(b6<<6)|(b7<<7)
361 STATIC CONST UBYTE locapsable
[] =
363 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 00 - 07 */
364 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 08 - 0F */
366 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
367 SETBITS(1, 1, 1, 0, 0, 0, 0, 0), /* 18 - 1F */
369 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
370 SETBITS(1, 1, 1, 0, 0, 0, 0, 0), /* 28 - 2F */
372 SETBITS(0, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
373 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 38 - 3F */
376 STATIC CONST UBYTE hicapsable
[] =
378 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 40 - 47 */
379 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 48 - 4F */
381 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
382 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 58 - 5F */
384 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
385 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
387 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
388 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */
391 STATIC CONST UBYTE lorepeatable
[] =
393 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 00 - 07 */
394 SETBITS(1, 1, 1, 1, 1, 1, 0, 1), /* 08 - 0F */
396 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
397 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 18 - 1F */
399 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
400 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 28 - 2F */
402 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
403 SETBITS(1, 1, 1, 0, 1, 1, 1, 1) /* 38 - 3F */
406 STATIC CONST UBYTE hirepeatable
[] =
408 SETBITS(1, 1, 1, 0, 0, 0, 1, 0), /* 40 - 47 */
409 SETBITS(1, 1, 0, 0, 1, 1, 1, 1), /* 48 - 4F */
411 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
412 SETBITS(0, 0, 1, 1, 1, 1, 1, 0), /* 58 - 5F */
414 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
415 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
417 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
418 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */