|
|
|
#+TITLE: GarbAGE (Garbage Accurate GameBoy Emulator)
|
|
|
|
#+AUTHOR: Riyyi
|
|
|
|
#+LANGUAGE: en
|
|
|
|
#+OPTIONS: toc:nil
|
|
|
|
|
|
|
|
Accurate GameBoy emulator.
|
|
|
|
|
|
|
|
** Download
|
|
|
|
|
|
|
|
*** Clone
|
|
|
|
|
|
|
|
#+BEGIN_SRC shell-script
|
|
|
|
$ git clone https://gitlab.com/riyyi/garbage
|
|
|
|
$ cd garbage
|
|
|
|
$ git submodule init
|
|
|
|
$ git submodule update
|
|
|
|
#+END_SRC
|
|
|
|
Or
|
|
|
|
#+BEGIN_SRC shell-script
|
|
|
|
$ git clone --recursive https://gitlab.com/riyyi/garbage
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
*** Update
|
|
|
|
|
|
|
|
#+BEGIN_SRC shell-script
|
|
|
|
$ git pull
|
|
|
|
$ git submodule update --recursive
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
** Build instructions
|
|
|
|
|
|
|
|
#+BEGIN_SRC shell-script
|
|
|
|
$ mkdir build
|
|
|
|
$ cd build
|
|
|
|
$ cmake .. && make
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
** Contributing
|
|
|
|
|
|
|
|
Enable 'commit-hooks' to lint your changes before committing them.
|
|
|
|
|
|
|
|
#+BEGIN_SRC shell-script
|
|
|
|
$ ./vendor/ruc/script/pre-commit.sh install
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
** Libraries
|
|
|
|
|
|
|
|
- [[https://github.com/riyyi/ruc][ruc]]
|
|
|
|
|
|
|
|
** References
|
|
|
|
|
|
|
|
*** Opcodes
|
|
|
|
|
|
|
|
- https://gbdev.io/gb-opcodes/optables/
|
|
|
|
- https://gb.insertcoin.dev/
|
|
|
|
- https://rgbds.gbdev.io/docs/v0.5.2/gbz80.7/
|
|
|
|
- https://gbdev.io/pandocs/CPU_Instruction_Set.html
|
|
|
|
|
|
|
|
*** Bootstrap ROMs
|
|
|
|
|
|
|
|
- https://github.com/ISSOtm/gb-bootroms
|
|
|
|
|
|
|
|
*** Test ROMs
|
|
|
|
|
|
|
|
- https://github.com/gbdev/awesome-gbdev#testing
|
|
|
|
- https://tasvideos.org/EmulatorResources/GBAccuracyTests
|