Thanks for all the feedback, guys.
Just an update - I had planned to work on the user interface over the past weekend, but soon realized that the current activity mechanics/lifecycle should probably be cleaned up a bit first. Gilles noticed some more GL context creation issues, and an increasing number of users are experiencing strange audio latency. The hard-exit hack (ASDP bugfix) is also long overdue for removal. These issues might be resolved by updating to the latest revision of SDL2, so I'm tackling that first. Once the lifecycle/launch mechanics are resolidified, I'll then get back to wiring up the new front-end and updating the user preferences structures. Don't want the tail (UI) to wag the dog (activity launch mechanics).
I agree, having the game-specific overrides in text files on the sdcard would permit a lot of flexibility. Besides allowing experts to revise and share configs for games, it would also allow basic users to update the recommended settings between published releases. For example, we could add these config files to the github repository, and users could have a button to refresh the config recommendations whenever they like. Clicking the button would just download the text files to a location on their sdcard. So, at the end of the day, there may be a "refresh" menu in the main gallery screen, with three items underneath it:
- Refresh game list (searches sdcard for rom files)
- Refresh recommended config settings (downloads config files from github http server)
- Refresh cover art (downloads images from some http server)
I can just imagine the average user who opens a github issue to say <obscure game xxx> is buggy; we update the config file on github and tell them to refresh their recommended settings. Case closed
