|  | 
      
    
      Come Funziona
     
    
    
      Area Comunicaz. Bios  | |
| Video | 
| Programmazione | PROCEDURE BIOS 31/59 [53 di 84] | 
| 
 | 
|  | 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  , 
  nel menu a sinistra). | 
| 
 | 
|   | Video01 |   | PROCEDURE BIOS 31/59 |  |  |  | ||
| 53 di 84 | 
| 
 | 
| 
 | 
| 
 | 
| Home  | 
 | |||||||
| 
 | Motore Ricerca | 
 |