Aller au contenu

Konami Viper

La plateforme PowerPC + 3Dfx de Konami (1999-2002) : Police 911, Silent Scope EX, Thrill Drive 2, Jurassic Park III. Techniquement un PC spécialisé. En préservation, elle a un défaut de conception à retardement — une horloge sauvegardée dont le contenu ne peut pas être recréé à la main.

Identification

Champ Valeur
Fabricant Konami
Années 1999-2002
CPU Motorola XPC8240LZU200E (MPC8240, cœur PPC603e) — TBGA352 en U38
Horloge CPU entrée 33,868 MHz, multipliée ×6 → ~200 MHz
Graphique 3Dfx Voodoo III 3500 (BGA en U54), entrée d'horloge 14,31818 MHz
RAM principale 64 Mo SDRAM (2 × Micron 48LC2M32B2, U28/U45)
RAM graphique Fujitsu MB81G163222-80 ×4 (U53, U56, U59, U60)
Sauvegarde ST M48T58Y Timekeeper (DIP28 en U39) — ⚠️ voir plus bas
Protection Dallas DS2430 (numéro de série, U37) ; dongle sur certains jeux
Entrées analogiques ADC0838 (SOIC20 en U13)
Logique programmable Xilinx XC9536 ×2, XC9572XL, XCS10XL Spartan
Réseau deux prises RCA (CN4/CN5)
Format PCB propriétaire Konami — pas JAMMA

⚠️ Le vrai piège : le M48T58Y

C'est ce qu'il faut savoir avant de toucher une Viper.

Une horloge sauvegardée qu'on ne peut pas reconstituer

Le M48T58Y est une RAM Timekeeper à pile intégrée, d'une durée de vie annoncée de dix ans. Quand elle meurt, le jeu affiche « RTC BAD » puis se réinitialise en boucle.

Et le contenu ne peut pas être fabriqué à la main — MAME le dit explicitement. Il faut reprogrammer un M48T58Y neuf avec les données correctes du jeu et le remplacer sur la carte. Sans ces données, la carte reste morte : ce n'est pas une panne électronique, c'est une clé perdue.

Ce que MAME documente du contenu, utile à qui restaure :

  • le contrôle « RTC OK » porte sur la plage 0x0000-0x0945 ; au-delà, le contenu peut être effacé sans empêcher le démarrage ;
  • la NVRAM est découpée en blocs, chacun avec sa propre somme de contrôle sur 16 bits — la somme de deux octets consécutifs doit valoir 0xFFFF, les deux derniers octets du bloc servant à compléter ;
  • il n'y a pas de somme globale : des blocs d'origines différentes cohabitent tant que chacun est cohérent ;
  • le premier bloc (0x0000-0x000F) est un identifiant jeu/région et ne supporte pas d'être modifié — une NVRAM de Mocap Boxing ne passera pas les contrôles de Police 911, même avec une somme correcte.

Architecture

Une Viper est un PC industriel dédié : un PowerPC, une carte graphique 3Dfx du commerce, de la SDRAM standard. Ce qui en fait une carte arcade tient à la périphérie — les CPLD Xilinx, l'ADC0838 pour les périphériques analogiques (pistolets, volants), les deux prises réseau, et les deux verrous (DS2430 + M48T58Y).

Voodoo III, pas Banshee

Le marquage physique de la puce est 3Dfx Voodoo III 3500. MAME l'émule via son composant Voodoo Banshee — les deux familles sont proches, mais c'est le marquage de la carte qui fait foi pour une commande de pièce.

Jeux notables

Police 911 (et 911 2) · Silent Scope EX · Thrill Drive 2 · GTI Club 2 · Jurassic Park III · Mocap Boxing · Mocap Golf · Tsurugi · ParaParaParadise 2nd Mix · Code One Dispatch.

Pannes fréquentes

Symptôme Cause probable Piste
« RTC BAD » puis reset en boucle M48T58Y en fin de vie Reprogrammer un M48T58Y neuf avec les données du jeu — voir l'encadré
Carte muette, aucune image alimentation, CPU, ou CPLD Diagnostic PCB
Contrôle de sécurité échoué DS2430 ou dongle absent/incorrect Vérifier l'appairage carte/dongle du jeu
Contrôles analogiques faux ADC0838 (U13) ou câblage Comparer les tensions d'entrée à une carte saine
Blocage au contrôle réseau liaison entre bornes (jeux en link) Vérifier CN4/CN5 et la configuration du jeu
Graphismes corrompus SGRAM Fujitsu ou la Voodoo III Une seule zone corrompue oriente vers une des quatre puces

Réparation (technicien)

  • Le M48T58Y d'abord. Sur une Viper qui boucle, ce n'est presque jamais autre chose. Le remplacer avec les bonnes données — un composant neuf vierge ne suffit pas.
  • Ce n'est pas du JAMMA : le câblage est propriétaire. Rien de ce qui vaut pour une carte JAMMA ne s'applique tel quel côté connectique.
  • Composants du commerce : SDRAM, Voodoo III et régulateurs sont des pièces PC d'époque, donc trouvables — contrairement aux customs des plateformes 16 bits.

→ Méthodes : Diagnostic PCB · Recap · Piles de sauvegarde

Procédure — carte muette, dans l'ordre ✅

Ce que cette procédure ajoute

La méthode générale est sur Diagnostic PCB. Celle-ci en est l'application à cette plateforme : le même ordre, mais avec les valeurs réellement attendues ici, pour éviter l'aller-retour.

Outillage : multimètre, oscilloscope (ou fréquencemètre), alimentation de labo limitée en courant, tresse à dessouder. → Outillage

Si la carte est encore dans une borne

Un CRT reste chargé machine débranchée. → Sécurité CRT

1. Inspection, hors tension. Corrosion, pistes coupées, pattes d'EPROM oxydées, condensateurs CMS qui fuient, réparations antérieures douteuses.

2. Le connecteur, avant tout le reste. Une bonne part des « cartes mortes » est un problème de contact, pas une panne. Nettoyer les contacts à l'alcool isopropylique et ré-enficher — pas à la gomme abrasive sur un bord doré, elle enlève la dorure et le problème revient en pire. Ça coûte deux minutes et ça tranche.

3. Alimentation, mesurée sur la carte. Viser +5,0 V mesurés au plus près de l'arrivée d'alimentation de la carte — pas à la sortie de l'alim : la chute est dans le faisceau, et c'est précisément ce qui fait qu'une carte démarre sur l'établi et pas dans la borne. Le point de mesure dépend du connecteur de cette carte — bord JAMMA, faisceau JVS ou câblage propriétaire — beaucoup de constructeurs en ont gardé un bien après l'arrivée du JAMMA — voir Identification plus haut. → Câblage Vérifier aussi le −5 V et le +12 V si l'étage son les utilise. Court-circuit suspecté : monter en courant limité et chercher le point chaud.

4. /RESET. Doit se libérer après l'allumage. Maintenue basse = le CPU ne démarre jamais. Une boucle à 1–2 Hz n'est pas le circuit de reset, c'est le watchdog : le CPU plante au boot — regarder le bus, pas le reset.

5. Horloges. Pas de table de mesure pour cette plateforme — les sources MAME n'en donnent pas d'extraction exploitable. Les fréquences éventuellement citées sous Architecture sur cette page servent de repère ; sinon, comparer à une carte qui marche plutôt qu'à un chiffre : une valeur inventée fait condamner des pièces saines. → Diagnostic PCB

6. Bus. L'activité sur les lignes d'adresse du CPU principal dit s'il tourne ou s'il est figé. Figé avec horloges bonnes et reset bon → RAM de travail, buffers de bus, ROMs.

7. Elle démarre mais l'image ou le son est faux — c'est un autre travail : voir Pannes fréquentes sur cette page, puis le signal tracing.

Modernisation & mods

  • Anti-suicide 🔴 : le M48T58Y est le point de suicide de la plateforme, et il n'a pas d'équivalent « ROM déchiffrée » comme un FD1094. La préservation passe par l'archivage des contenus NVRAM jeu par jeu.
  • ⚠️ Ne pas héberger de ROMs ni de dumps NVRAM — méthode seulement.

Émulation & FPGA

MAME émule la plateforme (konami/viper.cpp), avec des réserves : certains jeux restent bloqués sur des contrôles (réseau pour World Combat). L'essentiel du travail de rétro-ingénierie a porté sur la structure de la NVRAM — c'est ce qui permet aujourd'hui de comprendre pourquoi une carte affiche « RTC BAD ».

Photos / assets

(À prendre : carte nue, le M48T58Y en U39 — la pièce à connaître —, le DS2430 en U37, la Voodoo III 3500 et son dissipateur, les prises réseau CN4/CN5.)

Documents d'origine archivés ✅

Manuel déjà présent dans le wiki, rattaché ici après vérification de sa page de titre.

⚠️ Le manuel GTI Club archivé dans ce wiki n'est pas de cette page : sa couverture porte GTI-CLUB Rally Côte d'Azur, © 1996 Konami — c'est le premier GTI Club, pas le GTI Club 2 de la Viper. Deux jeux, deux matériels, quatre ans d'écart.

Sources & attribution

Texte (synthèse ; sources listées pour attribution) :

  • MAME — src/mame/konami/viper.cpp (BSD-3-Clause / GPL) : identification complète des composants avec leurs repères (U38 CPU, U54 3Dfx, U39 M48T58Y, U37 DS2430, U13 ADC0838, U25 29F002), horloge CPU (entrée 33,868 MHz × 6 ≈ 200 MHz), horloge d'entrée de la Voodoo III (14,31818 MHz), et surtout la description détaillée du comportement du M48T58Y — plage de contrôle 0x0000-0x0945, sommes de contrôle 16 bits par bloc, premier bloc identifiant jeu/région non modifiable, et le constat que le contenu ne peut pas être créé à la main — https://github.com/mamedev/mame/blob/master/src/mame/konami/viper.cpp

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.