Pages : [01] [02] [03] [04] [05]

La technique étant comprise, il faut maintenant la passer en pratique.

Si nous revenont à nos rasters, la couleur de chacunes des lignes des tubes est généralement calculée par le programme, souvent incrémentée ou décrémentée par rapport à la ligne précédente. Dans notre cas, plutot que de changer la couleur de la palette d'une facon linéaire, nous pouvons plutot précalculer la valeur de chaque ligne avec un convertisseur fait maison.

Ce convertisseur fera les taches suivantes :
  • Chargement d'une image VGA (Généralement 256 couleurs ou plus)
  • Analyse des 16 couleurs les plus représentées sur la premiere ligne.
  • Enregistrement de la palette initiale et des données graphiques de la premiere ligne.
  • Passage à la ligne suivante
  • Analyse de la différence de palette entre la ligne précédente et la ligne en cours.
  • Changement de la couleur la moins representée de la ligne précédente avec la couleur la plus représentée en cours.
  • Enregistrement du numéro de couleur à changer, de sa palette, et des données graphique.
  • Passage à la ligne suivante
  • ... on recommence ...
  • ... jusqu'à la fin de l'image
Sur un écran de 200 lignes de haut, nous pourrons donc avoir en théorie jusqu'à 215 couleurs simultannées (16 pour la premiere ligne, et une nouvelle couleur pour chacune des 199 lignes restantes). Dans la pratique, nous bloquerons toutefois une couleur qui sevira a la marge (pour eviter que la marge ne change de couleur elle aussi).

Le fait que l'on change qu'une seule couleur par ligne est une contrainte technique. Comme nous l'avons vu précédement, nous ne pouvons changer de couleur que lorsque le spot ne trace pas. Nous avons entre deux lignes 20 cycles CPU seulement. Malheureusement, ce faible nombre de cycles disponibles ne nous permettra pas de changer plus d'une couleur, sans laisser des traces indésirables.

© PULS 2004-2019