a500kbd
view src/scantbl.h @ 1:3228a731d4db
translate scancodes
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sat, 14 Oct 2017 07:23:47 +0300 |
parents | |
children | a4fd9c5a6655 |
line source
1 #ifndef SCANTBL_H_
2 #define SCANTBL_H_
4 enum {
5 KEY_ESC = 27,
7 KEY_F1 = 256,
8 KEY_F2, KEY_F3, KEY_F4, KEY_F5, KEY_F6, KEY_F7, KEY_F8,
9 KEY_F9, KEY_F10, KEY_F11, KEY_F12, KEY_SYSRQ, KEY_BRK,
10 KEY_SCRLK, KEY_CAPSLK, KEY_NUMLK,
12 KEY_LSHIFT, KEY_RSHIFT,
13 KEY_LCTRL, KEY_RCTRL,
14 KEY_LALT, KEY_RALT,
15 KEY_LWIN, KEY_RWIN, KEY_MENU,
17 KEY_INS, KEY_DEL, KEY_HOME, KEY_END, KEY_PGUP, KEY_PGDOWN,
18 KEY_LEFT, KEY_RIGHT, KEY_UP, KEY_DOWN,
20 KEY_KP_0, KEY_KP_1, KEY_KP_2, KEY_KP_3, KEY_KP_4,
21 KEY_KP_5, KEY_KP_6, KEY_KP_7, KEY_KP_8, KEY_KP_9,
22 KEY_KP_DIV, KEY_KP_MUL, KEY_KP_MINUS, KEY_KP_PLUS,
23 KEY_KP_DOT, KEY_KP_ENTER,
25 KEY_MM_WWW_SEARCH, KEY_MM_WWW_FAV, KEY_MM_WWW_REFRESH, KEY_MM_WWW_STOP,
26 KEY_MM_WWW_FWD, KEY_MM_WWW_BACK, KEY_MM_WWW_HOME,
27 KEY_MM_PREV, KEY_MM_NEXT, KEY_MM_PLAY, KEY_MM_STOP, KEY_MM_VOLUP, KEY_MM_VOLDOWN,
28 KEY_MM_MUTE, KEY_MM_CALC, KEY_MM_MYCOMP, KEY_MM_EMAIL, KEY_MM_SELECT,
29 KEY_APPS,
30 KEY_ACPI_POWER, KEY_ACPI_SLEEP, KEY_ACPI_WAKEUP
31 };
34 static const char *skeystr[] = {
35 "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11", "F12",
36 "SysRq", "Break", "Scroll Lock", "Caps Lock", "Num Lock",
37 "L Shift", "R Shift", "L Ctrl", "R Ctrl", "L Alt", "R Alt", "L Win", "R Win", "Menu",
38 "Insert", "Delete", "Home", "End", "Page Up", "Page Down", "Left", "Right", "Up", "Down",
39 "Keypad 0", "Keypad 1", "Keypad 2", "Keypad 3", "Keypad 4", "Keypad 5", "Keypad 6",
40 "Keypad 7", "Keypad 8", "Keypad 9", "Keypad /", "Keypad *", "Keypad -", "Keypad +",
41 "Keypad .", "Keypad Enter",
42 "WWW Search", "WWW Fav", "WWW Refresh", "WWW Stop", "WWW Fwd", "WWW Back", "WWW Home",
43 "Prev", "Next", "Play", "Stop", "Volume Up", "Volume Down", "Mute", "Calculator",
44 "My Computer", "Email", "Select Media", "Apps",
45 "Power", "Sleep", "Wakeup",
46 };
49 #define KEYMAP_NORMAL_SIZE (sizeof keymap_normal / sizeof *keymap_normal)
50 static int keymap_normal[] = {
51 0, KEY_F9, 0, KEY_F5, KEY_F3, KEY_F1, KEY_F2, KEY_F12, /* 00 - 07 */
52 0, KEY_F10, KEY_F8, KEY_F6, KEY_F4, '\t', '`', 0, /* 08 - 0f */
53 0, KEY_LALT, KEY_LSHIFT, 0, KEY_LCTRL, 'q', '1', 0, /* 10 - 17 */
54 0, 0, 'z', 's', 'a', 'w', '2', 0, /* 18 - 1f */
55 0, 'c', 'x', 'd', 'e', '4', '3', 0, /* 20 - 27 */
56 0, ' ', 'v', 'f', 't', 'r', '5', 0, /* 28 - 2f */
57 0, 'n', 'b', 'h', 'g', 'y', '6', 0, /* 30 - 37 */
58 0, 0, 'm', 'j', 'u', '7', '8', 0, /* 38 - 3f */
59 0, ',', 'k', 'i', 'o', '0', '9', 0, /* 40 - 47 */
60 0, '.', '/', 'l', ';', 'p', '-', 0, /* 48 - 4f */
61 0, 0, '\'', 0, '[', '=', 0, 0, /* 50 - 57 */
62 KEY_CAPSLK, KEY_RSHIFT, '\n', ']', 0, '\\', 0, 0, /* 58 - 5f */
63 0, 0, 0, 0, 0, 0, '\b', 0, /* 60 - 67 */
64 0, KEY_KP_1, 0, KEY_KP_4, KEY_KP_7, 0, 0, 0, /* 68 - 6f */
65 KEY_KP_0, KEY_KP_DOT, KEY_KP_2, KEY_KP_5, KEY_KP_6, KEY_KP_8, KEY_ESC, KEY_NUMLK, /* 70 - 77 */
66 KEY_F11, KEY_KP_PLUS, KEY_KP_3, KEY_KP_MINUS, KEY_KP_MUL, KEY_KP_9, KEY_SCRLK, 0,/* 78 - 7f */
67 0, 0, 0, KEY_F7 /* 80 - 83 */
68 };
70 #define KEYMAP_EXT_SIZE (sizeof keymap_ext / sizeof *keymap_ext)
71 static int keymap_ext[] = {
72 0, 0, 0, 0, 0, 0, 0, 0, /* 00 - 07 */
73 0, 0, 0, 0, 0, 0, 0, 0, /* 08 - 0f */
74 KEY_MM_WWW_SEARCH, KEY_RALT, 0, 0, KEY_RCTRL, KEY_MM_PREV, 0, 0, /* 10 - 17 */
75 KEY_MM_WWW_FAV, 0, 0, 0, 0, 0, 0, KEY_LWIN, /* 18 - 1f */
76 KEY_MM_WWW_REFRESH, KEY_MM_VOLDOWN, 0, KEY_MM_MUTE, 0, 0, 0, KEY_RWIN, /* 20 - 27 */
77 KEY_MM_STOP, 0, 0, KEY_MM_CALC, 0, 0, 0, KEY_APPS, /* 28 - 2f */
78 KEY_MM_WWW_FWD, 0, KEY_MM_VOLUP, 0, KEY_MM_PLAY, 0, 0, KEY_ACPI_POWER, /* 30 - 37 */
79 KEY_MM_WWW_BACK, 0, KEY_MM_WWW_HOME, KEY_MM_STOP, 0, 0, 0, KEY_ACPI_SLEEP, /* 38 - 3f */
80 KEY_MM_MYCOMP, 0, 0, 0, KEY_MM_EMAIL, 0, KEY_KP_DIV, 0, /* 40 - 47 */
81 0, KEY_MM_NEXT, 0, 0, KEY_MM_SELECT, 0, 0, 0, /* 48 - 4f */
82 0, 0, KEY_ACPI_WAKEUP, 0, 0, KEY_END, 0, KEY_LEFT, /* 50 - 57 */
83 KEY_HOME, 0, 0, 0, KEY_INS, KEY_DEL, KEY_DOWN, 0, /* 58 - 5f */
84 KEY_RIGHT, KEY_UP, 0, 0, 0, 0, KEY_DOWN, 0, /* 60 - 67 */
85 };
87 #endif /* SCANTBL_H_ */