diff --git a/hid/src/ps2/keymap.h b/hid/src/ps2/keymap.h index eae605db..2e484cac 100644 --- a/hid/src/ps2/keymap.h +++ b/hid/src/ps2/keymap.h @@ -144,5 +144,6 @@ INLINE void keymapPs2(uint8_t code, Ps2KeyType *ps2_type, uint8_t *ps2_code) { case 103: *ps2_type = PS2_KEY_TYPE_REG; *ps2_code = 112; return; // KEYPAD_0 case 104: *ps2_type = PS2_KEY_TYPE_REG; *ps2_code = 113; return; // KEYPAD_DOT case 105: *ps2_type = PS2_KEY_TYPE_SPEC; *ps2_code = 94; return; // KEY_POWER + case 106: *ps2_type = PS2_KEY_TYPE_REG; *ps2_code = 97; return; // KEY_NON_US } } diff --git a/hid/src/usb/keymap.h b/hid/src/usb/keymap.h index 6c9d6073..35df2be4 100644 --- a/hid/src/usb/keymap.h +++ b/hid/src/usb/keymap.h @@ -134,6 +134,7 @@ INLINE KeyboardKeycode keymapUsb(uint8_t code) { case 103: return KEYPAD_0; case 104: return KEYPAD_DOT; case 105: return KEY_POWER; + case 106: return KEY_NON_US; default: return KEY_ERROR_UNDEFINED; } } diff --git a/keymap.csv b/keymap.csv index c38aa3b1..8f30f851 100644 --- a/keymap.csv +++ b/keymap.csv @@ -104,3 +104,4 @@ Numpad9,102,KEYPAD_9,0x61,reg:0x7d,0x49,XK_KP_9 Numpad0,103,KEYPAD_0,0x62,reg:0x70,0x52,XK_KP_0 NumpadDecimal,104,KEYPAD_DOT,0x63,reg:0x71,0x53,XK_KP_Decimal Power,105,KEY_POWER,0x66,spec:0x5e,0xe05e,XK_XF86_Sleep +IntlBackslash,106,KEY_NON_US,0x64,reg:0x61,0x56,"^XK_greater,XK_less" diff --git a/kvmd/keyboard/mappings.py b/kvmd/keyboard/mappings.py index 2d6e57c5..0c4e805d 100644 --- a/kvmd/keyboard/mappings.py +++ b/kvmd/keyboard/mappings.py @@ -149,6 +149,7 @@ KEYMAP: Dict[str, Key] = { "Numpad0": Key(serial=SerialKey(code=103), otg=OtgKey(code=98, is_modifier=False)), "NumpadDecimal": Key(serial=SerialKey(code=104), otg=OtgKey(code=99, is_modifier=False)), "Power": Key(serial=SerialKey(code=105), otg=OtgKey(code=102, is_modifier=False)), + "IntlBackslash": Key(serial=SerialKey(code=106), otg=OtgKey(code=100, is_modifier=False)), } @@ -293,6 +294,8 @@ X11_TO_AT1 = { 65456: At1Key(code=82, shift=False), # XK_KP_0 65454: At1Key(code=83, shift=False), # XK_KP_Decimal 65301: At1Key(code=84, shift=False), # XK_Sys_Req + 60: At1Key(code=86, shift=False), # XK_less + 62: At1Key(code=86, shift=True), # XK_greater 65480: At1Key(code=87, shift=False), # XK_F11 65481: At1Key(code=88, shift=False), # XK_F12 65421: At1Key(code=57372, shift=False), # XK_KP_Enter @@ -402,6 +405,7 @@ AT1_TO_WEB = { 82: "Numpad0", 83: "NumpadDecimal", 84: "PrintScreen", + 86: "IntlBackslash", 87: "F11", 88: "F12", 57372: "NumpadEnter", diff --git a/web/kvm/index.html b/web/kvm/index.html index 7784963f..39e1cfb8 100644 --- a/web/kvm/index.html +++ b/web/kvm/index.html @@ -681,10 +681,14 @@