DS Memory: Add WRAM to DS7Store8
Vicki Pfau vi@endrift.com
Mon, 30 Jan 2017 16:17:13 -0800
1 files changed,
7 insertions(+),
0 deletions(-)
jump to
M
src/ds/memory.c
→
src/ds/memory.c
@@ -399,6 +399,13 @@ struct DSMemory* memory = &ds->memory;
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) { + ((uint8_t*) memory->wram7)[address & (DS7_SIZE_WORKING_RAM - 1)] = value; + } else { + ((uint8_t*) memory->wram)[address & (ds->memory.wramSize7 - 1)] = value; + } + break; case DS_REGION_RAM: if ((address & (DS_SIZE_RAM - 1)) < DS_SIZE_RAM) { ((uint8_t*) memory->ram)[address & (DS_SIZE_RAM - 1)] = value;