Nanite/src/kernel/dri/keyboard.h

386 lines
16 KiB
C

/*----------------*\
|Nanite OS |
|Copyright (C) 2026|
|Xircon |
\*----------------*/
#pragma once
#include <stdint.h>
#include <stdbool.h>
void Keyboard_Handler();
void Keyboard_Init();
void Keyboard_Reset_System();
void Keyboard_Enable();
void Keyboard_Disable();
void Keyboard_Set_Lock_LEDs(bool num, bool caps, bool scroll);
void Keyboard_Encoder_Send_Command(uint8_t command);
void Keyboard_Controller_Send_Command(uint8_t command);
uint8_t Keyboard_Controller_Status();
uint8_t Keyboard_Read_Encoder_Buffer();
bool Keyboard_Self_Test();
char kscan();
enum KEYBOARD_ENCODER_IO {
KEYBOARD_ENC_INPUT_BUF = 0x60,
KEYBOARD_ENC_CMD_REG = 0x60
};
enum KEYBOARD_CTRL_IO {
KEYBOARD_CTRL_STATS_REG = 0x64,
KEYBOARD_CTRL_CMD_REG = 0x64
};
enum KEYBOARD_CTRL_STATS_MASK {
KEYBOARD_CTRL_STATS_MASK_OUT_BUF = 1, //00000001
KEYBOARD_CTRL_STATS_MASK_IN_BUF = 2, //00000010
KEYBOARD_CTRL_STATS_MASK_SYSTEM = 4, //00000100
KEYBOARD_CTRL_STATS_MASK_CMD_DATA = 8, //00001000
KEYBOARD_CTRL_STATS_MASK_LOCKED = 0x10, //00010000
KEYBOARD_CTRL_STATS_MASK_AUX_BUF = 0x20, //00100000
KEYBOARD_CTRL_STATS_MASK_TIMEOUT = 0x40, //01000000
KEYBOARD_CTRL_STATS_MASK_PARITY = 0x80 //10000000
};
enum KEYBOARD_CTRL_CMD {
KEYBOARD_CTRL_CMD_DISABLE = 0xAD,
KEYBOARD_CTRL_CMD_ENABLE = 0xAE,
KEYBOARD_CTRL_CMD_SELF_TEST = 0xAA,
KEYBOARD_CTRL_CMD_WRITE_OUT_PORT = 0xD1
};
enum KEYBOARD_ENC_CMD {
KEYBOARD_ENC_CMD_SET_LED = 0xED
};
enum KEYBOARD_LAYOUT_QWERTY {
KEYBOARD_LAYOUT_QWERTY_ESCAPE = 0x01,
KEYBOARD_LAYOUT_QWERTY_F1 = 0x3B,
KEYBOARD_LAYOUT_QWERTY_F2 = 0x3C,
KEYBOARD_LAYOUT_QWERTY_F3 = 0x3D,
KEYBOARD_LAYOUT_QWERTY_F4 = 0x3E,
KEYBOARD_LAYOUT_QWERTY_F5 = 0x3F,
KEYBOARD_LAYOUT_QWERTY_F6 = 0x40,
KEYBOARD_LAYOUT_QWERTY_F7 = 0x41,
KEYBOARD_LAYOUT_QWERTY_F8 = 0x42,
KEYBOARD_LAYOUT_QWERTY_F9 = 0x43,
KEYBOARD_LAYOUT_QWERTY_F10 = 0x44,
KEYBOARD_LAYOUT_QWERTY_F11 = 0x57,
KEYBOARD_LAYOUT_QWERTY_F12 = 0x58,
KEYBOARD_LAYOUT_QWERTY_SNAPSHOT = 0x54,
KEYBOARD_LAYOUT_QWERTY_SCROLL = 0x46,
KEYBOARD_LAYOUT_QWERTY_PAUSE = 0xE1D1,
KEYBOARD_LAYOUT_QWERTY_OEM_3 = 0x29,
KEYBOARD_LAYOUT_QWERTY_1 = 0x02,
KEYBOARD_LAYOUT_QWERTY_2 = 0x03,
KEYBOARD_LAYOUT_QWERTY_3 = 0x04,
KEYBOARD_LAYOUT_QWERTY_4 = 0x05,
KEYBOARD_LAYOUT_QWERTY_5 = 0x06,
KEYBOARD_LAYOUT_QWERTY_6 = 0x07,
KEYBOARD_LAYOUT_QWERTY_7 = 0x08,
KEYBOARD_LAYOUT_QWERTY_8 = 0x09,
KEYBOARD_LAYOUT_QWERTY_9 = 0x0A,
KEYBOARD_LAYOUT_QWERTY_0 = 0x0B,
KEYBOARD_LAYOUT_QWERTY_OEM_MI = 0x0C,
KEYBOARD_LAYOUT_QWERTY_OEM_PL = 0x0D,
KEYBOARD_LAYOUT_QWERTY_BACK = 0x0E,
KEYBOARD_LAYOUT_QWERTY_TAB = 0x0F,
KEYBOARD_LAYOUT_QWERTY_Q = 0x10,
KEYBOARD_LAYOUT_QWERTY_W = 0x11,
KEYBOARD_LAYOUT_QWERTY_E = 0x12,
KEYBOARD_LAYOUT_QWERTY_R = 0x13,
KEYBOARD_LAYOUT_QWERTY_T = 0x14,
KEYBOARD_LAYOUT_QWERTY_Y = 0x15,
KEYBOARD_LAYOUT_QWERTY_U = 0x16,
KEYBOARD_LAYOUT_QWERTY_I = 0x17,
KEYBOARD_LAYOUT_QWERTY_O = 0x18,
KEYBOARD_LAYOUT_QWERTY_P = 0x19,
KEYBOARD_LAYOUT_QWERTY_OEM_4 = 0x1A,
KEYBOARD_LAYOUT_QWERTY_OEM_6 = 0x1B,
KEYBOARD_LAYOUT_QWERTY_OEM_5 = 0x2B,
KEYBOARD_LAYOUT_QWERTY_CAPITAL = 0x3A,
KEYBOARD_LAYOUT_QWERTY_A = 0x1E,
KEYBOARD_LAYOUT_QWERTY_S = 0x1F,
KEYBOARD_LAYOUT_QWERTY_D = 0x20,
KEYBOARD_LAYOUT_QWERTY_F = 0x21,
KEYBOARD_LAYOUT_QWERTY_G = 0x22,
KEYBOARD_LAYOUT_QWERTY_H = 0x23,
KEYBOARD_LAYOUT_QWERTY_J = 0x24,
KEYBOARD_LAYOUT_QWERTY_K = 0x25,
KEYBOARD_LAYOUT_QWERTY_L = 0x26,
KEYBOARD_LAYOUT_QWERTY_OEM_1 = 0x27,
KEYBOARD_LAYOUT_QWERTY_OEM_7 = 0x28,
KEYBOARD_LAYOUT_QWERTY_RETURN = 0x1C,
KEYBOARD_LAYOUT_QWERTY_LSHIFT = 0x2A,
KEYBOARD_LAYOUT_QWERTY_Z = 0x2C,
KEYBOARD_LAYOUT_QWERTY_X = 0x2D,
KEYBOARD_LAYOUT_QWERTY_C = 0x2E,
KEYBOARD_LAYOUT_QWERTY_V = 0x2F,
KEYBOARD_LAYOUT_QWERTY_B = 0x30,
KEYBOARD_LAYOUT_QWERTY_N = 0x31,
KEYBOARD_LAYOUT_QWERTY_M = 0x32,
KEYBOARD_LAYOUT_QWERTY_OEM_CC = 0x33,
KEYBOARD_LAYOUT_QWERTY_OEM_PE = 0x34,
KEYBOARD_LAYOUT_QWERTY_OEM_2 = 0x35,
KEYBOARD_LAYOUT_QWERTY_RSHIFT = 0x36,
KEYBOARD_LAYOUT_QWERTY_LCONTROL = 0x1D,
KEYBOARD_LAYOUT_QWERTY_LSUPER = 0xE05B,
KEYBOARD_LAYOUT_QWERTY_LMENU = 0x38,
KEYBOARD_LAYOUT_QWERTY_SPACE = 0x39,
KEYBOARD_LAYOUT_QWERTY_RMENU = 0xE038,
KEYBOARD_LAYOUT_QWERTY_RSUPER = 0xE05C,
KEYBOARD_LAYOUT_QWERTY_APPS = 0xE05D,
KEYBOARD_LAYOUT_QWERTY_RCONTROL = 0xE01D,
KEYBOARD_LAYOUT_QWERTY_INSERT = 0xE052,
KEYBOARD_LAYOUT_QWERTY_HOME = 0xE047,
KEYBOARD_LAYOUT_QWERTY_PRIOR = 0xE049,
KEYBOARD_LAYOUT_QWERTY_DELETE = 0xE053,
KEYBOARD_LAYOUT_QWERTY_END = 0xE04F,
KEYBOARD_LAYOUT_QWERTY_NEXT = 0xE051,
KEYBOARD_LAYOUT_QWERTY_UP = 0xE048,
KEYBOARD_LAYOUT_QWERTY_LEFT = 0xE04B,
KEYBOARD_LAYOUT_QWERTY_RIGHT = 0xE04D,
KEYBOARD_LAYOUT_QWERTY_DOWN = 0xE050,
KEYBOARD_LAYOUT_QWERTY_NUMLOCK = 0x45,
KEYBOARD_LAYOUT_QWERTY_DIVIDE = 0xE035,
KEYBOARD_LAYOUT_QWERTY_MULTIPLY = 0x37,
KEYBOARD_LAYOUT_QWERTY_SUBTRACT = 0x4A,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_1 = 0x47,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_2 = 0x48,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_3 = 0x49,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_4 = 0x4B,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_5 = 0x4C,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_6 = 0x4D,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_7 = 0x4F,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_8 = 0x50,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_9 = 0x51,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_0 = 0x52,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_PERIOD = 0x53,
KEYBOARD_LAYOUT_QWERTY_ADD = 0x4E,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_RETURN = 0xE01,
};
#ifdef __LAYOUT_QWERTY
enum KEYBOARD_LAYOUT {
KEYBOARD_LAYOUT_ESCAPE = KEYBOARD_LAYOUT_QWERTY_ESCAPE,
KEYBOARD_LAYOUT_F1 = KEYBOARD_LAYOUT_QWERTY_F1,
KEYBOARD_LAYOUT_F2 = KEYBOARD_LAYOUT_QWERTY_F2,
KEYBOARD_LAYOUT_F3 = KEYBOARD_LAYOUT_QWERTY_F3,
KEYBOARD_LAYOUT_F4 = KEYBOARD_LAYOUT_QWERTY_F4,
KEYBOARD_LAYOUT_F5 = KEYBOARD_LAYOUT_QWERTY_F5,
KEYBOARD_LAYOUT_F6 = KEYBOARD_LAYOUT_QWERTY_F6,
KEYBOARD_LAYOUT_F7 = KEYBOARD_LAYOUT_QWERTY_F7,
KEYBOARD_LAYOUT_F8 = KEYBOARD_LAYOUT_QWERTY_F8,
KEYBOARD_LAYOUT_F9 = KEYBOARD_LAYOUT_QWERTY_F9,
KEYBOARD_LAYOUT_F10 = KEYBOARD_LAYOUT_QWERTY_F10,
KEYBOARD_LAYOUT_F11 = KEYBOARD_LAYOUT_QWERTY_F11,
KEYBOARD_LAYOUT_F12 = KEYBOARD_LAYOUT_QWERTY_F12,
KEYBOARD_LAYOUT_SNAPSHOT = KEYBOARD_LAYOUT_QWERTY_SNAPSHOT,
KEYBOARD_LAYOUT_SCROLL = KEYBOARD_LAYOUT_QWERTY_SCROLL,
KEYBOARD_LAYOUT_PAUSE = KEYBOARD_LAYOUT_QWERTY_PAUSE,
KEYBOARD_LAYOUT_OEM_3 = KEYBOARD_LAYOUT_QWERTY_OEM_3,
KEYBOARD_LAYOUT_1 = KEYBOARD_LAYOUT_QWERTY_1,
KEYBOARD_LAYOUT_2 = KEYBOARD_LAYOUT_QWERTY_2,
KEYBOARD_LAYOUT_3 = KEYBOARD_LAYOUT_QWERTY_3,
KEYBOARD_LAYOUT_4 = KEYBOARD_LAYOUT_QWERTY_4,
KEYBOARD_LAYOUT_5 = KEYBOARD_LAYOUT_QWERTY_5,
KEYBOARD_LAYOUT_6 = KEYBOARD_LAYOUT_QWERTY_6,
KEYBOARD_LAYOUT_7 = KEYBOARD_LAYOUT_QWERTY_7,
KEYBOARD_LAYOUT_8 = KEYBOARD_LAYOUT_QWERTY_8,
KEYBOARD_LAYOUT_9 = KEYBOARD_LAYOUT_QWERTY_9,
KEYBOARD_LAYOUT_0 = KEYBOARD_LAYOUT_QWERTY_0,
KEYBOARD_LAYOUT_OEM_MI = KEYBOARD_LAYOUT_QWERTY_OEM_MI,
KEYBOARD_LAYOUT_OEM_PL = KEYBOARD_LAYOUT_QWERTY_OEM_PL,
KEYBOARD_LAYOUT_BACK = KEYBOARD_LAYOUT_QWERTY_BACK,
KEYBOARD_LAYOUT_TAB = KEYBOARD_LAYOUT_QWERTY_TAB,
KEYBOARD_LAYOUT_Q = KEYBOARD_LAYOUT_QWERTY_Q,
KEYBOARD_LAYOUT_W = KEYBOARD_LAYOUT_QWERTY_W,
KEYBOARD_LAYOUT_E = KEYBOARD_LAYOUT_QWERTY_E,
KEYBOARD_LAYOUT_R = KEYBOARD_LAYOUT_QWERTY_R,
KEYBOARD_LAYOUT_T = KEYBOARD_LAYOUT_QWERTY_T,
KEYBOARD_LAYOUT_Y = KEYBOARD_LAYOUT_QWERTY_Y,
KEYBOARD_LAYOUT_U = KEYBOARD_LAYOUT_QWERTY_U,
KEYBOARD_LAYOUT_I = KEYBOARD_LAYOUT_QWERTY_I,
KEYBOARD_LAYOUT_O = KEYBOARD_LAYOUT_QWERTY_O,
KEYBOARD_LAYOUT_P = KEYBOARD_LAYOUT_QWERTY_P,
KEYBOARD_LAYOUT_OEM_4 = KEYBOARD_LAYOUT_QWERTY_OEM_4,
KEYBOARD_LAYOUT_OEM_6 = KEYBOARD_LAYOUT_QWERTY_OEM_6,
KEYBOARD_LAYOUT_OEM_5 = KEYBOARD_LAYOUT_QWERTY_OEM_5,
KEYBOARD_LAYOUT_CAPITAL = KEYBOARD_LAYOUT_QWERTY_CAPITAL,
KEYBOARD_LAYOUT_A = KEYBOARD_LAYOUT_QWERTY_A,
KEYBOARD_LAYOUT_S = KEYBOARD_LAYOUT_QWERTY_S,
KEYBOARD_LAYOUT_D = KEYBOARD_LAYOUT_QWERTY_D,
KEYBOARD_LAYOUT_F = KEYBOARD_LAYOUT_QWERTY_F,
KEYBOARD_LAYOUT_G = KEYBOARD_LAYOUT_QWERTY_G,
KEYBOARD_LAYOUT_H = KEYBOARD_LAYOUT_QWERTY_H,
KEYBOARD_LAYOUT_J = KEYBOARD_LAYOUT_QWERTY_J,
KEYBOARD_LAYOUT_K = KEYBOARD_LAYOUT_QWERTY_K,
KEYBOARD_LAYOUT_L = KEYBOARD_LAYOUT_QWERTY_L,
KEYBOARD_LAYOUT_OEM_1 = KEYBOARD_LAYOUT_QWERTY_OEM_1,
KEYBOARD_LAYOUT_OEM_7 = KEYBOARD_LAYOUT_QWERTY_OEM_7,
KEYBOARD_LAYOUT_RETURN = KEYBOARD_LAYOUT_QWERTY_RETURN,
KEYBOARD_LAYOUT_LSHIFT = KEYBOARD_LAYOUT_QWERTY_LSHIFT,
KEYBOARD_LAYOUT_Z = KEYBOARD_LAYOUT_QWERTY_Z,
KEYBOARD_LAYOUT_X = KEYBOARD_LAYOUT_QWERTY_X,
KEYBOARD_LAYOUT_C = KEYBOARD_LAYOUT_QWERTY_C,
KEYBOARD_LAYOUT_V = KEYBOARD_LAYOUT_QWERTY_V,
KEYBOARD_LAYOUT_B = KEYBOARD_LAYOUT_QWERTY_B,
KEYBOARD_LAYOUT_N = KEYBOARD_LAYOUT_QWERTY_N,
KEYBOARD_LAYOUT_M = KEYBOARD_LAYOUT_QWERTY_M,
KEYBOARD_LAYOUT_OEM_CC = KEYBOARD_LAYOUT_QWERTY_OEM_CC,
KEYBOARD_LAYOUT_OEM_PE = KEYBOARD_LAYOUT_QWERTY_OEM_PE,
KEYBOARD_LAYOUT_OEM_2 = KEYBOARD_LAYOUT_QWERTY_OEM_2,
KEYBOARD_LAYOUT_RSHIFT = KEYBOARD_LAYOUT_QWERTY_RSHIFT,
KEYBOARD_LAYOUT_LCONTROL = KEYBOARD_LAYOUT_QWERTY_LCONTROL,
KEYBOARD_LAYOUT_LSUPER = KEYBOARD_LAYOUT_QWERTY_LSUPER,
KEYBOARD_LAYOUT_LMENU = KEYBOARD_LAYOUT_QWERTY_LMENU,
KEYBOARD_LAYOUT_SPACE = KEYBOARD_LAYOUT_QWERTY_SPACE,
KEYBOARD_LAYOUT_RMENU = KEYBOARD_LAYOUT_QWERTY_RMENU,
KEYBOARD_LAYOUT_RSUPER = KEYBOARD_LAYOUT_QWERTY_RSUPER,
KEYBOARD_LAYOUT_APPS = KEYBOARD_LAYOUT_QWERTY_APPS,
KEYBOARD_LAYOUT_RCONTROL = KEYBOARD_LAYOUT_QWERTY_RCONTROL,
KEYBOARD_LAYOUT_INSERT = KEYBOARD_LAYOUT_QWERTY_INSERT,
KEYBOARD_LAYOUT_HOME = KEYBOARD_LAYOUT_QWERTY_HOME,
KEYBOARD_LAYOUT_PRIOR = KEYBOARD_LAYOUT_QWERTY_PRIOR,
KEYBOARD_LAYOUT_DELETE = KEYBOARD_LAYOUT_QWERTY_DELETE,
KEYBOARD_LAYOUT_END = KEYBOARD_LAYOUT_QWERTY_END,
KEYBOARD_LAYOUT_NEXT = KEYBOARD_LAYOUT_QWERTY_NEXT,
KEYBOARD_LAYOUT_UP = KEYBOARD_LAYOUT_QWERTY_UP,
KEYBOARD_LAYOUT_LEFT = KEYBOARD_LAYOUT_QWERTY_LEFT,
KEYBOARD_LAYOUT_RIGHT = KEYBOARD_LAYOUT_QWERTY_RIGHT,
KEYBOARD_LAYOUT_DOWN = KEYBOARD_LAYOUT_QWERTY_DOWN,
KEYBOARD_LAYOUT_NUMLOCK = KEYBOARD_LAYOUT_QWERTY_NUMLOCK,
KEYBOARD_LAYOUT_DIVIDE = KEYBOARD_LAYOUT_QWERTY_DIVIDE,
KEYBOARD_LAYOUT_MULTIPLY = KEYBOARD_LAYOUT_QWERTY_MULTIPLY,
KEYBOARD_LAYOUT_SUBTRACT = KEYBOARD_LAYOUT_QWERTY_SUBTRACT,
KEYBOARD_LAYOUT_NUMPAD_1 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_1,
KEYBOARD_LAYOUT_NUMPAD_2 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_2,
KEYBOARD_LAYOUT_NUMPAD_3 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_3,
KEYBOARD_LAYOUT_NUMPAD_4 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_4,
KEYBOARD_LAYOUT_NUMPAD_5 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_5,
KEYBOARD_LAYOUT_NUMPAD_6 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_6,
KEYBOARD_LAYOUT_NUMPAD_7 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_7,
KEYBOARD_LAYOUT_NUMPAD_8 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_8,
KEYBOARD_LAYOUT_NUMPAD_9 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_9,
KEYBOARD_LAYOUT_NUMPAD_0 = KEYBOARD_LAYOUT_QWERTY_NUMPAD_0,
KEYBOARD_LAYOUT_NUMPAD_PERIOD = KEYBOARD_LAYOUT_QWERTY_NUMPAD_PERIOD,
KEYBOARD_LAYOUT_ADD = KEYBOARD_LAYOUT_QWERTY_ADD,
KEYBOARD_LAYOUT_NUMPAD_RETURN = KEYBOARD_LAYOUT_QWERTY_NUMPAD_RETURN,
};
#endif
#ifdef __LAYOUT_DVORAK // I Need to implement this lol
enum KEYBOARD_LAYOUT_DVORAK {
KEYBOARD_LAYOUT_QWERTY_ESCAPE = 0x01,
KEYBOARD_LAYOUT_QWERTY_F1 = 0x3B,
KEYBOARD_LAYOUT_QWERTY_F2 = 0x3C,
KEYBOARD_LAYOUT_QWERTY_F3 = 0x3D,
KEYBOARD_LAYOUT_QWERTY_F4 = 0x3E,
KEYBOARD_LAYOUT_QWERTY_F5 = 0x3F,
KEYBOARD_LAYOUT_QWERTY_F6 = 0x40,
KEYBOARD_LAYOUT_QWERTY_F7 = 0x41,
KEYBOARD_LAYOUT_QWERTY_F8 = 0x42,
KEYBOARD_LAYOUT_QWERTY_F9 = 0x43,
KEYBOARD_LAYOUT_QWERTY_F10 = 0x44,
KEYBOARD_LAYOUT_QWERTY_F11 = 0x57,
KEYBOARD_LAYOUT_QWERTY_F12 = 0x58,
KEYBOARD_LAYOUT_QWERTY_SNAPSHOT = 0x54,
KEYBOARD_LAYOUT_QWERTY_SCROLL = 0x46,
KEYBOARD_LAYOUT_QWERTY_PAUSE = 0xE1D1,
KEYBOARD_LAYOUT_QWERTY_OEM_3 = 0x29,
KEYBOARD_LAYOUT_QWERTY_1 = 0x02,
KEYBOARD_LAYOUT_QWERTY_2 = 0x03,
KEYBOARD_LAYOUT_QWERTY_3 = 0x04,
KEYBOARD_LAYOUT_QWERTY_4 = 0x05,
KEYBOARD_LAYOUT_QWERTY_5 = 0x06,
KEYBOARD_LAYOUT_QWERTY_6 = 0x07,
KEYBOARD_LAYOUT_QWERTY_7 = 0x08,
KEYBOARD_LAYOUT_QWERTY_8 = 0x09,
KEYBOARD_LAYOUT_QWERTY_9 = 0x0A,
KEYBOARD_LAYOUT_QWERTY_0 = 0x0B,
KEYBOARD_LAYOUT_QWERTY_OEM_MI = 0x0C,
KEYBOARD_LAYOUT_QWERTY_OEM_PL = 0x0D,
KEYBOARD_LAYOUT_QWERTY_BACK = 0x0E,
KEYBOARD_LAYOUT_QWERTY_TAB = 0x0F,
KEYBOARD_LAYOUT_QWERTY_Q = 0x10,
KEYBOARD_LAYOUT_QWERTY_W = 0x11,
KEYBOARD_LAYOUT_QWERTY_E = 0x12,
KEYBOARD_LAYOUT_QWERTY_R = 0x13,
KEYBOARD_LAYOUT_QWERTY_T = 0x14,
KEYBOARD_LAYOUT_QWERTY_Y = 0x15,
KEYBOARD_LAYOUT_QWERTY_U = 0x16,
KEYBOARD_LAYOUT_QWERTY_I = 0x17,
KEYBOARD_LAYOUT_QWERTY_O = 0x18,
KEYBOARD_LAYOUT_QWERTY_P = 0x19,
KEYBOARD_LAYOUT_QWERTY_OEM_4 = 0x1A,
KEYBOARD_LAYOUT_QWERTY_OEM_6 = 0x1B,
KEYBOARD_LAYOUT_QWERTY_OEM_5 = 0x2B,
KEYBOARD_LAYOUT_QWERTY_CAPITAL = 0x3A,
KEYBOARD_LAYOUT_QWERTY_A = 0x1E,
KEYBOARD_LAYOUT_QWERTY_S = 0x1F,
KEYBOARD_LAYOUT_QWERTY_D = 0x20,
KEYBOARD_LAYOUT_QWERTY_F = 0x21,
KEYBOARD_LAYOUT_QWERTY_G = 0x22,
KEYBOARD_LAYOUT_QWERTY_H = 0x23,
KEYBOARD_LAYOUT_QWERTY_J = 0x24,
KEYBOARD_LAYOUT_QWERTY_K = 0x25,
KEYBOARD_LAYOUT_QWERTY_L = 0x26,
KEYBOARD_LAYOUT_QWERTY_OEM_1 = 0x27,
KEYBOARD_LAYOUT_QWERTY_OEM_7 = 0x28,
KEYBOARD_LAYOUT_QWERTY_RETURN = 0x1C,
KEYBOARD_LAYOUT_QWERTY_LSHIFT = 0x2A,
KEYBOARD_LAYOUT_QWERTY_Z = 0x2C,
KEYBOARD_LAYOUT_QWERTY_X = 0x2D,
KEYBOARD_LAYOUT_QWERTY_C = 0x2E,
KEYBOARD_LAYOUT_QWERTY_V = 0x2F,
KEYBOARD_LAYOUT_QWERTY_B = 0x30,
KEYBOARD_LAYOUT_QWERTY_N = 0x31,
KEYBOARD_LAYOUT_QWERTY_M = 0x32,
KEYBOARD_LAYOUT_QWERTY_OEM_CC = 0x33,
KEYBOARD_LAYOUT_QWERTY_OEM_PE = 0x34,
KEYBOARD_LAYOUT_QWERTY_OEM_2 = 0x35,
KEYBOARD_LAYOUT_QWERTY_RSHIFT = 0x36,
KEYBOARD_LAYOUT_QWERTY_LCONTROL = 0x1D,
KEYBOARD_LAYOUT_QWERTY_LSUPER = 0xE05B,
KEYBOARD_LAYOUT_QWERTY_LMENU = 0x38,
KEYBOARD_LAYOUT_QWERTY_SPACE = 0x39,
KEYBOARD_LAYOUT_QWERTY_RMENU = 0xE038,
KEYBOARD_LAYOUT_QWERTY_RSUPER = 0xE05C,
KEYBOARD_LAYOUT_QWERTY_APPS = 0xE05D,
KEYBOARD_LAYOUT_QWERTY_RCONTROL = 0xE01D,
KEYBOARD_LAYOUT_QWERTY_INSERT = 0xE052,
KEYBOARD_LAYOUT_QWERTY_HOME = 0xE047,
KEYBOARD_LAYOUT_QWERTY_PRIOR = 0xE049,
KEYBOARD_LAYOUT_QWERTY_DELETE = 0xE053,
KEYBOARD_LAYOUT_QWERTY_END = 0xE04F,
KEYBOARD_LAYOUT_QWERTY_NEXT = 0xE051,
KEYBOARD_LAYOUT_QWERTY_UP = 0xE048,
KEYBOARD_LAYOUT_QWERTY_LEFT = 0xE04B,
KEYBOARD_LAYOUT_QWERTY_RIGHT = 0xE04D,
KEYBOARD_LAYOUT_QWERTY_DOWN = 0xE050,
KEYBOARD_LAYOUT_QWERTY_NUMLOCK = 0x45,
KEYBOARD_LAYOUT_QWERTY_DIVIDE = 0xE035,
KEYBOARD_LAYOUT_QWERTY_MULTIPLY = 0x37,
KEYBOARD_LAYOUT_QWERTY_SUBTRACT = 0x4A,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_1 = 0x47,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_2 = 0x48,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_3 = 0x49,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_4 = 0x4B,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_5 = 0x4C,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_6 = 0x4D,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_7 = 0x4F,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_8 = 0x50,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_9 = 0x51,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_0 = 0x52,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_PERIOD = 0x53,
KEYBOARD_LAYOUT_QWERTY_ADD = 0x4E,
KEYBOARD_LAYOUT_QWERTY_NUMPAD_RETURN = 0xE01,
}
#endif