MSX Architecture Machine Hub

MSX1, MSX2, MSX2+ & Turbo R workbench reference — Sony/Philips/Panasonic/Yamaha quirks, TMS9918 & V9938/V9958 VRAM diagnostics, JP vs EU 8-pin RGB SCART pinouts, and 50-pin cartridge slot restoration.

MSX Multi-Rail PSU (+5V / +12V / −12V), Cartridge Audio & MSX2 NiCd Battery Alert

Because the MSX standard was built by over 20 manufacturers, power supplies are NOT interchangeable between brands — yet the internal MSX cartridge bus strictly requires +5 V DC, +12 V DC, and −12 V DC! Even on late single-supply 9 V DC machines (like the Panasonic FS-A1), an internal DC-DC converter generates +12 V for cartridge slot Pin 48 because Konami SCC, MSX-MUSIC (`FM-PAC` YM2413), and MSX-AUDIO cartridges use the +12 V/−12 V rails to power their analog op-amp audio stages! Meanwhile, on almost every MSX2 and MSX2+, a rechargeable 3.6 V NiCd barrel battery for the `RP5C01` RTC/CMOS RAM leaks alkaline crystals across the V9938 VDP tracks!

1 Why +12V Matters for SCC / FM Sound

  • Silent Konami SCC / FM-PAC Cartridge? If a Konami SCC game (Nemesis 2, Snatcher, Contra) or FM-PAC boots and plays fine, but its custom cartridge music is completely silent (only internal PSG sound effects play), check Cartridge Slot Pin 48 (`+12 V`) and Pin 50 (`−12 V`)!
  • Many cartridges power their internal `TL072` / `4558` audio op-amp from `+12 V` before feeding the mixed sound back into the MSX motherboard via Cartridge Pin 49 (`SOUNDIN`).
  • On Panasonic FS-A1 / Sony HB-F1 models, a failed internal +12 V boost transistor or open fuse (`ICP-N15` IC protector) kills all cartridge audio and RGB SCART blanking!

2 MSX2 `RP5C01` NiCd Battery & SMD Caps

  • MSX2 / MSX2+ NiCd Clock Battery: Every MSX2 has a Ricoh `RP5C01` Real-Time Clock + 52-byte NVRAM chip backed by a blue/green 3.6 V NiCd battery (on Philips NMS-8245/8250/8280 and Sony HB-F700/F900). Clip it off immediately, neutralise green corrosion with white vinegar + 99% IPA, and fit a coin-cell holder (`CR2032` + `1N4148` blocking diode in series with the charging resistor!).
  • Panasonic FS-A1ST / FS-A1GT (Turbo R) SMD Caps: Just like the Amiga 600/1200, early-1990s Panasonic MSX2+ and Turbo R boards use surface-mount electrolytic capacitors around the DAC/audio and Sony CXA1145 video encoder that leak and eat PCB vias!

3 Panasonic 720KB 3.5″ Drive Belt Alert

  • Almost all MSX2, MSX2+, and Turbo R computers with built-in 3.5″ floppy drives (Panasonic `JU-253`, Sony `MP-F52W`, Philips `NMS-8245` single-sided `VY-0010`) use a belt-driven spindle motor (unlike direct-drive Amiga/PC drives)!
  • When the rubber belt stretches (`~65–72 mm Ø × 1.2–1.5 mm` depending on mechanism), the MSX boots to BASIC instead of `MSX-DOS` and returns `Disk offline` on `FILES`.

MSX Generations (MSX1 – Turbo R) & Manufacturer Quirks

Compare the four official MSX hardware generations and explore brand-specific engineering across Philips, Sony, Panasonic, and Yamaha.

The Four Official MSX Hardware Generations 1983 – 1993 • Kazuhiko Nishi / ASCII & Microsoft

Unveiled by ASCII Corporation's Kazuhiko Nishi and Microsoft in June 1983, MSX established a strict hardware and BIOS software standard so any MSX cartridge, joystick, or disk program ran across machines from Sony, Panasonic, Philips, Yamaha, Toshiba, Canon, Sanyo, and Daewoo:

Generation CPU & Clock Video VDP & VRAM Screen Modes & Sprites Audio & Standard Extras
MSX1
(1983–1986)
Zilog Z80A
@ 3.579545 MHz
(1 `M1` wait state!)
TI TMS9918A (NTSC Composite)
or TMS9928A/9929A (YPbPr/RGB)
+ 16 KB VRAM (8×4116 or 2×4416)
256×192, 16 colours (`SCREEN 2/3`), 32 hardware sprites (max 4 per scanline) GI AY-3-8910 / Yamaha YM2149 (3-ch PSG) + 8 KB–64 KB Main RAM + 32 KB MSX-BASIC 1.0 ROM
MSX2
(1985–1988)
Z80A @ 3.58 MHz
(Some models add 5.37 MHz turbo)
Yamaha V9938 (MSX-VIDEO)
+ 64 KB or 128 KB VRAM
(4× 4464 or 4× 41464)
256×212 / 512×212 (up to 424 interlaced), 256 colours (`SCREEN 8`) or 16 from 512 palette, hardware Blitter (`VDP commands`), 8 sprites/line AY-3-8910 / YM2149 + Ricoh RP5C01 RTC (clock/CMOS) + Memory Mapper (64 KB–512 KB RAM) + MSX-BASIC 2.0
MSX2+
(1988–1990)
Z80A @ 3.58 MHz
(Panasonic/Sony: 5.37 MHz switchable)
Yamaha V9958
+ 128 KB VRAM
Adds YJK true-colour modes: 19,268 simultaneous colours (`SCREEN 12`), plus hardware horizontal pixel scroll register (`R#25–R#27`)! Built-in MSX-MUSIC (`YM2413` OPLL 9-ch FM synth) + JIS Kanji ROM + 64 KB+ Mapped RAM + MSX-BASIC 3.0
MSX Turbo R
(1990–1993 • FS-A1ST / GT)
ASCII R800 (16-Bit!)
@ 7.16 MHz (28.6 MHz internal)
+ Z80 co-processor
Yamaha V9958
+ 128 KB VRAM
All MSX2+ modes accelerated by high-speed R800 page-mode DRAM & VDP wait-controller (`S1990`) Built-in 8-bit PCM DAC/ADC + MSX-MUSIC (`YM2413`) + Built-in MIDI (`FS-A1GT`) + 256 KB (`ST`) / 512 KB (`GT`) SRAM/DRAM + ROM disk

Why the MSX Z80A Inserts 1 Wait State on Every `M1` (Opcode Fetch) Cycle: The MSX standard mandates that the motherboard assert Z80 `/WAIT` for exactly 1 clock T-state whenever `/M1` is active so slow 1983 mask ROM cartridges had extra access time — which means an MSX Z80A at 3.58 MHz executes code at roughly the same effective speed as a 3.1 MHz non-waited Z80!

Diagnostic Checklist, VDP VRAM Faults & Slot Logic

Isolating Z80A vs VDP/VRAM faults on MSX1 (`TMS9918A`) and MSX2 (`V9938`), and fixing Primary/Secondary Slot selection bugs.

▦

VDP & Video RAM Diagnostics (`4116` vs `4416` vs `4464`)

On all MSX computers, Video RAM (VRAM) is wired exclusively to the VDP (`TMS9918A` or `V9938`/`V9958`) and is completely separate from the Z80A's main system RAM! This makes isolating Main RAM vs VRAM effortless:

  1. Garbled Characters, Dotted Vertical Stripes, or Wrong Sprite Pixels (But Blind-Typing `BEEP` Works!):
    • If the machine boots to the blue screen with corrupted letters (e.g. `MSX` becomes `M3X` or `OQX`) and typing BEEP + RETURN beeps normally, your Z80A, BIOS ROM, 8255 PPI, and Main System RAM are 100% healthy — one of your VRAM chips connected to the VDP has failed!
  2. MSX1 VRAM Configurations (`16KB`):
    • 8× `4116` (16K×1, Triple-Rail −5V/+12V/+5V): Used on early 1983/84 MSX1s (Philips VG-8010/8020, Sony HB-55/75, Spectravideo SVI-728). Touch all 8 chips after 30 seconds — a shorted 4116 runs boiling hot! Remember that TI numbers TMS9918A data bits backwards (`RD0 = MSB Bit 7` down to `RD7 = LSB Bit 0`)!
    • 2× `4416` (16K×4, Single-Rail +5V): Used on compact 1985 MSX1 boards (Casio, Toshiba, late Sony). One chip handles the upper nibble (`RD0–RD3`), the other handles the lower nibble (`RD4–RD7`).
  3. MSX2 / MSX2+ / Turbo R VRAM (`64KB` or `128KB`):
    • Uses two or four 4464 / 41464 (64K×4, DIP-18 or ZIP) DRAMs driven by the Yamaha `V9938`/`V9958`. If the white MSX2 boot logo shows vertical bars across the swooshing blocks, piggyback a known-good 4464 over each VRAM chip to spot the bad nibble!
⚙

Black Screen Tree & Primary / Secondary Slot Architecture

The MSX divides the Z80's 64 KB address space into four 16 KB pages (`Page 0: $0000`, `Page 1: $4000`, `Page 2: $8000`, `Page 3: $C000`), and routes each page to one of four Primary Slots (`Slot 0–3`) via 8255 PPI Port A (`#A8`)!

  1. 1. Why a Dead 8255 PPI (`IC` mapped at `#A8–#AB`) Causes an Instant Black Screen:
    • At power-on reset, the 8255 resets Port A (`#A8`) to `00000000` binary — selecting Primary Slot 0 (Main BIOS + BASIC ROM) across all four 16 KB pages so the Z80A can boot at `$0000`!
    • The BIOS then scans Slots 0–3 to find the largest contiguous RAM bank and switches Page 3 (`$C000–$FFFF`) and Page 2 (`$8000–$BFFF`) to that RAM slot for the stack and system variables. If the 8255 PPI (or the `74LS138` / `74LS153` slot-select decoder) fails, the CPU cannot switch RAM into Page 3 (`$C000`) and crashes immediately before initialising the VDP!
  2. 2. Secondary Slot Register (`$FFFF`) on MSX2: When a Primary Slot is expanded into four Sub-Slots (`Slot 3-0, 3-1, 3-2, 3-3`), writing to address $FFFF selects which Sub-Slot is active (and reading `$FFFF` returns the bitwise complement / inverted value!).
  3. 3. Cartridge Slot Pin 44 & Pin 46 (`SW1` / `SW2` Insertion Sense Loop!):
    • Look at Pins 44 and 46 on the 50-pin MSX cartridge slot — on many cartridges, Pins 44 and 46 are shorted together on the cartridge PCB! Some MSX motherboards route a reset/power interlock through Pins 44/46 so plugging or unplugging a cartridge while powered on forces a reset (or cuts slot power). Still, never hot-plug an MSX cartridge with power on!

Japanese vs. European 8-Pin DIN RGB Video & Proprietary PSU Pinouts

WARNING: Japanese MSX (`EIAJ RGB-8`) and European Philips/Sony MSX (`Euro DIN-8`) use the SAME 8-pin horseshoe DIN connector with COMPLETELY DIFFERENT pinouts!

8-Pin DIN RGB Video: Japanese (EIAJ) vs. European (Philips / Sony P) DANGER: DO NOT MIX CABLES!

Both Japanese MSX2/2+/Turbo R computers (Panasonic `FS-A1`, Sony `HB-F1XD`, Sanyo `Wavy`) and European MSX computers (Philips `NMS-8245/8250/8280`, Sony `HB-F700P`) use an 8-pin 262° horseshoe DIN socket (except a few early boards using 270° circular DIN) — but every single pin is in a different position!

DIN-8 Pin Japanese MSX Standard (EIAJ)
(Panasonic FS-A1 / Sony JP / Yamaha)
European MSX Standard
(Philips NMS-82xx / Sony HB-xxxP)
SCART Target Pin
Pin 1Audio Out (Mono/Right)Composite Video / CSYNCAudio → SCART 2/6; Sync → SCART 20
Pin 2GND (0 V Shield)GND (0 V Shield)SCART Pins 4, 5, 9, 13, 17, 18, 21
Pin 3Composite Video / CSYNCAudio Out (Mono/Left)Sync → SCART 20; Audio → SCART 2/6
Pin 4Ys (RGB Blanking / +5V)GREEN (Analog 0.7 V)Ys → SCART 16; Green → SCART 11
Pin 5+12 V DC Out (or Audio Left)+12 V DC Out (Status/Aspect)SCART Pin 8 (or Pin 16 via 180 Ω)
Pin 6RED (Analog 0.7 V)RED (Analog 0.7 V)SCART Pin 15 (Red In)
Pin 7GREEN (Analog 0.7 V)BLUE (Analog 0.7 V)Green → SCART 11; Blue → SCART 7
Pin 8BLUE (Analog 0.7 V)Ys (RGB Blanking, ~1–3 V)Blue → SCART 7; Ys → SCART 16

Why Panasonic `FS-A1WX / WSX / ST / GT` RGB Cables Need 470 μF Series Capacitors or Resistor Pull-downs: On late Panasonic MSX2+ and Turbo R boards, the `Sony CXA1145M` video encoder outputs R/G/B with a DC offset (expecting 75 Ω termination to ground + AC coupling inside the monitor). Make sure your Japanese MSX RGB SCART cable includes 220 μF–470 μF electrolytic coupling caps (positive toward MSX) on Red, Green, and Blue!

Common Proprietary MSX Power Connectors

Always verify the exact model sticker before building a bench PSU adapter:

Machine / SeriesConnector TypePinout & Voltage Spec
Panasonic FS-A1 (Original) Barrel / 3-Pin 9 V AC or 9 V DC (@ 1.5 A). Internal DC-DC board generates +5 V, +12 V, −12 V.
Panasonic FS-A1F / MK2 / WX / WSX / ST / GT Internal Mains PSU (100 V AC JP) Built-in 100 V AC switching PSU! In 230 V UK/Europe, always use a 100 V step-down transformer (or replace the internal PSU with a 100–240 V MeanWell module).
Sony HitBit HB-55P / HB-75P 4-Pin Rectangular / DIN (`HBP-75`) Supplies +5 V DC (1.35 A), +9.5 V DC (0.4 A, regulated internally to +5V VRAM/+12V), −12 V DC, and GND.
Yamaha CX5M (`MU-01` PSU) 7-Pin DIN External transformer/regulator brick supplying +5 V DC (2.0 A), +12 V DC (0.3 A), and −12 V DC (0.2 A) for the internal SFG-01/05 FM synth!

Audio Mixing: Internal PSG + OPLL (`YM2413`) + Cartridge (`Pin 49`)

All MSX motherboards mix the internal AY-3-8910 / YM2149 PSG with Cartridge Slot Pin 49 (`SOUNDIN`) before feeding the rear Audio/Monitor jack. On early Japanese MSX1 models that only routed `SOUNDIN` to the RF modulator (and forgot to mix it into the RCA/DIN line-out!), solder a 10 kΩ resistor + 4.7 μF capacitor in series from Cartridge Slot Pin 49 to the internal PSG mixing node so Konami SCC and FM-PAC cartridges play through your RGB SCART cable!

50-Pin MSX Cartridge Slot Pinout & Restoration

Standard 50-pin (2×25, 2.54 mm pitch) MSX expansion slot pinout shared across every MSX1, MSX2, MSX2+, and Turbo R.

Looking down into the top/front cartridge slot of an MSX computer: Pin 1 is on the Left-Rear (away from the keyboard), Pin 2 is on the Left-Front (nearest the keyboard), Pin 49 is on the Right-Rear, and Pin 50 is on the Right-Front. (On a cartridge PCB, the component side faces up/rear toward the Odd pins 1–49, and the solder side faces down/front toward the Even pins 2–50):

Odd Pin (Rear / Top) Signal Even Pin (Front / Bottom) Signal Odd Pin (Rear / Top) Signal Even Pin (Front / Bottom) Signal
1/CS1 (`$4000–$7FFF` Page 1 Read)2/CS2 (`$8000–$BFFF` Page 2 Read)27A128A0
3/CS12 (`$4000–$BFFF` Combined)4/SLTSL (Primary Slot Select `$0000–$FFFF`!)29A330A2
5Reserved6/RFSH (Z80 DRAM Refresh)31A532A4
7/WAIT (Pull low to add CPU wait states)8/INT (Maskable Interrupt Request)33A1234A7
9/M1 (Z80 Machine Cycle 1 / Opcode)10/BUSDIR (Pull low when driving Data Bus on I/O Read!)35A1436A6
11/IORQ (I/O Request)12/MERQ (Memory Request)37A938A8
13/WR (Write Strobe)14/RD (Read Strobe)39A1140A10
15/RESET (System Reset)16Reserved41GND (0 V)42CLOCK (3.579545 MHz CPU Clock)
17A1518A1343GND (0 V)44SW1 (Cart Insertion Protect Loop A)
19D620D745+5 V DC46SW2 (Cart Insertion Protect Loop B)
21D422D547+5 V DC48+12 V DC (Op-Amp / Disk / Flash Power)
23D224D349SOUNDIN (External Cartridge Audio In!)50−12 V DC (Negative Op-Amp Rail)
25D026D1Note: Address pins A6, A7, A12, A13, A14, A15 are deliberately scrambled to match 2764/27128 EPROM routing!

Why `Pin 10 (/BUSDIR)` Is Critical for External I/O Cartridges: Because the MSX buffers the Z80 data bus internally with a bi-directional `74LS245` transceiver, any cartridge that responds to an I/O port read (`/IORQ` + `/RD`) MUST pull Pin 10 (`/BUSDIR`) low during that read cycle to flip the motherboard's data buffer direction inward toward the CPU! (Memory reads inside `/SLTSL` flip the buffer automatically).

Chip & MSX-Engine Reference

Interactive IC Pinout Finder cards plus Yamaha V9938/V9958 VDPs, YM2413 OPLL, and ASCII R800 / S1985 / T9769 system engines.

Yamaha VDP, Audio & MSX-Engine VLSI Reference

ChipPackageRole & Upgrade Notes
Yamaha V9938
(MSX2 VDP)
SDIP-64 (Shrink-DIP, 1.778 mm pitch!) MSX2 Video Display Processor with built-in analog RGB DAC, hardware blitter, and 128 KB VRAM support. Runs warm — attach a low-profile heatsink!
Yamaha V9958
(MSX2+ / Turbo R VDP)
SDIP-64 Adds 19,268-colour YJK modes and smooth horizontal pixel scroll. Popular MSX2 → MSX2+ Mod: A V9958 can replace a V9938 in an MSX2 (requires lifting/adapting a few pins for the external `CXA1145` RGB encoder and composite sync)!
Yamaha YM2413 (OPLL) DIP-18 / SOP-24 9-channel 2-operator FM synthesizer (`MSX-MUSIC` / `FM-PAC`) mapped at I/O ports `#7C` and `#7D`.
Yamaha S1985 / Toshiba T9769A/B/C QFP-100 / QFP-144 (MSX-Engine) Single-chip MSX2/2+ system ASICs integrating the 8255 PPI, YM2149 PSG, Memory Mapper (`#FC–#FF`), Slot Expanders, and Kanji/RTC interfaces!
ASCII R800 + S1990 QFP-100 (MSX Turbo R) 16-bit Z80-superset RISC-pipelined processor with hardware 16×16 multiply (`MULUB`/`MULUW`) managed by the `S1990` CPU-switcher engine (`CHGCPU` BIOS call).

MSX BIOS / Sub-ROM & MegaROM Cartridge EPROM Guide

Every MSX1 contains a 32 KB Main ROM (`$0000–$3FFF` = MSX BIOS; `$4000–$7FFF` = MSX-BASIC), while MSX2 and MSX2+ machines add a 16 KB Sub-ROM (`MSX2 Extension BIOS`) in an expanded sub-slot:

ROM / CartridgeStandard SizeEPROM Substitution & Mapper Notes
Main BIOS + BASIC ROM 32 KB (28-Pin) 27C256 (32 KB JEDEC) is a direct drop-in on most 28-pin boards! (On early 24-pin 23128/23256 Sony/Philips sockets, check Pin 27/20 jumper links). Great for upgrading international keyboard layouts or NTSC/PAL default bit (`$002B` in BIOS)!
16KB / 32KB Unbanked Game Cartridges 16 KB / 32 KB Uses 27C128 (`16KB`, `/CS1` Pin 1) or 27C256 (`32KB`, `/CS12` Pin 3). All ROM cartridges begin with the magic 2-byte header 41 42 (`"AB"` in ASCII) at `$4000` (or `$8000`) followed by the `INIT` execution pointer!
MegaROM Mappers (128KB – 4MB) 27C010 / 29F040 Flash Konami4, Konami5 (with SCC), ASCII8, and ASCII16 bank-switch 8 KB or 16 KB pages into `$4000–$BFFF`. Modern Carnivore2, MegaFlashROM SCC+ SD, and Rookiedrive cartridges emulate all mappers, SCC+, FM-PAC, and Nextor CF/SD storage in one slot!

Resources & Further Reading

Blog posts, interactive bench tools, and essential MSX hardware & repair communities.

Bench Tools & Machine Hubs

External MSX Resources

Theme Palette

Default Dark
High-contrast dark
Amber Terminal
Monochrome amber
Matrix CRT
Phosphor green
Workbench Light
Clean light mode

Audio & Display

Relay Click Sounds Web Audio API — soft mechanical clicks
CRT Scanline & Flicker Pure CSS overlay effect

System Info

Customization Panel Theme preference, audio FX, and CRT overlay settings are saved to your browser's localStorage and persist between visits. No cookies or server-side storage is used.
Keyboard Shortcuts Press Esc to close this panel. Use the header moon/sun icon to cycle themes.