Skip to the content
4 layers117.6 × 100 mmCPS3-OSCR, the printed circuit board in 3D

The purpose of this adapter is to provide additional methods for reading and writing CP System III cartridges and SIMM memories, utilizing the excellent open-source project Open Source Cartridge Reader (OSCR).

Size
117.6 × 100 mm
Copper layers
4
Thickness
4.69 mm
Parts
42
Nets
184
Pads
500
Tracks, vias
1,168, 97
Pours
2
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
12 Sep 2024
Updated
2 May 2025

Overview

CPS3-OSCR is an open-source printed circuit board by herzmx, from the herzmx/CPS3-OSCR-Adapter repository on GitHub. It is a 4-layer board of 117.6 × 100 mm with 42 parts on 184 nets, routed with 1,168 tracks and 97 vias.

It is built around the 74LS245SC and 74HCT139D. Its parts include 14 resistors, 7 connectors, 5 capacitors and 5 ICs.

Main components

2

README

README.md

CPS3 SIMM/CARTRIDGE PORT ADAPTER for OSCR

system

The purpose of this adapter is to provide additional methods for reading and writing CP System III cartridges and SIMM memories, utilizing the excellent open-source project Open Source Cartridge Reader (OSCR).

You can enable module uncomenting ENABLE_CPS3, ENABLE_FLASH8 and ENABLE_FLASH16 in Confing.h . While the R/W implementation in OSCR is not as fast as standard flash memory programmers, it allows you to dump and flash new data without needing to desolder the flash memories from the cartridge or SIMMs.

In this version, patches have been added to change the region and CD/NOCD options, based on documented dumps from MAME.

Compatibility

Cartridge

You can read and write the BIOS from a cartridge using Fujitsu MBM29F400TC (0x0423) or MBM29F400BC (0x0422) Flash ROMs.

If you flash or write a previously dumped BIOS, as documented in the MAME cps3.cpp, the following patches can be applied:

  • Region patch
  • CD/NOCD patch

Note: Use it at your own risk when working with live cartridges. Tested on:

  • Red Earth with original keys and battery
  • Street Fighter III: New Generation with original keys and battery
  • Street Fighter III: 2nd Impact
  • Street Fighter III 3rd Strike: Fight for the Futurem with original keys and battery
  • JoJo's Venture with original keys and battery
  • JoJo's Bizarre Adventure with original keys and battery
  • Ultra BIOS

SIMM's

You can read and write from 32/128Mb and 64Mb SIMMs using Fujitsu MBM29F016A (0x04AD) Flash ROMs. While CPS3 systems support multiple models of Flash ROMs, I have only tested with the Fujitsu model. Below is a list of Flash ROM models registered in the BIOS, meaning you cannot replace Flash ROMs without modifying the BIOS.

MODELDataSheetPhysical Access
MXCI MX29F016YESNO
SHARP LH28F016SUYESNO
INTEL 28F016SAYESNO
HITACHI HN98F1600T10NOYES

32/128Mb SIMMs

The SIMM is arranged as 2x8 bits across 4 banks, with each bank handling 4MB and accessing data in 16 bits. The adapter uses an LS139 to access each bank through addresses 21 and 22.

The dump is a complete 4MB/16MB file and matches with the set of files found inside the CD-ROM. For example, SIMM 3 in Street Fighter III 2nd Impact corresponds to files 30+31. You can compare or write data by joining these two files.

64Mb SIMMs

The SIMM is arranged as 4x8 bits and accesses data in 32 bits. The adapter uses an LS245 as a bus controller to access 16 bits at a time.

The dump is a complete 8MB file and matches with the set of files from the CD-ROM. For example, SIMM 1 in Street Fighter III 2nd Impact corresponds to file 10, so you can write this file directly.

Disclaimer!!!

I am not responsible for any damage to your CPS3 cartridges or SIMMs. At this time, it remains untested in live cartridges, so use it at your own risk!

License

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. You are able to copy and redistribute the material in any medium or format, as well as remix, transform, or build upon the material for any purpose (even commercial) - but you must give appropriate credit, provide a link to the license, and indicate if any changes were made.

Parts

42
QtyValueFootprintReferences
7Screw_Terminal_01x01MountingHole:MountingHole_2.2mm_M2_ISO7380_PadM2_1, M2_2, M2_3, M2_4, M2_5, M2_5, M2_6
5100nfCapacitor_SMD:C_0805_2012MetricC1, C2, C3, C4, C5
51KResistor_SMD:R_0805_2012MetricR5, R6, R7, R8, R9
52KResistor_SMD:R_0805_2012MetricR10, R11, R12, R13, R14
410KResistor_SMD:R_0805_2012MetricR1, R2, R3, R4
474LS245CPS3:SSOP-20_5.3x7.2mm_P0.65mm_.45U1, U2, U3, U4
2,
2Conn_02x03_Counter_ClockwiseConnector_PinHeader_2.00mm:PinHeader_2x03_P2.00mm_VerticalJ6, J7
1128MB5822030-3:58220303J1
15145154-15145154-1:51451541J5
164MB5822030-3:58220303J2
174HCT139Package_SO:TSSOP-16_4.4x5mm_P0.65mmU5
1CART SLOT BOTTOM ROWConnector_PinHeader_2.54mm:PinHeader_1x36_P2.54mm_VerticalJ4
1CART SLOT TOP ROWConnector_PinHeader_2.54mm:PinHeader_1x38_P2.54mm_VerticalJ3

The 40 most common of 42 parts.

Similar boards

  • 2 layers176.5 × 85.1 mmISA EMS, the printed circuit board in 3D

    ISA EMS

    hkzlab/ISA_EMS_4Mb

    ISA 4Mb EMS expansion board

    49 parts41
  • 2 layers297.2 × 180.3 mm8bit computer, the printed circuit board in 3D

    8bit computer

    vascofazza/8bit-cpu

    Schematics & code for my 74LS-based 8-bit MK1 CPU

    377 parts317MIT
  • 2 layersLM80C R6, the printed circuit board in 3D

    LM80C R6

    leomil72/LM80C

    A Z80-based homebrew computer withTMS9918, AY-3-8910, Z80 CTC, Z80 PIO, and Z80 SIO

    153 parts123GPL-3.0
  • 2 layers249.9 × 89.4 mmCSCvon8, the printed circuit board in 3D

    CSCvon8

    DoctorWkt/CSCvon8

    A crazy small 8-bit CPU built with only seventeen 7400-series chips.

    55 parts112GPL-3.0
  • 2 layers200 × 150 mmMSX ONE, the printed circuit board in 3D

    MSX ONE

    jdgabbard/MSX-ONE-Computer

    MSX 1 Computer from discrete parts

    114 parts28GPL-3.0
  • 2 layers86 × 88.3 mm68hc11, the printed circuit board in 3D

    68hc11

    EtchedPixels/Mini11

    A 68HC11 SBC for the 68HC11A CPUs

    36 parts12GPL-3.0
  • 4 layers65.4 × 111.6 mmGinger, the printed circuit board in 3D

    Ginger

    mrehkopf/Ginger

    Socket shift, CPU switch, Clockports for Amiga mITX "Denise"

    30 parts12
  • 2 layers214.6 × 123.2 mmFISC2, the printed circuit board in 3D

    FISC2

    DoctorWkt/2FISC

    FISC2: A TTL CPU with Some 16-bit Capabilities

    73 parts10GPL-3.0

Questions

How big is the CPS3-OSCR PCB?

It measures 117.6 × 100 mm and has 4 copper layers, 4.69 mm thick.

What parts does the CPS3-OSCR use?

42 parts, built around the 74LS245SC and 74HCT139D. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the CPS3-OSCR KiCad files?

From the herzmx/CPS3-OSCR-Adapter repository on GitHub, at the commit this page was made from: the board is CPS3-OSCR.kicad_pcb and its schematic CPS3-OSCR.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the CPS3-OSCR design in my own project?

Its repository states no licence, so its author keeps all rights: ask herzmx before reusing the design.