GBA BIOS: Implement RegisterRamReset for SIO registers
Jeffrey Pfau jeffrey@endrift.com
Wed, 16 Sep 2015 20:25:39 -0700
2 files changed,
7 insertions(+),
1 deletions(-)
M
CHANGES
→
CHANGES
@@ -28,6 +28,7 @@ - Qt: Add 'Apply' button to settings window
- 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:
M
src/gba/bios.c
→
src/gba/bios.c
@@ -63,7 +63,12 @@ if (registers & 0x10) {
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");