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: Game not at 100%  (Read 2505 times)

0 Members and 1 Guest are viewing this topic.

ReelTechnoFreek

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 76
  • Last login:August 18, 2018, 04:49:58 pm
  • I want to build my own arcade controls!
Game not at 100%
« on: November 16, 2014, 06:14:41 pm »
Hey Calamity,

Have a game not running at 100%, its hopping about all over the place averaging at 115%.
The game is dorunrun

I created a dorunun.ini file and enabled multithreading which fixed games speeds for some other games like 1942, donkey kong, raiden etc,

Made no difference to this one though.

Please advise

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: Game not at 100%
« Reply #1 on: November 16, 2014, 06:37:42 pm »
Do you have -frame_delay enabled? Which value?
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

ReelTechnoFreek

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 76
  • Last login:August 18, 2018, 04:49:58 pm
  • I want to build my own arcade controls!
Re: Game not at 100%
« Reply #2 on: November 17, 2014, 01:41:03 am »
Yes. 1

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: Game not at 100%
« Reply #3 on: November 17, 2014, 03:53:22 am »
Yes. 1

Obviously.

Switch to ddraw or increase that value to something sane.

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

ReelTechnoFreek

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 76
  • Last login:August 18, 2018, 04:49:58 pm
  • I want to build my own arcade controls!
Re: Game not at 100%
« Reply #4 on: November 17, 2014, 04:21:50 am »
Thanks. The frame delay default is 0 right?
 I set it to 1 as per cools guide.

But for this particular game I need higher frame delay or use ddraw.

Is there a frame delay value for the mame ini that you recommend?

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: Game not at 100%
« Reply #5 on: November 17, 2014, 04:59:53 am »
The frame_delay value is something you should set manually per game, not in mame.ini. This is because you need to find the highest value that keeps the emulation speed solid, and this is different for each game and each system.

Cools is recommeding using frame_delay 1 because by simply enabling frame_delay with something greater than zero, it bypasses a frame queue that's built in the video drivers when D3D is used.

The risk of doing this is that it becomes possible that several frames of emulation get into the same vertical retrace, specially if the emulation of a given game is fast enough on the target CPU. This results in an accelerated speed.

Besides, the original reason to use frame_delay was not bypassing the frame buffer (which is nice) but to actually delay the emulation of a frame, which only starts making sense if you use a value of at least 4 or 5.

To avoid this risk you can switch to DirectDraw, that is able to force each frame to match consecutive vertical retraces. However, DirectDraw has not a built-in frame queue, so again using a value of 1 doesn't help much in this case.

If you want, you can keep D3D and increase the value in mame.ini to 2. That will probably be enough to get the benefit of bypassing the frame queue and prevent the risk of vertical retrace re-entry. But you will penalize the emulation speed of games that are in the limit of your CPU's capability.


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

Doozer

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 498
  • Last login:June 12, 2023, 09:19:49 am
  • Z80 ERROR
Re: Game not at 100%
« Reply #6 on: November 17, 2014, 05:39:37 am »

Tell me if I am wrong but enabling the frame_delay option to bypass the queue linked to D3D is only valid for the windows port. The linux version is working fine with the option set to 0 afaik.

By the way, well done with the DRM call, it works like a charm :)

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: Game not at 100%
« Reply #7 on: November 17, 2014, 05:47:55 am »
Tell me if I am wrong but enabling the frame_delay option to bypass the queue linked to D3D is only valid for the windows port. The linux version is working fine with the option set to 0 afaik.

Yes, but the frame_delay original purpose is *not* to bypass D3D's frame queue! This was an unexpected side effect. As for its original purpose, it also applies to Linux (specially since this very version).

Quote
By the way, well done with the DRM call, it works like a charm :)

Good to know. :)
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

ReelTechnoFreek

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 76
  • Last login:August 18, 2018, 04:49:58 pm
  • I want to build my own arcade controls!
Re: Game not at 100%
« Reply #8 on: November 17, 2014, 11:32:32 am »
So because I'm not the sharpest:

D3d is preferable over direct draw.
Could I leave mame ini frame delay at 0 then if a game runs too fast create a specific game ini and increase the frame delay until stability is achieved?


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: Game not at 100%
« Reply #9 on: November 17, 2014, 12:10:36 pm »
So because I'm not the sharpest:

D3d is preferable over direct draw.
Could I leave mame ini frame delay at 0 then if a game runs too fast create a specific game ini and increase the frame delay until stability is achieved?

If you leave frame_delay at 0 means disabled for all games so all games will run fine (though with the default lag).

The problem is when you enable frame_delay with a value that is too low or too high.

If you want to optimize the gameplay of a certain game for score then you can start trying the increase frame_delay for that game, starting by 3 or 4.
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

adder

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 640
  • Last login:February 04, 2021, 10:51:51 am
  • Location: Easy St.
Re: Game not at 100%
« Reply #10 on: November 17, 2014, 12:24:38 pm »
hi Calamity thanks for further explaining the frame_delay feature, i also had it set to 1 globally thinking i was doing nothing more than bypassing the d3d frame queue, but now i see that some problems can be introduced by doing that. in the future do u think there may be a chance there could be groovy option to kill the d3d frame queue and do nothing else, or is that unlikely/not possible?

cools

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 645
  • Last login:March 11, 2024, 02:59:06 pm
  • Arcade Otaku Sysadmin
    • Arcade Otaku
Re: Game not at 100%
« Reply #11 on: November 17, 2014, 04:39:06 pm »
Yeah, I havent touched the instructions - the guide was done on a machine where frame_delay 1 was safe. On a much faster other box I use directdraw.

keropi

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 161
  • Last login:December 28, 2022, 11:06:35 am
  • I want to build my own arcade controls!
Re: Game not at 100%
« Reply #12 on: November 22, 2014, 07:33:43 am »
For what it's worth groovymame/ume does not run at 100% on my system, it locks down to 50%.
That's with the latest 2014.10.24 groovyarcade beta release , booting from a CD without changing any setting at all).
The 2014.04.24 release however behaves different, the speed is 150~190% (booting from a CD with stock settings).
The old stable releases work at 100% as expected.

The machine I am running it is not a powerhouse (dual-core atom + ION chipset) but it should run the 90s 2D games just fine....

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: Game not at 100%
« Reply #13 on: November 24, 2014, 02:20:18 pm »
For what it's worth groovymame/ume does not run at 100% on my system, it locks down to 50%.

Hi keropi,

This is a completely different issue to the one mentioned by ReelTechnoFreek. Those live-CDs were beta versions for testing the new SDL2 builds. There was a problem with SDL2 affecting waitvsync that caused this issue. This has been fixed in GM 0.155. Unfortunately no one has made the updated binaries available yet.
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

keropi

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 161
  • Last login:December 28, 2022, 11:06:35 am
  • I want to build my own arcade controls!
Re: Game not at 100%
« Reply #14 on: November 26, 2014, 06:24:33 pm »
ah, scratch that then... I thought it was the same issue, sorry for that
I hope that one day we'll see an updated 0.155+ liveCD that is stable  ;D

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: Game not at 100%
« Reply #15 on: November 27, 2014, 12:50:17 pm »
I hope that one day we'll see an updated 0.155+ liveCD that is stable  ;D

Let's cross fingers.
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