From cdac5abef7b3415cd3e3f482d19b5d07ed976c77 Mon Sep 17 00:00:00 2001 From: Hamish Coleman Date: Wed, 25 Jan 2017 18:58:29 +0800 Subject: [PATCH] Add keyboard matrix definition --- asm/ec.asm | 3 +- asm/ec_key_matrix_x230.mac | 64 ++++++++++++++++++++++++++++++++++++++ asm/ec_key_numpad1.mac | 2 ++ asm/ec_key_numpad2.mac | 2 ++ 4 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 asm/ec_key_matrix_x230.mac diff --git a/asm/ec.asm b/asm/ec.asm index 22b61c7..db912ce 100644 --- a/asm/ec.asm +++ b/asm/ec.asm @@ -330,8 +330,7 @@ table_replacements: dd table_fn_combo1 table_matrix: - ; FIXME - add in the definitions - ib 0x000219e8 - 0x000218d8 + %include "ec_key_matrix_x230.mac" table_matrix_size equ ($ - table_matrix) table_livekeys_map: diff --git a/asm/ec_key_matrix_x230.mac b/asm/ec_key_matrix_x230.mac new file mode 100644 index 0000000..1703927 --- /dev/null +++ b/asm/ec_key_matrix_x230.mac @@ -0,0 +1,64 @@ +; +; The keyboard matrix to keysym table +; + +; The values are for the x230 keyboard + +%include "ec_keysym.mac" + +; TODO +; - there are a number of keysyms that I dont know what they are. + + db KEY_GRAVE, KEY_1, KEY_Q, KEY_TAB, KEY_A, KEY_ESC, KEY_Z, 0x83 + times 8 db 0 + + db KEY_F1, KEY_2, KEY_W, KEY_CAPSLOCK, KEY_S, 0x2d, KEY_X, 0 + times 8 db 0 + + db KEY_F2, KEY_3, KEY_E, KEY_F3, KEY_D, KEY_F4, KEY_C, 0 + times 8 db 0 + + db KEY_5, KEY_4, KEY_R, KEY_T, KEY_F, KEY_G, KEY_V, KEY_B + times 8 db 0 + + db KEY_6, KEY_7, KEY_U, KEY_Y, KEY_J, KEY_H, KEY_M, KEY_N + times 8 db 0 + + db KEY_EQUAL, KEY_8, KEY_I, KEY_RIGHTBRACE, KEY_K, KEY_F6, KEY_COMMA, 0x38 + times 8 db 0 + + db KEY_F8, KEY_9, KEY_O, KEY_F7, KEY_L, 0x84, KEY_DOT, 0x85 + times 8 db 0 + + db KEY_MINUS, KEY_0, KEY_P, KEY_LEFTBRACE, KEY_SEMICOLON, KEY_APOSTROPHE + db 0x2a, KEY_QUESTION + times 8 db 0 + + db KEY_F9, KEY_F10, 0x0e, KEY_BACKSPACE, KEY_BACKSLASH, KEY_F5, KEY_ENTER + db KEY_SPACE + times 8 db 0 + + db 0, KEY_F12, 0, KEY_LEFTMETA, 0,0,0, KEY_RIGHT + times 8 db 0 + + db KEY_HOME, KEY_F11, KEY_VOLUMEUP, KEY_VOLUMEDOWN, KEY_MUTE, KEY_PROG1 + db KEY_MICMUTE, KEY_DOWN + times 8 db 0 + + db KEY_DELETE, KEY_INSERT, 0,0, KEY_PRINT, 0, KEY_PAGEUP, KEY_PAGEDOWN + times 8 db 0 + + db 0, KEY_END, 0,0,0, KEY_UP, 0, KEY_LEFT + times 8 db 0 + + db 0, 0, 0, 0,0, KEY_LEFTALT, 0, KEY_RIGHTALT + times 8 db 0 + + db 0,0,0, KEY_LEFTSHIFT, 0,0, KEY_RIGHTSHIFT, 0 + times 8 db 0 + + db KEY_LEFTCTRL, 0,0,0,0,0, KEY_RIGHTCTRL, 0 + + db 0,0,0,0,0,0,0, 0x96 + db 0, 0x9d, 0, 0x9e, 0x9f, KEY_WAKEUP, KEY_LEFTCTRL, KEY_RIGHTMETA + db KEY_SCROLLLOCK, KEY_PAUSE, 0,0,0,0,0,0 diff --git a/asm/ec_key_numpad1.mac b/asm/ec_key_numpad1.mac index f86f914..7ed8d72 100644 --- a/asm/ec_key_numpad1.mac +++ b/asm/ec_key_numpad1.mac @@ -2,6 +2,8 @@ ; The virtual numberpad. ; +%include "ec_keysym.mac" + times 8 db 0 db KEY_KP7, KEY_KP8, KEY_KP9, KEY_KPSLASH times 11 db 0 diff --git a/asm/ec_key_numpad2.mac b/asm/ec_key_numpad2.mac index 2d51114..fbf4947 100644 --- a/asm/ec_key_numpad2.mac +++ b/asm/ec_key_numpad2.mac @@ -2,6 +2,8 @@ ; The virtual numberpad. ; +%include "ec_keysym.mac" + times 8 db 0 db KEY_KP7, KEY_KP8, KEY_KP9, KEY_KPSLASH times 11 db 0