diff --git a/Controllers/RazerController/RazerDevices.cpp b/Controllers/RazerController/RazerDevices.cpp index d843bbd6..7359338e 100644 --- a/Controllers/RazerController/RazerDevices.cpp +++ b/Controllers/RazerController/RazerDevices.cpp @@ -468,6 +468,43 @@ keyboard_keymap_overlay_values razer_blade_17_pro_2021_layout } }; +keyboard_keymap_overlay_values razer_blade_stealth_2016_layout +{ + KEYBOARD_SIZE::KEYBOARD_SIZE_SEVENTY_FIVE, + { + { /* ANSI Value set not used */ }, + { + /* Add more regional layout fixes here */ + } + }, + { + /*---------------------------------------------------------------------------------------------------------*\ + | Edit Keys | + | Zone, Row, Column, Value, Key, OpCode, | + \*---------------------------------------------------------------------------------------------------------*/ + { 0, 0, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Shift rows right by one */ + { 0, 1, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Shift rows right by one */ + { 0, 2, 1, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert and shift right @ 2,1 */ + { 0, 3, 1, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert and shift right @ 3,1 */ + { 0, 1, 14, 0, KEY_EN_BACKSPACE, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert 2nd Backspace @ 1,14 */ + { 0, 2, 14, 0, KEY_EN_ANSI_BACK_SLASH, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert 2nd Backslash @ 2,14 */ + { 0, 3, 14, 0, KEY_EN_ANSI_ENTER, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert 2nd Enter @ 3,14 */ + { 0, 0, 2, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Remove empty spot between Esc and F1 */ + { 0, 0, 14, 0, KEY_EN_INSERT, KEYBOARD_OPCODE_SWAP_ONLY }, /* Swap in Delete after F12 */ + { 0, 0, 15, 0, KEY_EN_DELETE, KEYBOARD_OPCODE_SWAP_ONLY }, /* Swap in Power after Delete */ + { 0, 4, 12, 0, KEY_EN_RIGHT_SHIFT, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert 2nd Right Shift */ + { 0, 5, 1, 0, KEY_EN_LEFT_FUNCTION, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert left Fn between Ctrl and Win */ + { 0, 5, 5, 0, KEY_EN_SPACE, KEYBOARD_OPCODE_SWAP_ONLY }, /* Insert 2nd Spacebar */ + { 0, 5, 6, 0, KEY_EN_SPACE, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert 3rd Spacebar */ + { 0, 5, 8, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Shift Keys Left */ + { 0, 5, 11, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Shift Keys Left */ + { 0, 5, 12, 0, KEY_EN_LEFT_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Left Arrow at the end of row 5 */ + { 0, 5, 13, 0, KEY_EN_UP_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Up Arrow at the end of row 5 */ + { 0, 5, 14, 0, KEY_EN_RIGHT_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Right Arrow at the end of row 5 */ + { 0, 5, 15, 0, KEY_EN_DOWN_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Down Arrow at the end of row 5 */ + } +}; + keyboard_keymap_overlay_values razer_deathstalker_v2_layout { KEYBOARD_SIZE::KEYBOARD_SIZE_FULL, @@ -659,102 +696,6 @@ keyboard_keymap_overlay_values razer_laptop_with_spacebar_layout /*-------------------------------------------------------------------------*\ | OLD_KEYMAPS | \*-------------------------------------------------------------------------*/ -#define BLADE_STEALTH_2016_KEYMAP_SIZE (sizeof(blade_stealth_2016_keymap) / sizeof(blade_stealth_2016_keymap[0])) - -static const razer_key blade_stealth_2016_keymap[] = -{ - /*-------------------------------------------------------------------------------------------------------------*\ - | Zone, Row, Column, Key Layout Type | - \*-------------------------------------------------------------------------------------------------------------*/ - { 0, 0, 1, KEY_EN_ESCAPE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 2, KEY_EN_F1, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 3, KEY_EN_F2, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 4, KEY_EN_F3, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 5, KEY_EN_F4, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 6, KEY_EN_F5, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 7, KEY_EN_F6, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 8, KEY_EN_F7, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 9, KEY_EN_F8, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 10, KEY_EN_F9, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 11, KEY_EN_F10, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 12, KEY_EN_F11, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 13, KEY_EN_F12, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 14, KEY_EN_INSERT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 15, KEY_EN_DELETE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 1, KEY_EN_BACK_TICK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 2, KEY_EN_1, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 3, KEY_EN_2, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 4, KEY_EN_3, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 5, KEY_EN_4, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 6, KEY_EN_5, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 7, KEY_EN_6, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 8, KEY_EN_7, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 9, KEY_EN_8, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 10, KEY_EN_9, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 11, KEY_EN_0, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 12, KEY_EN_MINUS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 13, KEY_EN_EQUALS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 14, KEY_EN_BACKSPACE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 15, KEY_EN_BACKSPACE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 0, KEY_EN_TAB, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 2, KEY_EN_Q, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 3, KEY_EN_W, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 4, KEY_EN_E, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 5, KEY_EN_R, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 6, KEY_EN_T, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 7, KEY_EN_Y, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 8, KEY_EN_U, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 9, KEY_EN_I, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 10, KEY_EN_O, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 11, KEY_EN_P, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 12, KEY_EN_LEFT_BRACKET, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 13, KEY_EN_RIGHT_BRACKET, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 14, KEY_EN_ANSI_BACK_SLASH, RAZER_LAYOUT_TYPE_ANSI }, - { 0, 2, 15, KEY_EN_ANSI_BACK_SLASH, RAZER_LAYOUT_TYPE_ANSI }, - { 0, 3, 0, KEY_EN_CAPS_LOCK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 2, KEY_EN_A, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 3, KEY_EN_S, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 4, KEY_EN_D, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 5, KEY_EN_F, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 6, KEY_EN_G, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 7, KEY_EN_H, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 8, KEY_EN_J, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 9, KEY_EN_K, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 10, KEY_EN_L, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 11, KEY_EN_SEMICOLON, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 12, KEY_EN_QUOTE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 14, KEY_EN_ANSI_ENTER, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 15, KEY_EN_ANSI_ENTER, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 0, KEY_EN_LEFT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 2, KEY_EN_Z, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 3, KEY_EN_X, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 4, KEY_EN_C, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 5, KEY_EN_V, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 6, KEY_EN_B, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 7, KEY_EN_N, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 8, KEY_EN_M, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 9, KEY_EN_COMMA, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 10, KEY_EN_PERIOD, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 11, KEY_EN_FORWARD_SLASH, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 12, KEY_EN_RIGHT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 13, KEY_EN_RIGHT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 14, KEY_EN_RIGHT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 0, KEY_EN_LEFT_CONTROL, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 1, KEY_EN_LEFT_FUNCTION, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 2, KEY_EN_LEFT_WINDOWS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 3, KEY_EN_LEFT_ALT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 5, KEY_EN_SPACE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 6, KEY_EN_SPACE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 8, KEY_EN_SPACE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 9, KEY_EN_RIGHT_ALT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 10, KEY_EN_RIGHT_FUNCTION, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 11, KEY_EN_RIGHT_CONTROL, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 12, KEY_EN_LEFT_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 13, KEY_EN_UP_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 14, KEY_EN_RIGHT_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 15, KEY_EN_DOWN_ARROW, RAZER_LAYOUT_TYPE_ALL }, -}; - #define CYNOSA_CHROMA_KEYMAP_SIZE (sizeof(cynosa_chroma_keymap) / sizeof(cynosa_chroma_keymap[0])) static const razer_key cynosa_chroma_keymap[] = @@ -4325,9 +4266,9 @@ static const razer_device blade_stealth_2016_device = NULL, NULL }, - blade_stealth_2016_keymap, - BLADE_STEALTH_2016_KEYMAP_SIZE, - NULL + NULL, + 0, + &razer_blade_stealth_2016_layout }; /*-------------------------------------------------------------*\