1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-12 02:44:54 +00:00

Match n64dd text in code (#2058)

* match n64dd text

* format

* fixups

* add n64dd segment using baserom

* cleanup syms 1

* cleanup symbols 2

* cleanup D_800FF4B0

* fix declaration usage and linking for D_800FF4B0
This commit is contained in:
Dragorn421 2024-08-21 01:20:11 +02:00 committed by GitHub
parent ac2224f095
commit 942df45892
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 189 additions and 8 deletions

View file

@ -1,3 +1,90 @@
#include "global.h"
#include "n64dd.h"
// TODO functions of unknown prototype
extern char func_801C8510_unknown[];
extern char func_800AE170_unknown[];
extern char func_800ADCD8_unknown[];
extern char osGetIntMask[];
extern char osSetTime[];
n64ddStruct_800FF4B0_pointers D_800FF4B0 = {
func_801C8510_unknown,
NULL,
NULL,
Fault_RemoveClient,
Fault_AddClient,
func_800AE170_unknown,
func_800ADCD8_unknown,
Fault_AddHungupAndCrashImpl,
Fault_AddHungupAndCrash,
func_800ADC08,
_Printf,
osCreateThread,
osDestroyThread,
osYieldThread,
osStartThread,
osStopThread,
osGetThreadId,
osSetThreadPri,
osGetThreadPri,
osCreateMesgQueue,
osSendMesg,
osJamMesg,
osRecvMesg,
osSetEventMesg,
osGetIntMask,
osSetIntMask,
osInvalDCache,
osInvalICache,
osWritebackDCache,
osWritebackDCacheAll,
osGetTime,
osSetTime,
osSetTimer,
osStopTimer,
&gSaveContext,
DmaMgr_RequestAsync,
DmaMgr_RequestSync,
DmaMgr_DmaFromDriveRom,
Cutscene_HandleEntranceTriggers,
gSegments,
Flags_GetEventChkInf,
Flags_SetEventChkInf,
NULL, // TODO possibly file padding
NULL,
};
n64ddStruct_80121AF0* B_80121AF0;
n64ddStruct_80121AF0* func_800ADB30(n64ddStruct_80121AF0* arg0) {
n64ddStruct_800FF4B0_pointers* temp_a0 = func_800ADBD0();
if (arg0 != NULL && arg0->unk_00 != NULL) {
arg0->unk_00(temp_a0, arg0);
}
B_80121AF0 = arg0;
return B_80121AF0;
}
void func_800ADB8C(void) {
if (B_80121AF0 != NULL) {
if (B_80121AF0->unk_04 != NULL) {
B_80121AF0->unk_04();
}
}
B_80121AF0 = NULL;
}
n64ddStruct_800FF4B0_pointers* func_800ADBD0(void) {
D_800FF4B0.unk_04 = 0;
D_800FF4B0.unk_08 = gRegEditor;
D_800FF4B0.unk_88 = &gSaveContext;
return &D_800FF4B0;
}
void func_800ADC00(void) {
}
void func_800ADC08(s32 arg0, s32 arg1, s32 arg2) {
}