Retroarch: Same game on multiple systems overwriting save files

Created on 11 Apr 2020  路  7Comments  路  Source: libretro/RetroArch

First and foremost consider this:

  • Only RetroArch bugs should be filed here. Not core bugs or game bugs
  • This is not a forum or a help section, this is strictly developer oriented

Description

I have two ROMs: Dynamite Headdy for the Mega Drive, and Dynamite Headdy for the Game Gear. I use the Genesis Plus GX core for both of these systems. Both these games save as .srm. Each time one game writes the file, the save from the other platform is lost.

Expected behavior

Solution: allow option to organise saves by platform.

Actual behavior

Saves are being overwritten across multiple platforms.

Steps to reproduce the bug

  1. Play Game Gear Dynamite Headdy (Game Gear .srm file saved).
  2. Play Mega Drive Dynamite Headdy (Mega Drive .srm overwrites Game Gear .srm file)

Version/Commit

You can find this information under Information/System Information

  • RetroArch: 1.8.4

Environment information

  • OS: Windows 10

Most helpful comment

Closest workaround would be to use RetroArch content directory overrides to specify a different save directory, but that's assuming you have split beforehand all your content in directories with different dirnames.

All 7 comments

Didn't think of this but theorized that the same situation can happen with the manual scanner without specifying the system.

Solution: allow option to organise saves by platform.

It shouldn't be a option but there is a nit here. Some cores are multiplatform so there might be a way in the libretro API to tell which kind of emulation is currently running- i didn't read the api though so it might exist already.

Some playlists already have the associated core, but that is not enough, and anyway, you can load roms from outside playlists.

There is an option for this: settings > saving > sort saves in folders. It's an advanced option, so you need to go to settings > user interface > show advanced settings ON first.

There is an option for this: settings > saving > sort saves in folders. It's an advanced option, so you need to go to settings > user interface > show advanced settings ON first.

That option puts saves into folders per core, not per platform, so is not a solution to this problem.

I also assume RA doesn't particularly want to divide multiple emulator cores into cores for each supported machine to avoid that...

Correct, RetroArch has no concept of individual systems, only cores.

I suppose you could simply incorporate the extension of the rom as part of the srm filename. I guess... having the same extension for multiple systems on a single core is unusual (if not impossible, for instance a multiemu with iso for multiple systems - i suspect higan or MAME might end like this)...

But something reliable needs to query 'what system is this for anyway' to resolve filename clashes. It's the ROM unique id problem all over again.

Closest workaround would be to use RetroArch content directory overrides to specify a different save directory, but that's assuming you have split beforehand all your content in directories with different dirnames.

Was this page helpful?
0 / 5 - 0 ratings