[WIP 100%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Chaine Youtube de notre ami "Referent Tech" spécialisé dans la reparation des consoles NeoGeo et autres
Répondre
Avatar du membre
Kr4ken
Modérateur
Modérateur
Messages : 1189
Enregistré le : mar. 19 avr. 2022 06:20
Localisation : Istres (13)
Pays : 🇳🇱 NL

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Kr4ken »

Je sais je sais 😁
Juste je me disais en programmation si tu galère un peu pour t’alléger.
Mais en effet tu es dedans et tu gères ton truc de bout en bout du coup tu as l’overview de ton projet 👍
Kr4ken
Avatar du membre
Bouz
Expert Technique
Expert Technique
Messages : 1578
Enregistré le : mer. 22 déc. 2021 18:52
Localisation : Hérault
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Bouz »

Avancée timide ce soir: je peux faire des dumps mémoire en vue 68000 en powershell :). Par contre, je n'y arrive pas via l'Arduino.
Toujours des soucis de communication en écriture, probablement autour de la parité des adresses des instructions, il faut que je gratte encore et toujours!
Avatar du membre
Kr4ken
Modérateur
Modérateur
Messages : 1189
Enregistré le : mar. 19 avr. 2022 06:20
Localisation : Istres (13)
Pays : 🇫🇷 FR

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Kr4ken »

Allé courage !
Tu vas nous faire un truc tip top 👍
Kr4ken
Avatar du membre
Bouz
Expert Technique
Expert Technique
Messages : 1578
Enregistré le : mer. 22 déc. 2021 18:52
Localisation : Hérault
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Bouz »

Eh ben finalement, ce n'était pas un souci de logique programmable, de 68000 ou de microcontrôleur!
Voilà pourquoi je n'arrivais pas systématiquement à récupérer la valeur du port de sortie du BricoNeo...

Pour support, une capture de l'oscillo au moment de la révélation:
Interférence.png
La légende:
- En vert (en bas pour nos amis daltoniens): le signal /OE de l'EPROM, envoyé par la NeoGeo et récupéré via la nappe
- En rose (juste au-dessus), son inversion par le GAL, qui produit ainsi son propre signal d'horloge, qui va servir à compter les accès à l'EPROM pour récupérer le 3ème après la demande d'écriture dans le port. Le GAL marche avec des impulsions d'horloge positives, et l'EPROM négatives, pas de bol :)
- En jaune (au-dessus), la détection d'une demande d'accès. Il faut regarder uniquement la première impulsion, les autres alternent (en fait, il s'agit du bit e poids faible d'un compteur 3 bits qui compte les accès à l'EPROM)
- En bleu (tout en haut), la commande du registre à décalage qui enregistre l'adresse demandée et s'en sert de données pour le port de sortie (c'est là toute la feinte pour écrire sur un truc qui fait des lectures, on en reparlera plus tard sans doute!)

Et ce qui saute aux yeux, et que je n'avais pas regardé, ce sont:
- la mini impulsion positive jaune à gauche, et la mini impulsion négative qui suit
- les indentations dans la courbe rose, qui est censée correspondre à la négation des signaux /OE de l'EPROM
- les petits pics au niveau du 0V sur la courbe verte, qui est le signal venu de la NeoGeo.

Alors maintenant, la cascade de problèmes:
- Le signal qui sort de la NeoGeo est nickel
- Il traverse la nappe, et se fait perturber, c'est le signal vert.
- Les petits pics sur le signal vert sont au-dessus de la barre de détection du GAL, qui en plus est très rapide
- Le GAL amplifie joyeusement les pics, et les transforme en impulsions TTL légitimes, pour les faire rentrer dans l'horloge du GAL
- Le compte n'est pas bon, les instructions sont comptées n'importe comment
- L'impulsion bleue, qui fait la lecture effective de la valeur du port, n'est pas du tout au bon endroit.

Bon, par contre, la plupart du temps, ça marche.
Mais quand on fait un dump ou quand on turbine un peu trop, les interférences s'accentuent et les lectures deviennent chaotiques.

Maintenant, comme solutions, ce que je vois:
- Un condo de très faible valeur à l'arrivée du signal OE sur la plaque
- Une bobine de filtrage, mais je ne suis pas équipé pour tester ça
- Une ferrite, mais pareil, je n'en ai pas sous la main (ou alors je les pique à un vieux MVS HS?)

Comme ça, je sais ce que je fais ce soir...
En tout cas, bien content d'avoir trouvé. Le facteur environnemental qui introduit des bugs aléatoires, ça me rendait dingue!
Avatar du membre
Xrider
Administrateur
Administrateur
Messages : 5582
Enregistré le : sam. 14 sept. 2019 10:47
Localisation : MaskRom
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Xrider »

Ah, ça commence a devenir très interessant ton BricoNeo :ange: , Congrat again Aurelien :super:
- En rose (juste au-dessus), son inversion par le GAL, qui produit ainsi son propre signal d'horloge, qui va servir à compter les accès à l'EPROM pour récupérer le 3ème après la demande d'écriture dans le port. Le GAL marche avec des impulsions d'horloge positives, et l'EPROM négatives, pas de bol :)
Une petite porte logique NOT inverseur, style IC 7404 aurais suffit ? Cependant, un GAL ça se programme a volonté :merci:
Le facteur environnemental qui introduit des bugs aléatoires, ça me rendait dingue!
Ya rien de pire, les EMI c'est toute une science, qui avant d'étre découvert, reste de la sorcellerie :diable:
- Un condo de très faible valeur à l'arrivée du signal OE sur la plaque
- Une bobine de filtrage, mais je ne suis pas équipé pour tester ça
- Une ferrite, mais pareil, je n'en ai pas sous la main (ou alors je les pique à un vieux MVS HS?)
Sans oublier des resistances pullup / pulldown :merci:
Delta Store - Modchip - Mods - Tools - Modification pour vos consoles de jeux video
Delta island - Jeux Vidéo - Retro-Ingénierie - Développement Hardware & Software
Avatar du membre
Bouz
Expert Technique
Expert Technique
Messages : 1578
Enregistré le : mer. 22 déc. 2021 18:52
Localisation : Hérault
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Bouz »

Xrider a écrit : jeu. 17 août 2023 20:17 Une petite porte logique NOT inverseur, style IC 7404 aurais suffit ? Cependant, un GAL ça se programme a volonté :merci:
Ca aurait pu, mais j'ai 3 GAL sur la plaque. Deux utilisés en compteur 16 bits, et un qui fait le contrôle de bus. Et vu qu'il me restait plein de broches disponibles dessus, je l'ai utilisé pour faire le NOT sur le signal /OE :). On peut les utiliser à la fois en synchrone et asynchrone (comme un CPLD ou un FPGA, d'ailleurs), j'adore ces machins!

J'aurai peut-être besoin par contre, d'ajouter une porte OR tôt ou tard pour faire la gestion d'alimentation du GAL en question, qui bouffe du courant à bloc.

Il ne leur manque que la fonction trigger de Schmitt, c'est ce qui pourrait me manquer.
Xrider a écrit : jeu. 17 août 2023 20:17 Sans oublier des resistances pullup / pulldown :merci:
Tu penses qu'avec du pulldown, en l'occurrence, je pourrais réduire ces pics? Je vais tenter des trucs, je suis en train de me mettre en condition ;).
Concernant les parasites, je me dis qu'avec des GAL à 7,5ns, je devrais voir à l'oscillo tout ce qui pourrait les perturber.
Avatar du membre
Kr4ken
Modérateur
Modérateur
Messages : 1189
Enregistré le : mar. 19 avr. 2022 06:20
Localisation : Istres (13)
Pays : 🇫🇷 FR

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Kr4ken »

J’ai mis tout ça dans Google trad et il a rigolé 😁
Kr4ken
Avatar du membre
Bouz
Expert Technique
Expert Technique
Messages : 1578
Enregistré le : mer. 22 déc. 2021 18:52
Localisation : Hérault
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Bouz »

Kr4ken a écrit : jeu. 17 août 2023 21:39 J’ai mis tout ça dans Google trad et il a rigolé 😁
Tous les mots existent, pourtant...


J'ai fait un test avec un trigger de Schmitt histoire de (mais ça fait une puce en plus, ça ne m'arrange pas)
Avec un trigger de Schmitt
Avec un trigger de Schmitt
Le résultat est édifiant. Avec des lecture à 4MHz, je signal est quasi décalé de 90°! :)
Le résultat est édifiant
Le résultat est édifiant
J'ai de bons résultats avec une résistance de 300 ohms en série avec le signal (merci la capacité parasite?), mais ça sent la solution roulette qui ne marchera pas avec toutes les nappes, ni sur le PCB...

J'ai tenté du pulldown sans grand succès, j'imagine que ça joue sur l'impédence d'arrivée, mais je ne trouve pas de valeur qui ne déforme pas trop mon signal.

Les condos, à cette fréquence, même avec ce que j'ai de plus petit (10pF), ça flingue le signal.

Alors je me suis peut-être loupé et je vais continuer à essayer des choses (mon installation est très discutable, accessoirement)...

Je vais voir côté ferrite / inductances. J'ai des doutes sur les ferrites, je pense être à trop basse fréquence pour elles...?
Avatar du membre
Bouz
Expert Technique
Expert Technique
Messages : 1578
Enregistré le : mer. 22 déc. 2021 18:52
Localisation : Hérault
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Bouz »

Bon, je viens de refaire des tests avec des pullups ET pulldowns. Voilà bien un truc que je n'avais jamais fait! Ca a l'air de bien corriger le signal, au moins sans PCB derrière!
Je suis assez frileux à l'idée de mettre l'équivalent de 400 ohms en parallèle sur l'alimentation, mais en réfléchissant, ça tire du 12,5mA, soit 31mW par résistance. Ca reste très correct et le signal a une bien meilleure tête. Je vais voir jusqu'où je peux tirer comme ça :).

J'ai fait des tests avec des diodes Shottky en protection, ça efface aussi pas mal les oscillations (et les dépassements), mais ça ne règle pas tout aussi bien que les résistances!
Avatar du membre
Kr4ken
Modérateur
Modérateur
Messages : 1189
Enregistré le : mar. 19 avr. 2022 06:20
Localisation : Istres (13)
Pays : 🇫🇷 FR

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Kr4ken »

Oh je sais que tous les mots existent c’est moi qui suis aux fraises 😁
Kr4ken
Avatar du membre
Bouz
Expert Technique
Expert Technique
Messages : 1578
Enregistré le : mer. 22 déc. 2021 18:52
Localisation : Hérault
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Bouz »

Le beau patch que voilà!
Le beau patch que voilà!
Le moche résultat que voilà!
Le moche résultat que voilà!
Il va falloir trouver autre chose!
Peut-être qu'avec une nappe plus courte....
Avatar du membre
Xrider
Administrateur
Administrateur
Messages : 5582
Enregistré le : sam. 14 sept. 2019 10:47
Localisation : MaskRom
Pays : 🇫🇷 FR
Contact :

Re: [WIP 80%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système

Message par Xrider »

Les resistances de pulldown / pullup sont toujours entre 1k et 10K, 400Ohms, ca me semble trop bas comme resistance ;)
On met rarement pullup/ pulldows sur la meme ligne. Si ton signal est a l'état bas quand tu n'as pas de com => Pull down, resistance entre 1K et 10K vers le GND er vice versa ;)
Delta Store - Modchip - Mods - Tools - Modification pour vos consoles de jeux video
Delta island - Jeux Vidéo - Retro-Ingénierie - Développement Hardware & Software
Répondre

Retourner vers « Aurélien / Bouz "Technique" »