Subversion Repositories MB01 Project

Rev

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