Allows the ini_settings.sh script to correctly edit the expected video_mode line (currently 94)
Currently the example mode listed on line 89 is edited, due to it beginning with the variable name, and an invalid video mode is set: video_mode=8+hsync,-vsync
This results in 720p output and a (helpful) 'INI Error' warning at boot
Added `cfg_error` function for reporting errors in the ini.
Report errors when parsing video_mode information.
Report out of bounds settings.
Report unknown settings.
Detect numeric parse failures.
* Add support for sdl style gamecontrollerdb to setup default mappings for controllers
* Do not cache game controller entries, find them dynamically in the file when needed
Co-authored-by: Zakk <zakk@rsdio.com>
Real hardware returns 4-byte block on read TOC, but System Card can deal with short responses; this makes the hardware function the same as original hardware
For a while the Minimig core has only made it possible to select ROM files in the Amiga folder directly. But many Minimig users have quite the collection of different Amiga ROMs though, so being able to have several sub-folders with kick ROMs for the core really helps.
Reduce cost of setting video mode information when using
vsync_adjust=1/2 or vscale_mode=4/5 from 90ms to 5ms (worst case, most
instances are less than 1ms).
Split video initialization into video_init and video_set_mode.
video_init is called once, video_set_mode is called whenever the mode
changes.
Split hdmi_config into hdmi_config_init and hdmi_config_set_mode. Same
as video_, hdmi_config_init does the bulk of the initialization,
hdmi_config_set_mode is just for parameters that can change based on the
mode.
Load video filter data in loadScalerCfg and persist it.
Calculate a digest for scaler data and use that to determine whether new
data needs to be sent.
Only send gamma information if the filename has changed.
Offload fb module parameter writing to a separate thread via the new
offload system.
Reduce the amount of work being done in set_vrr_mode when vrr is
disabled.