Gamoover

[move]Bienvenue sur Gamoover, portail francophone de l'arcade.

pcb, mame, eproms, schemas

Démarré par Teclis01, Samedi 06 Juin 2015, 00:58:05 AM

Teclis01

Bonjour bonjour!

J'essaye de me renseigner si besoin un jour il m'arrivait de devoir ressusciter une de mes pcb...
Je lis sur de nombreux topics que des gens ressuscitent des jeux via les informations de mame. Je veux bien le croire mais moi dans une rom zippé j'ai plein de fichier avec des "id" mais aucun schema ne me dit que tel id c'est tel eprom. Savez vous ou, peut on trouver ces informations?

Merci!
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.

Tonton_Hibou

Je pense que tu auras sûrement beaucoup plus de réponses en te présentant dans la rubrique appropriée ici  :fleche:

http://www.gamoover.net/Forums/index.php?topic=42.msg539508;topicseen#msg539508

<:)

Teclis01

Ce n'est pas l'objet du topic, ceci dit j'en convient même si cela fait 4 ans que je suis tombé dans l'arcade :D
je vais me présenter avec 4 ans de retard donc... XD et pour ma question ?
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.

Teclis01

#3
Si qqun a un tuto, une vidéo, une explication, je prends! A plus forte raison que je me suis présenté! :D
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.

Mutation

#4
Slt,

En fait, tu ouvres le driver Mame du système dans lequel se trouve ton jeu, tu regardes la taille de la rom à burner à l'emplacement prévu, le pinout : mask ou eprom, et le nombre de broches (pins) que peut accueillir le socket à l'emplacement prévu (où l'emplacement si tu soudes directement), et à partir de ça ça te permet de déterminer l'eprom à utiliser en fait.

On va prendre par ex, les roms sonores de Forgotten Worlds (CPS-1) :

ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
   ROM_LOAD( "lw-03u.12e", 0x00000, 0x20000, CRC(807d051f) SHA1(720e4733787b9b11f4d1cdce0892b69475802844) )
   ROM_LOAD( "lw-04u.13e", 0x20000, 0x20000, CRC(e6cd098e) SHA1(667f6e5736f76a1c4c450c4e2035574ea89d7910) )

Je note que chaque rom fait 20000 (0x20000 = 128 Ko en hex), et sur ma B-board, je note que les sockets en 12e et 13e peuvent accueillir une eprom avec jusqu'à 32 pins, que ce n'est pas un pinout mask (donc ce n'est pas une 27C1000 à utiliser) parce que j'ai une B-board JEDEC, alors j'utilise une 27C010 (128 Ko, 32 pins, pinout eprom) pour burner chaque rom sonore.

Parfois, sur le PCB, tu as le type d'eprom à utiliser carrément sérigraphié à l'emplacement prévu.

Iro

C'est dans les sources de mame. Soit en en ligne (https://github.com/mamedev/mame) , soit tu les downloads. Comme dit mutation ,les infos sont généralement dans les sources du driver, dans
src/mame/drivers/

Citation de: Teclis01 le Samedi 06 Juin 2015, 01:14:48 AM
Ce n'est pas l'objet du topic, ceci dit j'en convient même si cela fait 4 ans que je suis tombé dans l'arcade :D
je vais me présenter avec 4 ans de retard donc... XD et pour ma question ?
Mieux vaut tard que jamais  ;)
"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

LES TUTOS DE GAMO   

Teclis01

Coucou!

Bon déjà je dois admettre que je suis content que qqun de calé réponde :) Donc un grand merci!

Mais du coup d'autres questions!
-Comment reconnait on un pinout mask? et que veut dire ce terme technique barbare?
J'ai cherché sur google sans trouver qqch de compréhensible facilement, le pinout je vois ce que c'est mais "mask" à part les masques en programmation en C, Rien ne me vient à l'esprit. Je pense avoir compris en navigant que chaque constructeur/éditeur a des pinout mask particulier mais c'est vraiment tout...

-Dans ton exemple, les eproms 12 et 13 ont la même taille comment sais tu ou es la 12 et ou est la 13? utilises tu des schematics? le switch test (dans le cas ou la pcb demarre un minimum)?

-J'ai télécharger la rom forgottn.zip (US me semble) et je ne trouve pas le contenu que tu donnes du "rom load" est ce quand tu lances la rom que tu trouves ça dans les logs ou ailleurs?

Je cherche vraiment a comprendre la démarche dans son intégralité avec les quelques connaissances que j'ai qui j'espère suffira.

Pas simple votre jargon ^^
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.

Mutation

#7
Les masks ressemblent à des eproms mais ne sont programmables qu'une seule fois (sans fenêtre) et ont généralement un pinout diff. On peut les remplacer par des eproms avec un pinout mask.

Eprom pinout mask (27C1000 ou 27C301) 128 Ko 32 pins : 2 pins différents du pinout eprom : le 2 et le 24



Eprom pinout eprom (27C010 ou 27C1001) 128 Ko 32 pins :





Le détail des roms se trouvent dans le driver des sources Mame (pour Forgotten Worlds, dans le driver CPS-1).

L'emplacement est parfois noté sur les roms à la place de l'extension .bin, dans l'exemple : .12e et .13e.

Teclis01

Ok je penses avoir saisis comment tu procèdes.

grosso modo et vulgarisé :

1-je récupère la rom de la version (si besoin un romident pour retrouver c'est laquelle) voir même récupérer une photo de la pcb de qualité pour voir l'emplacement de chaque eprom.
2-j'achète/récupère les eprom et eprom de type "mask" à refaire en fonction de la taille définie en hexa.
3-je programme le tout
4- je remplace

Est ce bien ça?
Si oui la prochaine étape c'est d'apprendre a utiliser une logic probe :P pour corriger les pannes physique si elles arrivent!

Merci Mutation pour ton aide qui m'est précieuse :)
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.

Mutation

Oui, en gros c'est ça, excepté que je n'utilise pas rom ident (idéal pour identifier un jeu inconnu) mais carrément toujours les dernières sources de Mame quand je connais le jeu.

Les valeurs en hex qui indiquent la taille de la rom, c'est toujours le second alignement, le 1er indique l'ordre de lecture où commence chaque rom.

Teclis01

Si tu utilises les dernière sources de Mame... ça veut dire que tu fais a chaque fois un set complet d'eproms du jeu?
tu désoudes tout les eproms à refaire?

J'ai omis une question qui vaut le coup quand même... comment reconnais tu une eprom avec un pinout normal et un pinout mask?

Question subsidiaire : Si tu l'as deja fait, quand tu cherches une panne sur une pcb ou autre, te bases tu sur les eproms (gfx, sound,...) pour detecter de quelle eprom ca pourrait venir?
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.

Mutation

#11
Non, en général, d'une version à une autre de Mame, ça ne change pas, uniquement quand c'est des bad dumps ou partiellement dumpé.
S'il n'y a pas déjà de support, j'en soude un, ça évite de devoir déssouder/ressouder à chaque fois en cas de pb.

En général, dans les pannes, c'est moins fréquent que ça vienne directement des eproms (excepté quand elles sont clipsées de travers), c'est plutôt ce qui y est associé : des TTLs, des RAMs... des pistes coupées... pour identifier la panne, ça dépend de ce que tu as au boot, pb de tiles, Gfx, de couleurs etc.

Pour vérif que tes roms ne sont pas corrompues, tu les dumpes et tu compares les checksums (CRC32 ou SHA1) avec celles déjà dumpées qui figurent dans Mame.

Teclis01

Tu as raté de répondre à une question même si je n'arrête pas d'en poser et je pense que c'est normal! :D

comment reconnais tu une eprom avec un pinout normal et un pinout mask? => aucun identifiant dessus mais... justement a quel fichier correspond t' il du coup ?

Aparté panne : selon le type de panne tu vas chercher ou du coup sur une pcb?
Pour un problème de tiles?
et gfx?
et couleurs?
et son?

J'aurais tendance a partir du peigne jamma sans trop savoir comment procéder...
Ah si peut être pour le son, je partirais des broches speaker du jamma et essayerait de remonter le circuit pour voir ou il est coupé (si aucun son).
Je ne suis même pas sur que ma démarche est correcte pour le son, le reste des problèmes possibles par contre c'est le flou le plus total... a quoi peut/devrait ressembler un signal RGB, ou et a quoi ressemble une tile niveau electrique, ...? pas la moindre idée.
J'espère que mon étalage de manque de connaissance ne va pas attiser la moquerie... je dois pas être le seul :D
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.

Mutation

#13
Quand la taille de la rom est connue et le nombre de pins aussi, il suffit soit de regarder le PCB (le CPS-1 avec la B-board JEDEC par ex), ses jumpers et ce qui est éventuellement sérigraphié, soit de regarder l'eprom ou le mask retiré (les masks ou les 27C1000 sur le Sega System 16 par ex).

Après, les pannes, c'est autre chose, c'est vraiment au cas par cas suivant le diagnostic de la panne. Il faut s'équiper d'un multimètre et d'un oscillo, puis retracer jusqu'à la source du pb où il n'y a rien en sortie ou un signal qui fait défaut etc, et quand les schematics sont dispos, ça aide davantage, surtout sur les gros PCBs peu documentés.

Teclis01

Oki merci!

Pour les pannes je ferais un autre topic pour connaitre et comprendre quelques techniques de base car c'est très interessant et utile des fois...
Il vaut mieux poser une question et passé pour bête 5 minutes que de le rester toute sa vie.