MiSTer-devel / Main_MiSTer

Main MiSTer binary and Wiki
GNU General Public License v3.0
2.99k stars 317 forks source link

Feature Suggestion: allow to set global/default Video Processing options (in UI or in MiSTer.ini) #810

Closed sromeroi closed 10 months ago

sromeroi commented 10 months ago

I have 2 MiSTers: one for my CRT monitor and one for a HDMI TV.

For the HDMI one, I tried several Horz_filter, Vert_Filter, Scan_Filter, and Shadow_Mask combinations until I found something that looks much better than the default one, trying to achieve the "CRT look" in the HDMI MiSTer. Currently, in my case:

Horz_Filter: GS_Sharpness_070.txt
Vert_Filter: SLA_Dk_030_Br_080.txt
Scan filter: <Same as Vert>
Gamma correction: <off>
Shadow Mask: 1x - Sony PVM (Generic ~1980).txt

Then, every time I launch a new core (or a core I haven't launched before), I have to configure all the parameters. It is fine to do it with the >20 cores in the Consoles section but it's painful to do it for each of the Arcade Cores and each new core and arcade alternative that appears in the system.

Also, If I find a better combination of filters, I have to adjust it in dozens of previously configured cores.

It would be nice to have a "Global" Video Processing configuration in the Main Mister menu that allows to set all those values so that they are the ones used by the core if the user hasn't changed it (maybe the UI should have a "Default configuration" setting available for the cores).

This would allow to set a default/global set of Video filters for all the core and change it quickly once. If you want a different configuration for a specific core, you can always set it at the core level overriding the default values.

If adding this to the UI is an issue, or too complex, or it's not feasible, for me it would be enough to have global configuration options in the MiSTer.ini file, like:

default_horiz_filter=/path/to/file.txt
default_vert_filter=/path/to/file.txt
default_scan_filter=/path/to/file.txt
default_gamma=/path/to/file.txt
default_shadow_mask=/path/to/file.txt
default_shadow_mask_mult=1

This plus the "Use default options" setting in the core's Video Processing menu (using the currently default filter if you select this option, and there's no configuration set in the .ini file, and graying out the configuration until you change to "custom") would be fairly usable too. I could test filters in real time in any core and if I found a better combination, set them in the mister.ini file globally.

I think it's a useful feature that can save several time without probably being very hard to implement (specially if you just use the mister.ini options version).

Thanks.

sromeroi commented 10 months ago

Found that it was already implemented!

https://misterfpga.org/viewtopic.php?t=4307

(I could not find it in my mister.ini because it was too old).

Thanks!