Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/colby-swandale/waterfoul
Gameboy emulator written in Ruby-lang
https://github.com/colby-swandale/waterfoul
emulator gameboy ruby
Last synced: about 2 months ago
JSON representation
Gameboy emulator written in Ruby-lang
- Host: GitHub
- URL: https://github.com/colby-swandale/waterfoul
- Owner: colby-swandale
- Created: 2016-01-01T10:43:36.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2020-05-16T03:12:44.000Z (over 4 years ago)
- Last Synced: 2024-10-14T20:34:02.516Z (2 months ago)
- Topics: emulator, gameboy, ruby
- Language: Ruby
- Homepage:
- Size: 261 KB
- Stars: 92
- Watchers: 4
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Waterfoul
Waterfoul is a Gameboy emulator written in Ruby-lang. It is a casual excersize by myself to learn the internals
of the device and how it works.## Getting Started
To start the emulator:`bundle exec exe/waterfoul start `
Make sure to `bundle install` first and install required libraries.
By default the emulator will run the boot rom, if you wish to skip it then add `--skip-boot` as an option.
## Try turning on the --jit and --enable-frozen-string-literal to get max fps
`RUBYOPT="--enable-frozen-string-literal --jit --jit-max-cache=100000 --jit-min-calls=3" bundle exec exe/waterfoul start `## Requirements
The [sdl2](https://www.libsdl.org/download-2.0.php) library is currenty used to render pixels. Most platforms have packages avaliable, else see [here](https://wiki.libsdl.org/Installation). This library is required and needs to be installed before you can run the emulator.## Can it play roms?
Yes! but the list of roms that i know work is very limited to just Tetris, Super Mario Land and Pokemon Red. But a lot of work is being put into making other games compatable. The device does run the internal boot program succesfully and is passing test programs sucesfully (barggs).## Controls
The following shows the mapped keys to control the game.
![gameboy key mapping](https://raw.githubusercontent.com/colby-swandale/waterfoul/master/documentation/keymap.png)## Testing
If you wish to run the test suite, download the source code (make sure to run `bundle install`) and run `bundle exec rspec`