Commit Graph

1201 Commits

Author SHA1 Message Date
Henri Verbeet aa305c4a24 ddraw: Don't depend on IWineD3DDevice_CreateSurface() not touching the surface parameter on failure.
The reason it actually fails is because of ddraw trying to create surface of
type "SURFACE_UNKNOWN". Stefan should have a patch for that.
2009-12-18 11:38:30 +01:00
Roderick Colenbrander 6d8c4572ef wined3d: Fix a bug in BtlFast which was uncovered by the 32-bit dibsection support. 2009-12-17 12:53:19 +01:00
Henri Verbeet e79a6b20d2 ddraw/tests: Add tests for ddraw window proc handling. 2009-12-17 12:43:05 +01:00
Nicolas Le Cam bf64bbd1fb ddraw/tests: Get rid of a carriage return in a trace. 2009-12-14 12:04:06 +01:00
Paul Vriens 0f0d92bf13 ddraw/tests: Fix some test failures on Vista+. 2009-12-10 15:01:06 +01:00
Henri Verbeet ddddc60eb9 ddraw: Avoid enumerating display modes for formats that arent't supported anyway.
Some of these formats can't even be translated by ddraw.
2009-12-10 11:54:22 +01:00
Henri Verbeet 55f3c576d9 wined3d: Remove the effetively unused "state" field from the device. 2009-11-18 11:16:54 +01:00
Austin Lund 38d44e0a52 ddraw/tests: Fix test failure for D3DFMT_A2R10G10B10 pixel format in GetDC tests. 2009-11-17 15:14:56 +01:00
Paul Vriens 8a1f0eed8e ddraw/tests: Fix a test failure on systems with no DirectDraw7. 2009-11-03 21:26:46 +01:00
Stefan Dösinger d4275e87f1 wined3d: Add a usage flag for static buffer declarations. 2009-11-03 21:21:55 +01:00
Stefan Dösinger 90e443758a wined3d: Add a parameter for SetRenderTarget viewport setup. 2009-11-03 21:21:30 +01:00
Markus Stockhausen f222a1654e ddraw: Avoid memory overwrite in GetDeviceIdentifier(). 2009-10-30 16:32:53 +01:00
Henri Verbeet bf10dbe8a6 wined3d: Map D3DFMT_D24S8 to WINED3DFMT_D24_UNORM_S8_UINT.
The internal order of the depth and stencil bits is unspecified since the
format isn't lockable.
2009-10-30 11:28:52 +01:00
Henri Verbeet 052d955567 wined3d: Don't depend on uninitialized data in the CreateSurface() thunks (Valgrind).
Perhaps IDirectDraw7_CreateSurface() should also always set "pSurface7" to
NULL on failure, but at least for our internal functions that's a silly thing
to rely on.
2009-10-29 13:09:45 +01:00
Paul Vriens e1bf800ba5 ddraw/tests: Fix a test failure on Win9x/WinMe. 2009-10-21 16:05:57 +02:00
Francois Gouget 323f163af4 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2009-10-19 14:45:21 +02:00
Henri Verbeet 02772641b2 ddraw/tests: Remove some leftover debug code. 2009-10-19 11:45:36 +02:00
Henri Verbeet c45609f15c ddraw/tests: Check some more return values (LLVM/Clang). 2009-10-16 13:37:00 +02:00
Christian Costa e95ffacde0 ddraw: Make SetColorKey handle case where dwColorSpaceHighValue < dwColorSpaceLowValue + tests. 2009-10-15 12:06:22 +02:00
Stefan Dösinger e80144c403 d3d: Make EndScene calls hookable. 2009-10-14 12:21:06 +02:00
Stefan Dösinger 64367542d0 ddraw: Make directdraw create functions hookable. 2009-10-14 12:21:06 +02:00
Paul Vriens 72fab20ffe ddraw/tests: Don't crash on older ddraw. 2009-10-12 12:14:03 +02:00
Andrew Nguyen 7211f7ce18 ddraw: Implement and test DirectDrawEnumerateExW. 2009-10-09 11:50:28 +02:00
Andrew Nguyen 3496fe5f43 ddraw: More fully implement and test DirectDrawEnumerateExA. 2009-10-09 11:50:28 +02:00
Andrew Nguyen bab8f7e557 ddraw: Implement and test DirectDrawEnumerateW. 2009-10-09 11:50:14 +02:00
Andrew Nguyen 4c61c2ff63 ddraw: Simplify and test DirectDrawEnumerateA. 2009-10-09 11:40:16 +02:00
Andrew Nguyen 611fae610c ddraw/tests: Remove a superfluous return statement. 2009-10-09 11:40:07 +02:00
Paul Vriens ddd255cb08 ddraw/tests: Fix some test failures on WinME/VMware. 2009-10-08 12:17:30 +02:00
Stefan Dösinger 9e068a33b3 wined3d: SetRenderTarget doesn't change the viewport in d3d7. 2009-10-02 15:06:56 +02:00
Markus Stockhausen dbb29993db ddraw: Set dwBackBufferCount=0 in CreateSurface for backbuffer. 2009-09-29 16:06:47 +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 47c84f4f7f wined3d: Use the DXGI naming convention for all formats. 2009-09-25 15:15:44 +02:00
Henri Verbeet 60e32659a7 wined3d: Rename IWineD3DDevice::SetIndices() to IWineD3DDevice::SetIndexBuffer(). 2009-09-25 15:14:44 +02:00
Henri Verbeet 66a7236590 wined3d: Don't free D3D vertex declarations until the wined3d vertex declaration is destroyed. 2009-09-23 12:36:28 +02:00
Henri Verbeet 93b0600829 wined3d: Don't free D3D buffers until the wined3d buffer is destroyed. 2009-09-18 08:55:25 -05:00
Henri Verbeet a8e8f763bf wined3d: Don't free D3D textures until the wined3d texture is destroyed. 2009-09-18 08:54:34 -05:00
Henri Verbeet 6c8636c337 ddraw: Mark internal symbols hidden. 2009-09-17 10:10:04 -05:00
Henri Verbeet de3bd86fb6 wined3d: Don't free D3D cube textures until the wined3d cube texture is destroyed. 2009-09-17 10:09:44 -05: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
Jörg Höhle 3eb62ed62c ddraw: Complete recognition of pixelformat 19: X8L8V8U8. 2009-09-15 16:41:24 -05:00
Henri Verbeet 2b2fc827ce wined3d: Remove unused parameters to drawPrimitive(). 2009-09-11 12:09:14 +02: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
Francois Gouget e168876d8f ddraw/tests: Fix compilation on systems that don't support nameless unions. 2009-08-31 12:41:21 +02:00
Stefan Dösinger c0892c2f35 ddraw: d3d7 does not support two sided stencil.
The header is wrong. There is simply no API to set this. The MS header does
not have this declaration either.
2009-08-06 17:26:31 +02:00
Henri Verbeet 7165bd19c1 wined3d: WINED3DTEXF_NONE only makes sense as a mip filter. 2009-08-05 11:20:43 +02:00
Andrew Talbot 99139d9671 ddraw: Constify some variables. 2009-07-24 11:44:17 +02:00
Alexandre Julliard 60d389670a ddraw/tests: Properly release surfaces even if we can't get the texture object. 2009-07-14 11:29:47 +02:00
Alexandre Julliard 340f5734bf ddraw/tests: Fix a failing test on 64-bit. 2009-07-14 11:29:47 +02:00
Alexandre Julliard 5622f74486 ddraw/tests: Fix a few tests that fail on Win64. 2009-07-10 20:52:41 +02:00
Gerald Pfeifer d1e5b3bf62 ddraw: Fix two bounds checks. 2009-06-22 11:44:19 +02:00
Gerald Pfeifer 3176d936f9 ddraw: Fix error checking in IDirect3DExecuteBufferImpl_Execute(). 2009-06-22 11:44:06 +02:00
Marcus Meissner 882716e78b ddraw: Use correct union member. 2009-06-15 13:42:30 +02:00
Henri Verbeet 88162fabb8 wined3d: Get rid of the pointers in WINED3DSURFACE_DESC. 2009-06-15 13:42:29 +02:00
Henri Verbeet 4bc6b376e0 wined3d: Remove the useless "resource_type" parameter from IWineD3DDevice::CreateSurface(). 2009-06-12 17:33:15 +02:00
Luke Benstead 73abda63d7 ddraw: Add tests for DirectDrawSurface reference counting. 2009-05-20 11:09:07 +02:00
Francois Gouget 82b7fc6855 ddraw/tests: Replace malloc() with HeapAlloc(). 2009-05-13 12:45:36 +02:00
Nicolas Le Cam ad66aa77a4 ddraw/tests: Fix a test failure on VirtualBox. 2009-05-04 12:51:15 +02:00
Henri Verbeet 6f33b97c94 wined3d: Get rid of the shared_handle parameter.
I don't expect us to support this in the near future, and right now it's just
dead code.
2009-04-23 14:22:06 +02:00
Christian Costa 06d2b30903 ddraw/tests: Add tests for refcount handling of light with viewport. 2009-04-21 16:30:36 +02:00
Christian Costa ffb5f749d5 ddraw: Handle refcount of lights when interacting with viewport. 2009-04-21 16:30:32 +02:00
David Adam 8681d49030 ddraw: Remove useless comments. 2009-04-21 16:30:04 +02:00
Stefan Dösinger cb1c9dcda9 d3d: Remove the format from index buffers. 2009-04-09 16:28:25 +02:00
Stefan Dösinger f0efa97413 wined3d: Remove the buffer fvf. 2009-04-09 16:28:10 +02:00
Stefan Dösinger fd9b574e4e ddraw: Store the fvf in the ddraw buffer.
WineD3D buffer FVFs will go away soon.
2009-04-09 16:27:35 +02:00
Stefan Dösinger 513a493f00 wined3d: Merge IWineD3DIndexBuffer and IWineD3DBuffer. 2009-04-08 11:37:29 +02:00
Stefan Dösinger 3ed94329a3 wined3d: Use Map and Unmap for index buffers.
Just a change in name to prepare for the next patch
2009-04-08 11:36:18 +02:00
Stefan Dösinger dc80a3ede5 d3d: Unify WINED3DVERTEXBUFFER_DESC and WINED3DINDEXBUFFER_DESC. 2009-04-08 11:36:02 +02:00
Henri Verbeet 4194d8040f ddraw: Filter invalid texture stage states passed by the application. 2009-04-01 14:23:38 +02:00
Henri Verbeet 4434d00f84 wined3d: Unify vertex and texture formats.
Some fields should be redundant now, eg. gl_vtx_type and glType. I'll leave
that for a different patch to fix though.
2009-03-27 15:51:25 +01:00
Henri Verbeet d7c7c76850 wined3d: Use separate structures for ddraw style strided data and wined3d's internal stream info. 2009-03-27 15:51:25 +01:00
Andrew Nguyen e1a1ae5e1b ddraw/tests: Skip some cooperative level tests on NT4/Win95.
The DirectX SDK reports that cooperative level flags
DDSCL_SETDEVICEWINDOW and DDSCL_SETFOCUSWINDOW are only
available on Windows 98 and higher.
2009-03-23 18:21:06 +01:00
Michael Stefaniuc 58f2a01e23 ddraw/tests: Use ULONG instead of unsigned long. 2009-03-23 12:41:21 +01:00
Paul Vriens 5974ad1200 ddraw/tests: Fix a test failure on VMware and some native boxes. 2009-03-13 14:55:47 +01:00
Paul Vriens 27f52727e4 ddraw/tests: Fix two test failures on W2K/VMware. 2009-03-13 14:53:02 +01:00
Paul Vriens d5e9c3cf92 ddraw/tests: Fix some test failures on W2K/VMware. 2009-03-12 13:09:53 +01:00
Paul Vriens ae1802d01b ddraw/tests: Fix some test failures on W2K/VMware. 2009-03-11 16:03:32 +01:00
Henri Verbeet aa3027a604 wined3d: Merge IWineD3DVertexBuffer with IWineD3DBuffer.
That still leaves IWineD3DIndexBuffer, but that code is also mostly similar,
except for the conversion code (which will be unused there).
2009-03-06 15:35:58 +01:00
Henri Verbeet 702eeb6b0c wined3d: Add separate methods for setting the primitive type. 2009-03-05 16:16:25 +01:00
Henri Verbeet 602bb1f551 wined3d: Pass the vertex count rather than the primitive count to wined3d draw methods. 2009-03-05 16:16:24 +01:00
Alexandre Julliard e047edb080 ddraw/tests: Allow IDirectDrawSurface_AddAttachedSurface failure on Windows. 2009-03-05 12:47:02 +01:00
Christian Costa f716306f36 ddraw: Implement IDirect3DViewportImpl_NextLight. 2009-03-04 13:03:52 +01:00
David Adam 22bfd1396c ddraw: Implement ComputeSphereVisibility. 2009-02-26 15:13:25 +01:00
Francois Gouget 77a3cffb1b ddraw/tests: Use win_skip() to skip over unimplemented functionality. 2009-02-24 16:57:26 +01:00
Henri Verbeet 0048a0373b d3d10core: Keep a reference to the wined3d device in the d3d10 device. 2009-02-23 12:20:29 +01:00
Henri Verbeet 8cefc47d81 wined3d: Add DXGI formats to WINED3DFORMAT. 2009-02-20 11:10:37 +01:00
Paul Vriens 4542ab35b4 ddraw/tests: Use skip() instead of trace(). 2009-02-19 12:54:25 +01:00
Paul Vriens b63728a850 ddraw/tests: Don't crash on W2K. 2009-02-19 12:54:21 +01:00
Vincent Pelletier f879176b99 ddraw: Use ddraw_from_d3d7 to make a (IDirectDrawImpl *) from a (IDirect3D7 *). 2009-02-10 12:31:50 +01:00
Alasdair Sinclair 8a46be6cee ddraw/tests: Fix missing void in empty parameter list. 2009-01-28 12:10:49 +01:00
Francois Gouget 96e81f0698 ddraw: Make some device_parent_*() functions static. 2009-01-26 15:13:26 +01:00
David Adam 62b8b9a8fd ddraw/tests: Add a few tests for ComputeShereVisibility. 2009-01-26 14:30:17 +01:00
Henri Verbeet 9b5f3ed8f3 ddraw: Rename the main vtables to lpVtbl. 2009-01-22 15:28:22 +01:00
Henri Verbeet c0e72b0556 ddraw: Get rid of CONVERT and CONVERT_REV. 2009-01-22 12:05:18 +01: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 772e56a2d8 ddraw: Get rid of ICOM_VFIELD_MULTI_NAME and ICOM_VFIELD_OFFSET. 2009-01-21 11:17:41 +01:00
Henri Verbeet 9a0c885e63 ddraw: Get rid of ICOM_INTERFACE. 2009-01-21 11:17:25 +01:00
Henri Verbeet ad171b143f ddraw: Get rid of ICOM_INIT_INTERFACE. 2009-01-21 11:16:51 +01:00
Henri Verbeet 4e38c2e943 ddraw: Get rid of ICOM_VFIELD_MULTI. 2009-01-21 11:16:41 +01:00
Henri Verbeet 94c98d0697 ddraw: Get rid of ICOM_VFIELD_MULTI_NAME2. 2009-01-21 11:16:34 +01:00
Henri Verbeet ba771f0fac ddraw: Fix Thunk_IDirect3DDeviceImpl_2_GetCurrentViewport(). 2009-01-20 12:34:20 +01:00
Henri Verbeet b2d42ad665 ddraw: Compare the against the correct IID in IDirect3DExecuteBufferImpl_QueryInterface(). 2009-01-20 12:34:17 +01:00
Henri Verbeet 2afa23867b ddraw: Add extern to some global variable declarations. 2009-01-16 13:30:08 +01:00
Henri Verbeet a966293f59 wined3d: Add an IWineD3DDeviceParent interface.
Other than being a bit nicer than passing function pointers all over the
place, this helps dxgi/d3d10. While the swapchain itself is created in dxgi,
its surfaces are constructed in d3d10core, which makes it impractical for dxgi
to pass the appropriate function pointers.
2009-01-16 13:29:32 +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
Stefan Dösinger ae4e824423 ddraw[ex]: Show a caps handling difference. 2009-01-09 16:18:12 +01:00
Alexandre Julliard 149259d49f ddraw: Fix an uninitialized variable warning on non-i386. 2009-01-08 17:30:22 +01:00
Henri Verbeet cc447eac55 wined3d: Move position_transformed out of u.s in struct WineDirect3DVertexStridedData. 2009-01-08 13:21:31 +01:00
Henri Verbeet 352e60e6ed d3d: Explicitly translate texture stage states.
Ddraw and d3d8 already translate half of them, it turns out the lookup
table actually saves lines there.
2009-01-06 12:45:32 +01:00
Henri Verbeet c51bc826e8 ddraw: Properly handle sampler states. 2009-01-06 12:45:20 +01:00
Michael Stefaniuc 91bb8dc043 ddraw/tests: Remove superfluous casts. 2009-01-04 13:34:13 +01:00
Michael Stefaniuc 566a133a82 ddraw/tests: Simplify a pointer increment. 2009-01-04 13:34:05 +01:00
Stefan Dösinger 6ef2b65531 ddraw: Reject IDirectDraw3 QI in ddraw.dll. 2009-01-03 15:14:51 +01:00
Stefan Dösinger 616ea53226 ddraw: Add a test for IDirectDrawSurface::GetDC. 2009-01-03 15:14:38 +01:00
Christian Costa 3b64f895b1 ddraw: Display fixme only once in IDirectDrawImpl_WaitForVerticalBlank. 2009-01-02 11:51:29 +01:00
Nick Burns a537fb0a93 ddraw: Fix surface version setting. 2008-12-26 13:42:29 +01:00
Andrew Talbot dcbb91fc92 ddraw: Remove a superfluous semicolon. 2008-12-24 19:59:04 +01:00
Christian Costa 9605eb5af2 ddraw: Display fixme only once in IDirect3DVertexBufferImpl_Optimize. 2008-12-24 19:57:51 +01:00
Rico Schüller 26b9f8ef26 ddraw/tests: Fix alpha_test and offscreen_test on geforce 8800 on XP. 2008-12-23 20:12:28 +01:00
Rico Schüller a14fe082bf ddraw/tests: Fis some ok() lines in alpha_test(). 2008-12-23 20:11:40 +01:00
Hans Leidekker 8bd9a3aa09 janitorial: Don't depend on user32 for the self registration functions. 2008-12-17 11:38:32 +01:00
Francois Gouget ab9f028958 ddraw/tests: Make some functions static. 2008-12-15 12:25:41 +01:00
Paul Vriens 76b24fd970 ddraw/tests: Fix a test failure on a Win98 VMware box. 2008-12-12 11:38:26 +01:00
Christian Costa 1632175b35 ddraw: Fix trace. 2008-12-08 12:02:36 +01:00
Huw Davies ebb31dbbb7 ddraw/tests: Skip tests if we can't create a primary surface. 2008-12-05 13:52:38 +01:00
Michael Stefaniuc 176c8eb333 ddraw: Remove two superfluous casts. 2008-12-05 12:36:34 +01:00
Christian Costa 9d3026ff40 ddraw: Fix some comments. 2008-12-03 09:49:24 +01:00
Alexandre Julliard 23abbcb9b3 ddraw: Make some functions static. 2008-12-02 15:27:08 +01:00
Henri Verbeet a6917b143d wined3d: Use IDL to generate wined3d.h. 2008-11-25 13:37:22 +01:00
Francois Gouget fcfe436de5 ddraw: Remove WINAPI on static functions where not needed. 2008-11-24 14:25:09 +01:00
Paul Vriens 902bee8f09 ddraw/tests: Skip tests when DirectDraw4 is not supported. 2008-11-12 12:55:09 +01:00
Paul Vriens 10e5d3aa12 ddraw/tests: Fix a typo. 2008-11-12 12:55:03 +01:00
Paul Vriens fbdb78c888 ddraw/tests: Fix a test on W2K3. 2008-11-05 10:54:40 +01:00
Henri Verbeet 092b51e82a wined3d: Rename CreateAdditionalSwapChain to CreateSwapChain. 2008-10-28 12:46:46 +01:00
Henri Verbeet 7142754820 wined3d: Remove the SDKVersion parameter to WineDirect3DCreate(). 2008-10-24 14:24:59 +02:00
Henri Verbeet 99a50b5396 ddraw: Make sure pWineDirect3DCreate and pWineDirect3DCreateClipper match the header. 2008-10-24 14:24:59 +02:00
Alexandre Julliard e1ced22db1 ddraw: Convert source files to utf-8. 2008-10-18 19:19:45 +02:00
Henri Verbeet 8299df900c ddraw: Remove a few more redundant inits (LLVM/Clang). 2008-10-10 12:27:28 +02:00
Michael Stefaniuc ff5a860c0c ddraw/tests: Use FAILED instead of !SUCCEEDED. 2008-10-08 13:42:11 +02:00
Andrew Talbot 623ee7775b ddraw: Sign-compare warning fix. 2008-10-01 09:56:54 -05:00
Andrew Talbot a697d99d66 ddraw: Sign-compare warnings fix. 2008-09-29 17:32:17 -05:00
Paul Vriens a12509532c ddraw/tests: Fix a test on a Win98 box. 2008-09-22 12:16:53 +02:00
Francois Gouget 7dd099416e ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-09-08 12:47:21 +02:00
Paul Vriens 55faa6e911 ddraw/tests: Let tests run again on win9x. 2008-09-03 13:14:51 +02:00
Stefan Dösinger 09d0a35872 ddraw: Add some overlay tests. 2008-09-02 15:05:59 +02:00
Stefan Dösinger ddec94bf0f ddraw: Pass proper parameters to CheckDeviceFormat. 2008-09-02 14:56:45 +02:00
Stefan Dösinger c1eabc2ce7 ddraw: Catch attempts to opengl-render to the desktop window. 2008-09-02 14:56:35 +02:00