diff --git a/ttyd-tools/rel/include/ttyd/dvdmgr.h b/ttyd-tools/rel/include/ttyd/dvdmgr.h index c15a312..1213466 100644 --- a/ttyd-tools/rel/include/ttyd/dvdmgr.h +++ b/ttyd-tools/rel/include/ttyd/dvdmgr.h @@ -4,6 +4,18 @@ namespace ttyd::dvdmgr { +enum DvdMgrFile_Flags +{ + DvdMgrFile_ReadPending = 0x1, + DvdMgrFile_ReadDone = 0x2, + DvdMgrFile_ClosePending = 0x8, + + DvdMgrFile_HasError = 0x20, + DvdMgrFile_Suspended = 0x80, + + DvdMgrFile_Used = 0x8000, +}; + struct DvdMgrFile { char path[64]; @@ -11,6 +23,7 @@ struct DvdMgrFile void *readTargetAddr; int32_t readSize; int32_t readBaseOffset; + int32_t readBlockOffset; void (*pfnReadDoneCb)(int result, void *fileInfo); uint16_t flags; uint16_t priority; @@ -28,12 +41,14 @@ extern "C" { // local: compare // DVDMgrMain -void *DVDMgrOpen(const char *path, int priority, uint16_t wZero); -uint32_t DVDMgrRead(void *file, void *dst, int size, int offset); -void DVDMgrReadAsync(void *file, void *dst, int size, int offset, void (*pfnReadDoneCb)(int result, void *fileInfo)); -void DVDMgrClose(void *file); -uint32_t DVDMgrGetLength(void *file); +DvdMgrFile *DVDMgrOpen(const char *path, int priority, uint16_t wZero); +uint32_t DVDMgrRead(DvdMgrFile *file, void *dst, int size, int offset); +void DVDMgrReadAsync(DvdMgrFile *file, void *dst, int size, int offset, void (*pfnReadDoneCb)(int result, void *fileInfo)); +void DVDMgrClose(DvdMgrFile *file); +uint32_t DVDMgrGetLength(DvdMgrFile *file); + +void DVDMgrSetupCallback(void (*cb)()); -void DVDMgrSetupCallback(void *(cb)()); +} } \ No newline at end of file