- https://imrannazar.com/GameBoy-Emulation-in-JavaScript:-The-CPU
- Gameboy Instruction Set: https://marc.rawer.de/Gameboy/Docs/GBCPU_Instr.html
- Gameboy Opcode Summary: https://marc.rawer.de/Gameboy/Docs/Opcodes.htm
- Gameboy Manual (filled with mistakes): https://marc.rawer.de/Gameboy/Docs/GBCPUman.pdf
- Official Nintendo Gameboy Programming Manual: https://archive.org/details/GameBoyProgManVer1.1
Features | Status | Notes |
---|---|---|
⚔️Sprites | ✔️ | |
🕹 Joypad | ✔️ | |
📚 MBC | MBC1 and optional RAM implemented. No battery or any other MBC yet. | |
🔊 Sound | ❌ | |
⏱ Frame Scheduling | ❌ |
Test Roms | Status | Notes |
---|---|---|
Blargg CPU_INSTRS | ✔️ | |
Blargg INSTR_TIMING | ❌ | |
Blargg INTERRUPT_TIME | ❌ | |
Blargg MEM_TIMING | ❌ | |
Blargg MEM_TIMING-2 | ❌ | |
Mooneye bits/mem_oam | ||
Mooneye bits/reg_f | ✔️ | |
Mooneye bits/unused_hwio-GS | ️ | |
Mooneye timer/div_write | ✔️ | |
Mooneye timer/rapid_toggle | ✔️ | |
Mooneye timer/tim00 | ✔️ | |
Mooneye timer/tim01 | ✔️ | |
Mooneye timer/tim10 | ✔️ | |
Mooneye timer/tim11 | ✔️ | |
Mooneye timer/tima_reload | ✔️ | |
Mooneye timer/tima_write_reloading | ✔️ | |
Mooneye timer/tma_write_reloading | ✔️ |
Blargg INSTR_TIMING: ❌
- Fails with error "FAILED #255" , issue with timer not working right. https://github.com/afishberg/feo-boy/commit/3b2973154671a0cd00b47a81071a5fb85aa4629e has some potentially relevant info.