Commit Graph

338 Commits

Author SHA1 Message Date
Stefan Dösinger 9d49b7a9be wined3d: Set palettes on the swapchain. 2014-06-30 22:04:53 +02:00
Henri Verbeet b0f1feb4f0 ddraw: Properly support creating compressed user memory surfaces. 2014-06-12 18:05:20 +02:00
Henri Verbeet e2d9cb69ba ddraw: Use wined3d_surface_get_pitch() to calculate dwLinearSize for compressed surfaces. 2014-06-12 18:05:20 +02:00
Henri Verbeet 92ea79a198 ddraw: Clear DDSD_PITCH on compressed surfaces. 2014-06-12 18:05:19 +02:00
Henri Verbeet 64a5dc11bf ddraw: Clear DDSD_LINEARSIZE on uncompressed surfaces. 2014-06-12 18:05:18 +02:00
Stefan Dösinger fd0189bbfa wined3d: Move get_dc palette updates to ddraw. 2014-05-15 19:05:02 +02:00
Stefan Dösinger fc25510fad wined3d: Remove wined3d_surface_get_palette. 2014-05-12 21:24:59 +02:00
Stefan Dösinger a227188573 ddraw: Alpha palettes can only be attached to textures. 2014-05-07 20:21:57 +02:00
Francois Gouget 4e950d9cbc ddraw: Remove WINAPI on static functions where not needed. 2014-05-02 17:15:22 +02:00
Stefan Dösinger 590582e6bc ddraw: Only ddraw7 disallows SetPalette on sublevels. 2014-04-25 20:04:38 +02:00
Henri Verbeet ac70dd2c97 ddraw: Validate the pitch for user memory surfaces against the unaligned minimum pitch.
User memory surfaces have a different minimum alignment from regular surfaces.
This fixes a regression introduced by commit
9c138d772c.
2014-04-23 15:00:35 +02:00
Stefan Dösinger ee57e19b40 ddraw: SetPrivateData(..., data = NULL, ...) is not valid. 2014-04-08 19:23:24 +02:00
Stefan Dösinger 7d793715f3 ddraw: Use the new private store api. 2014-03-17 20:23:58 +01:00
Henri Verbeet 76ab86ee7f ddraw: Disallow user memory surfaces before version 4. 2014-03-05 11:49:41 +01:00
Henri Verbeet 74b4b821ab ddraw: Clear DDSD_LPSURFACE after surface creation. 2014-03-05 11:49:38 +01:00
Henri Verbeet 9c138d772c ddraw: Validate the surface pitch for user memory surfaces in ddraw_surface_init(). 2014-03-04 11:51:06 +01:00
Henri Verbeet 10db40cecc ddraw: Don't overwrite the caller specified pitch in ddraw_surface_init(). 2014-03-04 11:51:03 +01:00
Henri Verbeet 162bc8db6e ddraw: User memory surfaces should be created with an explicit pitch. 2014-03-04 11:51:01 +01:00
Henri Verbeet da2fafca8d ddraw: User memory surfaces should be in the system memory pool. 2014-03-04 11:50:58 +01:00
Henri Verbeet 7c6ca2077f ddraw: Allow attaching surfaces other than depth buffers in ddraw_surface4_AddAttachedSurface(). 2014-01-27 17:39:47 +01:00
Henri Verbeet bddb0433f3 ddraw: Return DDERR_NOTONMIPMAPSUBLEVEL for ddraw_surface7_SetColorKey() on mipmap sub levels. 2014-01-09 17:39:47 +01:00
Henri Verbeet f7ee96c311 ddraw: Don't propagate color key changes to attached surfaces. 2014-01-09 15:50:45 +01:00
Henri Verbeet 4710c4b51a wined3d: Store color keys in textures instead of in surfaces. 2014-01-09 15:50:39 +01:00
Stefan Dösinger b91973daa7 wined3d: Merge wined3d_surface_set_mem into wined3d_surface_update_desc . 2014-01-08 20:02:22 +01:00
Stefan Dösinger 2a012ba16f ddraw: Always set surface width, height and format in ddraw_surface7_SetSurfaceDesc. 2014-01-08 19:55:06 +01:00
Stefan Dösinger f53d83cf26 ddraw: Sysmem overlays are not allowed. 2013-12-12 19:21:37 +01:00
Stefan Dösinger 0fdb1aaff6 ddraw: SetSurfaceDesc does not work on primaries. 2013-12-12 19:21:36 +01:00
Henri Verbeet d5863f7f40 ddraw: Set DDPCAPS_PRIMARYSURFACE when attaching a palette to the primary surface. 2013-12-12 12:08:25 +01:00
Henri Verbeet 9651079ff9 ddraw: Don't set the palette on attached backbuffers in ddraw_surface7_SetPalette().
Tests show this is just wrong. This patch fixes a regression introduced by
commit 74e3f516bc.
2013-12-12 12:08:19 +01:00
Henri Verbeet 1f0bb534ec ddraw: Keep a reference to the palette in the surface. 2013-12-12 12:08:16 +01:00
Henri Verbeet 0f49ffae41 ddraw: Properly swap the wined3d texture parent in ddraw_surface7_Flip(). 2013-12-06 16:46:39 +01:00
Henri Verbeet ce09d3633a ddraw: Properly flip through the swap chain in ddraw_surface7_Flip(). 2013-12-05 12:40:56 +01:00
Henri Verbeet 7524258aaf ddraw: Implement flips inside ddraw. 2013-12-05 12:40:56 +01:00
Henri Verbeet 8797a9eda3 ddraw: Require a non-zero back buffer count for swap chains. 2013-12-05 12:40:56 +01:00
Henri Verbeet 23f47b573e ddraw: Require DDSCAPS_FLIP and DDSCAPS_COMPLEX to be used together. 2013-12-05 12:40:55 +01:00
Henri Verbeet 6cba2285bc ddraw: Reject creating primary surfaces with DDSCAPS_TEXTURE. 2013-12-04 11:08:22 +01:00
Henri Verbeet 00eaf27dc7 ddraw: Validate that surfaces are on the same swap chain in ddraw_surface7_Flip(). 2013-12-04 11:07:51 +01:00
Henri Verbeet 74e3f516bc ddraw: Attach the first surface in the swap chain to the last one. 2013-12-04 11:07:46 +01:00
Henri Verbeet ab8d59c29d ddraw: Reject flips of surfaces with themselves. 2013-12-04 11:07:41 +01:00
Frédéric Delanoy 5ba7f79bad Assorted spelling fixes. 2013-12-03 19:41:53 +01:00
Stefan Dösinger 5e43ee256c ddraw: Check for lpSurface=NULL in SetSurfaceDesc. 2013-12-03 19:36:11 +01:00
Stefan Dösinger c15d89c803 ddraw: SetSurfaceDesc accepts DDSD_CAPS with dwCaps=0. 2013-12-03 19:36:09 +01:00
Stefan Dösinger 1f36605886 ddraw: SetSurfaceDesc is not allowed on managed textures. 2013-12-03 19:36:07 +01:00
Henri Verbeet e780ee581d ddraw: Return the correct error in ddraw_surface7_Flip() when the surface is not flippable. 2013-12-03 12:35:19 +01:00
Henri Verbeet 66c71baefe ddraw: Only set DDSCAPS_FRONTBUFFER on flippable surfaces. 2013-12-03 12:35:14 +01:00
Henri Verbeet 76420a2441 ddraw: Only set DDSCAPS_VISIBLE on the root surface. 2013-12-03 12:35:11 +01:00
Henri Verbeet 28efaec21f ddraw: Only set DDSCAPS_PRIMARYSURFACE on the root surface. 2013-12-03 12:35:07 +01:00
Henri Verbeet 8a9fdb567e ddraw: Get rid of the DDSCAPS_BACKBUFFER validation in ddraw_surface_create().
All callers except ddraw1_CreateSurface() already have a stricter check
themselves.
2013-12-02 12:12:48 +01:00
Henri Verbeet d56b7c2016 ddraw: Use hr_ddraw_from_wined3d() in ddraw_surface_create(). 2013-12-02 12:12:45 +01:00
Henri Verbeet 82d5f36c8b ddraw: Get rid of copy_to_surfacedesc2(). 2013-11-28 11:19:16 +01:00