Build Your Own Arcade Controls Forum
Software Support => GroovyMAME => Topic started by: lettuce on July 28, 2019, 02:11:33 pm
-
So haven't touched GM for well over 2 year and so new features have come to the fore front since i last dabbled with GM where an LCD display is concerned. So i am wonder what settings should be altered in the mame.ini file to get the lowest latency (video & audio), smoothest scrolling and CRT look possible, where a 1440p 144hz GSync monitor is concerned??
The Settings i have changed atm (from memory are as follows:
sleep 0
monitor LCD
frame_delay 6
lcd_range 45-144
video d3d
aspect 16:9
resolution 2560x1440@144
sound portaudio
audio_latency 1.0
pa_api Windows WDM-KS
pa_latency 0.001
Are there any other settings that should be enabled from the default mame.ini?
Also i know the command for testing your system for the correct setting for frame delay but im not sure on the results it gives me and what to do with them for example i got the following....
Frame delay/percentage: 7/0.31% 8/0.52% 9/99.16%
Average speed: 1334.79% (239 seconds)
how do i know what frame delay to set and should you ideally try and test it with the most demanding game mame has??. I have noticed as soon as i run the test i get the following notification....
'Video chipset is not compatible'
any ideas why i get this message?
-
I can't answer for every line but here you go;
. First, I think frame_delay doesn't work at 144Hz, only 60.
. Second, if you've picked the Windows 7/8/10 build you don't need to write 'video d3d', leave on 'auto' as the build uses d3d9ex as default anyway.
. Third, you don't have to set frame_delay from either the mame.ini nor a number of specific ones anymore, and there's simpler than benching, now you can adjust during gameplay with the new dedicated slider.
Play a game, press TAB go to the sliders menu, set a level of frame delay, play and do it again until it's stable (F11 speed meter always at 100% during a run) it'll automatically save, for every game independently.
Setting it to 1 guarantees you have only 1 frame of input lag on top of the game, 5 means there's only 0.5 frames, and 9 means there's only like 1.6 ms of delay remaining between you and the game,
but it is very CPU intensive so usually works better on the lighter games, and with frame_delay remember the higher your panel resolution the higher the workload also, with my setup (check the sig) there's few games with which I can afford more than 7.
. Fourth, if using frame_delay even stable gives you some tearing at the top of the screen, you'll still need to create dedicated ini's for each game in which you'll write a fitting value of vsync_offset.
like for instance: romname.ini
vsync_offset 50
Increase the value (100, 150, 300, 450 etc) to make the line go up the screen until it disappears, decrease if you see it reappear at the bottom.
Put all your dedicated .ini's in the INI folder of course.
It's a bit tedious since you have to stop the game and go back editing the .ini file until it's right.
Note: using HLSL draws some more juice and therefore usually needs higher offset than without. If it requires too much offset and still doesn't work to eliminate the tearing, then drop frame_delay one level and do it again.
-
Thanks for the pointers!
So i should set my resolution to 2560x1440@60 then if frame delay is not working with 144 refresh rate and do i need to alter my 'lcd_range' setting from '45-144' to '45-60'?
I'll make sure i change 'video' back to 'auto' then.
so for frame_delay i should just set that to '1' in the ini file and then adjust for each game with the slider?
As im using a gsync monitor i dont think im experiencing any tearing.
On another note are you able to use arcade_osd to set a custom modeline for my lcd monitor if i have an Intel card or is that just for AMD based cards?
-
Ah, if it's G-Sync setup the rules are different again (sorry I've missed that important detail), I'm not sure what the correct settings are, even less so if using frame_delay at the same time (which I'm not sure is even needed there)
¯\(°_o)/¯
-
FWIW, I purchased a 1440p 32 inch Gsync monitor recently as well to use in my cab.
IIRC, Calamity stated make sure all the sync options are off in the ini, like autosync, syncrefresh, waitvsync & triplebiffer. Throttle is the only thing you need enabled for perfectly smooth scrolling.
Also I could of sworn I read that frame delay was unnecessary when gsync is used. Additionally I run at 165 HZ refresh rate which made a huge difference in input lag & motion clarity much more close to a CRT, but I’m not sure if that is the way you should be running GM. I have no issues, games sync at correct refresh rates and my lag is super super low.
Maybe Calamity can chime in if I’m incorrect on anything.