Skip to content

include: add VideoOut declarations used by homebrew presentation - #73

Closed
mihawk-99 wants to merge 1 commit into
ps5-payload-dev:masterfrom
mihawk-99:add-videoout-header
Closed

mihawk-99 wants to merge 1 commit into
ps5-payload-dev:masterfrom
mihawk-99:add-videoout-header

Conversation

@mihawk-99

Copy link
Copy Markdown
Contributor

My Vulkan and RetroArch presentation paths use VideoOut functions whose link stubs are already in this SDK, but whose declarations have to be repeated in each project. This adds <ps5/videoout.h> with the 12 functions and supporting buffer record/constants used by those paths.

The declarations are extracted from the shared downstream header. They cover opening and closing the output, registering buffers, flip submission/status, vblank waits, and output configuration. Attribute storage and flip status remain opaque rather than assigning unverified meanings to every field. The high-frame-rate selector still requires title and display support.

This is a header-only contribution. It introduces no new stub exports and is installed by the existing header installation rule.

Validation

Compiled as both C11 and C++11 for the PS5 target with Clang 23.1.1 and -Wall -Wextra -Werror. Checked the buffer record's 32-byte size and metadata offset of eight bytes, the 80-byte attribute-storage constant, and the 128-byte status-storage constant. These checks match the existing downstream layout.

A test object references every function address. All 12 names remain unmangled in C++, match the existing libSceVideoOut stub, and link through the normal SDK wrapper.

Draft: no fresh presentation run was performed for this extraction. The declarations reflect the existing homebrew implementation, not a claim that every signature, reserved argument, or display mode has been independently validated across firmware. I would like review of the API names and opaque-record conventions before making this a stable SDK interface.

Refs #70.

@john-tornblom

Copy link
Copy Markdown
Contributor

See comment about separate repo for this: #71 (comment)

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants