mirror of
https://github.com/zeldaret/mm.git
synced 2026-07-07 13:03:29 -04:00
Decompile irqmgr
This commit is contained in:
+18
-18
@@ -30,18 +30,18 @@ u8* Yaz0_LoadFirstChunk(void); // func_80080E30
|
||||
u8* Yaz0_LoadNextChunk(void* currDecompPos); // func_80080ED0
|
||||
s32 Yaz0_Decompress(u8* src, u8* dest); // func_80080FF0
|
||||
void Yaz0_LoadAndDecompressFile(u32 romStart, u32 vramStart, u32 size); // func_80081178
|
||||
void Irqmgr_AddCallback(Irqmgr* irqmgr, OSMesgQueueListNode* param_2, OSMesgQueue* param_3); // func_80081250
|
||||
void Irqmgr_RemoveCallback(Irqmgr* irqmgr, OSMesgQueueListNode* puParm2); // func_800812DC
|
||||
void Irqmgr_NotifyAllCallbacks(Irqmgr* irqmgr, s16* msg); // func_80081368
|
||||
void Irqmgr_NotifyAllCallbacksWithCapacity(Irqmgr* irqmgr, OSMesg msg); // func_800813B8
|
||||
void Irqmgr_HandlePrenmi1(Irqmgr* irqmgr); // func_8008141C
|
||||
void Irqmgr_CheckThreadStatus2(void); // func_800814B4
|
||||
void Irqmgr_HandlePrenmi2(Irqmgr* irqmgr); // func_800814D4
|
||||
void Irqmgr_HandlePrenmi3(Irqmgr* irqmgr); // func_80081550
|
||||
void Irqmgr_CheckThreadStatus(Irqmgr* irqmgr); // func_800815A8
|
||||
void Irqmgr_HandleFrame(Irqmgr* irqmgr); // func_800815CC
|
||||
void Irqmgr_ThreadEntry(Irqmgr* irqmgr); // func_80081684
|
||||
void Irqmgr_Start(Irqmgr* irqmgr, void* stack, OSPri pri, u8 retraceCount); // func_80081754
|
||||
void IrqMgr_AddCallback(IrqMgr* irqmgr, OSMesgQueueListNode* param_2, OSMesgQueue* param_3); // func_80081250
|
||||
void IrqMgr_RemoveCallback(IrqMgr* irqmgr, OSMesgQueueListNode* remove); // func_800812DC
|
||||
void IrqMgr_NotifyAllCallbacks(IrqMgr* irqmgr, OSMesg msg); // func_80081368
|
||||
void IrqMgr_NotifyAllCallbacksWithCapacity(IrqMgr* irqmgr, OSMesg msg); // func_800813B8
|
||||
void IrqMgr_HandlePrenmi1(IrqMgr* irqmgr); // func_8008141C
|
||||
void IrqMgr_CheckThreadStatusImpl(void); // func_800814B4
|
||||
void IrqMgr_HandlePrenmi2(IrqMgr* irqmgr); // func_800814D4
|
||||
void IrqMgr_HandlePrenmi3(IrqMgr* irqmgr); // func_80081550
|
||||
void IrqMgr_CheckThreadStatus(IrqMgr* irqmgr); // func_800815A8
|
||||
void IrqMgr_HandleFrame(IrqMgr* irqmgr); // func_800815CC
|
||||
void IrqMgr_ThreadEntry(IrqMgr* irqmgr); // func_80081684
|
||||
void IrqMgr_Start(IrqMgr* irqmgr, void* stack, OSPri pri, u8 retraceCount); // func_80081754
|
||||
void CIC6105_Nop80081820(void); // func_80081820
|
||||
void CIC6105_Nop80081828(void); // func_80081828
|
||||
void CIC6105_PrintRomInfo(void); // func_80081830
|
||||
@@ -487,7 +487,7 @@ void func_80096410(void); // func_80096410
|
||||
void func_800964D0(void); // func_800964D0
|
||||
s32 __osSpSetPc(u32 data); // func_80096510
|
||||
void func_80096540(void); // func_80096540
|
||||
// UNK_RET func_80096770(UNK_ARGS);
|
||||
void FUN_80096770(int param_1, UNK_PTR param_2, UNK_PTR param_3); // func_80096770
|
||||
void func_800967A0(void); // func_800967A0
|
||||
u32 __osGetWatchLo(void); // func_80096810
|
||||
void __osSetWatchLo(u32 value); // func_80096820
|
||||
@@ -3095,7 +3095,7 @@ void func_80172C68(AudioThreadStruct* audio); // func_80172C68
|
||||
void Audio_Stop(void); // func_80172EAC
|
||||
void Audio_ThreadEntry(AudioThreadStruct* audio); // func_80172ED0
|
||||
void Audio_WaitForInit(AudioThreadStruct* param_1); // func_80173048
|
||||
void Audio_Start(AudioThreadStruct* audio, s32* audioThreadStackEnd, OSPri pri, OSId id, SchedThreadStruct* sched, Irqmgr* irq); // func_80173074
|
||||
void Audio_Start(AudioThreadStruct* audio, s32* audioThreadStackEnd, OSPri pri, OSId id, SchedThreadStruct* sched, IrqMgr* irq); // func_80173074
|
||||
void func_80173130(void); // func_80173130
|
||||
void Initial_Init2(ContextCommon* ctxt); // func_801732DC
|
||||
void Initial_Fini(void); // func_8017332C
|
||||
@@ -3171,7 +3171,7 @@ void func_80175E68(Input* input, int param_2); // func_80175E68
|
||||
void Padmgr_GetInput(Input* input, int param_2); // func_80175F98
|
||||
void Padmgr_GetInput2(Input* input, int param_2); // func_80175FD4
|
||||
void Padmgr_ThreadEntry(PadmgrThreadStruct* padmgr); // func_80176010
|
||||
void Padmgr_Start(OSMesgQueue* siEventCallbackQueue, Irqmgr* irqmgr, OSId threadId, OSPri threadPri, void* stack); // func_80176194
|
||||
void Padmgr_Start(OSMesgQueue* siEventCallbackQueue, IrqMgr* irqmgr, OSId threadId, OSPri threadPri, void* stack); // func_80176194
|
||||
void func_80176280(void); // func_80176280
|
||||
void func_80176314(void); // func_80176314
|
||||
void Sched_Nop80176364(SchedThreadStruct* sched); // func_80176364
|
||||
@@ -3195,7 +3195,7 @@ void func_80177060(SchedThreadStruct* sched); // func_80177060
|
||||
void func_80177084(SchedThreadStruct* sched); // func_80177084
|
||||
void Sched_ThreadEntry(SchedThreadStruct* sched); // func_8017715C
|
||||
void func_80177280(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5, UNK_TYPE1 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10, UNK_TYPE4 param_11, UNK_TYPE4 param_12); // func_80177280
|
||||
void Sched_Start(SchedThreadStruct* sched, void* stack, OSPri pri, UNK_TYPE4 param_4, UNK_TYPE4 param_5, Irqmgr* irqmgrStruct); // func_801772A0
|
||||
void Sched_Start(SchedThreadStruct* sched, void* stack, OSPri pri, UNK_TYPE4 param_4, UNK_TYPE4 param_5, IrqMgr* irqmgrStruct); // func_801772A0
|
||||
void func_80177390(void); // func_80177390
|
||||
void func_801773A0(void); // func_801773A0
|
||||
void func_801773C4(void); // func_801773C4
|
||||
@@ -3739,8 +3739,8 @@ void func_8019AB40(void); // func_8019AB40
|
||||
void func_8019AC10(void); // func_8019AC10
|
||||
void func_8019ACEC(void); // func_8019ACEC
|
||||
void func_8019ADBC(void); // func_8019ADBC
|
||||
// UNK_RET func_8019AE40(UNK_ARGS);
|
||||
// UNK_RET func_8019AEC0(UNK_ARGS);
|
||||
void FUN_8019ae40(int param_1, int param_2, unsigned int param_3, int param_4); // func_8019AE40
|
||||
void FUN_8019aec0(UNK_PTR param_1, UNK_PTR param_2); // func_8019AEC0
|
||||
void func_8019AF00(void); // func_8019AF00
|
||||
void func_8019AF58(void); // func_8019AF58
|
||||
void func_8019AFE8(void); // func_8019AFE8
|
||||
|
||||
+7
-7
@@ -1636,7 +1636,7 @@ struct HeapNode {
|
||||
/* 0xC */ HeapNode* prev;
|
||||
};
|
||||
|
||||
typedef struct Irqmgr Irqmgr;
|
||||
typedef struct IrqMgr IrqMgr;
|
||||
|
||||
typedef struct AudioThreadStruct AudioThreadStruct;
|
||||
|
||||
@@ -1654,8 +1654,8 @@ struct EffectTableInfo {
|
||||
|
||||
typedef struct OSMesgQueueListNode OSMesgQueueListNode;
|
||||
|
||||
struct Irqmgr {
|
||||
/* 0x000 */ s16 verticalRetraceMesg;
|
||||
struct IrqMgr {
|
||||
/* 0x000 */ s16 verticalRetraceMesg; // Is this a struct of size 0x20? (same below)
|
||||
/* 0x002 */ UNK_TYPE1 pad2[30];
|
||||
/* 0x020 */ s16 prenmi1Msg;
|
||||
/* 0x022 */ UNK_TYPE1 pad22[30];
|
||||
@@ -1665,10 +1665,10 @@ struct Irqmgr {
|
||||
/* 0x078 */ UNK_TYPE4 irqBuffer[8];
|
||||
/* 0x098 */ OSThread thread;
|
||||
/* 0x248 */ OSMesgQueueListNode* callbacks;
|
||||
/* 0x24C */ s8 prenmiStage;
|
||||
/* 0x24C */ u8 prenmiStage;
|
||||
/* 0x24D */ UNK_TYPE1 pad24D[3];
|
||||
/* 0x250 */ OSTime lastPrenmiTime;
|
||||
/* 0x258 */ OSTimer unk258;
|
||||
/* 0x258 */ OSTimer prenmiTimer;
|
||||
/* 0x278 */ OSTime lastFrameTime;
|
||||
};
|
||||
|
||||
@@ -1688,7 +1688,7 @@ typedef struct {
|
||||
/* 0x064 */ OSMesgQueue lock;
|
||||
/* 0x07C */ OSMesgQueue irqmgrCallbackQueue;
|
||||
/* 0x094 */ OSMesgQueueListNode irqmgrCallbackQueueNode;
|
||||
/* 0x09C */ Irqmgr* irqmgr;
|
||||
/* 0x09C */ IrqMgr* irqmgr;
|
||||
/* 0x0A0 */ OSThread thread;
|
||||
/* 0x250 */ Input input[4];
|
||||
/* 0x2B0 */ OSContPad controllerState1[4];
|
||||
@@ -1722,7 +1722,7 @@ typedef struct {
|
||||
} SchedThreadStruct;
|
||||
|
||||
struct AudioThreadStruct {
|
||||
/* 0x000 */ Irqmgr* irqmgr;
|
||||
/* 0x000 */ IrqMgr* irqmgr;
|
||||
/* 0x004 */ SchedThreadStruct* sched;
|
||||
/* 0x008 */ UNK_TYPE1 pad8[88];
|
||||
/* 0x060 */ UNK_TYPE4 unk60;
|
||||
|
||||
+5
-5
@@ -16,10 +16,10 @@ extern f32 screenXScale; // D_80096B30
|
||||
extern f32 screenYScale; // D_80096B34
|
||||
extern OSPiHandle* D_80096B40; // D_80096B40
|
||||
extern UNK_TYPE4 dmamgrChunkSize; // D_80096B50
|
||||
extern vs32 prenmiStage; // D_80096B60
|
||||
extern OSTime lastPrenmiTime; // D_80096B68
|
||||
extern u64 lastFrameDuration; // D_80096B70
|
||||
extern s32 frameCount; // D_80096B78
|
||||
extern vs32 gPrenmiStage; // D_80096B60
|
||||
extern volatile OSTime sLastPrenmiTime; // D_80096B68
|
||||
extern vu64 gLastFrameDuration; // D_80096B70
|
||||
extern s32 sFrameCount; // D_80096B78
|
||||
extern char* D_80096B80[18]; // D_80096B80
|
||||
extern char* D_80096BC8[6]; // D_80096BC8
|
||||
extern FaultDrawer* faultDrawContext; // D_80096BE0
|
||||
@@ -277,7 +277,7 @@ extern OSThread idleOSThread; // D_80099520
|
||||
extern u8 idleStack[1024]; // D_800996D0
|
||||
extern StackEntry idleStackEntry; // D_80099AD0
|
||||
extern u8 bootStack[1024]; // D_80099AF0
|
||||
extern Irqmgr irqmgrContext; // D_80099EF0
|
||||
extern IrqMgr irqmgrContext; // D_80099EF0
|
||||
extern u8 irqmgrStack[1280]; // D_8009A170
|
||||
extern StackEntry irqmgrStackEntry; // D_8009A670
|
||||
extern OSThread mainOSThread; // D_8009A690
|
||||
|
||||
@@ -12,7 +12,7 @@ SECTIONS
|
||||
build/src/boot_O2_g3/boot_0x800805E0.o(.text)
|
||||
build/src/boot_O2_g3/z_std_dma.o(.text)
|
||||
build/asm/boot_0x80080E30.o(.text)
|
||||
build/asm/boot_0x80081250.o(.text)
|
||||
build/src/boot_O2_g3/irqmgr.o(.text)
|
||||
build/src/boot_O2_g3/CIC6105.o(.text)
|
||||
build/src/boot_O2_g3/boot_0x80081920.o(.text)
|
||||
build/src/boot_O2_g3_trapuv/fault.o(.text)
|
||||
@@ -212,7 +212,7 @@ SECTIONS
|
||||
build/src/boot_O2_g3/idle.o(.rodata)
|
||||
build/asm/boot_rodata_z_std_dma.o(.text)
|
||||
build/asm/boot_rodata_0x80080E30.o(.text)
|
||||
build/asm/boot_rodata_0x80081250.o(.text)
|
||||
build/src/boot_O2_g3/irqmgr.o(.rodata)
|
||||
build/src/boot_O2_g3/CIC6105.o(.rodata)
|
||||
build/asm/boot_rodata_fault.o(.text)
|
||||
build/asm/boot_rodata_fault_drawer.o(.text)
|
||||
|
||||
@@ -63,7 +63,7 @@ GLOBAL_ASM("./asm/nonmatching/idle/Idle_InitCodeAndMemory.asm")
|
||||
|
||||
void Idle_MainThreadEntry(void* arg) {
|
||||
StackCheck_Init(&irqmgrStackEntry, (u32)&irqmgrStack, (u32)&irqmgrStack[1280], 0, 256, "irqmgr");
|
||||
Irqmgr_Start(&irqmgrContext, &irqmgrStackEntry, 18, 1);
|
||||
IrqMgr_Start(&irqmgrContext, &irqmgrStackEntry, 18, 1);
|
||||
Dmamgr_Start();
|
||||
Idle_InitCodeAndMemory();
|
||||
main(arg);
|
||||
|
||||
@@ -0,0 +1,173 @@
|
||||
#include <ultra64.h>
|
||||
#include <global.h>
|
||||
|
||||
// TODO move out
|
||||
#define OS_CLOCK_RATE 62500000LL
|
||||
#define OS_CPU_COUNTER (OS_CLOCK_RATE*3/4)
|
||||
#define OS_USEC_TO_CYCLES(n) (((u64)(n)*(OS_CPU_COUNTER/15625LL))/(1000000LL/15625LL))
|
||||
|
||||
// TODO .data section
|
||||
//vs32 gPrenmiStage;
|
||||
//volatile OSTime sLastPrenmiTime;
|
||||
//vu64 gLastFrameDuration;
|
||||
//s32 sFrameCount;
|
||||
|
||||
void IrqMgr_AddCallback(IrqMgr* irqmgr, OSMesgQueueListNode* param_2, OSMesgQueue* param_3) {
|
||||
u32 saveMask;
|
||||
|
||||
saveMask = osSetIntMask(1);
|
||||
|
||||
param_2->queue = param_3;
|
||||
param_2->next = irqmgr->callbacks;
|
||||
irqmgr->callbacks = param_2;
|
||||
|
||||
osSetIntMask(saveMask);
|
||||
|
||||
if (irqmgr->prenmiStage > 0) {
|
||||
osSendMesg(param_2->queue, &irqmgr->prenmi1Msg, 0);
|
||||
}
|
||||
if (irqmgr->prenmiStage > 1) {
|
||||
osSendMesg(param_2->queue, &irqmgr->prenmi2Msg, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void IrqMgr_RemoveCallback(IrqMgr* irqmgr, OSMesgQueueListNode* remove) {
|
||||
OSMesgQueueListNode* iter;
|
||||
OSMesgQueueListNode* last;
|
||||
u32 saveMask;
|
||||
|
||||
iter = irqmgr->callbacks;
|
||||
last = NULL;
|
||||
|
||||
saveMask = osSetIntMask(1);
|
||||
|
||||
while (iter != NULL) {
|
||||
if (iter == remove) {
|
||||
if (last != NULL) {
|
||||
last->next = remove->next;
|
||||
} else {
|
||||
irqmgr->callbacks = remove->next;
|
||||
}
|
||||
break;
|
||||
}
|
||||
last = iter;
|
||||
iter = iter->next;
|
||||
}
|
||||
|
||||
osSetIntMask(saveMask);
|
||||
}
|
||||
|
||||
void IrqMgr_NotifyAllCallbacks(IrqMgr* irqmgr, OSMesg msg) {
|
||||
OSMesgQueueListNode* iter = irqmgr->callbacks;
|
||||
|
||||
while (iter != NULL) {
|
||||
osSendMesg(iter->queue, msg, 0);
|
||||
iter = iter->next;
|
||||
}
|
||||
}
|
||||
|
||||
void IrqMgr_NotifyAllCallbacksWithCapacity(IrqMgr* irqmgr, OSMesg msg) {
|
||||
OSMesgQueueListNode* iter = irqmgr->callbacks;
|
||||
|
||||
while (iter != NULL) {
|
||||
if (iter->queue->validCount < iter->queue->msgCount) {
|
||||
osSendMesg(iter->queue, msg, 0);
|
||||
}
|
||||
iter = iter->next;
|
||||
}
|
||||
}
|
||||
|
||||
void IrqMgr_HandlePrenmi1(IrqMgr* irqmgr) {
|
||||
gPrenmiStage = 1;
|
||||
irqmgr->prenmiStage = 1;
|
||||
|
||||
sLastPrenmiTime = irqmgr->lastPrenmiTime = osGetTime();
|
||||
|
||||
// Wait .45 seconds then generate a stage 2 prenmi interrupt
|
||||
osSetTimer(&irqmgr->prenmiTimer, OS_USEC_TO_CYCLES(450000), 0, &irqmgr->irqQueue, (OSMesg)0x29F);
|
||||
|
||||
IrqMgr_NotifyAllCallbacksWithCapacity(irqmgr, &irqmgr->prenmi1Msg);
|
||||
}
|
||||
|
||||
void IrqMgr_CheckThreadStatusImpl(void) {
|
||||
StackCheck_Check(NULL);
|
||||
}
|
||||
|
||||
void IrqMgr_HandlePrenmi2(IrqMgr* irqmgr) {
|
||||
gPrenmiStage = 2;
|
||||
irqmgr->prenmiStage = 2;
|
||||
|
||||
// Wait .03 seconds then generate a stage 3 prenmi interrupt
|
||||
osSetTimer(&irqmgr->prenmiTimer, OS_USEC_TO_CYCLES(30000), 0, &irqmgr->irqQueue, (OSMesg)0x2A0);
|
||||
|
||||
IrqMgr_NotifyAllCallbacks(irqmgr, &irqmgr->prenmi2Msg);
|
||||
}
|
||||
|
||||
void IrqMgr_HandlePrenmi3(IrqMgr* irqmgr) {
|
||||
// Wait .52 seconds. After this we will have waited an entire second
|
||||
osSetTimer(&irqmgr->prenmiTimer, OS_USEC_TO_CYCLES(520000), 0, &irqmgr->irqQueue, (OSMesg)0x2A1);
|
||||
|
||||
func_8008D710();
|
||||
}
|
||||
|
||||
void IrqMgr_CheckThreadStatus(IrqMgr* irqmgr) {
|
||||
IrqMgr_CheckThreadStatusImpl();
|
||||
}
|
||||
void IrqMgr_HandleFrame(IrqMgr* irqmgr) {
|
||||
if (gLastFrameDuration == 0) {
|
||||
if (irqmgr->lastFrameTime == 0) {
|
||||
irqmgr->lastFrameTime = osGetTime();
|
||||
} else {
|
||||
gLastFrameDuration = osGetTime() - irqmgr->lastFrameTime;
|
||||
}
|
||||
}
|
||||
|
||||
sFrameCount += 1;
|
||||
IrqMgr_NotifyAllCallbacks(irqmgr,irqmgr);
|
||||
}
|
||||
|
||||
void IrqMgr_ThreadEntry(IrqMgr* irqmgr) {
|
||||
u32 interrupt;
|
||||
u32 stop;
|
||||
|
||||
interrupt = 0;
|
||||
stop = 0;
|
||||
while (stop == 0) {
|
||||
if (stop);
|
||||
|
||||
osRecvMesg(&irqmgr->irqQueue, (OSMesg*)&interrupt, 1);
|
||||
switch (interrupt) {
|
||||
case 0x29A:
|
||||
IrqMgr_HandleFrame(irqmgr);
|
||||
break;
|
||||
case 0x29D:
|
||||
IrqMgr_HandlePrenmi1(irqmgr);
|
||||
break;
|
||||
case 0x29F:
|
||||
IrqMgr_HandlePrenmi2(irqmgr);
|
||||
break;
|
||||
case 0x2A0:
|
||||
IrqMgr_HandlePrenmi3(irqmgr);
|
||||
break;
|
||||
case 0x2A1:
|
||||
IrqMgr_CheckThreadStatus(irqmgr);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void IrqMgr_Start(IrqMgr* irqmgr, void* stack, OSPri pri, u8 retraceCount) {
|
||||
irqmgr->callbacks = NULL;
|
||||
irqmgr->verticalRetraceMesg = 1;
|
||||
irqmgr->prenmi1Msg = 4;
|
||||
irqmgr->prenmi2Msg = 3;
|
||||
irqmgr->prenmiStage = 0;
|
||||
irqmgr->lastPrenmiTime = 0;
|
||||
|
||||
osCreateMesgQueue(&irqmgr->irqQueue,(OSMesg *)irqmgr->irqBuffer,8);
|
||||
osSetEventMesg(0xE, &irqmgr->irqQueue, (OSMesg)0x29D);
|
||||
osViSetEvent(&irqmgr->irqQueue, (OSMesg)0x29A, retraceCount);
|
||||
|
||||
osCreateThread(&irqmgr->thread, 0x13, (osCreateThread_func)IrqMgr_ThreadEntry, irqmgr, stack, pri);
|
||||
osStartThread(&irqmgr->thread);
|
||||
}
|
||||
@@ -158,7 +158,7 @@ void Dmamgr_ThreadEntry(void* a0) {
|
||||
}
|
||||
|
||||
s32 Dmamgr_SendRequest(DmaRequest* request, u32 vramStart, u32 vromStart, u32 size, UNK_TYPE4 unused, OSMesgQueue* callback, void* callbackMesg) {
|
||||
if (prenmiStage >= 2) {
|
||||
if (gPrenmiStage >= 2) {
|
||||
return -2;
|
||||
}
|
||||
|
||||
|
||||
+19
-16
@@ -27,18 +27,18 @@
|
||||
0x80080ED0:("Yaz0_LoadNextChunk","u8*","void* currDecompPos"),
|
||||
0x80080FF0:("Yaz0_Decompress","s32","u8* src, u8* dest"),
|
||||
0x80081178:("Yaz0_LoadAndDecompressFile","void","u32 romStart, u32 vramStart, u32 size"),
|
||||
0x80081250:("Irqmgr_AddCallback","void","Irqmgr* irqmgr, OSMesgQueueListNode* param_2, OSMesgQueue* param_3"),
|
||||
0x800812DC:("Irqmgr_RemoveCallback","void","Irqmgr* irqmgr, OSMesgQueueListNode* puParm2"),
|
||||
0x80081368:("Irqmgr_NotifyAllCallbacks","void","Irqmgr* irqmgr, s16* msg"),
|
||||
0x800813B8:("Irqmgr_NotifyAllCallbacksWithCapacity","void","Irqmgr* irqmgr, OSMesg msg"),
|
||||
0x8008141C:("Irqmgr_HandlePrenmi1","void","Irqmgr* irqmgr"),
|
||||
0x800814B4:("Irqmgr_CheckThreadStatus2","void","void"),
|
||||
0x800814D4:("Irqmgr_HandlePrenmi2","void","Irqmgr* irqmgr"),
|
||||
0x80081550:("Irqmgr_HandlePrenmi3","void","Irqmgr* irqmgr"),
|
||||
0x800815A8:("Irqmgr_CheckThreadStatus","void","Irqmgr* irqmgr"),
|
||||
0x800815CC:("Irqmgr_HandleFrame","void","Irqmgr* irqmgr"),
|
||||
0x80081684:("Irqmgr_ThreadEntry","void","Irqmgr* irqmgr"),
|
||||
0x80081754:("Irqmgr_Start","void","Irqmgr* irqmgr, void* stack, OSPri pri, u8 retraceCount"),
|
||||
0x80081250:("IrqMgr_AddCallback","void","IrqMgr* irqmgr, OSMesgQueueListNode* param_2, OSMesgQueue* param_3"),
|
||||
0x800812DC:("IrqMgr_RemoveCallback","void","IrqMgr* irqmgr, OSMesgQueueListNode* remove"),
|
||||
0x80081368:("IrqMgr_NotifyAllCallbacks","void","IrqMgr* irqmgr, OSMesg msg"),
|
||||
0x800813B8:("IrqMgr_NotifyAllCallbacksWithCapacity","void","IrqMgr* irqmgr, OSMesg msg"),
|
||||
0x8008141C:("IrqMgr_HandlePrenmi1","void","IrqMgr* irqmgr"),
|
||||
0x800814B4:("IrqMgr_CheckThreadStatusImpl","void","void"),
|
||||
0x800814D4:("IrqMgr_HandlePrenmi2","void","IrqMgr* irqmgr"),
|
||||
0x80081550:("IrqMgr_HandlePrenmi3","void","IrqMgr* irqmgr"),
|
||||
0x800815A8:("IrqMgr_CheckThreadStatus","void","IrqMgr* irqmgr"),
|
||||
0x800815CC:("IrqMgr_HandleFrame","void","IrqMgr* irqmgr"),
|
||||
0x80081684:("IrqMgr_ThreadEntry","void","IrqMgr* irqmgr"),
|
||||
0x80081754:("IrqMgr_Start","void","IrqMgr* irqmgr, void* stack, OSPri pri, u8 retraceCount"),
|
||||
0x80081820:("CIC6105_Nop80081820","void","void"),
|
||||
0x80081828:("CIC6105_Nop80081828","void","void"),
|
||||
0x80081830:("CIC6105_PrintRomInfo","void","void"),
|
||||
@@ -350,7 +350,7 @@
|
||||
0x8008CFE4:("func_8008CFE4","void","void"),
|
||||
0x8008D2C0:("osGetCount","u32","void"),
|
||||
0x8008D2E0:("func_8008D2E0","void","void"),
|
||||
0x8008D350:("calculate_mem_size","u32","void"),
|
||||
0x8008D350:("osGetMemSize","u32","void"),
|
||||
0x8008D470:("func_8008D470","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6"),
|
||||
0x8008D640:("osSetEventMesg","void","OSEvent e, OSMesgQueue* mq, OSMesg m"),
|
||||
0x8008D700:("sqrtf","f32","f32 __x"),
|
||||
@@ -484,6 +484,7 @@
|
||||
0x800964D0:("func_800964D0","void","void"),
|
||||
0x80096510:("__osSpSetPc","s32","u32 data"),
|
||||
0x80096540:("func_80096540","void","void"),
|
||||
0x80096770:("FUN_80096770","void","int param_1, UNK_PTR param_2, UNK_PTR param_3"),
|
||||
0x800967A0:("func_800967A0","void","void"),
|
||||
0x80096810:("__osGetWatchLo","u32","void"),
|
||||
0x80096820:("__osSetWatchLo","void","u32 value"),
|
||||
@@ -3091,7 +3092,7 @@
|
||||
0x80172EAC:("Audio_Stop","void","void"),
|
||||
0x80172ED0:("Audio_ThreadEntry","void","AudioThreadStruct* audio"),
|
||||
0x80173048:("Audio_WaitForInit","void","AudioThreadStruct* param_1"),
|
||||
0x80173074:("Audio_Start","void","AudioThreadStruct* audio, s32* audioThreadStackEnd, OSPri pri, OSId id, SchedThreadStruct* sched, Irqmgr* irq"),
|
||||
0x80173074:("Audio_Start","void","AudioThreadStruct* audio, s32* audioThreadStackEnd, OSPri pri, OSId id, SchedThreadStruct* sched, IrqMgr* irq"),
|
||||
0x80173130:("func_80173130","void","void"),
|
||||
0x801732DC:("Initial_Init2","void","ContextCommon* ctxt"),
|
||||
0x8017332C:("Initial_Fini","void","void"),
|
||||
@@ -3167,7 +3168,7 @@
|
||||
0x80175F98:("Padmgr_GetInput","void","Input* input, int param_2"),
|
||||
0x80175FD4:("Padmgr_GetInput2","void","Input* input, int param_2"),
|
||||
0x80176010:("Padmgr_ThreadEntry","void","PadmgrThreadStruct* padmgr"),
|
||||
0x80176194:("Padmgr_Start","void","OSMesgQueue* siEventCallbackQueue, Irqmgr* irqmgr, OSId threadId, OSPri threadPri, void* stack"),
|
||||
0x80176194:("Padmgr_Start","void","OSMesgQueue* siEventCallbackQueue, IrqMgr* irqmgr, OSId threadId, OSPri threadPri, void* stack"),
|
||||
0x80176280:("func_80176280","void","void"),
|
||||
0x80176314:("func_80176314","void","void"),
|
||||
0x80176364:("Sched_Nop80176364","void","SchedThreadStruct* sched"),
|
||||
@@ -3191,7 +3192,7 @@
|
||||
0x80177084:("func_80177084","void","SchedThreadStruct* sched"),
|
||||
0x8017715C:("Sched_ThreadEntry","void","SchedThreadStruct* sched"),
|
||||
0x80177280:("func_80177280","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5, UNK_TYPE1 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10, UNK_TYPE4 param_11, UNK_TYPE4 param_12"),
|
||||
0x801772A0:("Sched_Start","void","SchedThreadStruct* sched, void* stack, OSPri pri, UNK_TYPE4 param_4, UNK_TYPE4 param_5, Irqmgr* irqmgrStruct"),
|
||||
0x801772A0:("Sched_Start","void","SchedThreadStruct* sched, void* stack, OSPri pri, UNK_TYPE4 param_4, UNK_TYPE4 param_5, IrqMgr* irqmgrStruct"),
|
||||
0x80177390:("func_80177390","void","void"),
|
||||
0x801773A0:("func_801773A0","void","void"),
|
||||
0x801773C4:("func_801773C4","void","void"),
|
||||
@@ -3735,6 +3736,8 @@
|
||||
0x8019AC10:("func_8019AC10","void","void"),
|
||||
0x8019ACEC:("func_8019ACEC","void","void"),
|
||||
0x8019ADBC:("func_8019ADBC","void","void"),
|
||||
0x8019AE40:("FUN_8019ae40","void","int param_1, int param_2, unsigned int param_3, int param_4"),
|
||||
0x8019AEC0:("FUN_8019aec0","void","UNK_PTR param_1, UNK_PTR param_2"),
|
||||
0x8019AF00:("func_8019AF00","void","void"),
|
||||
0x8019AF58:("func_8019AF58","void","void"),
|
||||
0x8019AFE8:("func_8019AFE8","void","void"),
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
0x800805E0:"",
|
||||
0x80080790:"z_std_dma",
|
||||
0x80080E30:"",
|
||||
0x80081250:"",
|
||||
0x80081250:"irqmgr",
|
||||
0x80081820:"CIC6105",
|
||||
0x80081920:"",
|
||||
0x80081980:"fault",
|
||||
|
||||
+5
-5
@@ -9,10 +9,10 @@
|
||||
0x80096B34:("screenYScale","f32","",0x4),
|
||||
0x80096B40:("D_80096B40","OSPiHandle*","",0x4),
|
||||
0x80096B50:("dmamgrChunkSize","UNK_TYPE4","",0x4),
|
||||
0x80096B60:("prenmiStage","u32","",0x4),
|
||||
0x80096B68:("lastPrenmiTime","OSTime","",0x8),
|
||||
0x80096B70:("lastFrameDuration","u64","",0x8),
|
||||
0x80096B78:("frameCount","s32","",0x4),
|
||||
0x80096B60:("gPrenmiStage","vs32","",0x4),
|
||||
0x80096B68:("sLastPrenmiTime","volatile OSTime","",0x8),
|
||||
0x80096B70:("gLastFrameDuration","vu64","",0x8),
|
||||
0x80096B78:("sFrameCount","s32","",0x4),
|
||||
0x80096B80:("D_80096B80","char*","[18]",0x48),
|
||||
0x80096BC8:("D_80096BC8","char*","[6]",0x18),
|
||||
0x80096BE0:("faultDrawContext","FaultDrawer*","",0x4),
|
||||
@@ -274,7 +274,7 @@
|
||||
0x800996D0:("idleStack","u8","[1024]",0x400),
|
||||
0x80099AD0:("idleStackEntry","StackEntry","",0x1c),
|
||||
0x80099AF0:("bootStack","u8","[1024]",0x400),
|
||||
0x80099EF0:("irqmgrContext","Irqmgr","",0x280),
|
||||
0x80099EF0:("irqmgrContext","IrqMgr","",0x280),
|
||||
0x8009A170:("irqmgrStack","u8","[1280]",0x500),
|
||||
0x8009A670:("irqmgrStackEntry","StackEntry","",0x1c),
|
||||
0x8009A690:("mainOSThread","OSThread","",0x1b0),
|
||||
|
||||
Reference in New Issue
Block a user