Repository navigation
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Progress report (4f41f4c → 359051f)📉 System libraries: 26.62% (-0.02%, +27 declared functions) 🆕 27 declared as stubs
Changed libraries (implemented exports)
|
Contributor
Author
|
This is ready for review at AI-assisted: yes (Codex). |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Declare the 27 function exports of logical library
libSceAudioOut2(modulelibSceAudioOut) in the PS5 13.60 export inventory that are not yet exported, as throwing placeholders. The inventory has 138 records for this logical library;main(4f41f4c375) already exports the other 111, by name or by literal NID. 8 of the 27 are declared by name and 19 by literal NID alias:sceAudioOut2CustomHrtfIsExistFxe9sj++wAcsceAudioOut2Enable3DAudioForUserForCronosWbivTaBo+DosceAudioOut2EnableCinematicVrRotation9Vtt4RU9-YAsceAudioOut2EnableMonoHpOutputgUg2q4DIW7gsceAudioOut2EnableTVCorrectionvmgNwWTCPYcsceAudioOut2SetHearingAssisty8CNZsOqKTcsceAudioOut2SetSparkEQ5tnxDLdHpOMsceAudioOut2SetSpeakerInfoForCronosL9eGzD0FuEgtools/nid_names.py --name; all 8 hash exactly to the exported NID.sceAudioOut2SetSparkEQandsceAudioOut2EnableTVCorrectionwere proposed in feat(libSceAudioOut): declare 19 AudioOut2 exports by their hash-verified names #5119 (closed unmerged) and in the open ps5: add 65 hash-verified names zecoxao/sce_symbols#23.sceAudioOut2CustomHrtfIsExist,sceAudioOut2EnableCinematicVrRotationandsceAudioOut2EnableMonoHpOutputare thesceAudioOut2forms oflibSceAudioOutexports already declared onmain;sceAudioOut2Enable3DAudioForUserForCronosis the same forsceAudioOutEnable3DAudioForUserwith theForCronossuffix ofsceAudioOut2SetHrtfIdForCronos, andsceAudioOut2SetSpeakerInfoForCronosis that suffix onsceAudioOut2SetSpeakerInfo.sceAudioOut2SetHearingAssistisSetwith theHearingAssistof thesceUserService*HearingAssist*settings. They are declared as feat(libSceAudioOut): declare 11 additional exports #11918 declared this library's named exports: parameterlessintfunctions inInventoryExports.cpp.0E-UkHm+hZI,0rE3t9ZgyXE,7uryG3ZsXQU,9rWEssK8GMk,BDnwsIqujuQ,EeEaULhU2-g,ElgxuhkuY-k,GKzVK6pYgTk,NuGwMXbT8RU,QEcXEGqvnb4,aFxSMCVm5mQ,cRISiyyeyps,cYDvFPDrl6g,dDyfkQG1MPc,fcv6kkqIs1Y,g-JTbmmuf7M,mWypJWwaLcc,tylNHKM16GA,yd-81WQGSTw) have no known name.tools/nid_names.pyresolves none of them, and none matched when hashing these candidates: every whole token of the pinned and the latestaerolib.csv, itsps5_names.txtandunique.txt, the ps5rs catalog, the inventory's verified name map and the pinned public 3.20 catalogue; every SCE name in those sources and onmainre-prefixed assceAudioOut2,sceAudioOut2Lo,sceAudioOut2SysorsceAudioOut2Ipmi; every audio name there, onmainand in feat(libSceAudioOut): declare 19 AudioOut2 exports by their hash-verified names #5119 with itsGet/Set/Is/Reset/Enable/Disableand about 65 other verb counterparts and withEx,ForCronos,ForDiag,_and other suffixes; and the library's subsystem prefixes (Context,Port,LoContext,LoPort,User,Mbus,Mastering,SpeakerArrayand others) combined with those verbs, suffixes and every segment of those names (about 1.4 billion names in all). They use literal NID aliases (libSceAudioOutUnknown_<NID>_nid_no_patch) as in feat(libSceAudioOut): declare 33 callable exports #13223.Signatures and behavior are unverified; the parameterless
intdeclarations only resolve imports, and every body callsNotImplemented_nid_no_patch(__func__). None of the 27 is in the pinned public 3.20 catalogue. The firmware label is the inventory's, not an independent console measurement. No game unblock is claimed. The declarations follow #15347: a separate header (LaterExports.hpp) included fromlibSceAudioOut.hpp, separateextern "C"blocks inInventoryExports.cpp, and a debt entry listing every name and NID.Not changed here: nine of the
Unknownaliases #13223 added onmainhash to names proposed in #5119 (for example4Ac+2ezx1lYissceAudioOut2GetLoContextParam); renaming them is a separate change.Tested
libsand thelibSceAudioOuttest executables at this commit (on top ofmain4f41f4c375), then ran the 59 tests registered there bylibSceAudioOut's CMake (audio_out_*,audio_out2_*,guest_audio_out) pluspublic_headersthree times: all passed on every run, none skipped or failed.audio_out_independent_*,audio_out_same_port_closeandaudio_out_resamplingincluded) pluspublic_headers, three times: all passed on every run, none skipped or failed.libSceAudioOut.prxon both systems (objdump -pon Windows,nm -Don Linux).python3 tools/check_conventions.py --base origin/mainwith this title and description passed, andgit diff --checkis clean. Theconventions_unknown_nids,conventions_debt_length,conventions_doc_linksanddebt_splitctest entries, which test the checker itself, also passed in the runs above on both systems.tools/pr_overlap.py --branchfound no open pull request that changes the same exports, and failed closed on 4 older PRs that share a file with this branch and do not merge cleanly withmain: feat(aot): consolidate native ARM64 compiler, runtime and consumers #5021, feat(libSceVideoOut): opt-in host pause with a key or on focus loss #12863, fix(relinker): match AppContent utility import to provider #13486 and docs(debt): separate entries with blank lines and drop derived export totals #14212, which all changedocs/dev/debt/libSceAudioOut.md. By hand: none of their diffs contains any of the 27 NIDs, their alias spellings or the 8 names, and a merge preview of each with this branch gives the same conflicting files as withmainalone. A scan of the diffs of the open pull requests (1677 at review time, the newest 30 re-checked before opening) found none of them either.Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)🤖 Generated with Claude Code