vitasdk
Documentation of the vitasdk

Exports for User. More...

Data Structures

struct  SceSharedFbInfo
 
struct  SceSharedFbCreate
 
struct  SceSharedFbRenderInfo
 Rendering information supplied by PAF during a shared-framebuffer handoff. More...
 

Functions

 VITASDK_BUILD_ASSERT_EQ (0x58, SceSharedFbInfo)
 
SceUID _sceSharedFbOpen (int index, int sysver)
 
int sceSharedFbClose (SceUID fb_id)
 
int sceSharedFbBegin (SceUID fb_id, SceSharedFbInfo *info)
 
int sceSharedFbEnd (SceUID fb_id)
 
int sceSharedFbGetInfo (SceUID fb_id, SceSharedFbInfo *info)
 
 VITASDK_BUILD_ASSERT_EQ (0x18, SceSharedFbCreate)
 
 VITASDK_BUILD_ASSERT_EQ (0x40, SceSharedFbRenderInfo)
 
SceUID sceSharedFbCreate (int index, const SceSharedFbCreate *create_param)
 Create a shared-framebuffer object.
 
int sceSharedFbGetShellRenderPort (void)
 Get the current shell render port.
 
int sceSharedFbUpdateProcess (void)
 Perform one process handoff after sceSharedFbUpdateProcessBegin.
 
int sceSharedFbUpdateProcessBegin (SceUID shared_fb_id, const SceSharedFbRenderInfo *render_info, SceUInt32 *update_count)
 Begin a shared-framebuffer update.
 
int sceSharedFbUpdateProcessEnd (void)
 Complete a process handoff sequence begun by sceSharedFbUpdateProcessBegin.
 

Variables

void * SceSharedFbInfo::fb_base
 
int SceSharedFbInfo::fb_size
 
void * SceSharedFbInfo::fb_base2
 
int SceSharedFbInfo::unk0 [6]
 
int SceSharedFbInfo::stride
 
int SceSharedFbInfo::width
 
int SceSharedFbInfo::height
 
int SceSharedFbInfo::unk1
 
int SceSharedFbInfo::index
 
int SceSharedFbInfo::unk2 [4]
 
int SceSharedFbInfo::vsync
 
int SceSharedFbInfo::unk3 [3]
 
SceSize SceSharedFbCreate::alloc_mem_size
 Size in bytes of the CDRAM allocation.
 
SceUInt32 SceSharedFbCreate::reserved0
 Stored in the object but otherwise ignored on FW 3.60.
 
SceUInt32 SceSharedFbCreate::reserved [4]
 Ignored on FW 3.60.
 
void * SceSharedFbRenderInfo::frame_buffer_base
 Base address of the selected color buffer.
 
SceUInt32 SceSharedFbRenderInfo::reserved04
 Set to 0 by PAF on FW 3.60.
 
void * SceSharedFbRenderInfo::depth_stencil_buffer
 Opaque PAF depth/stencil buffer; NULL disables the depth/stencil surface.
 
SceUInt32 SceSharedFbRenderInfo::reserved_0C [4]
 Set to 0 by PAF on FW 3.60.
 
SceUInt32 SceSharedFbRenderInfo::stride
 Color-buffer stride in pixels.
 
SceUInt32 SceSharedFbRenderInfo::width
 
SceUInt32 SceSharedFbRenderInfo::height
 
SceUInt32 SceSharedFbRenderInfo::pixel_format
 One of SceGxmColorFormat.
 
SceInt32 SceSharedFbRenderInfo::buffer_index
 One-based render-buffer index used by PAF.
 
SceUInt32 SceSharedFbRenderInfo::reserved30 [4]
 Set to 0 by PAF on FW 3.60.
 

Detailed Description

Exports for User.


Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceAppMgr_stub




Data Structure Documentation

◆ SceSharedFbInfo

struct SceSharedFbInfo
Data Fields
void * fb_base
int fb_size
void * fb_base2
int unk0[6]
int stride
int width
int height
int unk1
int index
int unk2[4]
int vsync
int unk3[3]

◆ SceSharedFbCreate

struct SceSharedFbCreate
Data Fields
SceSize alloc_mem_size Size in bytes of the CDRAM allocation.
SceUInt32 reserved0 Stored in the object but otherwise ignored on FW 3.60.
SceUInt32 reserved[4] Ignored on FW 3.60.

◆ SceSharedFbRenderInfo

struct SceSharedFbRenderInfo

Rendering information supplied by PAF during a shared-framebuffer handoff.

Data Fields
void * frame_buffer_base Base address of the selected color buffer.
SceUInt32 reserved04 Set to 0 by PAF on FW 3.60.
void * depth_stencil_buffer Opaque PAF depth/stencil buffer; NULL disables the depth/stencil surface.
SceUInt32 reserved_0C[4] Set to 0 by PAF on FW 3.60.
SceUInt32 stride Color-buffer stride in pixels.
SceUInt32 width
SceUInt32 height
SceUInt32 pixel_format One of SceGxmColorFormat.
SceInt32 buffer_index One-based render-buffer index used by PAF.
SceUInt32 reserved30[4] Set to 0 by PAF on FW 3.60.

Function Documentation

◆ VITASDK_BUILD_ASSERT_EQ() [1/3]

VITASDK_BUILD_ASSERT_EQ ( 0x58  ,
SceSharedFbInfo   
)

◆ _sceSharedFbOpen()

SceUID _sceSharedFbOpen ( int  index,
int  sysver 
)

◆ sceSharedFbClose()

int sceSharedFbClose ( SceUID  fb_id)

◆ sceSharedFbBegin()

int sceSharedFbBegin ( SceUID  fb_id,
SceSharedFbInfo *  info 
)

◆ sceSharedFbEnd()

int sceSharedFbEnd ( SceUID  fb_id)

◆ sceSharedFbGetInfo()

int sceSharedFbGetInfo ( SceUID  fb_id,
SceSharedFbInfo *  info 
)

◆ VITASDK_BUILD_ASSERT_EQ() [2/3]

VITASDK_BUILD_ASSERT_EQ ( 0x18  ,
SceSharedFbCreate   
)

◆ VITASDK_BUILD_ASSERT_EQ() [3/3]

VITASDK_BUILD_ASSERT_EQ ( 0x40  ,
SceSharedFbRenderInfo   
)

◆ sceSharedFbCreate()

SceUID sceSharedFbCreate ( int  index,
const SceSharedFbCreate *  create_param 
)

Create a shared-framebuffer object.

FW 3.60 supports two objects at a time. PAF creates index 1. The calling process must be a system program.

Parameters
[in]indexNon-negative shared-framebuffer index.
[in]create_paramRequired 0x18-byte SceSharedFbCreate structure.
Returns
The shared-framebuffer ID on success, or a negative error code.

◆ sceSharedFbGetShellRenderPort()

int sceSharedFbGetShellRenderPort ( void  )

Get the current shell render port.

Returns
0 or 1 on success, or a negative error code.

◆ sceSharedFbUpdateProcess()

int sceSharedFbUpdateProcess ( void  )

Perform one process handoff after sceSharedFbUpdateProcessBegin.

Call this function exactly the number of times specified by the update_count output of sceSharedFbUpdateProcessBegin, then call sceSharedFbUpdateProcessEnd.

Returns
1 when the selected process is marked for rendering, 0 otherwise, or a negative error code.

◆ sceSharedFbUpdateProcessBegin()

int sceSharedFbUpdateProcessBegin ( SceUID  shared_fb_id,
const SceSharedFbRenderInfo *  render_info,
SceUInt32 *  update_count 
)

Begin a shared-framebuffer update.

Both pointers must be non-NULL on FW 3.60. The calling process must be a system program and shared_fb_id must identify one of the two created shared framebuffers.

Parameters
[in]shared_fb_idShared-framebuffer ID.
[in]render_infoRendering information copied into the shared framebuffer.
[out]update_countReceives the 32-bit number of required sceSharedFbUpdateProcess calls.
Returns
0 on success, or a negative error code.

◆ sceSharedFbUpdateProcessEnd()

int sceSharedFbUpdateProcessEnd ( void  )

Complete a process handoff sequence begun by sceSharedFbUpdateProcessBegin.

This function takes no arguments and must be called after the corresponding update-process loop.

Returns
0 on success, or a negative error code.

Variable Documentation

◆ fb_base

void* SceSharedFbInfo::fb_base

◆ fb_size

int SceSharedFbInfo::fb_size

◆ fb_base2

void* SceSharedFbInfo::fb_base2

◆ unk0

int SceSharedFbInfo::unk0[6]

◆ stride [1/2]

int SceSharedFbInfo::stride

◆ width [1/2]

int SceSharedFbInfo::width

◆ height [1/2]

int SceSharedFbInfo::height

◆ unk1

int SceSharedFbInfo::unk1

◆ index

int SceSharedFbInfo::index

◆ unk2

int SceSharedFbInfo::unk2[4]

◆ vsync

int SceSharedFbInfo::vsync

◆ unk3

int SceSharedFbInfo::unk3[3]

◆ alloc_mem_size

SceSize SceSharedFbCreate::alloc_mem_size

Size in bytes of the CDRAM allocation.

◆ reserved0

SceUInt32 SceSharedFbCreate::reserved0

Stored in the object but otherwise ignored on FW 3.60.

◆ reserved

SceUInt32 SceSharedFbCreate::reserved[4]

Ignored on FW 3.60.

◆ frame_buffer_base

void* SceSharedFbRenderInfo::frame_buffer_base

Base address of the selected color buffer.

◆ reserved04

SceUInt32 SceSharedFbRenderInfo::reserved04

Set to 0 by PAF on FW 3.60.

◆ depth_stencil_buffer

void* SceSharedFbRenderInfo::depth_stencil_buffer

Opaque PAF depth/stencil buffer; NULL disables the depth/stencil surface.

◆ reserved_0C

SceUInt32 SceSharedFbRenderInfo::reserved_0C[4]

Set to 0 by PAF on FW 3.60.

◆ stride [2/2]

SceUInt32 SceSharedFbRenderInfo::stride

Color-buffer stride in pixels.

◆ width [2/2]

SceUInt32 SceSharedFbRenderInfo::width

◆ height [2/2]

SceUInt32 SceSharedFbRenderInfo::height

◆ pixel_format

SceUInt32 SceSharedFbRenderInfo::pixel_format

◆ buffer_index

SceInt32 SceSharedFbRenderInfo::buffer_index

One-based render-buffer index used by PAF.

◆ reserved30

SceUInt32 SceSharedFbRenderInfo::reserved30[4]

Set to 0 by PAF on FW 3.60.