Skip to content

feat(share): answer sceShareSetContentParamForApplicationTitle - #1544

Merged
adriadam10 merged 1 commit into
boykopovar:mainfrom
arvindfroi:feat/share-remaining-calls
Oct 9, 2026
Merged

adriadam10 merged 1 commit into
boykopovar:mainfrom
arvindfroi:feat/share-remaining-calls

Conversation

@arvindfroi

@arvindfroi arvindfroi commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

What

sceShareSetContentParamForApplicationTitle threw NotImplemented_nid_no_patch. It now follows KytyPS5 (NID ORspsWDXPps matches KytyPS5's table): a null title returns INVALID_PARAM (0x81960002) and any other title returns 0. Nothing is captured or shared, so the title has no effect. TechnicalDebt gains an entry for it.

Sonic Origins (PPSA05324) stops at this call. NahuelGenchi reports that it calls it about 50 s in and stops with sceShareSetContentParamForApplicationTitle not implemented, the message NotImplemented_nid_no_patch throws (blocker E in the bring-up thread, #2021; see the comment above). That run is main plus local workarounds for the title's earlier stops (shader image heap capacity, a copy of a registered shader header, depth/stencil clear draws), so on unmodified main those come first.

Narrowed at review: the first version of this PR also answered sceShareCaptureVideoClipExtended and gave libSceShare.native copies of libSceShare's bodies. No title reaches the first, and the copies in libSceShare.native are left out because #1538 builds native from libSceShare's sources instead. Both are removed, and the branch is rebased on main, which resolves the TechnicalDebt conflict.

Tested

macOS 27.0, Apple M3 Pro, Apple clang (arm64), Release. main does not build on macOS yet, so this commit was tested on main merged locally with the arm64 macOS libraries (mugurc#3), with a local change to the loader's link.h include that is not part of this PR.

  • guest_share (GuestShare.cpp against libSceShare) passes, including a title and a null title for the new call.
  • tools/check_conventions.py --base upstream/main passes.
  • tools/progress.py --compare: libSceShare gains 1 implemented function, sceShareSetContentParamForApplicationTitle.
  • Linux and Windows builds and ctest are left to CI; x86-64 binaries cannot run on this machine. No title tested.

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed in TechnicalDebt
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source
  • Generic behaviour, not specific to one title
  • Depends on: none
  • AI-assisted: yes (Claude Code, Claude Opus 5.5 and Claude Sonnet 5.5)

🤖 Generated with Claude Code

@github-actions

github-actions Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

Progress report (d70b899 → eb1d558)

📈 System libraries: 84.72% (+0.03%, +1 implemented functions)

✅ 1 implemented
Library Name
libSceShare sceShareSetContentParamForApplicationTitle

@github-actions github-actions Bot added docs prx and removed needs rebase Conflicts with main, rebase needed labels Oct 8, 2026
@github-actions

github-actions Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.

Pull request Conflicting files (lines on main) Same exports Same new files
#1583 docs/dev/TechnicalDebt.md L159
#1638 docs/dev/TechnicalDebt.md L159

@NahuelGenchi

Copy link
Copy Markdown
Contributor

A title that calls this: Sonic Origins (PPSA05324) calls sceShareSetContentParamForApplicationTitle about 50 s in (on main plus local workarounds for its earlier stops), and stops there with not implemented on main.

Bring-up thread: #2021

@github-actions github-actions Bot added the needs rebase Conflicts with main, rebase needed label Oct 9, 2026
@oneandonlydean

Copy link
Copy Markdown
Collaborator

Please narrow this to sceShareSetContentParamForApplicationTitle, which PPSA05324 stops at on main (NahuelGenchi's comment above), and rebase; it conflicts with main in TechnicalDebt now. No title reaches sceShareCaptureVideoClipExtended, and the libSceShare.native bodies copy libSceShare's; #1538 builds native from the same source instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@arvindfroi
arvindfroi force-pushed the feat/share-remaining-calls branch from f20fcad to eb1d558 Compare October 9, 2026 12:40
@arvindfroi arvindfroi changed the title feat(share): answer the remaining libSceShare and libSceShare.native calls feat(share): answer sceShareSetContentParamForApplicationTitle Oct 9, 2026
@github-actions github-actions Bot removed the needs rebase Conflicts with main, rebase needed label Oct 9, 2026
@popcoder565

Copy link
Copy Markdown
Contributor

Native Windows run, since no Windows results were posted. Setup: Windows 10 (19045), MinGW-w64 GCC 15.2.0 (WinLibs r7), Release. Head eb1d558f, merged onto main d70b899 in one build with 38 other PRs that had no Windows run.

No title was run.

🤖 Addressed by Claude Code

@adriadam10

Copy link
Copy Markdown
Collaborator

Checked against KytyPS5 libShare.cpp (ShareSetContentParamForApplicationTitle, same NID): null title returns INVALID_PARAM, anything else 0. Full ctest green locally (523/523), guest_share fails without the change and passes with it, the TechnicalDebt line is in "Unknown function info". The narrowing Dean asked for is done; merging.

@adriadam10
adriadam10 merged commit 00159cf into boykopovar:main Oct 9, 2026
8 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants