Commit Graph

1692 Commits

Author SHA1 Message Date
Henri Verbeet d6dfb7914a ddraw/tests: Fix some surface locking calls.
In ddraw7 DDLOCK_WAIT is the default behaviour, in earlier versions it's
DDLOCK_DONOTWAIT.
2012-01-12 12:37:09 +01:00
Henri Verbeet b6431d9493 wined3d: Get rid of the WINED3DTEXTUREOP typedef. 2012-01-11 17:47:22 +01:00
Henri Verbeet 43fcbcb36e wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef. 2012-01-10 10:47:27 +01:00
Henri Verbeet 1ef86ad596 ddraw: Properly clear the clip list if ddraw_clipper_SetClipList() is called with NULL region data. 2012-01-10 10:47:13 +01:00
Henri Verbeet e2765579bc ddraw/tests: Add tests for clippers with a destroyed window. 2012-01-10 10:47:04 +01:00
Francois Gouget daeb4d6d29 ddraw: Make ddraw_reset_enum_callback() and ddraw_surface_destroy() static. 2012-01-09 12:52:11 +01:00
Francois Gouget adcd8637ac ddraw/tests: Fix compilation on systems that don't support nameless unions. 2012-01-09 12:52:10 +01:00
Henri Verbeet 9a8491045e wined3d: Get rid of the WINED3DMULTISAMPLE_TYPE typedef. 2012-01-09 12:22:17 +01:00
Henri Verbeet 08545dc739 wined3d: Get rid of the WINED3DSAMPLERSTATETYPE typedef. 2012-01-09 12:22:12 +01:00
Henri Verbeet 01992d7fb5 ddraw: Don't leak the window region if we have an extra clip rect in ddraw_clipper_GetClipList(). 2012-01-09 12:21:59 +01:00
Henri Verbeet 3d33887c2f wined3d: Get rid of the WINED3DSWAPEFFECT typedef. 2012-01-06 19:24:22 +01:00
Henri Verbeet 31f3120815 ddraw: Convert to integer before adjusting the clipped source rect.
This makes a difference for the bottom and right edges, and we could end up
with an empty source rectangle otherwise.
2012-01-06 19:24:20 +01:00
Henri Verbeet f17e714857 ddraw: Implement IDirectDrawClipper::SetClipList(). 2012-01-06 19:24:20 +01:00
Henri Verbeet 3e9fe3e938 ddraw: Use the window's client rect for clipping. 2012-01-06 19:24:19 +01:00
Henri Verbeet 223b0736c0 ddraw: Disallow clipped blits in ddraw_surface7_BltFast(). 2012-01-05 20:54:21 +01:00
Henri Verbeet 99e5e3ac0d ddraw: Refuse to set a clip list if a clipper is already tracking a window. 2012-01-05 20:54:19 +01:00
Henri Verbeet 3997457574 ddraw/tests: Add some clipper tests. 2012-01-05 20:54:17 +01:00
André Hentschel b5ba054ce8 Assorted header comment cleanup. 2012-01-04 19:35:13 +01:00
Michael Stefaniuc f1f5536d8f ddraw: Fix two memory leaks (Smatch). 2012-01-03 12:37:58 +01:00
Henri Verbeet 387a5f632c ddraw: Fix the title and class name for the auto ddraw device window. 2011-12-23 13:44:26 +01:00
Henri Verbeet 3e6313050b ddraw: Handle the special DDSCL_SETFOCUSWINDOW | DDSCL_CREATEDEVICEWINDOW combination. 2011-12-23 13:44:19 +01:00
Henri Verbeet d8153e5364 ddraw: Properly handle DDSCL_CREATEDEVICEWINDOW. 2011-12-23 13:44:12 +01:00
Henri Verbeet a5af10e12b ddraw: Clear the focus and device windows on DDSCL_NORMAL. 2011-12-23 13:44:07 +01:00
Henri Verbeet 2ec0c7bfdc ddraw: DDSCL_CREATEDEVICEWINDOW requires DDSCL_EXCLUSIVE. 2011-12-23 13:44:00 +01:00
Henri Verbeet 00096c82fd wined3d: Get rid of the WINED3DZBUFFERTYPE typedef. 2011-12-22 10:08:48 +01:00
Henri Verbeet 654d53fa5f ddraw/tests: Add some tests for DDSCL_CREATEDEVICEWINDOW. 2011-12-22 10:08:45 +01:00
Henri Verbeet fe4e2bf60e ddraw/tests: Fix a couple of test messages. 2011-12-22 10:08:07 +01:00
Henri Verbeet 4a30db74b1 ddraw: Handle the Direct3D clipspace transformation.
Direct3D3 and earlier have an extra transformation to scale clipspace. It's
controlled by the extra viewport parameters in those versions.
2011-12-22 10:07:59 +01:00
Henri Verbeet 3082c1a9de wined3d: Get rid of the WINED3DRENDERSTATETYPE typedef. 2011-12-20 10:11:47 +01:00
Henri Verbeet 5c3ba123de ddraw/tests: Move the Direct3D7 ProcessVertices() test to ddraw7.c. 2011-12-20 10:11:36 +01:00
Henri Verbeet 7cdfa40156 ddraw/tests: Add a ProcessVertices() test for Direct3D3. 2011-12-20 10:11:24 +01:00
Henri Verbeet cb8f26be02 ddraw/tests: Remove some error checking from ProcessVerticesTest(). 2011-12-20 10:10:39 +01:00
Henri Verbeet fb28e7f596 ddraw/tests: Introduce proper vector types. 2011-12-19 20:15:48 +01:00
Henri Verbeet bd09f63bff ddraw/tests: Remove a redundant IDirect3DDevice7_SetViewport() call. 2011-12-19 20:15:48 +01:00
Henri Verbeet 2db8688185 ddraw/tests: Introduce some functions for comparing floating-point vectors. 2011-12-19 20:15:48 +01:00
Henri Verbeet 67bca436ee wined3d: Get rid of the WINED3DDEVTYPE typedef. 2011-12-13 18:58:58 +01:00
Henri Verbeet ebb85da5f7 wined3d: Get rid of the WINEDDCAPS typedef. 2011-12-13 18:58:58 +01:00
Henri Verbeet 10d2a9375d ddraw: Add support for clipped blits. 2011-12-13 18:58:56 +01:00
Henri Verbeet e6fb4537f0 ddraw: Move clipper handling to ddraw. 2011-12-13 18:58:37 +01:00
Henri Verbeet 9d55388156 ddraw: Destroy the swapchain after the D3D device in DllMain(). 2011-12-12 10:20:41 +01:00
Stefan Dösinger 9cf25006ad ddraw/tests: Extend the CreateSurface(NULL test), use own function. 2011-12-08 18:04:29 +01:00
Stefan Dösinger 481e2f3366 ddraw: SetSurfaceDesc can set width, height and pitch under certain conditions. 2011-12-08 18:04:18 +01:00
Stefan Dösinger b2ca7e37f4 ddraw/tests: Make the SetSurfaceDesc test ok messages consistent. 2011-12-08 18:00:32 +01:00
Henri Verbeet 3dd03f642d wined3d: Get rid of the WINEDDCOLORKEY typedef. 2011-12-08 10:27:53 +01:00
Henri Verbeet 52231bc467 wined3d: Get rid of the WineDirect3DVertexStridedData typedef. 2011-12-08 10:27:50 +01:00
Henri Verbeet 4c3dfa1bca wined3d: Get rid of the WineDirect3DStridedData typedef. 2011-12-07 17:49:56 +01:00
Henri Verbeet 05acde9cd1 ddraw: Just read the actual reference counts in DestroyCallback(). 2011-12-07 17:49:55 +01:00
Henri Verbeet ecb2859d3c ddraw: Destroy the swapchain in the DllMain() cleanup handler.
This is mostly to make sure there aren't any resources still being referenced
by wined3d.
2011-12-07 17:49:55 +01:00
Stefan Dösinger 7ae81ba378 ddraw/tests: Add a IDirect3DDevice2 GetCaps test. 2011-12-06 17:07:15 +01:00
Henri Verbeet eafebc0491 wined3d: Get rid of the WINED3DLOCKED_RECT typedef. 2011-12-06 15:50:58 +01:00
Henri Verbeet 6523ef5f67 ddraw: Don't enumerate surfaces without references. 2011-12-06 15:50:58 +01:00
Stefan Dösinger ea151da3cd ddraw/tests: Update a copyright line. 2011-12-05 17:40:21 +01:00
Stefan Dösinger d4f504c698 ddraw/tests: Add a IDirect3DDevice7 GetCaps test. 2011-12-05 17:40:11 +01:00
Stefan Dösinger cc06d182fb ddraw: Size handling fixes for IDirect3DDevice::GetCaps. 2011-12-05 17:40:04 +01:00
Henri Verbeet 94c9b0b4fc wined3d: Get rid of the WINED3DPRESENT_PARAMETERS typedef. 2011-12-02 11:51:29 +01:00
Henri Verbeet 3a2921c559 ddraw: Keep the primary surface mapped at the same address for early ddraw versions. 2011-11-30 11:50:58 +01:00
Henri Verbeet 3430e11605 wined3d: Add a flags parameter to wined3d_surface_create(). 2011-11-30 11:50:48 +01:00
Henri Verbeet 82dd612d50 ddraw: Resize the swapchain window on mode changes in exclusive mode. 2011-11-30 11:50:42 +01:00
Henri Verbeet 22d41e2c3f ddraw: Rename the wineD3D field in IDirectDrawImpl to wined3d. 2011-11-29 13:23:00 +01:00
Henri Verbeet 0f10ac9358 ddraw: Create the wined3d swapchain when setting the cooperative level. 2011-11-29 13:22:54 +01:00
Henri Verbeet f41ea4fefe ddraw/tests: Add tests for primary dimensions to test_coop_level_mode_set(). 2011-11-28 16:40:47 +01:00
Henri Verbeet 376ffdf3d5 wined3d: Get rid of the WINED3DADAPTER_IDENTIFIER typedef. 2011-11-24 17:10:09 +01:00
Henri Verbeet bca0ec8182 ddraw: Fail surface creation if the cooperative level isn't set yet. 2011-11-24 17:09:57 +01:00
Henri Verbeet 21bd722c46 ddraw: Set the render target to the wined3d frontbuffer on D3D device cleanup.
We don't need any specific render target here, since without a D3D device we
can't do any rendering anyway. We just want to avoid pointing to something
that was free'd.
2011-11-24 17:09:48 +01:00
Henri Verbeet 74345201ad ddraw: Move setting ddraw->d3d_target out of ddraw_attach_d3d_device(). 2011-11-23 09:13:49 +01:00
Matteo Bruni ca83e14aba ddraw: Reorder formats in EnumTextureFormats. 2011-11-23 09:13:28 +01:00
Henri Verbeet 2e1c0d83c1 wined3d: Get rid of the WINED3DGAMMARAMP typedef. 2011-11-22 10:52:45 +01:00
Henri Verbeet be8917cd91 wined3d: Get rid of the WINED3DVIEWPORT typedef. 2011-11-22 10:52:40 +01:00
Francois Gouget 3315918eac ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-11-21 11:01:10 +01:00
Henri Verbeet 02bb70fc3b wined3d: Get rid of the WINED3DMATERIAL typedef. 2011-11-21 11:01:02 +01:00
Henri Verbeet f597359727 wined3d: Get rid of the WINED3DLIGHT typedef. 2011-11-21 11:00:57 +01:00
Henri Verbeet 37a0f7ad65 wined3d: Get rid of the WINED3DMATRIX typedef. 2011-11-18 14:26:16 +01:00
Henri Verbeet 8e6f5c34a2 ddraw: We can't render to the desktop window either. 2011-11-18 14:26:16 +01:00
Henri Verbeet 18a7653c78 wined3d: Get rid of the WINED3DDISPLAYMODE typedef. 2011-11-17 11:37:26 +01:00
Henri Verbeet e0a0d611af wined3d: Pass a wined3d_color struct to wined3d_device_clear(). 2011-11-16 09:41:53 +01:00
Stefan Dösinger 9e0baa55ce ddraw: Set correct HEL and HAL color models. 2011-11-15 19:37:28 +01:00
Stefan Dösinger c3d6061593 ddraw: Add more tests and fixes for SetSurfaceDesc. 2011-11-15 19:37:28 +01:00
Stefan Dösinger 460e35aace ddraw/tests: Mark a VMware failure broken. 2011-11-15 19:37:28 +01:00
Stefan Dösinger edfeec60b1 ddraw/tests: Add a YV12 blit test. 2011-11-14 15:25:24 +01:00
Stefan Dösinger a9c72d8772 ddraw/tests: Add a test for YV12 partial block locks and lock offsets. 2011-11-14 15:25:24 +01:00
Henri Verbeet a2963b662c ddraw: Use wined3d_mutex_lock() / wined3d_mutex_unlock() for locking. 2011-11-14 15:25:21 +01:00
Francois Gouget 82c3b84e40 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-11-14 15:25:20 +01:00
Octavian Voicu 8a6a157074 ddraw: Make IDirectDrawClipperImpl_[GS]etHWnd function names consistent with SDK. 2011-11-09 17:51:28 +01:00
Stefan Dösinger 6a7c82186a ddraw/tests: Add a partial block lock test. 2011-11-08 18:19:16 +01:00
Octavian Voicu 0134df1973 ddraw/tests: Fix a couple of copy-paste typos in test messages. 2011-11-08 14:22:04 +01:00
Francois Gouget 9b7178e633 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-11-07 11:32:57 +01:00
Octavian Voicu 6e75f68153 ddraw/tests: Add more attachment/detachment test cases. 2011-11-03 13:52:15 +01:00
Octavian Voicu 9776a3bae2 ddraw/tests: Use more common pixel formats and caps for attachment tests. 2011-11-03 13:52:15 +01:00
Octavian Voicu 6e7bb64950 ddraw/tests: Move surface attachment tests from refcount.c to dsurface.c. 2011-11-03 13:52:15 +01:00
Henri Verbeet fcf96b634a wined3d: Create the DIB section for DDSCAPS_OWNDC surfaces on initialization. 2011-10-31 23:52:51 +01:00
Henri Verbeet 1bf36a3f40 ddraw: Implement ddraw_surface7_BltFast() on top of wined3d_surface_blt(). 2011-10-31 16:46:19 +01:00
Henri Verbeet 5193f6704c ddraw: Implement copy_mipmap_chain() on top of wined3d_surface_blt(). 2011-10-31 16:46:19 +01:00
Henri Verbeet 38abddca68 ddraw: Only update primary_lock when we're actually locking the frontbuffer.
This fixes a regression introduced by commit
8330558e12.
2011-10-27 19:34:09 +02:00
Henri Verbeet d09ad48328 ddraw: Read/draw from/to the actual screen when there is no swapchain window. 2011-10-25 16:57:24 +02:00
Henri Verbeet 8330558e12 ddraw: Keep track of the affected rectangle for ddraw_surface_update_frontbuffer(). 2011-10-25 16:57:24 +02:00
Henri Verbeet 4408c5abc6 ddraw: Clear attached_iface before releasing it in ddraw_surface_delete_attached_surface().
Spotted by Dan Kegel / Valgrind.
2011-10-19 12:23:23 +02:00
Henri Verbeet 10b54a7860 ddraw: Initialize the surface desc's dwFlags field to 0 before surface locks.
Otherwise DDSD2_to_DDSD() would try to convert uninitialized data on failure.
Spotted by Dan Kegel / Valgrind.
2011-10-19 12:23:15 +02:00
Marcus Meissner b08d4f597a ddraw: Lowercase variable names to fix a incorrect sizeof() (Coverity). 2011-10-18 15:17:49 +02:00
Henri Verbeet 14ca56ed97 ddraw: Destroy the swapchain in ddraw_destroy() if it still exists. 2011-10-18 15:10:21 +02:00
Ričardas Barkauskas 472a8f7a67 ddraw: COM cleanup for IDirect3DDevice7 interface. 2011-10-17 18:24:58 +02:00
Ričardas Barkauskas 7dc08745d1 ddraw: Use impl_from_IDirect3DDevice7 for application provided interfaces. 2011-10-17 18:24:42 +02:00
Ričardas Barkauskas 31cf68dd95 ddraw: Use unsafe_impl_from_IDirect3DDevice7 for application provided interfaces. 2011-10-17 18:24:30 +02:00
Ričardas Barkauskas 6b7e3e77d0 ddraw: COM cleanup for IDirect3DDevice3 interface. 2011-10-17 18:24:21 +02:00
Ričardas Barkauskas bd530d3aba ddraw: Rename device_from_device3 to impl_from_IDirect3DDevice3. 2011-10-17 18:24:10 +02:00
Ričardas Barkauskas a90b2ad002 ddraw: Use unsafe_impl_from_IDirect3DDevice3 for application provided interfaces. 2011-10-17 18:23:51 +02:00
Ričardas Barkauskas d32df839ac ddraw: COM cleanup for IDirect3DDevice2 interface. 2011-10-17 18:23:42 +02:00
Ričardas Barkauskas 1c045cbb28 ddraw: Rename device_from_device2 to impl_from_IDirect3DDevice2. 2011-10-17 18:23:33 +02:00
Ričardas Barkauskas a870753dba ddraw: Use unsafe_impl_from_IDirect3DDevice2 for application provided interfaces. 2011-10-17 18:23:18 +02:00
Ričardas Barkauskas d5912c533f ddraw: COM cleanup for IDirect3DDevice interface. 2011-10-17 18:23:09 +02:00
Ričardas Barkauskas a0c9ab7894 ddraw: Rename device_from_device1 to impl_from_IDirect3DDevice. 2011-10-17 18:22:56 +02:00
Ričardas Barkauskas d19e416dee ddraw: Use unsafe_impl_from_IDirect3DDevice for application provided interfaces. 2011-10-17 18:22:44 +02:00
Octavian Voicu b44eef7085 ddraw: Keep track of interface attached by AddAttachedSurface and detach correct interface when parent is released. 2011-10-12 20:52:46 +02:00
Octavian Voicu a843acef55 ddraw: Be consistent about param and local var naming across AddAttachedSurface implementations. 2011-10-11 20:12:10 +02:00
Octavian Voicu 9cff895a69 ddraw/tests: Test detachment of attached surfaces on Release. 2011-10-11 20:12:06 +02:00
Stefan Dösinger 496b438ede wined3d: Remove d3d8/9 palette support. 2011-10-11 13:37:49 +02:00
Ričardas Barkauskas 38982ddf11 ddraw: Use unsafe_impl_from_IDirect3DViewport2 for application provided interfaces. 2011-10-04 15:25:31 -05:00
Ričardas Barkauskas 25bf0e914c ddraw: Use unsafe_impl_from_IDirect3DViewport for application provided interfaces. 2011-10-04 15:25:25 -05:00
Ričardas Barkauskas 6253d319cb ddraw: COM cleanup for IDirect3DViewport3 interface. 2011-10-04 15:25:20 -05:00
Ričardas Barkauskas 48668e9047 ddraw: Compare IDirect3DViewport3 interface instead of IDirect3DViewportImpl. 2011-10-04 15:25:13 -05:00
Ričardas Barkauskas 26be3c3000 ddraw: Use impl_from_IDirect3DViewport3 instead of cast to IDirect3DViewportImpl*. 2011-10-04 15:25:08 -05:00
Ričardas Barkauskas f44734b724 ddraw: Use unsafe_impl_from_IDirect3DViewport3 for application provided interfaces. 2011-10-04 15:25:00 -05:00
Ričardas Barkauskas f0354fde02 ddraw/tests: IDirect3DViewport3, IDirect3DViewport2 and IDirect3DViewport use same implementation. 2011-10-04 15:24:53 -05:00
Ričardas Barkauskas a6656468ef ddraw: COM cleanup for the IDirectDrawPalette interface. 2011-10-04 15:24:44 -05:00
Ričardas Barkauskas a8616b7fcb ddraw: Use unsafe_impl_from_IDirectDrawPalette for application provided interfaces. 2011-10-04 15:24:20 -05:00
Akihiro Sagawa f2044702fa ddraw: Use the same device name as Windows for the Direct3D HAL device. 2011-10-03 11:25:59 -05:00
Francois Gouget 3de330db54 tests: Remove unneeded assert.h includes. 2011-09-27 10:59:56 +02:00
Stefan Dösinger 35f2e91fcd ddraw/tests: Use the variable instead of the type in sizeof(). 2011-09-26 17:59:37 +02:00
Stefan Dösinger 6e0d056e9a ddraw/tests: Use sizeof instead of a magic number. 2011-09-26 17:59:34 +02:00
Henri Verbeet 4228bbc5bf ddraw: Store the wined3d swapchain reference in the ddraw object instead of the primary surface. 2011-09-20 16:21:38 +02:00
Henri Verbeet cc45316d02 ddraw: Setup swapchain dimensions and format using the current display mode in ddraw_create_swapchain(). 2011-09-20 16:21:38 +02:00
Stefan Dösinger f41513205c ddraw/tests: Accept another error when setting an overlay with a NULL rect. 2011-09-19 18:32:51 +02:00
Stefan Dösinger 95b7cda6be ddraw/tests: Mark a strange radeon X1600 Windows behavior broken. 2011-09-19 18:32:51 +02:00
Stefan Dösinger 81a9f19bac ddraw/tests: Remove the partial cube map load tests.
They BSOD my Radeon X1600 Windows machine.
2011-09-19 18:32:51 +02:00
Henri Verbeet 18840ff9d9 ddraw/tests: Add some tests for Initialize(). 2011-09-19 17:56:05 +02:00
Henri Verbeet ec04f80cf6 ddraw: Implement ddraw7_Initialize(). 2011-09-19 17:56:05 +02:00
Henri Verbeet feb96511a9 ddraw: Get rid of IDirectDraw3. 2011-09-19 17:56:05 +02:00
Stefan Dösinger eac78fd488 ddraw/tests: Add some slop to the fog tests. 2011-09-16 17:23:10 +02:00
Henri Verbeet b9fcf71c71 ddraw: Use real flips. 2011-09-16 17:23:08 +02:00
Henri Verbeet 1aeee59bd8 ddraw: Use offscreen backbuffers.
In principle this allows us to use more than one backbuffer in ddraw. It's
also a requirement for the next patch.
2011-09-16 17:23:08 +02:00
Henri Verbeet 5186882098 ddraw: Store the primary surface. 2011-09-16 17:23:08 +02:00
Stefan Dösinger e28041c9a6 ddraw/tests: Not all GPUs support dwZBufferBitDepth=24 on Windows. 2011-09-15 15:41:40 +02:00
Henri Verbeet b741cd02c3 ddraw: Get rid of some unused macros. 2011-09-15 15:41:40 +02:00
Henri Verbeet f60b54d952 ddraw: Get rid of the surfaces field in IDirectDrawImpl. 2011-09-15 15:41:40 +02:00
Henri Verbeet 5de020342c ddraw: Get rid of the unused "initialized" field in IDirectDrawImpl. 2011-09-14 09:59:12 +02:00
Henri Verbeet 8173e6f539 ddraw: Just use a static variable for vblank emulation. 2011-09-14 09:58:58 +02:00
Henri Verbeet 60f6c41a67 ddraw: Just use a static variable for scanline emulation.
Tracking it per ddraw object doesn't add much.
2011-09-14 09:58:53 +02:00
Francois Gouget 8973c20f7d Assorted spelling fixes. 2011-09-13 11:27:01 +02:00
Dan Kegel c5d45e8b88 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-09-13 11:27:00 +02:00
Henri Verbeet f2115004d5 ddraw: Get rid of some ERRs in PixelFormat_DD2WineD3D().
Most of these would just be the result of the application giving us invalid
pixel formats.
2011-09-13 09:19:40 +02:00
Henri Verbeet be32dd86d6 ddraw: Get rid of an unused prototype. 2011-09-13 09:19:30 +02:00