I haven't (or am able to) test every case of this, but most notably, in Normal mode, bit 2 of SIOCNT is supposed to show the state of the SO signal of the opposing GBA. It's a pull-up, meaning when no GBA is connected, that bit should be 1.
A lot (if not all) serial code is meant to pull SO low to signal readiness. However, in mGBA, when no multiplayer window is open, that bit always returns 0, causing a client to be falsely detected.
I haven't (or am able to) test every case of this, but most notably, in Normal mode, bit 2 of SIOCNT is supposed to show the state of the SO signal of the opposing GBA. It's a pull-up, meaning when no GBA is connected, that bit should be 1.
A lot (if not all) serial code is meant to pull SO low to signal readiness. However, in mGBA, when no multiplayer window is open, that bit always returns 0, causing a client to be falsely detected.