Commit Graph
66 Commits
Author SHA1 Message Date
Yunus Shaikh 239de166eb Merge main into feat/libscesystemservice-absent-features
# Conflicts:
#	core/libs/prx/libSceSystemService/PendingExports.cpp
2026-10-22 00:01:31 -07:00
Yossi Yadgar f0d0bcafb5 docs(debt): note why no background music is reported 2026-10-22 08:25:55 +03:00
Yunus Shaikh f51064dbee fix(libSceSystemService): leave unmeasured suspend blocks and other users unimplemented
A null reason, an unblock with no block left and an eye-to-eye query for a user other than the logged-in one now go through NotImplemented_nid_no_patch instead of throwing invented errors, since the console's answers to them are not measured.
2026-10-21 20:53:37 -07:00
Yunus Shaikh 4a815a8bf5 feat(libSceSystemService): report no disc drive, USB storage, app move or PS2 emulator
AnyPS5 runs the title from its folder as /app0 and models none of these:
libSceDiscId and sceKernelHwGetBdDriveInfo throw, every libSceUsbStorage
device call throws, sceShellCoreUtilDeclareBeginOfExternalStorageAppMove
throws, and sceSystemServiceAddLocalProcessForPs2Emu throws, so the
running process is always the title's own PS5 executable.

sceSystemStateMgrIsBdDriveReady, sceShellCoreUtilIsUsbMassStorageMounted
and sceShellCoreUtilIsExternalStorageAppMoveInProgress return false, and
sceLncUtilIsPs2Emu writes false. A null output to sceLncUtilIsPs2Emu
throws, since no sceLncUtil function in the tree answers one.
2026-10-22 02:38:17 +00:00
Yunus Shaikh 81fd4e5dda feat(libSceSystemService): report the absent shell UI and PS VR
AnyPS5 has no shell UI: sceSystemServiceGetStatus never reports a system
UI overlay or background execution, and the host has no auto power-off
timer. The shell UI therefore never takes the foreground, overlays the
impose screen, runs a screen saver or shuts down, and those queries
return false.

libSceHmd detects no headset, so there is no PS VR social screen and the
logged-in user's eye-to-eye distance was never adjusted. Another user ID
throws, since the console's error for it is not measured.

The sceSystemService twins forward to their sceShellCoreUtil and
sceLncUtil targets. sceSystemServiceIsEyeToEyeDistanceAdjusted returns
SYSTEM_SERVICE_ERROR_PARAMETER for a null output before forwarding, as
its neighbours do, and the sceShellCoreUtil forms throw for one.
2026-10-22 02:38:17 +00:00
Yunus Shaikh a2e9ffd89c feat(libSceSystemService): report no Remote Play, Share Play or broadcast
The status queries answer from what the tree already reports for these
services: libSceRemoteplay's connection status is DISCONNECT,
libSceSharePlay has neither a host nor a visitor, and
libSceGameLiveStreaming's status has isOnAir false. The ShellCore
setters that would change these answers throw.

sceSystemServiceGetRemoteplayStatus and
sceSystemServiceIsGameLiveStreamingOnAir forward to their
sceShellCoreUtil twins. sceSystemServiceGetRemoteplayStatus returns
SYSTEM_SERVICE_ERROR_PARAMETER for a null output before forwarding, as
sceSystemServiceGetNoticeScreenSkipFlag does. No sceShellCoreUtil
function in the tree answers a null output, so the sceShellCoreUtil
forms throw for one.
2026-10-22 02:38:17 +00:00
Yunus Shaikh 2cfa852a40 feat(libSceSystemService): answer suspend blocks and notifications
AnyPS5 never suspends the running title: sceSystemServiceGetStatus never
reports background execution and sceSystemServiceReceiveEvent has no
event to deliver. Enabling or disabling the suspend notification, and
blocking or unblocking a suspend, therefore change nothing and return
success. The sceSystemService notification calls forward to their
sceLncUtil twins.

A null reason and an unblock with no block left throw, since the
console's answers to them are not measured.

The new guest_system_service_status tests check each answer.
2026-10-22 01:37:59 +00:00
boykopovar 2f678e9046 docs: record retained activation and pad no-op behavior 2026-10-21 21:56:06 +03:00
boykopovar b35e344585 fix(systemservice): restore browser launch signature and validation 2026-10-21 21:54:54 +03:00
boykopovar 991efec086 fix(systemservice): restore tournament and daemon argument slots 2026-10-21 21:53:08 +03:00
boykopovar b167045830 fix(systemservice): recover activation handles and device argument types 2026-10-21 21:49:56 +03:00
boykopovar 50c8103af2 fix(systemservice): recover launch and process status structures 2026-10-21 21:49:56 +03:00
boykopovar 67ff7609c2 fix(systemservice): define application message payload layout 2026-10-21 21:49:55 +03:00
boykopovar 1db52e3e40 fix(systemservice): reject unsupported integer parameters 2026-10-21 21:49:54 +03:00
boykopovar 9e94b0cb71 fix(systemservice): define launch and microphone status layouts 2026-10-21 21:49:54 +03:00
boykopovar 28fdabd59c fix(systemservice): restore float progress returns and clock arguments 2026-10-21 21:49:53 +03:00
boykopovar 9b8c8e51d5 fix(usbstorage): restore mapping callbacks and system service aliases 2026-10-21 21:49:52 +03:00
boykopovar 4e9520a9db fix(systemservice): restore state manager and modal arguments 2026-10-21 21:49:52 +03:00
boykopovar 32b7c50240 fix(systemservice): restore process control and telemetry arguments 2026-10-21 21:49:51 +03:00
boykopovar d4f2911b74 fix(systemservice): restore collapsed launcher dispatch arguments 2026-10-21 21:49:51 +03:00
boykopovar c9c8675b1d fix(systemservice): restore assembly alias signatures 2026-10-21 21:49:50 +03:00
boykopovar 46e9270dc4 fix(systemservice): restore public query payload signatures 2026-10-21 21:49:50 +03:00
boykopovar 2386ab8e84 fix(systemservice): restore activation handles and process signatures 2026-10-21 21:49:49 +03:00
boykopovar 797fb303c5 fix(systemservice): restore error dialog layout and event arguments 2026-10-21 21:49:45 +03:00
boykopovar a1e95b92ed fix(systemservice): restore shell state setter arguments 2026-10-21 21:49:44 +03:00
boykopovar c1843d1350 fix(systemservice): restore notification and error report arguments 2026-10-21 21:49:44 +03:00
boykopovar 315c4b65a1 fix(systemservice): restore shell navigation and mount arguments 2026-10-21 21:49:43 +03:00
boykopovar d34675bb21 fix(systemservice): restore telemetry and user query signatures 2026-10-21 21:49:42 +03:00
boykopovar 8b48df0b92 fix(systemservice): restore account and display query arguments 2026-10-21 21:49:41 +03:00
boykopovar 0d911b3aec fix(systemservice): restore storage and hid query signatures 2026-10-21 21:49:41 +03:00
boykopovar c13664d573 fix(systemservice): restore shell query outputs and string buffers 2026-10-21 21:49:40 +03:00
boykopovar 0cdc168bc3 fix(systemservice): restore shell application data signatures 2026-10-21 21:49:39 +03:00
boykopovar bad5fb14a2 fix(systemservice): restore launcher lifecycle arguments 2026-10-21 21:49:39 +03:00
boykopovar 85b972ee40 fix(systemservice): restore launcher query output types 2026-10-21 21:49:38 +03:00
boykopovar 1c2ed0446c fix(systemservice): restore launcher process and status signatures 2026-10-21 21:49:38 +03:00
boykopovar ef071a8a63 fix(systemservice): restore app messaging signatures 2026-10-21 21:49:37 +03:00
Dean 2d5b705331 Merge pull request #8734 from orezraey/fix/systemservice-param-string-measured-ps5
fix(libSceSystemService): answer sceSystemServiceParamGetString's errors and padding as measured on a PS5
2026-10-21 19:52:41 +13:00
Dean 0aa55ef293 Merge pull request #8430 from shanu337/fix/systemservice-tournament-stub
fix(libSceSystemService): stub sceSystemServiceOpenTournamentOccurrence
2026-10-21 19:25:03 +13:00
Dean GalvinandFederico Marras 7924d09f00 Merge origin/main into PR 8524
Co-authored-by: Federico Marras <[email protected]>
2026-10-21 16:34:11 +13:00
Dean 31f0e34cb5 Merge pull request #8337 from KernelPanicNT/feat/systemservice-player-dialog-param
feat(libSceSystemService): fill the player dialog param as the console does
2026-10-21 16:33:32 +13:00
Dean a683688fe0 Merge pull request #8335 from ymatrix1/feat/systemservice-missing-exports
feat(libSceSystemService): export missing firmware system service interfaces
2026-10-21 16:07:01 +13:00
orezraeyandClaude Opus 5.5 4b8f05e3e1 fix(libSceSystemService): answer sceSystemServiceParamGetString's errors and padding as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 19:41:19 -03:00
Federico Marras 0bc9d64443 feat(libSceSystemService): end the running title through sceLncUtilKillApp and sceLncUtilKillAppWithReason 2026-10-20 17:06:08 +02:00
shanu337 df9b2fcdcc fix(libSceSystemService): stub sceSystemServiceOpenTournamentOccurrence 2026-10-20 18:13:31 +05:30
Yuri Olive 4721791b9c feat(libSceSystemService): export missing firmware interfaces 2026-10-20 07:10:56 -03:00
KernelPanicNT fe04a3c299 feat(libSceSystemService): fill the player dialog param as the console does 2026-10-20 09:44:57 +00:00
alosta 76bbf68f70 docs(debt): record the remaining stubs under Unknown function info
The debt entries only had the four index sections before; use Unknown
function info for the imports that fail a title to load and for the
signatures Orbital or the aerolib NID list do not give. Note that
sceSystemServiceShowDisplaySafeAreaSettings takes its (void) signature
from the sibling sceSystemServiceShowControllerSettings, not a reference.

AI-assisted: yes
2026-10-20 03:21:07 +01:00
alosta 2dc56f37c3 feat(libs): add unimplemented PS5 system library stubs and debt docs
Add boilerplate stubs for libSceAt9Enc, libSceAudiodecCpu, libSceAudiodecCpuHevag,
libSceM4aacEnc, libSceSulpha, libSceCamera, and libSceDepth2, each exporting its
known NIDs via NotImplemented_nid_no_patch. Include debt documentation with
sysmodule IDs and (where available) orbital-derived signatures.

Add sceSystemServiceShowDisplaySafeAreaSettings as a silent success stub and
document it under Silent stubs.

AI-assisted: yes
2026-10-20 03:21:07 +01:00
Adrià ad61cafde0 Merge pull request #7821 from xdCloudy/feat/ps5-system-services-exports
feat(libs): declare system service import stubs for OS 3.20 compatibility
2026-10-20 04:12:34 +02:00
Adrià ebb478c055 Merge pull request #6939 from milescoviello/fix/systemservice-psmkit-exports
fix(libSceSystemService): declare the PsmKit local process exports
2026-10-19 16:05:00 +02:00