http://bugs.winehq.org/show_bug.cgi?id=5738
Summary: Titan Quest demo does not start Product: Wine Version: CVS Platform: PC-x86-64 URL: http://www.ausgamers.com/files/details/html/22285 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-kernel AssignedTo: wine-bugs@winehq.org ReportedBy: ns03ja@brocku.ca
After applying the workaround found in bug 5384, the Titan Quest demo doesn't start. The only thing it does is complains that "Virtual memory must be enabled to run Titan Quest", then quits.
A relay trace reveals that the app makes a call to GlobalMemoryStatus almost immediately before it throws up the MessageBox(). I fiddled with the return values of GlobalMemoryStatus and it seems to check that (TotalVirtual > TotalPhys || TotalPageFile > TotalPhys), which is a curious bit of logic. Especially in my case, as I'm using a machine with 2G of ram, along with just under 2G of swap... which obviously wouldn't meet this requirement, but it seems like a broken application to me. Furthermore, GlobalMemoryStatus will not return more than 2G (it rounds down to 2G for values > 2G and <= 4G), meaning that even if I did have more swap, I still wouldn't meet this condition.
Hardcoding in the following values: lpBuffer->dwTotalVirtual = 0x40000000; lpBuffer->dwAvailVirtual = 0x40000000; lpBuffer->dwTotalPageFile = 0x40000000; lpBuffer->dwAvailPageFile = 0x40000000; lpBuffer->dwTotalPhys = 0x30000000; lpBuffer->dwAvailPhys = 0x30000000; at the end of GlobalMemoryStatus allows the app to get further, complaining this time that it couldn't initialize it's graphics engine.