DS Memory: Add WRAM to DS7Load8
Jeffrey Pfau jeffrey@endrift.com
Wed, 04 Jan 2017 00:46:29 -0800
1 files changed,
7 insertions(+),
0 deletions(-)
jump to
M
src/ds/memory.c
→
src/ds/memory.c
@@ -300,6 +300,13 @@ uint32_t value = 0;
int wait = ds->ds7.memory.waitstatesNonseq16[address >> DS_BASE_OFFSET]; switch (address >> DS_BASE_OFFSET) { + case DS_REGION_WORKING_RAM: + if (address >= DS7_BASE_WORKING_RAM || !ds->memory.wramSize7) { + value = ((uint8_t*) memory->wram7)[address & (DS7_SIZE_WORKING_RAM - 1)]; + } else { + value = ((uint8_t*) memory->wram)[address & (ds->memory.wramSize7 - 1)]; + } + break; case DS_REGION_RAM: if ((address & (DS_SIZE_RAM - 1)) < DS_SIZE_RAM) { value = ((uint8_t*) memory->ram)[address & (DS_SIZE_RAM - 1)];