Aller au contenu

Namco System 357 / 369 (arcade à base PS3)

Le System 357 (2007, pour Tekken 6) et son évolution System 369 (2011, Tekken Tag Tournament 2) sont, littéralement, des PlayStation 3 dans un boîtier métal + deux cartes Namco (I/O + JVS). Le jeu vit sur un disque dur apparié à un dongle. Cette page rassemble tout : matériel, montage/lecture du disque, et le tuto de conversion d'une carte-mère PS3 retail pour remplacer une carte-mère arcade morte.

Méthode, pas piraterie

On documente le fonctionnement et la réparation/préservation (remplacer une carte-mère morte par un donneur PS3). On n'héberge ni firmware GEX, ni clés, ni dumps de HDD/dongle. Le contenu se fait à partir de ton propre matériel (ton dongle, ton HDD de jeu d'origine).

Vue d'ensemble

Champ Valeur
Base PlayStation 3 retail (carte-mère à Product Code ARC = 0xA0)
Particularités carte sans module WiFi/Bluetooth, sans lecteur Blu-ray (ni contrôleur BD intégré au-delà des CECH-25xx)
Cartes Namco ajoutées 1× I/O board + 1× JVS board (norme JVS / « JAMMA 2 »)
Média jeu disque dur (HDD) pré-installé, apparié à un dongle
Sortie vidéo VGA (HD-15) via la JVS board ; audio RCA G/D
Boîtier « rack assy » métal (S357-07J, S357B-08J/E, S357C-10J, S357C-11E, S369C-11J/E)

Les variantes (crucial pour réparer/convertir)

Système Carte-mère Série Flash Base PS3 Jeux typiques
357A COK-002 GECR-1100 NAND Fat Tekken 6, T6 Bloodline Rebellion
357B VER-001 GECR-1500 NOR Fat T6 / T6BR, Razing Storm, DeadStorm Pirates
357C JTP-001 GECR-2500 NOR Slim Gundam Extreme Vs (Maxi/Full Boost), DBZ Zenkai, Taiko
369 JTP-001 GECR-2500 CU1 NOR Slim Tekken Tag Tournament 2 (Unlimited)
  • 357C = 369 au détail près : le 357C n'a qu'un seul câble USB, le 369 a un hub USB (3 ports + entrée JVS). Le 369 aurait un RSX/mémoire overclockés par rapport aux 357.
  • Sous-révisions : ...-11E = sans I/O H0xx, avec hub USB (Taiko, rail-shooters) ; live-monitor = bornes démo (affichent une partie en réseau, non jouables).

357 ≠ 369

Les jeux 357 ne tournent pas sur 369 (et inversement) : vérifications système spécifiques et crypto HDD différente. Bien identifier ta cible.

Où vit un jeu : HDD + dongle

  • Le jeu est pré-installé sur le HDD, apparié à un dongle (le HDD et le dongle vont ensemble ; le n° de série imprimé sur le dongle correspond à la réf. HDD).
  • Au premier boot, le jeu applique automatiquement ses mises à jour :
  • jeu : /dev_hdd0/game/SCEEXE000/ARCDIR/INSTALL0.PKG
  • firmware : /dev_hdd0/game/SCEEXE000/ARCDIR/PS3UPDAT.PUP
  • Le firmware arcade permet d'installer des packages (icône « Install package files » de la colonne jeu).

La clé du HDD (le point technique clé)

Le disque dur est déchiffré par une clé statique située dans lv1ldr quand le Product Code = 0xA0 (ARC). Le lv1/lv1ldr est identique aux modèles retail — c'est le Product Code ARC qui débloque le déchiffrement du HDD arcade. C'est tout l'enjeu de la conversion (voir plus bas).

Table jeux / HDD / dongle (compat par système)

Année Jeu Réf. HDD Dongle 357A 357B 357C 369
2007 Tekken 6 TE6100-1-NA-HDD0-A TE61
2008 T6 Bloodline Rebellion T6B100-1/2-NA-HDD0-A T6B1 / T6B2
2009 Razing Storm RST100-2-NA-MPR0-A RST1
2010 DeadStorm Pirates DSP100-2-NA-MPR0-BXX DSP1
2010 Gundam Extreme Vs.
2011 DBZ Zenkai Battle Royale
2011 Taiko no Tatsujin (série) ST*100-…-HDD0
2011 Tekken Tag Tournament 2
2012 Gundam Extreme Vs. Full Boost GEX100-1-NA-HDD0-A GEX1
2012 Tekken Tag Tournament 2 Unlimited TG2100-1-NA-HDD0-F17 TG21 + DTT2G

(Liste non exhaustive — voir PS3 Dev Wiki pour la table complète, dont les versions « Live Monitor ».)

Les cartes I/O et JVS (montage & lecture)

Chaîne de signaux :

Boutons/stick/monnayeur → I/O board → JVS board → (USB) → carte PS3
Vidéo : carte PS3 → (AV MultiOUT) → JVS board → VGA → moniteur
Audio : JVS board → RCA blanc (G) / RCA rouge (D)
  • I/O board (en haut) : connecteur 24 broches, 8 DIP (le DIP n°2 = activer le 31 kHz), connecteur 10 broches.
  • JVS board (en bas) : USB (interface JV I/O JAMMA), DC IN +5 V (alimente la carte Namco — seulement 357A/357B), VGA (vidéo), RCA G/D (audio).
  • Sur les modèles récents (357C/369), la I/O + JVS sont remplacées par une « USB I/O PCB » (identifiant US1001 / USIO01) — visible dans le menu test (I/O PCB : Connect OK … NBGI.;USIO01;…).
  • JVS = Jamma Video Standard (« JAMMA 2 ») : vidéo HD-15/VGA, audio RCA, alim JST VL, protocole série carte↔I/O. Voir JVS.

Monter & lire le disque (procédure)

  1. Identifier ta cible (357A/B/C ou 369) et le couple HDD + dongle du jeu.
  2. Brancher le HDD de jeu dans la baie de la carte PS3 (SATA 2,5″, comme une PS3). Le HDD est chiffré : il ne se lit que sur une carte à Product Code ARC (arcade ou convertie).
  3. Insérer le dongle (port USB/I/O selon modèle — voir manuel du jeu, ex. Razing Storm §5.5 « inserting the dongle »).
  4. Brancher I/O + JVS (ou la USB I/O PCB), la VGA vers le moniteur, l'audio.
  5. Premier boot : le jeu auto-installe ses updates (INSTALL0.PKG / PS3UPDAT.PUP) — ne pas couper l'alimentation (message XMB « Copying update data… Do not turn off »).
  6. Menu test : vérifier MEDIA SYSTEM357 HDD + I/O PCB : Connect OK, régler horloge, cabinet type, langue, HDD CHECK.

Monter & MODIFIER le HDD sur un serveur Linux (déchiffrement)

Le HDD arcade est chiffré (comme un HDD PS3). Pour lire/éditer son contenu (fichiers de jeu dans dev_hdd0), il faut le déchiffrer à la volée sous Linux via device-mapper (dm-crypt), puis monter les partitions.

À faire sur une COPIE, jamais l'original

Toujours travailler sur une image dd du HDD, pas sur le disque d'origine. Le HDD est apparié au dongle : une corruption = jeu mort. Et ne jamais effacer les clés ATA pendant qu'une partition est montée (corruption garantie).

1. Le modèle de chiffrement (dépend du modèle !)

Système Carte-mère Flash Chiffrement HDD VFLASH
357A COK-002 NAND (Phat) AES-CBC-192 (IV à zéro) AES-CBC-128
357B VER-001 NOR (Phat) AES-CBC-192 XTS-AES-128
357C / 369 JTP-001 NOR (Slim) XTS-AES-128 XTS-AES-128
  • XTS-AES-128 (Slim) : chaque secteur chiffré indépendamment ; la clé = clé data (16 o) + clé tweak (16 o) concaténées (256 bits). VFLASH = chiffré 2× (ENCDEC puis ATA).
  • Les clés (ATA data/tweak + ENCDEC) sont dérivées de l'eid_root_key. Pour l'arcade (Product Code ARC = 0xA0), la clé HDD est statique (dans lv1ldr) → déchiffrable hors-ligne avec la bonne clé.

Le système de fichiers dev_hdd0 est de l'UFS2 (dérivé FreeBSD), pas du FAT. Le montage doit donc gérer l'UFS2 en plus du déchiffrement.

2. Récupérer sa clé (obligatoire, quelle que soit la voie)

Tous les outils ont besoin de ta eid_root_key (ERK, 32 octets / 64 hex) — ou directement les clés ATA data+tweak :

  • Dump de l'ERK sur la console : via Rebug Toolbox (option Dump EID Root Key) ou BadWDSD. Sur une carte arcade, la clé est statique mais tu la dumpes de la même façon.
  • ⚠️ On n'héberge pas les clés. Tu extrais les tiennes de ta carte.

3. Voie OUTIL (recommandée — peu ou pas de compilation)

Outil Type Ce qu'il fait
PS3HddTool (Pheeeeenom) GUI .NET 8 / Avalonia (Win/macOS/Linux) déchiffre XTS-AES-128 avec l'EID Root Key, navigue l'UFS2, extrait fichiers/dossiers (image ou disque physique)
PS-HDD-Tools (aerosoul94) CLI prend image HDD + fichier clé → sort une partition déchiffrée
PS3 HDD Decryption Helper (2023, PSX-Place) scripts bash automatise déchiffrement + montage read/write UFS2 ; compile lui-même le module bswap16-ecb (corrigé pour noyaux récents en nov. 2023) ; déposer eid_root_key.bin dans /keys
  • Pour juste lire/extraire : PS3HddTool (GUI, simple, aucune compilation).
  • Pour éditer en place puis réécrire : le Decryption Helper (monte l'UFS2 en read-write), c'est celui qui correspond à ton besoin.
  • Build de PS3HddTool : dotnet build (ou dotnet publish -r linux-x64 --self-contained) — .NET 8 requis.

Outils archivés CHEZ NOUS (les sources disparaissent)

Le repo d'origine de dm-bswap16 (gitorious) a fermé → on archive les sources open-source dans le dépôt du wiki (pas de firmware/clé/patch) :

Le Decryption Helper (scripts + source bswap16-ecb restaurée) est sur PSX-Place (forum) → non archivable en auto, lien dans le README.

4. Voie manuelle dm-crypt (pour comprendre ce que fait le Helper)

⚠️ Il faut compiler un module noyau : le bswap16 (alias bswap16-ecb) n'est pas dans le noyau standard. Le repo d'origine (gitorious.ps3dev.net) est mort ; la source est restaurée et compilée par le Decryption Helper (script dans /tmp). Sans ce module, le déchiffrement HDD ne marche pas. La voie OUTIL ci-dessus t'évite ce travail.

# Pré-requis noyau/outils
modprobe loop dm_mod dm-bswap16
# (dm-bswap16 : module qui inverse les octets par mot de 16 bits — INDISPENSABLE
#  pour le déchiffrement HDD/VFLASH PS3)

# 1) Image de travail (COPIE) du HDD
dd if=/dev/sdX of=hdd.img bs=4M            # sdX = ton HDD arcade branché en SATA/USB
losetup /dev/loop1 ./hdd.img

# 2) Couche bswap16
SIZE=$(blockdev --getsz /dev/loop1)
echo "0 $SIZE bswap16 /dev/loop1" | dmsetup create ps3raw

# 3) Fichier clé = clé data (hex) + clé tweak (hex) → 32 octets
echo <DATA_KEY_HEX> <TWEAK_KEY_HEX> | xxd -r -p > hdd_key.bin

# 4) Couche dm-crypt XTS-AES-128 (Slim/NOR : 357C/369)
#    -s 256 car XTS-AES-128 = data(128) + tweak(128) concaténés
cryptsetup create -c aes-xts-plain64 -d ./hdd_key.bin -s 256 hdd_crypt /dev/mapper/ps3raw
# → /dev/mapper/hdd_crypt = HDD DÉCHIFFRÉ

# (357A/B = Phat : HDD en AES-CBC-192 → -c aes-cbc-plain -s 192, pas de tweak)
Pour le VFLASH (double couche, débute au secteur 8) :
echo "0 8 linear /dev/mapper/hdd_crypt 8" | dmsetup create vflash
echo <ENCDEC_DATA_HEX> <ENCDEC_TWEAK_HEX> | xxd -r -p > vflash_key.bin
cryptsetup create -c aes-xts-plain64 -d ./vflash_key.bin -s 256 -p 8 vflash_crypt /dev/mapper/vflash

5. Table de partitions & montage

La table de partitions PS3 est spécifique (big-endian) → utiliser un kpartx patché PS3 (ou l'outil du helper) pour exposer les partitions du HDD déchiffré :

kpartx -av /dev/mapper/hdd_crypt          # crée /dev/mapper/hdd_cryptP1, P2...
mkdir -p /mnt/hdd0
# dev_hdd0 = UFS2 (FreeBSD) → type ufs / ufstype=ufs2
mount -t ufs -o ufstype=ufs2,rw /dev/mapper/hdd_cryptP<N> /mnt/hdd0
ls /mnt/hdd0/game/                         # ← contenu du jeu, éditable

6. Éditer puis refermer proprement

  1. Modifier les fichiers dans /mnt/hdd0/... (les scripts de jeu, dev_hdd0/game/…).
  2. Démonter dans l'ordre inverse :
    umount /mnt/hdd0
    kpartx -d /dev/mapper/hdd_crypt
    cryptsetup remove vflash_crypt; dmsetup remove vflash
    cryptsetup remove hdd_crypt; dmsetup remove ps3raw
    losetup -d /dev/loop1
    
  3. Le ré-chiffrement est transparent (dm-crypt écrit chiffré à la volée) — ton hdd.img modifié est déjà rechiffré. Le réécrire sur le disque : dd if=hdd.img of=/dev/sdX bs=4M.

Limites & vérifs

  • Signatures/hashes : certains jeux vérifient l'intégrité de fichiers → modifier sans re-signer peut empêcher le boot. Tester d'abord des changements bénins.

  • Le bon modèle de clé : 357A/B (Phat, AES-CBC) ≠ 357C/369 (Slim, XTS) — utiliser le bon chiffrement, sinon données illisibles.

  • Faire un backup de l'image avant toute écriture.

Où se documenter (Linux HDD)

Convertir une carte-mère PS3 retail pour remplacer une CM morte

Principe : une carte-mère arcade est une carte PS3 retail dont le Product Code est mis à ARC (0xA0) ; c'est ce qui autorise le déchiffrement du HDD arcade. On peut donc transformer un donneur PS3 retail en carte-mère de remplacement.

Pré-requis

  • Un donneur PS3 du BON modèle de carte-mère :
  • 357ACOK-002 (Fat, NAND)
  • 357BVER-001 (Fat, NOR)
  • 357C / 369JTP-001 (Slim, NOR) — ex. une CECH-2501A a une JTP-001.
  • Le donneur doit être compatible CFW : toutes les Fat le sont ; seulement certaines Slim ; les Slim/Super-Slim uniquement HEN ne marchent pas (non compatibles pour cette conversion).
  • Firmware GEX : 4.70 GEX CFW, ou GEX OFW 3.60-3.70 (la plupart des jeux tournent sur ces firmwares).
  • Tu conserves impérativement : ton dongle, ton HDD de jeu, et les cartes I/O + JVS (ou la USB I/O PCB) — sans elles, aucun jeu ne boote.

Différences carte arcade vs retail (à savoir)

Les cartes-mères arcade sont des cartes retail dépeuplées : pas de module WiFi/BT soudé, pas des puces/clips liés au lecteur Blu-ray. À l'inverse, sur un donneur retail on peut récupérer le port AV pour réparer une arcade (cité pour la réparation d'une 369).

C'est quoi « le Product Code » ?

C'est un identifiant de type/région de la console, un octet stocké dans l'IDPS (5ᵉ/6ᵉ octet, présent dans EID0 et EID5, dans la zone PerConsole du flash NOR/NAND). Exemples :

Code Type Modèle
0x82 DEX (Debug) DECH-…
0x83 CEX (Retail Japon) CECH…
0x84 / 0x85 Retail USA / Europe CECH…01 / …04
0xA0 ARC (Arcade) GECR-xx00

Convertir un donneur = changer cet octet en 0xA0 (ARC) dans le flash. C'est ce qui autorise lv1ldr à déchiffrer le HDD arcade (clé statique).

Procédure détaillée (niveau documenté)

Il faut manipuler le flash (NOR/NAND) de la console → flasher matériellement (clip + E3 Flasher / Teensy++ / progskeet), ou dumper/reflasher par un exploit soft si la console est déjà en CFW/HEN.

  1. Choisir le donneur au bon modèle (COK-002 NAND / VER-001 NOR / JTP-001 NOR) et CFW-compatible.
  2. Dumper le flash de la console (NOR ou NAND selon le modèle) — au flasher matériel ou en soft sur CFW/HEN.
  3. Patcher le dump avec c2d.exe. Concrètement, c2d.exe recalcule la zone d'identité EID0 du flash : il met le Product Code à ARC (0xA0) et re-chiffre/re-signe l'EID0 avec ta eid_root_key pour que la console accepte ce nouvel EID0. (C'est pour ça qu'il faut la clé + OpenSSL.) Il n'y a pas d'autre « patch magique » côté flash : la seule autre exigence du firmware GEX est une authentification USB au boot — voir l'encadré plus bas.

⚠️ Ces modifications diffèrent selon le TYPE de mémoire flash de ta console : NOR (357B/C, 369) ou NAND (357A). Le format du flash n'est pas le même → il faut le jeu de patches correspondant (patches NOR sur une console NOR, NAND sur une NAND). Les mélanger = brique.

Commande exacte (c2d.exe) — change le Product Code (Target ID) du dump :

:: syntaxe : c2d.exe <cle_eid.bin> <flash_in.bin> <flash_out.bin> [target_id]
c2d.exe eid_root_key.bin flash_dump.bin flash_arcade.bin A0
:: A0 = ARC (arcade).  (réf. : 82=DEX, 83=JP, 84=USA, 85=EU, 86=KR, 87=UK...)

  • eid_root_key.bin = la clé EID (per-console) extraite du dump NOR/NAND.
  • Pré-requis : OpenSSL 1.0.1 installé dans c:\openssl (ou d:\openssl).
  • Sur NOR : renommer la sortie en XXXXX.EID0.NORBIN et la mettre sur USB pour la reflasher.

ℹ️ c2d.exe est à l'origine l'outil CEX↔DEX / changement de région ; le support A0 (arcade) dépend de la build utilisée — vérifier que ta version accepte A0. (Téléchargement : Wololo / PSX-Place.) 4. Flasher l'EID0 patché (voie documentée) : renommer la sortie en XXXXX.EID0.NORBIN, la mettre sur USB, la flasher via mmOS (clic sur le dump → flash EID0), puis redémarrer en mode recovery. 5. Installer le firmware GEX (le firmware arcade : OFW GEX 3.60-3.70, ou CFW GEX 4.70) — depuis le mode recovery, comme une install de firmware. Les firmwares GEX sont archivés (ex. Internet Archive ps3-arcade-gex). 6. Récupérer/garder l'eid_root_key (dump via Rebug Toolbox) — utile côté PC pour le HDD (voir section HDD Linux). 7. Rebrancher I/O + JVS + dongle + HDD de jeu. 8. Booter : le jeu arcade tourne. (La carte ne lira plus les jeux PS3 normaux ni les disques : Blu-ray et WiFi désactivés par le firmware arcade.)

La modif que le firmware GEX exige EN PLUS : l'authentification USB

Au-delà de l'EID0 (Product Code A0), le firmware GEX vérifie une « authentification USB » au démarrage : il attend les cartes I/O + JVS et le dongle sur l'USB. Sans elles, symptôme documenté : écran noir ~1 min puis « an error occurred during the start operation ». Deux issues :

  • Brancher le vrai matériel (I/O + JVS + dongle + HDD) → la borne complète boote normalement. C'est la voie de préservation/réparation (ce que tu veux si tu remplaces une carte-mère morte).

  • Se passer du matériel Namco (jouer sans I/O + dongle) : il faut contourner l'auth USB — c'est-à-dire des patches de firmware (MFW) + une émulation I/O/JVS + dongle. Ce n'est PAS une solution propre et téléchargeable : c'est un sujet de recherche en cours dans la scène. Des bricolages circulent sur les forums (zone grise, fiabilité douteuse), mais rien de stable/documenté publiquement. On n'héberge pas ce contenu.

  • Alternative « logicielle » : l'émulation RPCS3 (ça marche déjà pour des jeux). RPCS3 fait tourner ces titres depuis un dump HDD déchiffré (le dossier dev_hdd0/game/… + l'EBOOT) — aucune clé n'est requise, les jeux bootent comme des jeux PS3. Le seul blocage est la vérif dongle/I-O (erreur 19-1 : le jeu cherche du matériel dans dev_usb). La scène a produit des patches RPCS3 (patch.yml) qui neutralisent la vérif dongle par jeu (+ mapping des contrôleurs spéciaux type tambours Taiko). Avec le bon patch, un jeu démarre sans dongle (confirmé par des utilisateurs). Applique-les via le gestionnaire de patches de RPCS3, sur ton dump.

Niveau réel : flashage matériel + CFW

Cette conversion n'est pas logicielle « en un clic » : elle suppose de dumper et reflasher le NOR/NAND (compétence + flasher matériel), de patcher l'identité (c2d.exe) et d'installer un firmware GEX. C'est avancé et à réserver à qui maîtrise le mod PS3. On n'héberge ni les patches, ni les firmwares — on décrit la méthode et les outils.

Le piège : le refroidissement

Sur une conversion, les vitesses de ventilation restent celles d'une retail (plus lentes que sur un 357C/369). En usage arcade prolongé, la carte chauffe et risque une mort prématurée. Les 357A/B ont un fil retiré sur le connecteur ventilo (vitesse forcée) — à reproduire côté cible. Prévoir un refroidissement additionnel pour un usage 24/7.

Quand c'est pertinent (et quand non)

  • Oui : réparer/remplacer une carte-mère morte pour un usage maison / préservation, avec ton HDD + dongle d'origine.
  • ⚠️ Prudence : pour un usage arcade intensif, le problème de ventilation n'est pas anodin (surchauffe). C'est encore une méthode jeune et perfectible.

Avant / après

  • Carte-mère morte remplacée : la borne 357/369 revit avec un donneur PS3 du bon modèle, ton dongle + HDD d'origine.

Où se documenter

Sources & attribution

  • PS3 Developer WikiNamco System 357 (Product Code ARC 0xA0, clé HDD dans lv1ldr, COK-002/VER-001/JTP-001, I/O+JVS, US1001/USIO01, table jeux/HDD/dongle) — https://www.psdevwiki.com/ps3/Namco_System_357
  • Arcade-Projects — conversion retail→arcade (modèles carte-mère, GEX CFW 4.70 / OFW 3.60-3.70, prérequis I/O+dongle+HDD, refroidissement) — https://www.arcade-projects.com/
  • Wikipédia / Arcade Otaku — Namco System 357/369.

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.