Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
03259 Speed Major Always Jun 13, 2009, 05:17 Jun 17, 2009, 11:28
Tester DMala View Status Public Platform MAME (Official Binary)
Assigned To Resolution Unable to reproduce OS
Status [?] Closed Driver
Version 0.132 Fixed in Version Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 03259: Extreme slow performance in vector games with D3D 9
Description When D3D 9 is used, all vector games run at approx. 5% framerate and MAME is borderline unresponsive to input. This happens in both 32- and 64-bit builds of MAME. This happens with vector games only, raster games run as expected.

Windows 7 RC 64-bit
NVIDIA GeForce 6200 256MB
GeForce/ION drivers 185.85
Steps To Reproduce 1. Make sure MAME is configured to use d3d and d3dversion is set to 9
2. Launch any vector game
Additional Information Using gdi or ddraw, or setting d3dversion to 8, the problem goes away. I also cannot reproduce the problem on the same system under Windows 2000.

Reproduced in .132 and .131, I have not tried older versions.
Github Commit
Flags
Regression Version
Affected Sets / Systems
Attached Files
? file icon mame.ini (4,833 bytes) Jun 13, 2009, 19:58
[Show Content]
Relationships
There are no relationship linked to this issue.
Notes
11
User avatar
No.04494
Fujix
Administrator
Jun 13, 2009, 06:09
edited on: Jun 13, 2009, 06:13
I don't have the problem both with XP and 7RC 32-bit.
Please add your -verbose output, it will be helpful to track down it.
User avatar
No.04495
Tafoid
Administrator
Jun 13, 2009, 16:39
I'd also suggest defining your machine more.. CPU
Run a DXIDAG and make sure it passes tests.
Also, posting your MAME.INI would help, along with any specific game or 'vector.ini' settings that might help diagnose the issue.
User avatar
No.04499
DMala
Tester
Jun 13, 2009, 19:54
E:\Emulation\MAME>vmame64 -verbose asteroid
Parsing mame.ini
Video: Monitor 0000000000010001 = "\\.\DISPLAY1" (primary)
Video: Monitor 0000000000010003 = "\\.\DISPLAY2"
Direct3D: Using Direct3D 9
Direct3D: Configuring adapter #0 = NVIDIA GeForce 6200
Direct3D: Selecting video mode...
   640x 480@ 60Hz -> 2000.000000
   640x 480@ 70Hz -> 1090.909180
   640x 480@ 73Hz -> 1071.428589
   640x 480@ 75Hz -> 3000.000000
   720x 480@ 60Hz -> 1012.345642
   800x 600@ 60Hz -> 3000.000000
   800x 600@ 70Hz -> 2090.908936
   800x 600@ 72Hz -> 2076.923096
   800x 600@ 75Hz -> 4000.000000
   800x 600@ 56Hz -> 2020.000000
   848x 480@ 60Hz -> 1004.784729
   848x 480@ 70Hz -> 95.693779
   848x 480@ 72Hz -> 81.707771
   848x 480@ 75Hz -> 2004.784546
   960x 600@ 60Hz -> 1002.267578
   960x 600@ 70Hz -> 93.176674
   960x 600@ 72Hz -> 79.190659
   960x 600@ 75Hz -> 2002.267578
  1024x 768@ 60Hz -> 1001.485840
  1024x 768@ 70Hz -> 92.394981
  1024x 768@ 72Hz -> 78.408966
  1024x 768@ 75Hz -> 2001.485840
  1088x 612@ 60Hz -> 1001.721130
  1088x 612@ 70Hz -> 92.630264
  1088x 612@ 72Hz -> 78.644257
  1088x 612@ 75Hz -> 2001.721191
  1152x 864@ 60Hz -> 1001.114868
  1152x 864@ 70Hz -> 92.023926
  1152x 864@ 72Hz -> 78.037910
  1152x 864@ 75Hz -> 2001.114868
  1280x 720@ 60Hz -> 1001.135132
  1280x 768@ 60Hz -> 1001.076477
  1280x 800@ 60Hz -> 1001.040588
  1280x 960@ 60Hz -> 1000.892029
  1280x1024@ 60Hz -> 1000.843872
  1152x 870@ 75Hz -> 2001.107422
Direct3D: Mode selected = 800x 600@ 75Hz
Direct3D: Using dynamic textures
Direct3D: YUV format = RGB
Direct3D: Device created at 800x600
Direct3D: Max texture size = 4096x4096
DirectSound: Primary buffer: 48000 Hz, 16 bits, 2 channels
RawInput: APIs detected
Input: Adding Mouse #1: Microsoft USB IntelliMouse with IntelliEye
Input: Adding Gun #1: Microsoft USB IntelliMouse with IntelliEye
Input: Adding Kbd #1: Standard PS/2 Keyboard
DirectInput: Using DirectInput 7
Input: Adding Joy #1: Controller (XBOX 360 For Windows)
Input: Adding Joy #2: Logitech(R) Precision(TM) Gamepad
Direct3D: Error 88760868 during device present call
Direct3D: resetting device
Sound: buffer overflows=13 underflows=0
User avatar
No.04500
DMala
Tester
Jun 13, 2009, 20:05
AMD Athlon 64 X2 3800+ (dual core, 2GHz)
Gigabyte GA-K8NSC-939 (NForce3 250Gb chipset)
2GB RAM

DxDiag shows all acceleration enabled, no problems found. (No "test" button in this version of DxDiag?)

MAME.INI is attached, no vector or game specific INI are being used.
User avatar
No.04502
Tafoid
Administrator
Jun 14, 2009, 02:05
Direct3D: Error 88760868 during device present call
Direct3D: resetting device

That reminds me of the issue where people would change from full-screen to windowed mode with ALT+ENTER, but get a string of that precise error code. - (00574)

I've tried replicating this one, but cannot. Your -verbose would tend to suggest there is something wrong, however. I'd suggest unplugging your controllers and see if that makes a difference. That other bug 'cleared itself' for me by unplugging the my simple PSX<>USB controller. Not sure why. Also check for video monitor driver. There might be an issue if using a "default monitor" configuration.

Also, I'd also suggest getting your hands on version 0.126 of MAME and see if the same thing happens. There was some twiddling with DirectX defaults in the development cycle. In fact, narrowing down what version it "broke" for you would be handy and help the devs discover where the issue is. Binaries are available at http://mamedev.org/oldrel.html

As far as DxDiag not giving test buttons, I find that strange. I only have my Windows 2000 DxDiag as reference and it always has the test buttons.
User avatar
No.04506
DMala
Tester
Jun 15, 2009, 04:55
I removed both controllers - no change. Both monitors are identified by make and model in the control panel, so I assume they are using specific drivers.

I traced this back, it broke in .107. 106 and earlier work as expected with D3D enabled. Not sure how useful this is, .107 appears to be the point where MAME went from D3D 7 to D3D 9?

It looks like DxDiag was changed for Win 7 or possibly Vista. I see test buttons as well under 2k and XP.
User avatar
No.04511
Robbbert
Senior Tester
Jun 15, 2009, 09:28
0.107 is when the new video system was introduced.

Tested here, works fine. Pressing Insert gives 306%.

Make sure you are running MAME in a window, and not a dos full screen.
User avatar
No.04517
Sune_S
Senior Tester
Jun 16, 2009, 14:37
My setup is similar, Windows 7 64-bit with an nVidia card. I'm not seeing any slowdowns in vector games in 0.132.

Asteroids hits 1400%, Armor Attack 4000% unthrottled.

Windows 7 RC 64-bit
NVIDIA GeForce 9800 GTX+
Forceware 185.85

DirectX9.0c installed and fully up to date.
User avatar
No.04518
DMala
Tester
Jun 16, 2009, 16:57
edited on: Jun 17, 2009, 04:02
How did you install DirectX 9.0c under Win 7? The installer just fails for me. AFAIK, Win 7 comes with DirectX 11, I'd hope it's backward compatible?
User avatar
No.04519
Fujix
Administrator
Jun 17, 2009, 06:55
edited on: Jun 17, 2009, 06:58
DirectX 10 comes with Win 7 RC, including the support for DirectX 9 and past versions. No need of installing DX9 or other runtime separately.

It looks like a specific problem of your PC setup. I guess other programs using DirectX might not work on your PC.

If it was a typical bug, we should have found it when introduced.
I'd like to close this for "not reproducable" before Testers becomes "MAME User Support".
User avatar
No.04521
Tafoid
Administrator
Jun 17, 2009, 11:28
I agree.
You might want to use one of many forums to help diagnose the issue. As it is, a few of us have spent a fair amount of time with help and troubleshoot. Since it did work with your Windows 2000 configuration on the same machine, it's more likely not a MAME produced bug. Most of us monitor other forums. So, if it turns out this is more likely a MAME issue (with something confirmed), we'll reopen the bug.