diff --git a/src/utils.js b/src/utils.js index 79e3e5eba44df6686803eeab2126910165060379..101378935095b48503630d999e6f5df8d9d8a3a4 100644 --- a/src/utils.js +++ b/src/utils.js @@ -223,21 +223,21 @@ common_scanmap[19] = 101;// Break, XSpice only were grey on the original AT keyboard. These are prefixed, as they were on the PS/2 controller, with an 0xE0 byte to indicate that they are extended */ -common_scanmap[111] = 0xE035; // KP_Divide -common_scanmap[106] = 0xE037; // KP_Multiply -common_scanmap[36] = 0xE047; // Home -common_scanmap[38] = 0xE048; // Up -common_scanmap[33] = 0xE049; // PgUp -common_scanmap[37] = 0xE04B; // Left -common_scanmap[39] = 0xE04D; // Right -common_scanmap[35] = 0xE04F; // End -common_scanmap[40] = 0xE050; // Down -common_scanmap[34] = 0xE051; // PgDown -common_scanmap[45] = 0xE052; // Insert -common_scanmap[46] = 0xE053; // Delete -common_scanmap[91] = 0xE05B; //KeyNames.KEY_LMeta -common_scanmap[92] = 0xE05C; //KeyNames.KEY_RMeta -common_scanmap[93] = 0xE05D; //KeyNames.KEY_Menu +common_scanmap[111] = 0xE0 | (KeyNames.KEY_Slash << 8);// KP_Divide +common_scanmap[106] = 0xE0 | (KeyNames.KEY_KP_Multiply << 8); // KP_Multiply +common_scanmap[36] = 0xE0 | (KeyNames.KEY_KP_7 << 8); // Home +common_scanmap[38] = 0xE0 | (KeyNames.KEY_KP_8 << 8); // Up +common_scanmap[33] = 0xE0 | (KeyNames.KEY_KP_9 << 8); // PgUp +common_scanmap[37] = 0xE0 | (KeyNames.KEY_KP_4 << 8); // Left +common_scanmap[39] = 0xE0 | (KeyNames.KEY_KP_6 << 8); // Right +common_scanmap[35] = 0xE0 | (KeyNames.KEY_KP_1 << 8); // End +common_scanmap[40] = 0xE0 | (KeyNames.KEY_KP_2 << 8); // Down +common_scanmap[34] = 0xE0 | (KeyNames.KEY_KP_3 << 8); // PgDown +common_scanmap[45] = 0xE0 | (KeyNames.KEY_KP_0 << 8); // Insert +common_scanmap[46] = 0xE0 | (KeyNames.KEY_KP_Decimal << 8); // Delete +common_scanmap[91] = 0xE0 | (0x5B << 8); //KeyNames.KEY_LMeta +common_scanmap[92] = 0xE0 | (0x5C << 8); //KeyNames.KEY_RMeta +common_scanmap[93] = 0xE0 | (0x5D << 8); //KeyNames.KEY_Menu /* Firefox/Mozilla codes */ var firefox_scanmap = []; @@ -273,11 +273,7 @@ function keycode_to_start_scan(code) return 0; } - if (scancode < 0x100) { - return scancode; - } else { - return 0xe0 | ((scancode - 0x100) << 8); - } + return scancode; } function keycode_to_end_scan(code) @@ -289,7 +285,7 @@ function keycode_to_end_scan(code) if (scancode < 0x100) { return scancode | 0x80; } else { - return 0x80e0 | ((scancode - 0x100) << 8); + return scancode | 0x8000; } }