WineHQ
Bug Tracking Database – Bug 3467

 Bugzilla

 

Last modified: 2014-02-07 13:06:29 UTC  

Capitalism II [ DirectDraw - Missing Surface_Lock ]

Bug 3467 - Capitalism II [ DirectDraw - Missing Surface_Lock ]
Capitalism II [ DirectDraw - Missing Surface_Lock ]
Status: CLOSED FIXED
AppDB: Show Apps affected by this bug
Product: Wine
Classification: Unclassified
Component: d3d
0.9.16.
Other Linux
: P2 normal
: ---
Assigned To: Mr. Bugs
http://appdb.winehq.org/appview.php?v...
: download, patch
: 20451 (view as bug list)
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2005-10-02 11:48 UTC by Magnus Anderson
Modified: 2014-02-07 13:06 UTC (History)
16 users (show)

See Also:
Regression SHA1:
Fixed by SHA1: 7c6ca2077ffef55a69f1605bb819d2595fc802da
Distribution: ---
Staged patchset:


Attachments
warn+ddraw,trace+ddraw (90.70 KB, text/plain)
2006-01-17 14:42 UTC, Magnus Anderson
Details
Wine 0.9.16 (2.73 KB, text/plain)
2006-06-23 13:51 UTC, Magnus Anderson
Details
backtrace of sk2 with wine 1.1.7 (10.63 KB, text/plain)
2008-11-06 03:45 UTC, MPaskuda
Details
change the return value in IDirectDrawSurface7Impl_AddAttachedSurface (823 bytes, patch)
2009-02-02 07:47 UTC, joaopa
Details | Diff
Screenshot of error when attempting to run Capitalism II (1.68 KB, image/png)
2009-07-06 16:31 UTC, Jake Smith
Details
wine 1.1.31, trace from WINEDEBUG="warn+ddraw,trace+ddraw". (11.05 KB, text/plain)
2009-11-01 11:13 UTC, Andrew Jones
Details
Console log with +ddraw,+tid (13.60 KB, text/plain)
2011-09-15 21:53 UTC, Michael Curran
Details
Calls the right forward for AddAttachedSurface (2.69 KB, patch)
2012-05-12 16:34 UTC, joaopa
Details | Diff
patch (6.76 KB, patch)
2013-02-10 06:05 UTC, Henri Verbeet
Details | Diff
Relay log - Capitalism 2 (276.66 KB, application/x-bzip2)
2013-08-28 12:36 UTC, Maik Wagner
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Magnus Anderson 2005-10-02 11:48:42 UTC
When running Capialism II with Wine 20050930 the in game rendering does not work
after the first frame.
The problem is that wine doesn't show the newly rendered graphics in the game
after that.

Please advise on how I can help on debugging and getting more info on fixing
this problem.

Regardless on what I set "WINEDEBUG=" to, all I get is this:

err:quartz:GetClassMediaFile Media class not found
err:quartz:GraphBuilder_AddSourceFilter Load (80004005)
Comment 1 Christian Costa 2005-10-02 11:55:58 UTC
Could you add a log with quartz channel enabled?
Comment 2 Jonathan Ernst 2005-10-02 11:56:36 UTC
Christian do you know something about it ?

@Reporter
If WINEDEBUG=all doesn't change anything, please recompile wine with debugging
support (under gentoo, use debug use flag, on other distributions,  don't know).
Comment 3 Jonathan Ernst 2005-10-02 11:59:32 UTC
@Christian: Argh, you were 30 seconds faster than me !

@Magnus: what Christian means is to run the application using

WINEDEBUG=quartz wine yourapp.exe


again if that doesn't change anything to the output it means that you have no
debugging support enabled in your wine build.
Comment 4 Magnus Anderson 2005-10-02 15:08:12 UTC
After reinstalling wine with the debug parameter in gentoo I encounter another
problem that I didn't get before.

When I try to load a game I get an error saying:
"Error opening file LAYOUT/OBJ33.ICL"

WINEDEBUG="warn+all" gives me this....

warn:file:wine_nt_to_unix_file_name
L"\\??\\C:\\Games\\CapitalismII\\LAYOUT\\OBJ33.ICL" ->
"/home/startail/.wine/dosdevices/c:/Games/CapitalismII/layout/obj33.icl"
required a case-insensitive search
Comment 5 Magnus Anderson 2005-10-02 15:51:04 UTC
After getting it to work again I think I have found the problem to be this

warn:ddraw:Main_DirectDrawSurface_Lock  - unsupported locking flag :
DDLOCK_NOSYSLOCK
Comment 6 Magnus Anderson 2005-10-02 16:13:35 UTC
Some more debugging... I hope this helps more (with
WINEDEBUG="warn+ddraw,trace+ddraw"

trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7cfc0000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0eb48)->Lock((nil),0x6330fc,00000801,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WAIT
DDLOCK_NOSYSLOCK
warn:ddraw:Main_DirectDrawSurface_Lock  - unsupported locking flag :
DDLOCK_NOSYSLOCK
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d290000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_IsLost (0x7fe0e488) is not lost
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0eb48)->Unlock((nil))
trace:ddraw:DIB_DirectDrawSurface_BltFast
(0x7fe0e488)->(371,299,0x7fe0eb48,0x7fc6fcd0,00000010)
trace:ddraw:DIB_DirectDrawSurface_BltFast       trans:DDBLTFAST_WAIT
trace:ddraw:DIB_DirectDrawSurface_BltFast       srcrect: 371x299-419x348
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0eb48)->Lock(0x7fc6fb80,0x7fc6fba0,00000010,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_READONLY
trace:ddraw:Main_DirectDrawSurface_Lock         lprect: 371x299-419x348
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d304fa6
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0e488)->Lock(0x7fc6fb70,0x7fc6fc20,00000020,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WRITEONLY
trace:ddraw:Main_DirectDrawSurface_Lock         lprect: 371x299-419x348
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d304fa6
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0e488)->Lock(0x7fc6fb70,0x7fc6fc20,00000020,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WRITEONLY
trace:ddraw:Main_DirectDrawSurface_Lock         lprect: 371x299-419x348
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_FRONTBUFFER DDSCAPS_PRIMARYSURFACE DDSCAPS_VIDEOMEMORY
DDSCAPS_VISIBLE DDSCAPS_LOCALVIDMEM
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d6d4fa6
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0e488)->Unlock(0x7fc6fb70)
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0eb48)->Unlock(0x7fc6fb80)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0eb48)->Lock((nil),0x6330fc,00000801,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WAIT
DDLOCK_NOSYSLOCK
warn:ddraw:Main_DirectDrawSurface_Lock  - unsupported locking flag :
DDLOCK_NOSYSLOCK
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d290000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_IsLost (0x7fe0e488) is not lost
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0eb48)->Unlock((nil))
trace:ddraw:DIB_DirectDrawSurface_BltFast
(0x7fe0e488)->(371,299,0x7fe0eb48,0x7fc6fcc0,00000010)
trace:ddraw:DIB_DirectDrawSurface_BltFast       trans:DDBLTFAST_WAIT
trace:ddraw:DIB_DirectDrawSurface_BltFast       srcrect: 371x299-419x348
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0eb48)->Lock(0x7fc6fb70,0x7fc6fb90,00000010,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_READONLY
trace:ddraw:Main_DirectDrawSurface_Lock         lprect: 371x299-419x348
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d304fa6
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0e488)->Lock(0x7fc6fb60,0x7fc6fc10,00000020,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WRITEONLY
trace:ddraw:Main_DirectDrawSurface_Lock         lprect: 371x299-419x348
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_FRONTBUFFER DDSCAPS_PRIMARYSURFACE DDSCAPS_VIDEOMEMORY
DDSCAPS_VISIBLE DDSCAPS_LOCALVIDMEM
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d6d4fa6
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0e488)->Unlock(0x7fc6fb60)
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0eb48)->Unlock(0x7fc6fb70)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0eb48)->Lock((nil),0x6330fc,00000801,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WAIT
DDLOCK_NOSYSLOCK
warn:ddraw:Main_DirectDrawSurface_Lock  - unsupported locking flag :
DDLOCK_NOSYSLOCK
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d290000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0eea0)->Unlock((nil))
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fe0eb48)->Unlock((nil))
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0eea0)->Lock((nil),0x63e93c,00000801,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WAIT
DDLOCK_NOSYSLOCK
warn:ddraw:Main_DirectDrawSurface_Lock  - unsupported locking flag :
DDLOCK_NOSYSLOCK
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7cfc0000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fe0eb48)->Lock((nil),0x6330fc,00000801,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WAIT
DDLOCK_NOSYSLOCK
warn:ddraw:Main_DirectDrawSurface_Lock  - unsupported locking flag :
DDLOCK_NOSYSLOCK
Comment 7 Magnus Anderson 2006-01-17 14:42:10 UTC
Created attachment 1703 [details]
warn+ddraw,trace+ddraw

Tested with Wine 0.9.5 (Gentoo Ebuild: Wine-0.9.5-r1)
WINEDEBUG="warn+ddraw,trace+ddraw"

Still gives the same DDRAW Error
warn:ddraw:Main_DirectDrawSurface_Lock	- unsupported locking flag :
DDLOCK_NOSYSLOCK 

Debug log included (cut of after error occoured a few times)
Comment 8 Magnus Anderson 2006-06-23 13:48:09 UTC
Comment on attachment 1703 [details]
warn+ddraw,trace+ddraw

trace:ddraw:Main_DirectDrawSurface_IsLost (0x7fd46b40) is not lost
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fd47150)->Unlock((nil))
trace:ddraw:DIB_DirectDrawSurface_BltFast
(0x7fd46b40)->(0,0,0x7fd47150,0x7fb8fdf4,00000010)
trace:ddraw:DIB_DirectDrawSurface_BltFast	trans:DDBLTFAST_WAIT
trace:ddraw:DIB_DirectDrawSurface_BltFast	srcrect: 0x0-800x600
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fd47150)->Lock(0x7fb8fda4,0x7fb8fc8c,00000010,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_READONLY
trace:ddraw:Main_DirectDrawSurface_Lock 	lprect: 0x0-800x600
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7ce00000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fd46b40)->Lock(0x7fb8fd94,0x7fb8fd08,00000020,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WRITEONLY
trace:ddraw:Main_DirectDrawSurface_Lock 	lprect: 0x0-800x600
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_FRONTBUFFER DDSCAPS_PRIMARYSURFACE DDSCAPS_VIDEOMEMORY
DDSCAPS_VISIBLE DDSCAPS_LOCALVIDMEM
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7d1e0000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fd46b40)->Unlock(0x7fb8fd94)
trace:ddraw:Main_DirectDrawSurface_Unlock (0x7fd47150)->Unlock(0x7fb8fda4)
trace:ddraw:Main_DirectDrawSurface_Lock
(0x7fd47150)->Lock((nil),0x6330fc,00000801,(nil))
trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WAIT
DDLOCK_NOSYSLOCK
warn:ddraw:Main_DirectDrawSurface_Lock	- unsupported locking flag :
DDLOCK_NOSYSLOCK
trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description :
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN DDSCAPS_SYSTEMMEMORY
 - DDSD_HEIGHT : 600
 - DDSD_WIDTH : 800
 - DDSD_PITCH : 1600
 - DDSD_LPSURFACE : 0x7ce00000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 16,  R f800 G 07e0 B 001f)
Comment 9 Magnus Anderson 2006-06-23 13:51:10 UTC
Created attachment 2716 [details]
Wine 0.9.16

Wine 0.9.16 still gives the same ddraw error.
Comment 10 Michael Rudolph 2007-07-08 18:24:12 UTC
I have a similiar problem with wine verstion 0.9.40

libGL warning: 3D driver claims to not support visual 0x4b
libGL warning: 3D driver claims to not support visual 0x4b
fixme:devenum:DEVENUM_ICreateDevEnum_CreateClassEnumerator Category
{cc7bfb41-f175-11d1-a392-00e0291f3959} not found
fixme:devenum:DEVENUM_ICreateDevEnum_CreateClassEnumerator Category
{cc7bfb46-f175-11d1-a392-00e0291f3959} not found
fixme:d3d:IWineD3DDeviceImpl_GetAvailableTextureMem (0x19db60) : stub,
simulating 64MB for now, returning 64MB left
fixme:ddraw:IDirectDrawImpl_SetCooperativeLevel (0x19d7a8)->(0x20024,00000011)
fixme:xrandr:X11DRV_XRandR_SetCurrentMode Cannot change screen BPP from 32 to 16
fixme:ddraw:IDirectDrawImpl_SetCooperativeLevel (0x19d7a8)->((nil),00000008)
fixme:d3d:IWineD3DStateBlockImpl_Release Releasing primary stateblock
Comment 11 Austin English 2008-01-28 16:12:14 UTC
Is this still an issue in current (0.9.54 or newer) wine?
Comment 12 Quentin Haas 2008-03-29 16:52:35 UTC
I am using wine-0.9.58 on Ubuntu 7.10 (not using the 3D desktop, but I am using the latest drivers directly from AMD for my x1950 Pro).

Capitalism 2 installs normally, then I try to launch it from the icon that Wine created for it on my desktop.  The splash screen shows up and performs a CD check (which works fine), then it trys to launch the actual game (and goes to full screen) and it crashes with the error:
"Cannot attach flipping surface (DDERR_CANNOTATTACHSURFACE)".  
Comment 13 Quentin Haas 2008-03-29 17:18:29 UTC
(In reply to comment #12)
I forgot to add that if any of the developers want to see the problems, the freeware demo from Ubisoft has the same issues as the retail version.  There is a link to download the demo here:
http://www.cnwcentral.com/capitalism-2/demo.shtml
Comment 14 Austin English 2008-03-29 19:32:34 UTC
ftp://ftp.ubisoft.com/games/capitalism2/demo/cap2demo.exe
50.9MB, sha1sum: 98898298f3164c4bd5bef26862bf1c8833094c1b  cap2demo.exe

I'm seeing this as well in current git.
Comment 15 Quentin Haas 2008-05-19 21:52:31 UTC
Crashing still exists in Ubuntu 8.04 (with ATI drivers from the Ubuntu repository) and WINE 1.0 RC1.  I have also discovered a new problem with the uninstaller in addition to the old one (mentioned in my post above).

The uninstaller also crashes after launching with an error box stating:  "An error has occured while checking for running applications. (0x8002000b)" 
Comment 16 MPaskuda 2008-11-05 03:25:20 UTC
Problem ("Cannot attach flipping surface (DDERR_CANNOTATTACHSURFACE)" ) still exists in 1.1.6 and affects also other Apps like Seven Kingdom II. Any input needed?
Comment 17 Austin English 2008-11-05 10:41:58 UTC
(In reply to comment #16)
> Problem ("Cannot attach flipping surface (DDERR_CANNOTATTACHSURFACE)" ) still
> exists in 1.1.6 and affects also other Apps like Seven Kingdom II. Any input
> needed?
> 

Terminal output for a start.
Comment 18 MPaskuda 2008-11-06 03:45:16 UTC
Created attachment 17103 [details]
backtrace of sk2 with wine 1.1.7
Comment 19 MPaskuda 2008-11-06 03:46:15 UTC
(In reply to comment #17)
> Terminal output for a start.
Well, normal Terminal output is a stub: 
wine seven_kingdoms_2_v1.19_beta.exe 
fixme:mixer:ALSA_MixerInit No master control found on MPU-401 UART, disabling mixer
fixme:dsalsa:IDsDriverBufferImpl_SetVolumePan (0x143ba8,0x143ac8): stub
fixme:win:EnumDisplayDevicesW ((null),0,0x33f88c,0x00000000), stub!
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to 16

Added a 'WINEDEBUG="warn+ddraw,trace+ddraw"'-trace as attachment.
Comment 20 MPaskuda 2009-02-02 06:56:46 UTC
Anything else needed? Problem still exists in 1.1.14.
Comment 21 joaopa 2009-02-02 07:47:37 UTC
Created attachment 19207 [details]
change the return value in IDirectDrawSurface7Impl_AddAttachedSurface

This quick patch allows the application to start.
It would be to write a conformance test to see if the patch is correct.
Comment 22 MPaskuda 2009-02-02 12:11:16 UTC
(In reply to comment #21)
Can't write the test. But I can confirm that seven kingdoms start with the patch applied.
Comment 23 joaopa 2009-02-02 16:07:18 UTC
Unfortunately, the patch is uncorrect. It makes fail several already implemented tests.
Comment 24 MPaskuda 2009-02-03 14:03:38 UTC
Then the question probably should be why exactly the error ist triggered. 

Why is (Surf->surface_desc.ddsCaps.dwCaps & DDSCAPS_ZBUFFER) false? Does Seven Kingdoms really try to attach a non Z buffer surface - and what has to be done to make the application's operation succeed?
Comment 25 Jake Smith 2009-07-06 16:31:07 UTC
Created attachment 22229 [details]
Screenshot of error when attempting to run Capitalism II

Verified still a bug against current git (wine-1.1.25-63-g3ab8778)

When starting generates attached error msgbox and the following terminal output:

fixme:quartz:MPEGSplitter_query_accept MPEG-1 system streams not yet supported.
fixme:dsalsa:IDsDriverBufferImpl_SetVolumePan (0x14a070,0x149fb8): stub
fixme:win:EnumDisplayDevicesW ((null),0,0x32f7b0,0x00000000), stub!
fixme:xrandr:X11DRV_XRandR_SetCurrentMode Cannot change screen BPP from 32 to 16
Comment 26 Andrew Jones 2009-11-01 11:13:19 UTC
Created attachment 24493 [details]
wine 1.1.31, trace from WINEDEBUG="warn+ddraw,trace+ddraw".


I saw the same error as everyone else, "Cannot attach flipping surface," with wine 1.1.31.

I've attached a trace from WINEDEBUG="warn+ddraw,trace+ddraw".
Comment 27 Jaime 2010-07-15 11:13:22 UTC
still a bug on wine 1.2-rc7
Comment 28 leighman 2010-09-29 13:18:43 UTC
Seven Kingdoms code is now GPL if that helps at all?

https://sourceforge.net/projects/skfans/
Comment 29 leighman 2010-09-29 13:21:08 UTC
/ http://www.7kfans.com/git/?p=7k2.git;a=summary
Comment 30 joaopa 2010-09-29 13:39:25 UTC
Works fine for me in current git with the given link.
http://sourceforge.net/projects/skfans/files/
Comment 31 leighman 2010-09-30 06:24:33 UTC
Sorry, the report seems to refer to SK2 which was the second link I posted, don't think the first is actually relevant.
Comment 32 Béla Gyebrószki 2010-12-04 06:13:38 UTC
The error message is still present when trying to run Seven Kingdoms II, using wine-1.3.8-204-g24d2f69.
With the patch (comment #21) the game starts without crashing.
Comment 33 Jesse Allen 2011-01-23 14:21:54 UTC
I've been bringing up Seven Kingdoms 2 as a winelib executable, and I have not reproduced this just yet. I have noted that this is a compilation flag (USE_FLIP) to use a flipping surface. I will turn this on by default and debug the issue--  Note the program is actually depending on a DD_OK return as reported.
Comment 34 Jesse Allen 2011-01-23 14:27:51 UTC
*** Bug 20451 has been marked as a duplicate of this bug. ***
Comment 35 Jesse Allen 2011-01-23 17:05:47 UTC
It appears to me that the game creates a IDirectDrawSurface4, which when calling AddAttachedSurface, gets a version 7 interface. The version 7 interface does not allow any attaching unless the surface to be attached is a z-buffer. This is not what the game is requesting. So it appears to me that there needs to be a version 4 interface.
Comment 36 Maik Wagner 2011-06-03 00:53:23 UTC
I tried running the gog.com version of Capitalism II and I am getting the same error message as in comment #25. My system is a Mandriva 2011 (Beta 3) with Intel 4500M graphics.
Comment 37 Vijay Kamuju 2011-09-09 16:32:44 UTC
test with wine version  1.3.28
Comment 38 Michael Curran 2011-09-15 21:53:01 UTC
Created attachment 36413 [details]
Console log with +ddraw,+tid

Problem still exists in wine-1.3.28 with roughly the same trace as above, I've attached an up dated version if it matters.
Comment 39 Austin English 2012-02-23 15:26:01 UTC
Removing deprecated 'All' Platform.
Comment 40 joaopa 2012-05-11 16:10:35 UTC
still a bug in current wine
Comment 41 joaopa 2012-05-12 16:34:35 UTC
Created attachment 40143 [details]
Calls the right forward for AddAttachedSurface

Can anyone check that this patch fixes the bug?
Comment 42 joaopa 2012-05-12 16:37:04 UTC
With the new patch, the Wine test suite still passes.
Comment 43 Jesse Allen 2012-05-12 22:13:55 UTC
(In reply to comment #41)
> Created attachment 40143 [details]
> Calls the right forward for AddAttachedSurface
> 
> Can anyone check that this patch fixes the bug?

Yes, I get past the error message in cap2demo. 7K2 has a crashing problem, although I was able to run my winelib version with USE_FLIP. I don't think the flipping is actually working though. So while the error disappears, I think most people will say that these games are still unplayable.
Comment 44 joaopa 2012-05-12 22:47:40 UTC
But the original bug is fixed, right?
Comment 45 Jesse Allen 2012-05-13 07:55:31 UTC
(In reply to comment #44)
> But the original bug is fixed, right?

Yes
Comment 46 Austin English 2012-05-13 17:11:55 UTC
(In reply to comment #45)
> (In reply to comment #44)
> > But the original bug is fixed, right?
> 
> Yes

Fixed then. Please file new bugs for other issues (check for dupes first).
Comment 47 joaopa 2012-05-13 17:16:11 UTC
Patch is not in git. So, one can not close this bug.
Comment 48 Austin English 2012-05-13 17:27:50 UTC
(In reply to comment #47)
> Patch is not in git. So, one can not close this bug.

Sorry, misread. Thanks.
Comment 49 whatbug 2013-02-09 14:48:59 UTC
(In reply to comment #41)
> Created attachment 40143 [details]
> Calls the right forward for AddAttachedSurface

Can someone more knowledgeable than me please integrate this patch with git? Thank you.
Comment 50 joaopa 2013-02-09 16:23:18 UTC
DirectDraw3 needs to be rewritten on the top of DirectDraw4. So this patch will never be merged in git.
Comment 51 Henri Verbeet 2013-02-10 06:05:49 UTC
Created attachment 43495 [details]
patch

We'd probably want something like the attached, but this needs tests.
Comment 52 Maik Wagner 2013-08-28 12:36:26 UTC
Created attachment 45762 [details]
Relay log - Capitalism 2

Hello everyone,

I would like to submit a relay log as I am also very keen on getting this application to run. Wine version is 1.6, Distribution is Mandriva Cooker and graphics are Intel. 

I had some problems installing the png-library but some applications work anyway. I hope this helps in fixing this bug. If you require further information, please let me know.
Comment 53 Maik Wagner 2013-08-28 12:37:37 UTC
Sorry, I just selected the wrong MIME-type. It's a relay log packed into bzip2-Archive.
Comment 54 Bruno Jesus 2013-08-28 13:10:45 UTC
(In reply to comment #52)
> I had some problems installing the png-library but some applications work
> anyway. I hope this helps in fixing this bug. If you require further
> information, please let me know.

A good way to help is testing the patch in comment 51.
Comment 55 Kai Huuhko 2013-08-29 03:27:47 UTC
The application does start with the patch from comment #51 applied, however the screen redraw problem still remains.

I tested a couple other (working) older games as well, they did not regress with the patch applied.
Comment 56 Henri Verbeet 2014-01-27 14:47:20 UTC
Should be fixed by commit 7c6ca2077ffef55a69f1605bb819d2595fc802da.
Comment 57 Alexandre Julliard 2014-02-07 13:06:29 UTC
Closing bugs fixed in 1.7.12.


Privacy Policy
If you have a privacy inquiry regarding this site, please write to [email protected]

Hosted By CodeWeavers