Programming UNROM-512 with Kazzo hardware (NESDEV)
Background
I’m developing a game for the NES, and I recently got a couple of flashable UNROM-512 PCBs from Broke Studio. To program these boards, I’m using the Kazzo cartridge Dumper-Programmer from Infinite NES Lives - this is the older, discontinued version of the hardware based on the AVR / ATMEGA microcontroller. I didn’t have success using the old INL retro-prog v1.1beta.exe
software for programming these boards, but the newer software works. In case anyone else is interested, here’s what I did…
Steps
- Get the INL retro programmer-dumper software here: https://gitlab.com/InfiniteNesLives/INL-retro-progdump or from the BrokeStudio fork.
- Follow the instructions in the readme for installing the driver and updating the firmware on the kazzo device.
- As mentioned in the discussion here, get the modified mapper30v2 lua script file and replace the file in
\INL-retro-progdump\host\scripts\nes
. - With the kazzo device in run mode and the UNROM-512 cart inserted, execute the following command from the
\INL-retro-progdump\host
directory.
inlretro.exe -s scripts\inlretro2.lua -c NES -x 512 -m mapper30v2 -p <path_to_nes_file>
Important: the input file should be a full NES file, not just the PRG binary data. It needs to include a NES header.
Example output
If everything works, you should see output like so:
Successfully found and connected to INL retro-prog
Device firmware version: 2.1.x
firmware app ver request: 3
checking for old firmware
later firmware sensed, running current script
Testing MAP30
attempting to detect NES/FC mapper via mirroring...
vertical mirroring sensed
detected RAM @ PPU $ 1000
EXP0 pull-up test: 15
reading PRG-ROM manf ID
attempted read PRG-ROM manf ID: BF
attempted read PRG-ROM prod ID: B7
CHR-RAM BANKING TEST PASSED
erasing MAP30
42 naks, done erasing prg.
Programming PRG-ROM flash
writting PRG bank: 0 of 31.0
writting PRG bank: 4 of 31.0
writting PRG bank: 8 of 31.0
writting PRG bank: 12 of 31.0
writting PRG bank: 16 of 31.0
writting PRG bank: 20 of 31.0
writting PRG bank: 24 of 31.0
writting PRG bank: 28 of 31.0
Done Programming PRG-ROM flash
total time: 43.374 seconds, average speed: 11.80 KBps