Si le ciel est la limite...

 


    Alors en Basic sur CPC, le ciel est tout de même bas ! Je peux paraître ingrat face à ce langage que j'ai pourtant longtemps pratiqué, mais parfois des choses que je trouvais tellement simple à faire dans les années 90 en Turbo Pascal, semblent hors de portée de ce bon vieil ordinateur avec son langage fourni de base !

    Dernièrement, alors que je codais l'introduction de mon jeu, j'ai souhaité l'illustrer avec plus d'images que je n'en n'avais préchargées. Or pour lire mon texte au fur et à mesure j'utilise l'instruction Basic : OPENIN. Ensuite je lis chaque ligne du fichier avec une instruction LINE INPUT #9 dans une boucle WHILE NOT EOF -- WEND. Et lors ce que l'on essaie de faire un load d'un fichier binaire dans cette boucle, on sort de la boucle de lecture du fichier, le Basic considère que l'on a atteint la fin du fichier !

    Me voila donc contraint de trouver une autre solution pour gérer tout ça autrement. J'imagine alors que la solution, la plus simple et la plus performante serait de mettre dans mon fichier texte des bouts de l'image, comme une suite de 160 octets représentant 8 lignes de 20 pixels. 

    Mais c'est là que de nouvelles difficultés apparaissent ! J'utilise Notepad++ comme éditeur. Or celui-ci à beaucoup de mal avec les caractères Ascii inférieur à 32. Donc quand je récupère 160 octets de mon premier fichier image et que je les colle dans le fichier intro.txt, l'éditeur me colle n'importe quoi ! Plus précisément, il me remplace quasiment tout les octets à 0, par des octets à 32 (caractère ascii de l'espace). Or c'est totalement faux, et en plus, certains des octets de l'image valent de toutes façons 32, donc il est hors de question de faire une simple substitution !

    J'essaie avec un plugin permettant de gérer le document en hexa décimal, mais c'est la même chose, l'auteur du plugin n'a pas touché au copier-coller qui reproduit le même comportement qu'en ASCII. 

    J'essaie alors avec un autre éditeur que j'adore TextPad 8, mais ce dernier refuse carrément de faire un copier depuis un fichier contenant la valeur binaire 0.

    Bref, je suis encore devant une impasse et je dois trouver un outil commode en Basic pour gérer des données binaires dans un fichier Ascii sous Windows ! Et après ça, je m'inquiète quand même de savoir si celà ne va pas être altéré par le transfert vers un fichier DSK.

    Pas mal de galères en vue donc ! 




Commentaires

Posts les plus consultés de ce blog

Démarrage officiel du projet Felgon : Courage et vérité

Petite progression