From 42a0594122410e6bfc9e03a6916ed8fa7eaf529a Mon Sep 17 00:00:00 2001 From: squidbus <175574877+squidbus@users.noreply.github.com> Date: Wed, 23 Jul 2025 10:41:03 -0700 Subject: [PATCH 1/2] Fix sampler dirty flags. --- MarathonRecomp/gpu/video.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MarathonRecomp/gpu/video.cpp b/MarathonRecomp/gpu/video.cpp index 82b224404..deddba4c4 100644 --- a/MarathonRecomp/gpu/video.cpp +++ b/MarathonRecomp/gpu/video.cpp @@ -4278,7 +4278,7 @@ static void FlushRenderStateForMainThread(GuestDevice* device, LocalRenderComman for (uint32_t i = 0; i < 16; i++) { - const size_t mask = 0x1ull << (i + 32); + const size_t mask = 0x8000000000000000ull >> (i + 20); if (device->dirtyFlags[2].get() & mask) { auto& cmd = queue.enqueue(); From 19268890a69e742dc3b6a67d71ae0c59a0db165b Mon Sep 17 00:00:00 2001 From: squidbus <175574877+squidbus@users.noreply.github.com> Date: Wed, 23 Jul 2025 11:39:36 -0700 Subject: [PATCH 2/2] Fix bool constants dirty flag --- MarathonRecomp/gpu/video.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MarathonRecomp/gpu/video.cpp b/MarathonRecomp/gpu/video.cpp index deddba4c4..a9f534866 100644 --- a/MarathonRecomp/gpu/video.cpp +++ b/MarathonRecomp/gpu/video.cpp @@ -4266,7 +4266,7 @@ struct LocalRenderCommandQueue static void FlushRenderStateForMainThread(GuestDevice* device, LocalRenderCommandQueue& queue) { - constexpr size_t BOOL_MASK = 0x100000000000000ull; + constexpr size_t BOOL_MASK = 0x2ull; if ((device->dirtyFlags[3].get() & BOOL_MASK) != 0) { auto& cmd = queue.enqueue();