Is groovymame with 120fps BFI still a good option ?

Talk to software developers and aspiring geeks. Programming tips. Improve motion fluidity. Reduce input lag. Come Present() yourself!
jimmer
Posts: 9
Joined: 14 May 2018, 06:48

Is groovymame with 120fps BFI still a good option ?

Post by jimmer » 14 May 2018, 07:02

Goal: Mame arcade classics with reduced lag and blur.

Currently I use groovymame with 19" 1280x1024 60fps TN panels.

I've read threads from 2013 about Black Frame Insertion using 120fps monitors. Is this still a good option? or is there a better thing now?

I don't have a 120fps monitor so I can't test out the groovymame patches from 2013. Also I don't want to head off down this path (research and monitor purchases ) if it's outdated.

thanks

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Is groovymame with 120fps BFI still a good option ?

Post by Chief Blur Buster » 14 May 2018, 12:17

Instead of thinking in terms of "120Hz BFI", think in terms of "How can I match 60Hz CRT clarity" with emulators.

For minimizing motion blur, what you really want is a monitor with a Motion Blur Reduction mode in your monitor. It's is often accomplished via strobe backlight. Which flashes once per refresh cycle, to eliminate motion blur.

To reduce emulator lag, you can also use RetroArch's amazing lag-reducing feature called RunAhead, read more here. So with emulator lag problem fixed, focus on getting ULMB or a similar feature.

Now, let's focus on motion blur mathematics (1ms = 1 pixel of motion blur per 1000 pixels/second).
And 60Hz = 1/60sec = 16.7ms refresh cycle = often matches the motion blur of a common 60Hz LCD.

Image

Without strobing, you will notice 120Hz simply halves motion blur of 60Hz.
But if you add backlight strobing above-and-beyond refresh rates, things improve much more dramatically. But good emulator strobing needs framerate = refreshrate = stroberate (aka 60Hz strobing, which many monitors do not support). The good news is most new 120Hz+ gaming monitors adds a strobe feature, so you can get 90% less motion blur...

Currently:
60fps @ 60Hz = 16.7 pixels of motion blur during 1000 pixels/second
60fps @ 120Hz = 16.7 pixels of motion blur during 1000 pixels/second
120fps @ 120Hz = 8.3 pixels of motion blur during 1000 pixels/second
60fps @ 120Hz strobed = no blur but you get a double image effect (like 30fps@60Hz CRT)
60fps @ 60Hz strobed = no blur, looks like a 60Hz CRT in motion clarity.

Software-BFI is a common workaround to convert hardware-based 120Hz strobing into 60Hz strobing, to eliminate the double-image effect. Software-BFI blacks out every other strobe flash, to give you half as many flashes, for the 60Hz strobe rate needed for good 60Hz display motion blur reduction. This is because many monitor manufacturers disallow hardware-based blur reduction at a lower refresh rate due to flicker. Because blur reduction at lower Hz flickers quite badly.

If you hate flicker, you will hate 60Hz blur reduction, but if your eyes are extremely sensitive to motion blur, and want the 60Hz CRT motion clarity experience -- then you want a monitor with Motion Blur Reduction.

So for emulators, you have several options:
  1. Use 120Hz hardware strobing + software BFI. Most gaming monitors with blur reduction supports 120Hz strobing, see list
  2. Use the ULMB 60Hz hack. All 165Hz IPS GSYNC monitors and all 240Hz TN GSYNC monitors support the ULMB 60Hz hack. (Other models may, but it's much more hit-and-miss).
  3. Use the single-strobe mode of BenQ/Zowie XL2420Z, XL2411Z, XL2720Z, or XL2730 using the Blur Busters Strobe Utility. Other models only single-strobes at higher refresh rates than 60Hz.
All of them require you to purchase a monitor with a hardware-based motion blur reduction feature.

If you really hate motion blur and you don't mind flicker, then it is really worth it, here's how they compare during horizontal scrolling (platformers, etc):

ULMB (And simliar modes) has more than 90% less motion blur than ordinary 60Hz LCD.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

User avatar
RealNC
Site Admin
Posts: 3741
Joined: 24 Dec 2013, 18:32
Contact:

Re: Is groovymame with 120fps BFI still a good option ?

Post by RealNC » 14 May 2018, 12:29

Well, on the other hand BFI can be used in 144Hz (or higher) mode with g-sync active and a 120FPS cap (or otherwise double whatever the frame rate of the game is supposed to be; some arcade games run at weird frame rates.)

But usually BFI produces poor image quality. I've also heard some reports here and elsewhere that it can get pixels stuck on some monitors. Not sure why that can happen though.

In any event, 60Hz blur reduction has better image quality than BFI. Currently, unless you find a monitor that specifically says it supports 60Hz blur reduction (which is next to impossible), the 60Hz ULMB tweak Chief mentioned is the best solution. And that means the monitor needs to be g-sync, and you need an NVidia graphics card.
SteamGitHubStack Overflow
The views and opinions expressed in my posts are my own and do not necessarily reflect the official policy or position of Blur Busters.

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Is groovymame with 120fps BFI still a good option ?

Post by Chief Blur Buster » 14 May 2018, 12:43

RealNC wrote:Well, on the other hand BFI can be used in 144Hz (or higher) mode with g-sync active and a 120FPS cap (or otherwise double whatever the frame rate of the game is supposed to be; some arcade games run at weird frame rates.)
It's also possible to do variable-ratio BFI, where the on-frame is 1/144sec and the black frame is (1/60sec - 1/144sec). But currently, no emulator supports it yet, although it's technically possible to do so.
RealNC wrote:But usually [software-based] BFI produces poor image quality. I've also heard some reports here and elsewhere that it can get pixels stuck on some monitors. Not sure why that can happen though.
That's because of natural LCD inversion being defeated (...see, that thing prevents burn in...). Sticking to one polarity causes LCD inversion to get stuck to one side (either positive polarity or negative polarity) which manifests itself as a bright-burnin or a dark-burnin, depending on polarity that is being defeated. A solution is to BFI at 180Hz instead, so that theres positive-polarity refresh cycles and negative-polarity refresh cycles, have visible images. I have posted an explanation of the burn-in effects, and there are workarounds such as phase-swap refresh cycles which the xash3d author implemented. Some TestUFO tests have a phase-swap (e.g. repeat frame once every 15 seconds) to make sure that positive/negative polarity refresh cycles are fully balanced. That's the purpose of LCD inversion. (which is a different topic altogether than LCD inversion artifacts).
RealNC wrote:In any event, 60Hz blur reduction has better image quality than BFI. Currently, unless you find a monitor that specifically says it supports 60Hz blur reduction (which is next to impossible), the 60Hz ULMB tweak Chief mentioned is the best solution. And that means the monitor needs to be g-sync, and you need an NVidia graphics card.
Agreed. ULMB 60Hz hack, or the specific BenQ models below.
RealNC wrote:(which is next to impossible)
I prefer not to say that phrase. The correct phrase is either "Hard to find" or "Few and far in between, so they have to be intentionally specifically purchased".

Yes, the list is short, but is very easy to remember:
1. Telvisions: RTings.com tells you which TVs support single-strobe as a checkbox you can look for. They actually verify & test!
2. Monitors: Strobe-supported BenQ/Zowie XL2411, XL2420, XL2430 and XL2720 all support single-strobe.
The "Z"s may be discontinued but the rest are available. All monitor suffixes work (as long as manufactured since the first BenQ XL2720Z) so that includes XL2411P, XL2411, XL2411Z, XL2420, XL2420Z, XL2720, XL2720Z, and XL2430T
Done!

For ULMB 60Hz, get a 165Hz IPS GSYNC or 240Hz TN GSYNC. Although other GSYNC models may support single-strobe 60Hz, we've found 165Hz IPS and 240Hz TN to be guaranteed rule-of-thumbs (thus far) for getting 60Hz ULMB hack compatibility.

One can easily get a single-strobe display easily if you focussed on purchasing these specific displays with official 60Hz strobe modes, and are a good deal for people who can afford it yet prefer not to tinker for hacks/unofficial modes.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

jimmer
Posts: 9
Joined: 14 May 2018, 06:48

Re: Is groovymame with 120fps BFI still a good option ?

Post by jimmer » 14 May 2018, 16:39

thanks, it will take me some time to digest these replies.

I should have said originally that reducing lag from my (already good) groovymame set up is more important than reducing blur (which I don't notice on my TN panels, I do notice something on my IPS panels).

Basically after groovymame has finished writing the screen memory I want the complete picture displayed as soon as possible, not spread out over the next 16ms (+ display lag). I don't see why the whole screen couldn't be lit in 2ms ?

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Is groovymame with 120fps BFI still a good option ?

Post by Chief Blur Buster » 14 May 2018, 20:13

jimmer wrote:thanks, it will take me some time to digest these replies.

I should have said originally that reducing lag from my (already good) groovymame set up is more important than reducing blur (which I don't notice on my TN panels, I do notice something on my IPS panels).
The new RunAhead feature lets an emulator have less input lag than the original arcade machine.

This breakthrough can compensate 100% for display lag.

That's why if you want lower input lag, I recommend you consider checking out the MAME within RetroArch -- because right now it's the world's lowest-lag MAME.

I love GroovyMAME, but if you want the world's lowest lag emulator, you'll have to consider RetroArch now because of its new miracle lag-reducing algorithm that lets it have less lag than the original machine.
jimmer wrote:Basically after groovymame has finished writing the screen memory I want the complete picture displayed as soon as possible, not spread out over the next 16ms (+ display lag). I don't see why the whole screen couldn't be lit in 2ms ?
Lag and blur reduction are opposing goals sometimes.
Fortunately, blur reduction modes can be easily turned ON/OFF.

Motion blur reduction often use a strobe backlight technique:

phpBB [video]


Without blur reduction, the screen refreshes normally (1/60sec to refresh top-to-bottom)
With blur reduction, the screen refreshes in dark, and the backlight is flashed on only fully-refreshed-frames.

Image

So you can have perfect-sharp scrolling/panning/platformers and you can pass the TestUFO Panning Map Readability Test during fast-motion -- just like for a CRT. However, blur reduction technique can add slight amount of lag (about 1/2 of a refresh cycle lag average) to reduce motion blur by 90%.

If you look at the high speed video, you'll see what I mean.

CRTs also scan top-to-bottom as you can see in high speed videos, but with a zero-blur LCD (e.g. ULMB) -- they can only flash the backlight all-at-once after the panel is scanned in the dark.

You can simply turn ON/OFF ULMB. So you can still get zero lag (2ms) just like you said, except the motion blur comes back. So what do you want? Zero lag or zero motion blur or simultaneously?

For a long time, it was impossible to do both simultaneously until RetroArch's RunAhead feature, which can completely compensate for strobing lag. Viola -- you get both. Have cake and eat it too. Zero blur + original lag of original machine.

And you can use RetroArch to compensate for ULMB lag. Because RetroArch can have less lag than the original arcade machine, due to their amazing RunAhead lag-reducing algorithm -- it needs to be tried to be believed.

You can stick to GroovyMame, but you will have to pick either "Zero blur" or "zero lag". You can have one or the other with a modern blur-reduction LCD. To instantly display pixels means accepting lots of motion blur, because of way things work.

P.S. if you want to see a long technical explanation of display motion blur, and how to reduce it -- see the animations and diagrams in Blur Busters Law & The Amazing Journey To Future 1000Hz Displays ... It's an interesting but extremely long read, for those technically minded and want to learn more about how display effects work (motion blur, LCD pixel response, rolling scan, CRT, why 30fps@60Hz cause double-image effect, etc)
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

TheOneAndOnlyJP
Posts: 22
Joined: 08 May 2018, 22:00

Re: Is groovymame with 120fps BFI still a good option ?

Post by TheOneAndOnlyJP » 14 May 2018, 23:28

Enabling blur reduction and AMA at the same time on my XL2411P makes the crosstalk very faint, so they pair well together.

jimmer
Posts: 9
Joined: 14 May 2018, 06:48

Re: Is groovymame with 120fps BFI still a good option ?

Post by jimmer » 15 May 2018, 06:05

Thanks again. It's very helpful to have someone who understands what I'm trying to ask and knows the answers :)

I have read the retroarch stuff previously and didn't really get it. I'll have another go now. But I'm wary of 'better than original' that's re-writing the game rather than emulating it better.

I'm not against writing a better emulation though. My main interest is Defender which polls inputs every 8ms and writes to the 'other half' of the screen memory, that just doesn't fit into the MAME paradigm of reading the inputs once per frame.

Calamity
Posts: 24
Joined: 17 Mar 2018, 10:36

Re: Is groovymame with 120fps BFI still a good option ?

Post by Calamity » 15 May 2018, 13:45

jimmer wrote:My main interest is Defender which polls inputs every 8ms and writes to the 'other half' of the screen memory, that just doesn't fit into the MAME paradigm of reading the inputs once per frame.
Despite Mark's passionate description, the run ahead thing won't help you with Defender. Only a frame-sliced MAME build can ;)

User avatar
Chief Blur Buster
Site Admin
Posts: 11647
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Is groovymame with 120fps BFI still a good option ?

Post by Chief Blur Buster » 15 May 2018, 14:06

Jimmer,

Calamity is the author of GroovyMAME -- so you've received a VIP guest reply here, jimmer!

(To be clear -- not the MAME base itself -- but GroovyMAME itself)
Calamity wrote:
jimmer wrote:My main interest is Defender which polls inputs every 8ms and writes to the 'other half' of the screen memory, that just doesn't fit into the MAME paradigm of reading the inputs once per frame.
Despite Mark's passionate description, the run ahead thing won't help you with Defender. Only a frame-sliced MAME build can ;)
I think Calamity is right -- for the specific game of Defender. That specific game is not RunAhead-friendly.

Yes, beam racing (Lagless VSYNC ON via tearingless VSYNC OFF) will be very important in reducing emulator latency. It requires special emulator patches to work.

Regardless, you'll want to purchase blur reduction anyway. Getting GSYNC reduces lag of emulators too, even if you don't use ULMB -- since GSYNC provides a method of avoiding input lag without adding tearing. That said, on GSYNC monitors, you can usually only select GSYNC mode or ULMB mode, but at least the mode is switchable!

Another alternative is to purchase a CRT instead, so you can have cake & eat it too. Zero blur & original machine lag (if used with an emulator that supports beam racing). An arcade CRT, perhaps?
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

Post Reply