Midway — Y-Unit, Wolf-Unit, V-Unit, Seattle, Zeus¶
Beyond the T-Unit (Mortal Kombat II), Midway/Williams fielded a whole lineage: Y-Unit (Smash TV, MK1), Wolf-Unit (MK3, NBA Hangtime), V-Unit (Cruis'n USA), then 3D with Seattle (SF Rush) and Zeus/Vegas (MK4, Gauntlet Legends, NFL Blitz). From the TMS34010 to MIPS + 3dfx Voodoo.
The generations¶
| Hardware | Year | CPU / GPU | Games | MAME driver |
|---|---|---|---|---|
| Y-Unit | 1990 | TMS34010 | Smash TV, Total Carnage, Trog, Mortal Kombat (1992), Terminator 2 | midway/midyunit.cpp |
| T-Unit | 1992 | TMS34010 @ 50 MHz | MK II, NBA Jam — see the dedicated page | midway/midtunit.cpp |
| Wolf-Unit | 1994 | TMS34010 + DCS | Mortal Kombat 3 / UMK3, NBA Hangtime, Rampage World Tour, WWF WrestleMania | midway/midwunit.cpp |
| V-Unit | 1994 | TMS32031 | Cruis'n USA, Cruis'n World, Offroad Challenge, War Gods | midway/midvunit.cpp |
| Seattle | 1996 | MIPS R5000 + 3dfx Voodoo | San Francisco Rush, Wayne Gretzky 3D Hockey, Mace, CarnEvil, Biofreaks | midway/seattle.cpp |
| Zeus / Vegas | 1998-99 | MIPS + Zeus GPU | Mortal Kombat 4, SF Rush 2049, Gauntlet Legends/Dark Legacy, NFL Blitz, Cruis'n Exotica | midway/vegas.cpp |
- Y/T/Wolf: the TMS34010 (graphics-CPU) and its digitised actors — the whole 2D Mortal Kombat saga.
- Seattle/Zeus: Midway moves to PC-like (MIPS + Voodoo) for 3D (SF Rush, Gauntlet Legends).
- Sound: Williams ADPCM (early) → DCS (ADSP-2105, from MK II/Wolf on).
Notable games¶
Smash TV (1990), Mortal Kombat 1-4, NBA Jam, Cruis'n USA (1994), San Francisco Rush, Gauntlet Legends, NFL Blitz, CarnEvil, Rampage World Tour…
Common faults¶
| Symptom | Likely cause | Lead |
|---|---|---|
| Lost settings/scores | Flat/leaking CMOS battery | Replace + clean corrosion |
| No sound | DCS (ADSP-2105) or Williams ADPCM | Sound-board diagnosis |
| Corrupt sprites/3D | TMS34010 / Voodoo (Seattle/Zeus) | Video diagnosis per generation |
| HDD dead (Zeus/Vegas) | IDE disk on late games | Image the disk |
| No image | Power, contacts | Base diagnosis |
Modernisation & mods¶
The common ground for every JAMMA board
Video, power, control panel and upscalers depend on the cabinet rather than the board: everything is centralised in Modernising a cabinet. To run the board outside a cabinet (at home, on a display): supergun.
- Battery 🟢: a save battery is fitted (settings/counters/RTC). A leaking battery corrodes traces — check and replace it before it leaks → save batteries.
- Hard disk ⚠️: a perishable medium — image the drive before it fails, then consider an SSD/CF replacement → PCB preservation hub.
- Scan rate 📺: a TMS34010-based board: the screen configuration is programmed by the game in the graphics controller and does not appear in the driver — not measured here. In practice these boards stay at standard ~15 kHz. (Derived from the architecture documented above.) → tri-sync and upscalers.
- FPGA / emulation: see the Emulation & FPGA section below.
Repair (technician)¶
- TMS34010 (Y / T / Wolf-Unit): CPU-graphics — corrupt image = GSP / video RAM / blitter. V-Unit = TMS32031 (Cruis'n 3D).
- DCS sound (ADSP-2105) on Wolf-Unit/later: an ADPCM daughterboard to diagnose separately.
- Capacitors: recap. ROM board / EPROM sockets: contacts / turned-pin socket.
→ Methods: PCB fault-finding · Recap · EPROM · Traces & vias
Original manuals for games on this platform ✅¶
Manufacturer manuals for games running on this board. Beyond the instructions, they very often carry the full DIP settings, the connector pinout, the test procedure, the parts list and the expected voltages.
- Cruis'n USA — original manual (PDF)
- San Francisco Rush — original manual (PDF)
→ Full catalogue: service manuals, wiring & game manuals
Procedure — a dead board, step by step ✅¶
What this adds
The general method lives in PCB diagnosis. This is its application to this platform: the same order, but with the values actually expected here, so you do not have to go back and forth.
Tools: multimeter, oscilloscope (or frequency counter), current-limited bench supply, desoldering braid. → Tooling
If the board is still in a cabinet
A CRT holds its charge with the machine unplugged. → CRT safety
1. Inspection, power off. Corrosion, cut tracks, oxidised EPROM legs, leaking SMD capacitors, dubious earlier repairs.
2. The connector, before anything else. A large share of "dead boards" are a contact problem, not a fault. Clean the contacts with isopropyl alcohol and reseat — not with an abrasive eraser on a gold edge, which takes the plating off and brings the problem back worse. It costs two minutes and settles the question.
3. Power, measured on the board. Aim for +5.0 V measured as close as possible to where power reaches the board — not at the PSU output: the drop is in the loom, and that is exactly what makes a board boot on the bench and not in the cabinet. Where you probe depends on this board's connector — JAMMA edge, JVS loom or a proprietary harness — plenty of makers kept one long after JAMMA arrived — see Identification above. → Wiring Check −5 V and +12 V too if the sound stage uses them. Suspected short: bring it up current-limited and find the hot spot.
4. /RESET. It must release after power-up. Held low = the CPU never starts. A 1–2 Hz loop is not the reset circuit, it is the watchdog: the CPU is crashing at boot, so look at the bus, not at the reset.
5. Clocks. There is no measurement table for this platform — MAME's sources yield nothing usable for it. Any frequency quoted under Architecture on this page serves as a marker; otherwise compare against a working board rather than against a number: an invented value condemns healthy parts. → PCB diagnosis
6. Bus. Activity on the main CPU's address lines tells you whether it is running or frozen. Frozen with good clocks and good reset → work RAM, bus buffers, ROMs.
7. It boots but the picture or the sound is wrong — that is another job: see Common faults on this page, then signal tracing.
Emulation & FPGA¶
- Emulation: MAME (
midyunit.cpp,midwunit.cpp,midvunit.cpp,seattle.cpp,vegas.cpp). - FPGA / MiSTer: no core (TMS34010 / MIPS+Voodoo too complex) → MAME.
EPROM repair¶
Y-Unit (Mortal Kombat II, NBA Jam TE) = TMS34010 + ROM board. V-Unit (Cruis'n USA), Wolf-Unit, Seattle (SF Rush), Zeus (MK4): newer (PC-like / mask ROM). Repair = mask ROM + boot EPROM on the ROM board.
Lineage¶
Descends from the Williams 6809 (same WMS house); the T-Unit has its own page. The 3D era = MIPS + Voodoo (like Konami Hornet, Sega Lindbergh).
Photos / assets¶
(To add: Y-Unit MK1, Seattle/Zeus board, Voodoo, CMOS battery.)
Sources & attribution¶
- MAME —
midway/midyunit.cpp,midwunit.cpp,midvunit.cpp,seattle.cpp,vegas.cpp(TMS34010, MIPS+Voodoo, DCS, games) — https://github.com/mamedev/mame - Wikipedia — Midway Games / Mortal Kombat / Cruis'n — CC-BY-SA — https://en.wikipedia.org/wiki/Midway_Games
Review & corrections
How this space is used
Spotted a wrong value, an outdated procedure, a chip reference that does not match your board? Say so here, with what you observed (model, board revision, serial number, measurement). Every report is cross-checked against a source before anything changes — an unverifiable correction is published as “reported by …, not cross-checked” rather than silently applied.
Reading is open to everyone; posting requires signing in with Discord. Reports from the wiki's declared reviewers are handled first; anyone else's are read too, but go through a human before anything is changed.