pub const KEY_NONE: u8 = 0x00;
pub const KEY_ERRORROLLOVER: u8 = 0x01;
pub const KEY_POSTFAIL: u8 = 0x02;
pub const KEY_ERRORUNDEFINED: u8 = 0x03;
pub const KEY_A: u8 = 0x04;
pub const KEY_B: u8 = 0x05;
pub const KEY_C: u8 = 0x06;
pub const KEY_D: u8 = 0x07;
pub const KEY_E: u8 = 0x08;
pub const KEY_F: u8 = 0x09;
pub const KEY_G: u8 = 0x0A;
pub const KEY_H: u8 = 0x0B;
pub const KEY_I: u8 = 0x0C;
pub const KEY_J: u8 = 0x0D;
pub const KEY_K: u8 = 0x0E;
pub const KEY_L: u8 = 0x0F;
pub const KEY_M: u8 = 0x10;
pub const KEY_N: u8 = 0x11;
pub const KEY_O: u8 = 0x12;
pub const KEY_P: u8 = 0x13;
pub const KEY_Q: u8 = 0x14;
pub const KEY_R: u8 = 0x15;
pub const KEY_S: u8 = 0x16;
pub const KEY_T: u8 = 0x17;
pub const KEY_U: u8 = 0x18;
pub const KEY_V: u8 = 0x19;
pub const KEY_W: u8 = 0x1A;
pub const KEY_X: u8 = 0x1B;
pub const KEY_Y: u8 = 0x1C;
pub const KEY_Z: u8 = 0x1D;
pub const KEY_1_EXCLAMATION_MARK: u8 = 0x1E;
pub const KEY_2_AT: u8 = 0x1F;
pub const KEY_3_NUMBER_SIGN: u8 = 0x20;
pub const KEY_4_DOLLAR: u8 = 0x21;
pub const KEY_5_PERCENT: u8 = 0x22;
pub const KEY_6_CARET: u8 = 0x23;
pub const KEY_7_AMPERSAND: u8 = 0x24;
pub const KEY_8_ASTERISK: u8 = 0x25;
pub const KEY_9_OPARENTHESIS: u8 = 0x26;
pub const KEY_0_CPARENTHESIS: u8 = 0x27;
pub const KEY_ENTER: u8 = 0x28;
pub const KEY_ESCAPE: u8 = 0x29;
pub const KEY_BACKSPACE: u8 = 0x2A;
pub const KEY_TAB: u8 = 0x2B;
pub const KEY_SPACEBAR: u8 = 0x2C;
pub const KEY_MINUS_UNDERSCORE: u8 = 0x2D;
pub const KEY_EQUAL_PLUS: u8 = 0x2E;
pub const KEY_OBRACKET_AND_OBRACE: u8 = 0x2F;
pub const KEY_CBRACKET_AND_CBRACE: u8 = 0x30;
pub const KEY_BACKSLASH_VERTICAL_BAR: u8 = 0x31;
pub const KEY_NONUS_NUMBER_SIGN_TILDE: u8 = 0x32;
pub const KEY_SEMICOLON_COLON: u8 = 0x33;
pub const KEY_SINGLE_AND_DOUBLE_QUOTE: u8 = 0x34;
pub const KEY_GRAVE_ACCENT_AND_TILDE: u8 = 0x35;
pub const KEY_COMMA_AND_LESS: u8 = 0x36;
pub const KEY_DOT_GREATER: u8 = 0x37;
pub const KEY_SLASH_QUESTION: u8 = 0x38;
pub const KEY_CAPS_LOCK: u8 = 0x39;
pub const KEY_F1: u8 = 0x3A;
pub const KEY_F2: u8 = 0x3B;
pub const KEY_F3: u8 = 0x3C;
pub const KEY_F4: u8 = 0x3D;
pub const KEY_F5: u8 = 0x3E;
pub const KEY_F6: u8 = 0x3F;
pub const KEY_F7: u8 = 0x40;
pub const KEY_F8: u8 = 0x41;
pub const KEY_F9: u8 = 0x42;
pub const KEY_F10: u8 = 0x43;
pub const KEY_F11: u8 = 0x44;
pub const KEY_F12: u8 = 0x45;
pub const KEY_PRINTSCREEN: u8 = 0x46;
pub const KEY_SCROLL_LOCK: u8 = 0x47;
pub const KEY_PAUSE: u8 = 0x48;
pub const KEY_INSERT: u8 = 0x49;
pub const KEY_HOME: u8 = 0x4A;
pub const KEY_PAGEUP: u8 = 0x4B;
pub const KEY_DELETE: u8 = 0x4C;
pub const KEY_END1: u8 = 0x4D;
pub const KEY_PAGEDOWN: u8 = 0x4E;
pub const KEY_RIGHTARROW: u8 = 0x4F;
pub const KEY_LEFTARROW: u8 = 0x50;
pub const KEY_DOWNARROW: u8 = 0x51;
pub const KEY_UPARROW: u8 = 0x52;
pub const KEY_KEYPAD_NUM_LOCK_AND_CLEAR: u8 = 0x53;
pub const KEY_KEYPAD_SLASH: u8 = 0x54;
pub const KEY_KEYPAD_ASTERIKS: u8 = 0x55;
pub const KEY_KEYPAD_MINUS: u8 = 0x56;
pub const KEY_KEYPAD_PLUS: u8 = 0x57;
pub const KEY_KEYPAD_ENTER: u8 = 0x58;
pub const KEY_KEYPAD_1_END: u8 = 0x59;
pub const KEY_KEYPAD_2_DOWN_ARROW: u8 = 0x5A;
pub const KEY_KEYPAD_3_PAGEDN: u8 = 0x5B;
pub const KEY_KEYPAD_4_LEFT_ARROW: u8 = 0x5C;
pub const KEY_KEYPAD_5: u8 = 0x5D;
pub const KEY_KEYPAD_6_RIGHT_ARROW: u8 = 0x5E;
pub const KEY_KEYPAD_7_HOME: u8 = 0x5F;
pub const KEY_KEYPAD_8_UP_ARROW: u8 = 0x60;
pub const KEY_KEYPAD_9_PAGEUP: u8 = 0x61;
pub const KEY_KEYPAD_0_INSERT: u8 = 0x62;
pub const KEY_KEYPAD_DECIMAL_SEPARATOR_DELETE: u8 = 0x63;
pub const KEY_NONUS_BACK_SLASH_VERTICAL_BAR: u8 = 0x64;
pub const KEY_APPLICATION: u8 = 0x65;
pub const KEY_POWER: u8 = 0x66;
pub const KEY_KEYPAD_EQUAL: u8 = 0x67;
pub const KEY_F13: u8 = 0x68;
pub const KEY_F14: u8 = 0x69;
pub const KEY_F15: u8 = 0x6A;
pub const KEY_F16: u8 = 0x6B;
pub const KEY_F17: u8 = 0x6C;
pub const KEY_F18: u8 = 0x6D;
pub const KEY_F19: u8 = 0x6E;
pub const KEY_F20: u8 = 0x6F;
pub const KEY_F21: u8 = 0x70;
pub const KEY_F22: u8 = 0x71;
pub const KEY_F23: u8 = 0x72;
pub const KEY_F24: u8 = 0x73;
pub const KEY_EXECUTE: u8 = 0x74;
pub const KEY_HELP: u8 = 0x75;
pub const KEY_MENU: u8 = 0x76;
pub const KEY_SELECT: u8 = 0x77;
pub const KEY_STOP: u8 = 0x78;
pub const KEY_AGAIN: u8 = 0x79;
pub const KEY_UNDO: u8 = 0x7A;
pub const KEY_CUT: u8 = 0x7B;
pub const KEY_COPY: u8 = 0x7C;
pub const KEY_PASTE: u8 = 0x7D;
pub const KEY_FIND: u8 = 0x7E;
pub const KEY_MUTE: u8 = 0x7F;
pub const KEY_VOLUME_UP: u8 = 0x80;
pub const KEY_VOLUME_DOWN: u8 = 0x81;
pub const KEY_LOCKING_CAPS_LOCK: u8 = 0x82;
pub const KEY_LOCKING_NUM_LOCK: u8 = 0x83;
pub const KEY_LOCKING_SCROLL_LOCK: u8 = 0x84;
pub const KEY_KEYPAD_COMMA: u8 = 0x85;
pub const KEY_KEYPAD_EQUAL_SIGN: u8 = 0x86;
pub const KEY_INTERNATIONAL1: u8 = 0x87;
pub const KEY_INTERNATIONAL2: u8 = 0x88;
pub const KEY_INTERNATIONAL3: u8 = 0x89;
pub const KEY_INTERNATIONAL4: u8 = 0x8A;
pub const KEY_INTERNATIONAL5: u8 = 0x8B;
pub const KEY_INTERNATIONAL6: u8 = 0x8C;
pub const KEY_INTERNATIONAL7: u8 = 0x8D;
pub const KEY_INTERNATIONAL8: u8 = 0x8E;
pub const KEY_INTERNATIONAL9: u8 = 0x8F;
pub const KEY_LANG1: u8 = 0x90;
pub const KEY_LANG2: u8 = 0x91;
pub const KEY_LANG3: u8 = 0x92;
pub const KEY_LANG4: u8 = 0x93;
pub const KEY_LANG5: u8 = 0x94;
pub const KEY_LANG6: u8 = 0x95;
pub const KEY_LANG7: u8 = 0x96;
pub const KEY_LANG8: u8 = 0x97;
pub const KEY_LANG9: u8 = 0x98;
pub const KEY_ALTERNATE_ERASE: u8 = 0x99;
pub const KEY_SYSREQ: u8 = 0x9A;
pub const KEY_CANCEL: u8 = 0x9B;
pub const KEY_CLEAR: u8 = 0x9C;
pub const KEY_PRIOR: u8 = 0x9D;
pub const KEY_RETURN: u8 = 0x9E;
pub const KEY_SEPARATOR: u8 = 0x9F;
pub const KEY_OUT: u8 = 0xA0;
pub const KEY_OPER: u8 = 0xA1;
pub const KEY_CLEAR_AGAIN: u8 = 0xA2;
pub const KEY_CRSEL: u8 = 0xA3;
pub const KEY_EXSEL: u8 = 0xA4;
pub const KEY_KEYPAD_00: u8 = 0xB0;
pub const KEY_KEYPAD_000: u8 = 0xB1;
pub const KEY_THOUSANDS_SEPARATOR: u8 = 0xB2;
pub const KEY_DECIMAL_SEPARATOR: u8 = 0xB3;
pub const KEY_CURRENCY_UNIT: u8 = 0xB4;
pub const KEY_CURRENCY_SUB_UNIT: u8 = 0xB5;
pub const KEY_KEYPAD_OPARENTHESIS: u8 = 0xB6;
pub const KEY_KEYPAD_CPARENTHESIS: u8 = 0xB7;
pub const KEY_KEYPAD_OBRACE: u8 = 0xB8;
pub const KEY_KEYPAD_CBRACE: u8 = 0xB9;
pub const KEY_KEYPAD_TAB: u8 = 0xBA;
pub const KEY_KEYPAD_BACKSPACE: u8 = 0xBB;
pub const KEY_KEYPAD_A: u8 = 0xBC;
pub const KEY_KEYPAD_B: u8 = 0xBD;
pub const KEY_KEYPAD_C: u8 = 0xBE;
pub const KEY_KEYPAD_D: u8 = 0xBF;
pub const KEY_KEYPAD_E: u8 = 0xC0;
pub const KEY_KEYPAD_F: u8 = 0xC1;
pub const KEY_KEYPAD_XOR: u8 = 0xC2;
pub const KEY_KEYPAD_CARET: u8 = 0xC3;
pub const KEY_KEYPAD_PERCENT: u8 = 0xC4;
pub const KEY_KEYPAD_LESS: u8 = 0xC5;
pub const KEY_KEYPAD_GREATER: u8 = 0xC6;
pub const KEY_KEYPAD_AMPERSAND: u8 = 0xC7;
pub const KEY_KEYPAD_LOGICAL_AND: u8 = 0xC8;
pub const KEY_KEYPAD_VERTICAL_BAR: u8 = 0xC9;
pub const KEY_KEYPAD_LOGIACL_OR: u8 = 0xCA;
pub const KEY_KEYPAD_COLON: u8 = 0xCB;
pub const KEY_KEYPAD_NUMBER_SIGN: u8 = 0xCC;
pub const KEY_KEYPAD_SPACE: u8 = 0xCD;
pub const KEY_KEYPAD_AT: u8 = 0xCE;
pub const KEY_KEYPAD_EXCLAMATION_MARK: u8 = 0xCF;
pub const KEY_KEYPAD_MEMORY_STORE: u8 = 0xD0;
pub const KEY_KEYPAD_MEMORY_RECALL: u8 = 0xD1;
pub const KEY_KEYPAD_MEMORY_CLEAR: u8 = 0xD2;
pub const KEY_KEYPAD_MEMORY_ADD: u8 = 0xD3;
pub const KEY_KEYPAD_MEMORY_SUBTRACT: u8 = 0xD4;
pub const KEY_KEYPAD_MEMORY_MULTIPLY: u8 = 0xD5;
pub const KEY_KEYPAD_MEMORY_DIVIDE: u8 = 0xD6;
pub const KEY_KEYPAD_PLUSMINUS: u8 = 0xD7;
pub const KEY_KEYPAD_CLEAR: u8 = 0xD8;
pub const KEY_KEYPAD_CLEAR_ENTRY: u8 = 0xD9;
pub const KEY_KEYPAD_BINARY: u8 = 0xDA;
pub const KEY_KEYPAD_OCTAL: u8 = 0xDB;
pub const KEY_KEYPAD_DECIMAL: u8 = 0xDC;
pub const KEY_KEYPAD_HEXADECIMAL: u8 = 0xDD;
pub const KEY_LEFTCONTROL: u8 = 0xE0;
pub const KEY_LEFTSHIFT: u8 = 0xE1;
pub const KEY_LEFTALT: u8 = 0xE2;
pub const KEY_LEFT_GUI: u8 = 0xE3;
pub const KEY_RIGHTCONTROL: u8 = 0xE4;
pub const KEY_RIGHTSHIFT: u8 = 0xE5;
pub const KEY_RIGHTALT: u8 = 0xE6;
pub const KEY_RIGHT_GUI: u8 = 0xE7;

pub const BIT0: u8 = 0x01;
pub const BIT1: u8 = 0x02;
pub const BIT2: u8 = 0x04;
pub const BIT3: u8 = 0x08;
pub const BIT4: u8 = 0x10;
pub const BIT5: u8 = 0x20;
pub const BIT6: u8 = 0x40;
pub const BIT7: u8 = 0x80;
