Skip to the content
2 layers98.5 × 79.5 mmSnes feram, the printed circuit board in 3D

This project was possible thanks to poorstudenthobbyist (Very nice and informative guides) and whicker (Showed the basics of how to wire a FeRAM to SNES), as well as other members of NESdev forums.

Size
98.5 × 79.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
35
Nets
92
Pads
321
Tracks, vias
1,942, 90
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
16 Dec 2023
Updated
16 Dec 2023

Overview

Snes feram is an open-source printed circuit board by Vakon84, from the Vakon84/SNES-FeRAM-Cart repository on GitHub. It is a 2-layer board of 98.5 × 79.5 mm with 35 parts on 92 nets, routed with 1,942 tracks and 90 vias.

It is built around the 74LS245SC, 74LS139PC and FM18W08-SG. Its parts include 7 ICs, 5 resistors, 3 connectors, 2 capacitors and 1 diode. It belongs with the retro computing and games boards and the PIC boards of this library.

Main components

3

README

README.md

SNES FeRAM Cart

A Open Hardware SNES Cartridge with save capability

What is that?

A repro cartridge PCB for SNES and Super Famicom consoles compatible with LoROM and HiROM software and save capability using FeRAM memory. Its a open hardware project and can be modified with no restriction

This project was possible thanks to poorstudenthobbyist (Very nice and informative guides) and whicker (Showed the basics of how to wire a FeRAM to SNES), as well as other members of NESdev forums.

Why is that?

While there are very nice comercially available repro PCB solutions, these are closed solutions that often doesn't fit the needs of everyone, specially concerning availability of parts, so, making this project open is not only a way to give back to the community that helped me alot, but also to give the ones that need a more versitile way to solve their problems. I know that the way that this PCB was designed may not fit everyone, but i hope that the ability to modify this project as one needs solves this.

I also find the canibalization of original cartridges for making repros, while understandable in many cases, discusting, so, may this project help to curb this practice.

Features as of now

  • Suports SNES and Super Famicom
  • ROM Support for up to 4MB
  • HiROM and LoROM software (set by jumpers)
  • 32KB of FeRAM for saving (256kb)
  • No need for backup battery
  • Rudimentary ROM bank switch (Permits multiple games on same ROM)
  • SuperCIC support
  • DOES NOT SUPPORT SPECIAL CHIP GAMES (while i would love to, this is quite away from my capacity as of now)

Component List:

  • 1x FM1808B;
  • 1x 27C322 (May use other 27CXX memories with some minor modifications);
  • 1x 74HC139 (or LS);
  • 1x 4081;
  • 1x 4071;
  • 2x 74HC245;
  • 1x SuperCIC (PIC12F629 model);
  • 1x Led (Optional, only used for SuperCIC)
  • 4x 1K Resistors (5x if using the LED with the SuperCIC);
  • 1x 4 channel DIP Switch;
  • 2x 10nF Capacitors;

Technical details

This project was developed using KiCAD and can be easily modified and studied by using it. Terminals are left in the PCB for all cartridge port connections for testing, but these can easily be removed if wanted.

4081 and 4071 circuitry help to control backup RAM access and also permit FeRAM correctly reading and writing. If

While bank switching is present, its use is not absolutely required for the cart to work. In this case, the resistors are not needed, just short each SW1 channel (as if it were on).

Also, while save capability is present, it is not required for the cart to work. 4071 and 4081 are still required in these cases

SuperCIC have been tested by other users and works. A SOIC8 footprint will be added aswell in the next commit for more package options.

How to use

The ROMs to be written to the EPROM need to be headerless and byteswapped, this is very important. The byteswapping need is a artifact of my prototyping process and may be changed in the future.

Be sure that all chips are in the correct orientation. KiCAD stock footprint silkscreen are quite bad at indicating chip's orientation. New clearer silkscreens for the footprints may be added in the future.

ROM type: HiROM and LoROM are selected by shorting the corresponding side of all the jumpers to the center, HiROM ones are annotated with H and LoROM with L.

Bank Switching: The user may write multiple roms to the same EPROM, the DIP switch controls which area of the EPROM is read by the SNES/Super Famicom; The minimum bank size is 256KB. Each of the switches connect a memory address line between the system and the EPROM: when the switch is on, the respective address line is controlled by the SNES; When off, the EPROM adress line is pulled-up and cut from SNES control. the address lines are A20, A19, A18, A17 (considering LSB as A0). To select the desired bank, turn the switches on and off acordingly to the begining address that the ROM occupies in the EPROM.

Examples:

ROM_x begin at 0x100000 -> Switch just A19 off (pull-up);
ROM_y begin at 0x180000 -> Switch A19 and A18 off;

This technique may not be compatible with save supporting SNES/Super Famicom software.

How to make multirom file: Just use the CMD command "copy /b rom_x.bin + rom_y.bin + rom_z.bin rom_result.bin" to join them to one file. One may join how many ROMs he wants to, just be shure that the result file is smaller than the total size of the EPROM and that the ROMs fit correctly to each desired bank to make software switching possible.

Disclaimer

I'm not an professional engineer and created this project as a hobby, this said, problems and errors maybe present and in need to be corrected. I'll try you to help the best as I can if any problems arrise but be aware that they may exist.

Happy playing!

Parts

35
QtyValueFootprintReferences
14SolderJumper_3_OpenJumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mmJP1, JP2, JP3, JP4, JP5, JP6, JP7, JP8, JP9, JP10, JP11, JP12, JP13, JP14
4RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1, R2, R3, R4
274LS245Package_SO:SOIC-20W_7.5x12.8mm_P1.27mmU5, U6
2CCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC1, C2
2Conn_01x23_MaleConnector_PinSocket_2.54mm:PinSocket_1x23_P2.54mm_VerticalJ1, J2
11KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR5
127C322Package_DIP:DIP-42_W15.24mmU3
14071Package_SO:SOIC-14_3.9x8.7mm_P1.27mmU2
14081Package_SO:SOIC-14_3.9x8.7mm_P1.27mmU1
174LS139Package_SO:SOIC-16_3.9x9.9mm_P1.27mmU7
1FM18W08-SGPackage_SO:SOIC-28W_7.5x17.9mm_P1.27mmU8
1LEDLED_THT:LED_D3.0mmD1
1LOGOOPEN:open_hardwareG***
1PIC12F629-IMCPackage_DIP:DIP-8_W7.62mmSUPERCIC
1SNES-EDGEdb-smt:SNES-EDGE-BiggerCON1
1SW_DIP_x04Button_Switch_THT:SW_DIP_SPSTx04_Slide_9.78x12.34mm_W7.62mm_P2.54mmSW1

Similar boards

  • 4 layers110.7 × 69.8 mmSgb mbc5 1-4, the printed circuit board in 3D

    Sgb mbc5 1-4

    MouseBiteLabs/Super-Game-Boy-Plus

    A replacement circuit board for improving the Super Game Boy, or for creating a standalone Game Boy game for the SNES.

    95 parts41CC-BY-SA-4.0
  • 4 layers98.6 × 99.4 mmAs11-comp, the printed circuit board in 3D

    As11-comp

    AvalonSemiconductors/gfmpw1-multi-bringup

    Bring-up of GFMPW-1 multi-project submission.

    111 partsApache-2.0
  • 2 layers51 × 30.8 mmAGB E06-10, the printed circuit board in 3D

    AGB E06-10

    JimmehhW/AGB-E06-Replacement-PCB

    Replacement PCB for damaged gameboy advance games using the AGB-E06 pcb

    21 parts
  • 8 layers100 × 65 mmMatrixDrive RevB, the printed circuit board in 3D

    MatrixDrive RevB

    Matrixite/MatrixDrive

    MatrixDrive is a USB-loadable Mega Drive/Genesis cartridge

    143 parts
  • 2 layers100 × 59 mmCoolgirl NES Rev6.x, the printed circuit board in 3D

    Coolgirl NES Rev6.x

    viuhimciuc/coolgirl-nes-multicart

    Ultimate multigame cartridge for Nintendo Entertainment System (NES)

    66 parts
  • 2 layers21.6 × 38.1 mmRAMboard, the printed circuit board in 3D

    RAMboard

    ALXCO-Hardware/squareboi

    The open hardware GB/GBC cartridge system

    4 parts58CC-BY-4.0
  • 2 layers53 × 62 mmMbc3 FRAM typeA 1-1, the printed circuit board in 3D

    Mbc3 FRAM typeA 1-1

    MouseBiteLabs/Game-Boy-Cartridges

    A collection of my Game Boy cartridge circuit board designs

    31 parts50CC-BY-SA-4.0
  • 2 layers17.7 × 36.3 mmNv fram, the printed circuit board in 3D

    Nv fram

    marcoreps/Dallas-FRAM-Adapters

    3 parts16

Questions

How big is the Snes feram PCB?

It measures 98.5 × 79.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Snes feram use?

35 parts, built around the 74LS245SC, 74LS139PC and FM18W08-SG. 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 Snes feram KiCad files?

From the Vakon84/SNES-FeRAM-Cart repository on GitHub, at the commit this page was made from: the board is snes_feram.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Snes feram design in my own project?

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