From d0bfbabe42f8323ce37dafe58994b778ab290d5c Mon Sep 17 00:00:00 2001 From: MaranBr Date: Tue, 19 Aug 2025 14:45:17 -0400 Subject: [PATCH] Add safe_reads to only Extreme accuracy --- src/video_core/dma_pusher.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/video_core/dma_pusher.cpp b/src/video_core/dma_pusher.cpp index 8e4ca6acd5..159011039d 100644 --- a/src/video_core/dma_pusher.cpp +++ b/src/video_core/dma_pusher.cpp @@ -85,6 +85,7 @@ bool DmaPusher::Step() { dma_state.dma_get, command_list_header.size * sizeof(u32)); } } + const auto safe_process = [&] { Tegra::Memory::GpuGuestMemory @@ -92,6 +93,7 @@ bool DmaPusher::Step() { &command_headers); ProcessCommands(headers); }; + const auto unsafe_process = [&] { Tegra::Memory::GpuGuestMemory @@ -99,7 +101,10 @@ bool DmaPusher::Step() { &command_headers); ProcessCommands(headers); }; - if (Settings::IsGPULevelHigh()) { + + if (Settings::IsGPULevelExtreme()) { + safe_process(); + } else if (Settings::IsGPULevelHigh()) { if (dma_state.method >= MacroRegistersStart) { unsafe_process(); } else {