Diablo II - Lord of Destruction Expansion

Bjorn bjorn at sparta.lu.se.NOSPAM
Mon Jul 30 11:56:42 CDT 2001


Lionel Ulmer wrote:
> Well, that would not be the first time that there are stupid things in the
> Wine code (and well, I checked and Wine does NOT warn if it does not find a
> matching depth (at least this is what I found out :-) )).
> 
> Stupid things are here for newbies to fix them (hint, hint :-) ).

Actually I just checked out the wine cvs so maybe I'll have a look :)

> Anyway, could you send me a +ddraw,+x11drv log ?

Okay...

trace:x11drv:X11DRV_XF86VM_Init XVidMode modes: count=3
trace:x11drv:convert_modeinfo  width=1280, height=1024, refresh=85
trace:x11drv:convert_modeinfo  width=800, height=600, refresh=85
trace:x11drv:convert_modeinfo  width=640, height=480, refresh=85
trace:x11drv:X11DRV_XF86VM_Init Enabling XVidMode
trace:x11drv:X11DRV_XF86DGA2_Init DGA modes: count=25
trace:x11drv:convert_mode  width=1280, height=1024, bpp=8, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=8, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=8, refresh=85
trace:x11drv:convert_mode  width=1280, height=1024, bpp=15, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=15, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=15, refresh=85
trace:x11drv:convert_mode  width=1280, height=1024, bpp=15, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=15, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=15, refresh=85
trace:x11drv:convert_mode  width=1280, height=1024, bpp=16, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=16, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=16, refresh=85
trace:x11drv:convert_mode  width=1280, height=1024, bpp=16, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=16, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=16, refresh=85
trace:x11drv:convert_mode  width=1280, height=1024, bpp=32, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=32, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=32, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=32, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=32, refresh=85
trace:x11drv:convert_mode  width=1280, height=1024, bpp=32, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=32, refresh=85
trace:x11drv:convert_mode  width=800, height=600, bpp=32, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=32, refresh=85
trace:x11drv:convert_mode  width=640, height=480, bpp=32, refresh=85
trace:x11drv:X11DRV_XF86DGA2_Init Enabling DGA

[snip for brevity - here comes a couple of hundred lines of CreateBitmap
calls]

trace:x11drv:X11DRV_DCICommand (20,(12,1162247412,639),(nil))
trace:x11drv:X11DRV_DCICommand (20,(13,1792,639),0x404a0130)
trace:x11drv:X11DRV_DCICommand (20,(11,1792,639),0x404a0130)
trace:x11drv:X11DRV_DCICommand (20,(10,1792,639),0x404a0130)
trace:ddraw:initialize enabling DirectDraw HAL
trace:ddraw:DDRAW_Create ((null),0x6f8f1ba4,(nil))
trace:ddraw:DDRAW_FindDriver ((null))
trace:ddraw:HAL_DirectDraw_Create 
trace:ddraw:HAL_DirectDraw_Construct (0x403d8378)
trace:ddraw:User_DirectDraw_Construct (0x403d8378,0)
trace:ddraw:Main_DirectDraw_QueryInterface
(0x403d8378)->({6c14db80-a733-11ce-a521-0020af0be560},0x6f8f1ba4)
trace:ddraw:Main_DirectDraw_AddRef (0x403d8378)->() incrementing from 1.
trace:ddraw:Main_DirectDraw_Release (0x403d8378)->() decrementing from
2.
trace:x11drv:X11DRV_CreateWindow hwnd 13c cs 0,0 640x480
trace:x11drv:X11DRV_SetWindowText text_cp = 0
trace:x11drv:X11DRV_CreateWindow win 13c window 0,0,640,480 client
0,0,640,480 whole 0,0,640,480 X client 0,0,640,480 xwin 2000004/2000005
trace:x11drv:X11DRV_ShowWindow hwnd=013c, cmd=1
trace:x11drv:X11DRV_SetWindowPos hwnd 013c, swp (0,0)-(0,0) flags
00000063
trace:x11drv:X11DRV_SetWindowPos        current (0,0)-(640,480), style
84080000
warn:x11drv:SWP_DoOwnedPopups (013c) hInsertAfter = 0000
trace:x11drv:X11DRV_sync_whole_window_position setting win 2000004 pos
0,0,640x480 after 405e5e14 changes=40
trace:x11drv:X11DRV_SetWindowPos mapping win 13c
trace:x11drv:X11DRV_SetWindowPos        status flags = 1863
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel
(0x403d8378)->(0000013c,00000011)
 - DDSCL_FULLSCREEN DDSCL_EXCLUSIVE 
trace:x11drv:X11DRV_ShowWindow hwnd=013c, cmd=5
trace:x11drv:X11DRV_SetWindowPos hwnd 013c, swp (0,0)-(0,0) flags
00000053
trace:x11drv:X11DRV_SetWindowPos        current (0,0)-(640,480), style
94080000
warn:x11drv:SWP_DoOwnedPopups (013c) hInsertAfter = 0000
trace:x11drv:X11DRV_sync_whole_window_position setting win 2000004 pos
0,0,640x480 after 0 changes=40
trace:x11drv:X11DRV_SetWindowPos        status flags = 1803
trace:ddraw:Main_DirectDraw_CreatePalette
(0x403d8378)->(00000004,0x6f8f1788,0x6f8f1bc4,(nil))

[here it just hangs, no graphics visible, but the mouse is hidden when
moved underneath the upper 640x480 part of the screen]

For reference, this is the same log but with DGA disabled:

trace:x11drv:X11DRV_XF86VM_Init XVidMode modes: count=3
trace:x11drv:convert_modeinfo  width=1280, height=1024, refresh=85
trace:x11drv:convert_modeinfo  width=800, height=600, refresh=85
trace:x11drv:convert_modeinfo  width=640, height=480, refresh=85
trace:x11drv:X11DRV_XF86VM_Init Enabling XVidMode

[same snip of CreateBitmap]

trace:x11drv:X11DRV_DCICommand (20,(12,1128692980,639),(nil))
trace:x11drv:X11DRV_DCICommand (20,(13,1792,639),0x404a0130)
trace:x11drv:X11DRV_DCICommand (20,(11,1792,639),0x404a0130)
trace:x11drv:X11DRV_DCICommand (20,(10,1792,639),0x404a0130)
trace:x11drv:X11DRV_XF86VM_GetCurrentMode Querying XVidMode current mode
trace:x11drv:convert_modeline  width=1280, height=1024, refresh=85
trace:x11drv:X11DRV_XF86VM_GetCurrentMode mode=0
trace:ddraw:initialize enabling DirectDraw HAL
trace:ddraw:DDRAW_Create ((null),0x6f8f1ba4,(nil))
trace:ddraw:DDRAW_FindDriver ((null))
trace:ddraw:HAL_DirectDraw_Create 
trace:ddraw:HAL_DirectDraw_Construct (0x403d7fc4)
trace:ddraw:User_DirectDraw_Construct (0x403d7fc4,0)
trace:ddraw:Main_DirectDraw_QueryInterface
(0x403d7fc4)->({6c14db80-a733-11ce-a5
21-0020af0be560},0x6f8f1ba4)
trace:ddraw:Main_DirectDraw_AddRef (0x403d7fc4)->() incrementing from 1.
trace:ddraw:Main_DirectDraw_Release (0x403d7fc4)->() decrementing from
2.
trace:x11drv:X11DRV_CreateWindow hwnd 13c cs 0,0 640x480
trace:x11drv:X11DRV_SetWindowText text_cp = 0
trace:x11drv:X11DRV_CreateWindow win 13c window 0,0,640,480 client
0,0,640,480 w
hole 0,0,640,480 X client 0,0,640,480 xwin 2000004/2000005
trace:x11drv:X11DRV_ShowWindow hwnd=013c, cmd=1
trace:x11drv:X11DRV_SetWindowPos hwnd 013c, swp (0,0)-(0,0) flags
00000063
trace:x11drv:X11DRV_SetWindowPos        current (0,0)-(640,480), style
84080000
warn:x11drv:SWP_DoOwnedPopups (013c) hInsertAfter = 0000
trace:x11drv:X11DRV_sync_whole_window_position setting win 2000004 pos
0,0,640x4
80 after 405e5e14 changes=40
trace:x11drv:X11DRV_SetWindowPos mapping win 13c
trace:x11drv:X11DRV_SetWindowPos        status flags = 1863
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel
(0x403d7fc4)->(0000013c,00000011
)
 - DDSCL_FULLSCREEN DDSCL_EXCLUSIVE 
trace:x11drv:X11DRV_ShowWindow hwnd=013c, cmd=5
trace:x11drv:X11DRV_SetWindowPos hwnd 013c, swp (0,0)-(0,0) flags
00000053
trace:x11drv:X11DRV_SetWindowPos        current (0,0)-(640,480), style
94080000
warn:x11drv:SWP_DoOwnedPopups (013c) hInsertAfter = 0000
trace:x11drv:X11DRV_sync_whole_window_position setting win 2000004 pos
0,0,640x4
80 after 0 changes=40
trace:x11drv:X11DRV_SetWindowPos        status flags = 1803
trace:ddraw:Main_DirectDraw_CreatePalette
(0x403d7fc4)->(00000004,0x6f8f1788,0x6
f8f1bc4,(nil))

[note: this is where the DGA version hung]

fixme:x11drv:X11DRV_DDHAL_CreatePalette stub
trace:ddraw:HAL_DirectDrawPalette_SetEntries
(0x403d82e4)->SetEntries(00000000,0
,256,0x6f8f1788)
trace:ddraw:Main_DirectDrawPalette_SetEntries
(0x403d82e4)->SetEntries(00000000,
0,256,0x6f8f1788)
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel
(0x403d7fc4)->(0000013c,00000011
)
 - DDSCL_FULLSCREEN DDSCL_EXCLUSIVE 
trace:ddraw:HAL_DirectDraw_SetDisplayMode (0x403d7fc4)->(640x480x8,0
Hz,00000000
)
trace:ddraw:User_DirectDraw_SetDisplayMode (0x403d7fc4)->(640x480x8,0
Hz,0000000
0)
trace:ddraw:Main_DirectDraw_SetDisplayMode
(0x403d7fc4)->SetDisplayMode(640,480)
trace:x11drv:X11DRV_SetWindowPos hwnd 013c, swp (0,0)-(640,480) flags
00000014
trace:x11drv:X11DRV_SetWindowPos        current (0,0)-(640,480), style
94080000
trace:x11drv:X11DRV_SetWindowPos        status flags = 1807
trace:ddraw:choose_mode using mode 2
trace:ddraw:Main_DirectDraw_CreateSurface
(0x403d7fc4)->(0x405e5ebc,0x405e5e88,(
nil))
trace:ddraw:Main_DirectDraw_CreateSurface Requested Caps: 0x4218
trace:ddraw:HAL_DirectDrawSurface_Construct
(0x403d8b68,0x403d7fc4,0x405e5dc0)
trace:ddraw:User_DirectDrawSurface_Construct
(0x403d8b68,0x403d7fc4,0x405e5dc0)
trace:ddraw:DIB_DirectDrawSurface_Construct
(0x403d8b68)->(0x403d7fc4,0x405e5dc0
)
trace:ddraw:DIB_DirectDrawSurface_Construct (640x480, pitch=640)
trace:x11drv:X11DRV_CreateBitmap (000009fc) 640x480 24 bpp
trace:ddraw:create_dib DIBSection at : 0x433d0000
trace:x11drv:X11DRV_CreateWindow hwnd 210 cs 0,0 640x480
trace:x11drv:X11DRV_CreateWindow win 210 window 0,0,640,480 client
0,0,640,480 w
hole 0,0,640,480 X client 0,0,640,480 xwin 2200004/2200005
trace:x11drv:X11DRV_SetWindowPos hwnd 0210, swp (0,0)-(0,0) flags
0000255b
trace:x11drv:X11DRV_SetWindowPos        current (0,0)-(640,480), style
84000000
warn:x11drv:SWP_DoOwnedPopups (0210) hInsertAfter = 0000
trace:x11drv:X11DRV_sync_whole_window_position setting win 2200004 pos
0,0,640x4

[etc etc, the game goes fine from here]

Hope this helps

BTW I tried with the wine shapshot of 7/27 with the same results.

Bjorn



More information about the wine-users mailing list