Open Source Radeon and S3TC?

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
richard1558
Level 1
Level 1
Posts: 5
Joined: Fri Mar 02, 2012 9:52 am

Open Source Radeon and S3TC?

Post by richard1558 »

Hi, I am trying to get Call of Duty 1 and Two Worlds working through wine.

I have searched a lot, and all I could find was that S3TC is not available in the open source driver, and to me it seems that this is why they do not start.

I have tried both games with the fglrx drivers, cod1 works fine, two worlds has graphical issues, which are probably related to the shaders or something like that(?), which is why I want to try the open source driver but I am also curious to see the performance.

Wine doesn't seem to give me any pointers to what is wrong.

wine TwoWorlds.exe:

Code: Select all

fixme:win:EnumDisplayDevicesW ((null),0,0x1b6f808,0x00000000), stub!
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
fixme:dinput:SysMouseAImpl_Acquire Clipping cursor to (0,0)-(1366,768)
fixme:d3d:IWineD3DDeviceImpl_CreateAdditionalSwapChain The app requests more than one back buffer, this can't be supported properly. Please configure the application to use double buffering(=1 back buffer) if possible
fixme:d3d:WineD3D_ChoosePixelFormat Add OpenGL context recreation support to SetDepthStencilSurface
wine CoDMP.exe:

Code: Select all

fixme:win:EnumDisplayDevicesW ((null),0,0x21cf748,0x00000000), stub!
fixme:keyboard:RegisterHotKey ((nil),0,0x00000001,9): stub
fixme:keyboard:UnregisterHotKey ((nil),0): stub
Could anyone give me some pointers?
How could I get S3TC working? (if it is the issue here)
ruinairas
Level 3
Level 3
Posts: 62
Joined: Sun Oct 02, 2011 6:47 pm

Two Worlds

Post by ruinairas »

It appears as though the game is requesting a double backbuffer. Is their any way you change this within the settings? Also have you tried setting wine to use backbuffer instead of FBO in winetricks?
richard1558
Level 1
Level 1
Posts: 5
Joined: Fri Mar 02, 2012 9:52 am

Post by richard1558 »

Thanks for the reply.

I set the orm to backbuffer, but it has the same problem and same output.

I tried TwoWorlds_RADEON.exe which is for radeon compatibility or the likes, same story.
I also tried running TwoWorlds.exe and TwoWorlds_RADEON.exe in safe mode, using the -safemode flag.

I also was searching for any graphics options with which I could make the game only use one backbuffer, but couldn't find a way.

The only graphical options I could find in the registry are as follows:

HKEY_CURRENT_USER/Software/Reality Pump/TwoWorlds/Graphics:

Code: Select all

Name                           	| Type       | Data
--------------------------------|------------|------
CommonGraphicsOptions           | REG_BINARY | 00 00 00 00 65 3B 7F 3F 02 00 00 00 00 00 00 00 0A 00 00 00 00 00 80 3F 00 00 80 3F 04 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
DSettings                       | REG_DWORD  | 2
EnableMultisampleInWindowedMode | REG_DWORD  | 0
ForceCameraAspectX              | REG_DWORD  | 0
ForceCameraAspectY              | REG_DWORD  | 0
FullScreen                      | REG_DWORD  | 1
HDRMode                         | REG_DWORD  | 10
Height                          | REG_DWORD  | 768
HighQualityShadows              | REG_DWORD  | 0
MultisampleType                 | REG_DWORD  | 0
Shadows                         | REG_DWORD  | 1
Width                           | REG_DWORD  | 1366

Though the backbuffer might not be the problem it seems (unless it is only a problem in the open source radeon driver), I have posted the output of the fglrx driver below, which starts although it gives the same backbuffer fixme.

The wine output with fglrx:
(I started the game and exited.)

wine CoDMP.exe:

Code: Select all

richard@debian:~/.wine/drive_c/Program Files/Call of Duty$ wine CoDMP.exe
err:wgl:get_render_type_from_fbconfig Unknown render_type: 0
err:wgl:get_render_type_from_fbconfig Unknown render_type: 0
fixme:win:EnumDisplayDevicesW ((null),0,0x21cf748,0x00000000), stub!
err:wgl:X11DRV_wglGetPixelFormatAttribivARB unexpected RenderType(8)
err:wgl:X11DRV_wglGetPixelFormatAttribivARB unexpected RenderType(8)
fixme:keyboard:RegisterHotKey ((nil),0,0x00000001,9): stub
This sound card's driver does not support direct access
The (slower) DirectSound HEL mode will be used instead.
This sound card's driver does not support direct access
The (slower) DirectSound HEL mode will be used instead.
This sound card's driver does not support direct access
The (slower) DirectSound HEL mode will be used instead.
fixme:keyboard:UnregisterHotKey ((nil),0): stub
wine TwoWorlds.exe:
http://pastebin.com/PvhbrEB9

Both games work, as stated before, though Two Worlds has graphical "glitches" with fglrx (which makes it unplayable).
richard1558
Level 1
Level 1
Posts: 5
Joined: Fri Mar 02, 2012 9:52 am

Post by richard1558 »

Some extra info:

glxinfo | grep render:

Code: Select all

direct rendering: Yes
OpenGL renderer string: Gallium 0.4 on AMD CEDAR
    GL_NV_conditional_render, GL_AMD_draw_buffers_blend,
glxinfo | grep OpenGL:

Code: Select all

OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD CEDAR
OpenGL version string: 2.1 Mesa 7.11.2
OpenGL shading language version string: 1.20
OpenGL extensions:
richard1558
Level 1
Level 1
Posts: 5
Joined: Fri Mar 02, 2012 9:52 am

Post by richard1558 »

Can't seem to find a way to edit my posts, sorry.

I have noticed that mesa 7.11.2 only supports OpenGL 2.1, could it be that I require OpenGL 3.0?

I use Debian SID and currently I am using the binary package for mesa, I'll try building mesa from source to see if OpenGL 3.0 will help me here.
Locked