By using this site, you agree to our Privacy Policy and our Terms of Use. Close
fordy said:

You need to be really in-depth if you're planning to program NES games. Besides knowing assembly or 6502 opcodes, you also need to have an in depth knowledge of the hardware registers as well as limitations (eg. The NES only allows a certain number of sprites on the same scanline row on the TV before it starts to blink madly. There is also a rule to the 6502 CPU where you should not execute a Jump or Call at any address ending in hex code FF).  You need to study in depth to know the reasons why limitations like this exist on the hardware, as well as how to overcome them.

You'll need to use memory mappers if you plan to make a game over 32KB. That brings a whole new dimension of code organisation into things, as parts of the ROM cannot just be accessed at any time (you get paging miss penalties if the design requires swapping mapping pages over a lot).

My suggestion? Take a look at how the .NES ROM file is structured, and make a game playable on emulators before you even consider hardware. Once you get that out of the way:

http://www.retrousb.com/index.php?cPath=24

This site provides cases, PCBs and reverse-engineered lockout chips to solder together. Just add an EEPROM for the CHR ROM and one for the PRG ROM (use an EEPROM programmer to put the assembled binary onto the chip), and maybe a memory mapping chip. Solder them onto the board and you should be right to go!

Thanks.  After doing some research, I think I was being a little too ambitious at first.   I am going to start with some programming some games using an emulator and go from there.



Check out my video game music blog:

http://games-and-guitars.synergize.co/

 

 PROUD MEMBER OF THE PLAYSTATION 3 : RPG FAN CLUB

 

He who hesitates is lost