diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2021-07-13 03:33:08 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2021-07-13 03:49:47 +0200 |
commit | b780d5b5c580a65a670de73140b743072efc0fd2 (patch) | |
tree | ef6371d8107ab18932ac2514f3d498c62f1323e6 /src/video_core/engines | |
parent | Merge pull request #6597 from FernandoS27/accelerate-dma (diff) | |
download | yuzu-b780d5b5c580a65a670de73140b743072efc0fd2.tar yuzu-b780d5b5c580a65a670de73140b743072efc0fd2.tar.gz yuzu-b780d5b5c580a65a670de73140b743072efc0fd2.tar.bz2 yuzu-b780d5b5c580a65a670de73140b743072efc0fd2.tar.lz yuzu-b780d5b5c580a65a670de73140b743072efc0fd2.tar.xz yuzu-b780d5b5c580a65a670de73140b743072efc0fd2.tar.zst yuzu-b780d5b5c580a65a670de73140b743072efc0fd2.zip |
Diffstat (limited to 'src/video_core/engines')
-rw-r--r-- | src/video_core/engines/maxwell_dma.cpp | 6 | ||||
-rw-r--r-- | src/video_core/engines/maxwell_dma.h | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/video_core/engines/maxwell_dma.cpp b/src/video_core/engines/maxwell_dma.cpp index 24481952b..81becb88a 100644 --- a/src/video_core/engines/maxwell_dma.cpp +++ b/src/video_core/engines/maxwell_dma.cpp @@ -87,9 +87,11 @@ void MaxwellDMA::CopyPitchToPitch() { // TODO: allow multisized components. if (is_buffer_clear) { ASSERT(regs.remap_const.component_size_minus_one == 3); + accelerate.BufferClear(regs.offset_out, regs.line_length_in, regs.remap_consta_value); std::vector<u32> tmp_buffer(regs.line_length_in, regs.remap_consta_value); - memory_manager.WriteBlock(regs.offset_out, reinterpret_cast<u8*>(tmp_buffer.data()), - regs.line_length_in * sizeof(u32)); + memory_manager.WriteBlockUnsafe(regs.offset_out, + reinterpret_cast<u8*>(tmp_buffer.data()), + regs.line_length_in * sizeof(u32)); return; } UNIMPLEMENTED_IF(regs.launch_dma.remap_enable != 0); diff --git a/src/video_core/engines/maxwell_dma.h b/src/video_core/engines/maxwell_dma.h index 4ed0d0996..d3329b0f8 100644 --- a/src/video_core/engines/maxwell_dma.h +++ b/src/video_core/engines/maxwell_dma.h @@ -31,6 +31,8 @@ class AccelerateDMAInterface { public: /// Write the value to the register identified by method. virtual bool BufferCopy(GPUVAddr src_address, GPUVAddr dest_address, u64 amount) = 0; + + virtual bool BufferClear(GPUVAddr src_address, u64 amount, u32 value) = 0; }; /** |