diff options
author | Stelios Tsampas | 2024-06-06 16:13:14 +0300 |
---|---|---|
committer | Stelios Tsampas | 2024-06-06 16:13:14 +0300 |
commit | 1c2a3eb7520300c1070709c92bfcab7f9bdb6f17 (patch) | |
tree | 7f3933b9fd924bfcde59b18cf2ee286c8ab4e373 | |
parent | ccd7aa0abbab33cecbe7f6646cbeff3fc849cad7 (diff) | |
download | aur-1c2a3eb7520300c1070709c92bfcab7f9bdb6f17.tar.gz |
wine-ge-custom: Backport FSR fixes
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | 0001-fshack-fix-image-corruption-on-ANV-and-HD-Graphics-6.patch | 34 | ||||
-rw-r--r-- | 0002-fshack-mark-monitor-mode-structs-and-fsr-ratio-float.patch | 35 | ||||
-rw-r--r-- | PKGBUILD | 8 |
4 files changed, 81 insertions, 2 deletions
@@ -1,7 +1,7 @@ pkgbase = wine-ge-custom pkgdesc = A compatibility layer for running Windows programs - GloriousEggroll branch pkgver = GE.Proton8.26 - pkgrel = 3 + pkgrel = 4 epoch = 1 url = https://github.com/GloriousEggroll/wine-ge-custom install = wine.install @@ -121,6 +121,8 @@ pkgbase = wine-ge-custom source = wine-ge-custom::git+https://github.com/GloriousEggroll/wine-ge-custom.git#commit=21f5f463cb761b94bcd00553f924f55516389f5b source = 30-win32-aliases.conf source = wine-binfmt.conf + source = 0001-fshack-fix-image-corruption-on-ANV-and-HD-Graphics-6.patch + source = 0002-fshack-mark-monitor-mode-structs-and-fsr-ratio-float.patch source = wine-wmclass.patch source = wine-isolate_home.patch validpgpkeys = 5AC1A08B03BD7A313E0A955AF5E6E9EEB9461DD7 @@ -128,6 +130,8 @@ pkgbase = wine-ge-custom sha512sums = f136761fc72ce7abcda5ed195c6757db6a3fe0b028c657a588f95aa503bb4528504342b61d93aa3b56c9d3b282c400cdb63b09bbc57e811494de87f7a8695558 sha512sums = 6e54ece7ec7022b3c9d94ad64bdf1017338da16c618966e8baf398e6f18f80f7b0576edf1d1da47ed77b96d577e4cbb2bb0156b0b11c183a0accf22654b0a2bb sha512sums = bdde7ae015d8a98ba55e84b86dc05aca1d4f8de85be7e4bd6187054bfe4ac83b5a20538945b63fb073caab78022141e9545685e4e3698c97ff173cf30859e285 + sha512sums = 8d760b5b98d251638a397554405acd665df9926b3691afac96edc01442a571b626e463e66ce1cf0629f7a590c2178ea3ea8e749ab6f9840ae527831d76229ae5 + sha512sums = 2e337093ff4d8065e51f9329b7008ebf797a32a1dee2755fbe723a24563437a7bca6664ad5f107c3c174a678332a87225b2a36f0d8fcbf72a8f15902095923b3 sha512sums = 30437d8ee92c5741fa50a7fe346ccfc48ba809dad0d740903a05a67781d23ea38a5094038a070a253e3fdd8046783b46a5420df6361bdd30cb229d3d88107569 sha512sums = 3dcdbd523fcbe79b9e9e9b026b9d0a5edf296514c7b48bd465d2dc05a8ca08e23ba8817e2de08edfe52286a2a2f81db42b65f71254cabe496752b9d45131d282 diff --git a/0001-fshack-fix-image-corruption-on-ANV-and-HD-Graphics-6.patch b/0001-fshack-fix-image-corruption-on-ANV-and-HD-Graphics-6.patch new file mode 100644 index 000000000000..4ad3613d3f89 --- /dev/null +++ b/0001-fshack-fix-image-corruption-on-ANV-and-HD-Graphics-6.patch @@ -0,0 +1,34 @@ +From 5912f5762f386007c7f83edf9b02fd4f6ea0ba9c Mon Sep 17 00:00:00 2001 +From: Stelios Tsampas <loathingkernel@gmail.com> +Date: Sat, 1 Jun 2024 13:02:24 +0300 +Subject: [PATCH 1/2] fshack: fix image corruption on ANV and HD Graphics 630 + +--- + dlls/winevulkan/vulkan.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/dlls/winevulkan/vulkan.c b/dlls/winevulkan/vulkan.c +index fe2816f96e9..0d69c00ebfb 100644 +--- a/dlls/winevulkan/vulkan.c ++++ b/dlls/winevulkan/vulkan.c +@@ -2511,6 +2511,8 @@ static VkResult init_fs_hack_images(struct wine_device *device, struct wine_swap + + if (createinfo->flags & VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR) + imageInfo.flags |= VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT | VK_IMAGE_CREATE_EXTENDED_USAGE_BIT; ++ else if (createinfo->imageFormat != VK_FORMAT_B8G8R8A8_SRGB) ++ imageInfo.flags |= VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT; + + res = device->funcs.p_vkCreateImage(device->device, &imageInfo, NULL, &hack->user_image); + if (res != VK_SUCCESS) +@@ -4012,7 +4014,7 @@ static VkResult record_compute_cmd(struct wine_device *device, struct wine_swapc + /* vec2: blit dst extents in real coords */ + constants[2] = swapchain->blit_dst.extent.width; + constants[3] = swapchain->blit_dst.extent.height; +- ++ + bind_pipeline(device, hack->cmd, &swapchain->blit_pipeline, hack->descriptor_set, constants); + + /* local sizes in shader are 8 */ +-- +2.45.2 + diff --git a/0002-fshack-mark-monitor-mode-structs-and-fsr-ratio-float.patch b/0002-fshack-mark-monitor-mode-structs-and-fsr-ratio-float.patch new file mode 100644 index 000000000000..8604425afc59 --- /dev/null +++ b/0002-fshack-mark-monitor-mode-structs-and-fsr-ratio-float.patch @@ -0,0 +1,35 @@ +From 8faeee4d2a73b52f5ef16b059e4e666976c7079d Mon Sep 17 00:00:00 2001 +From: Stelios Tsampas <loathingkernel@gmail.com> +Date: Sat, 1 Jun 2024 18:59:02 +0300 +Subject: [PATCH 2/2] fshack: mark monitor mode structs and fsr ratio floats as + const + +--- + dlls/winex11.drv/fs.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/dlls/winex11.drv/fs.c b/dlls/winex11.drv/fs.c +index b4c93b555c3..d5825e38456 100644 +--- a/dlls/winex11.drv/fs.c ++++ b/dlls/winex11.drv/fs.c +@@ -47,7 +47,7 @@ struct fs_monitor_size + SIZE size; + BOOL additional; + }; +-static struct fs_monitor_size fs_monitor_sizes_base[] = ++static const struct fs_monitor_size fs_monitor_sizes_base[] = + { + {{640, 480}}, /* 4:3 */ + {{800, 600}}, /* 4:3 */ +@@ -75,7 +75,7 @@ static struct fs_monitor_size fs_monitor_sizes_base[] = + }; + + /* The order should be in sync with the values in 'fs_hack_is_fsr_single_mode'*/ +-static float fsr_ratios[] = { ++static const float fsr_ratios[] = { + 2.0f, /* FSR Performance */ + 1.7f, /* FSR Balanced */ + 1.5f, /* FSR Quality */ +-- +2.45.2 + @@ -9,7 +9,7 @@ pkgname=wine-ge-custom _srctag=GE-Proton8-26 _commit=21f5f463cb761b94bcd00553f924f55516389f5b pkgver=${_srctag//-/.} -pkgrel=3 +pkgrel=4 epoch=1 _pkgbasever=${pkgver/rc/-rc} @@ -20,6 +20,8 @@ source=(wine-ge-custom::git+https://github.com/GloriousEggroll/wine-ge-custom.gi 30-win32-aliases.conf wine-binfmt.conf) source+=( + 0001-fshack-fix-image-corruption-on-ANV-and-HD-Graphics-6.patch + 0002-fshack-mark-monitor-mode-structs-and-fsr-ratio-float.patch wine-wmclass.patch wine-isolate_home.patch ) @@ -27,6 +29,8 @@ sha512sums=('f136761fc72ce7abcda5ed195c6757db6a3fe0b028c657a588f95aa503bb4528504 '6e54ece7ec7022b3c9d94ad64bdf1017338da16c618966e8baf398e6f18f80f7b0576edf1d1da47ed77b96d577e4cbb2bb0156b0b11c183a0accf22654b0a2bb' 'bdde7ae015d8a98ba55e84b86dc05aca1d4f8de85be7e4bd6187054bfe4ac83b5a20538945b63fb073caab78022141e9545685e4e3698c97ff173cf30859e285') sha512sums+=( + '8d760b5b98d251638a397554405acd665df9926b3691afac96edc01442a571b626e463e66ce1cf0629f7a590c2178ea3ea8e749ab6f9840ae527831d76229ae5' + '2e337093ff4d8065e51f9329b7008ebf797a32a1dee2755fbe723a24563437a7bca6664ad5f107c3c174a678332a87225b2a36f0d8fcbf72a8f15902095923b3' '30437d8ee92c5741fa50a7fe346ccfc48ba809dad0d740903a05a67781d23ea38a5094038a070a253e3fdd8046783b46a5420df6361bdd30cb229d3d88107569' '3dcdbd523fcbe79b9e9e9b026b9d0a5edf296514c7b48bd465d2dc05a8ca08e23ba8817e2de08edfe52286a2a2f81db42b65f71254cabe496752b9d45131d282' ) @@ -117,6 +121,8 @@ prepare() { git remote set-url origin https://github.com/gloriouseggroll/wine-ge-custom.git git submodule update --init --filter=tree:0 --recursive proton-wine pushd proton-wine + patch -p1 -i "$srcdir"/0001-fshack-fix-image-corruption-on-ANV-and-HD-Graphics-6.patch + patch -p1 -i "$srcdir"/0002-fshack-mark-monitor-mode-structs-and-fsr-ratio-float.patch patch -p1 -i "$srcdir"/wine-wmclass.patch patch -p1 -i "$srcdir"/wine-isolate_home.patch git config user.email "makepkg@aur.not" |