GBA BIOS: Implement RegisterRamReset for SIO registers

This commit is contained in:
Jeffrey Pfau 2015-09-16 20:25:39 -07:00
parent ad1313fd43
commit 16e4b0ed4b
2 changed files with 7 additions and 1 deletions

View File

@ -20,6 +20,7 @@ Misc:
- Qt: Prevent savestate window from opening while in multiplayer
- Qt: Disable menu items in multiplayer that don't make sense to have enabled
- Qt: Dropping multiplayer windows works more cleanly now
- GBA BIOS: Implement RegisterRamReset for SIO registers
0.3.0: (2015-08-16)
Features:

View File

@ -63,7 +63,12 @@ static void _RegisterRamReset(struct GBA* gba) {
memset(gba->video.oam.raw, 0, SIZE_OAM);
}
if (registers & 0x20) {
GBALog(gba, GBA_LOG_STUB, "RegisterRamReset on SIO unimplemented");
cpu->memory.store16(cpu, BASE_IO | REG_SIOCNT, 0x0000, 0);
cpu->memory.store16(cpu, BASE_IO | REG_RCNT, RCNT_INITIAL, 0);
cpu->memory.store16(cpu, BASE_IO | REG_SIOMLT_SEND, 0, 0);
cpu->memory.store16(cpu, BASE_IO | REG_JOYCNT, 0, 0);
cpu->memory.store32(cpu, BASE_IO | REG_JOY_RECV, 0, 0);
cpu->memory.store32(cpu, BASE_IO | REG_JOY_TRANS, 0, 0);
}
if (registers & 0x40) {
GBALog(gba, GBA_LOG_STUB, "RegisterRamReset on Audio unimplemented");