RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Help with .srm vs .state files

    Scheduled Pinned Locked Moved Help and Support
    snes
    6 Posts 4 Posters 18.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      mccu7pj2
      last edited by mccu7pj2

      Hope someone can help me here, please.

      I'd like to copy a Zelda III save to another computer. I can see the following files in /home/pi/RetroPie/roms/snes:

      -rw------- 1 pi pi 1049088 Dec 30 2015 ZELDA3.SFC
      -rw-r--r-- 1 pi pi 431438 Nov 5 15:17 ZELDA3.state
      -rw------- 1 pi pi 8192 Nov 5 15:25 ZELDA3.srm

      That .srm file looks awfully small; whilst the .state file looks to me like it might contain the data I need.

      When I copy the files back to my Mac, I get a default Zelda III state (three empty save slots), which makes me think that the .state file is being ignored (by SNES9x) and that the .srm file is just an empty shell.

      How can I ask RetroPie to write data to the .srm? Config that might be relevant is:

      config_save_on_exit = false
      input_exit_emulator = f1
      input_save_state = f2
      input_load_state = f4
      input_state_slot_increase = right
      input_state_slot_decrease = left

      I've tried exiting by pressing F1+F2 and also pressing Esc (which seems to do nothing).

      What am I doing wrong? How can I create a "portable" SRM save state for use elsewhere?

      Thanks in advance

      1 Reply Last reply Reply Quote 0
      • lostlessL
        lostless
        last edited by lostless

        The srm file is the one you want. It's the snes games saved data that should work on any emulator. The .state is a save state that you made, that may not transfer to other emulators.
        To transfer, the default location for srm files for snes9x on a mac is ~/library/application support/snes9x/SRAMs
        Move the srm file there and the mac should recognize it there.

        1 Reply Last reply Reply Quote 0
        • M
          mccu7pj2
          last edited by

          Thanks for the reply.

          Copying ZELDA3.srm from the Pi to $HOME/Application Support/Snes9x/SRAMs works in that the game loads and I see some save states (thanks for that info, I'd not realised the SRAMs should live in there), but unfortunately it also kinds of confirms my suspicions.

          What I see is the saved states from before I copied these files to the Pi in the first place. I don't have the most recent data generated ON the Pi (actually a third saved game).

          Perhaps somehow EmulationStation/RetroPie have only been writing to the .state file?

          meleuM 1 Reply Last reply Reply Quote 0
          • meleuM
            meleu @mccu7pj2
            last edited by meleu

            @mccu7pj2 said in Help with .srm vs .state files:

            Perhaps somehow EmulationStation/RetroPie have only been writing to the .state file?

            You mean RetroArch. It is the one which manage .state files.

            The .state files are those created by emulators only. RetroArch creates/updates it when you press select+R (with default config). These save states doesn't exist on the original SNES.

            The .srm files are for emulate the saves you can do as in the original cartridges. Like those in Super Mario World. These saves act like on the original console.

            • Useful topics
            • joystick-selection tool
            • rpie-art tool
            • achievements I made
            1 Reply Last reply Reply Quote 0
            • M
              mccu7pj2
              last edited by

              Great :) So how can I create a .srm file?

              1 Reply Last reply Reply Quote 0
              • simonsterS
                simonster
                last edited by

                @mccu7pj2

                You don't really create an .srm file. The .srm files are created automatically when you save in game, using the original save method intended on the console (such as selecting Save after a castle in Super Mario World). These are created by the emulators to emulate this function of the original cartridge. Save states are different and are specific to emulation, the emulator dumps a copy of the memory to a file to reload, these are what you get when you press HOTKEY + R to save and these are .state files.

                If you are playing a game that saves your progress automatically as you go along (Zelda, Super Mario World, Super Mario All Stars, Uniracers, etc.) it will create an srm file for you at the appropriate point when the game would save on a physical console.

                Si

                1 Reply Last reply Reply Quote 1
                • First post
                  Last post

                Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.