store the pre-alphacomposit hook and allow it to be queried.
[AROS.git] / workbench / devs / keymaps / pc105_hr.c
blobe61c9aa7d96af7eec714c73f3a08ebb1dd566b00
1 // Kbdcz_Czech_pkf.txt
2 /*
3 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
4 $Id$
6 Desc: Croatian PC105 Keymap
7 Lang: English
8 */
10 #include "common.h"
12 DEFINE_KEYMAP("pc105_hr")
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 */
102 STATIC CONST UBYTE hikeymaptypes[] =
104 N, /* 40 SPACE */
105 N, /* 41 BACKSPACE */
106 ST|S, /* 42 TAB */
107 N, /* 43 ENTER */
108 C, /* 44 RETURN */
109 A, /* 45 ESCAPE */
110 N, /* 46 DEL */
111 ST|S, /* 47 INSERT ?? */
112 ST|S, /* 48 PAGE UP ?? */
113 ST|S, /* 49 PAGE DOWN ?? */
114 N, /* 4A NUMERIC PAD - */
115 ST|S, /* 4B F11 ?? */
116 ST|S, /* 4C CURSORUP*/
117 ST|S, /* 4D CURSORDOWN */
118 ST|S, /* 4E CURSORRIGHT */
119 ST|S, /* 4F CURSORLEFT */
120 ST|S, /* 50 F1 */
121 ST|S, /* 51 F2 */
122 ST|S, /* 52 F3 */
123 ST|S, /* 53 F4 */
124 ST|S, /* 54 F5 */
125 ST|S, /* 55 F6 */
126 ST|S, /* 56 F7 */
127 ST|S, /* 57 F8 */
128 ST|S, /* 58 F9 */
129 ST|S, /* 59 F10 */
130 NOP, /* 5A NUMLOCK */
131 N, /* 5B NUMPAD ) */
132 N, /* 5C NUMPAD / */
133 N, /* 5D NUMPAD * */
134 N, /* 5E NUMPAD + */
135 ST, /* 5F HELP */
136 NOP, /* 60 LEFT SHIFT*/
137 NOP, /* 61 RIGHT SHIFT */
138 NOP, /* 62 CAPS LOCK */
139 NOP, /* 63 CONTROL */
140 NOP, /* 64 LALT */
141 NOP, /* 65 RALT */
142 NOP, /* 66 LCOMMAND */
143 NOP, /* 67 RCOMMAND */
144 NOP, /* 68 LEFT MOUSE BUTTON*/
145 NOP, /* 69 RIGHT MOUSE BUTTON */
146 NOP, /* 6A MIDDLE MOUSE BUTTON */
147 NOP, /* 6B */
148 NOP, /* 6C */
149 NOP, /* 6D */
150 ST|A, /* 6E PAUSE/BREAK ??*/
151 ST|S, /* 6F F12 ?? */
152 ST|C, /* 70 HOME ?? */
153 ST|C, /* 71 END ?? */
154 NOP, /* 72 */
155 NOP, /* 73 */
156 NOP, /* 74 */
157 NOP, /* 75 */
158 NOP, /* 76 */
159 NOP, /* 77 */
160 NOP, /* 78 */
161 NOP, /* 79 */
162 NOP, /* 7A */
163 NOP, /* 7B */
164 NOP, /* 7C */
165 NOP, /* 7D */
166 NOP, /* 7E */
167 NOP /* 7F */
170 #undef N
171 #undef S
172 #undef A
173 #undef C
174 #undef D
175 #undef V
176 #undef ST
177 #undef NOP
179 #undef STRING
180 #undef DEAD
181 #undef BYTES
183 #define STRING(x) (IPTR)x
184 #define DEAD(x) (IPTR)x
185 #define BYTES(b0, b1, b2, b3) \
186 (((UBYTE)b0)<<24) | (((UBYTE)b1)<<16) | (((UBYTE)b2)<<8) | (((UBYTE)b3)<<0)
188 STATIC CONST IPTR lokeymap[] =
190 /*---- 1st QWERTY row - 0x00 to 0x0F */
191 BYTES('.' ,'.' ,0xB0,';' ),
192 BYTES(0x7E,0x7E,'!' , '1'),
193 BYTES('¡' ,'¡' ,'"' , '2'),
194 BYTES('^' ,'^' ,'#' , '3'),
195 BYTES('¢' ,'¢' ,'$' , '4'),
196 BYTES('°' ,'°' ,'%' , '5'),
197 BYTES('²' ,'²' ,'&' , '6'),
198 BYTES('`' ,'`' ,'/' , '7'),
199 BYTES('ÿ' ,'ÿ' ,'(' , '8'),
200 BYTES('´' ,'´' ,')' , '9'),
201 BYTES('½' ,'½' ,'=' , '0'),
202 BYTES(0xA8,0xA8,'?' ,0x27),
203 BYTES(0xB8,0xB8,'*' , '+'),
204 BYTES('.' ,'.' ,0xB0,';' ),
205 BYTES(0, 0, 0, 0 ),
206 BYTES('0', '0', '0', '0'),
207 /*---- 2nd QWERTY row - 0x10 to 0x1F */
208 BYTES(0x5C,0x5C,'Q' ,'q' ),
209 BYTES(0x7C,0x7C,'W' ,'w' ),
210 BYTES('©' , EUR,'E' ,'e' ),
211 BYTES('®' ,'®' ,'R' ,'r' ),
212 BYTES('.' ,'.' ,'T' ,'t' ),
213 BYTES('¤' ,'¤' ,'Z' ,'z' ),
214 BYTES('µ', '¸' ,'U' ,'u' ),
215 BYTES('¦', '¡', 'I' ,'i' ),
216 BYTES('Ø', 'ø', 'O' ,'o' ),
217 BYTES('¶', '¶', 'P' ,'p' ),
218 BYTES(0xF7,0xF7,0xA9,0xB9),
219 BYTES(0xD7,0xD7,0xD0,0xF0),
220 BYTES(0, 0, 0, 0 ),
221 BYTES('1', '1', '1', '1'),
222 BYTES('2', '2', '2', '2'),
223 BYTES('3', '3', '3', '3'),
224 /*---- 3rd QWERTY row - 0x20 to 0x2F */
225 BYTES(0xC1,0xE1,'A' ,'a' ),
226 BYTES('§', 'ß', 'S' ,'s' ),
227 BYTES(0xD0,0xD0,'D' ,'d' ),
228 BYTES('[' ,'[' ,'F' ,'f' ),
229 BYTES(']' ,']' ,'G' ,'g' ),
230 BYTES('H' ,'h' ,'H' ,'h' ),
231 BYTES('J' ,'j' ,'J' ,'j' ),
232 BYTES(0xB3,0xB3,'K' ,'k' ),
233 BYTES(0xA3,0xA3,'L' ,'l' ),
234 BYTES(0xC8,0xE8,0xC8,0xE8),
235 BYTES(0xDF,0xDF,0xC6,0xE6),
236 BYTES(0xA4,0xA4,0xAE,0xBE),
237 BYTES(0, 0, 0, 0 ),
238 BYTES('4', '4', '4', '4'),
239 BYTES('5', '5', '5', '5'),
240 BYTES('6', '6', '6', '6'),
241 /*---- 4th QWERTY row - 0x30 to 0x3F */
242 BYTES('>' ,'<' ,'>' ,'<' ),
243 BYTES('¬' ,'±' ,'Y' ,'y' ),
244 BYTES('÷', '×' ,'X' ,'x' ),
245 BYTES('Ç', 'ç', 'C' ,'c' ),
246 BYTES('@' ,'@' ,'V' ,'v' ),
247 BYTES('{' ,'{' ,'B' ,'b' ),
248 BYTES('}' ,'}' ,'N' ,'n' ),
249 BYTES(0xA7,0xA7,'M' ,'m' ),
250 BYTES('<' ,'<' ,';' ,',' ),
251 BYTES('>' ,'>' ,':' ,'.' ),
252 BYTES('*' ,'*' ,'_' ,'-' ),
253 BYTES(0, 0, 0, 0 ),
254 BYTES(',', '.', ',', '.'),
255 BYTES('7', '7', '7', '7'),
256 BYTES('8', '8', '8', '8'),
257 BYTES('9', '9', '9', '9'),
260 #include "standard.h"
262 STATIC CONST IPTR hikeymap[] =
264 BYTES(' ', ' ', ' ', ' '), /* 40 */
265 BYTES(8, 8, 8, 8), /* 41 BACKSPACE*/
266 STRING(tab_descr), /* 42 TAB */
267 BYTES(13, 13, 13, 13), /* 43 ENTER */
268 BYTES(0, 0, 10, 13), /* 44 RETURN */
269 BYTES(0, 0, 0x9B, 27), /* 45 ESCAPE */
270 BYTES(127, 127, 127, 127), /* 46 DEL */
271 STRING(insert_descr), /* 47 INSERT ?? */
272 STRING(pageup_descr), /* 48 PAGEUP ?? */
273 STRING(pagedown_descr), /* 49 PAGEDOWN ?? */
274 BYTES('-', '-', '-', '-'), /* 4A NUMPAD - */
275 STRING(f11_descr), /* 4B F11 ?? */
276 STRING(up_descr), /* 4C CURSOR UP*/
277 STRING(down_descr), /* 4D CURSOR DOWN*/
278 STRING(right_descr), /* 4E CURSOR RIGHT */
279 STRING(left_descr), /* 4F CURSOR LEFT */
280 STRING(f1_descr), /* 50 F1 */
281 STRING(f2_descr), /* 51 */
282 STRING(f3_descr), /* 52 */
283 STRING(f4_descr), /* 53 */
284 STRING(f5_descr), /* 54 */
285 STRING(f6_descr), /* 55 */
286 STRING(f7_descr), /* 56 */
287 STRING(f8_descr), /* 57 */
288 STRING(f9_descr), /* 58 */
289 STRING(f10_descr), /* 59 */
290 BYTES(0, 0, 0, 0), /* 5A */
291 BYTES('/', '/', '/', '/'), /* 5B */
292 BYTES('*', '*', '*', '*'), /* 5C */
293 BYTES('-', '-', '-', '-'), /* 5D */
294 BYTES('+', '+', '+', '+'), /* 5E */
295 STRING(help_descr), /* 5F HELP */
296 BYTES(0, 0, 0, 0), /* 60 */
297 BYTES(0, 0, 0, 0), /* 61 */
298 BYTES(0, 0, 0, 0), /* 62 */
299 BYTES(0, 0, 0, 0), /* 63 */
300 BYTES(0, 0, 0, 0), /* 64 */
301 BYTES(0, 0, 0, 0), /* 65 */
302 BYTES(0, 0, 0, 0), /* 66 */
303 BYTES(0, 0, 0, 0), /* 67 */
304 BYTES(0, 0, 0, 0), /* 68 */
305 BYTES(0, 0, 0, 0), /* 69 */
306 BYTES(0, 0, 0, 0), /* 6A */
307 BYTES(0, 0, 0, 0), /* 6B */
308 BYTES(0, 0, 0, 0), /* 6C */
309 BYTES(0, 0, 0, 0), /* 6D */
310 STRING(pausebreak_descr), /* 6E PAUSE/BREAK ?? */
311 STRING(f12_descr), /* 6F F12 ?? */
312 STRING(home_descr), /* 70 HOME ?? */
313 STRING(end_descr), /* 71 END ?? */
314 BYTES(0, 0, 0, 0), /* 72 */
315 BYTES(0, 0, 0, 0), /* 73 */
316 BYTES(0, 0, 0, 0), /* 74 */
317 BYTES(0, 0, 0, 0), /* 75 */
318 BYTES(0, 0, 0, 0), /* 76 */
319 BYTES(0, 0, 0, 0), /* 77 */
320 BYTES(0, 0, 0, 0), /* 78 */
321 BYTES(0, 0, 0, 0), /* 79 */
322 BYTES(0, 0, 0, 0), /* 7A */
323 BYTES(0, 0, 0, 0), /* 7B */
324 BYTES(0, 0, 0, 0), /* 7C */
325 BYTES(0, 0, 0, 0), /* 7D */
326 BYTES(0, 0, 0, 0), /* 7E */
327 BYTES(0, 0, 0, 0), /* 7F */
330 #undef SETBITS
332 #define SETBITS(b0, b1, b2, b3, b4, b5, b6, b7) \
333 (b0<<0)|(b1<<1)|(b2<<2)|(b3<<3)|(b4<<4)|(b5<<5)|(b6<<6)|(b7<<7)
335 STATIC CONST UBYTE locapsable[] =
337 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 00 - 07 */
338 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 08 - 0F */
340 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
341 SETBITS(1, 1, 1, 1, 0, 0, 0, 0), /* 18 - 1F */
343 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
344 SETBITS(1, 1, 1, 1, 0, 0, 0, 0), /* 28 - 2F */
346 SETBITS(0, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
347 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 38 - 3F */
350 STATIC CONST UBYTE hicapsable[] =
352 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 40 - 47 */
353 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 48 - 4F */
355 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
356 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 58 - 5F */
358 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
359 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
361 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
362 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */
365 STATIC CONST UBYTE lorepeatable[] =
367 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 00 - 07 */
368 SETBITS(1, 1, 1, 1, 1, 1, 0, 1), /* 08 - 0F */
370 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 10 - 17 */
371 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 18 - 1F */
373 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 20 - 27 */
374 SETBITS(1, 1, 1, 1, 0, 1, 1, 1), /* 28 - 2F */
376 SETBITS(1, 1, 1, 1, 1, 1, 1, 1), /* 30 - 37 */
377 SETBITS(1, 1, 1, 0, 1, 1, 1, 1) /* 38 - 3F */
380 STATIC CONST UBYTE hirepeatable[] =
382 SETBITS(1, 1, 1, 0, 0, 0, 1, 0), /* 40 - 47 */
383 SETBITS(1, 1, 0, 0, 1, 1, 1, 1), /* 48 - 4F */
385 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 50 - 57 */
386 SETBITS(0, 0, 1, 1, 1, 1, 1, 0), /* 58 - 5F */
388 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 60 - 67 */
389 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 68 - 6F */
391 SETBITS(0, 0, 0, 0, 0, 0, 0, 0), /* 70 - 77 */
392 SETBITS(0, 0, 0, 0, 0, 0, 0, 0) /* 78 - 7F */