http://bugs.winehq.org/show_bug.cgi?id=17836
Summary: Motocross Madness 2 crashes at start Product: Wine Version: 1.1.17 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: hoehle@users.sourceforge.net
Created an attachment (id=20098) --> (http://bugs.winehq.org/attachment.cgi?id=20098) trace and disassembly of crash location
In AppDB, people have reported Motocross Madness 2 (mcm2) crashing in the intro but nobody had filed a bug yet. The backtrace makes it look like mcm2 crashes in, or immediately after, quartz.dll or amstream, after accessing ui\events.avi at the start of the program, after displaying for some seconds the stunt & warnings picture also known from the demo.
The demo is not affected and proceeds from the intro picture to the menu.
A log extract (+almost-all,-relay,-nls) from around the exception is attached.
The processed file UI/events.avi is an Intel Indeo v5 video. The installer did not complain that Indeo is mising! Replacing it with a Cinepak avi, with an empty file, deleting it or installing iv5 still produces crashes at the same location in mcm2. Same with clicking to skip the intro picture or disabling quartz.dll.
MCM2 suffers from SafeDisk 1.41.000 protection so it would not run as is in wine (or rather, it crashes much earlier). I tried 2 different cracks, both produced the same exception.
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #1 from Vitaliy Margolen vitaliy@kievinfo.com 2009-03-24 10:20:00 --- Should work just fine under current Wine.
What distro? How did you compiled/installed Wine? I'm assuming you have the original CD-ROM in the drive before you starting the game? And that cd-rom drive is properly mapped to a drive in winecfg, has the cd-rom type and your user can access cdrom device?
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #2 from Jörg Höhle hoehle@users.sourceforge.net 2009-03-24 17:09:07 --- I'm glad to hear that you got it to run. This gives hope. We are talking about the retail version, not the demo, aren't we? Using Ubuntu Hardy and Intrepid Compiled wine myself (like I did for the last 2 years), running git releases off the compiled tree (binary in ~/src/wine/wine) and running 1.0.1 off a make prefix=/... install-lib (binary is .../wine-1.0.1/bin/wine). Works well for ~30 applications. Using the Intel Xorg driver
CD-ROM: yes (now), yes and yes. Actually, I just reinstalled the game (always did a full install, this time into the default directory), and the crash persists.
Prior to the intro picture, the application asks whether to use "Software-Rasterung" or "DirectDraw HAL" (default). I always choose the latter, as the former produces a crash in the graphics components (reproducable in the demo) -- that's another issue. BTW, the demo runs on this machine (ignoring bug #17234).
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #3 from Jörg Höhle hoehle@users.sourceforge.net 2009-03-25 08:30:05 --- Looking through my notes, perhaps the application "Alien Nations" / "Die Völker" is affected by the same bug.
Its 1.1.7 log contained similar messages: trace:amstream:IMediaStreamImpl_QueryInterface (0xf589d0/0xf589d0) ->({f4104fce-9a70-11d0-8fde-00c04fd9189d},0x70f4b8) err:amstream:IMediaStreamImpl_QueryInterface (0xf589d0) ->({f4104fce-9a70-11d0-8fde-00c04fd9189d},0x70f4b8),not found trace:seh:raise_exception code=c0000005 flags=0 addr=0x43fc06
Curiously, f4104fce-9a70-11d0-8fde-00c04fd9189d was not found although amstream.h/ddstream.h contains a reference to directdraw: DEFINE_GUID(IID_IDirectDrawMediaStream, 0xf4104fce, 0x9a70, 0x11d0, 0x8f,0xde, 0x00,0xc0,0x4f,0xd9,0x18,0x9d);
One needs to work past bug #15915 in order to see this crash in "Alien Nations". I did it by quickly hacking the fourcc comparison test (which is not a proper solution to be submitted to wine-patches).
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #4 from Jörg Höhle hoehle@users.sourceforge.net 2009-03-26 09:38:52 --- Created an attachment (id=20129) --> (http://bugs.winehq.org/attachment.cgi?id=20129) excerpt of traces with several WINEDEBUG settings
The common aspect between mcm2 and Alien Nations seems that havoc breaks out soon after amstream:IDirectDrawMediaStreamImpl_GetFormat(). Both applications do not manage to play their intro video (others do).
The error messages (see attachment) suggest that wine becomes confused by garbaged memory data. Perhaps a race condition is involved as well, as there's an extreme sensitivity on WINEDEBUG settings:
A default trace without $WINEDEBUG yields (among others): err:d3d:resource_init Out of memory! but Alien Nations nevertheless runs successfully - without video.
WINEDEBUG=+all,-dbghelp_dwarf,... 2>/dev/shm/v.log yields no such err: line at all.
WINEDEBUG=+amstream,-dbghelp_dwarf,-heap,warn+heap,-gdi,-dsound,+quartz,+tid,+seh,+ole yields a crash after a few errors which look like illegal arguments were supplied to ddraw functions: err:ddraw:IDirectDrawImpl_CreateSurface Unknown Z buffer bit depth err:ddraw:IDirectDrawSurfaceImpl_QueryInterface No interface err:ddraw:PixelFormat_DD2WineD3D Unknown Pixelformat!
(The Alien Nations is easier to trace+all than MCM2 because the latter does a million irrelevant +relay and +nls calls)
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #5 from Jörg Höhle hoehle@users.sourceforge.net 2009-03-26 12:19:58 --- Well, it looks like Motocross Madness and The Alien Nations / Die Völker crash because they don't get along with all the FIXME and E_NOTIMPLEMENTED in amstream.
E.g., unlike http://msdn.microsoft.com/en-us/library/ms787928(VS.85).aspx the Alien Nations likely does not check the return value of GetFormat() and presumably feeds ddraw with uninitialised dwHeight and dwWidth values.
As such, this issue may be a duplicate of bug #12851, even though the attachment there does not contain the typical fixme:amstream I've posted here. I'll investigate further.
James Hawkins would say: "Another amstream bug."
BTW, "components" can't be set to amstream. What would be a good choice?
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #6 from Jörg Höhle hoehle@users.sourceforge.net 2009-03-30 04:41:06 --- I was asked to separate the issues and opened bug #17893 for "The Alien Nations / Die Völker".
How to remove 17836 from the AppDB about "Alien Nations"? http://appdb.winehq.org/objectManager.php?sClass=version&iId=12468
BTW, WINEDLLOVERRIDES="amstream=n" wine regsvr32 amstream.dll WINEDLLOVERRIDES="amstream=n;quartz=n" wine dvge.exe or mcm2.exe allows both apps to run and display the videos. (although Alien Nations displays the first one upside down and in bogus colors).
http://bugs.winehq.org/show_bug.cgi?id=17836
Jörg Höhle hoehle@users.sourceforge.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Motocross Madness 2 crashes |Motocross Madness 2 crashes |at start |at start (amstream)
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #7 from Austin English austinenglish@gmail.com 2010-06-04 15:43:48 --- This is your friendly reminder that there has been no bug activity for 11 months. Is this still an issue in current (1.2-rc2 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #8 from Jörg Höhle hoehle@users.sourceforge.net 2010-06-07 14:32:27 --- Uhoh, as of wine-1.2rc2, MCM2 demo and retail cause the machine to seemingly lock up in Ubuntu Intrepid with i915. The screen freezes, the caps lock light and Ctrl-Alt-F1, Ctrl-Alt-Backspace and even the magic sysreq(!) cease to work, yet the intro music plays to the end. Fortunately ssh still works, so I could log into the machine. Kill -INT wineserver + xrandr -s 0 managed to bring the machine back to a sane state. I'll post about this separately but for now cannot comment whether the present issue remains.
http://bugs.winehq.org/show_bug.cgi?id=17836
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Depends on| |23201
http://bugs.winehq.org/show_bug.cgi?id=17836
Bug 17836 depends on bug 23201, which changed state.
Bug 23201 Summary: Motocross Madness 2 crashes at start (d3d) http://bugs.winehq.org/show_bug.cgi?id=23201
What |Old Value |New Value ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
http://bugs.winehq.org/show_bug.cgi?id=17836
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wylda@volny.cz
--- Comment #9 from Wylda wylda@volny.cz 2010-06-21 17:14:37 --- (In reply to comment #8)
Uhoh, as of wine-1.2rc2, MCM2 demo and retail cause the machine to seemingly lock up in Ubuntu Intrepid with i915.
I don't have this problem. For me game shows several splash screens and then crash. I wasn't able to get into game menu even if i tried many wine versionsince wine-0.9.49. I tried to follow your howto on AppDB, but it seems like winetricks doesn't support indeo (instead i tried ffdshow a check iv32). Nevertheless no luck with this game.
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #10 from Jörg Höhle hoehle@users.sourceforge.net 2010-06-23 05:28:18 --- There are 2 possible reasons for a crash. 1. Better use native devenum.dll I wanted to file a bug about devenum.dll. In wine-1.1.24 times, WINEDLLOVERRIDES=quartz,amstream=n would suffice to run MCM2. Nowadays, I need to add WINEDLLOVERRIDES=quartz,amstream,devenum=n or there's a crash like from uninitialised memory. I wasted an afternoon trying to bisect this until I discovered that the crahes were random and seemed to depend on unrelated contents of the registry, breaking my "git bisect good or bad".
Generally WINEDEBUG=warn+heap helps get reproduceable crashes, but it did not work out here.
Also remember that you need WINEDLLOVERRIDES=quartz... wine mcm2.exe. An app-specific override in winecfg does not work with quartz.dll, see http://wiki.winehq.org/NativeDll
I'm sorry I never updated AppDB to reflect this (I'd need to become maintainer).
2. Missing Indeo codecs Curiously, an older version of winetricks contained this: echo " icodecs Intel Codecs (Indeo)" File an enhancement request?
As you have many apps, I'm sure several of them contain the Indeo codecs (e.g. ir32_32.dll and other 5 files) in their installers. Also, QuickTime6 seems to install (some of?) these codecs (under a slightly different name, e.g. IR41_QCX.dll).
With the codecs and the 3 native overrides, MCM2 worked fine (comment #8 still stands), even with WINEDEBUG=warn+heap.
http://bugs.winehq.org/show_bug.cgi?id=17836
butraxz@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |butraxz@gmail.com
--- Comment #11 from butraxz@gmail.com 2012-05-20 11:24:05 CDT --- This bug has not been updated for two years. Is this still an issue in current (1.5.4 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=17836
Jörg Höhle hoehle@users.sourceforge.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |amstream
http://bugs.winehq.org/show_bug.cgi?id=17836
Jörg Höhle hoehle@users.sourceforge.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Motocross Madness 2 crashes |Motocross Madness 2 crashes |at start (amstream) |(needs amstream GetFormat | |and GetState)
--- Comment #12 from Jörg Höhle hoehle@users.sourceforge.net 2012-12-15 12:26:13 CST --- Wylda indirectly confirmed it 7 days before you asked, via bug #30668
The amstream stubs still make MCM2 crash in wine-1.5.19, after twice: fixme:amstream:IAMMultiMediaStreamImpl_AddMediaStream Specifying a stream object in params is not yet supported fixme:amstream:DirectDrawMediaStreamImpl_IDirectDrawMediaStream_GetFormat (0x2b5d8dc)->(0x32f6c4,(nil),(nil),(nil)) stub! fixme:amstream:IAMMultiMediaStreamImpl_GetState (0x2b5d178/0x2b5d178)->(0x32f5ec) stub!
Native amstream and quartz work. No need for native devenum this time!
Zeroing some fields as in bug #17893 does not prevent the crash.
There are several crashes involving amstream's GetFormat, GetState, SetState or CreateSample: bug #13816, bug #26004, bug #29926, bug #30364 and bug #30668, perhaps bug #12851 too. Should we mark some as duplicates?
http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #13 from Jörg Höhle hoehle@users.sourceforge.net 2012-12-15 12:34:19 CST --- *** Bug 30668 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #14 from Austin English austinenglish@gmail.com --- This is your friendly reminder that there has been no bug activity for 1 year. Is this still an issue in current (1.7.31 or newer) wine? If so, please attach the terminal output in 1.7.31 (see http://wiki.winehq.org/FAQ#get_log).
https://bugs.winehq.org/show_bug.cgi?id=17836
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |ABANDONED
--- Comment #15 from Austin English austinenglish@gmail.com --- (In reply to Austin English from comment #14)
This is your friendly reminder that there has been no bug activity for 1 year. Is this still an issue in current (1.7.31 or newer) wine? If so, please attach the terminal output in 1.7.31 (see http://wiki.winehq.org/FAQ#get_log).
ABANDONED.
https://bugs.winehq.org/show_bug.cgi?id=17836
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #16 from Austin English austinenglish@gmail.com --- Closing.
https://bugs.winehq.org/show_bug.cgi?id=17836
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|amstream |quartz
https://bugs.winehq.org/show_bug.cgi?id=17836
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|ABANDONED |DUPLICATE
--- Comment #17 from Gijs Vermeulen gijsvrm@gmail.com ---
*** This bug has been marked as a duplicate of bug 24182 ***
https://bugs.winehq.org/show_bug.cgi?id=17836
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Motocross Madness 2 crashes |Motocross Madness 2 crashes |(needs amstream GetFormat |(needs |and GetState) |IDirectDrawMediaStream::Get | |Format() implementation)