Page 1 of 1

What Writing an Emulator Taught Michael Foglem About the NES

Posted: Sun Apr 12, 2015 9:58 pm
by GSZX1337
Programming blogger Michael Fogleman wrote his own NES emulator and wrote about his experience. Unfortunately there wasn't much written about the creation of his emulator (which I thought this was about when I saw the Slashdot headline), but there is a nice amount of info written about the console's hardware including the CPU, Memory Map, PPU, APU, and the Cartridge Mappers.

Here's a little snippet:
I recently created my own NES emulator. I did it mostly for fun and to learn about how the NES worked. I learned some interesting things, so I wrote this article to share. There is a lot of documentation already out there, so this is just meant to highlight some interesting tidbits. Warning: this will be very technical!

A lot of this might be obvious, but I found of it to be an interesting way of showing, in his own words, "...what people were able to accomplish with such constrained hardware."

If you're interesting in the emulator itself (and its source), you can grab it on GitHib. An interesting feature (which I haven't tried) is that this emulator can record animated GIFs.

Re: What Writing an Emulator Taught Michael Foglem About the

Posted: Mon May 11, 2015 12:36 pm
by Ziggy587
Cool. I skipped through it, but I'm gonna have to read it thoroughly when I get the chance.

I like how his emulator can output animated GIFs. Are there any other emulators out there that do this? I haven't heard of any.

Re: What Writing an Emulator Taught Michael Foglem About the

Posted: Mon May 11, 2015 9:54 pm
by Tanooki
Cool. I've always wanted that lame little feature, but no one ever did it -- anigif maker.

I used to make title sequence animated gifs for NES games, I still have them too, then scaled them down to semi-fluid minimum of frames and a small resolution enough to work on a forum as an avatar. It's fun, but doing it by hand screen capturing takes time and sucks.

Here, still online too have fun: ... t=9&page=1

I don't see a binary for this on his site. Perhaps someone could compile one so people here could try it out??