feat: better DMA, MBC1, fixup tests
This commit is contained in:
parent
01c5a0c75d
commit
d89a1d9215
124 changed files with 825 additions and 581 deletions
|
@ -20,248 +20,284 @@ jobs:
|
||||||
|
|
||||||
- name: Run test ROM (blargg cpu_instrs)
|
- name: Run test ROM (blargg cpu_instrs)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/blargg/roms/cpu_instrs.gb test -m 100000000 -s meowgb-tests/expected_output/cpu_instrs.bin
|
run: ./target/release/meowgb-tests test-roms/blargg/roms/cpu_instrs.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/cpu_instrs.bin
|
||||||
|
|
||||||
- name: Run test ROM (blargg instr_timing)
|
- name: Run test ROM (blargg instr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/blargg/roms/instr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/instr_timing.bin
|
run: ./target/release/meowgb-tests test-roms/blargg/roms/instr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/instr_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (blargg mem_timing)
|
- name: Run test ROM (blargg mem_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/blargg/roms/mem_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mem_timing.bin
|
run: ./target/release/meowgb-tests test-roms/blargg/roms/mem_timing.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/mem_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite add_sp_e_timing)
|
- name: Run test ROM (mooneye-test-suite add_sp_e_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/add_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/add_sp_e_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/add_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/add_sp_e_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite basic)
|
|
||||||
if: always()
|
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/basic.gb test -m 100000000 -s meowgb-tests/expected_output/basic.bin
|
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite boot_hwio-dmgABCmgb)
|
- name: Run test ROM (mooneye-test-suite boot_hwio-dmgABCmgb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_hwio-dmgABCmgb.gb test -m 100000000 -s meowgb-tests/expected_output/boot_hwio-dmgABCmgb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_hwio-dmgABCmgb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/boot_hwio-dmgABCmgb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite boot_regs-dmgABC)
|
- name: Run test ROM (mooneye-test-suite boot_regs-dmgABC)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_regs-dmgABC.gb test -m 100000000 -s meowgb-tests/expected_output/boot_regs-dmgABC.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_regs-dmgABC.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/boot_regs-dmgABC.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_cc_timing)
|
- name: Run test ROM (mooneye-test-suite call_cc_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/call_cc_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_cc_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_cc_timing2)
|
- name: Run test ROM (mooneye-test-suite call_cc_timing2)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/call_cc_timing2.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_cc_timing2.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_timing)
|
- name: Run test ROM (mooneye-test-suite call_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing.gb test -m 100000000 -s meowgb-tests/expected_output/call_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_timing2)
|
- name: Run test ROM (mooneye-test-suite call_timing2)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/call_timing2.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_timing2.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite daa)
|
|
||||||
if: always()
|
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/daa.gb test -m 100000000 -s meowgb-tests/expected_output/daa.bin
|
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite di_timing-GS)
|
- name: Run test ROM (mooneye-test-suite di_timing-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/di_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/di_timing-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/di_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/di_timing-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite div_timing)
|
- name: Run test ROM (mooneye-test-suite div_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_timing.gb test -m 100000000 -s meowgb-tests/expected_output/div_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/div_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite div_write)
|
|
||||||
if: always()
|
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_write.gb test -m 100000000 -s meowgb-tests/expected_output/div_write.bin
|
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ei_sequence)
|
- name: Run test ROM (mooneye-test-suite ei_sequence)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_sequence.gb test -m 100000000 -s meowgb-tests/expected_output/ei_sequence.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_sequence.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ei_sequence.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ei_timing)
|
- name: Run test ROM (mooneye-test-suite ei_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_timing.gb test -m 100000000 -s meowgb-tests/expected_output/ei_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ei_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime0_ei)
|
- name: Run test ROM (mooneye-test-suite halt_ime0_ei)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_ei.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime0_ei.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_ei.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime0_ei.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime0_nointr_timing)
|
- name: Run test ROM (mooneye-test-suite halt_ime0_nointr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_nointr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime0_nointr_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_nointr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime0_nointr_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime1_timing)
|
- name: Run test ROM (mooneye-test-suite halt_ime1_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime1_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime1_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime1_timing2-GS)
|
- name: Run test ROM (mooneye-test-suite halt_ime1_timing2-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing2-GS.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime1_timing2-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing2-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime1_timing2-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite intr_1_2_timing-GS)
|
- name: Run test ROM (mooneye-test-suite if_ie_registers)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_1_2_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/intr_1_2_timing-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/if_ie_registers.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/if_ie_registers.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite intr_2_0_timing)
|
- name: Run test ROM (mooneye-test-suite intr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_2_0_timing.gb test -m 100000000 -s meowgb-tests/expected_output/intr_2_0_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/intr_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite mem_oam)
|
- name: Run test ROM (mooneye-test-suite jp_cc_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/mem_oam.gb test -m 100000000 -s meowgb-tests/expected_output/mem_oam.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/jp_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/jp_cc_timing.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite jp_timing)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/jp_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/jp_timing.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite ld_hl_sp_e_timing)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ld_hl_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ld_hl_sp_e_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite oam_dma_restart)
|
- name: Run test ROM (mooneye-test-suite oam_dma_restart)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_restart.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_restart.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_restart.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_restart.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite oam_dma_start)
|
- name: Run test ROM (mooneye-test-suite oam_dma_start)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_start.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_start.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_start.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_start.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite oam_dma_timing)
|
- name: Run test ROM (mooneye-test-suite oam_dma_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_timing.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite pop_timing)
|
- name: Run test ROM (mooneye-test-suite pop_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/pop_timing.gb test -m 100000000 -s meowgb-tests/expected_output/pop_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/pop_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/pop_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite push_timing)
|
- name: Run test ROM (mooneye-test-suite push_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/push_timing.gb test -m 100000000 -s meowgb-tests/expected_output/push_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/push_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/push_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rapid_di_ei)
|
- name: Run test ROM (mooneye-test-suite rapid_di_ei)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_di_ei.gb test -m 100000000 -s meowgb-tests/expected_output/rapid_di_ei.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_di_ei.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/rapid_di_ei.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rapid_toggle)
|
- name: Run test ROM (mooneye-test-suite ret_cc_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_toggle.gb test -m 100000000 -s meowgb-tests/expected_output/rapid_toggle.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ret_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ret_cc_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite reg_f)
|
- name: Run test ROM (mooneye-test-suite ret_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reg_f.gb test -m 100000000 -s meowgb-tests/expected_output/reg_f.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ret_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ret_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite reg_read)
|
- name: Run test ROM (mooneye-test-suite reti_intr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reg_read.gb test -m 100000000 -s meowgb-tests/expected_output/reg_read.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reti_intr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/reti_intr_timing.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite reti_timing)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reti_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/reti_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rst_timing)
|
- name: Run test ROM (mooneye-test-suite rst_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rst_timing.gb test -m 100000000 -s meowgb-tests/expected_output/rst_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rst_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/rst_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite stat_irq_blocking)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_bank1)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/stat_irq_blocking.gb test -m 100000000 -s meowgb-tests/expected_output/stat_irq_blocking.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank1.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_bank1.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite stat_lyc_onoff)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_bank2)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/stat_lyc_onoff.gb test -m 100000000 -s meowgb-tests/expected_output/stat_lyc_onoff.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_bank2.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim00)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_mode)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim00.gb test -m 100000000 -s meowgb-tests/expected_output/tim00.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_mode.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_mode.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim00_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_ramg)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim00_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim00_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_ramg.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_ramg.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim01)
|
- name: Run test ROM (mooneye-test-suite MBC1/multicart_rom_8Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim01.gb test -m 100000000 -s meowgb-tests/expected_output/tim01.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/multicart_rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/multicart_rom_8Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim01_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/ram_256kb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim01_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim01_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_256kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/ram_256kb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim10)
|
- name: Run test ROM (mooneye-test-suite MBC1/ram_64kb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim10.gb test -m 100000000 -s meowgb-tests/expected_output/tim10.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_64kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/ram_64kb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim10_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_16Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim10_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim10_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_16Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_16Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim11)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_1Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim11.gb test -m 100000000 -s meowgb-tests/expected_output/tim11.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_1Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_1Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim11_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_2Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim11_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim11_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_2Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_2Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tima_reload)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_4Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tima_reload.gb test -m 100000000 -s meowgb-tests/expected_output/tima_reload.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_4Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_4Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tima_write_reloading)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_512kb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tima_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/tima_write_reloading.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_512kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_512kb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tma_write_reloading)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_8Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tma_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/tma_write_reloading.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_8Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite unused_hwio-GS)
|
- name: Run test ROM (mooneye-test-suite bits/mem_oam)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/unused_hwio-GS.gb test -m 100000000 -s meowgb-tests/expected_output/unused_hwio-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/mem_oam.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/mem_oam.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite vblank_stat_intr-GS)
|
- name: Run test ROM (mooneye-test-suite bits/reg_f)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/vblank_stat_intr-GS.gb test -m 100000000 -s meowgb-tests/expected_output/vblank_stat_intr-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/reg_f.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/reg_f.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_bank1)
|
- name: Run test ROM (mooneye-test-suite bits/unused_hwio-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank1.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_bank1.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/unused_hwio-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/unused_hwio-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_bank2)
|
- name: Run test ROM (mooneye-test-suite instr/daa)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank2.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_bank2.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/instr/daa.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/instr/daa.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_mode)
|
- name: Run test ROM (mooneye-test-suite oam_dma/basic)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_mode.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_mode.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma/basic.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma/basic.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_ramg)
|
- name: Run test ROM (mooneye-test-suite oam_dma/reg_read)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_ramg.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_ramg.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma/reg_read.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma/reg_read.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite multicart_rom_8Mb)
|
- name: Run test ROM (mooneye-test-suite ppu/intr_1_2_timing-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/multicart_rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/multicart_rom_8Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/intr_1_2_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/intr_1_2_timing-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ram_256kb)
|
- name: Run test ROM (mooneye-test-suite ppu/intr_2_0_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_256kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/ram_256kb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/intr_2_0_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/intr_2_0_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ram_64kb)
|
- name: Run test ROM (mooneye-test-suite ppu/stat_irq_blocking)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_64kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/ram_64kb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/stat_irq_blocking.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/stat_irq_blocking.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_16Mb)
|
- name: Run test ROM (mooneye-test-suite ppu/stat_lyc_onoff)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_16Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_16Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/stat_lyc_onoff.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/stat_lyc_onoff.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_1Mb)
|
- name: Run test ROM (mooneye-test-suite ppu/vblank_stat_intr-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_1Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_1Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/vblank_stat_intr-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/vblank_stat_intr-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_2Mb)
|
- name: Run test ROM (mooneye-test-suite timer/div_write)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_2Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_2Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/div_write.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/div_write.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_4Mb)
|
- name: Run test ROM (mooneye-test-suite timer/rapid_toggle)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_4Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_4Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/rapid_toggle.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/rapid_toggle.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_512kb)
|
- name: Run test ROM (mooneye-test-suite timer/tim00)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_512kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_512kb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim00.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim00.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_8Mb)
|
- name: Run test ROM (mooneye-test-suite timer/tim00_div_trigger)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_8Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim00_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim00_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim01)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim01.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim01.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim01_div_trigger)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim01_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim01_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim10)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim10.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim10.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim10_div_trigger)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim10_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim10_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim11)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim11.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim11.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim11_div_trigger)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim11_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim11_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tima_reload)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tima_reload.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tima_reload.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tima_write_reloading)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tima_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tima_write_reloading.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tma_write_reloading)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tma_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tma_write_reloading.bin
|
||||||
|
|
246
.github/workflows/action.yml
vendored
246
.github/workflows/action.yml
vendored
|
@ -20,248 +20,284 @@ jobs:
|
||||||
|
|
||||||
- name: Run test ROM (blargg cpu_instrs)
|
- name: Run test ROM (blargg cpu_instrs)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/blargg/roms/cpu_instrs.gb test -m 100000000 -s meowgb-tests/expected_output/cpu_instrs.bin
|
run: ./target/release/meowgb-tests test-roms/blargg/roms/cpu_instrs.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/cpu_instrs.bin
|
||||||
|
|
||||||
- name: Run test ROM (blargg instr_timing)
|
- name: Run test ROM (blargg instr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/blargg/roms/instr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/instr_timing.bin
|
run: ./target/release/meowgb-tests test-roms/blargg/roms/instr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/instr_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (blargg mem_timing)
|
- name: Run test ROM (blargg mem_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/blargg/roms/mem_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mem_timing.bin
|
run: ./target/release/meowgb-tests test-roms/blargg/roms/mem_timing.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/mem_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite add_sp_e_timing)
|
- name: Run test ROM (mooneye-test-suite add_sp_e_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/add_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/add_sp_e_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/add_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/add_sp_e_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite basic)
|
|
||||||
if: always()
|
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/basic.gb test -m 100000000 -s meowgb-tests/expected_output/basic.bin
|
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite boot_hwio-dmgABCmgb)
|
- name: Run test ROM (mooneye-test-suite boot_hwio-dmgABCmgb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_hwio-dmgABCmgb.gb test -m 100000000 -s meowgb-tests/expected_output/boot_hwio-dmgABCmgb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_hwio-dmgABCmgb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/boot_hwio-dmgABCmgb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite boot_regs-dmgABC)
|
- name: Run test ROM (mooneye-test-suite boot_regs-dmgABC)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_regs-dmgABC.gb test -m 100000000 -s meowgb-tests/expected_output/boot_regs-dmgABC.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_regs-dmgABC.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/boot_regs-dmgABC.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_cc_timing)
|
- name: Run test ROM (mooneye-test-suite call_cc_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/call_cc_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_cc_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_cc_timing2)
|
- name: Run test ROM (mooneye-test-suite call_cc_timing2)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/call_cc_timing2.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_cc_timing2.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_timing)
|
- name: Run test ROM (mooneye-test-suite call_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing.gb test -m 100000000 -s meowgb-tests/expected_output/call_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite call_timing2)
|
- name: Run test ROM (mooneye-test-suite call_timing2)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/call_timing2.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_timing2.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite daa)
|
|
||||||
if: always()
|
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/daa.gb test -m 100000000 -s meowgb-tests/expected_output/daa.bin
|
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite di_timing-GS)
|
- name: Run test ROM (mooneye-test-suite di_timing-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/di_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/di_timing-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/di_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/di_timing-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite div_timing)
|
- name: Run test ROM (mooneye-test-suite div_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_timing.gb test -m 100000000 -s meowgb-tests/expected_output/div_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/div_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite div_write)
|
|
||||||
if: always()
|
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_write.gb test -m 100000000 -s meowgb-tests/expected_output/div_write.bin
|
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ei_sequence)
|
- name: Run test ROM (mooneye-test-suite ei_sequence)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_sequence.gb test -m 100000000 -s meowgb-tests/expected_output/ei_sequence.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_sequence.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ei_sequence.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ei_timing)
|
- name: Run test ROM (mooneye-test-suite ei_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_timing.gb test -m 100000000 -s meowgb-tests/expected_output/ei_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ei_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime0_ei)
|
- name: Run test ROM (mooneye-test-suite halt_ime0_ei)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_ei.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime0_ei.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_ei.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime0_ei.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime0_nointr_timing)
|
- name: Run test ROM (mooneye-test-suite halt_ime0_nointr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_nointr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime0_nointr_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_nointr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime0_nointr_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime1_timing)
|
- name: Run test ROM (mooneye-test-suite halt_ime1_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime1_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime1_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite halt_ime1_timing2-GS)
|
- name: Run test ROM (mooneye-test-suite halt_ime1_timing2-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing2-GS.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime1_timing2-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing2-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime1_timing2-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite intr_1_2_timing-GS)
|
- name: Run test ROM (mooneye-test-suite if_ie_registers)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_1_2_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/intr_1_2_timing-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/if_ie_registers.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/if_ie_registers.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite intr_2_0_timing)
|
- name: Run test ROM (mooneye-test-suite intr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_2_0_timing.gb test -m 100000000 -s meowgb-tests/expected_output/intr_2_0_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/intr_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite mem_oam)
|
- name: Run test ROM (mooneye-test-suite jp_cc_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/mem_oam.gb test -m 100000000 -s meowgb-tests/expected_output/mem_oam.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/jp_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/jp_cc_timing.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite jp_timing)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/jp_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/jp_timing.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite ld_hl_sp_e_timing)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ld_hl_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ld_hl_sp_e_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite oam_dma_restart)
|
- name: Run test ROM (mooneye-test-suite oam_dma_restart)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_restart.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_restart.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_restart.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_restart.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite oam_dma_start)
|
- name: Run test ROM (mooneye-test-suite oam_dma_start)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_start.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_start.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_start.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_start.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite oam_dma_timing)
|
- name: Run test ROM (mooneye-test-suite oam_dma_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_timing.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite pop_timing)
|
- name: Run test ROM (mooneye-test-suite pop_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/pop_timing.gb test -m 100000000 -s meowgb-tests/expected_output/pop_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/pop_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/pop_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite push_timing)
|
- name: Run test ROM (mooneye-test-suite push_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/push_timing.gb test -m 100000000 -s meowgb-tests/expected_output/push_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/push_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/push_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rapid_di_ei)
|
- name: Run test ROM (mooneye-test-suite rapid_di_ei)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_di_ei.gb test -m 100000000 -s meowgb-tests/expected_output/rapid_di_ei.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_di_ei.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/rapid_di_ei.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rapid_toggle)
|
- name: Run test ROM (mooneye-test-suite ret_cc_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_toggle.gb test -m 100000000 -s meowgb-tests/expected_output/rapid_toggle.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ret_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ret_cc_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite reg_f)
|
- name: Run test ROM (mooneye-test-suite ret_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reg_f.gb test -m 100000000 -s meowgb-tests/expected_output/reg_f.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ret_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ret_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite reg_read)
|
- name: Run test ROM (mooneye-test-suite reti_intr_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reg_read.gb test -m 100000000 -s meowgb-tests/expected_output/reg_read.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reti_intr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/reti_intr_timing.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite reti_timing)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reti_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/reti_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rst_timing)
|
- name: Run test ROM (mooneye-test-suite rst_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rst_timing.gb test -m 100000000 -s meowgb-tests/expected_output/rst_timing.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rst_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/rst_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite stat_irq_blocking)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_bank1)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/stat_irq_blocking.gb test -m 100000000 -s meowgb-tests/expected_output/stat_irq_blocking.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank1.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_bank1.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite stat_lyc_onoff)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_bank2)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/stat_lyc_onoff.gb test -m 100000000 -s meowgb-tests/expected_output/stat_lyc_onoff.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_bank2.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim00)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_mode)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim00.gb test -m 100000000 -s meowgb-tests/expected_output/tim00.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_mode.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_mode.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim00_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/bits_ramg)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim00_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim00_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_ramg.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_ramg.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim01)
|
- name: Run test ROM (mooneye-test-suite MBC1/multicart_rom_8Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim01.gb test -m 100000000 -s meowgb-tests/expected_output/tim01.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/multicart_rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/multicart_rom_8Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim01_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/ram_256kb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim01_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim01_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_256kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/ram_256kb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim10)
|
- name: Run test ROM (mooneye-test-suite MBC1/ram_64kb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim10.gb test -m 100000000 -s meowgb-tests/expected_output/tim10.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_64kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/ram_64kb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim10_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_16Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim10_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim10_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_16Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_16Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim11)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_1Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim11.gb test -m 100000000 -s meowgb-tests/expected_output/tim11.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_1Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_1Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tim11_div_trigger)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_2Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim11_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim11_div_trigger.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_2Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_2Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tima_reload)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_4Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tima_reload.gb test -m 100000000 -s meowgb-tests/expected_output/tima_reload.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_4Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_4Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tima_write_reloading)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_512kb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tima_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/tima_write_reloading.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_512kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_512kb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite tma_write_reloading)
|
- name: Run test ROM (mooneye-test-suite MBC1/rom_8Mb)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tma_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/tma_write_reloading.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_8Mb.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite unused_hwio-GS)
|
- name: Run test ROM (mooneye-test-suite bits/mem_oam)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/unused_hwio-GS.gb test -m 100000000 -s meowgb-tests/expected_output/unused_hwio-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/mem_oam.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/mem_oam.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite vblank_stat_intr-GS)
|
- name: Run test ROM (mooneye-test-suite bits/reg_f)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/vblank_stat_intr-GS.gb test -m 100000000 -s meowgb-tests/expected_output/vblank_stat_intr-GS.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/reg_f.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/reg_f.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_bank1)
|
- name: Run test ROM (mooneye-test-suite bits/unused_hwio-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank1.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_bank1.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/unused_hwio-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/unused_hwio-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_bank2)
|
- name: Run test ROM (mooneye-test-suite instr/daa)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank2.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_bank2.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/instr/daa.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/instr/daa.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_mode)
|
- name: Run test ROM (mooneye-test-suite oam_dma/basic)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_mode.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_mode.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma/basic.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma/basic.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite bits_ramg)
|
- name: Run test ROM (mooneye-test-suite oam_dma/reg_read)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_ramg.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_ramg.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma/reg_read.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma/reg_read.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite multicart_rom_8Mb)
|
- name: Run test ROM (mooneye-test-suite ppu/intr_1_2_timing-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/multicart_rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/multicart_rom_8Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/intr_1_2_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/intr_1_2_timing-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ram_256kb)
|
- name: Run test ROM (mooneye-test-suite ppu/intr_2_0_timing)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_256kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/ram_256kb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/intr_2_0_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/intr_2_0_timing.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite ram_64kb)
|
- name: Run test ROM (mooneye-test-suite ppu/stat_irq_blocking)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_64kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/ram_64kb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/stat_irq_blocking.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/stat_irq_blocking.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_16Mb)
|
- name: Run test ROM (mooneye-test-suite ppu/stat_lyc_onoff)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_16Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_16Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/stat_lyc_onoff.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/stat_lyc_onoff.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_1Mb)
|
- name: Run test ROM (mooneye-test-suite ppu/vblank_stat_intr-GS)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_1Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_1Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/vblank_stat_intr-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/vblank_stat_intr-GS.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_2Mb)
|
- name: Run test ROM (mooneye-test-suite timer/div_write)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_2Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_2Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/div_write.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/div_write.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_4Mb)
|
- name: Run test ROM (mooneye-test-suite timer/rapid_toggle)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_4Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_4Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/rapid_toggle.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/rapid_toggle.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_512kb)
|
- name: Run test ROM (mooneye-test-suite timer/tim00)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_512kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_512kb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim00.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim00.bin
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite rom_8Mb)
|
- name: Run test ROM (mooneye-test-suite timer/tim00_div_trigger)
|
||||||
if: always()
|
if: always()
|
||||||
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_8Mb.bin
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim00_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim00_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim01)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim01.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim01.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim01_div_trigger)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim01_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim01_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim10)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim10.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim10.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim10_div_trigger)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim10_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim10_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim11)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim11.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim11.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tim11_div_trigger)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim11_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim11_div_trigger.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tima_reload)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tima_reload.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tima_reload.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tima_write_reloading)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tima_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tima_write_reloading.bin
|
||||||
|
|
||||||
|
- name: Run test ROM (mooneye-test-suite timer/tma_write_reloading)
|
||||||
|
if: always()
|
||||||
|
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tma_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tma_write_reloading.bin
|
||||||
|
|
|
@ -53,7 +53,7 @@ EOF
|
||||||
for full_f in ./test-roms/blargg/roms/*.gb
|
for full_f in ./test-roms/blargg/roms/*.gb
|
||||||
do
|
do
|
||||||
f="${full_f##*/}"; f="${f%.*}";
|
f="${full_f##*/}"; f="${f%.*}";
|
||||||
TEST_CMD="./target/release/meowgb-tests test-roms/blargg/roms/$f.gb test -m 100000000 -s meowgb-tests/expected_output/$f.bin"
|
TEST_CMD="./target/release/meowgb-tests test-roms/blargg/roms/$f.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/$f.bin"
|
||||||
|
|
||||||
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ fi
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat >>$TEST_MD_FILE << EOF
|
cat >>$TEST_MD_FILE << EOF
|
||||||
* $f.gb - [ROM]($full_f) - [Expected Serial Output](./meowgb-tests/expected_output/$f.bin)
|
* $f.gb - [ROM]($full_f) - [Expected Serial Output](./meowgb-tests/expected_output/blargg/$f.bin)
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
tee -a $GH_ACTION_OUTPUT_FILE $FJ_ACTION_OUTPUT_FILE >/dev/null << EOF
|
tee -a $GH_ACTION_OUTPUT_FILE $FJ_ACTION_OUTPUT_FILE >/dev/null << EOF
|
||||||
|
@ -89,7 +89,7 @@ EOF
|
||||||
for full_f in ./test-roms/mooneye-test-suite/roms/*.gb
|
for full_f in ./test-roms/mooneye-test-suite/roms/*.gb
|
||||||
do
|
do
|
||||||
f="${full_f##*/}"; f="${f%.*}";
|
f="${full_f##*/}"; f="${f%.*}";
|
||||||
TEST_CMD="./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/$f.gb test -m 100000000 -s meowgb-tests/expected_output/$f.bin"
|
TEST_CMD="./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/$f.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/$f.bin"
|
||||||
|
|
||||||
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
||||||
|
|
||||||
|
@ -105,7 +105,7 @@ fi
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat >>$TEST_MD_FILE << EOF
|
cat >>$TEST_MD_FILE << EOF
|
||||||
* $f.gb - [ROM]($full_f) - [Expected Serial Output](./meowgb-tests/expected_output/MBC1/$f.bin)
|
* $f.gb - [ROM]($full_f) - [Expected Serial Output](./meowgb-tests/expected_output/mooneye-test-suite/$f.bin)
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
tee -a $GH_ACTION_OUTPUT_FILE $FJ_ACTION_OUTPUT_FILE >/dev/null << EOF
|
tee -a $GH_ACTION_OUTPUT_FILE $FJ_ACTION_OUTPUT_FILE >/dev/null << EOF
|
||||||
|
@ -116,16 +116,20 @@ EOF
|
||||||
EOF
|
EOF
|
||||||
done
|
done
|
||||||
|
|
||||||
cat >>$TEST_MD_FILE << EOF
|
for directory in ./test-roms/mooneye-test-suite/roms/*/
|
||||||
|
do
|
||||||
|
d=$(basename $directory)
|
||||||
|
|
||||||
### MBC1
|
cat >>$TEST_MD_FILE << EOF
|
||||||
|
|
||||||
|
### $d
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
for full_f in ./test-roms/mooneye-test-suite/roms/MBC1/**.gb
|
for full_f in ./test-roms/mooneye-test-suite/roms/$d/*.gb
|
||||||
do
|
do
|
||||||
f="${full_f##*/}"; f="${f%.*}";
|
f="${full_f##*/}"; f="${f%.*}";
|
||||||
TEST_CMD="./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/$f.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/$f.bin"
|
TEST_CMD="./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/$d/$f.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/$d/$f.bin"
|
||||||
|
|
||||||
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
||||||
|
|
||||||
|
@ -141,15 +145,17 @@ fi
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat >>$TEST_MD_FILE << EOF
|
cat >>$TEST_MD_FILE << EOF
|
||||||
* $f.gb - [ROM]($full_f) - [Expected Serial Output](./meowgb-tests/expected_output/$f.bin)
|
* $d/$f.gb - [ROM]($full_f) - [Expected Serial Output](./meowgb-tests/expected_output/mooneye-test-suite/$d/$f.bin)
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
tee -a $GH_ACTION_OUTPUT_FILE $FJ_ACTION_OUTPUT_FILE >/dev/null << EOF
|
tee -a $GH_ACTION_OUTPUT_FILE $FJ_ACTION_OUTPUT_FILE >/dev/null << EOF
|
||||||
|
|
||||||
- name: Run test ROM (mooneye-test-suite $f)
|
- name: Run test ROM (mooneye-test-suite $d/$f)
|
||||||
if: always()
|
if: always()
|
||||||
run: $TEST_CMD
|
run: $TEST_CMD
|
||||||
EOF
|
EOF
|
||||||
|
done
|
||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
cat >>$TEST_SCRIPT_OUTPUT_FILE << EOF
|
||||||
|
|
|
@ -10,10 +10,9 @@ pub enum DmaMemoryBus {
|
||||||
impl DmaMemoryBus {
|
impl DmaMemoryBus {
|
||||||
pub fn from_base(base: u8) -> Self {
|
pub fn from_base(base: u8) -> Self {
|
||||||
match base {
|
match base {
|
||||||
0..=0x7F
|
0..=0x7F | 0xA0..=0xFD => Self::External,
|
||||||
| 0xA0..=0xFD => Self::External,
|
|
||||||
0x80..=0x9F => Self::Video,
|
0x80..=0x9F => Self::Video,
|
||||||
_ => Self::Other
|
_ => Self::Other,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,9 +44,7 @@ pub struct DmaState {
|
||||||
|
|
||||||
impl DmaState {
|
impl DmaState {
|
||||||
pub fn is_conflict(&self, address: u16) -> bool {
|
pub fn is_conflict(&self, address: u16) -> bool {
|
||||||
self.in_progress().map(|bus| {
|
self.in_progress().map(|bus| bus.conflict_in_range(address)).unwrap_or_default()
|
||||||
bus.conflict_in_range(address)
|
|
||||||
}).unwrap_or_default()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn in_progress(&self) -> Option<DmaMemoryBus> {
|
pub fn in_progress(&self) -> Option<DmaMemoryBus> {
|
||||||
|
@ -58,7 +55,13 @@ impl DmaState {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
Self { dma_in_progress: false, original_base: 0, base: 0, remaining_cycles: 0, restarting: None }
|
Self {
|
||||||
|
dma_in_progress: false,
|
||||||
|
original_base: 0,
|
||||||
|
base: 0,
|
||||||
|
remaining_cycles: 0,
|
||||||
|
restarting: None,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn init_request(&mut self, base: u8) {
|
pub fn init_request(&mut self, base: u8) {
|
||||||
|
|
|
@ -9,11 +9,19 @@ pub struct MBC1 {
|
||||||
rom_bank_number: u8,
|
rom_bank_number: u8,
|
||||||
extra_2_bit_reg: u8,
|
extra_2_bit_reg: u8,
|
||||||
banking_mode_select: bool,
|
banking_mode_select: bool,
|
||||||
|
is_mbc1m: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl MBC1 {
|
impl MBC1 {
|
||||||
pub fn new(data: Vec<u8>) -> Self {
|
pub fn new(data: Vec<u8>) -> Self {
|
||||||
let rom_bank_count = 0b10 << data[0x148];
|
assert!(data[0x147] >= 1 && data[0x147] <= 0x3);
|
||||||
|
let rom_bank_count = data[0x148];
|
||||||
|
assert!(rom_bank_count <= 0x6, "{:#X}", rom_bank_count);
|
||||||
|
|
||||||
|
let rom_length = (1 << rom_bank_count as usize) * 0x8000;
|
||||||
|
|
||||||
|
assert_eq!(data.len(), rom_length);
|
||||||
|
|
||||||
let ram_bank_count = match data[0x149] {
|
let ram_bank_count = match data[0x149] {
|
||||||
0 | 1 => 0,
|
0 | 1 => 0,
|
||||||
2 => 1,
|
2 => 1,
|
||||||
|
@ -23,13 +31,16 @@ impl MBC1 {
|
||||||
_ => panic!("Bad RAM bank count for MBC1"),
|
_ => panic!("Bad RAM bank count for MBC1"),
|
||||||
};
|
};
|
||||||
|
|
||||||
let ram = match ram_bank_count {
|
let ram = match data[0x149] {
|
||||||
0 | 1 => None,
|
0 | 1 => None,
|
||||||
2 | 3 | 4 | 5 => Some(vec![0u8; ram_bank_count as usize * (8 * 1024)]),
|
2 | 3 | 4 | 5 => Some(vec![0u8; ram_bank_count as usize * (8 * 1024)]),
|
||||||
_ => panic!("Bad RAM bank count for MBC1"),
|
_ => panic!("Bad RAM bank count for MBC1"),
|
||||||
};
|
};
|
||||||
|
|
||||||
assert_eq!(data.len(), rom_bank_count as usize * (16 * 1024));
|
let is_mbc1m = match rom_bank_count > 3 {
|
||||||
|
true => &data[0x104..0x134] == &data[((0x10 << 14) + 0x104)..((0x10 << 14) + 0x134)],
|
||||||
|
false => false,
|
||||||
|
};
|
||||||
|
|
||||||
Self {
|
Self {
|
||||||
rom: data,
|
rom: data,
|
||||||
|
@ -40,18 +51,16 @@ impl MBC1 {
|
||||||
ram,
|
ram,
|
||||||
ram_bank_count,
|
ram_bank_count,
|
||||||
banking_mode_select: false,
|
banking_mode_select: false,
|
||||||
|
is_mbc1m,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn set_ram_enabled(&mut self, val: u8) {
|
fn set_ram_enabled(&mut self, val: u8) {
|
||||||
self.ram_enabled = val & 0xA != 0;
|
self.ram_enabled = val & 0b1111 == 0xA;
|
||||||
}
|
}
|
||||||
|
|
||||||
fn set_rom_bank_number(&mut self, mut val: u8) {
|
fn set_rom_bank_number(&mut self, val: u8) {
|
||||||
if val == 0 {
|
self.rom_bank_number = (val & 0b11111).max(1);
|
||||||
val = 1;
|
|
||||||
}
|
|
||||||
self.rom_bank_number = val & 0b1_1111;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn set_extra_2_bit_reg(&mut self, val: u8) {
|
fn set_extra_2_bit_reg(&mut self, val: u8) {
|
||||||
|
@ -63,30 +72,44 @@ impl MBC1 {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn is_large_rom(&self) -> bool {
|
fn is_large_rom(&self) -> bool {
|
||||||
self.rom_bank_count >= 64
|
self.rom_bank_count >= 5
|
||||||
}
|
}
|
||||||
|
|
||||||
#[allow(unused)]
|
#[allow(unused)]
|
||||||
fn is_large_ram(&self) -> bool {
|
fn is_large_ram(&self) -> bool {
|
||||||
self.ram_bank_count > 2
|
self.ram_bank_count >= 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Mapper for MBC1 {
|
impl Mapper for MBC1 {
|
||||||
fn read_rom_u8(&self, address: u16) -> u8 {
|
fn read_rom_u8(&self, address: u16) -> u8 {
|
||||||
if address <= 0x3FFF {
|
let mask = match self.rom_bank_count {
|
||||||
self.rom[if self.is_large_rom() && self.banking_mode_select {
|
0 => 0b1,
|
||||||
((self.extra_2_bit_reg << 5) as usize * 0x4000) + address as usize
|
1 => 0b11,
|
||||||
} else {
|
2 => 0b111,
|
||||||
address as usize
|
3 => 0b1111,
|
||||||
}]
|
4 => 0b11111,
|
||||||
} else {
|
5 => 0b111111,
|
||||||
self.rom[if self.is_large_rom() {
|
6 => 0b1111111,
|
||||||
(self.rom_bank_number | (self.extra_2_bit_reg << 5)) as usize * 0x4000
|
_ => unreachable!(),
|
||||||
} else {
|
};
|
||||||
self.rom_bank_number as usize * 0x4000
|
let rom_bank = match address <= 0x3FFF {
|
||||||
} + (address as usize - 0x4000)]
|
true if self.banking_mode_select && self.is_mbc1m => {
|
||||||
}
|
(self.extra_2_bit_reg << 4) as usize
|
||||||
|
}
|
||||||
|
true if self.is_large_rom() && self.banking_mode_select && !self.is_mbc1m => {
|
||||||
|
((self.extra_2_bit_reg as usize) << 5) & mask
|
||||||
|
}
|
||||||
|
true => 0,
|
||||||
|
false if self.is_mbc1m => {
|
||||||
|
((self.rom_bank_number & 0b1111) | (self.extra_2_bit_reg << 4)) as usize
|
||||||
|
}
|
||||||
|
false => (self.rom_bank_number | (self.extra_2_bit_reg << 5)) as usize,
|
||||||
|
} & mask;
|
||||||
|
|
||||||
|
let real_address = rom_bank << 14 | (address as usize & 0x3FFF);
|
||||||
|
|
||||||
|
self.rom[real_address]
|
||||||
}
|
}
|
||||||
|
|
||||||
fn write_rom_u8(&mut self, address: u16, value: u8) {
|
fn write_rom_u8(&mut self, address: u16, value: u8) {
|
||||||
|
@ -100,22 +123,33 @@ impl Mapper for MBC1 {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn read_eram_u8(&self, address: u16) -> u8 {
|
fn read_eram_u8(&self, address: u16) -> u8 {
|
||||||
|
let is_large_ram = self.is_large_ram();
|
||||||
|
|
||||||
|
if !self.ram_enabled {
|
||||||
|
return 0xFF;
|
||||||
|
}
|
||||||
|
|
||||||
match self.ram.as_ref() {
|
match self.ram.as_ref() {
|
||||||
Some(ram) => match self.is_large_rom() {
|
Some(ram) if is_large_ram && self.banking_mode_select => {
|
||||||
true => ram[address as usize],
|
ram[(self.extra_2_bit_reg as usize * 0x2000) + address as usize]
|
||||||
false => ram[(self.extra_2_bit_reg as usize * 0x2000) + address as usize],
|
}
|
||||||
},
|
Some(ram) => ram[address as usize],
|
||||||
None => 0xFF,
|
None => 0xFF,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn write_eram_u8(&mut self, address: u16, value: u8) {
|
fn write_eram_u8(&mut self, address: u16, value: u8) {
|
||||||
let is_large_rom = self.is_large_rom();
|
let is_large_ram = self.is_large_ram();
|
||||||
|
|
||||||
|
if !self.ram_enabled {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
match self.ram.as_mut() {
|
match self.ram.as_mut() {
|
||||||
Some(ram) => match is_large_rom {
|
Some(ram) if is_large_ram && self.banking_mode_select => {
|
||||||
true => ram[address as usize] = value,
|
ram[(self.extra_2_bit_reg as usize * 0x2000) + address as usize] = value
|
||||||
false => ram[(self.extra_2_bit_reg as usize * 0x2000) + address as usize] = value,
|
}
|
||||||
},
|
Some(ram) => ram[address as usize] = value,
|
||||||
None => {}
|
None => {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use super::{interrupts::Interrupts, dma::DmaState};
|
use super::{dma::DmaState, interrupts::Interrupts};
|
||||||
|
|
||||||
pub const FB_HEIGHT: u32 = 144;
|
pub const FB_HEIGHT: u32 = 144;
|
||||||
pub const FB_WIDTH: u32 = 160;
|
pub const FB_WIDTH: u32 = 160;
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -1 +0,0 @@
|
||||||
BBBBBB
|
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -0,0 +1 @@
|
||||||
|
"
|
|
@ -1,6 +1,6 @@
|
||||||
/// Provides an [egui] based overlay for debugigng the emulator whilst it is
|
/// Provides an [egui] based overlay for debugigng the emulator whilst it is
|
||||||
/// running
|
/// running
|
||||||
use egui::{ClippedPrimitive, Context, Grid, TexturesDelta, RichText, Color32};
|
use egui::{ClippedPrimitive, Color32, Context, Grid, RichText, TexturesDelta};
|
||||||
use egui_wgpu::renderer::{Renderer, ScreenDescriptor};
|
use egui_wgpu::renderer::{Renderer, ScreenDescriptor};
|
||||||
use meowgb_core::gameboy::serial::SerialWriter;
|
use meowgb_core::gameboy::serial::SerialWriter;
|
||||||
use pixels::{wgpu, PixelsContext};
|
use pixels::{wgpu, PixelsContext};
|
||||||
|
@ -194,7 +194,7 @@ impl Gui {
|
||||||
wram_window_open: false,
|
wram_window_open: false,
|
||||||
oam_window_open: false,
|
oam_window_open: false,
|
||||||
hram_window_open: false,
|
hram_window_open: false,
|
||||||
dma_window_open: false,
|
dma_window_open: false,
|
||||||
},
|
},
|
||||||
state_restore: None,
|
state_restore: None,
|
||||||
registers: gameboy.gameboy.registers,
|
registers: gameboy.gameboy.registers,
|
||||||
|
@ -209,7 +209,7 @@ impl Gui {
|
||||||
wram: gameboy.gameboy.memory.wram,
|
wram: gameboy.gameboy.memory.wram,
|
||||||
hram: gameboy.gameboy.memory.hram,
|
hram: gameboy.gameboy.memory.hram,
|
||||||
oam: gameboy.gameboy.ppu.oam,
|
oam: gameboy.gameboy.ppu.oam,
|
||||||
dma: gameboy.gameboy.dma
|
dma: gameboy.gameboy.dma,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -242,7 +242,7 @@ impl Gui {
|
||||||
if ui.button("Toggle OAM Window").clicked() {
|
if ui.button("Toggle OAM Window").clicked() {
|
||||||
self.state.oam_window_open = !self.state.oam_window_open;
|
self.state.oam_window_open = !self.state.oam_window_open;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ui.button("Toggle DMA Window").clicked() {
|
if ui.button("Toggle DMA Window").clicked() {
|
||||||
self.state.dma_window_open = !self.state.dma_window_open;
|
self.state.dma_window_open = !self.state.dma_window_open;
|
||||||
}
|
}
|
||||||
|
@ -347,19 +347,25 @@ impl Gui {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
egui::Window::new("DMA").vscroll(true).open(&mut self.state.dma_window_open).show(ctx, |ui| {
|
egui::Window::new("DMA").vscroll(true).open(&mut self.state.dma_window_open).show(
|
||||||
if let Some(bus) = self.dma.in_progress() {
|
ctx,
|
||||||
ui.heading(RichText::new(format!("Active ({:#?} Bus)", bus)).color(Color32::LIGHT_GREEN));
|
|ui| {
|
||||||
} else {
|
if let Some(bus) = self.dma.in_progress() {
|
||||||
ui.heading(RichText::new("Inactive").color(Color32::LIGHT_RED));
|
ui.heading(
|
||||||
}
|
RichText::new(format!("Active ({:#?} Bus)", bus))
|
||||||
|
.color(Color32::LIGHT_GREEN),
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
ui.heading(RichText::new("Inactive").color(Color32::LIGHT_RED));
|
||||||
|
}
|
||||||
|
|
||||||
let offset = (0xA0 - self.dma.remaining_cycles) as u16;
|
let offset = (0xA0 - self.dma.remaining_cycles) as u16;
|
||||||
ui.label(format!("Read Address: {:#04X}", ((self.dma.base as u16) << 8) | offset));
|
ui.label(format!("Read Address: {:#04X}", ((self.dma.base as u16) << 8) | offset));
|
||||||
ui.label(format!("Write Address: {:#04X}", 0xFE00 | offset));
|
ui.label(format!("Write Address: {:#04X}", 0xFE00 | offset));
|
||||||
ui.label(format!("Base: {:#04X}", (self.dma.base as u16) << 8));
|
ui.label(format!("Base: {:#04X}", (self.dma.base as u16) << 8));
|
||||||
ui.label(format!("Remaining Bytes: {:#02X}", self.dma.remaining_cycles));
|
ui.label(format!("Remaining Bytes: {:#02X}", self.dma.remaining_cycles));
|
||||||
});
|
},
|
||||||
|
);
|
||||||
|
|
||||||
egui::Window::new("HRAM").vscroll(true).open(&mut self.state.hram_window_open).show(ctx, |ui| {
|
egui::Window::new("HRAM").vscroll(true).open(&mut self.state.hram_window_open).show(ctx, |ui| {
|
||||||
egui::Grid::new("memory_ov_hram").show(ui, |ui| {
|
egui::Grid::new("memory_ov_hram").show(ui, |ui| {
|
||||||
|
|
550
run-test-roms.sh
550
run-test-roms.sh
|
@ -11,7 +11,7 @@ echo "Running test ROM ./test-roms/blargg/roms/cpu_instrs.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/blargg/roms/cpu_instrs.gb test -m 100000000 -s meowgb-tests/expected_output/cpu_instrs.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/blargg/roms/cpu_instrs.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/cpu_instrs.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -21,7 +21,7 @@ echo "Running test ROM ./test-roms/blargg/roms/instr_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/blargg/roms/instr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/instr_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/blargg/roms/instr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/instr_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -31,7 +31,7 @@ echo "Running test ROM ./test-roms/blargg/roms/mem_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/blargg/roms/mem_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mem_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/blargg/roms/mem_timing.gb test -m 100000000 -s meowgb-tests/expected_output/blargg/mem_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -41,17 +41,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/add_sp_e_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/add_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/add_sp_e_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/add_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/add_sp_e_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/basic.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/basic.gb test -m 100000000 -s meowgb-tests/expected_output/basic.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -61,7 +51,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/boot_hwio-dmgABCmgb.g
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_hwio-dmgABCmgb.gb test -m 100000000 -s meowgb-tests/expected_output/boot_hwio-dmgABCmgb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_hwio-dmgABCmgb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/boot_hwio-dmgABCmgb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -71,7 +61,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/boot_regs-dmgABC.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_regs-dmgABC.gb test -m 100000000 -s meowgb-tests/expected_output/boot_regs-dmgABC.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/boot_regs-dmgABC.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/boot_regs-dmgABC.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -81,7 +71,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/call_cc_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/call_cc_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_cc_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -91,7 +81,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/call_cc_timing2.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/call_cc_timing2.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_cc_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_cc_timing2.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -101,7 +91,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/call_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing.gb test -m 100000000 -s meowgb-tests/expected_output/call_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -111,17 +101,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/call_timing2.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/call_timing2.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/call_timing2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/call_timing2.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/daa.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/daa.gb test -m 100000000 -s meowgb-tests/expected_output/daa.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -131,7 +111,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/di_timing-GS.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/di_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/di_timing-GS.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/di_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/di_timing-GS.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -141,17 +121,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/div_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_timing.gb test -m 100000000 -s meowgb-tests/expected_output/div_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/div_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/div_write.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/div_write.gb test -m 100000000 -s meowgb-tests/expected_output/div_write.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -161,7 +131,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ei_sequence.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_sequence.gb test -m 100000000 -s meowgb-tests/expected_output/ei_sequence.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_sequence.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ei_sequence.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -171,7 +141,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ei_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_timing.gb test -m 100000000 -s meowgb-tests/expected_output/ei_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ei_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ei_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -181,7 +151,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/halt_ime0_ei.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_ei.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime0_ei.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_ei.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime0_ei.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -191,7 +161,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/halt_ime0_nointr_timi
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_nointr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime0_nointr_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime0_nointr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime0_nointr_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -201,7 +171,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/halt_ime1_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime1_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime1_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -211,37 +181,57 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/halt_ime1_timing2-GS.
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing2-GS.gb test -m 100000000 -s meowgb-tests/expected_output/halt_ime1_timing2-GS.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/halt_ime1_timing2-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/halt_ime1_timing2-GS.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/intr_1_2_timing-GS.gb"
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/if_ie_registers.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_1_2_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/intr_1_2_timing-GS.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/if_ie_registers.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/if_ie_registers.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/intr_2_0_timing.gb"
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/intr_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_2_0_timing.gb test -m 100000000 -s meowgb-tests/expected_output/intr_2_0_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/intr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/intr_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/mem_oam.gb"
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/jp_cc_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/mem_oam.gb test -m 100000000 -s meowgb-tests/expected_output/mem_oam.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/jp_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/jp_cc_timing.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/jp_timing.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/jp_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/jp_timing.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ld_hl_sp_e_timing.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ld_hl_sp_e_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ld_hl_sp_e_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -251,7 +241,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/oam_dma_restart.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_restart.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_restart.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_restart.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_restart.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -261,7 +251,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/oam_dma_start.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_start.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_start.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_start.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_start.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -271,7 +261,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/oam_dma_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_timing.gb test -m 100000000 -s meowgb-tests/expected_output/oam_dma_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -281,7 +271,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/pop_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/pop_timing.gb test -m 100000000 -s meowgb-tests/expected_output/pop_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/pop_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/pop_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -291,7 +281,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/push_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/push_timing.gb test -m 100000000 -s meowgb-tests/expected_output/push_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/push_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/push_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -301,37 +291,47 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/rapid_di_ei.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_di_ei.gb test -m 100000000 -s meowgb-tests/expected_output/rapid_di_ei.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_di_ei.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/rapid_di_ei.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/rapid_toggle.gb"
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ret_cc_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rapid_toggle.gb test -m 100000000 -s meowgb-tests/expected_output/rapid_toggle.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ret_cc_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ret_cc_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/reg_f.gb"
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ret_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reg_f.gb test -m 100000000 -s meowgb-tests/expected_output/reg_f.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ret_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ret_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/reg_read.gb"
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/reti_intr_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reg_read.gb test -m 100000000 -s meowgb-tests/expected_output/reg_read.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reti_intr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/reti_intr_timing.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/reti_timing.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/reti_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/reti_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -341,157 +341,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/rst_timing.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rst_timing.gb test -m 100000000 -s meowgb-tests/expected_output/rst_timing.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/rst_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/rst_timing.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/stat_irq_blocking.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/stat_irq_blocking.gb test -m 100000000 -s meowgb-tests/expected_output/stat_irq_blocking.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/stat_lyc_onoff.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/stat_lyc_onoff.gb test -m 100000000 -s meowgb-tests/expected_output/stat_lyc_onoff.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim00.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim00.gb test -m 100000000 -s meowgb-tests/expected_output/tim00.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim00_div_trigger.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim00_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim00_div_trigger.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim01.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim01.gb test -m 100000000 -s meowgb-tests/expected_output/tim01.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim01_div_trigger.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim01_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim01_div_trigger.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim10.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim10.gb test -m 100000000 -s meowgb-tests/expected_output/tim10.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim10_div_trigger.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim10_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim10_div_trigger.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim11.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim11.gb test -m 100000000 -s meowgb-tests/expected_output/tim11.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tim11_div_trigger.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim11_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/tim11_div_trigger.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tima_reload.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tima_reload.gb test -m 100000000 -s meowgb-tests/expected_output/tima_reload.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tima_write_reloading.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tima_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/tima_write_reloading.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/tma_write_reloading.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tma_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/tma_write_reloading.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/unused_hwio-GS.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/unused_hwio-GS.gb test -m 100000000 -s meowgb-tests/expected_output/unused_hwio-GS.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
|
||||||
else
|
|
||||||
echo "Failed: $res"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/vblank_stat_intr-GS.gb"
|
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/vblank_stat_intr-GS.gb test -m 100000000 -s meowgb-tests/expected_output/vblank_stat_intr-GS.bin 2>&1 > /dev/null) ; then
|
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -501,7 +351,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/bits_bank1.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank1.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_bank1.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank1.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_bank1.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -511,7 +361,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/bits_bank2.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank2.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_bank2.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_bank2.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_bank2.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -521,7 +371,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/bits_mode.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_mode.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_mode.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_mode.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_mode.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -531,7 +381,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/bits_ramg.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_ramg.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/bits_ramg.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/bits_ramg.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/bits_ramg.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -541,7 +391,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/multicart_rom_8M
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/multicart_rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/multicart_rom_8Mb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/multicart_rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/multicart_rom_8Mb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -551,7 +401,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/ram_256kb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_256kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/ram_256kb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_256kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/ram_256kb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -561,7 +411,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/ram_64kb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_64kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/ram_64kb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/ram_64kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/ram_64kb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -571,7 +421,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/rom_16Mb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_16Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_16Mb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_16Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_16Mb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -581,7 +431,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/rom_1Mb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_1Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_1Mb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_1Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_1Mb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -591,7 +441,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/rom_2Mb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_2Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_2Mb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_2Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_2Mb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -601,7 +451,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/rom_4Mb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_4Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_4Mb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_4Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_4Mb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -611,7 +461,7 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/rom_512kb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_512kb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_512kb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_512kb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_512kb.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
@ -621,7 +471,247 @@ echo "Running test ROM ./test-roms/mooneye-test-suite/roms/MBC1/rom_8Mb.gb"
|
||||||
|
|
||||||
TEST_TOTAL=$((TEST_TOTAL + 1))
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/MBC1/rom_8Mb.bin 2>&1 > /dev/null) ; then
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/MBC1/rom_8Mb.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/MBC1/rom_8Mb.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/bits/mem_oam.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/mem_oam.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/mem_oam.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/bits/reg_f.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/reg_f.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/reg_f.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/bits/unused_hwio-GS.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/bits/unused_hwio-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/bits/unused_hwio-GS.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/instr/daa.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/instr/daa.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/instr/daa.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/oam_dma/basic.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma/basic.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma/basic.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/oam_dma/reg_read.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/oam_dma/reg_read.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/oam_dma/reg_read.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ppu/intr_1_2_timing-GS.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/intr_1_2_timing-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/intr_1_2_timing-GS.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ppu/intr_2_0_timing.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/intr_2_0_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/intr_2_0_timing.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ppu/stat_irq_blocking.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/stat_irq_blocking.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/stat_irq_blocking.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ppu/stat_lyc_onoff.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/stat_lyc_onoff.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/stat_lyc_onoff.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/ppu/vblank_stat_intr-GS.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/ppu/vblank_stat_intr-GS.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/ppu/vblank_stat_intr-GS.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/div_write.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/div_write.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/div_write.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/rapid_toggle.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/rapid_toggle.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/rapid_toggle.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim00.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim00.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim00.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim00_div_trigger.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim00_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim00_div_trigger.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim01.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim01.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim01.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim01_div_trigger.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim01_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim01_div_trigger.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim10.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim10.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim10.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim10_div_trigger.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim10_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim10_div_trigger.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim11.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim11.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim11.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tim11_div_trigger.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tim11_div_trigger.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tim11_div_trigger.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tima_reload.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tima_reload.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tima_reload.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tima_write_reloading.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tima_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tima_write_reloading.bin 2>&1 > /dev/null) ; then
|
||||||
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
|
else
|
||||||
|
echo "Failed: $res"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running test ROM ./test-roms/mooneye-test-suite/roms/timer/tma_write_reloading.gb"
|
||||||
|
|
||||||
|
TEST_TOTAL=$((TEST_TOTAL + 1))
|
||||||
|
|
||||||
|
if res=$(./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/timer/tma_write_reloading.gb test -m 100000000 -s meowgb-tests/expected_output/mooneye-test-suite/timer/tma_write_reloading.bin 2>&1 > /dev/null) ; then
|
||||||
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
TEST_SUCCESS=$((TEST_SUCCESS + 1))
|
||||||
else
|
else
|
||||||
echo "Failed: $res"
|
echo "Failed: $res"
|
||||||
|
|
BIN
test-roms/mooneye-test-suite/roms/if_ie_registers.gb
Normal file
BIN
test-roms/mooneye-test-suite/roms/if_ie_registers.gb
Normal file
Binary file not shown.
BIN
test-roms/mooneye-test-suite/roms/intr_timing.gb
Normal file
BIN
test-roms/mooneye-test-suite/roms/intr_timing.gb
Normal file
Binary file not shown.
BIN
test-roms/mooneye-test-suite/roms/jp_cc_timing.gb
Normal file
BIN
test-roms/mooneye-test-suite/roms/jp_cc_timing.gb
Normal file
Binary file not shown.
BIN
test-roms/mooneye-test-suite/roms/jp_timing.gb
Normal file
BIN
test-roms/mooneye-test-suite/roms/jp_timing.gb
Normal file
Binary file not shown.
BIN
test-roms/mooneye-test-suite/roms/ld_hl_sp_e_timing.gb
Normal file
BIN
test-roms/mooneye-test-suite/roms/ld_hl_sp_e_timing.gb
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue