carts:nintendo:nes

Nintendo Entertainment System / Famicom

Check the dumping hardware overview for a list of known preservation hardware.

Warning: The Nt Mini Noir Jailbreak v6.5 (Dec. 15, 2020) produced corrupted dumps of some Famicom carts and v6.6 (Feb 23, 2021) [and maybe earlier] produces corrupted dumps of SXROM and HKROM carts.

If you need help, please come chat with us on the VGPC or No-Intro discord servers.

There are many tools available to dump NES / Famicom carts, not all of them are simple to use though. To ensure successful dumps, we won't be listing beta/in progress methods or tools below.


Important Notes

  • Unopened games should have their ROM and save data dumped before attempting to play them. This avoids inadvertent modification of the data and helps preserve the game in its unused/“factory” state. Note in your submission whether the physical media was sealed and include a photo of the cart/packaging in its sealed state, if possible.
  • You should clean the physical media's electrical contacts before trying to dump it, and dump it twice, checking if both dumps match using a file comparison tool or calculating the SHA256 of each file and comparing those values.

To read Nintendo/Famicom cartridges you need the NES(or Famicom) to SNES adapter PCB and have the configuration switches set like so:

sanni-switches-nes-dumping.jpeg

Then you need to find the mapper and size information of the cartridge you want to dump in one of these databases:

The Cart Reader uses a database to build the iNES header, however the database might not be complete. In the latter case you have to manually add an iNES header using a program on your PC.

https://github.com/dsedivec/inestool
https://greg-kennedy.com/wordpress/2012/05/30/ines-header-fixer/

A video of how this works can be found here: https://www.youtube.com/watch?v=7PWq-x4hxgM

Methodology captured from https://github.com/sanni/cartreader/wiki/Dumping-NES-Games

Hit Save! has RetroBlaster cart dumping kits available for community members to borrow.

Dumping Famicom games with a RetroBlaster 2.0 requires a 60 pin (Famicom) to 72 pin (NES) cartridge adapter (sold separately), in addition to the NES adapter.

The RetroBlaster software currently only supports Windows and is available on the RetroBlaster github.

Make sure the RetroBlaster voltage switch is set to 5V (not the 3V setting).

Connect the NES adapter to the RetroBlaster. To seat the adapter, firmly but gently push the adapter in until the pins are no longer showing.

Insert the cartridge or PCB into the adapter, with the cartridge label facing the activity LED.

Open the RetroBlaster software (click Run if you see a security warning about the publisher not being verified) and navigate to the NES tab.

First, you'll need to know which mapper type the game uses. You can consult a NES game database such as nescartdb.com or nes.dnsabr.com for the mapper info and the size of the PRG and CHR chips.

After selecting the mapper type from the drop-down menu, enter the PRG size.

Next, enter the CHR chip size.

Finally, select whether the game uses SRAM for save data.

Click “Dump ROM.” Choose the location and filename for your ROM.

The activity LED will turn on on the RetroBlaster board. A progress bar will indicate the status of the dump, and information will be displayed on the 'status' log when the dump is complete.

If applicable, you can also dump the SRAM save data from this same tab, by clicking the Dump SRAM button.

When swapping adapters, the official recommendation from RetroBlaster is to use the non-writing end of a pen or marker to slowly push the adapter out from either side, using the board for leverage, in order to avoid bending the pins.

The RetroFreak is a great little emulation machine that uses physical carts similar to the Retron5.

Under standard conditions it is possible to let the RetroFreak copy the cart contents to an SD card, but they're always encrypted.

However, by using custom firmware and a few configurations to two files, you can get unencrypted dumps of your carts onto your SD card.

WARNING 1

Will this brick your system? Hopefully not. Proceed on your own risk.

Get the binaries

Start by downloading the release of hissori's retrofd project.

Make sure you get the release that's _smaller_ than your SD card. If your SD card is 16GB you should get the 8GB release, etc.

WARNING 2

This will overwrite your SD card, so make sure you make backups of anything important before proceeding.

Unpack the retrofd zip file, and then use something like balenaEtcher to transfer the contests onto an empty SD card.

Config

There are two small file edits that you need to do. To make it simple, you can replace the existing files on your SD card with the ones attached.

Here are the changed files:

retrofd.cfg

# clear micro SD partition 2/3
RF_CLR_SDP23=no
# FACTORY TEST MODE
RF_FTM=no
# Log copy daemon
RF_LOGCD=yes   

rfd_logcd.sh

#!/sbin/busybox sh

while ! busybox grep "/mnt/external_sd" /proc/mounts > /dev/null
do
	busybox sleep 1
done

# copy log files(/mnt/ram/log/*) to SD(/retrofd/log) if new ones exist
srcd=/mnt/ram/
dstd=/mnt/external_sd/retrofd/log
while : ;
do
	busybox find $srcd -maxdepth 1 -type f | busybox sed -e 's/.*\///' | while read logfile
	do
		[ -f "$dstd/$logfile" ] || busybox sleep 5 && busybox cp "$srcd/$logfile" $dstd/
	done
	busybox sleep 1
done

Usage

Boot up the RetroFreak with the new SD card inserted, you should be able to use and play your carts like normal. Once you insert a cart, let RetroFreak install it to the SD card. Now start the game for a few seconds.

After you've started a game, the unencrypted dump will be copied onto your SD card under `/retrofd/log`. You can now exit the game and continue with the next cart.

Once you've turned off the RetroFreak, you can take out the SD card and look the contents and verify your unencrypted dumps.

They should have names such as `homebrewgame-decrypted.NES` or `awesomehomebrew-decrypted.SFC`.

Needs verification You might also be able to use the above method to dump an unencrypted BIOS of your Famicom Disk System. Plug in the RAM adapter and follow the instructions above to save the encrypted BIOS on your SD card. Then start an FDS game that you have loaded onto the SD card and the BIOS should be dumped into the same location as mentioned above.

todo: look at this guide and this guide

xxxx

NES

NES games produced after 1987 use 3.8mm Gamebit screws, but earlier cartridges use common slotted screws. After removing the screws, lift the back off and remove the PCB.

Famicom

todo: another method https://www.youtube.com/watch?v=rHyE7VMM58Y

Famicom carts don't use screws and require carefully squeezing one half of the shell so the plastic flexes and unclips itself.

Gently apply pressure until you hear a pop or if the cartridge is bent a little, try pulling on one half of it to open it. If you don't hear a pop or see it bend after applying a generous amount of pressure untighten and check the cartridge positioning.

If you are using a vice, double check that the line separating both halves of the cartridge is not covered by the clamps, this will ensure that only one half of the cartridge is tightened and that the plastic tabs can be correctly released.

So you can get an idea of how much pressure should be applied, you may want to try it out with an inexpensive game.

todo: add info on cart/box serials (and non-standard carts if relevant)

SSS-GG-V CCC
S = System/Region (HVC = Famicom/World, NES = USA NES, PAL = Europe NES)
G = Game code (e.g. SM = Super Mario Bros.)
V = Version (starts at 0)
C = Chip (PRG = Program, CHR = Character i.e. Graphics)

Most of the time, only one of the chips will have an incremented version number. There's not necessarily a direct link between the version number on the chips and the “cannonical” revision of the combined (PRG+CHR) ROM, but it can generally be worked out by looking at other information. And sometimes the chipped are bonded/globbed, so you can't see what is written on them (if anything). Some carts only have a PRG chip.

Once you've dumped your games, it's time to generate and submit metadata to a preservation project for validating and cataloging. See the dump submission instructions for more information.

  • carts/nintendo/nes.txt
  • Last modified: 2023/07/18 12:00
  • by hiccup