aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/memory_manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core/memory_manager.cpp')
-rw-r--r--src/video_core/memory_manager.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/video_core/memory_manager.cpp b/src/video_core/memory_manager.cpp
index a7d8aec382..ddfd2529fd 100644
--- a/src/video_core/memory_manager.cpp
+++ b/src/video_core/memory_manager.cpp
@@ -302,7 +302,7 @@ void MemoryManager::Write(GPUVAddr addr, T data) {
return;
}
// A Switch 2 sparse block nobody wrote yet gets its memory now.
- Tegra::Nx2BackSparseWrite(addr, sizeof(T));
+ Tegra::Nx2BackSparseWrite(addr, sizeof(T), &data);
if (auto page_pointer{GetPointer(addr)}; page_pointer) {
std::memcpy(page_pointer, &data, sizeof(T));
return;
@@ -469,7 +469,7 @@ void MemoryManager::ReadBlockUnsafe(GPUVAddr gpu_src_addr, void* dest_buffer, co
void MemoryManager::WriteBlockImpl(GPUVAddr gpu_dest_addr, const void* src_buffer, std::size_t size, [[maybe_unused]] VideoCommon::CacheType which, bool unsafe) {
// Give Switch 2 sparse pages the write lands on their memory first (otherwise it is dropped).
- Tegra::Nx2BackSparseWrite(gpu_dest_addr, size);
+ Tegra::Nx2BackSparseWrite(gpu_dest_addr, size, src_buffer);
auto just_advance = [&]([[maybe_unused]] std::size_t page_index, [[maybe_unused]] std::size_t offset, std::size_t copy_amount) {
src_buffer = static_cast<const u8*>(src_buffer) + copy_amount;
};