[WIP 100%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
- Bouz
- Référent Technique
- Messages : 1079
- Enregistré le : mer. 22 déc. 2021 18:52
- Localisation : Hérault
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Et hop, j'ai repris le code générique d'exécution de tests sur la NeoGeo.
Après en avoir pas mal bavé pour trouver une instruction me permettant de sauter à l'adresse pointée par un registre, et fait 12000 essais sans y arriver, j'ai choisi la solution du bricoleur du dimanche....
J'ai injecté dans la ROM un upcode jmp (soit dc.w $4ef9), et le BricoNeo vient injecter l'adresse du test juste derrière. En sautant sur cet opcode, je déclenche un 2ème saut à l'adresse voulue.
Si on ne comprend pas, c'est compliqué, et si on comprend, c'est crade.
En attendant, ça marche, alors je poursuis .
Je vais mainteannt essayer de gérer des types de sorties (un word, une chaîne de caractères, une liste de words, ...), à la fois côté BricoNeo et côté 68000. Ca me permettra de renvoyer des résultats de diag à la carte, des dumps mémoire, et n'importe quoi d'autre.
Après en avoir pas mal bavé pour trouver une instruction me permettant de sauter à l'adresse pointée par un registre, et fait 12000 essais sans y arriver, j'ai choisi la solution du bricoleur du dimanche....
J'ai injecté dans la ROM un upcode jmp (soit dc.w $4ef9), et le BricoNeo vient injecter l'adresse du test juste derrière. En sautant sur cet opcode, je déclenche un 2ème saut à l'adresse voulue.
Si on ne comprend pas, c'est compliqué, et si on comprend, c'est crade.
En attendant, ça marche, alors je poursuis .
Je vais mainteannt essayer de gérer des types de sorties (un word, une chaîne de caractères, une liste de words, ...), à la fois côté BricoNeo et côté 68000. Ca me permettra de renvoyer des résultats de diag à la carte, des dumps mémoire, et n'importe quoi d'autre.
- Bouz
- Référent Technique
- Messages : 1079
- Enregistré le : mer. 22 déc. 2021 18:52
- Localisation : Hérault
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
C'est bon pour l'envoi de chaînes de caractères. C'est d'une simplicité insolente!
J'ai câblé une macro pour envoyer du texte sur le port plutôt qu'une "fonction" ou "routine", pour ne pas utiliser le stack en WRAM (comme ça, ça marche même si la WRAM est morte).
Du coup, j'ai pu recâbler mon test de WRAM, et sur mon slot qui marche, ça donne ça...
On se connecte sur le BricoNeo avec Putty, qui nous crache à la figure toutes ses options (pas sûr que je laisse ça comme ça).
On peut lister les test sprésents dans la ROM (commande TestInfo)..
Puis je lance le test 1 (test de la WRAM). Ca prend moins d'une seconde, et ça me sort le résultat:
Si je débranche mon slot qui marche et que je branche l'un de ceux qui ne fonctionnent pas (mais qui ont un CPU qui marche), j'obtiens ça:
Prochaine fonctionnalité à câbler sur le BricoNeo: le dump mémoire. Ca permettra de savoir dans quel état est la RAM à la sortie du test pour en tirer les conséquences (quels bits sont morts, par exemple).
Après ça, on devrai tpouvoir câbler n'importe quel test côté 68000 sans toucher au code du BricoNeo.
Au passage, notez l'interface VS Code. On tape le code, on fait F5, il part sur le BricoNeo. Le seul truc pénible, c'est qu'il faut déconnecter Putty pour uploader du nouveau code 68000.
J'ai câblé une macro pour envoyer du texte sur le port plutôt qu'une "fonction" ou "routine", pour ne pas utiliser le stack en WRAM (comme ça, ça marche même si la WRAM est morte).
Du coup, j'ai pu recâbler mon test de WRAM, et sur mon slot qui marche, ça donne ça...
On se connecte sur le BricoNeo avec Putty, qui nous crache à la figure toutes ses options (pas sûr que je laisse ça comme ça).
On peut lister les test sprésents dans la ROM (commande TestInfo)..
Puis je lance le test 1 (test de la WRAM). Ca prend moins d'une seconde, et ça me sort le résultat:
Si je débranche mon slot qui marche et que je branche l'un de ceux qui ne fonctionnent pas (mais qui ont un CPU qui marche), j'obtiens ça:
Prochaine fonctionnalité à câbler sur le BricoNeo: le dump mémoire. Ca permettra de savoir dans quel état est la RAM à la sortie du test pour en tirer les conséquences (quels bits sont morts, par exemple).
Après ça, on devrai tpouvoir câbler n'importe quel test côté 68000 sans toucher au code du BricoNeo.
Au passage, notez l'interface VS Code. On tape le code, on fait F5, il part sur le BricoNeo. Le seul truc pénible, c'est qu'il faut déconnecter Putty pour uploader du nouveau code 68000.
- Xrider
- Administrateur
- Messages : 3717
- Enregistré le : sam. 14 sept. 2019 10:47
- Localisation : MaskRom
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Il partage probablement les memes pinout pour la transmission ?
- Bouz
- Référent Technique
- Messages : 1079
- Enregistré le : mer. 22 déc. 2021 18:52
- Localisation : Hérault
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Oui, j'utilise le port série virtuel via le câble USB pour uploader la ROM et pour envoyer des commandes. C'est normal, mais ça m'embête un peu ici.
- ragefan
- Delta User Lv3
- Messages : 168
- Enregistré le : mer. 22 nov. 2023 21:08
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Énorme avancée ! Bravo !@Bouz
- Xrider
- Administrateur
- Messages : 3717
- Enregistré le : sam. 14 sept. 2019 10:47
- Localisation : MaskRom
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Il doit y avoir une solution soft a ce problème, regarde coté lib arduino, "SoftwareSerial".
Il doit y avoir son equivalent
- Bouz
- Référent Technique
- Messages : 1079
- Enregistré le : mer. 22 déc. 2021 18:52
- Localisation : Hérault
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
C'est pas mal lié au fait que je veux pouvoir tourner avec un terminal. Ca m'oblige à rester connecté poir interagir avec la carte.
Je vais réfléchir à des contournements!
Je pourrais utiliser les broches que j'ai exposées pour l'I2C, mais je ne suis pas très chaud.
Je vais réfléchir à des contournements!
Je pourrais utiliser les broches que j'ai exposées pour l'I2C, mais je ne suis pas très chaud.
- Bouz
- Référent Technique
- Messages : 1079
- Enregistré le : mer. 22 déc. 2021 18:52
- Localisation : Hérault
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Petits progrès du jour: j'ai câblé une fonctionnalité de dump mémoire.
Différence par rapport à la première version (grosse carte) du BricoNeo: le dump est instantané!
J'ai mis le code 68000 en face pour qu'on voie à quel point il est simple de pousser de la donnée vers le BricoNeo depuis la NeoGeo, simplement avec des macros (donc sans utiliser la WRAM).
Voilà ce que ça donne quand je dumps l'emplacement de la ROM qui contient le code BricoNeo:
Et après un test mémoire en échec, on peut se faire un petit dump de la WRAM pour voir... et on s'aperçoit que la UPPER a un souci!
De temps en temps, j'ai des comportements bizarres de l'interface. Aucun doute que j'ai dû faire des bêtises avec tous les tableaux que je manipule dans tous les sens. Un peu de boulot en perspective!
J'avais pensé à la base donner accès automatiquement à une série de tests implémentés dans la ROM NeoGeo. Je me dirige plus vers des fonctions étendues que vers des tests (les dumps, par exemple). Je vais probablement changer la nomenclature et passer de "Test" à "Ext" (pour extension). En gros, tout ce qu'on peut faire avec le BricoNeo si on a le code correspondant dans la ROM.
A suivre!
Différence par rapport à la première version (grosse carte) du BricoNeo: le dump est instantané!
J'ai mis le code 68000 en face pour qu'on voie à quel point il est simple de pousser de la donnée vers le BricoNeo depuis la NeoGeo, simplement avec des macros (donc sans utiliser la WRAM).
Voilà ce que ça donne quand je dumps l'emplacement de la ROM qui contient le code BricoNeo:
Et après un test mémoire en échec, on peut se faire un petit dump de la WRAM pour voir... et on s'aperçoit que la UPPER a un souci!
De temps en temps, j'ai des comportements bizarres de l'interface. Aucun doute que j'ai dû faire des bêtises avec tous les tableaux que je manipule dans tous les sens. Un peu de boulot en perspective!
J'avais pensé à la base donner accès automatiquement à une série de tests implémentés dans la ROM NeoGeo. Je me dirige plus vers des fonctions étendues que vers des tests (les dumps, par exemple). Je vais probablement changer la nomenclature et passer de "Test" à "Ext" (pour extension). En gros, tout ce qu'on peut faire avec le BricoNeo si on a le code correspondant dans la ROM.
A suivre!
- Illusionrip
- Référent Technique
- Messages : 138
- Enregistré le : lun. 27 nov. 2023 17:13
- Localisation : 7nm
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
super travail, ca ouvre des possibilités incroyable, mais du temps a passer aussi
tu assures
tu assures
- Bouz
- Référent Technique
- Messages : 1079
- Enregistré le : mer. 22 déc. 2021 18:52
- Localisation : Hérault
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Merci!
Je ne suis plus très loin de pouvoir t'envoyer une carte. Je n'ai quasiment pas retouché au hardware et a priori on est plutôt pas mal.
Je ne suis plus très loin de pouvoir t'envoyer une carte. Je n'ai quasiment pas retouché au hardware et a priori on est plutôt pas mal.
- Bouz
- Référent Technique
- Messages : 1079
- Enregistré le : mer. 22 déc. 2021 18:52
- Localisation : Hérault
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Hello! Aujourd'hui, atelier debugging du tampon circulaire du DMA de sortie qui semble la source des problèmes. Qu'est-ce qu'on s'amuse .
La bonne nouvelle, c'est que d'ici 2 semaines, je devrais pouvoir réduire la charge au boulot et passer un peu plus de temps sur mes projets perso (et donc refaire des vidéos, par exemple).
La bonne nouvelle, c'est que d'ici 2 semaines, je devrais pouvoir réduire la charge au boulot et passer un peu plus de temps sur mes projets perso (et donc refaire des vidéos, par exemple).
- Xrider
- Administrateur
- Messages : 3717
- Enregistré le : sam. 14 sept. 2019 10:47
- Localisation : MaskRom
- Contact :
Re: [WIP 83%] Projet BricoNeo - Entrées et sorties via le connecteur de la ROM système
Félicitation Aurèlien !
Aujourd'hui c'est une journée pleine de bonne chose pour le dev !
viewtopic.php?p=30258#p30258
Aujourd'hui c'est une journée pleine de bonne chose pour le dev !
viewtopic.php?p=30258#p30258