SceLowio: Difference between revisions
CelesteBlue (talk | contribs) |
|||
Line 152: | Line 152: | ||
|} | |} | ||
This is a guessed name. | |||
Requests TrustZone using [[SMC]] 0x114. | |||
<source lang="C">int scePervasiveBusSetClockForDriver(int | <source lang="C">int scePervasiveBusSetClockForDriver(int clock);</source> | ||
=== scePervasiveSysSetClockForDriver === | === scePervasiveSysSetClockForDriver === |
Revision as of 20:00, 3 June 2021
Module
Version | World | Privilege |
---|---|---|
1.69-3.65 | Non-secure | Kernel |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.69 | ScePervasiveForDriver | Non-secure | Kernel | 0xE692C727 |
1.69 | SceGpioForDriver | Non-secure | Kernel | 0xF0EF5743 |
1.69 | ScePwmForDriver | Non-secure | Kernel | 0xECEAE2D0 |
1.69 | SceI2cForDriver | Non-secure | Kernel | 0xE14BEF6E |
1.69 | SceGrabForDriver | Non-secure | Kernel | 0x81C54BED |
1.69 | SceCdramForDriver | Non-secure | Kernel | 0xC8CD941E |
1.69 | SceDsiForDriver | Non-secure | Kernel | 0xEC897883 |
1.69 | SceIftuForDriver | Non-secure | Kernel | 0xCAFCFE50 |
1.69 | SceCsiForDriver | Non-secure | Kernel | 0xD85C8E44 |
ScePervasiveForDriver
ScePervasiveForDriver_E0711D42
Version | NID |
---|---|
3.60 | 0xE0711D42 |
Calls SMC 0x110: smc_bus_set_state(1, 0);
Used by SceEnumWakeUp.
int ScePervasiveForDriver_E0711D42(void);
ScePervasiveForDriver_47708C03
Version | NID |
---|---|
3.60 | 0x47708C03 |
Return address to a buffer related to Clock Frequencies and Syscon. Maybe this value is the clock multiplier/divider. See Pervasive#ARM_Clocks.
Used by ScePower.
void *ScePervasiveForDriver_47708C03(void);
scePervasiveArmSetClockForDriver
Version | NID |
---|---|
3.60 | 0xE9D95643 |
Used only by ScePower.
This is a guessed name.
int scePervasiveArmSetClockForDriver(SceUInt32 a1, SceUInt32 a2);
scePervasiveGpuSetClockForDriver
Version | NID |
---|---|
3.60 | 0x6AF0196F |
Maybe called on each suspend/resume.
This is a guessed name.
// a1: 3 (default value), 5 when DIP Switch 236 (GPU overclock) is set int scePervasiveGpuSetClockForDriver(int a1, int a2);
scePervasiveVeneziaSetClockForDriver
Version | NID |
---|---|
3.60 | 0x725B4F59 |
This is a guessed name.
int scePervasiveVeneziaSetClockForDriver(int a1);
scePervasiveVipSetClockForDriver
Version | NID |
---|---|
3.60 | 0x12D17D47 |
This is a guessed name.
int scePervasiveVipSetClockForDriver(int a1);
scePervasiveCameraBusSetClockForDriver
Version | NID |
---|---|
3.60 | 0x589D0291 |
This is a guessed name.
int scePervasiveCameraBusSetClockForDriver(int a1);
scePervasiveDmac5SetClockForDriver
Version | NID |
---|---|
3.60 | 0xA6832B33 |
This is a guessed name.
int scePervasiveDmac5SetClockForDriver(int a1);
scePervasiveBusSetClockForDriver
Version | NID |
---|---|
3.60 | 0xC0F7CC39 |
This is a guessed name.
Requests TrustZone using SMC 0x114.
int scePervasiveBusSetClockForDriver(int clock);
scePervasiveSysSetClockForDriver
Version | NID |
---|---|
3.60 | 0x98D8914A |
This is a guessed name.
int scePervasiveSysSetClockForDriver(int a1);
scePervasiveGetSoCRevisionForDriver
Version | NID |
---|---|
0.940-3.60 | 0x714EEFB7 |
Returns <= 0 if Kermit revision is below 2.0. Example of return value: 0-0x19, and something higher.
Seen values: 66 on a PCH-11xx, 277 on a PSVita Slim.
if val & 0x30000000 is zero, not devkit.
SceUInt32 scePervasiveGetSoCRevisionForDriver(void);
scePervasiveCecClockOutEnableForDriver
Version | NID |
---|---|
0.940-3.60 | 0x26B51075 |
scePervasiveCecClockOutDisableForDriver
Version | NID |
---|---|
0.940-3.60 | 0xD185D235 |
scePervasiveCameraBusClockSelectForDriver
Version | NID |
---|---|
0.940-3.60 | 0x589D0291 |
// bus_clock can be either 2 (DOWN) or 5 (UP) int scePervasiveCameraBusClockSelectForDriver(int bus_clock);
ScePervasiveForDriver_18DD8043
Version | NID |
---|---|
3.60 | 0x18DD8043 |
Turns off the clock (&= ~mask) of the device (UART) at offset 0x120 + 4 * device
with mask = 1.
int ScePervasiveForDriver_18DD8043(int uart_bus);
ScePervasiveForDriver_243D0E78
Version | NID |
---|---|
3.60 | 0x243D0E78 |
int ScePervasiveForDriver_243D0E78_get_dsi_clock_info(int pixelclock, int info0[2], int info1[2]);
scePervasiveIftuDsiClkGateDisableForDriver
Version | NID |
---|---|
0.940-3.60 | 0x25AE181E |
Temp name was ScePervasiveForDriver_25AE181E_dsi_clock_disable.
int scePervasiveIftuDsiClkGateDisableForDriver(int bus, int value);
ScePervasiveForDriver_2F195C97
Version | NID |
---|---|
3.60 | 0x2F195C97 |
Turns on the clock (|= mask) of the device (GPIO) at offset 0x100
with mask = 1.
int ScePervasiveForDriver_2F195C97(void);
scePervasiveRemovableMemoryGetCardInsertStateForDriver
Version | NID |
---|---|
3.60 | 0x551EEE82 |
int scePervasiveRemovableMemoryGetCardInsertStateForDriver(void);
ScePervasiveForDriver_64ABE589
Version | NID |
---|---|
3.60 | 0x64ABE589 |
int ScePervasiveForDriver_64ABE589_msif_clock(int clock);
ScePervasiveForDriver_731A097D
Version | NID |
---|---|
3.60 | 0x731A097D |
Puts the device (GPIO) at offset 0x100
in reset (|= mask) with mask = 1.
int ScePervasiveForDriver_731A097D(void);
ScePervasiveForDriver_788B6C61
Version | NID |
---|---|
3.60 | 0x788B6C61 |
Puts the device (UART) at offset 0x120 + 4 * device
in reset (|= mask) with mask = 1.
int ScePervasiveForDriver_788B6C61(int uart_bus);
ScePervasiveForDriver_78C34032
Version | NID |
---|---|
3.60 | 0x78C34032 |
Puts the device at offset 0x100
(GPIO) out of reset (&= ~mask) with mask = 1.
int ScePervasiveForDriver_78C34032(void);
ScePervasiveForDriver_7B16F900
Version | NID |
---|---|
3.60 | 0x7B16F900 |
Puts the device (SPI) at offset 0x104 + 4 * device
in reset (|= mask) with mask = 1.
int ScePervasiveForDriver_7B16F900(int device);
ScePervasiveForDriver_81A155F1
Version | NID |
---|---|
3.60 | 0x81A155F1 |
Returns the SceLowio's mapped ScePervasiveMisc virtual address.
void *ScePervasiveForDriver_81A155F1(void);
ScePervasiveForDriver_8BAB45F8
Version | NID |
---|---|
3.60 | 0x8BAB45F8 |
Changes UART baudrate. (There are 7 UART devices). Check SceUartClkgenReg. for more info.
int ScePervasiveForDriver_8BAB45F8(int uart_device, int baudrate);
ScePervasiveForDriver_91C80C41
Version | NID |
---|---|
3.60 | 0x91C80C41 |
int ScePervasiveForDriver_91C80C41_set_dsi_bus_pixelclock(int bus, int pixelclock);
ScePervasiveForDriver_8A85E36B
Version | NID |
---|---|
3.60 | 0x8A85E36B |
Puts the device at offset 0x10
(? GpuEs4 related (Secure)) out of reset (&= ~mask) with mask = 1.
int ScePervasiveForDriver_8A85E36B(void);
ScePervasiveForDriver_A7CE7DCC
Version | NID |
---|---|
3.60 | 0xA7CE7DCC |
Puts the device (UART) at offset 0x120 + 4 * device
out of reset (&= ~mask) with mask = 1.
int ScePervasiveForDriver_A7CE7DCC(int uart_bus);
ScePervasiveForDriver_A7E64C6F
Version | NID |
---|---|
3.60 | 0xA7E64C6F |
Puts the device at offset 0x30
(Venezia) out of reset (&= ~mask) with mask = 1.
int ScePervasiveForDriver_A7E64C6F(void);
ScePervasiveForDriver_A85BF98A
Version | NID |
---|---|
3.60 | 0xA85BF98A |
Turns off the clock (&= ~mask) of the device (SPI) at offset 0x120 + 4 * device
with mask = 1.
int ScePervasiveForDriver_A85BF98A(int device);
scePervasiveIftuDsiClkGateEnableForDriver
Version | NID |
---|---|
0.940-3.60 | 0xBC42C72F |
Temp name was scePervasiveDsiClockEnableForDriver.
int scePervasiveIftuDsiClkGateEnableForDriver(int bus, int value);
ScePervasiveForDriver_DFD96BFC
Version | NID |
---|---|
3.60 | 0xDFD96BFC |
Turns on the clock (|= mask) of the device (SPI) at offset 0x104 + 4 * device
with mask = 1.
int ScePervasiveForDriver_DFD96BFC(int device);
scePervasiveIftuDsiResetEnableForDriver
Version | NID |
---|---|
0.940-3.60 | 0xE3FC1C8D |
Temp name was ScePervasiveForDriver_E3FC1C8D_dsi_reset_enter.
int scePervasiveIftuDsiResetEnableForDriver(int bus, int value);
ScePervasiveForDriver_E4B145AE
Version | NID |
---|---|
3.60 | 0xE4B145AE |
Puts the device (SPI) at offset 0x104 + 4 * device
out of reset (&= ~mask) with mask = 1.
int ScePervasiveForDriver_E4B145AE(int device);
ScePervasiveForDriver_EB176898
Version | NID |
---|---|
3.60 | 0xEB176898 |
Turns off the clock (&= ~mask) of the device (GPIO) at offset 0x100
with mask = 1.
int ScePervasiveForDriver_EB176898(void);
ScePervasiveForDriver_EFD084D8
Version | NID |
---|---|
3.60 | 0xEFD084D8 |
Turns on the clock (|= mask) of the device (UART) at offset 0x120 + 4 * device
with mask = 1.
int ScePervasiveForDriver_EFD084D8(int uart_bus);
ScePervasiveForDriver_1068C067
Version | NID |
---|---|
0.940-3.60 | 0x1068C067 |
int ScePervasiveForDriver_1068C067(SceDisplayHead head);
scePervasiveIftuDsiResetDisableForDriver
Version | NID |
---|---|
0.940-3.60 | 0xFFB43AC2 |
Temp name was scePervasiveDsiResetDisableForDriver.
int scePervasiveIftuDsiResetDisableForDriver(int bus, int value);
scePervasiveCompatStopForDriver
Version | NID |
---|---|
0.990-3.60 | 0x4712740D |
Executes smc_0x110(2, 0);
Called in sceCompatSuspend and sceCompatStop.
int scePervasiveCompatStopForDriver(void);
scePervasiveCompatStartForDriver
Version | NID |
---|---|
0.990-3.60 | 0xB2F232E5 |
Executes smc_0x110(2, 1);
Called in sceCompatResume and sceCompatInit.
int scePervasiveCompatStartForDriver(void);
scePervasiveCompatLcdDmacInitForDriver
Version | NID |
---|---|
0.990-3.60 | 0xA7855D3A |
Executes smc_0x110(2, 2);
Called during PSP Emulator start and resume.
int scePervasiveCompatLcdDmacInitForDriver(void);
ScePervasiveForDriver_FB01A2DD
Version | NID |
---|---|
1.69-3.60 | 0xFB01A2DD |
Used to initialize Venezia registers or SPRAM.
ScePervasiveForDriver_A7E64C6F
Version | NID |
---|---|
1.69-3.60 | 0xA7E64C6F |
Used to reset Venezia.
SceGpioForDriver
If bus
is 0
, the SceGpio0Reg
registers are used, and if bus
is 1
, the SceGpio1Reg
registers are used.
sceGpioQueryIntrForDriver
Version | NID |
---|---|
3.60 | 0x010DC295 |
int sceGpioQueryIntrForDriver(int bus, int port);
sceGpioSetPortModeForDriver
Version | NID |
---|---|
3.60 | 0x372022A4 |
int sceGpioSetPortModeForDriver(int bus, int port, int mode);
sceGpioSetIntrModeForDriver
Version | NID |
---|---|
3.60 | 0xBBEA1DDC |
int sceGpioSetIntrModeForDriver(int bus, int intr, int mode);
sceGpioPortSetForDriver
Version | NID |
---|---|
0.990-3.60 | 0xD454A584 |
int sceGpioPortSetForDriver(int bus, int port);
sceGpioPortClearForDriver
Version | NID |
---|---|
0.990-3.60 | 0xF6310435 |
int sceGpioPortClearForDriver(int bus, int port);
sceGpioAcquireIntrForDriver
Version | NID |
---|---|
3.60 | 0x35AAD77A |
int sceGpioAcquireIntrForDriver(int bus, int intr);
ScePwmForDriver
ScePwmForDriver_0374213C: 0x0374213C ScePwmForDriver_13161CCC: 0x13161CCC ScePwmForDriver_22C17D24: 0x22C17D24 ScePwmForDriver_514773B1: 0x514773B1 ScePwmForDriver_99911920: 0x99911920
SceI2cForDriver
Types
typedef struct SceI2cDebugHandlers { unsigned int size; void (*write_start)(int bus, int device, unsigned char *buffer, int size); void (*write_error)(int bus, int error, int result); void (*read_start)(int bus, int device, unsigned char *buffer, int size); void (*read_error)(int bus, int error, int result); void (*write_read_start)(int bus, int write_device, unsigned char *write_buffer, int write_size); void (*write_read_error)(int bus, int error, int result); } SceI2cDebugHandlers;
Version | NID | Name |
---|---|---|
3.60 | 0x0A40B7BF | int sceI2cTransferWriteRead(int bus, unsigned int write_dev_id, const void *write_buffer, int write_size, unsigned int read_dev_id, void *read_buffer, int read_size);
|
3.60 | 0x30CF9469 | |
3.60 | 0x76D277AB | sceI2cReset(int bus);
|
3.60 | 0x9CF8F3D6 | sceI2cInit(int bus);
|
3.60 | 0xA2C7CE62 | int sceI2cSetDebugHandlers(int bus, SceI2cDebugHandlers *debug_handlers)
|
3.60 | 0xCA94A759 | int sceI2cTransferWrite(int bus, unsigned int device_address, const void *buffer, unsigned int size);
|
3.60 | 0xD1D0A9A4 | int sceI2cTransferRead(int bus, unsigned int device_address, void *buffer, unsigned int size);
|
3.60 | 0xE449AC6E |
SceGrabForDriver
sceGrabCompatStartExForDriver
Version | NID |
---|---|
3.60 | 0x072B8D93 |
Calls SMC 0x11e. smc(0x11E, 1, param)
Replacement for SceLowio#scePervasiveCompatStartForDriver.
// command: 0, 1 int sceGrabCompatStartExForDriver(int param);
SceGrabForDriver_188BBCC8
Version | NID |
---|---|
3.60 | 0x188BBCC8 |
Calls SMC 0x11c. smc(0x11c)
SceGrabForDriver_1F292554
Version | NID |
---|---|
3.60 | 0x1F292554 |
Calls SMC 0x121. smc(0x121)
sceGrabCompatLcdDmacInitForDriver
Version | NID |
---|---|
3.60 | 0x379130B2 |
Calls SMC 0x11e. smc(0x11E, 2)
Replacement for SceLowio#scePervasiveCompatLcdDmacInitForDriver.
SceGrabForDriver_5F36ABC4
Version | NID |
---|---|
3.60 | 0x5F36ABC4 |
Calls SMC 0x11f. smc(0x11f)
SceGrabForDriver_B22EE8BC
Version | NID |
---|---|
3.60 | 0xB22EE8BC |
Calls SMC 0x11b. smc(0x11b)
SceGrabForDriver_E9C25A28
Version | NID |
---|---|
3.60 | 0xE9C25A28 |
Calls SMC 0x11d. smc(0x11d)
// bank can be from 0 to 7 int SceGrabForDriver_E9C25A28(SceUInt32 bank, SceUInt32 paddr);
sceGrabCompatStopForDriver
Version | NID |
---|---|
3.60 | 0xF13C63DD |
Calls SMC 0x11e. smc(0x11E, 0)
Replacement for SceLowio#scePervasiveCompatStopForDriver.
SceCdramForDriver
SceCdramForDriver_41D821F3
Version | NID |
---|---|
0.940 | 0x41D821F3 |
3.60 | not present |
Calls SMC 0x119.
SceCdramForDriver_BA81E0E3
Version | NID |
---|---|
0.940 | 0xBA81E0E3 |
3.60 | not present |
Calls SMC 0x118.
SceCdramForDriver_0657FC1B
Version | NID |
---|---|
0.940 | not present |
3.60 | 0x0657FC1B |
SceCdramForDriver_2D728EBF
Version | NID |
---|---|
0.940 | not present |
3.60 | 0x2D728EBF |
SceCdramForDriver_3EFA7540
Version | NID |
---|---|
0.940 | not present |
3.60 | 0x3EFA7540 |
SceDsiForDriver
sceDsiStopMasterForDriver
Version | NID |
---|---|
0.940-3.60 | 0x114D1413 |
Temp name was sceDsiDisableHeadForDriver.
int sceDsiStopMasterForDriver(SceDisplayHead head);
sceDsiDcsReadForDriver
Version | NID |
---|---|
3.60 | 0x3FB0DF1F |
int sceDsiDcsReadForDriver(SceDisplayHead head, unsigned short param, void *buf, SceSize size);
MIPI DSI DCS Read (0x06)
sceDsiGetPixelClockForDriver
Version | NID |
---|---|
3.60 | 0x4DF9E924 |
int sceDsiGetPixelClockForDriver(SceDisplayHead head);
sceDsiStartMasterForDriver
Version | NID |
---|---|
0.940-3.60 | 0x5BE5AA9B |
Temp name was sceDsiEnableHeadForDriver.
int sceDsiStartMasterForDriver(SceDisplayHead head);
SceDsiForDriver_6F8029A1
Version | NID |
---|---|
3.60 | 0x6F8029A1 |
int SceDsiForDriver_6F8029A1(SceDisplayHead head);
Returns the current Vcount, read from ((*(u32 *)(SceDsiReg + 0x4C) >> 16) & 0x1FFF) - 1
.
sceDsiStopDisplayForDriver
Version | NID |
---|---|
0.940-3.60 | 0x7640F607 |
int sceDsiStopDisplayForDriver(SceDisplayHead head);
sceDsiSetDisplayModeForDriver
Version | NID |
---|---|
3.60 | 0x78E6E3CF |
Temp name was sceDsiSetLanesAndPixelSizeForDriver.
For head
== SCE_DISPLAY_HEAD_MAIN_LCD_OLED, lanes
must be 2 and pixelsize
24.
For head
== SCE_DISPLAY_HEAD_HDMI, lanes
can be 2 or 3 and pixelsize
can be 24 or 30.
int sceDsiSetDisplayModeForDriver(SceDisplayHead head, int lanes, int pixelsize);
SceDsiForDriver_8610B795
Version | NID |
---|---|
3.60 | 0x8610B795 |
Sets internal struct member struct[head].unk1C = mul * struct[head].unk18 / div
.
int SceDsiForDriver_8610B795(SceDisplayHead head, int mul, int div);
sceDsiGenericShortWriteForDriver
Version | NID |
---|---|
3.60 | 0x89C00D2F |
Performs a MIPI DSI Generic Short Write, no parameters (0x03), MIPI DSI Generic Short Write, 1 parameter (0x13) or MIPI DSI Generic Short Write, 2 parameters (0x23) depending on the whether parami
is negative or not (bit 31 set).
int int sceDsiGenericShortWriteForDriver(SceDisplayHead head, int param0, int param1, int param2);
sceDsiSetScreenModeForDriver
Version | NID |
---|---|
3.60 | 0x97BFEA76 |
Temp name was sceDsiSetVicForDriver.
int sceDsiSetScreenModeForDriver(SceDisplayHead head, SceDisplayScreenMode screenMode);
sceDsiGenericReadRequestForDriver
Version | NID |
---|---|
3.60 | 0x98120684 |
Performs a MIPI DSI Generic Read Request, no parameters (0x04), or MIPI DSI Generic Read Request, 1 parameter (0x14) depending on the whether param
is negative or not (bit 31 set).
int sceDsiGenericReadRequestForDriver(SceDisplayHead head, int param, void *buff, SceSize size);
sceDsiDcsShortWriteForDriver
Version | NID |
---|---|
3.60 | 0xBA6BC89F |
If param1
is negative (bit 31 set), MIPI DSI DCS Short Write, no parameters (0x05) is performed. MIPI DSI DCS Short Write, 1 parameter (0x15) is performed otherwise.
int sceDsiDcsShortWriteForDriver(SceDisplayHead head, SceUInt16 param0, SceUInt32 param1);
sceDsiStartDisplayForDriver
Version | NID |
---|---|
0.940-3.60 | 0xC2E85919 |
int sceDsiStartDisplayForDriver(SceDisplayHead head, SceUInt32 control);
SceDsiForDriver_F2921E29
Version | NID |
---|---|
3.60 | 0xF2921E29 |
int SceDsiForDriver_F2921E29(SceDisplayHead head, SceUInt32 unk);
sceDsiQeuryResolutionSizeForDriver
Version | NID |
---|---|
0.940 | 0xFA9E2DC5 |
3.60 | sceDsiQueryResolutionSizeForDriver |
The typo in the function name was fixed since an unknown FW, and so the NID was updated. See also sceDsiQueryResolutionSizeForDriver.
sceDsiQueryResolutionSizeForDriver
Version | NID |
---|---|
0.940 | sceDsiQeuryResolutionSizeForDriver |
3.60 | 0xB3A70C05 |
Temp name was sceDsiGetVicResolutionForDriver.
For progressive modes, V_total = V_active + VFP + VSW + VBP
. For interlaced modes, V_total = V_active + 2 * (VFP + VSW + VBP) - 1
.
int sceDsiQueryResolutionSizeForDriver(SceDisplayScreenMode screenMode, int *width, int *height);
SceIftuForDriver
typedef struct SceIftuFrameBuf { unsigned int pixelformat; unsigned int width; /* Aligned to 16 */ unsigned int height; /* Aligned to 8 */ unsigned int leftover_stride; /* (pitch - aligned_w) * bpp */ unsigned int leftover_align; /* if YCbCr: (width >> 1) & 0xF [chroma align?] */ unsigned int paddr0; unsigned int paddr1; unsigned int paddr2; } SceIftuFrameBuf; /* size = 0x20 */ typedef struct SceIftuPlaneState { SceIftuFrameBuf fb; unsigned int unk20; // not observed to be non-zero unsigned int unk24; // not observed to be non-zero unsigned int unk28; // not observed to be non-zero unsigned int src_w; // inverse scaling factor in 16.16 fixed point unsigned int src_h; // inverse scaling factor in 16.16 fixed point unsigned int dst_x; // offset into the destination buffer unsigned int dst_y; // offset into the destination buffer unsigned int src_x; // offset into the source buffer in 8.8 fixed point unsigned int src_y; // offset into the source buffer in 8.8 fixed point unsigned int crop_top; unsigned int crop_bot; unsigned int crop_left; unsigned int crop_right; } SceIftuPlaneState; /* size = 0x54 */ typedef struct SceIftuCscParams { unsigned int post_add_0; /* 10-bit integer */ unsigned int post_add_1_2; /* 10-bit integer */ unsigned int post_clamp_max_0; /* 10-bit integer */ unsigned int post_clamp_min_0; /* 10-bit integer */ unsigned int post_clamp_max_1_2; /* 10-bit integer */ unsigned int post_clamp_min_1_2; /* 10-bit integer */ unsigned int ctm[3][3]; /* S3.9 fixed point format */ } SceIftuCscParams; /* size = 0x3C */ typedef struct SceIftuConvParams { unsigned int size; unsigned int unk04; SceIftuCscParams *csc_params1; // +0x08 SceIftuCscParams *csc_params2; // +0x0C unsigned int csc_control; // +0x10 unsigned int unk14; unsigned int unk18; unsigned int unk1C; unsigned int alpha; unsigned int unk24; } SceIftuConvParams; /* size = 0x28 */
sceIftuEnableForDriver
Version | NID |
---|---|
0.940-3.60 | 0x0D7C02F7 |
Temp name was SceIftuForDriver_0D7C02F7_plane_enable.
// plane must be between 0 and 3 int sceIftuEnableForDriver(unsigned int plane);
SceIftuForDriver_0FCBF457
Version | NID |
---|---|
3.60 | 0x0FCBF457 |
Set plane CSC (Color Space Conversion) information.
int SceIftuForDriver_0FCBF457_set_plane_csc2(unsigned int plane, SceIftuCscParams *param);
SceIftuForDriver_357EAE24
Version | NID |
---|---|
3.60 | 0x357EAE24 |
Sets plane alpha value. Only planes 1 and 3 support alpha blending. Supported alpha values are 0-0x100 where 0x100 is no transparency (alpha blending disable).
int SceIftuForDriver_357EAE24_set_plane_alpha(unsigned int plane, int alpha);
sceIftuSetInputFrameBufferForDriver
Version | NID |
---|---|
0.940-3.60 | 0x7CE0C4DA |
Set bilinear to 0 for nearest neighbour, set to 1 for bilinear filtering, set to -1 when plane_state is a zero struct.
int sceIftuSetInputFrameBufferForDriver(unsigned int plane_index, SceIftuPlaneState *plane_state, int bilinear, int sync);
sceIftuConvertForDriver
Version | NID |
---|---|
0.940-3.60 | 0x67E37EFC |
Temp name was sceIftuCscForDriver.
Performs Color Space Conversion (by using SceIftu2Reg).
int sceIftuConvertForDriver(SceIftuFrameBuf *dst_fb, SceIftuPlaneState *src_plane_state, SceIftuConvParams *conv_params);
sceIftuSetMergeSettingForDriver
Version | NID |
---|---|
0.940-3.60 | 0xAF19FD85 |
Temp name was SceIftuForDriver_AF19FD85_set_global_blending_control.
int sceIftuSetMergeSettingForDriver(unsigned int plane, int control);
sceIftuDisableForDriver
Version | NID |
---|---|
0.940-3.60 | 0xC11F30B3 |
Temp name was SceIftuForDriver_C11F30B3_plane_disable.
int sceIftuDisableForDriver(unsigned int plane);
SceIftuForDriver_D64F4C6B
Version | NID |
---|---|
3.60 | 0xD64F4C6B |
Set plane CSC (Color Space Conversion) information.
int SceIftuForDriver_D64F4C6B_set_plane_csc(unsigned int plane, SceIftuCscParams *param);
sceIftuSetOutputFormatForDriver
Version | NID |
---|---|
0.940-3.60 | 0xE6EE2C6B |
int sceIftuSetOutputFormatForDriver(int plane, int width, int height, int pixel_format, int interlaced);
SceCsiForDriver
SceCsiForDriver_10545393
Version | NID |
---|---|
0.940-3.60 | 0x10545393 |
Copies buf to memory.
// buf size is 0x2C int SceCsiForDriver_10545393(SceDisplayHead head, void *buf);
SceCsiForDriver_2AFEA1B0
Version | NID |
---|---|
0.940-3.60 | 0x2AFEA1B0 |
int SceCsiForDriver_2AFEA1B0(SceDisplayHead head, SceUInt a2);
SceCsiForDriver_4AE39F26
Version | NID |
---|---|
0.940-3.60 | 0x4AE39F26 |
Maybe CSI stop.
int SceCsiForDriver_4AE39F26(SceDisplayHead head);
SceCsiForDriver_A1D1805D
Version | NID |
---|---|
0.940-3.60 | 0xA1D1805D |
Maybe CSI start.
int SceCsiForDriver_A1D1805D(SceDisplayHead head);
SceCsiForDriver_B508822B
Version | NID |
---|---|
0.940-3.60 | 0xB508822B |
Sets a2 and a3 in memory.
int SceCsiForDriver_B508822B(SceDisplayHead head, int a2, int a3);
SceCsiForDriver_FC165297
Version | NID |
---|---|
0.940-3.60 | 0xFC165297 |
Sets a2 in memory.
int SceCsiForDriver_FC165297(SceDisplayHead head, int a2);