diff --git a/patches/d3dx9_24-ID3DXEffect/0001-d3dx9_24-Add-an-interface-wrapper-for-different-vers.patch b/patches/d3dx9_24-ID3DXEffect/0001-d3dx9_24-Add-an-interface-wrapper-for-different-vers.patch deleted file mode 100644 index b232d2c3..00000000 --- a/patches/d3dx9_24-ID3DXEffect/0001-d3dx9_24-Add-an-interface-wrapper-for-different-vers.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 07b257223fda63414f00f3a658fcdce83a7991e4 Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Sat, 14 Mar 2015 05:01:05 +0100 -Subject: d3dx9_24: Add an interface wrapper for different version of - ID3DXEffect. - ---- - dlls/d3dx9_24/d3dx9_24.spec | 22 +++++++++++----------- - 1 file changed, 11 insertions(+), 11 deletions(-) - -diff --git a/dlls/d3dx9_24/d3dx9_24.spec b/dlls/d3dx9_24/d3dx9_24.spec -index cfe26ce..1ddf219 100644 ---- a/dlls/d3dx9_24/d3dx9_24.spec -+++ b/dlls/d3dx9_24/d3dx9_24.spec -@@ -43,21 +43,21 @@ - @ stdcall D3DXCreateCubeTextureFromResourceExW(ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceExW - @ stdcall D3DXCreateCubeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceW - @ stdcall D3DXCreateCylinder(ptr long long long long long ptr ptr) d3dx9_36.D3DXCreateCylinder --@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffect -+@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffect # don't forward - @ stdcall D3DXCreateEffectCompiler(ptr long ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompiler - @ stdcall D3DXCreateEffectCompilerFromFileA(str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileA - @ stdcall D3DXCreateEffectCompilerFromFileW(wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileW - @ stdcall D3DXCreateEffectCompilerFromResourceA(long str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceA - @ stdcall D3DXCreateEffectCompilerFromResourceW(long wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceW --@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectEx --@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileA --@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExA --@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExW --@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileW --@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceA --@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExA --@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExW --@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceW -+@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectEx # don't forward -+@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileA # don't forward -+@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileExA # don't forward -+@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileExW # don't forward -+@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileW # don't forward -+@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceA # don't forward -+@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceExA # don't forward -+@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceExW # don't forward -+@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceW # don't forward - @ stdcall D3DXCreateEffectPool(ptr) d3dx9_36.D3DXCreateEffectPool - @ stdcall D3DXCreateFontA(ptr long long long long long long long long long str ptr) d3dx9_36.D3DXCreateFontA - @ stdcall D3DXCreateFontIndirectA(ptr ptr ptr) d3dx9_36.D3DXCreateFontIndirectA -@@ -115,7 +115,7 @@ - @ stdcall D3DXCreateVolumeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromResourceW - @ stdcall D3DXDebugMute(long) d3dx9_36.D3DXDebugMute - @ stdcall D3DXDeclaratorFromFVF(long ptr) d3dx9_36.D3DXDeclaratorFromFVF --@ stdcall D3DXDisassembleEffect(ptr long ptr) d3dx9_36.D3DXDisassembleEffect -+@ stdcall D3DXDisassembleEffect(ptr long ptr) d3dx9_25.D3DXDisassembleEffect # don't forward - @ stdcall D3DXDisassembleShader(ptr long str ptr) d3dx9_36.D3DXDisassembleShader - @ stdcall D3DXFileCreate(ptr) d3dx9_36.D3DXFileCreate - @ stdcall D3DXFillCubeTexture(ptr ptr ptr) d3dx9_36.D3DXFillCubeTexture --- -2.6.4 - diff --git a/patches/d3dx9_24-ID3DXEffect/definition b/patches/d3dx9_24-ID3DXEffect/definition deleted file mode 100644 index 6d8f862b..00000000 --- a/patches/d3dx9_24-ID3DXEffect/definition +++ /dev/null @@ -1,3 +0,0 @@ -Fixes: Fix wrong version of ID3DXEffect interface for d3dx9_24 -Depends: d3dx9_25-ID3DXEffect -Category: stable diff --git a/patches/d3dx9_25-ID3DXEffect/0001-d3dx9_-Adjust-ID3DXEffect-interface-based-on-DLL-ver.patch b/patches/d3dx9_25-ID3DXEffect/0001-d3dx9_-Adjust-ID3DXEffect-interface-based-on-DLL-ver.patch new file mode 100644 index 00000000..e54223ef --- /dev/null +++ b/patches/d3dx9_25-ID3DXEffect/0001-d3dx9_-Adjust-ID3DXEffect-interface-based-on-DLL-ver.patch @@ -0,0 +1,237 @@ +From d1229f450e5b7f7cdda6654010c520dc79f7951a Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner +Date: Sat, 14 Mar 2015 04:48:38 +0100 +Subject: d3dx9_*: Adjust ID3DXEffect interface based on DLL version. + +--- + dlls/d3dx9_24/Makefile.in | 1 + + dlls/d3dx9_25/Makefile.in | 1 + + dlls/d3dx9_26/Makefile.in | 1 + + dlls/d3dx9_27/Makefile.in | 1 + + dlls/d3dx9_28/Makefile.in | 1 + + dlls/d3dx9_29/Makefile.in | 1 + + dlls/d3dx9_30/Makefile.in | 1 + + dlls/d3dx9_31/Makefile.in | 1 + + dlls/d3dx9_32/Makefile.in | 1 + + dlls/d3dx9_33/Makefile.in | 1 + + dlls/d3dx9_36/Makefile.in | 1 + + dlls/d3dx9_36/effect.c | 8 ++++++++ + include/d3dx9effect.h | 12 ++++++++++++ + 13 files changed, 31 insertions(+) + +diff --git a/dlls/d3dx9_24/Makefile.in b/dlls/d3dx9_24/Makefile.in +index 71dee7f..7464bd1 100644 +--- a/dlls/d3dx9_24/Makefile.in ++++ b/dlls/d3dx9_24/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_24.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=24 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_25/Makefile.in b/dlls/d3dx9_25/Makefile.in +index 9b44be8..1531e66 100644 +--- a/dlls/d3dx9_25/Makefile.in ++++ b/dlls/d3dx9_25/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_25.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=25 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_26/Makefile.in b/dlls/d3dx9_26/Makefile.in +index 14a52d1..2a58c58 100644 +--- a/dlls/d3dx9_26/Makefile.in ++++ b/dlls/d3dx9_26/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_26.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=26 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_27/Makefile.in b/dlls/d3dx9_27/Makefile.in +index b2784fc..9ba1e2a 100644 +--- a/dlls/d3dx9_27/Makefile.in ++++ b/dlls/d3dx9_27/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_27.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=27 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_28/Makefile.in b/dlls/d3dx9_28/Makefile.in +index f6b31d6..15dec71 100644 +--- a/dlls/d3dx9_28/Makefile.in ++++ b/dlls/d3dx9_28/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_28.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=28 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_29/Makefile.in b/dlls/d3dx9_29/Makefile.in +index 9bd84be..5a5a8fc 100644 +--- a/dlls/d3dx9_29/Makefile.in ++++ b/dlls/d3dx9_29/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_29.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=29 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_30/Makefile.in b/dlls/d3dx9_30/Makefile.in +index a8ee15d..bafcdb4 100644 +--- a/dlls/d3dx9_30/Makefile.in ++++ b/dlls/d3dx9_30/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_30.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=30 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_31/Makefile.in b/dlls/d3dx9_31/Makefile.in +index 27bd337..f5df4d8 100644 +--- a/dlls/d3dx9_31/Makefile.in ++++ b/dlls/d3dx9_31/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_31.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=31 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_32/Makefile.in b/dlls/d3dx9_32/Makefile.in +index 1229c7f..cce9293 100644 +--- a/dlls/d3dx9_32/Makefile.in ++++ b/dlls/d3dx9_32/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_32.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=32 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_33/Makefile.in b/dlls/d3dx9_33/Makefile.in +index 44bd991..c9b6587 100644 +--- a/dlls/d3dx9_33/Makefile.in ++++ b/dlls/d3dx9_33/Makefile.in +@@ -1,5 +1,6 @@ + MODULE = d3dx9_33.dll + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=33 + PARENTSRC = ../d3dx9_36 + + C_SRCS = \ +diff --git a/dlls/d3dx9_36/Makefile.in b/dlls/d3dx9_36/Makefile.in +index 83f7d1c..24ce09d 100644 +--- a/dlls/d3dx9_36/Makefile.in ++++ b/dlls/d3dx9_36/Makefile.in +@@ -1,6 +1,7 @@ + MODULE = d3dx9_36.dll + IMPORTLIB = d3dx9 + IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++EXTRADEFS = -D_D3DX9_VER=36 + + C_SRCS = \ + animation.c \ +diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c +index fd8d59e..5b140fe 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 + return E_NOTIMPL; + } + ++#if _D3DX9_VER >= 26 + 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 + + return E_NOTIMPL; + } ++#endif + + static HRESULT WINAPI ID3DXEffectImpl_CloneEffect(ID3DXEffect *iface, + struct IDirect3DDevice9 *device, struct ID3DXEffect **effect) +@@ -3907,6 +3909,7 @@ static HRESULT WINAPI ID3DXEffectImpl_CloneEffect(ID3DXEffect *iface, + return E_NOTIMPL; + } + ++#if _D3DX9_VER >= 27 + 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, + + return E_NOTIMPL; + } ++#endif + + static const struct ID3DXEffectVtbl ID3DXEffect_Vtbl = + { +@@ -3997,9 +4001,13 @@ static const struct ID3DXEffectVtbl ID3DXEffect_Vtbl = + ID3DXEffectImpl_BeginParameterBlock, + ID3DXEffectImpl_EndParameterBlock, + ID3DXEffectImpl_ApplyParameterBlock, ++#if _D3DX9_VER >= 26 + ID3DXEffectImpl_DeleteParameterBlock, ++#endif + ID3DXEffectImpl_CloneEffect, ++#if _D3DX9_VER >= 27 + ID3DXEffectImpl_SetRawValue ++#endif + }; + + static inline struct ID3DXEffectCompilerImpl *impl_from_ID3DXEffectCompiler(ID3DXEffectCompiler *iface) +diff --git a/include/d3dx9effect.h b/include/d3dx9effect.h +index 3f527ed..b8259e4 100644 +--- a/include/d3dx9effect.h ++++ b/include/d3dx9effect.h +@@ -1,5 +1,6 @@ + /* + * Copyright 2010 Christian Costa ++ * Copyright 2015 Sebastian Lackner + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public +@@ -197,7 +198,13 @@ DECLARE_INTERFACE_(ID3DXEffectStateManager, IUnknown) + + typedef struct ID3DXEffect *LPD3DXEFFECT; + ++#if defined(_D3DX9_VER) && _D3DX9_VER <= 25 ++DEFINE_GUID(IID_ID3DXEffect, 0xd165ccb1, 0x62b0, 0x4a33, 0xb3, 0xfa, 0xa9, 0x23, 0x0, 0x30, 0x5a, 0x11); ++#elif defined(_D3DX9_VER) && _D3DX9_VER == 26 ++DEFINE_GUID(IID_ID3DXEffect, 0xc7b17651, 0x5420, 0x490e, 0x8a, 0x7f, 0x92, 0x36, 0x75, 0xa2, 0xd6, 0x87); ++#else + DEFINE_GUID(IID_ID3DXEffect, 0xf6ceb4b3, 0x4e4c, 0x40dd, 0xb8, 0x83, 0x8d, 0x8d, 0xe5, 0xea, 0xc, 0xd5); ++#endif + + #define INTERFACE ID3DXEffect + +@@ -282,10 +289,15 @@ DECLARE_INTERFACE_(ID3DXEffect, ID3DXBaseEffect) + STDMETHOD(BeginParameterBlock)(THIS) PURE; + STDMETHOD_(D3DXHANDLE, EndParameterBlock)(THIS) PURE; + STDMETHOD(ApplyParameterBlock)(THIS_ D3DXHANDLE parameter_block) PURE; ++#if !defined(_D3DX9_VER) || _D3DX9_VER >= 26 + STDMETHOD(DeleteParameterBlock)(THIS_ D3DXHANDLE parameter_block) PURE; ++#endif + STDMETHOD(CloneEffect)(THIS_ struct IDirect3DDevice9 *device, struct ID3DXEffect **effect) PURE; ++#if !defined(_D3DX9_VER) || _D3DX9_VER >= 27 + STDMETHOD(SetRawValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT byte_offset, UINT bytes) PURE; ++#endif + }; ++ + #undef INTERFACE + + typedef struct ID3DXEffectCompiler *LPD3DXEFFECTCOMPILER; +-- +2.8.0 + diff --git a/patches/d3dx9_25-ID3DXEffect/0001-d3dx9_25-Add-an-interface-wrapper-for-different-vers.patch b/patches/d3dx9_25-ID3DXEffect/0001-d3dx9_25-Add-an-interface-wrapper-for-different-vers.patch deleted file mode 100644 index fd4bdfb6..00000000 --- a/patches/d3dx9_25-ID3DXEffect/0001-d3dx9_25-Add-an-interface-wrapper-for-different-vers.patch +++ /dev/null @@ -1,1364 +0,0 @@ -From 4a59723740ee7f599520d75ce8a019504629091d Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Sat, 14 Mar 2015 04:48:38 +0100 -Subject: d3dx9_25: Add an interface wrapper for different version of - ID3DXEffect. - ---- - dlls/d3dx9_25/Makefile.in | 5 +- - dlls/d3dx9_25/d3dx9_25.spec | 22 +- - dlls/d3dx9_25/effect.c | 1282 +++++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 1296 insertions(+), 13 deletions(-) - create mode 100644 dlls/d3dx9_25/effect.c - -diff --git a/dlls/d3dx9_25/Makefile.in b/dlls/d3dx9_25/Makefile.in -index a41cbc2..79e1c6b 100644 ---- a/dlls/d3dx9_25/Makefile.in -+++ b/dlls/d3dx9_25/Makefile.in -@@ -1,7 +1,8 @@ - MODULE = d3dx9_25.dll --IMPORTS = d3d9 -+IMPORTS = d3d9 d3dx9 - - C_SRCS = \ -- d3dx9_25_main.c -+ d3dx9_25_main.c \ -+ effect.c - - RC_SRCS = version.rc -diff --git a/dlls/d3dx9_25/d3dx9_25.spec b/dlls/d3dx9_25/d3dx9_25.spec -index 7f18290..d342265 100644 ---- a/dlls/d3dx9_25/d3dx9_25.spec -+++ b/dlls/d3dx9_25/d3dx9_25.spec -@@ -43,21 +43,21 @@ - @ stdcall D3DXCreateCubeTextureFromResourceExW(ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceExW - @ stdcall D3DXCreateCubeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceW - @ stdcall D3DXCreateCylinder(ptr long long long long long ptr ptr) d3dx9_36.D3DXCreateCylinder --@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffect -+@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) D3DXCreateEffect25 - @ stdcall D3DXCreateEffectCompiler(ptr long ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompiler - @ stdcall D3DXCreateEffectCompilerFromFileA(str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileA - @ stdcall D3DXCreateEffectCompilerFromFileW(wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileW - @ stdcall D3DXCreateEffectCompilerFromResourceA(long str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceA - @ stdcall D3DXCreateEffectCompilerFromResourceW(long wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceW --@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectEx --@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileA --@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExA --@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExW --@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileW --@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceA --@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExA --@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExW --@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceW -+@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) D3DXCreateEffectEx25 -+@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) D3DXCreateEffectFromFileA25 -+@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) D3DXCreateEffectFromFileExA25 -+@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) D3DXCreateEffectFromFileExW25 -+@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) D3DXCreateEffectFromFileW25 -+@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) D3DXCreateEffectFromResourceA25 -+@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) D3DXCreateEffectFromResourceExA25 -+@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) D3DXCreateEffectFromResourceExW25 -+@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) D3DXCreateEffectFromResourceW25 - @ stdcall D3DXCreateEffectPool(ptr) d3dx9_36.D3DXCreateEffectPool - @ stdcall D3DXCreateFontA(ptr long long long long long long long long long str ptr) d3dx9_36.D3DXCreateFontA - @ stdcall D3DXCreateFontIndirectA(ptr ptr ptr) d3dx9_36.D3DXCreateFontIndirectA -@@ -115,7 +115,7 @@ - @ stdcall D3DXCreateVolumeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromResourceW - @ stdcall D3DXDebugMute(long) d3dx9_36.D3DXDebugMute - @ stdcall D3DXDeclaratorFromFVF(long ptr) d3dx9_36.D3DXDeclaratorFromFVF --@ stdcall D3DXDisassembleEffect(ptr long ptr) d3dx9_36.D3DXDisassembleEffect -+@ stdcall D3DXDisassembleEffect(ptr long ptr) D3DXDisassembleEffect25 - @ stdcall D3DXDisassembleShader(ptr long str ptr) d3dx9_36.D3DXDisassembleShader - @ stdcall D3DXFileCreate(ptr) d3dx9_36.D3DXFileCreate - @ stdcall D3DXFillCubeTexture(ptr ptr ptr) d3dx9_36.D3DXFillCubeTexture -diff --git a/dlls/d3dx9_25/effect.c b/dlls/d3dx9_25/effect.c -new file mode 100644 -index 0000000..8867bb3 ---- /dev/null -+++ b/dlls/d3dx9_25/effect.c -@@ -0,0 +1,1282 @@ -+/* -+ * Copyright 2010 Christian Costa -+ * Copyright 2011 Rico Schüller -+ * Copyright 2015 Sebastian Lackner -+ * -+ * This library is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Lesser General Public -+ * License as published by the Free Software Foundation; either -+ * version 2.1 of the License, or (at your option) any later version. -+ * -+ * This library is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ * -+ * You should have received a copy of the GNU Lesser General Public -+ * License along with this library; if not, write to the Free Software -+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA -+ */ -+ -+#include "config.h" -+#include "wine/port.h" -+#define NONAMELESSUNION -+#include "wine/debug.h" -+#define INITGUID -+#include "initguid.h" -+#define COBJMACROS -+#include "wingdi.h" -+#include "d3dx9.h" -+ -+WINE_DEFAULT_DEBUG_CHANNEL(d3dx); -+ -+DEFINE_GUID(IID_ID3DXEffect25, 0xd165ccb1, 0x62b0, 0x4a33, 0xb3, 0xfa, 0xa9, 0x23, 0x0, 0x30, 0x5a, 0x11); -+ -+#define INTERFACE ID3DXEffect25 -+DECLARE_INTERFACE_(ID3DXEffect25, ID3DXBaseEffect) -+{ -+ /*** IUnknown methods ***/ -+ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; -+ STDMETHOD_(ULONG, AddRef)(THIS) PURE; -+ STDMETHOD_(ULONG, Release)(THIS) PURE; -+ /*** ID3DXBaseEffect methods ***/ -+ STDMETHOD(GetDesc)(THIS_ D3DXEFFECT_DESC* desc) PURE; -+ STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE parameter, D3DXPARAMETER_DESC* desc) PURE; -+ STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE technique, D3DXTECHNIQUE_DESC* desc) PURE; -+ STDMETHOD(GetPassDesc)(THIS_ D3DXHANDLE pass, D3DXPASS_DESC* desc) PURE; -+ STDMETHOD(GetFunctionDesc)(THIS_ D3DXHANDLE shader, D3DXFUNCTION_DESC* desc) PURE; -+ STDMETHOD_(D3DXHANDLE, GetParameter)(THIS_ D3DXHANDLE parameter, UINT index) PURE; -+ STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE parameter, const char *name) PURE; -+ STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE parameter, const char *semantic) PURE; -+ STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE parameter, UINT index) PURE; -+ STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT index) PURE; -+ STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ const char *name) PURE; -+ STDMETHOD_(D3DXHANDLE, GetPass)(THIS_ D3DXHANDLE technique, UINT index) PURE; -+ STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE technique, const char *name) PURE; -+ STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT index); -+ STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ const char *name); -+ STDMETHOD_(D3DXHANDLE, GetAnnotation)(THIS_ D3DXHANDLE object, UINT index) PURE; -+ STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE object, const char *name) PURE; -+ STDMETHOD(SetValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT bytes) PURE; -+ STDMETHOD(GetValue)(THIS_ D3DXHANDLE parameter, void *data, UINT bytes) PURE; -+ STDMETHOD(SetBool)(THIS_ D3DXHANDLE parameter, BOOL b) PURE; -+ STDMETHOD(GetBool)(THIS_ D3DXHANDLE parameter, BOOL* b) PURE; -+ STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE parameter, const BOOL *b, UINT count) PURE; -+ STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE parameter, BOOL* b, UINT count) PURE; -+ STDMETHOD(SetInt)(THIS_ D3DXHANDLE parameter, INT n) PURE; -+ STDMETHOD(GetInt)(THIS_ D3DXHANDLE parameter, INT* n) PURE; -+ STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE parameter, const INT *n, UINT count) PURE; -+ STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE parameter, INT* n, UINT count) PURE; -+ STDMETHOD(SetFloat)(THIS_ D3DXHANDLE parameter, FLOAT f) PURE; -+ STDMETHOD(GetFloat)(THIS_ D3DXHANDLE parameter, FLOAT* f) PURE; -+ STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE parameter, const FLOAT *f, UINT count) PURE; -+ STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE parameter, FLOAT* f, UINT count) PURE; -+ STDMETHOD(SetVector)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector) PURE; -+ STDMETHOD(GetVector)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector) PURE; -+ STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) PURE; -+ STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector, UINT count) PURE; -+ STDMETHOD(SetMatrix)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; -+ STDMETHOD(GetMatrix)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; -+ STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; -+ STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; -+ STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; -+ STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; -+ STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; -+ STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; -+ STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; -+ STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; -+ STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; -+ STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; -+ STDMETHOD(SetString)(THIS_ D3DXHANDLE parameter, const char *string) PURE; -+ STDMETHOD(GetString)(THIS_ D3DXHANDLE parameter, const char **string) PURE; -+ STDMETHOD(SetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 *texture) PURE; -+ STDMETHOD(GetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 **texture) PURE; -+ STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DPixelShader9 **shader) PURE; -+ STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DVertexShader9 **shader) PURE; -+ STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE parameter, UINT start, UINT end) PURE; -+ /*** ID3DXEffect methods ***/ -+ STDMETHOD(GetPool)(THIS_ ID3DXEffectPool **pool) PURE; -+ STDMETHOD(SetTechnique)(THIS_ D3DXHANDLE technique) PURE; -+ STDMETHOD_(D3DXHANDLE, GetCurrentTechnique)(THIS) PURE; -+ STDMETHOD(ValidateTechnique)(THIS_ D3DXHANDLE technique) PURE; -+ STDMETHOD(FindNextValidTechnique)(THIS_ D3DXHANDLE technique, D3DXHANDLE* next_technique) PURE; -+ STDMETHOD_(BOOL, IsParameterUsed)(THIS_ D3DXHANDLE parameter, D3DXHANDLE technique) PURE; -+ STDMETHOD(Begin)(THIS_ UINT *passes, DWORD flags) PURE; -+ STDMETHOD(BeginPass)(THIS_ UINT pass) PURE; -+ STDMETHOD(CommitChanges)(THIS) PURE; -+ STDMETHOD(EndPass)(THIS) PURE; -+ STDMETHOD(End)(THIS) PURE; -+ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; -+ STDMETHOD(OnLostDevice)(THIS) PURE; -+ STDMETHOD(OnResetDevice)(THIS) PURE; -+ STDMETHOD(SetStateManager)(THIS_ ID3DXEffectStateManager *manager) PURE; -+ STDMETHOD(GetStateManager)(THIS_ ID3DXEffectStateManager **manager) PURE; -+ STDMETHOD(BeginParameterBlock)(THIS) PURE; -+ STDMETHOD_(D3DXHANDLE, EndParameterBlock)(THIS) PURE; -+ STDMETHOD(ApplyParameterBlock)(THIS_ D3DXHANDLE parameter_block) PURE; -+ /* DeleteParameterBlock missing */ -+ STDMETHOD(CloneEffect)(THIS_ struct IDirect3DDevice9 *device, struct ID3DXEffect25 **effect) PURE; -+ /* SetRawValue missing */ -+}; -+#undef INTERFACE -+ -+struct ID3DXEffect25Impl -+{ -+ ID3DXEffect25 ID3DXEffect25_iface; -+ ID3DXEffect *effect; -+ LONG ref; -+}; -+ -+static const struct ID3DXEffect25Vtbl ID3DXEffect25_Vtbl; -+ -+static inline struct ID3DXEffect25Impl *impl_from_ID3DXEffect25(ID3DXEffect25 *iface) -+{ -+ return CONTAINING_RECORD(iface, struct ID3DXEffect25Impl, ID3DXEffect25_iface); -+} -+ -+/*** IUnknown methods ***/ -+static HRESULT WINAPI ID3DXEffect25Impl_QueryInterface(ID3DXEffect25 *iface, REFIID riid, void **object) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ -+ TRACE("iface %p, riid %s, object %p\n", This, debugstr_guid(riid), object); -+ -+ if (IsEqualGUID(riid, &IID_IUnknown) || -+ IsEqualGUID(riid, &IID_ID3DXEffect25)) -+ { -+ iface->lpVtbl->AddRef(iface); -+ *object = This; -+ return S_OK; -+ } -+ -+ ERR("Interface %s not found\n", debugstr_guid(riid)); -+ -+ return E_NOINTERFACE; -+} -+ -+static ULONG WINAPI ID3DXEffect25Impl_AddRef(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ -+ TRACE("iface %p: AddRef from %u\n", This, This->ref); -+ -+ return InterlockedIncrement(&This->ref); -+} -+ -+static ULONG WINAPI ID3DXEffect25Impl_Release(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ULONG ref = InterlockedDecrement(&This->ref); -+ -+ TRACE("iface %p: Release from %u\n", This, ref + 1); -+ -+ if (!ref) -+ { -+ ID3DXEffect *effect = This->effect; -+ -+ effect->lpVtbl->Release(effect); -+ HeapFree(GetProcessHeap(), 0, This); -+ } -+ -+ return ref; -+} -+ -+/*** ID3DXBaseEffect methods ***/ -+static HRESULT WINAPI ID3DXEffect25Impl_GetDesc(ID3DXEffect25 *iface, D3DXEFFECT_DESC *desc) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetDesc(effect, desc); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetParameterDesc(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXPARAMETER_DESC *desc) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetParameterDesc(effect, parameter, desc); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetTechniqueDesc(ID3DXEffect25 *iface, D3DXHANDLE technique, D3DXTECHNIQUE_DESC *desc) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetTechniqueDesc(effect, technique, desc); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetPassDesc(ID3DXEffect25 *iface, D3DXHANDLE pass, D3DXPASS_DESC *desc) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetPassDesc(effect, pass, desc); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetFunctionDesc(ID3DXEffect25 *iface, D3DXHANDLE shader, D3DXFUNCTION_DESC *desc) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetFunctionDesc(effect, shader, desc); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetParameter(ID3DXEffect25 *iface, D3DXHANDLE parameter, UINT index) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetParameter(effect, parameter, index); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetParameterByName(ID3DXEffect25 *iface, D3DXHANDLE parameter, LPCSTR name) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetParameterByName(effect, parameter, name); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetParameterBySemantic(ID3DXEffect25 *iface, D3DXHANDLE parameter, LPCSTR semantic) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetParameterBySemantic(effect, parameter, semantic); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetParameterElement(ID3DXEffect25 *iface, D3DXHANDLE parameter, UINT index) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetParameterElement(effect, parameter, index); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetTechnique(ID3DXEffect25 *iface, UINT index) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetTechnique(effect, index); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetTechniqueByName(ID3DXEffect25 *iface, LPCSTR name) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetTechniqueByName(effect, name); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetPass(ID3DXEffect25 *iface, D3DXHANDLE technique, UINT index) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetPass(effect, technique, index); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetPassByName(ID3DXEffect25 *iface, D3DXHANDLE technique, LPCSTR name) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetPassByName(effect, technique, name); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetFunction(ID3DXEffect25 *iface, UINT index) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetFunction(effect, index); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetFunctionByName(ID3DXEffect25 *iface, LPCSTR name) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetFunctionByName(effect, name); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetAnnotation(ID3DXEffect25 *iface, D3DXHANDLE object, UINT index) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetAnnotation(effect, object, index); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetAnnotationByName(ID3DXEffect25 *iface, D3DXHANDLE object, LPCSTR name) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetAnnotationByName(effect, object, name); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetValue(ID3DXEffect25 *iface, D3DXHANDLE parameter, LPCVOID data, UINT bytes) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetValue(effect, parameter, data, bytes); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetValue(ID3DXEffect25 *iface, D3DXHANDLE parameter, LPVOID data, UINT bytes) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetValue(effect, parameter, data, bytes); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetBool(ID3DXEffect25 *iface, D3DXHANDLE parameter, BOOL b) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetBool(effect, parameter, b); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetBool(ID3DXEffect25 *iface, D3DXHANDLE parameter, BOOL *b) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetBool(effect, parameter, b); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetBoolArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const BOOL *b, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetBoolArray(effect, parameter, b, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetBoolArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, BOOL *b, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetBoolArray(effect, parameter, b, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetInt(ID3DXEffect25 *iface, D3DXHANDLE parameter, INT n) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetInt(effect, parameter, n); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetInt(ID3DXEffect25 *iface, D3DXHANDLE parameter, INT *n) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetInt(effect, parameter, n); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetIntArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const INT *n, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetIntArray(effect, parameter, n, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetIntArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, INT *n, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetIntArray(effect, parameter, n, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetFloat(ID3DXEffect25 *iface, D3DXHANDLE parameter, FLOAT f) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetFloat(effect, parameter, f); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetFloat(ID3DXEffect25 *iface, D3DXHANDLE parameter, FLOAT *f) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetFloat(effect, parameter, f); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetFloatArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const FLOAT *f, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetFloatArray(effect, parameter, f, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetFloatArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, FLOAT *f, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetFloatArray(effect, parameter, f, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetVector(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXVECTOR4 *vector) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetVector(effect, parameter, vector); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetVector(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXVECTOR4 *vector) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetVector(effect, parameter, vector); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetVectorArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetVectorArray(effect, parameter, vector, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetVectorArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXVECTOR4 *vector, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetVectorArray(effect, parameter, vector, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetMatrix(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXMATRIX *matrix) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetMatrix(effect, parameter, matrix); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetMatrix(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXMATRIX *matrix) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetMatrix(effect, parameter, matrix); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetMatrixArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetMatrixArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetMatrixArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXMATRIX *matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetMatrixArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetMatrixPointerArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetMatrixPointerArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetMatrixPointerArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXMATRIX **matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetMatrixPointerArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetMatrixTranspose(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXMATRIX *matrix) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetMatrixTranspose(effect, parameter, matrix); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetMatrixTranspose(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXMATRIX *matrix) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetMatrixTranspose(effect, parameter, matrix); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetMatrixTransposeArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetMatrixTransposeArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetMatrixTransposeArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXMATRIX *matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetMatrixTransposeArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetMatrixTransposePointerArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetMatrixTransposePointerArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetMatrixTransposePointerArray(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXMATRIX **matrix, UINT count) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetMatrixTransposePointerArray(effect, parameter, matrix, count); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetString(ID3DXEffect25 *iface, D3DXHANDLE parameter, LPCSTR string) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetString(effect, parameter, string); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetString(ID3DXEffect25 *iface, D3DXHANDLE parameter, LPCSTR *string) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetString(effect, parameter, string); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetTexture(ID3DXEffect25 *iface, D3DXHANDLE parameter, IDirect3DBaseTexture9 *texture) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetTexture(effect, parameter, texture); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetTexture(ID3DXEffect25 *iface, D3DXHANDLE parameter, IDirect3DBaseTexture9 **texture) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetTexture(effect, parameter, texture); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetPixelShader(ID3DXEffect25 *iface, D3DXHANDLE parameter, IDirect3DPixelShader9 **pshader) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetPixelShader(effect, parameter, pshader); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetVertexShader(ID3DXEffect25 *iface, D3DXHANDLE parameter, IDirect3DVertexShader9 **vshader) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetVertexShader(effect, parameter, vshader); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetArrayRange(ID3DXEffect25 *iface, D3DXHANDLE parameter, UINT start, UINT end) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetArrayRange(effect, parameter, start, end); -+} -+ -+/*** ID3DXEffect25 methods ***/ -+static HRESULT WINAPI ID3DXEffect25Impl_GetPool(ID3DXEffect25 *iface, ID3DXEffectPool **pool) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetPool(effect, pool); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetTechnique(ID3DXEffect25 *iface, D3DXHANDLE technique) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetTechnique(effect, technique); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_GetCurrentTechnique(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetCurrentTechnique(effect); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_ValidateTechnique(ID3DXEffect25 *iface, D3DXHANDLE technique) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->ValidateTechnique(effect, technique); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_FindNextValidTechnique(ID3DXEffect25 *iface, D3DXHANDLE technique, D3DXHANDLE *next_technique) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->FindNextValidTechnique(effect, technique, next_technique); -+} -+ -+static BOOL WINAPI ID3DXEffect25Impl_IsParameterUsed(ID3DXEffect25 *iface, D3DXHANDLE parameter, D3DXHANDLE technique) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->IsParameterUsed(effect, parameter, technique); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_Begin(ID3DXEffect25 *iface, UINT *passes, DWORD flags) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->Begin(effect, passes, flags); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_BeginPass(ID3DXEffect25 *iface, UINT pass) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->BeginPass(effect, pass); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_CommitChanges(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->CommitChanges(effect); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_EndPass(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->EndPass(effect); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_End(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->End(effect); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetDevice(ID3DXEffect25 *iface, IDirect3DDevice9 **device) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetDevice(effect, device); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_OnLostDevice(ID3DXEffect25* iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->OnLostDevice(effect); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_OnResetDevice(ID3DXEffect25* iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->OnResetDevice(effect); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_SetStateManager(ID3DXEffect25 *iface, ID3DXEffectStateManager *manager) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->SetStateManager(effect, manager); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_GetStateManager(ID3DXEffect25 *iface, ID3DXEffectStateManager **manager) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->GetStateManager(effect, manager); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_BeginParameterBlock(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->BeginParameterBlock(effect); -+} -+ -+static D3DXHANDLE WINAPI ID3DXEffect25Impl_EndParameterBlock(ID3DXEffect25 *iface) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->EndParameterBlock(effect); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_ApplyParameterBlock(ID3DXEffect25 *iface, D3DXHANDLE parameter_block) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ return effect->lpVtbl->ApplyParameterBlock(effect, parameter_block); -+} -+ -+static HRESULT WINAPI ID3DXEffect25Impl_CloneEffect(ID3DXEffect25 *iface, IDirect3DDevice9 *device, ID3DXEffect25 **clone) -+{ -+ struct ID3DXEffect25Impl *This = impl_from_ID3DXEffect25(iface); -+ ID3DXEffect *effect = This->effect; -+ struct ID3DXEffect25Impl *object; -+ HRESULT hr; -+ -+ TRACE("Forward iface %p, effect %p\n", This, effect); -+ -+ object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object)); -+ if (!object) -+ { -+ ERR("Out of memory\n"); -+ return E_OUTOFMEMORY; -+ } -+ -+ object->ID3DXEffect25_iface.lpVtbl = &ID3DXEffect25_Vtbl; -+ object->ref = 1; -+ -+ hr = effect->lpVtbl->CloneEffect(effect, device, &object->effect); -+ if (FAILED(hr)) -+ { -+ WARN("Failed to clone effect\n"); -+ HeapFree(GetProcessHeap(), 0, object); -+ return hr; -+ } -+ -+ *clone = &object->ID3DXEffect25_iface; -+ -+ TRACE("Created ID3DXEffect %p\n", clone); -+ -+ return hr; -+} -+ -+static const struct ID3DXEffect25Vtbl ID3DXEffect25_Vtbl = -+{ -+ /*** IUnknown methods ***/ -+ ID3DXEffect25Impl_QueryInterface, -+ ID3DXEffect25Impl_AddRef, -+ ID3DXEffect25Impl_Release, -+ /*** ID3DXBaseEffect methods ***/ -+ ID3DXEffect25Impl_GetDesc, -+ ID3DXEffect25Impl_GetParameterDesc, -+ ID3DXEffect25Impl_GetTechniqueDesc, -+ ID3DXEffect25Impl_GetPassDesc, -+ ID3DXEffect25Impl_GetFunctionDesc, -+ ID3DXEffect25Impl_GetParameter, -+ ID3DXEffect25Impl_GetParameterByName, -+ ID3DXEffect25Impl_GetParameterBySemantic, -+ ID3DXEffect25Impl_GetParameterElement, -+ ID3DXEffect25Impl_GetTechnique, -+ ID3DXEffect25Impl_GetTechniqueByName, -+ ID3DXEffect25Impl_GetPass, -+ ID3DXEffect25Impl_GetPassByName, -+ ID3DXEffect25Impl_GetFunction, -+ ID3DXEffect25Impl_GetFunctionByName, -+ ID3DXEffect25Impl_GetAnnotation, -+ ID3DXEffect25Impl_GetAnnotationByName, -+ ID3DXEffect25Impl_SetValue, -+ ID3DXEffect25Impl_GetValue, -+ ID3DXEffect25Impl_SetBool, -+ ID3DXEffect25Impl_GetBool, -+ ID3DXEffect25Impl_SetBoolArray, -+ ID3DXEffect25Impl_GetBoolArray, -+ ID3DXEffect25Impl_SetInt, -+ ID3DXEffect25Impl_GetInt, -+ ID3DXEffect25Impl_SetIntArray, -+ ID3DXEffect25Impl_GetIntArray, -+ ID3DXEffect25Impl_SetFloat, -+ ID3DXEffect25Impl_GetFloat, -+ ID3DXEffect25Impl_SetFloatArray, -+ ID3DXEffect25Impl_GetFloatArray, -+ ID3DXEffect25Impl_SetVector, -+ ID3DXEffect25Impl_GetVector, -+ ID3DXEffect25Impl_SetVectorArray, -+ ID3DXEffect25Impl_GetVectorArray, -+ ID3DXEffect25Impl_SetMatrix, -+ ID3DXEffect25Impl_GetMatrix, -+ ID3DXEffect25Impl_SetMatrixArray, -+ ID3DXEffect25Impl_GetMatrixArray, -+ ID3DXEffect25Impl_SetMatrixPointerArray, -+ ID3DXEffect25Impl_GetMatrixPointerArray, -+ ID3DXEffect25Impl_SetMatrixTranspose, -+ ID3DXEffect25Impl_GetMatrixTranspose, -+ ID3DXEffect25Impl_SetMatrixTransposeArray, -+ ID3DXEffect25Impl_GetMatrixTransposeArray, -+ ID3DXEffect25Impl_SetMatrixTransposePointerArray, -+ ID3DXEffect25Impl_GetMatrixTransposePointerArray, -+ ID3DXEffect25Impl_SetString, -+ ID3DXEffect25Impl_GetString, -+ ID3DXEffect25Impl_SetTexture, -+ ID3DXEffect25Impl_GetTexture, -+ ID3DXEffect25Impl_GetPixelShader, -+ ID3DXEffect25Impl_GetVertexShader, -+ ID3DXEffect25Impl_SetArrayRange, -+ /*** ID3DXEffect25 methods ***/ -+ ID3DXEffect25Impl_GetPool, -+ ID3DXEffect25Impl_SetTechnique, -+ ID3DXEffect25Impl_GetCurrentTechnique, -+ ID3DXEffect25Impl_ValidateTechnique, -+ ID3DXEffect25Impl_FindNextValidTechnique, -+ ID3DXEffect25Impl_IsParameterUsed, -+ ID3DXEffect25Impl_Begin, -+ ID3DXEffect25Impl_BeginPass, -+ ID3DXEffect25Impl_CommitChanges, -+ ID3DXEffect25Impl_EndPass, -+ ID3DXEffect25Impl_End, -+ ID3DXEffect25Impl_GetDevice, -+ ID3DXEffect25Impl_OnLostDevice, -+ ID3DXEffect25Impl_OnResetDevice, -+ ID3DXEffect25Impl_SetStateManager, -+ ID3DXEffect25Impl_GetStateManager, -+ ID3DXEffect25Impl_BeginParameterBlock, -+ ID3DXEffect25Impl_EndParameterBlock, -+ ID3DXEffect25Impl_ApplyParameterBlock, -+ ID3DXEffect25Impl_CloneEffect, -+}; -+ -+HRESULT WINAPI D3DXCreateEffectEx25(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, -+ const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, -+ struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ struct ID3DXEffect25Impl *object; -+ HRESULT hr; -+ -+ TRACE("device %p, srcdata %p, srcdatalen %u, defines %p, include %p, " -+ "skip_constants %s, flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, srcdata, srcdatalen, defines, include, -+ debugstr_a(skip_constants), flags, pool, effect, compilation_errors); -+ -+ object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object)); -+ if (!object) -+ { -+ ERR("Out of memory\n"); -+ return E_OUTOFMEMORY; -+ } -+ -+ object->ID3DXEffect25_iface.lpVtbl = &ID3DXEffect25_Vtbl; -+ object->ref = 1; -+ -+ hr = D3DXCreateEffectEx(device, srcdata, srcdatalen, defines, include, -+ skip_constants, flags, pool, &object->effect, compilation_errors); -+ if (FAILED(hr)) -+ { -+ WARN("Failed to create effect\n"); -+ HeapFree(GetProcessHeap(), 0, object); -+ return hr; -+ } -+ -+ *effect = &object->ID3DXEffect25_iface; -+ TRACE("Created ID3DXEffect25 %p\n", object); -+ return hr; -+} -+ -+HRESULT WINAPI D3DXCreateEffect25(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, -+ const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, -+ struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ TRACE("device %p, srcdata %p, srcdatalen %u, defines %p, include %p, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, srcdata, srcdatalen, defines, include, flags, pool, effect, compilation_errors); -+ -+ return D3DXCreateEffectEx25(device, srcdata, srcdatalen, defines, include, NULL, flags, pool, effect, compilation_errors); -+} -+ -+ -+HRESULT WINAPI D3DXCreateEffectFromFileExW25(struct IDirect3DDevice9 *device, const WCHAR *srcfile, -+ const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, -+ struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ struct ID3DXEffect25Impl *object; -+ HRESULT hr; -+ -+ TRACE("device %p, srcfile %s, defines %p, include %p, skip_constants %s, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, debugstr_w(srcfile), defines, include, debugstr_a(skip_constants), -+ flags, pool, effect, compilation_errors); -+ -+ object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object)); -+ if (!object) -+ { -+ ERR("Out of memory\n"); -+ return E_OUTOFMEMORY; -+ } -+ -+ object->ID3DXEffect25_iface.lpVtbl = &ID3DXEffect25_Vtbl; -+ object->ref = 1; -+ -+ hr = D3DXCreateEffectFromFileExW(device, srcfile, defines, include, -+ skip_constants, flags, pool, &object->effect, compilation_errors); -+ if (FAILED(hr)) -+ { -+ WARN("Failed to create effect\n"); -+ HeapFree(GetProcessHeap(), 0, object); -+ return hr; -+ } -+ -+ *effect = &object->ID3DXEffect25_iface; -+ TRACE("Created ID3DXEffect25 %p\n", object); -+ return hr; -+} -+ -+HRESULT WINAPI D3DXCreateEffectFromFileExA25(struct IDirect3DDevice9 *device, const char *srcfile, -+ const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, -+ struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ struct ID3DXEffect25Impl *object; -+ HRESULT hr; -+ -+ TRACE("device %p, srcfile %s, defines %p, include %p, skip_constants %s, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, debugstr_a(srcfile), defines, include, debugstr_a(skip_constants), -+ flags, pool, effect, compilation_errors); -+ -+ object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object)); -+ if (!object) -+ { -+ ERR("Out of memory\n"); -+ return E_OUTOFMEMORY; -+ } -+ -+ object->ID3DXEffect25_iface.lpVtbl = &ID3DXEffect25_Vtbl; -+ object->ref = 1; -+ -+ hr = D3DXCreateEffectFromFileExA(device, srcfile, defines, include, skip_constants, flags, -+ pool, &object->effect, compilation_errors); -+ if (FAILED(hr)) -+ { -+ WARN("Failed to create effect\n"); -+ HeapFree(GetProcessHeap(), 0, object); -+ return hr; -+ } -+ -+ *effect = &object->ID3DXEffect25_iface; -+ TRACE("Created ID3DXEffect25 %p\n", object); -+ return hr; -+} -+ -+HRESULT WINAPI D3DXCreateEffectFromFileW25(struct IDirect3DDevice9 *device, const WCHAR *srcfile, -+ const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, -+ struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ TRACE("device %p, srcfile %s, defines %p, include %p, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, debugstr_w(srcfile), defines, include, flags, pool, effect, compilation_errors); -+ -+ return D3DXCreateEffectFromFileExW25(device, srcfile, defines, include, NULL, flags, pool, effect, compilation_errors); -+} -+ -+HRESULT WINAPI D3DXCreateEffectFromFileA25(struct IDirect3DDevice9 *device, const char *srcfile, -+ const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, -+ struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ TRACE("device %p, srcfile %s, defines %p, include %p, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, debugstr_a(srcfile), defines, include, flags, pool, effect, compilation_errors); -+ -+ return D3DXCreateEffectFromFileExA25(device, srcfile, defines, include, NULL, flags, pool, effect, compilation_errors); -+} -+ -+HRESULT WINAPI D3DXCreateEffectFromResourceExW25(struct IDirect3DDevice9 *device, HMODULE srcmodule, -+ const WCHAR *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, -+ DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ struct ID3DXEffect25Impl *object; -+ HRESULT hr; -+ -+ TRACE("device %p, srcmodule %p, srcresource %s, defines %p, include %p, skip_constants %s, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, srcmodule, debugstr_w(srcresource), defines, include, debugstr_a(skip_constants), -+ flags, pool, effect, compilation_errors); -+ -+ object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object)); -+ if (!object) -+ { -+ ERR("Out of memory\n"); -+ return E_OUTOFMEMORY; -+ } -+ -+ object->ID3DXEffect25_iface.lpVtbl = &ID3DXEffect25_Vtbl; -+ object->ref = 1; -+ -+ hr = D3DXCreateEffectFromResourceExW(device, srcmodule, srcresource, defines, include, -+ skip_constants, flags, pool, &object->effect, compilation_errors); -+ if (FAILED(hr)) -+ { -+ WARN("Failed to create effect\n"); -+ HeapFree(GetProcessHeap(), 0, object); -+ return hr; -+ } -+ -+ *effect = &object->ID3DXEffect25_iface; -+ TRACE("Created ID3DXEffect25 %p\n", object); -+ return hr; -+} -+ -+HRESULT WINAPI D3DXCreateEffectFromResourceExA25(struct IDirect3DDevice9 *device, HMODULE srcmodule, -+ const char *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, -+ DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ struct ID3DXEffect25Impl *object; -+ HRESULT hr; -+ -+ TRACE("device %p, srcmodule %p, srcresource %s, defines %p, include %p, skip_constants %s, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, srcmodule, debugstr_a(srcresource), defines, include, debugstr_a(skip_constants), -+ flags, pool, effect, compilation_errors); -+ -+ object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object)); -+ if (!object) -+ { -+ ERR("Out of memory\n"); -+ return E_OUTOFMEMORY; -+ } -+ -+ object->ID3DXEffect25_iface.lpVtbl = &ID3DXEffect25_Vtbl; -+ object->ref = 1; -+ -+ hr = D3DXCreateEffectFromResourceExA(device, srcmodule, srcresource, defines, include, -+ skip_constants, flags, pool, &object->effect, compilation_errors); -+ if (FAILED(hr)) -+ { -+ WARN("Failed to create effect\n"); -+ HeapFree(GetProcessHeap(), 0, object); -+ return hr; -+ } -+ -+ *effect = &object->ID3DXEffect25_iface; -+ TRACE("Created ID3DXEffect25 %p\n", object); -+ return hr; -+} -+ -+HRESULT WINAPI D3DXCreateEffectFromResourceW25(struct IDirect3DDevice9 *device, HMODULE srcmodule, -+ const WCHAR *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, -+ struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ TRACE("device %p, srcmodule %p, srcresource %s, defines %p, include %p, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, srcmodule, debugstr_w(srcresource), defines, include, -+ flags, pool, effect, compilation_errors); -+ -+ return D3DXCreateEffectFromResourceExW25(device, srcmodule, srcresource, defines, include, NULL, -+ flags, pool, effect, compilation_errors); -+} -+ -+HRESULT WINAPI D3DXCreateEffectFromResourceA25(struct IDirect3DDevice9 *device, HMODULE srcmodule, -+ const char *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, -+ struct ID3DXEffectPool *pool, struct ID3DXEffect25 **effect, struct ID3DXBuffer **compilation_errors) -+{ -+ TRACE("device %p, srcmodule %p, srcresource %s, defines %p, include %p, " -+ "flags %#x, pool %p, effect %p, compilation_errors %p.\n", -+ device, srcmodule, debugstr_a(srcresource), defines, include, -+ flags, pool, effect, compilation_errors); -+ -+ return D3DXCreateEffectFromResourceExA25(device, srcmodule, srcresource, defines, include, NULL, -+ flags, pool, effect, compilation_errors); -+} -+ -+HRESULT WINAPI D3DXDisassembleEffect25(ID3DXEffect25 *effect, BOOL enable_color_code, ID3DXBuffer **disassembly) -+{ -+ struct ID3DXEffect25Impl *object = impl_from_ID3DXEffect25(effect); -+ -+ TRACE("effect %p, enable_color_code %u, disassembly %p.\n", -+ effect, enable_color_code, disassembly); -+ -+ return D3DXDisassembleEffect(object->effect, enable_color_code, disassembly); -+} --- -2.6.4 - diff --git a/patches/d3dx9_25-ID3DXEffect/definition b/patches/d3dx9_25-ID3DXEffect/definition index 662d50c6..1b6a0f92 100644 --- a/patches/d3dx9_25-ID3DXEffect/definition +++ b/patches/d3dx9_25-ID3DXEffect/definition @@ -1,2 +1,2 @@ Fixes: [25138] Fix wrong version of ID3DXEffect interface for d3dx9_25 -Category: stable +Fixes: Fix wrong version of ID3DXEffect interface for d3dx9_24 diff --git a/patches/d3dx9_26-ID3DXEffect/0001-d3dx9_36-Allow-to-query-for-d3dx9_26-specific-ID3DXE.patch b/patches/d3dx9_26-ID3DXEffect/0001-d3dx9_36-Allow-to-query-for-d3dx9_26-specific-ID3DXE.patch deleted file mode 100644 index 4c93cbd1..00000000 --- a/patches/d3dx9_26-ID3DXEffect/0001-d3dx9_36-Allow-to-query-for-d3dx9_26-specific-ID3DXE.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 95470685fda5c2e5e74c88d2d689159c3af478e8 Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Sat, 14 Mar 2015 17:00:08 +0100 -Subject: d3dx9_36: Allow to query for d3dx9_26 specific ID3DXEffect interface. - ---- - dlls/d3dx9_36/effect.c | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c -index 8f82784..384af3f 100644 ---- a/dlls/d3dx9_36/effect.c -+++ b/dlls/d3dx9_36/effect.c -@@ -22,6 +22,11 @@ - - #include "d3dx9_private.h" - #include "d3dcompiler.h" -+#include "initguid.h" -+ -+/* d3dx9_26 provides an ID3DXEffect interface where the last function SetRawValue -+ * is missing. Since its otherwise identical, we just use the same vtable. */ -+DEFINE_GUID(IID_ID3DXEffect26, 0xc7b17651, 0x5420, 0x490e, 0x8a, 0x7f, 0x92, 0x36, 0x75, 0xa2, 0xd6, 0x87); - - /* Constants for special INT/FLOAT conversation */ - #define INT_FLOAT_MULTI 255.0f -@@ -2862,7 +2867,8 @@ static HRESULT WINAPI ID3DXEffectImpl_QueryInterface(ID3DXEffect *iface, REFIID - TRACE("(%p)->(%s, %p)\n", iface, debugstr_guid(riid), object); - - if (IsEqualGUID(riid, &IID_IUnknown) || -- IsEqualGUID(riid, &IID_ID3DXEffect)) -+ IsEqualGUID(riid, &IID_ID3DXEffect) || -+ IsEqualGUID(riid, &IID_ID3DXEffect26)) - { - iface->lpVtbl->AddRef(iface); - *object = iface; --- -2.7.1 - diff --git a/patches/d3dx9_26-ID3DXEffect/definition b/patches/d3dx9_26-ID3DXEffect/definition deleted file mode 100644 index 5d05f260..00000000 --- a/patches/d3dx9_26-ID3DXEffect/definition +++ /dev/null @@ -1 +0,0 @@ -Category: stable diff --git a/patches/d3dx9_33-Share_Source/0001-d3dx9_33-Share-the-source-with-d3dx9_36.patch b/patches/d3dx9_33-Share_Source/0001-d3dx9_33-Share-the-source-with-d3dx9_36.patch deleted file mode 100644 index afdc5c1c..00000000 --- a/patches/d3dx9_33-Share_Source/0001-d3dx9_33-Share-the-source-with-d3dx9_36.patch +++ /dev/null @@ -1,744 +0,0 @@ -From 420ca2da1e8b4d43cb84e2a725842c0637612edf Mon Sep 17 00:00:00 2001 -From: Alistair Leslie-Hughes -Date: Mon, 13 Jul 2015 20:38:04 +1000 -Subject: d3dx9_33: Share the source with d3dx9_36 - ---- - dlls/d3dx9_33/Makefile.in | 22 +- - dlls/d3dx9_33/d3dx9_33.spec | 667 +++++++++++++++++++++--------------------- - dlls/d3dx9_33/d3dx9_33_main.c | 1 + - tools/make_specfiles | 1 - - 4 files changed, 355 insertions(+), 336 deletions(-) - -diff --git a/dlls/d3dx9_33/Makefile.in b/dlls/d3dx9_33/Makefile.in -index 0934eab..1106d11 100644 ---- a/dlls/d3dx9_33/Makefile.in -+++ b/dlls/d3dx9_33/Makefile.in -@@ -1,7 +1,25 @@ - MODULE = d3dx9_33.dll --IMPORTS = d3d9 -+IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d -+PARENTSRC = ../d3dx9_36 - - C_SRCS = \ -- d3dx9_33_main.c -+ animation.c \ -+ core.c \ -+ d3dx9_33_main.c \ -+ effect.c \ -+ font.c \ -+ line.c \ -+ math.c \ -+ mesh.c \ -+ preshader.c \ -+ render.c \ -+ shader.c \ -+ skin.c \ -+ sprite.c \ -+ surface.c \ -+ texture.c \ -+ util.c \ -+ volume.c \ -+ xfile.c - - RC_SRCS = version.rc -diff --git a/dlls/d3dx9_33/d3dx9_33.spec b/dlls/d3dx9_33/d3dx9_33.spec -index 35cb0b6..2790d1a 100644 ---- a/dlls/d3dx9_33/d3dx9_33.spec -+++ b/dlls/d3dx9_33/d3dx9_33.spec -@@ -1,334 +1,335 @@ --@ stdcall D3DXAssembleShader(ptr long ptr ptr long ptr ptr) d3dx9_36.D3DXAssembleShader --@ stdcall D3DXAssembleShaderFromFileA(str ptr ptr long ptr ptr) d3dx9_36.D3DXAssembleShaderFromFileA --@ stdcall D3DXAssembleShaderFromFileW(wstr ptr ptr long ptr ptr) d3dx9_36.D3DXAssembleShaderFromFileW --@ stdcall D3DXAssembleShaderFromResourceA(long str ptr ptr long ptr ptr) d3dx9_36.D3DXAssembleShaderFromResourceA --@ stdcall D3DXAssembleShaderFromResourceW(long wstr ptr ptr long ptr ptr) d3dx9_36.D3DXAssembleShaderFromResourceW --@ stdcall D3DXBoxBoundProbe(ptr ptr ptr ptr) d3dx9_36.D3DXBoxBoundProbe --@ stdcall D3DXCheckCubeTextureRequirements(ptr ptr ptr long ptr ptr) d3dx9_36.D3DXCheckCubeTextureRequirements --@ stdcall D3DXCheckTextureRequirements(ptr ptr ptr ptr long ptr ptr) d3dx9_36.D3DXCheckTextureRequirements -+@ stdcall D3DXAssembleShader(ptr long ptr ptr long ptr ptr) -+@ stdcall D3DXAssembleShaderFromFileA(str ptr ptr long ptr ptr) -+@ stdcall D3DXAssembleShaderFromFileW(wstr ptr ptr long ptr ptr) -+@ stdcall D3DXAssembleShaderFromResourceA(long str ptr ptr long ptr ptr) -+@ stdcall D3DXAssembleShaderFromResourceW(long wstr ptr ptr long ptr ptr) -+@ stdcall D3DXBoxBoundProbe(ptr ptr ptr ptr) -+@ stdcall D3DXCheckCubeTextureRequirements(ptr ptr ptr long ptr ptr) -+@ stdcall D3DXCheckTextureRequirements(ptr ptr ptr ptr long ptr ptr) - @ stdcall D3DXCheckVersion(long long) --@ stdcall D3DXCheckVolumeTextureRequirements(ptr ptr ptr ptr ptr long ptr ptr) d3dx9_36.D3DXCheckVolumeTextureRequirements --@ stdcall D3DXCleanMesh(long ptr ptr ptr ptr ptr) d3dx9_36.D3DXCleanMesh --@ stdcall D3DXColorAdjustContrast(ptr ptr float) d3dx9_36.D3DXColorAdjustContrast --@ stdcall D3DXColorAdjustSaturation(ptr ptr float) d3dx9_36.D3DXColorAdjustSaturation --@ stdcall D3DXCompileShader(ptr long ptr ptr str str long ptr ptr ptr) d3dx9_36.D3DXCompileShader --@ stdcall D3DXCompileShaderFromFileA(str ptr ptr str str long ptr ptr ptr) d3dx9_36.D3DXCompileShaderFromFileA --@ stdcall D3DXCompileShaderFromFileW(wstr ptr ptr str str long ptr ptr ptr) d3dx9_36.D3DXCompileShaderFromFileW --@ stdcall D3DXCompileShaderFromResourceA(ptr str ptr ptr str str long ptr ptr ptr) d3dx9_36.D3DXCompileShaderFromResourceA --@ stdcall D3DXCompileShaderFromResourceW(ptr wstr ptr ptr str str long ptr ptr ptr) d3dx9_36.D3DXCompileShaderFromResourceW --@ stdcall D3DXComputeBoundingBox(ptr long long ptr ptr) d3dx9_36.D3DXComputeBoundingBox --@ stdcall D3DXComputeBoundingSphere(ptr long long ptr ptr) d3dx9_36.D3DXComputeBoundingSphere --@ stdcall D3DXComputeIMTFromPerVertexSignal(ptr ptr long long long ptr ptr ptr) d3dx9_36.D3DXComputeIMTFromPerVertexSignal --@ stdcall D3DXComputeIMTFromPerTexelSignal(ptr long ptr long long long long long ptr ptr ptr) d3dx9_36.D3DXComputeIMTFromPerTexelSignal --@ stdcall D3DXComputeIMTFromSignal(ptr long long long long ptr ptr ptr ptr ptr) d3dx9_36.D3DXComputeIMTFromSignal --@ stdcall D3DXComputeIMTFromTexture(ptr ptr long long ptr ptr ptr) d3dx9_36.D3DXComputeIMTFromTexture --@ stdcall D3DXComputeNormalMap(ptr ptr ptr long long float) d3dx9_36.D3DXComputeNormalMap --@ stdcall D3DXComputeNormals(ptr ptr) d3dx9_36.D3DXComputeNormals --@ stdcall D3DXComputeTangent(ptr long long long long ptr) d3dx9_36.D3DXComputeTangent --@ stdcall D3DXComputeTangentFrame(ptr long) d3dx9_36.D3DXComputeTangentFrame --@ stdcall D3DXComputeTangentFrameEx(ptr long long long long long long long long long ptr float float float ptr ptr) d3dx9_36.D3DXComputeTangentFrameEx --@ stdcall D3DXConcatenateMeshes(ptr long long ptr ptr ptr ptr ptr) d3dx9_36.D3DXConcatenateMeshes --@ stdcall D3DXConvertMeshSubsetToSingleStrip(ptr long long ptr ptr) d3dx9_36.D3DXConvertMeshSubsetToSingleStrip --@ stdcall D3DXConvertMeshSubsetToStrips(ptr long long ptr ptr ptr ptr) d3dx9_36.D3DXConvertMeshSubsetToStrips --@ stdcall D3DXCreateAnimationController(long long long long ptr) d3dx9_36.D3DXCreateAnimationController --@ stdcall D3DXCreateBox(ptr float float float ptr ptr) d3dx9_36.D3DXCreateBox --@ stdcall D3DXCreateBuffer(long ptr) d3dx9_36.D3DXCreateBuffer --@ stdcall D3DXCreateCompressedAnimationSet(ptr long long ptr long ptr ptr) d3dx9_36.D3DXCreateCompressedAnimationSet --@ stdcall D3DXCreateCubeTexture(ptr long long long long long ptr) d3dx9_36.D3DXCreateCubeTexture --@ stdcall D3DXCreateCubeTextureFromFileA(ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromFileA --@ stdcall D3DXCreateCubeTextureFromFileExA(ptr ptr long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromFileExA --@ stdcall D3DXCreateCubeTextureFromFileExW(ptr ptr long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromFileExW --@ stdcall D3DXCreateCubeTextureFromFileInMemory(ptr ptr long ptr) d3dx9_36.D3DXCreateCubeTextureFromFileInMemory --@ stdcall D3DXCreateCubeTextureFromFileInMemoryEx(ptr ptr long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromFileInMemoryEx --@ stdcall D3DXCreateCubeTextureFromFileW(ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromFileW --@ stdcall D3DXCreateCubeTextureFromResourceA(ptr long ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceA --@ stdcall D3DXCreateCubeTextureFromResourceExA(ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceExA --@ stdcall D3DXCreateCubeTextureFromResourceExW(ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceExW --@ stdcall D3DXCreateCubeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceW --@ stdcall D3DXCreateCylinder(ptr long long long long long ptr ptr) d3dx9_36.D3DXCreateCylinder --@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffect --@ stdcall D3DXCreateEffectCompiler(ptr long ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompiler --@ stdcall D3DXCreateEffectCompilerFromFileA(str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileA --@ stdcall D3DXCreateEffectCompilerFromFileW(wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileW --@ stdcall D3DXCreateEffectCompilerFromResourceA(long str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceA --@ stdcall D3DXCreateEffectCompilerFromResourceW(long wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceW --@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectEx --@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileA --@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExA --@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExW --@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileW --@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceA --@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExA --@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExW --@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceW --@ stdcall D3DXCreateEffectPool(ptr) d3dx9_36.D3DXCreateEffectPool --@ stdcall D3DXCreateFontA(ptr long long long long long long long long long str ptr) d3dx9_36.D3DXCreateFontA --@ stdcall D3DXCreateFontIndirectA(ptr ptr ptr) d3dx9_36.D3DXCreateFontIndirectA --@ stdcall D3DXCreateFontIndirectW(ptr ptr ptr) d3dx9_36.D3DXCreateFontIndirectW --@ stdcall D3DXCreateFontW(ptr long long long long long long long long long wstr ptr) d3dx9_36.D3DXCreateFontW --@ stdcall D3DXCreateFragmentLinker(ptr long ptr) d3dx9_36.D3DXCreateFragmentLinker --@ stdcall D3DXCreateKeyframedAnimationSet(ptr long long long long ptr ptr) d3dx9_36.D3DXCreateKeyframedAnimationSet --@ stdcall D3DXCreateLine(ptr ptr) d3dx9_36.D3DXCreateLine --@ stdcall D3DXCreateMatrixStack(long ptr) d3dx9_36.D3DXCreateMatrixStack --@ stdcall D3DXCreateMesh(long long long ptr ptr ptr) d3dx9_36.D3DXCreateMesh --@ stdcall D3DXCreateMeshFVF(long long long long ptr ptr) d3dx9_36.D3DXCreateMeshFVF --@ stdcall D3DXCreateNPatchMesh(ptr ptr) d3dx9_36.D3DXCreateNPatchMesh --@ stdcall D3DXCreatePMeshFromStream(ptr long ptr ptr ptr ptr ptr) d3dx9_36.D3DXCreatePMeshFromStream --@ stdcall D3DXCreatePatchMesh(ptr long long long ptr ptr ptr) d3dx9_36.D3DXCreatePatchMesh --@ stdcall D3DXCreatePolygon(ptr float long ptr ptr) d3dx9_36.D3DXCreatePolygon --@ stdcall D3DXCreatePRTBuffer(long long long ptr) d3dx9_36.D3DXCreatePRTBuffer --@ stdcall D3DXCreatePRTBufferTex(long long long long ptr) d3dx9_36.D3DXCreatePRTBufferTex --@ stdcall D3DXCreatePRTCompBuffer(long long long ptr ptr ptr ptr) d3dx9_36.D3DXCreatePRTCompBuffer --@ stdcall D3DXCreatePRTEngine(ptr ptr long ptr ptr) d3dx9_36.D3DXCreatePRTEngine --@ stdcall D3DXCreateRenderToEnvMap(ptr long long long long long ptr) d3dx9_36.D3DXCreateRenderToEnvMap --@ stdcall D3DXCreateRenderToSurface(ptr long long long long long ptr) d3dx9_36.D3DXCreateRenderToSurface --@ stdcall D3DXCreateSPMesh(ptr ptr ptr ptr ptr) d3dx9_36.D3DXCreateSPMesh --@ stdcall D3DXCreateSkinInfo(long ptr long ptr) d3dx9_36.D3DXCreateSkinInfo --@ stdcall D3DXCreateSkinInfoFromBlendedMesh(ptr long ptr ptr) d3dx9_36.D3DXCreateSkinInfoFromBlendedMesh --@ stdcall D3DXCreateSkinInfoFVF(long long long ptr) d3dx9_36.D3DXCreateSkinInfoFVF --@ stdcall D3DXCreateSphere(ptr float long long ptr ptr) d3dx9_36.D3DXCreateSphere --@ stdcall D3DXCreateSprite(ptr ptr) d3dx9_36.D3DXCreateSprite --@ stdcall D3DXCreateTeapot(ptr ptr ptr) d3dx9_36.D3DXCreateTeapot --@ stdcall D3DXCreateTextA(ptr long str float float ptr ptr ptr) d3dx9_36.D3DXCreateTextA --@ stdcall D3DXCreateTextW(ptr long wstr float float ptr ptr ptr) d3dx9_36.D3DXCreateTextW --@ stdcall D3DXCreateTexture(ptr long long long long long long ptr) d3dx9_36.D3DXCreateTexture --@ stdcall D3DXCreateTextureFromFileA(ptr str ptr) d3dx9_36.D3DXCreateTextureFromFileA --@ stdcall D3DXCreateTextureFromFileExA(ptr str long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateTextureFromFileExA --@ stdcall D3DXCreateTextureFromFileExW(ptr wstr long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateTextureFromFileExW --@ stdcall D3DXCreateTextureFromFileInMemory(ptr ptr long ptr) d3dx9_36.D3DXCreateTextureFromFileInMemory --@ stdcall D3DXCreateTextureFromFileInMemoryEx(ptr ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateTextureFromFileInMemoryEx --@ stdcall D3DXCreateTextureFromFileW(ptr wstr ptr) d3dx9_36.D3DXCreateTextureFromFileW --@ stdcall D3DXCreateTextureFromResourceA(ptr ptr str ptr) d3dx9_36.D3DXCreateTextureFromResourceA --@ stdcall D3DXCreateTextureFromResourceExA(ptr ptr str long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateTextureFromResourceExA --@ stdcall D3DXCreateTextureFromResourceExW(ptr ptr wstr long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateTextureFromResourceExW --@ stdcall D3DXCreateTextureFromResourceW(ptr ptr wstr ptr) d3dx9_36.D3DXCreateTextureFromResourceW --@ stdcall D3DXCreateTextureGutterHelper(long long ptr long ptr) d3dx9_36.D3DXCreateTextureGutterHelper --@ stdcall D3DXCreateTextureShader(ptr ptr) d3dx9_36.D3DXCreateTextureShader --@ stdcall D3DXCreateTorus(ptr long long long long ptr ptr) d3dx9_36.D3DXCreateTorus --@ stdcall D3DXCreateVolumeTexture(ptr long long long long long long long ptr) d3dx9_36.D3DXCreateVolumeTexture --@ stdcall D3DXCreateVolumeTextureFromFileA(ptr ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromFileA --@ stdcall D3DXCreateVolumeTextureFromFileExA(ptr ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromFileExA --@ stdcall D3DXCreateVolumeTextureFromFileExW(ptr ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromFileExW --@ stdcall D3DXCreateVolumeTextureFromFileInMemory(ptr ptr long ptr) d3dx9_36.D3DXCreateVolumeTextureFromFileInMemory --@ stdcall D3DXCreateVolumeTextureFromFileInMemoryEx(ptr ptr long long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromFileInMemoryEx --@ stdcall D3DXCreateVolumeTextureFromFileW(ptr ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromFileW --@ stdcall D3DXCreateVolumeTextureFromResourceA(ptr long ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromResourceA --@ stdcall D3DXCreateVolumeTextureFromResourceExA(ptr long ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromResourceExA --@ stdcall D3DXCreateVolumeTextureFromResourceExW(ptr long ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromResourceExW --@ stdcall D3DXCreateVolumeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromResourceW --@ stdcall D3DXDebugMute(long) d3dx9_36.D3DXDebugMute --@ stdcall D3DXDeclaratorFromFVF(long ptr) d3dx9_36.D3DXDeclaratorFromFVF --@ stdcall D3DXDisassembleEffect(ptr long ptr) d3dx9_36.D3DXDisassembleEffect --@ stdcall D3DXDisassembleShader(ptr long str ptr) d3dx9_36.D3DXDisassembleShader --@ stdcall D3DXFileCreate(ptr) d3dx9_36.D3DXFileCreate --@ stdcall D3DXFillCubeTexture(ptr ptr ptr) d3dx9_36.D3DXFillCubeTexture --@ stdcall D3DXFillCubeTextureTX(ptr ptr) d3dx9_36.D3DXFillCubeTextureTX --@ stdcall D3DXFillTexture(ptr ptr ptr) d3dx9_36.D3DXFillTexture --@ stdcall D3DXFillTextureTX(ptr ptr) d3dx9_36.D3DXFillTextureTX --@ stdcall D3DXFillVolumeTexture(ptr ptr ptr) d3dx9_36.D3DXFillVolumeTexture --@ stdcall D3DXFillVolumeTextureTX(ptr ptr) d3dx9_36.D3DXFillVolumeTextureTX --@ stdcall D3DXFilterTexture(ptr ptr long long) d3dx9_36.D3DXFilterTexture --@ stdcall D3DXFindShaderComment(ptr long ptr ptr) d3dx9_36.D3DXFindShaderComment --@ stdcall D3DXFloat16To32Array(ptr ptr long) d3dx9_36.D3DXFloat16To32Array --@ stdcall D3DXFloat32To16Array(ptr ptr long) d3dx9_36.D3DXFloat32To16Array --@ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild --@ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere --@ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind --@ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices --@ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices --@ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm --@ stdcall D3DXFVFFromDeclarator(ptr ptr) d3dx9_36.D3DXFVFFromDeclarator --@ stdcall D3DXGatherFragments(ptr long ptr ptr long ptr ptr) d3dx9_36.D3DXGatherFragments --@ stdcall D3DXGatherFragmentsFromFileA(ptr ptr ptr long ptr ptr) d3dx9_36.D3DXGatherFragmentsFromFileA --@ stdcall D3DXGatherFragmentsFromFileW(ptr ptr ptr long ptr ptr) d3dx9_36.D3DXGatherFragmentsFromFileW --@ stdcall D3DXGatherFragmentsFromResourceA(long ptr ptr ptr long ptr ptr) d3dx9_36.D3DXGatherFragmentsFromResourceA --@ stdcall D3DXGatherFragmentsFromResourceW(long ptr ptr ptr long ptr ptr) d3dx9_36.D3DXGatherFragmentsFromResourceW --@ stdcall D3DXGenerateOutputDecl(ptr ptr) d3dx9_36.D3DXGenerateOutputDecl --@ stdcall D3DXGeneratePMesh(ptr ptr ptr ptr long long ptr) d3dx9_36.D3DXGeneratePMesh --@ stdcall D3DXGetDeclLength(ptr) d3dx9_36.D3DXGetDeclLength --@ stdcall D3DXGetDeclVertexSize(ptr long) d3dx9_36.D3DXGetDeclVertexSize --@ stdcall D3DXGetDriverLevel(ptr) d3dx9_36.D3DXGetDriverLevel --@ stdcall D3DXGetFVFVertexSize(long) d3dx9_36.D3DXGetFVFVertexSize --@ stdcall D3DXGetImageInfoFromFileA(str ptr) d3dx9_36.D3DXGetImageInfoFromFileA --@ stdcall D3DXGetImageInfoFromFileInMemory(ptr long ptr) d3dx9_36.D3DXGetImageInfoFromFileInMemory --@ stdcall D3DXGetImageInfoFromFileW(wstr ptr) d3dx9_36.D3DXGetImageInfoFromFileW --@ stdcall D3DXGetImageInfoFromResourceA(long str ptr) d3dx9_36.D3DXGetImageInfoFromResourceA --@ stdcall D3DXGetImageInfoFromResourceW(long wstr ptr) d3dx9_36.D3DXGetImageInfoFromResourceW --@ stdcall D3DXGetPixelShaderProfile(ptr) d3dx9_36.D3DXGetPixelShaderProfile --@ stdcall D3DXGetShaderConstantTable(ptr ptr) d3dx9_36.D3DXGetShaderConstantTable --@ stdcall D3DXGetShaderInputSemantics(ptr ptr ptr) d3dx9_36.D3DXGetShaderInputSemantics --@ stdcall D3DXGetShaderOutputSemantics(ptr ptr ptr) d3dx9_36.D3DXGetShaderOutputSemantics --@ stdcall D3DXGetShaderSamplers(ptr ptr ptr) d3dx9_36.D3DXGetShaderSamplers --@ stdcall D3DXGetShaderSize(ptr) d3dx9_36.D3DXGetShaderSize --@ stdcall D3DXGetShaderVersion(ptr) d3dx9_36.D3DXGetShaderVersion --@ stdcall D3DXGetVertexShaderProfile(ptr) d3dx9_36.D3DXGetVertexShaderProfile --@ stdcall D3DXIntersect(ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXIntersect --@ stdcall D3DXIntersectSubset(ptr long ptr ptr ptr ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXIntersectSubset --@ stdcall D3DXIntersectTri(ptr ptr ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXIntersectTri --@ stdcall D3DXLoadMeshFromXA(str long ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshFromXA --@ stdcall D3DXLoadMeshFromXInMemory(ptr long long ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshFromXInMemory --@ stdcall D3DXLoadMeshFromXResource(long str str long ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshFromXResource --@ stdcall D3DXLoadMeshFromXW(wstr long ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshFromXW --@ stdcall D3DXLoadMeshFromXof(ptr long ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshFromXof --@ stdcall D3DXLoadMeshHierarchyFromXA(str long ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshHierarchyFromXA --@ stdcall D3DXLoadMeshHierarchyFromXInMemory(ptr long long ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshHierarchyFromXInMemory --@ stdcall D3DXLoadMeshHierarchyFromXW(wstr long ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadMeshHierarchyFromXW --@ stdcall D3DXLoadPatchMeshFromXof(ptr long ptr ptr ptr long ptr) d3dx9_36.D3DXLoadPatchMeshFromXof --@ stdcall D3DXLoadPRTBufferFromFileA(ptr ptr) d3dx9_36.D3DXLoadPRTBufferFromFileA --@ stdcall D3DXLoadPRTBufferFromFileW(ptr ptr) d3dx9_36.D3DXLoadPRTBufferFromFileW --@ stdcall D3DXLoadPRTCompBufferFromFileA(ptr ptr) d3dx9_36.D3DXLoadPRTCompBufferFromFileA --@ stdcall D3DXLoadPRTCompBufferFromFileW(ptr ptr) d3dx9_36.D3DXLoadPRTCompBufferFromFileW --@ stdcall D3DXLoadSkinMeshFromXof(ptr long ptr ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXLoadSkinMeshFromXof --@ stdcall D3DXLoadSurfaceFromFileA(ptr ptr ptr str ptr long long ptr) d3dx9_36.D3DXLoadSurfaceFromFileA --@ stdcall D3DXLoadSurfaceFromFileInMemory(ptr ptr ptr ptr long ptr long long ptr) d3dx9_36.D3DXLoadSurfaceFromFileInMemory --@ stdcall D3DXLoadSurfaceFromFileW(ptr ptr ptr wstr ptr long long ptr) d3dx9_36.D3DXLoadSurfaceFromFileW --@ stdcall D3DXLoadSurfaceFromMemory(ptr ptr ptr ptr long long ptr ptr long long) d3dx9_36.D3DXLoadSurfaceFromMemory --@ stdcall D3DXLoadSurfaceFromResourceA(ptr ptr ptr ptr str ptr long long ptr) d3dx9_36.D3DXLoadSurfaceFromResourceA --@ stdcall D3DXLoadSurfaceFromResourceW(ptr ptr ptr ptr wstr ptr long long ptr) d3dx9_36.D3DXLoadSurfaceFromResourceW --@ stdcall D3DXLoadSurfaceFromSurface(ptr ptr ptr ptr ptr ptr long long) d3dx9_36.D3DXLoadSurfaceFromSurface --@ stdcall D3DXLoadVolumeFromFileA(ptr ptr ptr ptr ptr long long ptr) d3dx9_36.D3DXLoadVolumeFromFileA --@ stdcall D3DXLoadVolumeFromFileInMemory(ptr ptr ptr ptr long ptr long long ptr) d3dx9_36.D3DXLoadVolumeFromFileInMemory --@ stdcall D3DXLoadVolumeFromFileW(ptr ptr ptr ptr ptr long long ptr) d3dx9_36.D3DXLoadVolumeFromFileW --@ stdcall D3DXLoadVolumeFromMemory(ptr ptr ptr ptr long long long ptr ptr long long) d3dx9_36.D3DXLoadVolumeFromMemory --@ stdcall D3DXLoadVolumeFromResourceA(ptr ptr ptr long ptr ptr long long ptr) d3dx9_36.D3DXLoadVolumeFromResourceA --@ stdcall D3DXLoadVolumeFromResourceW(ptr ptr ptr long ptr ptr long long ptr) d3dx9_36.D3DXLoadVolumeFromResourceW --@ stdcall D3DXLoadVolumeFromVolume(ptr ptr ptr ptr ptr ptr long long) d3dx9_36.D3DXLoadVolumeFromVolume --@ stdcall D3DXMatrixAffineTransformation(ptr float ptr ptr ptr) d3dx9_36.D3DXMatrixAffineTransformation --@ stdcall D3DXMatrixAffineTransformation2D(ptr float ptr float ptr) d3dx9_36.D3DXMatrixAffineTransformation2D --@ stdcall D3DXMatrixDecompose(ptr ptr ptr ptr) d3dx9_36.D3DXMatrixDecompose --@ stdcall D3DXMatrixDeterminant(ptr) d3dx9_36.D3DXMatrixDeterminant --@ stdcall D3DXMatrixInverse(ptr ptr ptr) d3dx9_36.D3DXMatrixInverse --@ stdcall D3DXMatrixLookAtLH(ptr ptr ptr ptr) d3dx9_36.D3DXMatrixLookAtLH --@ stdcall D3DXMatrixLookAtRH(ptr ptr ptr ptr) d3dx9_36.D3DXMatrixLookAtRH --@ stdcall D3DXMatrixMultiply(ptr ptr ptr) d3dx9_36.D3DXMatrixMultiply --@ stdcall D3DXMatrixMultiplyTranspose(ptr ptr ptr) d3dx9_36.D3DXMatrixMultiplyTranspose --@ stdcall D3DXMatrixOrthoLH(ptr float float float float) d3dx9_36.D3DXMatrixOrthoLH --@ stdcall D3DXMatrixOrthoOffCenterLH(ptr float float float float float float) d3dx9_36.D3DXMatrixOrthoOffCenterLH --@ stdcall D3DXMatrixOrthoOffCenterRH(ptr float float float float float float) d3dx9_36.D3DXMatrixOrthoOffCenterRH --@ stdcall D3DXMatrixOrthoRH(ptr float float float float) d3dx9_36.D3DXMatrixOrthoRH --@ stdcall D3DXMatrixPerspectiveFovLH(ptr float float float float) d3dx9_36.D3DXMatrixPerspectiveFovLH --@ stdcall D3DXMatrixPerspectiveFovRH(ptr float float float float) d3dx9_36.D3DXMatrixPerspectiveFovRH --@ stdcall D3DXMatrixPerspectiveLH(ptr float float float float) d3dx9_36.D3DXMatrixPerspectiveLH --@ stdcall D3DXMatrixPerspectiveOffCenterLH(ptr float float float float float float) d3dx9_36.D3DXMatrixPerspectiveOffCenterLH --@ stdcall D3DXMatrixPerspectiveOffCenterRH(ptr float float float float float float) d3dx9_36.D3DXMatrixPerspectiveOffCenterRH --@ stdcall D3DXMatrixPerspectiveRH(ptr float float float float) d3dx9_36.D3DXMatrixPerspectiveRH --@ stdcall D3DXMatrixReflect(ptr ptr) d3dx9_36.D3DXMatrixReflect --@ stdcall D3DXMatrixRotationAxis(ptr ptr float) d3dx9_36.D3DXMatrixRotationAxis --@ stdcall D3DXMatrixRotationQuaternion(ptr ptr) d3dx9_36.D3DXMatrixRotationQuaternion --@ stdcall D3DXMatrixRotationX(ptr float) d3dx9_36.D3DXMatrixRotationX --@ stdcall D3DXMatrixRotationY(ptr float) d3dx9_36.D3DXMatrixRotationY --@ stdcall D3DXMatrixRotationYawPitchRoll(ptr float float float) d3dx9_36.D3DXMatrixRotationYawPitchRoll --@ stdcall D3DXMatrixRotationZ(ptr float) d3dx9_36.D3DXMatrixRotationZ --@ stdcall D3DXMatrixScaling(ptr float float float) d3dx9_36.D3DXMatrixScaling --@ stdcall D3DXMatrixShadow(ptr ptr ptr) d3dx9_36.D3DXMatrixShadow --@ stdcall D3DXMatrixTransformation(ptr ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXMatrixTransformation --@ stdcall D3DXMatrixTransformation2D(ptr ptr float ptr ptr float ptr) d3dx9_36.D3DXMatrixTransformation2D --@ stdcall D3DXMatrixTranslation(ptr float float float) d3dx9_36.D3DXMatrixTranslation --@ stdcall D3DXMatrixTranspose(ptr ptr) d3dx9_36.D3DXMatrixTranspose --@ stdcall D3DXOptimizeFaces(ptr long long long ptr) d3dx9_36.D3DXOptimizeFaces --@ stdcall D3DXOptimizeVertices(ptr long long long ptr) d3dx9_36.D3DXOptimizeVertices --@ stdcall D3DXPlaneFromPointNormal(ptr ptr ptr) d3dx9_36.D3DXPlaneFromPointNormal --@ stdcall D3DXPlaneFromPoints(ptr ptr ptr ptr) d3dx9_36.D3DXPlaneFromPoints --@ stdcall D3DXPlaneIntersectLine(ptr ptr ptr ptr) d3dx9_36.D3DXPlaneIntersectLine --@ stdcall D3DXPlaneNormalize(ptr ptr) d3dx9_36.D3DXPlaneNormalize --@ stdcall D3DXPlaneTransform(ptr ptr ptr) d3dx9_36.D3DXPlaneTransform --@ stdcall D3DXPlaneTransformArray(ptr long ptr long ptr long) d3dx9_36.D3DXPlaneTransformArray --@ stdcall D3DXPreprocessShader(ptr long ptr ptr ptr ptr) d3dx9_36.D3DXPreprocessShader --@ stdcall D3DXPreprocessShaderFromFileA(str ptr ptr ptr ptr) d3dx9_36.D3DXPreprocessShaderFromFileA --@ stdcall D3DXPreprocessShaderFromFileW(wstr ptr ptr ptr ptr) d3dx9_36.D3DXPreprocessShaderFromFileW --@ stdcall D3DXPreprocessShaderFromResourceA(long str ptr ptr ptr ptr) d3dx9_36.D3DXPreprocessShaderFromResourceA --@ stdcall D3DXPreprocessShaderFromResourceW(long wstr ptr ptr ptr ptr) d3dx9_36.D3DXPreprocessShaderFromResourceW --@ stdcall D3DXQuaternionBaryCentric(ptr ptr ptr ptr float float) d3dx9_36.D3DXQuaternionBaryCentric --@ stdcall D3DXQuaternionExp(ptr ptr) d3dx9_36.D3DXQuaternionExp --@ stdcall D3DXQuaternionInverse(ptr ptr) d3dx9_36.D3DXQuaternionInverse --@ stdcall D3DXQuaternionLn(ptr ptr) d3dx9_36.D3DXQuaternionLn --@ stdcall D3DXQuaternionMultiply(ptr ptr ptr) d3dx9_36.D3DXQuaternionMultiply --@ stdcall D3DXQuaternionNormalize(ptr ptr) d3dx9_36.D3DXQuaternionNormalize --@ stdcall D3DXQuaternionRotationAxis(ptr ptr float) d3dx9_36.D3DXQuaternionRotationAxis --@ stdcall D3DXQuaternionRotationMatrix(ptr ptr) d3dx9_36.D3DXQuaternionRotationMatrix --@ stdcall D3DXQuaternionRotationYawPitchRoll(ptr float float float) d3dx9_36.D3DXQuaternionRotationYawPitchRoll --@ stdcall D3DXQuaternionSlerp(ptr ptr ptr float) d3dx9_36.D3DXQuaternionSlerp --@ stdcall D3DXQuaternionSquad(ptr ptr ptr ptr ptr float) d3dx9_36.D3DXQuaternionSquad --@ stdcall D3DXQuaternionSquadSetup(ptr ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXQuaternionSquadSetup --@ stdcall D3DXQuaternionToAxisAngle(ptr ptr ptr) d3dx9_36.D3DXQuaternionToAxisAngle --@ stdcall D3DXRectPatchSize(ptr ptr ptr) d3dx9_36.D3DXRectPatchSize --@ stdcall D3DXSaveMeshHierarchyToFileA(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveMeshHierarchyToFileA --@ stdcall D3DXSaveMeshHierarchyToFileW(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveMeshHierarchyToFileW --@ stdcall D3DXSaveMeshToXA(ptr ptr ptr ptr ptr long long) d3dx9_36.D3DXSaveMeshToXA --@ stdcall D3DXSaveMeshToXW(ptr ptr ptr ptr ptr long long) d3dx9_36.D3DXSaveMeshToXW --@ stdcall D3DXSavePRTBufferToFileA(ptr ptr) d3dx9_36.D3DXSavePRTBufferToFileA --@ stdcall D3DXSavePRTBufferToFileW(ptr ptr) d3dx9_36.D3DXSavePRTBufferToFileW --@ stdcall D3DXSavePRTCompBufferToFileA(ptr ptr) d3dx9_36.D3DXSavePRTCompBufferToFileA --@ stdcall D3DXSavePRTCompBufferToFileW(ptr ptr) d3dx9_36.D3DXSavePRTCompBufferToFileW --@ stdcall D3DXSaveSurfaceToFileA(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveSurfaceToFileA --@ stdcall D3DXSaveSurfaceToFileInMemory(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveSurfaceToFileInMemory --@ stdcall D3DXSaveSurfaceToFileW(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveSurfaceToFileW --@ stdcall D3DXSaveTextureToFileA(ptr long ptr ptr) d3dx9_36.D3DXSaveTextureToFileA --@ stdcall D3DXSaveTextureToFileInMemory(ptr long ptr ptr) d3dx9_36.D3DXSaveTextureToFileInMemory --@ stdcall D3DXSaveTextureToFileW(ptr long ptr ptr) d3dx9_36.D3DXSaveTextureToFileW --@ stdcall D3DXSaveVolumeToFileA(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveVolumeToFileA --@ stdcall D3DXSaveVolumeToFileInMemory(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveVolumeToFileInMemory --@ stdcall D3DXSaveVolumeToFileW(ptr long ptr ptr ptr) d3dx9_36.D3DXSaveVolumeToFileW --@ stdcall D3DXSHAdd(ptr long ptr ptr) d3dx9_36.D3DXSHAdd --@ stdcall D3DXSHDot(long ptr ptr) d3dx9_36.D3DXSHDot --@ stdcall D3DXSHEvalConeLight(long ptr float float float float ptr ptr ptr) d3dx9_36.D3DXSHEvalConeLight --@ stdcall D3DXSHEvalDirection(ptr long ptr) d3dx9_36.D3DXSHEvalDirection --@ stdcall D3DXSHEvalDirectionalLight(long ptr float float float ptr ptr ptr) d3dx9_36.D3DXSHEvalDirectionalLight --@ stdcall D3DXSHEvalHemisphereLight(long ptr int128 int128 ptr ptr ptr) d3dx9_36.D3DXSHEvalHemisphereLight --@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr) d3dx9_36.D3DXSHEvalSphericalLight --@ stdcall D3DXSHMultiply2(ptr ptr ptr) d3dx9_36.D3DXSHMultiply2 --@ stdcall D3DXSHMultiply3(ptr ptr ptr) d3dx9_36.D3DXSHMultiply3 --@ stdcall D3DXSHMultiply4(ptr ptr ptr) d3dx9_36.D3DXSHMultiply4 --@ stdcall D3DXSHMultiply5(ptr ptr ptr) d3dx9_36.D3DXSHMultiply5 --@ stdcall D3DXSHMultiply6(ptr ptr ptr) d3dx9_36.D3DXSHMultiply6 --@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr) d3dx9_36.D3DXSHProjectCubeMap --@ stdcall D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr) d3dx9_36.D3DXSHPRTCompSplitMeshSC --@ stdcall D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr) d3dx9_36.D3DXSHPRTCompSuperCluster --@ stdcall D3DXSHRotate(ptr long ptr ptr) d3dx9_36.D3DXSHRotate --@ stdcall D3DXSHRotateZ(ptr long float ptr) d3dx9_36.D3DXSHRotateZ --@ stdcall D3DXSHScale(ptr long ptr float) d3dx9_36.D3DXSHScale --@ stdcall D3DXSimplifyMesh(ptr ptr ptr ptr long long ptr) d3dx9_36.D3DXSimplifyMesh --@ stdcall D3DXSphereBoundProbe(ptr float ptr ptr) d3dx9_36.D3DXSphereBoundProbe --@ stdcall D3DXSplitMesh(ptr ptr long long ptr ptr ptr ptr ptr) d3dx9_36.D3DXSplitMesh --@ stdcall D3DXTessellateNPatches(ptr ptr float long ptr ptr) d3dx9_36.D3DXTessellateNPatches --@ stdcall D3DXTessellateRectPatch(ptr ptr ptr ptr ptr) d3dx9_36.D3DXTessellateRectPatch --@ stdcall D3DXTessellateTriPatch(ptr ptr ptr ptr ptr) d3dx9_36.D3DXTessellateTriPatch --@ stdcall D3DXTriPatchSize(ptr ptr ptr) d3dx9_36.D3DXTriPatchSize --@ stdcall D3DXUVAtlasCreate(ptr long long long long long long ptr ptr ptr ptr long ptr long ptr ptr ptr ptr ptr) d3dx9_36.D3DXUVAtlasCreate --@ stdcall D3DXUVAtlasPack(ptr long long long long ptr ptr long ptr long ptr) d3dx9_36.D3DXUVAtlasPack --@ stdcall D3DXUVAtlasPartition(ptr long long long ptr ptr ptr ptr long ptr long ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXUVAtlasPartition --@ stdcall D3DXValidMesh(ptr ptr ptr) d3dx9_36.D3DXValidMesh --@ stdcall D3DXValidPatchMesh(ptr ptr ptr ptr) d3dx9_36.D3DXValidPatchMesh --@ stdcall D3DXVec2BaryCentric(ptr ptr ptr ptr float float) d3dx9_36.D3DXVec2BaryCentric --@ stdcall D3DXVec2CatmullRom(ptr ptr ptr ptr ptr float) d3dx9_36.D3DXVec2CatmullRom --@ stdcall D3DXVec2Hermite(ptr ptr ptr ptr ptr float) d3dx9_36.D3DXVec2Hermite --@ stdcall D3DXVec2Normalize(ptr ptr) d3dx9_36.D3DXVec2Normalize --@ stdcall D3DXVec2Transform(ptr ptr ptr) d3dx9_36.D3DXVec2Transform --@ stdcall D3DXVec2TransformArray(ptr long ptr long ptr long) d3dx9_36.D3DXVec2TransformArray --@ stdcall D3DXVec2TransformCoord(ptr ptr ptr) d3dx9_36.D3DXVec2TransformCoord --@ stdcall D3DXVec2TransformCoordArray(ptr long ptr long ptr long) d3dx9_36.D3DXVec2TransformCoordArray --@ stdcall D3DXVec2TransformNormal(ptr ptr ptr) d3dx9_36.D3DXVec2TransformNormal --@ stdcall D3DXVec2TransformNormalArray(ptr long ptr long ptr long) d3dx9_36.D3DXVec2TransformNormalArray --@ stdcall D3DXVec3BaryCentric(ptr ptr ptr ptr float float) d3dx9_36.D3DXVec3BaryCentric --@ stdcall D3DXVec3CatmullRom(ptr ptr ptr ptr ptr float) d3dx9_36.D3DXVec3CatmullRom --@ stdcall D3DXVec3Hermite(ptr ptr ptr ptr ptr float) d3dx9_36.D3DXVec3Hermite --@ stdcall D3DXVec3Normalize(ptr ptr) d3dx9_36.D3DXVec3Normalize --@ stdcall D3DXVec3Project(ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXVec3Project --@ stdcall D3DXVec3ProjectArray(ptr long ptr long ptr ptr ptr ptr long) d3dx9_36.D3DXVec3ProjectArray --@ stdcall D3DXVec3Transform(ptr ptr ptr) d3dx9_36.D3DXVec3Transform --@ stdcall D3DXVec3TransformArray(ptr long ptr long ptr long) d3dx9_36.D3DXVec3TransformArray --@ stdcall D3DXVec3TransformCoord(ptr ptr ptr) d3dx9_36.D3DXVec3TransformCoord --@ stdcall D3DXVec3TransformCoordArray(ptr long ptr long ptr long) d3dx9_36.D3DXVec3TransformCoordArray --@ stdcall D3DXVec3TransformNormal(ptr ptr ptr) d3dx9_36.D3DXVec3TransformNormal --@ stdcall D3DXVec3TransformNormalArray(ptr long ptr long ptr long) d3dx9_36.D3DXVec3TransformNormalArray --@ stdcall D3DXVec3Unproject(ptr ptr ptr ptr ptr ptr) d3dx9_36.D3DXVec3Unproject --@ stdcall D3DXVec3UnprojectArray(ptr long ptr long ptr ptr ptr ptr long) d3dx9_36.D3DXVec3UnprojectArray --@ stdcall D3DXVec4BaryCentric(ptr ptr ptr ptr float float) d3dx9_36.D3DXVec4BaryCentric --@ stdcall D3DXVec4CatmullRom(ptr ptr ptr ptr ptr float) d3dx9_36.D3DXVec4CatmullRom --@ stdcall D3DXVec4Cross(ptr ptr ptr ptr) d3dx9_36.D3DXVec4Cross --@ stdcall D3DXVec4Hermite(ptr ptr ptr ptr ptr float) d3dx9_36.D3DXVec4Hermite --@ stdcall D3DXVec4Normalize(ptr ptr) d3dx9_36.D3DXVec4Normalize --@ stdcall D3DXVec4Transform(ptr ptr ptr) d3dx9_36.D3DXVec4Transform --@ stdcall D3DXVec4TransformArray(ptr long ptr long ptr long) d3dx9_36.D3DXVec4TransformArray --@ stdcall D3DXWeldVertices(ptr long ptr ptr ptr ptr ptr) d3dx9_36.D3DXWeldVertices -+@ stdcall D3DXCheckVolumeTextureRequirements(ptr ptr ptr ptr ptr long ptr ptr) -+@ stdcall D3DXCleanMesh(long ptr ptr ptr ptr ptr) -+@ stdcall D3DXColorAdjustContrast(ptr ptr float) -+@ stdcall D3DXColorAdjustSaturation(ptr ptr float) -+@ stdcall D3DXCompileShader(ptr long ptr ptr str str long ptr ptr ptr) -+@ stdcall D3DXCompileShaderFromFileA(str ptr ptr str str long ptr ptr ptr) -+@ stdcall D3DXCompileShaderFromFileW(wstr ptr ptr str str long ptr ptr ptr) -+@ stdcall D3DXCompileShaderFromResourceA(ptr str ptr ptr str str long ptr ptr ptr) -+@ stdcall D3DXCompileShaderFromResourceW(ptr wstr ptr ptr str str long ptr ptr ptr) -+@ stdcall D3DXComputeBoundingBox(ptr long long ptr ptr) -+@ stdcall D3DXComputeBoundingSphere(ptr long long ptr ptr) -+@ stub D3DXComputeIMTFromPerVertexSignal(ptr ptr long long long ptr ptr ptr) -+@ stub D3DXComputeIMTFromPerTexelSignal(ptr long ptr long long long long long ptr ptr ptr) -+@ stub D3DXComputeIMTFromSignal(ptr long long long long ptr ptr ptr ptr ptr) -+@ stub D3DXComputeIMTFromTexture(ptr ptr long long ptr ptr ptr) -+@ stdcall D3DXComputeNormalMap(ptr ptr ptr long long float) -+@ stdcall D3DXComputeNormals(ptr ptr) -+@ stub D3DXComputeTangent(ptr long long long long ptr) -+@ stub D3DXComputeTangentFrame(ptr long) -+@ stdcall D3DXComputeTangentFrameEx(ptr long long long long long long long long long ptr float float float ptr ptr) -+@ stub D3DXConcatenateMeshes(ptr long long ptr ptr ptr ptr ptr) -+@ stdcall D3DXConvertMeshSubsetToSingleStrip(ptr long long ptr ptr) -+@ stub D3DXConvertMeshSubsetToStrips(ptr long long ptr ptr ptr ptr) -+@ stdcall D3DXCreateAnimationController(long long long long ptr) -+@ stdcall D3DXCreateBox(ptr float float float ptr ptr) -+@ stdcall D3DXCreateBuffer(long ptr) -+@ stub D3DXCreateCompressedAnimationSet(ptr long long ptr long ptr ptr) -+@ stdcall D3DXCreateCubeTexture(ptr long long long long long ptr) -+@ stdcall D3DXCreateCubeTextureFromFileA(ptr ptr ptr) -+@ stdcall D3DXCreateCubeTextureFromFileExA(ptr ptr long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateCubeTextureFromFileExW(ptr ptr long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateCubeTextureFromFileInMemory(ptr ptr long ptr) -+@ stdcall D3DXCreateCubeTextureFromFileInMemoryEx(ptr ptr long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateCubeTextureFromFileW(ptr ptr ptr) -+@ stub D3DXCreateCubeTextureFromResourceA(ptr long ptr ptr) -+@ stub D3DXCreateCubeTextureFromResourceExA(ptr long long long long long long long long long long ptr ptr ptr) -+@ stub D3DXCreateCubeTextureFromResourceExW(ptr long long long long long long long long long long ptr ptr ptr) -+@ stub D3DXCreateCubeTextureFromResourceW(ptr long ptr ptr) -+@ stdcall D3DXCreateCylinder(ptr long long long long long ptr ptr) -+@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) -+@ stdcall D3DXCreateEffectCompiler(ptr long ptr ptr long ptr ptr) -+@ stdcall D3DXCreateEffectCompilerFromFileA(str ptr ptr long ptr ptr) -+@ stdcall D3DXCreateEffectCompilerFromFileW(wstr ptr ptr long ptr ptr) -+@ stdcall D3DXCreateEffectCompilerFromResourceA(long str ptr ptr long ptr ptr) -+@ stdcall D3DXCreateEffectCompilerFromResourceW(long wstr ptr ptr long ptr ptr) -+@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) -+@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) -+@ stdcall D3DXCreateEffectPool(ptr) -+@ stdcall D3DXCreateFontA(ptr long long long long long long long long long str ptr) -+@ stdcall D3DXCreateFontIndirectA(ptr ptr ptr) -+@ stdcall D3DXCreateFontIndirectW(ptr ptr ptr) -+@ stdcall D3DXCreateFontW(ptr long long long long long long long long long wstr ptr) -+@ stdcall D3DXCreateFragmentLinker(ptr long ptr) -+@ stub D3DXCreateKeyframedAnimationSet(ptr long long long long ptr ptr) -+@ stdcall D3DXCreateLine(ptr ptr) -+@ stdcall D3DXCreateMatrixStack(long ptr) -+@ stdcall D3DXCreateMesh(long long long ptr ptr ptr) -+@ stdcall D3DXCreateMeshFVF(long long long long ptr ptr) -+@ stub D3DXCreateNPatchMesh(ptr ptr) -+@ stub D3DXCreatePMeshFromStream(ptr long ptr ptr ptr ptr ptr) -+@ stub D3DXCreatePatchMesh(ptr long long long ptr ptr ptr) -+@ stdcall D3DXCreatePolygon(ptr float long ptr ptr) -+@ stub D3DXCreatePRTBuffer(long long long ptr) -+@ stub D3DXCreatePRTBufferTex(long long long long ptr) -+@ stub D3DXCreatePRTCompBuffer(long long long ptr ptr ptr ptr) -+@ stub D3DXCreatePRTEngine(ptr ptr long ptr ptr) -+@ stdcall D3DXCreateRenderToEnvMap(ptr long long long long long ptr) -+@ stdcall D3DXCreateRenderToSurface(ptr long long long long long ptr) -+@ stub D3DXCreateSPMesh(ptr ptr ptr ptr ptr) -+@ stdcall D3DXCreateSkinInfo(long ptr long ptr) -+@ stub D3DXCreateSkinInfoFromBlendedMesh(ptr long ptr ptr) -+@ stdcall D3DXCreateSkinInfoFVF(long long long ptr) -+@ stdcall D3DXCreateSphere(ptr float long long ptr ptr) -+@ stdcall D3DXCreateSprite(ptr ptr) -+@ stdcall D3DXCreateTeapot(ptr ptr ptr) -+@ stdcall D3DXCreateTextA(ptr long str float float ptr ptr ptr) -+@ stdcall D3DXCreateTextW(ptr long wstr float float ptr ptr ptr) -+@ stdcall D3DXCreateTexture(ptr long long long long long long ptr) -+@ stdcall D3DXCreateTextureFromFileA(ptr str ptr) -+@ stdcall D3DXCreateTextureFromFileExA(ptr str long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateTextureFromFileExW(ptr wstr long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateTextureFromFileInMemory(ptr ptr long ptr) -+@ stdcall D3DXCreateTextureFromFileInMemoryEx(ptr ptr long long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateTextureFromFileW(ptr wstr ptr) -+@ stdcall D3DXCreateTextureFromResourceA(ptr ptr str ptr) -+@ stdcall D3DXCreateTextureFromResourceExA(ptr ptr str long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateTextureFromResourceExW(ptr ptr wstr long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateTextureFromResourceW(ptr ptr wstr ptr) -+@ stub D3DXCreateTextureGutterHelper(long long ptr long ptr) -+@ stub D3DXCreateTextureShader(ptr ptr) -+@ stdcall D3DXCreateTorus(ptr long long long long ptr ptr) -+@ stdcall D3DXCreateVolumeTexture(ptr long long long long long long long ptr) -+@ stdcall D3DXCreateVolumeTextureFromFileA(ptr ptr ptr) -+@ stdcall D3DXCreateVolumeTextureFromFileExA(ptr ptr long long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateVolumeTextureFromFileExW(ptr ptr long long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateVolumeTextureFromFileInMemory(ptr ptr long ptr) -+@ stdcall D3DXCreateVolumeTextureFromFileInMemoryEx(ptr ptr long long long long long long long long long long long ptr ptr ptr) -+@ stdcall D3DXCreateVolumeTextureFromFileW(ptr ptr ptr) -+@ stub D3DXCreateVolumeTextureFromResourceA(ptr long ptr ptr) -+@ stub D3DXCreateVolumeTextureFromResourceExA(ptr long ptr long long long long long long long long long long ptr ptr ptr) -+@ stub D3DXCreateVolumeTextureFromResourceExW(ptr long ptr long long long long long long long long long long ptr ptr ptr) -+@ stub D3DXCreateVolumeTextureFromResourceW(ptr long ptr ptr) -+@ stdcall D3DXDebugMute(long) -+@ stdcall D3DXDeclaratorFromFVF(long ptr) -+@ stdcall D3DXDisassembleEffect(ptr long ptr) -+@ stdcall D3DXDisassembleShader(ptr long str ptr) -+@ stdcall D3DXFileCreate(ptr) -+@ stdcall D3DXFillCubeTexture(ptr ptr ptr) -+@ stub D3DXFillCubeTextureTX(ptr ptr) -+@ stdcall D3DXFillTexture(ptr ptr ptr) -+@ stub D3DXFillTextureTX(ptr ptr) -+@ stdcall D3DXFillVolumeTexture(ptr ptr ptr) -+@ stub D3DXFillVolumeTextureTX(ptr ptr) -+@ stdcall D3DXFilterTexture(ptr ptr long long) -+@ stdcall D3DXFindShaderComment(ptr long ptr ptr) -+@ stdcall D3DXFloat16To32Array(ptr ptr long) -+@ stdcall D3DXFloat32To16Array(ptr ptr long) -+@ stub D3DXFrameAppendChild(ptr ptr) -+@ stub D3DXFrameCalculateBoundingSphere(ptr ptr ptr) -+@ stdcall D3DXFrameDestroy(ptr ptr) -+@ stdcall D3DXFrameFind(ptr str) -+@ stub D3DXFrameNumNamedMatrices(ptr) -+@ stub D3DXFrameRegisterNamedMatrices(ptr ptr) -+@ stdcall D3DXFresnelTerm(float float) -+@ stdcall D3DXFVFFromDeclarator(ptr ptr) -+@ stub D3DXGatherFragments(ptr long ptr ptr long ptr ptr) -+@ stub D3DXGatherFragmentsFromFileA(ptr ptr ptr long ptr ptr) -+@ stub D3DXGatherFragmentsFromFileW(ptr ptr ptr long ptr ptr) -+@ stub D3DXGatherFragmentsFromResourceA(long ptr ptr ptr long ptr ptr) -+@ stub D3DXGatherFragmentsFromResourceW(long ptr ptr ptr long ptr ptr) -+@ stub D3DXGenerateOutputDecl(ptr ptr) -+@ stub D3DXGeneratePMesh(ptr ptr ptr ptr long long ptr) -+@ stdcall D3DXGetDeclLength(ptr) -+@ stdcall D3DXGetDeclVertexSize(ptr long) -+@ stdcall D3DXGetDriverLevel(ptr) -+@ stdcall D3DXGetFVFVertexSize(long) -+@ stdcall D3DXGetImageInfoFromFileA(str ptr) -+@ stdcall D3DXGetImageInfoFromFileInMemory(ptr long ptr) -+@ stdcall D3DXGetImageInfoFromFileW(wstr ptr) -+@ stdcall D3DXGetImageInfoFromResourceA(long str ptr) -+@ stdcall D3DXGetImageInfoFromResourceW(long wstr ptr) -+@ stdcall D3DXGetPixelShaderProfile(ptr) -+@ stdcall D3DXGetShaderConstantTable(ptr ptr) -+@ stdcall D3DXGetShaderConstantTableEx(ptr long ptr) -+@ stub D3DXGetShaderInputSemantics(ptr ptr ptr) -+@ stub D3DXGetShaderOutputSemantics(ptr ptr ptr) -+@ stdcall D3DXGetShaderSamplers(ptr ptr ptr) -+@ stdcall D3DXGetShaderSize(ptr) -+@ stdcall D3DXGetShaderVersion(ptr) -+@ stdcall D3DXGetVertexShaderProfile(ptr) -+@ stdcall D3DXIntersect(ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr) -+@ stub D3DXIntersectSubset(ptr long ptr ptr ptr ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXIntersectTri(ptr ptr ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadMeshFromXA(str long ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadMeshFromXInMemory(ptr long long ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadMeshFromXResource(long str str long ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadMeshFromXW(wstr long ptr ptr ptr ptr ptr ptr) -+@ stub D3DXLoadMeshFromXof(ptr long ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadMeshHierarchyFromXA(str long ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadMeshHierarchyFromXInMemory(ptr long long ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadMeshHierarchyFromXW(wstr long ptr ptr ptr ptr ptr) -+@ stub D3DXLoadPatchMeshFromXof(ptr long ptr ptr ptr long ptr) -+@ stub D3DXLoadPRTBufferFromFileA(ptr ptr) -+@ stub D3DXLoadPRTBufferFromFileW(ptr ptr) -+@ stub D3DXLoadPRTCompBufferFromFileA(ptr ptr) -+@ stub D3DXLoadPRTCompBufferFromFileW(ptr ptr) -+@ stdcall D3DXLoadSkinMeshFromXof(ptr long ptr ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXLoadSurfaceFromFileA(ptr ptr ptr str ptr long long ptr) -+@ stdcall D3DXLoadSurfaceFromFileInMemory(ptr ptr ptr ptr long ptr long long ptr) -+@ stdcall D3DXLoadSurfaceFromFileW(ptr ptr ptr wstr ptr long long ptr) -+@ stdcall D3DXLoadSurfaceFromMemory(ptr ptr ptr ptr long long ptr ptr long long) -+@ stdcall D3DXLoadSurfaceFromResourceA(ptr ptr ptr ptr str ptr long long ptr) -+@ stdcall D3DXLoadSurfaceFromResourceW(ptr ptr ptr ptr wstr ptr long long ptr) -+@ stdcall D3DXLoadSurfaceFromSurface(ptr ptr ptr ptr ptr ptr long long) -+@ stdcall D3DXLoadVolumeFromFileA(ptr ptr ptr ptr ptr long long ptr) -+@ stdcall D3DXLoadVolumeFromFileInMemory(ptr ptr ptr ptr long ptr long long ptr) -+@ stdcall D3DXLoadVolumeFromFileW(ptr ptr ptr ptr ptr long long ptr) -+@ stdcall D3DXLoadVolumeFromMemory(ptr ptr ptr ptr long long long ptr ptr long long) -+@ stub D3DXLoadVolumeFromResourceA(ptr ptr ptr long ptr ptr long long ptr) -+@ stub D3DXLoadVolumeFromResourceW(ptr ptr ptr long ptr ptr long long ptr) -+@ stdcall D3DXLoadVolumeFromVolume(ptr ptr ptr ptr ptr ptr long long) -+@ stdcall D3DXMatrixAffineTransformation(ptr float ptr ptr ptr) -+@ stdcall D3DXMatrixAffineTransformation2D(ptr float ptr float ptr) -+@ stdcall D3DXMatrixDecompose(ptr ptr ptr ptr) -+@ stdcall D3DXMatrixDeterminant(ptr) -+@ stdcall D3DXMatrixInverse(ptr ptr ptr) -+@ stdcall D3DXMatrixLookAtLH(ptr ptr ptr ptr) -+@ stdcall D3DXMatrixLookAtRH(ptr ptr ptr ptr) -+@ stdcall D3DXMatrixMultiply(ptr ptr ptr) -+@ stdcall D3DXMatrixMultiplyTranspose(ptr ptr ptr) -+@ stdcall D3DXMatrixOrthoLH(ptr float float float float) -+@ stdcall D3DXMatrixOrthoOffCenterLH(ptr float float float float float float) -+@ stdcall D3DXMatrixOrthoOffCenterRH(ptr float float float float float float) -+@ stdcall D3DXMatrixOrthoRH(ptr float float float float) -+@ stdcall D3DXMatrixPerspectiveFovLH(ptr float float float float) -+@ stdcall D3DXMatrixPerspectiveFovRH(ptr float float float float) -+@ stdcall D3DXMatrixPerspectiveLH(ptr float float float float) -+@ stdcall D3DXMatrixPerspectiveOffCenterLH(ptr float float float float float float) -+@ stdcall D3DXMatrixPerspectiveOffCenterRH(ptr float float float float float float) -+@ stdcall D3DXMatrixPerspectiveRH(ptr float float float float) -+@ stdcall D3DXMatrixReflect(ptr ptr) -+@ stdcall D3DXMatrixRotationAxis(ptr ptr float) -+@ stdcall D3DXMatrixRotationQuaternion(ptr ptr) -+@ stdcall D3DXMatrixRotationX(ptr float) -+@ stdcall D3DXMatrixRotationY(ptr float) -+@ stdcall D3DXMatrixRotationYawPitchRoll(ptr float float float) -+@ stdcall D3DXMatrixRotationZ(ptr float) -+@ stdcall D3DXMatrixScaling(ptr float float float) -+@ stdcall D3DXMatrixShadow(ptr ptr ptr) -+@ stdcall D3DXMatrixTransformation(ptr ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXMatrixTransformation2D(ptr ptr float ptr ptr float ptr) -+@ stdcall D3DXMatrixTranslation(ptr float float float) -+@ stdcall D3DXMatrixTranspose(ptr ptr) -+@ stdcall D3DXOptimizeFaces(ptr long long long ptr) -+@ stub D3DXOptimizeVertices(ptr long long long ptr) -+@ stdcall D3DXPlaneFromPointNormal(ptr ptr ptr) -+@ stdcall D3DXPlaneFromPoints(ptr ptr ptr ptr) -+@ stdcall D3DXPlaneIntersectLine(ptr ptr ptr ptr) -+@ stdcall D3DXPlaneNormalize(ptr ptr) -+@ stdcall D3DXPlaneTransform(ptr ptr ptr) -+@ stdcall D3DXPlaneTransformArray(ptr long ptr long ptr long) -+@ stdcall D3DXPreprocessShader(ptr long ptr ptr ptr ptr) -+@ stdcall D3DXPreprocessShaderFromFileA(str ptr ptr ptr ptr) -+@ stdcall D3DXPreprocessShaderFromFileW(wstr ptr ptr ptr ptr) -+@ stdcall D3DXPreprocessShaderFromResourceA(long str ptr ptr ptr ptr) -+@ stdcall D3DXPreprocessShaderFromResourceW(long wstr ptr ptr ptr ptr) -+@ stdcall D3DXQuaternionBaryCentric(ptr ptr ptr ptr float float) -+@ stdcall D3DXQuaternionExp(ptr ptr) -+@ stdcall D3DXQuaternionInverse(ptr ptr) -+@ stdcall D3DXQuaternionLn(ptr ptr) -+@ stdcall D3DXQuaternionMultiply(ptr ptr ptr) -+@ stdcall D3DXQuaternionNormalize(ptr ptr) -+@ stdcall D3DXQuaternionRotationAxis(ptr ptr float) -+@ stdcall D3DXQuaternionRotationMatrix(ptr ptr) -+@ stdcall D3DXQuaternionRotationYawPitchRoll(ptr float float float) -+@ stdcall D3DXQuaternionSlerp(ptr ptr ptr float) -+@ stdcall D3DXQuaternionSquad(ptr ptr ptr ptr ptr float) -+@ stdcall D3DXQuaternionSquadSetup(ptr ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXQuaternionToAxisAngle(ptr ptr ptr) -+@ stub D3DXRectPatchSize(ptr ptr ptr) -+@ stub D3DXSaveMeshHierarchyToFileA(ptr long ptr ptr ptr) -+@ stub D3DXSaveMeshHierarchyToFileW(ptr long ptr ptr ptr) -+@ stub D3DXSaveMeshToXA(ptr ptr ptr ptr ptr long long) -+@ stub D3DXSaveMeshToXW(ptr ptr ptr ptr ptr long long) -+@ stub D3DXSavePRTBufferToFileA(ptr ptr) -+@ stub D3DXSavePRTBufferToFileW(ptr ptr) -+@ stub D3DXSavePRTCompBufferToFileA(ptr ptr) -+@ stub D3DXSavePRTCompBufferToFileW(ptr ptr) -+@ stdcall D3DXSaveSurfaceToFileA(ptr long ptr ptr ptr) -+@ stdcall D3DXSaveSurfaceToFileInMemory(ptr long ptr ptr ptr) -+@ stdcall D3DXSaveSurfaceToFileW(ptr long ptr ptr ptr) -+@ stdcall D3DXSaveTextureToFileA(ptr long ptr ptr) -+@ stdcall D3DXSaveTextureToFileInMemory(ptr long ptr ptr) -+@ stdcall D3DXSaveTextureToFileW(ptr long ptr ptr) -+@ stub D3DXSaveVolumeToFileA(ptr long ptr ptr ptr) -+@ stub D3DXSaveVolumeToFileInMemory(ptr long ptr ptr ptr) -+@ stub D3DXSaveVolumeToFileW(ptr long ptr ptr ptr) -+@ stdcall D3DXSHAdd(ptr long ptr ptr) -+@ stdcall D3DXSHDot(long ptr ptr) -+@ stdcall D3DXSHEvalConeLight(long ptr float float float float ptr ptr ptr) -+@ stdcall D3DXSHEvalDirection(ptr long ptr) -+@ stdcall D3DXSHEvalDirectionalLight(long ptr float float float ptr ptr ptr) -+@ stdcall D3DXSHEvalHemisphereLight(long ptr int128 int128 ptr ptr ptr) -+@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr) -+@ stdcall D3DXSHMultiply2(ptr ptr ptr) -+@ stdcall D3DXSHMultiply3(ptr ptr ptr) -+@ stdcall D3DXSHMultiply4(ptr ptr ptr) -+@ stub D3DXSHMultiply5(ptr ptr ptr) -+@ stub D3DXSHMultiply6(ptr ptr ptr) -+@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr) -+@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr) -+@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr) -+@ stdcall D3DXSHRotate(ptr long ptr ptr) -+@ stdcall D3DXSHRotateZ(ptr long float ptr) -+@ stdcall D3DXSHScale(ptr long ptr float) -+@ stub D3DXSimplifyMesh(ptr ptr ptr ptr long long ptr) -+@ stdcall D3DXSphereBoundProbe(ptr float ptr ptr) -+@ stub D3DXSplitMesh(ptr ptr long long ptr ptr ptr ptr ptr) -+@ stdcall D3DXTessellateNPatches(ptr ptr float long ptr ptr) -+@ stub D3DXTessellateRectPatch(ptr ptr ptr ptr ptr) -+@ stub D3DXTessellateTriPatch(ptr ptr ptr ptr ptr) -+@ stub D3DXTriPatchSize(ptr ptr ptr) -+@ stub D3DXUVAtlasCreate(ptr long long long long long long ptr ptr ptr ptr long ptr long ptr ptr ptr ptr ptr) -+@ stub D3DXUVAtlasPack(ptr long long long long ptr ptr long ptr long ptr) -+@ stub D3DXUVAtlasPartition(ptr long long long ptr ptr ptr ptr long ptr long ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXValidMesh(ptr ptr ptr) -+@ stub D3DXValidPatchMesh(ptr ptr ptr ptr) -+@ stdcall D3DXVec2BaryCentric(ptr ptr ptr ptr float float) -+@ stdcall D3DXVec2CatmullRom(ptr ptr ptr ptr ptr float) -+@ stdcall D3DXVec2Hermite(ptr ptr ptr ptr ptr float) -+@ stdcall D3DXVec2Normalize(ptr ptr) -+@ stdcall D3DXVec2Transform(ptr ptr ptr) -+@ stdcall D3DXVec2TransformArray(ptr long ptr long ptr long) -+@ stdcall D3DXVec2TransformCoord(ptr ptr ptr) -+@ stdcall D3DXVec2TransformCoordArray(ptr long ptr long ptr long) -+@ stdcall D3DXVec2TransformNormal(ptr ptr ptr) -+@ stdcall D3DXVec2TransformNormalArray(ptr long ptr long ptr long) -+@ stdcall D3DXVec3BaryCentric(ptr ptr ptr ptr float float) -+@ stdcall D3DXVec3CatmullRom(ptr ptr ptr ptr ptr float) -+@ stdcall D3DXVec3Hermite(ptr ptr ptr ptr ptr float) -+@ stdcall D3DXVec3Normalize(ptr ptr) -+@ stdcall D3DXVec3Project(ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXVec3ProjectArray(ptr long ptr long ptr ptr ptr ptr long) -+@ stdcall D3DXVec3Transform(ptr ptr ptr) -+@ stdcall D3DXVec3TransformArray(ptr long ptr long ptr long) -+@ stdcall D3DXVec3TransformCoord(ptr ptr ptr) -+@ stdcall D3DXVec3TransformCoordArray(ptr long ptr long ptr long) -+@ stdcall D3DXVec3TransformNormal(ptr ptr ptr) -+@ stdcall D3DXVec3TransformNormalArray(ptr long ptr long ptr long) -+@ stdcall D3DXVec3Unproject(ptr ptr ptr ptr ptr ptr) -+@ stdcall D3DXVec3UnprojectArray(ptr long ptr long ptr ptr ptr ptr long) -+@ stdcall D3DXVec4BaryCentric(ptr ptr ptr ptr float float) -+@ stdcall D3DXVec4CatmullRom(ptr ptr ptr ptr ptr float) -+@ stdcall D3DXVec4Cross(ptr ptr ptr ptr) -+@ stdcall D3DXVec4Hermite(ptr ptr ptr ptr ptr float) -+@ stdcall D3DXVec4Normalize(ptr ptr) -+@ stdcall D3DXVec4Transform(ptr ptr ptr) -+@ stdcall D3DXVec4TransformArray(ptr long ptr long ptr long) -+@ stdcall D3DXWeldVertices(ptr long ptr ptr ptr ptr ptr) -diff --git a/dlls/d3dx9_33/d3dx9_33_main.c b/dlls/d3dx9_33/d3dx9_33_main.c -index 1b65a84..3e409e3 100644 ---- a/dlls/d3dx9_33/d3dx9_33_main.c -+++ b/dlls/d3dx9_33/d3dx9_33_main.c -@@ -21,6 +21,7 @@ - - #include "config.h" - #include "wine/port.h" -+#include "initguid.h" - - #include - -diff --git a/tools/make_specfiles b/tools/make_specfiles -index f55a42f..5f00f28 100755 ---- a/tools/make_specfiles -+++ b/tools/make_specfiles -@@ -83,7 +83,6 @@ my @dll_groups = - "d3dx9_37", - "d3dx9_35", - "d3dx9_34", -- "d3dx9_33", - "d3dx9_32", - "d3dx9_31", - "d3dx9_30", --- -2.8.0 - diff --git a/patches/d3dx9_33-Share_Source/definition b/patches/d3dx9_33-Share_Source/definition deleted file mode 100644 index 26f506e6..00000000 --- a/patches/d3dx9_33-Share_Source/definition +++ /dev/null @@ -1,4 +0,0 @@ -Fixes: [21817] Share source of d3dx9_36 with d3dx9_33 to avoid Wine DLL forwards -Apply-After: dlls/d3dx9_33/* -Depends: d3dx9_36-D3DXStubs -Depends: d3dx9_36-DXTn diff --git a/patches/d3dx9_36-CloneEffect/0001-d3dx9_36-Improve-stub-for-ID3DXEffectImpl_CloneEffec.patch b/patches/d3dx9_36-CloneEffect/0001-d3dx9_36-Improve-stub-for-ID3DXEffectImpl_CloneEffec.patch index fb3dfe1f..315fdd2c 100644 --- a/patches/d3dx9_36-CloneEffect/0001-d3dx9_36-Improve-stub-for-ID3DXEffectImpl_CloneEffec.patch +++ b/patches/d3dx9_36-CloneEffect/0001-d3dx9_36-Improve-stub-for-ID3DXEffectImpl_CloneEffec.patch @@ -1,4 +1,4 @@ -From f820c1d1f8ef2a4d76f06515ecff8b45bae23d4e Mon Sep 17 00:00:00 2001 +From 8577047f9cdde21a8eb190eed9cc794132155830 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Mon, 16 Mar 2015 08:18:33 +0100 Subject: d3dx9_36: Improve stub for ID3DXEffectImpl_CloneEffect. @@ -8,10 +8,10 @@ Subject: d3dx9_36: Improve stub for ID3DXEffectImpl_CloneEffect. 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c -index 8e2f850..18d952f 100644 +index 5b140fe..efbcb92 100644 --- a/dlls/d3dx9_36/effect.c +++ b/dlls/d3dx9_36/effect.c -@@ -3363,7 +3363,12 @@ static HRESULT WINAPI ID3DXEffectImpl_CloneEffect(ID3DXEffect *iface, +@@ -3906,7 +3906,12 @@ static HRESULT WINAPI ID3DXEffectImpl_CloneEffect(ID3DXEffect *iface, FIXME("(%p)->(%p, %p): stub\n", This, device, effect); @@ -24,7 +24,7 @@ index 8e2f850..18d952f 100644 + return S_OK; } - static HRESULT WINAPI ID3DXEffectImpl_SetRawValue(ID3DXEffect *iface, + #if _D3DX9_VER >= 27 -- -2.3.2 +2.8.0 diff --git a/patches/d3dx9_36-CloneEffect/definition b/patches/d3dx9_36-CloneEffect/definition index 886f3228..2ba4064a 100644 --- a/patches/d3dx9_36-CloneEffect/definition +++ b/patches/d3dx9_36-CloneEffect/definition @@ -1 +1,2 @@ Fixes: Improve stub for ID3DXEffectImpl_CloneEffect +Depends: d3dx9_25-ID3DXEffect diff --git a/patches/d3dx9_36-D3DXStubs/0002-d3dx9_36-Add-D3DXFrameFind-stub.patch b/patches/d3dx9_36-D3DXStubs/0002-d3dx9_36-Add-D3DXFrameFind-stub.patch index 8294e22d..ced28b4d 100644 --- a/patches/d3dx9_36-D3DXStubs/0002-d3dx9_36-Add-D3DXFrameFind-stub.patch +++ b/patches/d3dx9_36-D3DXStubs/0002-d3dx9_36-Add-D3DXFrameFind-stub.patch @@ -1,190 +1,15 @@ -From 9a06378123e28e76159fc9ac2b199abdedbda30a Mon Sep 17 00:00:00 2001 +From 381bfb72fa46393989229619d21a2aa93c0a808c Mon Sep 17 00:00:00 2001 From: Andrey Gusev Date: Wed, 1 Apr 2015 20:59:49 +0300 Subject: d3dx9_36: Add D3DXFrameFind stub. --- - 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/mesh.c | 6 ++++++ - 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 +- - 21 files changed, 26 insertions(+), 20 deletions(-) + 2 files changed, 7 insertions(+), 1 deletion(-) -diff --git a/dlls/d3dx9_24/d3dx9_24.spec b/dlls/d3dx9_24/d3dx9_24.spec -index d54c3f4..c79e778 100644 ---- a/dlls/d3dx9_24/d3dx9_24.spec -+++ b/dlls/d3dx9_24/d3dx9_24.spec -@@ -131,7 +131,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_25/d3dx9_25.spec b/dlls/d3dx9_25/d3dx9_25.spec -index 699c212..8244c77 100644 ---- a/dlls/d3dx9_25/d3dx9_25.spec -+++ b/dlls/d3dx9_25/d3dx9_25.spec -@@ -131,7 +131,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_26/d3dx9_26.spec b/dlls/d3dx9_26/d3dx9_26.spec -index 827a3f3..5b8528b 100644 ---- a/dlls/d3dx9_26/d3dx9_26.spec -+++ b/dlls/d3dx9_26/d3dx9_26.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_27/d3dx9_27.spec b/dlls/d3dx9_27/d3dx9_27.spec -index 827a3f3..5b8528b 100644 ---- a/dlls/d3dx9_27/d3dx9_27.spec -+++ b/dlls/d3dx9_27/d3dx9_27.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_28/d3dx9_28.spec b/dlls/d3dx9_28/d3dx9_28.spec -index c602d1d..c62b334 100644 ---- a/dlls/d3dx9_28/d3dx9_28.spec -+++ b/dlls/d3dx9_28/d3dx9_28.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_29/d3dx9_29.spec b/dlls/d3dx9_29/d3dx9_29.spec -index c602d1d..c62b334 100644 ---- a/dlls/d3dx9_29/d3dx9_29.spec -+++ b/dlls/d3dx9_29/d3dx9_29.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_30/d3dx9_30.spec b/dlls/d3dx9_30/d3dx9_30.spec -index bb28fad..365bd5b 100644 ---- a/dlls/d3dx9_30/d3dx9_30.spec -+++ b/dlls/d3dx9_30/d3dx9_30.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_31/d3dx9_31.spec b/dlls/d3dx9_31/d3dx9_31.spec -index 2cfa618..5133705 100644 ---- a/dlls/d3dx9_31/d3dx9_31.spec -+++ b/dlls/d3dx9_31/d3dx9_31.spec -@@ -134,7 +134,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_32/d3dx9_32.spec b/dlls/d3dx9_32/d3dx9_32.spec -index 1889a47..b93865b 100644 ---- a/dlls/d3dx9_32/d3dx9_32.spec -+++ b/dlls/d3dx9_32/d3dx9_32.spec -@@ -134,7 +134,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_33/d3dx9_33.spec b/dlls/d3dx9_33/d3dx9_33.spec -index 1889a47..b93865b 100644 ---- a/dlls/d3dx9_33/d3dx9_33.spec -+++ b/dlls/d3dx9_33/d3dx9_33.spec -@@ -134,7 +134,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_34/d3dx9_34.spec b/dlls/d3dx9_34/d3dx9_34.spec -index 1889a47..b93865b 100644 ---- a/dlls/d3dx9_34/d3dx9_34.spec -+++ b/dlls/d3dx9_34/d3dx9_34.spec -@@ -134,7 +134,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_35/d3dx9_35.spec b/dlls/d3dx9_35/d3dx9_35.spec -index 1889a47..b93865b 100644 ---- a/dlls/d3dx9_35/d3dx9_35.spec -+++ b/dlls/d3dx9_35/d3dx9_35.spec -@@ -134,7 +134,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm diff --git a/dlls/d3dx9_36/d3dx9_36.spec b/dlls/d3dx9_36/d3dx9_36.spec -index e3bb568..ea7e74c 100644 +index 4cadb53..9935352 100644 --- a/dlls/d3dx9_36/d3dx9_36.spec +++ b/dlls/d3dx9_36/d3dx9_36.spec @@ -135,7 +135,7 @@ @@ -197,10 +22,10 @@ index e3bb568..ea7e74c 100644 @ stub D3DXFrameRegisterNamedMatrices(ptr ptr) @ stdcall D3DXFresnelTerm(float float) diff --git a/dlls/d3dx9_36/mesh.c b/dlls/d3dx9_36/mesh.c -index 2647ace..02931c7 100644 +index b0b9846..aa98b1a 100644 --- a/dlls/d3dx9_36/mesh.c +++ b/dlls/d3dx9_36/mesh.c -@@ -4044,6 +4044,12 @@ HRESULT WINAPI D3DXFrameDestroy(D3DXFRAME *frame, ID3DXAllocateHierarchy *alloc_ +@@ -4046,6 +4046,12 @@ HRESULT WINAPI D3DXFrameDestroy(D3DXFRAME *frame, ID3DXAllocateHierarchy *alloc_ return D3D_OK; } @@ -213,97 +38,6 @@ index 2647ace..02931c7 100644 HRESULT WINAPI D3DXLoadMeshFromXA(const char *filename, DWORD options, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *num_materials, struct ID3DXMesh **mesh) -diff --git a/dlls/d3dx9_37/d3dx9_37.spec b/dlls/d3dx9_37/d3dx9_37.spec -index f5508c2..9a5ed88 100644 ---- a/dlls/d3dx9_37/d3dx9_37.spec -+++ b/dlls/d3dx9_37/d3dx9_37.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_38/d3dx9_38.spec b/dlls/d3dx9_38/d3dx9_38.spec -index f5508c2..9a5ed88 100644 ---- a/dlls/d3dx9_38/d3dx9_38.spec -+++ b/dlls/d3dx9_38/d3dx9_38.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_39/d3dx9_39.spec b/dlls/d3dx9_39/d3dx9_39.spec -index f5508c2..9a5ed88 100644 ---- a/dlls/d3dx9_39/d3dx9_39.spec -+++ b/dlls/d3dx9_39/d3dx9_39.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_40/d3dx9_40.spec b/dlls/d3dx9_40/d3dx9_40.spec -index f5508c2..9a5ed88 100644 ---- a/dlls/d3dx9_40/d3dx9_40.spec -+++ b/dlls/d3dx9_40/d3dx9_40.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_41/d3dx9_41.spec b/dlls/d3dx9_41/d3dx9_41.spec -index f5508c2..9a5ed88 100644 ---- a/dlls/d3dx9_41/d3dx9_41.spec -+++ b/dlls/d3dx9_41/d3dx9_41.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_42/d3dx9_42.spec b/dlls/d3dx9_42/d3dx9_42.spec -index f5508c2..9a5ed88 100644 ---- a/dlls/d3dx9_42/d3dx9_42.spec -+++ b/dlls/d3dx9_42/d3dx9_42.spec -@@ -135,7 +135,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -diff --git a/dlls/d3dx9_43/d3dx9_43.spec b/dlls/d3dx9_43/d3dx9_43.spec -index 21d2cb4..122dff4 100644 ---- a/dlls/d3dx9_43/d3dx9_43.spec -+++ b/dlls/d3dx9_43/d3dx9_43.spec -@@ -133,7 +133,7 @@ - @ stdcall D3DXFrameAppendChild(ptr ptr) d3dx9_36.D3DXFrameAppendChild - @ stdcall D3DXFrameCalculateBoundingSphere(ptr ptr ptr) d3dx9_36.D3DXFrameCalculateBoundingSphere - @ stdcall D3DXFrameDestroy(ptr ptr) d3dx9_36.D3DXFrameDestroy --@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind -+@ stdcall D3DXFrameFind(ptr str) d3dx9_36.D3DXFrameFind - @ stdcall D3DXFrameNumNamedMatrices(ptr) d3dx9_36.D3DXFrameNumNamedMatrices - @ stdcall D3DXFrameRegisterNamedMatrices(ptr ptr) d3dx9_36.D3DXFrameRegisterNamedMatrices - @ stdcall D3DXFresnelTerm(float float) d3dx9_36.D3DXFresnelTerm -- -2.4.5 +2.8.0 diff --git a/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch b/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch index 8087fab2..759e8e41 100644 --- a/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch +++ b/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch @@ -1,16 +1,136 @@ -From 14de286e5d59419e946e9459df0426c1c5ab7f7d Mon Sep 17 00:00:00 2001 +From 94ca9bf354be47b2fe57689a4a1479d1d53255b2 Mon Sep 17 00:00:00 2001 From: Christian Costa Date: Sat, 1 Nov 2014 13:08:05 +0100 Subject: d3dx9_36: Add dxtn support. --- + dlls/d3dx9_24/Makefile.in | 2 +- + dlls/d3dx9_25/Makefile.in | 2 +- + dlls/d3dx9_26/Makefile.in | 2 +- + dlls/d3dx9_27/Makefile.in | 2 +- + dlls/d3dx9_28/Makefile.in | 2 +- + dlls/d3dx9_29/Makefile.in | 2 +- + dlls/d3dx9_30/Makefile.in | 2 +- + dlls/d3dx9_31/Makefile.in | 2 +- + dlls/d3dx9_32/Makefile.in | 2 +- + dlls/d3dx9_33/Makefile.in | 2 +- dlls/d3dx9_36/Makefile.in | 2 +- dlls/d3dx9_36/surface.c | 103 +++++++++++++++++++++++++++++++++++++++--- dlls/d3dx9_36/tests/surface.c | 8 ++-- - 3 files changed, 101 insertions(+), 12 deletions(-) + 13 files changed, 111 insertions(+), 22 deletions(-) +diff --git a/dlls/d3dx9_24/Makefile.in b/dlls/d3dx9_24/Makefile.in +index 7464bd1..bca7d82 100644 +--- a/dlls/d3dx9_24/Makefile.in ++++ b/dlls/d3dx9_24/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_24.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=24 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_25/Makefile.in b/dlls/d3dx9_25/Makefile.in +index 1531e66..5d847a2 100644 +--- a/dlls/d3dx9_25/Makefile.in ++++ b/dlls/d3dx9_25/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_25.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=25 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_26/Makefile.in b/dlls/d3dx9_26/Makefile.in +index 2a58c58..cf0c150 100644 +--- a/dlls/d3dx9_26/Makefile.in ++++ b/dlls/d3dx9_26/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_26.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=26 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_27/Makefile.in b/dlls/d3dx9_27/Makefile.in +index 9ba1e2a..7cc647c 100644 +--- a/dlls/d3dx9_27/Makefile.in ++++ b/dlls/d3dx9_27/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_27.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=27 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_28/Makefile.in b/dlls/d3dx9_28/Makefile.in +index 15dec71..bbf4140 100644 +--- a/dlls/d3dx9_28/Makefile.in ++++ b/dlls/d3dx9_28/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_28.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=28 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_29/Makefile.in b/dlls/d3dx9_29/Makefile.in +index 5a5a8fc..1aa1663 100644 +--- a/dlls/d3dx9_29/Makefile.in ++++ b/dlls/d3dx9_29/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_29.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=29 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_30/Makefile.in b/dlls/d3dx9_30/Makefile.in +index bafcdb4..df8f87b 100644 +--- a/dlls/d3dx9_30/Makefile.in ++++ b/dlls/d3dx9_30/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_30.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=30 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_31/Makefile.in b/dlls/d3dx9_31/Makefile.in +index f5df4d8..6ea8d15 100644 +--- a/dlls/d3dx9_31/Makefile.in ++++ b/dlls/d3dx9_31/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_31.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=31 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_32/Makefile.in b/dlls/d3dx9_32/Makefile.in +index cce9293..df0759f 100644 +--- a/dlls/d3dx9_32/Makefile.in ++++ b/dlls/d3dx9_32/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_32.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=32 + PARENTSRC = ../d3dx9_36 + +diff --git a/dlls/d3dx9_33/Makefile.in b/dlls/d3dx9_33/Makefile.in +index c9b6587..ecf1b15 100644 +--- a/dlls/d3dx9_33/Makefile.in ++++ b/dlls/d3dx9_33/Makefile.in +@@ -1,5 +1,5 @@ + MODULE = d3dx9_33.dll +-IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 ++IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=33 + PARENTSRC = ../d3dx9_36 + diff --git a/dlls/d3dx9_36/Makefile.in b/dlls/d3dx9_36/Makefile.in -index 95e3045..fd710c2 100644 +index 24ce09d..6b78518 100644 --- a/dlls/d3dx9_36/Makefile.in +++ b/dlls/d3dx9_36/Makefile.in @@ -1,6 +1,6 @@ @@ -18,9 +138,9 @@ index 95e3045..fd710c2 100644 IMPORTLIB = d3dx9 -IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 +IMPORTS = d3d9 d3dcompiler dxguid d3dxof ole32 gdi32 user32 wined3d + EXTRADEFS = -D_D3DX9_VER=36 C_SRCS = \ - animation.c \ diff --git a/dlls/d3dx9_36/surface.c b/dlls/d3dx9_36/surface.c index 1bfe75a..4099cd5 100644 --- a/dlls/d3dx9_36/surface.c @@ -213,5 +333,5 @@ index f2855e8..2be48df 100644 check_release((IUnknown*)newsurf, 1); check_release((IUnknown*)tex, 0); -- -2.7.1 +2.8.0 diff --git a/patches/d3dx9_36-DXTn/definition b/patches/d3dx9_36-DXTn/definition index fc376e93..5e69f112 100644 --- a/patches/d3dx9_36-DXTn/definition +++ b/patches/d3dx9_36-DXTn/definition @@ -1,4 +1,5 @@ Depends: wined3d-DXTn +Depends: d3dx9_25-ID3DXEffect Fixes: [33768] Fix texture corruption in CSI: Fatal Conspiracy Fixes: [37391] Exception during start of fr-043 caused by missing DXTn support Fixes: [34692] Fix wrong colors in Wolfenstein (2009) diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 028ee7e6..6c9cb42d 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "0c83f4d5bec8b01e1e6dcbb0a9a9932b6c24570b" + echo "e3bd659be9b2868b121857fb2643d775bbf0d8c7" } # Show version information @@ -105,10 +105,7 @@ patch_enable_all () enable_d3d9_DesktopWindow="$1" enable_d3d9_Surface_Refcount="$1" enable_d3d9_Tests="$1" - enable_d3dx9_24_ID3DXEffect="$1" enable_d3dx9_25_ID3DXEffect="$1" - enable_d3dx9_26_ID3DXEffect="$1" - enable_d3dx9_33_Share_Source="$1" enable_d3dx9_36_BumpLuminance="$1" enable_d3dx9_36_CloneEffect="$1" enable_d3dx9_36_D3DXCreateTeapot="$1" @@ -496,18 +493,9 @@ patch_enable () d3d9-Tests) enable_d3d9_Tests="$2" ;; - d3dx9_24-ID3DXEffect) - enable_d3dx9_24_ID3DXEffect="$2" - ;; d3dx9_25-ID3DXEffect) enable_d3dx9_25_ID3DXEffect="$2" ;; - d3dx9_26-ID3DXEffect) - enable_d3dx9_26_ID3DXEffect="$2" - ;; - d3dx9_33-Share_Source) - enable_d3dx9_33_Share_Source="$2" - ;; d3dx9_36-BumpLuminance) enable_d3dx9_36_BumpLuminance="$2" ;; @@ -1776,15 +1764,6 @@ if test "$enable_category_stable" -eq 1; then if test "$enable_d3d9_Surface_Refcount" -gt 1; then abort "Patchset d3d9-Surface_Refcount disabled, but category-stable depends on that." fi - if test "$enable_d3dx9_24_ID3DXEffect" -gt 1; then - abort "Patchset d3dx9_24-ID3DXEffect disabled, but category-stable depends on that." - fi - if test "$enable_d3dx9_25_ID3DXEffect" -gt 1; then - abort "Patchset d3dx9_25-ID3DXEffect disabled, but category-stable depends on that." - fi - if test "$enable_d3dx9_26_ID3DXEffect" -gt 1; then - abort "Patchset d3dx9_26-ID3DXEffect disabled, but category-stable depends on that." - fi if test "$enable_d3dx9_36_D3DXStubs" -gt 1; then abort "Patchset d3dx9_36-D3DXStubs disabled, but category-stable depends on that." fi @@ -1930,9 +1909,6 @@ if test "$enable_category_stable" -eq 1; then enable_Staging=1 enable_configure_Absolute_RPATH=1 enable_d3d9_Surface_Refcount=1 - enable_d3dx9_24_ID3DXEffect=1 - enable_d3dx9_25_ID3DXEffect=1 - enable_d3dx9_26_ID3DXEffect=1 enable_d3dx9_36_D3DXStubs=1 enable_d3dx9_36_FindNextValidTechnique=1 enable_d3dx9_36_Optimize_Inplace=1 @@ -2298,6 +2274,17 @@ if test "$enable_dsound_EAX" -eq 1; then enable_dsound_Revert_Cleanup=1 fi +if test "$enable_d3dx9_36_DXTn" -eq 1; then + if test "$enable_d3dx9_25_ID3DXEffect" -gt 1; then + abort "Patchset d3dx9_25-ID3DXEffect disabled, but d3dx9_36-DXTn depends on that." + fi + if test "$enable_wined3d_DXTn" -gt 1; then + abort "Patchset wined3d-DXTn disabled, but d3dx9_36-DXTn depends on that." + fi + enable_d3dx9_25_ID3DXEffect=1 + enable_wined3d_DXTn=1 +fi + if test "$enable_d3dx9_36_D3DXDisassembleShader" -eq 1; then if test "$enable_d3dx9_36_GetShaderSemantics" -gt 1; then abort "Patchset d3dx9_36-GetShaderSemantics disabled, but d3dx9_36-D3DXDisassembleShader depends on that." @@ -2305,27 +2292,9 @@ if test "$enable_d3dx9_36_D3DXDisassembleShader" -eq 1; then enable_d3dx9_36_GetShaderSemantics=1 fi -if test "$enable_d3dx9_33_Share_Source" -eq 1; then - if test "$enable_d3dx9_36_D3DXStubs" -gt 1; then - abort "Patchset d3dx9_36-D3DXStubs disabled, but d3dx9_33-Share_Source depends on that." - fi - if test "$enable_d3dx9_36_DXTn" -gt 1; then - abort "Patchset d3dx9_36-DXTn disabled, but d3dx9_33-Share_Source depends on that." - fi - enable_d3dx9_36_D3DXStubs=1 - enable_d3dx9_36_DXTn=1 -fi - -if test "$enable_d3dx9_36_DXTn" -eq 1; then - if test "$enable_wined3d_DXTn" -gt 1; then - abort "Patchset wined3d-DXTn disabled, but d3dx9_36-DXTn depends on that." - fi - enable_wined3d_DXTn=1 -fi - -if test "$enable_d3dx9_24_ID3DXEffect" -eq 1; then +if test "$enable_d3dx9_36_CloneEffect" -eq 1; then if test "$enable_d3dx9_25_ID3DXEffect" -gt 1; then - abort "Patchset d3dx9_25-ID3DXEffect disabled, but d3dx9_24-ID3DXEffect depends on that." + abort "Patchset d3dx9_25-ID3DXEffect disabled, but d3dx9_36-CloneEffect depends on that." fi enable_d3dx9_25_ID3DXEffect=1 fi @@ -2917,126 +2886,15 @@ fi # | * [#25138] Fix wrong version of ID3DXEffect interface for d3dx9_25 # | # | Modified files: -# | * dlls/d3dx9_25/Makefile.in, dlls/d3dx9_25/d3dx9_25.spec, dlls/d3dx9_25/effect.c +# | * dlls/d3dx9_24/Makefile.in, dlls/d3dx9_25/Makefile.in, dlls/d3dx9_26/Makefile.in, dlls/d3dx9_27/Makefile.in, +# | dlls/d3dx9_28/Makefile.in, dlls/d3dx9_29/Makefile.in, dlls/d3dx9_30/Makefile.in, dlls/d3dx9_31/Makefile.in, +# | dlls/d3dx9_32/Makefile.in, dlls/d3dx9_33/Makefile.in, dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/effect.c, +# | include/d3dx9effect.h # | if test "$enable_d3dx9_25_ID3DXEffect" -eq 1; then - patch_apply d3dx9_25-ID3DXEffect/0001-d3dx9_25-Add-an-interface-wrapper-for-different-vers.patch + patch_apply d3dx9_25-ID3DXEffect/0001-d3dx9_-Adjust-ID3DXEffect-interface-based-on-DLL-ver.patch ( - echo '+ { "Sebastian Lackner", "d3dx9_25: Add an interface wrapper for different version of ID3DXEffect.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset d3dx9_24-ID3DXEffect -# | -# | This patchset has the following (direct or indirect) dependencies: -# | * d3dx9_25-ID3DXEffect -# | -# | Modified files: -# | * dlls/d3dx9_24/d3dx9_24.spec -# | -if test "$enable_d3dx9_24_ID3DXEffect" -eq 1; then - patch_apply d3dx9_24-ID3DXEffect/0001-d3dx9_24-Add-an-interface-wrapper-for-different-vers.patch - ( - echo '+ { "Sebastian Lackner", "d3dx9_24: Add an interface wrapper for different version of ID3DXEffect.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset d3dx9_26-ID3DXEffect -# | -# | Modified files: -# | * dlls/d3dx9_36/effect.c -# | -if test "$enable_d3dx9_26_ID3DXEffect" -eq 1; then - patch_apply d3dx9_26-ID3DXEffect/0001-d3dx9_36-Allow-to-query-for-d3dx9_26-specific-ID3DXE.patch - ( - echo '+ { "Sebastian Lackner", "d3dx9_36: Allow to query for d3dx9_26 specific ID3DXEffect interface.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset d3dx9_36-D3DXStubs -# | -# | This patchset fixes the following Wine bugs: -# | * [#38334] Add stub for D3DXFrameFind -# | -# | Modified files: -# | * dlls/d3dx9_24/d3dx9_24.spec, dlls/d3dx9_25/d3dx9_25.spec, dlls/d3dx9_26/d3dx9_26.spec, dlls/d3dx9_27/d3dx9_27.spec, -# | dlls/d3dx9_28/d3dx9_28.spec, dlls/d3dx9_29/d3dx9_29.spec, dlls/d3dx9_30/d3dx9_30.spec, dlls/d3dx9_31/d3dx9_31.spec, -# | dlls/d3dx9_32/d3dx9_32.spec, dlls/d3dx9_33/d3dx9_33.spec, dlls/d3dx9_34/d3dx9_34.spec, dlls/d3dx9_35/d3dx9_35.spec, -# | dlls/d3dx9_36/d3dx9_36.spec, dlls/d3dx9_36/mesh.c, dlls/d3dx9_37/d3dx9_37.spec, dlls/d3dx9_38/d3dx9_38.spec, -# | dlls/d3dx9_39/d3dx9_39.spec, dlls/d3dx9_40/d3dx9_40.spec, dlls/d3dx9_41/d3dx9_41.spec, dlls/d3dx9_42/d3dx9_42.spec, -# | dlls/d3dx9_43/d3dx9_43.spec -# | -if test "$enable_d3dx9_36_D3DXStubs" -eq 1; then - patch_apply d3dx9_36-D3DXStubs/0001-d3dx9_36-Add-stub-for-D3DXComputeNormalMap.patch - patch_apply d3dx9_36-D3DXStubs/0002-d3dx9_36-Add-D3DXFrameFind-stub.patch - ( - echo '+ { "Christian Costa", "d3dx9_36: Add stub for D3DXComputeNormalMap.", 1 },'; - echo '+ { "Andrey Gusev", "d3dx9_36: Add D3DXFrameFind stub.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset wined3d-DXTn -# | -# | This patchset fixes the following Wine bugs: -# | * [#25486] Lego Stunt Rally requires DXTn software de/encoding support -# | * [#29586] Tumblebugs 2 requires DXTn software encoding support -# | * [#14939] Black & White needs DXTn software decoding support -# | * [#17913] Port Royale doesn't display ocean correctly -# | * [#29598] eRacer Demo doesn't correctly display text -# | -# | Modified files: -# | * configure.ac, dlls/wined3d/Makefile.in, dlls/wined3d/dxtn.c, dlls/wined3d/surface.c, dlls/wined3d/wined3d.spec, -# | dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h, include/wine/wined3d.h -# | -if test "$enable_wined3d_DXTn" -eq 1; then - patch_apply wined3d-DXTn/0001-wined3d-Add-support-for-DXTn-software-decoding-throu.patch - patch_apply wined3d-DXTn/0002-wined3d-Improve-DXTn-support-and-export-conversion-f.patch - patch_apply wined3d-DXTn/0003-wined3d-add-DXT1-to-B4G4R4A4-DXT1-to-B5G5R5A1-and-DX.patch - patch_apply wined3d-DXTn/0004-wined3d-Load-dxtn-dylib-library-on-Mac-OS-X.patch - ( - echo '+ { "Michael Müller", "wined3d: Add support for DXTn software decoding through libtxc_dxtn.", 3 },'; - echo '+ { "Christian Costa", "wined3d: Improve DXTn support and export conversion functions for d3dx9_36.", 1 },'; - echo '+ { "Michael Müller", "wined3d: Add DXT1 to B4G4R4A4, DXT1 to B5G5R5A1 and DXT3 to B4G4R4A4 conversion.", 1 },'; - echo '+ { "Michael Müller", "wined3d: Load dxtn dylib library on Mac OS X.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset d3dx9_36-DXTn -# | -# | This patchset has the following (direct or indirect) dependencies: -# | * wined3d-DXTn -# | -# | This patchset fixes the following Wine bugs: -# | * [#33768] Fix texture corruption in CSI: Fatal Conspiracy -# | * [#37391] Exception during start of fr-043 caused by missing DXTn support -# | * [#34692] Fix wrong colors in Wolfenstein (2009) -# | * [#24983] Fix crash in Space Rangers2 caused by missing DXTn support -# | -# | Modified files: -# | * dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/surface.c, dlls/d3dx9_36/tests/surface.c -# | -if test "$enable_d3dx9_36_DXTn" -eq 1; then - patch_apply d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch - ( - echo '+ { "Christian Costa", "d3dx9_36: Add dxtn support.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset d3dx9_33-Share_Source -# | -# | This patchset has the following (direct or indirect) dependencies: -# | * d3dx9_36-D3DXStubs, wined3d-DXTn, d3dx9_36-DXTn -# | -# | This patchset fixes the following Wine bugs: -# | * [#21817] Share source of d3dx9_36 with d3dx9_33 to avoid Wine DLL forwards -# | -# | Modified files: -# | * dlls/d3dx9_33/Makefile.in, dlls/d3dx9_33/d3dx9_33.spec, dlls/d3dx9_33/d3dx9_33_main.c, tools/make_specfiles -# | -if test "$enable_d3dx9_33_Share_Source" -eq 1; then - patch_apply d3dx9_33-Share_Source/0001-d3dx9_33-Share-the-source-with-d3dx9_36.patch - ( - echo '+ { "Alistair Leslie-Hughes", "d3dx9_33: Share the source with d3dx9_36.", 1 },'; + echo '+ { "Sebastian Lackner", "d3dx9_*: Adjust ID3DXEffect interface based on DLL version.", 1 },'; ) >> "$patchlist" fi @@ -3056,6 +2914,9 @@ fi # Patchset d3dx9_36-CloneEffect # | +# | This patchset has the following (direct or indirect) dependencies: +# | * d3dx9_25-ID3DXEffect +# | # | Modified files: # | * dlls/d3dx9_36/effect.c # | @@ -3126,6 +2987,23 @@ if test "$enable_d3dx9_36_D3DXDisassembleShader" -eq 1; then ) >> "$patchlist" fi +# Patchset d3dx9_36-D3DXStubs +# | +# | This patchset fixes the following Wine bugs: +# | * [#38334] Add stub for D3DXFrameFind +# | +# | Modified files: +# | * dlls/d3dx9_36/d3dx9_36.spec, dlls/d3dx9_36/mesh.c +# | +if test "$enable_d3dx9_36_D3DXStubs" -eq 1; then + patch_apply d3dx9_36-D3DXStubs/0001-d3dx9_36-Add-stub-for-D3DXComputeNormalMap.patch + patch_apply d3dx9_36-D3DXStubs/0002-d3dx9_36-Add-D3DXFrameFind-stub.patch + ( + echo '+ { "Christian Costa", "d3dx9_36: Add stub for D3DXComputeNormalMap.", 1 },'; + echo '+ { "Andrey Gusev", "d3dx9_36: Add D3DXFrameFind stub.", 1 },'; + ) >> "$patchlist" +fi + # Patchset d3dx9_36-DDS # | # | This patchset fixes the following Wine bugs: @@ -3143,6 +3021,56 @@ if test "$enable_d3dx9_36_DDS" -eq 1; then ) >> "$patchlist" fi +# Patchset wined3d-DXTn +# | +# | This patchset fixes the following Wine bugs: +# | * [#25486] Lego Stunt Rally requires DXTn software de/encoding support +# | * [#29586] Tumblebugs 2 requires DXTn software encoding support +# | * [#14939] Black & White needs DXTn software decoding support +# | * [#17913] Port Royale doesn't display ocean correctly +# | * [#29598] eRacer Demo doesn't correctly display text +# | +# | Modified files: +# | * configure.ac, dlls/wined3d/Makefile.in, dlls/wined3d/dxtn.c, dlls/wined3d/surface.c, dlls/wined3d/wined3d.spec, +# | dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h, include/wine/wined3d.h +# | +if test "$enable_wined3d_DXTn" -eq 1; then + patch_apply wined3d-DXTn/0001-wined3d-Add-support-for-DXTn-software-decoding-throu.patch + patch_apply wined3d-DXTn/0002-wined3d-Improve-DXTn-support-and-export-conversion-f.patch + patch_apply wined3d-DXTn/0003-wined3d-add-DXT1-to-B4G4R4A4-DXT1-to-B5G5R5A1-and-DX.patch + patch_apply wined3d-DXTn/0004-wined3d-Load-dxtn-dylib-library-on-Mac-OS-X.patch + ( + echo '+ { "Michael Müller", "wined3d: Add support for DXTn software decoding through libtxc_dxtn.", 3 },'; + echo '+ { "Christian Costa", "wined3d: Improve DXTn support and export conversion functions for d3dx9_36.", 1 },'; + echo '+ { "Michael Müller", "wined3d: Add DXT1 to B4G4R4A4, DXT1 to B5G5R5A1 and DXT3 to B4G4R4A4 conversion.", 1 },'; + echo '+ { "Michael Müller", "wined3d: Load dxtn dylib library on Mac OS X.", 1 },'; + ) >> "$patchlist" +fi + +# Patchset d3dx9_36-DXTn +# | +# | This patchset has the following (direct or indirect) dependencies: +# | * d3dx9_25-ID3DXEffect, wined3d-DXTn +# | +# | This patchset fixes the following Wine bugs: +# | * [#33768] Fix texture corruption in CSI: Fatal Conspiracy +# | * [#37391] Exception during start of fr-043 caused by missing DXTn support +# | * [#34692] Fix wrong colors in Wolfenstein (2009) +# | * [#24983] Fix crash in Space Rangers2 caused by missing DXTn support +# | +# | Modified files: +# | * dlls/d3dx9_24/Makefile.in, dlls/d3dx9_25/Makefile.in, dlls/d3dx9_26/Makefile.in, dlls/d3dx9_27/Makefile.in, +# | dlls/d3dx9_28/Makefile.in, dlls/d3dx9_29/Makefile.in, dlls/d3dx9_30/Makefile.in, dlls/d3dx9_31/Makefile.in, +# | dlls/d3dx9_32/Makefile.in, dlls/d3dx9_33/Makefile.in, dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/surface.c, +# | dlls/d3dx9_36/tests/surface.c +# | +if test "$enable_d3dx9_36_DXTn" -eq 1; then + patch_apply d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch + ( + echo '+ { "Christian Costa", "d3dx9_36: Add dxtn support.", 1 },'; + ) >> "$patchlist" +fi + # Patchset d3dx9_36-DrawText # | # | This patchset fixes the following Wine bugs: