; ; Scancode matrix for .... ; ; For use with KeyWarrior 16 Commander and KeyWarrior Combo Commander ; ; Do not change the layout of this file. ; To generate your custom table just place the scancodes at the appropriate ; positions of the table replacing the $00 bytes. ; Unused matrix coordinates should contain $00. ; ;======================================================================== ; USBkeycode_table does the matrix to scancode conversion for USB ; It is also used as the master conversion table for ADB and PS/2 ; ADB and PS/2 use the logical scancodes of USB to do their code generation ;======================================================================== USBkeycode_table: ; Row: 0 1 2 3 4 5 6 7 ; Row: 8 9 A B C D E F column0: db $B8, $00, $30, $C2, $C6, $CC, $D1, $00 column1: db $00, $00, $2F, $C1, $C5, $CB, $D0, $00 column2: db $B7, $00, $00, $00, $00, $00, $00, $00 column3: db $B6, $00, $D3, $CA, $D5, $00, $28, $00 column4: db $09, $00, $D2, $C9, $B9, $00, $00, $00 column5: db $B3, $00, $BD, $CD, $CF, $BC, $00, $00 column6: db $B2, $00, $BE, $D4, $CE, $BB, $2C, $00 column7: db $B1, $00, $00, $00, $00, $00, $00, $00 column8: db $B0, $00, $19, $C0, $C4, $C8, $06, $00 column9: db $29, $00, $BA, $BF, $C3, $C7, $1B, $00 column10: db $00, $00, $00, $00, $00, $00, $00, $00 column11: db $00, $00, $00, $00, $00, $00, $00, $00 column12: db $00, $00, $00, $00, $00, $00, $00, $00 column13: db $00, $00, $00, $00, $00, $00, $00, $00 column14: db $00, $00, $00, $00, $00, $00, $00, $00 column15: db $00, $00, $00, $00, $00, $00, $00, $00 USBkeycode_table2: ; Active when FN1 is pressed ; Row: 0 1 2 3 4 5 6 7 column0B: db $00, $00, $00, $00, $00, $00, $00, $00 column1B: db $00, $00, $00, $00, $00, $00, $00, $00 column2B: db $00, $00, $00, $00, $00, $00, $00, $00 column3B: db $00, $00, $00, $00, $00, $00, $00, $00 column4B: db $00, $00, $00, $00, $00, $00, $00, $00 column5B: db $00, $00, $00, $00, $00, $00, $00, $00 column6B: db $00, $00, $00, $00, $00, $00, $00, $00 column7B: db $00, $00, $00, $00, $00, $00, $00, $00 column8B: db $00, $00, $00, $00, $00, $00, $00, $00 column9B: db $00, $00, $00, $00, $00, $00, $00, $00 column10B: db $00, $00, $00, $00, $00, $00, $00, $00 column11B: db $00, $00, $00, $00, $00, $00, $00, $00 column12B: db $00, $00, $00, $00, $00, $00, $00, $00 column13B: db $00, $00, $00, $00, $00, $00, $00, $00 column14B: db $00, $00, $00, $00, $00, $00, $00, $00 column15B: db $00, $00, $00, $00, $00, $00, $00, $00 USBkeycode_table3: ; Active when FN2 is pressed ; Row: 0 1 2 3 4 5 6 7 column0C: db $00, $00, $00, $00, $00, $00, $00, $00 column1C: db $00, $00, $00, $00, $00, $00, $00, $00 column2C: db $00, $00, $00, $00, $00, $00, $00, $00 column3C: db $00, $00, $00, $00, $00, $00, $00, $00 column4C: db $00, $00, $00, $00, $00, $00, $00, $00 column5C: db $00, $00, $00, $00, $00, $00, $00, $00 column6C: db $00, $00, $00, $00, $00, $00, $00, $00 column7C: db $00, $00, $00, $00, $00, $00, $00, $00 column8C: db $00, $00, $00, $00, $00, $00, $00, $00 column9C: db $00, $00, $00, $00, $00, $00, $00, $00 column10C: db $00, $00, $00, $00, $00, $00, $00, $00 column11C: db $00, $00, $00, $00, $00, $00, $00, $00 column12C: db $00, $00, $00, $00, $00, $00, $00, $00 column13C: db $00, $00, $00, $00, $00, $00, $00, $00 column14C: db $00, $00, $00, $00, $00, $00, $00, $00 column15C: db $00, $00, $00, $00, $00, $00, $00, $00 ; ; Macro Function Keys ; Not affected by FN keys ; FNKeyB0: db $01 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $11, $00, $00, $00, $00, $00, $10 ; ctrl n Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB1: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $12, $00, $00, $00, $00, $00, $00 ; ctrl o Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB2: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $16, $00, $00, $00, $00, $00, $00 ; ctrl s Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB3: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $E2, $16, $00, $00, $00, $00 ; ctrl alt shift s Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB4: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB5: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB6: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E2, $1D, $00, $00, $00, $00, $00 ; ctrl alt z Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB7: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $1D, $00, $00, $00, $00, $00 ; ctrl shift z Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB8: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $E2, $55, $00, $00, $00, $00 ; ctrl alt shift num * Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyB9: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $E2, $11, $00, $00, $00, $00 ; ctrl alt shift n Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyBA: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $10, $00, $00, $00, $00, $00, $00 ; shift m Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyBB: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $08, $00, $00, $00, $00, $00, $00 ; ctrl e Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyBC: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $08, $00, $00, $00, $00, $00 ; ctrl shift e Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyBD: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $04, $00, $00, $00, $00, $00, $00 ; ctrl a Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyBE: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $07, $00, $00, $00, $00, $00, $00 ; ctrl d Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyBF: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $0D, $00, $00, $00, $00, $00, $00 ; shift j Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC0: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $05, $00, $00, $00, $00, $00, $00 ; shift b Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC1: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $2F, $00, $00, $00, $00, $00 ; ctrl shift [ Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC2: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $30, $00, $00, $00, $00, $00 ; ctrl shift ] Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC3: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $16, $00, $00, $00, $00, $00, $00 ; shift s Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC4: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $0A, $00, $00, $00, $00, $00, $00 ; shift g Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC5: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $2F, $00, $00, $00, $00, $00, $00 ; ctrl [ Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC6: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $30, $00, $00, $00, $00, $00, $00 ; ctrl ] Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC7: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $08, $00, $00, $00, $00, $00, $00 ; shift e Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC8: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $17, $00, $00, $00, $00, $00, $00 ; shift t Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyC9: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $35, $00, $00, $00, $00, $00, $00 ; ctrl ` Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyCA: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $31, $00, $00, $00, $00, $00, $00 ; ctrl \ Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyCB: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E2, $2F, $00, $00, $00, $00, $00, $00 ; alt [ Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyCC: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E2, $30, $00, $00, $00, $00, $00, $00 ; alt ] Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyCD: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $E2, $11, $00, $00, $00, $00, $00 ; alt shift n Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyCE: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $E2, $2D, $00, $00, $00, $00, $00 ; alt shift - Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyCF: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E1, $E2, $2E, $00, $00, $00, $00, $00 ; alt shift + Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD0: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $2D, $00, $00, $00, $00, $00, $00 ; ctrl - Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD1: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $2E, $00, $00, $00, $00, $00, $00 ; ctrl + Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD2: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $0A, $00, $00, $00, $00, $00, $00 ; ctrl g Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD3: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $E1, $0A, $00, $00, $00, $00, $00 ; ctrl shift g Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD4: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $17, $00, $00, $00, $00, $00, $00 ; ctrl t Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD5: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $E0, $0D, $00, $00, $00, $00, $00, $00 ; ctrl j Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD6: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD7: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD8: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyD9: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyDA: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyDD: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyDD: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyDD: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyDE: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00 FNKeyDF: db $00 ; Mode byte, 0 = stable mode, 1 = typing mode db $00, $00, $00, $00, $00, $00, $00, $00 ; Macro Keycodes up to 31 per key db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00