Repository navigation
feat(prx): unknown loader tripwires for TLOU - #338
Conversation
a840da8 to
371aaaf
Compare
Progress report (9651ec9 → 20cbc8e)📉 System libraries: 78.89% (-0.25%, +10 declared functions) 🆕 10 declared as stubs
|
|
Thanks for these. This needs a rebase: it conflicts with main in libSceHttp, libSceNpSessionSignaling, |
7d23ad3 to
813cfb0
Compare
|
Done, rebased: dropped rWSuTWY2JN0 and teiItL2boFw (on main), hPTXo3bICzI renumbered to sceHttpUnknown02, rMyh97BU5pY to sceNetUnknown01. Two findings while rebasing: GlelR9EEeck computes to the same NID as cbrtf (already implemented), so dropped as well. For 0hlfW1O4Aa4: Deathloop imports it from libSceAmpr (IMPORT_LIB index 48, verified from the ELF dynamic section), and TLOU only references that one NID out of Ampr's whole surface, so I removed it from libc here and kept it in #407's Ampr. libs rebuilt clean. |
|
Thanks for the rebase, and good catch on GlelR9EEeck being cbrtf. Three things in the new head:
Exporting them under these names also avoids the clash with #407, which uses |
|
Done all three: restored main's sceNpSessionSignalingGetConnectionStatus implementation and the seven TechnicalDebt lines; exported all ten NIDs under their recomputed real names as plain functions (no APS5_EXPORT, so nid_patcher resolves each to its NID with no duplicates — verified with a clean local libs build), with unknown signature TechnicalDebt lines. This also clears the sceHttpUnknown02/sceNetUnknown01 clash with #407. Also dropped the stray AudioIn hunk from this branch. |
|
Thanks, that covers all three: main's It needs one more rebase: #555 (now on main) added While rebasing, could you leave main's |
05d32e5 to
20cbc8e
Compare
|
Rebased onto current main, keeping both sides in libSceHttp/Export.cpp (#555's CreateRequest2 and friends plus sceHttpParseResponseHeader) and TechnicalDebt.md. Main's sceNpSessionSignalingGetConnectionStatus body is now byte-identical to main, and the blank line above sceHttpUnknown00 is restored — the Http and SessionSignaling diffs are purely additive now. libs builds and full ctest (221 tests) passes locally. |
|
Thanks. After the rebase the diff only adds code: main's Ready to merge from my side. When it lands, #407, #545 and #550 each need a one-line TechnicalDebt.md rebase, because they all append to the end of "Unknown function info" (#545 also appends to the end of |
What
Raw-NID exports for 14 loader unknowns hit while booting TLOU Part I (Net, libc, SystemService, Http, Http2, Voice, Trophy2, libkernel, SessionSignaling), following the Agc unknown precedent. Unknown names/signatures recorded in TechnicalDebt. Anything actually called throws with its name instead of failing the load with an unnamed import.
Tested
Windows 11, MinGW GCC 15.2.0. Verified all 14 NIDs present in the built .prx\ files. Full \ctest -E agc_driver_graphics|guest_rendering_wait: 93/93.
Checklist