I realized some work concerning the configuration settings is half the way. Due to the new information page introduced lately, you were now able to create per-game config files, containing whatever info/description you want about your games. Those could then be displayed into the info screen.
Internally we also use this per-game setting files concept, to store dynamic information concerning the game (startup ELF name, CD/DVD Media, game size, name and format mainly). Allowing again to display this information in the information screen.
Now, the (next) last step is to use these files to store the compatibility/DNAS/VMC settings there too (and the future "custom ELF name" option too). We had discussed this (how to save per-game settings) long ago with other devs/wise users and now I'd like to change this as things have evolved and I think there is no reason anymore to keep this layout. We decided to use the global settings file, mainly for one reason, be able to read the whole game list information in one shot. Why ? I guess we had in mind to apply filtering action according to settings (example: game filtering by genre, which is I know requested, but not available currently).
As other devs have spread out, I opened this thread to catch their attention, and let everyone discuss about this.
But before arguing, here are the pros/cons.
- per-game settings files are stored on each device. You can take your portable device everywhere, and keep the settings with the game easily.
- per-game settings files are stored on each device. Not a duplicate These devices are a lot faster to read/write than the MC (which is the location for the current global settings files).
- per-game settings files are stored on each device. Again That means for USB/ETH you can easily modify/backup/restore them on your personal computer.
- we won't read a single byte of these files until we really need it. For example, we will read one single game config file only when displaying the compatibility settings, or before running the game. Whereas global settings file are read at startup from the MC, and the whole file is saved on MC again when you modify a single game.
- each information contained into the new per-game config files can be used into the information screen. Thus you would be able to add a widget to display the compatibility flag on screen quickly, or displaying the DNAS id or VMC path, ...
- it will require a migration tool to convert the old global setting file to the new scheme
- in the case, we ever add a feature that require to know the whole game list information, it will require to build it dynamically at will (but then it can be cached). However, as said before, as these files are stored on devices, it will not be that slow.