xref: /haiku/headers/private/kernel/debugger_keymaps.h (revision cfbfa8bade8e4071bb145ebc239e331704cb6a24)
101e46bdbSMichael Lotz /*
22c19d5ecSMichael Lotz  * Copyright 2008, Haiku Inc. All Rights Reserved.
32c19d5ecSMichael Lotz  * Distributed under the terms of the MIT License.
42c19d5ecSMichael Lotz  *
52c19d5ecSMichael Lotz  * Authors:
62c19d5ecSMichael Lotz  *		Michael Lotz <mmlr@mlotz.ch>
72c19d5ecSMichael Lotz  *		Darian Rackham
8*cfbfa8baSMichael Lotz  *		Olivier Coursière
901e46bdbSMichael Lotz  */
1001e46bdbSMichael Lotz #ifndef DEBUGGER_KEYMAPS_H
1101e46bdbSMichael Lotz #define DEBUGGER_KEYMAPS_H
1201e46bdbSMichael Lotz 
1301e46bdbSMichael Lotz #include "kernel_debugger_config.h"
1401e46bdbSMichael Lotz 
152c19d5ecSMichael Lotz #if KDL_KEYMAP == 'dv'
162c19d5ecSMichael Lotz 
172c19d5ecSMichael Lotz static const char kUnshiftedKeymap[128] = {
182c19d5ecSMichael Lotz 	0, 27, '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '[', ']', 8, '\t',
192c19d5ecSMichael Lotz 	'\'', ',', '.', 'p', 'y', 'f', 'g', 'c', 'r', 'l', '/', '=', '\n', 0, 'a', 'o',
202c19d5ecSMichael Lotz 	'e', 'u', 'i', 'd', 'h', 't', 'n', 's', '-', '`', 0, '\\', ';', 'q', 'j', 'k',
212c19d5ecSMichael Lotz 	'x', 'b', 'm', 'w', 'v', 'z', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
222c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
232c19d5ecSMichael Lotz 	'\\', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
242c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
252c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
262c19d5ecSMichael Lotz };
272c19d5ecSMichael Lotz 
282c19d5ecSMichael Lotz static const char kShiftedKeymap[128] = {
292c19d5ecSMichael Lotz 	0, 27, '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '{', '}', 8, '\t',
302c19d5ecSMichael Lotz 	'"', '<', '>', 'P', 'Y', 'F', 'G', 'C', 'R', 'L', '?', '+', '\n', 0, 'A', 'O',
312c19d5ecSMichael Lotz 	'E', 'U', 'I', 'D', 'H', 'T', 'N', 'S', '_', '~', 0, '|', ':', 'Q', 'J', 'K',
322c19d5ecSMichael Lotz 	'X', 'B', 'M', 'W', 'V', 'Z', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
332c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
342c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
352c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
362c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
372c19d5ecSMichael Lotz };
382c19d5ecSMichael Lotz 
392c19d5ecSMichael Lotz static const char kAltedKeymap[128] = {
402c19d5ecSMichael Lotz 	0, 27, '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '{', '}', 8, '\t',
412c19d5ecSMichael Lotz 	'"', '<', '>', 'P', 'Y', 'F', 'G', 'C', 'R', 'L', '?', '+', '\n', 0, 'A', 'O',
422c19d5ecSMichael Lotz 	'E', 'U', 'I', 'D', 'H', 'T', 'N', 'S', '_', '~', 0, '|', ':', 'Q', 'J', 'K',
432c19d5ecSMichael Lotz 	'X', 'B', 'M', 'W', 'V', 'Z', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
442c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
452c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
462c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
472c19d5ecSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
482c19d5ecSMichael Lotz };
492c19d5ecSMichael Lotz 
50*cfbfa8baSMichael Lotz #elif KDL_KEYMAP == 'fr'
51*cfbfa8baSMichael Lotz 
52*cfbfa8baSMichael Lotz static const char kUnshiftedKeymap[128] = {
53*cfbfa8baSMichael Lotz 	0, 27, '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '°', '+', 8, '\t',
54*cfbfa8baSMichael Lotz 	'a', 'z', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 0, '$', '\n', 0, 'q', 's',
55*cfbfa8baSMichael Lotz 	'd', 'f', 'g', 'h', 'j', 'k', 'l', 'm', 'ù', '*', 0, '$', 'w', 'x', 'c', 'v',
56*cfbfa8baSMichael Lotz 	'b', 'n', ',', ';', ':', '!', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
57*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '-', 0, 0, 0, '+', 0,
58*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, '<', 0, 0, 0, 0, 0, 0, 0, 0, 0,
59*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
60*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
61*cfbfa8baSMichael Lotz };
62*cfbfa8baSMichael Lotz 
63*cfbfa8baSMichael Lotz static const char kShiftedKeymap[128] = {
64*cfbfa8baSMichael Lotz 	0, 27, '&', 'é', '"', '\'', '(', '-', 'è', '_', 'ç', 'à', ')', '=', 8, '\t',
65*cfbfa8baSMichael Lotz 	'A', 'Z', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', 0, '£', '\n', 0, 'Q', 'S',
66*cfbfa8baSMichael Lotz 	'D', 'F', 'G', 'H', 'J', 'K', 'L', 'M', '%', 'µ', 0, 0, 'W', 'X', 'C', 'V',
67*cfbfa8baSMichael Lotz 	'B', 'N', '?', '.', '/', '§', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
68*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
69*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, '>', 0, 0, 0, 0, 0, 0, 0, 0, 0,
70*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
71*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
72*cfbfa8baSMichael Lotz };
73*cfbfa8baSMichael Lotz 
74*cfbfa8baSMichael Lotz static const char kAltedKeymap[128] = {
75*cfbfa8baSMichael Lotz 	0, 27, 0, '~', '#', '{', '[', '|', '`', '\\', '^', '@', ']', '}', 8, '\t',
76*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '¤', 0, 0, 0, 0,
77*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
78*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
79*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
80*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, '\\', 0, 0, 0, 0, 0, 0, 0, 0, 0,
81*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
82*cfbfa8baSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
83*cfbfa8baSMichael Lotz };
84*cfbfa8baSMichael Lotz 
852c19d5ecSMichael Lotz #elif KDL_KEYMAP == 'sg'
862c19d5ecSMichael Lotz 
872c19d5ecSMichael Lotz static const char kUnshiftedKeymap[128] = {
8801e46bdbSMichael Lotz 	0, 27, '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '\'', '^', 8, '\t',
8901e46bdbSMichael Lotz 	'q', 'w', 'e', 'r', 't', 'z', 'u', 'i', 'o', 'p', 0, 0, '\n', 0, 'a', 's',
9001e46bdbSMichael Lotz 	'd', 'f', 'g', 'h', 'j', 'k', 'l', 0, 0, 0, 0, '$', 'y', 'x', 'c', 'v',
9101e46bdbSMichael Lotz 	'b', 'n', 'm', ',', '.', '-', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
9201e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '-', 0, 0, 0, '+', 0,
9301e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, '<', 0, 0, 0, 0, 0, 0, 0, 0, 0,
9401e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9501e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
9601e46bdbSMichael Lotz };
9701e46bdbSMichael Lotz 
9801e46bdbSMichael Lotz static const char kShiftedKeymap[128] = {
9901e46bdbSMichael Lotz 	0, 27, '+', '"', '*', 0, '%', '&', '/', '(', ')', '=', '?', '`', 8, '\t',
10001e46bdbSMichael Lotz 	'Q', 'W', 'E', 'R', 'T', 'Z', 'U', 'I', 'O', 'P', 0, '!', '\n', 0, 'A', 'S',
10101e46bdbSMichael Lotz 	'D', 'F', 'G', 'H', 'J', 'K', 'L', 0, 0, 0, 0, 0, 'Y', 'X', 'C', 'V',
10201e46bdbSMichael Lotz 	'B', 'N', 'M', ';', ':', '_', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
10301e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10401e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, '>', 0, 0, 0, 0, 0, 0, 0, 0, 0,
10501e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10601e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
10701e46bdbSMichael Lotz };
10801e46bdbSMichael Lotz 
10901e46bdbSMichael Lotz static const char kAltedKeymap[128] = {
11001e46bdbSMichael Lotz 	0, 27, 0, '@', '#', 0, 0, 0, '|', 0, 0, 0, 0, '~', 8, '\t',
11101e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '[', ']', 0, 0, 0, 0,
11201e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, '{', 0, 0, '}', 0, 0, 0, 0,
11301e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
11401e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11501e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, '\\', 0, 0, 0, 0, 0, 0, 0, 0, 0,
11601e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11701e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
11801e46bdbSMichael Lotz };
11901e46bdbSMichael Lotz 
12001e46bdbSMichael Lotz #else // default US keymap
12101e46bdbSMichael Lotz 
12201e46bdbSMichael Lotz static const char kUnshiftedKeymap[128] = {
12301e46bdbSMichael Lotz 	0, 27, '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '-', '=', 8, '\t',
12401e46bdbSMichael Lotz 	'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '[', ']', '\n', 0, 'a', 's',
12501e46bdbSMichael Lotz 	'd', 'f', 'g', 'h', 'j', 'k', 'l', ';', '\'', '`', 0, '\\', 'z', 'x', 'c', 'v',
12601e46bdbSMichael Lotz 	'b', 'n', 'm', ',', '.', '/', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
12701e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
12801e46bdbSMichael Lotz 	'\\', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
12901e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
13001e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
13101e46bdbSMichael Lotz };
13201e46bdbSMichael Lotz 
13301e46bdbSMichael Lotz static const char kShiftedKeymap[128] = {
13401e46bdbSMichael Lotz 	0, 27, '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', 8, '\t',
13501e46bdbSMichael Lotz 	'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', '{', '}', '\n', 0, 'A', 'S',
13601e46bdbSMichael Lotz 	'D', 'F', 'G', 'H', 'J', 'K', 'L', ':', '"', '~', 0, '|', 'Z', 'X', 'C', 'V',
13701e46bdbSMichael Lotz 	'B', 'N', 'M', '<', '>', '?', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
13801e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
13901e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
14001e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
14101e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
14201e46bdbSMichael Lotz };
14301e46bdbSMichael Lotz 
14401e46bdbSMichael Lotz static const char kAltedKeymap[128] = {
14501e46bdbSMichael Lotz 	0, 27, '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '-', '=', 8, '\t',
14601e46bdbSMichael Lotz 	'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '[', ']', '\n', 0, 'a', 's',
14701e46bdbSMichael Lotz 	'd', 'f', 'g', 'h', 'j', 'k', 'l', ';', '\'', '`', 0, '\\', 'z', 'x', 'c', 'v',
14801e46bdbSMichael Lotz 	'b', 'n', 'm', ',', '.', '/', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0,
14901e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
15001e46bdbSMichael Lotz 	'\\', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
15101e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
15201e46bdbSMichael Lotz 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
15301e46bdbSMichael Lotz };
15401e46bdbSMichael Lotz 
15501e46bdbSMichael Lotz #endif
15601e46bdbSMichael Lotz #endif // DEBUGGER_KEYMAPS_H
157