summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPrincess of Sleeping2020-10-31 00:57:33 +0900
committerReiko Asakura2020-10-31 00:57:33 +0900
commit73ce7c7023c223a52322fa51687605a0578f80cd (patch)
treebab5bd4c116336b36ab32704e595b4d790ef38c2
parentUpdate struct SceSysrootProcessHandler (diff)
downloadvds-libraries-73ce7c7023c223a52322fa51687605a0578f80cd.tar.gz
Add function prototypes in sysroot.h
-rw-r--r--include/kernel/kernel/sysmem/sysroot.h66
-rw-r--r--nids/360/SceSysmem.yml2
2 files changed, 68 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 */
diff --git a/nids/360/SceSysmem.yml b/nids/360/SceSysmem.yml
index 6cc0e2e..89cefc1 100644
--- a/nids/360/SceSysmem.yml
+++ b/nids/360/SceSysmem.yml
@@ -531,6 +531,7 @@ modules:
sceKernelSysrootIsUserModeThread: 0x7FC7A163
sceKernelSysrootPrintBacktrace: 0x491CE8DF
sceKernelSysrootProcessmgrStart2: 0x62E8F511
+ sceKernelSysrootRegisterDbgpHandler: 0x3999F917
sceKernelSysrootReturnFromExcpToThread: 0xDADFF828
sceKernelSysrootSetModulePrivate: 0x7A7E7C0C
sceKernelSysrootSetSharedMemory: 0xFBB91741
@@ -539,6 +540,7 @@ modules:
sceKernelSysrootSetVbaseResetVector: 0x0F2F2B4E
sceKernelSysrootThreadMgrStartAfterProcess: 0x0EB5D7CD
sceKernelSysrootTrapThreadAfterSyscall: 0x9139E22B
+ sceKernelSysrootUnregisterDbgpHandler: 0x7B7ED1E9
sceSysrootGetFactorySystemSwVersion: 0xD3872270
sceSysrootGetModuleInfoForPid: 0xFF9F80FF
sceSysrootGetNidName: 0x0B79E220