Converts Sega System 32 (désuicide & conversion)¶
Le System 32 a une pile suicide : le programme est chiffré et déchiffré via un module/carte-fille de sécurité. Pile morte = jeu mort. Bonne nouvelle : tous les jeux ont été patchés/déchiffrés par la communauté — on désuicide en gravant des ROM déchiffrées (souvent une seule) et en retirant le module. Les conversions se font par ROM board compatible.
| Champ | Valeur |
|---|---|
| Plateforme | Sega System 32 / Multi 32 |
| Type | désuicide (ROM déchiffrées) + conversion par ROM board |
| Difficulté | 🟡 (désuicide 1 ROM) → 🟠 (conversion complète) |
| Suicide ? | Oui — programme chiffré, clé dans le module de sécurité à pile |
Architecture¶
| Bloc | System 32 | Multi 32 |
|---|---|---|
| CPU | NEC V60 @ 16,1 MHz | NEC V70 @ 20 MHz |
| CPU son | Z80 @ 8,05 MHz | idem |
| Son | 2× YM3438 + Ricoh RF5C68 | MultiPCM (YMW-258-F) |
| Écran | 1 moniteur | 2 moniteurs (dual screen) + plus de RAM |
Le V60/V70 partagent le même jeu d'instructions (compatibilité V60/V70/V80), mais Multi 32 ≠ System 32 côté matériel (voir conversion inter-plateforme plus bas).
Le suicide & le désuicide¶
- Le programme est chiffré ; une carte-fille / module de sécurité contient la clé (SRAM sur pile). Pile morte = plus de déchiffrement = carte muette.
- Désuicide : graver des ROM déchiffrées et retirer le module de sécurité (la carte n'a plus besoin de déchiffrer).
Souvent UNE seule ROM à changer
Dans la majorité des cas, une seule ROM doit être remplacée par sa version déchiffrée pour que le jeu tourne sans le module — parfois une seconde pour corriger le checksum. La communauté a publié les ROM patchées de tous les jeux System 32.
Convertir vers un autre jeu¶
La conversion se fait au niveau de la ROM board, à condition d'utiliser le bon type de carte :
| Type de ROM board | Chips |
|---|---|
| « Big » | 18 puces |
| « Small » | 20 puces |
Chaque type est compatible avec certains titres. Pour convertir :
- Vérifier que le jeu cible utilise le même type de ROM board (Big/Small) que ta carte donneuse.
- Graver les ROM déchiffrées du jeu cible (plus besoin du module de sécurité).
- Installer sur la ROM board, régler les DIP.
- Tester (image, son YM3438/RF5C ou MultiPCM selon plateforme).
Quelle EPROM pour remplacer une puce grillée ?¶
(Architecture de la carte & pannes : PCB Sega System 32.)
Règle de conversion taille → EPROM (puces 27C 8 bits, DIP32 sauf mention) :
| Taille dump | Densité | EPROM 8 bits (DIP32) | Variante 16 bits / mask (DIP40/42) |
|---|---|---|---|
| 64 Ko | 512 Kbit | 27C512 | — |
| 128 Ko | 1 Mbit | 27C010 / 27C1001 | — |
| 256 Ko | 2 Mbit | 27C020 / 27C2001 | — |
| 512 Ko | 4 Mbit | 27C040 / 27C4001 | 27C400 / 27C4096 (brochage mask) |
| 1 Mo | 8 Mbit | 27C080 / 27C801 | 27C800 (16 bits) |
| 2 Mo | 16 Mbit | — | 27C160 (1M×16) / 27C322 (2M×16) |
epr- = EPROM reprogrammable · mpr- = mask ROM d'usine
Dans les sets, epr-xxxxx = EPROM (remplaçable directement par la même densité).
mpr-xxxxx = mask ROM gravée en usine : si elle grille, on la remplace par une
EPROM de densité équivalente, mais le brochage mask ≠ EPROM (surtout ≥ 4 Mbit et
en 16 bits) → il faut souvent un adaptateur de brochage (mask → 27C160/27C400).
Cas concret : Golden Axe — The Revenge of Death Adder¶
GARDA n'est PAS une conversion « jumpers » ordinaire — c'est un jeu protégé
Golden Axe: The Revenge of Death Adder utilise une ROM board dédiée (833-8933-02)
+ une sous-carte de protection (834-8529-02, un V25 custom à code chiffré,
EPROM epr-14468-02 en U3) + une carte A/D (837-7968, pour les leviers analogiques).
→ On ne convertit donc pas un System 32 générique (ROM board 837-7429) en GARDA par
simple reprogrammation d'EPROM : il faut le trio ROM board GARDA + sous-carte V25 +
carte A/D. Le réalisme technicien : on répare / reflashe une board GARDA existante,
on ne la « fabrique » pas depuis un autre jeu. (Vérifié : MAME sega/segas32.cpp.)
Emplacements EPROM d'une board GARDA (set World Rev B, ga2) — pour remplacer une puce :
| Fonction | Socket | ROM d'origine | Taille | Type | Remplacement EPROM |
|---|---|---|---|---|---|
| V60 programme P0 | IC17 | epr-14961b | 128 Ko | EPROM | 27C010 |
| V60 programme P1 | IC8 | epr-14958b | 128 Ko | EPROM | 27C010 |
| V60 données D0 | IC18 | epr-15148b | 256 Ko | EPROM | 27C020 |
| V60 données D1 | IC9 | epr-15147b | 256 Ko | EPROM | 27C020 |
| Son Z80 (banque 0) | IC36 | epr-14945 | 64 Ko | EPROM | 27C512 |
| Son (banques) | IC35 / IC34 / IC24 | mpr-14944/43/42 | 1 Mo ch. | mask | 27C801 (+ adaptateur) |
| Protection V25 | U3 (sous-carte) | epr-14468-02 | 64 Ko | EPROM | 27C512 |
| Tiles | IC14 / IC5 | mpr-14948/47 | 2 Mo ch. | mask | 27C160 (+ adaptateur) |
| Sprites | IC32/30/28/26/31/29/27/25 | mpr-14949…14956 | 2 Mo ch. | mask | 27C160 (+ adaptateur) |
- Ne pas mélanger les révisions : World Rev B (
ga2, epr-1496xb/1514xb), US Rev A (ga2u, epr-1495xa/1514xa), Japon (ga2j) ont desepr-différentes pour le programme — garder un set cohérent. - Les
epr-programme/son se regravent ; lesmpr-(graphismes/son PCM) sont d'énormes mask ROMs : en pratique on réutilise les originales et on ne regrave que si l'une meurt.
Jeu par jeu : EPROM programme par emplacement (System 32 / Multi 32)¶
Sockets programme/données (EPROM epr- regravables) par jeu, avec la densité →
l'EPROM à graver. Set World/Export de référence ; les révisions US/JP ont des
epr- différentes (même densité). (Source : MAME sega/segas32.cpp.)
| Jeu | romset | Sockets programme (EPROM) | Remarque |
|---|---|---|---|
| Air Rescue | arescue |
IC13/IC6 = 27C010 · IC14/IC7 = 27C040 | |
| Alien³: The Gun | alien3 |
IC17/IC8 = 27C020 · IC18/IC9 = mask 27C040 | données = mask ROM |
| Arabian Fight | arabfgt |
IC8 = 27C010 · IC18/IC9 = 27C020 | ⚠ protégé — sous-carte V25 epr-14468-01 |
| Burning Rival | brival |
IC8 = 27C010 · IC18/IC9 = 27C040 | |
| Dark Edge | darkedge |
IC8 = 27C040 | |
| Dragon Ball Z V.R.V.S. | dbzvrvs |
2× 27C040 | |
| F1 Exhaust Note | f1en |
IC6 = 27C010 · IC14/IC7 = 27C020 | |
| F1 Super Lap | f1lap |
IC17/IC8 = 27C010 · IC18/IC9 = 27C020 | |
| Golden Axe: Revenge of Death Adder | ga2 |
IC17/IC8 = 27C010 · IC18/IC9 = 27C020 | ⚠ protégé — V25 epr-14468-02 (détail ci-dessus) |
| Holosseum | holo |
4× 27C010 | |
| Jurassic Park | jpark |
IC8/IC18/IC9 = 27C040 | |
| Rad Mobile | radm |
IC21 = 27C010 · IC37/IC38 = 27C040 | |
| Rad Rally | radr |
IC21 = 27C010 · IC37/IC38 = 27C040 | |
| SegaSonic the Hedgehog | sonic |
IC17/IC8 = 27C010 · IC18/IC9 = 27C020 | |
| Slip Stream | slipstrm |
IC6/IC14/IC7 = 27C040 | jeu de réf. des jumpers ci-dessous |
| Spider-Man | spidman |
IC13/IC7/IC14/IC6 = 27C010 | |
| Super Visual Football / J.League | svf / jleague |
IC17/IC8 = 27C010 · IC18/IC9 = 27C040 | |
| Multi 32 — Title Fight | titlef |
IC37/IC40 = 27C020 | dual screen |
| Multi 32 — OutRunners | orunners |
IC37/IC40 = 27C010 | dual screen |
| Multi 32 — Stadium Cross | scross |
IC37/IC40 = 27C020 · IC36/IC39 = 27C040 | dual screen |
| Multi 32 — Hard Dunk | harddunk |
IC37/IC40 = 27C020 | dual screen |
Ce que ça t'apprend concrètement
-
Seuls 2 jeux System 32 sont protégés (sous-carte V25) : Arabian Fight et GARDA. Tous les autres = conversion ROM board « ordinaire » (regraver les
epr-, réutiliser les maskmpr-graphiques, régler les jumpers). -
Les Multi 32 (dual screen : Title Fight, OutRunners, Stadium Cross, Hard Dunk) utilisent une implantation de sockets différente (IC37/IC40…) — voir la note Multi 32 plus bas.
Jumpers de la ROM board System 32 (837-7429-01)¶
Sur la ROM board générique (jeux non protégés), les jumpers JP1–JP32 configurent la taille d'EPROM acceptée par chaque banc de sockets. La position dépend de la densité montée — se référer à la sérigraphie de la carte et au type d'EPROM utilisé.
Table de référence MAME (exemple Slip Stream ; « may vary depending on ROM types used ») :
| JP1: 2-3 | JP9: 1-2 | JP17: 1-2 | JP25: 2-3 |
| JP2: 2-3 | JP10: 2-3 | JP18: 2-3 | JP26: 1-2 |
| JP3: 2-3 | JP11: 1-2 | JP19: 1-2 | JP27: 1-2 |
| JP4: 1-2 | JP12: 1-2 | JP20: 2-3 | JP28: 2-3 |
| JP5: 2-3 | JP13: 1-2 | JP21: 1-2 | JP29: 1-2 |
| JP6: 2-3 | JP14: 2-3 | JP22: 2-3 | JP30: 2-3 |
| JP7: 1-2 | JP15: 2-3 | JP23: 1-2 | JP31: 1-2 |
| JP8: 2-3 | JP16: 2-3 | JP24: 1-2 | JP32: 1-2 |
Emplacements EPROM de la ROM board générique (sérigraphie → IC → type) :
| Rôle | Sérigraphie | IC | Type EPROM |
|---|---|---|---|
| CPU programme | P0 / P1 | IC13 / IC6 | 27C4002 / 27C4000 |
| CPU données | D0 / D1 | IC7 / IC14 | 27C4000 (4 Mbit) |
| Son | SND0 / SND1 | IC35 / IC31 | 27C010 / 27C4000 |
| Décor (SCR0-3) | SCR0…3 | IC38/34/29/25 | 27C4000 |
| Sprites (OBJ0-7) | OBJ0…7 | IC36/32/27/23/37/33/28/24 | 27C4000 |
(837-7429-01 = ROM board System 32 standard. GARDA et d'autres jeux protégés ont leur propre ROM board — voir plus haut.)
System Multi 32 → System 32 (compliqué)¶
Convertir un jeu Multi 32 vers du System 32 simple (ou l'inverse) est plus délicat : hardware différent (V70 vs V60, dual screen, MultiPCM vs YM3438/RF5C, RAM). Ce n'est pas une simple affaire de ROM board — à réserver aux cas bien documentés.
Avant / après¶
- Désuicide : une carte suicidée (pile morte) revit, sans pile, avec 1 (ou 2) ROM déchiffrées.
- Conversion : une ROM board d'un jeu devient un autre jeu du même type de board.
Où se documenter¶
- Arcade-Projects — System 32 desuicide and conversions: all games patched and released! — https://www.arcade-projects.com/
- MiSTer — cœur System 32 (meathax) — https://github.com/meathax/s32
- vgmrips — Sega System 32 (puces son/CPU) — https://vgmrips.net/wiki/Sega_System_32
Cœur FPGA open-source archivé chez nous
Recréation FPGA (MiSTer) du System 32 / Multi 32, sources SystemVerilog à
compiler : s32.tar.gz ·
README — upstream :
https://github.com/meathax/s32. On n'héberge aucune ROM arcade.
Sources & attribution¶
- Arcade-Projects — System 32 desuicide and conversions (ROM déchiffrées, 1 ROM
- checksum, ROM boards Big 18 / Small 20) — https://www.arcade-projects.com/
- vgmrips — Sega System 32 (V60/V70, YM3438/RF5C68, MultiPCM) — https://vgmrips.net/wiki/Sega_System_32
- Page interne : Sega System 32
Relecture & corrections
À quoi sert cet espace
Une valeur fausse, une procédure dépassée, une référence de puce qui ne colle pas à ta carte ? Signale-le ici, avec ce que tu as constaté (modèle, révision de carte, numéro de série, mesure). Chaque signalement est recoupé avec une source avant toute modification — une correction invérifiable est publiée en tant que « signalé par …, non recoupé » plutôt qu'appliquée en silence.
La lecture est ouverte à tous ; écrire demande une connexion Discord. Les signalements des relecteurs déclarés du wiki sont traités en priorité ; les autres sont lus aussi, mais passent par un humain avant toute modification.