346 Commits

Author SHA1 Message Date
Henri Verbeet
b005ad6f90 wined3d: Use rendertarget views for color output instead of surfaces. 2014-08-21 12:24:42 +02:00
Stefan Dösinger
9bb5b00dd5 ddraw: Do not set lpSurface in GetSurfaceDesc.
This reverts a5c484cbf3948ec824e990503f798d3333ff55fb. The test included
in a5c484cb is wrong and contains a typo that leads to incorrect
assumptions. The Dungeon Keeper 2 crash that was the reason for patch
a5c484cb is fixed properly by the previous patch.
2014-08-19 14:50:17 +02:00
Stefan Dösinger
61ee3323ad ddraw: Clear application-passed lpSurface pointers. 2014-08-19 14:50:12 +02:00
Stefan Dösinger
341db6d8d3 wined3d: Remove wined3d_texture_set/get_priority. 2014-07-16 16:10:05 +02:00
Stefan Dösinger
2abecc46c6 wined3d: Remove wined3d_surface_set/get_priority. 2014-07-16 16:09:51 +02:00
Stefan Dösinger
5b9f91c18d ddraw: Add validation to SetPriority / GetPriority. 2014-07-16 16:09:22 +02:00
Stefan Dösinger
403d7c1dee ddraw: Refuse SetPalette and GetPalette on lost surfaces.
The SetPalette check is outside of ddraw_surface_set_palette to make
sure the palettes are properly freed when a lost P8 surface is destroyed.
2014-07-07 15:49:06 +02:00
Henri Verbeet
8ebc82cd8d ddraw: Check for a lost surface in ddraw_surface7_Flip(). 2014-07-01 12:51:46 +02:00
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
9c138d772c692d44103a6641c32f3b74dc83303e.
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 74e3f516bc331205474835811d3984b9c53b0f35.
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