summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/SDK/DVD/dvd.h9
-rw-r--r--include/SDK/DVD/dvdfs.h4
-rw-r--r--include/SDK/OS/OSSemaphore.h21
-rw-r--r--include/SDK/os.h1
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
}