PSPSDK 2025-09-15
Loading...
Searching...
No Matches
Interface to the LoadCoreForKernel library.

Data Structures

struct  SceModule
 Describes a loaded module in memory. More...
 
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...
 

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.
 

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

SceModulesceKernelFindModuleByName (const char *modname)
 Find a module by it's name.
 
SceModulesceKernelFindModuleByAddress (unsigned int addr)
 Find a module from an address.
 
SceModulesceKernelFindModuleByUID (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.
 

Detailed Description

Typedef Documentation

◆ SceKernelRebootBeforeForKernel

typedef s32(* SceKernelRebootBeforeForKernel) (void *arg1, s32 arg2, s32 arg3, s32 arg4)

Reboot preparation functions.

◆ SceKernelRebootPhaseForKernel

typedef s32(* SceKernelRebootPhaseForKernel) (s32 arg1, void *arg2, s32 arg3, s32 arg4)

◆ SceLibraryEntryTable

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).

◆ SceLibraryStubTable

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).

◆ SceModule

typedef struct SceModule SceModule

Describes a loaded module in memory.

This structure could change in future firmware revisions.

Enumeration Type Documentation

◆ SceModuleAttribute

Module type attributes.

Enumerator
SCE_MODULE_ATTR_NONE 

No module attributes.

SCE_MODULE_ATTR_CANT_STOP 

Resident module - stays in memory.

You cannot unload such a module.

SCE_MODULE_ATTR_EXCLUSIVE_LOAD 

Only one instance of the module (one version) can be loaded into the system.

If you want to load another version of that module, you have to delete the loaded version first.

SCE_MODULE_ATTR_EXCLUSIVE_START 

Only one instance of the module (one version) can be started.

If you want to start another version of that module, you have to stop the currently running version first.

◆ SceModulePrivilegeLevel

Module Privilege Levels - These levels define the permissions a module can have.

Enumerator
SCE_MODULE_USER 

Lowest permission.

SCE_MODULE_MS 

POPS/Demo.

SCE_MODULE_USB_WLAN 

Module Gamesharing.

SCE_MODULE_APP 

Application module.

SCE_MODULE_VSH 

VSH module.

SCE_MODULE_KERNEL 

Highest permission.

SCE_MODULE_KIRK_MEMLMD_LIB 

The module uses KIRK's memlmd resident library.

SCE_MODULE_KIRK_SEMAPHORE_LIB 

The module uses KIRK's semaphore resident library.

Function Documentation

◆ sceKernelFindModuleByAddress()

SceModule * sceKernelFindModuleByAddress ( unsigned int addr)

Find a module from an address.

Parameters
addr- Address somewhere within the module.
Returns
Pointer to the SceModule structure if found, otherwise NULL.

◆ sceKernelFindModuleByName()

SceModule * sceKernelFindModuleByName ( const char * modname)

Find a module by it's name.

Parameters
modname- The name of the module.
Returns
Pointer to the SceModule structure if found, otherwise NULL.

◆ sceKernelFindModuleByUID()

SceModule * sceKernelFindModuleByUID ( SceUID modid)

Find a module by it's UID.

Parameters
modid- The UID of the module.
Returns
Pointer to the SceModule structure if found, otherwise NULL.

Referenced by pspSdkFixupImports(), and pspSdkQueryModuleInfoV1().

◆ sceKernelIcacheClearAll()

void sceKernelIcacheClearAll ( void )

Invalidate the CPU's instruction cache.

◆ sceKernelModuleCount()

int sceKernelModuleCount ( void )

Return the count of loaded modules.

Returns
The count of loaded modules.

Referenced by pspSdkGetModuleIdList().