[Thomson] Chargement de fichiers MAP sur TO7/70

Cette catégorie traite de développements récents pour nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par Fool-DupleX »

Il faut tout de même avouer que ça a plus de gueule que la démo Thomson officielle de l'époque :lol: :

Image
tjjq44
Messages : 220
Inscription : 26 oct. 2016 13:40

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par tjjq44 »

Fool-DupleX a écrit : 11 janv. 2022 23:44 Il faut tout de même avouer que ça a plus de gueule que la démo Thomson officielle de l'époque :lol:
C'est clair :lol:
tjjq44 a écrit : 11 janv. 2022 23:33Du coup en considérant que rama c'est pour la mémoire couleur et ramb pour la mémoire forme, je peux charger tout ce petit monde là avec le programme "LOADER.BAS".
Bon je crois que j'ai fait une coquille, j'ai inversé dans mon programme formes et couleurs... pas dramatique en soi suffit d'inverser les fichiers aussi mais j'ai corrigé tout ça, "faut que c'est propre" * :wink:

Listings corrigés:

Code : Tout sélectionner

10 'SAUVEGARDE LA RAM VIDEO
100 INPUT "NOM DU FICHIER DE FORME";NOA$
200 INPUT "NOM DU FICHIER DE COULEUR";NOB$
1000 LOCATE 0,0,0
1010 POKE&HE7C3,PEEK(&HE7C3) OR 1
1020 SAVEM NOA$,&H4000,&H5F3F,0
1030 POKE&HE7C3,PEEK(&HE7C3) AND 254
1040 SAVEM NOB$,&H4000,&H5F3F,0
1050 LOCATE 0,24,1

Code : Tout sélectionner

10 'CHARGE LA RAM VIDEO
100 INPUT "NOM DU FICHIER DE FORME";NOA$
110 INPUT "NOM DU FICHIER DE COULEUR";NOB$
1000 LOCATE 0,0,0
1110 POKE&HE7C3,PEEK(&HE7C3) OR 1
1120 LOADM NOA$
1130 POKE&HE7C3,PEEK(&HE7C3) AND 254
1140 LOADM NOB$
1150 I$=INKEY$
1160 IF I$="" THEN GOTO 1150
1170 LOCATE 0,24,1
Fichiers images du mont Saint Michel : http://tjjq.free.fr/grafx2/mont-saint-michel-to7.zip
Ma disquette SDDrive à jour : http://tjjq.free.fr/thomson/thomas.sd

Bon aller -> au lit!!

* Référence à Benjamin Workshop qui a construit sa propre GT40!! (chaine youtube)
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par __sam__ »

Les fichiers Map sont compatibles ascendants. Mais ne t'embête pas avec cela et travaille directement avec le BIN rama et ramb. La compression ne sert a rien avec les images ayant peu d'aplats.

Conseil : pour avoir un bel affichage, passer l'écran en noir sur fond noir. Charger d'écran forme puis l'écran couleur. Ainsi l'image complètement fini colorée s'affichera en une fois.

Le gros fichier basic affiche lentement l'image stockée dans les data.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
tjjq44
Messages : 220
Inscription : 26 oct. 2016 13:40

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par tjjq44 »

Super, merci pour toutes ces précisions! :wink:
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par __sam__ »

Ce que je fais souvent pour passer l'écran en noir sur fond noir (ou blanc sur blanc), c'est

Code : Tout sélectionner

c=0:locate,,0:color c,c:screen,,c:cls
ça va vite, c'est propre et portable.

Et si on veut voir d'éventuels message d'erreur après, je rajoute color 7-c après le cls (parceque ton sur ton c'est pas très lisible si du texte devait s'afficher après).

Ah et j'oubliais que le fichier PAL a côté du basic contient la palette.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
tjjq44
Messages : 220
Inscription : 26 oct. 2016 13:40

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par tjjq44 »

Merci, c'est propre et ça marche au poil (même si j'aime bien regarder la forme s'afficher puis la couleur lol).
J'ai un peu raccourci ton code et ça marche tout aussi bien, y avait une raison de mettre une instruction color avant l'instruction screen? (locate ,,0 me donne une erreur de syntaxe)

Code : Tout sélectionner

locate 0,0,0:screen 0,0,0:cls
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par __sam__ »

En effet il n'y a pas de hasard dans mon code: Screen est lent (5-6 vbl car il fait plusieurs passes pour changer séparément forme et fond, alors que Color + cls est bien plus rapide (autour de 1 vbl: il change forme et fond en même temps).
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par Daniel »

tjjq44 a écrit : 16 janv. 2022 00:17 locate ,,0 me donne une erreur de syntaxe
C'est une particularité du BASIC 1.0 sur TO. Il n'y a pas d'erreur sur MO5, ni avec les autres BASIC MO ou TO.
Daniel
L'obstacle augmente mon ardeur.
tjjq44
Messages : 220
Inscription : 26 oct. 2016 13:40

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par tjjq44 »

Encore des petites subtilités thomsonesques lol. Pour la lenteur de "SCREEN" ce n'est rien à côté de la lenteur de remplissage de la mémoire vidéo... du coup je laisse tel quel pour l'instant.
Existe-t-il une commande basic permettant de mémoriser dans une variable les deux valeurs actuelles de forme et de fond (en gros une fonction "COLOR" à l'envers) ? ça permettrait de sauvegarder la couleur du texte et du fond pour la restaurer à l'identique avec l'instruction "COLOR" en fin de programme!

Voici mon loader dans son état actuel :

Code : Tout sélectionner

10 'CHARGE LA RAM VIDEO
100 INPUT "Nom du fichier (sans l'extension)";NO$
120 NOA$=NO$+".FRM"
130 NOB$=NO$+".COU"
1000 LOCATE 0,0,0:SCREEN 0,0,0
1110 POKE&HE7C3,PEEK(&HE7C3) OR 1
1120 LOADM NOA$
1130 POKE&HE7C3,PEEK(&HE7C3) AND 254
1140 LOADM NOB$
1150 I$=INKEY$
1160 IF I$="" THEN GOTO 1150
1170 COLOR 7,0:LOCATE 0,24,1
PS: Je pourrais encore ajouter une routine de détection TO/MO afin de sélectionner le bon octet (HE7C3 ou HA7C3) selon mais actuellement le plugin de Sam ne génère que des fichiers couleur compatibles TO et l'adresse de chargement est d'ailleurs toujours fixée à H4000 dans ceux-ci, même avec "ostro_mo5.lua" on obtient un fichier pour TO. Ca tombe bien pour moi qui n'ai pas de MO lol.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par __sam__ »

Avec des peek il doit y avoir moyen de récupérer les couleurs dans les registres du moniteur, mais les adresses entre TO et MO ainsi que le codage sera différent entre les machines.

Attention aussi entre TO/MO, l’encodage de la page couleur est totalement différent. Une image adaptée au TO s’affichera mal sur MO. Le format MAP utilise l’encodage TO et l’afficheur MO du basic2, ou des outils de dessins comme Colorpaint réalisent la conversion TO->MO lors de l’affichage.

Pour bien faire il faut charger la page de couleur en zone non visible, et faire le transcodage TO->MO lors de la recopie en mémoire vidéo. Ou alors prévoir deux fichiers de couleur, l’un pour TO, l’autre pour MO.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
tjjq44
Messages : 220
Inscription : 26 oct. 2016 13:40

Re: [Thomson] Chargement de fichiers MAP sur TO7/70

Message par tjjq44 »

__sam__ a écrit : 16 janv. 2022 15:20Attention aussi entre TO/MO, l’encodage de la page couleur est totalement différent. Une image adaptée au TO s’affichera mal sur MO. Le format MAP utilise l’encodage TO et l’afficheur MO du basic2, ou des outils de dessins comme Colorpaint réalisent la conversion TO->MO lors de l’affichage.

Pour bien faire il faut charger la page de couleur en zone non visible, et faire le transcodage TO->MO lors de la recopie en mémoire vidéo. Ou alors prévoir deux fichiers de couleur, l’un pour TO, l’autre pour MO.
Ca j'avais bien compris mais n'ayant pas de MO chez moi (et n'en voulant pas) je préfère me concentrer sur la partie TO, c'est déjà bien assez compliqué pour moi lol. Libre à ceux ayant des MO de s'inspirer de mon code pour l'adapter :wink:
Répondre