The motivation behind the creation of Gambit is purely academic: to explore emulation and various aspects of the hardware-software interface in a practical setting. Emulation of the Nintendo GameBoy has been accomplished by many people before, but this makes it a great learning exercise: GB emulation is relatively well-documented (as far as proprietary hardware goes), there is a fairly substantial amount of open-source code to use as reference, and success is rewarded by clear visual evidence and the ability to play some fun classic games.
A series of detailed articles on emulation development in JavaScript; ten parts are currently available, and others are expected to follow.
A page of many articles, links, and source code related to emulation. Of particular interest are "HOWTO: Writing An Emulator," "Nintendo GameBoy Architecture," and the author's own source code for a portable Z80 emulator.
An extremely thorough document of the GameBoy hardware specs, including video, sound, and memory layout, based on work by many authors. Hosted by nocash, this appears to be the most recent version of a document that's been floating around the internet for the past 15 years.
An extensive technical document from the designers of the chip on which the GameBoy CPU is based. This pdf includes detailed information on every register, operation, etc.
- https://github.com/Two9A/jsGB
- http://code.google.com/p/gnuboy/
- https://github.com/zodttd/gameboy4iphone (A version of gnuboy with an iPhone frontend)
- http://sourceforge.net/projects/gambatte/
- http://code.google.com/p/ugabe/