DS Memory: Add loading from DS9 BIOS
Jeffrey Pfau jeffrey@endrift.com
Wed, 04 Jan 2017 12:48:19 -0800
1 files changed,
15 insertions(+),
0 deletions(-)
jump to
M
src/ds/memory.c
→
src/ds/memory.c
@@ -675,6 +675,11 @@ break;
case DS_REGION_IO: value = DS9IORead(ds, address & 0x00FFFFFC) | (DS9IORead(ds, (address & 0x00FFFFFC) | 2) << 16); break; + case DS9_REGION_BIOS: + // TODO: Fix undersized BIOS + // TODO: Fix masking + LOAD_32(value, address & (DS9_SIZE_BIOS - 1), memory->bios9); + break; default: mLOG(DS_MEM, STUB, "Unimplemented DS9 Load32: %08X", address); break;@@ -709,6 +714,11 @@ mLOG(DS_MEM, STUB, "Unimplemented DS9 Load16: %08X", address);
case DS_REGION_IO: value = DS9IORead(ds, address & 0x00FFFFFF); break; + case DS9_REGION_BIOS: + // TODO: Fix undersized BIOS + // TODO: Fix masking + LOAD_16(value, address & (DS9_SIZE_BIOS - 1), memory->bios9); + break; default: mLOG(DS_MEM, STUB, "Unimplemented DS9 Load16: %08X", address); break;@@ -740,6 +750,11 @@ value = ((uint8_t*) memory->ram)[address & (DS_SIZE_RAM - 1)];
break; } mLOG(DS_MEM, STUB, "Unimplemented DS9 Load8: %08X", address); + case DS9_REGION_BIOS: + // TODO: Fix undersized BIOS + // TODO: Fix masking + value = ((uint8_t*) memory->bios9)[address & (DS9_SIZE_BIOS - 1)]; + break; default: mLOG(DS_MEM, STUB, "Unimplemented DS9 Load8: %08X", address); break;