|
 |
Dentro il Sistema |
TASTIERA 3/3
[16 di 39] |
 | La variabile di sistema
0000:0418H (insieme a
0000:0417H)
contiene informazioni sullo Stato della Tastiera; entrambe le locazioni sono
tenute aggiornate dalla procedura di servizio INT 09H,
attivata dal sistema in occasione della pressione
e del rilascio di un tasto qualunque.
| 0000:0418H |
1
byte |
Stato dei tasti Extended Shift |
|
 | In particolare questa variabile di sistema
memorizza lo stato dei tasti
di Extended Shift, che producono effetto solo
in combinazione con altri. |
 | La conoscenza di queste informazioni può tornare utile in
talune applicazioni che utilizzano la tastiera in modo assolutamente
originale (per esempio discriminando tra la pressione dello
Shift o del
Ctrl collocato a
destra piuttosto che quello di
sinistra...) |
 | La codifica dei tasti
Estesi di Shift, disponibile nella variabile di sistema
0000:0418H è la seguente: |
| 7654
3210 |
Extended Shift
Status
|
| xooo
oooo |
Ins
premuto |
| oxoo
oooo |
Caps Lock
premuto |
| ooxo
oooo |
Num Lock
premuto |
| ooox
oooo |
Scroll Lock
premuto |
| oooo
xooo |
Pause
commutato |
| oooo
oxoo |
SysReq
premuto |
| oooo
ooxo |
Left Alt
premuto |
| oooo
ooox |
Right Ctrl
premuto |
 | I primi
4 bit (bit7÷bit4)
indicano se i tasti commutatori della
precedente variabile di sistema
0000:0417H sono attualmente premuti
(se così il loro valore è lasciato a 1) |
 | il bit3
corrisponde ad un tasto commutatore la cui azione è analoga
alla combinazione di Ctrl
con NumLock |
 | gli ultimi
3 bit (bit2÷bit0) rappresentano altrettanti tasti:
se non premuti il loro valore è lasciato a
0; essi sono significativi solo per tastiere estese da 101/102 tasti. |
 |
La Funzione della Funzione
12H di
INT 16H restituisce nel registro
AH le
medesime informazioni di questa variabile di sistema,
ma in modo diverso; alcuni bit documentano la
pressione
dei tasti (Caps Lock,
Num Lock e Scroll Lock) anzicché il loro
stato attivo, e
in modo non esattamente corrispondente rispetto a quello disponibile in questa
variabile: |
| 7654
3210 |
Registro AH
restituito dalla Funzione
|
| xooo
oooo |
SysReq
premuto |
| oxoo
oooo |
Caps Lock
premuto [invariato] |
| ooxo
oooo |
Num Lock
premuto [invariato] |
| ooox
oooo |
Scroll Lock
premuto [invariato] |
| oooo
xooo |
Right
Alt
premuto |
| oooo
oxoo |
Right
Ctrl
premuto |
| oooo
ooxo |
Left Alt
premuto [invariato] |
| oooo
ooox |
Left
Ctrl
premuto |
 | La seguente casella di testo
mostra una interessante tecnica per assumere le informazioni dalla
variabile
0000:0418H: |
©
2001-2010 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|