Thoughts about support for under/over clock 60hz adjustment mode for more cores.

For topics which do not fit in other specific forums.
User avatar
SegaSnatcher
Posts: 163
Joined: Sun May 24, 2020 9:18 pm
Has thanked: 36 times
Been thanked: 43 times

Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by SegaSnatcher »

Ace recently updated some of the Arcade cores he's been working on and he added an option to run the cores at 60hz which either underclocks or overclocks depending on the native refresh of the core. This helps remove stuttering and sync issues with some pesky TVs that don't like native refresh rates, it also does not require a full frame buffer like V_Sync=0/1 modes. You may have seen a similar adjusted to 60hz mode on Analogue products like Mega SG and Super NT which essentially does the same over/under clocking method.

I've actually been asking for this low lag under/over clock 60hz feature to be more of a global option since back in 2018. IMHO, simply buying a "better TV" is not the solution because I own both a LG CX and C1 and have issues with certain native refresh rates and I don't think anyone would consider an LG OLED a bad tv. People shouldn't have to be forced into using a fully buffered mode with more latency because their TV doesn't like certain timings when this adjusted to 60hz mode have been proven to work quite well.

Now I understand such a feature won't make sense for all cores, but there are definitely a lot of cores on MiSTer where this would work just fine, especially most of the console cores. Native refresh should of course always be the default, but having this adjusted to 60hz low latency option supported on more cores would be a big benefit in my eyes from a user experience.
softtest9
Posts: 158
Joined: Thu May 28, 2020 7:13 pm
Has thanked: 3 times
Been thanked: 21 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by softtest9 »

If the TV can't do what you want it to do, is it not a bad TV for your use-case?
triangle
Posts: 14
Joined: Sun May 24, 2020 11:10 pm
Has thanked: 10 times
Been thanked: 2 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by triangle »

softtest9 wrote: Thu Dec 30, 2021 6:16 pm If the TV can't do what you want it to do, is it not a bad TV for your use-case?
I think it's more the point that a TV is often fulfilling many use cases for a household. I have a couple ones here for different purposes, but definitely appreciate how one might not have the space for multiple display. Others might not have the desire for a dedicated gaming display when they have another large TV that already does everything else their family wants without fuss.
PikWik
Posts: 256
Joined: Sat May 30, 2020 7:00 pm
Has thanked: 192 times
Been thanked: 71 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by PikWik »

i have a 65" QLED, and would run into cores here and there that i couldnt run in low lag mode,
which was actually a main reason why i got a 24" gaming computer monitor instead

i, like you, really enjoy that big screen gaming experience, but after making an all-in-one MiSTer arcade cabinet setup (that can easily rotate the screen for SHMUPs), i have never looked back and can play everything on the MiSTer in low lag mode

but, if rotating the screen isnt important to you, and compatibility with 60hz is a bigger issue, then yeah, i suppose some people would appreciate this. however, im not sure this could be a global feature, and would have to be a per core feature request
User avatar
SegaSnatcher
Posts: 163
Joined: Sun May 24, 2020 9:18 pm
Has thanked: 36 times
Been thanked: 43 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by SegaSnatcher »

PikWik wrote: Thu Dec 30, 2021 8:03 pm i have a 65" QLED, and would run into cores here and there that i couldnt run in low lag mode,
which was actually a main reason why i got a 24" gaming computer monitor instead

i, like you, really enjoy that big screen gaming experience, but after making an all-in-one MiSTer arcade cabinet setup (that can easily rotate the screen for SHMUPs), i have never looked back and can play everything on the MiSTer in low lag mode

but, if rotating the screen isnt important to you, and compatibility with 60hz is a bigger issue, then yeah, i suppose some people would appreciate this. however, im not sure this could be a global feature, and would have to be a per core feature request
What do you mean by rotating the screen? Like physically rotating my screen or rotating it via the core menu settings? Rotating via the Menu will not fix stuttering if your TV doesn't like a certain refresh. I do have a 24" AOC LCD I used with my MiSTer before getting the C1 and would rotate it, but I switched my setup to the LG C1 and I just can't go back now. The PQ is way better.
User avatar
SegaSnatcher
Posts: 163
Joined: Sun May 24, 2020 9:18 pm
Has thanked: 36 times
Been thanked: 43 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by SegaSnatcher »

softtest9 wrote: Thu Dec 30, 2021 6:16 pm If the TV can't do what you want it to do, is it not a bad TV for your use-case?
No, because the LG C1 is an objectively great TV for gaming, but since MiSTer can't output a VRR signal the benefits of the LG's variable refresh rate don't come into play. The LG C1 handle most non-native refresh quite well, but there are some it doesn't like as much like 59.92hz which causes stuttering while things are scrolling, the adjust to 60hz mode fixes that.

My opinion is people shouldn't have to replace their TVs to fix stuttering/sync issues when MiSTer itself can provide a work around for a lot of these cores without adding unnecessary extra latency like one of the buffered modes. Also, unless you can take your MiSTer with you and test on a bunch of different TVs at some store you will never know how a specific TV will handle certain refresh rates until you buy it. So again, the whole "Buy better TV" thinking is flawed.

This is what Ace said about the complexity of adding this feature.

"It really isn't that complicated. What I did was this:
-Change the PLL to be reconfigurable on the fly
-Bring over the reconfigurable PLL code from the Genesis core (itself taken from the Master System core)
-Use this calculator to find the appropriate pixel clock based on the horizontal and vertical pixel count of the game to hit 60Hz VSync, then multiply the end result by 8: https://www.epanorama.net/documents/vga2rgb/calc.html
-Modify the PLL to get the appropriate fractional factor using this newly-found clock and insert this into the code
-Revert the PLL to its original parameters
-Modify the clock dividers as necessary to maintain consistent sound pitch
It's a bit long, but not that hard to get going. If anything, I wouldn't mind running through ALL of the arcade cores, not just my own, and apply this method to them."

- Ace
FoxbatStargazer
Top Contributor
Posts: 994
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by FoxbatStargazer »

If we just want to get the LGs working (as well as a ton of modern monitors), it seems like VRR might be doable as a global change to the scaler? Like a vsync_adjust=3 or something. Changing core clocks on the other hand seems like it would always have to be done individually to each core.
User avatar
SegaSnatcher
Posts: 163
Joined: Sun May 24, 2020 9:18 pm
Has thanked: 36 times
Been thanked: 43 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by SegaSnatcher »

FoxbatStargazer wrote: Thu Dec 30, 2021 9:03 pm If we just want to get the LGs working (as well as a ton of modern monitors), it seems like VRR might be doable as a global change to the scaler? Like a vsync_adjust=3 or something. Changing core clocks on the other hand seems like it would always have to be done individually to each core.
I'm not sure if its possible to implement something within MiSTer that could trick the LG or any other VRR capable screen into thinking its receiving a VRR signal. It would be great if possible, but I almost feel like just doing Ace's method per core might be easier. Again, like I said this force to 60hz low latency mode might not be able to be implemented in all cores, but should be doable in a lot of them.
PikWik
Posts: 256
Joined: Sat May 30, 2020 7:00 pm
Has thanked: 192 times
Been thanked: 71 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by PikWik »

SegaSnatcher wrote: Thu Dec 30, 2021 8:30 pm
PikWik wrote: Thu Dec 30, 2021 8:03 pm i have a 65" QLED, and would run into cores here and there that i couldnt run in low lag mode,
which was actually a main reason why i got a 24" gaming computer monitor instead

i, like you, really enjoy that big screen gaming experience, but after making an all-in-one MiSTer arcade cabinet setup (that can easily rotate the screen for SHMUPs), i have never looked back and can play everything on the MiSTer in low lag mode

but, if rotating the screen isnt important to you, and compatibility with 60hz is a bigger issue, then yeah, i suppose some people would appreciate this. however, im not sure this could be a global feature, and would have to be a per core feature request
What do you mean by rotating the screen? Like physically rotating my screen or rotating it via the core menu settings? Rotating via the Menu will not fix stuttering if your TV doesn't like a certain refresh. I do have a 24" AOC LCD I used with my MiSTer before getting the C1 and would rotate it, but I switched my setup to the LG C1 and I just can't go back now. The PQ is way better.
yes, i meant rotating the screen physically. because rotating in the MiSTer menu is adding a frame of lag due to buffering.

and i hear ya. playing on a 65" TV with a theater sound system is absolutely immersive (and i do have 2 MiSTers, so one is hooked up to that gaming beast of an experience), but i prefer to play with my all-in-one setup, also because of the "small screen advantage" for the types of games i play; SMW kaizo romhacks and SHMUPs, which benefit from me being able to not have to move my eyes/head around large screen spaces, and my playing is more focused/precise/easier to react to with a 24" screen

Image

thats my arcade cabinet i made for my MiSTer.
TATE-able computer monitor on a stand, 1 SNAC, 2 USB, bluetooth speakers (MKBoom from parts express) which lets me play music from a device along with a game. and then everything is hooked up to a powerstrip that feeds to an industrial on/off switch so i can turn everything on and off with 1 switch
User avatar
SegaSnatcher
Posts: 163
Joined: Sun May 24, 2020 9:18 pm
Has thanked: 36 times
Been thanked: 43 times

Re: Thoughts about support for under/over clock 60hz adjustment mode for more cores.

Unread post by SegaSnatcher »

PikWik wrote: Thu Dec 30, 2021 10:34 pm
yes, i meant rotating the screen physically. because rotating in the MiSTer menu is adding a frame of lag due to buffering.

and i hear ya. playing on a 65" TV with a theater sound system is absolutely immersive (and i do have 2 MiSTers, so one is hooked up to that gaming beast of an experience), but i prefer to play with my all-in-one setup, also because of the "small screen advantage" for the types of games i play; SMW kaizo romhacks and SHMUPs, which benefit from me being able to not have to move my eyes/head around large screen spaces, and my playing is more focused/precise/easier to react to with a 24" screen

thats my arcade cabinet i made for my MiSTer.
TATE-able computer monitor on a stand, 1 SNAC, 2 USB, bluetooth speakers (MKBoom from parts express) which lets me play music from a device along with a game. and then everything is hooked up to a powerstrip that feeds to an industrial on/off switch so i can turn everything on and off with 1 switch

Nice setup you got there!
Post Reply