Skip to content

TobiasKappe/Thalia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Thalia Gameboy Emulator

Thalia is a Gameboy emulator written in C using GLib/GObject 2.0. The graphical user interface makes use of GTK+ 2.0 and uses Cairo for drawing. Thalia emulates the classic gameboy (DMG). The project is focused on emulator accuracy and readability of code, much less than it is on attaining speeds much faster than the machine itself.

For licensing information, please see the LICENSE file.

Current features

  • Graphics emulation (background, window and sprites).
  • Correct CPU emulation as tested by Blargg's cpu_instrs.gb.
  • Timer emulation and interrupts (vblank, lcd, timer).
  • ROM bank switching (MBC1).

To be implemented

  • Sound emulation.
  • Color support (CGB).
  • RAM bank switching (MBC1).
  • More memory bank controller types.
  • Serial I/O (link cable) support.
  • Emulation slowdown to match machine speed.

Instructions

Install SCons, for example on Debian/Ubuntu:

sudo apt-get install scons

You're need the development headers for GDK 2.0, GTK 2.0, GLib 2.0 and Cairo. On Ubuntu, these are all installed by typing:

sudo apt-get install libgtk2.0-dev

Run SCons to build the source code:

scons

Use the executable with the ROM file as argument, for instance:

./thalia tests/ttt.gb

About

Small Gameboy emulator written in C

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published