diff options
Diffstat (limited to 'include/kernel/kernel/sysmem/sysroot.h')
-rw-r--r-- | include/kernel/kernel/sysmem/sysroot.h | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/include/kernel/kernel/sysmem/sysroot.h b/include/kernel/kernel/sysmem/sysroot.h index 9852087..d11a626 100644 --- a/include/kernel/kernel/sysmem/sysroot.h +++ b/include/kernel/kernel/sysmem/sysroot.h @@ -31,8 +31,22 @@ int sceKernelGetProcessTitleId(SceUID pid, char *titleid, SceSize len); int sceSysrootGetSelfInfo(SceKernelSysrootSelfIndex index, SceKernelSysrootSelfInfo *info); +/** + * Get UseExternalStorage status. + * + * Returns 1 if an external device(sdcard) is available. + * + * @return 0 or 1. + */ int sceSysrootUseExternalStorage(void); +/** + * Get UseInternalStorage status. + * + * Returns 1 if using an internal device(pre-memcard). + * + * @return 0 or 1. + */ int sceSysrootUseInternalStorage(void); typedef struct SceSysrootProcessHandler { @@ -60,6 +74,48 @@ typedef struct SceSysrootProcessHandler { */ int sceKernelSysrootSetProcessHandler(const SceSysrootProcessHandler *handlers); +typedef struct SceSysrootDbgpHandler { + SceSize size; //!< sizeof(SceSysrootDbgpHandler):0x5C + void (* unk_0x04)(int a1, int a2, int a3, int a4); + void (* unk_0x08)(int a1, int a2, int a3, int a4); + void (* unk_0x0C)(int a1); + void (* unk_0x10)(int a1, int a2, int a3, int a4); + void (* unk_0x14)(int a1, int a2, int a3, int a4); + void (* unk_0x18)(SceUID pid, SceUID modid, int flags, uint64_t time); + void (* unk_0x1C)(int a1, int a2, int a3); + void (* unk_0x20)(int a1, int a2, int a3); + void (* unk_0x24)(int a1, int a2, int a3); + void (* unk_0x28)(SceUID pid, SceUID modid, uint64_t time); + void (* unk_0x2C)(SceUID pid, SceUID modid, uint64_t time); + int (* unk_0x30)(SceUID pid); + int (* unk_0x34)(int a1, int a2, int a3); + int (* unk_0x38)(int a1, int a2, void *a3); + int (* unk_0x3C)(int a1, int a2, int a3); + int (* unk_0x40)(SceUID pid, int *some_flag); + int (* unk_0x44)(SceUID pid, SceUID modid, int flags, uint64_t time); + int (* unk_0x48)(int a1, int a2, int a3); + void (* unk_0x4C)(void); + void (* unk_0x50)(void); + int (* unk_0x54)(int a1, int a2, int a3, int a4, int a5); + int (* unk_0x58)(int a1, int a2, int a3); +} SceSysrootDbgpHandler; + +/** + * Register Dbgp handlers. + * + * @param[in] handlers pointer of handlers + * + * @return 0 on success, < 0 on error. + */ +int sceKernelSysrootRegisterDbgpHandler(const SceSysrootDbgpHandler *handlers); + +/** + * Unregister Dbgp handlers. + * + * @return none. + */ +void sceKernelSysrootUnregisterDbgpHandler(void); + /** * Get the process UID of shell. * @@ -76,6 +132,16 @@ SceUID sceKernelSysrootGetShellPid(void); */ SceInt32 sceSysrootGetHardwareFlags(SceUInt32 flags[4]); +int sceSysrootIsBsodReboot(void); + +int sceSysrootIsSafeMode(void); + +int sceSysrootIsUpdateMode(void); + +int sceSysrootIsUsbEnumWakeup(void); + +int sceSysrootIsExternalBootMode(void); + SCE_CDECL_END #endif /* _VDSUITE_KERNEL_KERNEL_SYSMEM_SYSROOT_H */ |