Hi. First of all, thanks for this emulator and your test suite. I am writing an emulator on my own and this is really helping me out.
I am trying to pass the ppu/intr_2_mode0_timing. However, my emulator changes mode too fast and the B register misses an increment.
When studying mooneye-gb, I was surprised by this line:
const ACCESS_OAM_CYCLES: isize = 21;
Pandocs and Sameboy say 80 dots. Maybe the LCD Status register is not perfectly synchronised with the actual mode? I'll try to study SameBoy code to know what's happening.