all repos — mgba @ b5a34c9fe772ad08dfb04dc0eac7e1b3ef3dc6d8

mGBA Game Boy Advance Emulator

GBA BIOS: Implement RegisterRamReset for SIO registers
Jeffrey Pfau jeffrey@endrift.com
Wed, 16 Sep 2015 20:25:39 -0700
commit

b5a34c9fe772ad08dfb04dc0eac7e1b3ef3dc6d8

parent

1ef3c9e5b086fe62addf5657314becc0fdd92295

2 files changed, 7 insertions(+), 1 deletions(-)

jump to
M CHANGESCHANGES

@@ -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.csrc/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");