PSPSDK 2026-01-22
Loading...
Searching...
No Matches
pspinit.h File Reference
Include dependency graph for pspinit.h:

Go to the source code of this file.

Data Structures

struct  SceBootCallback
 This structure represents a boot callback belonging to a module. More...
 
struct  SceInit
 This structure represents an Init control block. More...
 

Macros

#define sceKernelInitKeyConfig   sceKernelApplicationType
 

Typedefs

typedef enum PSPBootFrom PSPBootFrom
 The possible boot medium types for an executable.
 
typedef PSPBootFrom SceBootMediumType
 
typedef enum PSPInitApitype PSPInitApitype
 API types of an executable.
 
typedef enum PSPKeyConfig PSPKeyConfig
 Application types of an executable.
 
typedef PSPKeyConfig SceApplicationType
 
typedef struct SceBootCallback SceBootCallback
 This structure represents a boot callback belonging to a module.
 
typedef struct SceInit SceInit
 This structure represents an Init control block.
 

Enumerations

enum  PSPBootFrom {
  PSP_BOOT_FLASH = 0 , PSP_BOOT_DISC = 0x20 , PSP_BOOT_USBWLAN = 0x30 , PSP_BOOT_MS = 0x40 ,
  PSP_BOOT_EF = 0x50 , PSP_BOOT_FLASH3 = 0x80
}
 The possible boot medium types for an executable. More...
 
enum  PSPInitApitype {
  PSP_INIT_APITYPE_KERNEL = 0 , PSP_INIT_APITYPE_BUFFER_KERNEL = 0x02 , PSP_INIT_APITYPE_KERNEL_BLOCK = 0x03 , PSP_INIT_APITYPE_USER = 0x10 ,
  PSP_INIT_APITYPE_DNAS = 0x13 , PSP_INIT_APITYPE_NPDRM = 0x14 , PSP_INIT_APITYPE_VSH = 0x20 , PSP_INIT_APITYPE_BUFFER_VSH = 0x21 ,
  PSP_INIT_APITYPE_BUFFER_USBWLAN = 0x30 , PSP_INIT_APITYPE_BUFFER_MS = 0x42 , PSP_INIT_APITYPE_BUFFER_APP = 0x43 , PSP_INIT_APITYPE_BUFFER_BOOT_INIT_BTCNF = 0x51 ,
  PSP_INIT_APITYPE_BUFFER_BOOT_INIT_CONFIG = 0x52 , PSP_INIT_APITYPE_BUFFER_DECI = 0x70 , PSP_INIT_APITYPE_GAME_EBOOT = 0x110 , PSP_INIT_APITYPE_GAME_BOOT = 0x111 ,
  PSP_INIT_APITYPE_EMU_EBOOT_MS = 0x112 , PSP_INIT_APITYPE_EMU_BOOT_MS = 0x113 , PSP_INIT_APITYPE_EMU_EBOOT_EF = 0x114 , PSP_INIT_APITYPE_EMU_BOOT_EF = 0x115 ,
  PSP_INIT_APITYPE_NPDRM_MS = 0x116 , PSP_INIT_APITYPE_UNK117 = 0x117 , PSP_INIT_APITYPE_NPDRM_EF = 0x118 , PSP_INIT_APITYPE_UNK119 = 0x119 ,
  PSP_INIT_APITYPE_UMD = 0x120 , PSP_INIT_APITYPE_UMD_UPDATER = 0x121 , PSP_INIT_APITYPE_UMD_DEBUG = 0x122 , PSP_INIT_APITYPE_UMD_EMU_MS1 = 0x123 ,
  PSP_INIT_APITYPE_UMD_EMU_MS2 = 0x124 , PSP_INIT_APITYPE_UMD_EMU_EF1 = 0x125 , PSP_INIT_APITYPE_UMD_EMU_EF2 = 0x126 , PSP_INIT_APITYPE_USBWLAN = 0x130 ,
  PSP_INIT_APITYPE_USBWLAN_DEBUG = 0x131 , PSP_INIT_APITYPE_MS1 = 0x140 , PSP_INIT_APITYPE_MS2 = 0x141 , PSP_INIT_APITYPE_MS3 = 0x142 ,
  PSP_INIT_APITYPE_MS4 = 0x143 , PSP_INIT_APITYPE_MS5 = 0x144 , PSP_INIT_APITYPE_MS6 = 0x145 , PSP_INIT_APITYPE_EF1 = 0x151 ,
  PSP_INIT_APITYPE_EF2 = 0x152 , PSP_INIT_APITYPE_EF3 = 0x153 , PSP_INIT_APITYPE_EF4 = 0x154 , PSP_INIT_APITYPE_EF5 = 0x155 ,
  PSP_INIT_APITYPE_EF6 = 0x156 , PSP_INIT_APITYPE_UMD2 = 0x160 , PSP_INIT_APITYPE_UNK161 = 0x161 , PSP_INIT_APITYPE_MLNAPP_MS = 0x170 ,
  PSP_INIT_APITYPE_MLNAPP_EF = 0x171 , PSP_INIT_APITYPE_VSH_KERNEL = 0x200 , PSP_INIT_APITYPE_VSH1 = 0x210 , PSP_INIT_APITYPE_VSH2 = 0x220 ,
  PSP_INIT_APITYPE_KERNEL_REBOOT = 0x300 , PSP_INIT_APITYPE_DEBUG = 0x420 , PSP_INIT_APITYPE_DISC = PSP_INIT_APITYPE_UMD , PSP_INIT_APITYPE_DISC2 = PSP_INIT_APITYPE_UMD2 ,
  PSP_INIT_APITYPE_DISC_UPDATER = PSP_INIT_APITYPE_UMD_UPDATER , PSP_INIT_APITYPE_DISC_DEBUG = PSP_INIT_APITYPE_UMD_DEBUG , PSP_INIT_APITYPE_DISC_EMU_MS1 = PSP_INIT_APITYPE_UMD_EMU_MS1 , PSP_INIT_APITYPE_DISC_EMU_MS2 = PSP_INIT_APITYPE_UMD_EMU_MS2 ,
  PSP_INIT_APITYPE_DISC_EMU_EF1 = PSP_INIT_APITYPE_UMD_EMU_EF1 , PSP_INIT_APITYPE_DISC_EMU_EF2 = PSP_INIT_APITYPE_UMD_EMU_EF2 , PSP_INIT_APITYPE_MS_UPDATER = PSP_INIT_APITYPE_MS1 , PSP_INIT_APITYPE_MS_GAME = PSP_INIT_APITYPE_MS2 ,
  PSP_INIT_APITYPE_MS_APP = PSP_INIT_APITYPE_MS4 , PSP_INIT_APITYPE_MS_PS1 = PSP_INIT_APITYPE_MS5 , PSP_INIT_APITYPE_EF_UPDATER = PSP_INIT_APITYPE_EF1 , PSP_INIT_APITYPE_EF_GAME = PSP_INIT_APITYPE_EF2 ,
  PSP_INIT_APITYPE_EF_APP = PSP_INIT_APITYPE_EF4 , PSP_INIT_APITYPE_EF_PS1 = PSP_INIT_APITYPE_EF5 , PSP_INIT_APITYPE_VSH_EXITGAME = PSP_INIT_APITYPE_VSH1 , PSP_INIT_APITYPE_VSH_EXITVSH = PSP_INIT_APITYPE_VSH2
}
 API types of an executable. More...
 
enum  PSPKeyConfig {
  PSP_INIT_KEYCONFIG_VSH = 0x100 , PSP_INIT_KEYCONFIG_UPDATER = 0x110 , PSP_INIT_KEYCONFIG_GAME = 0x200 , PSP_INIT_KEYCONFIG_POPS = 0x300 ,
  PSP_INIT_KEYCONFIG_APP = 0x400
}
 Application types of an executable. More...
 

Functions

int sceKernelInitApitype ()
 Gets the api type.
 
char * sceKernelInitFileName ()
 Gets the filename of the executable to be launched after all modules of the api.
 
int sceKernelBootFrom ()
 Gets the device in which the application was launched.
 
int sceKernelApplicationType ()
 Get the key configuration in which the system has booted.
 
SceInitsceKernelQueryInitCB (void)
 Retrieve Init's internal control block.
 

Macro Definition Documentation

◆ sceKernelInitKeyConfig

#define sceKernelInitKeyConfig   sceKernelApplicationType

Typedef Documentation

◆ PSPBootFrom

typedef enum PSPBootFrom PSPBootFrom

The possible boot medium types for an executable.

◆ PSPInitApitype

API types of an executable.

sceKernelLoadModuleWithApitype

◆ PSPKeyConfig

typedef enum PSPKeyConfig PSPKeyConfig

Application types of an executable.

◆ SceApplicationType

◆ SceBootCallback

typedef struct SceBootCallback SceBootCallback

This structure represents a boot callback belonging to a module.

◆ SceBootMediumType

◆ SceInit

typedef struct SceInit SceInit

This structure represents an Init control block.

It holds information about the currently booted module by Init.

Enumeration Type Documentation

◆ PSPBootFrom

The possible boot medium types for an executable.

Enumerator
PSP_BOOT_FLASH 

The executable was booted via Flash 0 (1, 2).

PSP_BOOT_DISC 

The executable was booted via a Disc medium.

PSP_BOOT_USBWLAN 

The executable was booted via a Game-sharing medium.

PSP_BOOT_MS 

The executable was booted via the Memory Stick medium.

PSP_BOOT_EF 

The executable was booted via an unknown medium.

PSP_BOOT_FLASH3 

The executable was booted via Flash 3.

◆ PSPInitApitype

API types of an executable.

sceKernelLoadModuleWithApitype

Enumerator
PSP_INIT_APITYPE_KERNEL 
PSP_INIT_APITYPE_BUFFER_KERNEL 
PSP_INIT_APITYPE_KERNEL_BLOCK 
PSP_INIT_APITYPE_USER 
PSP_INIT_APITYPE_DNAS 
PSP_INIT_APITYPE_NPDRM 
PSP_INIT_APITYPE_VSH 
PSP_INIT_APITYPE_BUFFER_VSH 
PSP_INIT_APITYPE_BUFFER_USBWLAN 
PSP_INIT_APITYPE_BUFFER_MS 
PSP_INIT_APITYPE_BUFFER_APP 
PSP_INIT_APITYPE_BUFFER_BOOT_INIT_BTCNF 
PSP_INIT_APITYPE_BUFFER_BOOT_INIT_CONFIG 
PSP_INIT_APITYPE_BUFFER_DECI 
PSP_INIT_APITYPE_GAME_EBOOT 

GAME EBOOT.

PSP_INIT_APITYPE_GAME_BOOT 

GAME BOOT.

PSP_INIT_APITYPE_EMU_EBOOT_MS 

Emulated EBOOT Memory-Stick.

PSP_INIT_APITYPE_EMU_BOOT_MS 

Emulated BOOT Memory-Stick.

PSP_INIT_APITYPE_EMU_EBOOT_EF 

Emulated EBOOT EF.

PSP_INIT_APITYPE_EMU_BOOT_EF 

Emulated BOOT EF.

PSP_INIT_APITYPE_NPDRM_MS 

NP-DRM Memory-Stick.

PSP_INIT_APITYPE_UNK117 

Unknown.

PSP_INIT_APITYPE_NPDRM_EF 

NP-DRM EF.

PSP_INIT_APITYPE_UNK119 

Unknown.

PSP_INIT_APITYPE_UMD 

Executable on a disc.

PSP_INIT_APITYPE_UMD_UPDATER 

Updater executable on a disc.

PSP_INIT_APITYPE_UMD_DEBUG 

Disc debugger.

PSP_INIT_APITYPE_UMD_EMU_MS1 

NP-9660 game on Memory Stick.

PSP_INIT_APITYPE_UMD_EMU_MS2 

NP-9660 game with update/DLC (PBOOT.PBP) on Memory Stick.

PSP_INIT_APITYPE_UMD_EMU_EF1 

NP-9660 game on internal memory (ef0:).

PSP_INIT_APITYPE_UMD_EMU_EF2 

NP-9660 game with update/DLC (PBOOT.PBP) on internal memory (ef0:).

PSP_INIT_APITYPE_USBWLAN 

Game-sharing executable.

PSP_INIT_APITYPE_USBWLAN_DEBUG 

Unknown.

PSP_INIT_APITYPE_MS1 

Updater executable on a PBP in the Memory Stick.

PSP_INIT_APITYPE_MS2 

PSP executable on a PBP in the Memory Stick.

PSP_INIT_APITYPE_MS3 

Unknown.

PSP_INIT_APITYPE_MS4 

Applications (i.e.

Comic Reader) executable on a PBP in the Memory Stick.

PSP_INIT_APITYPE_MS5 

Playstation One executable on a PBP in the Memory Stick.

PSP_INIT_APITYPE_MS6 

Unknown.

Licensed games?

PSP_INIT_APITYPE_EF1 

Updater executable on a PBP in the internal memory (ef0:).

PSP_INIT_APITYPE_EF2 

PSP executable on a PBP in the internal memory (ef0:).

PSP_INIT_APITYPE_EF3 

Unknown.

Probably the same as MS3 but loading form ef0.

PSP_INIT_APITYPE_EF4 

Applications (i.e.

Comic Reader) executable on a PBP in the internal memory (ef0:).

PSP_INIT_APITYPE_EF5 

Playstation One executable on a PBP in the internal memory (ef0:).

PSP_INIT_APITYPE_EF6 

Unknown.

Probably the same as MS6 but loading form ef0.

PSP_INIT_APITYPE_UMD2 

Game/APP with update/DLC on a disc.

PSP_INIT_APITYPE_UNK161 

Unknown.

PSP_INIT_APITYPE_MLNAPP_MS 

MerlinDRM Applications on Memory Stick.

PSP_INIT_APITYPE_MLNAPP_EF 

MerlinDRM Applications on internal memory (ef0:).

PSP_INIT_APITYPE_VSH_KERNEL 

Exit VSH Kernel.

PSP_INIT_APITYPE_VSH1 

Exit Game.

PSP_INIT_APITYPE_VSH2 

Exit VSH.

PSP_INIT_APITYPE_KERNEL_REBOOT 

Kernel reboot.

PSP_INIT_APITYPE_DEBUG 

Debug.

Doesn't start reboot.

PSP_INIT_APITYPE_DISC 
PSP_INIT_APITYPE_DISC2 
PSP_INIT_APITYPE_DISC_UPDATER 
PSP_INIT_APITYPE_DISC_DEBUG 
PSP_INIT_APITYPE_DISC_EMU_MS1 
PSP_INIT_APITYPE_DISC_EMU_MS2 
PSP_INIT_APITYPE_DISC_EMU_EF1 
PSP_INIT_APITYPE_DISC_EMU_EF2 
PSP_INIT_APITYPE_MS_UPDATER 
PSP_INIT_APITYPE_MS_GAME 
PSP_INIT_APITYPE_MS_APP 
PSP_INIT_APITYPE_MS_PS1 
PSP_INIT_APITYPE_EF_UPDATER 
PSP_INIT_APITYPE_EF_GAME 
PSP_INIT_APITYPE_EF_APP 
PSP_INIT_APITYPE_EF_PS1 
PSP_INIT_APITYPE_VSH_EXITGAME 
PSP_INIT_APITYPE_VSH_EXITVSH 

◆ PSPKeyConfig

Application types of an executable.

Enumerator
PSP_INIT_KEYCONFIG_VSH 

The application is a VSH application (i.e.

VSH modules).

PSP_INIT_KEYCONFIG_UPDATER 

The application is an updater.

PSP_INIT_KEYCONFIG_GAME 

The application is a PSP game.

PSP_INIT_KEYCONFIG_POPS 

The application is a Playstation One game.

PSP_INIT_KEYCONFIG_APP 

The application is a PSP application (i.e.

Skype).

Function Documentation

◆ sceKernelApplicationType()

int sceKernelApplicationType ( )

Get the key configuration in which the system has booted.

Returns
the key configuration code, one of PSPKeyConfig values

◆ sceKernelBootFrom()

int sceKernelBootFrom ( )

Gets the device in which the application was launched.

Returns
the device code, one of PSPBootFrom values.

◆ sceKernelInitApitype()

int sceKernelInitApitype ( )

Gets the api type.

Returns
the api type in which the system has booted

◆ sceKernelInitFileName()

char * sceKernelInitFileName ( )

Gets the filename of the executable to be launched after all modules of the api.

Returns
filename of executable or NULL if no executable found.

◆ sceKernelQueryInitCB()

SceInit * sceKernelQueryInitCB ( void )

Retrieve Init's internal control block.

This control block manages execution details of an executable, like its API type, its boot medium and its application type.

Returns
A pointer to Init's internal control block.