2 * Common Source code Project -> VM -> FM-7/77AV -> Keyboard (Tables)
3 * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
6 * Jun 16, 2015 : Separate tables from keyboard.cpp .
9 #ifndef _FM7_KEYBOARD_TABLES_H
10 #define _FM7_KEYBOARD_TABLES_H
12 #include "fm7_keyboard.h"
13 #if !defined(VK_OEM_CSP_KPRET)
14 # define VK_OEM_CSP_KPRET 0x9f
20 const uint16_t vk_matrix_106[0x68] = { // VK
21 // +0, +1, +2, +3, +4, +5, +6, +7
22 /* 0x00, ESC, 1 , 2, 3, 4, 5, 6 */
23 0x00, VK_KANJI, '1', '2', '3', '4', '5', '6', // +0x00
24 /* 7, 8, 9, 0, - , ^, \|, BS */
25 '7', '8', '9', '0', 0xbd, 0xde, 0xdc, VK_BACK, // +0x08
26 /* TAB, Q, W, E, R, T, Y, U */
27 VK_TAB, 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', // +0x10
28 /* I, O, P, @, [, [RET], A, S */
29 'I', 'O', 'P', VK_OEM_3, VK_OEM_4, VK_RETURN, 'A', 'S', //+0x18
30 /* D, F, G, H, J, K, L, ; */
31 'D', 'F', 'G', 'H', 'J', 'K', 'L', VK_OEM_PLUS, // +0x20
32 /* :, ], Z, X, C, V, B, N */
33 VK_OEM_1, VK_OEM_6, 'Z', 'X', 'C', 'V', 'B', 'N', // +0x28
34 /* M, , , ., / , \, RSPACE=Henkan , * , / */
35 'M', VK_OEM_COMMA, VK_OEM_PERIOD, VK_OEM_2, VK_OEM_102, VK_CONVERT, VK_MULTIPLY, VK_DIVIDE, // +0x30
36 #if defined(_MSC_VER) || defined(Q_OS_WIN)
37 /* + , - , 7, 8, 9, = = RWIN or Scroll Lock (Windows), 4, 5 */
38 VK_ADD, VK_SUBTRACT, VK_NUMPAD7, VK_NUMPAD8, VK_NUMPAD9, VK_SCROLL, VK_NUMPAD4, VK_NUMPAD5, // +0x38
40 VK_ADD, VK_SUBTRACT, VK_NUMPAD7, VK_NUMPAD8, VK_NUMPAD9, VK_RWIN, VK_NUMPAD4, VK_NUMPAD5, // +0x38
42 /* 6, NUMPADCOMMA=RMENU , 1, 2, 3, NUMPADENTER=RETURN,0, . */
43 VK_NUMPAD6, VK_RMENU, VK_NUMPAD1, VK_NUMPAD2, VK_NUMPAD3, VK_OEM_CSP_KPRET, VK_NUMPAD0, VK_DECIMAL, // +0x40
44 /* INS, EL, CLS, DEL, DUP, ↑, HOME,← */
45 VK_INSERT, VK_PRIOR, VK_NEXT, VK_DELETE, VK_END, VK_UP, VK_HOME, VK_LEFT, // +0x48
46 /* ↓, →, LCTRL, LSHIFT or SHIFT (Winwdows), RSHIFT, CAPS, Graph=LWIN or ALT (WIndows), Lspace=Muhenkan */
47 #if defined(_MSC_VER) || defined(Q_OS_WIN)
48 VK_DOWN, VK_RIGHT, VK_CONTROL, VK_LSHIFT, VK_RSHIFT, VK_CAPITAL, VK_LMENU, VK_NONCONVERT, // +0x50
50 VK_DOWN, VK_RIGHT, VK_CONTROL, VK_LSHIFT, VK_RSHIFT, VK_CAPITAL, VK_LWIN, VK_NONCONVERT, // +0x50
52 /* Cspace=Space, *Unknown*, KANA, *Unknown* , ESC(Break), F1, F2, F3 */
53 VK_SPACE, 0x00, 0x15, 0x00, VK_ESCAPE, VK_F1, VK_F2, VK_F3, // +0x58
54 /* F4, F5, F6, F7, F8, F9, F10 , *END* */
55 VK_F4, VK_F5, VK_F6, VK_F7, VK_F8, VK_F9, VK_F10, 0xffff // +0x60
63 // Key tables value from XM7.
64 const key_tbl_t standard_key[] = {
169 const key_tbl_t standard_shift_key[] = {
262 const struct key_tbl_t ctrl_key[] = {
302 const struct key_tbl_t ctrl_shift_key[] = {
342 const struct key_tbl_t graph_key[] = {
430 /* Belows is none when shift */
443 const struct key_tbl_t graph_shift_key[] = {
535 const struct key_tbl_t kana_key[] = {
642 const struct key_tbl_t kana_shift_key[] = {
705 #if defined(_FM77AV_VARIANTS)
706 const key_tbl_t standard_key_16beta[] = {
811 const key_tbl_t standard_shift_key_16beta[] = {
904 const struct key_tbl_t ctrl_key_16beta[] = {
958 const struct key_tbl_t ctrl_shift_key_16beta[] = {
1013 const struct key_tbl_t graph_key_16beta[] = {
1101 /* Belows is none when shift */
1114 const struct key_tbl_t graph_shift_key_16beta[] = {
1206 const struct key_tbl_t kana_key_16beta[] = {
1311 const struct key_tbl_t kana_shift_key_16beta[] = {
1372 #endif // _FM77AV_VARIANTS
1375 #endif // _FM7_KEYBOARD_TABLES_H