libretro / libretro-uae

PUAE libretro
GNU General Public License v2.0
111 stars 60 forks source link

best way to handle non-WHD game saves? #543

Closed vagrant-17 closed 2 years ago

vagrant-17 commented 2 years ago

For example I have some games in .zip form that I launch with a custom 'load' file, but of course any saves that are created are lost on exit. What's the best way to handle such cases?

sonninnos commented 2 years ago

If the game wants to only save to the main disks, the only option is to launch unzipped, as in create the M3U manually. If the game can use a separate save disk, simply use the save disk creation/switcher function in the core (via hotkey or VKBD).

What is that custom "load" file and why is it necessary when the core can launch everything directly?

vagrant-17 commented 2 years ago

The 'load' file was just a txt file within the .zip that points to the game exe

I tried another approach using a Workbench installed HDF as DH0, and the game adf in DF0. I created an m3u with the HDF and ADF.. workbench loads fine from the HDF but the m3u seems to be ignoring the ADF, nothing is in DF0.. It's only parsing the first item. I guess the m3u doesn't like multiple filetypes, how can I get a floppy inserted when running from a HDF?

sonninnos commented 2 years ago

Launch the HDF and use Disc Control to insert floppies. Or boot from floppies and use the "Global Boot HD" option.

I see no reason having the ability to have different filetypes in the same M3U. It would make everything unnecessary complicated.

What games even allow booting from floppies AND saving to hard drive, or vice versa..?

vagrant-17 commented 2 years ago

I'm referring to older A1000 era games that are non-bootable and expect to be run from workbench. Thanks for your help btw :) The Global Boot HDF option seems the best, but I think it's limited to only one volume? (ie. not possible to choose between 1.3,2.0,3.1 HDF's) Also, is there any way I can boot my hdf with a floppy inserted via .uae config?

sonninnos commented 2 years ago

Yep, only one global HD.. Only thing you can do is rename and replace the file manually when needed.

And sure that is possible with .uae confs. Just include floppyX= and hardfile2= or filesystem2= rows. X being the floppy unit from 0 to 3, and I have no idea why those hard drive rows have 2 in them, but it is what it is.. And floppies above 0 need to be also enabled with floppyXtype=0 (0 being 3.5" DD). But since the floppy isn't bootable anyway, it can be in DF0: and not prevent HD booting.

Floppy row values are path only, but hard drives are a wee bit more complicated. Examples for them can be found by enabling debug level logging, which will print the generated startup config, or looking at standalone confs.

vagrant-17 commented 2 years ago

Ok firstly thanks so much, this would be the perfect solution :) There is a problem though, I think it may be some sort of bug. Let me explain..

The HDF is Workbench 1.3 so I need to use OCS/KS1.3. If I load the .hdf directly then everything is fine. When I load the .uae file, for some reason it will not boot into any kickstart other than AROS.. it ignores the request for KS1.3. Core options are identical in both cases, only difference is launching .hdf vs launching .uae If you compare logs you will see the line kickstart_rom_file=D:\Emulation\RetroArch\system\kick34005.A500 is missing when I launch the .uae. I tried to append this line to the uae file but it gets ignored, I'll attach logs and the uae file Capture load.hdf.log load.uae.log uae_file.zip

sonninnos commented 2 years ago

Hmm, looks like you are only missing a newline in the end of that .uae, since the kickstart row gets appended to the same row with the last row.

And 1.3 can't even boot from HD, so not sure if worth the trouble..

vagrant-17 commented 2 years ago

No idea how I didn't notice the kickstart line on the end of that row lol... but yes that was indeed the problem xD Working great now! You need a HD controller like the A590 to boot from 1.3.. but no need for that under uae ;)

sonninnos commented 2 years ago

Okedoke, so can this be closed then?

vagrant-17 commented 2 years ago

Yep .uae can be used in such cases, problem solved thanks mate.