Post subject: SRAM not saving data made in .dsm.
Active player (462)
Joined: 12/24/2010
Posts: 297
Location: CT, USA
I'm using 0.9.8 (without the lag frame fix). So I can't seem to get a usable SRAM after playing back a verification .dsm I made. I've made sure there has been no SRAM there when booting up the ROM or letting one be created before loading the .dsm. No matter what methods I use (loading/not loading savestates from various points) the SRAM created during the start of the .dsm is always "blank" as if the game was never played. I've tried loading a multiple savestates that were created during different parts of the .dsm (even though that SRAM technically wouldn't be acceptable) while having no movie playback and none of them will save to the SRAM either (even when doing something that should clearly write to it). I can get the SRAM to save progress/be written to so long as there is never a .dsm loaded. If one does get loaded, SRAM stops being written to until there is a hard reset of the ROM. Does someone have an idea as to what my issue here is? I'm guessing it's some kind of setting that I'm overlooking. Edit I also can't use the Import/Export Backup Memory feature as a workaround. Whenever it is exported from some point during the .dsm, it is corrupted upon importing it back.
Joined: 12/31/2009
Posts: 174
I tried it myself and it works fine for me.
  1. Playback movie to the frame you want to extract the SRAM from. Try picking a frame that is a few seconds or a screen after the saving takes place to make sure you don't extract SRAM while the game is still saving.
  2. Use the Export Backup Memory and save it as raw SRAM.
  3. Close Desmume and open it again to make sure flags from the movie are gone.
  4. Open the ROM and wait until it is fully loaded.
  5. Go to Import Backup Memory.
  6. Select the sav file from step 2.
  7. Verify the information on the right panel (optional).
  8. Select "AUTO (from imported save data size)".
  9. Press OK.
  10. Reset the emulation state.
  11. Verify the SRAM was successfully imported.
When playing around with it, I found that using the first auto import (based on current save size) with no existing SRAM will cause Desmume to import nothing (blank SRAM). I'm not sure what else could be the problem but have you also tried a soft-reset or something else to see if the SRAM isn't corrupted during the movie?
Active player (462)
Joined: 12/24/2010
Posts: 297
Location: CT, USA
I must've been unlucky enough to extract while it was saving, which lead to the corrupt import or was just really tired and doing something wrong when I posted this morning. I tried it again today following your foolproof steps and it worked hahaha. Thanks Zanoab. EDIT I figured out the reason the imported sram would become corrupted. If I manually set the size of the memory to 64k, the import works perfectly fine. Leaving the size as automatic results in corrupted sram.