mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-06-16 07:33:14 +00:00
Emulate memory behavior of libSceGnmDriver initialization (#2807)
* Emulate memory behavior of libSceGnmDriver _DT_INIT Due to the unique way some games check for sceKernelAllocateDirectMemory failures, emulating this properly is necessary. * Clang * Fix address input for direct memory call * Fix bug with DirectQueryAvailable Missed this in my prior PR. * DirectQueryAvailable fix Fixes error cases to be more hardware accurate.
This commit is contained in:
parent
23c616c647
commit
0feb2e7211
4 changed files with 16 additions and 10 deletions
|
@ -655,7 +655,7 @@ int MemoryManager::DirectQueryAvailable(PAddr search_start, PAddr search_end, si
|
|||
|
||||
if (dmem_area->second.GetEnd() > search_end) {
|
||||
// We need to trim remaining_size to ignore addresses beyond search_end
|
||||
remaining_size = remaining_size > (search_start - dmem_area->second.base)
|
||||
remaining_size = remaining_size > (dmem_area->second.GetEnd() - search_end)
|
||||
? remaining_size - (dmem_area->second.GetEnd() - search_end)
|
||||
: 0;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue