|
PSPSDK 2026-01-22
|
Data Structures | |
| struct | SceModule |
| Describes a loaded module in memory. More... | |
| struct | SceLoadCoreBootModuleInfo |
| struct | SceLibraryEntryTable |
| Defines a library and its exported functions and variables. More... | |
| struct | SceLibraryStubTable |
| Specifies a library and a set of imports from that library. More... | |
| struct | SceLoadCoreExecFileInfo |
Macros | |
| #define | SCE_KERNEL_MAX_MODULE_SEGMENT (4) |
Typedefs | |
| typedef s32(* | SceKernelRebootBeforeForKernel) (void *arg1, s32 arg2, s32 arg3, s32 arg4) |
| Reboot preparation functions. | |
| typedef s32(* | SceKernelRebootPhaseForKernel) (s32 arg1, void *arg2, s32 arg3, s32 arg4) |
| typedef struct SceModule | SceModule |
| Describes a loaded module in memory. | |
| typedef struct SceLibraryEntryTable | SceLibraryEntryTable |
| Defines a library and its exported functions and variables. | |
| typedef struct SceLibraryStubTable | SceLibraryStubTable |
| Specifies a library and a set of imports from that library. | |
| typedef struct SceLoadCoreExecFileInfo | SceLoadCoreExecFileInfo |
Enumerations | |
| enum | SceModuleAttribute { SCE_MODULE_ATTR_NONE = 0x0000 , SCE_MODULE_ATTR_CANT_STOP = 0x0001 , SCE_MODULE_ATTR_EXCLUSIVE_LOAD = 0x0002 , SCE_MODULE_ATTR_EXCLUSIVE_START = 0x0004 } |
| Module type attributes. More... | |
| enum | SceModulePrivilegeLevel { SCE_MODULE_USER = 0x0000 , SCE_MODULE_MS = 0x0200 , SCE_MODULE_USB_WLAN = 0x0400 , SCE_MODULE_APP = 0x0600 , SCE_MODULE_VSH = 0x0800 , SCE_MODULE_KERNEL = 0x1000 , SCE_MODULE_KIRK_MEMLMD_LIB = 0x2000 , SCE_MODULE_KIRK_SEMAPHORE_LIB = 0x4000 } |
| Module Privilege Levels - These levels define the permissions a module can have. More... | |
Functions | |
| SceModule * | sceKernelFindModuleByName (const char *modname) |
| Find a module by it's name. | |
| SceModule * | sceKernelFindModuleByAddress (unsigned int addr) |
| Find a module from an address. | |
| SceModule * | sceKernelFindModuleByUID (SceUID modid) |
| Find a module by it's UID. | |
| int | sceKernelModuleCount (void) |
| Return the count of loaded modules. | |
| void | sceKernelIcacheClearAll (void) |
| Invalidate the CPU's instruction cache. | |
| int | sceKernelCheckExecFile (void *buf, SceLoadCoreExecFileInfo *execInfo) |
| Check an executable file. | |
| int | sceKernelProbeExecutableObject (void *buf, SceLoadCoreExecFileInfo *execInfo) |
| Probe an executable file. | |
| int | sceKernelGetModuleIdListForKernel (SceUID *mod_id_list, u32 size, u32 *mod_count, u32 user_mods_only) |
| Receive a list of UIDs of loaded modules. | |
| int | sceKernelCheckPspConfig (void *buf, int size, int flag) |
| #define SCE_KERNEL_MAX_MODULE_SEGMENT (4) |
Reboot preparation functions.
| typedef struct SceLibraryEntryTable SceLibraryEntryTable |
Defines a library and its exported functions and variables.
Use the len member to determine the real size of the table (size = len * 4).
| typedef struct SceLibraryStubTable SceLibraryStubTable |
Specifies a library and a set of imports from that library.
Use the len member to determine the real size of the table (size = len * 4).
| typedef struct SceLoadCoreExecFileInfo SceLoadCoreExecFileInfo |
| typedef struct SceModule SceModule |
Describes a loaded module in memory.
This structure could change in future firmware revisions.
| enum SceModuleAttribute |
Module type attributes.
Module Privilege Levels - These levels define the permissions a module can have.
| int sceKernelCheckExecFile | ( | void * | buf, |
| SceLoadCoreExecFileInfo * | execInfo ) |
Check an executable file.
This contains scanning its ELF header and ~PSP header (if it has one) and filling the execInfo structure with basic information, like the ELF type, segment information, the size of the executable. The file is also uncompressed, if it was compressed before.
| buf | Pointer to the file's contents. |
| execInfo | Pointer to the executionInfo belonging to that executable. |
| int sceKernelCheckPspConfig | ( | void * | buf, |
| int | size, | ||
| int | flag ) |
| SceModule * sceKernelFindModuleByAddress | ( | unsigned int | addr | ) |
Find a module from an address.
| addr | - Address somewhere within the module. |
| SceModule * sceKernelFindModuleByName | ( | const char * | modname | ) |
Find a module by it's name.
| modname | - The name of the module. |
Find a module by it's UID.
| modid | - The UID of the module. |
Referenced by pspSdkFixupImports(), and pspSdkQueryModuleInfoV1().
| int sceKernelGetModuleIdListForKernel | ( | SceUID * | mod_id_list, |
| u32 | size, | ||
| u32 * | mod_count, | ||
| u32 | user_mods_only ) |
Receive a list of UIDs of loaded modules.
| mod_id_list | Pointer to a SceUID array which will receive the UIDs of the loaded modules. |
| size | Size of mod_id_list. Specifies the number of entries that can be stored into mod_id_list. |
| mod_count | A pointer which will receive the total number of loaded modules. |
| user_mods_only | Set to 1 to only receive UIDs from user mode modules. Set to 0 to receive UIDs from all loaded modules. |
| void sceKernelIcacheClearAll | ( | void | ) |
Invalidate the CPU's instruction cache.
| int sceKernelModuleCount | ( | void | ) |
Return the count of loaded modules.
Referenced by pspSdkGetModuleIdList().
| int sceKernelProbeExecutableObject | ( | void * | buf, |
| SceLoadCoreExecFileInfo * | execInfo ) |
Probe an executable file.
This contains calculating the sizes for the three segments TEXT, DATA and BSS, filling the execInfo structure with information about the location and sizes of the resident/stub library entry tables.
Furthermore, it is checked whether the executable has valid API type or not.
| buf | Pointer to the file's contents. |
| execInfo | Pointer to the executionInfo belonging to that executable. |