mirror of
https://github.com/zeldaret/ss
synced 2026-06-05 11:18:01 -04:00
Fix mDvd createOrDie symbol (#122)
This commit is contained in:
@@ -17758,9 +17758,9 @@ __ct__14mDvd_command_cFv = .text:0x802EF460; // type:function size:0x1C
|
||||
do_delete__14mDvd_command_cFv = .text:0x802EF480; // type:function size:0x20
|
||||
destroy__14mDvd_command_cFPP14mDvd_command_c = .text:0x802EF4A0; // type:function size:0x54
|
||||
__dt__15mDvd_callback_cFv = .text:0x802EF500; // type:function size:0x58
|
||||
__ct__15mDvd_callback_cFPFPv_UlPv = .text:0x802EF560; // type:function size:0x64
|
||||
create__15mDvd_callback_cFPFPv_UlPv = .text:0x802EF5D0; // type:function size:0x78
|
||||
createOrFail__15mDvd_callback_cFPFPv_UlPv = .text:0x802EF650; // type:function size:0x30
|
||||
__ct__15mDvd_callback_cFPFPv_PvPv = .text:0x802EF560; // type:function size:0x64
|
||||
create__15mDvd_callback_cFPFPv_PvPv = .text:0x802EF5D0; // type:function size:0x78
|
||||
createOrDie__15mDvd_callback_cFPFPv_PvPv = .text:0x802EF650; // type:function size:0x30
|
||||
execute__15mDvd_callback_cFv = .text:0x802EF680; // type:function size:0x54
|
||||
__dt__22mDvd_mountMemArchive_cFv = .text:0x802EF6E0; // type:function size:0x58
|
||||
__ct__22mDvd_mountMemArchive_cFi = .text:0x802EF740; // type:function size:0x74
|
||||
@@ -17779,11 +17779,11 @@ __dt__20mDvd_toMainRam_arc_cFv = .text:0x802EFCE0; // type:function size:0x58
|
||||
__ct__20mDvd_toMainRam_arc_cFPQ23EGG7Archiveii = .text:0x802EFD40; // type:function size:0x60
|
||||
makeRequest__20mDvd_toMainRam_arc_cFPQ23EGG7ArchiveiiPQ23EGG4Heap = .text:0x802EFDA0; // type:function size:0x80
|
||||
create__20mDvd_toMainRam_arc_cFPQ23EGG7ArchivePCciPQ23EGG4Heap = .text:0x802EFE20; // type:function size:0x64
|
||||
createOrFail__20mDvd_toMainRam_arc_cFPQ23EGG7ArchivePCciPQ23EGG4Heap = .text:0x802EFE90; // type:function size:0x30
|
||||
createOrDie__20mDvd_toMainRam_arc_cFPQ23EGG7ArchivePCciPQ23EGG4Heap = .text:0x802EFE90; // type:function size:0x30
|
||||
execute__20mDvd_toMainRam_arc_cFv = .text:0x802EFEC0; // type:function size:0x78
|
||||
__ct__23mDvd_toMainRam_normal_cFi = .text:0x802EFF40; // type:function size:0x4C
|
||||
create__23mDvd_toMainRam_normal_cFPCciPQ23EGG4Heap = .text:0x802EFF90; // type:function size:0x9C
|
||||
createOrFail__23mDvd_toMainRam_normal_cFPCciPQ23EGG4Heap = .text:0x802F0030; // type:function size:0x30
|
||||
createOrDie__23mDvd_toMainRam_normal_cFPCciPQ23EGG4Heap = .text:0x802F0030; // type:function size:0x30
|
||||
create2__23mDvd_toMainRam_normal_cFPP23mDvd_toMainRam_normal_cPCciPQ23EGG4Heap = .text:0x802F0060; // type:function size:0x48
|
||||
__dt__23mDvd_toMainRam_normal_cFv = .text:0x802F00B0; // type:function size:0x58
|
||||
execute__23mDvd_toMainRam_normal_cFv = .text:0x802F0110; // type:function size:0xA0
|
||||
|
||||
@@ -70,7 +70,7 @@ struct DynamicModuleControl : DynamicModuleControlBase {
|
||||
/* 802dfa60 */ virtual bool do_unlink();
|
||||
/* 802df3d0 */ DynamicModuleControl(char const *, EGG::ExpHeap *);
|
||||
/* 802df4d0 */ static void initialize(EGG::ExpHeap *heap);
|
||||
/* 802df530 */ static u32 callback(void *);
|
||||
/* 802df530 */ static void *callback(void *);
|
||||
void checkHeapStatus();
|
||||
|
||||
/* 0x10 */ UNKWORD unk_16;
|
||||
|
||||
@@ -65,7 +65,7 @@ private:
|
||||
sFPhaseBase::sFPhaseState cb8();
|
||||
sFPhaseBase::sFPhaseState cb9();
|
||||
|
||||
static u32 dvdCallback(void *data);
|
||||
static void *dvdCallback(void *data);
|
||||
|
||||
static sFPhase<dScBoot_c>::phaseCallback sCallbacks[];
|
||||
|
||||
|
||||
+7
-7
@@ -69,7 +69,7 @@ public:
|
||||
u8 mCompressionType;
|
||||
};
|
||||
|
||||
typedef u32 (*dvdReadCallback)(void *);
|
||||
typedef void *(*dvdReadCallback)(void *);
|
||||
|
||||
class mDvd_callback_c : public mDvd_command_c {
|
||||
public:
|
||||
@@ -79,19 +79,19 @@ public:
|
||||
|
||||
static mDvd_callback_c *create(dvdReadCallback cb, void *cbData);
|
||||
// createOrDie__15mDvd_callback_cFPFPv_PvPv ?
|
||||
static mDvd_callback_c *createOrFail(dvdReadCallback cb, void *cbData);
|
||||
static mDvd_callback_c *createOrDie(dvdReadCallback cb, void *cbData);
|
||||
|
||||
dvdReadCallback mCallback;
|
||||
void *mCallbackData;
|
||||
u32 mCallbackResult;
|
||||
void *mCallbackResult;
|
||||
};
|
||||
|
||||
class mDvd_mountMemArchive_c : public mDvd_command_c {
|
||||
public:
|
||||
mDvd_mountMemArchive_c(int mountDirection);
|
||||
virtual ~mDvd_mountMemArchive_c();
|
||||
virtual u32 execute();
|
||||
virtual void doClear();
|
||||
virtual u32 execute() override;
|
||||
virtual void doClear() override;
|
||||
|
||||
static mDvd_mountMemArchive_c *create(const char *path, u8 mountDirection, EGG::Heap *heap);
|
||||
void *getArcBinary();
|
||||
@@ -122,7 +122,7 @@ public:
|
||||
|
||||
static mDvd_toMainRam_arc_c *makeRequest(EGG::Archive *arc, int entryNum, int mountDirection, EGG::Heap *heap);
|
||||
static mDvd_toMainRam_arc_c *create(EGG::Archive *arc, const char *path, int mountDirection, EGG::Heap *heap);
|
||||
static mDvd_toMainRam_arc_c *createOrFail(EGG::Archive *arc, const char *path, int mountDirection, EGG::Heap *heap);
|
||||
static mDvd_toMainRam_arc_c *createOrDie(EGG::Archive *arc, const char *path, int mountDirection, EGG::Heap *heap);
|
||||
|
||||
EGG::Archive *mArcPtr;
|
||||
int mEntryNum;
|
||||
@@ -136,7 +136,7 @@ public:
|
||||
virtual void doClear();
|
||||
|
||||
static mDvd_toMainRam_normal_c *create(const char *path, int mountDirection, EGG::Heap *heap);
|
||||
static mDvd_toMainRam_normal_c *createOrFail(const char *path, int mountDirection, EGG::Heap *heap);
|
||||
static mDvd_toMainRam_normal_c *createOrDie(const char *path, int mountDirection, EGG::Heap *heap);
|
||||
static void create2(mDvd_toMainRam_normal_c **cmd, const char *path, int mountDirection, EGG::Heap *heap);
|
||||
|
||||
u8 mCompressionType2;
|
||||
|
||||
+4
-4
@@ -129,8 +129,8 @@ void DynamicModuleControl::initialize(EGG::ExpHeap *heap) {
|
||||
sTotalFreeSize = heap->getTotalFreeSize();
|
||||
}
|
||||
|
||||
u32 DynamicModuleControl::callback(void *arg) {
|
||||
return static_cast<DynamicModuleControl *>(arg)->do_load();
|
||||
void *DynamicModuleControl::callback(void *arg) {
|
||||
return reinterpret_cast<void *>(static_cast<DynamicModuleControl *>(arg)->do_load());
|
||||
}
|
||||
|
||||
void DynamicModuleControl::checkHeapStatus() {
|
||||
@@ -159,9 +159,9 @@ bool DynamicModuleControl::do_load() {
|
||||
snprintf(buf, sizeof(buf), "%s/%sNP.rel", sRelsDir, mName);
|
||||
if (mModule == nullptr) {
|
||||
if (sArchive != nullptr) {
|
||||
sDvdFile = mDvd_toMainRam_arc_c::createOrFail(sArchive, buf, 1, mHeap);
|
||||
sDvdFile = mDvd_toMainRam_arc_c::createOrDie(sArchive, buf, 1, mHeap);
|
||||
} else {
|
||||
sDvdFile = mDvd_toMainRam_normal_c::createOrFail(buf, 1, mHeap);
|
||||
sDvdFile = mDvd_toMainRam_normal_c::createOrDie(buf, 1, mHeap);
|
||||
}
|
||||
|
||||
if (sDvdFile != nullptr) {
|
||||
|
||||
@@ -88,11 +88,11 @@ sFPhaseBase::sFPhaseState dScBoot_c::cb4() {
|
||||
return sFPhaseBase::PHASE_NEXT;
|
||||
}
|
||||
|
||||
u32 dScBoot_c::dvdCallback(void *data) {}
|
||||
void *dScBoot_c::dvdCallback(void *data) {}
|
||||
|
||||
sFPhaseBase::sFPhaseState dScBoot_c::cb5() {
|
||||
if (mpDvdCallback == nullptr) {
|
||||
mpDvdCallback = mDvd_callback_c::createOrFail(&dvdCallback, nullptr);
|
||||
mpDvdCallback = mDvd_callback_c::createOrDie(&dvdCallback, nullptr);
|
||||
if (mpDvdCallback == nullptr) {
|
||||
return sFPhaseBase::PHASE_RETRY;
|
||||
}
|
||||
|
||||
+6
-6
@@ -284,7 +284,7 @@ err:
|
||||
return false;
|
||||
}
|
||||
|
||||
u32 loadRelsArcCallback(void *arg) {
|
||||
void *loadRelsArcCallback(void *arg) {
|
||||
EGG::Archive *arc = nullptr;
|
||||
EGG::Heap *heap = DynamicModuleControl::sDylinkHeap;
|
||||
|
||||
@@ -297,10 +297,10 @@ u32 loadRelsArcCallback(void *arg) {
|
||||
if (arc != nullptr) {
|
||||
DynamicModuleControl::sArchive = arc;
|
||||
}
|
||||
return (u32)arc;
|
||||
return reinterpret_cast<void *>(arc);
|
||||
}
|
||||
|
||||
u32 dvdCallback(void *arg) {
|
||||
void *dvdCallback(void *arg) {
|
||||
DynamicModuleControl::initialize(mHeap::g_dylinkHeap);
|
||||
DynamicModuleControl::sRelsDir = relsDir;
|
||||
DVDFileInfo info;
|
||||
@@ -319,16 +319,16 @@ u32 dvdCallback(void *arg) {
|
||||
do {
|
||||
} while (!result);
|
||||
Initialized = 1;
|
||||
return true;
|
||||
return reinterpret_cast<void *>(true);
|
||||
}
|
||||
|
||||
void initModule() {
|
||||
initDylinkHeap(0x2bf, DYNAMIC_NAME_TABLE, 0x27c, mHeap::g_dylinkHeap);
|
||||
DVD = mDvd_callback_c::createOrFail(dvdCallback, mHeap::g_dylinkHeap);
|
||||
DVD = mDvd_callback_c::createOrDie(dvdCallback, mHeap::g_dylinkHeap);
|
||||
}
|
||||
|
||||
void initRelsArc() {
|
||||
DVD = mDvd_callback_c::createOrFail(loadRelsArcCallback, nullptr);
|
||||
DVD = mDvd_callback_c::createOrDie(loadRelsArcCallback, nullptr);
|
||||
}
|
||||
|
||||
bool destroy() {
|
||||
|
||||
+3
-3
@@ -345,7 +345,7 @@ mDvd_callback_c *mDvd_callback_c::create(dvdReadCallback cb, void *cbData) {
|
||||
}
|
||||
|
||||
/** 802ef650 */
|
||||
mDvd_callback_c *mDvd_callback_c::createOrFail(dvdReadCallback cb, void *cbData) {
|
||||
mDvd_callback_c *mDvd_callback_c::createOrDie(dvdReadCallback cb, void *cbData) {
|
||||
mDvd_callback_c *cmd = mDvd_callback_c::create(cb, cbData);
|
||||
while (!cmd) {}
|
||||
return cmd;
|
||||
@@ -573,7 +573,7 @@ mDvd_toMainRam_arc_c::create(EGG::Archive *arc, const char *path, int mountDirec
|
||||
|
||||
/** 802efe90 */
|
||||
mDvd_toMainRam_arc_c *
|
||||
mDvd_toMainRam_arc_c::createOrFail(EGG::Archive *arc, const char *path, int mountDirection, EGG::Heap *heap) {
|
||||
mDvd_toMainRam_arc_c::createOrDie(EGG::Archive *arc, const char *path, int mountDirection, EGG::Heap *heap) {
|
||||
mDvd_toMainRam_arc_c *cmd = mDvd_toMainRam_arc_c::create(arc, path, mountDirection, heap);
|
||||
while (!cmd) {}
|
||||
return cmd;
|
||||
@@ -613,7 +613,7 @@ mDvd_toMainRam_normal_c *mDvd_toMainRam_normal_c::create(const char *path, int m
|
||||
}
|
||||
|
||||
/** 802f0030 */
|
||||
mDvd_toMainRam_normal_c *mDvd_toMainRam_normal_c::createOrFail(const char *path, int mountDirection, EGG::Heap *heap) {
|
||||
mDvd_toMainRam_normal_c *mDvd_toMainRam_normal_c::createOrDie(const char *path, int mountDirection, EGG::Heap *heap) {
|
||||
mDvd_toMainRam_normal_c *cmd = mDvd_toMainRam_normal_c::create(path, mountDirection, heap);
|
||||
while (!cmd) {}
|
||||
return cmd;
|
||||
|
||||
Reference in New Issue
Block a user