Blame | Last modification | View Log | Download | RSS feed
;----------------------------------------------------------
; KBD.INC
; PROGETTO: B1601
;
; controller tastiera
;----------------------------------------------------------
; il file puo' essere incluso solo all'interno di GLOBAL.INC
.IFNDEF _GLOBAL_INC_
.EXIT "ERROR: This file cannot be included."
.ENDIF
.IFDEF _KBD_INC_
; bit di KbdFlag
LSHIFTB .EQU 00000001B
LCTRLB .EQU 00000010B
LALTB .EQU 00000100B
RSHIFTB .EQU 00001000B
RCTRLB .EQU 00010000B
RALTB .EQU 00100000B
ACTRLB .EQU 01000000B ; L-CTRL OR R-CTRL
AALTB .EQU 10000000B ; L-ALT OR R-ALT
; bit di KbdShift
ASHIFTB .EQU 10000000B ; L-SHIFT OR R-SHIFT
ALTCTLB .EQU 01000000B ; L-CTRL OR R-CTRL OR L-ALT OR R-ALT
; bit di KbdToggle
CAPSLOCKB .EQU 10000000B ; CAPS-LOCK toggle bit
NUMLOCKB .EQU 01000000B ; NUM-LOCK toggle bit
SCROLLLOCKB .EQU 00100000B ; SCROLL-LOCK toggle bit
PAUSETGB .EQU 00010000B ; tasto PAUSE toggle bit
INSERTTGB .EQU 00000100B ; bit press/release INSERT
ESCAPETGB .EQU 00000010B ; bit press/release ESC
PRNSCTGB .EQU 00000001B ; bit press/release PRINT SCRN
; these are not control keys
KB_CTLC .EQU $03
KB_BELL .EQU $07
KB_TAB .EQU $09
KB_LF .EQU $0A
KB_CR .EQU $0D
KB_CTLS .EQU $13
KB_CTLV .EQU $16
KB_CTLX .EQU $18
KB_CTLY .EQU $19
KB_ESC .EQU $1B
; combinazioni tasti speciali
KB_SHIFTPRT .EQU $01 ; SHIFT + PRINT SCRN
KB_ALTPRT .EQU $02
KB_CTLPRT .EQU $03
KB_ALTCTLPRT .EQU $04
KB_SHIFTHOME .EQU $05
KB_ALTHOME .EQU $06
KB_CTLHOME .EQU $07
KB_ALTCTLHOME .EQU $08
KB_SHIFTINS .EQU $09
KB_ALTINS .EQU $0A
KB_CTLINS .EQU $0B
KB_ALTCTLINS .EQU $0C
KB_SHIFTPGUP .EQU $0D
KB_ALTPGUP .EQU $0E
KB_CTLPGUP .EQU $0F
KB_ALTCTLPGUP .EQU $10
KB_SHIFTPGDWN .EQU $11
KB_ALTPGDWN .EQU $12
KB_CTLPGDWN .EQU $13
KB_ALTCTLPGDWN .EQU $14
KB_SHIFTEND .EQU $15
KB_ALTEND .EQU $16
KB_CTLEND .EQU $17
KB_SHIFTDEL .EQU $18
KB_ALTDEL .EQU $19
KB_CTLDEL .EQU $1A
KB_SHIFTBKS .EQU $1B
KB_ALTBKS .EQU $1C
KB_CTLBKS .EQU $1D
KB_ALTESC .EQU $1E
KB_CTLESC .EQU $1F
KB_ALTTAB .EQU $20
KB_CTLTAB .EQU $21
KB_ALTCTLTAB .EQU $22
KB_ALTPLUS .EQU $23
KB_CTLPLUS .EQU $24
KB_ALTCTLPLUS .EQU $25
KB_ALTMINUS .EQU $26
KB_CTLMINUS .EQU $27
KB_ALTCTLMINUS .EQU $28
; tasti speciali e tasti cursore
KB_RIGHTGUI .EQU $80 ; RIGHT GUI
KB_LEFTGUI .EQU $81 ; LEFT GUI
KB_GUIMENU .EQU $82 ; MENU GUI
KB_PRTSCN .EQU $83 ; PRINT SCRN
KB_CSRUP .EQU $84 ; CURSOR UP
KB_HOME .EQU $85 ; CURSOR HOME
KB_INSERT .EQU $86 ; INSERT
KB_CSRRIGHT .EQU $87 ; CURSOR RIGHT
KB_PGUP .EQU $88 ; PAGE UP
KB_SHTAB .EQU $89 ; SHIFT + TAB
KB_PGDOWN .EQU $8A ; PAGE DOWN
KB_CSRDOWN .EQU $8B ; CURSOR DOWN
KB_END .EQU $8C ; END
KB_SHCR .EQU $8D ; SHIFT + ENTER
KB_DELETE .EQU $8E ; DELETE
KB_CSRLEFT .EQU $8F ; CURSOR LEFT
KB_BACKSPACE .EQU $90 ; BACKSPACE
; tasti NMI
KB_ALTCTLEND .EQU $80 ; NMI
KB_ALTCTLDEL .EQU $81 ; NMI
KB_ALTCTLBKS .EQU $82 ; NMI
KB_CTRLBREAK .EQU $83 ; CTRL + BREAK (NMI)
KB_ALTSYSREQ .EQU $84 ; ALT + SYS REQ (NMI)
KB_WAKE .EQU $85 ; WAKE UP (se presente) (NMI)
KB_SLEEP .EQU $86 ; SLEEP (se presente) (NMI)
KB_PWR .EQU $87 ; POWER (se presente) (NMI)
KB_ALTCTLESC .EQU $88
KB_F8 .EQU $A7 ; F8
KB_F12 .EQU $AB ; F12
KB_ALTF1 .EQU $C4
KB_ALTF10 .EQU $CD
KB_ALTF11 .EQU $CE
KB_ALTF12 .EQU $CF
; ALT 0..9 -> 30..39
; CTRL 0..9 -> 40..49
; CTRL + ALT 0..9 -> 50..59
; 60 - 7F -> ALT @ ....
; tasti funzione fino a FF
; FX -> A0..AB
; SHIFT + FX -> AC..B7
; CTL + FX -> B8..C3
; ALT + FX -> C4..CF
; CTL + SHIFT + FX -> D0..DB
; CTL + ALT + FX -> DC..E7
; ALT + SHIFT + FX -> E8..F3
; CTL + ALT + SHIFT + FX -> F4..FF
.ENDIF