carts:nintendo:nes

This is an old revision of the document!


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.

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.

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

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: 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.

  • carts/nintendo/nes.1652746041.txt.gz
  • Last modified: 2022/05/17 00:07
  • by hiccup