http://bugs.winehq.org/show_bug.cgi?id=12929
--- Comment #45 from Luis Salom lsalom+winehqbugzilla@gmail.com 2008-06-11 22:11:17 --- I finally had some time to do some more debugging and I was able to get Oblivion running.
I essentially started from scratch.
I renamed my ~/.wine to ~/.wine.orig.
I then again followed the instructions on: http://www.uesp.net/wiki/Oblivion:Linux
In winecfg -> libararies I explicitly set d3dx9_27 to "native" I also renamed the Video folder to Video.orig in the new Oblivion installation. (I think there is definitely a bink video issue as it would not start without this step) When starting the game for the first time, I set the "Video Preset Quality" option to "Low".
The last part is the only real difference as I had selected the default of "medium" earlier. Using the "tdt" console command in Oblivion I seem to be getting 35 - 65 fps. I was able to create a character and play part of the initial sewers.
Feeling particularly good about this, I set the texture to "large" in the in-game video setting and restarted without issue. Going for gold. I restarted the game, set the "Video Preset Quality" to medium and loaded my sewer save game and it worked. Exitting and restarting keeping the quality at medium and starting a "new" game, it dies a horrible death (so using low setting may be a workaround to at least get started) as I am guessing something in the character creation process borks the ati driver and/or wine. The error I got from the crash is below:
err:d3d:IWineD3DImpl_IsPixelFormatCompatibleWithRenderFmt Unable to check compatibility for Format=WINED3DFMT_A32B32G32R32F err:d3d:getColorBits Unsupported format: WINED3DFMT_A32B32G32R32F err:d3d:IWineD3DImpl_IsPixelFormatCompatibleWithRenderFmt Unable to check compatibility for Format=WINED3DFMT_A32B32G32R32F err:d3d:getColorBits Unsupported format: WINED3DFMT_A32B32G32R32F err:d3d:IWineD3DImpl_IsPixelFormatCompatibleWithRenderFmt Unable to check compatibility for Format=WINED3DFMT_A32B32G32R32F err:d3d:WineD3D_ChoosePixelFormat Can't find a suitable iPixelFormat fixme:dinput:SysMouseAImpl_Acquire Clipping cursor to (0,0)-(1024,768) fixme:quartz:MediaPosition_put_CurrentPosition (0x11f827a8)->(0.000000) stub! fixme:quartz:AsyncReader_QueryInterface No interface for {56a868b3-0ad4-11ce-b03a-0020af0ba770}! fixme:quartz:Parser_QueryInterface No interface for {56a868b3-0ad4-11ce-b03a-0020af0ba770}! fixme:quartz:FillBuffer o_Ox80040227 err:quartz:Parser_Destroy pinref should be null, is 1, destroying anyway err:quartz:Parser_Destroy pinref should be null, is 1, destroying anyway fixme:quartz:MediaPosition_put_CurrentPosition (0x11f827a8)->(0.000000) stub! fixme:quartz:AsyncReader_QueryInterface No interface for {56a868b3-0ad4-11ce-b03a-0020af0ba770}! fixme:quartz:Parser_QueryInterface No interface for {56a868b3-0ad4-11ce-b03a-0020af0ba770}! err:d3d:WineD3D_ChoosePixelFormat Can't find a suitable iPixelFormat fixme:quartz:FillBuffer o_Ox80040227 fixme:d3d:state_vertexblend Vertex blending enabled, but not supported by hardware fixme:d3d:state_zfunc D3DCMP_NOTEQUAL and D3DCMP_EQUAL do not work correctly yet wine: Unhandled page fault on read access to 0x7dd456d0 at address 0x7d6730bd (thread 001c), starting debugger... Unhandled exception: page fault on read access to 0x7dd456d0 in 32-bit code (0x7d6730bd). Register dump: CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b EIP:7d6730bd ESP:0033cce8 EBP:0033cd44 EFLAGS:00010216( - 00 -RIAP1) EAX:0000ff00 EBX:68da7298 ECX:001fe000 EDX:7db476c0 ESI:68da720c EDI:7c202598 Stack dump: 0x0033cce8: 7d694ed9 0000ff00 7db476c0 0033cd14 0x0033ccf8: 7d6cbee9 68daa3e8 00000003 00000000 0x0033cd08: 00000006 00000000 68daa3e8 0033cd44 0x0033cd18: 7d69acf5 7db7d368 68daa3e8 68daa3b0 0x0033cd28: 00000000 00000000 00000000 0000ff00 0x0033cd38: 0033cdf8 7c200770 68da720c 0033ce34 Backtrace: =>1 0x7d6730bd in fglrx_dri.so (+0x9c00bd) (0x0033cd44) 2 0x7d692f3c in fglrx_dri.so (+0x9dff3c) (0x0033ce34) 3 0x7d67d245 in fglrx_dri.so (+0x9ca245) (0x0033d1e4) 4 0x7d657e00 in fglrx_dri.so (+0x9a4e00) (0x0033d214) 5 0x7d662946 in fglrx_dri.so (+0x9af946) (0x0033d244) 6 0x7d6622b6 in fglrx_dri.so (+0x9af2b6) (0x0033d264) 7 0x7d663c97 in fglrx_dri.so (+0x9b0c97) (0x0033d294) 8 0x7d633271 in fglrx_dri.so (+0x980271) (0x0033e024) 9 0x7d5423fe in fglrx_dri.so (+0x88f3fe) (0x0033e264) 10 0x7d61eb91 in fglrx_dri.so (+0x96bb91) (0x0033e614) 11 0x7d61f54d in fglrx_dri.so (+0x96c54d) (0x0033e644) 12 0x7cea7024 in fglrx_dri.so (+0x1f4024) (0x0033e984) 13 0x7d3f7822 in fglrx_dri.so (+0x744822) (0x0033ee14) 14 0x7d3fd5b0 in fglrx_dri.so (+0x74a5b0) (0x0033ee34) 15 0x7ce698c1 in fglrx_dri.so (+0x1b68c1) (0x0033ee54) 16 0x7d0e2407 in fglrx_dri.so (+0x42f407) (0x0033ee64) 17 0x7ddc3055 in wined3d (+0x63055) (0x0033ef84) 18 0x7dddf00b in wined3d (+0x7f00b) (0x0033efb4) 19 0x7dd8358c ActivateContext+0x4fc() in wined3d (0x0033f034) 20 0x7ddb80cb drawPrimitive+0x17b() in wined3d (0x0033f344) 21 0x7dd8fdab in wined3d (+0x2fdab) (0x0033f3b4) 22 0x7de6ac5e in d3d9 (+0xac5e) (0x0033f3e4) 23 0x00767464 in oblivion (+0x367464) (0x00000127) 24 0x00000000 (0x00000000) 0x7d6730bd: movl 0x10(%edx,%ecx,1),%eax Modules: Module Address Debug info Name (109 modules) PE 400000- baf000 Export oblivion PE bb0000- dff000 Deferred d3dx9_27 PE 18000000-18068000 Deferred binkw32 ELF 6a05e000-6a100000 Deferred oleaut32<elf> -PE 6a070000-6a100000 \ oleaut32 ELF 6aebd000-6af29000 Deferred quartz<elf> -PE 6aed0000-6af29000 \ quartz ELF 6b4c3000-6b500000 Deferred winemp3<elf> -PE 6b4d0000-6b500000 \ winemp3 ELF 7b800000-7b92d000 Deferred kernel32<elf> -PE 7b820000-7b92d000 \ kernel32 ELF 7b939000-7b957000 Deferred devenum<elf> -PE 7b940000-7b957000 \ devenum ELF 7b957000-7b97f000 Deferred msvfw32<elf> -PE 7b960000-7b97f000 \ msvfw32 ELF 7bc00000-7bca4000 Deferred ntdll<elf> -PE 7bc10000-7bca4000 \ ntdll ELF 7bca9000-7bcbd000 Deferred avicap32<elf> -PE 7bcb0000-7bcbd000 \ avicap32 ELF 7bf00000-7bf03000 Deferred <wine-loader> ELF 7ccaa000-7ccb3000 Deferred librt.so.1 ELF 7ccb3000-7dcbe000 Export fglrx_dri.so ELF 7dcbe000-7dcc9000 Deferred libgcc_s.so.1 ELF 7dcc9000-7dd43000 Deferred libgl.so.1 ELF 7dd51000-7de54000 Export wined3d<elf> -PE 7dd60000-7de54000 \ wined3d ELF 7de54000-7de84000 Export d3d9<elf> -PE 7de60000-7de84000 \ d3d9 ELF 7e215000-7e229000 Deferred midimap<elf> -PE 7e220000-7e229000 \ midimap ELF 7e229000-7e24f000 Deferred msacm32<elf> -PE 7e230000-7e24f000 \ msacm32 ELF 7e24f000-7e266000 Deferred msacm32<elf> -PE 7e250000-7e266000 \ msacm32 ELF 7e266000-7e329000 Deferred libasound.so.2 ELF 7e329000-7e35f000 Deferred winealsa<elf> -PE 7e330000-7e35f000 \ winealsa ELF 7e35f000-7e392000 Deferred uxtheme<elf> -PE 7e370000-7e392000 \ uxtheme ELF 7e392000-7e39b000 Deferred libxcursor.so.1 ELF 7e39b000-7e3a0000 Deferred libxfixes.so.3 ELF 7e3a0000-7e3a3000 Deferred libxcomposite.so.1 ELF 7e3a3000-7e3a9000 Deferred libxrandr.so.2 ELF 7e3a9000-7e3b1000 Deferred libxrender.so.1 ELF 7e3b1000-7e3b4000 Deferred libxinerama.so.1 ELF 7e3b4000-7e3d4000 Deferred imm32<elf> -PE 7e3c0000-7e3d4000 \ imm32 ELF 7e3d4000-7e3d9000 Deferred libxdmcp.so.6 ELF 7e3d9000-7e3f1000 Deferred libxcb.so.1 ELF 7e3f1000-7e4d8000 Deferred libx11.so.6 ELF 7e4d8000-7e4e6000 Deferred libxext.so.6 ELF 7e4e6000-7e4fe000 Deferred libice.so.6 ELF 7e4fe000-7e506000 Deferred libsm.so.6 ELF 7e514000-7e5ab000 Deferred winex11<elf> -PE 7e520000-7e5ab000 \ winex11 ELF 7e5f9000-7e61a000 Deferred libexpat.so.1 ELF 7e61a000-7e644000 Deferred libfontconfig.so.1 ELF 7e645000-7e64a000 Deferred libxxf86vm.so.1 ELF 7e652000-7e667000 Deferred libz.so.1 ELF 7e667000-7e6d7000 Deferred libfreetype.so.6 ELF 7e6d7000-7e703000 Deferred ws2_32<elf> -PE 7e6e0000-7e703000 \ ws2_32 ELF 7e703000-7e71d000 Deferred wsock32<elf> -PE 7e710000-7e71d000 \ wsock32 ELF 7e71d000-7e787000 Deferred msvcrt<elf> -PE 7e730000-7e787000 \ msvcrt ELF 7e787000-7e79b000 Deferred lz32<elf> -PE 7e790000-7e79b000 \ lz32 ELF 7e79b000-7e7b4000 Deferred version<elf> -PE 7e7a0000-7e7b4000 \ version ELF 7e7b4000-7e80d000 Deferred shlwapi<elf> -PE 7e7c0000-7e80d000 \ shlwapi ELF 7e80d000-7e91f000 Deferred shell32<elf> -PE 7e820000-7e91f000 \ shell32 ELF 7e91f000-7e969000 Deferred dsound<elf> -PE 7e930000-7e969000 \ dsound ELF 7e969000-7e9fb000 Deferred winmm<elf> -PE 7e970000-7e9fb000 \ winmm ELF 7e9fb000-7ea0e000 Deferred libresolv.so.2 ELF 7ea0e000-7ea2c000 Deferred iphlpapi<elf> -PE 7ea10000-7ea2c000 \ iphlpapi ELF 7ea2c000-7ea8d000 Deferred rpcrt4<elf> -PE 7ea40000-7ea8d000 \ rpcrt4 ELF 7ea8d000-7eb31000 Deferred ole32<elf> -PE 7eaa0000-7eb31000 \ ole32 ELF 7eb31000-7eb68000 Deferred dinput<elf> -PE 7eb40000-7eb68000 \ dinput ELF 7eb68000-7eb80000 Deferred dinput8<elf> -PE 7eb70000-7eb80000 \ dinput8 ELF 7eb80000-7ebd2000 Deferred advapi32<elf> -PE 7eb90000-7ebd2000 \ advapi32 ELF 7ebd2000-7ec6d000 Deferred gdi32<elf> -PE 7ebe0000-7ec6d000 \ gdi32 ELF 7ec6d000-7edb4000 Deferred user32<elf> -PE 7ec90000-7edb4000 \ user32 ELF 7edb4000-7ee73000 Deferred comctl32<elf> -PE 7edc0000-7ee73000 \ comctl32 ELF 7ee73000-7ee7e000 Deferred libnss_files.so.2 ELF 7ee7e000-7ee96000 Deferred libnsl.so.1 ELF 7ee96000-7ee9f000 Deferred libnss_compat.so.2 ELF 7eea1000-7eea3000 Deferred libxcb-xlib.so.0 ELF 7efcd000-7eff2000 Deferred libm.so.6 ELF 7eff3000-7eff6000 Deferred libxau.so.6 ELF 7eff6000-7f000000 Deferred libnss_nis.so.2 ELF b7ca6000-b7caa000 Deferred libdl.so.2 ELF b7caa000-b7df9000 Deferred libc.so.6 ELF b7dfa000-b7e12000 Deferred libpthread.so.0 ELF b7e20000-b7f56000 Deferred libwine.so.1 ELF b7f58000-b7f74000 Deferred ld-linux.so.2 Threads: process tid prio (all id:s are in hex) 0000000c 00000014 0 00000013 0 00000012 0 0000000e 0 0000000d 0 0000000f 00000016 0 00000015 0 00000011 0 00000010 0 00000018 00000019 0 0000001b (D) C:\Program Files\Bethesda Softworks\Oblivion\Oblivion.exe 00000026 0 00000022 0 00000021 0 0000001f 15 0000001e 15 0000001d 0 0000001c 0 <== Backtrace: =>1 0x7d6730bd in fglrx_dri.so (+0x9c00bd) (0x0033cd44) 2 0x7d692f3c in fglrx_dri.so (+0x9dff3c) (0x0033ce34) 3 0x7d67d245 in fglrx_dri.so (+0x9ca245) (0x0033d1e4) 4 0x7d657e00 in fglrx_dri.so (+0x9a4e00) (0x0033d214) 5 0x7d662946 in fglrx_dri.so (+0x9af946) (0x0033d244) 6 0x7d6622b6 in fglrx_dri.so (+0x9af2b6) (0x0033d264) 7 0x7d663c97 in fglrx_dri.so (+0x9b0c97) (0x0033d294) 8 0x7d633271 in fglrx_dri.so (+0x980271) (0x0033e024) 9 0x7d5423fe in fglrx_dri.so (+0x88f3fe) (0x0033e264) 10 0x7d61eb91 in fglrx_dri.so (+0x96bb91) (0x0033e614) 11 0x7d61f54d in fglrx_dri.so (+0x96c54d) (0x0033e644) 12 0x7cea7024 in fglrx_dri.so (+0x1f4024) (0x0033e984) 13 0x7d3f7822 in fglrx_dri.so (+0x744822) (0x0033ee14) 14 0x7d3fd5b0 in fglrx_dri.so (+0x74a5b0) (0x0033ee34) 15 0x7ce698c1 in fglrx_dri.so (+0x1b68c1) (0x0033ee54) 16 0x7d0e2407 in fglrx_dri.so (+0x42f407) (0x0033ee64) 17 0x7ddc3055 in wined3d (+0x63055) (0x0033ef84) 18 0x7dddf00b in wined3d (+0x7f00b) (0x0033efb4) 19 0x7dd8358c ActivateContext+0x4fc() in wined3d (0x0033f034) 20 0x7ddb80cb drawPrimitive+0x17b() in wined3d (0x0033f344) 21 0x7dd8fdab in wined3d (+0x2fdab) (0x0033f3b4) 22 0x7de6ac5e in d3d9 (+0xac5e) (0x0033f3e4) 23 0x00767464 in oblivion (+0x367464) (0x00000127) 24 0x00000000 (0x00000000) fixme:winmm:MMDRV_Exit Closing while ll-driver open err:quartz:ACMWrapper_ProcessSampleData Cannot prepare header 5