From 3b7062d0c94fa8035648d2f39c798979e241a3a0 Mon Sep 17 00:00:00 2001
From: Htylol <dixperm909@yandex.ru>
Date: Sun, 28 Apr 2024 19:42:15 +0500
Subject: [PATCH] Drop lonely legacy dvxk and minor fixes

---
 data_from_portwine/scripts/functions_helper | 59 +++++++++------------
 data_from_portwine/scripts/start.sh         | 19 +++----
 2 files changed, 32 insertions(+), 46 deletions(-)

diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper
index a6b029bb..431804ec 100755
--- a/data_from_portwine/scripts/functions_helper
+++ b/data_from_portwine/scripts/functions_helper
@@ -171,7 +171,6 @@ check_process () {
 }
 export -f check_process
 
-
 try_download () {
     local filename="$(basename "$1")"
     local dest="$2"
@@ -1509,7 +1508,6 @@ pw_create_unique_exe () {
     fi
 }
 
-
 start_portwine () {
     WINEPREFIX="$(readlink -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}")"
     export WINEPREFIX
@@ -1917,8 +1915,8 @@ start_portwine () {
 
     unset CP_VKD3D_FILES CP_DXVK_FILES CP_D8VK_FILES CP_WINE_FILES PATH_TO_VKD3D_FILES PATH_TO_DXVK_FILES
     case "${PW_VULKAN_USE}" in
-        0)  # OPENGL
-            print_info "Use OpenGL"
+        0)  # WINED3D OPENGL
+            print_info "Use WINED3D OpenGL"
             export GL_YIELD="NOTHING"
             export mesa_glthread=true
             export WINE_D3D_CONFIG='renderer=gl'
@@ -1929,10 +1927,26 @@ start_portwine () {
             CP_WINE_FILES="d3d8 d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi d3d12 d3d12core"
             export WINE_D3D_CONFIG='renderer=vulkan'
             ;;
-        7)  # LEGACY DXVK
+        5)  # LEGACY DXVK AND DGVOODOO2
             print_info "DXVK v.${DXVK_LEGACY_VER} in use"
-            PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_LEGACY_VER}"
+            print_info "DGVOODOO2 v.${DGV2_VER} in use"
+            CP_WINE_FILES="d3d8 d3d12 d3d12core"
             CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi"
+            PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_LEGACY_VER}"
+            PATH_TO_DGV2_FILES="${PW_VULKAN_DIR}/dgvoodoo2-v${DGV2_VER}"
+            for DGV2_DLL in d3dimm ddraw glide glide2x glide3x ; do
+                try_copy_file "$PATH_TO_DGV2_FILES/x32/${DGV2_DLL}.dll" "${PATH_TO_GAME}"
+            done
+
+            if [[ ! -f "${PATH_TO_GAME}/dgVoodoo.conf" ]] ; then
+            echo "[General]
+OutputAPI                            = d3d11_fl11_0
+[Glide]
+3DfxWatermark                       = false
+[DirectX]
+dgVoodooWatermark                   = false" > "${PATH_TO_GAME}/dgVoodoo.conf"
+            fi
+            var_winedlloverride_update ddraw=n
             ;;
         1)  # STABLE DXVK AND VKD3D
             print_info "DXVK v.${DXVK_STABLE_VER} in use"
@@ -1944,8 +1958,7 @@ start_portwine () {
             CP_D8VK_FILES="d3d8"
             CP_WINE_FILES="d3d10_1 d3d10"
             ;;
-        2)
-            # NEWEST DXVK AND VKD3D
+        2)  # NEWEST DXVK AND VKD3D
             print_info "DXVK v.${DXVK_GIT_VER} in use"
             print_info "VKD3D-PROTON v.${VKD3D_GIT_VER} in use"
             PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_GIT_VER}"
@@ -2005,28 +2018,6 @@ start_portwine () {
                 export LIBGL_KOPPER_DRI2="1"
             fi
             ;;
-        5)  # DGVOODOO2 + LEGACY DXVK
-            print_info "DXVK v.${DXVK_LEGACY_VER} in use"
-            print_info "DGVOODOO2 ${DGV2_VER} in use"
-            CP_WINE_FILES="d3d8 d3d12 d3d12core"
-            CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi"
-            PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_LEGACY_VER}"
-            PATH_TO_DGV2_FILES="${PW_VULKAN_DIR}/dgvoodoo2-v${DGV2_VER}"
-            for DGV2_DLL in d3dimm ddraw glide glide2x glide3x ; do
-                try_copy_file "$PATH_TO_DGV2_FILES/x32/${DGV2_DLL}.dll" "${PATH_TO_GAME}"
-            done
-
-            if [[ ! -f "${PATH_TO_GAME}/dgVoodoo.conf" ]] ; then
-            echo "[General]
-OutputAPI                            = d3d11_fl11_0
-[Glide]
-3DfxWatermark                       = false
-3DfxSplashScreen                    = false
-[DirectX]
-dgVoodooWatermark                   = false" > "${PATH_TO_GAME}/dgVoodoo.conf"
-            fi
-            var_winedlloverride_update ddraw=n
-            ;;
     esac
 
     # force use dxgi.dll from wine
@@ -3622,21 +3613,19 @@ portwine_start_debug () {
     echo $(ldd --version | grep -m1 ldd | awk '{print $NF}') >> "${PORT_WINE_PATH}/PortProton.log"
     echo "--------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
     if [[ "${PW_VULKAN_USE}" = "0" ]] ; then
-        echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DX9-11 to OPENGL" >> "${PORT_WINE_PATH}/PortProton.log"
+        echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DirectX to wined3d opengl" >> "${PORT_WINE_PATH}/PortProton.log"
     elif [[ "${PW_VULKAN_USE}" = "1" ]] ; then
         echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_STABLE_VER} and VKD3D-PROTON v.${VKD3D_STABLE_VER}" >> "${PORT_WINE_PATH}/PortProton.log"
     elif [[ "${PW_VULKAN_USE}" = "2" ]] ; then
         echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_GIT_VER} and VKD3D-PROTON v.${VKD3D_GIT_VER}" >> "${PORT_WINE_PATH}/PortProton.log"
     elif [[ "${PW_VULKAN_USE}" = "3" ]] ; then
-        echo "PW_VULKAN_USE=${PW_VULKAN_USE} - native DX9 on MESA drivers" >> "${PORT_WINE_PATH}/PortProton.log"
+        echo "PW_VULKAN_USE=${PW_VULKAN_USE} - Native DX9 on MESA drivers" >> "${PORT_WINE_PATH}/PortProton.log"
     elif [[ "${PW_VULKAN_USE}" = "4" ]] ; then
         echo "PW_VULKAN_USE=${PW_VULKAN_USE} - OpenGL on MESA vulkan drivers" >> "${PORT_WINE_PATH}/PortProton.log"
     elif [[ "${PW_VULKAN_USE}" = "5" ]] ; then
-        echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DGVOODOO2 (Glide 3dfx, DirectX 1-7 wrapper)" >> "${PORT_WINE_PATH}/PortProton.log"
+        echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_LEGACY_VER} and DGVOODOO2 v.${DGV2_VER}" >> "${PORT_WINE_PATH}/PortProton.log"
     elif [[ "${PW_VULKAN_USE}" = "6" ]] ; then
         echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DirectX to wined3d vulkan" >> "${PORT_WINE_PATH}/PortProton.log"
-    elif [[ "${PW_VULKAN_USE}" = "7" ]] ; then
-        echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_LEGACY_VER}" >> "${PORT_WINE_PATH}/PortProton.log"
     else
         echo "PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_WINE_PATH}/PortProton.log"
     fi
diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh
index 892c3b2f..7581be27 100755
--- a/data_from_portwine/scripts/start.sh
+++ b/data_from_portwine/scripts/start.sh
@@ -348,21 +348,19 @@ popd 1>/dev/null || fatal
 check_nvidia_rtx && check_variables PW_VULKAN_USE "2"
 
 SORT_OPENGL="$(eval_gettext "OPENGL (For video cards without VULKAN)")"
-SORT_LEGACY="$(eval_gettext "Legacy") DXVK ${DXVK_LEGACY_VER} (Vulkan v1.1)"
+SORT_LEGACY="$(eval_gettext "Legacy") DXVK ${DXVK_LEGACY_VER}, DGVOODOO2 ${DGV2_VER} (Vulkan v1.1)"
 SORT_STABLE="$(eval_gettext "Stable") DXVK ${DXVK_STABLE_VER}, VKD3D ${VKD3D_STABLE_VER} (Vulkan v1.2)"
 SORT_NEWEST="$(eval_gettext "Newest") DXVK ${DXVK_GIT_VER}, VKD3D ${VKD3D_GIT_VER} (Vulkan v1.3)"
 SORT_G_NINE="$(eval_gettext "GALLIUM_NINE (DX9 for MESA)")"
 SORT_G_ZINK="$(eval_gettext "GALLIUM_ZINK (OpenGL for VULKAN)")"
-SORT_DGV2="$(eval_gettext "DGVOODOO2 (Glide 3dfx, DirectX 1-7 wrapper)")"
 
 case "${PW_VULKAN_USE}" in
-    0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_LEGACY!$SORT_STABLE!$SORT_NEWEST!$SORT_G_NINE!$SORT_G_ZINK!$SORT_DGV2" ;;
-    1) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_LEGACY!$SORT_OPENGL!$SORT_G_NINE!$SORT_G_ZINK!$SORT_DGV2" ;;
-    3) PW_DEFAULT_VULKAN_USE="$SORT_G_NINE!$SORT_LEGACY!$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL!$SORT_G_ZINK!$SORT_DGV2" ;;
-    4) PW_DEFAULT_VULKAN_USE="$SORT_G_ZINK!$SORT_LEGACY!$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL!$SORT_G_NINE!$SORT_DGV2" ;;
-    5) PW_DEFAULT_VULKAN_USE="$SORT_DGV2!$SORT_LEGACY!$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL!$SORT_G_NINE!$SORT_G_ZINK" ;;
-    7) PW_DEFAULT_VULKAN_USE="$SORT_LEGACY!$SORT_DGV2!$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL!$SORT_G_NINE!$SORT_G_ZINK" ;;
-    *) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_LEGACY!$SORT_OPENGL!$SORT_G_NINE!$SORT_G_ZINK!$SORT_DGV2" ;;
+    0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_NEWEST!$SORT_STABLE!$SORT_LEGACY!$SORT_G_ZINK!$SORT_G_NINE" ;;
+    1) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_LEGACY!$SORT_G_ZINK!$SORT_G_NINE!$SORT_OPENGL" ;;
+    5) PW_DEFAULT_VULKAN_USE="$SORT_LEGACY!$SORT_NEWEST!$SORT_STABLE!$SORT_G_ZINK!$SORT_G_NINE!$SORT_OPENGL" ;;
+    4) PW_DEFAULT_VULKAN_USE="$SORT_G_ZINK!$SORT_NEWEST!$SORT_STABLE!$SORT_LEGACY!$SORT_G_NINE!$SORT_OPENGL" ;;
+    3) PW_DEFAULT_VULKAN_USE="$SORT_G_NINE!$SORT_NEWEST!$SORT_STABLE!$SORT_LEGACY!$SORT_G_ZINK!$SORT_OPENGL" ;;
+    *) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_LEGACY!$SORT_G_ZINK!$SORT_G_NINE!$SORT_OPENGL" ;;
 esac
 
 if [[ ! -z "${PORTWINE_DB_FILE}" ]] ; then
@@ -601,12 +599,11 @@ fi
 
 case "${VULKAN_MOD}" in
     "$SORT_OPENGL" )     export PW_VULKAN_USE="0" ;;
-    "$SORT_LEGACY" )     export PW_VULKAN_USE="7" ;;
+    "$SORT_LEGACY" )     export PW_VULKAN_USE="5" ;;
     "$SORT_STABLE" )     export PW_VULKAN_USE="1" ;;
     "$SORT_NEWEST" )     export PW_VULKAN_USE="2" ;;
     "$SORT_G_NINE" )     export PW_VULKAN_USE="3" ;;
     "$SORT_G_ZINK" )     export PW_VULKAN_USE="4" ;;
-      "$SORT_DGV2" )     export PW_VULKAN_USE="5" ;;
 esac
 
 init_wine_ver