From 6560f229b1441afdc96e4fae6b5155f36dcdb3df Mon Sep 17 00:00:00 2001 From: Bananymous Date: Tue, 19 Aug 2025 02:26:05 +0300 Subject: [PATCH] Kernel: Fix PS/2 scancode set 3 numpad keys --- kernel/kernel/Input/PS2/Keymap.cpp | 150 ++++++++++++++--------------- 1 file changed, 75 insertions(+), 75 deletions(-) diff --git a/kernel/kernel/Input/PS2/Keymap.cpp b/kernel/kernel/Input/PS2/Keymap.cpp index f9fa53d4..6f9646be 100644 --- a/kernel/kernel/Input/PS2/Keymap.cpp +++ b/kernel/kernel/Input/PS2/Keymap.cpp @@ -256,84 +256,84 @@ namespace Kernel::Input void PS2Keymap::initialize_scancode_set3() { - m_scancode_to_keycode_normal[0x0E] = keycode_normal(0, 0); - m_scancode_to_keycode_normal[0x16] = keycode_normal(0, 1); - m_scancode_to_keycode_normal[0x1E] = keycode_normal(0, 2); - m_scancode_to_keycode_normal[0x26] = keycode_normal(0, 3); - m_scancode_to_keycode_normal[0x25] = keycode_normal(0, 4); - m_scancode_to_keycode_normal[0x2E] = keycode_normal(0, 5); - m_scancode_to_keycode_normal[0x36] = keycode_normal(0, 6); - m_scancode_to_keycode_normal[0x3D] = keycode_normal(0, 7); - m_scancode_to_keycode_normal[0x3E] = keycode_normal(0, 8); - m_scancode_to_keycode_normal[0x46] = keycode_normal(0, 9); - m_scancode_to_keycode_normal[0x45] = keycode_normal(0, 10); - m_scancode_to_keycode_normal[0x4E] = keycode_normal(0, 11); - m_scancode_to_keycode_normal[0x55] = keycode_normal(0, 12); - m_scancode_to_keycode_normal[0x66] = keycode_normal(0, 13); - m_scancode_to_keycode_normal[0x0D] = keycode_normal(1, 0); - m_scancode_to_keycode_normal[0x15] = keycode_normal(1, 1); - m_scancode_to_keycode_normal[0x1D] = keycode_normal(1, 2); - m_scancode_to_keycode_normal[0x24] = keycode_normal(1, 3); - m_scancode_to_keycode_normal[0x2D] = keycode_normal(1, 4); - m_scancode_to_keycode_normal[0x2C] = keycode_normal(1, 5); - m_scancode_to_keycode_normal[0x35] = keycode_normal(1, 6); - m_scancode_to_keycode_normal[0x3C] = keycode_normal(1, 7); - m_scancode_to_keycode_normal[0x43] = keycode_normal(1, 8); - m_scancode_to_keycode_normal[0x44] = keycode_normal(1, 9); - m_scancode_to_keycode_normal[0x4D] = keycode_normal(1, 10); - m_scancode_to_keycode_normal[0x54] = keycode_normal(1, 11); - m_scancode_to_keycode_normal[0x5B] = keycode_normal(1, 12); - m_scancode_to_keycode_normal[0x14] = keycode_normal(2, 0); - m_scancode_to_keycode_normal[0x1C] = keycode_normal(2, 1); - m_scancode_to_keycode_normal[0x1B] = keycode_normal(2, 2); - m_scancode_to_keycode_normal[0x23] = keycode_normal(2, 3); - m_scancode_to_keycode_normal[0x2B] = keycode_normal(2, 4); - m_scancode_to_keycode_normal[0x34] = keycode_normal(2, 5); - m_scancode_to_keycode_normal[0x33] = keycode_normal(2, 6); - m_scancode_to_keycode_normal[0x3B] = keycode_normal(2, 7); - m_scancode_to_keycode_normal[0x42] = keycode_normal(2, 8); - m_scancode_to_keycode_normal[0x4B] = keycode_normal(2, 9); - m_scancode_to_keycode_normal[0x4C] = keycode_normal(2, 10); - m_scancode_to_keycode_normal[0x52] = keycode_normal(2, 11); - m_scancode_to_keycode_normal[0x5C] = keycode_normal(2, 12); - m_scancode_to_keycode_normal[0x5A] = keycode_normal(2, 13); - m_scancode_to_keycode_normal[0x12] = keycode_normal(3, 0); - m_scancode_to_keycode_normal[0x13] = keycode_normal(3, 1); - m_scancode_to_keycode_normal[0x1A] = keycode_normal(3, 2); - m_scancode_to_keycode_normal[0x22] = keycode_normal(3, 3); - m_scancode_to_keycode_normal[0x21] = keycode_normal(3, 4); - m_scancode_to_keycode_normal[0x2A] = keycode_normal(3, 5); - m_scancode_to_keycode_normal[0x32] = keycode_normal(3, 6); - m_scancode_to_keycode_normal[0x31] = keycode_normal(3, 7); - m_scancode_to_keycode_normal[0x3A] = keycode_normal(3, 8); - m_scancode_to_keycode_normal[0x41] = keycode_normal(3, 9); - m_scancode_to_keycode_normal[0x49] = keycode_normal(3, 10); - m_scancode_to_keycode_normal[0x4A] = keycode_normal(3, 11); - m_scancode_to_keycode_normal[0x59] = keycode_normal(3, 12); - m_scancode_to_keycode_normal[0x11] = keycode_normal(4, 0); - m_scancode_to_keycode_normal[0x8B] = keycode_normal(4, 1); - m_scancode_to_keycode_normal[0x19] = keycode_normal(4, 2); - m_scancode_to_keycode_normal[0x29] = keycode_normal(4, 3); - m_scancode_to_keycode_normal[0x39] = keycode_normal(4, 4); - m_scancode_to_keycode_normal[0x58] = keycode_normal(4, 5); + m_scancode_to_keycode_normal[0x0E] = keycode_normal(0, 0); + m_scancode_to_keycode_normal[0x16] = keycode_normal(0, 1); + m_scancode_to_keycode_normal[0x1E] = keycode_normal(0, 2); + m_scancode_to_keycode_normal[0x26] = keycode_normal(0, 3); + m_scancode_to_keycode_normal[0x25] = keycode_normal(0, 4); + m_scancode_to_keycode_normal[0x2E] = keycode_normal(0, 5); + m_scancode_to_keycode_normal[0x36] = keycode_normal(0, 6); + m_scancode_to_keycode_normal[0x3D] = keycode_normal(0, 7); + m_scancode_to_keycode_normal[0x3E] = keycode_normal(0, 8); + m_scancode_to_keycode_normal[0x46] = keycode_normal(0, 9); + m_scancode_to_keycode_normal[0x45] = keycode_normal(0, 10); + m_scancode_to_keycode_normal[0x4E] = keycode_normal(0, 11); + m_scancode_to_keycode_normal[0x55] = keycode_normal(0, 12); + m_scancode_to_keycode_normal[0x66] = keycode_normal(0, 13); + m_scancode_to_keycode_normal[0x0D] = keycode_normal(1, 0); + m_scancode_to_keycode_normal[0x15] = keycode_normal(1, 1); + m_scancode_to_keycode_normal[0x1D] = keycode_normal(1, 2); + m_scancode_to_keycode_normal[0x24] = keycode_normal(1, 3); + m_scancode_to_keycode_normal[0x2D] = keycode_normal(1, 4); + m_scancode_to_keycode_normal[0x2C] = keycode_normal(1, 5); + m_scancode_to_keycode_normal[0x35] = keycode_normal(1, 6); + m_scancode_to_keycode_normal[0x3C] = keycode_normal(1, 7); + m_scancode_to_keycode_normal[0x43] = keycode_normal(1, 8); + m_scancode_to_keycode_normal[0x44] = keycode_normal(1, 9); + m_scancode_to_keycode_normal[0x4D] = keycode_normal(1, 10); + m_scancode_to_keycode_normal[0x54] = keycode_normal(1, 11); + m_scancode_to_keycode_normal[0x5B] = keycode_normal(1, 12); + m_scancode_to_keycode_normal[0x14] = keycode_normal(2, 0); + m_scancode_to_keycode_normal[0x1C] = keycode_normal(2, 1); + m_scancode_to_keycode_normal[0x1B] = keycode_normal(2, 2); + m_scancode_to_keycode_normal[0x23] = keycode_normal(2, 3); + m_scancode_to_keycode_normal[0x2B] = keycode_normal(2, 4); + m_scancode_to_keycode_normal[0x34] = keycode_normal(2, 5); + m_scancode_to_keycode_normal[0x33] = keycode_normal(2, 6); + m_scancode_to_keycode_normal[0x3B] = keycode_normal(2, 7); + m_scancode_to_keycode_normal[0x42] = keycode_normal(2, 8); + m_scancode_to_keycode_normal[0x4B] = keycode_normal(2, 9); + m_scancode_to_keycode_normal[0x4C] = keycode_normal(2, 10); + m_scancode_to_keycode_normal[0x52] = keycode_normal(2, 11); + m_scancode_to_keycode_normal[0x5C] = keycode_normal(2, 12); + m_scancode_to_keycode_normal[0x5A] = keycode_normal(2, 13); + m_scancode_to_keycode_normal[0x12] = keycode_normal(3, 0); + m_scancode_to_keycode_normal[0x13] = keycode_normal(3, 1); + m_scancode_to_keycode_normal[0x1A] = keycode_normal(3, 2); + m_scancode_to_keycode_normal[0x22] = keycode_normal(3, 3); + m_scancode_to_keycode_normal[0x21] = keycode_normal(3, 4); + m_scancode_to_keycode_normal[0x2A] = keycode_normal(3, 5); + m_scancode_to_keycode_normal[0x32] = keycode_normal(3, 6); + m_scancode_to_keycode_normal[0x31] = keycode_normal(3, 7); + m_scancode_to_keycode_normal[0x3A] = keycode_normal(3, 8); + m_scancode_to_keycode_normal[0x41] = keycode_normal(3, 9); + m_scancode_to_keycode_normal[0x49] = keycode_normal(3, 10); + m_scancode_to_keycode_normal[0x4A] = keycode_normal(3, 11); + m_scancode_to_keycode_normal[0x59] = keycode_normal(3, 12); + m_scancode_to_keycode_normal[0x11] = keycode_normal(4, 0); + m_scancode_to_keycode_normal[0x8B] = keycode_normal(4, 1); + m_scancode_to_keycode_normal[0x19] = keycode_normal(4, 2); + m_scancode_to_keycode_normal[0x29] = keycode_normal(4, 3); + m_scancode_to_keycode_normal[0x39] = keycode_normal(4, 4); + m_scancode_to_keycode_normal[0x58] = keycode_normal(4, 5); m_scancode_to_keycode_normal[0x76] = keycode_numpad(0, 0); - //m_scancode_to_keycode_normal[0x] = keycode_numpad(0, 1); + m_scancode_to_keycode_normal[0x4A] = keycode_numpad(0, 1); m_scancode_to_keycode_normal[0x7E] = keycode_numpad(0, 2); - //m_scancode_to_keycode_normal[0x] = keycode_numpad(0, 3); - m_scancode_to_keycode_normal[0x6C] = keycode_numpad(1, 1); - m_scancode_to_keycode_normal[0x75] = keycode_numpad(1, 2); - m_scancode_to_keycode_normal[0x7D] = keycode_numpad(1, 3); - m_scancode_to_keycode_normal[0x7C] = keycode_numpad(1, 4); - m_scancode_to_keycode_normal[0x6B] = keycode_numpad(2, 1); - m_scancode_to_keycode_normal[0x73] = keycode_numpad(2, 2); - m_scancode_to_keycode_normal[0x74] = keycode_numpad(2, 3); - m_scancode_to_keycode_normal[0x69] = keycode_numpad(3, 1); - m_scancode_to_keycode_normal[0x72] = keycode_numpad(3, 2); - m_scancode_to_keycode_normal[0x7A] = keycode_numpad(3, 3); - m_scancode_to_keycode_normal[0x79] = keycode_numpad(3, 4); - m_scancode_to_keycode_normal[0x70] = keycode_numpad(4, 1); - m_scancode_to_keycode_normal[0x71] = keycode_numpad(4, 2); + m_scancode_to_keycode_normal[0x4E] = keycode_numpad(0, 3); + m_scancode_to_keycode_normal[0x6C] = keycode_numpad(1, 0); + m_scancode_to_keycode_normal[0x75] = keycode_numpad(1, 1); + m_scancode_to_keycode_normal[0x7D] = keycode_numpad(1, 2); + m_scancode_to_keycode_normal[0x7C] = keycode_numpad(1, 3); + m_scancode_to_keycode_normal[0x6B] = keycode_numpad(2, 0); + m_scancode_to_keycode_normal[0x73] = keycode_numpad(2, 1); + m_scancode_to_keycode_normal[0x74] = keycode_numpad(2, 2); + m_scancode_to_keycode_normal[0x69] = keycode_numpad(3, 0); + m_scancode_to_keycode_normal[0x72] = keycode_numpad(3, 1); + m_scancode_to_keycode_normal[0x7A] = keycode_numpad(3, 2); + m_scancode_to_keycode_normal[0x79] = keycode_numpad(3, 3); + m_scancode_to_keycode_normal[0x70] = keycode_numpad(4, 0); + m_scancode_to_keycode_normal[0x71] = keycode_numpad(4, 1); m_scancode_to_keycode_normal[0x08] = keycode_function(0); m_scancode_to_keycode_normal[0x07] = keycode_function(1);