all repos — mgba @ e7d6cba3616f00d6b633eecdfad5b89b5a15846c

mGBA Game Boy Advance Emulator

DS Slot-1: Add PW flash command
Vicki Pfau vi@endrift.com
Mon, 27 Feb 2017 01:43:13 -0800
commit

e7d6cba3616f00d6b633eecdfad5b89b5a15846c

parent

1d89cb9ba000f4eafc0b39a70d4ad72f9f283951

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

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

@@ -264,13 +264,21 @@ return 0xFF;

} } + uint8_t oldValue; switch (dscore->p->memory.slot1.spiCommand) { case 0x03: // RD - return dscore->p->memory.slot1.spiData[dscore->p->memory.slot1.spiAddress++]; - case 0x02: // WR + oldValue = dscore->p->memory.slot1.spiData[dscore->p->memory.slot1.spiAddress]; + ++dscore->p->memory.slot1.spiAddress; + return oldValue; + case 0x02: // PP dscore->p->memory.slot1.spiData[dscore->p->memory.slot1.spiAddress] = datum; ++dscore->p->memory.slot1.spiAddress; break; + case 0x0A: // PW + oldValue = dscore->p->memory.slot1.spiData[dscore->p->memory.slot1.spiAddress]; + dscore->p->memory.slot1.spiData[dscore->p->memory.slot1.spiAddress] = datum; + ++dscore->p->memory.slot1.spiAddress; + return oldValue; default: mLOG(DS_SLOT1, STUB, "Unimplemented SPI Flash write: %04X:%02X:%02X", control, dscore->p->memory.slot1.spiCommand, datum); break;