christianhaitian / arkos

Another rockchip Operating System
MIT License
1.59k stars 87 forks source link

PSX Multi-disc game saving bug #1024

Closed hiruko-san closed 7 months ago

hiruko-san commented 8 months ago

Before submitting your issue or feature request. DO NOT REQUEST ASSISTANce FOR PRELOADED IMAGES. I do not support or condone the use of preloaded ArkOS images. Preloaded meaning images that come with copyrighted roms preincluded. Look for support from the creator or supplier of those preloaded images, not from here! If a ticket is submitted for assistance for such images or if there's an indiciation that a preloaded image is what the support request is for, the issue ticket will be closed with no further response.

  1. This is not the Stock OS that comes with your device, AmberElec, JelOS, or UnOfficialOS. ArkOS is a different distribution from those systems and will have differing features. The only somewhat similarity is that they both use EmulationStation as a frontend. Even with that, the versions of EmulationStation that's used in between ArkOS and these other distributions is different with different capabilities. If there are features you prefer with the other available distributions, just use those distributions instead. The choice is yours.

  2. Have you reviewed the Frequently Asked Questions section available for your supported device in the wiki? yes

  3. If your issue is related to being able to run certain emulators or ports, have you reviewed the Emulators and Ports section available at https://github.com/christianhaitian/arkos/wiki/ArkOS-Emulators-and-Ports-information for needed bios files and supported rom extensions? reviewed

  4. Have you reviewed the known issues section available at https://github.com/christianhaitian/arkos/wiki/Known-issues ? yes

Describe the Issue (If applicable)

A clear and concise description of what the bug is. Save file bug for multi-disk PSX game

How can the issue be reproduced? (If applicable)

Encountered while playing Parasite Eve for PSX.

I have a m3u file pointing to a sub-folder containing Parasite Eve (USA) (Disc 1).chd & Parasite Eve (USA) (Disc 2).chd

At first the save file is named Parasite Eve (USA).srm (same as the m3u file), but it seems like after switching discs, separate save files were created for each disc (e.g. Parasite Eve (USA) (Disc 1).srm & Parasite Eve (USA) (Disc 2).srm)

After I finish the game and tried to switch back to disc 1 to continue the Ex game, it seems like the save file is not updated with the game clear data. If I save the game, reset to disc 1, and try to load the game, the save is not there. Save states also don't work if I switch from disc 2 to disc 1 and start the Ex Game.

This seems like something to do with Retroarch but I can't figure out how to configure it to work.

What device are you using? (Only the Gameforce Chi, RK2020, OGA 1.0, OGA 1.1, RG351MP, RG351V, RGB10, R35s, RG353V/VS, RG353M, RG503, RGB30, and RK2023 units are officially supported)

RGB30

What version of ArkOS are you on?

Anything else you'd like to include that may help to review this issue or feature request?

I've also tried using other cores like duckstation (core), swanstation (core), standalone duckstation, but all have failed to load the game. Only pcsx rearmed can load.

another symptom of this is that the .ldci file doesn't remember the last loaded disc and would always load disc 1, not sure if it helps.

I've found that by manually renaming the most up-to-date .srm file (from Parasite Eve (USA) (Disc 2).srm to Parasite Eve (USA).srm) and then start the game manually, the Ex game save file finally carried over. so this is the workaround I found at the moment that worked for me.

christianhaitian commented 7 months ago

Sounds like an issue with retroarch or the pcsx-rearmed core. Try reporting it to them and see if they have a recommendation for addressing this.

hiruko-san commented 7 months ago

for future reference, the right way to changing discs in Retroarch for multi-disc games is Quick menu> Disc Control> Eject Disc> change to desired Current Disc Index> Insert Disc this ensures the states & saves continue to work.