http://bugs.winehq.org/show_bug.cgi?id=21716
Summary: 3d Rad Games StuntPlane v100 crashes, D3DXAssembleShader too stubby? Product: Wine Version: 1.1.38 Platform: x86 URL: http://www.3drad.com/ OS/Version: Linux Status: NEW Keywords: download Severity: normal Priority: P2 Component: directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
I tried installing the first demo from http://www.3drad.com/free-pc-games.php , 18db8fed6a34e1fe9a04aea567837d9c8c1c10f4 StuntPlane v100.exe Installed fine; starting the game failed with a missing part of the vc2005 runtime (sxs bug? Installer bug?); winetricks vcrun2005 worked around that, but then the game crashes with
fixme:d3dx:D3DXAssembleShader stub wine: Unhandled page fault on read access to 0x00032f04 at address 0x1000a32d (thread 0009), starting debugger...
+relay,+seh showed (heap calls omitted):
fixme:d3dx:D3DXAssembleShader stub 001b:Ret d3dx9_36.D3DXAssembleShaderFromResourceW() retval=8876086c ret=1000a2f3 001b:Call wined3d.wined3d_mutex_lock() ret=61bc7e7c 001b:Ret wined3d.wined3d_mutex_lock() retval=00000000 ret=61bc7e7c 001b:Call wined3d.wined3d_mutex_unlock() ret=61bc7ebc 001b:Ret wined3d.wined3d_mutex_unlock() retval=00000000 ret=61bc7ebc trace:seh:raise_exception code=c0000005 flags=0 addr=0x1000a32d ip=1000a32d tid=001b
('sh winetricks d3d9' worked around that, and let the game start, but the window stayed black, and the console showed unhappy messages like fixme:d3d_draw:drawStridedFast >>>>>>>>>>>>>>>>> GL_INVALID_OPERATION (0x502) from glDrawElements @ drawprim.c / 47 fixme:d3d_shader:shader_arb_generate_vshader >>>>>>>>>>>>>>>>> GL_INVALID_OPERATION (0x502) from glProgramStringARB() @ arb_program_shader.c / 4015 fixme:d3d_shader:shader_arb_generate_vshader HW VertexShader Error at position 172: "line 7, char 27: error: invalid operand variable\n" but I suppose that's a different bug?)
http://bugs.winehq.org/show_bug.cgi?id=21716
--- Comment #1 from Henri Verbeet hverbeet@gmail.com 2010-02-17 03:37:24 --- D3DXAssembleShader() being unimplemented is a known issue, and is being worked on by Matteo. The other messages are probably more interesting at this point, what does +d3d,+d3d_shader look like? Also, which video card and drivers are you using?
http://bugs.winehq.org/show_bug.cgi?id=21716
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|3d Rad Games StuntPlane |3d Rad Games StuntPlane |v100 crashes, |v100 slow |D3DXAssembleShader too | |stubby? |
--- Comment #2 from Dan Kegel dank@kegel.com 2010-02-20 09:30:04 --- Um, it works now :-) in windowed mode with "winetricks vcrun2005 d3dx9". Kinda slow, best to choose a small resolution.
Focusing on the speed problem, I see with oprofile that this game at small resolutions is spending a lot of time in XWindowEvent:
# opcontrol --reset; opcontrol --start # sleep 20 (while game runs) # opcontrol --stop; opcontrol --dump # opreport 2143938 48.0754 libX11.so.6.2.0 698285 15.6583 no-vmlinux 357629 8.0194 wine-preloader ... # opreport --symbols /usr/lib/libX11.so.6.2.0 | head 1693073 78.9702 XWindowEvent 450650 21.0197 _XReadEvents 22 0.0010 XPending
$ lspci | grep -i vga 02:00.0 VGA compatible controller: nVidia Corporation GeForce 8500 GT (rev a1) This is with nvidia drivers version 180 on jaunty.
http://bugs.winehq.org/show_bug.cgi?id=21716
--- Comment #3 from Dan Kegel dank@kegel.com 2010-02-20 11:53:19 --- Aha. On a machine with 00:02.0 VGA compatible controller: Intel Corporation 82G33/G31 Express Integrated Graphics Controller (rev 10) I see lots of warnings fixme:d3d_draw:drawStridedFast >>>>>>>>>>>>>>>>> GL_INVALID_OPERATION (0x502) from glDrawElements @ drawprim.c / 47 ... and a crash: err:d3d:resource_init Out of adapter memory wine: Unhandled page fault on read access to 0x00000000 at address 0x10010843 (thread 0009), starting debugger...
Are you interested in those, or should I just test on nvidia?
http://bugs.winehq.org/show_bug.cgi?id=21716
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID
--- Comment #4 from Dan Kegel dank@kegel.com 2010-02-20 14:48:17 --- Not sure I trust those oprofile results. I see X11DRV_ExtEscape being called a lot, but with X11DRV_ESCAPE / X11DRV_SYNC_PIXMAP rather than X11DRV_END_EXPOSURES. So maybe any slowness is from missing dib engine... that and all the msvcrt ascii routines it calls to load its data files.
And it doesn't even seem terribly slow. I'm going to give up on this bug and start over when I have a clean problem.
http://bugs.winehq.org/show_bug.cgi?id=21716
--- Comment #5 from Henri Verbeet hverbeet@gmail.com 2010-02-21 07:11:29 --- (In reply to comment #3)
Aha. On a machine with 00:02.0 VGA compatible controller: Intel Corporation 82G33/G31 Express Integrated Graphics Controller (rev 10) I see lots of warnings fixme:d3d_draw:drawStridedFast >>>>>>>>>>>>>>>>> GL_INVALID_OPERATION (0x502) from glDrawElements @ drawprim.c / 47 ... and a crash: err:d3d:resource_init Out of adapter memory wine: Unhandled page fault on read access to 0x00000000 at address 0x10010843 (thread 0009), starting debugger...
Are you interested in those, or should I just test on nvidia?
In principle yes, but I don't think I'll have time to look at them at the moment. There's a significant chance that it'll turn out to be a bug in the drivers, but I won't know until I look closer.
http://bugs.winehq.org/show_bug.cgi?id=21716
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Dmitry Timoshkov dmitry@codeweavers.com 2010-02-22 10:59:30 --- Closing invalid.