all repos — mgba @ f420bbe90b4b32db0bbb5903666a799e7774a3b3

mGBA Game Boy Advance Emulator

DS Memory: Implement LDM on ITCM
Vicki Pfau vi@endrift.com
Fri, 17 Feb 2017 16:58:59 -0800
commit

f420bbe90b4b32db0bbb5903666a799e7774a3b3

parent

46540f1321a6d69be9cba6c30bf285c4fbe08448

1 files changed, 8 insertions(+), 0 deletions(-)

jump to
M src/ds/memory.csrc/ds/memory.c

@@ -1030,6 +1030,14 @@ uint32_t addressMisalign = address & 0x3;

address &= 0xFFFFFFFC; switch (address >> DS_BASE_OFFSET) { + case DS9_REGION_ITCM: + case DS9_REGION_ITCM_MIRROR: + LDM_LOOP(if (address < memory->itcmSize) { + LOAD_32(value, address & (DS9_SIZE_ITCM - 1), memory->itcm); + } else { + mLOG(DS_MEM, STUB, "Bad DS9 LDM: %08X:%08X", address, value); + }); + break; case DS_REGION_RAM: LDM_LOOP(if ((address & ~(DS9_SIZE_DTCM - 1)) == memory->dtcmBase) { LOAD_32(value, address & (DS9_SIZE_DTCM - 1), memory->dtcm);