vitasdk
Documentation of the vitasdk

Exports for Kernel. More...

Data Structures

struct  SceDisplayFrameBuf
 Structure used with ksceDisplaySetFrameBuf to set/update framebuffer. More...
 
struct  SceDisplayFrameBufExt
 Extended framebuffer descriptor accepted by FW 3.60. More...
 
struct  SceDisplayCaptureFrameBuf
 Framebuffer capture destination. More...
 
struct  SceDisplayResolutionInfo
 
struct  SceDisplayFrameBufInfo
 Extended framebuffer information. More...
 
struct  SceDisplayViewportConf
 

Typedefs

typedef SceUInt32 SceDisplayScreenMode
 Storage type for one of SceDisplayScreenModeId.
 

Enumerations

enum  SceDisplayErrorCode {
  SCE_DISPLAY_ERROR_OK = 0 , SCE_DISPLAY_ERROR_INVALID_HEAD = 0x80290000 , SCE_DISPLAY_ERROR_INVALID_VALUE = 0x80290001 , SCE_DISPLAY_ERROR_INVALID_ADDR = 0x80290002 ,
  SCE_DISPLAY_ERROR_INVALID_PIXELFORMAT = 0x80290003 , SCE_DISPLAY_ERROR_INVALID_PITCH = 0x80290004 , SCE_DISPLAY_ERROR_INVALID_RESOLUTION = 0x80290005 , SCE_DISPLAY_ERROR_INVALID_UPDATETIMING = 0x80290006 ,
  SCE_DISPLAY_ERROR_NO_FRAME_BUFFER = 0x80290007 , SCE_DISPLAY_ERROR_NO_PIXEL_DATA = 0x80290008 , SCE_DISPLAY_ERROR_NO_OUTPUT_SIGNAL = 0x80290009
}
 
enum  SceDisplayPixelFormat { SCE_DISPLAY_PIXELFORMAT_A8B8G8R8 = 0x00000000U , SCE_DISPLAY_PIXELFORMAT_A2B10G10R10 = 0x60800000U }
 
enum  SceDisplaySetBufSync { SCE_DISPLAY_SETBUF_IMMEDIATE = 0 , SCE_DISPLAY_SETBUF_NEXTFRAME = 1 , __SCE_DISPLAY_SETBUF = 0xFFFFFFFF }
 
enum  SceDisplayFrameBufFlag { SCE_DISPLAY_FRAMEBUF_FLAG_SHARED = 0x00040000 , SCE_DISPLAY_FRAMEBUF_FLAG_BILINEAR = 0x00100000 }
 Flags stored in SceDisplayFrameBufExt::flags. More...
 
enum  SceDisplayFrameBufType { SCE_DISPLAY_FRAMEBUF_GAME_APP = 0 , SCE_DISPLAY_FRAMEBUF_LIVEAREA = 1 }
 
enum  SceDisplayHead { SCE_DISPLAY_HEAD_MAIN_LCD_OLED = 0 , SCE_DISPLAY_HEAD_HDMI = 1 , SCE_DISPLAY_HEAD_SUB_LCD = 2 }
 
enum  SceDisplayScreenModeId {
  SCE_DISPLAY_SCREENMODE_INTERNAL_960X544 = 0x0000 , SCE_DISPLAY_SCREENMODE_INTERNAL_960X544_1375X567 = 0x0020 , SCE_DISPLAY_SCREENMODE_INTERNAL_960X540 = 0x0080 , SCE_DISPLAY_SCREENMODE_EXTERNAL_720X480_858X525 = 0x8300 ,
  SCE_DISPLAY_SCREENMODE_EXTERNAL_720X480_858X526 = 0x8370 , SCE_DISPLAY_SCREENMODE_EXTERNAL_720X576_864X625 = 0x8480 , SCE_DISPLAY_SCREENMODE_EXTERNAL_720X575_864X626 = 0x84F0 , SCE_DISPLAY_SCREENMODE_EXTERNAL_1080I_60HZ = 0x8500 ,
  SCE_DISPLAY_SCREENMODE_EXTERNAL_1080I_50HZ = 0x8580 , SCE_DISPLAY_SCREENMODE_EXTERNAL_720P_60HZ = 0x8600 , SCE_DISPLAY_SCREENMODE_EXTERNAL_720P_50HZ = 0x8680 , SCE_DISPLAY_SCREENMODE_EXTERNAL_1080P_60HZ = 0x8710 ,
  SCE_DISPLAY_SCREENMODE_EXTERNAL_1080P_24HZ = 0x8730 , SCE_DISPLAY_SCREENMODE_EXTERNAL_1080P_50HZ = 0x8790 , SCE_DISPLAY_SCREENMODE_1280X720_1428X775 = 0x8900
}
 Complete screen-mode identifiers accepted by the FW 3.60 DSI driver. More...
 
enum  SceDisplayScanMode { SCE_DISPLAY_SCANMODE_PROGRESSIVE = 0 , SCE_DISPLAY_SCANMODE_INTERLACED = 1 }
 
enum  SceDisplayDeviceType { SCE_DISPLAY_DEVICE_TYPE_NONE = 0 , SCE_DISPLAY_DEVICE_TYPE_OLED = 1 , SCE_DISPLAY_DEVICE_TYPE_LCD = 2 , SCE_DISPLAY_DEVICE_TYPE_HDMI = 3 }
 Non-negative device types returned by ksceDisplayGetDeviceType. More...
 
enum  SceDisplayColorSpaceMode { SCE_DISPLAY_COLOR_SPACE_MODE_0 = 0 , SCE_DISPLAY_COLOR_SPACE_MODE_1 = 1 , SCE_DISPLAY_COLOR_SPACE_MODE_2 = 2 }
 Device-dependent values accepted by ksceDisplaySetColorSpaceMode. More...
 

Functions

 VITASDK_BUILD_ASSERT_EQ (4, SceDisplayErrorCode)
 
 VITASDK_BUILD_ASSERT_EQ (4, SceDisplayPixelFormat)
 
 VITASDK_BUILD_ASSERT_EQ (4, SceDisplaySetBufSync)
 
 VITASDK_BUILD_ASSERT_EQ (0x18, SceDisplayFrameBuf)
 
 VITASDK_BUILD_ASSERT_EQ (4, SceDisplayFrameBufFlag)
 
 VITASDK_BUILD_ASSERT_EQ (0x1C, SceDisplayFrameBufExt)
 
 VITASDK_BUILD_ASSERT_EQ (1, SceDisplayFrameBufType)
 
 VITASDK_BUILD_ASSERT_EQ (1, SceDisplayHead)
 
 VITASDK_BUILD_ASSERT_EQ (2, SceDisplayScreenModeId)
 
 VITASDK_BUILD_ASSERT_EQ (4, SceDisplayScreenMode)
 
 VITASDK_BUILD_ASSERT_EQ (1, SceDisplayScanMode)
 
 VITASDK_BUILD_ASSERT_EQ (0x18, SceDisplayCaptureFrameBuf)
 
 VITASDK_BUILD_ASSERT_EQ (0x1C, SceDisplayResolutionInfo)
 
 VITASDK_BUILD_ASSERT_EQ (0x2C, SceDisplayFrameBufInfo)
 
int ksceDisplaySetFrameBuf (const SceDisplayFrameBuf *pParam, int sync)
 Set/Update framebuffer parameters.
 
int ksceDisplaySetFrameBufInternal (int head, int index, const SceDisplayFrameBuf *pParam, int sync)
 Set/Update framebuffer parameters for display.
 
int ksceDisplayGetFrameBuf (SceDisplayFrameBuf *pParam, int sync)
 Get current framebuffer parameters.
 
int ksceDisplayGetProcFrameBufInternal (SceUID pid, int head, int index, SceDisplayFrameBufInfo *info)
 Get the configured framebuffer information of a head and its framebuffer index for a PID.
 
int ksceDisplayGetMaximumFrameBufResolution (int *width, int *height)
 Get maximum framebuffer resolution.
 
int ksceDisplayGetPrimaryHead (void)
 Primary display index.
 
int ksceDisplayGetVcountInternal (int display)
 Number of vertical blank pulses up to now for a display.
 
int ksceDisplayWaitVblankStart (void)
 Wait for vertical blank start.
 
int ksceDisplayWaitVblankStartInternal (int display)
 Wait for vertical blank start for display.
 
int ksceDisplayWaitVblankStartCB (void)
 Wait for vertical blank start with callback.
 
int ksceDisplayWaitVblankStartCBInternal (int display)
 Wait for vertical blank start with callback for display.
 
int ksceDisplayWaitVblankStartMulti (unsigned int vcount)
 Wait for vertical blank start after specified number of vertical periods.
 
int ksceDisplayWaitVblankStartMultiInternal (int display, unsigned int vcount)
 Wait for vertical blank start after specified number of vertical periods for display.
 
int ksceDisplayWaitVblankStartMultiCB (unsigned int vcount)
 Wait for vertical blank start with callback after specified number of vertical periods.
 
int ksceDisplayWaitVblankStartMultiCBInternal (int display, unsigned int vcount)
 Wait for vertical blank start with callback after specified number of vertical periods for display.
 
int ksceDisplayWaitSetFrameBuf (void)
 Wait for vertical blank start since last update of framebuffer.
 
int ksceDisplayWaitSetFrameBufCB (void)
 Wait for vertical blank start with callback since last update of framebuffer.
 
int ksceDisplayWaitSetFrameBufMulti (unsigned int vcount)
 Wait for vertical blank start after specified number of vertical periods since last update of framebuffer.
 
int ksceDisplayWaitSetFrameBufMultiCB (unsigned int vcount)
 Wait for vertical blank start with callback after specified number of vertical periods since last update of framebuffer.
 
int ksceDisplayRegisterVblankStartCallback (SceUID uid)
 Register callback to be used at each vertical blank start.
 
int ksceDisplayRegisterVblankStartCallbackInternal (int display, SceUID uid)
 Register callback to be used at each vertical blank start for a display.
 
int ksceDisplayUnregisterVblankStartCallback (SceUID uid)
 Unregister callback used at each vertical blank start.
 
int ksceDisplayUnregisterVblankStartCallbackInternal (int display, SceUID uid)
 Unregister callback used at each vertical blank start for a display.
 
int ksceDisplayRegisterFrameBufCallback (SceUID uid)
 Register callback to be used when the framebuffer changes.
 
int ksceDisplayRegisterFrameBufCallbackInternal (int display, SceUID uid)
 Register callback to be used when the framebuffer changes for a display.
 
int ksceDisplaySetInvertColors (int display, int enable)
 Enable/disable color inversion for a display.
 
int ksceDisplaySetOwner (int head, int index, SceUID pid)
 Set display plane owner.
 
 VITASDK_BUILD_ASSERT_EQ (0x14, SceDisplayViewportConf)
 
 VITASDK_BUILD_ASSERT_EQ (1, SceDisplayDeviceType)
 
 VITASDK_BUILD_ASSERT_EQ (1, SceDisplayColorSpaceMode)
 
SceInt32 ksceDisplayCaptureFrameBufDMAC (SceUID pid, SceDisplayCaptureFrameBuf *capture_frame_buf)
 Capture the current process's primary GAME_APP framebuffer through DMAC.
 
SceInt32 ksceDisplayCaptureFrameBufDMACInternal (SceUID pid, SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceDisplayCaptureFrameBuf *capture_frame_buf)
 Capture a selected process framebuffer through DMAC.
 
SceInt32 ksceDisplayCaptureFrameBufIFTU (SceUID pid, const SceDisplayCaptureFrameBuf *capture_frame_buf)
 Convert and capture the current process's primary GAME_APP framebuffer through IFTU.
 
SceInt32 ksceDisplayCaptureFrameBufIFTUInternal (SceUID pid, SceDisplayHead head, SceDisplayFrameBufType fb_idx, const SceDisplayCaptureFrameBuf *capture_frame_buf)
 Convert and capture a selected process framebuffer through IFTU.
 
int ksceDisplayDisableHead (SceDisplayHead head)
 Disable a display head.
 
int ksceDisplayEnableHead (SceDisplayHead head)
 Enable a display head.
 
int ksceDisplayGetActualViewportConf (SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceDisplayViewportConf *viewport_conf)
 Get the effective viewport for a framebuffer slot.
 
int ksceDisplayGetDeviceType (SceDisplayHead head, SceUInt32 *device_info)
 Get the hardware type for a display head.
 
int ksceDisplayGetFrameBufInternal (SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceDisplayFrameBufExt *frame_buf, SceDisplaySetBufSync update_timing_mode)
 Get one current process framebuffer slot.
 
int ksceDisplayGetOutputMode (SceDisplayHead head, SceDisplayScreenMode *screen_mode, SceUInt32 *output_format)
 Get the configured screen-mode ID and output-format value for a head.
 
SceInt32 ksceDisplayGetRefreshRateInternal (SceDisplayHead head, float *fps, SceUInt32 *scan_mode)
 Get a head's theoretical refresh rate and scan mode.
 
int ksceDisplayGetResolutionInfoInternal (SceDisplayHead head, SceDisplayResolutionInfo *info)
 Get complete resolution and output-mode information for a head.
 
int ksceDisplaySetBrightness (SceDisplayHead head, SceUInt32 brightness)
 Set display brightness.
 
int ksceDisplaySetColorSpaceMode (SceDisplayHead head, SceUInt32 mode)
 Set the main panel's device-dependent color-space mode.
 
int ksceDisplaySetMergeConf (SceDisplayHead head, int control, SceUInt32 alpha)
 Configure overlay-plane blending for a head.
 
int ksceDisplaySetOutputMode (SceDisplayHead head, SceDisplayScreenMode screen_mode, SceUInt32 output_format)
 Set a head's complete screen-mode ID and output-format value.
 
int ksceDisplaySetScaleConf (float scale, SceDisplayHead head, SceDisplayFrameBufType fb_idx, int scaling)
 Set scaling for a display head's framebuffer slot.
 
int ksceDisplaySetViewportConf (SceDisplayHead head, SceDisplayFrameBufType fb_idx, const SceDisplayViewportConf *viewport_conf)
 Set viewport scaling for a framebuffer slot.
 
SceInt32 ksceDisplayWaitSetFrameBufCBInternal (SceDisplayHead head, SceDisplayFrameBufType fb_idx)
 Wait for the next vertical blank start since the last update of the selected framebuffer, processing callbacks while waiting.
 
SceInt32 ksceDisplayWaitSetFrameBufInternal (SceDisplayHead head, SceDisplayFrameBufType fb_idx)
 Wait for the next vertical blank start since the last update of the selected framebuffer.
 
SceInt32 ksceDisplayWaitSetFrameBufMultiCBInternal (SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceUInt32 vcount)
 Wait for vertical blank start after the specified number of vertical periods since the last update of the selected framebuffer, processing callbacks while waiting.
 
SceInt32 ksceDisplayWaitSetFrameBufMultiInternal (SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceUInt32 vcount)
 Wait for vertical blank start after the specified number of vertical periods since the last update of the selected framebuffer.
 

Variables

SceSize SceDisplayFrameBuf::size
 sizeof(SceDisplayFrameBuf)
 
void * SceDisplayFrameBuf::base
 Pointer to framebuffer.
 
unsigned int SceDisplayFrameBuf::pitch
 pitch pixels
 
unsigned int SceDisplayFrameBuf::pixelformat
 Combined pixel-format and RGB-range encoding.
 
unsigned int SceDisplayFrameBuf::width
 framebuffer width
 
unsigned int SceDisplayFrameBuf::height
 framebuffer height
 
SceSize SceDisplayFrameBufExt::size
 Must be set to sizeof(SceDisplayFrameBufExt).
 
void * SceDisplayFrameBufExt::base
 Framebuffer base address.
 
unsigned int SceDisplayFrameBufExt::pitch
 Pitch in pixels.
 
unsigned int SceDisplayFrameBufExt::pixelformat
 Combined pixel-format and RGB-range encoding.
 
unsigned int SceDisplayFrameBufExt::width
 Framebuffer width in pixels.
 
unsigned int SceDisplayFrameBufExt::height
 Framebuffer height in pixels.
 
SceUInt32 SceDisplayFrameBufExt::flags
 Bitwise OR of SceDisplayFrameBufFlag values and other firmware-defined bits.
 
SceSize SceDisplayCaptureFrameBuf::size
 Must be set to sizeof(SceDisplayCaptureFrameBuf).
 
void * SceDisplayCaptureFrameBuf::base
 Capture destination; must be aligned to 0x100 bytes on FW 3.60.
 
unsigned int SceDisplayCaptureFrameBuf::pitch
 Destination pitch in pixels.
 
unsigned int SceDisplayCaptureFrameBuf::pixelformat
 Format value; see the capture function being used.
 
unsigned int SceDisplayCaptureFrameBuf::width
 Requested or resulting width in pixels.
 
unsigned int SceDisplayCaptureFrameBuf::height
 Requested or resulting height in pixels.
 
SceSize SceDisplayResolutionInfo::size
 Must be set to sizeof(SceDisplayResolutionInfo).
 
SceDisplayScreenMode SceDisplayResolutionInfo::screen_mode
 One of SceDisplayScreenModeId.
 
SceUInt32 SceDisplayResolutionInfo::width
 Output width in pixels.
 
SceUInt32 SceDisplayResolutionInfo::height
 Output height in pixels.
 
SceUInt32 SceDisplayResolutionInfo::output_format
 Combined pixel-format and RGB-range encoding.
 
SceUInt32 SceDisplayResolutionInfo::scan_mode
 One of SceDisplayScanMode; stored as a 32-bit value.
 
float SceDisplayResolutionInfo::fps
 Driver refresh-rate value; approximately 59.940056 on FW 3.60.
 
SceSize SceDisplayFrameBufInfo::size
 sizeof(SceDisplayFrameBufInfo)
 
SceUID SceDisplayFrameBufInfo::pid
 PID of the process owning this framebuffer.
 
unsigned int SceDisplayFrameBufInfo::vblankcount
 Amount of VBlanks this framebuffer has been displayed.
 
uintptr_t SceDisplayFrameBufInfo::paddr
 Physical address.
 
SceDisplayFrameBuf SceDisplayFrameBufInfo::framebuf
 First 0x18 bytes of the framebuffer descriptor.
 
unsigned int SceDisplayFrameBufInfo::resolution
 Extended framebuffer flags; same value as SceDisplayFrameBufExt::flags.
 
SceSize SceDisplayViewportConf::size
 Must be set to 0x14.
 
unsigned int SceDisplayViewportConf::x
 Horizontal viewport offset in pixels.
 
unsigned int SceDisplayViewportConf::y
 Vertical viewport offset in pixels.
 
unsigned int SceDisplayViewportConf::width
 Viewport width in pixels.
 
unsigned int SceDisplayViewportConf::height
 Viewport height in pixels.
 

Detailed Description

Exports for Kernel.


Using this library in your project

Include the header file in your project:




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceDisplayForDriver_stub




Data Structure Documentation

◆ SceDisplayFrameBuf

struct SceDisplayFrameBuf

Structure used with ksceDisplaySetFrameBuf to set/update framebuffer.

Original screen resolution is 960x544, but the following resolutions can also be supplied as width and height : 480x272, 640x368, 720x408

Note
- This structure is returned by ksceDisplayGetFrameBuf
Data Fields
SceSize size sizeof(SceDisplayFrameBuf)
void * base Pointer to framebuffer.
unsigned int pitch pitch pixels
unsigned int pixelformat Combined pixel-format and RGB-range encoding.
unsigned int width framebuffer width
unsigned int height framebuffer height

◆ SceDisplayFrameBufExt

struct SceDisplayFrameBufExt

Extended framebuffer descriptor accepted by FW 3.60.

SceDisplayFrameBuf remains 0x18 bytes for backwards compatibility. The raw and internal framebuffer APIs also accept this 0x1C-byte structure. To use it, set size to sizeof(SceDisplayFrameBufExt). FW 3.60 permits only bits in the mask 0x001F0000 in flags. The purposes of bits 0x00020000 and 0x00080000 are unknown. For a 0x18-byte structure, the driver sets SCE_DISPLAY_FRAMEBUF_FLAG_BILINEAR internally.

Data Fields
SceSize size Must be set to sizeof(SceDisplayFrameBufExt).
void * base Framebuffer base address.
unsigned int pitch Pitch in pixels.
unsigned int pixelformat Combined pixel-format and RGB-range encoding.
unsigned int width Framebuffer width in pixels.
unsigned int height Framebuffer height in pixels.
SceUInt32 flags Bitwise OR of SceDisplayFrameBufFlag values and other firmware-defined bits.

◆ SceDisplayCaptureFrameBuf

struct SceDisplayCaptureFrameBuf

Framebuffer capture destination.

The DMAC capture functions use width and height as maximum dimensions, ignore the input pixelformat, and replace all three fields with the copied source values. The IFTU capture functions instead use all three fields as destination parameters and leave the structure unchanged.

Data Fields
SceSize size Must be set to sizeof(SceDisplayCaptureFrameBuf).
void * base Capture destination; must be aligned to 0x100 bytes on FW 3.60.
unsigned int pitch Destination pitch in pixels.
unsigned int pixelformat Format value; see the capture function being used.
unsigned int width Requested or resulting width in pixels.
unsigned int height Requested or resulting height in pixels.

◆ SceDisplayResolutionInfo

struct SceDisplayResolutionInfo
Data Fields
SceSize size Must be set to sizeof(SceDisplayResolutionInfo).
SceDisplayScreenMode screen_mode One of SceDisplayScreenModeId.
SceUInt32 width Output width in pixels.
SceUInt32 height Output height in pixels.
SceUInt32 output_format Combined pixel-format and RGB-range encoding.
SceUInt32 scan_mode One of SceDisplayScanMode; stored as a 32-bit value.
float fps Driver refresh-rate value; approximately 59.940056 on FW 3.60.

◆ SceDisplayFrameBufInfo

struct SceDisplayFrameBufInfo

Extended framebuffer information.

Data Fields
SceSize size sizeof(SceDisplayFrameBufInfo)
SceUID pid PID of the process owning this framebuffer.
unsigned int vblankcount Amount of VBlanks this framebuffer has been displayed.
uintptr_t paddr Physical address.
SceDisplayFrameBuf framebuf First 0x18 bytes of the framebuffer descriptor.
unsigned int resolution Extended framebuffer flags; same value as SceDisplayFrameBufExt::flags.

◆ SceDisplayViewportConf

struct SceDisplayViewportConf
Data Fields
SceSize size Must be set to 0x14.
unsigned int x Horizontal viewport offset in pixels.
unsigned int y Vertical viewport offset in pixels.
unsigned int width Viewport width in pixels.
unsigned int height Viewport height in pixels.

Typedef Documentation

◆ SceDisplayScreenMode

Storage type for one of SceDisplayScreenModeId.

Enumeration Type Documentation

◆ SceDisplayErrorCode

Enumerator
SCE_DISPLAY_ERROR_OK 
SCE_DISPLAY_ERROR_INVALID_HEAD 
SCE_DISPLAY_ERROR_INVALID_VALUE 
SCE_DISPLAY_ERROR_INVALID_ADDR 
SCE_DISPLAY_ERROR_INVALID_PIXELFORMAT 
SCE_DISPLAY_ERROR_INVALID_PITCH 
SCE_DISPLAY_ERROR_INVALID_RESOLUTION 
SCE_DISPLAY_ERROR_INVALID_UPDATETIMING 
SCE_DISPLAY_ERROR_NO_FRAME_BUFFER 
SCE_DISPLAY_ERROR_NO_PIXEL_DATA 
SCE_DISPLAY_ERROR_NO_OUTPUT_SIGNAL 

◆ SceDisplayPixelFormat

Enumerator
SCE_DISPLAY_PIXELFORMAT_A8B8G8R8 
SCE_DISPLAY_PIXELFORMAT_A2B10G10R10 

◆ SceDisplaySetBufSync

Enumerator
SCE_DISPLAY_SETBUF_IMMEDIATE 

Buffer change effective immediately.

SCE_DISPLAY_SETBUF_NEXTFRAME 

Buffer change effective next frame.

__SCE_DISPLAY_SETBUF 

◆ SceDisplayFrameBufFlag

Flags stored in SceDisplayFrameBufExt::flags.

Enumerator
SCE_DISPLAY_FRAMEBUF_FLAG_SHARED 

Identifies a shared framebuffer.

SCE_DISPLAY_FRAMEBUF_FLAG_BILINEAR 

Enable bilinear filtering.

◆ SceDisplayFrameBufType

Enumerator
SCE_DISPLAY_FRAMEBUF_GAME_APP 

Game or application framebuffer.

SCE_DISPLAY_FRAMEBUF_LIVEAREA 

LiveArea, HOME, and system-overlay framebuffer.

◆ SceDisplayHead

Enumerator
SCE_DISPLAY_HEAD_MAIN_LCD_OLED 

Built-in OLED or LCD panel.

SCE_DISPLAY_HEAD_HDMI 

HDMI output.

SCE_DISPLAY_HEAD_SUB_LCD 

Secondary LCD state reserved by the display driver.

◆ SceDisplayScreenModeId

Complete screen-mode identifiers accepted by the FW 3.60 DSI driver.

Use these IDs as listed; do not combine them as flags. For example, 1080p at 24 Hz is 0x8730; ORing 0x0700 with 0x0020 produces 0x0720, which FW 3.60 rejects.

Enumerator
SCE_DISPLAY_SCREENMODE_INTERNAL_960X544 

Progressive; 1050x594 total timing.

SCE_DISPLAY_SCREENMODE_INTERNAL_960X544_1375X567 

Progressive; 1375x567 total timing.

SCE_DISPLAY_SCREENMODE_INTERNAL_960X540 

Progressive; 1250x594 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_720X480_858X525 

Progressive; 858x525 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_720X480_858X526 

Progressive; 858x526 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_720X576_864X625 

Progressive; 864x625 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_720X575_864X626 

Progressive; 864x626 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_1080I_60HZ 

Interlaced; 2200x1125 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_1080I_50HZ 

Interlaced; 2640x1125 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_720P_60HZ 

Progressive; 1650x750 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_720P_50HZ 

Progressive; 1980x750 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_1080P_60HZ 

Progressive; 2200x1125 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_1080P_24HZ 

Progressive; 2750x1125 total timing.

SCE_DISPLAY_SCREENMODE_EXTERNAL_1080P_50HZ 

Progressive; 2640x1125 total timing.

SCE_DISPLAY_SCREENMODE_1280X720_1428X775 

Progressive; 1428x775 total timing.

◆ SceDisplayScanMode

Enumerator
SCE_DISPLAY_SCANMODE_PROGRESSIVE 

Progressive scan.

SCE_DISPLAY_SCANMODE_INTERLACED 

Interlaced scan.

◆ SceDisplayDeviceType

Non-negative device types returned by ksceDisplayGetDeviceType.

Enumerator
SCE_DISPLAY_DEVICE_TYPE_NONE 
SCE_DISPLAY_DEVICE_TYPE_OLED 
SCE_DISPLAY_DEVICE_TYPE_LCD 
SCE_DISPLAY_DEVICE_TYPE_HDMI 

◆ SceDisplayColorSpaceMode

Device-dependent values accepted by ksceDisplaySetColorSpaceMode.

Enumerator
SCE_DISPLAY_COLOR_SPACE_MODE_0 

Selects panel-driver mode 0 on OLED and LCD.

SCE_DISPLAY_COLOR_SPACE_MODE_1 

Selects panel-driver mode 1 on OLED and mode 0 on LCD.

SCE_DISPLAY_COLOR_SPACE_MODE_2 

Selects panel-driver mode 1 on LCD; rejected by OLED.

Function Documentation

◆ VITASDK_BUILD_ASSERT_EQ() [1/17]

VITASDK_BUILD_ASSERT_EQ ( 4  ,
SceDisplayErrorCode   
)

◆ VITASDK_BUILD_ASSERT_EQ() [2/17]

VITASDK_BUILD_ASSERT_EQ ( 4  ,
SceDisplayPixelFormat   
)

◆ VITASDK_BUILD_ASSERT_EQ() [3/17]

VITASDK_BUILD_ASSERT_EQ ( 4  ,
SceDisplaySetBufSync   
)

◆ VITASDK_BUILD_ASSERT_EQ() [4/17]

VITASDK_BUILD_ASSERT_EQ ( 0x18  ,
SceDisplayFrameBuf   
)

◆ VITASDK_BUILD_ASSERT_EQ() [5/17]

VITASDK_BUILD_ASSERT_EQ ( 4  ,
SceDisplayFrameBufFlag   
)

◆ VITASDK_BUILD_ASSERT_EQ() [6/17]

VITASDK_BUILD_ASSERT_EQ ( 0x1C  ,
SceDisplayFrameBufExt   
)

◆ VITASDK_BUILD_ASSERT_EQ() [7/17]

VITASDK_BUILD_ASSERT_EQ ( 1  ,
SceDisplayFrameBufType   
)

◆ VITASDK_BUILD_ASSERT_EQ() [8/17]

VITASDK_BUILD_ASSERT_EQ ( 1  ,
SceDisplayHead   
)

◆ VITASDK_BUILD_ASSERT_EQ() [9/17]

VITASDK_BUILD_ASSERT_EQ ( 2  ,
SceDisplayScreenModeId   
)

◆ VITASDK_BUILD_ASSERT_EQ() [10/17]

VITASDK_BUILD_ASSERT_EQ ( 4  ,
SceDisplayScreenMode   
)

◆ VITASDK_BUILD_ASSERT_EQ() [11/17]

VITASDK_BUILD_ASSERT_EQ ( 1  ,
SceDisplayScanMode   
)

◆ VITASDK_BUILD_ASSERT_EQ() [12/17]

VITASDK_BUILD_ASSERT_EQ ( 0x18  ,
SceDisplayCaptureFrameBuf   
)

◆ VITASDK_BUILD_ASSERT_EQ() [13/17]

VITASDK_BUILD_ASSERT_EQ ( 0x1C  ,
SceDisplayResolutionInfo   
)

◆ VITASDK_BUILD_ASSERT_EQ() [14/17]

VITASDK_BUILD_ASSERT_EQ ( 0x2C  ,
SceDisplayFrameBufInfo   
)

◆ ksceDisplaySetFrameBuf()

int ksceDisplaySetFrameBuf ( const SceDisplayFrameBuf *  pParam,
int  sync 
)

Set/Update framebuffer parameters.

Parameters
[in]pParam- Pointer to a SceDisplayFrameBuf structure.
[in]sync- One of SceDisplaySetBufSync
Returns
0 on success, < 0 on error.
Note
- If NULL is provided as pParam pointer, output is blacked out.

◆ ksceDisplaySetFrameBufInternal()

int ksceDisplaySetFrameBufInternal ( int  head,
int  index,
const SceDisplayFrameBuf *  pParam,
int  sync 
)

Set/Update framebuffer parameters for display.

Parameters
[in]head- Use 0 for OLED/LCD and 1 for HDMI
[in]index- Can be 0 or 1
[in]pParam- Pointer to a SceDisplayFrameBuf structure.
[in]sync- One of SceDisplaySetBufSync
Returns
0 on success, < 0 on error.
Note
- If NULL is provided as pParam pointer, output is blacked out.

◆ ksceDisplayGetFrameBuf()

int ksceDisplayGetFrameBuf ( SceDisplayFrameBuf *  pParam,
int  sync 
)

Get current framebuffer parameters.

Parameters
[out]pParam- Pointer to a SceDisplayFrameBuf structure which will receive framebuffer parameters.
Warning
FW 3.60 writes 0x1C bytes even when the size member is 0x18. Allocate a SceDisplayFrameBufExt object and cast its address to SceDisplayFrameBuf * when calling this backwards-compatible prototype.
Parameters
[in]sync- One of SceDisplaySetBufSync
Returns
0 on success, < 0 on error.

◆ ksceDisplayGetProcFrameBufInternal()

int ksceDisplayGetProcFrameBufInternal ( SceUID  pid,
int  head,
int  index,
SceDisplayFrameBufInfo *  info 
)

Get the configured framebuffer information of a head and its framebuffer index for a PID.

Parameters
[in]pid- PID of the process to get the framebuffer information from. It can either be a vallid PID, -1 to use the current configured framebuffer for the head and index, or 0 to use the PID of the caller.
[in]head- Use 0 for OLED/LCD and 1 for HDMI
[in]index- Can be 0 or 1
[out]info- Pointer to a SceDisplayFrameBufInfo structure which will receive the framebuffer information.
Returns
0 on success, < 0 on error.

◆ ksceDisplayGetMaximumFrameBufResolution()

int ksceDisplayGetMaximumFrameBufResolution ( int *  width,
int *  height 
)

Get maximum framebuffer resolution.

Parameters
[out]width- Maximum width
[out]height- Maximum height
Returns
0 on success, < 0 on error.

◆ ksceDisplayGetPrimaryHead()

int ksceDisplayGetPrimaryHead ( void  )

Primary display index.

◆ ksceDisplayGetVcountInternal()

int ksceDisplayGetVcountInternal ( int  display)

Number of vertical blank pulses up to now for a display.

Parameters
[in]display- Display index

◆ ksceDisplayWaitVblankStart()

int ksceDisplayWaitVblankStart ( void  )

Wait for vertical blank start.

◆ ksceDisplayWaitVblankStartInternal()

int ksceDisplayWaitVblankStartInternal ( int  display)

Wait for vertical blank start for display.

Parameters
[in]display- Display index

◆ ksceDisplayWaitVblankStartCB()

int ksceDisplayWaitVblankStartCB ( void  )

Wait for vertical blank start with callback.

◆ ksceDisplayWaitVblankStartCBInternal()

int ksceDisplayWaitVblankStartCBInternal ( int  display)

Wait for vertical blank start with callback for display.

Parameters
[in]display- Display index

◆ ksceDisplayWaitVblankStartMulti()

int ksceDisplayWaitVblankStartMulti ( unsigned int  vcount)

Wait for vertical blank start after specified number of vertical periods.

Parameters
[in]vcount- Number of vertical periods before waiting for vertical blank start

◆ ksceDisplayWaitVblankStartMultiInternal()

int ksceDisplayWaitVblankStartMultiInternal ( int  display,
unsigned int  vcount 
)

Wait for vertical blank start after specified number of vertical periods for display.

Parameters
[in]display- Display index
[in]vcount- Number of vertical periods before waiting for vertical blank start

◆ ksceDisplayWaitVblankStartMultiCB()

int ksceDisplayWaitVblankStartMultiCB ( unsigned int  vcount)

Wait for vertical blank start with callback after specified number of vertical periods.

Parameters
[in]vcount- Number of vertical periods before waiting for vertical blank start

◆ ksceDisplayWaitVblankStartMultiCBInternal()

int ksceDisplayWaitVblankStartMultiCBInternal ( int  display,
unsigned int  vcount 
)

Wait for vertical blank start with callback after specified number of vertical periods for display.

Parameters
[in]display- Display index
[in]vcount- Number of vertical periods before waiting for vertical blank start

◆ ksceDisplayWaitSetFrameBuf()

int ksceDisplayWaitSetFrameBuf ( void  )

Wait for vertical blank start since last update of framebuffer.

◆ ksceDisplayWaitSetFrameBufCB()

int ksceDisplayWaitSetFrameBufCB ( void  )

Wait for vertical blank start with callback since last update of framebuffer.

◆ ksceDisplayWaitSetFrameBufMulti()

int ksceDisplayWaitSetFrameBufMulti ( unsigned int  vcount)

Wait for vertical blank start after specified number of vertical periods since last update of framebuffer.

Parameters
[in]vcount- Number of vertical periods before waiting for vertical blank start

◆ ksceDisplayWaitSetFrameBufMultiCB()

int ksceDisplayWaitSetFrameBufMultiCB ( unsigned int  vcount)

Wait for vertical blank start with callback after specified number of vertical periods since last update of framebuffer.

Parameters
[in]vcount- Number of vertical periods before waiting for vertical blank start

◆ ksceDisplayRegisterVblankStartCallback()

int ksceDisplayRegisterVblankStartCallback ( SceUID  uid)

Register callback to be used at each vertical blank start.

Parameters
[in]uid- Callback UID

◆ ksceDisplayRegisterVblankStartCallbackInternal()

int ksceDisplayRegisterVblankStartCallbackInternal ( int  display,
SceUID  uid 
)

Register callback to be used at each vertical blank start for a display.

Parameters
[in]display- Display index
[in]uid- Callback UID

◆ ksceDisplayUnregisterVblankStartCallback()

int ksceDisplayUnregisterVblankStartCallback ( SceUID  uid)

Unregister callback used at each vertical blank start.

Parameters
[in]uid- Callback UID

◆ ksceDisplayUnregisterVblankStartCallbackInternal()

int ksceDisplayUnregisterVblankStartCallbackInternal ( int  display,
SceUID  uid 
)

Unregister callback used at each vertical blank start for a display.

Parameters
[in]display- Display index
[in]uid- Callback UID

◆ ksceDisplayRegisterFrameBufCallback()

int ksceDisplayRegisterFrameBufCallback ( SceUID  uid)

Register callback to be used when the framebuffer changes.

Parameters
[in]uid- Callback UID

◆ ksceDisplayRegisterFrameBufCallbackInternal()

int ksceDisplayRegisterFrameBufCallbackInternal ( int  display,
SceUID  uid 
)

Register callback to be used when the framebuffer changes for a display.

Parameters
[in]display- Display index
[in]uid- Callback UID

◆ ksceDisplaySetInvertColors()

int ksceDisplaySetInvertColors ( int  display,
int  enable 
)

Enable/disable color inversion for a display.

Parameters
[in]display- Display index
[in]enable- Enable/disable color inversion

◆ ksceDisplaySetOwner()

int ksceDisplaySetOwner ( int  head,
int  index,
SceUID  pid 
)

Set display plane owner.

Parameters
[in]head- Use 0 for OLED/LCD and 1 for HDMI
[in]index- Can be 0 or 1
[in]pid- PID of the new owner
Returns
0 on success, < 0 on error.

◆ VITASDK_BUILD_ASSERT_EQ() [15/17]

VITASDK_BUILD_ASSERT_EQ ( 0x14  ,
SceDisplayViewportConf   
)

◆ VITASDK_BUILD_ASSERT_EQ() [16/17]

VITASDK_BUILD_ASSERT_EQ ( 1  ,
SceDisplayDeviceType   
)

◆ VITASDK_BUILD_ASSERT_EQ() [17/17]

VITASDK_BUILD_ASSERT_EQ ( 1  ,
SceDisplayColorSpaceMode   
)

◆ ksceDisplayCaptureFrameBufDMAC()

SceInt32 ksceDisplayCaptureFrameBufDMAC ( SceUID  pid,
SceDisplayCaptureFrameBuf *  capture_frame_buf 
)

Capture the current process's primary GAME_APP framebuffer through DMAC.

The destination address must be aligned to 0x100 bytes. Pitch must be a multiple of 64 pixels and at least the requested width. On success, FW 3.60 replaces the structure's width, height, and pixel format with the actual copied source values.

Parameters
[in]pid- Source process ID, or 0 for the calling process.
[in,out]capture_frame_buf- Capture destination and resulting format.
Returns
0 on success, or a negative error code.

◆ ksceDisplayCaptureFrameBufDMACInternal()

SceInt32 ksceDisplayCaptureFrameBufDMACInternal ( SceUID  pid,
SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
SceDisplayCaptureFrameBuf *  capture_frame_buf 
)

Capture a selected process framebuffer through DMAC.

Parameters
[in]pid- Source process ID, or 0 for the calling process.
[in]head- Main or HDMI display head.
[in]fb_idx- One of SceDisplayFrameBufType.
[in,out]capture_frame_buf- Capture destination and resulting format. The same rules apply as for ksceDisplayCaptureFrameBufDMAC.
Returns
0 on success, or a negative error code.

◆ ksceDisplayCaptureFrameBufIFTU()

SceInt32 ksceDisplayCaptureFrameBufIFTU ( SceUID  pid,
const SceDisplayCaptureFrameBuf *  capture_frame_buf 
)

Convert and capture the current process's primary GAME_APP framebuffer through IFTU.

The destination address must be aligned to 0x100 bytes. FW 3.60 accepts pixel format values 0x00000000, 0x00008000, 0x00100000, 0x00108000, 0x60800000, 0x60808000, 0x60900000, and 0x60908000. The destination buffer must contain at least pitch * height * 4 bytes.

Parameters
[in]pid- Source process ID, or 0 for the calling process.
[in]capture_frame_buf- Capture destination description.
Returns
0 on success, or a negative error code.

◆ ksceDisplayCaptureFrameBufIFTUInternal()

SceInt32 ksceDisplayCaptureFrameBufIFTUInternal ( SceUID  pid,
SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
const SceDisplayCaptureFrameBuf *  capture_frame_buf 
)

Convert and capture a selected process framebuffer through IFTU.

Parameters
[in]pid- Source process ID, or 0 for the calling process.
[in]head- Main or HDMI display head.
[in]fb_idx- One of SceDisplayFrameBufType.
[in]capture_frame_buf- Capture destination description. The same rules apply as for ksceDisplayCaptureFrameBufIFTU.
Returns
0 on success, or a negative error code.

◆ ksceDisplayDisableHead()

int ksceDisplayDisableHead ( SceDisplayHead  head)

Disable a display head.

Parameters
[in]head- Main or HDMI display head.
Returns
0 on success, or a negative error code.

◆ ksceDisplayEnableHead()

int ksceDisplayEnableHead ( SceDisplayHead  head)

Enable a display head.

Parameters
[in]head- Main or HDMI display head.
Returns
0 on success, or a negative error code.

◆ ksceDisplayGetActualViewportConf()

int ksceDisplayGetActualViewportConf ( SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
SceDisplayViewportConf *  viewport_conf 
)

Get the effective viewport for a framebuffer slot.

The output must be non-NULL with its size member set to 0x14. FW 3.60 returns zero for x, y, width, and height when the slot has no owner or active framebuffer.

Parameters
[in]head- Main or HDMI display head.
[in]fb_idx- One of SceDisplayFrameBufType.
[in,out]viewport_conf- Receives the viewport; set its size member first.
Returns
0 on success, or a negative error code.

◆ ksceDisplayGetDeviceType()

int ksceDisplayGetDeviceType ( SceDisplayHead  head,
SceUInt32 *  device_info 
)

Get the hardware type for a display head.

On FW 3.60, OLED returns 1 and writes 0x103, LCD returns 2 and writes 0x101, HDMI returns 3 and writes 0x101, and an absent device returns 0 and writes 0. The output pointer is optional.

Parameters
[in]head- Display head.
[out]device_info- Optional device-information output.
Returns
One of SceDisplayDeviceType, or a negative error code.

◆ ksceDisplayGetFrameBufInternal()

int ksceDisplayGetFrameBufInternal ( SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
SceDisplayFrameBufExt *  frame_buf,
SceDisplaySetBufSync  update_timing_mode 
)

Get one current process framebuffer slot.

FW 3.60 always writes 0x1C bytes. Although the size member may be 0x18 or 0x1C, callers must provide storage for the complete extended framebuffer structure.

Parameters
[in]head- Main or HDMI display head.
[in]fb_idx- One of SceDisplayFrameBufType.
[in,out]frame_buf- Receives the extended framebuffer information; set its size member first.
[in]update_timing_mode- One of SceDisplaySetBufSync. FW 3.60 validates but otherwise ignores this value.
Returns
0 on success, or a negative error code.

◆ ksceDisplayGetOutputMode()

int ksceDisplayGetOutputMode ( SceDisplayHead  head,
SceDisplayScreenMode *  screen_mode,
SceUInt32 *  output_format 
)

Get the configured screen-mode ID and output-format value for a head.

Parameters
[in]head- Display head.
[out]screen_mode- Optional complete screen-mode ID output.
[out]output_format- Optional pixel-format/RGB-range output.
Returns
0 on success, or a negative error code.

◆ ksceDisplayGetRefreshRateInternal()

SceInt32 ksceDisplayGetRefreshRateInternal ( SceDisplayHead  head,
float *  fps,
SceUInt32 *  scan_mode 
)

Get a head's theoretical refresh rate and scan mode.

Either output pointer may be NULL. The scan-mode output is a 32-bit value containing one of SceDisplayScanMode. FW 3.60 reports approximately 59.940056 through fps for every configured screen mode; this value is not calculated from the selected DSI timing.

Parameters
[in]head- Display head.
[out]fps- Optional stored refresh-rate output.
[out]scan_mode- Optional 32-bit scan-mode output.
Returns
0 on success, or a negative error code.

◆ ksceDisplayGetResolutionInfoInternal()

int ksceDisplayGetResolutionInfoInternal ( SceDisplayHead  head,
SceDisplayResolutionInfo *  info 
)

Get complete resolution and output-mode information for a head.

Parameters
[in]head- Display head.
[in,out]info- Receives the information; set its size member to 0x1C.
Returns
0 on success, or a negative error code.

◆ ksceDisplaySetBrightness()

int ksceDisplaySetBrightness ( SceDisplayHead  head,
SceUInt32  brightness 
)

Set display brightness.

For the main panel, values from 0 through 0x10000 are passed to the active OLED or LCD driver. For HDMI, zero remains zero, one becomes 0x8000, and values from two through 0x10000 become 0x8000 + (brightness >> 1) before being applied to the IFTU color-conversion matrices.

Parameters
[in]head- Main or HDMI display head.
[in]brightness- Brightness value from zero through 0x10000.
Returns
0 on success, or a negative error code.

◆ ksceDisplaySetColorSpaceMode()

int ksceDisplaySetColorSpaceMode ( SceDisplayHead  head,
SceUInt32  mode 
)

Set the main panel's device-dependent color-space mode.

Parameters
[in]head- Must be SCE_DISPLAY_HEAD_MAIN_LCD_OLED.
[in]mode- One of SceDisplayColorSpaceMode.
Returns
0 on success, or a negative error code.

◆ ksceDisplaySetMergeConf()

int ksceDisplaySetMergeConf ( SceDisplayHead  head,
int  control,
SceUInt32  alpha 
)

Configure overlay-plane blending for a head.

The control value is passed unchanged to IFTU. Value 0x80 disables blending; every other value enables blending. FW 3.60 performs no other validation of this value.

Parameters
[in]head- Main or HDMI display head.
[in]control- Raw IFTU merge-control value.
[in]alpha- Overlay alpha from 0 through 0x100.
Returns
0 on success, or a negative error code.

◆ ksceDisplaySetOutputMode()

int ksceDisplaySetOutputMode ( SceDisplayHead  head,
SceDisplayScreenMode  screen_mode,
SceUInt32  output_format 
)

Set a head's complete screen-mode ID and output-format value.

The output-format value combines a pixel-format encoding with RGB-range bit 0 where supported. For the main head, FW 3.60 accepts values 0x00000000, 0x00100000, 0x60800000, and 0x60900000. For HDMI it additionally accepts values 0x00000001, 0x00008000, 0x00100001, 0x00108000, 0x60800001, 0x60808000, 0x60900001, and 0x60908000.

Parameters
[in]head- Main or HDMI display head.
[in]screen_mode- One of SceDisplayScreenModeId. Use these IDs as listed; do not combine them as flags.
[in]output_format- Combined pixel-format and RGB-range encoding.
Returns
0 on success, or a negative error code.

◆ ksceDisplaySetScaleConf()

int ksceDisplaySetScaleConf ( float  scale,
SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
int  scaling 
)

Set scaling for a display head's framebuffer slot.

On FW 3.60, scale must be 0 when bit 0 of scaling is clear. When bit 0 is set, bits 6 and 7 must be clear and scale must be between 0.8 and 1.2, inclusive. Observed callers also use scaling values 0x40 and 0x80 with a zero scale.

Parameters
[in]scale- Per-slot scale factor.
[in]head- Main or HDMI display head.
[in]fb_idx- One of SceDisplayFrameBufType.
[in]scaling- Scaling-control bits described above.
Note
Under the ARM hard-float ABI, scale is passed in S0 while the remaining arguments are passed in R0 through R2.
Returns
0 on success, or a negative error code.

◆ ksceDisplaySetViewportConf()

int ksceDisplaySetViewportConf ( SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
const SceDisplayViewportConf *  viewport_conf 
)

Set viewport scaling for a framebuffer slot.

NULL, or x = 0, y = 0, width = 960, and height = 544, selects the default full viewport. A non-NULL structure must have its size member set to 0x14; FW 3.60 rejects x values above 640 and y values above 364.

Parameters
[in]head- Main or HDMI display head.
[in]fb_idx- One of SceDisplayFrameBufType.
[in]viewport_conf- Viewport configuration, or NULL for the default.
Returns
0 on success, or a negative error code.

◆ ksceDisplayWaitSetFrameBufCBInternal()

SceInt32 ksceDisplayWaitSetFrameBufCBInternal ( SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx 
)

Wait for the next vertical blank start since the last update of the selected framebuffer, processing callbacks while waiting.

Parameters
[in]head- Display head.
[in]fb_idx- Framebuffer slot. FW 3.60 uses only the low bit.
Returns
0 on success, < 0 on error.

◆ ksceDisplayWaitSetFrameBufInternal()

SceInt32 ksceDisplayWaitSetFrameBufInternal ( SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx 
)

Wait for the next vertical blank start since the last update of the selected framebuffer.

Parameters
[in]head- Display head.
[in]fb_idx- Framebuffer slot. FW 3.60 uses only the low bit.
Returns
0 on success, < 0 on error.

◆ ksceDisplayWaitSetFrameBufMultiCBInternal()

SceInt32 ksceDisplayWaitSetFrameBufMultiCBInternal ( SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
SceUInt32  vcount 
)

Wait for vertical blank start after the specified number of vertical periods since the last update of the selected framebuffer, processing callbacks while waiting.

Parameters
[in]head- Display head.
[in]fb_idx- Framebuffer slot. FW 3.60 uses only the low bit.
[in]vcount- Number of vertical periods to wait, from 1 through 0xFFFF.
Returns
0 on success, < 0 on error.

◆ ksceDisplayWaitSetFrameBufMultiInternal()

SceInt32 ksceDisplayWaitSetFrameBufMultiInternal ( SceDisplayHead  head,
SceDisplayFrameBufType  fb_idx,
SceUInt32  vcount 
)

Wait for vertical blank start after the specified number of vertical periods since the last update of the selected framebuffer.

Parameters
[in]head- Display head.
[in]fb_idx- Framebuffer slot. FW 3.60 uses only the low bit.
[in]vcount- Number of vertical periods to wait, from 1 through 0xFFFF.
Returns
0 on success, < 0 on error.

Variable Documentation

◆ size [1/6]

SceSize SceDisplayFrameBuf::size

sizeof(SceDisplayFrameBuf)

◆ base [1/3]

void* SceDisplayFrameBuf::base

Pointer to framebuffer.

◆ pitch [1/3]

unsigned int SceDisplayFrameBuf::pitch

pitch pixels

◆ pixelformat [1/3]

unsigned int SceDisplayFrameBuf::pixelformat

Combined pixel-format and RGB-range encoding.

◆ width [1/5]

unsigned int SceDisplayFrameBuf::width

framebuffer width

◆ height [1/5]

unsigned int SceDisplayFrameBuf::height

framebuffer height

◆ size [2/6]

SceSize SceDisplayFrameBufExt::size

Must be set to sizeof(SceDisplayFrameBufExt).

◆ base [2/3]

void* SceDisplayFrameBufExt::base

Framebuffer base address.

◆ pitch [2/3]

unsigned int SceDisplayFrameBufExt::pitch

Pitch in pixels.

◆ pixelformat [2/3]

unsigned int SceDisplayFrameBufExt::pixelformat

Combined pixel-format and RGB-range encoding.

◆ width [2/5]

unsigned int SceDisplayFrameBufExt::width

Framebuffer width in pixels.

◆ height [2/5]

unsigned int SceDisplayFrameBufExt::height

Framebuffer height in pixels.

◆ flags

SceUInt32 SceDisplayFrameBufExt::flags

Bitwise OR of SceDisplayFrameBufFlag values and other firmware-defined bits.

◆ size [3/6]

SceSize SceDisplayCaptureFrameBuf::size

Must be set to sizeof(SceDisplayCaptureFrameBuf).

◆ base [3/3]

void* SceDisplayCaptureFrameBuf::base

Capture destination; must be aligned to 0x100 bytes on FW 3.60.

◆ pitch [3/3]

unsigned int SceDisplayCaptureFrameBuf::pitch

Destination pitch in pixels.

◆ pixelformat [3/3]

unsigned int SceDisplayCaptureFrameBuf::pixelformat

Format value; see the capture function being used.

◆ width [3/5]

unsigned int SceDisplayCaptureFrameBuf::width

Requested or resulting width in pixels.

◆ height [3/5]

unsigned int SceDisplayCaptureFrameBuf::height

Requested or resulting height in pixels.

◆ size [4/6]

SceSize SceDisplayResolutionInfo::size

Must be set to sizeof(SceDisplayResolutionInfo).

◆ screen_mode

SceDisplayScreenMode SceDisplayResolutionInfo::screen_mode

◆ width [4/5]

SceUInt32 SceDisplayResolutionInfo::width

Output width in pixels.

◆ height [4/5]

SceUInt32 SceDisplayResolutionInfo::height

Output height in pixels.

◆ output_format

SceUInt32 SceDisplayResolutionInfo::output_format

Combined pixel-format and RGB-range encoding.

◆ scan_mode

SceUInt32 SceDisplayResolutionInfo::scan_mode

One of SceDisplayScanMode; stored as a 32-bit value.

◆ fps

float SceDisplayResolutionInfo::fps

Driver refresh-rate value; approximately 59.940056 on FW 3.60.

◆ size [5/6]

SceSize SceDisplayFrameBufInfo::size

sizeof(SceDisplayFrameBufInfo)

◆ pid

SceUID SceDisplayFrameBufInfo::pid

PID of the process owning this framebuffer.

◆ vblankcount

unsigned int SceDisplayFrameBufInfo::vblankcount

Amount of VBlanks this framebuffer has been displayed.

◆ paddr

uintptr_t SceDisplayFrameBufInfo::paddr

Physical address.

◆ framebuf

SceDisplayFrameBuf SceDisplayFrameBufInfo::framebuf

First 0x18 bytes of the framebuffer descriptor.

◆ resolution

unsigned int SceDisplayFrameBufInfo::resolution

Extended framebuffer flags; same value as SceDisplayFrameBufExt::flags.

◆ size [6/6]

SceSize SceDisplayViewportConf::size

Must be set to 0x14.

◆ x

unsigned int SceDisplayViewportConf::x

Horizontal viewport offset in pixels.

◆ y

unsigned int SceDisplayViewportConf::y

Vertical viewport offset in pixels.

◆ width [5/5]

unsigned int SceDisplayViewportConf::width

Viewport width in pixels.

◆ height [5/5]

unsigned int SceDisplayViewportConf::height

Viewport height in pixels.