Biologie | Chimie | Didactica | Fizica | Geografie | Informatica | |
Istorie | Literatura | Matematica | Psihologie |
ADAPTORUL CGA
In fig.4.57 este prezentata o schema bloc a unui adaptor CGA pentru sistemul IBM PC .
|
Denumirea de CGA vine de la Color Graphics Adapter (adaptor grafic color). Semnificatia notatiilor din fig.4.57 este urmatoarea:
AP - adrese procesor DP - date procesor BA - buffer de adrese MV - memorie video BI - buffer de intrare BO - buffer de iesire RSG - registru de serializare pentru modul grafic RSC - registru de serializare pentru modul caracter GC - generator de caractere RPC - registrul paletei de culori CML - controlul modului de lucru GTC - generator al semnalelor de ceas si de control GSCC - generator al semnalului color compus SCC - semnal color compus SH - semnal sincronizare pe orizontala SV - semnal sincronizare pe verticala |
In schema din fig.4.57 este utilizat un microcontroler
MC6845 CRT (catode
Microcontrolerul furnizeaza semnal pentru formarea impulsurilor de sincronizare H si V. MC 6845 este destinat sa comande atat monitoare cu semnale separate pentru culorile fundamentale R, G, B cat si monitoare ce primesc semnalul compus color (culorile fundamentale R G B sunt combinate si transmise pe o singura linie catre display) - a se vedea tubul supertrinitron sau cazul particular :monitor alb negru.
In memoria RAM de 16 octeti sunt inmagazinate toate informatiile pentru afisarea unui cadru, in mod grafic sau in mod alfanumeric. Adaptorul poate deci sa lucreze, dupa cum se vede din schema bloc, atat in modul grafic cat si in modul caracter, mod stabilit de CML. In modul caracter este necesar un generator de caractere ce este realizat cu memorie ROM. Informatia de la ROM este serializata si transmisa apoi codorului pentru semnalele R G B si I .
In memoria RAM, informatia cu privire la caracterul ce trebuie afisat se stocheaza pe 2 octeti. Primul octet contine codul ASCII al caracterului (pe 8 biti) ce trebuie afisat iar al 2-lea octet contine codul de atribut si este impartit in 2 parti: primii 4 biti sunt utilizati pentru culoarea caracterului iar ceilalti 4 biti (cei mai semnificativi) selecteaza culoarea fondului (in ambele cazuri se poate selecta una din 16 culori).
Daca dorim sa afisam 80 caractere pe rand si 25 randuri pe cadru sunt necesare 4 Kocteti de RAM . Deci se pot memora in RAM 4 pagini de display alb negru (1octet=1 caracter).Daca dorim sa afisam un caracter intr-o pozitie precizata pe ecran este suficient sa stim ca la fiecare inceput de cadru memoria RAM va primi coduri (cate 2 octeti pentru fiecare caracter) incepand cu locatia B8000H si tot incepand cu aceasta locatie va transmite codurile spre generatorul de caractere (ROM) pentru afisare. Este suficient deci sa inscriem cei 2 octeti (color) la o adresa care sa corespunda pozitiei dorite pe ecran cunoscand adresa locatiei zero (primul caracter din cadru) B8000H, numarul de caractere pe rand si numarul de randuri pe cadru .
Adaptorul prezentat poate lucra si in modul grafic, dar utilizeaza un buffer de date si un registru de date diferite de cele utilizate in modul caracter sau alfanumeric.
In acest mod de lucru culoarea fiecarui pixel este preluata direct din memoria RAM pe baza codului memorat in bytul 2. Pe baza acestui cod se stabilesc semnalele RGB si I obtinandu-se astfel una din 16 culori. Paleta de 16 culori ce se utilizeaza la un moment dat este adusa in RPC sub comanda microprocesorului.
In modul grafic adaptorul CGA poate lucra din punctul de vedere al rezolutiei de afisare pe display in urmatoarele moduri de lucru:
a) modul de mica rezolutie
b) modul de medie rezolutie
c) modul de inalta rezolutie
a) In modul de mica rezolutie, rar folosit, se afiseaza doar 100 randuri de pixeli (de linii); fiecare linie avand 160 deci sunt necesari 16Kbiti. Astfel pot fi memorate 8 pagini alb negru deoarece unui pixel ii corespunde doar un bit in MV. Daca imaginea este color -unui pixel ii corespund 4 biti - vor putea fi afisate doua pagini.
b) In modul de medie rezolutie se afiseaza 200 randuri (linii), fiecare avand 320 pixeli. Deci un cadru contine 200 x 320=64000 pixeli. In RAM exista 16Kocteti posibil de inmagazinat ceea ce corespunde la 128Kbiti posibil de memorat . Rezulta deci ca dispunem in RAM de doar 2 biti pentru a stabili culoarea unui pixel si deci vom putea specifica doar o culoare din 4 pentru fiecare un pixel.
c) In modul de inalta rezolutie sunt necesari 200*640=128Kocteti deci toti cei disponibili in RAM. Evident pentru aceasta rezolutie avem alocat 1 bit pentru un pixel si vom putea afisa doar alb negru .
Copyright © 2024 - Toate drepturile rezervate