|
 |
Programmazione |
CURSORE 4/5
[19 di 79] |
-
Gestione BIOS del cursore
Hardware -
INT 10H
- Funzione 03H
|
INT
10H |
Funzione 03H |
Legge posizione/dimensione del Cursore |
- Legge anche
la dimensione e
la posizione
del
cursore in corrispondenza della quale
(posizione di stampa corrente) sarà scritto il prossimo carattere.
- Nella pagina0 dei
Modi Testo in tale posizione apparirà il
cursore lampeggiante; nei Modi
Grafici il cursore non è visibile,
ma la posizione di stampa assunta è comunque significativa.
- La posizione del cursore rilevata può essere
diversa
in ognuna delle pagine video previste dall'Adattatore disponibile e dal
Modo Video corrente.
- In
ingresso:
- AH è posto
a 03H
- BH specifica
la pagina video nella quale localizzare la posizione; i possibili valori
dipendono dal Modo video corrente:
- pagine
0÷3 o
0÷7, per i
Modi Testo
- pagina
0,
per i Modi Grafici
- In uscita lascia:
- in DL
la colonna di stampa desiderata (da 0 a 79 nel
Modo Testo standard 03H)
- in DH la riga di stampa desiderata (da 0 a
24 nel
Modo Testo standard 03H)
- in CL la linea di pixel finale,
posta nella parte bassa, affidata ai 5 bit meno significativi
(bit4÷bit0)
- in CH la linea di pixel di
partenza, posta nella parte alta, affidata ai 5 bit meno significativi
(bit4÷bit0)
- nella variabile di sistema posta a
0000:0450H,
il valore
assunto in DX, con la
posizione del Cursore in pagina0 (a questa variabile ne seguono altre 7,
riservate alla posizione del Cursore nelle rimanenti pagine disponibili in
Modo Testo).
- nella variabile di sistema posta a
0000:0460H, il valore
assunto in CX, con la dimensione del
Cursore.
- La Funzione
si chiama dunque in questo modo:
- I valori restituiti in DL/DH
sono quelli previsti per le coordinate di
ognuna delle pagine video garantite dall'Adattatore disponibile e dal
Modo Video corrente, cioè:
- l'angolo in alto a sinistra
ha comunque coordinate 0,0
- l'angolo in basso a destra
è comunque posto sulla riga RigMax =
24, mentre il valore della colonna dipende dal
Modo video corrente:
- ColMax =
39, per i Modi Video a 40 colonne
(00H,01H,04H,05H,09H,0DH,13H)
-
ColMax = 79,
per i Modi Video a 80 colonne (02H,03H,06H,07H,0AH,0EH,0FH,10H,11H,12H)
-
ColMax = 19,
per il Modo Video 08H
- I valori restituiti in
CL/CH
sono quelli previsti per le dimensioni del
cursore garantite dall'Adattatore
disponibile, in funzione del numero massimo di linee di
scansione previste:
- 07 per la CGA (n° massimo di
linee previste = 08, da 0 a 7)
- 13 per la MDA e l'EGA (n° massimo di
linee previste = 14, da 0 a 13)
- 15 per la MCGA e la VGA (n° massimo di
linee previste = 16, da 0 a 15)
- La dimensione di default del cursore è prefissata dalla ROM BIOS
in fase di inizializzazione; i valori di default sono, di norma:
- CH=06/CL=07,
adatti alla matrice 8*8 della CGA
- CH=11/CL=12
per MDA e EGA
- CH=13/CL=14
per MCGA e VGA
- L'eseguibile
B10_03__.COM assume la
posizione corrente del Cursore e le sue
dimensioni mostrandone il valore, con
l'aiuto della Funzione 03H
di
INT 10H e di alcune altre procedure di Libreria.
- Il sorgente è documentato nella sezione ASM
(clicca sull'icona
,
nel menu a sinistra).
©
2001-2010 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|