Find a file
2016-07-18 21:08:20 +10:00
bin init commit 2016-05-08 17:20:05 +10:00
exe init commit 2016-05-08 17:20:05 +10:00
lib fix bug inside mmu for div reset register 2016-07-18 21:07:18 +10:00
spec add DIV reset spec and DIV overflow reset spec 2016-07-18 21:08:20 +10:00
.gitignore init commit 2016-05-08 17:20:05 +10:00
.rspec init commit 2016-05-08 17:20:05 +10:00
.ruby-version init commit 2016-05-08 17:20:05 +10:00
.travis.yml init commit 2016-05-08 17:20:05 +10:00
CODE_OF_CONDUCT.md init commit 2016-05-08 17:20:05 +10:00
Gemfile init commit 2016-05-08 17:20:05 +10:00
Guardfile init commit 2016-05-08 17:20:05 +10:00
Rakefile init commit 2016-05-08 17:20:05 +10:00
README.md added how to run the emulator in README 2016-05-26 21:43:29 +10:00
waterfoul.gemspec init commit 2016-05-08 17:20:05 +10:00

Waterfoul

Waterfoul is a Gameboy emulator written in Ruby-lang. It is just a casual excersize by myself to learn the internals of the device and how it works.

Requirements

The sdl2 library is currenty used to render pixels. Most platforms have packages avaliable, else see the here. This library is required and needs to be installed before you can run the emulator.

Can it play roms?

No. But a lot of work is being put into making a compatable emulator. The device does run the internal boot program succesfully and is starting to pass test programs sucesfully (barggs).

Testing

If you wish to run the test suite, download the source code (make sure to run bundle install) and run bundle exec rspec

I Want to run it anyway

If you wish to see the emulator in action, download a rom online (it is required even though the game wont run) which typically have a .gb extension and place it onto your local file system.

bundle exec exe/waterfoul start <path to rom>

The boot program will be executed by default, if you wish to skip it add --skip-boot as an option.