Skip to content

feat(libSceVideoOut): implement sceVideoOutSetFlipMaster and sceVideoOutClearFlipMaster - #5239

Closed
ErenYeager1836 wants to merge 1 commit into
boykopovar:mainfrom
ErenYeager1836:carry/videoout-flipmaster
Closed

ErenYeager1836 wants to merge 1 commit into
boykopovar:mainfrom
ErenYeager1836:carry/videoout-flipmaster

Conversation

@ErenYeager1836

Copy link
Copy Markdown
Contributor

What

Carried from @screamm with author attribution preserved.

Implements flip master/slave tie management in libSceVideoOut:

  • Implements sceVideoOutSetFlipMaster(slave, master) and sceVideoOutClearFlipMaster(slave).
  • Validates port handles, rejecting invalid/closed handles with VIDEO_OUT_ERROR_INVALID_HANDLE, self-ties or nested master/slave ties with VIDEO_OUT_ERROR_UNSUPPORTED_OPERATION (0x8029001C), and pending flips with VIDEO_OUT_ERROR_RESOURCE_BUSY.
  • sceVideoOutClearFlipMaster removes established tie and throws if port has no master. Closing a slave drops the tie; closing a master with active slaves throws.
  • Updates docs/dev/debt/libSceVideoOut.md and replaces unparameterized stubs.

Tested

�ideo_out_flip_tests ( ests/Flip.cpp): exercises flipmaster mode, testing handle verification, busy and unsupported returns, slave closure tie release, and flip completion after tie clearing.

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 under Silent stubs in their library's technical debt file
  • 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
  • Unblocks: none
  • AI-assisted: yes

@github-actions github-actions Bot added build docs prx needs rebase Conflicts with main, rebase needed labels Oct 13, 2026
…OutClearFlipMaster

Implements flip master/slave tie management in libSceVideoOut:
- sceVideoOutSetFlipMaster(slave, master) validates port handles, rejecting
  invalid/closed handles with VIDEO_OUT_ERROR_INVALID_HANDLE, self-ties or
  nested master/slave hierarchies with VIDEO_OUT_ERROR_UNSUPPORTED_OPERATION
  (0x8029001C), and pending flips with VIDEO_OUT_ERROR_RESOURCE_BUSY.
- sceVideoOutClearFlipMaster(slave) removes established tie and throws if
  port has no master.
- Closing a slave drops the tie; closing a master with active slaves throws.
- Updates docs/dev/debt/libSceVideoOut.md and cleans up unparameterized stubs.

Carried from @screamm with author attribution preserved.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@ErenYeager1836
ErenYeager1836 force-pushed the carry/videoout-flipmaster branch from 213b3ea to 9f78a68 Compare October 13, 2026 16:08
@github-actions

Copy link
Copy Markdown

Progress report (0214069 → 9f78a68)

📈 System libraries: 88.2% (+0.05%, +2 implemented functions)

✅ 2 implemented
Library Name
libSceVideoOut sceVideoOutClearFlipMaster
libSceVideoOut sceVideoOutSetFlipMaster

@oneandonlydean

Copy link
Copy Markdown
Collaborator

Closing: no title is known to reach this. With the queue at 700+ open PRs, please hold off on new PRs that don't name a title needing the change until it's down. If a title stops on this on current main, reopen with the title ID and the log line.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build docs needs rebase Conflicts with main, rebase needed prx

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants