MeowGB/.forgejo/workflows/action.yml

268 lines
15 KiB
YAML
Raw Normal View History

2024-01-04 09:08:30 +00:00
on:
- push
jobs:
main_test:
name: Test changes to main
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install toolchain
run: curl https://sh.rustup.rs -sSf | sh -s -- --profile minimal --default-toolchain stable -y && echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Run cargo tests (meowgb-core)
run: cargo test -p meowgb-core
2024-01-05 06:23:58 +00:00
- name: Build release (meowgb-tests)
run: cargo build -p meowgb-tests --release
2024-01-04 09:08:30 +00:00
- name: Run test ROM (blargg cpu_instrs)
if: always()
2024-01-05 06:23:58 +00:00
run: ./target/release/meowgb-tests test-roms/blargg/roms/cpu_instrs.gb test -m 100000000 -s meowgb-tests/expected_output/cpu_instrs.bin
2024-01-04 09:08:30 +00:00
- name: Run test ROM (blargg instr_timing)
if: always()
2024-01-05 06:23:58 +00:00
run: ./target/release/meowgb-tests test-roms/blargg/roms/instr_timing.gb test -m 100000000 -s meowgb-tests/expected_output/instr_timing.bin
2024-01-04 09:08:30 +00:00
- name: Run test ROM (blargg mem_timing)
if: always()
2024-01-05 06:23:58 +00:00
run: ./target/release/meowgb-tests test-roms/blargg/roms/mem_timing.gb test -m 100000000 -s meowgb-tests/expected_output/mem_timing.bin
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite add_sp_e_timing)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite basic)
if: always()
2024-01-05 06:23:58 +00:00
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/basic.gb test -m 100000000 -s meowgb-tests/expected_output/basic.bin
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite boot_hwio-dmgABCmgb)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite boot_regs-dmgABC)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite call_cc_timing)
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
- name: Run test ROM (mooneye-test-suite call_cc_timing2)
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
- name: Run test ROM (mooneye-test-suite call_timing)
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
- name: Run test ROM (mooneye-test-suite call_timing2)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite daa)
if: always()
2024-01-05 06:23:58 +00:00
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/daa.gb test -m 100000000 -s meowgb-tests/expected_output/daa.bin
2024-01-12 19:19:45 +00:00
- name: Run test ROM (mooneye-test-suite di_timing-GS)
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
2024-01-05 06:23:58 +00:00
- name: Run test ROM (mooneye-test-suite div_timing)
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
- 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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite ei_sequence)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite ei_timing)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite halt_ime0_ei)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
2024-01-12 19:19:45 +00:00
- name: Run test ROM (mooneye-test-suite halt_ime0_nointr_timing)
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
- name: Run test ROM (mooneye-test-suite halt_ime1_timing)
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
- name: Run test ROM (mooneye-test-suite halt_ime1_timing2-GS)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite intr_1_2_timing-GS)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite intr_2_0_timing)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite mem_oam)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite oam_dma_restart)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite oam_dma_start)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite oam_dma_timing)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
2024-01-12 19:19:45 +00:00
- name: Run test ROM (mooneye-test-suite pop_timing)
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
- name: Run test ROM (mooneye-test-suite push_timing)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite rapid_di_ei)
if: always()
2024-01-05 06:23:58 +00:00
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
- name: Run test ROM (mooneye-test-suite rapid_toggle)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite reg_f)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite reg_read)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
2024-01-12 19:19:45 +00:00
- name: Run test ROM (mooneye-test-suite rst_timing)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite stat_irq_blocking)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite stat_lyc_onoff)
if: always()
2024-01-05 06:23:58 +00:00
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
- name: Run test ROM (mooneye-test-suite tim00)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite tim00_div_trigger)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite tim01)
if: always()
2024-01-05 06:23:58 +00:00
run: ./target/release/meowgb-tests test-roms/mooneye-test-suite/roms/tim01.gb test -m 100000000 -s meowgb-tests/expected_output/tim01.bin
- name: Run test ROM (mooneye-test-suite tim01_div_trigger)
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
- name: Run test ROM (mooneye-test-suite tim10)
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
- name: Run test ROM (mooneye-test-suite tim10_div_trigger)
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
- name: Run test ROM (mooneye-test-suite tim11)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite tim11_div_trigger)
if: always()
2024-01-05 06:23:58 +00:00
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
- name: Run test ROM (mooneye-test-suite tima_reload)
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
- name: Run test ROM (mooneye-test-suite tima_write_reloading)
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
- name: Run test ROM (mooneye-test-suite tma_write_reloading)
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
2024-01-04 09:08:30 +00:00
- name: Run test ROM (mooneye-test-suite unused_hwio-GS)
if: always()
2024-01-05 06:23:58 +00:00
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
2024-01-07 00:24:29 +00:00
- name: Run test ROM (mooneye-test-suite vblank_stat_intr-GS)
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
- name: Run test ROM (mooneye-test-suite bits_bank1)
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
- name: Run test ROM (mooneye-test-suite bits_bank2)
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
- name: Run test ROM (mooneye-test-suite bits_mode)
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
- name: Run test ROM (mooneye-test-suite bits_ramg)
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
- name: Run test ROM (mooneye-test-suite multicart_rom_8Mb)
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
- name: Run test ROM (mooneye-test-suite ram_256kb)
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
- name: Run test ROM (mooneye-test-suite ram_64kb)
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
- name: Run test ROM (mooneye-test-suite rom_16Mb)
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
- name: Run test ROM (mooneye-test-suite rom_1Mb)
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
- name: Run test ROM (mooneye-test-suite rom_2Mb)
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
- name: Run test ROM (mooneye-test-suite rom_4Mb)
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
- name: Run test ROM (mooneye-test-suite rom_512kb)
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
- name: Run test ROM (mooneye-test-suite rom_8Mb)
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