NES Reproduction Board Guide – Mapper 30

Here’s a quick guide on how to populate my custom designed NES reproduction PCB. This is the Mapper 30 compatible board, which is used with NESmaker! If you are using NESmaker, all you have to do is solder the parts in place (ensuring the CIC is programmed before you solder it in), solder the necessary solder pads to select 32KB CHR RAM size, and bridge the appropriate mirroring solder pads, and then pop it in the programmer.

Front Side


Part Number: 39SF040
Function: Holds the Program ROM file. This goes in the socket labelled “PRG”.
How to Program: If not using NESmaker, check the reproduction article for information (Steps 1, 3, and 4)


Part Number: 62256 series
Function: Holds the ROM’s sprite data. This goes in the socket labelled “CHR”.

74HC377 – D Flip-Flop

Part Number: 74HC377, 74HCT377, 74LS377
Function: Used to select the upper PRG banks.

74HC32 – Or Gates

Part Number: 74HC32, 74HCT32, 74LS32
Function: Used to select the upper PRG banks.

74HC139 – Decade Counter

Part Number: 74HC139, 74HCT139, 74LS139
Function: Used to write data to PRG Flash memory.


Part Number: Original CIC, or programmed ATTiny13 (instructions for programming detailed below)
Function: Completes the region check and allows the game to run on the console. Not needed for modded consoles, clone consoles, or top loader NESes.

C1 – Electrolytic Capacitor

Value: ~22 uF, at least 10 V rated
Function: Smooths out supply voltage for the board due to transients on the power supply, prevents quick changes in supply voltage when power is turned off.

C2 to C8 – Ceramic Capacitors

Value: ~0.1 uF, at least 10 V rated
Filters out high-frequency noise that can interrupt the Flash, RAM, CIC, and logic chips.

CHR RAM Solder Pads

Selects the accessible size of the CHR RAM to 8KB, 16KB, or 32KB. Just bridge the two pads of the set of two that apply to the size you need. For most games, you will be fine soldering the bottom two of the four, the ones labeled 32KB.

V/H/1 Solder Pads

This is to set the mirroring mode for your game. Solder only one set of pads. If the graphics are messed up on your game, it might be set to the wrong mirroring mode. NOTE: H and V are swapped on version 1.1 boards – so solder the other set of pads. This is fixed in all subsequent revisions.

Back Side

Programming the CIC

The CIC clone by krikzz uses the ATtiny13 microcontroller. You need an AVR programmer to properly load the program into the chip. You can use the GQ-4×4 or the TL866.

In order to program the ATtiny13, first load up the chip in the programmer, and load the code found here (I could not find the original file uploaded on kirkzz’s website, but you should still check out his stuff). Make sure you load the .hex file, and load it in as a .hex file. The ASCII code on line 0x380 should read “krikzz was here!” – that’s how you know it loaded correctly.

If you’re using the GQ-4×4, first write the software to the chip, and then set the config bits – so program the chip first. If you’re using the TL866, you can write the code and the config bits at the same time. To set the config bits, hit “CFG” for the GQ-4×4, or the “Config” tab on the right of the screen for the TL866. Then, set the bits like this:

Hit “Write” for the GQ, or program the chip on the TL866, and then you should be good to go!

When you put it into a cartridge and load it on the NES, you will probably need to hit the reset button five to ten times to get it to recognize the region of the NES you’re using. If you happen to use the cart in another region NES, just do this reset process again to reset the region correctly.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s