Multiplatform Gameboy Color emulator
DMG: in progress CGB: not started
Work in progress. Currently debugging emulator opcodes on a computer's CLI.
cpu instrs test | pass/fail |
---|---|
01-special | 👍 |
02-interrupts | 👍 |
03-op sp,hl | 👍 |
04-op r,imm | 👍 |
04_op_r_imm.h | 👍 |
05-op rp | 👍 |
06-ld r,r | 👍 |
07-jr,jp,call,ret,rst | 👍 |
08-misc instrs | 👍 |
09-op r,r | 👍 |
10-bit ops | 👍 |
11-op a,(hl) | 👍 |
Test | pass/fail |
---|---|
add sp e timing | ❌ |
boot div dmg0 | ❌ |
boot div dmgABCmgb | ❌ |
boot div S | ❌ |
boot div2 S | ❌ |
boot hwio dmg0 | ❌ |
boot hwio dmgABCmgb | ❌ |
boot hwio S | ❌ |
boot regs dmg0 | ❌ |
boot regs dmgABC | ❌ |
boot regs mgb | ❌ |
boot regs sgb | ❌ |
boot regs sgb2 | ❌ |
call timing | ❌ |
call timing2 | ❌ |
call cc_timing | ❌ |
call cc_timing2 | ❌ |
di timing GS | ❌ |
div timing | ❌ |
ei sequence | ❌ |
ei timing | ❌ |
halt ime0 ei | ❌ |
halt ime0 nointr_timing | ❌ |
halt ime1 timing | ❌ |
halt ime1 timing2 GS | ❌ |
if ie registers | ❌ |
intr timing | ❌ |
jp timing | ❌ |
jp cc timing | ❌ |
ld hl sp e timing | ❌ |
oam dma_restart | ❌ |
oam dma start | ❌ |
oam dma timing | ❌ |
pop timing | ❌ |
push timing | ❌ |
rapid di ei | ❌ |
ret timing | ❌ |
ret cc timing | ❌ |
reti timing | ❌ |
reti intr timing | ❌ |
rst timing | ❌ |
Test | pass/fail |
---|---|
div write | 👍 |
rapid toggle | ❌ |
tim00 div trigger | ❌ |
tim00 | 👍 |
tim01 div trigger | ❌ |
tim01 | 👍 |
tim10 div trigger | ❌ |
tim10 | 👍 |
tim11 div trigger | 👍 |
tim11 | 👍 |
tima reload | ❌ |
tima write reloading | ❌ |
tma write reloading | ❌ |
Test | pass/fail |
---|---|
bits bank1 | 👍 |
bits bank2 | 👍 |
bits mode | 👍 |
bits ramg | 👍 |
rom 512kb | 👍 |
rom 1Mb | 👍 |
rom 2Mb | 👍 |
rom 4Mb | 👍 |
rom 8Mb | 👍 |
rom 16Mb | 👍 |
ram 64kb | ❌ |
ram 256kb | 👍 |
multicart rom 8Mb | ❌ |
Test | pass/fail |
---|---|
bits ramg | ❌ |
bits romb | ❌ |
bits unused | ❌ |
rom 512kb | ❌ |
rom 1Mb | ❌ |
rom 2Mb | ❌ |
ram | ❌ |
Test | pass/fail |
---|---|
rom 512kb | ❌ |
rom 1Mb | ❌ |
rom 2Mb | ❌ |
rom 4Mb | ❌ |
rom 8Mb | ❌ |
rom 16Mb | ❌ |
rom 32Mb | ❌ |
rom 64Mb | ❌ |
Test | pass/fail |
---|---|
sprite priority | 👍 |
https://devkitpro.org/ https://github.com/devkitPro/libgba
https://www.cl.cam.ac.uk/~pv273/slides/emulation.pdf
http://marc.rawer.de/Gameboy/Docs/GBCPUman.pdf
http://www.meditronik.com.pl/doc/plus/um0080.pdf
https://mgba.io/2015/06/27/cycle-counting-prefetch/
https://cturt.github.io/cinoop.html
https://github.com/drhelius/Gearboy
https://github.com/mattrubin/Gambit
https://gb-archive.github.io/salvage/decoding_gbz80_opcodes/Decoding%20Gamboy%20Z80%20Opcodes.html
http://www.devrs.com/gba/files/gbadevfaqs.php