[ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Modérateurs : Papy.G, fneck, Carl
-
- Messages : 7987
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Donc un LDX $FFFE change aussi la page de la cartouche ?
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
-
- Messages : 2366
- Inscription : 06 avr. 2009 12:07
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
A priori, si ma compréhension est correcte, dès qu'un $FFFE passe sur le bus d'adresse ?
Ca ne fonctionne pas comme ça sur la T.2. Il semble vous avoir échappé que le bus MEMO7 n'a pas les signaux A14 et A15.
Et la solution de 6502man ne fonctionne pas sur les MO5 de première génération qui n'ont pas non plus les signaux A14 et A15 sur le bus MEMO5. En fait, je ne suis pas sûr du résultat : soit ça ne fonctionne pas du tout parce que les signaux sont vus à 0, soit ça fonctionne chaque fois qu'un $3FFE, $7FFE, $BFFE ou $FFFE passe sur le bus.
Ca ne fonctionne pas comme ça sur la T.2. Il semble vous avoir échappé que le bus MEMO7 n'a pas les signaux A14 et A15.
Et la solution de 6502man ne fonctionne pas sur les MO5 de première génération qui n'ont pas non plus les signaux A14 et A15 sur le bus MEMO5. En fait, je ne suis pas sûr du résultat : soit ça ne fonctionne pas du tout parce que les signaux sont vus à 0, soit ça fonctionne chaque fois qu'un $3FFE, $7FFE, $BFFE ou $FFFE passe sur le bus.
Dernière modification par Fool-DupleX le 20 avr. 2021 23:48, modifié 1 fois.
-
- Messages : 7987
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Par contre la présence continue de $FFFE sur le bus d'adresse pendant 3 cycles contigus (utiliser E pour compter) est caractéristique du reset physique (par la pinoche) si je comprends bien la doc.
En effet d'une part "JMP [$FFFE]" ne présente $FFFE que pendant un cycle sur le bus, et une répétition de verrait passer le PC pour l'instruction suivante sur le bus et donc brise la présence continue de $FFFE pendant 3 cycles.
Je chauffe ou je suis à la ramasse ? (ce qui est fort possible, je connais rien à ce low level en vrai.)
En effet d'une part "JMP [$FFFE]" ne présente $FFFE que pendant un cycle sur le bus, et une répétition de
Code : Tout sélectionner
LDX $FFFE
LDX $FFFE
LDX $FFFE
Je chauffe ou je suis à la ramasse ? (ce qui est fort possible, je connais rien à ce low level en vrai.)
Dernière modification par __sam__ le 21 avr. 2021 00:14, modifié 1 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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
-
- Messages : 2366
- Inscription : 06 avr. 2009 12:07
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
C'est juste, Sam, mais voir ma réponse modifiée ci-dessus.
Et cela dit, ca ne permet pas d'implémenter le double reset avec deux timings différents. Mais chaque chose en son temps, je suppose.
Et cela dit, ca ne permet pas d'implémenter le double reset avec deux timings différents. Mais chaque chose en son temps, je suppose.
-
- Messages : 7987
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
L'examen de la machine à état (5 pages à regarder avec un scan dégueux pour ma part)
On y constate qu'on a jamais la même valeur (différente de $FFFF) entre 2 cycles consécutifs. On a toujours un truc genre NNNN suivi de NNNN+/-1 quand on regarde bien l'ensemble des chemins, même quand on execute des instructions sur un seul octet (exemple ABX, NOP, COMA), le CPU en lit 2. C'est l'explication de pourquoi on a toujours un minium de 2 cycles par instruction au passage. Tout juste peut on avoir une série plus ou moins longue de $FFFF au milieu (haute impédance).
Donc en fait on se fiche de la valeur sur le bus d'adresse si c'est pas $FFFF pendant 2 cycles d'horloge au moins. Cela veut dire que tester A[13..0] == 12b11111110 pendant 2+ cycles (comptés avec E) suffit. La durée de l'appui sur le bouton reset est indiquée par le nombre de cycles durant lequel cette valeur reste à 12b11111110.
Après pour écrire ca en vhdl c'est pas mon domaine.
indique l'état du bus d'adresse cycle par cycle durant le fonctionnement normal du CPU. On y constate qu'on a jamais la même valeur (différente de $FFFF) entre 2 cycles consécutifs. On a toujours un truc genre NNNN suivi de NNNN+/-1 quand on regarde bien l'ensemble des chemins, même quand on execute des instructions sur un seul octet (exemple ABX, NOP, COMA), le CPU en lit 2. C'est l'explication de pourquoi on a toujours un minium de 2 cycles par instruction au passage. Tout juste peut on avoir une série plus ou moins longue de $FFFF au milieu (haute impédance).
Donc en fait on se fiche de la valeur sur le bus d'adresse si c'est pas $FFFF pendant 2 cycles d'horloge au moins. Cela veut dire que tester A[13..0] == 12b11111110 pendant 2+ cycles (comptés avec E) suffit. La durée de l'appui sur le bouton reset est indiquée par le nombre de cycles durant lequel cette valeur reste à 12b11111110.
Après pour écrire ca en vhdl c'est pas mon domaine.
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
C'est sur que si le port cartouche des premiers MO5 n'à pas A14 et A15 ca va pas merder
Effectivement un LDx $FFFE va paginer sur le menu et donc planter la machine, mais y à t'il des softs qui lirait en $FFFE
Effectivement un LDx $FFFE va paginer sur le menu et donc planter la machine, mais y à t'il des softs qui lirait en $FFFE
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Super Philippe !6502man a écrit : ↑19 avr. 2021 22:36Bonsoir,fxrobin a écrit : ↑19 avr. 2021 14:08je suis intéressé par te prendre 2 Multi-ROM une en version normale, une en version jeux
Peux-tu me dire combien cela fait au total avec les frais Paypal ?
Est-il-possible de les avoir en version déjà soudée : même si cela n'a pas l'air compliqué, je ne suis pas certain de mes compétences en soudure électro.
Pour le paiement tu peux directement cliquer 2 fois sur DON et choisir de prendre les frais à ta charge.
Sinon envoi moi un MP
A titre très exceptionnel je peux souder complètement les 2 kits pour te rendre service.
En retour je te demande juste de publier 2/3 photo en fonctionnement sur le post
Je te fais les dons immédiatement !
Fan d'ATARI 2600, de THOMSON MO5-TO8 et d'ATARI ST
Mes articles : https://www.fxjavadevblog.fr/retro-programming/
Membre du groupe wide-dot.
Mes articles : https://www.fxjavadevblog.fr/retro-programming/
Membre du groupe wide-dot.
-
- Messages : 2366
- Inscription : 06 avr. 2009 12:07
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Tu es à bout touchant, Sam, félicitations ! On peut juste optimiser un poil et faire un peu plus simple. Bravo !Donc en fait on se fiche de la valeur sur le bus d'adresse ...
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Salut
Ah je crois avoir trouvé
En fait tu ne check pas le bus d'adresse mais le bus de données
Car le 6809 lit X fois de suite l'adresse $FFFE
Donc, on aura X fois la même valeur sur le bus de données
Donc si on a au minimum 3 fois la même donnée sur le bus de données alors on est en reset
Vu que E tourne toujours, tu peux compter le nombre de fois ou cette donnée est apparue
Donc déterminer la longueur du Reset en fonction du nombre de fois ou est apparue cette valeurs.
Soit X la donnée sur le bus de données
Si X = X-1 alors compteur ++ sinon Compteur = 0
Si Compteur >= 500 Reset_long
Sinon Si Compteur >=3 alors Reset_court
Jacques
PS: 500 est donnée au hasard mais doit surement être plus long
Ah je crois avoir trouvé
En fait tu ne check pas le bus d'adresse mais le bus de données
Car le 6809 lit X fois de suite l'adresse $FFFE
Donc, on aura X fois la même valeur sur le bus de données
Donc si on a au minimum 3 fois la même donnée sur le bus de données alors on est en reset
Vu que E tourne toujours, tu peux compter le nombre de fois ou cette donnée est apparue
Donc déterminer la longueur du Reset en fonction du nombre de fois ou est apparue cette valeurs.
Soit X la donnée sur le bus de données
Si X = X-1 alors compteur ++ sinon Compteur = 0
Si Compteur >= 500 Reset_long
Sinon Si Compteur >=3 alors Reset_court
Jacques
PS: 500 est donnée au hasard mais doit surement être plus long
-
- Messages : 7987
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Humm.. comment ca se passe avec
Code : Tout sélectionner
LDX #$8E8E
oui car E est à la µs, donc 1/2 sec nécessite de compter sur 19 bits. Sans doute à ce niveau de valeur il vaudrait mieux utiliser une sous horloge genre 1/1024 pour mesurer des ms, ou un truc genre NE555 (je dis ca mais j'y connais rien en vrai.. je recopie des mots vus ici ou là telle l'I.A. de GPT-3)PS: 500 est donnée au hasard mais doit surement être plus long
sam (<== on sent bien le A de la partie IA avec lui ).
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
J'ai reçu les PCB aujourd'hui.
Je prépare les kits et ca part d'ici jeudi, je mettrais à jour le premier post lors des envois ..
Je prépare les kits et ca part d'ici jeudi, je mettrais à jour le premier post lors des envois ..
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
mise à jour des expéditions
rjiji , meridian , philgood1351fr => expédié
rjiji , meridian , philgood1351fr => expédié
Re: [ THOMSON MO5/MO6 ] MEMO5 et MULTIROM
Mokona et Fxrobin => Expédié