Setup msm decompiling

Decompiled msmfio.c
This commit is contained in:
gamemasterplc 2023-12-30 09:37:23 -06:00
parent 52e7394e4e
commit 863b4c50ac
3 changed files with 49 additions and 3 deletions

View file

@ -746,13 +746,13 @@ config.libs = [
},
{
"lib": "msm",
"mw_version": config.linker_version,
"mw_version": "GC/1.2.5n",
"cflags": cflags_msm,
"host": False,
"objects": [
Object(NonMatching, "msm/msmsys.c"),
Object(NonMatching, "msm/msmmem.c"),
Object(NonMatching, "msm/msmfio.c"),
Object(Matching, "msm/msmfio.c"),
Object(NonMatching, "msm/msmmus.c"),
Object(NonMatching, "msm/msmse.c"),
Object(NonMatching, "msm/msmstream.c"),

View file

@ -118,7 +118,10 @@ s32 DVDConvertPathToEntrynum(char* pathPtr);
BOOL DVDReadAsyncPrio(DVDFileInfo* fileInfo, void* addr, s32 length, s32 offset,
DVDCallback callback, s32 prio);
BOOL DVDReadPrio(DVDFileInfo* fileInfo, void* addr, s32 length, s32 offset, s32 prio);
#define DVDReadAsync(fileInfo, addr, length, offset, callback) \
DVDReadAsyncPrio((fileInfo), (addr), (length), (offset), (callback), 2)
#define DVDRead(fileInfo, addr, length, offset) \

43
src/msm/msmfio.c Normal file
View file

@ -0,0 +1,43 @@
#include "dolphin.h"
struct msmFio {
BOOL (*open)(s32, DVDFileInfo *);
BOOL (*read)(DVDFileInfo *, void *, s32, s32, s32);
BOOL (*close)(DVDFileInfo *);
};
static struct msmFio fio;
BOOL msmFioClose(DVDFileInfo *fileInfo)
{
return fio.close(fileInfo);
}
BOOL msmFioRead(DVDFileInfo *fileInfo, void *addr, s32 length, s32 offset)
{
return fio.read(fileInfo, addr, length, offset, 2);
}
BOOL msmFioOpen(s32 entrynum, DVDFileInfo *fileInfo)
{
return fio.open(entrynum, fileInfo);
}
void msmFioInit(void *open, void *read, void *close)
{
if(open) {
fio.open = open;
} else {
fio.open = DVDFastOpen;
}
if(read) {
fio.read = read;
} else {
fio.read = DVDReadPrio;
}
if(close) {
fio.close = close;
} else {
fio.close = DVDClose;
}
}