Main > Software Forum

[Discontinued][17-09-22] RatRefresh - refresh rate switcher, stops LCD tearing

<< < (29/31) > >>

TitanGorilla:
I might not have been clear in my description, but that would be ideal for it to only have one refresh available to be set, to have the monitor's refresh rate reset with RatRefresh through automation with a script to use for MAME. I was mainly just using CRU to see the changes after running RatRefresh, since the refresh rate didn't change.

It seems if the original extension block is there(not the 'Default extension block'), it will allow you to set the refresh rate. The 'Default extension block' seems to prevent you from setting the refresh rate that is set with RatRefresh. For some reason .11 doesn't seem to set a default block after running -refresh and the original extension block will remain after using -refresh. Later versions of RatRefresh(versions after .11) always seem to show a default block being set in CRU after running -refresh. Removing it through the -removeextensionblock seems to fix the issue on my older monitor, but on newer monitors it blacks out the screen, on restart the native monitor resolution is distorted as well. I think it needs an extension block with data block(s) set for HDMI 2.X.

Adaptive sync(g-sync or free-sync for Nvidia or AMD) might be a possibility for newer hardware. I'm planning on upgrading to a new PC soon with a g-sync compatible or freesync video card. Adaptive sync might fix the issue with the refresh rate for games in MAME that are natively below 60 hz(or the ones that are slightly above 60 like pac-man). It's still nice to use RatRefresh to set the monitor refresh rate to the exact refresh rate of the original arcade games. My current graphics card is too old for g-sync or freesync without a g-sync module monitor though so I can't see which gives better results. Definitely don't want you to go through all that work to fix this issue if the main use case for RatRefresh is for hardware not capable of adaptive sync. 

Justin:
Just wanted to say that a simpler and cleaner way to obtain the refresh rates dynamically (from MAME only) would be to have your app send mame a request for the xml file corresponding to the specific rom about to be played.   I do this for my mame4to8 app (search my threads) which switches my motorized joystick restrictor plate  4/8 way as needed. 

You can prompt mame to generate a small xml for JUST the rom in question.  And then you can parse it and look for the refresh rate.

Rataplan626:

--- Quote from: Justin on April 12, 2023, 01:44:05 pm ---Just wanted to say that a simpler and cleaner way to obtain the refresh rates dynamically (from MAME only) would be to have your app send mame a request for the xml file corresponding to the specific rom about to be played.   I do this for my mame4to8 app (search my threads) which switches my motorized joystick restrictor plate  4/8 way as needed. 

You can prompt mame to generate a small xml for JUST the rom in question.  And then you can parse it and look for the refresh rate.

--- End quote ---

Yes I know of that function. But there's two things; loading the 300+MB mame file is not the fasted on all machines, and besides RatRefresh is not just for mame. It could be used for other programs / emulators as well. Now I could still make some logic so it would use mame.exe when running for mame, which will be it's usage for most people, I reckon.


I've been very busy with work and life the last couple of weeks. I've got an AMD powered mini-pc on my desk now, which as stated has the same issue; it stays on the default refreshrate, even if the custom one IS added and actually available. I might have to use the API to switch resolutions. And I'm going to look into that, but it's gonna take a few more weeks I'm afraid.

Justin:
No no, i don't think you read me correctly. You can have mame generate a very small xml for ONLY a single rom.    You can have ratrefresh  prompt mame to create the xml for the game that is about to be played .... 

Rataplan626:
Yes I know :-) But the mame executable doesn't get any smaller from that :-) It's not the fastest to load, and considering most people have some old pc in their cabs, I made the decision years back to generate this small file. But as said, if people want it, I can implement it with an additional parameter, it's just a few lines of code.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version