Taito — classics (Space Invaders, Qix, Bubble Bobble…)¶
Taito is where it all began: Space Invaders (1978) created the arcade industry. Then a long line of 8-bit classics — Qix, Elevator Action, Bubble Bobble, Rastan — on various Z80 hardware. Ultra-mature emulation, MiSTer cores for many.

PCB Taito (Rainbow Islands) — photo by Noggin73, domaine public (Wikimedia Commons).
Identification¶
| Field | Value |
|---|---|
| Manufacturer | Taito |
| Years | 1978 → late 80s |
| CPU | Intel 8080 (Space Invaders) then Z80 (most) |
| Settings | DIP |
The main classic boards¶
| Hardware | CPU | Games (examples) | MAME driver |
|---|---|---|---|
| Space Invaders (1978) | Intel 8080 @ 2 MHz | Space Invaders (+ variants/clones) | taito/8080bw.cpp |
| Taito SJ (1981-84) | Z80 | Jungle King/Hunt, Elevator Action, Alpine Ski | taito/taitosj.cpp |
| "The Legend of Kage" / early | Z80 | The Legend of Kage, Bubble Bobble, Rastan | taito/bublbobl.cpp, taito/rastan.cpp |
Space Invaders: an 8080 drives a B&W bitmap framebuffer; the "colour" comes from a plastic overlay (green/red strips) glued on the screen — no hardware colour. It's the game that launched the golden age.
Notable games¶
Space Invaders (1978), Qix (1981), Jungle King (1982), Elevator Action (1983), The Legend of Kage (1985), Bubble Bobble (1986), Rastan (1987), Operation Wolf (1987)…
DIP settings transcribed¶
Several Taito games have their DIP tables in-wiki (e.g. Bubble Bobble): → DIP reference.
Common faults¶
| Symptom | Likely cause | Lead |
|---|---|---|
| Corrupt bitmap image (SI) | video RAM / 8080 | RAM test, contacts |
| Wrong colours (SI) | misplaced overlay | Reposition the overlay |
| Corrupt sprites/tiles | video RAM, customs | RAM test |
| No sound | amp / PSG / SN76489 | Sound-stage diagnosis |
| No image | Power, CPU, harness | Base diagnosis |
Old boards → discrete TTL logic, recap + re-soldering; many period Space Invaders bootlegs (identification).
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.
- Storage 🟡: the game lives in EPROM/mask ROM on the board. Changing or restoring a game means reprogramming the EPROMs (and, for a mask ROM, using a pinout adapter) → EPROM method.
- Media preservation: replacing the original storage, multicarts, ODEs and modern options by family → PCB preservation hub.
- Scan rate 📺: ~15.62 kHz / 59.2 Hz — standard resolution, a classic 15 kHz chassis is fine → tri-sync and upscalers.
(Computed from the MAME sources —
taito/bublbobl.cpp— pixel clock ÷ htotal.) - FPGA / emulation: see the Emulation & FPGA section below.
Repair (technician)¶
- 8080/Z80 logic (80s): diagnose TTL / RAM / buffers, good/bad comparison. Space Invaders = 8080 + analog/SN76477 sound (a dedicated stage).
- Sound: amp + SN76489/PSG — diagnose separately.
- 2716/2732 EPROMs on sockets: oxidised legs → re-tin / turned-pin socket.
- Edge contacts: clean; check the PSU (few electrolytics).
→ Methods: PCB fault-finding · Recap · EPROM · Traces & vias
Expected clocks — measurement table ✅¶
Values extracted from the MAME sources for this platform. On a scope or frequency counter, a clock that is missing or off-value points straight at the crystal, the divider or the chip at fault — the fastest starting point on a dead board.
| Component | Expected clock | Role |
|---|---|---|
| YM2203 | 3 MHz | FM (sound) |
| Z80 | 3 MHz · 6 MHz | sound CPU (usually) |
How to read this table
Several values for one component = several board variants in this family (or several instances of the chip clocked differently). These frequencies are those of the clock signal at the component's input, not of its original crystal — on many boards the clock is divided down from a single master crystal.
Archived original schematics ✅¶
Manufacturer schematics for games in this family, archived locally (so they do not depend on a third-party site staying up). They give the board's real functional breakdown: clock tree, address decoding, video stage, sound stage, power supply — exactly what you need to trace a missing signal back to its source.
-
Operation Wolf — full schematic (PDF)
-
Gladiator — full schematic (PDF)
- Polaris — full schematic (PDF)
- Space Invaders (manual + schematics) — full schematic (PDF)
Scope and limits
A schematic applies to the game and revision named. Within one family the general breakdown (buses, decoding, sound/video stages) carries over from board to board, but component references and custom chip pinouts do not transpose between titles. Use it as a map of the logic, not as a cross-reference table.
Source: the Arcade Game Manuals collection on the Internet Archive. Manufacturer documents with no explicit licence, kept here for preservation (machines out of service for over 25 years).
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.
- Operation Wolf — original manual (PDF)
- Space Invaders — original manual (PDF)
- Space Invaders — original manual (PDF)
- Space Invaders — original manual (PDF)
- Space Invaders — original manual (PDF)
→ Full catalogue: service manuals, wiring & game manuals
DIP settings ✅¶
8 games on this platform, settings extracted from the MAME sources (INPUT_PORTS_START blocks). The Position column gives the switch's physical reference on the board (SW2:!3,!4 = bank SW2, levers 3 and 4) — which is what lets you set it up without the paper manual. Games are sorted by MAME set name.
DIP settings — MAME set boblbobl
| Setting | Position | Options (default in bold) |
|---|---|---|
| Mode | — | Game, English · Game, Japanese · Test (Grid and Inputs) · Test (RAM and Sound) |
| Flip Screen | — | Off · On |
| Demo Sounds | — | Off · On |
| Coin A | — | 2C 1C · 1C 1C · 2C 3C · 1C 2C |
| Coin B | — | 2C 1C · 1C 1C · 2C 3C · 1C 2C |
| Difficulty | — | Easy · Normal · Hard · Very Hard |
| Bonus Life | — | 20K 80K 300K · 30K 100K 400K · 40K 200K 500K · 50K 250K 500K |
| Lives | — | 1 · 2 · 3 · 5 |
| Monster Speed | — | Normal · Medium · High · Very High |
DIP settings — MAME set boblcave
| Setting | Position | Options (default in bold) |
|---|---|---|
| ROM Type | DSW-B:8 | IC52=512kb, IC53=none · IC52=256kb, IC53=256kb |
DIP settings — MAME set bublbobl
| Setting | Position | Options (default in bold) |
|---|---|---|
| Mode | DSW-A:1,3 | Game, English · Game, Japanese · Test (Grid and Inputs) · Test (RAM and Sound)/Pause |
| Flip Screen | DSW-A:2 | Off · On |
| Demo Sounds | DSW-A:4 | Off · On |
| Coin A | DSW-A:5,6 | 2C 1C · 1C 1C · 2C 3C · 1C 2C |
| Coin B | DSW-A:7,8 | 2C 1C · 1C 1C · 2C 3C · 1C 2C |
| Difficulty | DSW-B:1,2 | Easy · Normal · Hard · Very Hard |
| Bonus Life | DSW-B:3,4 | 20K 80K 300K · 30K 100K 400K · 40K 200K 500K · 50K 250K 500K |
| Lives | DSW-B:5,6 | 1 · 2 · 3 · 5 |
| ROM Type | DSW-B:8 | IC52=512kb, IC53=none · IC52=256kb, IC53=256kb |
DIP settings — MAME set bublboblp
| Setting | Position | Options (default in bold) |
|---|---|---|
| Language | SW A:1 | English · Japanese |
| Flip Screen | SW A:2 | Off · On |
| Demo Sounds | SW A:4 | Off · On |
| Coin A | SW A:5,6 | 2C 3C · 1C 1C · 2C 1C · 1C 2C |
| Coin B | SW A:7,8 | 2C 3C · 1C 1C · 2C 1C · 1C 2C |
| Difficulty | DSW-B:1,2 | Easy · Normal · Hard · Very Hard |
| Bonus Life | DSW-B:3,4 | 20K 80K 300K · 30K 100K 400K · 40K 200K 500K · 50K 250K 500K |
| Lives | DSW-B:5,6 | 1 · 2 · 3 · 5 |
| Edit Mode | DSW-B:7 | Off · On |
DIP settings — MAME set dland
| Setting | Position | Options (default in bold) |
|---|---|---|
| Game | — | Dream Land · Super Dream Land |
| Lives | — | 1 · 2 · 3 · 100 (Cheat) |
DIP settings — MAME set sboblboblb
| Setting | Position | Options (default in bold) |
|---|---|---|
| Game | — | Bobble Bobble · Super Bobble Bobble |
| Lives | — | 1 · 2 · 3 · 100 (Cheat) |
DIP settings — MAME set tokio_base
| Setting | Position | Options (default in bold) |
|---|---|---|
| Cabinet | SW A:1 | Upright · Cocktail |
| Flip Screen | SW A:2 | Off · On |
| Demo Sounds | SW A:4 | Off · On |
| Coin A | SW A:5,6 | 2C 1C · 1C 1C · 2C 3C · 1C 2C |
| Coin B | SW A:7,8 | 2C 1C · 1C 1C · 2C 3C · 1C 2C |
| Enemies | SW B:1 | Few (Easy) · Many (Hard) |
| Enemy Shots | SW B:2 | Few (Easy) · Many (Hard) |
| Bonus Life | SW B:3,4 | 100K 400K · 200K 400K · 300K 400K · 400K 400K |
| Lives | SW B:5,6 | 3 · 4 · 5 · 6 |
| Language | SW B:8 | English · Japanese |
DIP settings — MAME set tokiob
| Setting | Position | Options (default in bold) |
|---|---|---|
| Lives | SW B:5,6 | 3 · 4 · 5 · 99 (Cheat) |
Check against your own board
These settings apply to the game and revision described by MAME. One title may have several DIP sets depending on region or revision, and some systems use soft-dips (settings in memory, via the test menu) rather than physical switches. In case of a discrepancy, the board's silkscreen and the test menu are authoritative.
See also: DIP reference · game manuals
Emulation & FPGA¶
- Emulation: MAME (
8080bw.cpp,taitosj.cpp,bublbobl.cpp,rastan.cpp…). - FPGA / MiSTer: cores available (Space Invaders, Bubble Bobble, Rastan, Elevator Action…).
EPROM repair¶
8080 program (Space Invaders, 1978) in small 2708 / 2716 EPROMs (1-2 KB), + the famous cellophane colour overlay. Period components (±5/±12). Many variants/licences (Midway).
Lineage¶
Precedes the Taito 16-bit systems (B/F1/F2/F3) on the 68000.
Photos / assets¶
(To add: Space Invaders board, colour overlay, Bubble Bobble board.)
Sources & attribution¶
-
Photo PCB Taito (Rainbow Islands) — Noggin73, domaine public, Wikimedia Commons — https://commons.wikimedia.org/wiki/File:Rainbow_Islands_PCB.jpg
-
MAME —
taito/8080bw.cpp,taitosj.cpp,bublbobl.cpp,rastan.cpp(8080/Z80, games) — https://github.com/mamedev/mame - Wikipedia — Space Invaders / Taito — CC-BY-SA — https://en.wikipedia.org/wiki/Space_Invaders
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.