Au fil du temps et des réparations, je me suis dit que je pourrais faire la même chose, mais avec des LED, afin de voir directement les pistes qui ne réagissent pas et ainsi trouver les problèmes beaucoup plus rapidement.
Entre-temps, j’ai reçu un Briconeo pour pousser les tests encore plus loin. Et franchement, ça a complètement changé ma façon de faire mes réparations et mes analyses.
Je me suis alors posé une question : pourquoi ne pas essayer de créer une interface sur le port cartouche qui puisse aller encore plus loin que le Briconeo, mais cette fois du côté graphique ?
Pourquoi passer par le port cartouche ?
Le bus graphique est en quelque sorte caché du bus 68000. Le CPU ne peut pas accéder directement aux VRAM : il doit passer par le LSPC2 pour y écrire.
En revanche, en se plaçant directement sur le port cartouche, on a accès au bus graphique ainsi qu’aux différents signaux qui permettent de le synchroniser et de le temporiser.
Et là, ça devient intéressant.
L’idéal serait donc d’avoir une seule interface capable à la fois de piloter le Briconeo et d’effectuer des tests beaucoup plus spécifiques sur la partie GFX de la Neo Geo.
L’idée du Bricopain — le copain du Briconeo — était née.
Un projet un peu gros pour moi…
Le problème, c’est que tout ça est quand même un peu gros pour moi.
Cela fait donc maintenant presque un an que je me renseigne sur les composants, la logique numérique, les FPGA, les différentes façons de récupérer les signaux, de les analyser, etc.
Et petit à petit, j’ai commencé à designer mes propres cartes.
Le Bricopain sera donc à la fois un outil d’analyse visuelle et logicielle.
Un ESP32 sera chargé de piloter une interface Web et de programmer le FPGA. Le FPGA contiendra toute la logique nécessaire pour récupérer les différents signaux du bus graphique, les synchroniser et les analyser.
Et évidemment, pour faire cohabiter tout ce petit monde avec la logique 5 V de nos vieilles Neo Geo : beaucoup, mais alors beaucoup de level shifters !
Un défi avant tout personnel
Cette carte ne sera certainement pas destinée à la vente. Elle est relativement coûteuse à produire et, depuis le début, je vois surtout ce projet comme un défi personnel, bien plus que comme un projet commercial.
Après des mois à travailler dessus, j’ai finalement lancé un premier batch de PCB en production.
Quelques semaines plus tard, les cartes arrivent.
Je commence le montage avec un peu la boule au ventre, en pensant à toutes les conneries que j’ai forcément dû faire… ou à tous les petits détails que j’ai pu oublier.
Bon, évidemment, il y avait quelques trucs.
Les paires différentielles, par exemple… disons que ce n’était pas exactement ça. Mais quand tu ne sais pas, tu ne sais pas. C’est aussi comme ça qu’on apprend.
Et finalement, après quelques corrections et pas mal de vérifications, ça commence à fonctionner plutôt pas mal !
J’arrive maintenant à flasher le firmware de l’ESP32 et, surtout, j’arrive même à communiquer avec le Briconeo d’Aurélien via la liaison UART.
Ce n’est encore que le début, mais voir les deux communiquer pour la première fois après tout ce travail, c’est déjà une sacrée étape.
Maintenant, il va falloir s’attaquer sérieusement à la partie FPGA et aux signaux graphiques de la Neo Geo.
Et c’est probablement là que les choses vont vraiment devenir intéressantes…
to be continued







