keys.inc
mxlgv_KolibriDev/build_iso/kolibrios/develop/fasm/boxlib/keys.inc
; Key scan codes

SCAN_CODE_ESCAPE		= $01
SCAN_CODE_1			= $02
SCAN_CODE_2			= $03
SCAN_CODE_3			= $04
SCAN_CODE_4			= $05
SCAN_CODE_5			= $06
SCAN_CODE_6			= $07
SCAN_CODE_7			= $08
SCAN_CODE_8			= $09
SCAN_CODE_9			= $0A
SCAN_CODE_0			= $0B
SCAN_CODE_MINUS 		= $0C
SCAN_CODE_PLUS			= $0D
SCAN_CODE_BACK			= $0E

SCAN_CODE_TAB			= $0F
SCAN_CODE_Q			= $10
SCAN_CODE_W			= $11
SCAN_CODE_E			= $12
SCAN_CODE_R			= $13
SCAN_CODE_T			= $14
SCAN_CODE_Y			= $15
SCAN_CODE_U			= $16
SCAN_CODE_I			= $17
SCAN_CODE_O			= $18
SCAN_CODE_P			= $19

SCAN_CODE_RETURN		= $1C

SCAN_CODE_A			= $1E
SCAN_CODE_S			= $1F
SCAN_CODE_D			= $20
SCAN_CODE_F			= $21
SCAN_CODE_G			= $22
SCAN_CODE_H			= $23
SCAN_CODE_J			= $24
SCAN_CODE_K			= $25
SCAN_CODE_L			= $26

SCAN_CODE_Z			= $2C
SCAN_CODE_X			= $2D
SCAN_CODE_C			= $2E
SCAN_CODE_V			= $2F
SCAN_CODE_B			= $30
SCAN_CODE_N			= $31
SCAN_CODE_M			= $32

SCAN_CODE_DIVIDE		= $35 ; Numpad divide   (has ASCII $2F)

SCAN_CODE_MULTIPLY		= $37 ; Numpad multiply (has ASCII $2A)
SCAN_CODE_SNAPSHOT		= $37 ; Print Screen    (has ASCII $34)

SCAN_CODE_SPACE 		= $39
SCAN_CODE_CAPITAL_PRESSED	= $3A ; Caps Lock
SCAN_CODE_F1			= $3B
SCAN_CODE_F2			= $3C
SCAN_CODE_F3			= $3D
SCAN_CODE_F4			= $3E
SCAN_CODE_F5			= $3F
SCAN_CODE_F6			= $40
SCAN_CODE_F7			= $41
SCAN_CODE_F8			= $42
SCAN_CODE_F9			= $43
SCAN_CODE_F10			= $44
SCAN_CODE_NUMLOCK_PRESSED	= $45
SCAN_CODE_SCROLL_PRESSED	= $46 ; Scroll Lock
SCAN_CODE_CANCEL_PRESSED	= $46 ; Ctrl+Break ; share with scroll lock ASCII & scan code, but require 2 buttons Ctrl & Pause Break to be pressed same time, while scroll lock only 1 button
SCAN_CODE_NUMPAD_7		= $47
SCAN_CODE_HOME			= $47
SCAN_CODE_NUMPAD_8		= $48
SCAN_CODE_UP			= $48
SCAN_CODE_NUMPAD_9		= $49
SCAN_CODE_PGUP			= $49
SCAN_CODE_SUBTRACT		= $4A ; Numpad substract (has ASCII $4A)
SCAN_CODE_NUMPAD_4		= $4B
SCAN_CODE_LEFT			= $4B
SCAN_CODE_NUMPAD_5		= $4C
SCAN_CODE_CLEAR 		= $4C ; Numpad unlocked 5(has ASCII $37)
SCAN_CODE_NUMPAD_6		= $4D
SCAN_CODE_RIGHT 		= $4D
SCAN_CODE_ADD			= $4E ; Numpad add       (has ASCII $2B)
SCAN_CODE_NUMPAD_1		= $4F
SCAN_CODE_END			= $4F
SCAN_CODE_NUMPAD_2		= $50
SCAN_CODE_DOWN			= $50
SCAN_CODE_NUMPAD_3		= $51
SCAN_CODE_PGDN			= $51
SCAN_CODE_NUMPAD_0		= $52
SCAN_CODE_INSERT		= $52
SCAN_CODE_DECIMAL		= $53 ; Numpad loced decimal separator
SCAN_CODE_DELETE		= $53

SCAN_CODE_LWIN_PRESSED		= $5B
SCAN_CODE_RWIN_PRESSED		= $5C
SCAN_CODE_CONTEXT		= $5D ; right mouse button analog

SCAN_CODE_CAPITAL_RELEASED	= $BA ; Caps Lock

SCAN_CODE_NUMLOCK_RELEASED	= $C5
SCAN_CODE_SCROLL_RELEASED	= $C6 ; Scroll Lock
SCAN_CODE_CANCEL_RELEASED	= $C6 ; Ctrl+Break

SCAN_CODE_LWIN_RELEASED 	= $DB
SCAN_CODE_RWIN_RELEASED 	= $DC

; ASCII key codes
_ASCII equ $FF and
_CTRL  equ $A0 +

ASCII_KEY_CANCEL	= $01 ; ; Ctrl+Break ; share with scroll lock ASCII & scan code, but require 2 buttons Ctrl & Pause Break to be pressed same time, while scroll lock only 1 button
ASCII_KEY_SCROLL	= $01 ; ; Scroll Lock
ASCII_KEY_NUMLOCK	= $02
ASCII_KEY_CAPITAL	= $04 ; Caps Lock
ASCII_KEY_BACK		= $08
ASCII_KEY_CTRL_BACK	= _ASCII(_CTRL(ASCII_KEY_BACK))
ASCII_KEY_TAB		= $09
ASCII_KEY_CTRL_TAB	= _ASCII(_CTRL(ASCII_KEY_TAB))
ASCII_KEY_RETURN	= $0D
ASCII_KEY_CTRL_RETURN	= _ASCII(_CTRL(ASCII_KEY_RETURN))
ASCII_KEY_ESCAPE	= $1B
ASCII_KEY_CTRL_ESCAPE	= _ASCII(_CTRL(ASCII_KEY_ESCAPE))
ASCII_KEY_SPACE 	= $20
ASCII_KEY_CTRL_SPACE	= _ASCII(_CTRL(ASCII_KEY_SPACE))

ASCII_KEY_CTRL_0	= _ASCII(_CTRL('0'))
ASCII_KEY_CTRL_1	= _ASCII(_CTRL('1'))
ASCII_KEY_CTRL_2	= _ASCII(_CTRL('2'))
ASCII_KEY_CTRL_3	= _ASCII(_CTRL('3'))
ASCII_KEY_CTRL_4	= _ASCII(_CTRL('4'))
ASCII_KEY_CTRL_5	= _ASCII(_CTRL('5'))
ASCII_KEY_CTRL_6	= _ASCII(_CTRL('6'))
ASCII_KEY_CTRL_7	= _ASCII(_CTRL('7'))
ASCII_KEY_CTRL_8	= _ASCII(_CTRL('8'))
ASCII_KEY_CTRL_9	= _ASCII(_CTRL('9'))

ASCII_KEY_NUMPAD_0	= '0' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_0 = '0' ; numpad locked 0
ASCII_KEY_NUMPAD_1	= '1' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_1 = '1' ; numpad locked 0
ASCII_KEY_NUMPAD_2	= '2' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_2 = '2' ; numpad locked 0
ASCII_KEY_NUMPAD_3	= '3' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_3 = '3' ; numpad locked 0
ASCII_KEY_NUMPAD_4	= '4' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_4 = '4' ; numpad locked 0
ASCII_KEY_NUMPAD_5	= '5' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_5 = '5' ; numpad locked 0
ASCII_KEY_NUMPAD_6	= '6' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_6 = '6' ; numpad locked 0
ASCII_KEY_NUMPAD_7	= '7' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_7 = '7' ; numpad locked 0
ASCII_KEY_NUMPAD_8	= '8' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_8 = '8' ; numpad locked 0
ASCII_KEY_NUMPAD_9	= '9' ; numpad locked 0
ASCII_KEY_CTRL_NUMPAD_9 = '9' ; numpad locked 0

ASCII_KEY_CLEAR 	= $37 ; Numpad unlocked 5
ASCII_KEY_CTRL_CLEAR	= _ASCII(_CTRL(ASCII_KEY_CLEAR))

ASCII_KEY_LEFT		= $B0
ASCII_KEY_CTRL_LEFT	= _ASCII(_CTRL(ASCII_KEY_LEFT))
ASCII_KEY_DOWN		= $B1
ASCII_KEY_CTRL_DOWN	= _ASCII(_CTRL(ASCII_KEY_DOWN))
ASCII_KEY_UP		= $B2
ASCII_KEY_CTRL_UP	= _ASCII(_CTRL(ASCII_KEY_UP))
ASCII_KEY_RIGHT 	= $B3
ASCII_KEY_CTRL_RIGHT	= _ASCII(_CTRL(ASCII_KEY_RIGHT))
ASCII_KEY_HOME		= $B4
ASCII_KEY_CTRL_HOME	= _ASCII(_CTRL(ASCII_KEY_HOME))
ASCII_KEY_END		= $B5
ASCII_KEY_CTRL_END	= _ASCII(_CTRL(ASCII_KEY_END))
ASCII_KEY_DELETE	= $B6
ASCII_KEY_CTRL_DELETE	= _ASCII(_CTRL(ASCII_KEY_DELETE))
ASCII_KEY_PGDN		= $B7
ASCII_KEY_CTRL_PGDN	= _ASCII(_CTRL(ASCII_KEY_PGDN))
ASCII_KEY_PGUP		= $B8
ASCII_KEY_CTRL_PGUP	= _ASCII(_CTRL(ASCII_KEY_PGUP))
ASCII_KEY_INSERT	= $B9
ASCII_KEY_CTRL_INSERT	= _ASCII(_CTRL(ASCII_KEY_INSERT))