I sometimes see modified NES games, and I'd like to try my hand. What tools are used to accomplish this? Is there some magic repository of source code sitting around somewhere that I don't know about? My question is, what is step one to modifying any arbitrary NES game? (If step one is something like 'get your head on straight', then please give me steps one through three.)
Thank you
You'll need the ROM image and a disassembler or just a good old hex editor. It will be HARD unless you know the target architecture well. Many a time on these old systems they coded around corners to make things fit in the tiny amount of storage available. This will lead to some very odd "side effecty" code which you could find tricky to understand.
My advice, create a game from scratch as a "cover version" in a modern language using modern hardware, you won't have to worry about only having 4kb RAM!