What version or fork of MAME are you using?

A place where you can chat about anything that isn't to do with games!
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

Groovy is the best yes, but a lot of people have difficulties understanding why and how to set it up properly.

And for LCDs its lag reduction requires a powerful PC, especially if we're talking full-HD and up. Also shaders-wise it's only got HLSL.

Honestly, unless a user has some slightly above average MAME knowledge, and is set on getting the best possible accuracy (which almost inevitably leads to change parts of the hardware like the display), it's better to let people just go to RetroArch...
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
null1024
Posts: 3809
Joined: Sat Dec 15, 2007 8:52 pm
Location: ʍoquıɐɹ ǝɥʇ ɹǝʌo 'ǝɹǝɥʍǝɯos
Contact:

Re: What version or fork of MAME are you using?

Post by null1024 »

I just use regular mainline MAME with a folder full of batch scripts for starting each game.
I've got like four copies of MAME on the machine, going back as far as 0.128.
The romsets I use are generally current as of when I got them, but I put like no effort into keeping up with renaming shit and tracking down newly required files when a new release comes out.
Sometimes, I can get away with copy-pasting old sets into a recent MAME ROM folder and it'll just work, but when it doesn't, I really can't be arsed to not just keep using the old release of MAME for that game.
Come check out my website, I guess. Random stuff I've worked on over the last two decades.
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

Keeping up with the roms updates, considering the scarcity of outlets these days, the insane size of the romset full of useless non-working and ridiculous bloat entries, increasing occurences of missing obscure bios or device files people struggle to even identify and find, plus a number of other romset-related absurdities, is only one of the major reasons why fewer and fewer people bother following and using up-to-date MAME or alt. builds.
Some years ago MAME devs settled for good the project's nature and identity as a rube-goldberg machine designed by and for the nichest of tech geeks and power-user demographic's interests, and it continues to sink deeper into that abyss with smug, so it's clearly not an emulator fitting a global audience. It used to, just not anymore.

For normal human beings though, who actually care about video games and playing them (duh!), there's hopes that the revived Final Burn Neo will become the new go-to arcades emulator alternative. Standalone or as a RA core, whatever.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
cave hermit
Posts: 1543
Joined: Sat Sep 07, 2013 2:46 pm
Location: Pennsylvania

Re: What version or fork of MAME are you using?

Post by cave hermit »

I figured out how to use Jdownloader, so I have a fresh batch of 0.211 roms that seemed to work when I tested random games on my laptop. Planning to move these on over to my gaming PC when I get the chance and upgrading it from 0.161.

Apparently pink sweets suicide club is in there now!
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

Xyga wrote:Groovy is the best yes, but a lot of people have difficulties understanding why and how to set it up properly.

And for LCDs its lag reduction requires a powerful PC, especially if we're talking full-HD and up. Also shaders-wise it's only got HLSL.

Honestly, unless a user has some slightly above average MAME knowledge, and is set on getting the best possible accuracy (which almost inevitably leads to change parts of the hardware like the display), it's better to let people just go to RetroArch...
How powerful of a PC does it require for a 1080p 60hz display? I have a "gaming" laptop that runs all modern Steam shmups without any issues. I won't lie that RetroArch seems to have nice UI and that is kinda appealing... but in the end the accuracy of the emulation is quite important for the enjoyment and the whole experience imo :)
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

I don't know exactly, but I can tell my over 5 years old quad-core Intel is a bit limited now for using frame_delay on 1080p, even OC'd at 4GHz.
For instance with the Cave CV1000 games I can afford only frame_delay 5, especially if HLSL is on (the performance of your AMD GPU matters a bit here also)
Note 5's not bad, but 7~8 would likely be better for optimal lag reduction.
OC doesn't seem to bring much benefit, so I guess what matters is the base performance (boost included) of the CPU, and newer ones with improved architecture that can boost easily past 4GHz without OC should perform better.

(Note: for a CRT setup in case some would be wondering, you don't really need that extra CPU and GPU power)

Anyway to really get the best from Groovy on LCD you'll need one not locked to 60Hz, that will be driven by your AMD + Emudriver to run at real native refresh rates.
So in practice unless you have one of those LCDs (many older monitors, or new like several ViewSonic, maybe also some NEC or ASUS etc) and are sure about the compatibility with Emudriver, then the benefit in accuracy won't be much compared to RetroArch.
A lot of people would find it much easier to just buy a FreeSync or G-Sync monitor, and they would be right, as it's also the less resource-intensive solution.

In the right conditions and properly set then, Groovy gives you proper refresh speeds, smooth sync, input+video+audio lag reduced to almost nothing, all together working the closest to real conditions. All things combined it's unquestionably the most accurate solution.
As an extra it also features saving the emulated pcb's main & audio CPU overclock/underclock settings, which is not part of accurate-friendly features but is convenient for games that only work decently with such tweaks. It's the only up-to-date build to do that AFAIK.
Shaders-wise however it's only got HLSL...

Without the fitting hardware it's just an improved variant of baseline MAME, with overall lower lag (even with BGFX now though the improvement isn't as massive), assuming understanding the few specific options you'll need to use and what they do, and knowing how to manage specific .ini files.
I think most people in this case would enjoy RA better, Groovy is for users ready to go the extra -steep- mile.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

Xyga wrote:...Anyway to really get the best from Groovy on LCD you'll need one not locked to 60Hz, that will be driven by your AMD + Emudriver to run at real native refresh rates.
So in practice unless you have one of those LCDs (many older monitors, or new like several ViewSonic, maybe also some NEC or ASUS etc) and are sure about the compatibility with Emudriver, then the benefit in accuracy won't be much compared to RetroArch...

Well my monitor is a Dell U2419H and according to its specs it can sync from 50hz to 75hz ( Note: I have not tried forcing 75hz via custom resolution yet ) although obviously Windows only allows me to set 60hz. I found this guide on using CRT Emudriver to force variable refresh rates on LCDs and it doesn't seem too bad... But I do get your overall point here, if I want a nice plug and play solution with minimal tinkering then RetroArch is the way to go. My CPU is quad-core i5 4th gen that goes up to 3.6GHz. Its a laptop though so even though it has a Geforce GT 750M card it works in that hybrid mode where its all actually going through the onboard gpu and the external Nvidia is just taking on most of the load.
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

EDIT: here's a version of the guide that's slightly updated I think: http://geedorah.com/eiusdemmodi/forum/v ... php?id=374


Yeah unfortunately the range manufacturers quote doesn't tell nearly enough, what you can do is experiment with custom resolutions indeed, create a limited number (using control panel or CRU, the latter might be your only -small- hope) like:
1080p@53, 54, 55, 56, 57, 58, 59, 61, 62 (53 and 62 might be useless tho, depending on what you play)

If according to your control panel and monitor firmware's menu info they all work fine, then you can use that guide partially, stopping before configuring VMmaker.
That's because you have an nVidia GPU, you cannot use CRT_Emudriver and therefore can't benefit from variable/exact refresh rates a.k.a 'dynamic' method, but the 'static' might work, meaning the games will sync lock to the closest of the custom modes you have created (technically giving you a 99+% accurate refresh speed, I think RA can use that same method with their port of CRT Switchres)

IIRC for that to work on nVidias, at CORE SWITCHRES OPTIONS you'll also have to turn OFF;
modeline_generation (edit: not sure if necessary to disable that one, oh well...)
lock_system_modes
lock_unsupported_mode

And IIRC also define your output resolution at 1920x1200@0 (under OSD PER-WINDOW VIDEO OPTIONS)

Anyway success entirely depends on your monitor's ability to display those custom modes correctly.
If your monitor info shows something like '1080p@57' while sending a custom 1080p57 signal, then that's good news. ^^
Then after you're done configuring Groovy following the guide, start a 57Hz game (well, one close-enough like 56.94325) and if MAME's info shows;
Video
320 x 224 @ 56.94325 Hz
Switchres
1920 x 1080 @ 57 Hz
...that means it works ^^ (at least for that custom 57Hz mode, try different Hz games to test them all)

To make sure while the game's running check again what your monitor's menu info says, the Hz should mostly match the 'video' and 'switchres'.
Also press F11 to ckeck the game's speed is at 100% (or 99% or 101% but it shouldn't deviate more than 1% with any game)
Last check is playing for a couple minutes paying attention to the scrolling's smoothness, there shouldn't be any hiccups at all (if there are it's bad news...)

If all's good you can start trying frame_delay (press TAB it's in the sliders menu, your setting will save automatically per-game in the cfg folder)
If you get framerate drops then it's too high, play and decrease 1 step until it's stable.
If it's stable but you get some tearing onscreen, then you'll have to use 'vsync_offset' option within dedicated .ini's but I'll explain that later if necessary.

PS: for the extra sliders (overclock CPU%) you need to turn 'cheat' on in th mame.ini, but get your initial configuration right before using that.
Last edited by Xyga on Fri Sep 06, 2019 3:24 pm, edited 4 times in total.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

One more thing: careful with Windows 10, some updates ruin everything, although you might not be concerned here, dunno: http://forum.arcadecontrols.com/index.p ... 829.0.html

And, well, if your PC really won't let you create and output custom modes for an external monitor, then give up.

Laptops, unless maybe with a 'real' discrete GPU chip, aren't ideal for Groovy.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

Sure is a lot to take on lol. Thanks for all the info and guidance you've provided. I'm going to set aside a weekend to try this all soon :wink:
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

Don't. Try custom resolution modes on your external monitor first, it should take only a few minutes if your control panel allows it.

If they don't work, you're done, no need to set aside a week-end. ¯\_(ツ)_/¯

If they do, reserve only a couple hours some afternoon, that should be more than enough, as this is the easier/shorter route to configure Groovy for LCD.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

I followed your advice and the results are not as bad as they could've been, my monitor successfully reports 53, 54, 55, 56, 57, 58 and 61 Hz refresh rates. 59 and 62 don't seem to work or I'll need CRU to test them as the monitor's info screen just said 60hz for those :?
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

Ooh! not bad at all indeed, your laptop is not as worthless as mine, and you seem to win the monitor lottery.

Maybe 59 is rejected because there's already a mode labelled as such (could be actually 59.00, could be 59.94, dunno for sure)

Anyway that's a good start. :wink:
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

You were correct! I tried adding 59hz again but this time overwriting the existing one and it worked. So only 62hz is a no go for some reason, still pretty good 8)
I'll follow the guide you sent one evening and try it out. But first I'll make sure I just set up GroovyMame running correctly with the standard desktop refresh rate :)
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

werk91 wrote:But first I'll make sure I just set up GroovyMame running correctly with the standard desktop refresh rate :)
Well for that there's not much to do, under CORE SWITCHRES OPTIONS just change 'monitor' to 'lcd'.

(that won't stay as when you get to configure with the guide you'll have to change it to 'custom')

Maybe also change 'sync_refresh_tolerance' from '2' to '2.5'

That's the most basic (not optimal tho) way of using Groovy with only 60Hz.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

I can kinda see why some people are happy with just plain old vanilla Mame, I tried few games on Dangun Feveron last night and with minimal setup I was up and running. Groovy will be installed later today :mrgreen:
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

Okay so installed GroovyMame and did the initial setup you recommended, everything working fine so far. Getting a bit confused about the final step though...
The guide you provided for using CRT Emudriver clearly only works for AMD gpus and its a no-go for me since I'm with an Nvidia. So how can I get that magic crt_range that the software generates in order to use it inside the mame.ini? So far I have done:

Followed this guide:
viewtopic.php?f=6&t=64669

applied those changes:
Xyga wrote:IIRC for that to work on nVidias, at CORE SWITCHRES OPTIONS you'll also have to turn OFF;
modeline_generation (edit: not sure if necessary to disable that one, oh well...)
lock_system_modes
lock_unsupported_mode

And IIRC also define your output resolution at 1920x1200@0 (under OSD PER-WINDOW VIDEO OPTIONS)
But obviously that isn't enough and R-Type for eg. still runs at 60hz. I did download crt emudriver to try anyway, arcade osd says no compatible driver as expected and when I select my current resolution (highlighted in cyan blue) and press '2' the "Cope modeline to clipboard" option is greyed out :?
If this just won't work because of my GPU then its not too bad since as everything is currently the games I've tried so far run exceptionally well.
One thing that I can't work out is why I keep switching Bilinear filtering off and it returns to On every time I boot GroovyMame again ?! :lol:
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

werk91 wrote:Followed this guide:
viewtopic.php?f=6&t=64669
Oh God, I wasn't expecting this.
It is the worst 'guide' ever made, absurdly unnecessarily convoluted, not following the standards, and has nothing to do with our topic.

You're supposed to take the regular GroovyMAME build (for you the win 7-8-10 one), and install it normally: unzip in its folder period. Nothing else.
Then follow the guide we indeed both linked, like I said down to about halfway, stopping before configuring VMmaker since you're not concerned, specifically because you have an nVidia and can't use CRT_Emudrivers.
And yes also apply the additional changes I've listed.
But obviously that isn't enough and R-Type for eg. still runs at 60hz. I did download crt emudriver to try anyway, arcade osd says no compatible driver as expected and when I select my current resolution (highlighted in cyan blue) and press '2' the "Cope modeline to clipboard" option is greyed out :?
If this just won't work because of my GPU then its not too bad since as everything is currently the games I've tried so far run exceptionally well.
One thing that I can't work out is why I keep switching Bilinear filtering off and it returns to On every time I boot GroovyMame again ?! :lol:
CRT_Emudriver's not made for nVidia, don't even try to install that, everything I've posted so far was with that in mind, I've been instructing you of the only way to still get most of the benefits of Groovy on a LCD even without an AMD.

I recommend you start over, from scratch with a clean regular Groovy build. Sorry but I won't do support for anything else, installed any differently.
(also get CRT_Emudriver to the bin, all you need is the custom resolutions you have already created)

So, from there, going back to the start of the guide that matters to us, it seems you're blocked, and it might be a persistent issue with Arcade OSD.
Give me some time to get more information because that might require a fix and I'll get back to you by upping this thread.

EDIT: I may have a workaround but I need confirmation. Standby.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

Complementary guide, to that guide (read it first!!!) here : http://geedorah.com/eiusdemmodi/forum/v ... php?id=374
Purpose of the complementary guide: Arcade OSD only works for AMD, not nVidia, though sometimes even with the former it can't read the crucial info you need (monitor not letting it read the EDID)...
So courtesy of lifesaver Calamity ; if Arcade OSD doesn't work for you, here's how to obtain the precious native 60Hz modeline and crt_range of your LCD or whatever flat panel.


Introductory notes;

. I write this only with the regular GroovyMAME build win-7-8-10 (64bit) in mind (download at BYOAC), since this is what I know, don't quote me for different kinds of setups.

. This complementary guide is useful only if you have a LCD or whatever flat panel that accepts custom resolutions from your graphics card, either created from the control panel or CRU (at your own risk), and you know for sure in advance they do work on your setup, like your flat panel can actually run at e.g. 1920x1080p@55Hz or whatever in a range conveniently between 50Hz and a little over 60Hz.
- nVidia users in particular should try and create ****x****@54, 55, 56, 57, 58, 59, 61 (NOT 60 don't touch it !) maybe also create 53 and 62 if that works and depending on what games you'll play
- if you can't create a 59 mode, it may be because there's already one present labelled as such which could actually be 59.94, in which case try to overwrite it
- if your setup can do all that and you have an AMD there's excellent chances it supports CRT_Emudrivers, so better go for that instead of creating modes manually
- please whatever your case don't waste time trying on a laptop's integrated display
- and keep in mind this has fewer chances to work with mobile graphics cards, even if you're using an external display connected to your laptop

. Although for clarity I'm adding notes concerning the use of AMD cards with CRT_Emudriver (the full/genuine purpose of the original guide linked at the start of this post) here I am first addressing users who won't be using the entirety of that guide, namely nVidia owners, who will stop about halfway, right before the part to configure VMmaker.
In other words this complementary guide is mainly for users of the 'static' method, which is using only a limited number of fixed custom modes like described in the previous paragraph, losing the real variable refresh ability of the complete AMD+Emudriver 'dynamic' one, but allowing some nVidia users to benefit from GroovyMAME's features even if imperfectly.

. Of course AMD owners who can't get Arcade OSD to give them the native modeline and crt range should use it too. Help getting those lines is the primary purpose of this complementary guide, whether they're going for the full 'dynamic' method (following the complete guide linked at the beginning of this post), or the 'static' one (why would they use the latter tho? since CRT_Emudrivers support most AMD cards)

. Not sure this will be an issue for you here, but Windows 10 being its usual bitch be wary of possible issues, look here for instance: http://forum.arcadecontrols.com/index.p ... 829.0.html, but I won't provide help for that.

. I'm not doing permanent GroovyMAME aftersales (I lack enough knowledge to cover every topic) nor ping-pong support with BYOAC forums, I write that here and now because werk91 seems motivated enough to try. People who have general settings questions should read the official GroovyMAME guide (currently being updated) here: http://geedorah.com/eiusdemmodi/forum/v ... php?id=433


So here we go;

1. get this app : http://www.entechtaiwan.com/util/moninfo.shtm
- make sure your display is running its default native resolution at 60Hz refresh (not 59Hz), and is your primary, only display.
- run the app, copy and save the asset information page on notepad or whatever.

WARNING: your monitor may flash a solid color every few seconds when using that app (happened to me on W7 64), disregard and copy-save the info between the flashes anyway. After that you can uninstall the app and restart your computer, that fixed the issue for me at least. But if it breaks your computer you're on your own.


2. in the info page you copied, find the native modeline, if you have a Full-HD display for instance it should be the one corresponding to 1920x1080p 60Hz, here's mine to illustrate ;

Code: Select all

Native/preferred timing.. 1920x1080p at 60Hz (16:9)
    Modeline............... "1920x1080" 148,500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
3. copy-paste somewhere and edit it like this (notice the bits in bold, pay attention to the dot replacing the comma) ;

"1920x1080_60" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync


4. in the mame.ini, at 'modeline' replace 'auto' with it ;

Code: Select all

# CORE SWITCHRES OPTIONS
#
modeline_generation       1 or 0   (* read note at the bottom of this post)
monitor                   custom   (don't forget this)
orientation               horizontal
connector                 auto
interlace                 1
doublescan                1
super_width               2560
changeres                 1
powerstrip                0
lock_system_modes         0   (turn this off)
lock_unsupported_modes    0   (this too)
refresh_dont_care         0
dotclock_min              0
sync_refresh_tolerance    2.0
frame_delay               0
vsync_offset              0
black_frame_insertion     0
modeline                  "1920x1080_60" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
ps_timing                 auto
lcd_range                 auto
crt_range0                auto
5. now make a log (means running a game to produce a log file that will be found in the main MAME folder, it contains tons of info)
- you can make one by running this command line: mame64.exe -v romname > romname.txt
- or create a .bat script file called 'makelog.bat' that you'll run from the main MAME folder, like this;

Code: Select all

set GAME_NAME=romname
set SECONDS_TO_RUN=10
set MAME_NAME=mame64.exe
%MAME_NAME% -v -str %SECONDS_TO_RUN% %GAME_NAME% > %GAME_NAME%.txt
in the .bat only edit 'romname' with that of the game you'll use, like 'rtype' or 'esprade' whatever.
you can see there's an option to delay the start by a number of seconds, this can be useful to avoid uselessly analyzing the pcb memory checks at the launch of games, and make the log start when the game's actually showing something like the attract mode. here I set it to '10' for illustration.


6. when you get that log, find that line in it (it's somewhere around the top), here's mine for illustration ;

Code: Select all

SwitchRes: Monitor range 67275.00-67725.00,59.80-60.20,0.593,0.296,0.997,0.059,0.074,0.533,1,1,1080,1080,0,0
this is the range you'll be using as crt_range in the original guide.


7. done ! now you have your native modeline and base crt_range, you can resume following the LCD guide ;
http://geedorah.com/eiusdemmodi/forum/v ... php?id=374 (for 'static' users there isn't much left to do, you're almost there)

Ultimately after following that guide your mame.ini should look like this, with the modified crt_range (here're mine for illustration, @random readers: dont copy my crt_range, duh) ;

Code: Select all

# CORE SWITCHRES OPTIONS
#
modeline_generation       1 or 0   (* read note below)
monitor                   custom   (don't forget this)
orientation               horizontal
connector                 auto
interlace                 1
doublescan                1
super_width               2560
changeres                 1
powerstrip                0
lock_system_modes         0   (don't forget to turn this off)
lock_unsupported_modes    0   (this too)
refresh_dont_care         0
dotclock_min              0
sync_refresh_tolerance    2.0
frame_delay               0
vsync_offset              0
black_frame_insertion     0
modeline                  auto
ps_timing                 auto
lcd_range                 auto
crt_range0                56250-84375,50.00-75.00,0.593,0.296,0.997,0.059,0.074,0.533,1,1,1080,1080,0,0

Code: Select all

# OSD PER-WINDOW VIDEO OPTIONS
#
screen                    auto
aspect                    auto
resolution                1920x1080@0   or   e.g. @58 (** read note)
* normally nVidia users who go for the 'static' method can leave this on 1. but AMD users who go for the 'static' too should write 0.
AMD users who have CRT_Emudrivers installed going for the full 'dynamic' method should leave it on 1.
** users of 'static' method should set @0, users of 'dynamic' should set e.g. @58 or whatever dummy refresh of their choice.
Last edited by Xyga on Wed Sep 11, 2019 4:10 pm, edited 20 times in total.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

You're an absolute star Xyga! You and Calamity deserve a beer from me for this :mrgreen:
Will be trying this as soon as I get home 8)
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

You can certainly thank Calamity, but wait until you see if it works before thanking me lol. :oops: :mrgreen:

You know, maybe I'm just wasting your time, as I still have big doubts about your laptop really working for this.
Mobile Intel+nVidia graphics solutions, like Optimus, aren't supposed to allow for custom modes, not even on an external monitor AFAIK.
If it works you'll be the only one in a position to tell if it's genuine, or if there's resampling / framerate conversion applied (non-smooth scrollings = bad news)

EDIT: edited 20 times, now I'm done, promise. Kind of. :mrgreen:
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

Once you're done, here's a few more tips;



1. if the framerate is unstable (press F11, it oscillates 99-100-101) do this in the mame.ini

Code: Select all

sleep                     0


2. To turn off bilinear filtering for good, just create two .ini files that you will put in the ini folder

horizont.ini & vertical.ini

in each just write the following:

Code: Select all

filter                    0
though personally I like to leave it on and sharpen it, like this;

Code: Select all

filter                    1
prescale                  2


3. Note about frame_delay: set it to 1 (TAB ingame > sliders > frame delay 1) and you'll get only 1 frame of input delay.
(note: steps do not correspond to a number of frames, they have to do with input polling, so don't try to use this like run-ahead)

it might introduce a bit of screen tearing at the top of the screen (more so if you increase it to get even less delay)
in which case create more .ini files, either individual ones dedicated to a single game (like rtype.ini) or to a system (cps2.ini), but put the latter in the 'source' subfolder.

and inside write this;

Code: Select all

vsync_offset              0
and define a value corresponding to the approximate number of scanlines to correct on your screen.
if the tearing line is located around 1/5th of the screen from the top, then try 200 or more, e.g. (nb: that's if you have a 1080p display, with a 1440 it would be a value closer to 300, etc)

Code: Select all

vsync_offset              200
if the tearing line is very low, like 1/3rd or in the middle of the screen, then reduce frame_delay and try again.

or if you cannot get even frame_delay 1 tearing-less, just turn it off (TAB > sliders > frame delay 0)




4. if you also want to learn about Portaudio to reduce the sound delay, you can read about it here, it's rather simple;
http://forum.arcadecontrols.com/index.p ... msg1684615

(there's even an ultra-low delay mode now which is 0, but I've never used it personally.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
User avatar
werk91
Posts: 395
Joined: Sun Jun 17, 2012 12:22 am
Location: UK

Re: What version or fork of MAME are you using?

Post by werk91 »

Thanks again for all your help Xyga! To my surprise it works very well and overall it was pretty simple to setup, now all that's left is fine tuning. :wink:

Will definitely try out that sleep setting since frame_delay to 1 certainly shows a dip in frame rate performance.
User avatar
Xyga
Posts: 7181
Joined: Tue Nov 05, 2013 8:22 pm
Location: block

Re: What version or fork of MAME are you using?

Post by Xyga »

You're welcome!
'sleep' might help but it really sounds like your CPU choking.
Frame_delay is a hungry feature even at the lowest level, MAME already requires a fast CPU, but with frame_delay you need one even faster, in particular whith LCDs/flat panels.
My old laptop's 2GHz dual core Intel absolutely cannot take it.
Strikers1945guy wrote:"Do we....eat chicken balls?!"
Post Reply