Rebase against 9d897b73a877e5eaae26df87930c951ff8273c14

This commit is contained in:
Alistair Leslie-Hughes
2018-02-14 08:13:50 +11:00
parent e58651c321
commit 47d2040c12
42 changed files with 415 additions and 2005 deletions

View File

@@ -1,52 +0,0 @@
From 80ed5b05271aed72ae87ecfc354dce8cca5efd19 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 24 Jan 2017 03:47:25 +0100
Subject: crypt32: Recognize sha256/384/512 KEY OIDs.
---
dlls/crypt32/oid.c | 6 ++++++
include/wincrypt.h | 4 ++++
2 files changed, 10 insertions(+)
diff --git a/dlls/crypt32/oid.c b/dlls/crypt32/oid.c
index d5c29534c23..7c07b9fcd99 100644
--- a/dlls/crypt32/oid.c
+++ b/dlls/crypt32/oid.c
@@ -1053,6 +1053,9 @@ static const WCHAR rc2[] = { 'r','c','2',0 };
static const WCHAR rc4[] = { 'r','c','4',0 };
static const WCHAR sha[] = { 's','h','a',0 };
static const WCHAR sha1[] = { 's','h','a','1',0 };
+static const WCHAR sha256[] = { 's','h','a','2','5','6',0 };
+static const WCHAR sha384[] = { 's','h','a','3','8','4',0 };
+static const WCHAR sha512[] = { 's','h','a','5','1','2',0 };
static const WCHAR RSA[] = { 'R','S','A',0 };
static const WCHAR RSA_KEYX[] = { 'R','S','A','_','K','E','Y','X',0 };
static const WCHAR RSA_SIGN[] = { 'R','S','A','_','S','I','G','N',0 };
@@ -1157,6 +1160,9 @@ static const struct OIDInfoConstructor {
{ 1, szOID_RSA_MD5, CALG_MD5, md5, NULL },
{ 1, szOID_RSA_MD4, CALG_MD4, md4, NULL },
{ 1, szOID_RSA_MD2, CALG_MD2, md2, NULL },
+ { 1, szOID_NIST_sha256, CALG_SHA_256, sha256, NULL },
+ { 1, szOID_NIST_sha384, CALG_SHA_384, sha384, NULL },
+ { 1, szOID_NIST_sha512, CALG_SHA_512, sha512, NULL },
{ 2, szOID_OIWSEC_desCBC, CALG_DES, des, NULL },
{ 2, szOID_RSA_DES_EDE3_CBC, CALG_3DES, tripledes, NULL },
diff --git a/include/wincrypt.h b/include/wincrypt.h
index 88b4b65d4c1..14705708f2b 100644
--- a/include/wincrypt.h
+++ b/include/wincrypt.h
@@ -3149,6 +3149,10 @@ typedef struct _CTL_FIND_SUBJECT_PARA
#define szOID_NETSCAPE_DATA_TYPE "2.16.840.1.113730.2"
#define szOID_NETSCAPE_CERT_SEQUENCE "2.16.840.1.113730.2.5"
+#define szOID_NIST_sha256 "2.16.840.1.101.3.4.2.1"
+#define szOID_NIST_sha384 "2.16.840.1.101.3.4.2.2"
+#define szOID_NIST_sha512 "2.16.840.1.101.3.4.2.3"
+
/* Bits for szOID_NETSCAPE_CERT_TYPE */
#define NETSCAPE_SSL_CLIENT_AUTH_CERT_TYPE 0x80
#define NETSCAPE_SSL_SERVER_AUTH_CERT_TYPE 0x40
--
2.11.0

View File

@@ -1 +0,0 @@
Fixes: [41356] Recognize sha256/384/512 KEY OIDs

View File

@@ -1,7 +1,8 @@
From 9dc913d2ae5fca9a46acc67d896cf317389f7d97 Mon Sep 17 00:00:00 2001
From 19d3f2a7b2bdd740cc46e4b0f8a08d4c7e3e33bc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Thu, 25 Aug 2016 19:41:15 +0200
Subject: d3d11: Add stub ID3D11Texture2D and ID3D10Texture2D interfaces.
Subject: [PATCH] d3d11: Add stub ID3D11Texture2D and ID3D10Texture2D
interfaces.
---
dlls/d3d11/d3d11_private.h | 21 +++
@@ -10,10 +11,10 @@ Subject: d3d11: Add stub ID3D11Texture2D and ID3D10Texture2D interfaces.
3 files changed, 393 insertions(+), 4 deletions(-)
diff --git a/dlls/d3d11/d3d11_private.h b/dlls/d3d11/d3d11_private.h
index 4af0faa..6bd7282 100644
index 52496d8..bdd7c34 100644
--- a/dlls/d3d11/d3d11_private.h
+++ b/dlls/d3d11/d3d11_private.h
@@ -104,6 +104,27 @@ void skip_dword_unknown(const char **ptr, unsigned int count) DECLSPEC_HIDDEN;
@@ -111,6 +111,27 @@ void skip_dword_unknown(const char **ptr, unsigned int count) DECLSPEC_HIDDEN;
HRESULT parse_dxbc(const char *data, SIZE_T data_size,
HRESULT (*chunk_handler)(const char *data, DWORD data_size, DWORD tag, void *ctx), void *ctx) DECLSPEC_HIDDEN;
@@ -42,10 +43,10 @@ index 4af0faa..6bd7282 100644
struct d3d_texture2d
{
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index 9a42c8b..8c2aab6 100644
index 6a747d0..b514ebd 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -2106,9 +2106,18 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CreateBuffer(ID3D11Device *iface,
@@ -6028,9 +6028,18 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CreateBuffer(ID3D11Device *iface,
static HRESULT STDMETHODCALLTYPE d3d11_device_CreateTexture1D(ID3D11Device *iface,
const D3D11_TEXTURE1D_DESC *desc, const D3D11_SUBRESOURCE_DATA *data, ID3D11Texture1D **texture)
{
@@ -66,7 +67,7 @@ index 9a42c8b..8c2aab6 100644
}
static HRESULT STDMETHODCALLTYPE d3d11_device_CreateTexture2D(ID3D11Device *iface,
@@ -4436,9 +4445,28 @@ static HRESULT STDMETHODCALLTYPE d3d10_device_CreateBuffer(ID3D10Device1 *iface,
@@ -8272,9 +8281,28 @@ static HRESULT STDMETHODCALLTYPE d3d10_device_CreateBuffer(ID3D10Device1 *iface,
static HRESULT STDMETHODCALLTYPE d3d10_device_CreateTexture1D(ID3D10Device1 *iface,
const D3D10_TEXTURE1D_DESC *desc, const D3D10_SUBRESOURCE_DATA *data, ID3D10Texture1D **texture)
{
@@ -98,7 +99,7 @@ index 9a42c8b..8c2aab6 100644
static HRESULT STDMETHODCALLTYPE d3d10_device_CreateTexture2D(ID3D10Device1 *iface,
diff --git a/dlls/d3d11/texture.c b/dlls/d3d11/texture.c
index d7b2af1..d201b23 100644
index 4315284..00540b5 100644
--- a/dlls/d3d11/texture.c
+++ b/dlls/d3d11/texture.c
@@ -25,6 +25,346 @@
@@ -447,7 +448,7 @@ index d7b2af1..d201b23 100644
+
/* ID3D11Texture2D methods */
static inline struct d3d_texture2d *impl_from_ID3D11Texture2D(ID3D11Texture2D *iface)
static HRESULT STDMETHODCALLTYPE d3d11_texture2d_QueryInterface(ID3D11Texture2D *iface, REFIID riid, void **object)
--
2.8.1
1.9.1

View File

@@ -1,41 +0,0 @@
From d16a0f5f4bde197dbdda7b61d8c6b69bbc9be128 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 21 Jan 2017 22:43:12 +0100
Subject: d3d11: Implement ResolveSubresource by copying sub resource (there is
no multisample texture support yet).
---
dlls/d3d11/device.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index 777146d717e..9ad2b2ecaa5 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -1120,10 +1120,22 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_ResolveSubresource(ID3D11D
ID3D11Resource *src_resource, UINT src_subresource_idx,
DXGI_FORMAT format)
{
- FIXME("iface %p, dst_resource %p, dst_subresource_idx %u, src_resource %p, src_subresource_idx %u, "
+ struct d3d_device *device = device_from_immediate_ID3D11DeviceContext(iface);
+ struct wined3d_resource *wined3d_dst_resource, *wined3d_src_resource;
+
+ TRACE("iface %p, dst_resource %p, dst_subresource_idx %u, src_resource %p, src_subresource_idx %u, "
"format %s stub!\n",
iface, dst_resource, dst_subresource_idx, src_resource, src_subresource_idx,
debug_dxgi_format(format));
+
+ wined3d_dst_resource = wined3d_resource_from_d3d11_resource(dst_resource);
+ wined3d_src_resource = wined3d_resource_from_d3d11_resource(src_resource);
+
+ /* Multisampled textures are not supported yet, so simply copy the sub resource */
+ wined3d_mutex_lock();
+ wined3d_device_copy_sub_resource_region(device->wined3d_device, wined3d_dst_resource, dst_subresource_idx,
+ 0, 0, 0, wined3d_src_resource, src_subresource_idx, NULL);
+ wined3d_mutex_unlock();
}
static void STDMETHODCALLTYPE d3d11_immediate_context_ExecuteCommandList(ID3D11DeviceContext *iface,
--
2.11.0

View File

@@ -1,44 +0,0 @@
From 3f0721bc43cadd5b008ff7cd0fb3fe6748a3bfe7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 26 Feb 2017 21:16:12 +0100
Subject: d3d11: Implement d3d10_device_ResolveSubresource in the same way as
for d3d11.
---
dlls/d3d11/device.c | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index dbd7cd813cc..ef8d01696e7 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -6049,10 +6049,22 @@ static void STDMETHODCALLTYPE d3d10_device_ResolveSubresource(ID3D10Device1 *ifa
ID3D10Resource *dst_resource, UINT dst_subresource_idx,
ID3D10Resource *src_resource, UINT src_subresource_idx, DXGI_FORMAT format)
{
- FIXME("iface %p, dst_resource %p, dst_subresource_idx %u, "
- "src_resource %p, src_subresource_idx %u, format %s stub!\n",
- iface, dst_resource, dst_subresource_idx,
- src_resource, src_subresource_idx, debug_dxgi_format(format));
+ struct d3d_device *device = impl_from_ID3D10Device(iface);
+ struct wined3d_resource *wined3d_dst_resource, *wined3d_src_resource;
+
+ TRACE("iface %p, dst_resource %p, dst_subresource_idx %u, src_resource %p, src_subresource_idx %u, "
+ "format %s stub!\n",
+ iface, dst_resource, dst_subresource_idx, src_resource, src_subresource_idx,
+ debug_dxgi_format(format));
+
+ wined3d_dst_resource = wined3d_resource_from_d3d10_resource(dst_resource);
+ wined3d_src_resource = wined3d_resource_from_d3d10_resource(src_resource);
+
+ /* Multisampled textures are not supported yet, so simply copy the sub resource */
+ wined3d_mutex_lock();
+ wined3d_device_copy_sub_resource_region(device->wined3d_device, wined3d_dst_resource, dst_subresource_idx,
+ 0, 0, 0, wined3d_src_resource, src_subresource_idx, NULL);
+ wined3d_mutex_unlock();
}
static void STDMETHODCALLTYPE d3d10_device_VSGetConstantBuffers(ID3D10Device1 *iface,
--
2.11.0

View File

@@ -1 +0,0 @@
Fixes: Implement semi-stub for d3d11 context ResolveSubresource method.

View File

@@ -1,7 +1,7 @@
From 4008ff706b5b5358e02e7a092085701ad4d286ec Mon Sep 17 00:00:00 2001
From 3048fef5403918b832bbc75770067551d40e8851 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sat, 14 Mar 2015 04:48:38 +0100
Subject: d3dx9_*: Adjust ID3DXEffect interface based on DLL version.
Subject: [PATCH] d3dx9_*: Adjust ID3DXEffect interface based on DLL version.
---
dlls/d3dx9_24/Makefile.in | 1 +
@@ -29,10 +29,11 @@ Subject: d3dx9_*: Adjust ID3DXEffect interface based on DLL version.
22 files changed, 40 insertions(+)
diff --git a/dlls/d3dx9_24/Makefile.in b/dlls/d3dx9_24/Makefile.in
index 71dee7f..7464bd1 100644
index 482c92d..6810b79 100644
--- a/dlls/d3dx9_24/Makefile.in
+++ b/dlls/d3dx9_24/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=24
MODULE = d3dx9_24.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=24
@@ -40,10 +41,11 @@ index 71dee7f..7464bd1 100644
C_SRCS = \
diff --git a/dlls/d3dx9_25/Makefile.in b/dlls/d3dx9_25/Makefile.in
index 9b44be8..1531e66 100644
index be4c769..ba16d3d 100644
--- a/dlls/d3dx9_25/Makefile.in
+++ b/dlls/d3dx9_25/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=25
MODULE = d3dx9_25.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=25
@@ -51,10 +53,11 @@ index 9b44be8..1531e66 100644
C_SRCS = \
diff --git a/dlls/d3dx9_26/Makefile.in b/dlls/d3dx9_26/Makefile.in
index 14a52d1..2a58c58 100644
index c5e9e85..dffc238 100644
--- a/dlls/d3dx9_26/Makefile.in
+++ b/dlls/d3dx9_26/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=26
MODULE = d3dx9_26.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=26
@@ -62,10 +65,11 @@ index 14a52d1..2a58c58 100644
C_SRCS = \
diff --git a/dlls/d3dx9_27/Makefile.in b/dlls/d3dx9_27/Makefile.in
index b2784fc..9ba1e2a 100644
index ee7f0e2..a422308 100644
--- a/dlls/d3dx9_27/Makefile.in
+++ b/dlls/d3dx9_27/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=27
MODULE = d3dx9_27.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=27
@@ -73,10 +77,11 @@ index b2784fc..9ba1e2a 100644
C_SRCS = \
diff --git a/dlls/d3dx9_28/Makefile.in b/dlls/d3dx9_28/Makefile.in
index f6b31d6..15dec71 100644
index 0944200..73e486f 100644
--- a/dlls/d3dx9_28/Makefile.in
+++ b/dlls/d3dx9_28/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=28
MODULE = d3dx9_28.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=28
@@ -84,10 +89,11 @@ index f6b31d6..15dec71 100644
C_SRCS = \
diff --git a/dlls/d3dx9_29/Makefile.in b/dlls/d3dx9_29/Makefile.in
index 9bd84be..5a5a8fc 100644
index 88cb110..5c3cf37 100644
--- a/dlls/d3dx9_29/Makefile.in
+++ b/dlls/d3dx9_29/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=29
MODULE = d3dx9_29.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=29
@@ -95,10 +101,11 @@ index 9bd84be..5a5a8fc 100644
C_SRCS = \
diff --git a/dlls/d3dx9_30/Makefile.in b/dlls/d3dx9_30/Makefile.in
index a8ee15d..bafcdb4 100644
index 6ab2ff2..285ae2c 100644
--- a/dlls/d3dx9_30/Makefile.in
+++ b/dlls/d3dx9_30/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=30
MODULE = d3dx9_30.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=30
@@ -106,10 +113,11 @@ index a8ee15d..bafcdb4 100644
C_SRCS = \
diff --git a/dlls/d3dx9_31/Makefile.in b/dlls/d3dx9_31/Makefile.in
index 27bd337..f5df4d8 100644
index 3d44da1..bc66d2f 100644
--- a/dlls/d3dx9_31/Makefile.in
+++ b/dlls/d3dx9_31/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=31
MODULE = d3dx9_31.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=31
@@ -117,10 +125,11 @@ index 27bd337..f5df4d8 100644
C_SRCS = \
diff --git a/dlls/d3dx9_32/Makefile.in b/dlls/d3dx9_32/Makefile.in
index 1229c7f..cce9293 100644
index 37cc279..a4a9ecb 100644
--- a/dlls/d3dx9_32/Makefile.in
+++ b/dlls/d3dx9_32/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=32
MODULE = d3dx9_32.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=32
@@ -128,10 +137,11 @@ index 1229c7f..cce9293 100644
C_SRCS = \
diff --git a/dlls/d3dx9_33/Makefile.in b/dlls/d3dx9_33/Makefile.in
index 44bd991..c9b6587 100644
index 5b03ec1..32a78c3 100644
--- a/dlls/d3dx9_33/Makefile.in
+++ b/dlls/d3dx9_33/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=33
MODULE = d3dx9_33.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=33
@@ -139,10 +149,11 @@ index 44bd991..c9b6587 100644
C_SRCS = \
diff --git a/dlls/d3dx9_34/Makefile.in b/dlls/d3dx9_34/Makefile.in
index 4ba14c2..822f621 100644
index b7f9c46..714518e 100644
--- a/dlls/d3dx9_34/Makefile.in
+++ b/dlls/d3dx9_34/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=34
MODULE = d3dx9_34.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=34
@@ -150,10 +161,11 @@ index 4ba14c2..822f621 100644
C_SRCS = \
diff --git a/dlls/d3dx9_35/Makefile.in b/dlls/d3dx9_35/Makefile.in
index ee527d5..3c8df66 100644
index 9c196ea..0a1b681 100644
--- a/dlls/d3dx9_35/Makefile.in
+++ b/dlls/d3dx9_35/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=35
MODULE = d3dx9_35.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=35
@@ -161,10 +173,10 @@ index ee527d5..3c8df66 100644
C_SRCS = \
diff --git a/dlls/d3dx9_36/Makefile.in b/dlls/d3dx9_36/Makefile.in
index 83f7d1c..24ce09d 100644
index da8098d..6bb605d 100644
--- a/dlls/d3dx9_36/Makefile.in
+++ b/dlls/d3dx9_36/Makefile.in
@@ -1,6 +1,7 @@
@@ -2,6 +2,7 @@ EXTRADEFS = -DD3DX_SDK_VERSION=36
MODULE = d3dx9_36.dll
IMPORTLIB = d3dx9
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
@@ -173,10 +185,10 @@ index 83f7d1c..24ce09d 100644
C_SRCS = \
animation.c \
diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c
index 42f5aea..5281e8e 100644
index f8c4803..cd6c00f 100644
--- a/dlls/d3dx9_36/effect.c
+++ b/dlls/d3dx9_36/effect.c
@@ -3888,6 +3888,7 @@ static HRESULT WINAPI ID3DXEffectImpl_ApplyParameterBlock(ID3DXEffect* iface, D3
@@ -4351,6 +4351,7 @@ static HRESULT WINAPI ID3DXEffectImpl_ApplyParameterBlock(ID3DXEffect* iface, D3
return E_NOTIMPL;
}
@@ -184,7 +196,7 @@ index 42f5aea..5281e8e 100644
static HRESULT WINAPI ID3DXEffectImpl_DeleteParameterBlock(ID3DXEffect* iface, D3DXHANDLE parameter_block)
{
struct ID3DXEffectImpl *This = impl_from_ID3DXEffect(iface);
@@ -3896,6 +3897,7 @@ static HRESULT WINAPI ID3DXEffectImpl_DeleteParameterBlock(ID3DXEffect* iface, D
@@ -4359,6 +4360,7 @@ static HRESULT WINAPI ID3DXEffectImpl_DeleteParameterBlock(ID3DXEffect* iface, D
return E_NOTIMPL;
}
@@ -192,7 +204,7 @@ index 42f5aea..5281e8e 100644
static HRESULT WINAPI ID3DXEffectImpl_CloneEffect(ID3DXEffect *iface,
struct IDirect3DDevice9 *device, struct ID3DXEffect **effect)
@@ -3907,6 +3909,7 @@ static HRESULT WINAPI ID3DXEffectImpl_CloneEffect(ID3DXEffect *iface,
@@ -4370,6 +4372,7 @@ static HRESULT WINAPI ID3DXEffectImpl_CloneEffect(ID3DXEffect *iface,
return E_NOTIMPL;
}
@@ -200,7 +212,7 @@ index 42f5aea..5281e8e 100644
static HRESULT WINAPI ID3DXEffectImpl_SetRawValue(ID3DXEffect *iface,
D3DXHANDLE parameter, const void *data, UINT byte_offset, UINT bytes)
{
@@ -3915,6 +3918,7 @@ static HRESULT WINAPI ID3DXEffectImpl_SetRawValue(ID3DXEffect *iface,
@@ -4378,6 +4381,7 @@ static HRESULT WINAPI ID3DXEffectImpl_SetRawValue(ID3DXEffect *iface,
return E_NOTIMPL;
}
@@ -208,7 +220,7 @@ index 42f5aea..5281e8e 100644
static const struct ID3DXEffectVtbl ID3DXEffect_Vtbl =
{
@@ -3997,9 +4001,13 @@ static const struct ID3DXEffectVtbl ID3DXEffect_Vtbl =
@@ -4460,9 +4464,13 @@ static const struct ID3DXEffectVtbl ID3DXEffect_Vtbl =
ID3DXEffectImpl_BeginParameterBlock,
ID3DXEffectImpl_EndParameterBlock,
ID3DXEffectImpl_ApplyParameterBlock,
@@ -223,10 +235,11 @@ index 42f5aea..5281e8e 100644
static inline struct ID3DXEffectCompilerImpl *impl_from_ID3DXEffectCompiler(ID3DXEffectCompiler *iface)
diff --git a/dlls/d3dx9_37/Makefile.in b/dlls/d3dx9_37/Makefile.in
index 61528a3..672878f 100644
index ab790a4..01df6b4 100644
--- a/dlls/d3dx9_37/Makefile.in
+++ b/dlls/d3dx9_37/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=37
MODULE = d3dx9_37.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=37
@@ -234,10 +247,11 @@ index 61528a3..672878f 100644
C_SRCS = \
diff --git a/dlls/d3dx9_38/Makefile.in b/dlls/d3dx9_38/Makefile.in
index cb1507c..0b537c6 100644
index 6125c2d..089abd5 100644
--- a/dlls/d3dx9_38/Makefile.in
+++ b/dlls/d3dx9_38/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=38
MODULE = d3dx9_38.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=38
@@ -245,10 +259,11 @@ index cb1507c..0b537c6 100644
C_SRCS = \
diff --git a/dlls/d3dx9_39/Makefile.in b/dlls/d3dx9_39/Makefile.in
index e372816..58d88f7 100644
index d97a787..21071cc 100644
--- a/dlls/d3dx9_39/Makefile.in
+++ b/dlls/d3dx9_39/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=39
MODULE = d3dx9_39.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=39
@@ -256,10 +271,11 @@ index e372816..58d88f7 100644
C_SRCS = \
diff --git a/dlls/d3dx9_40/Makefile.in b/dlls/d3dx9_40/Makefile.in
index b6c4dcd..a4417b5 100644
index 36c5a21..6f08759 100644
--- a/dlls/d3dx9_40/Makefile.in
+++ b/dlls/d3dx9_40/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=40
MODULE = d3dx9_40.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=40
@@ -267,10 +283,11 @@ index b6c4dcd..a4417b5 100644
C_SRCS = \
diff --git a/dlls/d3dx9_41/Makefile.in b/dlls/d3dx9_41/Makefile.in
index 9aa91a9..0463175 100644
index d4552cf..9c1baab 100644
--- a/dlls/d3dx9_41/Makefile.in
+++ b/dlls/d3dx9_41/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=41
MODULE = d3dx9_41.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=41
@@ -278,10 +295,11 @@ index 9aa91a9..0463175 100644
C_SRCS = \
diff --git a/dlls/d3dx9_42/Makefile.in b/dlls/d3dx9_42/Makefile.in
index a5cc60e..309324f 100644
index 5806fce..a843d1b 100644
--- a/dlls/d3dx9_42/Makefile.in
+++ b/dlls/d3dx9_42/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=42
MODULE = d3dx9_42.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=42
@@ -289,10 +307,11 @@ index a5cc60e..309324f 100644
C_SRCS = \
diff --git a/dlls/d3dx9_43/Makefile.in b/dlls/d3dx9_43/Makefile.in
index cb78707..9c1a87d 100644
index 72ba8b4..d0f1b9f 100644
--- a/dlls/d3dx9_43/Makefile.in
+++ b/dlls/d3dx9_43/Makefile.in
@@ -1,5 +1,6 @@
@@ -1,6 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=43
MODULE = d3dx9_43.dll
IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+EXTRADEFS = -D_D3DX9_VER=43
@@ -300,7 +319,7 @@ index cb78707..9c1a87d 100644
C_SRCS = \
diff --git a/include/d3dx9effect.h b/include/d3dx9effect.h
index 3f527ed..b8259e4 100644
index 8235794..83e19cf 100644
--- a/include/d3dx9effect.h
+++ b/include/d3dx9effect.h
@@ -1,5 +1,6 @@
@@ -341,5 +360,5 @@ index 3f527ed..b8259e4 100644
typedef struct ID3DXEffectCompiler *LPD3DXEFFECTCOMPILER;
--
2.8.0
1.9.1

View File

@@ -1,28 +1,27 @@
From ac716fe03fbbe45d9128e4e31c5654b9049c59aa Mon Sep 17 00:00:00 2001
From fb8bd7d53bea2e6deb38994741d884eb10bc31ad Mon Sep 17 00:00:00 2001
From: Christian Costa <titan.costa@gmail.com>
Date: Sat, 13 Feb 2016 15:29:37 +0100
Subject: d3dx9_36: Implement D3DXDisassembleShader. (v2)
Subject: [PATCH] d3dx9_36: Implement D3DXDisassembleShader. (v2)
Changes in v2 (by Christian Costa):
* More generic code for D3DXDisassembleShader.
---
dlls/d3dx9_36/shader.c | 331 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 328 insertions(+), 3 deletions(-)
dlls/d3dx9_36/shader.c | 330 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 328 insertions(+), 2 deletions(-)
diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c
index e3924a9..34a98aa 100644
index f372494..01ed335 100644
--- a/dlls/d3dx9_36/shader.c
+++ b/dlls/d3dx9_36/shader.c
@@ -1,7 +1,7 @@
@@ -1,6 +1,7 @@
/*
* Copyright 2008 Luis Busquets
* Copyright 2009 Matteo Bruni
- * Copyright 2010, 2013 Christian Costa
+ * Copyright 2010, 2013, 2016 Christian Costa
* Copyright 2011 Travis Athougies
*
* This library is free software; you can redistribute it and/or
@@ -21,6 +21,7 @@
@@ -20,6 +21,7 @@
#include "config.h"
#include "wine/port.h"
@@ -30,7 +29,7 @@ index e3924a9..34a98aa 100644
#include "d3dx9_private.h"
#include "d3dcommon.h"
@@ -2142,10 +2143,334 @@ HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **sample
@@ -2144,10 +2146,334 @@ HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **sample
return D3D_OK;
}
@@ -368,5 +367,5 @@ index e3924a9..34a98aa 100644
struct d3dx9_texture_shader
--
2.8.0
1.9.1

View File

@@ -1,18 +1,18 @@
From 9dec4fdb1b9f89a5709603247fc8c6bf52eff764 Mon Sep 17 00:00:00 2001
From 44260ce08c1291f1c2e6806ae2cccb8df50890df Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Mon, 15 Feb 2016 08:25:58 +0100
Subject: d3dx9_36/tests: Add initial tests for D3DXDisassembleShader.
Subject: [PATCH] d3dx9_36/tests: Add initial tests for D3DXDisassembleShader.
---
dlls/d3dx9_36/tests/shader.c | 46 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/dlls/d3dx9_36/tests/shader.c b/dlls/d3dx9_36/tests/shader.c
index 946143e..b12bf5b 100644
index 2f01a46..dd26f58 100644
--- a/dlls/d3dx9_36/tests/shader.c
+++ b/dlls/d3dx9_36/tests/shader.c
@@ -6628,6 +6628,51 @@ if (0)
ok(semantics[0].UsageIndex == 0, "Got %u, expected 0\n", semantics[0].UsageIndex);
@@ -6651,6 +6651,51 @@ static void test_shader_semantics(void)
}
}
+static void test_disassemble_shader(void)
@@ -63,12 +63,12 @@ index 946143e..b12bf5b 100644
START_TEST(shader)
{
test_get_shader_size();
@@ -6642,4 +6687,5 @@ START_TEST(shader)
@@ -6665,4 +6710,5 @@ START_TEST(shader)
test_registerset();
test_registerset_defaults();
test_get_shader_semantics();
test_shader_semantics();
+ test_disassemble_shader();
}
--
2.7.1
1.9.1

View File

@@ -1,18 +1,18 @@
From 01824b066e4d25ae049d924657d9c074bcb81344 Mon Sep 17 00:00:00 2001
From 6f28c9154b40e00b0e582a54910f3f88fd05a510 Mon Sep 17 00:00:00 2001
From: Christian Costa <titan.costa@gmail.com>
Date: Tue, 16 Feb 2016 12:11:45 +0100
Subject: d3dx9_36/tests: Add additional tests for special cases.
Subject: [PATCH] d3dx9_36/tests: Add additional tests for special cases.
---
dlls/d3dx9_36/tests/shader.c | 163 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 163 insertions(+)
diff --git a/dlls/d3dx9_36/tests/shader.c b/dlls/d3dx9_36/tests/shader.c
index b12bf5b..6bb6bda 100644
index dd26f58..44cc441 100644
--- a/dlls/d3dx9_36/tests/shader.c
+++ b/dlls/d3dx9_36/tests/shader.c
@@ -6628,6 +6628,60 @@ if (0)
ok(semantics[0].UsageIndex == 0, "Got %u, expected 0\n", semantics[0].UsageIndex);
@@ -6651,6 +6651,60 @@ static void test_shader_semantics(void)
}
}
+static const DWORD ps_tex[] = {
@@ -72,7 +72,7 @@ index b12bf5b..6bb6bda 100644
static void test_disassemble_shader(void)
{
static const char disasm_vs[] = " vs_1_1\n"
@@ -6642,6 +6696,33 @@ static void test_disassemble_shader(void)
@@ -6665,6 +6719,33 @@ static void test_disassemble_shader(void)
" dp3 r0, c1, c0\n"
" mul r0, v0, r0\n"
" mul r0, t0, r0\n";
@@ -106,7 +106,7 @@ index b12bf5b..6bb6bda 100644
ID3DXBuffer *disassembly;
HRESULT ret;
char *ptr;
@@ -6671,6 +6752,88 @@ static void test_disassemble_shader(void)
@@ -6694,6 +6775,88 @@ static void test_disassemble_shader(void)
ok(!memcmp(ptr, disasm_ps, sizeof(disasm_ps) - 1), /* compare beginning */
"Returned '%s', expected '%s'\n", ptr, disasm_ps);
ID3DXBuffer_Release(disassembly);
@@ -196,5 +196,5 @@ index b12bf5b..6bb6bda 100644
START_TEST(shader)
--
2.7.1
1.9.1

View File

@@ -1,7 +1,7 @@
From 33854851913e9046eb6ea4cd765a2f0026729f07 Mon Sep 17 00:00:00 2001
From bc50ed481ea6cfa40ac3925abe6121a91e6fa1c2 Mon Sep 17 00:00:00 2001
From: Christian Costa <titan.costa@gmail.com>
Date: Sat, 1 Nov 2014 13:08:05 +0100
Subject: d3dx9_36: Add dxtn support.
Subject: [PATCH] d3dx9_36: Add dxtn support.
---
dlls/d3dx9_24/Makefile.in | 2 +-
@@ -23,16 +23,14 @@ Subject: d3dx9_36: Add dxtn support.
dlls/d3dx9_38/Makefile.in | 2 +-
dlls/d3dx9_39/Makefile.in | 2 +-
dlls/d3dx9_40/Makefile.in | 2 +-
dlls/d3dx9_41/Makefile.in | 2 +-
dlls/d3dx9_42/Makefile.in | 2 +-
dlls/d3dx9_43/Makefile.in | 2 +-
22 files changed, 120 insertions(+), 31 deletions(-)
19 files changed, 117 insertions(+), 28 deletions(-)
diff --git a/dlls/d3dx9_24/Makefile.in b/dlls/d3dx9_24/Makefile.in
index 7464bd1f18f..bca7d826db0 100644
index 6810b79..6a9e51e 100644
--- a/dlls/d3dx9_24/Makefile.in
+++ b/dlls/d3dx9_24/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=24
MODULE = d3dx9_24.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -40,10 +38,11 @@ index 7464bd1f18f..bca7d826db0 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_25/Makefile.in b/dlls/d3dx9_25/Makefile.in
index 1531e66c1e6..5d847a2828b 100644
index ba16d3d..bdaf982 100644
--- a/dlls/d3dx9_25/Makefile.in
+++ b/dlls/d3dx9_25/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=25
MODULE = d3dx9_25.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -51,10 +50,11 @@ index 1531e66c1e6..5d847a2828b 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_26/Makefile.in b/dlls/d3dx9_26/Makefile.in
index 2a58c58b8a1..cf0c1509693 100644
index dffc238..f62fda5 100644
--- a/dlls/d3dx9_26/Makefile.in
+++ b/dlls/d3dx9_26/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=26
MODULE = d3dx9_26.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -62,10 +62,11 @@ index 2a58c58b8a1..cf0c1509693 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_27/Makefile.in b/dlls/d3dx9_27/Makefile.in
index 9ba1e2ac5bd..7cc647c1647 100644
index a422308..dc6a8e3 100644
--- a/dlls/d3dx9_27/Makefile.in
+++ b/dlls/d3dx9_27/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=27
MODULE = d3dx9_27.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -73,10 +74,11 @@ index 9ba1e2ac5bd..7cc647c1647 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_28/Makefile.in b/dlls/d3dx9_28/Makefile.in
index 15dec71f2d7..bbf4140e723 100644
index 73e486f..f331b3a 100644
--- a/dlls/d3dx9_28/Makefile.in
+++ b/dlls/d3dx9_28/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=28
MODULE = d3dx9_28.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -84,10 +86,11 @@ index 15dec71f2d7..bbf4140e723 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_29/Makefile.in b/dlls/d3dx9_29/Makefile.in
index 5a5a8fcad97..1aa1663ea06 100644
index 5c3cf37..98038a1 100644
--- a/dlls/d3dx9_29/Makefile.in
+++ b/dlls/d3dx9_29/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=29
MODULE = d3dx9_29.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -95,10 +98,11 @@ index 5a5a8fcad97..1aa1663ea06 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_30/Makefile.in b/dlls/d3dx9_30/Makefile.in
index bafcdb49312..df8f87bfedf 100644
index 285ae2c..8d04f99 100644
--- a/dlls/d3dx9_30/Makefile.in
+++ b/dlls/d3dx9_30/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=30
MODULE = d3dx9_30.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -106,10 +110,11 @@ index bafcdb49312..df8f87bfedf 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_31/Makefile.in b/dlls/d3dx9_31/Makefile.in
index f5df4d88ae0..6ea8d15b411 100644
index bc66d2f..4142f42 100644
--- a/dlls/d3dx9_31/Makefile.in
+++ b/dlls/d3dx9_31/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=31
MODULE = d3dx9_31.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -117,10 +122,11 @@ index f5df4d88ae0..6ea8d15b411 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_32/Makefile.in b/dlls/d3dx9_32/Makefile.in
index cce9293063c..df0759fedfc 100644
index a4a9ecb..75a7b18 100644
--- a/dlls/d3dx9_32/Makefile.in
+++ b/dlls/d3dx9_32/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=32
MODULE = d3dx9_32.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -128,10 +134,11 @@ index cce9293063c..df0759fedfc 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_33/Makefile.in b/dlls/d3dx9_33/Makefile.in
index c9b6587e77b..ecf1b1598c9 100644
index 32a78c3..ffe9bdb 100644
--- a/dlls/d3dx9_33/Makefile.in
+++ b/dlls/d3dx9_33/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=33
MODULE = d3dx9_33.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -139,10 +146,11 @@ index c9b6587e77b..ecf1b1598c9 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_34/Makefile.in b/dlls/d3dx9_34/Makefile.in
index 822f621008d..2dcd721c0a9 100644
index 714518e..74eea4a 100644
--- a/dlls/d3dx9_34/Makefile.in
+++ b/dlls/d3dx9_34/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=34
MODULE = d3dx9_34.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -150,10 +158,11 @@ index 822f621008d..2dcd721c0a9 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_35/Makefile.in b/dlls/d3dx9_35/Makefile.in
index 3c8df661029..8c90f16b24f 100644
index 0a1b681..be66d97 100644
--- a/dlls/d3dx9_35/Makefile.in
+++ b/dlls/d3dx9_35/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=35
MODULE = d3dx9_35.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -161,10 +170,11 @@ index 3c8df661029..8c90f16b24f 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_36/Makefile.in b/dlls/d3dx9_36/Makefile.in
index 24ce09daefa..6b78518dc71 100644
index 6bb605d..74c8cae 100644
--- a/dlls/d3dx9_36/Makefile.in
+++ b/dlls/d3dx9_36/Makefile.in
@@ -1,6 +1,6 @@
@@ -1,7 +1,7 @@
EXTRADEFS = -DD3DX_SDK_VERSION=36
MODULE = d3dx9_36.dll
IMPORTLIB = d3dx9
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
@@ -173,7 +183,7 @@ index 24ce09daefa..6b78518dc71 100644
C_SRCS = \
diff --git a/dlls/d3dx9_36/surface.c b/dlls/d3dx9_36/surface.c
index fc747799d6d..f851e74ee76 100644
index 89a2e3d..87a4125 100644
--- a/dlls/d3dx9_36/surface.c
+++ b/dlls/d3dx9_36/surface.c
@@ -27,6 +27,8 @@
@@ -185,7 +195,7 @@ index fc747799d6d..f851e74ee76 100644
WINE_DEFAULT_DEBUG_CHANNEL(d3dx);
@@ -1715,6 +1717,27 @@ void point_filter_argb_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slic
@@ -1817,6 +1819,27 @@ void point_filter_argb_pixels(const BYTE *src, UINT src_row_pitch, UINT src_slic
}
}
@@ -213,7 +223,7 @@ index fc747799d6d..f851e74ee76 100644
/************************************************************
* D3DXLoadSurfaceFromMemory
*
@@ -1756,6 +1779,7 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
@@ -1858,6 +1881,7 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
D3DSURFACE_DESC surfdesc;
D3DLOCKED_RECT lockrect;
struct volume src_size, dst_size;
@@ -221,7 +231,7 @@ index fc747799d6d..f851e74ee76 100644
TRACE("(%p, %p, %s, %p, %#x, %u, %p, %s, %#x, 0x%08x)\n",
dst_surface, dst_palette, wine_dbgstr_rect(dst_rect), src_memory, src_format,
@@ -1837,8 +1861,15 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
@@ -1939,8 +1963,15 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
}
else /* Stretching or format conversion. */
{
@@ -239,7 +249,7 @@ index fc747799d6d..f851e74ee76 100644
{
FIXME("Unsupported format conversion %#x -> %#x.\n", src_format, surfdesc.Format);
return E_NOTIMPL;
@@ -1847,10 +1878,52 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
@@ -1949,10 +1980,52 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
if (FAILED(IDirect3DSurface9_LockRect(dst_surface, &lockrect, dst_rect, 0)))
return D3DXERR_INVALIDDATA;
@@ -294,7 +304,7 @@ index fc747799d6d..f851e74ee76 100644
}
else /* if ((filter & 0xf) == D3DX_FILTER_POINT) */
{
@@ -1859,14 +1932,30 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
@@ -1961,14 +2034,30 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
/* Always apply a point filter until D3DX_FILTER_LINEAR,
* D3DX_FILTER_TRIANGLE and D3DX_FILTER_BOX are implemented. */
@@ -329,10 +339,10 @@ index fc747799d6d..f851e74ee76 100644
/************************************************************
diff --git a/dlls/d3dx9_36/tests/surface.c b/dlls/d3dx9_36/tests/surface.c
index f2855e8ddb8..2be48dfddab 100644
index 26adc73..e45ee36 100644
--- a/dlls/d3dx9_36/tests/surface.c
+++ b/dlls/d3dx9_36/tests/surface.c
@@ -1174,7 +1174,7 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device)
@@ -1200,7 +1200,7 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device)
hr = IDirect3DTexture9_GetSurfaceLevel(tex, 0, &newsurf);
ok(SUCCEEDED(hr), "Failed to get the surface, hr %#x.\n", hr);
hr = D3DXLoadSurfaceFromSurface(newsurf, NULL, NULL, surf, NULL, NULL, D3DX_FILTER_NONE, 0);
@@ -341,7 +351,7 @@ index f2855e8ddb8..2be48dfddab 100644
check_release((IUnknown*)newsurf, 1);
check_release((IUnknown*)tex, 0);
}
@@ -1200,7 +1200,7 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device)
@@ -1226,7 +1226,7 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device)
hr = IDirect3DTexture9_GetSurfaceLevel(tex, 0, &newsurf);
ok(SUCCEEDED(hr), "Failed to get the surface, hr %#x.\n", hr);
hr = D3DXLoadSurfaceFromSurface(newsurf, NULL, NULL, surf, NULL, NULL, D3DX_FILTER_NONE, 0);
@@ -350,7 +360,7 @@ index f2855e8ddb8..2be48dfddab 100644
check_release((IUnknown*)newsurf, 1);
check_release((IUnknown*)tex, 0);
}
@@ -1213,10 +1213,10 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device)
@@ -1239,10 +1239,10 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device)
hr = IDirect3DTexture9_GetSurfaceLevel(tex, 0, &newsurf);
ok(SUCCEEDED(hr), "Failed to get the surface, hr %#x.\n", hr);
hr = D3DXLoadSurfaceFromSurface(newsurf, NULL, NULL, surf, NULL, NULL, D3DX_FILTER_NONE, 0);
@@ -364,10 +374,11 @@ index f2855e8ddb8..2be48dfddab 100644
check_release((IUnknown*)newsurf, 1);
check_release((IUnknown*)tex, 0);
diff --git a/dlls/d3dx9_37/Makefile.in b/dlls/d3dx9_37/Makefile.in
index 672878ff7e4..9eecd32899d 100644
index 01df6b4..9aaf338 100644
--- a/dlls/d3dx9_37/Makefile.in
+++ b/dlls/d3dx9_37/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=37
MODULE = d3dx9_37.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -375,10 +386,11 @@ index 672878ff7e4..9eecd32899d 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_38/Makefile.in b/dlls/d3dx9_38/Makefile.in
index 0b537c66b68..6bb7bac0513 100644
index 089abd5..86d9846 100644
--- a/dlls/d3dx9_38/Makefile.in
+++ b/dlls/d3dx9_38/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=38
MODULE = d3dx9_38.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -386,10 +398,11 @@ index 0b537c66b68..6bb7bac0513 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_39/Makefile.in b/dlls/d3dx9_39/Makefile.in
index 58d88f78abc..5d03e18feb3 100644
index 21071cc..0431693 100644
--- a/dlls/d3dx9_39/Makefile.in
+++ b/dlls/d3dx9_39/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=39
MODULE = d3dx9_39.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
@@ -397,49 +410,17 @@ index 58d88f78abc..5d03e18feb3 100644
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_40/Makefile.in b/dlls/d3dx9_40/Makefile.in
index a4417b5aa13..8982d4ec5e4 100644
index 6f08759..ecb4af5 100644
--- a/dlls/d3dx9_40/Makefile.in
+++ b/dlls/d3dx9_40/Makefile.in
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
EXTRADEFS = -DD3DX_SDK_VERSION=40
MODULE = d3dx9_40.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
EXTRADEFS = -D_D3DX9_VER=40
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_41/Makefile.in b/dlls/d3dx9_41/Makefile.in
index 0463175210a..e9f3d657e6c 100644
--- a/dlls/d3dx9_41/Makefile.in
+++ b/dlls/d3dx9_41/Makefile.in
@@ -1,5 +1,5 @@
MODULE = d3dx9_41.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
EXTRADEFS = -D_D3DX9_VER=41
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_42/Makefile.in b/dlls/d3dx9_42/Makefile.in
index 309324f4307..a55736d756f 100644
--- a/dlls/d3dx9_42/Makefile.in
+++ b/dlls/d3dx9_42/Makefile.in
@@ -1,5 +1,5 @@
MODULE = d3dx9_42.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
EXTRADEFS = -D_D3DX9_VER=42
PARENTSRC = ../d3dx9_36
diff --git a/dlls/d3dx9_43/Makefile.in b/dlls/d3dx9_43/Makefile.in
index 9c1a87da600..c2e787c5836 100644
--- a/dlls/d3dx9_43/Makefile.in
+++ b/dlls/d3dx9_43/Makefile.in
@@ -1,5 +1,5 @@
MODULE = d3dx9_43.dll
-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32
+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d
EXTRADEFS = -D_D3DX9_VER=43
PARENTSRC = ../d3dx9_36
--
2.11.0
1.9.1

View File

@@ -1,407 +0,0 @@
From 93d8dea11ef99d14e59031586bbb62d300b4385a Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Wed, 8 Jul 2015 10:55:03 +1000
Subject: d3dx9_36: Implement D3DXGetShaderOutputSemantics. (rev 2)
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
---
dlls/d3dx9_24/d3dx9_24.spec | 2 +-
dlls/d3dx9_25/d3dx9_25.spec | 2 +-
dlls/d3dx9_26/d3dx9_26.spec | 2 +-
dlls/d3dx9_27/d3dx9_27.spec | 2 +-
dlls/d3dx9_28/d3dx9_28.spec | 2 +-
dlls/d3dx9_29/d3dx9_29.spec | 2 +-
dlls/d3dx9_30/d3dx9_30.spec | 2 +-
dlls/d3dx9_31/d3dx9_31.spec | 2 +-
dlls/d3dx9_32/d3dx9_32.spec | 2 +-
dlls/d3dx9_33/d3dx9_33.spec | 2 +-
dlls/d3dx9_34/d3dx9_34.spec | 2 +-
dlls/d3dx9_35/d3dx9_35.spec | 2 +-
dlls/d3dx9_36/d3dx9_36.spec | 2 +-
dlls/d3dx9_36/shader.c | 20 +++++++++++++++-
dlls/d3dx9_36/tests/shader.c | 54 ++++++++++++++++++++++++++++++++++++++++++++
dlls/d3dx9_37/d3dx9_37.spec | 2 +-
dlls/d3dx9_38/d3dx9_38.spec | 2 +-
dlls/d3dx9_39/d3dx9_39.spec | 2 +-
dlls/d3dx9_40/d3dx9_40.spec | 2 +-
dlls/d3dx9_41/d3dx9_41.spec | 2 +-
dlls/d3dx9_42/d3dx9_42.spec | 2 +-
dlls/d3dx9_43/d3dx9_43.spec | 2 +-
include/d3dx9shader.h | 1 +
23 files changed, 94 insertions(+), 21 deletions(-)
diff --git a/dlls/d3dx9_24/d3dx9_24.spec b/dlls/d3dx9_24/d3dx9_24.spec
index 7e4217d..c53c946 100644
--- a/dlls/d3dx9_24/d3dx9_24.spec
+++ b/dlls/d3dx9_24/d3dx9_24.spec
@@ -155,7 +155,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_25/d3dx9_25.spec b/dlls/d3dx9_25/d3dx9_25.spec
index 2c7ae49..2072001 100644
--- a/dlls/d3dx9_25/d3dx9_25.spec
+++ b/dlls/d3dx9_25/d3dx9_25.spec
@@ -155,7 +155,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_26/d3dx9_26.spec b/dlls/d3dx9_26/d3dx9_26.spec
index 21b7f3c..5e1bce9 100644
--- a/dlls/d3dx9_26/d3dx9_26.spec
+++ b/dlls/d3dx9_26/d3dx9_26.spec
@@ -159,7 +159,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_27/d3dx9_27.spec b/dlls/d3dx9_27/d3dx9_27.spec
index 21b7f3c..5e1bce9 100644
--- a/dlls/d3dx9_27/d3dx9_27.spec
+++ b/dlls/d3dx9_27/d3dx9_27.spec
@@ -159,7 +159,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_28/d3dx9_28.spec b/dlls/d3dx9_28/d3dx9_28.spec
index 5f630a6..503d0b2 100644
--- a/dlls/d3dx9_28/d3dx9_28.spec
+++ b/dlls/d3dx9_28/d3dx9_28.spec
@@ -159,7 +159,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_29/d3dx9_29.spec b/dlls/d3dx9_29/d3dx9_29.spec
index 5f630a6..503d0b2 100644
--- a/dlls/d3dx9_29/d3dx9_29.spec
+++ b/dlls/d3dx9_29/d3dx9_29.spec
@@ -159,7 +159,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_30/d3dx9_30.spec b/dlls/d3dx9_30/d3dx9_30.spec
index 5f0e3a4..74bf709 100644
--- a/dlls/d3dx9_30/d3dx9_30.spec
+++ b/dlls/d3dx9_30/d3dx9_30.spec
@@ -159,7 +159,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_31/d3dx9_31.spec b/dlls/d3dx9_31/d3dx9_31.spec
index 1d52ecb..b1fa7bf 100644
--- a/dlls/d3dx9_31/d3dx9_31.spec
+++ b/dlls/d3dx9_31/d3dx9_31.spec
@@ -158,7 +158,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_32/d3dx9_32.spec b/dlls/d3dx9_32/d3dx9_32.spec
index 4333519..4e65a9e 100644
--- a/dlls/d3dx9_32/d3dx9_32.spec
+++ b/dlls/d3dx9_32/d3dx9_32.spec
@@ -158,7 +158,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_33/d3dx9_33.spec b/dlls/d3dx9_33/d3dx9_33.spec
index 4333519..4e65a9e 100644
--- a/dlls/d3dx9_33/d3dx9_33.spec
+++ b/dlls/d3dx9_33/d3dx9_33.spec
@@ -158,7 +158,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_34/d3dx9_34.spec b/dlls/d3dx9_34/d3dx9_34.spec
index 4333519..4e65a9e 100644
--- a/dlls/d3dx9_34/d3dx9_34.spec
+++ b/dlls/d3dx9_34/d3dx9_34.spec
@@ -158,7 +158,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_35/d3dx9_35.spec b/dlls/d3dx9_35/d3dx9_35.spec
index 4333519..4e65a9e 100644
--- a/dlls/d3dx9_35/d3dx9_35.spec
+++ b/dlls/d3dx9_35/d3dx9_35.spec
@@ -158,7 +158,7 @@
@ stdcall D3DXGetPixelShaderProfile(ptr)
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_36/d3dx9_36.spec b/dlls/d3dx9_36/d3dx9_36.spec
index e81aef2..4454d25 100644
--- a/dlls/d3dx9_36/d3dx9_36.spec
+++ b/dlls/d3dx9_36/d3dx9_36.spec
@@ -160,7 +160,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c
index 940cd15..a5871c5 100644
--- a/dlls/d3dx9_36/shader.c
+++ b/dlls/d3dx9_36/shader.c
@@ -2187,7 +2187,7 @@ static UINT get_shader_semantics(const DWORD *byte_code, D3DXSEMANTIC *semantics
{
if (*ptr & (1u << 31))
{
- FIXME("Opcode expected\n");
+ FIXME("Opcode expected but got %#x\n", *ptr);
return 0;
}
else if ((*ptr & D3DSI_OPCODE_MASK) == D3DSIO_DCL)
@@ -2239,3 +2239,21 @@ HRESULT WINAPI D3DXGetShaderInputSemantics(const DWORD *byte_code, D3DXSEMANTIC
return D3D_OK;
}
+
+
+HRESULT WINAPI D3DXGetShaderOutputSemantics(const DWORD *byte_code, D3DXSEMANTIC *semantics, UINT *count)
+{
+ UINT nb_semantics;
+
+ TRACE("byte_code %p, semantics %p, count %p\n", byte_code, semantics, count);
+
+ if (!byte_code)
+ return D3DERR_INVALIDCALL;
+
+ nb_semantics = get_shader_semantics(byte_code, semantics, D3DSPR_OUTPUT);
+
+ if (count)
+ *count = nb_semantics;
+
+ return D3D_OK;
+}
diff --git a/dlls/d3dx9_36/tests/shader.c b/dlls/d3dx9_36/tests/shader.c
index 9a2769f..6b76bf7 100644
--- a/dlls/d3dx9_36/tests/shader.c
+++ b/dlls/d3dx9_36/tests/shader.c
@@ -6572,6 +6572,60 @@ static void test_get_shader_semantics(void)
ok(semantics[1].UsageIndex == 0, "Got %u, expected 0\n", semantics[0].UsageIndex);
ok(semantics[2].Usage == D3DDECLUSAGE_TEXCOORD, "Got %u, expected %u\n", semantics[2].Usage, D3DDECLUSAGE_TEXCOORD);
ok(semantics[2].UsageIndex == 1, "Got %u, expected 1\n", semantics[0].UsageIndex);
+
+ /* Test D3DXGetShaderOutputSemantics */
+
+ /* Check wrong parameters */
+ ret = D3DXGetShaderOutputSemantics(NULL, NULL, NULL);
+ ok(ret == D3DERR_INVALIDCALL, "Returned %#x, expected %#x\n", ret, D3DERR_INVALIDCALL);
+ ret = D3DXGetShaderOutputSemantics(NULL, NULL, &count);
+ ok(ret == D3DERR_INVALIDCALL, "Returned %#x, expected %#x\n", ret, D3DERR_INVALIDCALL);
+ ret = D3DXGetShaderOutputSemantics(NULL, semantics, NULL);
+ ok(ret == D3DERR_INVALIDCALL, "Returned %#x, expected %#x\n", ret, D3DERR_INVALIDCALL);
+ ret = D3DXGetShaderOutputSemantics(NULL, semantics, &count);
+ ok(ret == D3DERR_INVALIDCALL, "Returned %#x, expected %#x\n", ret, D3DERR_INVALIDCALL);
+if (0)
+{
+ /* Crashes on wvistau64 */
+ ret = D3DXGetShaderOutputSemantics(semantics_vs11, NULL, NULL);
+ ok(ret == D3D_OK, "Failed with %#x\n", ret);
+}
+
+ /* Check null semantics pointer */
+ count = 0xdeadbeef;
+ ret = D3DXGetShaderOutputSemantics(semantics_vs11, NULL, &count);
+ ok(ret == D3D_OK, "Failed with %#x\n", ret);
+ ok(count == 1, "Got %u, expected 1\n", count);
+
+ /* Check null count pointer */
+if (0)
+{
+ /* Crashes on wvistau64 */
+ memset(semantics, 0xcc, sizeof(semantics));
+ ret = D3DXGetShaderOutputSemantics(semantics_vs11, semantics, NULL);
+ ok(ret == D3D_OK, "Failed with %#x\n", ret);
+ ok(semantics[0].Usage == D3DDECLUSAGE_COLOR, "Got %u, expected %u\n", semantics[0].Usage, D3DDECLUSAGE_COLOR);
+ ok(semantics[0].UsageIndex == 0, "Got %u, expected 0\n", semantics[0].UsageIndex);
+}
+
+ /* Check with vs11 shader */
+ count = 0xdeadbeef;
+ memset(semantics, 0xcc, sizeof(semantics));
+ ret = D3DXGetShaderOutputSemantics(semantics_vs11, semantics, &count);
+ ok(ret == D3D_OK, "Failed with %#x\n", ret);
+ ok(count == 1, "Got %u, expected 1\n", count);
+ todo_wine
+ ok(semantics[0].Usage == D3DDECLUSAGE_TEXCOORD, "Got %u, expected %u\n", semantics[0].Usage, D3DDECLUSAGE_TEXCOORD);
+ ok(semantics[0].UsageIndex == 0, "Got %u, expected 0\n", semantics[0].UsageIndex);
+
+ /* Check with vs30 shader */
+ count = 0xdeadbeef;
+ memset(semantics, 0xcc, sizeof(semantics));
+ ret = D3DXGetShaderOutputSemantics(semantics_vs30, semantics, &count);
+ ok(ret == D3D_OK, "Failed with %#x\n", ret);
+ ok(count == 1, "Got %u, expected 1\n", count);
+ ok(semantics[0].Usage == D3DDECLUSAGE_COLOR, "Got %u, expected %u\n", semantics[0].Usage, D3DDECLUSAGE_COLOR);
+ ok(semantics[0].UsageIndex == 0, "Got %u, expected 0\n", semantics[0].UsageIndex);
}
START_TEST(shader)
diff --git a/dlls/d3dx9_37/d3dx9_37.spec b/dlls/d3dx9_37/d3dx9_37.spec
index e81aef2..4454d25 100644
--- a/dlls/d3dx9_37/d3dx9_37.spec
+++ b/dlls/d3dx9_37/d3dx9_37.spec
@@ -160,7 +160,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_38/d3dx9_38.spec b/dlls/d3dx9_38/d3dx9_38.spec
index e81aef2..4454d25 100644
--- a/dlls/d3dx9_38/d3dx9_38.spec
+++ b/dlls/d3dx9_38/d3dx9_38.spec
@@ -160,7 +160,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_39/d3dx9_39.spec b/dlls/d3dx9_39/d3dx9_39.spec
index e81aef2..4454d25 100644
--- a/dlls/d3dx9_39/d3dx9_39.spec
+++ b/dlls/d3dx9_39/d3dx9_39.spec
@@ -160,7 +160,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_40/d3dx9_40.spec b/dlls/d3dx9_40/d3dx9_40.spec
index e81aef2..4454d25 100644
--- a/dlls/d3dx9_40/d3dx9_40.spec
+++ b/dlls/d3dx9_40/d3dx9_40.spec
@@ -160,7 +160,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_41/d3dx9_41.spec b/dlls/d3dx9_41/d3dx9_41.spec
index e81aef2..4454d25 100644
--- a/dlls/d3dx9_41/d3dx9_41.spec
+++ b/dlls/d3dx9_41/d3dx9_41.spec
@@ -160,7 +160,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_42/d3dx9_42.spec b/dlls/d3dx9_42/d3dx9_42.spec
index 257c6bd..c03d804 100644
--- a/dlls/d3dx9_42/d3dx9_42.spec
+++ b/dlls/d3dx9_42/d3dx9_42.spec
@@ -153,7 +153,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_43/d3dx9_43.spec b/dlls/d3dx9_43/d3dx9_43.spec
index 257c6bd..c03d804 100644
--- a/dlls/d3dx9_43/d3dx9_43.spec
+++ b/dlls/d3dx9_43/d3dx9_43.spec
@@ -153,7 +153,7 @@
@ stdcall D3DXGetShaderConstantTable(ptr ptr)
@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr)
@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr)
-@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr)
+@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr)
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/include/d3dx9shader.h b/include/d3dx9shader.h
index 5714ddb..1176143 100644
--- a/include/d3dx9shader.h
+++ b/include/d3dx9shader.h
@@ -353,6 +353,7 @@ const char * WINAPI D3DXGetVertexShaderProfile(struct IDirect3DDevice9 *device);
HRESULT WINAPI D3DXFindShaderComment(const DWORD *byte_code, DWORD fourcc, const void **data, UINT *size);
HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **samplers, UINT *count);
HRESULT WINAPI D3DXGetShaderInputSemantics(const DWORD *byte_code, D3DXSEMANTIC *semantics, UINT *count);
+HRESULT WINAPI D3DXGetShaderOuputSemantics(const DWORD *byte_code, D3DXSEMANTIC *semantics, UINT *count);
HRESULT WINAPI D3DXAssembleShaderFromFileA(const char *filename, const D3DXMACRO *defines,
ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages);
--
2.8.0

View File

@@ -1,2 +0,0 @@
Fixes: [22682] Support for D3DXGetShaderInputSemantics
Fixes: Implement D3DXGetShaderOutputSemantics

View File

@@ -1,7 +1,7 @@
From 93267b9dc171775f908aa0f0dde65cc5a60c3b0b Mon Sep 17 00:00:00 2001
From 51a7344248cfbb0345fdf765f7a6b6af2ee4bb05 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 4 Mar 2016 22:22:42 +0100
Subject: ddraw: Set ddsOldCaps correctly in ddraw7_GetCaps.
Subject: [PATCH] ddraw: Set ddsOldCaps correctly in ddraw7_GetCaps.
---
dlls/ddraw/ddraw.c | 2 ++
@@ -12,10 +12,10 @@ Subject: ddraw: Set ddsOldCaps correctly in ddraw7_GetCaps.
5 files changed, 106 insertions(+)
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c
index 8a33ccd4c7..3330b9ce32 100644
index 74199b6..7179f51 100644
--- a/dlls/ddraw/ddraw.c
+++ b/dlls/ddraw/ddraw.c
@@ -1554,6 +1554,8 @@ static HRESULT WINAPI ddraw7_GetCaps(IDirectDraw7 *iface, DDCAPS *DriverCaps, DD
@@ -1541,6 +1541,8 @@ static HRESULT WINAPI ddraw7_GetCaps(IDirectDraw7 *iface, DDCAPS *DriverCaps, DD
caps.dwCaps |= DDCAPS_ALIGNSTRIDE;
caps.dwAlignStrideAlign = DDRAW_STRIDE_ALIGNMENT;
@@ -25,11 +25,11 @@ index 8a33ccd4c7..3330b9ce32 100644
if(DriverCaps)
diff --git a/dlls/ddraw/tests/ddraw1.c b/dlls/ddraw/tests/ddraw1.c
index 4f53ee1059..538ab656e3 100644
index 626b07b..a7e5bcd 100644
--- a/dlls/ddraw/tests/ddraw1.c
+++ b/dlls/ddraw/tests/ddraw1.c
@@ -10683,6 +10683,31 @@ done:
DestroyWindow(window);
@@ -11247,6 +11247,31 @@ static void test_enum_surfaces(void)
IDirectDraw_Release(ddraw);
}
+static void test_caps(void)
@@ -59,19 +59,19 @@ index 4f53ee1059..538ab656e3 100644
+
START_TEST(ddraw1)
{
IDirectDraw *ddraw;
@@ -10770,4 +10795,5 @@ START_TEST(ddraw1)
test_surface_desc_size();
test_texture_load();
test_ck_operation();
DDDEVICEIDENTIFIER identifier;
@@ -11348,4 +11373,5 @@ START_TEST(ddraw1)
test_depth_readback();
test_clear();
test_enum_surfaces();
+ test_caps();
}
diff --git a/dlls/ddraw/tests/ddraw2.c b/dlls/ddraw/tests/ddraw2.c
index be950d8034..b72fffb51e 100644
index 1ab1f9c..272f364 100644
--- a/dlls/ddraw/tests/ddraw2.c
+++ b/dlls/ddraw/tests/ddraw2.c
@@ -12021,6 +12021,31 @@ done:
DestroyWindow(window);
@@ -12646,6 +12646,31 @@ static void test_enum_surfaces(void)
IDirectDraw2_Release(ddraw);
}
+static void test_caps(void)
@@ -101,19 +101,19 @@ index be950d8034..b72fffb51e 100644
+
START_TEST(ddraw2)
{
IDirectDraw2 *ddraw;
@@ -12116,4 +12141,5 @@ START_TEST(ddraw2)
test_display_mode_surface_pixel_format();
test_surface_desc_size();
test_ck_operation();
DDDEVICEIDENTIFIER identifier;
@@ -12756,4 +12781,5 @@ START_TEST(ddraw2)
test_depth_readback();
test_clear();
test_enum_surfaces();
+ test_caps();
}
diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c
index 2f92a70f4c..1381b498de 100644
index 02b10b5..f114bc4 100644
--- a/dlls/ddraw/tests/ddraw4.c
+++ b/dlls/ddraw/tests/ddraw4.c
@@ -13551,6 +13551,31 @@ static void test_compute_sphere_visibility(void)
DestroyWindow(window);
@@ -14751,6 +14751,31 @@ static void test_enum_surfaces(void)
IDirectDraw4_Release(ddraw);
}
+static void test_caps(void)
@@ -143,19 +143,19 @@ index 2f92a70f4c..1381b498de 100644
+
START_TEST(ddraw4)
{
IDirectDraw4 *ddraw;
@@ -13657,4 +13682,5 @@ START_TEST(ddraw4)
test_ck_operation();
test_vb_refcount();
test_compute_sphere_visibility();
DDDEVICEIDENTIFIER identifier;
@@ -14875,4 +14900,5 @@ START_TEST(ddraw4)
test_depth_readback();
test_clear();
test_enum_surfaces();
+ test_caps();
}
diff --git a/dlls/ddraw/tests/ddraw7.c b/dlls/ddraw/tests/ddraw7.c
index 29dd246d91..206c90ca3d 100644
index 767507f..44fdf2e 100644
--- a/dlls/ddraw/tests/ddraw7.c
+++ b/dlls/ddraw/tests/ddraw7.c
@@ -13251,6 +13251,31 @@ static void test_compute_sphere_visibility(void)
DestroyWindow(window);
@@ -14113,6 +14113,31 @@ static void test_enum_surfaces(void)
IDirectDraw7_Release(ddraw);
}
+static void test_caps(void)
@@ -185,13 +185,13 @@ index 29dd246d91..206c90ca3d 100644
+
START_TEST(ddraw7)
{
HMODULE module = GetModuleHandleA("ddraw.dll");
@@ -13367,4 +13392,5 @@ START_TEST(ddraw7)
test_ck_operation();
test_vb_refcount();
test_compute_sphere_visibility();
DDDEVICEIDENTIFIER2 identifier;
@@ -14247,4 +14272,5 @@ START_TEST(ddraw7)
test_depth_readback();
test_clear();
test_enum_surfaces();
+ test_caps();
}
--
2.11.0
1.9.1

View File

@@ -1,7 +1,7 @@
From c65a572b8835af9ee1f4c7533b1c89f0c22fc95f Mon Sep 17 00:00:00 2001
From 82f1e6c7a13b14da012e8a8bd64847f05ac32dc1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Wed, 29 Jul 2015 17:09:50 +0200
Subject: ddraw: Create rendering targets in video memory if possible.
Subject: [PATCH] ddraw: Create rendering targets in video memory if possible.
Based on a patch by Henri Verbeet.
---
@@ -12,10 +12,10 @@ Based on a patch by Henri Verbeet.
4 files changed, 38 insertions(+), 15 deletions(-)
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c
index b3caba2..6dc8c2d 100644
index 9115a59..3f14a9a 100644
--- a/dlls/ddraw/ddraw.c
+++ b/dlls/ddraw/ddraw.c
@@ -4065,7 +4065,7 @@ static HRESULT WINAPI d3d7_CreateDevice(IDirect3D7 *iface, REFCLSID riid,
@@ -4241,7 +4241,7 @@ static HRESULT WINAPI d3d7_CreateDevice(IDirect3D7 *iface, REFCLSID riid,
TRACE("iface %p, riid %s, surface %p, device %p.\n", iface, debugstr_guid(riid), surface, device);
wined3d_mutex_lock();
@@ -24,7 +24,7 @@ index b3caba2..6dc8c2d 100644
{
*device = &object->IDirect3DDevice7_iface;
}
@@ -4094,7 +4094,7 @@ static HRESULT WINAPI d3d3_CreateDevice(IDirect3D3 *iface, REFCLSID riid,
@@ -4270,7 +4270,7 @@ static HRESULT WINAPI d3d3_CreateDevice(IDirect3D3 *iface, REFCLSID riid,
return CLASS_E_NOAGGREGATION;
wined3d_mutex_lock();
@@ -33,7 +33,7 @@ index b3caba2..6dc8c2d 100644
{
*device = &device_impl->IDirect3DDevice3_iface;
}
@@ -4120,7 +4120,7 @@ static HRESULT WINAPI d3d2_CreateDevice(IDirect3D2 *iface, REFCLSID riid,
@@ -4296,7 +4296,7 @@ static HRESULT WINAPI d3d2_CreateDevice(IDirect3D2 *iface, REFCLSID riid,
iface, debugstr_guid(riid), surface, device);
wined3d_mutex_lock();
@@ -43,10 +43,10 @@ index b3caba2..6dc8c2d 100644
*device = &device_impl->IDirect3DDevice2_iface;
}
diff --git a/dlls/ddraw/ddraw_private.h b/dlls/ddraw/ddraw_private.h
index bb0a3f8..73c7e68 100644
index d9559ce..c38c4af 100644
--- a/dlls/ddraw/ddraw_private.h
+++ b/dlls/ddraw/ddraw_private.h
@@ -298,6 +298,7 @@ struct d3d_device
@@ -305,6 +305,7 @@ struct d3d_device
IUnknown IUnknown_inner;
LONG ref;
UINT version;
@@ -54,8 +54,8 @@ index bb0a3f8..73c7e68 100644
IUnknown *outer_unknown;
struct wined3d_device *wined3d_device;
@@ -340,7 +341,7 @@ struct d3d_device
D3DMATRIXHANDLE world, proj, view;
@@ -349,7 +350,7 @@ struct d3d_device
struct wined3d_vec4 user_clip_planes[D3DMAXUSERCLIPPLANES];
};
-HRESULT d3d_device_create(struct ddraw *ddraw, struct ddraw_surface *target, IUnknown *rt_iface,
@@ -64,10 +64,10 @@ index bb0a3f8..73c7e68 100644
enum wined3d_depth_buffer_type d3d_device_update_depth_stencil(struct d3d_device *device) DECLSPEC_HIDDEN;
diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c
index 408eb24..bb8534a 100644
index 0254364..de68965 100644
--- a/dlls/ddraw/device.c
+++ b/dlls/ddraw/device.c
@@ -1857,7 +1857,7 @@ static HRESULT d3d_device7_SetRenderTarget(IDirect3DDevice7 *iface,
@@ -1854,7 +1854,7 @@ static HRESULT d3d_device7_SetRenderTarget(IDirect3DDevice7 *iface,
return DDERR_INVALIDCAPS;
}
@@ -76,7 +76,7 @@ index 408eb24..bb8534a 100644
{
WARN("Surface %p is not in video memory.\n", target_impl);
wined3d_mutex_unlock();
@@ -1933,7 +1933,7 @@ static HRESULT WINAPI d3d_device3_SetRenderTarget(IDirect3DDevice3 *iface,
@@ -1930,7 +1930,7 @@ static HRESULT WINAPI d3d_device3_SetRenderTarget(IDirect3DDevice3 *iface,
return DDERR_INVALIDPIXELFORMAT;
}
@@ -85,7 +85,7 @@ index 408eb24..bb8534a 100644
{
WARN("Surface %p is not in video memory.\n", target_impl);
IDirectDrawSurface4_AddRef(target);
@@ -1982,7 +1982,7 @@ static HRESULT WINAPI d3d_device2_SetRenderTarget(IDirect3DDevice2 *iface,
@@ -1979,7 +1979,7 @@ static HRESULT WINAPI d3d_device2_SetRenderTarget(IDirect3DDevice2 *iface,
return DDERR_INVALIDPIXELFORMAT;
}
@@ -94,7 +94,7 @@ index 408eb24..bb8534a 100644
{
WARN("Surface %p is not in video memory.\n", target_impl);
IDirectDrawSurface_AddRef(target);
@@ -6777,7 +6777,7 @@ enum wined3d_depth_buffer_type d3d_device_update_depth_stencil(struct d3d_device
@@ -6903,7 +6903,7 @@ enum wined3d_depth_buffer_type d3d_device_update_depth_stencil(struct d3d_device
return WINED3D_ZB_TRUE;
}
@@ -103,7 +103,7 @@ index 408eb24..bb8534a 100644
struct ddraw_surface *target, IUnknown *rt_iface, UINT version, IUnknown *outer_unknown)
{
static const D3DMATRIX ident =
@@ -6800,6 +6800,7 @@ static HRESULT d3d_device_init(struct d3d_device *device, struct ddraw *ddraw,
@@ -6926,6 +6926,7 @@ static HRESULT d3d_device_init(struct d3d_device *device, struct ddraw *ddraw,
device->IUnknown_inner.lpVtbl = &d3d_device_inner_vtbl;
device->ref = 1;
device->version = version;
@@ -111,7 +111,7 @@ index 408eb24..bb8534a 100644
if (outer_unknown)
device->outer_unknown = outer_unknown;
@@ -6850,14 +6851,18 @@ static HRESULT d3d_device_init(struct d3d_device *device, struct ddraw *ddraw,
@@ -6976,14 +6977,18 @@ static HRESULT d3d_device_init(struct d3d_device *device, struct ddraw *ddraw,
return D3D_OK;
}
@@ -133,7 +133,7 @@ index 408eb24..bb8534a 100644
if (!(target->surface_desc.ddsCaps.dwCaps & DDSCAPS_3DDEVICE)
|| (target->surface_desc.ddsCaps.dwCaps & DDSCAPS_ZBUFFER))
@@ -6872,7 +6877,7 @@ HRESULT d3d_device_create(struct ddraw *ddraw, struct ddraw_surface *target, IUn
@@ -6998,7 +7003,7 @@ HRESULT d3d_device_create(struct ddraw *ddraw, struct ddraw_surface *target, IUn
return DDERR_NOPALETTEATTACHED;
}
@@ -142,7 +142,7 @@ index 408eb24..bb8534a 100644
{
WARN("Surface %p is not in video memory.\n", target);
return D3DERR_SURFACENOTINVIDMEM;
@@ -6899,7 +6904,7 @@ HRESULT d3d_device_create(struct ddraw *ddraw, struct ddraw_surface *target, IUn
@@ -7024,7 +7029,7 @@ HRESULT d3d_device_create(struct ddraw *ddraw, struct ddraw_surface *target, IUn
return DDERR_OUTOFMEMORY;
}
@@ -150,12 +150,12 @@ index 408eb24..bb8534a 100644
+ if (FAILED(hr = d3d_device_init(object, ddraw, hw, target, rt_iface, version, outer_unknown)))
{
WARN("Failed to initialize device, hr %#x.\n", hr);
HeapFree(GetProcessHeap(), 0, object);
heap_free(object);
diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c
index 77a3d44..ca84719 100644
index b8b6860..74fdb95 100644
--- a/dlls/ddraw/surface.c
+++ b/dlls/ddraw/surface.c
@@ -211,7 +211,7 @@ static HRESULT WINAPI ddraw_surface7_QueryInterface(IDirectDrawSurface7 *iface,
@@ -209,7 +209,7 @@ static HRESULT WINAPI ddraw_surface7_QueryInterface(IDirectDrawSurface7 *iface,
{
HRESULT hr;
@@ -164,11 +164,11 @@ index 77a3d44..ca84719 100644
1, &This->device1, (IUnknown *)&This->IDirectDrawSurface_iface)))
{
This->device1 = NULL;
@@ -5935,7 +5935,24 @@ HRESULT ddraw_surface_create(struct ddraw *ddraw, const DDSURFACEDESC2 *surface_
@@ -6110,7 +6110,24 @@ HRESULT ddraw_surface_create(struct ddraw *ddraw, const DDSURFACEDESC2 *surface_
if (desc->ddsCaps.dwCaps & DDSCAPS_SYSTEMMEMORY)
{
- wined3d_desc.pool = WINED3D_POOL_SYSTEM_MEM;
- wined3d_desc.access = WINED3D_RESOURCE_ACCESS_CPU | WINED3D_RESOURCE_ACCESS_MAP;
+ /*
+ * The ddraw RGB device allows to use system memory surfaces as rendering target.
+ * This does not cause problems because the RGB device does software rasterization
@@ -191,5 +191,5 @@ index 77a3d44..ca84719 100644
else
{
--
2.4.5
1.9.1

View File

@@ -1,83 +0,0 @@
From befe898a3dec51161eb46eab8cd7a271967acb9d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 28 May 2017 01:54:31 +0200
Subject: programs/dxdiag: Handle /dontskip parameter.
---
programs/dxdiag/main.c | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/programs/dxdiag/main.c b/programs/dxdiag/main.c
index 3ced122d6e7..7be6ca4a73d 100644
--- a/programs/dxdiag/main.c
+++ b/programs/dxdiag/main.c
@@ -36,6 +36,7 @@ struct command_line_info
WCHAR outfile[MAX_PATH];
enum output_type output_type;
BOOL whql_check;
+ BOOL dont_skip;
};
static void usage(void)
@@ -110,9 +111,11 @@ static BOOL process_command_line(const WCHAR *cmdline, struct command_line_info
static const WCHAR whql_colonW[] = {'w','h','q','l',':',0};
static const WCHAR offW[] = {'o','f','f',0};
static const WCHAR onW[] = {'o','n',0};
+ static const WCHAR dontskipW[] = {'d','o','n','t','s','k','i','p'};
info->whql_check = FALSE;
info->output_type = OUTPUT_NONE;
+ info->dont_skip = FALSE;
while (*cmdline)
{
@@ -132,6 +135,14 @@ static BOOL process_command_line(const WCHAR *cmdline, struct command_line_info
switch (*cmdline)
{
+ case 'd':
+ case 'D':
+ if (strncmpiW(cmdline, dontskipW, sizeof(dontskipW)/sizeof(WCHAR)))
+ return FALSE;
+
+ info->dont_skip = TRUE;
+ cmdline += sizeof(dontskipW)/sizeof(WCHAR);
+ break;
case 'T':
case 't':
info->output_type = OUTPUT_TEXT;
@@ -152,12 +163,12 @@ static BOOL process_command_line(const WCHAR *cmdline, struct command_line_info
if (!strncmpiW(cmdline, offW, 3))
{
info->whql_check = FALSE;
- cmdline += 2;
+ cmdline += 3;
}
else if (!strncmpiW(cmdline, onW, 2))
{
info->whql_check = TRUE;
- cmdline++;
+ cmdline += 2;
}
else
return FALSE;
@@ -166,8 +177,6 @@ static BOOL process_command_line(const WCHAR *cmdline, struct command_line_info
default:
return FALSE;
}
-
- cmdline++;
}
return TRUE;
@@ -184,6 +193,7 @@ int WINAPI wWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPWSTR cmdline, int cm
usage();
WINE_TRACE("WHQL check: %s\n", info.whql_check ? "TRUE" : "FALSE");
+ WINE_TRACE("No skip: %s\n", info.dont_skip ? "TRUE" : "FALSE");
WINE_TRACE("Output type: %d\n", info.output_type);
if (info.output_type != OUTPUT_NONE)
WINE_TRACE("Output filename: %s\n", debugstr_output_type(info.output_type));
--
2.12.2

View File

@@ -1 +0,0 @@
Fixes: Handle /dontskip parameter in dxdiag

View File

@@ -1,30 +0,0 @@
From cbb471762f116b18b77288009cd1c7002ed9c2cb Mon Sep 17 00:00:00 2001
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
Date: Sun, 23 Jul 2017 22:22:41 +0300
Subject: dxgi: Add stub implementation for DXGI_PRESENT_TEST.
---
dlls/dxgi/swapchain.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/dlls/dxgi/swapchain.c b/dlls/dxgi/swapchain.c
index 2b61327f0d3..90c8ab55094 100644
--- a/dlls/dxgi/swapchain.c
+++ b/dlls/dxgi/swapchain.c
@@ -171,6 +171,13 @@ static HRESULT STDMETHODCALLTYPE dxgi_swapchain_Present(IDXGISwapChain *iface, U
TRACE("iface %p, sync_interval %u, flags %#x\n", iface, sync_interval, flags);
if (sync_interval) FIXME("Unimplemented sync interval %u\n", sync_interval);
+
+ if (flags == DXGI_PRESENT_TEST)
+ {
+ WARN("DXGI_PRESENT_TEST stub!\n");
+ return S_OK;
+ }
+
if (flags) FIXME("Unimplemented flags %#x\n", flags);
wined3d_mutex_lock();
--
2.13.1

View File

@@ -1 +0,0 @@
Fixes: Add stub implementation for DXGI_PRESENT_TEST

Some files were not shown because too many files have changed in this diff Show More