mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-22 08:33:12 -05:00
2.8 KiB
2.8 KiB
libSceUserService technical debt
Unknown function info
- sceUserServiceGetNpAccountId (libSceUserService) - the account id for a user with no linked PSN account is assumed to be 0 with success; libSceNpManager's
sceNpGetAccountIdAanswers the same question withSCE_NP_ERROR_SIGNED_OUT - sceUserServiceInitialize, sceUserServiceTerminate (libSceUserService) - measured on a PS5 (firmware 13.60): before
sceUserServiceInitialize, and again aftersceUserServiceTerminate,sceUserServiceGetLoginUserIdList,sceUserServiceGetEventandsceUserServiceTerminatereturn0x80960002; a second initialization returns0x80960003, and a new initialization reports the login of the initial user again. The other calls were not measured before initialization and do not check it.sceUserServiceInitialize2was not measured: it initializes likesceUserServiceInitializeand returns success when already initialized - sceUserServiceGetUserColor (libSceUserService) - the default profile colour is assumed to be blue (0)
- sceUserServiceGetUserName (libSceUserService) -
0x80960105, which a PS5 (firmware 13.60) returns for a user id it does not know, has no known name; it isUSER_SERVICE_ERROR_UNKNOWN_USERhere. On the console a registered user who is not logged in still gets their name; here only the initial user exists - sceUserServiceGetAgeLevel (libSceUserService) - on a PS5 (firmware 13.60) the value is the age set in the user's parental restriction (0, 7, 12 and 15 were measured) and
0xFFFFFFFFwithout one; a user who is not logged in returns0x80960009with or without an output. Parental restrictions are not modelled, so the initial user is always reported as unrestricted. PPSA12544 (Unity) only stores the value for its user profile - sceUserServiceGetAccessibilityChatTranscription, PressAndHoldDelay, TriggerEffect, Vibration, ZoomEnabled, ZoomFollowFocus (libSceUserService) - report 0, 0, 1, 1, 0 and 1, what a PS5 (firmware 13.60) reports for a user whose accessibility settings are all at their defaults; the console reports the user's own settings (a changed vibration intensity read 3), which are not modelled. What each number means is unknown. A user who is not logged in returns
0x80960009with or without an output - sceUserServiceGetAccessibilityKeyremapEnable, sceUserServiceGetAccessibilityZoom (libSceUserService) - declared without parameters as throwing stubs calling
NotImplemented_nid_no_patch. Their signatures and values remain unverified on hardware