This is a work in progress.
sGBE is a Small GameBoy Emulator. This project emulates an 8-bit CPU using C++/SDL.
As of 2023/12/05, it misses 5 instructions and has some graphis issues when playing Tetris. It might not work with other games. Most of Blargg's CPU test do pass!
- Setup the build environment :
git clone [email protected]:jprissi/sGBE.git && cd sgbe
mkdir build && cd build
cmake ..
- Build and run the emulator :
make && ./bin/gbe
The goal of this project is to provide a straightforward implementation for an 8-bit CPU. It should be able to run at least a few titles. It does not aim for cycle-perfect accuracy or extensive support of the GB game library.
- Bank Switching
- Sound
- CGB mode
- ...
- lmmendes for the opcodes .json file
- robert for the helpful Gameboy Doctor debugging tool
All contributions are welcome!
Compare implementation with disassembled source : https://github.com/osnr/tetris/blob/master/tetris.asm
PPU implementation detailed write-ups: https://blog.tigris.fr/2019/09/15/writing-an-emulator-the-first-pixel/ https://hacktix.github.io/GBEDG/ppu/