|
 |
Programmazione |
VIDEO 11/59
[31 di 79] |
 |
Gestione BIOS del Video -
INT 10H
- Funzione 0CH
|
INT
10H |
Funzione 0CH |
Stampa un Pixel |
|
 | Scrive un punto
(pixel)
sullo schermo, con determinato colore e in un
determinato punto. |
 | In ingresso:
 | AH è posto
a 0CH |
 | AL
indica il colore del Pixel, ed è collocato direttamente nel Buffer del
Video. |
 | CX indica la coordinata
orizzontale
(colonna)
del Pixel da scrivere,
da 0÷ 639 (nei Modi 06H, 0EH,
0FH, 10H) o 0÷319 (nei
Modi 04H, 05H,
0DH) |
 | DX indica la coordinata
verticale
(riga)
del Pixel da scrivere,
da 0 a 199 |
 | BH specifica
la pagina video nella quale scrivere il Pixel, nei Modi Grafici
in cui ne sono possibili più di una
(altrimenti viene ignorato) |
|
 | In uscita lascia:
 | nulla |
|
 | La Funzione
si chiama in questo modo: |
 | In quasi tutti i Modi Grafici
se il
bit7 di
AL
viene posto a 1 il
colore del Pixel stampato sarà il
risultato dell'azione logica
XOR
tra il valore passato in
AL e quello del colore del Pixel attualmente
presente nel punto di stampa, cioè del byte che lo rappresenta nella locazione
desiderata del Buffer del Video. |
 | Con questa tecnica si può dunque produrre la
cancellazione del Pixel invece della sua
scrittura. |
 | Fa eccezione il Modo Grafico
13H (40x25,8x8,320x200, 256 colori ,VGA)
per il quale la ricca disponibilità cromatica rende inutile l'artificio logico
appena descritto. |
 | Naturalmente i valori da passare nei registri dipendono dal Modo
Grafico utilizzato; con riferimento a quelli
Standard i valori possibili sono: |
|
Modo |
Risoluzione
Testo |
Risoluzione
Grafica |
Orizzontale
CX |
Verticale
DX |
Colore
AL |
Num.Pag.
BH |
Scheda
SVGA |
|
04H |
40x25 |
8x8 |
320x200 |
0÷319 |
0÷199 |
0÷3 |
4 |
0 |
1 |
CGA |
|
05H |
40x25 |
8x8 |
320x200 |
0÷319 |
0÷199 |
0÷3 |
4 |
0 |
1 |
CGA |
|
06H |
80x25 |
8x8 |
640x200 |
0÷639 |
0÷199 |
0÷1 |
B/N |
0 |
1 |
CGA |
|
0DH |
40x25 |
8x8 |
320x200 |
0÷319 |
0÷199 |
0÷15 |
16 |
0÷7 |
8 |
EGA |
|
0EH |
80x25 |
8x8 |
640x200 |
0÷639 |
0÷199 |
0÷15 |
16 |
0÷3 |
4 |
EGA |
|
0FH |
80x25 |
8x14 |
640x350 |
0÷639 |
0÷349 |
mono |
mono |
0÷1 |
2 |
EGA |
|
10H |
80x25 |
8x14 |
640x350 |
0÷639 |
0÷349 |
0÷15 |
4 o 16 |
0÷1 |
2 |
EGA |
|
11H |
80x30 |
8x16 |
640x480 |
0÷639 |
0÷479 |
0÷1 |
mono |
0 |
1 |
VGA |
|
12H |
80x30 |
8x16 |
640x480 |
0÷639 |
0÷479 |
0÷15 |
16 |
0 |
1 |
VGA |
|
13H |
40x25 |
8x8 |
320x200 |
0÷319 |
0÷199 |
0÷255 |
256 |
0 |
1 |
VGA |
 | Il programma
B10_0Cgr.COM proposto per il
collaudo della Funzione
0CH dell'INT 10H
stampa di Pixel in ognuno dei Modi Grafici
standard; è interessante notare la notevole differenza di
velocità tra i vari modi e risulta evidente che la bassa risoluzione consente
gestioni decisamente più veloci. |
 | 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
|