Henri Verbeet
cf39adbaa2
ddraw: Avoid an integer overflow in IDirectDrawSurfaceImpl_BltFast().
...
Bug spotted by Iain Arnell, test by Iain Arnell.
2010-06-24 15:11:43 +02:00
Christian Costa
e95ffacde0
ddraw: Make SetColorKey handle case where dwColorSpaceHighValue < dwColorSpaceLowValue + tests.
2009-10-15 12:06:22 +02:00
Henri Verbeet
33bfcdd044
ddraw: The ddraw surface is now always the wined3d surface's parent.
...
This GetParent() trick would now cause infinite recursion.
2009-09-25 15:15:55 +02:00
Henri Verbeet
60e32659a7
wined3d: Rename IWineD3DDevice::SetIndices() to IWineD3DDevice::SetIndexBuffer().
2009-09-25 15:14:44 +02:00
Henri Verbeet
a5214c306f
wined3d: Don't free D3D surfaces until the wined3d surface is destroyed.
...
This prevents for example a d3d9 depth stencil from being destroyed when it
has no external references but is still in use by the device/stateblock. A
nice side effect is that it simplifies handling of "implicit" surfaces like
the frontbuffer and backbuffers, as well as the forwarding of reference counts
for surfaces that are part of a texture.
2009-09-16 13:04:32 -05:00
Stefan Dösinger
e1469961d4
wined3d: Test and fix ddraw and d3d9 GetDC differences.
...
The MSDN is not totally correct: A8R8G8B8 and A1R5G5B5 also allow GetDC. The
main differences that have to be filtered out in d3d9.dll are GetDC on
A8B8G8R8, X8B8G8R8 and P8.
2009-09-08 13:04:52 +02:00
Henri Verbeet
ee60e5fd71
ddraw: Remove trailing spaces.
2009-09-01 14:06:03 +02:00
Stefan Dösinger
cb1c9dcda9
d3d: Remove the format from index buffers.
2009-04-09 16:28:25 +02:00
Henri Verbeet
b09b0fbf95
ddraw: Get rid of ddcomimpl.h.
2009-01-22 12:05:14 +01:00
Henri Verbeet
802f9c7e29
ddraw: Get rid of ICOM_OBJECT.
2009-01-22 12:05:07 +01:00
Henri Verbeet
8c4cc2af46
ddraw: Get rid of ICOM_THIS_FROM.
2009-01-22 12:05:03 +01:00
Henri Verbeet
9a0c885e63
ddraw: Get rid of ICOM_INTERFACE.
2009-01-21 11:17:25 +01:00
Michael Stefaniuc
5ee7a104c9
ddraw: Remove superfluous pointer casts.
2009-01-14 12:21:02 +01:00
Andrew Talbot
1ac07906ae
ddraw: Fix double unlock of critical section.
2009-01-10 17:43:10 +01:00
Nick Burns
a537fb0a93
ddraw: Fix surface version setting.
2008-12-26 13:42:29 +01:00
Alexandre Julliard
e1ced22db1
ddraw: Convert source files to utf-8.
2008-10-18 19:19:45 +02:00
Andrew Talbot
623ee7775b
ddraw: Sign-compare warning fix.
2008-10-01 09:56:54 -05:00
Stefan Dösinger
58ac095d9d
ddraw: Don't destroy the application's window.
2008-08-26 12:07:40 +02:00
Stefan Dösinger
c1bbab7c54
ddraw: Send the ddraw output to the clipper window, if any.
2008-08-19 12:25:31 +02:00
Stefan Dösinger
e178ddd9e1
wined3d: Use a swapchain for GDI surfaces.
...
This is a long-needed cleanup aimed at removing the ddraw_primary,
ddraw_window, ddraw_width and ddraw_height members from
IWineD3DDeviceImpl, which just do not belong there. Destination
window and screen handling is supposed to be done by swapchains.
2008-08-19 12:21:32 +02:00
Stefan Dösinger
851dd7339e
wined3d: Implement overlay flipping.
2008-08-05 14:09:36 +02:00
Stefan Dösinger
e795d842ec
wined3d: Implement overlay position tracking.
2008-08-05 14:09:36 +02:00
Francois Gouget
42a61d7ed7
Assorted spelling fixes.
2008-05-06 16:10:20 +02:00
Alexander Dorofeyev
d6ecf5d14d
ddraw: Return DDERR_NOCOLORKEY when there is no colorkey.
2008-05-06 11:26:15 +02:00
Austin English
825baa23a2
ddraw: Spelling fixes.
2008-04-03 11:39:45 +02:00
Alexander Dorofeyev
2caa797e76
ddraw: Set surface to NULL on failure in GetAttachedSurface.
2008-04-03 11:30:30 +02:00
Alexander Dorofeyev
4b53dde0f5
ddraw: Make SetPalette fail for non-palettized surfaces.
2008-03-24 20:40:00 +01:00
Günther Brammer
df5116cc7d
ddraw: Return a nullpointer as lpSurface in Lock() if the rect is invalid.
2008-02-25 19:50:30 +01:00
Francois Gouget
4c8e218252
Assorted spelling fixes.
2008-02-15 12:09:24 +01:00
Alexander Dorofeyev
f4337b4714
ddraw: Fix incorrect WARN text.
2007-12-17 12:38:43 +01:00
Stefan Dösinger
c5055fb3eb
ddraw: Cope with Init3D failures.
2007-10-10 11:58:37 +02:00
Stefan Dösinger
d0fdb1ea7e
d3d: Add a test for double surface locking.
2007-08-31 11:25:19 +02:00
Stefan Dösinger
430239b470
ddraw: Some d3d-only code fixes.
...
Vertex declarations are a d3d feature, thus they should be destroyed
before d3d is shut down in wined3d. The surface type should be reset
afterwards to prevent avoid gl surface afterwards and before a new
render target is created.
2007-07-24 13:40:29 +02:00
Stefan Dösinger
5fa4de27bc
ddraw: D3DOP_BRANCHFORWARD includes the current instruction size.
...
Native D3DRM puts a branchforward with offset 0 at the beginning of each
execute buffer. With the old code this used to get stuck in an endless
loop. This patch adds a test that shows that such a branchforward
terminates properly.
2007-07-05 19:52:01 +02:00
Stefan Dösinger
208d38688a
ddraw: Check for incorrect rectangles to DDrawSurface::Blt.
2007-06-22 13:42:30 +02:00
Stefan Dösinger
e019cebd16
ddraw: Add a test for incorrect surface desc sizes for Lock().
2007-06-22 13:42:24 +02:00
Stefan Dösinger
bf23e5f3f7
ddraw: Test for incorrect surface desc sizes in GetSurfaceDesc.
2007-06-20 15:10:58 +02:00
H. Verbeet
785771272a
wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead.
2007-06-06 12:10:47 +02:00
Stefan Dösinger
94127492f2
ddraw: Check the validy of IDirectDrawSurface::BltFast parameters.
2007-05-31 13:07:38 +02:00
Stefan Dösinger
8b6a3610bb
ddraw: Hold the lock in IDirectDrawSurface methods.
2007-05-31 13:07:28 +02:00
Detlef Riekenberg
fb0a9291ea
ddraw: Do not crash when Clipper is NULL.
2007-05-29 11:55:58 +02:00
Stefan Dösinger
5c48d504fc
wined3d: Destroying the resource frees all private data.
...
Also adds a test for ddraw, d3d8 and d3d9.
2007-05-11 11:22:31 +02:00
Stefan Dösinger
a5c484cbf3
ddraw: GetSurfaceDesc returns the surface memory while the surface is locked.
2007-05-11 11:21:44 +02:00
Stefan Dösinger
e7b68eec34
ddraw: Use point filter for blit operations.
...
D3DTEXF_NONE is a special value for mipmapping which disabled
mipmapping, but it is not a valid mag / min filter parameter.
D3DTEXF_POINT is what we want
2007-05-11 11:21:29 +02:00
Stefan Dösinger
1b94a5eefd
ddraw: Fix stupid bug when setting surface client memory.
2007-05-10 11:40:50 +02:00
Stefan Dösinger
bed50115ee
ddraw: More tests and fixes on surface attachments.
2007-05-09 12:07:46 +02:00
Stefan Dösinger
0fb41a8845
wined3d: Make the blit -> flip work for windowed rendering.
2007-05-08 18:28:08 +02:00
Stefan Dösinger
2ecacc619f
ddraw: Fix reported caps on compressed surfaces.
...
Compressed surfaces in ddraw do not have a pitch, instead the full
surface size is reported. Also adds tests for the extact behavior and
surface flags set.
2007-05-07 21:42:33 +02:00
H. Verbeet
7b48db196f
d3d: Fix the surface locking rectangle validation.
2007-05-04 13:41:13 +02:00
Stefan Dösinger
ffae39c3f3
ddraw: Update the wined3d depth stencil on device creation, render.
2007-05-01 11:42:25 +02:00