Ceci est une ancienne révision du document !
Les cartes EGA/VGA reposent essentiellement sur quatre contrôleurs se répartissant les tachés liées a la génération du signal vidéo. Concrètement, it s’agit :
Les cartes EGA et VGA disposent en outre de quelques registres généraux décrits également dans ce chapitre.
La tache essentielle du contrôleur CRT consiste a configurer l’écran en créant des signaux pour le moniteur qui permettent au rayon électronique de piloter le tube cathodique. Ainsi, on rencontre ici de nombreux registres jouant surtout un role dans le timing du retour horizontal et vertical du rayon électronique. Ces registres présentent en général peu d’intérét pour le programmeur car ils sont complexes a gérer. Pour les programmer, il suffit de s’en remettre au BIOS qui les programme en conséquence en changeant tout simplement le mode vidéo.
L'adressage de tous les registres du contrôleur CRT s’effectue a travers un registre d'index et de données situés a l’adresse de port 3D4h ou 3D5h si la carte EGA ou VGA est utilisée en mode couleur. En mode monochrome, ces registres se trouvent en 3B4h et 3B5h.
Mais le BIOS n’est pas capable de programmer des registres tels que les registres offset ou Line Compare utilisés pour des effets vidéo spéciaux. Voici la liste des 25 registres du contrôleur CRT.
reg | Nom du registre |
---|---|
00h | Horizontal Total |
01h | Horizontal Display End |
02h | Start Horizontal Blanking |
03h | End Horizontal Blanking |
04h | Start Horizontal Retrace |
05h | End Horizontal Retrace |
06h | Vertical Total |
07h | Overflow |
08h | Vertical Pel Panning |
09h | Maximum Scan Line |
0Ah | Cursor Start |
0Bh | Cursor End |
0Ch | Start Address High |
0Dh | Start Address Low |
0Eh | Cursor Location High |
0Fh | Cursor Location Low |
10h | Start Vertical Retrace Light-Pen Low |
11h | End Vertical Retrace Light-Pen High (EGA seulement) |
12h | Vertical Display End |
13h | Offset |
14h | Underline Location |
15h | Start Vertical Blank |
16h | End Vertical Blank |
17h | Mode Control |
18h | Line Compare |
Ce registre détermine le caractère après le parcours duquel commence le retour du rayon électronique. L’écran peut ensuite être centré horizontalement à l'aide de ce registre.
Bit | Description |
---|---|
0 | Adresse du port * 0: monochrome 3B4h/3B5h et 3BAh * 1: couleur 3D4h/3D5h et 3DAh |
1 | Accès CPU à la ram Vidéo * 0: interdit * 1: autorisé |
2-3 | Résolution Horizontale |
4 | réservé |
5 | Bit de la page mode Odd/Even |
6-7 | Nombre de lignes de points verticales |
Le mode d’émulation 200 points de la carte VGA ne peut pas être défini a travers ce champ de bits. Il s’agit en fait d'un mode 400 points où 200 lignes seulement sont affichées en double.