It seems SRAM read/write to RetroArch for LoROM doesn't work as expected.
My app code works writing directly to the SD2SNES and also to the SD2SNES via qusb2snes, but fails for RetroArch (1.9.0).
I'm attempting to read/write bank $71 but it doesn't have the intended effect and silently fails.
Granted, most people wouldn't run into this because their SRAMs are reasonably sized (according to the $FFC0 header). ALTTP defaults to 03 header value for the bank size. For my case, I doubled it to 06 so I could get into the $71 bank and avoid overwriting any game save data.
I'm able to work around the issue by sticking to bank $70 and offsets between $0000-7FFF.
That romType == LoROM calculation doesn't look right. LoROM SRAM banks use the lower half of the banks $70-$7D with offsets $0000-7FFFF (and $F0-$FF banks). The upper half of those banks $8000-FFFF is ROM access.
It seems SRAM read/write to RetroArch for LoROM doesn't work as expected.
My app code works writing directly to the SD2SNES and also to the SD2SNES via qusb2snes, but fails for RetroArch (1.9.0).
I'm attempting to read/write bank
$71
but it doesn't have the intended effect and silently fails.Granted, most people wouldn't run into this because their SRAMs are reasonably sized (according to the
$FFC0
header). ALTTP defaults to03
header value for the bank size. For my case, I doubled it to06
so I could get into the$71
bank and avoid overwriting any game save data.I'm able to work around the issue by sticking to bank
$70
and offsets between$0000-7FFF
.That
romType == LoROM
calculation doesn't look right. LoROM SRAM banks use the lower half of the banks$70-$7D
with offsets$0000-7FFFF
(and$F0-$FF
banks). The upper half of those banks$8000-FFFF
is ROM access.