* JKRDvdArchive.s split

* JKRMemArchive.s split

* JKRAramArchive.s split

* JKRCompArchive.s split

* JKRDecomp.s split

* JKRDvdRipper.s split

* JKRAramBlock.s split

* JKRAramHeap.s split

* JKRAramPiece.s split

* JKRAramStream.s split

* removed unused .s files

* JKRDvdAramRipper.s split

* JKRAram.s split

* cleanup and making vtables easier to debug

* fixed merge errors

* fixed JKRFileLoader::fetchVolumeName

Co-authored-by: Pheenoh <pheenoh@gmail.com>
This commit is contained in:
Jonathan Wase
2020-12-06 21:02:25 +01:00
committed by GitHub
parent 481c458e8d
commit ff2faa9804
201 changed files with 9912 additions and 8262 deletions
@@ -9,19 +9,6 @@ class JKRFileLoader : public JKRDisposer {
JKRFileLoader(void);
virtual ~JKRFileLoader();
virtual void unmount(void);
virtual void becomeCurrent(char const*) = 0;
virtual void getResource(char const*) = 0;
virtual void getResource(u32, char const*) = 0;
virtual void readResource(void*, u32, char const*) = 0;
virtual void readResource(void*, u32, u32, char const*) = 0;
virtual void removeResourceAll(void) = 0;
virtual void removeResource(void*) = 0;
virtual void detachResource(void*) = 0;
virtual void getResSize(void const*) const = 0;
virtual void countFile(char const*) const = 0;
virtual void getFirstFile(char const*) const = 0;
bool isMounted() {
return this->mIsMounted;
}
@@ -30,12 +17,19 @@ class JKRFileLoader : public JKRDisposer {
return this->mVolumeType;
}
static void* getGlbResource(char const*);
static void* getGlbResource(char const*, JKRFileLoader*);
static bool removeResource(void*, JKRFileLoader*);
static bool detachResource(void*, JKRFileLoader*);
static JKRFileLoader* findVolume(char const**);
static char* fetchVolumeName(char*, long, char const*);
public:
/* vt[03] */ virtual void unmount(void);
/* vt[04] */ virtual void becomeCurrent(char const*) = 0;
/* vt[05] */ virtual void getResource(char const*) = 0;
/* vt[06] */ virtual void getResource(u32, char const*) = 0;
/* vt[07] */ virtual void readResource(void*, u32, char const*) = 0;
/* vt[08] */ virtual void readResource(void*, u32, u32, char const*) = 0;
/* vt[09] */ virtual void removeResourceAll(void) = 0;
/* vt[10] */ virtual void removeResource(void*) = 0;
/* vt[11] */ virtual void detachResource(void*) = 0;
/* vt[12] */ virtual void getResSize(void const*) const = 0;
/* vt[13] */ virtual void countFile(char const*) const = 0;
/* vt[14] */ virtual void getFirstFile(char const*) const = 0;
private:
JSULink<JKRFileLoader> mFileLoaderLink;
@@ -44,6 +38,14 @@ class JKRFileLoader : public JKRDisposer {
bool mIsMounted;
u8 padding_0x31[3];
int mMountCount;
public:
static void* getGlbResource(char const*);
static void* getGlbResource(char const*, JKRFileLoader*);
static bool removeResource(void*, JKRFileLoader*);
static bool detachResource(void*, JKRFileLoader*);
static JKRFileLoader* findVolume(char const**);
static char* fetchVolumeName(char*, long, char const*);
};
#endif
@@ -15,9 +15,9 @@
/* 802D44F4 002D1434 2C 03 00 00 */ cmpwi r3, 0
/* 802D44F8 002D1438 40 82 00 18 */ bne lbl_802D4510
/* 802D44FC 002D143C 7F A3 EB 78 */ mr r3, r29
/* 802D4500 002D1440 38 8D 83 40 */ addi r4, r13, lbl_804508C0-_SDA_BASE_(r13)
/* 802D4500 002D1440 38 8D 83 40 */ addi r4, r13, 0x804508C0-0x80458580 /*lbl_804508C0-_SDA_BASE_(r13)*/
/* 802D4504 002D1444 48 09 46 29 */ bl strcpy
/* 802D4508 002D1448 38 6D 83 40 */ addi r3, r13, lbl_804508C0-_SDA_BASE_(r13)
/* 802D4508 002D1448 38 6D 83 40 */ addi r3, r13, 0x804508C0-0x80458580 /*lbl_804508C0-_SDA_BASE_(r13)*/
/* 802D450C 002D144C 48 00 00 7C */ b lbl_802D4588
lbl_802D4510:
/* 802D4510 002D1450 3C 60 80 3D */ lis r3, lbl_803D2D18@ha
@@ -54,7 +54,7 @@ lbl_802D456C:
/* 802D4574 002D14B4 88 1F 00 00 */ lbz r0, 0(r31)
/* 802D4578 002D14B8 7C 00 07 75 */ extsb. r0, r0
/* 802D457C 002D14BC 40 82 00 08 */ bne lbl_802D4584
/* 802D4580 002D14C0 3B ED 83 40 */ addi r31, r13, lbl_804508C0-_SDA_BASE_(r13)
/* 802D4580 002D14C0 3B ED 83 40 */ addi r31, r13, 0x804508C0-0x80458580 /*lbl_804508C0-_SDA_BASE_(r13)*/
lbl_802D4584:
/* 802D4584 002D14C4 7F E3 FB 78 */ mr r3, r31
lbl_802D4588: