DSUCP crashes GOG version on Linux and Wine/PlayOnLinux

Any issues with the XWAU or X-Wing Alliance? Please let us know here!
Post Reply

DSUCP crashes GOG version on Linux and Wine/PlayOnLinux

Asha'man
Recruit
Posts: 5
Joined: Thu Mar 17, 2016 3:31 pm

Post by Asha'man » Sat Apr 23, 2016 3:27 pm

I'm trying to get DSUCP working under Linux with Playonlinux. I'm using the GOG version of XWA. I understand this was never the intended way for the patch to be used, so I'm trying to debug the problem, and fix it. I'm looking for information that will help in the debug process.

The game installs smoothly. The game runs without any issues. The intro, the monies, the missions play without problems.

After installing DSUCP, the game loads perfectly. The intro cutsceen runs, the menus work. But upon entering a mission the game crashes.

So far, to debug the problem, I've tried using xwahacker to switch between 32/16 bit modes, enable/disable fixedclear and 3d. None of those changes seem to make a difference. The game always crashes at the same point loading a mission.

What I'd like to know is exactly what changes the DSUCP installer made so I can test one by one to find the problem, or worst case scenario perform a manual install.

Btw, I haven't tried XWAUP, but according to https://www.gog.com/forum/star_wars_xwi ... h_wineskin, the XWAUP causes the same problem on MAC and Wine.

Reimar
Cadet 1st Class
Posts: 239
Joined: Mon Jan 19, 2009 11:45 am

Post by Reimar » Sun Apr 24, 2016 7:27 am

Did you remove the ddraw.dll? I needs Direct3D 11, which wine does not properly support.
As wine does not have the graphics corruption issues, and you can use xwahacker to increase the resolution there is little reason to use it (there are some minor ones like anisotropic texture filtering and anti-aliasing it enables, but none are a big deal).

Asha'man
Recruit
Posts: 5
Joined: Thu Mar 17, 2016 3:31 pm

Post by Asha'man » Tue Apr 26, 2016 2:12 pm

Thank you for the reply.

I tried removing ddraw.DLL, the game still crashes. I did try a fresh install as well to ensure my other tests were not interfering with this test.

Asha'man
Recruit
Posts: 5
Joined: Thu Mar 17, 2016 3:31 pm

Post by Asha'man » Fri Apr 29, 2016 4:39 pm

If it helps anyone, I've here is a partial crash log it's the same both with and without ddraw.dll

The log begins with:

Code: Select all

Unhandled exception: page fault on write access to 0x00000004 in 32-bit code (0x0044190a).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:0044190a ESP:0033d460 EBP:00000100 EFLAGS:00210246(  R- --  I  Z- -P- )
 EAX:00000000 EBX:06e53153 ECX:0033d45c EDX:c0000034
 ESI:00000100 EDI:2f73e180
Stack dump:
0x0033d460:  2f73e180 06e53132 06e5316b 06e5314a
0x0033d470:  00006aba 00000100 00000004 00000000
0x0033d480:  00000000 00000000 00000000 00000000
0x0033d490:  00000000 00000000 00000000 00000000
0x0033d4a0:  00000000 00000000 00000000 00000000
0x0033d4b0:  00000000 00000000 00000060 10001800
Backtrace:
=>0 0x0044190a in xwingalliance (+0x4190a) (0x00000100)
0x0044190a: incw	0x4(%eax)
I did try changing my wine version from, so far I've tested 1.4.1, 1.6.2, 1.7.42, and 1.9.8. All have the same problem.

User avatar
JeremyaFr
XWAU Member
Posts: 3922
Joined: Mon Jan 18, 2010 5:52 pm
Contact:

Post by JeremyaFr » Fri Apr 29, 2016 5:58 pm

Hello,
The address 0x0044190a is situated just after a call to OutputDebugStringA( "Not enough D3DTextures\n" ).

Asha'man
Recruit
Posts: 5
Joined: Thu Mar 17, 2016 3:31 pm

Post by Asha'man » Fri Apr 29, 2016 8:02 pm

Well, that gave me the idea to play around with hook_d3dinfos_textures.dll.

I tried both with and without hook_d3dinfos_textures.dll, and modifying the cfg file to increase to 20000. No luck there.

I've tried adding a d3dx11 to the virtual drive.

I've tried switching the dll overrides for msvcp120 and msvcr120, and the various d3d dlls that were listed.
from: native, builtin to builtin, native and entirely removing the dll overrides.

It doesn't seem to make a difference.

Reimar
Cadet 1st Class
Posts: 239
Joined: Mon Jan 19, 2009 11:45 am

Post by Reimar » Sat Apr 30, 2016 8:44 pm

Asha'man wrote:Well, that gave me the idea to play around with hook_d3dinfos_textures.dll.

I tried both with and without hook_d3dinfos_textures.dll, and modifying the cfg file to increase to 20000. No luck there.
That hook is loaded via the dinput.dll.
However WINE is probably configured to always prefer its built-in libraries, so that hook is never executed.
That is probably also the reason why removing ddraw.dll made no difference at all.
Somewhere in settings you can configure whether WINE prefers its own or any Windows dlls for dinput etc, but I am not sure if that won't just cause other issues.

Asha'man
Recruit
Posts: 5
Joined: Thu Mar 17, 2016 3:31 pm

Post by Asha'man » Tue May 03, 2016 1:40 pm

You were right about it causing other problems.

I performed a fresh install. Configured wine to force native dinput.dll.

The error message recieved is different for the first time, but the game now crashes upon launch.

The error message:

Code: Select all

Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x00000000).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00000000 ESP:0032fb78 EBP:0032fb98 EFLAGS:00010206(  R- --  I   - -P- )
 EAX:00000000 EBX:0063cf78 ECX:00000500 EDX:0001004c
 ESI:00000000 EDI:00400000
Stack dump:
0x0032fb78:  1000116a 00400000 00000500 0063cf78
0x0032fb88:  00000000 00000000 00000000 00000000
0x0032fb98:  0032fe60 004354d5 00400000 00000500
0x0032fba8:  0063cf78 00000000 00b0ca0a 00000000
0x0032fbb8:  00000001 005244c7 00000000 00132edc
0x0032fbc8:  0032fe60 00000000 00000000 00000002
You do not have the required permissions to view the files attached to this post.

Post Reply