Skip to content

EPROM: read, burn & reproduce

Replacing a blown EPROM, duplicating a healthy ROM, or reprogramming a board: the basic move of hardware preservation. This page = method; the per-game/board references (which density for which socket) live on the conversions/PCB pages.

Families & density → part mapping

Size Bits 27C part (27C = CMOS) Note
2 KiB 16 Kbit 2716 quartz window
4 KiB 32 Kbit 2732
8 KiB 64 Kbit 2764 / 27C64
16 KiB 128 Kbit 27128 / 27C128
32 KiB 256 Kbit 27C256 very common
64 KiB 512 Kbit 27C512
128 KiB 1 Mbit 27C010
256 KiB 2 Mbit 27C020
512 KiB 4 Mbit 27C040
1 MiB 8 Mbit 27C080 / 27C801
2 MiB 16 Mbit 27C160 (16-bit) 16-bit bus (68000…)
  • 8-bit (2764→27C801): 8-bit data bus (Z80, 6502, sound). 16-bit (27C16x): 16-bit word (68000) — mind the package/organisation.
  • epr- vs mpr- (Sega marking, but a general principle): epr- = reprogrammable EPROMdirectly replaceable. mpr- = factory mask ROM → needs a pinout adapter (mask pinout ≠ EPROM) to drop a 27Cxxx in its place.

Reading (dumping) a healthy ROM

  1. Universal programmer (TL866 II Plus / T48) + software; select the correct part (pinout/algorithm).
  2. Adapter if needed (PLCC→DIP, wide DIP 32/40, 16-bit).
  3. Read → save the dump, note the checksum. Compare to a known set (MAME = the durable reference) to validate integrity.

Erase & burn

  • Erase: a quartz-window EPROM erases under UV (eraser, a few minutes); OTP (no window) and Flash do not UV-erase.
  • Burn: load the binary, choose the exact part, program, then verify (the programmer re-reads and compares). A checksum matching the source dump = OK.
  • Stick a label over the quartz window after burning (prevents light erasure).

Replacing a blown EPROM

  1. Identify the original part and the required density (system PCB/conversion page; otherwise read the marking + pinout).
  2. Desolder cleanly (EPROM often on a socket → simple extraction); if soldered, see traces & vias and fit a turned-pin socket.
  3. Burn a compatible EPROM (same organisation, speed ≤), verify, insert (mind the pin-1 mark).
  4. Dead mask ROM (mpr-): use a 27Cxxx + pinout adapter, or a dedicated adapter board.

Reprogramming / converting a board

  • Many conversions = reburn another title's ROM set on the same system + set some jumpers (EPROM size, mapping). Per-game densities and jumpers: conversions (e.g. System 16, CPS-2).
  • ⚠️ Do not host ROMs/BIOS/keys: we describe the method and hardware references, not the protected content. The data comes from your own board or a legal source; MAME is a verification reference.

Pitfalls

  • Speed (ns): pick the original (too-slow EPROM = crashes).
  • 8/16-bit organisation and pinout (the 27C160 is not wired like two 27C801s).
  • Oxidised legs: re-tin / new socket.
  • OTP sold as EPROMs: don't erase — fine for a production run, not for testing.

See also

Sources & attribution

  • Synthesis of established EPROM practice; the density table = standard 27Cxxx mappings; per-game references = MAME (durable source) on the conversions pages.

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.