vitasdk
Documentation of the vitasdk
display.h
Go to the documentation of this file.
1
7#ifndef _PSP2KERN_DISPLAY_H_
8#define _PSP2KERN_DISPLAY_H_
9
10#include <vitasdk/build_utils.h>
11#include <psp2common/display.h>
12#include <psp2kern/types.h>
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
30
40int ksceDisplaySetFrameBuf(const SceDisplayFrameBuf *pParam, int sync);
41
53int ksceDisplaySetFrameBufInternal(int head, int index, const SceDisplayFrameBuf *pParam, int sync);
54
69
84
93int ksceDisplayGetMaximumFrameBufResolution(int *width, int *height);
94
99
106
111
118
123
130
136int ksceDisplayWaitVblankStartMulti(unsigned int vcount);
137
144int ksceDisplayWaitVblankStartMultiInternal(int display, unsigned int vcount);
145
151int ksceDisplayWaitVblankStartMultiCB(unsigned int vcount);
152
159int ksceDisplayWaitVblankStartMultiCBInternal(int display, unsigned int vcount);
160
165
170
177int ksceDisplayWaitSetFrameBufMulti(unsigned int vcount);
178
185int ksceDisplayWaitSetFrameBufMultiCB(unsigned int vcount);
186
193
201
208
216
223
231
238int ksceDisplaySetInvertColors(int display, int enable);
239
249int ksceDisplaySetOwner(int head, int index, SceUID pid);
250
253 unsigned int x;
254 unsigned int y;
255 unsigned int width;
256 unsigned int height;
258VITASDK_BUILD_ASSERT_EQ(0x14, SceDisplayViewportConf); // size is from FW 3.60
259
268
276
291
305
321
335
344
353
368
382
400
411
427
437
452
462
477
495
514int ksceDisplaySetScaleConf(float scale, SceDisplayHead head, SceDisplayFrameBufType fb_idx, int scaling);
515
530
541
552
565
577
578#ifdef __cplusplus
579}
580#endif
581
582#endif /* _PSP2KERN_DISPLAY_H_ */
#define VITASDK_BUILD_ASSERT_EQ(__size__, __name__)
Definition build_utils.h:13
int ksceDisplayGetMaximumFrameBufResolution(int *width, int *height)
Get maximum framebuffer resolution.
unsigned int width
Viewport width in pixels.
Definition display.h:255
SceDisplayColorSpaceMode
Device-dependent values accepted by ksceDisplaySetColorSpaceMode.
Definition display.h:270
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 ksceDisplayWaitSetFrameBufMultiCB(unsigned int vcount)
Wait for vertical blank start with callback after specified number of vertical periods since last upd...
unsigned int height
Viewport height in pixels.
Definition display.h:256
int ksceDisplaySetFrameBufInternal(int head, int index, const SceDisplayFrameBuf *pParam, int sync)
Set/Update framebuffer parameters for display.
SceUInt32 SceDisplayScreenMode
Storage type for one of SceDisplayScreenModeId.
Definition display.h:136
SceDisplaySetBufSync
Definition display.h:39
int ksceDisplayUnregisterVblankStartCallback(SceUID uid)
Unregister callback used at each vertical blank start.
int ksceDisplayGetFrameBufInternal(SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceDisplayFrameBufExt *frame_buf, SceDisplaySetBufSync update_timing_mode)
Get one current process framebuffer slot.
int ksceDisplayGetPrimaryHead(void)
Primary display index.
int ksceDisplayRegisterVblankStartCallbackInternal(int display, SceUID uid)
Register callback to be used at each vertical blank start for a display.
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...
unsigned int y
Vertical viewport offset in pixels.
Definition display.h:254
int ksceDisplaySetViewportConf(SceDisplayHead head, SceDisplayFrameBufType fb_idx, const SceDisplayViewportConf *viewport_conf)
Set viewport scaling for a framebuffer slot.
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...
int ksceDisplaySetBrightness(SceDisplayHead head, SceUInt32 brightness)
Set display brightness.
int ksceDisplayUnregisterVblankStartCallbackInternal(int display, SceUID uid)
Unregister callback used at each vertical blank start for a display.
int ksceDisplayWaitVblankStartMultiCBInternal(int display, unsigned int vcount)
Wait for vertical blank start with callback after specified number of vertical periods for display.
int ksceDisplayGetFrameBuf(SceDisplayFrameBuf *pParam, int sync)
Get current framebuffer parameters.
uintptr_t paddr
Physical address.
Definition display.h:25
unsigned int vblankcount
Amount of VBlanks this framebuffer has been displayed.
Definition display.h:24
unsigned int resolution
Extended framebuffer flags; same value as SceDisplayFrameBufExt::flags.
Definition display.h:27
SceInt32 ksceDisplayWaitSetFrameBufInternal(SceDisplayHead head, SceDisplayFrameBufType fb_idx)
Wait for the next vertical blank start since the last update of the selected framebuffer.
SceInt32 ksceDisplayCaptureFrameBufDMAC(SceUID pid, SceDisplayCaptureFrameBuf *capture_frame_buf)
Capture the current process's primary GAME_APP framebuffer through DMAC.
SceSize size
Must be set to 0x14.
Definition display.h:252
int ksceDisplayWaitSetFrameBuf(void)
Wait for vertical blank start since last update of framebuffer.
int ksceDisplayWaitVblankStartMulti(unsigned int vcount)
Wait for vertical blank start after specified number of vertical periods.
SceDisplayDeviceType
Non-negative device types returned by ksceDisplayGetDeviceType.
Definition display.h:261
int ksceDisplayEnableHead(SceDisplayHead head)
Enable a display head.
SceDisplayHead
Definition display.h:102
int ksceDisplayWaitVblankStartCB(void)
Wait for vertical blank start with callback.
SceUID pid
PID of the process owning this framebuffer.
Definition display.h:23
int ksceDisplaySetOwner(int head, int index, SceUID pid)
Set display plane owner.
int ksceDisplayWaitVblankStartInternal(int display)
Wait for vertical blank start for display.
int ksceDisplayWaitVblankStartMultiInternal(int display, unsigned int vcount)
Wait for vertical blank start after specified number of vertical periods for display.
int ksceDisplayWaitSetFrameBufMulti(unsigned int vcount)
Wait for vertical blank start after specified number of vertical periods since last update of framebu...
SceInt32 ksceDisplayCaptureFrameBufDMACInternal(SceUID pid, SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceDisplayCaptureFrameBuf *capture_frame_buf)
Capture a selected process framebuffer through DMAC.
int ksceDisplaySetColorSpaceMode(SceDisplayHead head, SceUInt32 mode)
Set the main panel's device-dependent color-space mode.
int ksceDisplayWaitVblankStartCBInternal(int display)
Wait for vertical blank start with callback for display.
int ksceDisplayRegisterFrameBufCallback(SceUID uid)
Register callback to be used when the framebuffer changes.
SceDisplayFrameBufType
Definition display.h:96
int ksceDisplaySetInvertColors(int display, int enable)
Enable/disable color inversion for a display.
SceInt32 ksceDisplayGetRefreshRateInternal(SceDisplayHead head, float *fps, SceUInt32 *scan_mode)
Get a head's theoretical refresh rate and scan mode.
SceDisplayFrameBuf framebuf
First 0x18 bytes of the framebuffer descriptor.
Definition display.h:26
int ksceDisplaySetMergeConf(SceDisplayHead head, int control, SceUInt32 alpha)
Configure overlay-plane blending for a head.
int ksceDisplayGetActualViewportConf(SceDisplayHead head, SceDisplayFrameBufType fb_idx, SceDisplayViewportConf *viewport_conf)
Get the effective viewport for a framebuffer slot.
unsigned int x
Horizontal viewport offset in pixels.
Definition display.h:253
int ksceDisplayGetResolutionInfoInternal(SceDisplayHead head, SceDisplayResolutionInfo *info)
Get complete resolution and output-mode information 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 ksceDisplayDisableHead(SceDisplayHead head)
Disable a display head.
int ksceDisplaySetScaleConf(float scale, SceDisplayHead head, SceDisplayFrameBufType fb_idx, int scaling)
Set scaling for a display head's framebuffer slot.
int ksceDisplaySetFrameBuf(const SceDisplayFrameBuf *pParam, int sync)
Set/Update framebuffer parameters.
SceInt32 ksceDisplayCaptureFrameBufIFTU(SceUID pid, const SceDisplayCaptureFrameBuf *capture_frame_buf)
Convert and capture the current process's primary GAME_APP framebuffer through IFTU.
int ksceDisplayWaitVblankStartMultiCB(unsigned int vcount)
Wait for vertical blank start with callback after specified number of vertical periods.
SceSize size
sizeof(SceDisplayFrameBufInfo)
Definition display.h:22
int ksceDisplayRegisterVblankStartCallback(SceUID uid)
Register callback to be used at each vertical blank start.
int ksceDisplayWaitSetFrameBufCB(void)
Wait for vertical blank start with callback since last update of framebuffer.
int ksceDisplayGetDeviceType(SceDisplayHead head, SceUInt32 *device_info)
Get the hardware type for a display head.
int ksceDisplayGetOutputMode(SceDisplayHead head, SceDisplayScreenMode *screen_mode, SceUInt32 *output_format)
Get the configured screen-mode ID and output-format value for a head.
int ksceDisplayGetVcountInternal(int display)
Number of vertical blank pulses up to now for a display.
SceInt32 ksceDisplayWaitSetFrameBufCBInternal(SceDisplayHead head, SceDisplayFrameBufType fb_idx)
Wait for the next vertical blank start since the last update of the selected framebuffer,...
SceInt32 ksceDisplayCaptureFrameBufIFTUInternal(SceUID pid, SceDisplayHead head, SceDisplayFrameBufType fb_idx, const SceDisplayCaptureFrameBuf *capture_frame_buf)
Convert and capture a selected process framebuffer through IFTU.
int ksceDisplayWaitVblankStart(void)
Wait for vertical blank start.
int ksceDisplayRegisterFrameBufCallbackInternal(int display, SceUID uid)
Register callback to be used when the framebuffer changes for a display.
@ SCE_DISPLAY_COLOR_SPACE_MODE_2
Selects panel-driver mode 1 on LCD; rejected by OLED.
Definition display.h:273
@ SCE_DISPLAY_COLOR_SPACE_MODE_1
Selects panel-driver mode 1 on OLED and mode 0 on LCD.
Definition display.h:272
@ SCE_DISPLAY_COLOR_SPACE_MODE_0
Selects panel-driver mode 0 on OLED and LCD.
Definition display.h:271
@ SCE_DISPLAY_DEVICE_TYPE_LCD
Definition display.h:264
@ SCE_DISPLAY_DEVICE_TYPE_HDMI
Definition display.h:265
@ SCE_DISPLAY_DEVICE_TYPE_NONE
Definition display.h:262
@ SCE_DISPLAY_DEVICE_TYPE_OLED
Definition display.h:263
Framebuffer capture destination.
Definition display.h:153
Structure used with ksceDisplaySetFrameBuf to set/update framebuffer.
Definition display.h:56
Extended framebuffer descriptor accepted by FW 3.60.
Definition display.h:84
Extended framebuffer information.
Definition display.h:21
Definition display.h:163
Definition display.h:251
SceUID pid
Definition debug.h:1
int32_t SceInt32
Definition types.h:44
unsigned int SceSize
Definition types.h:56
int SceUID
UIDs are used to describe many different kernel objects.
Definition types.h:90
uint32_t SceUInt32
Definition types.h:45