SceLowio: Difference between revisions
Line 328: | Line 328: | ||
== SceIftuForDriver == | == SceIftuForDriver == | ||
<source lang="c"> | |||
typedef struct SceIftuPlaneInfo { | |||
unsigned int pixelformat; | |||
unsigned int width; | |||
unsigned int height; | |||
unsigned int leftover_stride; | |||
unsigned int unk10; // always 0 | |||
unsigned int paddr; | |||
unsigned int unk18; | |||
unsigned int unk1C; | |||
unsigned int unk20; //? | |||
unsigned int unk24; | |||
unsigned int unk28; | |||
unsigned int src_x; // 16.16 fixed point | |||
unsigned int src_y; // 16.16 fixed point | |||
unsigned int src_h; // 16.16 fixed point | |||
unsigned int src_w; // 16.16 fixed point | |||
unsigned int unk3C; | |||
unsigned int unk40; | |||
unsigned int unk44; | |||
unsigned int leftover_height; | |||
unsigned int unk4C; | |||
unsigned int leftover_width; | |||
} SceIftuPlaneInfo; /* size = 0x54 */ | |||
</source> | |||
=== SceIftuForDriver_7CE0C4DA === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x7CE0C4DA | |||
|} | |||
Setups a plane. | |||
<source lang="c">int SceIftuForDriver_7CE0C4DA(unsigned int plane_idx, SceIftuPlaneInfo *plane_info, int flags, int sync)</source> | |||
== SceCsiForDriver == | == SceCsiForDriver == |
Revision as of 10:10, 17 July 2017
Module
Known NIDs
Version | Name | World | Privilege | NID |
---|---|---|---|---|
1.69 | SceLowio | Non-secure | Kernel | 0x19E0E42F |
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_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_2F195C97
Version | NID |
---|---|
3.60 | 0x18DD8043 |
Turns on the clock (|= mask) of the device (GPIO) at offset 0x100
with mask = 1.
int ScePervasiveForDriver_2F195C97(void);
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_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_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);
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);
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);
SceGpioForDriver
If bus
is 0
, the SceGpio0Reg
registers are used, and if bus
is 1
, the SceGpio1Reg
registers are used.
ksceGpioQueryIntr
Version | NID |
---|---|
3.60 | 0x010DC295 |
int ksceGpioQueryIntr(int bus, int port);
ksceGpioSetPortMode
Version | NID |
---|---|
3.60 | 0x372022A4 |
int ksceGpioSetPortMode(int bus, int port, int mode);
ksceGpioSetIntrMode
Version | NID |
---|---|
3.60 | 0xBBEA1DDC |
int ksceGpioSetIntrMode(int bus, int intr, int mode);
ksceGpioPortSet
Version | NID |
---|---|
3.60 | 0xD454A584 |
int ksceGpioPortSet(int bus, int port);
ksceGpioPortClear
Version | NID |
---|---|
3.60 | 0xF6310435 |
int ksceGpioPortClear(int bus, int port);
ksceGpioAcquireIntr
Version | NID |
---|---|
3.60 | 0x35AAD77A |
int ksceGpioAcquireIntr(int bus, int intr);
ScePwmForDriver
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 | |
3.60 | 0x9CF8F3D6 | |
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
SceCdramForDriver
SceDsiForDriver
SceIftuForDriver
typedef struct SceIftuPlaneInfo { unsigned int pixelformat; unsigned int width; unsigned int height; unsigned int leftover_stride; unsigned int unk10; // always 0 unsigned int paddr; unsigned int unk18; unsigned int unk1C; unsigned int unk20; //? unsigned int unk24; unsigned int unk28; unsigned int src_x; // 16.16 fixed point unsigned int src_y; // 16.16 fixed point unsigned int src_h; // 16.16 fixed point unsigned int src_w; // 16.16 fixed point unsigned int unk3C; unsigned int unk40; unsigned int unk44; unsigned int leftover_height; unsigned int unk4C; unsigned int leftover_width; } SceIftuPlaneInfo; /* size = 0x54 */
SceIftuForDriver_7CE0C4DA
Version | NID |
---|---|
3.60 | 0x7CE0C4DA |
Setups a plane.
int SceIftuForDriver_7CE0C4DA(unsigned int plane_idx, SceIftuPlaneInfo *plane_info, int flags, int sync)