Modules: Difference between revisions

From Vita Development Wiki
Jump to navigation Jump to search
No edit summary
 
(27 intermediate revisions by 3 users not shown)
Line 3: Line 3:
A module is distinctive by its fingerprint (a sort of hash) and in most cases its name, but the same module name can be used in both the non-secure kernel and the secure kernel, for instance [[SceSysmem]].
A module is distinctive by its fingerprint (a sort of hash) and in most cases its name, but the same module name can be used in both the non-secure kernel and the secure kernel, for instance [[SceSysmem]].


On PS Vita, most modules are loaded by the [[SceKernelModulemgr]] module, itself loaded by the [[NSKBL]].
== PS Vita modules ==


== SceModuleInfo ==
On PS Vita, most non-secure modules are loaded by the [[SceKernelModulemgr]] module, itself loaded by the [[NSKBL]]. Most PS Vita [[Secure Modules]] are loaded by the [[Secure Kernel]].


It contains information on the module, and on its imports/exports.
There are two big categories of modules on PS Vita: [[PRX]] which are made for the ARM processor and usually are relocatable, and [[Secure Modules]] which are made for the [[Cmep]] processor and are not relocatable.


=== Location ===
== Program Authority Id ==
 
* For non-stripped modules, SceModuleInfo structure is located in ".sceModuleInfo.rodata" memory block.
 
* For ET_SCE_EXEC modules, when e_entry is not null, SceModuleInfo structure is located in text segment at offset e_entry. Else it is located in text segment (first LOAD segment) at offset Elf32_Phdr[text_seg_id].p_paddr - Elf32_Phdr[text_seg_id].p_offset.
 
* For ET_SCE_RELEXEC modules, SceModuleInfo structure is located in the segment indexed by the upper two bits of e_entry of the ELF header. The structure is stored at the base offset of the segment plus the offset defined by the bottom 30 bits of e_entry.
 
=== Structure ===
 
Some fields are optional and can be set to zero. The other fields determine how this
module is loaded and linked. All offset fields are formatted as follows: top 2 bits is an index to the segment to start at and bottom 30 bits is an offset from the segment start. Currently, the
segment start index must match the segment that the module information structure is in.
 
{| class="wikitable"
|-
! Name
! Description
|-
| modattribute
| Attributes of the module. See [[#Module attribute]]
|-
| modversion
| Major version of the module (usually set to 1) followed by Minor version of the module (usually set to 1).
|-
| modname
| Name of the module. Null-terminated string.
|-
| infover
| SceModuleInfo version. Old name was "terminal" on PSP. Seen values are: 0 on PSP and PS3, 1 never seen, 2 on PS Vita FW 0.902, 3 on PS Vita FW 0.931.010, 6 on PS Vita FWs 0.940-3.740.011.
|-
| gp_value
| global pointer value for MIPS, TOC address (address of .toc) for PowerPC, always 0 for ARM.
|-
| ent_top
| Offset to top of [[#Exports|exports]] array
|-
| ent_btm
| Offset to bottom of [[#Exports|exports]] array
|-
| stub_top
| Offset to top of [[#Imports|imports]] array
|-
| stub_btm
| Offset to bottom of [[#Imports|imports]] array
|-
| dbg_fingerprint
| It was wrongly named module NID. It is a sort of hash to ensure integrity and versioning.
|-
| tls_start
| Offset to start of TLS (Thread Local Storage).
|-
| tls_filesz
| Certainly equals (tls_end - tls_start).
|-
| tls_memsz
| Certainly equals (tls_initialized_data_end - tls_start).
|-
| start_entry
| Offset to module_start function. -1 to disable.
|-
| stop_entry
| Offset to module_stop function. -1 to disable.
|-
| arm_exidx_top
| Offset to top of ARM EXIDX (optional)
|-
| arm_exidx_btm
| Offset to bottom of ARM EXIDX (optional)
|-
| arm_extab_top
| Offset to top of ARM EXTAB (optional)
|-
| arm_extab_btm
| Offset to bottom of ARM EXTAB (optional)
|}
 
<source lang="C">
#define MODULE_NAME_MAX_LEN 27
 
typedef struct SceModuleInfo_common { // size is 0x20
  unsigned short modattribute;
  unsigned char modversion[2];
  char modname[MODULE_NAME_MAX_LEN];
  unsigned char infover;
} SceModuleInfo_common;
 
typedef struct SceModuleInfo_v0 { // size is 0x34
  SceModuleInfo_common c;
  Elf32_Addr gp_value;
  Elf32_Addr ent_top;
  Elf32_Addr ent_btm;
  Elf32_Addr stub_top;
  Elf32_Addr stub_btm;
} SceModuleInfo_v0;
 
typedef struct SceModuleInfo_v1 { // size is 0x40
  SceModuleInfo_common c;
  Elf32_Addr gp_value;
  Elf32_Addr ent_top;
  Elf32_Addr ent_btm;
  Elf32_Addr stub_top;
  Elf32_Addr stub_btm;
  Elf32_Word dbg_fingerprint;
  Elf32_Addr start_entry;
  Elf32_Addr stop_entry;
} SceModuleInfo_v1;
 
typedef struct SceModuleInfo_v2 { // size is 0x48
  SceModuleInfo_common c;
  Elf32_Addr gp_value;
  Elf32_Addr ent_top;
  Elf32_Addr ent_btm;
  Elf32_Addr stub_top;
  Elf32_Addr stub_btm;
  Elf32_Word dbg_fingerprint;
  Elf32_Addr start_entry;
  Elf32_Addr stop_entry;
  Elf32_Addr arm_exidx_top;
  Elf32_Addr arm_exidx_btm;
} SceModuleInfo_v2;
 
typedef struct SceModuleInfo_v3 { // size is 0x54
  SceModuleInfo_common c;
  Elf32_Addr gp_value;
  Elf32_Addr ent_top;
  Elf32_Addr ent_btm;
  Elf32_Addr stub_top;
  Elf32_Addr stub_btm;
  Elf32_Word dbg_fingerprint;
  Elf32_Addr start_entry;
  Elf32_Addr stop_entry;
  Elf32_Addr arm_exidx_top;
  Elf32_Addr arm_exidx_btm;
  Elf32_Addr tls_start;
  Elf32_Addr tls_filesz;
  Elf32_Addr tls_memsz;
} SceModuleInfo_v3;
 
typedef struct SceModuleInfo_v6 { // size is 0x5C
  SceModuleInfo_common c;
  Elf32_Addr gp_value;
  Elf32_Addr ent_top;
  Elf32_Addr ent_btm;
  Elf32_Addr stub_top;
  Elf32_Addr stub_btm;
  Elf32_Word dbg_fingerprint;
  Elf32_Addr tls_start;
  Elf32_Addr tls_filesz;
  Elf32_Addr tls_memsz;
  Elf32_Addr start_entry;
  Elf32_Addr stop_entry;
  Elf32_Addr arm_exidx_top;
  Elf32_Addr arm_exidx_btm;
  Elf32_Addr arm_extab_top;
  Elf32_Addr arm_extab_btm;
} SceModuleInfo_v6;
</source>
 
=== Module attribute ===
 
The attributes of a module (PSP, PS Vita, ?PS3 to check?). Bitwise OR'ed values from ::SceModuleAttribute and ::SceModulePrivilegeLevel. Since PS Vita SDK 0.940, SceModulePrivilegeLevel are not set anymore and unused in PS Vita OS.
 
* Most usermode modules and a few kernel modules have it set to 0.
* Most kernel modules have it set to 7.
* Attribute 0x800 was seen in FW 0.902 cui_update_starter_module.self and FW 0.995 debug comicreader.elf. That attribute was set because these ELFs were compiled with an old PS Vita SDK (<= 0.930) that inherited privilege level attributes from the PSP SDK.
 
{| class="wikitable"
! Value !! Name !! Comments
|-
| ?0x20? || SCE_MODULE_ATTR_CANT_SHARE ||
|-
| ?0x10? || SCE_MODULE_ATTR_CAN_RELOCATE ||
|-
| ?0x8? || SCE_MODULE_ATTR_CAN_RESTART ||
|-
| 0x4 || SCE_MODULE_ATTR_EXCLUSIVE_START || Only one instance of the module can be started. If you want to start another version of that module, you have to stop the currently running version first.
|-
| 0x2 || SCE_MODULE_ATTR_EXCLUSIVE_LOAD || Only one instance of the module can be loaded. If you want to load another version of that module, you have to unload the currently loaded version first.
|-
| 0x1 || SCE_MODULE_ATTR_CANT_STOP || Resident module i.e. module that stays in memory til poweroff. Such a module cannot be unloaded.
|-
| 0x0 || SCE_MODULE_ATTR_NONE || No module attributes.
|}
 
<source lang="C">
/**
* Module type attributes.
*/
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 Privilege Levels - These levels define the permissions a
* module can have.
*/
enum SceModulePrivilegeLevel {
    /** Lowest permission. */
    SCE_MODULE_USER                = 0x0000,
    /** MS modeul. POPS/Demo. */
    SCE_MODULE_MS                  = 0x0200,
    /** USB WLAN module. Gamesharing */
    SCE_MODULE_USBWLAN              = 0x0400,
    /** Application module. */
    SCE_MODULE_APP                  = 0x0600,
    /** VSH module. */
    SCE_MODULE_VSH                  = 0x0800,
    /** Kernel module. Highest permission. */
    SCE_MODULE_KERNEL              = 0x1000,
    /** The module uses KIRK's memlmd resident library. */
    SCE_MODULE_KIRK_MEMLMD_LIB      = 0x2000,
    /** The module uses KIRK's semaphore resident library. */
    SCE_MODULE_KIRK_SEMAPHORE_LIB  = 0x4000
};
</source>
 
== Modules imports-exports ==
 
Each module contains zero or more library exports and zero or more library imports. An exported library groups together related functions along with their [[NID]] and exports it for [[SceKernelModulemgr]] to link with a library import in another module.
 
=== Exports ===
 
An array of export entries defines all the libraries exported by the module.
 
==== NID ====
 
If there is a change in the ForKernel library between FWs, the ForKernel NID will change.
 
However, the NID of a ForKernel library that is intentionally assigned an arbitrary NID, such as SceSysrootForKernel, does not change.
 
Therefore, when the lower level ForKernel NID is changed, the ForKernel library NID existing in the module A that imports it is changed in a chain reaction. In addition, the NID of ForKernel Library A has changed, so more chain reaction will occur.
 
==== Structure ====


Kernel modules that export syscalls (user accessible libraries) also get entries added to the [[Syscalls|syscall]] table. The syscall table is randomized on each boot so the same function will likely get a different [[Syscalls|syscall]] number assigned each time.
[https://www.psdevwiki.com/ps3/Program_Authority_ID#PSVita See also]


{| class="wikitable"
{| class="wikitable"
! Name !! Description
|-
| size || Size of the structure in bytes (usually 0x1C or 0x20)
|-
|-
| auxattribute || Unknown. Was added recently.
! Bit mask !! program-authority-id !! Description
|-
|-
| version || Library version (usually 1)
| 0xFFF0000000000000 || 0x2100000000000000 || Game
|-
|-
| attribute || [[Modules#Library_attribute|Library attribute flags]]
| 0xFFF0000000000000 || 0x2200000000000000 || ?Non-Game?
|-
|-
| nfunc || Number of exported functions
| 0xFFF0000000000000 || 0x2800000000000000 || KBL
|-
|-
| nvar || Number of exported variables
| 0xFFF0000000000000 || 0x2E00000000000000 || Security Module
|-
|-
| ntls || Number of exported TLS variables
| 0xFFFFFFFF00000000 || 0x2F00000000000000 || fSELF
|-
|-
| hashinfo || hash info (funcinfo + varinfo<<4). See [[Modules#Hash_Info]].
| 0x20000 || 0x20000 || ?System module?
|-
|-
| hashinfotls || tls hash info. See [[Modules#Hash_Info]].
| 0xFFF8000000000000 || 0x2808000000000000 || is ThreadAccessLevel::Kernel's next do-anything and has very risky permissions.
|-
|-
| reserved || Reserved.
| 0xFFFFFFFFFFFFFFFF || 0x2808000000000001 || Kernel process authid (pid: 0x10005)
|-
|-
| nidaltsets || Unknown. usually 0
| 0xFFFFFFFFFFFFFFFF || 0x2F00000000000001 || Dummy game process authid (pid: 0x10013)
|-
|-
| libname_nid || Library [[NID]]
| 0xFFFFFFFFFFFFFFFF || 0x2800000000000001 || Dummy system process authid (pid: 0x10015)
|-
| libname || Pointer to library name. Set to 0 for NONAME.
|-
| nid_table || Pointer to array of [[NID]]s of exports
|-
| entry_table || Pointer to array of pointers of exports
|}
|}
<source lang="C">
typedef struct _scelibent_psp { // size is 0x10 or 0x14
Elf32_Addr libname; /* <libname> (0 if NONAME) */
unsigned short version; /* <version> */
unsigned short attribute; /* <attribute> */
unsigned char size; /* struct size in dwords */
unsigned char nvar; /* number of variables */
unsigned short nfunc; /* number of functions */
Elf32_Addr entry_table; /* <entry_table> addr (in .rodata.sceResident) */
union {
unsigned int unk_0x10; /* Not always present. Might be alias_table. ex: 0x20000 */
};
} SceLibEntryTable_psp;
typedef struct _scelibent_common { // size is 0x10
unsigned char size;
unsigned char auxattribute;
unsigned short version;
unsigned short attribute;
unsigned short nfunc;
unsigned short nvar;
unsigned short ntls;
unsigned char hashinfo;
unsigned char hashinfotls;
unsigned char reserved;
unsigned char nidaltsets;
} SceLibEntryTable_common;
typedef struct _scelibent_1C { // size is 0x1C
SceLibEntryTable_common c;
Elf32_Addr libname;
Elf32_Addr nid_table;
Elf32_Addr entry_table;
} SceLibEntryTable_1C;
typedef struct _scelibent_20 { // size is 0x20
SceLibEntryTable_common c;
Elf32_Word libname_nid;
Elf32_Addr libname;
Elf32_Addr nid_table;
Elf32_Addr entry_table;
} SceLibEntryTable_20;
</source>
==== Hash Info ====
Hash info is a number which depends of the number of exports. It can have values: 0, 2, 4 or 6.
It is related to NID Hash Table, which is still a mystery.
<source lang="C">
#define HASHINFO_LIMIT 0x10
int getHashInfo(uint16_t num) {
if ((HASHINFO_LIMIT == 0) || (num < HASHINFO_LIMIT))
return 0;
else if (num < 0x40)
return 2;
else if (num < 0x100)
return 4;
else
return 6;
}
int getHashInfo(SceLibEntryTable_common *table) {
return getHashInfo(table->nfunc) + getHashInfo(table->nvar) << 4;
}
int getHashInfoTls(SceLibEntryTable_common *table) {
return getHashInfo(table->ntls);
}
</source>
==== NONAME exports ====
Old name was "syslib", short name for "system library".
There is a special export entry that always shows up (even when the module exports no libraries) with attribute 0x8000 and NID 0x00000000 that exports the module_start, module_stop, module_exit functions for example.
The NIDs for these exports are common for all modules. See [https://www.psdevwiki.com/ps3/NID here] for NID generation algorithm.
For PS Vita:
{| class="wikitable"
! Name !! Type !! NID !! Definition
|-
| module_start || Function || 0x935CD196 || <code>int module_start(SceSize arglen, const void *argp);</code>
|-
| module_stop || Function || 0x79F8E492 || <code>int module_stop(SceSize arglen, const void *argp);</code>
|-
| module_exit || Function || 0x913482A9 || <code>int module_exit(SceSize arglen, const void *argp);</code>
|-
| module_bootstart || Function || 0x5C424D40 || <code>int module_bootstart(SceSize arglen, const void *argp);</code>
|-
| module_suspend || Function || 0xDD42FA37 || <code>int module_suspend(void);</code> Supported in FW 0.990.030, unsupported as of firmware 3.65. Present in FW 0.990.030 [[SceKernelModulemgr]].
|-
| module_proc_create || Function || 0xE640E30C || <code>SceInt32 module_proc_create(ScePID pid, void* pParam, void* pCommon);</code> Supported in FW 0.931.010-0.990.030, unsupported as of firmware 3.65. Seemingly never used.
|-
| module_proc_exit || Function || 0x4F0EE5BD || <code>SceInt32 module_proc_exit(ScePID pid, void* pParam, void* pCommon);</code> Supported in FW 0.931.010-0.990.030, unsupported as of firmware 3.65. Seemingly never used.
|-
| module_proc_kill || Function || 0xDF0212B9 || <code>SceInt32 module_proc_kill(ScePID pid, void* pParam, void* pCommon);</code> Supported in FW 0.931.010-0.990.030, unsupported as of firmware 3.65. Seemingly never used.
|-
| module_info || Variable || 0x6C2224BA || <code>SceModuleInfo</code> structure
|-
| module_proc_param || Variable || 0x70FBA1E7 || <code>SceProcessParam</code> structure
|-
| module_sdk_version || Variable || 0x936C8A78 || <code>SceUInt32</code> variable - Used in FW 2.10.
|-
| module_dtrace_probes_info || Variable || 0x9318D9DD || <code>sdt_probes_info_t</code> structure. Present in [[SceKernelThreadMgr]], [[SceProcessmgr]], [[SceDisplay]]. Reserved for kernel modules. Used by [[SceDeci4pDtracep]].
|-
| module_dtrace_probes || Variable || 0x8CE938B1 || An array of <code>sdt_probes_info_t.count</code> pointers to <code>sdt_probedesc_t</code>. Present in [[SceKernelThreadMgr]], [[SceProcessmgr]], [[SceDisplay]]. Reserved for kernel modules. Used by [[SceDeci4pDtracep]].
|-
| sce_module_start_thread_parameter || Variable || 0x1A9822A4 || Pointer to <code>SceModuleThreadParameter</code>. Defines the parameters used to create the thread that runs the <code>module_start</code> function. Reserved for usermode modules.
|-
| sce_module_stop_thread_parameter || Variable || 0xD20886EB || Pointer to <code>SceModuleThreadParameter</code>. Defines the parameters used to create the thread that runs the <code>module_stop</code> function. Reserved for usermode modules.
|}
For PSP:
{| class="wikitable"
! Name !! Type !! NID !! Definition
|-
| module_start || Function || 0xD632ACDB || <code>int module_start(int arglen, const void *argp);</code>
|-
| module_stop || Function || 0xCEE8593C || <code>int module_stop(int arglen, const void *argp);</code>
|-
| module_bootstart || Function || 0xD3744BE0 || <code>int module_bootstart(int arglen, const void *argp);</code>
|-
| module_reboot_before || Function || 0x2F064FA6 || <code>int module_reboot_before(void);</code>
|-
| module_reboot_phase || Function || 0xADF12745 || <code>int module_reboot_phase(void)</code>
|-
| module_info || Variable || 0xF01D73A7 || <code>SceModuleInfo</code>
|-
| module_start_thread_parameter || Variable || 0x0F7C276C || <code>SceModuleThreadParameter</code>
|-
| module_stop_thread_parameter || Variable || 0xCF0CC697 || <code>SceModuleThreadParameter</code>
|-
| module_reboot_before_thread_parameter || Variable || 0xF4F4299D || <code>SceModuleThreadParameter</code>
|-
| module_sdk_version || Variable || 0x11B97506 || <code>int</code>
|-
| module_linked || Variable || 0x900DADE1 ||
|-
| module_unlinked || Variable || 0x592743D8 ||
|}
<source lang="C">
# Temporary name was: SceModuleEntryThread
typedef struct SceModuleThreadParameter { // Size is 0x10 bytes on PSP, 0x14 on Vita
    /* The number of thread parameters. Must be 4 on Vita. */
    SceUInt32 numParams;
    /* The initial priority of the entry thread. Default value is SCE_KERNEL_DEFAULT_PRIORITY. */
    SceUInt32 initPriority;
    /* The stack size of the entry thread. Default value is SCE_KERNEL_THREAD_STACK_SIZE_DEFAULT_USER_MAIN (256KiB). */
    SceSize stackSize;
    /* The attributes of the entry thread. Always ignored on Vita. */
    SceUInt32 attr;
    /* The CPU affinity mask of the entry thread. Only present on Vita. Default value is SCE_KERNEL_THREAD_CPU_AFFINITY_MASK_DEFAULT. */
    SceInt32 cpuAffinityMask;
} SceModuleThreadParameter;
// Temporary names were: SceModuleStaticProbesInfo, SceModuleDTraceProbesInfo
typedef struct sdt_probes_info { // size is 0x8 bytes on FWs 0.931.010-3.740.011
    unsigned int version; // Always 1
    unsigned int count; // Number of probes. ex: 1, 5, 7, 16
} sdt_probes_info_t;
typedef union {
void (*handler0)(const struct sdt_probedesc *desc);
void (*handler1)(const struct sdt_probedesc *desc, uintptr_t arg0);
void (*handler2)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1);
void (*handler3)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2);
void (*handler4)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3);
void (*handler5)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4);
void (*handler6)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4, uintptr_t arg5);
void (*handler7)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4, uintptr_t arg5, uintptr_t arg6);
void (*handler8)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4, uintptr_t arg5, uintptr_t arg6, uintptr_t arg7);
void (*handler9)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4, uintptr_t arg5, uintptr_t arg6, uintptr_t arg7, uintptr_t arg8);
void (*handler10)(const struct sdt_probedesc *desc, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4, uintptr_t arg5, uintptr_t arg6, uintptr_t arg7, uintptr_t arg8, uintptr_t arg9);
} sdpd_handler_t;
// Temporary names were: SceModuleStaticProbe, SceModuleDTraceProbe
typedef struct sdt_probedesc { // size is 0x28 on FWs 0.931.010-3.740.011
unsigned int *sdpd_id; // probe ID
const char *sdpd_provider; // name of provider
const char *sdpd_name; // name of probe
void *sdpd_offset; // instrumentation point (address)
sdpd_handler_t *sdpd_handler_fn; // probe handler_fn function (NULL if disabled)
void *sdpd_private; // probe private data
void (*sdpd_create_fn)(const struct sdt_probedesc *desc); // probe create helper function (NULL if unused)
void (*sdpd_enable_fn)(const struct sdt_probedesc *desc); // probe enable helper function (NULL if unused)
void (*sdpd_disable_fn)(const struct sdt_probedesc *desc); // probe disable helper function (NULL f unused)
void (*sdpd_destroy_fn)(const struct sdt_probedesc *desc); // probe destroy helper function (NULL if unused)
} sdt_probedesc_t;
typedef struct SceLibcParam { // size is 0x1C on FW 0.930, 0x30 on FWs 1.80-1.81, 0x38 on FWs 2.00-3.740.011
SceSize size; // Size of this structure
SceLibEntryTable_1C *_SceLibcParam_0001_ent_head; // Pointer to SceLibcParam library information
SceSize *sceLibcHeapSize; // Pointer to heap size
SceSize *__sceLibcHeapSizeDefault; // Pointer to heap size
SceUInt32 *sceLibcHeapExtendedAlloc; // Pointer to flag to dynamically extend heap size
SceUInt32 *sceLibcHeapDelayedAlloc; // Pointer to flag to allocate heap on first call to malloc
SceUInt32 sdk_version; // SDK version
SceUInt32 unk_1C; // ex: 9
void *__sce_libc_alloc_replace; // Pointer to replacement functions for Libc memory allocation functions
void *__sce_libcxx_alloc_replace; // Pointer to replacement functions for Libcxx (C++) memory allocation functions
SceSize *heap_initial_size; // Pointer to dynamically allocated heap initial size
SceUInt32 *heap_unit_1mb; // Pointer to flag to change alloc unit size from 64kB to 1MB
union {
struct {
SceUInt32 *heap_detect_overrun; // Pointer to flag to detect heap buffer overruns
void *__sce_libc_tls_alloc_replace; // Pointer to replacement functions for TLS memory allocation functions
};
};
} SceLibcParam;
typedef struct SceProcessParam { // size is 0x20 on FW 0.895, 0x2C on FW 0.931.010, 0x30 on FW 0.945, 0x34 on FW 3.60
SceSize size; // Size of this structure
SceUInt32 magic; // "PSP2"
SceUInt32 version; // Version of this structure. Implies number of extended entries. ex: 1 on FW 0.895, 4 on FW 0.931.010, 5 on FW 0.945, 6 on FW 3.60
SceUInt32 sdk_version; // ex: 0x00895000 on FW 0.895.000, 0x00931010 on FW 0.931.010
union {
struct {
char *sceUserMainThreadName; // ex: "main_thread"
SceInt32 sceUserMainThreadPriority; // ex: 0x20, 0xA0, 0x10000100
SceUInt32 sceUserMainThreadStackSize; // ex: 256 * 1024, 1024 * 1024
SceUInt32 sceUserMainThreadAttribute;
char *sceProcessName;
SceUInt32 sce_process_preload_disabled;
SceUInt32 sceUserMainThreadCpuAffinityMask;
SceLibcParam *sce_libcparam;
SceUInt32 unk_0x30;
};
};
} SceProcessParam;
</source>
=== Imports ===
Each module can import any number of libraries from other modules by specifying the library [[NID]] to import along with a list of functions/variables [[NID]]s to import. [[SceKernelModulemgr]] does the dynamic linking by either jumping to an address if the two modules are in the same privilege level, or making a [[Syscalls|syscall]] if it is usermode module importing a library exported by a kernel module. Kernel modules cannot import user libraries.
{| class="wikitable"
! Name !! Description
|-
| size || Size of the structure (usually 0x24, 0x2C or 0x34)
|-
| version || Library version (ex: 1, 5)
|-
| attribute || [[Modules#Library_attribute|Library attribute flags]]
|-
| nfunc || Number of imported functions
|-
| nvar || Number of imported variables
|-
| ntls || Number of imported TLS variables
|-
| reserved || unk
|-
| libname_nid || Library [[NID]]
|-
| libname || Pointer to library name
|-
| sce_sdk_version || usually 0
|-
| func_nid_table || Pointer to array of imported functions [[NID]]s
|-
| func_entry_table || Pointer to array of imported functions stubs offsets
|-
| var_nid_table || Pointer to array of imported variables [[NID]]s
|-
| var_entry_table || Pointer to array of imported variables offsets
|-
| tls_nid_table || Pointer to array of imported TLS variables [[NID]]s
|-
| tls_entry_table || Pointer to array of imported TLS variables offsets
|}
<source lang="C">
typedef struct _scelibstub_psp { // size is 0x14 or 0x18
Elf32_Addr libname; /* library name */
unsigned short version; /* version */
unsigned short attribute; /* attribute */
unsigned char size; /* struct size */
unsigned char nvar; /* number of variables */
unsigned short nfunc; /* number of function stubs */
Elf32_Addr nid_table; /* functions/variables NID table */
Elf32_Addr stub_table; /* functions stub table */
union {
Elf32_Addr var_table; /* variables table */
};
} SceLibStubTable_psp;
typedef struct _scelibstub_common { // size is 0xC
unsigned short size;
unsigned short version;
unsigned short attribute;
unsigned short nfunc;
unsigned short nvar;
unsigned short ntls;
} SceLibStubTable_common;
typedef struct _scelibstub_24 { // size is 0x24
SceLibStubTable_common c;
Elf32_Word libname_nid;
Elf32_Addr libname;
Elf32_Addr func_nid_table;
Elf32_Addr func_entry_table;
Elf32_Addr var_nid_table;
Elf32_Addr var_entry_table;
} SceLibStubTable_24;
typedef struct _scelibstub_2C { // size is 0x2C
SceLibStubTable_common c;
unsigned char reserved[4];
Elf32_Addr libname;
Elf32_Addr func_nid_table;
Elf32_Addr func_entry_table;
Elf32_Addr var_nid_table;
Elf32_Addr var_entry_table;
Elf32_Addr tls_nid_table;
Elf32_Addr tls_entry_table;
} SceLibStubTable_2C;
typedef struct _scelibstub_34 { // size is 0x34
SceLibStubTable_common c;
unsigned char reserved[4];
Elf32_Word libname_nid;
Elf32_Addr libname;
Elf32_Word sce_sdk_version;
Elf32_Addr func_nid_table;
Elf32_Addr func_entry_table;
Elf32_Addr var_nid_table;
Elf32_Addr var_entry_table;
Elf32_Addr tls_nid_table;
Elf32_Addr tls_entry_table;
} SceLibStubTable_34;
</source>
==== Variable imports ====
Importing variables is a special case of imports. Function import points to the function table, whilst variable import points to the ELF relocation config in text segment.
<source lang="C">
typedef struct SceRelInfoType1Import {
SceSize size; // this object size << 4
SceRelInfoType1Variables info[];
} SceRelInfoType1Import;
</source>
=== Library attribute ===
Library attribute flags are ORed together and identified as follows:
{| class="wikitable"
! Bit !! Name !! Comments
|-
| 0x8000 || ?MAIN_EXPORT? || Set for main NONAME export.
|-
| 0x4000 || SYSCALL_EXPORT || In kernel modules only. Allow [[Syscalls|syscall]] export to usermode.
|-
| 0x2000 || PLUGIN_LINK || Lets the library's exports table be managed on-the-fly by the module itself. If used together with --plugin-header option, switches armlibgen.exe to some special mode, making it generate headers for use with [[SceLibKernel#sceKernelLinkFunctionTable]]. It also requires function prototypes to be defined in the EMD file. On PS3, it seems to indicate a non-PRX library (like "stdc" or "allocator") that comes from somewhere else (LV2?).
|-
| 0x8 || LOOSE_IMPORT || ?Set when the library has the WEAK_EXPORT flag in its exporting module.?
|-
| 0x4 || NOLINK_EXPORT ||
|-
| 0x2 || WEAK_EXPORT || ?kernel non-driver export?
|-
| 0x1 || AUTO_EXPORT || Makes the library importable. Should be set unless it is the main export.
|}
== Relocations ==
See [https://wiki.henkaku.xyz/vita/images/a/a2/Vita_SDK_specifications.pdf] for more information on how PS Vita relocations work.
Relocations are stored within the PT_SCE_RELA segment.
There are 10 relocation entry formats. It is determined by r_format (the first 4 bits of the relocation entry).
Warning! In PS Vita FWs <= 3.00, only relocation entry format 0 is available. Using any other relocation entry format gives error 0x8002D019.
<source lang="C">
// assuming LSB of bitfield is listed first
union {
Elf32Word r_format: 4;
struct {
Elf32Word r_format : 4;
Elf32Word r_symbol_segment : 4;
Elf32Word r_type : 8;
Elf32Word r_patch_segment : 4;
Elf32Word r_type2 : 8;
Elf32Word r_dist2 : 4;
Elf32Word r_addend;
Elf32Word r_offset;
} r_entry_0;
struct {
Elf32Word r_format : 4;
Elf32Word r_symbol_segment : 4;
Elf32Word r_type : 8;
Elf32Word r_patch_segment : 4;
Elf32Word r_offset_lo : 12;
Elf32Word r_offset_hi : 10;
Elf32Word r_addend : 22;
} r_entry_1;
// Used by var import relocations
struct {
Elf32Word r_format : 4;
Elf32Word r_symbol_segment : 4;
Elf32Word r_type : 8;
Elf32Word r_patch_segment : 2;
Elf32Word r_unk : 2;
Elf32Word r_pad : 4;
Elf32Word r_offset;
} r_entry_1_alt;
struct {
Elf32Word r_format : 4;
Elf32Word r_symbol_segment : 4;
Elf32Word r_type : 8;
Elf32Word r_offset : 16;
Elf32Word r_addend;
} r_entry_2;
struct {
Elf32Word r_format : 4;
Elf32Word r_symbol_segment : 4;
Elf32Word r_ins_mode : 1; // ARM = 0, THUMB = 1
Elf32Word r_offset : 18;
Elf32Word r_dist2 : 5;
Elf32Word r_addend : 22;
} r_entry_3;
struct {
Elf32Word r_format : 4;
Elf32Word r_offset : 23;
Elf32Word r_dist2 : 5;
} r_entry_4;
struct {
Elf32Word r_format : 4;
Elf32Word r_dist1 : 9;
Elf32Word r_dist2 : 5;
Elf32Word r_dist3 : 9;
Elf32Word r_dist4 : 5;
} r_entry_5;
struct {
Elf32Word r_format : 4;
Elf32Word r_offset : 28;
} r_entry_6;
struct {
Elf32Word r_format : 4;
// r_format 7 has 4 offsets, 7 bits each
// r_format 8 has 7 offsets, 4 bits each
// r_format 9 has 14 offsets, 2 bits each
Elf32Word offsets : 28;
} r_entry_7_8_9;
} SceRel;
</source>
=== Format 0 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 0.
|-
| 4 || 7 || Symbol segment index
|-
| 8 || 15 || Relocation type
|-
| 16 || 19 || Patch segment index
|-
| 20 || 26 || Second relocation type
|-
| 27 || 31 || Distance from offset (used for second relocation)
|-
| 32 || 63 || Addend
|-
| 64 || 95 || Offset
|}
=== Format 1 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 1.
|-
| 4 || 7 || Symbol segment index
|-
| 8 || 15 || Relocation type
|-
| 16 || 19 || Patch segment index
|-
| 20 || 41 || Offset
|-
| 42 || 63 || Addend
|}
=== Format 2 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 2.
|-
| 4 || 7 || Symbol segment index
|-
| 8 || 15 || Relocation type
|-
| 16 || 31 || Offset
|-
| 32 || 64 || Addend
|}
=== Format 3 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 3
|-
| 4 || 7 || Symbol segment index
|-
| 8 || 8 || Mode (ARM = 0, THUMB = 1)
|-
| 9 || 26 || Offset
|-
| 27 || 31 || Distance from offset
|-
| 32 || 64 || Addend
|}
=== Format 4 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 4.
|-
| 4 || 26 || Offset
|-
| 27 || 31 || Distance from offset
|}
=== Format 5 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 5.
|-
| 4 || 12 || Distance 1
|-
| 13 || 17 || Distance 2
|-
| 18 || 26 || Distance 3
|-
| 27 || 31 || Distance 4
|}
=== Format 6 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 6.
|-
| 4 || 31 || Offset
|}
=== Format 7 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 7.
|-
| 4 || 10 || Offset 1
|-
| 11 || 17 || Offset 2
|-
| 18 || 24 || Offset 3
|-
| 25 || 31 || Offset 4
|}
=== Format 8 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 8.
|-
| 4 || 7 || Offset 1
|-
| 8 || 11 || Offset 2
|-
| 12 || 15 || Offset 3
|-
| 16 || 19 || Offset 4
|-
| 20 || 23 || Offset 5
|-
| 24 || 27 || Offset 6
|-
| 28 || 31 || Offset 7
|}
=== Format 9 ===
{| class="wikitable"
|-
! Start !! End !! Description
|-
| 0 || 3 || Entry format. Set to 9.
|-
| 4 || 5 || Offset 1
|-
| 6 || 7 || Offset 2
|-
| 8 || 9 || Offset 3
|-
| 10 || 11 || Offset 4
|-
| 12 || 13 || Offset 5
|-
| 14 || 15 || Offset 6
|-
| 16 || 17 || Offset 7
|-
| 18 || 19 || Offset 8
|-
| 20 || 21 || Offset 9
|-
| 22 || 23 || Offset 10
|-
| 24 || 25 || Offset 11
|-
| 26 || 27 || Offset 12
|-
| 28 || 29 || Offset 13
|-
| 30 || 31 || Offset 14
|}
=== Supported Relocation Codes (as of FW 3.60) ===
{| class="wikitable"
|-
! Code !! Name !! Description
|-
| 0 || R_ARM_NONE || No relocation
|-
| 2 || R_ARM_ABS32 || Direct 32-bits address
|-
| 3 || R_ARM_REL32 || N/A
|-
| 10 || R_ARM_THM_CALL || bl/blx on Thumb mode
|-
| 28 || R_ARM_CALL || bl/blx on ARM mode
|-
| 29 || R_ARM_JUMP24 || N/A
|-
| 38 || R_ARM_TARGET1 || same as R_ARM_ABS32
|-
| 40 || R_ARM_V4BX || same as R_ARM_NONE
|-
| 41 || R_ARM_TARGET2 || same as R_ARM_REL32
|-
| 42 || R_ARM_PREL31 || N/A
|-
| 43 || R_ARM_MOVW_ABS_NC || movw on ARM mode
|-
| 44 || R_ARM_MOVT_ABS || movt on ARM mode
|-
| 47 || R_ARM_THM_MOVW_ABS_NC || movw on Thumb mode
|-
| 48 || R_ARM_THM_MOVT_ABS || movt on Thumb mode
|-
| 255 || R_ARM_RBASE || Ignored
|}
== Program Authority Id ==


== System Software Version independant usermode system modules ==
== System Software Version independant usermode system modules ==
Line 986: Line 46:
! Name !! program-authority-id !! Path
! Name !! program-authority-id !! Path
|-
|-
| unknown || 0x2800800000000001 || unknown
| [[manu_updater_peri2]] || 0x2800800000000001 || ux0:/psp2diag.self
|-
|-
| [[ScePsp2Swu]] || 0x2800800000000002 || ud0:PSP2UPDATE/psp2swu.self, in PUP files
| [[ScePsp2Swu]] || 0x2800800000000002 || ud0:/PSP2UPDATE/psp2swu.self, in PUP files
|-
|-
| [[SceCuiSetUpper]] || 0x2800800000000003 || ud0:PSP2UPDATE/cui_setupper.self, in PUP files
| [[SceCuiSetUpper]] || 0x2800800000000003 || ud0:/PSP2UPDATE/cui_setupper.self, in PUP files
|-
|-
| unknown || 0x2800800000000013 || unknown
| unknown || 0x2800800000000013 || unknown
Line 1,009: Line 69:
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! Name !! program-authority-id !! Path
! Version !! Name !! program-authority-id !! Path !! Description
|-
|-
| 1.03-3.74 || [[kernel_boot_loader]] || 0x2E00000000000001 || slb0:kernel_boot_loader.self
| 1.03-3.74 || [[kernel_boot_loader]] || 0x2E00000000000001 || slb0:kernel_boot_loader.self || Installed on release
|}
|}


Line 1,018: Line 78:
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! Name !! program-authority-id !! Path
! Version !! Name !! program-authority-id !! Path !! Description
|-
| 1.03-3.74 || [[kprx_auth_sm]] || 0x2E00000000000002 || slb0:kprx_auth_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[kprx_auth_sm]] || 0x2E00000000000002 || slb0:kprx_auth_sm.self
| 1.03-3.74 || [[update_service_sm]] || 0x2E00000000000004 || os0:sm/update_service_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[update_service_sm]] || 0x2E00000000000004 || os0:sm/update_service_sm.self
| 1.03-3.74 || [[qaf_sm]] || 0x2E00000000000005 || os0:sm/qaf_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[qaf_sm]] || 0x2E00000000000005 || os0:sm/qaf_sm.self
| 1.03-3.74 || [[pm_sm]] || 0x2E00000000000006 || os0:sm/pm_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[pm_sm]] || 0x2E00000000000006 || os0:sm/pm_sm.self
| 1.03-3.74 || [[aimgr_sm]] || 0x2E00000000000007 || os0:sm/aimgr_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[aimgr_sm]] || 0x2E00000000000007 || os0:sm/aimgr_sm.self
| 1.03-3.74 || [[compat_sm]] || 0x2E00000000000008 || os0:sm/compat_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[compat_sm]] || 0x2E00000000000008 || os0:sm/compat_sm.self
| ? || [[applier_sm]] || 0x2E00000000000009 || os0:sm/applier_sm.self || Installed on release
|-
|-
| ? || [[applier_sm]] || 0x2E00000000000009 || os0:sm/applier_sm.self
| 1.03-3.74 || [[act_sm]] || 0x2E0000000000000A || os0:sm/act_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[act_sm]] || 0x2E0000000000000A || os0:sm/act_sm.self
| 1.03-3.74 || [[mgkm_sm]] || 0x2E0000000000000B || os0:sm/mgkm_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[mgkm_sm]] || 0x2E0000000000000B || os0:sm/mgkm_sm.self
| 1.03-3.74 || [[encdec_w_portability_sm]] || 0x2E0000000000000C || os0:sm/encdec_w_portability_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[encdec_w_portability_sm]] || 0x2E0000000000000C || os0:sm/encdec_w_portability_sm.self
| 1.03-3.74 || [[gcauthmgr_sm]] || 0x2E0000000000000D || os0:sm/gcauthmgr_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[gcauthmgr_sm]] || 0x2E0000000000000D || os0:sm/gcauthmgr_sm.self
| 1.03-3.74 || [[rmauth_sm]] || 0x2E0000000000000E || os0:sm/rmauth_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[rmauth_sm]] || 0x2E0000000000000E || os0:sm/rmauth_sm.self
| 1.03-3.74 || [[utoken_sm]] || 0x2E0000000000000F || os0:sm/utoken_sm.self || Installed on release
|-
|-
| 1.03-3.74 || [[utoken_sm]] || 0x2E0000000000000F || os0:sm/utoken_sm.self
| 1.03-3.74 || [[spkg_verifier_sm_w_key]] || 0x2E00000000000010 || os0:sm/spkg_verifier_sm_w_key.self || Installed on release
|-
|-
| 1.03-3.74 || [[spkg_verifier_sm_w_key]] || 0x2E00000000000010 || os0:sm/spkg_verifier_sm_w_key.self
| ? || [[pm_sm]] || ? || sd0:sm/pm_sm_sd.self || Possibly used in diagnosis
|}
|}


Line 1,054: Line 116:
|-
|-
! Version !! Name !! program-authority-id !! Path
! Version !! Name !! program-authority-id !! Path
|-
| 2.60 || [[SceDiagBridge]] || 0x2809000000000002 || ux0:/kd/diagbridge.skprx
|-
| 2.60 || [[SceSblFirstImageWriter]] || 0x2809000000000002 || ux0:/kd/first_image_writer.skprx
|-
|-
| 1.04-2.060.011 || [[ScePsp2BootConfig]] || 0x2808000000020059 || os0:psp2config.skprx
| 1.04-2.060.011 || [[ScePsp2BootConfig]] || 0x2808000000020059 || os0:psp2config.skprx
Line 1,063: Line 129:
| 2.100.081-3.74 || [[SceKernelPsp2Config]] || 0x2808000000020059 || os0:psp2config_vita.skprx
| 2.100.081-3.74 || [[SceKernelPsp2Config]] || 0x2808000000020059 || os0:psp2config_vita.skprx
|-
|-
| 3.60 || [[SceSblACMgr]] || 0x2808000000020002 || os0:kd/acmgr.skprx
| 3.60-3.74 || [[SceSblACMgr]] || 0x2808000000020002 || os0:kd/acmgr.skprx
|-
|-
| 3.60 || [[SceSblAuthMgr]] || 0x2808000000020007 || os0:kd/authmgr.skprx
| 3.60-3.74 || [[SceSblAuthMgr]] || 0x2808000000020007 || os0:kd/authmgr.skprx
|-
|-
| 1.04-3.60 || [[SceKernelBootimage]] || 0x2808000000020060 || os0:kd/bootimage.skprx
| 1.04-3.60 || [[SceKernelBootimage]] || 0x2808000000020060 || os0:kd/bootimage.skprx
|-
|-
| 3.60 || [[SceKernelBusError]] || 0x280800000002000D || os0:kd/buserror.skprx
| 3.60-3.74 || [[SceKernelBusError]] || 0x280800000002000D || os0:kd/buserror.skprx
|-
|-
| 3.60 || [[SceCrashDump]] || 0x2808000000020064 || os0:kd/crashdump.skprx
| 3.60-3.74 || [[SceCrashDump]] || 0x2808000000020064 || os0:kd/crashdump.skprx
|-
|-
| 3.60 || [[SceDisplay]] || 0x2808000000020014 || os0:kd/display.skprx
| 3.60-3.74 || [[SceDisplay]] || 0x2808000000020014 || os0:kd/display.skprx
|-
|-
| 3.60 || [[SceKernelDmacMgr]] || 0x2808000000020015 || os0:kd/dmacmgr.skprx
| 3.60-3.74 || [[SceKernelDmacMgr]] || 0x2808000000020015 || os0:kd/dmacmgr.skprx
|-
|-
| 3.60 || [[SceEnumWakeUp]] || 0x280800000002005C || os0:kd/enum_wakeup.skprx
| 3.60-3.74 || [[SceEnumWakeUp]] || 0x280800000002005C || os0:kd/enum_wakeup.skprx
|-
|-
| 3.60 || [[SceExcpmgr]] || 0x2808000000020017 || os0:kd/excpmgr.skprx
| 3.60-3.74 || [[SceExcpmgr]] || 0x2808000000020017 || os0:kd/excpmgr.skprx
|-
|-
| 3.60 || [[SceExfatfs]] || 0x2808000000020018 || os0:kd/exfatfs.skprx
| 3.60-3.74 || [[SceExfatfs]] || 0x2808000000020018 || os0:kd/exfatfs.skprx
|-
|-
| 3.60 || [[SceSblGcAuthMgr]] || 0x280800000002005E || os0:kd/gcauthmgr.skprx
| 3.60-3.74 || [[SceSblGcAuthMgr]] || 0x280800000002005E || os0:kd/gcauthmgr.skprx
|-
|-
| 3.60 || [[SceGpuEs4CoreDump]] || 0x280800000002001F || os0:kd/gpucoredump_es4.skprx
| 3.60-3.74 || [[SceGpuEs4CoreDump]] || 0x280800000002001F || os0:kd/gpucoredump_es4.skprx
|-
|-
| 3.60 || [[SceHdmi]] || 0x2808000000020022 || os0:kd/hdmi.skprx
| 3.60-3.74 || [[SceHdmi]] || 0x2808000000020022 || os0:kd/hdmi.skprx
|-
|-
| 3.60 || [[SceKernelIntrMgr]] || 0x2808000000020025 || os0:kd/intrmgr.skprx
| 3.60-3.74 || [[SceKernelIntrMgr]] || 0x2808000000020025 || os0:kd/intrmgr.skprx
|-
|-
| 3.60 || [[SceIofilemgr]] || 0x2808000000020026 || os0:kd/iofilemgr.skprx
| 3.60-3.74 || [[SceIofilemgr]] || 0x2808000000020026 || os0:kd/iofilemgr.skprx
|-
|-
| 3.60 || [[SceKrm]] || 0x280800000002006E || os0:kd/krm.skprx
| 3.60-3.74 || [[SceKrm]] || 0x280800000002006E || os0:kd/krm.skprx
|-
|-
| 3.60 || [[SceLcd]] || 0x2808000000020066 || os0:kd/lcd.skprx
| 3.60-3.74 || [[SceLcd]] || 0x2808000000020066 || os0:kd/lcd.skprx
|-
|-
| 3.60 || [[SceLowio]] || 0x2808000000020028 || os0:kd/lowio.skprx
| 3.60-3.74 || [[SceLowio]] || 0x2808000000020028 || os0:kd/lowio.skprx
|-
|-
| 3.60 || [[SceMagicGate]] || 0x2808000000000201 || os0:kd/magicgate.skprx
| 3.60-3.74 || [[SceMagicGate]] || 0x2808000000000201 || os0:kd/magicgate.skprx
|-
|-
| 3.60 || [[SceMarlinHci]] || 0x280800000002005F || os0:kd/marlin_hci.skprx
| 3.60-3.74 || [[SceMarlinHci]] || 0x280800000002005F || os0:kd/marlin_hci.skprx
|-
|-
| 3.60 || [[SceSblMgKeyMgr]] || 0x2808000000000201 || os0:kd/mgkeymgr.skprx
| 3.60-3.74 || [[SceSblMgKeyMgr]] || 0x2808000000000201 || os0:kd/mgkeymgr.skprx
|-
|-
| 3.60 || [[SceMgVideo]] || 0x2808000000000202 || os0:kd/mgvideo.skprx
| 3.60-3.74 || [[SceMgVideo]] || 0x2808000000000202 || os0:kd/mgvideo.skprx
|-
|-
| 3.60 || [[SceKernelModulemgr]] || 0x280800000002002A || os0:kd/modulemgr.skprx
| 3.60-3.74 || [[SceKernelModulemgr]] || 0x280800000002002A || os0:kd/modulemgr.skprx
|-
|-
| 3.60 || [[SceMsif]] || 0x280800000002002C || os0:kd/msif.skprx
| 3.60-3.74 || [[SceMsif]] || 0x280800000002002C || os0:kd/msif.skprx
|-
|-
| 3.63 || [[SceNetPs(dev)|SceNetPs (dev)]] || 0x280800000002002E || os0:kd/net_ps_dev.skprx
| 3.63-3.74 || [[SceNetPs(dev)|SceNetPs (dev)]] || 0x280800000002002E || os0:kd/net_ps_dev.skprx
|-
|-
| 3.60 || [[SceOled]] || 0x2808000000020031 || os0:kd/oled.skprx
| 3.60-3.74 || [[SceOled]] || 0x2808000000020031 || os0:kd/oled.skprx
|-
|-
| 3.60 || [[SceSblPcbcBin]] || 0x2808000000000100 || os0:kd/pcbc.skprx
| 3.60-3.74 || [[SceSblPcbcBin]] || 0x2808000000000100 || os0:kd/pcbc.skprx
|-
|-
| 3.60 || [[SceProcessmgr]] || 0x2808000000020036 || os0:kd/processmgr.skprx
| 3.60-3.74 || [[SceProcessmgr]] || 0x2808000000020036 || os0:kd/processmgr.skprx
|-
|-
| 3.60 || [[SceRtc]] || 0x2808000000020039 || os0:kd/rtc.skprx
| 3.60-3.74 || [[SceRtc]] || 0x2808000000020039 || os0:kd/rtc.skprx
|-
|-
| 3.60 || [[SceSdif]] || 0x280800000002003B || os0:kd/sdif.skprx
| 3.60-3.74 || [[SceSdif]] || 0x280800000002003B || os0:kd/sdif.skprx
|-
|-
| 3.60 || [[SceSdstor]] || 0x280800000002003C || os0:kd/sdstor.skprx
| 3.60-3.74 || [[SceSdstor]] || 0x280800000002003C || os0:kd/sdstor.skprx
|-
|-
| 3.60 || [[SceSblSmschedProxy]] || 0x280800000002003E || os0:kd/smsc_proxy.skprx
| 3.60-3.74 || [[SceSblSmschedProxy]] || 0x280800000002003E || os0:kd/smsc_proxy.skprx
|-
|-
| 3.60 || [[SceSblSsSmComm]] || 0x280800000002003D || os0:kd/sm_comm.skprx
| 3.60-3.74 || [[SceSblSsSmComm]] || 0x280800000002003D || os0:kd/sm_comm.skprx
|-
|-
| 3.60 || [[SceSblSsMgr]] || 0x280800000002003F || os0:kd/ss_mgr.skprx
| 3.60-3.74 || [[SceSblSsMgr]] || 0x280800000002003F || os0:kd/ss_mgr.skprx
|-
|-
| 3.60 || [[SceSyscon]] || 0x2808000000020043 || os0:kd/syscon.skprx
| 3.60-3.74 || [[SceSyscon]] || 0x2808000000020043 || os0:kd/syscon.skprx
|-
|-
| 3.60 || [[SceSysmem]] || 0x2808000000020044 || os0:kd/sysmem.skprx
| 3.60-3.74 || [[SceSysmem]] || 0x2808000000020044 || os0:kd/sysmem.skprx
|-
|-
| 3.60 || [[SceSysStateMgr]] || 0x2808000000020046 || os0:kd/sysstatemgr.skprx
| 3.60-3.74 || [[SceSysStateMgr]] || 0x2808000000020046 || os0:kd/sysstatemgr.skprx
|-
|-
| 3.60 || [[SceSystimer]] || 0x2808000000020047 || os0:kd/systimer.skprx
| 3.60-3.74 || [[SceSystimer]] || 0x2808000000020047 || os0:kd/systimer.skprx
|-
|-
| 3.60 || [[SceKernelThreadMgr]] || 0x2808000000020048 || os0:kd/threadmgr.skprx
| 3.60-3.74 || [[SceKernelThreadMgr]] || 0x2808000000020048 || os0:kd/threadmgr.skprx
|-
|-
| 3.60 || [[SceUsbPspcm]] || 0x2808000000020063 || os0:kd/usbpspcm.skprx
| 3.60-3.74 || [[SceUsbPspcm]] || 0x2808000000020063 || os0:kd/usbpspcm.skprx
|-
|-
| 3.60 || [[SceUsbstorDriver]] || 0x2808000000020061 || os0:kd/usbstor.skprx
| 3.60-3.74 || [[SceUsbstorDriver]] || 0x2808000000020061 || os0:kd/usbstor.skprx
|-
|-
| 3.60 || [[SceUsbstorMg]] || 0x2808000000000203 || os0:kd/usbstormg.skprx
| 3.60-3.74 || [[SceUsbstorMg]] || 0x2808000000000203 || os0:kd/usbstormg.skprx
|-
|-
| 3.60 || [[SceUsbstorVStorDriver]] || 0x2808000000020062 || os0:kd/usbstorvstor.skprx
| 3.60-3.74 || [[SceUsbstorVStorDriver]] || 0x2808000000020062 || os0:kd/usbstorvstor.skprx
|-
|-
| 3.60 || [[SceVipImage]] || 0x2808000000020052 || os0:kd/vipimg.skprx
| 3.60-3.74 || [[SceVipImage]] || 0x2808000000020052 || os0:kd/vipimg.skprx
|-
|-
| 3.60 || [[SceVeneziaImage]] || 0x2808000000020054 || os0:kd/vnzimg.skprx
| 3.60-3.74 || [[SceVeneziaImage]] || 0x2808000000020054 || os0:kd/vnzimg.skprx
|-
|-
| 3.60 || [[SceWlanBtRobinImageAx]] || 0x2808000000020057 || os0:kd/wlanbt_robin_img_ax.skprx
| 3.60-3.74 || [[SceWlanBtRobinImageAx]] || 0x2808000000020057 || os0:kd/wlanbt_robin_img_ax.skprx
|-
|-
| 3.60 || [[SceDeci4pCpup]] || 0x280800000001000C || os0:kd/deci4p_cpup.skprx
| 3.60-3.74 || [[SceDeci4pCpup]] || 0x280800000001000C || os0:kd/deci4p_cpup.skprx
|-
|-
| 3.60 || [[SceDeci4pCtrlp]] || 0x2808000000010016 || os0:kd/deci4p_ctrlp.skprx
| 3.60-3.74 || [[SceDeci4pCtrlp]] || 0x2808000000010016 || os0:kd/deci4p_ctrlp.skprx
|-
|-
| 3.60 || [[SceDeci4pDbgp]] || 0x2808000000010001 || os0:kd/deci4p_dbgp.skprx
| 3.60-3.74 || [[SceDeci4pDbgp]] || 0x2808000000010001 || os0:kd/deci4p_dbgp.skprx
|-
|-
| 3.60 || [[SceDeci4pDfMgr]] || 0x2808000000010008 || os0:kd/deci4p_dfmgr.skprx
| 3.60-3.74 || [[SceDeci4pDfMgr]] || 0x2808000000010008 || os0:kd/deci4p_dfmgr.skprx
|-
|-
| 3.60 || [[SceDeci4pDrfp]] || 0x2808000000010000 || os0:kd/deci4p_drfp.skprx
| 3.60-3.74 || [[SceDeci4pDrfp]] || 0x2808000000010000 || os0:kd/deci4p_drfp.skprx
|-
|-
| 3.60 || [[SceDeci4pDtracep]] || 0x2808000000010010 || os0:kd/deci4p_dtracep.skprx
| 3.60-3.74 || [[SceDeci4pDtracep]] || 0x2808000000010010 || os0:kd/deci4p_dtracep.skprx
|-
|-
| 3.60 || [[SceDeci4pLoadp]] || 0x280800000001000A || os0:kd/deci4p_loadp.skprx
| 3.60-3.74 || [[SceDeci4pLoadp]] || 0x280800000001000A || os0:kd/deci4p_loadp.skprx
|-
|-
| 3.60 || [[SceDeci4pPamp]] || 0x280800000001000B || os0:kd/deci4p_pamp.skprx
| 3.60-3.74 || [[SceDeci4pPamp]] || 0x280800000001000B || os0:kd/deci4p_pamp.skprx
|-
|-
| 3.60 || [[SceDeci4pRDrfp]] || 0x2808000000010014 || os0:kd/deci4p_rdrfp.skprx
| 3.60-3.74 || [[SceDeci4pRDrfp]] || 0x2808000000010014 || os0:kd/deci4p_rdrfp.skprx
|-
|-
| 3.60 || [[SceDeci4pSCTtyp]] || 0x2808000000010097 || os0:kd/deci4p_scttyp.skprx
| 3.60-3.74 || [[SceDeci4pSCTtyp]] || 0x2808000000010097 || os0:kd/deci4p_scttyp.skprx
|-
|-
| 3.60 || [[SceDeci4pSDbgp]] || 0x2808000000010081 || os0:kd/deci4p_sdbgp.skprx
| 3.60-3.74 || [[SceDeci4pSDbgp]] || 0x2808000000010081 || os0:kd/deci4p_sdbgp.skprx
|-
|-
| 3.60 || [[SceDeci4pSDeci2p]] || 0x2808000000010083 || os0:kd/deci4p_sdeci2p.skprx
| 3.60-3.74 || [[SceDeci4pSDeci2p]] || 0x2808000000010083 || os0:kd/deci4p_sdeci2p.skprx
|-
|-
| 3.60 || [[SceDeci4pSDfCtl]] || 0x2808000000010093 || os0:kd/deci4p_sdfctl.skprx
| 3.60-3.74 || [[SceDeci4pSDfCtl]] || 0x2808000000010093 || os0:kd/deci4p_sdfctl.skprx
|-
|-
| 3.60 || [[SceDeci4pSDfMgr]] || 0x2808000000010088 || os0:kd/deci4p_sdfmgr.skprx
| 3.60-3.74 || [[SceDeci4pSDfMgr]] || 0x2808000000010088 || os0:kd/deci4p_sdfmgr.skprx
|-
|-
| 3.60 || [[SceDeci4pSDrfp]] || 0x2808000000010080 || os0:kd/deci4p_sdrfp.skprx
| 3.60-3.74 || [[SceDeci4pSDrfp]] || 0x2808000000010080 || os0:kd/deci4p_sdrfp.skprx
|-
|-
| 3.60 || [[SceDeci4pSTtyp]] || 0x2808000000010089 || os0:kd/deci4p_sttyp.skprx
| 3.60-3.74 || [[SceDeci4pSTtyp]] || 0x2808000000010089 || os0:kd/deci4p_sttyp.skprx
|-
|-
| 3.60 || [[SceDeci4pTmcp]] || 0x2808000000010017 || os0:kd/deci4p_tmcp.skprx
| 3.60-3.74 || [[SceDeci4pTmcp]] || 0x2808000000010017 || os0:kd/deci4p_tmcp.skprx
|-
|-
| 3.60 || [[SceDeci4pTsmp]] || 0x280800000001000F || os0:kd/deci4p_tsmp.skprx
| 3.60-3.74 || [[SceDeci4pTsmp]] || 0x280800000001000F || os0:kd/deci4p_tsmp.skprx
|-
|-
| 3.60 || [[SceDeci4pTtyp]] || 0x2808000000010009 || os0:kd/deci4p_ttyp.skprx
| 3.60-3.74 || [[SceDeci4pTtyp]] || 0x2808000000010009 || os0:kd/deci4p_ttyp.skprx
|-
|-
| 3.60 || [[SceDeci4pUserp]] || 0x2808000000010011 || os0:kd/deci4p_userp.skprx
| 3.60-3.74 || [[SceDeci4pUserp]] || 0x2808000000010011 || os0:kd/deci4p_userp.skprx
|-
|-
| 3.60 || [[SceDeci4pVcp]] || 0x2808000000010012 || os0:kd/deci4p_vcp.skprx
| 3.60-3.74 || [[SceDeci4pVcp]] || 0x2808000000010012 || os0:kd/deci4p_vcp.skprx
|-
|-
| 3.60 || [[SceSblPcffBin]] || 0x2808000000000101 || vs0:app/NPXS10028_pcff.skprx
| 3.60-3.74 || [[SceSblPcffBin]] || 0x2808000000000101 || vs0:app/NPXS10028_pcff.skprx
|-
|-
| 3.60 || [[SceAppMgr]] || None || bootfs:appmgr.skprx
| 3.60 || [[SceAppMgr]] || None || bootfs:appmgr.skprx
Line 1,317: Line 383:
|-
|-
! Version !! Name !! program-authority-id !! Path
! Version !! Name !! program-authority-id !! Path
|-
| 3.60 || [[ScePsp2Swu]] || 0x2800800000000002 || ud0:PSP2UPDATE/psp2swu.self
|-
|-
| 3.60 || [[SceSafeMode]] || 0x2800000000000015 || os0:ue/safemode.self
| 3.60 || [[SceSafeMode]] || 0x2800000000000015 || os0:ue/safemode.self
|-
| 3.60 || [[SceCuiSetUpper]] || 0x2800800000000003 || os0:ue/cui_setupper.self
|-
|-
| 3.60 || [[SceAvcodecUser]] || 0x2800000000028005 || os0:us/avcodec_us.suprx
| 3.60 || [[SceAvcodecUser]] || 0x2800000000028005 || os0:us/avcodec_us.suprx
Line 1,823: Line 893:
|-
|-
| 3.60 || [[SceTelInitialCheck]] || 0x2800000000020025 || vs0:vsh/shell/telephony/initial_check/tel_initial_check_plugin.suprx
| 3.60 || [[SceTelInitialCheck]] || 0x2800000000020025 || vs0:vsh/shell/telephony/initial_check/tel_initial_check_plugin.suprx
|-
| 3.60 || [[SceCuiSetUpper]] || 0x2800800000000003 || ud0:PSP2UPDATE/cui_setupper.self
|-
| 3.60 || [[ScePsp2Swu]] || 0x2800800000000002 || ud0:PSP2UPDATE/psp2swu.self
|}
|}


[[Category:System]]
[[Category:System]]

Latest revision as of 15:48, 8 December 2023

A PSP/PS3/PS Vita ELF is called a module.

A module is distinctive by its fingerprint (a sort of hash) and in most cases its name, but the same module name can be used in both the non-secure kernel and the secure kernel, for instance SceSysmem.

PS Vita modules

On PS Vita, most non-secure modules are loaded by the SceKernelModulemgr module, itself loaded by the NSKBL. Most PS Vita Secure Modules are loaded by the Secure Kernel.

There are two big categories of modules on PS Vita: PRX which are made for the ARM processor and usually are relocatable, and Secure Modules which are made for the Cmep processor and are not relocatable.

Program Authority Id

See also

Bit mask program-authority-id Description
0xFFF0000000000000 0x2100000000000000 Game
0xFFF0000000000000 0x2200000000000000 ?Non-Game?
0xFFF0000000000000 0x2800000000000000 KBL
0xFFF0000000000000 0x2E00000000000000 Security Module
0xFFFFFFFF00000000 0x2F00000000000000 fSELF
0x20000 0x20000 ?System module?
0xFFF8000000000000 0x2808000000000000 is ThreadAccessLevel::Kernel's next do-anything and has very risky permissions.
0xFFFFFFFFFFFFFFFF 0x2808000000000001 Kernel process authid (pid: 0x10005)
0xFFFFFFFFFFFFFFFF 0x2F00000000000001 Dummy game process authid (pid: 0x10013)
0xFFFFFFFFFFFFFFFF 0x2800000000000001 Dummy system process authid (pid: 0x10015)

System Software Version independant usermode system modules

These system usermode modules can be decrypted on any firmware version and are identified by kprx_auth_sm.self by their program-authority-id.

Name program-authority-id Path
manu_updater_peri2 0x2800800000000001 ux0:/psp2diag.self
ScePsp2Swu 0x2800800000000002 ud0:/PSP2UPDATE/psp2swu.self, in PUP files
SceCuiSetUpper 0x2800800000000003 ud0:/PSP2UPDATE/cui_setupper.self, in PUP files
unknown 0x2800800000000013 unknown
unknown 0x2800800000000016 unknown
unknown 0x2800000000000032 unknown
SceGameRightPlugin 0x2800000000000030 /sce_sys/about/right.suprx, in PKG files

List of Modules

Below is a list of all known Modules in the system along with the lowest version number it was seen on.

Bootloader modules

Version Name program-authority-id Path Description
1.03-3.74 kernel_boot_loader 0x2E00000000000001 slb0:kernel_boot_loader.self Installed on release

Security modules

Version Name program-authority-id Path Description
1.03-3.74 kprx_auth_sm 0x2E00000000000002 slb0:kprx_auth_sm.self Installed on release
1.03-3.74 update_service_sm 0x2E00000000000004 os0:sm/update_service_sm.self Installed on release
1.03-3.74 qaf_sm 0x2E00000000000005 os0:sm/qaf_sm.self Installed on release
1.03-3.74 pm_sm 0x2E00000000000006 os0:sm/pm_sm.self Installed on release
1.03-3.74 aimgr_sm 0x2E00000000000007 os0:sm/aimgr_sm.self Installed on release
1.03-3.74 compat_sm 0x2E00000000000008 os0:sm/compat_sm.self Installed on release
? applier_sm 0x2E00000000000009 os0:sm/applier_sm.self Installed on release
1.03-3.74 act_sm 0x2E0000000000000A os0:sm/act_sm.self Installed on release
1.03-3.74 mgkm_sm 0x2E0000000000000B os0:sm/mgkm_sm.self Installed on release
1.03-3.74 encdec_w_portability_sm 0x2E0000000000000C os0:sm/encdec_w_portability_sm.self Installed on release
1.03-3.74 gcauthmgr_sm 0x2E0000000000000D os0:sm/gcauthmgr_sm.self Installed on release
1.03-3.74 rmauth_sm 0x2E0000000000000E os0:sm/rmauth_sm.self Installed on release
1.03-3.74 utoken_sm 0x2E0000000000000F os0:sm/utoken_sm.self Installed on release
1.03-3.74 spkg_verifier_sm_w_key 0x2E00000000000010 os0:sm/spkg_verifier_sm_w_key.self Installed on release
? pm_sm ? sd0:sm/pm_sm_sd.self Possibly used in diagnosis

Kernel modules

Version Name program-authority-id Path
2.60 SceDiagBridge 0x2809000000000002 ux0:/kd/diagbridge.skprx
2.60 SceSblFirstImageWriter 0x2809000000000002 ux0:/kd/first_image_writer.skprx
1.04-2.060.011 ScePsp2BootConfig 0x2808000000020059 os0:psp2config.skprx
1.04-3.74 ScePsp2BootConfig 0x280800000002005B os0:psp2bootconfig.skprx
2.100.081-3.74 SceKernelPsp2Config 0x2808000000020059 os0:psp2config_dolce.skprx
2.100.081-3.74 SceKernelPsp2Config 0x2808000000020059 os0:psp2config_vita.skprx
3.60-3.74 SceSblACMgr 0x2808000000020002 os0:kd/acmgr.skprx
3.60-3.74 SceSblAuthMgr 0x2808000000020007 os0:kd/authmgr.skprx
1.04-3.60 SceKernelBootimage 0x2808000000020060 os0:kd/bootimage.skprx
3.60-3.74 SceKernelBusError 0x280800000002000D os0:kd/buserror.skprx
3.60-3.74 SceCrashDump 0x2808000000020064 os0:kd/crashdump.skprx
3.60-3.74 SceDisplay 0x2808000000020014 os0:kd/display.skprx
3.60-3.74 SceKernelDmacMgr 0x2808000000020015 os0:kd/dmacmgr.skprx
3.60-3.74 SceEnumWakeUp 0x280800000002005C os0:kd/enum_wakeup.skprx
3.60-3.74 SceExcpmgr 0x2808000000020017 os0:kd/excpmgr.skprx
3.60-3.74 SceExfatfs 0x2808000000020018 os0:kd/exfatfs.skprx
3.60-3.74 SceSblGcAuthMgr 0x280800000002005E os0:kd/gcauthmgr.skprx
3.60-3.74 SceGpuEs4CoreDump 0x280800000002001F os0:kd/gpucoredump_es4.skprx
3.60-3.74 SceHdmi 0x2808000000020022 os0:kd/hdmi.skprx
3.60-3.74 SceKernelIntrMgr 0x2808000000020025 os0:kd/intrmgr.skprx
3.60-3.74 SceIofilemgr 0x2808000000020026 os0:kd/iofilemgr.skprx
3.60-3.74 SceKrm 0x280800000002006E os0:kd/krm.skprx
3.60-3.74 SceLcd 0x2808000000020066 os0:kd/lcd.skprx
3.60-3.74 SceLowio 0x2808000000020028 os0:kd/lowio.skprx
3.60-3.74 SceMagicGate 0x2808000000000201 os0:kd/magicgate.skprx
3.60-3.74 SceMarlinHci 0x280800000002005F os0:kd/marlin_hci.skprx
3.60-3.74 SceSblMgKeyMgr 0x2808000000000201 os0:kd/mgkeymgr.skprx
3.60-3.74 SceMgVideo 0x2808000000000202 os0:kd/mgvideo.skprx
3.60-3.74 SceKernelModulemgr 0x280800000002002A os0:kd/modulemgr.skprx
3.60-3.74 SceMsif 0x280800000002002C os0:kd/msif.skprx
3.63-3.74 SceNetPs (dev) 0x280800000002002E os0:kd/net_ps_dev.skprx
3.60-3.74 SceOled 0x2808000000020031 os0:kd/oled.skprx
3.60-3.74 SceSblPcbcBin 0x2808000000000100 os0:kd/pcbc.skprx
3.60-3.74 SceProcessmgr 0x2808000000020036 os0:kd/processmgr.skprx
3.60-3.74 SceRtc 0x2808000000020039 os0:kd/rtc.skprx
3.60-3.74 SceSdif 0x280800000002003B os0:kd/sdif.skprx
3.60-3.74 SceSdstor 0x280800000002003C os0:kd/sdstor.skprx
3.60-3.74 SceSblSmschedProxy 0x280800000002003E os0:kd/smsc_proxy.skprx
3.60-3.74 SceSblSsSmComm 0x280800000002003D os0:kd/sm_comm.skprx
3.60-3.74 SceSblSsMgr 0x280800000002003F os0:kd/ss_mgr.skprx
3.60-3.74 SceSyscon 0x2808000000020043 os0:kd/syscon.skprx
3.60-3.74 SceSysmem 0x2808000000020044 os0:kd/sysmem.skprx
3.60-3.74 SceSysStateMgr 0x2808000000020046 os0:kd/sysstatemgr.skprx
3.60-3.74 SceSystimer 0x2808000000020047 os0:kd/systimer.skprx
3.60-3.74 SceKernelThreadMgr 0x2808000000020048 os0:kd/threadmgr.skprx
3.60-3.74 SceUsbPspcm 0x2808000000020063 os0:kd/usbpspcm.skprx
3.60-3.74 SceUsbstorDriver 0x2808000000020061 os0:kd/usbstor.skprx
3.60-3.74 SceUsbstorMg 0x2808000000000203 os0:kd/usbstormg.skprx
3.60-3.74 SceUsbstorVStorDriver 0x2808000000020062 os0:kd/usbstorvstor.skprx
3.60-3.74 SceVipImage 0x2808000000020052 os0:kd/vipimg.skprx
3.60-3.74 SceVeneziaImage 0x2808000000020054 os0:kd/vnzimg.skprx
3.60-3.74 SceWlanBtRobinImageAx 0x2808000000020057 os0:kd/wlanbt_robin_img_ax.skprx
3.60-3.74 SceDeci4pCpup 0x280800000001000C os0:kd/deci4p_cpup.skprx
3.60-3.74 SceDeci4pCtrlp 0x2808000000010016 os0:kd/deci4p_ctrlp.skprx
3.60-3.74 SceDeci4pDbgp 0x2808000000010001 os0:kd/deci4p_dbgp.skprx
3.60-3.74 SceDeci4pDfMgr 0x2808000000010008 os0:kd/deci4p_dfmgr.skprx
3.60-3.74 SceDeci4pDrfp 0x2808000000010000 os0:kd/deci4p_drfp.skprx
3.60-3.74 SceDeci4pDtracep 0x2808000000010010 os0:kd/deci4p_dtracep.skprx
3.60-3.74 SceDeci4pLoadp 0x280800000001000A os0:kd/deci4p_loadp.skprx
3.60-3.74 SceDeci4pPamp 0x280800000001000B os0:kd/deci4p_pamp.skprx
3.60-3.74 SceDeci4pRDrfp 0x2808000000010014 os0:kd/deci4p_rdrfp.skprx
3.60-3.74 SceDeci4pSCTtyp 0x2808000000010097 os0:kd/deci4p_scttyp.skprx
3.60-3.74 SceDeci4pSDbgp 0x2808000000010081 os0:kd/deci4p_sdbgp.skprx
3.60-3.74 SceDeci4pSDeci2p 0x2808000000010083 os0:kd/deci4p_sdeci2p.skprx
3.60-3.74 SceDeci4pSDfCtl 0x2808000000010093 os0:kd/deci4p_sdfctl.skprx
3.60-3.74 SceDeci4pSDfMgr 0x2808000000010088 os0:kd/deci4p_sdfmgr.skprx
3.60-3.74 SceDeci4pSDrfp 0x2808000000010080 os0:kd/deci4p_sdrfp.skprx
3.60-3.74 SceDeci4pSTtyp 0x2808000000010089 os0:kd/deci4p_sttyp.skprx
3.60-3.74 SceDeci4pTmcp 0x2808000000010017 os0:kd/deci4p_tmcp.skprx
3.60-3.74 SceDeci4pTsmp 0x280800000001000F os0:kd/deci4p_tsmp.skprx
3.60-3.74 SceDeci4pTtyp 0x2808000000010009 os0:kd/deci4p_ttyp.skprx
3.60-3.74 SceDeci4pUserp 0x2808000000010011 os0:kd/deci4p_userp.skprx
3.60-3.74 SceDeci4pVcp 0x2808000000010012 os0:kd/deci4p_vcp.skprx
3.60-3.74 SceSblPcffBin 0x2808000000000101 vs0:app/NPXS10028_pcff.skprx
3.60 SceAppMgr None bootfs:appmgr.skprx
3.60 SceAudio None bootfs:audio.skprx
3.60 SceAudioin None bootfs:audioin.skprx
3.60 SceAVConfig None bootfs:av_config.skprx
3.60 SceAvcodec None bootfs:avcodec.skprx
3.60 SceBbmc None bootfs:bbmc.skprx
3.60 SceBt None bootfs:bt.skprx
3.60 SceCamera None bootfs:camera.skprx
3.60 SceCameraDummy None bootfs:camera_dummy.skprx
3.60 SceClockgen None bootfs:clockgen.skprx
3.60 SceCodec None bootfs:codec.skprx
3.60 SceCodec None bootfs:codec_cx.skprx
3.60 SceCompat None bootfs:compat.skprx
3.60 SceCoredump None bootfs:coredump.skprx
3.60 SceCtrl None bootfs:ctrl.skprx
3.60 SceDs3 None bootfs:ds3.skprx
3.60 SceError None bootfs:error.skprx
3.60 SceFios2Kernel None bootfs:fios2.skprx
3.60 SceGps None bootfs:gps.skprx
3.60 SceGpuEs4 None bootfs:gpu_es4.skprx
3.60 SceGpuEs4Init None bootfs:gpuinit_es4.skprx
3.60 SceHid None bootfs:hid.skprx
3.60 SceHpremote None bootfs:hpremote.skprx
3.60 SceIdStorage None bootfs:idstorage.skprx
3.60 SceKrm None bootfs:krm.skprx
3.60 SceMotionDev None bootfs:motion.skprx
3.60 SceMotionDevDummy None bootfs:motion_dummy.skprx
3.60 SceMtpIfDriver None bootfs:mtpif.skprx
3.60 SceNetPs None bootfs:net_ps.skprx
3.60 SceNgs None bootfs:ngs.skprx
3.60 SceNpDrm None bootfs:npdrm.skprx
3.60 ScePfsMgr None bootfs:pfsmgr.skprx
3.60 SceSblPostSsMgr None bootfs:post_ss_mgr.skprx
3.60 ScePower None bootfs:power.skprx
3.60 SceRegistryMgr None bootfs:regmgr.skprx
3.60 SceSysmodule None bootfs:sysmodule.skprx
3.60 SceTouch None bootfs:touch.skprx
3.60 SceTouchDummy None bootfs:touch_dummy.skprx
3.60 SceTty2uart None bootfs:tty2uart.skprx
3.60 SceUdcd None bootfs:udcd.skprx
3.60 SceUlobjMgr None bootfs:ulobjmgr.skprx
3.60 SceUsbMass None bootfs:umass.skprx
3.60 SceSblUpdateMgr None bootfs:update_mgr.skprx
3.60 SceUsbEtherRtl None bootfs:usb_ether_rtl.skprx
3.60 SceUsbEtherSmsc None bootfs:usb_ether_smsc.skprx
3.60 SceUsbAudio None bootfs:usbaudio.skprx
3.60 SceUsbd None bootfs:usbd.skprx
3.60 SceUsbMtp None bootfs:usbmtp.skprx
3.60 SceUsbPspcm None bootfs:usbpspcm.skprx
3.60 SceUsbSerial None bootfs:usbserial.skprx
3.60 SceUsbServ None bootfs:usbserv.skprx
3.60 SceUsbstorDriver None bootfs:usbstor.skprx
3.60 SceUsbstorVStorDriver None bootfs:usbstorvstor.skprx
3.60 SceCodecEngineWrapper None bootfs:vnz_wrapper.skprx
3.60 SceVshBridge None bootfs:vshbridge.skprx
3.60 SceWlanBt None bootfs:wlanbt.skprx

User modules and apps

Version Name program-authority-id Path
3.60 ScePsp2Swu 0x2800800000000002 ud0:PSP2UPDATE/psp2swu.self
3.60 SceSafeMode 0x2800000000000015 os0:ue/safemode.self
3.60 SceCuiSetUpper 0x2800800000000003 os0:ue/cui_setupper.self
3.60 SceAvcodecUser 0x2800000000028005 os0:us/avcodec_us.suprx
3.60 SceDriverUser 0x280000000002800A os0:us/driver_us.suprx
3.60 SceGpuEs4User 0x280000000002802A os0:us/libgpu_es4.suprx
3.60 SceGxm 0x2800000000028030 os0:us/libgxm_es4.suprx
3.60 SceLibKernel 0x2800000000028034 os0:us/libkernel.suprx
3.60 SceNear 0x2800000000000027 vs0:app/NPXS10000/eboot.bin
3.60 SceParty 0x2800000000000026 vs0:app/NPXS10001/eboot.bin
3.60 SceNpPartyAppUtil 0x280000000002001F vs0:app/NPXS10001/np_party_app.suprx
3.60 SceStoreBrowser 0x280000000000001C vs0:app/NPXS10002/eboot.bin
3.60 SceWebBrowser 0x2800000000000025 vs0:app/NPXS10003/eboot.bin
3.60 ScePhotoCam 0x2800000000000018 vs0:app/NPXS10004/eboot.bin
3.60 SceFriend 0x280000000000001A vs0:app/NPXS10006/eboot.bin
3.60 SceTrophy 0x280000000000001B vs0:app/NPXS10008/eboot.bin
3.60 SceMusicBrowser 0x2800000000000011 vs0:app/NPXS10009/eboot.bin
3.60 SceVideoPlayer 0x280000000000001E vs0:app/NPXS10010/eboot.bin
3.60 SceRemotePlay 0x2800000000000012 vs0:app/NPXS10012/eboot.bin
3.60 ScePS4Link 0x280000000000700A vs0:app/NPXS10013/eboot.bin
3.60 gaikai_player 0x2800000000020045 vs0:app/NPXS10013/gaikai-player.suprx
3.60 SceSecondScreen 0x2800000000020046 vs0:app/NPXS10013/libSceSecondScreen.suprx
3.60 ScePsnMail 0x2800000000000020 vs0:app/NPXS10014/eboot.bin
3.60 SceSettings 0x2800000000000010 vs0:app/NPXS10015/eboot.bin
3.60 SceSystemSettingsCore 0x2800000000020024 vs0:app/NPXS10015/system_settings_core.suprx
3.60 SceSignup 0x2800000000000019 vs0:app/NPXS10018/eboot.bin
3.60 SceTelRegMain 0x2800000000000029 vs0:app/NPXS10021/eboot.bin
3.60 SceTelReg 0x2800000000020026 vs0:app/NPXS10021/tel_reg.suprx
3.60 ScePhotoExport 0x2800000000000016 vs0:app/NPXS10023/eboot.bin
3.60 SceNearAutoLocation 0x280000000000002B vs0:app/NPXS10024/eboot.bin
3.60 SceNearAutoCheckin 0x280000000000002C vs0:app/NPXS10025/eboot.bin
3.60 SceContentManager 0x280000000000002D vs0:app/NPXS10026/eboot.bin
3.60 SceGameManual 0x2800000000000022 vs0:app/NPXS10027/eboot.bin
3.60 ScePspemu 0x2800000000000013 vs0:app/NPXS10028/eboot.bin
3.60 SceMarlinBgMtp 0x280000000000002A vs0:app/NPXS10029/eboot.bin
3.60 fake_package_installer 0x280000000000002E vs0:app/NPXS10031/eboot.bin
3.60 SceNearUtilService 0x280000000000002F vs0:app/NPXS10032/eboot.bin
3.60 SceAvMediaService 0x2800000000000031 vs0:app/NPXS10036/eboot.bin
3.60 SceMsgMiddleWare 0x2800000000000021 vs0:app/NPXS10063/eboot.bin
3.60 SceGriefReportDialogApp 0x2800000000000034 vs0:app/NPXS10065/eboot.bin
3.60 SceGriefReportDialog 0x2800000000020030 vs0:app/NPXS10065/grief_report_dialog.suprx
3.60 SceEmailApp 0x2800000000000035 vs0:app/NPXS10072/eboot.bin
3.60 SceEmailEngine 0x2800000000020035 vs0:app/NPXS10072/email_engine.suprx
3.60 SceEmailBg 0x2800000000000037 vs0:app/NPXS10073/eboot.bin
3.60 SceCrashReport 0x2800000000000036 vs0:app/NPXS10077/eboot.bin
3.60 SceComboPlay 0x2800000000000040 vs0:app/NPXS10078/eboot.bin
3.60 SceDailyCheckerBg 0x2800000000000039 vs0:app/NPXS10079/eboot.bin
3.60 swagner 0x2800000000000041 vs0:app/NPXS10080/eboot.bin
3.60 ScePsmManual 0x2800000000000038 vs0:app/NPXS10081/eboot.bin
3.60 SceWebKitProcess 0x2800000000008005 vs0:app/NPXS10083/eboot.bin
3.60 SceWebKitProcessMini 0x2800000000008005 vs0:app/NPXS10084/eboot.bin
3.60 SceVideoStreaming 0x2800000000000044 vs0:app/NPXS10085/eboot.bin
3.60 SceCalendar 0x2800000000000042 vs0:app/NPXS10091/eboot.bin
3.60 SceCalendarBg 0x2800000000000043 vs0:app/NPXS10092/eboot.bin
3.60 SceKidsApp 0x2800000000000046 vs0:app/NPXS10094/eboot.bin
3.60 ScePanorama 0x2800000000000045 vs0:app/NPXS10095/eboot.bin
3.60 SceStitcherCoreAdapter 0x2800000000020041 vs0:app/NPXS10095/stitch_core_prx.suprx
3.60 SceStitchAdapter 0x2800000000020042 vs0:app/NPXS10095/stitch_prx.suprx
3.60 ScePS4Link 0x280000000000700A vs0:app/NPXS10098/eboot.bin
3.60 gaikai_player 0x2800000000020045 vs0:app/NPXS10098/gaikai-player.suprx
3.60 SceHostCollaboService 0x2800000000000047 vs0:app/NPXS10100/eboot.bin
3.60 SceBgCopyResultBrowser 0x2800000000000048 vs0:app/NPXS10101/eboot.bin
3.60 SceWebFiltering 0x280000000002807F vs0:data/external/webcore/jx_web_filtering.suprx
3.60 ScePsp2Compat 0x2800000000028097 vs0:data/external/webcore/ScePsp2Compat.suprx
3.60 SceWebKit 0x2800000000028099 vs0:data/external/webcore/SceWebKitModule.suprx
3.60 SceLibVitaJSExtObj 0x280000000002807E vs0:data/external/webcore/vita_jsextobj.suprx
3.60 SceActivityDb 0x2800000000028001 vs0:sys/external/activity_db.suprx
3.60 SceNetAdhocMatching 0x2800000000028002 vs0:sys/external/adhoc_matching.suprx
3.60 SceAppUtil 0x2800000000028003 vs0:sys/external/apputil.suprx
3.60 SceAppUtilExt 0x28000000000280A5 vs0:sys/external/apputil_ext.suprx
3.60 SceAudiocodec 0x2800000000028004 vs0:sys/external/audiocodec.suprx
3.60 SceAvcdecForPlayer 0x28000000000280AC vs0:sys/external/avcdec_for_player.suprx
3.60 SceBgAppUtil 0x2800000000028086 vs0:sys/external/bgapputil.suprx
3.60 ScebXCe 0x2800000000028007 vs0:sys/external/bXCe.suprx
3.60 SceCommonGuiDialog 0x2800000000028008 vs0:sys/external/common_gui_dialog.suprx
3.60 SceDbrecoveryUtility 0x2800000000028080 vs0:sys/external/dbrecovery_utility.suprx
3.60 SceDbutil 0x2800000000028009 vs0:sys/external/dbutil.suprx
3.60 SceFriendSelect 0x28000000000280AE vs0:sys/external/friend_select.suprx
3.60 SceIncomingDialog 0x2800000000028087 vs0:sys/external/incoming_dialog.suprx
3.60 SceIniFileProcessor 0x280000000002800C vs0:sys/external/ini_file_processor.suprx
3.60 SceAtrac 0x2800000000028083 vs0:sys/external/libatrac.suprx
3.60 SceLibc 0x280000000002800E vs0:sys/external/libc.suprx
3.60 SceCommonDialog 0x280000000002800F vs0:sys/external/libcdlg.suprx
3.60 SceCalendarDialogPlugin 0x28000000000280AA vs0:sys/external/libcdlg_calendar_review.suprx
3.60 SceCamImportDialogPlugin 0x2800000000028079 vs0:sys/external/libcdlg_cameraimport.suprx
3.60 SceCheckoutDialogPlugin 0x2800000000028010 vs0:sys/external/libcdlg_checkout.suprx
3.60 SceCompanionDialogPlugin 0x2800000000017003 vs0:sys/external/libcdlg_companion.suprx
3.60 SceCompatDialogPlugin 0x280000000002807C vs0:sys/external/libcdlg_compat.suprx
3.60 SceCrossCtlDialogPlugin 0x2800000000028090 vs0:sys/external/libcdlg_cross_controller.suprx
3.60 SceFriendListDialogPlugin 0x2800000000028011 vs0:sys/external/libcdlg_friendlist.suprx
3.60 SceFriendList2DialogPlugin 0x28000000000280A8 vs0:sys/external/libcdlg_friendlist2.suprx
3.60 SceNpGameCustomDataDPlugin 0x28000000000280B1 vs0:sys/external/libcdlg_game_custom_data.suprx
3.60 SceNpGameCustomDataDlgImpl 0x28000000000280B2 vs0:sys/external/libcdlg_game_custom_data_impl.suprx
3.60 SceImeDialogPlugin 0x2800000000028012 vs0:sys/external/libcdlg_ime.suprx
3.60 SceInvitationDlgPlugin 0x28000000000280AF vs0:sys/external/libcdlg_invitation.suprx
3.60 SceInvitationDlgImplPlugin 0x28000000000280B0 vs0:sys/external/libcdlg_invitation_impl.suprx
3.60 SceCommonDialogMain 0x2800000000028013 vs0:sys/external/libcdlg_main.suprx
3.60 SceMsgDialogPlugin 0x2800000000028015 vs0:sys/external/libcdlg_msg.suprx
3.60 SceNearDialogPlugin 0x280000000002809F vs0:sys/external/libcdlg_near.suprx
3.60 SceNetCheckDialogPlugin 0x2800000000028017 vs0:sys/external/libcdlg_netcheck.suprx
3.60 SceNpEulaDialogPlugin 0x2800000000028089 vs0:sys/external/libcdlg_npeula.suprx
3.60 SceNpProfile2DialogPlugin 0x28000000000280A9 vs0:sys/external/libcdlg_npprofile2.suprx
3.60 SceNpMessageDialogPlugin 0x280000000002801A vs0:sys/external/libcdlg_np_message.suprx
3.60 SceNpSnsFbDialogPlugin 0x2800000000028082 vs0:sys/external/libcdlg_np_sns_fb.suprx
3.60 SceTrophySetupDialogPlugin 0x280000000002801B vs0:sys/external/libcdlg_np_trophy_setup.suprx
3.60 ScePhotoImportDialogPlugin 0x280000000002801C vs0:sys/external/libcdlg_photoimport.suprx
3.60 ScePhotoReviewDialogPlugin 0x280000000002801D vs0:sys/external/libcdlg_photoreview.suprx
3.60 ScePocsDialogPlugin 0x2800000000020040 vs0:sys/external/libcdlg_pocketstation.suprx
3.60 SceRemoteOSKDialogPlugin 0x2800000000017004 vs0:sys/external/libcdlg_remote_osk.suprx
3.60 SceSaveDataDialogPlugin 0x280000000002801E vs0:sys/external/libcdlg_savedata.suprx
3.60 SceTwitterDialogPlugin 0x2800000000028096 vs0:sys/external/libcdlg_twitter.suprx
3.60 SceTwLoginDialogPlugin 0x280000000002809A vs0:sys/external/libcdlg_tw_login.suprx
3.60 SceVideoImportDialogPlugin 0x28000000000280B3 vs0:sys/external/libcdlg_videoimport.suprx
3.60 SceClipboard 0x2800000000028020 vs0:sys/external/libclipboard.suprx
3.60 SceLibDbg 0x2800000000028023 vs0:sys/external/libdbg.suprx
3.60 SceFiber 0x2800000000028024 vs0:sys/external/libfiber.suprx
3.60 SceLibFios2 0x2800000000028026 vs0:sys/external/libfios2.suprx
3.60 SceLibG729 0x2800000000028027 vs0:sys/external/libg729.suprx
3.60 SceLibGameUpdate 0x28000000000280A1 vs0:sys/external/libgameupdate.suprx
3.60 SceHandwriting 0x280000000002807A vs0:sys/external/libhandwriting.suprx
3.60 SceLibHttp 0x2800000000028032 vs0:sys/external/libhttp.suprx
3.60 SceIme 0x2800000000028033 vs0:sys/external/libime.suprx
3.60 SceIpmiNonGameApp 0x2800000000028088 vs0:sys/external/libipmi_nongame.suprx
3.60 SceLibLocation 0x2800000000028036 vs0:sys/external/liblocation.suprx
3.60 SceLibLocationExtension 0x280000000002809C vs0:sys/external/liblocation_extension.suprx
3.60 SceLibLocationFactory 0x2800000000028092 vs0:sys/external/liblocation_factory.suprx
3.60 SceLibLocationInternal 0x2800000000028091 vs0:sys/external/liblocation_internal.suprx
3.60 SceLibMarlin 0x280000000002002C vs0:sys/external/libmln.suprx
3.60 MarlinAppLib 0x2800000000024003 vs0:sys/external/libmlnapplib.suprx
3.60 SceMarlinDownloader 0x2800000000020031 vs0:sys/external/libmlndownloader.suprx
3.60 SceAacenc 0x2800000000028078 vs0:sys/external/libnaac.suprx
3.60 SceNet 0x2800000000028037 vs0:sys/external/libnet.suprx
3.60 SceLibNetCtl 0x2800000000028038 vs0:sys/external/libnetctl.suprx
3.60 SceNgsUser 0x2800000000028039 vs0:sys/external/libngs.suprx
3.60 ScePaf 0x280000000002803A vs0:sys/external/libpaf.suprx
3.60 ScePafWebMapView 0x2800000000020039 vs0:sys/external/libpaf_web_map_view.suprx
3.60 ScePerf 0x280000000002803C vs0:sys/external/libperf.suprx
3.60 SceLibPgf 0x280000000002803D vs0:sys/external/libpgf.suprx
3.60 SceLibPvf 0x280000000002803E vs0:sys/external/libpvf.suprx
3.60 SceLibRudp 0x2800000000028043 vs0:sys/external/librudp.suprx
3.60 SceSasUser 0x2800000000028044 vs0:sys/external/libsas.suprx
3.60 SceAvPlayer 0x280000000002809E vs0:sys/external/libsceavplayer.suprx
3.60 SceBeisobmf 0x2800000000028093 vs0:sys/external/libSceBeisobmf.suprx
3.60 SceBemp2sys 0x2800000000028094 vs0:sys/external/libSceBemp2sys.suprx
3.60 SceCompanionUtil 0x2800000000017002 vs0:sys/external/libSceCompanionUtil.suprx
3.60 SceDtcpIp 0x280000000002808D vs0:sys/external/libSceDtcpIp.suprx
3.60 SceLibft2 0x2800000000028045 vs0:sys/external/libSceFt2.suprx
3.60 SceJpegArm 0x2800000000028046 vs0:sys/external/libscejpegarm.suprx
3.60 SceJpegEncArm 0x2800000000028047 vs0:sys/external/libscejpegencarm.suprx
3.60 SceLibJson 0x28000000000280AD vs0:sys/external/libSceJson.suprx
3.60 SceMp4 0x2800000000028076 vs0:sys/external/libscemp4.suprx
3.60 SceLibMp4Recorder 0x28000000000280A4 vs0:sys/external/libSceMp4Rec.suprx
3.60 SceMusicExport 0x2800000000028048 vs0:sys/external/libSceMusicExport.suprx
3.60 SceNearDialogUtil 0x280000000002809B vs0:sys/external/libSceNearDialogUtil.suprx
3.60 SceNearUtil 0x2800000000028049 vs0:sys/external/libSceNearUtil.suprx
3.60 ScePhotoExport 0x280000000002804A vs0:sys/external/libScePhotoExport.suprx
3.60 ScePromoterUtil 0x2800000000028081 vs0:sys/external/libScePromoterUtil.suprx
3.60 SceScreenShot 0x280000000002804B vs0:sys/external/libSceScreenShot.suprx
3.60 SceShutterSound 0x280000000002804C vs0:sys/external/libSceShutterSound.suprx
3.60 SceSqlite 0x280000000002804D vs0:sys/external/libSceSqlite.suprx
3.60 SceTelephonyUtil 0x280000000002808A vs0:sys/external/libSceTelephonyUtil.suprx
3.60 SceTeleportClient 0x28000000000280A3 vs0:sys/external/libSceTeleportClient.suprx
3.60 SceTeleportServer 0x28000000000280A2 vs0:sys/external/libSceTeleportServer.suprx
3.60 SceVideoExport 0x2800000000024001 vs0:sys/external/libSceVideoExport.suprx
3.60 SceVideoSearchEmpr 0x2800000000020034 vs0:sys/external/libSceVideoSearchEmpr.suprx
3.60 SceLibXml 0x280000000002804F vs0:sys/external/libSceXml.suprx
3.60 SceShellSvc 0x2800000000028050 vs0:sys/external/libshellsvc.suprx
3.60 SceLibSsl 0x2800000000028051 vs0:sys/external/libssl.suprx
3.60 SceSystemGesture 0x2800000000028053 vs0:sys/external/libsystemgesture.suprx
3.60 SceUlt 0x2800000000028054 vs0:sys/external/libult.suprx
3.60 SceVoice 0x2800000000028055 vs0:sys/external/libvoice.suprx
3.60 SceVoiceQoS 0x2800000000028056 vs0:sys/external/libvoiceqos.suprx
3.60 SceLiveAreaUtil 0x2800000000028057 vs0:sys/external/livearea_util.suprx
3.60 mail_api_for_local_libc 0x28000000000280A0 vs0:sys/external/mail_api_for_local_libc.suprx
3.60 SceNearProfile 0x2800000000028058 vs0:sys/external/near_profile.suprx
3.60 SceNotificationUtil 0x2800000000028085 vs0:sys/external/notification_util.suprx
3.60 SceNpActivityNet 0x2800000000028059 vs0:sys/external/np_activity.suprx
3.60 SceNpActivity 0x280000000002805A vs0:sys/external/np_activity_sdk.suprx
3.60 SceNpBasic 0x280000000002805B vs0:sys/external/np_basic.suprx
3.60 SceNpCommerce2 0x280000000002805C vs0:sys/external/np_commerce2.suprx
3.60 SceNpCommon 0x280000000002805D vs0:sys/external/np_common.suprx
3.60 SceNpCommonPs4 0x28000000000280A7 vs0:sys/external/np_common_ps4.suprx
3.60 SceNpFriendPrivacyLevel 0x280000000002805E vs0:sys/external/np_friend_privacylevel.suprx
3.60 SceNpKdc 0x280000000002805F vs0:sys/external/np_kdc.suprx
3.60 SceNpManager 0x2800000000028060 vs0:sys/external/np_manager.suprx
3.60 SceNpMatching2 0x2800000000028061 vs0:sys/external/np_matching2.suprx
3.60 SceNpMessage 0x2800000000028062 vs0:sys/external/np_message.suprx
3.60 SceNpMessageContactsPlugin 0x2800000000028074 vs0:sys/external/np_message_contacts.suprx
3.60 SceNpMessageDlgImplPlugin 0x2800000000028075 vs0:sys/external/np_message_dialog_impl.suprx
3.60 SceNpMessagePadding 0x2800000000028095 vs0:sys/external/np_message_padding.suprx
3.60 SceNpPartyGameUtil 0x2800000000028063 vs0:sys/external/np_party.suprx
3.60 SceNpScore 0x2800000000028064 vs0:sys/external/np_ranking.suprx
3.60 SceNpSignaling 0x280000000002808F vs0:sys/external/np_signaling.suprx
3.60 SceNpSnsFacebook 0x2800000000028084 vs0:sys/external/np_sns_facebook.suprx
3.60 SceNpTrophy 0x2800000000028065 vs0:sys/external/np_trophy.suprx
3.60 SceNpTus 0x2800000000028066 vs0:sys/external/np_tus.suprx
3.60 SceNpUtility 0x2800000000028067 vs0:sys/external/np_utility.suprx
3.60 SceNpWebApi 0x28000000000280A6 vs0:sys/external/np_webapi.suprx
3.60 ScePartyMemberListPlugin 0x280000000002808B vs0:sys/external/party_member_list.suprx
3.60 SceDrmPsmKdc 0x280000000002808E vs0:sys/external/psmkdc.suprx
3.60 SceLibPspnetAdhoc 0x280000000002808C vs0:sys/external/pspnet_adhoc.suprx
3.60 SceSignInExt 0x28000000000280AB vs0:sys/external/signin_ext.suprx
3.60 SceSqliteVsh 0x280000000002806E vs0:sys/external/sqlite.suprx
3.60 SceStoreCheckoutPlugin 0x280000000002806F vs0:sys/external/store_checkout_plugin.suprx
3.60 SceTriggerUtil 0x2800000000024002 vs0:sys/external/trigger_util.suprx
3.60 SceWebUIPlugin 0x2800000000028073 vs0:sys/external/web_ui_plugin.suprx
3.60 SceAppSettings 0x2800000000020002 vs0:vsh/common/app_settings.suprx
3.60 SceAuthPlugin 0x2800000000020003 vs0:vsh/common/auth_plugin.suprx
3.60 SceAvContentHandler 0x2800000000020004 vs0:vsh/common/av_content_handler.suprx
3.60 SceBackupRestore 0x280000000002002A vs0:vsh/common/backup_restore.suprx
3.60 SceContentOperation 0x2800000000020006 vs0:vsh/common/content_operation.suprx
3.60 SceDbRecovery 0x2800000000020007 vs0:vsh/common/dbrecovery_plugin.suprx
3.60 SceDbSetup 0x2800000000020008 vs0:vsh/common/dbsetup.suprx
3.60 SceBEAVCorePlayer 0x280000000002003C vs0:vsh/common/libBEAVCorePlayer.suprx
3.60 SceLibFflMp4 0x280000000002000F vs0:vsh/common/libFflMp4.suprx
3.60 SceLibical 0x2800000000020044 vs0:vsh/common/libical.suprx
3.60 SceLibicalss 0x2800000000020043 vs0:vsh/common/libicalss.suprx
3.60 SceLibMarlin 0x280000000002002C vs0:vsh/common/libmarlin.suprx
3.60 SceMarlinDownloader 0x2800000000020013 vs0:vsh/common/libmarlindownloader.suprx
3.60 SceLibMarlinPb 0x280000000002002D vs0:vsh/common/libmarlin_pb.suprx
3.60 SceLibMtp 0x2800000000020014 vs0:vsh/common/libmtp.suprx
3.60 SceLibMtpHttp 0x280000000002003A vs0:vsh/common/libmtphttp.suprx
3.60 SceLibMtpHttpWrapper 0x280000000002003B vs0:vsh/common/libmtphttp_wrapper.suprx
3.60 SceLibFflVuMp4 0x2800000000020037 vs0:vsh/common/libSenvuabsFFsdk.suprx
3.60 SceVideoProfiler 0x2800000000020016 vs0:vsh/common/libvideoprofiler.suprx
3.60 mail_api_for_local 0x2800000000020038 vs0:vsh/common/mail_api_for_local.suprx
3.60 SceMtpr3 0x280000000002001D vs0:vsh/common/mtpr3.suprx
3.60 SceMtpClient 0x280000000002001E vs0:vsh/common/mtp_client.suprx
3.60 SceNpGriefReport 0x280000000002002F vs0:vsh/common/np_grief_report.suprx
3.60 SceAACPromoter 0x2800000000020001 vs0:vsh/common/mms/AACPromoter.suprx
3.60 SceBmpPromoter 0x2800000000020005 vs0:vsh/common/mms/bmp_promoter.suprx
3.60 SceGifPromoter 0x280000000002000B vs0:vsh/common/mms/gif_promoter.suprx
3.60 SceJpegPromoter 0x280000000002000E vs0:vsh/common/mms/jpeg_promoter.suprx
3.60 SceMetaGen 0x280000000002001A vs0:vsh/common/mms/meta_gen.suprx
3.60 SceMp3Promoter 0x280000000002001B vs0:vsh/common/mms/Mp3Promoter.suprx
3.60 SceMsvPromoter 0x280000000002001C vs0:vsh/common/mms/MsvPromoter.suprx
3.60 ScePngPromoter 0x2800000000020020 vs0:vsh/common/mms/png_promoter.suprx
3.60 SceRiffPromoter 0x2800000000020022 vs0:vsh/common/mms/RiffPromoter.suprx
3.60 SceSensMe 0x2800000000020023 vs0:vsh/common/mms/SensMe.suprx
3.60 SceTiffPromoter 0x2800000000020027 vs0:vsh/common/mms/tiff_promoter.suprx
3.60 SceGameCardInstallerPlugin 0x280000000002003F vs0:vsh/game/gamecard_installer_plugin.suprx
3.60 SceGameDataPlugin 0x2800000000020009 vs0:vsh/game/gamedata_plugin.suprx
3.60 SceInitialSetup 0x2800000000000014 vs0:vsh/initialsetup/initialsetup.self
3.60 SceOnlineStoragePlugin 0x280000000002003E vs0:vsh/online_storage/online_storage_plugin.suprx
3.60 SceAuthResetPlugin 0x2800000000020029 vs0:vsh/shell/auth_reset_plugin.suprx
3.60 SceIduUpdate 0x280000000002002E vs0:vsh/shell/idu_update_plugin.suprx
3.60 SceImePlugin 0x280000000002000C vs0:vsh/shell/ime_plugin.suprx
3.60 SceImposeNet 0x280000000002000D vs0:vsh/shell/impose_net_plugin.suprx
3.60 SceLibLocationDolceProvide 0x280000000002003D vs0:vsh/shell/liblocation_dolce_provider.suprx
3.60 SceLibLocationPermission 0x2800000000020010 vs0:vsh/shell/liblocation_permission.suprx
3.60 SceLibLocationProvider 0x2800000000020011 vs0:vsh/shell/liblocation_provider.suprx
3.60 SceLsdb 0x2800000000020018 vs0:vsh/shell/livespace_db.suprx
3.60 SceLocationPlugin 0x2800000000020019 vs0:vsh/shell/location_dialog_plugin.suprx
3.60 SceShell 0x2800000000000001 vs0:vsh/shell/shell.self
3.60 SceTelInitialCheck 0x2800000000020025 vs0:vsh/shell/telephony/initial_check/tel_initial_check_plugin.suprx