|
Sezione |
Indirizzi Base
Registri Interni
|
| Funzioni BIOS |
| Programmazione |
VIDEO 31/59 [51 di 79] |
|
|
Gestione BIOS del Video -
INT 10H
- Funzione 11H-
SottoFunz.
00H
|
|
|
| Copia in una specifica Tabella RAM (block) del Generatore di Caratteri Hardware la Tabella User (predisposta dall'utente) con la definizione di uno o più Caratteri; è tipica dei Modi Testo. |
|
|
| La SottoFunzione 10H della Funzione 11H di INT 10H assicura lo stesso servizio, ma permette anche la gestione dell'altezza dei caratteri visualizzati. | |
| Quando si desidera ridefinire uno o più caratteri da usare al posto di altri (normalmente qualche Ascii Esteso di scarso impiego) c’è la possibilità di scegliere tra le SottoFunzioni 00H e 10H: se non ci sono particolari controindicazioni conviene quindi usare la seconda, funzionalmente più completa. |
| Le SottoFunzioni 20H e 21H della Funzione 11H di INT 10H consentono la definizione di Tabelle Utente adatte ai Modi Grafici. |
|
|
In
ingresso:
|
|
|
In uscita lascia:
|
|
|
| La SottoFunzione si chiama in questo modo: |
|
|
|
| Con questa SottoFunzione è possibile cambiare l'aspetto di uno o più caratteri del Set standard (nei Modi Testo) sostituendolo con altri progettati dal programmatore; per renderla esecutiva bisogna stabilire l'altezza desiderata per i nuovi caratteri, cioè il numero di bytes necessari per definire la sua matrice di punti, per esempio 16 (per 8 pixel, uno per bit). | |
| La sequenza di questi bytes (nell'esempio un pacchetto da 16 per ogni nuova definizione) deve essere predisposta in una Tabella (TabFont). | |
| Quando viene chiamata esegue in sostanza una selezione di modo, modificando i parametri di stato del video, senza per altro cancellare il buffer del Display (cioè evitando l'effetto ClearScreen). |
|
|
| La specifica Tabella RAM (block) usata dal Generatore di Caratteri Hardware può essere rilevata consultando la tabella generata dalla chiamata della Funzione 1BH di INT 10H, al suo indirizzo 2BH e 2CH (vedi anche SottoFunzione 03H della Funzione 11H di INT 10H): |
|
|
| 2BH | Byte | Tabella (primaria) usata dal Generatore HARDWARE |
| 2CH | Byte | Tabella (secondaria) usata dal Generatore HARDWARE |
|
|
| La tecnica relativa alla creazione dei caratteri da parte del Generatore Hardware è descritta con ogni dettaglio in questa pagina; è certamente utile consultarne il contenuto, anche per approfondire alcuni importanti aspetti collaterali... | |||||||
Come il fatto che, nei moderni
adattatori VGA, viene proposta a video una matrice di punti
9*16 (cioè risoluzione 40x25, 360x400 o 80x25, 720x400), anche se
la nostra Tabella TabFont
ha definito i nuovi caratteri ciascuno con 16 bytes, cioè con matrici 8*16:
|
|
|
|
192 |
C0H | └ | 200 | C8H | ╚ | 208 | D0H | ╨ | 216 | D8H | ╪ | |||
| 193 | C1H | ┴ | 201 | C9H | ╔ | 209 | D1H | ╤ | 217 | D9H | ┘ | |||
| 194 | C2H | ┬ | 202 | CAH | ╩ | 210 | D2H | ╥ | 218 | DAH | ┌ | |||
| 195 | C3H | ├ | 203 | CBH | ╦ | 211 | D3H | ╙ | 219 | DBH | █ | |||
| 196 | C4H | ─ | 204 | CCH | ╠ | 212 | D4H | ╘ | 220 | DCH | ▄ | |||
| 197 | C5H | ┼ | 205 | CDH | ═ | 213 | D5H | ╒ | 221 | DDH | ▌ | |||
| 198 | C6H | ╞ | 206 | CEH | ╬ | 214 | D6H | ╓ | 222 | DEH | ▐ | |||
| 199 | C7H | ╟ | 207 | CFH | ╧ | 215 | D7H | ╫ | 223 | DFH | ▀ |
|
|
| Poichè come detto la SottoFunzione 10H è funzionalmente più completa della SottoFunzione 00H, il consueto programma applicativo risulta inutile. | |
| Ci riferiremo dunque all'eseguibile B10_1110.COM, che ridefinisce 5 caratteri Ascii estesi e li colloca nella Prima Tabella gestita dal Generatore di Caratteri Hardware. | |
| Il sorgente è documentato nella sezione ASM
(clicca sull'icona |
|
|
|
Funzioni BIOS |
|
VIDEO 31/59 |
![]() |
![]() |
![]() |
||
| 51 di 79 |
|
|
|
|
|
|
Home
|
|
|||||||
|
Motore Ricerca |
|