Commit Graph

1671 Commits

Author SHA1 Message Date
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
Stefan Dösinger 081f39044f ddraw: Use a Z format suported by the driver in the visual test. 2011-09-12 10:10:20 +02:00
Stefan Dösinger 0cea17037c ddraw: Correct D3DFMT_R5G6B5 in a test. 2011-09-12 10:10:06 +02:00
Henri Verbeet b23809868a ddraw: Get the total amount of video memory from wined3d.
Instead of hoping that what's available at ddraw_init() time is the total.
2011-09-12 10:08:52 +02:00
Henri Verbeet aa5590b061 ddraw: Remove the unused "depthstencil" field from IDirectDrawImpl. 2011-09-12 10:08:43 +02:00
Henri Verbeet f3e1a9fa16 ddraw: Initialize the swapchain presentation parameters in ddraw_create_swapchain(). 2011-09-12 10:08:38 +02:00
Francois Gouget 489527fe44 ddraw: Remove WINAPI on static functions where not needed. 2011-09-08 20:08:07 +02:00
Henri Verbeet bbfbd66d9f ddraw: Introduce a function for creating the swapchain. 2011-09-08 11:11:20 +02:00
Henri Verbeet cbc009b8d2 ddraw: Also check errors returned by ddraw_create_gdi_swapchain() in CreateSurface(). 2011-09-08 11:11:15 +02:00
Stefan Dösinger 73f9dd1c30 ddraw: Add tests for dwZBufferBitDepth and dwMipMapCount values. 2011-09-07 11:15:43 +02:00
Stefan Dösinger 4466d6223b ddraw: Add tests for DDSD_PIXELFORMAT and DDSD_ZBUFFERBITDEPTH in Lock. 2011-09-07 11:15:37 +02:00
Stefan Dösinger 029c5a6cf1 ddraw: Convert DDSURFACEDESC2 in lock. 2011-09-07 11:15:32 +02:00
Stefan Dösinger d6f17d686d ddraw: Check the alignment, not the size. 2011-09-07 11:15:20 +02:00
Stefan Dösinger 8e79a7e664 ddraw: Add some NULL pointer tests. 2011-09-07 11:15:09 +02:00
Stefan Dösinger 252bead280 ddraw: Remove crashing tests. 2011-09-07 11:15:05 +02:00
Henri Verbeet 5824551d76 ddraw: Set the swap effect to WINED3DSWAPEFFECT_COPY in ddraw_create_gdi_swapchain().
The actual swapchain implementation ignores the swap effect and always does a
copy anyway, but this makes it consistent with ddraw_attach_d3d_device().
2011-09-07 11:12:43 +02:00
Henri Verbeet 582767ce45 ddraw: Only explicitly initialize non-zero fields in ddraw_create_gdi_swapchain().
Update ddraw_attach_d3d_device() for consistency.
2011-09-07 11:12:34 +02:00
Francois Gouget 94532dbd08 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-09-05 10:54:00 +02:00
Ričardas Barkauskas d9ada7929a ddraw: Don't allow SetPalette on mipmap sublevels instead of root surfaces. 2011-09-02 18:28:25 +02:00
Stefan Dösinger 4107963967 ddraw: Fix a test message. 2011-09-02 14:42:53 +02:00
Stefan Dösinger 6057041deb ddraw: Make the overlay tests pass on Windows 7. 2011-09-02 14:42:48 +02:00
Stefan Dösinger e0db367aef ddraw: Set the viewport after changing the render target. 2011-09-02 14:42:43 +02:00