diff options
author | Max <mparisi@stevens.edu> | 2020-10-27 16:13:32 -0400 |
---|---|---|
committer | Max <mparisi@stevens.edu> | 2020-10-27 16:13:32 -0400 |
commit | 126972af1a4ff9084cd48f9c57eb07f3951e5086 (patch) | |
tree | 55ac7ff81ee2656da6542fb2700452a15436a77b /include/SDK | |
parent | 69dd6927a2ec6791639065a70da615228ae362f6 (diff) |
match up to func_801DC9CC
Diffstat (limited to 'include/SDK')
-rw-r--r-- | include/SDK/DVD/dvd.h | 9 | ||||
-rw-r--r-- | include/SDK/DVD/dvdfs.h | 4 | ||||
-rw-r--r-- | include/SDK/OS/OSSemaphore.h | 21 | ||||
-rw-r--r-- | include/SDK/os.h | 1 |
4 files changed, 34 insertions, 1 deletions
diff --git a/include/SDK/DVD/dvd.h b/include/SDK/DVD/dvd.h index f10826f..e9517dc 100644 --- a/include/SDK/DVD/dvd.h +++ b/include/SDK/DVD/dvd.h @@ -13,9 +13,18 @@ typedef struct DVDDiskID u8 unk7;
} DVDDiskID;
+typedef struct DVDCommandBlock
+{
+ u8 unk0[0x30];
+} DVDCommandBlock;
+
+typedef void (*DVDCBCallback)(s32 result, DVDCommandBlock* block);
+
DVDDiskID* DVDGetCurrentDiskID(void);
void DVDInit(void);
s32 DVDGetDriveStatus(void);
+BOOL DVDCheckDiskAsync(DVDCommandBlock* block, DVDCBCallback callback);
+
#ifdef __cplusplus
}
diff --git a/include/SDK/DVD/dvdfs.h b/include/SDK/DVD/dvdfs.h index 0597e82..0067c68 100644 --- a/include/SDK/DVD/dvdfs.h +++ b/include/SDK/DVD/dvdfs.h @@ -14,7 +14,7 @@ struct DVDFileInfo u8 unk0[0x34];
u32 unk34;
u8 unk38[0x8];
- void (*unk40)(s32, void*); // TODO: not a DVDFileCallback bc an unkClass* is passed as 2nd param
+ void (*unk40)(s32, void*); // TODO: not a DVDFileCallback bc an unkClass* is passed as 2nd param?
void* unk44; //data cache start addr to invalidate
s32 unk48; // data cache region size
};
@@ -24,6 +24,8 @@ BOOL DVDClose(DVDFileInfo*); s32 DVDConvertPathToEntrynum(const char* fileName);
s32 DVDReadPrio(DVDFileInfo* fileInfo, void* addr, s32 length, s32 offset, s32 prio);
s32 DVDReadAsyncPrio(DVDFileInfo* fileInfo, void* addr, s32 length, s32 offset, DVDCallback callback, s32 prio);
+s32 DVDSeekAsyncPrio(DVDFileInfo* fileInfo, s32 offset, DVDCallback callback, s32 prio);
+
#ifdef __cplusplus
diff --git a/include/SDK/OS/OSSemaphore.h b/include/SDK/OS/OSSemaphore.h new file mode 100644 index 0000000..46e7e03 --- /dev/null +++ b/include/SDK/OS/OSSemaphore.h @@ -0,0 +1,21 @@ +#ifndef POKEREVO_OSSEMAPHORE_H
+#define POKEREVO_OSSEMAPHORE_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct OSSemaphore
+{
+ u8 unk0[0x10];
+} OSSemaphore;
+
+s32 OSSignalSemaphore(OSSemaphore* sem);
+void OSInitSemaphore(OSSemaphore* sem, s32 count);
+s32 OSWaitSemaphore(OSSemaphore* sem);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //POKEREVO_OSSEMAPHORE_H
diff --git a/include/SDK/os.h b/include/SDK/os.h index 0d31901..d2272f0 100644 --- a/include/SDK/os.h +++ b/include/SDK/os.h @@ -8,6 +8,7 @@ extern "C" { #include "SDK/OS/OSAlloc.h"
#include "SDK/OS/OSCache.h"
#include "SDK/OS/OSInterrupt.h"
+#include "SDK/OS/OSSemaphore.h"
#ifdef __cplusplus
}
|