mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-29 12:15:39 +00:00
2.2 KiB
2.2 KiB
libSceGameUpdate technical debt
Silent stubs
- sceGameUpdateCreateRequest, sceGameUpdateCheck (libSceGameUpdate) - requests are kept in the module's 8 slots with ids from
0x20000000(a ninth returns0x80412806, an aborted request's Check0x80412807), as prosper reads the PS5 3.20libSceGameUpdate.sprx. Check never asks a patch service: it always answers no update (foundand the byte after it cleared, the rest of the result untouched, return 0), which is what the module returns when its service reports0x80412883; KytyPS5 also answers no update. What the service returns on an offline console is not measured. The answer only decides whether a title offers a patch. PPSA22408 aborted on the throw in sceGameUpdateCreateRequest at its title screen. Closes when: measured on a PS5
Functional
- libSceGameUpdate: initialization tracks host state but does not connect the patch service. Entitlement version lookup throws.
- sceGameUpdateCheck: option zero is supported for argument validation. The original additionally permits option one when a kernel platform predicate succeeds; that platform mode is not modeled. Three titles disassembled for this entry (PPSA01494 01.100.002 at 0x63f1982, PPSA30839 01.003.000 at 0x6bf0c92, PPSA31162 02.000.001 at 0x6a204e1) pass option zero: right after
sceGameUpdateCreateRequestthey fill both the parameter and the result with a 64-bitsizeof 0x30 and zeros after it. On a non-negative return they read onlyfound(PPSA01494 tests it for nonzero, the other two for 1), neveraddcont_foundorcontent_version; PPSA01494 and PPSA30839 then callsceGameUpdateDeleteRequestwhatever the result. - sceGameUpdateGetAddcontLatestVersion: the supplied module confirms a 20-byte entitlement-label input and a 48-byte service output. Null pointers are rejected before initialization is checked. There is no local output-size validation or blanket clearing of the output; the host leaves it untouched when the missing service causes an exception.