Reenabled d3dx9_36-DXTn patchset

This commit is contained in:
Alistair Leslie-Hughes 2019-07-04 10:38:41 +10:00
parent ca8ae3e929
commit e1bfd97e2b
2 changed files with 82 additions and 49 deletions

View File

@ -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

View File

@ -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: