GBA SIO: Add missing NORMAL8 implementation bits (fixes #2172)

This commit is contained in:
Vicki Pfau 2021-05-14 22:59:18 -07:00
parent 96988133b2
commit 0865b8911e
2 changed files with 4 additions and 0 deletions

View File

@ -7,6 +7,7 @@ Features:
- Support for combo "Super Game Boy Color" SGB + GBC ROM hacks - Support for combo "Super Game Boy Color" SGB + GBC ROM hacks
Emulation fixes: Emulation fixes:
- GB Video: Clear VRAM on reset (fixes mgba.io/i/2152) - GB Video: Clear VRAM on reset (fixes mgba.io/i/2152)
- GBA SIO: Add missing NORMAL8 implementation bits (fixes mgba.io/i/2172)
- GBA Video: Revert scanline latching changes (fixes mgba.io/i/2153, mgba.io/i/2149) - GBA Video: Revert scanline latching changes (fixes mgba.io/i/2153, mgba.io/i/2149)
Other fixes: Other fixes:
- Core: Fix memory leak in opening games from the library - Core: Fix memory leak in opening games from the library

View File

@ -113,6 +113,7 @@ bool GBASIOLockstepNodeLoad(struct GBASIODriver* driver) {
node->d.p->siocnt = GBASIOMultiplayerFillSlave(node->d.p->siocnt); node->d.p->siocnt = GBASIOMultiplayerFillSlave(node->d.p->siocnt);
} }
break; break;
case SIO_NORMAL_8:
case SIO_NORMAL_32: case SIO_NORMAL_32:
ATOMIC_ADD(node->p->attachedNormal, 1); ATOMIC_ADD(node->p->attachedNormal, 1);
node->d.writeRegister = GBASIOLockstepNodeNormalWriteRegister; node->d.writeRegister = GBASIOLockstepNodeNormalWriteRegister;
@ -519,6 +520,8 @@ static uint16_t GBASIOLockstepNodeNormalWriteRegister(struct GBASIODriver* drive
mLOG(GBA_SIO, DEBUG, "Lockstep %i: SIODATA32_LO <- %04X", node->id, value); mLOG(GBA_SIO, DEBUG, "Lockstep %i: SIODATA32_LO <- %04X", node->id, value);
} else if (address == REG_SIODATA32_HI) { } else if (address == REG_SIODATA32_HI) {
mLOG(GBA_SIO, DEBUG, "Lockstep %i: SIODATA32_HI <- %04X", node->id, value); mLOG(GBA_SIO, DEBUG, "Lockstep %i: SIODATA32_HI <- %04X", node->id, value);
} else if (address == REG_SIODATA8) {
mLOG(GBA_SIO, DEBUG, "Lockstep %i: SIODATA8 <- %02X", node->id, value);
} }
mLockstepUnlock(&node->p->d); mLockstepUnlock(&node->p->d);