[MO6/PC128] Pour la science...

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

__sam__
Messages : 8359
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

[MO6/PC128] Pour la science...

Message par __sam__ »

Je voudrais connaitre l'ordre des couleurs en lignes/colonnes qu'affiche le programme suivant sur MO6 ou PC128 ? (j'ai déjà testé pour les TO8)

Code : Tout sélectionner

10 FOR I=0 TO 15: FOR J=0 TO 15: COLOR I,J: ? "X";: NEXT: ?: NEXT
20 COLOR 0,6: POKE &HA7DC,32
Je n'ai pas ces machines, aussi est-ce que quelqu'un en ayant une pas loin peut faire l'expérience ? C'est pour la science...

Plus précisément je cherche à voir si les 8 premières couleurs de fond ET de forme seraient inversées avec les 8 suivantes à la fin de l'execution du programme (après le poke).

PS: pas la peine d'executer sur émulateur, aucun n'est pas fidèle dans l'interprétation des modes graphiques un peu spéciaux comme ici.
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 : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

Sur PC128 :

pc128.jpg
pc128.jpg (152.37 Kio) Consulté 650 fois
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 8359
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [MO6/PC128] Pour la science...

Message par __sam__ »

Merci Daniel.

Donc sur un vrai PC128 on observe pas d'inversion entre les 8 premières couleurs et les suivantes. Mince ! :( Bah ca veut dire que le fonctionnement de $A7DC est différent sur MO de $E7DC sur TO. Pourtant c'est le même composant, et j'avais espéré que l'on observe le même phénomène que sur TO (où l'expérience est un peu plus complexe car le basic ne permet pas aussi simplement de positionner chaque nibble de l'octet couleur).

J'avais dans l'idée que le mode "32" ($20) serait le même entre TO et MO et permettrait d'avoir un affichage type forme+fond commun entre les deux gammes de machines ce qui permet d'afficher la même chose à partir des mêmes données binaires dans le mode 320x200 avec bavures. Hélas, ca n'est pas exactement le cas.

Pour les curieux, sur TO l'octet du mode normal (0 en $E7DC) pour la couleur forme "abcd" et fond "EFGH" (les lettres sont des bits) est encodé comme: E'a'bc dFGH, avec E' = not(E) et a' = not(a). C'est l'encodage classique TO7/70 issu du TO7 qui n'utilisait que 8 couleurs. En mode "32" sur les TO, le même couple de couleur est réorganisé en a'bcd E'FGH, c'est à dire que chaque couleur est alignée si des nibbles comme sur les MO.. C'est presque pareil sauf que l'on a le bit de saturation ("a" et "E") inversés sur TO et pas sur les MO. J'avais espéré que ce soit identique, y compris avec l'inversion du bit de saturation/pastel.

Bon c'est pas si bloquant que cela (une ptite manip sur la palette devrait fixer l'histoire sans couter plus de CPU).

@Daniel, y aurait-il une chance qu'une future version de DCMoto émule (sur TO) ce mode 32=$20 en $E7DC ? (sur MO, il semble que le mode 32 ne fasse rien de spécial, donc rien à modifier). Si cela était émulé, je pourrais en tirer parti dans une mise à jour de SDVideo.
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 : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

Tu excites ma curiosité. Dans la journée je vais essayer ce mode sur TO8. Je pense qu'il doit être facile de l'émuler dans dcmoto. A suivre...
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 8359
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [MO6/PC128] Pour la science...

Message par __sam__ »

__sam__ a écrit : 02 nov. 2024 22:58 Bah ca veut dire que le fonctionnement de $A7DC est différent sur MO de $E7DC sur TO. Pourtant c'est le même composant, et j'avais espéré que l'on observe le même phénomène que sur TO
En fait si c'est le même composant. La différence est ailleurs:
Capture.GIF
Capture.GIF (58.6 Kio) Consulté 584 fois
La valeur du bit "pastel" sortie du gate array est inversée avant d'être latché pour être envoyé au circuit palette. C'est même écrit de toute lettres dans la manuel technique TO8:
page 68 du manuel technique TO8 a écrit :En lecture seulement par le système graphique (gate array d'affichage) à travers un latch 4 bits 74 LS 173 et un inverseur pour transformer le bit de saturation en bit pastel. La synchronisation ou validation est effectuée par l'horloge HP (image de (theta) point). De cette manière, le circuit effectue la transposition des informations couleurs entre la mémoire écran et la prise péritel.
A noter qu'on ne voit pas cet inverseur ni le latch 74LS173 sur le schéma du TO8:
Capture.GIF
Capture.GIF (69.81 Kio) Consulté 584 fois
Probablement que seul un tracage sur la carte mère direct montrerait cet inverseur.

Dommaque qu'on ait pas ces infos coté manuel technique MO6 pour comparer, mais comme je pense qu'ils n'avaient pas à se préoccuper de l'inversion du bit palette issu du TO7/70, c'est plus direct sur cette gamme de machines.
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 : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

Essai avec le TO8D :
to8d.jpg
to8d.jpg (117.32 Kio) Consulté 577 fois

Essai avec dcmoto_20241103 :
dcmoto.jpg
dcmoto.jpg (127.64 Kio) Consulté 577 fois

Version de développement dcmoto_20241103 à l'endroit habituel : http://dcmoto.free.fr/emulateur/index.html
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 8359
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [MO6/PC128] Pour la science...

Message par __sam__ »

Pour le TO8 il ne faut pas utiliser COLOR car ce dernier transpose les bits et inverse les bits pastel : Color 15,0 devient %10111000 là où on voudrait %11110000. Il faut faire des poke en mémoire vidéo pour bien maitriser les valeurs de chaque nibble:

Code : Tout sélectionner

10 DEFINTA-Z:SCREEN7,0,0:LOCATE0,0,0:FOR I=0 TO 15: FOR J=0 TO 15: ? "X";: NEXT:?:NEXT
20 POKE &HE7C3,PEEK(&HE7C3)AND254
30 FOR I=0 TO 15:FOR J=0 TO 15:FOR K=0 TO 7
40 POKE &H4000+I+(8*J+K)*40,I*16+J
50 NEXT K,J,I
60 BEEP:A$=INPUT$(1)
70 POKE &HE7DC,32
Avant le BEEP tout doit bien être mélangé
dcmoto01.png
dcmoto01.png (9.4 Kio) Consulté 552 fois
mais après, se retrouve à avoir en colone et lignes les couleurs 8-15 puis 0-7
dcmoto02.png
dcmoto02.png (8.46 Kio) Consulté 552 fois
C'est ce que j'observe sur le nouvel émulateur. Ca me semble bon, je vais pouvoir avancer du coté soft.
Dernière modification par __sam__ le 03 nov. 2024 11:40, modifié 3 fois.
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 : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

mode_normal.png
mode_normal.png (16.93 Kio) Consulté 552 fois

mode_32.png
mode_32.png (16.61 Kio) Consulté 552 fois
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 8359
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [MO6/PC128] Pour la science...

Message par __sam__ »

Je me rend compte que ce fil aurait à présent plus sa place dans une autre section que "de passage". Mais où alors : emulateur, 8 bits, developpement actuels ? Ca touche un peu tout.
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 : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

Emulateurs :idea:
Dcmoto a été amélioré pour se rapprocher du fonctionnement de la vraie machine.
Ensuite il faudra annoncer dans Développements actuels l'utilisation de ce mode vidéo non documenté.
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

__sam__ a écrit : 03 nov. 2024 09:51 La valeur du bit "pastel" sortie du gate array est inversée avant d'être latché pour être envoyé au circuit palette. C'est même écrit de toute lettres dans la manuel technique TO8:
page 68 du manuel technique TO8 a écrit :En lecture seulement par le système graphique (gate array d'affichage) à travers un latch 4 bits 74 LS 173 et un inverseur pour transformer le bit de saturation en bit pastel. La synchronisation ou validation est effectuée par l'horloge HP (image de (theta) point). De cette manière, le circuit effectue la transposition des informations couleurs entre la mémoire écran et la prise péritel.
A noter qu'on ne voit pas cet inverseur ni le latch 74LS173 sur le schéma du TO8.
Probablement que seul un tracage sur la carte mère direct montrerait cet inverseur.
Vérification faite sur une carte mère de TO8D : La liaison entre le gate array et la broche 27 du circuit palette est directe, comme dans le schéma.
carte-mere.jpg
carte-mere.jpg (187.11 Kio) Consulté 517 fois
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 8359
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [MO6/PC128] Pour la science...

Message par __sam__ »

Donc l'inverseur sur l'autre schéma entre le gate-array et le circuit palette doit être planqué dans l'un de ces composants, qui n'est pas exploité sur les machines qui n'ont pas besoin de cet inverseur. Il me semble aque le gate-array est configuré (comment?) différemment sur les TO et MO et intègre cet inverseur dans un cas et pas l'autre. Je n'ai pas trouvé en revanche de configuration différente pour le EF9369, mais s'il existait une version TO et une autre MO et que l'on ait échangé l'un pour l'autre, cela pourrait (vaguement) expliquer le soucis de jeanPhi.
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 : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

Je croyais que les gate arrays des MO6 et des TO8D étaient identiques, mais on peut en douter. D'abord à cause de la génération du bit "Pastel", mais aussi d'autres petits détails. Par exemple la broche 30 est le signal "Présence Cartouche" en entrée pour le MO6. Sur le TO8 la broche 30 est l'indicateur "$FF00-$FFEF" en sortie. Comment est-ce possible avec le même composant ?

gate-array-mo6.png
gate-array-mo6.png (111.97 Kio) Consulté 448 fois
gate-array-to8d.png
gate-array-to8d.png (159.05 Kio) Consulté 448 fois

De plus ils n'ont pas le même boîtier : PLCC68 pour le MO6 (avec un support), QFP pour le TO8D (soudé sur le circuit imprimé).
Daniel
L'obstacle augmente mon ardeur.
Fool-DupleX
Messages : 2542
Inscription : 06 avr. 2009 12:07

Re: [MO6/PC128] Pour la science...

Message par Fool-DupleX »

Ils sont parfaitement identiques et configurés logiciellement au démarrage en mode TO ou MO. C'est la première chose qui est fait dans le moniteur au boot de la machine.
Daniel
Messages : 18085
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [MO6/PC128] Pour la science...

Message par Daniel »

Merci pour cette précision, elle explique les différences de comportement entre MO et TO.
Si un administrateur passe par là, il faudrait déplacer tout ce fil de discussion pour qu'il ne soit pas perdu.
Daniel
L'obstacle augmente mon ardeur.
Répondre