When I was writing a demo for a small library I wrote (gba_env) I was trying to figure out why it wasn't running in NanoBoyAdvance 1.8.1, with Bios loaded, but skipped (Config -> System -> Skin BIOS), it wasn't working as intended.
It just shows the background-color and seems to be stuck.
Now I've figured out that it's not only my demo, but also the examples included here in the repo.
It looks like even no_game() seems to do be missing something that usually is initialized in the BIOS, because if the BIOS isn't skipped, it works as intended.
In discord someone suggested to wait for the vblank interrupt as the first step in the main
while (REG_VCOUNT != 160); while (REG_VCOUNT != 161);
which I tried to do the following way but it seems like this won't fix the issue just yet.
let vblank = agb::interrupt::VBlank::get();
agb::interrupt::VBlank::wait_for_vblank(&vblank);
When I was writing a demo for a small library I wrote (gba_env) I was trying to figure out why it wasn't running in NanoBoyAdvance 1.8.1, with Bios loaded, but skipped (
Config
->System
->Skin BIOS
), it wasn't working as intended. It just shows the background-color and seems to be stuck.Now I've figured out that it's not only my demo, but also the examples included here in the repo.
It looks like even
no_game()
seems to do be missing something that usually is initialized in the BIOS, because if the BIOS isn't skipped, it works as intended.In discord someone suggested to wait for the vblank interrupt as the first step in the main
which I tried to do the following way but it seems like this won't fix the issue just yet.
Is there a known solution?