Browse Source

DMA Pusher: Fix regression caused by guest memory optimizations

nce_cpp
Fernando Sahmkow 2 years ago
parent
commit
8208becc49
  1. 8
      src/video_core/dma_pusher.cpp

8
src/video_core/dma_pusher.cpp

@ -83,6 +83,14 @@ bool DmaPusher::Step() {
dma_state.dma_get, command_list_header.size * sizeof(u32)); dma_state.dma_get, command_list_header.size * sizeof(u32));
} }
} }
if (Settings::IsGPULevelHigh() && dma_state.method < MacroRegistersStart) {
Core::Memory::GpuGuestMemory<Tegra::CommandHeader,
Core::Memory::GuestMemoryFlags::SafeRead>
headers(memory_manager, dma_state.dma_get, command_list_header.size,
&command_headers);
ProcessCommands(headers);
return true;
}
Core::Memory::GpuGuestMemory<Tegra::CommandHeader, Core::Memory::GpuGuestMemory<Tegra::CommandHeader,
Core::Memory::GuestMemoryFlags::UnsafeRead> Core::Memory::GuestMemoryFlags::UnsafeRead>
headers(memory_manager, dma_state.dma_get, command_list_header.size, &command_headers); headers(memory_manager, dma_state.dma_get, command_list_header.size, &command_headers);

Loading…
Cancel
Save