diff --git a/patches/d3dx9_36-DXTn/definition b/patches/d3dx9_36-DXTn/definition index 2a53d77b..fc376e93 100644 --- a/patches/d3dx9_36-DXTn/definition +++ b/patches/d3dx9_36-DXTn/definition @@ -3,7 +3,3 @@ 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) Fixes: [24983] Fix crash in Space Rangers2 caused by missing DXTn support -# 9fb5745a7997bbfe033779650f1193d85369cef2 broke this, in a way that's not -# trivial to fix. Guess we'll wait to see what Alexandre has in mind for the -# other D3D DLLs. -Disabled: true diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 9dcabea4..bac3660b 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "436fb03a87ae6dcbbbe149e401942b7eb8369f51" + echo "2ed141d6807da1e2e23c71d01aaf7af64af10ce1" } # Show version information @@ -111,6 +111,7 @@ patch_enable_all () enable_d3dx9_36_D3DXSHProjectCubeMap="$1" enable_d3dx9_36_D3DXStubs="$1" enable_d3dx9_36_DDS="$1" + enable_d3dx9_36_DXTn="$1" enable_d3dx9_36_DrawText="$1" enable_d3dx9_36_Filter_Warnings="$1" enable_d3dx9_36_Optimize_Inplace="$1" @@ -461,6 +462,9 @@ patch_enable () d3dx9_36-DDS) enable_d3dx9_36_DDS="$2" ;; + d3dx9_36-DXTn) + enable_d3dx9_36_DXTn="$2" + ;; d3dx9_36-DrawText) enable_d3dx9_36_DrawText="$2" ;; @@ -1649,13 +1653,6 @@ if test "$enable_wined3d_Indexed_Vertex_Blending" -eq 1; then enable_wined3d_SWVP_shaders=1 fi -if test "$enable_wined3d_DXTn" -eq 1; then - if test "$enable_wined3d_WINED3DFMT_B8G8R8X8_UNORM" -gt 1; then - abort "Patchset wined3d-WINED3DFMT_B8G8R8X8_UNORM disabled, but wined3d-DXTn depends on that." - fi - enable_wined3d_WINED3DFMT_B8G8R8X8_UNORM=1 -fi - if test "$enable_wineboot_ProxySettings" -eq 1; then if test "$enable_wineboot_DriveSerial" -gt 1; then abort "Patchset wineboot-DriveSerial disabled, but wineboot-ProxySettings depends on that." @@ -1993,6 +1990,20 @@ if test "$enable_ddraw_Texture_Wrong_Caps" -eq 1; then enable_ddraw_Rendering_Targets=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_wined3d_DXTn" -eq 1; then + if test "$enable_wined3d_WINED3DFMT_B8G8R8X8_UNORM" -gt 1; then + abort "Patchset wined3d-WINED3DFMT_B8G8R8X8_UNORM disabled, but wined3d-DXTn depends on that." + fi + enable_wined3d_WINED3DFMT_B8G8R8X8_UNORM=1 +fi + if test "$enable_d3d11_Deferred_Context" -eq 1; then if test "$enable_nvapi_Stub_DLL" -gt 1; then abort "Patchset nvapi-Stub_DLL disabled, but d3d11-Deferred_Context depends on that." @@ -2037,7 +2048,7 @@ fi # Patchset Compiler_Warnings # | # | Modified files: -# | * dlls/d2d1/bitmap.c, dlls/d2d1/brush.c, dlls/d2d1/dc_render_target.c, dlls/d2d1/device.c, dlls/d2d1/geometry.c, +# | * dlls/d2d1/bitmap.c, dlls/d2d1/brush.c, dlls/d2d1/dc_render_target.c, dlls/d2d1/geometry.c, # | dlls/d2d1/hwnd_render_target.c, dlls/d2d1/state_block.c, dlls/d3d11/view.c, dlls/d3d8/texture.c, dlls/d3d9/texture.c, # | dlls/ddraw/viewport.c, dlls/dwrite/font.c, dlls/dwrite/layout.c, dlls/msxml3/schema.c, dlls/oleaut32/oleaut.c, # | dlls/rpcrt4/cstub.c, dlls/vbscript/vbdisp.c, dlls/windowscodecs/info.c, dlls/wsdapi/msgparams.c, include/wine/list.h, @@ -2735,6 +2746,68 @@ if test "$enable_d3dx9_36_DDS" -eq 1; then ) >> "$patchlist" fi +# Patchset wined3d-WINED3DFMT_B8G8R8X8_UNORM +# | +# | This patchset fixes the following Wine bugs: +# | * [#44888] Implement WINED3DFMT_B8G8R8X8_UNORM to WINED3DFMT_L8_UNORM conversion +# | +# | Modified files: +# | * dlls/wined3d/surface.c +# | +if test "$enable_wined3d_WINED3DFMT_B8G8R8X8_UNORM" -eq 1; then + patch_apply wined3d-WINED3DFMT_B8G8R8X8_UNORM/0001-wined3d-Implement-WINED3DFMT_B8G8R8X8_UNORM-to-WINED.patch + ( + printf '%s\n' '+ { "Stanislav Zhukov", "wined3d: Implement WINED3DFMT_B8G8R8X8_UNORM to WINED3DFMT_L8_UNORM conversion.", 1 },'; + ) >> "$patchlist" +fi + +# Patchset wined3d-DXTn +# | +# | This patchset has the following (direct or indirect) dependencies: +# | * wined3d-WINED3DFMT_B8G8R8X8_UNORM +# | +# | 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 +# | * [#17913] Port Royale doesn't display ocean correctly +# | +# | Modified files: +# | * dlls/wined3d/Makefile.in, dlls/wined3d/dxtn.c, dlls/wined3d/dxtn.h, dlls/wined3d/surface.c, dlls/wined3d/wined3d.spec, +# | include/wine/wined3d.h +# | +if test "$enable_wined3d_DXTn" -eq 1; then + patch_apply wined3d-DXTn/0001-wined3d-add-DXTn-support.patch + ( + printf '%s\n' '+ { "Christian Costa", "wined3d: Add DXTn support.", 1 },'; + ) >> "$patchlist" +fi + +# Patchset d3dx9_36-DXTn +# | +# | This patchset has the following (direct or indirect) dependencies: +# | * wined3d-WINED3DFMT_B8G8R8X8_UNORM, 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_34/Makefile.in, dlls/d3dx9_35/Makefile.in, +# | dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/surface.c, dlls/d3dx9_36/tests/surface.c, dlls/d3dx9_37/Makefile.in, +# | dlls/d3dx9_38/Makefile.in, dlls/d3dx9_39/Makefile.in, dlls/d3dx9_40/Makefile.in, dlls/d3dx9_41/Makefile.in, +# | dlls/d3dx9_42/Makefile.in, dlls/d3dx9_43/Makefile.in +# | +if test "$enable_d3dx9_36_DXTn" -eq 1; then + patch_apply d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch + ( + printf '%s\n' '+ { "Christian Costa", "d3dx9_36: Add DXTn support.", 1 },'; + ) >> "$patchlist" +fi + # Patchset d3dx9_36-DrawText # | # | This patchset fixes the following Wine bugs: @@ -6533,42 +6606,6 @@ if test "$enable_wined3d_CSMT_Main" -eq 1; then ) >> "$patchlist" fi -# Patchset wined3d-WINED3DFMT_B8G8R8X8_UNORM -# | -# | This patchset fixes the following Wine bugs: -# | * [#44888] Implement WINED3DFMT_B8G8R8X8_UNORM to WINED3DFMT_L8_UNORM conversion -# | -# | Modified files: -# | * dlls/wined3d/surface.c -# | -if test "$enable_wined3d_WINED3DFMT_B8G8R8X8_UNORM" -eq 1; then - patch_apply wined3d-WINED3DFMT_B8G8R8X8_UNORM/0001-wined3d-Implement-WINED3DFMT_B8G8R8X8_UNORM-to-WINED.patch - ( - printf '%s\n' '+ { "Stanislav Zhukov", "wined3d: Implement WINED3DFMT_B8G8R8X8_UNORM to WINED3DFMT_L8_UNORM conversion.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset wined3d-DXTn -# | -# | This patchset has the following (direct or indirect) dependencies: -# | * wined3d-WINED3DFMT_B8G8R8X8_UNORM -# | -# | 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 -# | * [#17913] Port Royale doesn't display ocean correctly -# | -# | Modified files: -# | * dlls/wined3d/Makefile.in, dlls/wined3d/dxtn.c, dlls/wined3d/dxtn.h, dlls/wined3d/surface.c, dlls/wined3d/wined3d.spec, -# | include/wine/wined3d.h -# | -if test "$enable_wined3d_DXTn" -eq 1; then - patch_apply wined3d-DXTn/0001-wined3d-add-DXTn-support.patch - ( - printf '%s\n' '+ { "Christian Costa", "wined3d: Add DXTn support.", 1 },'; - ) >> "$patchlist" -fi - # Patchset wined3d-Dual_Source_Blending # | # | Modified files: