sharpemu/src
TarkusTK dce7c87c4d
[AGC] Implement the owner-scoped resource unregister exports (#469)
sceAgcDriverUnregisterOwnerAndResources (ZLJk9r2+2Aw) and
sceAgcDriverUnregisterAllResourcesForOwner (SCoAN5fYlUM) were
unresolved. We already register owners and resources, and the guest
registers a resource owner per streaming batch, so with no way to
release one the fixed owner pool filled up: sceAgcDriverRegisterOwner
started failing and the guest logged its own "Agc registerOwner error:
0x80020003", after which it kept half-registering records. Demon's Souls
then crashed scanning that registry.

Owner-scoped teardown is straightforward because RegisteredAgcResource
already carries its owner, so both entry points share one sweep over the
resource table. UnregisterOwnerAndResources additionally drops the owner
itself and its compute queue, and reports INVALID_ARGUMENT for an owner
that was never registered. The existing single-resource
sceAgcDriverUnregisterResource (pWLG7WOpVcw) is unchanged.

Both NIDs are checked against their export names by the SHEM004
analyzer, which fails the build on a mismatch.

Tested on Demon's Souls (PPSA01342): the registerOwner error no longer
appears and the registry stays consistent across streaming batches. 470
tests pass.
2026-07-20 15:43:47 +03:00
..
SharpEmu.CLI Add internal render resolution scale and fix DPI Issue (#468) 2026-07-20 14:37:20 +03:00
SharpEmu.Core memory: back the free pages of a partially-overlapping fixed mapping (#458) 2026-07-20 09:08:29 +03:00
SharpEmu.DebugClient Add live debugger frontend and mutex stall recovery (#383) 2026-07-17 22:41:07 -06:00
SharpEmu.Debugger Add live debugger frontend and mutex stall recovery (#383) 2026-07-17 22:41:07 -06:00
SharpEmu.GUI Add internal render resolution scale and fix DPI Issue (#468) 2026-07-20 14:37:20 +03:00
SharpEmu.HLE Fix NID BHouLQzh0X0, doubled StartupStaticTlsReservation memory. Both needed to launch GTA V. (#454) 2026-07-20 14:37:30 +03:00
SharpEmu.Libs [AGC] Implement the owner-scoped resource unregister exports (#469) 2026-07-20 15:43:47 +03:00
SharpEmu.Logging Reject undefined numeric LogLevel values (#390) 2026-07-18 15:47:19 +03:00
SharpEmu.ShaderCompiler Shader: lower VOP3P V_FMA_MIX_F32/LO/HI (was dropping Unity HDR shaders) (#466) 2026-07-20 14:37:40 +03:00
SharpEmu.ShaderCompiler.Metal [Gpu] Metal backend: complete IGuestGpuBackend implementation on AppKit + Metal (#283) 2026-07-18 20:32:00 +03:00
SharpEmu.ShaderCompiler.Vulkan Shader: lower VOP3P V_FMA_MIX_F32/LO/HI (was dropping Unity HDR shaders) (#466) 2026-07-20 14:37:40 +03:00
SharpEmu.SourceGenerators [SourceGenerators] Compile-time SysAbi export registry, analyzers, and build-generated aerolib.bin (#204) 2026-07-16 00:00:32 +03:00