
Gearboy (https://github.com/drhelius/Gearboy)

-----------------------------------------------------

Copyright © 2012 by Ignacio Sanchez

-----------------------------------------------------

Gearboy is a Nintendo Game Boy / Game Boy Color emulator written in C++.

The emulator is focused on readability of source code, but nevertheless it has good compatibility.

A lot of effort has gone into this in order to follow OOP and keep it as simple as possible.

-----------------------------------------------------

Features

    - Accurate CPU emulation, passes cpu_instrs.gb from blargg's tests.
    - Accurate instruction timing, passes instr_timing.gb from blargg's tests.
    - Memory Bank Controllers (MBC1, MBC2, MBC3 with RTC, MBC5), ROM + RAM and multicart cartridges.
    - Accurate LCD controller emulation. Background, window and sprites, with correct timings and priorities.
    - Mix frames: Mimics the LCD ghosting effect seen in the original Game Boy.
    - Sound emulation using SDL Audio and Gb_Snd_Emu library.
    - Game Boy Color support.
    - Integrated disassembler. It can dump the full disassembled memory to a text file or access it in real time.
    - Saves battery powered RAM cartridges to file.
    - Compressed rom support (ZIP deflate).
    - Multi platform. Compiles and runs on Windows, Linux, Mac OS X and iOS.
    - Uses OpenGL for rendering on all platforms.
    - Uses Qt framework for Mac, Windows and Linux. Uses Cocoa Touch for iPad, iPhone and iPod touch.
    - Visual Studio 2010 project provided for Windows. Netbeans 7.2 project provided for Linux and Mac OS X. Xcode project for iOS.

-----------------------------------------------------

Todo List
    
    - Saving and loading game states.
    - Pixel precision scan line timing (https://gist.github.com/3730564).
    - Debugger.

-----------------------------------------------------

License


Gearboy - Nintendo Game Boy Emulator

Copyright (C) 2012 Ignacio Sanchez

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/
