ThTheme Park World (aka: Sim Theme Park)

Questions about Wine on Linux
Locked
lunavorax
Level 2
Level 2
Posts: 20
Joined: Sun Feb 10, 2013 4:09 am

ThTheme Park World (aka: Sim Theme Park)

Post by lunavorax » Sun Feb 10, 2013 4:43 am

Hello,

I've been trying to run TPW under Wine for a long time.
So far here's what I've managed to do under Wine 1.5.23 running on ArchLinux x86_64.

Starting with a vanilla Wine installation:
1/ Installing the game from disk.
2/ Partching the game to v2.0 using the official patch (TPPatchTwoEUROAMER20000324a.exe md5: b76683ac0fb047fddbab63debe919988)
3/ Replacing TP.EXE by a NoCD crack (md5: e4c2a8979d1a5d7e705976c1d4d511be)
N.B.: It is impossible to run the game without cracking it.
4/ Before running TP.EXE, I do by hand what the file safemode.bat is doing:

Code: Select all

mkdir save
cp safemode.tcf save/config.tcf
This will make the game run in safe mode at first launch, meaning it'll have all the graphic settings put to the lowest possible. This help the game being a bit more stable and doesn't display the same D3D error in the terminal when launching the game.
5/ VERY IMPORTANT: Eject the CD before launching TP.EXE, otherwise the intro videos will play but the menu will never display.

Then at launch, The Bullfrog logo shows, the game skip the intro videos as it can't find them and goes in the menu.
For now everything is normal.
I enter or choose my name, I select the first park and then… the game crashes when loading the park.
Here is the output after crashing ([...] means the line before and after has been repeated over and over):

Code: Select all

fixme:win:EnumDisplayDevicesW ((null),0,0x32f228,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f4f8,0x00000000), stub!
fixme:ddraw:ddraw7_Initialize Ignoring guid {00000000-0000-0000-0000-000000000000}.
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to 16
err:ole:CoGetClassObject class {92fa2c24-253c-11d2-90fb-006008a1f441} not registered
err:ole:CoGetClassObject no class object {92fa2c24-253c-11d2-90fb-006008a1f441} could be created for context 0x1
err:ole:CoGetClassObject class {4ff53b81-1ce0-11d3-aab8-00a0c95949d5} not registered
err:ole:CoGetClassObject no class object {4ff53b81-1ce0-11d3-aab8-00a0c95949d5} could be created for context 0x1
fixme:win:EnumDisplayDevicesW ((null),0,0x32f5a8,0x00000000), stub!
fixme:d3d_surface:surface_cpu_blt 	Unsupported flags: 0x1.
[...]
fixme:d3d_surface:surface_cpu_blt 	Unsupported flags: 0x1.
fixme:ras:RasEnumEntriesA ((nil),(null),0x32f9f8,0x32f8f0,0x32f8e8),stub!
fixme:ras:RasEnumEntriesA ((nil),(null),0x3291220,0x32f8f0,0x32f8e8),stub!
fixme:d3d_surface:surface_cpu_blt 	Unsupported flags: 0x1.
[...]
fixme:d3d_surface:surface_cpu_blt 	Unsupported flags: 0x1.
fixme:d3d_surface:wined3d_surface_flip Ignoring flags 0x1.
fixme:imm:ImmReleaseContext (0x20022, 0x6550e20): stub
fixme:d3d_surface:surface_cpu_blt 	Unsupported flags: 0x1.
[...]
fixme:d3d_surface:surface_cpu_blt 	Unsupported flags: 0x1.
wine: Unhandled page fault on read access to 0x0000002d at address 0x5ebba8 (thread 0009), starting debugger...
Unhandled exception: page fault on read access to 0x0000002d in 32-bit code (0x005ebba8).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:005ebba8 ESP:0032a788 EBP:00000000 EFLAGS:00010202(  R- --  I   - - - )
 EAX:00000000 EBX:0795f02c ECX:0000002c EDX:00000000
 ESI:0032b278 EDI:0794e5b3
Stack dump:
0x0032a788:  0032b2a4 0032b278 0032af48 0032b2c4
0x0032a798:  3f21da2c 3e1b268a 069508c8 00000000
0x0032a7a8:  0032a838 0067adf5 00000003 3ebc7949
0x0032a7b8:  3ec32b9a 3f5919ae 0790e593 0000007b
0x0032a7c8:  3f599999 3f1fd5b7 3f25838a 3ee0722f
0x0032a7d8:  0032b2a4 0032b278 0032b2c4 00000010
Backtrace:
=>0 0x005ebba8 in tp (+0x1ebba8) (0x00000000)
0x005ebba8: movb	0x1(%ecx,%ebp,1),%dl
Modules:
Module	Address			Debug info	Name (103 modules)
PE	  330000-  34b000	Deferred        weachatr
PE	  350000-  364000	Deferred        weaauthr
PE	  370000-  383000	Deferred        weanewsr
PE	  390000-  3ab000	Deferred        weacityr
PE	  3b0000-  3c6000	Deferred        weauploadr
PE	  3d0000-  3e3000	Deferred        wearasr
PE	  400000-  fc6000	Export          tp
PE	  fd0000-  fe2000	Deferred        weamailr
PE	10000000-10015000	Deferred        weavoter
PE	18000000-1804d000	Deferred        qmixer
ELF	7a19f000-7b800000	Deferred        r600_dri.so
ELF	7b800000-7ba45000	Deferred        kernel32<elf>
  \-PE	7b810000-7ba45000	\               kernel32
ELF	7bc00000-7bcd9000	Deferred        ntdll<elf>
  \-PE	7bc10000-7bcd9000	\               ntdll
ELF	7bf00000-7bf04000	Deferred        <wine-loader>
ELF	7c8c5000-7c9ba000	Deferred        libasound.so.2
ELF	7c9df000-7ca10000	Deferred        winealsa<elf>
  \-PE	7c9f0000-7ca10000	\               winealsa
ELF	7ca10000-7cb4f000	Deferred        oleaut32<elf>
  \-PE	7ca30000-7cb4f000	\               oleaut32
ELF	7cb4f000-7cb71000	Deferred        mmdevapi<elf>
  \-PE	7cb50000-7cb71000	\               mmdevapi
ELF	7cce5000-7cd01000	Deferred        rasapi32<elf>
  \-PE	7ccf0000-7cd01000	\               rasapi32
ELF	7da6e000-7da89000	Deferred        libgcc_s.so.1
ELF	7db72000-7db7e000	Deferred        libdrm_radeon.so.1
ELF	7db7e000-7db97000	Deferred        libxcb-glx.so.0
ELF	7db97000-7db9b000	Deferred        libxdamage.so.1
ELF	7db9b000-7dbb2000	Deferred        libglapi.so.0
ELF	7dd38000-7dd46000	Deferred        libdrm.so.2
ELF	7dd46000-7dda4000	Deferred        libgl.so.1
ELF	7dda9000-7ddb2000	Deferred        librt.so.1
ELF	7dde0000-7de17000	Deferred        uxtheme<elf>
  \-PE	7ddf0000-7de17000	\               uxtheme
ELF	7de17000-7de1d000	Deferred        libxfixes.so.3
ELF	7de1d000-7de28000	Deferred        libxcursor.so.1
ELF	7de28000-7de38000	Deferred        libxi.so.6
ELF	7de38000-7de43000	Deferred        libxrandr.so.2
ELF	7de43000-7de4d000	Deferred        libxrender.so.1
ELF	7de4d000-7de53000	Deferred        libxxf86vm.so.1
ELF	7de53000-7de75000	Deferred        libxcb.so.1
ELF	7de75000-7de7b000	Deferred        libuuid.so.1
ELF	7de7b000-7de95000	Deferred        libice.so.6
ELF	7de95000-7dfcc000	Deferred        libx11.so.6
ELF	7dfcc000-7dfde000	Deferred        libxext.so.6
ELF	7dfde000-7dfe7000	Deferred        libsm.so.6
ELF	7e00c000-7e0a2000	Deferred        winex11<elf>
  \-PE	7e020000-7e0a2000	\               winex11
ELF	7e13e000-7e167000	Deferred        libexpat.so.1
ELF	7e167000-7e1a0000	Deferred        libfontconfig.so.1
ELF	7e1a0000-7e1b0000	Deferred        libbz2.so.1.0
ELF	7e1b0000-7e1c7000	Deferred        libz.so.1
ELF	7e1c7000-7e264000	Deferred        libfreetype.so.6
ELF	7e268000-7e26f000	Deferred        libxdmcp.so.6
ELF	7e289000-7e2d4000	Deferred        dsound<elf>
  \-PE	7e290000-7e2d4000	\               dsound
ELF	7e2d4000-7e2f9000	Deferred        imm32<elf>
  \-PE	7e2e0000-7e2f9000	\               imm32
ELF	7e2f9000-7e404000	Deferred        comctl32<elf>
  \-PE	7e300000-7e404000	\               comctl32
ELF	7e404000-7e44f000	Deferred        dinput<elf>
  \-PE	7e410000-7e44f000	\               dinput
ELF	7e44f000-7e47a000	Deferred        msacm32<elf>
  \-PE	7e450000-7e47a000	\               msacm32
ELF	7e47a000-7e4ff000	Deferred        rpcrt4<elf>
  \-PE	7e490000-7e4ff000	\               rpcrt4
ELF	7e4ff000-7e641000	Deferred        ole32<elf>
  \-PE	7e520000-7e641000	\               ole32
ELF	7e641000-7e6f8000	Deferred        winmm<elf>
  \-PE	7e650000-7e6f8000	\               winmm
ELF	7e6f8000-7e801000	Deferred        opengl32<elf>
  \-PE	7e710000-7e801000	\               opengl32
ELF	7e801000-7e943000	Deferred        wined3d<elf>
  \-PE	7e810000-7e943000	\               wined3d
ELF	7e943000-7e9ba000	Deferred        ddraw<elf>
  \-PE	7e950000-7e9ba000	\               ddraw
ELF	7e9ba000-7e9e0000	Deferred        iphlpapi<elf>
  \-PE	7e9c0000-7e9e0000	\               iphlpapi
ELF	7e9e0000-7ea16000	Deferred        ws2_32<elf>
  \-PE	7e9f0000-7ea16000	\               ws2_32
ELF	7ea16000-7ea32000	Deferred        wsock32<elf>
  \-PE	7ea20000-7ea32000	\               wsock32
ELF	7ea32000-7eb4f000	Deferred        gdi32<elf>
  \-PE	7ea40000-7eb4f000	\               gdi32
ELF	7eb4f000-7ecb0000	Deferred        user32<elf>
  \-PE	7eb60000-7ecb0000	\               user32
ELF	7ecb0000-7ed21000	Deferred        advapi32<elf>
  \-PE	7ecc0000-7ed21000	\               advapi32
ELF	7ed21000-7ed65000	Deferred        usp10<elf>
  \-PE	7ed30000-7ed65000	\               usp10
ELF	7ef8b000-7ef98000	Deferred        libnss_files.so.2
ELF	7ef98000-7efdb000	Deferred        libm.so.6
ELF	7efe6000-7f000000	Deferred        version<elf>
  \-PE	7eff0000-7f000000	\               version
ELF	f73d4000-f73d9000	Deferred        libdl.so.2
ELF	f73d9000-f73dc000	Deferred        libx11-xcb.so.1
ELF	f73dc000-f73e0000	Deferred        libxau.so.6
ELF	f73fe000-f75af000	Deferred        libc.so.6
ELF	f75af000-f75ca000	Deferred        libpthread.so.0
ELF	f75ca000-f770d000	Dwarf           libwine.so.1
ELF	f770e000-f7730000	Deferred        ld-linux.so.2
ELF	f7730000-f7731000	Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) C:\Program Files (x86)\Bullfrog\Theme Park World\TP.EXE
	0000002f    0
	0000002e    0
	0000002d    0
	0000002b    0
	0000002a   -1
	00000029   15
	00000028   15
	00000027    0
	00000025    0
	00000024    0
	00000023    0
	00000009    0 <==
0000000e services.exe
	0000001f    0
	0000001e    0
	00000018    0
	00000017    0
	00000015    0
	00000010    0
	0000000f    0
00000012 winedevice.exe
	0000001c    0
	00000019    0
	00000014    0
	00000013    0
0000001a plugplay.exe
	00000020    0
	0000001d    0
	0000001b    0
00000021 explorer.exe
	00000022    0
Voilà, I don't know what to do more. If you need more information about it, feel free to ask me.
Wine is a wonderful piece of software that helps me sticking to GNU/Linux every day.

User avatar
dimesio
Moderator
Moderator
Posts: 12898
Joined: Tue Mar 25, 2008 10:30 pm

Re: ThTheme Park World (aka: Sim Theme Park)

Post by dimesio » Sun Feb 10, 2013 6:54 am

Cracked exes are not supported.

lunavorax
Level 2
Level 2
Posts: 20
Joined: Sun Feb 10, 2013 4:09 am

Re: ThTheme Park World (aka: Sim Theme Park)

Post by lunavorax » Sun Feb 10, 2013 7:34 am

dimesio wrote:Cracked exes are not supported.
I was waiting for this answer.
Therefore, here is the output of the non cracked game patched to 2.0:
N.B.: It doesn't even launch, it just crashes right away.

Code: Select all

wine: Unhandled illegal instruction at address 0x409870 (thread 0009), starting debugger...
Unhandled exception: illegal instruction in 32-bit code (0x00409870).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00409870 ESP:0032fcd0 EBP:0032fdb4 EFLAGS:00010207(  R- --  I   - -P-C)
 EAX:1bacffc3 EBX:00000001 ECX:00000067 EDX:00400000
 ESI:7b86d2b0 EDI:00400000
Stack dump:
0x0032fcd0:  0040e5bd 00000000 00400000 00000067
0x0032fce0:  00416860 0011ff61 7b8b6000 00000002
0x0032fcf0:  0032fd10 7bcbd000 0032fd78 00400000
0x0032fd00:  f757f596 f757f62d 00000094 00000005
0x0032fd10:  00000001 00000a28 00000002 76726553
0x0032fd20:  20656369 6b636150 00003320 7b858deb
Backtrace:
=>0 0x00409870 in tp (+0x9870) (0x0032fdb4)
  1 0x004169b2 in tp (+0x169b1) (0x0032fe40)
  2 0x7b86017c call_process_entry+0xb() in kernel32 (0x0032fe58)
  3 0x7b86153b in kernel32 (+0x5153a) (0x0032fe98)
  4 0x7bc78ae0 call_thread_func_wrapper+0xb() in ntdll (0x0032feb8)
  5 0x7bc7b99f call_thread_func+0x9e() in ntdll (0x0032ff98)
  6 0x7bc78abe RtlRaiseException+0x21() in ntdll (0x0032ffc8)
  7 0x7bc4dfb1 call_dll_entry_point+0x530() in ntdll (0x0032ffe8)
  8 0xf761c62d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
  9 0xf761c70e wine_switch_to_stack+0x2d() in libwine.so.1 (0xffda6a88)
  10 0x7bc53bef LdrInitializeThunk+0x3be() in ntdll (0xffda6af8)
  11 0x7b867db8 __wine_kernel_init+0xbf7() in kernel32 (0xffda7c18)
  12 0x7bc542cb __wine_process_init+0x18a() in ntdll (0xffda7ca8)
  13 0xf761a16e wine_init+0x2ad() in libwine.so.1 (0xffda7d18)
  14 0x7bf00deb main+0x8a() in <wine-loader> (0xffda8168)
  15 0xf7460825 __libc_start_main+0xf4() in libc.so.6 (0x00000000)
0x00409870: ldsl	%ebx,%ecx
Modules:
Module	Address			Debug info	Name (48 modules)
PE	  400000-  444000	Export          tp
PE	10000000-1000c000	Deferred        drvmgt
ELF	7b800000-7ba45000	Dwarf           kernel32<elf>
  \-PE	7b810000-7ba45000	\               kernel32
ELF	7bc00000-7bcd9000	Dwarf           ntdll<elf>
  \-PE	7bc10000-7bcd9000	\               ntdll
ELF	7bf00000-7bf04000	Dwarf           <wine-loader>
ELF	7e54f000-7e5d4000	Deferred        rpcrt4<elf>
  \-PE	7e560000-7e5d4000	\               rpcrt4
ELF	7e5d4000-7e5f9000	Deferred        imm32<elf>
  \-PE	7e5e0000-7e5f9000	\               imm32
ELF	7e610000-7e616000	Deferred        libxfixes.so.3
ELF	7e616000-7e621000	Deferred        libxcursor.so.1
ELF	7e621000-7e631000	Deferred        libxi.so.6
ELF	7e631000-7e63c000	Deferred        libxrandr.so.2
ELF	7e63c000-7e646000	Deferred        libxrender.so.1
ELF	7e646000-7e64c000	Deferred        libxxf86vm.so.1
ELF	7e672000-7e679000	Deferred        libxdmcp.so.6
ELF	7e679000-7e69b000	Deferred        libxcb.so.1
ELF	7e69b000-7e6b5000	Deferred        libice.so.6
ELF	7e6b5000-7e7ec000	Deferred        libx11.so.6
ELF	7e7ec000-7e7fe000	Deferred        libxext.so.6
ELF	7e7fe000-7e807000	Deferred        libsm.so.6
ELF	7e82c000-7e8c2000	Deferred        winex11<elf>
  \-PE	7e840000-7e8c2000	\               winex11
ELF	7e95e000-7e987000	Deferred        libexpat.so.1
ELF	7e987000-7e9c0000	Deferred        libfontconfig.so.1
ELF	7e9c0000-7e9d0000	Deferred        libbz2.so.1.0
ELF	7e9d0000-7e9e7000	Deferred        libz.so.1
ELF	7e9e7000-7ea84000	Deferred        libfreetype.so.6
ELF	7ea89000-7ea8f000	Deferred        libuuid.so.1
ELF	7eaa9000-7eb1a000	Deferred        advapi32<elf>
  \-PE	7eac0000-7eb1a000	\               advapi32
ELF	7eb1a000-7ec37000	Deferred        gdi32<elf>
  \-PE	7eb30000-7ec37000	\               gdi32
ELF	7ec37000-7ed98000	Deferred        user32<elf>
  \-PE	7ec50000-7ed98000	\               user32
ELF	7ef98000-7efdb000	Deferred        libm.so.6
ELF	7efe6000-7f000000	Deferred        version<elf>
  \-PE	7eff0000-7f000000	\               version
ELF	f741d000-f7422000	Deferred        libdl.so.2
ELF	f7423000-f7430000	Deferred        libnss_files.so.2
ELF	f7441000-f7445000	Deferred        libxau.so.6
ELF	f7447000-f75f8000	Dwarf           libc.so.6
ELF	f75f8000-f7613000	Deferred        libpthread.so.0
ELF	f7613000-f7756000	Dwarf           libwine.so.1
ELF	f7757000-f7779000	Deferred        ld-linux.so.2
ELF	f7779000-f777a000	Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) C:\Program Files (x86)\Bullfrog\Theme Park World\TP.EXE
	00000009    0 <==
0000000e services.exe
	00000026    0
	0000001e    0
	00000018    0
	00000017    0
	00000015    0
	00000010    0
	0000000f    0
00000012 winedevice.exe
	0000001c    0
	00000019    0
	00000014    0
	00000013    0
0000001a plugplay.exe
	00000020    0
	0000001d    0
	0000001b    0
00000021 explorer.exe
	00000022    0

User avatar
dimesio
Moderator
Moderator
Posts: 12898
Joined: Tue Mar 25, 2008 10:30 pm

Re: ThTheme Park World (aka: Sim Theme Park)

Post by dimesio » Sun Feb 10, 2013 8:21 am

SimThemePark supposedly uses older SafeDisc, so it may be this bug: http://bugs.winehq.org/show_bug.cgi?id=31279. Try binding it to one core (taskset -c 0) as suggested in the bug report.

Does the original version of the game run if you don't patch it to 2.0?

lunavorax
Level 2
Level 2
Posts: 20
Joined: Sun Feb 10, 2013 4:09 am

Re: ThTheme Park World (aka: Sim Theme Park)

Post by lunavorax » Sun Feb 10, 2013 11:43 am

I've spent around 3hours on #winehq (with the very kind help of a user named focht) to find the problem.
First of all, in order to fix the Safedisk issue, the following solution has been found:
  • * Make a clean win32 prefix
    * Setting mode to "Windows 2000"
    * Verify (and set manually if not) that the D drive points to the folder where the disc is mounted.
    * After installation and patching to v2.0, copying the file SECDRV.SYS from the game folder to drive_c/windows/system32/drivers/
This makes the game recognise the copy protection and launch. However the game is still buggy as it crashes on loading a park.

There's apparently two issues with that.
1/ Using a cracked american version of the game (I own a real copy of the European version) the game doesn't work uing the FOSS ATI drivers, but not when I lauch the game after uninstalling them.
Maybe there's a driver related issue.

2/ Back on the original european version, the game runs (very slowly but) flawlessly when launched with the following command

Code: Select all

 WINEDEBUG=+tid,+relay,+seh,+services,+winedevice,+ntoskrnl wine TP.EXE >>log.txt 2>&1
It seems that the flag +relay and writing the output in a file really slows the game to a stable (yet unplayable just because it's too slow) state.
fotch speculated that it might me a multithreading issue.
I don't know much about it.

If you have any log you want me to create and send you, go ahead! :)

lunavorax
Level 2
Level 2
Posts: 20
Joined: Sun Feb 10, 2013 4:09 am

Re: ThTheme Park World (aka: Sim Theme Park)

Post by lunavorax » Thu Feb 14, 2013 7:41 am

Hello,
I'm pushing this post a bit up because the answer to make Theme Park World (SimTheme Park) work doesn't seems that far since the game works flawlessly when slowed down a lot.

I tried using schedtool to fix any mutlithread related issues. The follownig command is known to fix some issues with Wine and SimCity 3000 and Heroes of Might and Magic III:

Code: Select all

schedtool -a 0x1 -e wine TP.EXE
Unfortunately this doesn't help and the game still crashes at the same point.

lunavorax
Level 2
Level 2
Posts: 20
Joined: Sun Feb 10, 2013 4:09 am

Re: ThTheme Park World (aka: Sim Theme Park)

Post by lunavorax » Thu Feb 14, 2013 7:43 am

dimesio wrote:Does the original version of the game run if you don't patch it to 2.0?
I forgot to answer this question.
No, the game behave the same with or without the 2.0 patch.

lunavorax
Level 2
Level 2
Posts: 20
Joined: Sun Feb 10, 2013 4:09 am

Re: ThTheme Park World (aka: Sim Theme Park)

Post by lunavorax » Sat Feb 16, 2013 11:44 am

Since Wine 1.5.24 is available for ArchLinux x86_64. I've tried again frow scratch to install and play Theme Park World.
The same bug happens at the same time. I'm posting here the output of STDERR.

Note that the video game behave differently whenever I use the FLOSS ATI drivers or not (on ArchLinux x86_64, I'm just des/installing the package lib32-ati-dri).

STDERR output without the FLOSS ATI drivers. Game runs flawlessly but crashes when loading a park:
Nota Bene: [...] means the line before and after were repeated several times.

Code: Select all

libGL error: failed to load driver: r600
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 0x302)").
fixme:win:EnumDisplayDevicesW ((null),0,0x33f228,0x00000000), stub!
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 0x302)").
fixme:win:EnumDisplayDevicesW ((null),0,0x33f4f8,0x00000000), stub!
fixme:ddraw:ddraw7_Initialize Ignoring guid {00000000-0000-0000-0000-000000000000}.
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to 16
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:state_zenable Z buffer disabled, but ARB_depth_clamp isn't supported.
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:d3d:state_subpixelx Render state WINED3D_RS_SUBPIXELX not implemented yet.
fixme:d3d_draw:draw_primitive Using software emulation because manual fog coordinates are provided.
err:ole:CoGetClassObject class {92fa2c24-253c-11d2-90fb-006008a1f441} not registered
err:ole:CoGetClassObject no class object {92fa2c24-253c-11d2-90fb-006008a1f441} could be created for context 0x1
err:ole:CoGetClassObject class {4ff53b81-1ce0-11d3-aab8-00a0c95949d5} not registered
err:ole:CoGetClassObject no class object {4ff53b81-1ce0-11d3-aab8-00a0c95949d5} could be created for context 0x1
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 0x302)").
fixme:win:EnumDisplayDevicesW ((null),0,0x33f5a8,0x00000000), stub!
fixme:ras:RasEnumEntriesA ((nil),(null),0x33f9f8,0x33f8f0,0x33f8e8),stub!
fixme:ras:RasEnumEntriesA ((nil),(null),0x38f1100,0x33f8f0,0x33f8e8),stub!
fixme:d3d_surface:wined3d_surface_flip Ignoring flags 0x1.
fixme:d3d_surface:surface_cpu_blt Filter WINED3D_TEXF_LINEAR not supported in software blit.
[...]
fixme:d3d_surface:surface_cpu_blt Filter WINED3D_TEXF_LINEAR not supported in software blit.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
[...]
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:imm:ImmReleaseContext (0x70056, 0x7097be0): stub
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
[...]
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
wine: Unhandled page fault on read access to 0x0000002d at address 0x5ebba8 (thread 002e), starting debugger...
Unhandled exception: page fault on read access to 0x0000002d in 32-bit code (0x005ebba8).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:005ebba8 ESP:0033a788 EBP:00000000 EFLAGS:00010202(  R- --  I   - - - )
 EAX:00000000 EBX:0a330ac4 ECX:0000002c EDX:00000000
 ESI:0033b278 EDI:0a32004b
Stack dump:
0x0033a788:  0033b2a4 0033b278 0033af48 0033b2c4
0x0033a798:  3f21da2c 3e1b268a 0a1b4cb8 00000000
0x0033a7a8:  0033a838 0067adf5 00000003 3ebc7949
0x0033a7b8:  3ec32b9a 3f5919ae 0a1a502b 0000007b
0x0033a7c8:  3f599999 3f1fd5b7 3f25838a 3ee0722f
0x0033a7d8:  0033b2a4 0033b278 0033b2c4 00000010
Backtrace:
=>0 0x005ebba8 in tp.icd (+0x1ebba8) (0x00000000)
0x005ebba8: movb	0x1(%ecx,%ebp,1),%dl
Modules:
Module	Address			Debug info	Name (103 modules)
PE	  340000-  35b000	Deferred        weachatr
PE	  360000-  374000	Deferred        weaauthr
PE	  380000-  393000	Deferred        weanewsr
PE	  3a0000-  3bb000	Deferred        weacityr
PE	  3c0000-  3d6000	Deferred        weauploadr
PE	  3e0000-  3f3000	Deferred        wearasr
PE	  400000-  fc6000	Export          tp.icd
PE	  fd0000-  fe2000	Deferred        weamailr
PE	  ff0000- 1020000	Deferred        dplayerx
PE	10000000-10015000	Deferred        weavoter
PE	18000000-1804d000	Deferred        qmixer
ELF	75e95000-75fd4000	Deferred        oleaut32<elf>
  \-PE	75eb0000-75fd4000	\               oleaut32
ELF	7a084000-7b800000	Deferred        swrast_dri.so
ELF	7b800000-7ba45000	Deferred        kernel32<elf>
  \-PE	7b810000-7ba45000	\               kernel32
ELF	7bc00000-7bcd9000	Deferred        ntdll<elf>
  \-PE	7bc10000-7bcd9000	\               ntdll
ELF	7bf00000-7bf04000	Deferred        <wine-loader>
ELF	7c52d000-7c622000	Deferred        libasound.so.2
ELF	7da78000-7da93000	Deferred        libgcc_s.so.1
ELF	7db7c000-7db8a000	Deferred        libdrm.so.2
ELF	7db8a000-7dba3000	Deferred        libxcb-glx.so.0
ELF	7dbc3000-7dbdf000	Deferred        rasapi32<elf>
  \-PE	7dbd0000-7dbdf000	\               rasapi32
ELF	7dc9f000-7dccf000	Deferred        winealsa<elf>
  \-PE	7dcb0000-7dccf000	\               winealsa
ELF	7dd34000-7dd92000	Deferred        libgl.so.1
ELF	7dd98000-7ddba000	Deferred        mmdevapi<elf>
  \-PE	7dda0000-7ddba000	\               mmdevapi
ELF	7ddea000-7de21000	Deferred        uxtheme<elf>
  \-PE	7ddf0000-7de21000	\               uxtheme
ELF	7de21000-7de27000	Deferred        libxfixes.so.3
ELF	7de27000-7de32000	Deferred        libxcursor.so.1
ELF	7de32000-7de42000	Deferred        libxi.so.6
ELF	7de42000-7de4d000	Deferred        libxrandr.so.2
ELF	7de4d000-7de57000	Deferred        libxrender.so.1
ELF	7de57000-7de79000	Deferred        libxcb.so.1
ELF	7de79000-7de7f000	Deferred        libuuid.so.1
ELF	7de7f000-7de99000	Deferred        libice.so.6
ELF	7de99000-7dfd0000	Deferred        libx11.so.6
ELF	7dfd0000-7dfe2000	Deferred        libxext.so.6
ELF	7dfe2000-7dfeb000	Deferred        libsm.so.6
ELF	7dff1000-7dffa000	Deferred        librt.so.1
ELF	7dffa000-7e011000	Deferred        libglapi.so.0
ELF	7e013000-7e0a9000	Deferred        winex11<elf>
  \-PE	7e020000-7e0a9000	\               winex11
ELF	7e145000-7e16e000	Deferred        libexpat.so.1
ELF	7e16e000-7e1a7000	Deferred        libfontconfig.so.1
ELF	7e1a7000-7e1b7000	Deferred        libbz2.so.1.0
ELF	7e1b7000-7e1ce000	Deferred        libz.so.1
ELF	7e1ce000-7e26b000	Deferred        libfreetype.so.6
ELF	7e26d000-7e270000	Deferred        libx11-xcb.so.1
ELF	7e270000-7e274000	Deferred        libxdamage.so.1
ELF	7e274000-7e27a000	Deferred        libxxf86vm.so.1
ELF	7e27a000-7e281000	Deferred        libxdmcp.so.6
ELF	7e293000-7e2de000	Deferred        dsound<elf>
  \-PE	7e2a0000-7e2de000	\               dsound
ELF	7e2de000-7e303000	Deferred        imm32<elf>
  \-PE	7e2e0000-7e303000	\               imm32
ELF	7e303000-7e40e000	Deferred        comctl32<elf>
  \-PE	7e310000-7e40e000	\               comctl32
ELF	7e40e000-7e459000	Deferred        dinput<elf>
  \-PE	7e420000-7e459000	\               dinput
ELF	7e459000-7e484000	Deferred        msacm32<elf>
  \-PE	7e460000-7e484000	\               msacm32
ELF	7e484000-7e509000	Deferred        rpcrt4<elf>
  \-PE	7e490000-7e509000	\               rpcrt4
ELF	7e509000-7e64c000	Deferred        ole32<elf>
  \-PE	7e520000-7e64c000	\               ole32
ELF	7e64c000-7e703000	Deferred        winmm<elf>
  \-PE	7e650000-7e703000	\               winmm
ELF	7e703000-7e80c000	Deferred        opengl32<elf>
  \-PE	7e720000-7e80c000	\               opengl32
ELF	7e80c000-7e94d000	Deferred        wined3d<elf>
  \-PE	7e820000-7e94d000	\               wined3d
ELF	7e94d000-7e9c4000	Deferred        ddraw<elf>
  \-PE	7e950000-7e9c4000	\               ddraw
ELF	7e9c4000-7e9ea000	Deferred        iphlpapi<elf>
  \-PE	7e9d0000-7e9ea000	\               iphlpapi
ELF	7e9ea000-7ea20000	Deferred        ws2_32<elf>
  \-PE	7e9f0000-7ea20000	\               ws2_32
ELF	7ea20000-7ea3c000	Deferred        wsock32<elf>
  \-PE	7ea30000-7ea3c000	\               wsock32
ELF	7ea3c000-7ea56000	Deferred        version<elf>
  \-PE	7ea40000-7ea56000	\               version
ELF	7ea56000-7eb72000	Deferred        gdi32<elf>
  \-PE	7ea60000-7eb72000	\               gdi32
ELF	7eb72000-7ecd3000	Deferred        user32<elf>
  \-PE	7eb80000-7ecd3000	\               user32
ELF	7ecd3000-7ed44000	Deferred        advapi32<elf>
  \-PE	7ece0000-7ed44000	\               advapi32
ELF	7ed44000-7ed88000	Deferred        usp10<elf>
  \-PE	7ed50000-7ed88000	\               usp10
ELF	7ed88000-7ed95000	Deferred        libnss_files.so.2
ELF	7ef95000-7efd8000	Deferred        libm.so.6
ELF	f7413000-f7417000	Deferred        libxau.so.6
ELF	f7421000-f7426000	Deferred        libdl.so.2
ELF	f744e000-f75ff000	Deferred        libc.so.6
ELF	f75ff000-f761a000	Deferred        libpthread.so.0
ELF	f761a000-f775d000	Dwarf           libwine.so.1
ELF	f775e000-f7780000	Deferred        ld-linux.so.2
ELF	f7780000-f7781000	Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 TP.EXE
	00000009    0
0000000e services.exe
	00000028    0
	00000027    0
	0000001d    0
	00000015    0
	00000010    0
	0000000f    0
00000012 winedevice.exe
	00000019    0
	00000014    0
	00000013    0
0000001a plugplay.exe
	0000001f    0
	0000001c    0
	0000001b    0
00000020 explorer.exe
	00000021    0
00000024 winedevice.exe
	0000002a    0
	00000026    0
	00000025    0
0000002d (D) C:\Program Files\Bullfrog\Theme Park World\TP.icd
	0000003b    0
	0000003a    0
	00000039    0
	00000038   -1
	00000037    0
	00000036   -1
	00000035   15
	00000034   15
	00000033    0
	00000031    0
	00000030    0
	0000002f    0
	0000002e    0 <==
Here is the same thing but with the FLOSS ATI drivers installed.
Note that I had to end the process myself because the screen was all black. However, judging by the audio, the game seemed to run pretty well.

Code: Select all

fixme:win:EnumDisplayDevicesW ((null),0,0x33f228,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x33f4f8,0x00000000), stub!
fixme:ddraw:ddraw7_Initialize Ignoring guid {00000000-0000-0000-0000-000000000000}.
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to 16
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:d3d:state_subpixelx Render state WINED3D_RS_SUBPIXELX not implemented yet.
fixme:d3d_draw:draw_primitive Using software emulation because manual fog coordinates are provided.
err:ole:CoGetClassObject class {92fa2c24-253c-11d2-90fb-006008a1f441} not registered
err:ole:CoGetClassObject no class object {92fa2c24-253c-11d2-90fb-006008a1f441} could be created for context 0x1
err:ole:CoGetClassObject class {4ff53b81-1ce0-11d3-aab8-00a0c95949d5} not registered
err:ole:CoGetClassObject no class object {4ff53b81-1ce0-11d3-aab8-00a0c95949d5} could be created for context 0x1
fixme:win:EnumDisplayDevicesW ((null),0,0x33f5a8,0x00000000), stub!
fixme:ras:RasEnumEntriesA ((nil),(null),0x33f9f8,0x33f8f0,0x33f8e8),stub!
fixme:ras:RasEnumEntriesA ((nil),(null),0x38f1100,0x33f8f0,0x33f8e8),stub!
fixme:d3d_surface:wined3d_surface_flip Ignoring flags 0x1.
fixme:d3d_surface:surface_cpu_blt Filter WINED3D_TEXF_LINEAR not supported in software blit.
[...]
fixme:d3d_surface:surface_cpu_blt Filter WINED3D_TEXF_LINEAR not supported in software blit.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
[...]
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_buffer_preload Too many declaration changes or converting dynamic buffer, stopping converting
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
[...]
fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet.
As usual, running the game using the following command
WINEDEBUG=+tid,+relay,+seh,+services,+winedevice,+ntoskrnl wine TP.EXE >>log.txt 2>&1
makes the game runs very slow (at an unplayable state) but actually fixes al the troubles I've encountered with the game (black screen when using FLOSS ATI drivers, crashing when loading a park).

I could send you the log if wanted but it weight 2,4Gb.
EDIT: Actually, once compressed using xz -9 it roughly weight 12Mb. Here's a link to the file if it's of any help.
http://ompldr.org/vaGhoeA/log.txt.xz

Locked