Last time we finished our game! In this final post, we’ll go over how to get it onto an NES cartridge with a personalized label.
Since our ROM targeted the standard NROM, we can pick up an NES-NROM-256 board pretty cheaply from Infinite NES Lives. If you don’t have an old NES cartridge lying around to salvage a case from, they also sell plastic cases and dust sleeves.
We’ll also need a programmer to write the ROM data to the chip. I used the Kazzo cartridge “INL Retro” Dumper-Programmer from Infinite NES Lives.
First, we need to break the ROM file down into its constituent parts. We’ll discard the 16 byte iNES header, then split the remainder into the PRG ROM and CHR ROM. Since we targeted the NES-NROM-128 with 16 KiB of PRG ROM but our chip is an NES-NROM-256 with 32 KiB of PRG ROM, we’ll have to pad the file. I just concatenated it to itself because I’m lazy.
Next, I loaded these files on a USB stick and booted up into Windows to be able to use the Kazzo programmer. Following the README, I was able to install the drivers in Windows 10 without too much hassle.
I had to disable driver signature enforcement by running bcdedit.exe /set nointegritychecks on
at a cmd.exe
prompt (Run as Administrator) and restarting.
After installing the drivers, I made sure to run bcdedit.exe /set nointegritychecks off
to re-enable driver signature enforcement on future boots.
After successfully installing the drivers, I made sure to erase the chips on the NROM board (this board has both PRG and CHR ROM, so ERASE_PRGCHR.bin
can erase both in one step).
Finally, I flashed the PRG and CHR ROM with my prg.bin and chr.bin files and popped the cartridge in my NES to test that it worked.
I found this awesome .psd template for NES cartidges from John Riggs. He’s even got a video tutorial on how to create your own. You can print it out on adhesive paper, though I had great results with regular printer paper and Mod Podge.
This is in all likelihood the final post in this series. Thank you for reading and enjoy making your own NES games!