mirror of
https://github.com/n64decomp/mk64
synced 2026-06-22 07:35:41 -04:00
Decomped some of 80057C60 & 800431B0
This commit is contained in:
+36
-143
@@ -4060,81 +4060,28 @@ void func_8004BB3C(s32 arg0, s32 arg1, s32 arg2, s32 arg3, f32 arg4) {
|
||||
GLOBAL_ASM("asm/non_matchings/code_800431B0/func_8004BB3C.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
? func_8004B97C(s16, s16, s16, ?, s32); // extern
|
||||
extern void *gDisplayListHead;
|
||||
extern Gfx *gDisplayListHead;
|
||||
|
||||
void func_8004C024(s16 arg0, s16 arg1, s16 arg2, u16 arg3, u16 arg4, u16 arg5, u16 arg6) {
|
||||
void *temp_v0;
|
||||
void *temp_v0_2;
|
||||
void *temp_v0_3;
|
||||
void *temp_v0_4;
|
||||
void *temp_v0_5;
|
||||
|
||||
temp_v0 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0 + 8;
|
||||
temp_v0->unk0 = 0xFA000000;
|
||||
temp_v0->unk4 = (arg3 << 0x18) | ((arg4 & 0xFF) << 0x10) | ((arg5 & 0xFF) << 8) | (arg6 & 0xFF);
|
||||
temp_v0_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_2 + 8;
|
||||
temp_v0_2->unk4 = 0;
|
||||
temp_v0_2->unk0 = 0xBA000E02;
|
||||
temp_v0_3 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_3 + 8;
|
||||
temp_v0_3->unk4 = 0;
|
||||
temp_v0_3->unk0 = 0xBA001301;
|
||||
temp_v0_4 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_4 + 8;
|
||||
temp_v0_4->unk4 = 0xFFFDF6FB;
|
||||
temp_v0_4->unk0 = 0xFCFFFFFF;
|
||||
temp_v0_5 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_5 + 8;
|
||||
temp_v0_5->unk4 = 0x504240;
|
||||
temp_v0_5->unk0 = 0xB900031D;
|
||||
gDPSetPrimColor(gDisplayListHead++, 0, 0, arg3, arg4, arg5, arg6);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_NONE);
|
||||
gDPSetTexturePersp(gDisplayListHead++, G_TP_NONE);
|
||||
gDPSetCombineMode(gDisplayListHead++, G_CC_PRIMITIVE, G_CC_PRIMITIVE);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
func_8004B97C(arg0, arg1, arg2, 1, 1);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_800431B0/func_8004C024.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
? func_8004B97C(s16, s16, ?, s16, s32); // extern
|
||||
extern void *gDisplayListHead;
|
||||
|
||||
void func_8004C148(s16 arg0, s16 arg1, s16 arg2, u16 arg3, u16 arg4, u16 arg5, u16 arg6) {
|
||||
void *temp_v0;
|
||||
void *temp_v0_2;
|
||||
void *temp_v0_3;
|
||||
void *temp_v0_4;
|
||||
void *temp_v0_5;
|
||||
|
||||
temp_v0 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0 + 8;
|
||||
temp_v0->unk0 = 0xFA000000;
|
||||
temp_v0->unk4 = (arg3 << 0x18) | ((arg4 & 0xFF) << 0x10) | ((arg5 & 0xFF) << 8) | (arg6 & 0xFF);
|
||||
temp_v0_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_2 + 8;
|
||||
temp_v0_2->unk4 = 0;
|
||||
temp_v0_2->unk0 = 0xBA000E02;
|
||||
temp_v0_3 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_3 + 8;
|
||||
temp_v0_3->unk4 = 0;
|
||||
temp_v0_3->unk0 = 0xBA001301;
|
||||
temp_v0_4 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_4 + 8;
|
||||
temp_v0_4->unk4 = 0xFFFDF6FB;
|
||||
temp_v0_4->unk0 = 0xFCFFFFFF;
|
||||
temp_v0_5 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_5 + 8;
|
||||
temp_v0_5->unk4 = 0x504240;
|
||||
temp_v0_5->unk0 = 0xB900031D;
|
||||
|
||||
gDPSetPrimColor(gDisplayListHead++, 0, 0, arg3, arg4, arg5, arg6);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_NONE);
|
||||
gDPSetTexturePersp(gDisplayListHead++, G_TP_NONE);
|
||||
gDPSetCombineMode(gDisplayListHead++, G_CC_PRIMITIVE, G_CC_PRIMITIVE);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
func_8004B97C(arg0, arg1, 1, arg2, 1);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_800431B0/func_8004C148.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
@@ -4167,107 +4114,53 @@ void func_8004C268(s32 arg0, s32 arg1, s32 arg2, u32 arg3, u32 arg4, u32 arg5, s
|
||||
GLOBAL_ASM("asm/non_matchings/code_800431B0/func_8004C268.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
? func_80043D50(s32, u32, u32); // extern
|
||||
? func_8004B97C(s32, s32, u32, u32, s32); // extern
|
||||
extern ? D_0D007EB8;
|
||||
extern ? D_0D007EF8;
|
||||
extern ? D_0D008108;
|
||||
extern void *gDisplayListHead;
|
||||
extern Gfx D_0D007EF8[];
|
||||
extern Gfx D_0D007EB8[];
|
||||
extern Gfx D_0D008108[];
|
||||
|
||||
void func_8004C364(s32 arg0, s32 arg1, u32 arg2, u32 arg3, s32 arg4) {
|
||||
void *temp_v0;
|
||||
void *temp_v0_2;
|
||||
void *temp_v0_3;
|
||||
void *temp_v0_4;
|
||||
|
||||
temp_v0 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0 + 8;
|
||||
temp_v0->unk4 = &D_0D008108;
|
||||
temp_v0->unk0 = 0x6000000;
|
||||
temp_v0_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_2 + 8;
|
||||
temp_v0_2->unk4 = &D_0D007EF8;
|
||||
temp_v0_2->unk0 = 0x6000000;
|
||||
temp_v0_3 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_3 + 8;
|
||||
temp_v0_3->unk4 = 1;
|
||||
temp_v0_3->unk0 = 0xB9000002;
|
||||
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008108);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EF8);
|
||||
gDPSetAlphaCompare(gDisplayListHead++, G_AC_THRESHOLD);
|
||||
func_80043D50(arg4, arg2, arg3);
|
||||
func_8004B97C(arg0 - (arg2 >> 1), arg1 - (arg3 >> 1), arg2, arg3, 0);
|
||||
temp_v0_4 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_4 + 8;
|
||||
temp_v0_4->unk0 = 0x6000000;
|
||||
temp_v0_4->unk4 = &D_0D007EB8;
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EB8);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_800431B0/func_8004C364.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
? func_80043D50(s32, u32, u32); // extern
|
||||
? func_8004B614(u16, u16, u16, ?, s32, s32, s32); // extern
|
||||
? func_8004B97C(s32, s32, u32, u32, s32); // extern
|
||||
extern ? D_0D007EB8;
|
||||
extern ? D_0D007F38;
|
||||
extern Gfx D_0D007EB8[];
|
||||
extern Gfx D_0D007F38[];
|
||||
extern u16 D_801656C0;
|
||||
extern u16 D_801656D0;
|
||||
extern u16 D_801656E0;
|
||||
extern void *gDisplayListHead;
|
||||
|
||||
void func_8004C450(s32 arg0, s32 arg1, u32 arg2, u32 arg3, s32 arg4) {
|
||||
void *temp_v1;
|
||||
void *temp_v1_2;
|
||||
|
||||
temp_v1 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v1 + 8;
|
||||
temp_v1->unk0 = 0x6000000;
|
||||
temp_v1->unk4 = &D_0D007F38;
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007F38);
|
||||
func_8004B614(D_801656C0, D_801656D0, D_801656E0, 0x80, 0x80, 0x80, 0xFF);
|
||||
func_80043D50(arg4, arg2, arg3);
|
||||
func_8004B97C(arg0 - (arg2 >> 1), arg1 - (arg3 >> 1), arg2, arg3, 1);
|
||||
temp_v1_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v1_2 + 8;
|
||||
temp_v1_2->unk0 = 0x6000000;
|
||||
temp_v1_2->unk4 = &D_0D007EB8;
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EB8);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_800431B0/func_8004C450.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
? func_80043A84(s32, u32, u32); // extern
|
||||
? func_8004B97C(s32, s32, u32, u32, s32); // extern
|
||||
extern ? D_0D007EB8;
|
||||
extern ? D_0D007EF8;
|
||||
extern void *gDisplayListHead;
|
||||
UNUSED void func_8004C53C(s32 arg0, s32 arg1, u32 arg2, u32 arg3, s32 arg4) {
|
||||
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008108);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EF8);
|
||||
gDPSetAlphaCompare(gDisplayListHead++, G_AC_THRESHOLD);
|
||||
func_800440B8(arg4, arg2, arg3);
|
||||
func_8004B97C(arg0 - (arg2 >> 1), arg1 - (arg3 >> 1), arg2, arg3, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EB8);
|
||||
}
|
||||
|
||||
void func_8004C628(s32 arg0, s32 arg1, u32 arg2, u32 arg3, s32 arg4) {
|
||||
void *temp_v0;
|
||||
void *temp_v0_2;
|
||||
void *temp_v0_3;
|
||||
|
||||
temp_v0 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0 + 8;
|
||||
temp_v0->unk0 = 0x6000000;
|
||||
temp_v0->unk4 = &D_0D007EF8;
|
||||
temp_v0_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_2 + 8;
|
||||
temp_v0_2->unk4 = 1;
|
||||
temp_v0_2->unk0 = 0xB9000002;
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EF8);
|
||||
gDPSetAlphaCompare(gDisplayListHead++, G_AC_THRESHOLD);
|
||||
func_80043A84(arg4, arg2, arg3);
|
||||
func_8004B97C(arg0 - (arg2 >> 1), arg1 - (arg3 >> 1), arg2, arg3, 1);
|
||||
temp_v0_3 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_3 + 8;
|
||||
temp_v0_3->unk0 = 0x6000000;
|
||||
temp_v0_3->unk4 = &D_0D007EB8;
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EB8);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_800431B0/func_8004C628.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
|
||||
+246
-245
@@ -14,6 +14,13 @@ extern struct GfxPool *gGfxPool;
|
||||
extern s32 gPlayerCountSelection1;
|
||||
extern s16 gCurrentCourseId;
|
||||
|
||||
extern void func_802A3730(struct UnkStruct_800DC5EC*);
|
||||
extern struct UnkStruct_800DC5EC *D_800DC5EC;
|
||||
extern struct UnkStruct_800DC5EC *D_800DC5F0;
|
||||
extern struct UnkStruct_800DC5EC *D_800DC5F4;
|
||||
extern struct UnkStruct_800DC5EC *D_800DC5F8;
|
||||
extern s32 D_8018D21C;
|
||||
|
||||
// UI Code?
|
||||
void func_80057C60(void) {
|
||||
gSPViewport(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&D_802B8880));
|
||||
@@ -21,52 +28,38 @@ void func_80057C60(void) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&D_80183D60), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
? func_802A3730(s32); /* extern */
|
||||
|
||||
void func_80057CE4(void) {
|
||||
u32 temp_t6;
|
||||
|
||||
temp_t6 = D_8018D21C;
|
||||
switch (temp_t6) {
|
||||
switch (D_8018D21C) {
|
||||
case 0:
|
||||
func_802A3730(D_800DC5EC);
|
||||
return;
|
||||
break;
|
||||
case 1:
|
||||
func_802A3730(D_800DC5EC);
|
||||
return;
|
||||
break;
|
||||
case 2:
|
||||
func_802A3730(D_800DC5F0);
|
||||
return;
|
||||
break;
|
||||
case 3:
|
||||
func_802A3730(D_800DC5EC);
|
||||
return;
|
||||
break;
|
||||
case 4:
|
||||
func_802A3730(D_800DC5F0);
|
||||
return;
|
||||
break;
|
||||
case 8:
|
||||
func_802A3730(D_800DC5EC);
|
||||
return;
|
||||
break;
|
||||
case 9:
|
||||
func_802A3730(D_800DC5F0);
|
||||
return;
|
||||
break;
|
||||
case 10:
|
||||
func_802A3730(D_800DC5F4);
|
||||
return;
|
||||
break;
|
||||
case 11:
|
||||
func_802A3730(D_800DC5F8);
|
||||
/* fallthrough */
|
||||
default:
|
||||
return;
|
||||
break;
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80057CE4.s")
|
||||
#endif
|
||||
|
||||
//#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
void func_8004C024(s32, s32, s32, s32, s32, s32, s32); // extern
|
||||
void func_8004C148(s32, s32, s32, s32, s32, s32, s32); // extern
|
||||
extern s8 D_801657B2;
|
||||
@@ -87,109 +80,106 @@ void func_80057DD0(void) {
|
||||
func_8004C148(0x18, 0x15, 0xC4, 0, 0, 0xFF, 0xFF);
|
||||
}
|
||||
}
|
||||
//#else
|
||||
//GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80057DD0.s")
|
||||
//#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
? func_80041EF4(Gfx **); /* extern */
|
||||
? func_80051EBC(); /* extern */
|
||||
? func_80051EF8(); /* extern */
|
||||
? func_80051F9C(); /* extern */
|
||||
? func_80052044(); /* extern */
|
||||
? func_80052080(); /* extern */
|
||||
extern ? D_0D0076F8;
|
||||
|
||||
extern u8 D_0D0076F8;
|
||||
extern s8 D_801657C8;
|
||||
extern s8 D_801657B0;
|
||||
void func_80057FC4(u32 arg0) {
|
||||
Gfx *temp_v1;
|
||||
|
||||
if ((D_801657B0 == 0) && (temp_v1 = gDisplayListHead, gDisplayListHead = temp_v1 + 8, temp_v1->words.w0 = 0x6000000, temp_v1->words.w1 = &D_0D0076F8, func_80041EF4(&gDisplayListHead), (D_801657C8 == 0))) {
|
||||
switch (arg0) {
|
||||
|
||||
if ((D_801657B0 != 0)) {
|
||||
return;
|
||||
}
|
||||
gSPDisplayList(gDisplayListHead++, &D_0D0076F8);
|
||||
func_80041EF4(&gDisplayListHead);
|
||||
|
||||
if ((D_801657C8 != 0)){
|
||||
return;
|
||||
}
|
||||
|
||||
switch (arg0) {
|
||||
case 0:
|
||||
func_80051EBC();
|
||||
return;
|
||||
break;
|
||||
case 1:
|
||||
func_80051EF8();
|
||||
return;
|
||||
break;
|
||||
case 2:
|
||||
func_80051F9C();
|
||||
return;
|
||||
break;
|
||||
case 3:
|
||||
func_80052044();
|
||||
return;
|
||||
break;
|
||||
case 4:
|
||||
func_80052080();
|
||||
/* Duplicate return node #9. Try simplifying control flow for better match */
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80057FC4.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
? func_800581C8(Gfx **, u32); /* extern */
|
||||
? func_800582CC(Gfx **, u32); /* extern */
|
||||
? func_80058394(Gfx **, u32); /* extern */
|
||||
? func_8005845C(Gfx **, u32); /* extern */
|
||||
extern ? D_0D0076F8;
|
||||
extern s32 D_8018D22C;
|
||||
void func_800581C8();
|
||||
void func_800582CC();
|
||||
void func_80058394();
|
||||
void func_8005845C();
|
||||
|
||||
void func_80058090(u32 arg0) {
|
||||
Gfx *temp_v1;
|
||||
|
||||
if ((D_801657B0 == 0) && (temp_v1 = gDisplayListHead, gDisplayListHead = temp_v1 + 8, temp_v1->words.w0 = 0x6000000, temp_v1->words.w1 = &D_0D0076F8, (D_8018D22C == 0))) {
|
||||
switch (arg0) {
|
||||
if (D_801657B0 != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
gSPDisplayList(gDisplayListHead++, &D_0D0076F8);
|
||||
|
||||
if (D_8018D22C != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
switch (arg0) {
|
||||
case 0:
|
||||
func_800581C8(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800581C8();
|
||||
break;
|
||||
case 1:
|
||||
func_800581C8(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800581C8();
|
||||
break;
|
||||
case 2:
|
||||
func_800582CC(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800582CC();
|
||||
break;
|
||||
case 3:
|
||||
func_800581C8(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800581C8();
|
||||
break;
|
||||
case 4:
|
||||
func_800582CC(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800582CC();
|
||||
break;
|
||||
case 5:
|
||||
func_800581C8(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800581C8();
|
||||
break;
|
||||
case 6:
|
||||
func_800582CC(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800582CC();
|
||||
break;
|
||||
case 7:
|
||||
func_80058394(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_80058394();
|
||||
break;
|
||||
case 8:
|
||||
func_800581C8(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800581C8();
|
||||
break;
|
||||
case 9:
|
||||
func_800582CC(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800582CC();
|
||||
break;
|
||||
case 10:
|
||||
func_80058394(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_80058394();
|
||||
break;
|
||||
case 11:
|
||||
func_8005845C(&gDisplayListHead, arg0);
|
||||
/* Duplicate return node #16. Try simplifying control flow for better match */
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
default:
|
||||
func_8005845C();
|
||||
break;
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80058090.s")
|
||||
#endif
|
||||
|
||||
void func_8005217C(s32);
|
||||
void func_800588F4(s32 arg0);
|
||||
extern s32 D_800DC50C;
|
||||
extern u16 D_800DC51C;
|
||||
void func_800581C8(void) {
|
||||
@@ -247,55 +237,53 @@ void func_8005845C(void) {
|
||||
func_800588F4(3);
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
? func_80058640(Gfx **, u32); /* extern */
|
||||
? func_800586FC(Gfx **, u32); /* extern */
|
||||
? func_800587A4(Gfx **, u32); /* extern */
|
||||
? func_8005884C(Gfx **, u32); /* extern */
|
||||
extern ? D_0D0076F8;
|
||||
void func_80058640(); /* extern */
|
||||
void func_800586FC(); /* extern */
|
||||
void func_800587A4(); /* extern */
|
||||
void func_8005884C(); /* extern */
|
||||
|
||||
void func_80058538(u32 arg0) {
|
||||
Gfx *temp_v1;
|
||||
|
||||
if ((D_801657B0 == 0) && (temp_v1 = gDisplayListHead, gDisplayListHead = temp_v1 + 8, temp_v1->words.w0 = 0x6000000, temp_v1->words.w1 = &D_0D0076F8, (D_8018D22C == 0))) {
|
||||
switch (arg0) {
|
||||
if (D_801657B0 != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
gSPDisplayList(gDisplayListHead++, &D_0D0076F8);
|
||||
|
||||
if (D_8018D22C != 0) {
|
||||
return;
|
||||
}
|
||||
switch (arg0) {
|
||||
case 0:
|
||||
func_80058640(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_80058640();
|
||||
break;
|
||||
case 1:
|
||||
func_80058640(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_80058640();
|
||||
break;
|
||||
case 2:
|
||||
func_800586FC(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800586FC();
|
||||
break;
|
||||
case 3:
|
||||
func_80058640(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_80058640();
|
||||
break;
|
||||
case 4:
|
||||
func_800586FC(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800586FC();
|
||||
break;
|
||||
case 8:
|
||||
func_80058640(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_80058640();
|
||||
break;
|
||||
case 9:
|
||||
func_800586FC(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800586FC();
|
||||
break;
|
||||
case 10:
|
||||
func_800587A4(&gDisplayListHead, arg0);
|
||||
return;
|
||||
func_800587A4();
|
||||
break;
|
||||
case 11:
|
||||
func_8005884C(&gDisplayListHead, arg0);
|
||||
/* Duplicate return node #13. Try simplifying control flow for better match */
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
default:
|
||||
func_8005884C();
|
||||
break;
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80058538.s")
|
||||
#endif
|
||||
|
||||
void func_80058B58(s32 arg0);
|
||||
|
||||
@@ -329,123 +317,131 @@ void func_8005884C(void) {
|
||||
func_80058B58(3);
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
? func_80051638(s32); /* extern */
|
||||
? func_8005217C(s32); /* extern */
|
||||
? func_800524B4(s32); /* extern */
|
||||
? func_80052590(s32); /* extern */
|
||||
? func_800527D8(s32); /* extern */
|
||||
? func_80052E30(s32); /* extern */
|
||||
? func_8005327C(s32); /* extern */
|
||||
? func_80053870(s32); /* extern */
|
||||
? func_80053E6C(s32); /* extern */
|
||||
? func_800541BC(s32); /* extern */
|
||||
? func_80054414(s32); /* extern */
|
||||
? func_80054664(s32); /* extern */
|
||||
? func_80054938(s32); /* extern */
|
||||
? func_800550A4(s32); /* extern */
|
||||
? func_80055228(s32); /* extern */
|
||||
? func_80055380(s32); /* extern */
|
||||
? func_80055528(s32); /* extern */
|
||||
? func_8005568C(s32); /* extern */
|
||||
? func_8005592C(s32); /* extern */
|
||||
? func_80055C38(s32); /* extern */
|
||||
? func_80055E68(s32); /* extern */
|
||||
? func_80056188(s32); /* extern */
|
||||
? func_80056AC0(s32); /* extern */
|
||||
u16 gCurrentCourseId; /* unable to generate initializer */
|
||||
void func_80051638(s32);
|
||||
|
||||
void func_800524B4(s32);
|
||||
void func_80052590(s32);
|
||||
void func_800527D8(s32);
|
||||
void func_80052E30(s32);
|
||||
void func_8005327C(s32);
|
||||
void func_80053870(s32);
|
||||
void func_80053E6C(s32);
|
||||
void func_800541BC(s32);
|
||||
void func_80054414(s32);
|
||||
void func_80054664(s32);
|
||||
void func_80054938(s32);
|
||||
void func_800550A4(s32);
|
||||
void func_80055228(s32);
|
||||
void func_80055380(s32);
|
||||
void func_80055528(s32);
|
||||
void func_8005568C(s32);
|
||||
void func_8005592C(s32);
|
||||
void func_80055C38(s32);
|
||||
void func_80055E68(s32);
|
||||
void func_80056188(s32);
|
||||
void func_80056AC0(s32);
|
||||
extern s32 gModeSelection;
|
||||
extern s16 D_80165730;
|
||||
extern s8 D_8018EDF3;
|
||||
extern s8 D_80165898;
|
||||
|
||||
void func_800588F4(s32 arg0) {
|
||||
s32 temp_v0;
|
||||
s8 temp_v0_2;
|
||||
u16 temp_t6;
|
||||
s32 phi_v0;
|
||||
|
||||
temp_t6 = gCurrentCourseId;
|
||||
switch (temp_t6) {
|
||||
case 2:
|
||||
func_80053870(arg0);
|
||||
func_80054664(arg0);
|
||||
break;
|
||||
case 3:
|
||||
if (D_800DC50C != 9) {
|
||||
func_800527D8(arg0);
|
||||
func_80052590(arg0);
|
||||
func_8005217C(arg0);
|
||||
func_800524B4(arg0);
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
func_80055228(arg0);
|
||||
if (D_800DC50C != 9) {
|
||||
func_8005568C(arg0);
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (D_800DC50C != 9) {
|
||||
func_8005327C(arg0);
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
temp_v0 = D_800DC50C;
|
||||
phi_v0 = temp_v0;
|
||||
if (temp_v0 != 9) {
|
||||
func_80055528(arg0);
|
||||
phi_v0 = D_800DC50C;
|
||||
}
|
||||
if (phi_v0 != 9) {
|
||||
temp_v0_2 = D_8018EDF3;
|
||||
if ((temp_v0_2 == 1) || (temp_v0_2 == 2)) {
|
||||
switch (gCurrentCourseId) {
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
break;
|
||||
case 2:
|
||||
func_80053870(arg0);
|
||||
func_80054664(arg0);
|
||||
break;
|
||||
case 3:
|
||||
if (D_800DC50C != 9) {
|
||||
func_800527D8(arg0);
|
||||
func_80052590(arg0);
|
||||
func_8005217C(arg0);
|
||||
func_800524B4(arg0);
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
func_80055228(arg0);
|
||||
if (D_800DC50C != 9) {
|
||||
func_8005568C(arg0);
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (D_800DC50C != 9) {
|
||||
func_8005327C(arg0);
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
if (D_800DC50C != 9) {
|
||||
func_80055528(arg0);
|
||||
}
|
||||
if (D_800DC50C != 9) {
|
||||
|
||||
if ((D_8018EDF3 == 1) || (D_8018EDF3 == 2)) {
|
||||
func_80055380(arg0);
|
||||
}
|
||||
} else {
|
||||
func_80055380(arg0);
|
||||
}
|
||||
} else {
|
||||
func_80055380(arg0);
|
||||
break;
|
||||
case 7:
|
||||
break;
|
||||
case 8:
|
||||
if (D_80165898 != 0) {
|
||||
func_80055E68(arg0);
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
if (D_800DC50C != 9) {
|
||||
func_800550A4(arg0);
|
||||
}
|
||||
break;
|
||||
case 10:
|
||||
break;
|
||||
case 11:
|
||||
func_800541BC(arg0);
|
||||
break;
|
||||
case 12:
|
||||
if (D_800DC50C != 9) {
|
||||
func_80052E30(arg0);
|
||||
}
|
||||
func_8005592C(arg0);
|
||||
break;
|
||||
case 13:
|
||||
if (D_800DC50C != 9) {
|
||||
func_80056188(arg0);
|
||||
func_80055C38(arg0);
|
||||
}
|
||||
break;
|
||||
case 14:
|
||||
break;
|
||||
case 15:
|
||||
break;
|
||||
case 16:
|
||||
break;
|
||||
case 17:
|
||||
break;
|
||||
case 18:
|
||||
if (D_800DC50C != 9) {
|
||||
func_80054414(arg0);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
if (D_80165898 != 0) {
|
||||
func_80055E68(arg0);
|
||||
|
||||
func_80054938(arg0);
|
||||
func_80051638(arg0);
|
||||
|
||||
if (D_80165730 != 0) {
|
||||
func_80053E6C(arg0);
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
if (D_800DC50C != 9) {
|
||||
func_800550A4(arg0);
|
||||
if (gModeSelection == BATTLE) {
|
||||
func_80056AC0(arg0);
|
||||
}
|
||||
break;
|
||||
case 11:
|
||||
func_800541BC(arg0);
|
||||
break;
|
||||
case 12:
|
||||
if (D_800DC50C != 9) {
|
||||
func_80052E30(arg0);
|
||||
}
|
||||
func_8005592C(arg0);
|
||||
break;
|
||||
case 13:
|
||||
if (D_800DC50C != 9) {
|
||||
func_80056188(arg0);
|
||||
func_80055C38(arg0);
|
||||
}
|
||||
break;
|
||||
case 18:
|
||||
if (D_800DC50C != 9) {
|
||||
func_80054414(arg0);
|
||||
}
|
||||
break;
|
||||
}
|
||||
func_80054938(arg0);
|
||||
func_80051638(arg0);
|
||||
if (D_80165730 != 0) {
|
||||
func_80053E6C(arg0);
|
||||
}
|
||||
if (gModeSelection == BATTLE) {
|
||||
func_80056AC0(arg0);
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_800588F4.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
@@ -459,21 +455,26 @@ void func_80058B58(s32 arg0) {
|
||||
if (gCurrentCourseId != COURSE_FRAPPE_SNOWLAND) {
|
||||
if (gCurrentCourseId != COURSE_SHERBET_LAND) {
|
||||
|
||||
} else {
|
||||
func_80052C60();
|
||||
}
|
||||
return;// Duplicate return node #9. Try simplifying control flow for better match
|
||||
}
|
||||
if (D_800DC50C != 9) {
|
||||
if ((D_8015F894 == 0) && (gPlayerCountSelection1 == COURSE_CHOCO_MOUNTAIN)) {
|
||||
|
||||
|
||||
|
||||
if (D_800DC50C != 9) {
|
||||
if (D_8015F894 == 0) {
|
||||
if (gPlayerCountSelection1 == COURSE_CHOCO_MOUNTAIN) {
|
||||
func_800517C8();
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
func_800517C8();
|
||||
//return;
|
||||
return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
func_800517C8();
|
||||
|
||||
//return arg0;
|
||||
func_80052C60();
|
||||
|
||||
return;
|
||||
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80058B58.s")
|
||||
|
||||
Reference in New Issue
Block a user