Étape 13 : Initialisation - tampon vidéo
Les pilotes graphiques sont un peu plus complexes à mettre en place, nécessitant quelques étapes distinctes. Comme beaucoup d’autres pilotes, la première étape consiste à appeler une fonction Init() qui configure les pilotes pour les paramètres actuels, mais cela nécessite quelques variables globales qui n’ont pas encore été créés.Il y a trois variables pour créer et initialiser, le premier étant la section de mémoire qui représente le frame suivant dessiner, ou le tampon vidéo. Les pilotes exigent d’être représentés comme un tableau unidimensionnel d’unsigned char. Pour rendre ce programme aussi modulaire que possible, chacune des résolutions d’écran différentes (et des types de l’écran) les fichiers fournissent une constante du même nom qui définit la taille de la mémoire tampon vidéo. Cette pratique constante porte le nom VRAM_BUF_SIZE. La déclaration de la mémoire tampon vidéo ressemblera à quelque chose comme ceci :
unsigned char g_VRAMBuffer[VRAM_BUF_SIZE] attribute((far));
La fonction d’attribut définira l’emplacement du tableau dans le bon endroit dans la mémoire.