Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Erratic frame rate with Carnevil & Maximum Force (log included)  (Read 7461 times)

0 Members and 1 Guest are viewing this topic.

Trnzaddict

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 175
  • Last login:September 24, 2023, 12:12:29 pm
Erratic frame rate with Carnevil & Maximum Force (log included)
« on: December 13, 2018, 06:55:06 pm »
Hi, I'm getting some serious issues when playing Carnevil & Maximum Force on GM. Does not happen on vanilla MAME.

Basically Carnevil seems to run at 210%, sometimes up to 410% %, like the throttle is broken.

Maximum Force has erratic frame issues as well. It hovers at around 88% then jumps up to 105, then back down, up etc. Again on vanilla MAME, runs 100%.

Whats strange is what kind of brings the speed back down to somewhat normal levels is if I enable frame delay, but because I'm using the d3d9EX, I read that enabling frame delay is useless as you're already getting maximum input lag reduction when using that video mode.

I'm running an i7 8700k, so it's not a hardware issue. It chews through MAME easily.


haynor666

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1470
  • Last login:March 04, 2024, 03:20:27 am
  • retro maniac

schmerzkaufen

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 791
  • Last login:October 03, 2023, 02:27:31 pm
  • Multiple Electronic Machine Emulator
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #2 on: December 14, 2018, 04:13:16 am »
d3d9EX, I read that enabling frame delay is useless as you're already getting maximum input lag reduction when using that video mode.
Not 'maximum', just using d3d9ex (frame_delay off) means the video is synced within a single frame instead of the ususal 2~3, so it takes care of the greatest portion of the usual unwanted lag.

Then to get rid of most of that last remaining frame you will need frame_delay ON, often at the highest possible setting (requires extra cpu+gpu muscle on top of what the MAME drivers already require for themselves)

In theory plain d3d9 with frame_delay set to 1 behaves just like d3d9ex, however in practice some (heavy) games will freak out and it doesn't seem to necessarily be a matter of processing power, or at the very least it doesn't seem to be the CPU's fault (maybe the GPU is the bottleneck, dunno for sure)

So for those games just use d3d9ex without frame_delay, until maybe future development changes that somehow.
(and, well, use triplebuffer in this particular case of course)
« Last Edit: December 14, 2018, 04:15:32 am by schmerzkaufen »

Trnzaddict

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 175
  • Last login:September 24, 2023, 12:12:29 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #3 on: December 14, 2018, 03:51:41 pm »
Known problem
http://forum.arcadecontrols.com/index.php/topic,113382.msg1664344.html#msg1664344
http://forum.arcadecontrols.com/index.php/topic,135129.msg1394725.html#msg1394725

Oh...ok no problem I’ll just make a custom ini for the games affected.

d3d9EX, I read that enabling frame delay is useless as you're already getting maximum input lag reduction when using that video mode.
Not 'maximum', just using d3d9ex (frame_delay off) means the video is synced within a single frame instead of the ususal 2~3, so it takes care of the greatest portion of the usual unwanted lag.

Then to get rid of most of that last remaining frame you will need frame_delay ON, often at the highest possible setting (requires extra cpu+gpu muscle on top of what the MAME drivers already require for themselves)

In theory plain d3d9 with frame_delay set to 1 behaves just like d3d9ex, however in practice some (heavy) games will freak out and it doesn't seem to necessarily be a matter of processing power, or at the very least it doesn't seem to be the CPU's fault (maybe the GPU is the bottleneck, dunno for sure)

So for those games just use d3d9ex without frame_delay, until maybe future development changes that somehow.
(and, well, use triplebuffer in this particular case of course)

Ahhhh ok. I read it incorrectly then. Thanks for the clarification.

Well that’s great news that I can shave even more off by using them together.


Trnzaddict

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 175
  • Last login:September 24, 2023, 12:12:29 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #4 on: December 30, 2018, 02:29:43 pm »
Hi, so I've finally had some time to work on this due to some free time for the holidays...

Even with carnevil.ini with autosync disabled and triplebuffering enabled, now I'm getting a flat out crash from GM.


I have a new log included. According to the cmd window, there is a direct3d error going on.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #5 on: January 01, 2019, 02:16:07 pm »
Create a blank ini file for carnevil. Add this option: changeres 0

It's dynamic mode switching what's breaking it (it doesn't play nice with -triplebuffer which renders multithreaded).
« Last Edit: January 01, 2019, 02:17:46 pm by Calamity »
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Trnzaddict

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 175
  • Last login:September 24, 2023, 12:12:29 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #6 on: January 11, 2019, 03:58:10 pm »
Create a blank ini file for carnevil. Add this option: changeres 0

It's dynamic mode switching what's breaking it (it doesn't play nice with -triplebuffer which renders multithreaded).

Hi Calamity, sorry for the late response, even with changeres 0 on carnevil.ini, the throttle is still broken.

Is it doing it on your build? I even tried both


Switchres 0
changeres 0


doesn't make a difference. Still running at 290% :( Is there anything else I'm missing? New Log Included.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #7 on: January 13, 2019, 02:13:26 pm »
Check this:

SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -notriplebuffer
SwitchRes: Setting option -waitvsync

You have triplebuffer disabled now.

The options you need to apply are:

-autosync 0     (which will in turn disable -syncrefresh)
-triplebuffer 1
-changeres 0


Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Trnzaddict

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 175
  • Last login:September 24, 2023, 12:12:29 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #8 on: January 14, 2019, 04:21:24 pm »
Check this:

SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -notriplebuffer
SwitchRes: Setting option -waitvsync

You have triplebuffer disabled now.

The options you need to apply are:

-autosync 0     (which will in turn disable -syncrefresh)
-triplebuffer 1
-changeres 0

Hi Calamity, throttle still broken :(


I have made a carnevil.ini with just these 3 options

autosync 0
triplebuffer 1
changeres 0


No difference.

New log posted. Is this happening on your set up? It could very well just be broke in newer builds? Can anyone try this game and see if it is still broke or something on my side?

Upon looking at the log it seems that MAME is ignoring my ini files? It still shows:

SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -notriplebuffer
SwitchRes: Setting option -waitvsync

but I know MAME is reading my ini files because it I set framedelay to 9 on carnevil.ini it slows the game to a crawl. Really stumped here.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #9 on: January 14, 2019, 04:44:12 pm »
Check:

SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -triplebuffer
SwitchRes: Setting option -waitvsync

Syncrefresh should be disabled. It's enabled because you have some ini getting in the middle.

Start from scratch. Download my package. Unzip in new folder. Edit monitor settings, roms. Command line: mame64 carnevil -noautosync -triplebuffer -nochangeres

EDIT: Or, with your current installation, command line: mame64 carnevil -noautosync -nosyncrefresh -triplebuffer -nochangeres
« Last Edit: January 14, 2019, 04:46:42 pm by Calamity »
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Trnzaddict

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 175
  • Last login:September 24, 2023, 12:12:29 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #10 on: January 14, 2019, 08:20:13 pm »
Check:

SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -triplebuffer
SwitchRes: Setting option -waitvsync

Syncrefresh should be disabled. It's enabled because you have some ini getting in the middle.

Start from scratch. Download my package. Unzip in new folder. Edit monitor settings, roms. Command line: mame64 carnevil -noautosync -triplebuffer -nochangeres

EDIT: Or, with your current installation, command line: mame64 carnevil -noautosync -nosyncrefresh -triplebuffer -nochangeres

Ok, adding syncrefresh 0 to carnevil.ini fixed everything. It could of ignored autosync because I have my mame.ini file in my GM executable folder that is used for all games and autosync is enabled but I have specific game ini’s in the ini folder. I thought those were supposed to have precedence over the global ini when mame launches??

Also used this for Maximum Force and Area 51. Everything works great now, thank you so much!


DaddyLongLegs

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 257
  • Last login:October 11, 2021, 02:23:36 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #11 on: May 03, 2020, 07:50:21 am »
I am having this exact same issue but the conclusion isn't exactly obvious to me. Do I simply create carnevil.ini, place it in MAME\INI\presets, and the only thing that needs to be in the carnevil.ini file is "syncrefresh 0" and that's it?

Trnzaddict

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 175
  • Last login:September 24, 2023, 12:12:29 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #12 on: May 04, 2020, 08:51:01 am »
I am having this exact same issue but the conclusion isn't exactly obvious to me. Do I simply create carnevil.ini, place it in MAME\INI\presets, and the only thing that needs to be in the carnevil.ini file is "syncrefresh 0" and that's it?


Try:

triplebuffer  0
syncrefresh 0
waitvsync 0

DaddyLongLegs

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 257
  • Last login:October 11, 2021, 02:23:36 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #13 on: September 22, 2021, 11:02:13 am »
I am having this exact same issue but the conclusion isn't exactly obvious to me. Do I simply create carnevil.ini, place it in MAME\INI\presets, and the only thing that needs to be in the carnevil.ini file is "syncrefresh 0" and that's it?


Try:

triplebuffer  0
syncrefresh 0
waitvsync 0

Thanks so much for this.

The only thing I am noticing is there's really bad screen tearing. Is there any way to fix that?

If I don't use this custom ini, the screen tearing is gone, but the game runs at the wrong speed.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #14 on: September 22, 2021, 01:09:07 pm »
This is a known issue with this game.

Since triplebuffer option is gone, try setting

syncrefresh 0
waitvsync 1
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

DaddyLongLegs

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 257
  • Last login:October 11, 2021, 02:23:36 pm
Re: Erratic frame rate with Carnevil & Maximum Force (log included)
« Reply #15 on: September 22, 2021, 01:26:29 pm »
This is a known issue with this game.

Since triplebuffer option is gone, try setting

syncrefresh 0
waitvsync 1

This worked. You are amazing. Thank you so much!