Commit Graph

1204 Commits

Author SHA1 Message Date
Henri Verbeet
0cb4de4542 ddraw: Use a less offensive handle table implementation for materials. 2010-07-29 17:33:35 +02:00
Johan Gill
1fb67788b1 ddraw: Added a todo_wine test for SetCooperativeLevel. 2010-07-28 16:28:22 +02:00
Marcus Meissner
a58f31dd27 ddraw: Tighten up checks in DuplicateSurface (Coverity). 2010-07-26 18:38:29 +02:00
Alexandre Julliard
b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Henri Verbeet
ce8f6ecf6e ddraw: Merge the surface thunks into surface.c. 2010-07-20 13:13:04 +02:00
Henri Verbeet
6fb9ee0ee7 ddraw: Merge the ddraw thunks into ddraw.c.
Note how both ddraw 1 and ddraw 7 used the same IDirectDrawImpl_XXX naming
convention.
2010-07-20 13:13:04 +02:00
Henri Verbeet
1edda50c03 ddraw: The surface isn't allowed to be NULL in EnumSurfacesCallbackThunk() and EnumCallback(). 2010-07-19 14:49:07 +02:00
Henri Verbeet
5bf9dd902c ddraw: Get rid of some dead code. 2010-07-19 14:49:07 +02:00
Henri Verbeet
f461b39b76 ddraw: Get rid of the useless "ddraw_owner" fields. 2010-07-19 14:49:07 +02:00
Henri Verbeet
16b3f17f87 ddraw: Avoid some forward declarations. 2010-07-19 14:49:07 +02:00
Andrew Nguyen
8b1c1edb6b ddraw/tests: Test IDirect3D::FindDevice HAL enumeration. 2010-07-19 14:48:54 +02:00
Andrew Nguyen
14744c44b1 ddraw: Don't permit the enumeration of the Direct3D reference device in IDirect3D1::FindDevice. 2010-07-19 14:41:33 +02:00
Andrew Nguyen
d5c2a358b7 ddraw: Return a failure code in IDirectDrawSurfaceImpl::QueryInterface if IDirect3D7::CreateDevice fails. 2010-07-19 14:41:11 +02:00
Mikko Rasa
f18cb4c2f4 ddraw: Grow index buffer as needed. 2010-06-30 16:19:13 +02:00
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
Francois Gouget
7649c75b40 Assorted typo and spelling fixes. 2010-06-24 10:37:05 +02:00
Andrew Nguyen
bdc29f83bc ddraw/tests: Add an observation regarding device color model criteria for IDirect3D3::FindDevice. 2010-06-22 11:47:39 +02:00
Andrew Nguyen
eb9227015a ddraw: Allow the ddraw RGB device to be enumerated in IDirect3D3::FindDevice.
Partially based on a patch by David Adam.
2010-06-22 11:47:24 +02:00
Andrew Nguyen
10a076ad8d ddraw: Validate structure pointers and sizes in IDirect3D3::FindDevice. 2010-06-22 11:24:59 +02:00
Henri Verbeet
e4a4065bbd ddraw: Register / unregister the ddraw window class from DllMain().
This avoids failing in DDRAW_Create() if a previous IDirectDrawImpl object
with the same pointer value was imporperly cleaned up. The improper cleanup is
of course the larger problem, but I don't believe that can be fixed without
making more invasive changes to ddraw.
2010-06-18 15:22:22 +02:00
Michael Stefaniuc
989e98202f ddraw: Remove redundant "not NULL" check of This (coccicheck). 2010-05-18 18:42:07 +02:00
Ričardas Barkauskas
f97c995054 ddraw: Fix missing D3D misc caps. 2010-05-03 17:20:15 +02:00
Rico Schüller
cef28bb3a2 ddraw: Change return to break in PixelFormat_WineD3DtoDD(). 2010-05-03 14:00:15 +02:00
Vincent Pelletier
40cd9a7ff0 ddraw: Fix discrepancy in alpha mask for WINED3DFMT_B2G3R3A8_UNORM. 2010-05-03 13:57:58 +02:00
Johan Gill
7c90c1a0b5 ddraw: Do not restore the display mode from inside SetCooperativeLevel. 2010-04-19 16:06:01 +02:00
Johan Gill
15b959fba7 ddraw/tests: Added todo_wine test to verify resizing of fullscreen windows. 2010-04-07 18:13:05 +02:00
Henri Verbeet
f97a9e3c0f ddraw: Fix and clarify texture filter state mappings. 2010-04-06 11:48:59 +02:00
Henri Verbeet
1289842da3 wined3d: Move handling of the unimplemented WINED3DRS_STIPPLEPATTERN states to ddraw. 2010-04-02 10:36:06 +02:00
Henri Verbeet
2e5976a8c5 wined3d: Move handling of the unimplemented WINED3DRS_BORDERCOLOR state to ddraw. 2010-04-02 10:35:54 +02:00
Roderick Colenbrander
2930f84961 ddraw: Add some DirectDraw Blt tests. 2010-03-30 13:55:05 +02:00
Henri Verbeet
914c8cb8ea ddraw: Acquire/release the focus window from the correct location. 2010-03-18 10:24:15 +01:00
Stefan Dösinger
b5ddd6f0fc ddraw: Use a D24X8 depth buffer. 2010-03-17 16:08:48 +01:00
Henri Verbeet
89fef0e669 ddraw: Fix IDirectDraw4Impl_GetSurfaceFromDC().
Perhaps interesting to note is that this returns an IDirectDrawSurface instead
of an IDirectDrawSurface4.
2010-03-17 10:06:29 +01:00
Henri Verbeet
4e48ae2629 ddraw: Implement IDirectDrawImpl_GetSurfaceFromDC().
This is a pretty naive implementation, should that become a performance
problem it's easy enough to speed up with a search tree of some kind.
2010-03-17 10:06:25 +01:00
Alexandre Julliard
bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Henri Verbeet
ae437ab5b8 ddraw: Print unhandled vertex processing flags in IDirect3DExecuteBufferImpl_Execute(). 2010-03-15 15:55:14 +01:00
Michael Stefaniuc
67a2751b94 ddraw: Remove redundant memset. 2010-03-15 13:28:24 +01:00
Christian Costa
2e48bdd144 ddraw/tests: Fix typos. 2010-03-01 12:05:53 +01:00
Alexandre Julliard
6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Paul Vriens
22fc1fe366 ddraw/tests: Fix a test failure on VMware and VirtualBox on W2K and below. 2010-02-15 16:09:31 +01:00
Christian Costa
e0213af9ab ddraw: Enable GetViewport to retreive data set by SetViewport2 and vice-versa + tests. 2010-02-15 12:51:23 +01:00
Christian Costa
720aa5bf23 ddraw: Fix D3DTBLEND_MODULATE emulation.
Alpha source should be selected with WINED3DTSS_ALPHAOP and not by changing the source itself.
2010-02-15 12:51:09 +01:00
Stefan Dösinger
bb035638d0 d3d: Make sure vertexbuffer lock doesn't return a NULL pointer. 2010-02-09 11:33:53 +01:00
Alexandre Julliard
6d1ba98f5b ddraw/tests: Fix a test that fails on Win2k. 2010-02-05 11:54:51 +01:00
Stefan Dösinger
a9f969094c ddraw: Convert VB lock flags to wined3d flags. 2010-01-29 14:59:02 +01:00
Stefan Dösinger
f0266ee519 ddraw: Test invalid buffer lock parameters. 2010-01-29 14:59:02 +01:00
Henri Verbeet
69861cf873 wined3d: Get rid of the depth range hack. 2010-01-27 11:16:07 +01:00
Henri Verbeet
ec03d3e4f1 ddraw: Add depth clamp tests. 2010-01-27 11:15:58 +01:00
Michael Stefaniuc
a0789f611d ddraw: Simplify DllCanUnloadNow(). 2010-01-14 09:03:58 -06:00
Henri Verbeet
9ae92661cc ddraw: Remove a redundant return. 2009-12-30 13:31:30 +01:00
Henri Verbeet
67cba48782 wined3d: The FVF parameter to IWineD3DDeviceImpl_CreateVertexBuffer() is unused now. 2009-12-30 13:31:20 +01:00
Christian Costa
df9bddcd27 ddraw: Improve error message. 2009-12-23 14:27:30 +01:00
Luke Benstead
34e82e3dbd ddraw: Fix an incorrect refcount test. 2009-12-18 11:39:48 +01:00
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