Unsurprisingly, there was just an inverted conditional.
|3 months ago|
|notes||2 years ago|
|scripts||3 months ago|
|slowboy||3 months ago|
|test_roms||3 months ago|
|tests||3 months ago|
|.gitignore||1 year ago|
|.travis.yml||2 years ago|
|LICENSE||5 years ago|
|README.md||3 months ago|
|coverage||1 year ago|
|ctags||1 year ago|
|regs.txt||4 years ago|
|setup.py||2 years ago|
slowboy aims to be the slowest Gameboy emulator. Just kidding---but the goal of this project isn’t to create a fast emulator, since those already exist. The goal is twofold: can a reasonably performant Gameboy emulator be build in Python, and can it serve as an easy-to-read codebase for others who want to emulate this system?
notes/performance.md for some thoughts on speeding up the emulator.
An eventual goal is improving the debugger---see
If you install this emulator, it probably won’t play very many games. Here are some things you could do:
test_roms/and create an issue if they don’t work or crash on your system.
If hacking on it is what you’re interested in, please forge ahead!
This program uses SDL2 for graphics, and eventually the unit tests will require some of the SDL2 data structures. Currently, it requires at least libsdl2 version 2.0.5 or greater. I’d like to eventually relax the requirement to at most 2.0.2 to support Debian 8 and Ubuntu 16.04.
On the following distributions, the SDL2 package is too old, so you’ll need to build it from source:
I develop on Linux---these Linux distributions package at least libsdl2 version 2.0.5:
SDL2(2.0.8, from EPEL---install
After cloning the repository, you can install the project for development with
$ pip install --editable .\[dev\]
You can run the tests from the root of the project with
Additionally, if you have coverage installed, you can use that:
$ coverage run --source slowboy -m unittest discover tests $ coverage html
Running the unit tests with
pytest on my system causes a segfault for some
reason. The workaround is just running the tests with
$ python -m unittest discover tests