Commit Graph
28 Commits
Author SHA1 Message Date
boykopovar f38d29fd08 refactor(sdk): add canonical headers for remaining libraries 2026-10-24 23:17:42 +03:00
hypermist 4e6f90febe Merge remote-tracking branch 'upstream/main' into fix/np-session-signaling-lookups
# Conflicts:
#	core/libs/prx/libSceNpSessionSignaling/Export.cpp
#	docs/dev/debt/libSceNpSessionSignaling.md
2026-10-22 16:17:43 +13:00
boykopovar 9ff2cd1d18 fix(np): validate signaling context lifecycle and stale handles 2026-10-21 21:48:03 +03:00
boykopovar 5a0a494e12 fix(np): restore signaling connection query layouts 2026-10-21 21:48:02 +03:00
boykopovar c203dbb302 fix(np): restore signaling context callbacks and session arguments 2026-10-21 21:48:02 +03:00
boykopovar d004e7a6f9 fix(np): restore signaling initialization and peer lookup types 2026-10-21 21:48:01 +03:00
boykopovar 39cfd3e2ad fix(np): recover connection statistics output layout 2026-10-21 21:45:00 +03:00
boykopovar b078879d07 fix(np): recover session signaling query structures 2026-10-21 21:44:59 +03:00
boykopovar 6f1e594ceb fix(np): recover session signaling query argument lists
follow five exported dispatchers in the local system module. retain opaque payload pointers and document unresolved layouts instead of guessing their fields. throwing stub bodies remain unchanged.
2026-10-21 21:44:55 +03:00
hypermistandClaude Opus 5.5 9b4fe13a5b fix(libSceNpSessionSignaling): return the firmware lookup results
The group and connection lookups take the firmware signatures, reject a
null pointer with 0x80553303 and, because no session ever activates,
report the group (0x8055330A) or connection (0x8055330C) as not found,
whichever lookup the firmware performs first.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-20 23:02:34 +13:00
juanpimg 2f0ed638dc feat(prx): declare the missing PS5 3.20 system exports
AnyPS5 resolves a title's imports by NID, so a title that imports a system
function no library provides fails to load with an unresolved import. The
PS5 3.20 export inventory lists 193 such exports across 37 PS5 system
libraries AnyPS5 implements but does not provide.

Declare them as throwing stubs so those titles load and reach their next
blocker. Each declaration calls NotImplemented_nid_no_patch and returns 0;
none of them implements the function. Declarations with a credible
prototype use it and cite the source with a pinned commit, and the rest
are declared without parameters, which resolves the import without making
an ABI claim. The technical-debt files record the limitation per library.

libSceMbus and libSceSystemService are left out because pull request #7821
declares them. libSceAgc is left out because its exports are versioned, so
the 3.20 NID names a different symbol from the one AnyPS5 ships.
libSceAvPlayer.native is left out because it compiles libSceAvPlayer's
Export.cpp.

Names and NIDs come from the PS5 3.20 export inventory at
https://github.com/DNNDHH/PS5-3.20_Libs/tree/b2a77c09cd71c01f34c790cfbe98c751a13262ad
2026-10-19 23:16:55 +02:00
pushkarreddyy a276d2f718 feat(libs): declare missing RUDP and signaling imports for PPSA31327 2026-10-17 18:14:12 +05:30
p3nicillinandClaude Opus 5.5 3fa1fe34c9 feat(libSceNpSessionSignaling): answer connection status queries offline
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-12 22:05:23 +01:00
xXPBSXxandClaude Sonnet 5.5 a03afed4c3 fix(exports): export the calls PPSA07411 imports
PPSA07411 (Resident Evil 4) fails to load without these imports that no library exports. Their signatures are unknown, so they are declared without parameters and throw until they are implemented. Adds one test and a TechnicalDebt entry.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-11 18:35:00 +02:00
jdmagicandClaude Opus 5.5 9d2e4188ca feat(libs): provide the exports PPSA01289 imports that no library has
Sackboy: A Big Adventure (PPSA01289) imports nine functions that no library
exports, so eager binding fails before it starts.

- libSceVoiceChat: sceVoiceChatRequestLeaveVoiceChatGroup and
  sceVoiceChatRequestDeleteVoiceChatGroup, offline requests like the other
  sceVoiceChatRequest* calls
- libSceNpSessionSignaling: sceNpSessionSignalingGetConnectionFromPeerAddress,
  a throwing stub; the signature is unknown
- libSceCdlgG2P, a new library: the six sceG2PDialog* functions, throwing
  stubs declared without parameters

TechnicalDebt records the assumed and unknown signatures.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-09 02:42:57 -04:00
Claude 121d9332b5 build(libs): strip the MinGW static runtime flags once for all libraries
Every library CMakeLists.txt ended with the same block removing -static,
-static-libgcc and -static-libstdc++ from CMAKE_EXE_LINKER_FLAGS on MinGW,
because core/libs/CMakeLists.txt only removed them after adding the library
directories. Remove them before the libc and library directories are added
so each directory inherits the stripped flags, and drop the 52 copies.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_017pTZqAyVSZy2FZmaqakPHZ
2026-10-07 10:10:38 +00:00
Adrià FranchandClaude 5784515e13 fix(libs): use the referenced NGS2 handle and session signaling argument error codes
Co-Authored-By: Claude <[email protected]>
2026-10-06 14:39:02 +02:00
Celegans12andClaude Opus 5.5 1a88fe66a8 feat(npsessionsignaling): implement offline RequestPrepare and GetLocalNetInfo
Without network a signaling context is never prepared. Like
ActivateSession, ActivateUser and GetConnectionInfo,
sceNpSessionSignalingRequestPrepare returns 0x80552D06 (UNAVAILABLE)
and writes no request id. sceNpSessionSignalingGetLocalNetInfo no
longer throws: it returns 0x80552D06 and leaves the info unchanged, as
libSceNetCtl reports neither an address nor NAT info offline. A null
request id or info returns 0x80552D02, as a null context id does in
CreateContext2. GetConnectionStatus still throws.

The new guest_np_session_signaling test checks the error codes and
that failed calls leave the request id and info unchanged; it is
registered in a new libSceNpSessionSignaling CMakeLists.txt.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-05 17:51:44 +02:00
Pouare514 20cbc8e306 fix(prx): keep main's GetConnectionStatus body and Http blank line untouched 2026-10-05 02:18:52 +02:00
Pouare514 ac7bc704c3 fix(prx): export tripwire NIDs under recomputed real names, restore main's hunks 2026-10-05 02:13:22 +02:00
Pouare514 66a95ada20 feat(prx): unknown loader tripwires for TLOU 2026-10-05 02:12:32 +02:00
Pouare514 22dd013049 fix(libs): TLOU runtime funcs for SessionSignaling (activate user, peer address 2) 2026-10-04 16:29:47 +02:00
SP4C3B4R-8andClaude Opus 5.5 f2deb00fa4 feat(libs): declare missing AudioPropagation, AudioIn, NpSessionSignaling and dialog exports
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Bn7CrhG7pTPR6DT13tN6Me
2026-10-01 23:44:31 +02:00
MichonandClaude Opus 5.5 2b5f2d32d3 feat: export the AMPR command buffer waits and writes, sceAgcFuseShaderHalves, sceAgcSetSubmitMode, sceNpSessionSignalingCreateContext and sceNetEpollAbort
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-30 18:19:55 +02:00
devilismyfriendandClaude Fable 5.1 9c2a75601d feat(libs): agc packet builders, savedata memory, offline service stubs
- libSceAgc: SetIndexCount, SetBaseIndirectArgs, DispatchIndirect, wait
  and write-data patch functions, relaxed checks for what titles send,
  NOP fillers for LOD stats and wait-until-safe, NotImplemented stubs.
- libSceSaveData.native: short mount points, backup events, save-data
  memory slots.
- user/system service, store dialog, video-out flip modes and queue-full
  error, pad read, fibers, offline behaviour for network/NP modules, and
  new export-only modules Ampr, JpegEnc, Json2, MsgDialog.native,
  NpCppWebApi, NpUtility.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_0177gthrWEBBfBu5xJDXgBfo
2026-09-25 16:27:49 -07:00
boykopovar abc72da741 feat(libs): define vabi macros + add to declarations 2026-09-10 08:07:03 +03:00
boykopovar 6123893998 feat(libs): throw not impl ex in every stub 2026-09-06 15:05:04 +03:00
boykopovar 59bee8d187 feat(libs): add libs function signatures 2026-08-20 23:18:16 +03:00