From 12aa94e1793ff4b06276b3a4908182be8fd0c7cc Mon Sep 17 00:00:00 2001 From: pineappleEA Date: Sat, 13 May 2023 03:36:12 +0200 Subject: [PATCH] early-access version 3587 --- README.md | 2 +- src/video_core/buffer_cache/buffer_cache.h | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3621707ff..eca486d9d 100755 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ yuzu emulator early access ============= -This is the source code for early-access 3585. +This is the source code for early-access 3587. ## Legal Notice diff --git a/src/video_core/buffer_cache/buffer_cache.h b/src/video_core/buffer_cache/buffer_cache.h index 4e160b6c4..8e83ba329 100755 --- a/src/video_core/buffer_cache/buffer_cache.h +++ b/src/video_core/buffer_cache/buffer_cache.h @@ -1657,7 +1657,10 @@ typename BufferCache

::Binding BufferCache

::StorageBufferBinding(GPUVAddr s const bool is_nvn_cbuf = cbuf_index == 0; // The NVN driver buffer (index 0) is known to pack the SSBO address followed by its size. if (is_nvn_cbuf) { - return gpu_memory->Read(ssbo_addr + 8); + const u32 ssbo_size = gpu_memory->Read(ssbo_addr + 8); + if (ssbo_size != 0) { + return ssbo_size; + } } // Other titles (notably Doom Eternal) may use STG/LDG on buffer addresses in custom defined // cbufs, which do not store the sizes adjacent to the addresses, so use the fully