DEGAS ELITE - Images non compressées, aux formats PI1, PI2, PI3
La taille
Elle peut-être de 32034 ou 32066. Toutes autres valeurs impliqueraient alors un fichier incomplet (espace disque, ...), ou crypté/compréssé par un procédé quelconque. Dans ce cas, le fichier n'est alors plus lisible par Degas Elite (et encore moins par moi).
La structure
2 octets HEADER indiquant la résolution (en complément avec l'extension du fichier): Ce n'est pas de l'ASCII, 00 pour la basse, 01 pour la moyenne et 02 pour la haute (marrant, c'est justement la valeur que l'on passe pour changer de résolution).
32 octets indiquant la valeur des couleurs primaires des 16 registres (Voir le chapitre sur la palette des couleurs).
32000 octets qui sont en fait l'image (Voir structure de la mémoire vidéo).
Si la taille est de 32066 alors les octets supplémentaires sont:
8 octets pour indiquer le numéro de couleur de départ pour l'animation
8 octets pour la couleur de fin
8 octets : Sens de l'animation (0 = gauche, 1 = off, 2 = droite)
8 octets 128 - valeur: indiquant sur 1/60 de seconde le delai
Exemple
Voici un exemple de programme hyper simple pour lire un fichier PI1:
fichier$=SPACE$(32066)
FILESELECT "C:*.pi1","",nom$
BLOAD nom$,VARPTR(fichier$)
VOID XBIOS(6;L:VARPTR(fichier$)+2)
BMOVE VARPTR(fichier$)+34,XBIOS(2),32000
Il manque la sauvegarde des couleurs avant modification de la palette de couleurs avec celle du PI1. Et pourquoi pas aussi la possibilité de charger les trois types de PI tout en passant dans la bonne résolution écran...
Cependant, ce n'est pas le but ici. Si vous voulez vous amuser: Infos supplémentaires