10-9 Etude de la synchro verticale

 

Comme nous l’avons vu dans la partie 9 sur la vidéo, il est bon de s’aligner sur la synchronisation verticale de l’écran pour créer des animations. C’est donc ce que nous faisons avec une boucle d’attente du signal VBL. Celui-ci est interrogé sur le port &F5xx et le signal VBL se trouve sur le bit de poids. On reboucle tant que ce bit est différent de 0.

 

 

VBL      LD B,&F5               ; Port de la VBL

VBLBOUCL IN A,(C)

         RRA                    ; VLB = bit 0 à 1 = active?

         JR  NC,VBLBOUCL        ; non => rebouclage

 

 

Le seul problème est que ce signal dure 16 lignes d’écran. Il faut donc s’assurer que le programme synchronisé dure au moins ce temps avant de reboucler. Ici c’est largement le cas.

 

Cette synchronisation offre un deuxième avantage qui est une base de temps efficace. En effet, le signal VBL intervient tous les 50èmes de seconde et ça tombe bien, puisque le chronomètre est justement incrémenté tous les 2 centièmes de seconde. Ainsi on n’a même pas à se soucier de savoir si les secondes sont bien des secondes, puisque le chronomètre est incrémenté et affiché par rapport à la VBL.

 

 

 

<< RETOUR  ---  SUITE : Gestion du sprite de la voiture >>