gestione di una scheda grafica ega
Transcript
gestione di una scheda grafica ega
μp 8086 La gestione della scheda grafica Prof. R. Prota Gestione dello schermo Dipende dalla scheda grafica che genera i segnali di controllo necessari per illuminare i pixel dello schermo in base alle informazioni contenute nella memoria video o buffer video La memoria video si trova fisicamente sulla scheda video, ma dal punto di vista logico è vista come della RAM in più. Prof. R. Prota Il buffer video L’indirizzo di partenza del buffer video di una EGA è B800h Esso contiene una immagine di ciò che viene visualizzato Modificando opportunamente il suo contenuto possiamo visualizzare sul monitor ciò che vogliamo utilizzando la modalità video scelta. Prof. R. Prota Modalità video Dipendono dal tipo di schermo, dalla scheda grafica e dalla memoria video a disposizione Le varie modalità, di testo o grafica, prevedono risoluzioni e numero di colori diversi Qualunque sia la modalità video usata, le informazioni relative ad una videata costituiscono una pagina video Prof. R. Prota Modalità testo In modalità testo una pagina video è vista come una matrice di 25 righe e 160 colonne In ogni riga è possibile visualizzare 80 caratteri Per ogni carattere vengono utilizzati 2 byte: uno per il codice ASCII e uno per gli attributi Prof. R. Prota Modalità testo In una EGA in modalità testo a colori, si ha quindi una risoluzione 80 x 25 = 2000 caratteri L’indirizzo di inizio del relativo buffer video è B800h Una pagina video occupa quindi 4000 byte. Prof. R. Prota Modalità testo Ogni posizione sullo schermo può essere individuata dal numero di riga e di colonna o con un indirizzo da 0 a 1999 L’ indirizzo si compone calcolando: 80 X il numero di righe + il numero di colonne Poiché ogni carattere occupa 2 byte, si ha: nella locazione ad indirizzo pari il codice ASCII in quella ad indirizzo dispari gli attributi. Prof. R. Prota Gli attributi b7 b6 b5 b4 b3 b2 b1 b0 Colore di primo piano Colore di sfondo Carattere lampeggiante Prof. R. Prota Tavolozza dei colori per video CGA o EGA 0 1 2 3 4 5 6 7 Nero Blu Verde Azzurro Rosso Violetto Marrone Bianco 8 9 A B C D E F Prof. R. Prota Grigio Blu chiaro Verde chiaro Azzurro chiaro Rosso chiaro Violetto chiaro Giallo Bianco acceso Un esempio: la procedura CLRSCR Mov Ax, $B800 Mov Es, Ax Mov Si, 0 Offset del buffer video Mov Al, $20 20h: Codice ASCII dello spazio Mov Cx, 2000 Numero di byte del buffer video @Rigo: Mov L'indirizzo della Scheda video è B8000h; il $ indica l’esadecimale Es:[Si], Al Add Si, 2 Dec Cx Jnz @Rigo Casella successiva Ret Prof. R. Prota