Pour celà nous allons utiliser des images au format PI9. Ce format se rapporche du PI1 de DEGAS ELITE. Les image ne sont pas compactées et contiennent à la suite la palette (256 couleurs) puis l'image !
De nombreux logiciels sur Falcon gérent ce format notament DELMPAINT, et il existe des drivers pour GEMVIEW qui chargent ou sauvent ce format.
Structure d'un fichier PI9:
Un fichier au format PI9 à une taille de 77824 octets: 1024 octets pour la palette (256 couleurs, 4 octets par couleur), puis l'image proprement dite de 76800 octets (240 lignes de 320 octets)
Exemple en GFA Basic:
RESERVE 50000 ! réserve de la mémoire
super%=GEMDOS(32,L:0) ! mode superviseur
resol&=XBIOS(88,W:-1) ! Sauve la résolution
sauve_ecr%=XBIOS(2) ! Sauve adresse écran
buffer%=MALLOC(77824) ! buffer pour le fichier PI9
image%=ADD(buffer%,1024) ! adresse de l'image
moniteur%=XBIOS(89) ! test du moniteur
IF moniteur%=2 ! 2 = VGA
~XBIOS(5,L:image%,L:image%,3:&X100110011) ! mode VGA 320x200 256c
ELSE
~XBIOS(5,L:image%,L:image%,3:&X11) ! mode RVB 320x200 256c
ENDIF
BLOAD "IMAGE.PI9",buffer% ! charge l'image dans le buffer (IMAGE.PI9: nom du fichier)
BMODE buffer%,&HFFFF9800,1024 ! installe la palette
~INP(2) ! attente appui sur une touche
~GEMDOS (32,L:super

~XBIOS(5,L:sauve_ecr%,L:sauve_ecr%,3:resol&) ! Restore résolution
~MFREE(buffer

Je pense qu'il n'y a pas d'erreur , si ça vous interesse je vous proposerais la prochaine fois un fondu pour faire apparaitre (noir -> couleur) ou disparaitre (couleur -> noir) une image (toujours PI9)