[DCMOTO] Emulation mode graphique $5B

Couvre tous les domaines de l'émulation logicielle ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Papy.G, fneck, Carl

Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

[DCMOTO] Emulation mode graphique $5B

Message par Daniel »

Première tentative d'émulation du mode graphique $5B dans dcmoto.
Vous pouvez charger la version 2023.02.23 à la page de l'émulateur : http://dcmoto.free.fr/emulateur/index.html
Elle permet de lancer ZEZITO5
ZEZITO5_to8fd.zip
(9.11 Kio) Téléchargé 39 fois
mode$5b.png
mode$5b.png (14.36 Kio) Consulté 1857 fois

Par contre tout ne fonctionne pas comme sur le vrai TO8D, en tapant la commande POKE&HE7DC,&H5B.
Avec la vraie machine, le BASIC ne plante pas et l'écran affiche ceci :
mode$5b.jpg
mode$5b.jpg (76.12 Kio) Consulté 1857 fois

Avec dcmoto le BASIC plante. L'ordinateur est bloqué et l'affichage n'est pas bon :
bug$5b.png
bug$5b.png (10.54 Kio) Consulté 1857 fois

J'ai essayé de trouver pourquoi, mais pour l'instant je n'ai pas réussi. Quoi qu'on fasse (même sans rien afficher), le TO8D plante après avoir mis $5B en $E7DC. On peut mettre une autre valeur, par exemple $5A ou $5C, ça ne plante pas. Par contre $5B provoque cette erreur. Je cherche la cause, mais ce n'est pas facile.
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7989
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [DCMOTO] Emulation mode graphique $5B

Message par __sam__ »

Ta vraie machine n'a que 256Ko de ram. Ca fait une petite différence.

Par contre par rapport à la capture écran que tu as faite et la vidéode Iapetus, on dirait qu'il manque du bleu, non ?
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 : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [DCMOTO] Emulation mode graphique $5B

Message par Daniel »

Oui, exact, il y a une erreur dans les couleurs du premier plan.
Grâce à l'explication de Iapetus j'ai pu corrigé et je diffuserai la nouvelle version demain.
Toutefois le plantage subsiste avec la commande BASIC : POKE&HE7DC,&H5B
Je cherche pourquoi...

zezito5.png
zezito5.png (13.72 Kio) Consulté 1807 fois
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7989
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [DCMOTO] Emulation mode graphique $5B

Message par __sam__ »

Tu veux mon avis ? Ca plante pas, mais le moniteur est coincé en écriture dans la RAMB qui n'est pas affichée à ce moment là (ou alors les couleurs 4 et 6 sont décodées dans la même entrée de palette). La preuve ? Tapes à l'aveugle

Code : Tout sélectionner

BEEP
Ca fais beep. C'est pas planté !!

Ensuite, fais ESC, tu va voir le menu s'afficher en laissant le poke à l'écran: PUTC écrit dans la mauvaise RAM écran.

Chose étrange: le haut de l'écran (où on a rien écrit) est incorrectement décodé par contre. Est-ce que par hasard ton moteur d'affichage ne recalcule que les lignes où il y a eu un changement en RAM ? Ca ressemble à un truc comme ca.
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
kirion
Messages : 346
Inscription : 22 sept. 2022 03:29

Re: [DCMOTO] Emulation mode graphique $5B

Message par kirion »

Pourtant tous les jeux du site DCMOTO tournent sur l'émulateur.
Cela signifie donc que ce mode $5B (que je ne connais pas) n'a jamais été utilisé dans aucun jeu ?
__sam__
Messages : 7989
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [DCMOTO] Emulation mode graphique $5B

Message par __sam__ »

Ben oui, il ne fait pas parti de la liste des 9 modes officiels présents dans la doc. Et même en pratique parmi ces 9 modes, il n'y en a pas plus que 3 d'utilisés dans les jeux: le mode 40 colonnes (320x200x16 couls avec color clash), le mode BM4 (320x200x4 couls sans color clash), et enfin le BM16 (160x200x16 couls sans color clash).
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
Ythunder
Messages : 941
Inscription : 21 août 2019 10:12

Re: [DCMOTO] Emulation mode graphique $5B

Message par Ythunder »

kirion a écrit : 23 févr. 2023 22:46 Pourtant tous les jeux du site DCMOTO tournent sur l'émulateur.
Cela signifie donc que ce mode $5B (que je ne connais pas) n'a jamais été utilisé dans aucun jeu ?
C'est ce que je me suis fais comme réflexion, j'allais demander comment un bug présent dans l'émulateur ne faisait pourtant planter aucun des jeux commerciaux ou autre programmes.. Je voulais également soumettre le même raisonnement sur d'autres bugs existant possibles (car l'émulation 100% sans bugs est plus peu probable que l'inverse), qui comme ici, ne perturbent toujours pas le bon fonctionnement de l'émulateur dans son usage quotidien.

Edit : ça me rappelle un peu les Memtest de barretes de RAM ou il y a une erreur, et pour autant, le PC ne plante pas... (gros coup de bol).
Quand on voit tout les échanges qui peuvent être fait dans la RAM, passer au travers des gouttes arrive pourtant.
__sam__
Messages : 7989
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [DCMOTO] Emulation mode graphique $5B

Message par __sam__ »

Qui parle de bug ?

L'émulateur n'est pas planté après le bug. Tout marche correctement. Il n'y a juste que l'affichage n'étant pas géré par la ROM, il est mal géré et semble ne rien afficher, faisant croire à un bug. Mais le basic est toujours là. On peut taper des commandes (à l'aveugle), elles seront correctement prises en compte.

Le seul truc qui cloche est que l'écran n'est pas mis à jour de la bonne façon après le poke. Les lignes ne sont correctement mises à jours que si on écrit dans la RAMA correspondante à ce qu'il semblerait. C'est lié à la routine d'affichage dans l'émul je suppose.
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
Ythunder
Messages : 941
Inscription : 21 août 2019 10:12

Re: [DCMOTO] Emulation mode graphique $5B

Message par Ythunder »

Un bug n'entraine pas forcement un plantage :roll: . Si le résultat dans un émulateur n'est pas le même que dans la vraie machine, c'est un bug. Si le bug est corrigé, alors l'émulateur aura ensuite le comportement identique à la machine. D'ailleurs Daniel est en train de chercher pourquoi... Il cherche quoi ?

En BASIC, tu te plantes dans une formule pour faire rebondir une balle contre les cotés de l'écran. Tu fais ton RUN, la balle traverse l'écran et ne revient jamais. C'est un bug (d'ou l'usage du mot débbogage, debugging) dans un listing. D'ou aussi l'expression : la chasse aux bugs...

Enfin j'ai relu ta réponse, il est possible qu'on n'image pas la même chose, non ?
(tu t'y connais beaucoup plus que moi en technique et programmation, moi je ne suis que sur des connaissances et compréhensions qui sont à ma portée)
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [DCMOTO] Emulation mode graphique $5B

Message par Daniel »

Ce n'est qu'un problème d'affichage dans dcmoto. Si on tape en aveugle POKE&HE7DC,0 on retrouve l'écran standard.
Je n'ai toujours pas trouvé la cause, les recherches continuent...

En attendant une correction, la version 2023.02.24 de dcmoto corrige le bug des couleurs en mode $5b et permet de jouer a ZEZITO5 : http://dcmoto.free.fr/emulateur/index.html
Daniel
L'obstacle augmente mon ardeur.
Iapetus
Messages : 155
Inscription : 22 nov. 2012 15:36

Re: [DCMOTO] Emulation mode graphique $5B

Message par Iapetus »

So glad you're implementing this, so I can test my programs using this mode also on DCMOTO. Will you implement mode $59 as well? It must be simple to do so. (test program:
bobs2.zip
(4.44 Kio) Téléchargé 48 fois
).
Dernière modification par Iapetus le 24 févr. 2023 12:45, modifié 1 fois.
MO5 - MO6 - TO8D - C64C - Timex TC2048 - Acorn Electron - Amiga 500
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [DCMOTO] Emulation mode graphique $5B

Message par Daniel »

Good news :
1) The dcmoto display bug with mode $5B was found and fixed.
2) Both $59 and $5B video mode are implemented

The new development version is 2023.02.25. It can be found below the 'release' version at http://dcmoto.free.fr/emulateur/index.html
Daniel
L'obstacle augmente mon ardeur.
kirion
Messages : 346
Inscription : 22 sept. 2022 03:29

Re: [DCMOTO] Emulation mode graphique $5B

Message par kirion »

Ythunder, tu devrais lire ce topic:

viewtopic.php?f=25&t=14162

Tu comprendrais que le gate array permet de gérer 72 modes graphiques dont seulement 9 sont officiels.

Le $5B n'est pas officiel (et n'est pas géré par la ROM) aucun jeu ne l'a jamais utilisé. Il n'était donc pas implémenté dans DCMOTO jusqu'à présent.
Là ce sont les tests de mise au point.

Sam et Daniel te répondent en pensant que tu as déjà lu le topic ci-dessus.
Iapetus
Messages : 155
Inscription : 22 nov. 2012 15:36

Re: [DCMOTO] Emulation mode graphique $5B

Message par Iapetus »

Daniel a écrit : 24 févr. 2023 21:02 Good news :
1) The dcmoto display bug with mode $5B was found and fixed.
2) Both $59 and $5B video mode are implemented

The new development version is 2023.02.25. It can be found below the 'release' version at http://dcmoto.free.fr/emulateur/index.html
:mrgreen:
MO5 - MO6 - TO8D - C64C - Timex TC2048 - Acorn Electron - Amiga 500
Ythunder
Messages : 941
Inscription : 21 août 2019 10:12

Re: [DCMOTO] Emulation mode graphique $5B

Message par Ythunder »

kirion a écrit : 24 févr. 2023 21:07 Ythunder, tu devrais lire ce topic:
Je n'avais pas pu le finir, gros manque de concentration..
Répondre