Skip to the content
4 layers108 × 25.3 mm64MB SIMM, the printed circuit board in 3D

CPS3 NOS is an alternative to the original SIMMs for CPS3; currently, the available options include clone SIMMs with old-stock FLASH memory and Ultra SIMMs by DS.

Size
108 × 25.3 mm
Copper layers
4
Thickness
1.2 mm
Parts
39
Nets
157
Pads
688
Tracks, vias
1,145, 156
Pours
2
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
19 Nov 2024
Updated
17 Jul 2026

Overview

64MB SIMM is an open-source printed circuit board by herzmx, from the herzmx/cps3-nos repository on GitHub. It is a 4-layer board of 108 × 25.3 mm with 39 parts on 157 nets, routed with 1,145 tracks and 156 vias.

It is built around the 74LVC245AD, 74LVC827AD and 74LVC4245AD, with the LM1117-3.3 among its other parts. Its parts include 18 capacitors, 10 ICs, 4 resistors and 2 connectors.

Main components

4

README

README.md

CPS3 NOS (NOR Open SIMM)

system

CPS3 NOS is an alternative to the original SIMMs for CPS3; currently, the available options include clone SIMMs with old-stock FLASH memory and Ultra SIMMs by DS.

The project shares similarities with UltraSIMM but is not based on it. Instead, it is a new implementation built using publicly available pinouts and CPS3 schematics from FPGA projects.

The initial design aimed to use SPANSION NOR FLASH as the main memory, but this proved unfeasible due to speed limitations causing significant instability. As a result, MICRON NOR FLASH was used instead. While this is the same type of memory used in UltraSIMM and shares its pinout, but it's not directly compatible with UltraSIMM/UltraBIOS setup, because it is an entirely separate implementation.

The primary purpose of this project is to provide an alternative to SIMMs for catridges with original keys and battery, addressing the risks involved when updating the BIOS using the CPS3 SIMM/CARTRIDGE PORT ADAPTER for OSCR. This project is not intended to create a new multi-SIMM solution. Given this primary purpose, it is very likely that UltraSIMM would also works on catridges with original keys and battery, though I do not have access to one to confirm.

Issue Detected on 128MB NOS Module (Resolved)

An issue was previously identified with the 128MB NOS module, causing intermittent problems after extended use and potentially impacting game performance.

This has been fixed by replacing the LS148 logic with LVC00 and LVC08 gates to handle bank switching on the 128MB memory. This change improved response speed, resulting in consistent and stable reads.

If you built a module before this fix, we recommend updating to the latest source files.

Assembly/Production

Gerber, BOM, and POS files are provided in the hw directory. You can send them directly to a PCB fabrication company or assemble the boards yourself.

When assembling, consider that the minimum pitch is 0.5mm, and the footprint for capacitors and resistors is 0603.

Important!!!, PCB tickness it's 1.2mm

64MB SIMM

For 64MB SIMMs, you can use the following parallel NOR FLASH memory chips:

  • Micron MT28EW256/512/01G
  • Spansion S29256/512/GL01G (use the 100ns speed version)

128MB SIMM

For 128MB SIMMs, only Micron MT28EW01G parallel NOR FLASH is supported. During development and testing, Spansion memory did not work as expected with bank switching on the 128MB SIMM.

Notes

  • Use only one type of SIMM when assembling a single 64MB SIMM.
  • You can mix Micron and Spansion SIMMs if needed.

How to use

CPS3 can only handle four types of FLASH memory due to the instructions used for flashing new games through the system, these instructions are supported and coded in the BIOS.

To make a new NOR FLASH memory compatible with CPS3, a BIOS patch is required.

BIOS Patch

The bios_patch.py script allows you to apply patches to your current BIOS, adding compatibility for SPANSION and MICRON NOR FLASH.

For example, if you have a dump of Street Fighter III 3rd Strike, you can execute the following command to patch BIOS:

bash
python bios_patch.py sfiii3_usa.29f400.u2 sfiii3
Compatibility Table
Before patchAfter patch
MXCIMXCI
SHARP/INTELSHARP/INTEL
HITACHISPANSION
MXICMICRON NOS/UltraSIMM

system

Flashing Your New BIOS

Once the patch is applied, it's time to flash your updated BIOS onto the cartridge. There are two main methods you can use:

  1. Using the CPS3 SIMM/CARTRIDGE PORT ADAPTER for OSCR

    • This method works for both alive and death cartridges.
    • NOTE: Use it at your own risk on alive cartridges!
  2. Traditional Method

    • Remove the 29F400 chip from the cartridge and flash it using a programmer.
    • This method is only recommended for death cartridges.

Now your cartdrige it's compatible with NOS!

R/W CPS3 NOS

Currently, CPS3 NOS can only be programmed using the CPS3 SIMM/CARTRIDGE PORT ADAPTER for OSCR.

Prepare your files
  • Dump or copy your CD-ROM files and organize them into a directory. For example, for Street Fighter III: 2nd Impact, the directory structure should look like this:

    text
    CDROM
    └── SFIII2
        ├── 10
        ├── 20
        ├── 30
        ├── 31
        ├── 40
        ├── 41
        ├── 50
        ├── 51
        ├── 90
        ├── 91
        ├── 92
        └── 93
  • Concatenate files for each SIMM

    • For 128M SIMMs, use files 3# to 6#.
    • For 64M SIMMs, use files 10 and 20.

    Example (using a Unix terminal):

    bash
    	cat WAZARD/10WZ SFIII/10NG SFIII2/10 JOJO/10JO SFIII3B/103S2 JOJOBA/10JB > NOS10
    
       cat WAZARD/10WZFix SFIII/10NG SFIII2/10 JOJO/10JO SFIII3B/103S2 JOJOBA/10JB > NOS10
       
       cat WAZARD/20WZ SFIII/20NG SFIII2/20 JOJO/20JO SFIII3B/203S2 JOJOBA/20JB > NOS20
       
       cat WAZARD/30WZ WAZARD/31WZ SFIII/30NG SFIII/31NG SFIII2/30 SFIII2/31 JOJO/30JO JOJO/31JO SFIII3B/303S2 SFIII3B/313S2 JOJOBA/30JB JOJOBA/31JB > NOS30
       
       cat WAZARD/40WZ WAZARD/41WZ SFIII/40NG SFIII/41NG SFIII2/40 SFIII2/41 JOJO/40JO JOJO/41JO SFIII3B/403S2 SFIII3B/413S2 JOJOBA/40JB JOJOBA/41JB > NOS40
       
       cat WAZARD/50WZ WAZARD/51WZ SFIII/50NG SFIII/51NG SFIII2/50 SFIII2/51 JOJO/50JO JOJO/51JO SFIII3B/503S2 SFIII3B/513S2 JOJOBA/50JB JOJOBA/51JB > NOS50
       
       cat WAZARD/60WZ WAZARD/61WZ SFIII/60NG SFIII/61NG SFIII2/60 SFIII2/61 JOJO/60JO JOJO/61JO SFIII3B/603S2 SFIII3B/613S2 JOJOBA/60JB JOJOBA/61JB > NOS60

Important Notes

  • NOS supports up to 8 titles. When using this feature, you must fill all SIMM slots and space.
  • For example, when working with Street Fighter III: New Generation, you can duplicate certain files to fill all space:
  • Use 10 as 20 for SIMM 2.
  • Use 50 four times for SIMM 5.
  • Use 40 as 60 for SIMM 6.
123456
Street Fighter III: New Generation64MBit-128MBit128MBit32MBit-
Street Fighter III: New Generation (filled)64MBit64MBit128MBit128MBit128MBit128MBit

Alternatively, you can use the ds2nos.py script to convert UltraSIMM files to NOS format.

Write NOS

The CPS3 SIMM/CARTRIDGE PORT ADAPTER for OSCR has designated slots for 64M and 128M SIMMs. Insert your NOS into the corresponding slot and connect the headers for additional addressing.

system system

  • Prepare your SD, copy NOS10* to NOS60* in root

  • Use Capcom System III menu options to write files

  • 128 MB

    system system system system system system

  • 64 MB

    system system system system system system

Install NOS on CPS3

  • After writing all the NOS, install the SIMMs into the CPS3. It is recommended to label each SIMM to prevent any mix-ups in the future.

system system

  • Install the SW header to link all NOS if you plan to use more than one title.

system system

NOS SW Reference Table

SW Config
systemGAME 1
systemGAME 2
systemGAME 3
systemGAME 4
systemGAME 5
systemGAME 6
systemGAME 7
systemGAME 8

Disclaimer!!!

I am not responsible for any damage to your CPS3 cartridges or system. 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-NonCommercial-ShareAlike 4.0 International. You are able to reusers to distribute, remix, adapt, and build upon the material in any medium or format for noncommercial purposes only, and only so long as attribution is given. If you remix, adapt, or build upon the material, you must license the modified material under identical terms.

Parts

39
QtyValueFootprintReferences
15100nfCapacitor_SMD:C_0603_1608MetricC4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18
410KResistor_SMD:R_0603_1608MetricR1, R2, R3, R4
474LVC4245APackage_SO:TSSOP-24_4.4x7.8mm_P0.65mmU2, U3, U7, U9
210ufCapacitor_Tantalum_SMD:CP_EIA-3216-10_Kemet-IC2, C3
274LVC245APackage_SO:TSSOP-20_4.4x6.5mm_P0.65mmU5, U6
2S29GL256/512/01GPackage_SO:TSOP-I-56_18.4x14mm_P0.5mmU4, U10
1100ufCapacitor_Tantalum_SMD:CP_EIA-3528-12_Kemet-TC1
164MBCPS3:SIMM_EDGEJ1
174LVC827Package_SO:TSSOP-24_4.4x7.8mm_P0.65mmU8
1Conn_02x03_Odd_EvenConnector_PinSocket_1.27mm:PinSocket_2x03_P1.27mm_HorizontalJ2
1LM1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U1

The 34 most common of 39 parts.

More from herzmx/cps3-nos

2
  • 4 layers108 × 25.3 mm128MB SIMM, the printed circuit board in 3D

    128MB SIMM

    herzmx/cps3-nos

    CPS3 NOS is an alternative to the original SIMMs for CPS3; currently, the available options include clone SIMMs with old-stock FLASH memory and Ultra SIMMs by DS.

    34 parts12
  • 2 layers122.5 × 36.6 mmSIMM SWITCH, the printed circuit board in 3D

    SIMM SWITCH

    herzmx/cps3-nos

    CPS3 NOS is an alternative to the original SIMMs for CPS3; currently, the available options include clone SIMMs with old-stock FLASH memory and Ultra SIMMs by DS.

    7 parts12

Similar boards

  • 4 layers100 × 80 mmBlit cpu mk3, the printed circuit board in 3D

    Blit cpu mk3

    dominicbeesley/BlitterMk3-board

    A 6502 FPGA development board

    170 parts
  • 4 layers78 × 49 mmReAgnus MegAChip, the printed circuit board in 3D

    ReAgnus MegAChip

    jbilander/ReAgnus-MegAChip

    A ReAgnus MegaAChip PCB that takes a Gowin FPGA with embedded PSRAM, a PLCC-84 plug and FET level shifters.

    57 parts33CC-BY-SA-4.0
  • 2 layers99.9 × 64 mmMSX FPGA Hat, the printed circuit board in 3D

    MSX FPGA Hat

    costarc/MSX_FPGA_Hat

    A Cartridge interface that converts MSX 5v signal levels to 3v, exposing an IDC connector for external devices that operates at 3v level.

    44 parts7MIT
  • 4 layers94.3 × 52.8 mmJetbot mini, the printed circuit board in 3D

    Jetbot mini

    NVIDIA-AI-IOT/jetbot_mini

    While developing the schematic and layout designs, I used some footprints from SnapEDA; in order to avoid dealing with licensing issues, I will not redistribute those files on this Github and instead link to where you…

    188 parts23
  • 2 layers61.3 × 53.3 mmP42Display, the printed circuit board in 3D

    P42Display

    wolfgangfriedrich/P42Display

    Arduino Video Display Shield

    47 parts21
  • 4 layers78.5 × 80 mmDmgplus, the printed circuit board in 3D

    Dmgplus

    Spritetm/dmgplus

    DMGPlus, upgraded internals for the original GameBoy

    108 parts19
  • 4 layers132.1 × 61 mmTesla Coil MIDI Synth, the printed circuit board in 3D

    Tesla Coil MIDI Synth

    ucsbieee/Tesla-Coil-MIDI-Synth

    Convert MIDI to pulses to drive our DRSSTC

    99 parts4
  • 2 layers99 × 91 mmWireCutter, the printed circuit board in 3D

    WireCutter

    hexeguitar/AutomatedWireCutter

    PSoC4 based automated wire cutter project

    204 parts3

Questions

How big is the 64MB SIMM PCB?

It measures 108 × 25.3 mm and has 4 copper layers, 1.2 mm thick.

What parts does the 64MB SIMM use?

39 parts, built around the 74LVC245AD, 74LVC827AD, 74LVC4245AD and LM1117-3.3. 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 64MB SIMM KiCad files?

From the herzmx/cps3-nos repository on GitHub, at the commit this page was made from: the board is src/64MB-SIMM/64MB-SIMM.kicad_pcb and its schematic src/128MB-SIMM/128MB-SIMM.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the 64MB SIMM design in my own project?

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