summaryrefslogtreecommitdiff
path: root/include/kernel/kernel/sysmem/sysroot.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/kernel/kernel/sysmem/sysroot.h')
-rw-r--r--include/kernel/kernel/sysmem/sysroot.h66
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 */