summaryrefslogtreecommitdiff
path: root/include/SDK/DVD
diff options
context:
space:
mode:
Diffstat (limited to 'include/SDK/DVD')
-rw-r--r--include/SDK/DVD/dvd.h9
-rw-r--r--include/SDK/DVD/dvdfs.h4
2 files changed, 12 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