Taito JC System¶
La plateforme 3D de Taito (1995-1997) : Dangerous Curves, Landing Gear, Side by Side 1 et 2. Un 68040 épaulé par un DSP et cinq customs Taito — dont MAME lui-même ne connaît pas le rôle exact. Et une carte qui ne se branche pas sur n'importe quel moniteur.
Identification¶
| Champ | Valeur |
|---|---|
| Fabricant | Taito |
| Années | 1995-1997 |
| CPU principal | Motorola MC68040RC25 @ 20 MHz (quartz 10 MHz ×2 via un CY7C991) |
| MCU | MC68HC11M0 @ 8 MHz (quartz 16 MHz ÷ 2) |
| CPU son | MC68EC000 |
| DSP | TMS320C51 (QFP132) |
| Son | Ensoniq ES5505 |
| Balayage | ~25 kHz / ~55,7 Hz — ⚠️ moyenne résolution, voir plus bas |
| Format PCB | propriétaire Taito — carte mère + carte fille |
Ce n'est pas une carte 15 kHz
La JC System sort du ~25 kHz, pas du 15 kHz standard. Elle demande donc un moniteur qui accepte la moyenne résolution — un châssis 15 kHz seul n'affichera rien. C'est la première chose à vérifier avant de conclure à une panne. → Moderniser une borne
Les cinq customs Taito¶
Le driver MAME les liste avec leurs propres points d'interrogation, et c'est honnête de les reprendre tels quels : le rôle exact de plusieurs n'est pas établi.
| Custom | Rôle d'après MAME |
|---|---|
| TC0640FIO (QFP120) | I/O |
| TC0770CMU | co-processeur mathématique ? |
| TC0780FPA ×2 | rendu polygones / textures ? |
| TC0840GLU | graphismes 2D ? |
| TC0870HVP | processeur de sommets ? |
Pourquoi garder les points d'interrogation
Ces puces n'ont pas de rechange. Savoir qu'un custom est « probablement le renderer » plutôt que « le renderer » change la conduite à tenir : on diagnostique par comparaison avec une carte saine, pas en se fiant à un rôle supposé.
Les quartz, et leurs étiquettes trompeuses¶
C'est une particularité de cette carte, relevée dans les notes de MAME :
- X1 est étiqueté « 54/33.333MHz » sur la MOTHER PCB-C, mais seul le 54 MHz semble utilisé.
- X3 est étiqueté « 30.47610MHz » sur la carte et « 30.4762MHz » sur au moins un quartz réel. Les deux valeurs sont probablement arrondies depuis le 30,47618 MHz employé avec les mêmes puces Ensoniq sur d'autres cartes Taito.
→ Autrement dit : l'étiquette sérigraphiée ne dit pas toujours la fréquence réelle. Sur cette carte, un écart de quelques dizaines de hertz au fréquencemètre n'est pas une dérive.
Horloges attendues — table de mesure ✅¶
| Composant | Horloge attendue | Rôle |
|---|---|---|
| MC68040 | 20 MHz | CPU principal |
| MC68HC11M0 | 8 MHz | MCU |
Le MCU pourrait aller deux fois plus vite
MAME relève que la puce montée est un MC68HC11M0CFU4, « which could run twice as fast ». Elle est donc cadencée en dessous de sa capacité — ce n'est pas un défaut.
Le balayage, et ce qui reste incertain¶
MAME définit l'affichage à 54 MHz ÷ 3 = 18 MHz de pixel, 720 points par ligne, 449 lignes (512 × 400 visibles). D'où ~25,0 kHz en horizontal et ~55,7 Hz en vertical.
Le vertical est mesuré, l'horizontal est douteux
Le driver le dit lui-même : les paramètres actuels correspondent à une mesure de vsync, mais l'auteur soupçonne la mesure de hsync d'avoir été inexacte.
Le ~55,7 Hz est donc solide ; le ~25,0 kHz est à prendre comme un ordre de grandeur. Ce qui reste sûr en pratique : c'est de la moyenne résolution, pas du 15 kHz.
Jeux notables¶
Dangerous Curves (1995) · Landing Gear (1995) · Side by Side (1996) · Side by Side 2 (1997).
Pannes fréquentes¶
| Symptôme | Cause probable | Piste |
|---|---|---|
| Pas d'image sur un châssis 15 kHz | aucune — la carte sort du 25 kHz | Il faut un moniteur moyenne résolution |
| Pas de 3D, reste affiché | TMS320C51 ou les customs de rendu | Diagnostic par comparaison : ces puces n'ont pas de rechange |
| Carte muette | 68040, quartz 10 MHz, CY7C991 | Le CY7C991 est la source d'horloge du CPU |
| Contrôles morts | TC0640FIO ou câblage | I/O propriétaire, pas du JAMMA |
| Pas de son | MC68EC000 ou l'ES5505 | Deux étages distincts |
| Comportement erratique | MC68HC11M0 de la carte fille | Le MCU vit sur la carte de jeu, pas sur la carte mère |
Réparation (technicien)¶
- Vérifier le moniteur avant tout. Une JC System sur un châssis 15 kHz ne donnera rien, et ce n'est pas une panne.
- Deux cartes : la carte mère porte le 68040 et les customs, la carte fille porte les ROM du jeu, la communication et le MC68HC11. Séparer les deux avant de sonder.
- Aucun custom n'a de rechange : TC0640FIO, TC0770CMU, TC0780FPA, TC0840GLU, TC0870HVP se diagnostiquent par comparaison, jamais par substitution.
→ Méthodes : Diagnostic PCB · Recap
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 — les valeurs attendues sur cette plateforme.
- MC68040 → 20 MHz (CPU principal)
- MC68HC11M0 → 8 MHz (MCU)
Pas d'horloge sur le MC68040 (20 MHz) et rien d'autre ne vaut la peine d'être mesuré : la panne est le quartz, le diviseur ou la puce elle-même. Cette seule mesure coupe le diagnostic en deux.
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¶
- Pas de suicide : aucune protection à pile documentée.
- Fréquence de balayage 📺 : moyenne résolution (~25 kHz) — voir tri-sync et upscalers.
- ⚠️ Ne pas héberger de ROMs — méthode seulement.
Émulation & FPGA¶
MAME couvre la plateforme (taito/taitojc.cpp), avec des limites que le driver
signale lui-même :
- les jeux tournent à la mauvaise vitesse par rapport à des enregistrements de carte réelle — nettement audible sur Side by Side ;
- le programme DSP de Dangerous Curves plante très tôt, donc pas de 3D. Le driver se demande si c'est dû à une ROM non dumpée — sans trancher.
Une carte à imager
Ce doute sur une éventuelle ROM manquante de Dangerous Curves fait de cette carte une pièce intéressante à archiver si tu en croises une.
Photos / assets¶
(À prendre : la carte mère avec son 68040 en PGA et les cinq customs, la carte fille avec le MC68HC11, et les étiquettes des quartz X1 et X3 — elles sont trompeuses, une photo vaut mieux qu'une transcription.)
Sources & attribution¶
Texte (synthèse ; sources listées pour attribution) :
- MAME —
src/mame/taito/taitojc.cpp(LGPL-2.1+, Ville Linde, Angelo Salese, hap, d'après le driver préliminaire de David Haywood) : MC68040 à 20 MHz (10 MHz ×2, source d'horloge CY7C991), MC68HC11M0 à 8 MHz avec la note « MCU is a MC68HC11M0CFU4 which could run twice as fast », MC68EC000, TMS320C51, ES5505 ; la liste des cinq customs Taito avec leurs points d'interrogation (TC0640FIO, TC0770CMU, TC0780FPA ×2, TC0840GLU, TC0870HVP) ; les étiquettes de quartz trompeuses de X1 et X3 ; la définition d'écran 54 ÷ 3, 720 × 449 (512 × 400 visible) avec la réserve explicite « current params match vsync measurement, I suspect hsync measurement was inaccurate » ; et les limites d'émulation — vitesse de jeu erronée face aux enregistrements de carte, DSP de Dangerous Curves qui plante, peut-être à cause d'une ROM non dumpée — https://github.com/mamedev/mame/blob/master/src/mame/taito/taitojc.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.