How to Program an NES game in C
nesdoug.wordpress.com
nesdoug.wordpress.com
While in college, one intro course on lower-level computer programming had a few projects for programming for a Gameboy Advance emulator. This site was heavily used for reference and guidance: http://www.coranac.com/tonc/text/toc.htm
Also, here are some materials (from the course) and even examples of created projects:
_
Related Course Materials
1. Main Reference: http://www.coranac.com/tonc/text/toc.htm
2. GBA Installation: https://github.com/nuppan/Georgia-Tech/tree/master/2nd%20Yea...
2. Another site: http://www.loirak.com/gameboy/gbatutor.php
_
Projects
1. "Duckhunt" - https://github.com/jabelman/duck_hunt-gba
2. "Pacman" - https://github.com/zjhzyyk/gba-pacman
3. Video of "The Snuggler" - https://www.youtube.com/watch?v=wxnEY3RRPp4
4. Video of "Samurai Jack" - https://www.youtube.com/watch?v=fgIeKCxAfSk
The magical thing to google if you want to do your own research is "NES flash cart".
The "EverDrive" that aji suggests is, indeed, an example of a flash cart. It may or may not be the best one for the NES - I honestly don't know, all of my experience is with the GameBoy.
dpflan's approach of erasing and reprogramming a REAL NES cart is also possible, if you enjoy pain and suffering in the name of being lavishly historically accurate. (I know I do sometimes.)
[1] https://en.wikipedia.org/wiki/Flash_cartridge
[2] https://en.wikipedia.org/wiki/Memory_management_controller