mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-04 13:07:32 +00:00
The hmd2s sweep left 81 libSceHmd2 exports that answer 0x8a720008 to all-null arguments but something else to zeroed buffers. A second probe called each of them six times before sceHmd2Initialize, every argument pointing at a zeroed 16 KiB buffer except one, to find which arguments are the checked pointers. 62 exports answer 0x8a720008 exactly when one of a fixed set of arguments is null and their all-present code otherwise: 48 check the first argument, 10 the second, 6 the first two, 2 the first and third, 2 all six. They are bound here, by NID, to 18 handlers with that many pointer parameters, each returning ParameterNull for a null checked pointer and otherwise the measured code (0x8a720004 for 20 of them, 0 for 11, 0x8a721002 for 10, -1 for 5, 0x8a720009 for 7, 0x8a72002c for 3, and 0x8a720003, 0x8a721003, 0x8a721010 and 0x800d0203 for the rest) while the library is not initialized, throwing if sceHmd2Initialize ever succeeds. Left out: 7 exports that write output and 12 whose first argument is a handle or slot number rather than a pointer. The debt entries list every NID with its aerolib name where one exists. Co-Authored-By: Claude Fable 5.1 <[email protected]>