views:

566

answers:

2

I want to program an emulator ( may be NES or C64, I haven't decided yet ), I know there are lots of them so many may ask why would someone want to make one from scratch, but I want to include some specific characteristics in it, and also for the sake of building it myself.
I'd like to read a guide from someone who has built one and can transmit the experience, it doesn't have to be platform-specific ( better if it's not ) since I know how to program, what I don't is how to emulate.

+1  A: 

Both the NES and C64 are based on the 8 bit 65xx processor. Writing an instruction set emulator for that chip is pretty trivial since the instruction set is small.

The larger issue is to emulate the other support hardware, video controller, etc. It's been a long time since I programmed a C64, and I never programmed an NES, so my memory is foggy. As I recall the C64 had a one or two chip solution for video and interfaces.

Richard Pennington
Thanks, the technical stuff is not so much the problem, as I programmed for the NES and have a good understanding of it's graphic processor, what I'm looking for is a general guide on building an emulator, no matter what platform.
Petruza
+2  A: 

Well, you can google lots of articles, but there's one resource I found particularly useful :
http://nesdev.parodius.com
Here you'll find pretty much all you need to know to write a working NES emu, from complete hardware specifications, to the instruction set, and test roms. Have fun.

fingerprint211b
Thanks, that was my number 1 source of info when I programmed for the NES.
Petruza