Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FR] Reorganize saving settings #1390

Open
1 task done
J013k opened this issue Nov 16, 2024 · 7 comments
Open
1 task done

[FR] Reorganize saving settings #1390

J013k opened this issue Nov 16, 2024 · 7 comments

Comments

@J013k
Copy link
Contributor

J013k commented Nov 16, 2024

Checks

Describe the FR

The current settings system maybe it is simple but can be frustrating,
because I cannot manually choose where I want to Save Changes\Options even when multiple devices are connected
e.g. mc0, mc1, hdd0.
OPL will always Save Changes to mc0 (if no other settings were found).
After that I have to manually transfer (e.g. via wLe) files from mc0 to my preferred device (e.g. mc1).

Describe the solution you'd like

Give an user an ability to save setting where he\she wants.

After selecting option Save changes, there can be a few options to choose.

An example:
https://i.postimg.cc/rsMZSN4c/IMG-20241116-194820.jpg
Default can be mc0. When it is unavailable mc1...
mc0 -> mc1 -> hdd0 -> mass0 -> MX4SIO...

Overwrite Existing - overwrites settings from a device that settings were previously loaded.
If settings have not been loaded from anywhere or they do not exist, OPL can prompt:
Error overwriting settings. The device was not found.

When you select a device that does not exist OPL can prompt:
Error overwriting settings. The device was not found.

Additional context

There can be a problem when e.g. settings where saved to HDD, because a hard drive will not be initialized because OPL will not know about it.
To workaround this issue a device will have to be set to Auto:
https://i.postimg.cc/xjJn1KG7/IMG-20241116-201710.jpg
while saving changes.

@Wolf3s
Copy link
Contributor

Wolf3s commented Nov 16, 2024

Will do, I think it's something that can do.

@Wolf3s
Copy link
Contributor

Wolf3s commented Nov 16, 2024

I've been thinking on this because it's unecessary save everytime to mc0: all the configurations. It should be more options.

@KrahJohlito
Copy link
Member

KrahJohlito commented Nov 16, 2024

I think this needs more in depth discussion and a decision to be made on how to proceed..

Option 1:
conf_modules.cfg stored on MC with minimal cfg keys that just tell OPL which modules to load and where to load conf_opl.cfg from.

Option 2:
conf_modules.cfg stored in CWD (so next to OPL ELF, argv0?) with minimal cfg keys that just tell OPL which modules to load and where to load conf_opl.cfg from.

@AKuHAK @rickgaiser @uyjulian
Thoughts on best method? This is basically what rickgaiser suggested years ago but I think it’s time it gets done.

@Wolf3s
Copy link
Contributor

Wolf3s commented Nov 16, 2024

I think this needs more in depth discussion and a decision to be made on how to proceed..

Option 1: conf_modules.cfg stored on MC with minimal cfg keys that just tell OPL which modules to load and where to load conf_opl.cfg from.

Option 2: conf_modules.cfg stored in CWD (so next to OPL ELF) with minimal cfg keys that just tell OPL which modules to load and where to load conf_opl.cfg from.

@AKuHAK @rickgaiser @uyjulian Thoughts on best method? This is basically what rickgaiser suggested years ago but I think it’s time it gets done.

Can we just move to discord?

@rickgaiser
Copy link
Member

This is a solution for saving to the right location. But it's not a solution for loading from the right location. What config is used if you have multiple on mc0, hdd(apa), usb AND smb? Probably not the one you hope. It's a classic chicken-egg scenario that cannot be fixed.

I think we need to split the configuration:

  • a base/driver config at a fixed location that only has information on what drivers to load, and where to load/store the main config.
  • a main config that has all other configs, just like the one we have now.

The base config should be loaded from mc0, if not found there is should be loaded from mc1. Just like all games do it. It should be a regular savegame with a nice 3d logo that the user can see and copy/delete.
On starting opl, it should ask to create this savegame if it does not exist. Just like any other game with savegames.

Driver configs:

  • what devices are on/off, like usb, mx4sio, smb, etc...
  • configs to get those devices working, like smb config
  • location of main config: usb/mx4sio/smb/...

If you ask me, the main config should always be saved/loaded from a location that can also contain games. So the user can have the games and main config in the same location. So no option for mc0/1 for the main config.

This will give the user 100% control over where configs are both saved and loaded.

@J013k
Copy link
Contributor Author

J013k commented Nov 17, 2024

From what I remember loading is done that OPL looks for\loads config from a device that it was loaded.
If it was loaded from hdd then it looks for a config from this device.
When it was not found it looks for it in mc0.

And this is why I suggested this workaround to set the device to Auto while saving if it was not set previously:
https://i.postimg.cc/xjJn1KG7/IMG-20241116-201710.jpg
While saving changes.

Although I am not sure if it is done by that scenario for some time already...

EDIT: It only will not work for SMB.

@DarthMotzkus
Copy link

DarthMotzkus commented Nov 28, 2024

Do you guys changed anything already? 2165 works well for me, but any beta above doesn't find cfg/art/ etc. from APA and can't save OPL configurations on it either... Only on memory cards... I can't copy 90MB+ of ART covers to mcs...
It's the same problem related on issues:
#1399
#1397

@rickgaiser @Wolf3s @KrahJohlito

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants