Match func in staff_ghosts.c and name menus file (#227)

* name some code files

* staff ghost func match

* Update README.md
This commit is contained in:
MegaMech
2022-06-18 03:49:53 -06:00
committed by GitHub
parent 22ca23f32c
commit 9ac748b0d0
43 changed files with 168 additions and 260 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
#include <macros.h>
#include <defines.h>
#include "code_80091750.h"
#include "code_800AF9B0.h"
#include "menus.h"
#include "credits_01.h"
#include "data_segment2.h"
#include "variables.h"
+1
View File
@@ -135,6 +135,7 @@ Gfx *func_8009C434(Gfx*, struct_8018DEE0_entry*, s32, s32, s32);
Gfx *func_8009C708(Gfx*, struct_8018DEE0_entry *, s32, s32, s32, s32);
void func_8009C918();
void func_8009E1C0();
void func_8009E1E4();
void func_8009E208();
void func_8009E258();
void func_8009E5BC();
+2 -5
View File
@@ -50,9 +50,6 @@ struct Controller *gControllerFive = &gControllers[4]; // 0x800DC4CC
struct Controller *gControllerSix = &gControllers[5]; // 0x800DC4D0
struct Controller *gControllerSeven = &gControllers[6]; // 0x800DC4D4
struct Controller *gControllerEight = &gControllers[7]; // 0x800DC4D8
//Player shift[1];
//Player *shifting = &shift[0];
Player gPlayers[8];
Player *gPlayerOne = &gPlayers[0]; // 0x800DC4DC
@@ -66,8 +63,8 @@ Player *gPlayerEight = &gPlayers[7]; // 0x800DC4F8
Player *gPlayerOneCopy = &gPlayers[0]; // 0x800DC4FC
Player *gPlayerTwoCopy = &gPlayers[1]; // 0x800DC500
Player *gPlayerThreeCopy = &gPlayers[2]; // 0x800DC504
Player *gPlayerFourCopy = &gPlayers[3]; // 0x800DC508
UNUSED Player *gPlayerThreeCopy = &gPlayers[2]; // 0x800DC504
UNUSED Player *gPlayerFourCopy = &gPlayers[3]; // 0x800DC508
s32 D_800FD850[3];
struct GfxPool gGfxPools[2];
+36 -36
View File
@@ -4,7 +4,7 @@
#include "global.h"
#include "code_80091750.h"
#include "code_800AF9B0.h"
#include "menus.h"
void func_800AF9B0(void) {
D_8018EDB8 = func_802A7B70(7680);
@@ -96,7 +96,7 @@ void func_800AF9E4(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s16 arg4, s16 arg5, s
temp_a3_5->unk0 = 0xBF000000;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800AF9E4.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800AF9E4.s")
#endif
#ifdef MIPS_TO_C
@@ -168,7 +168,7 @@ void func_800AFC54(s32 arg0, s32 arg1, s32 arg2, s32 arg3, void *arg4) {
arg4->unk4 = temp_f18 * temp_f2 * 120.0f;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800AFC54.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800AFC54.s")
#endif
#ifdef MIPS_TO_C
@@ -240,7 +240,7 @@ void func_800AFE00(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
} while (temp_v1 != 0x1E0);
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800AFE00.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800AFE00.s")
#endif
#ifdef MIPS_TO_C
@@ -276,7 +276,7 @@ void func_800AFF58(s32 arg0) {
} while (temp_s0 != 0xC);
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800AFF58.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800AFF58.s")
#endif
#ifdef MIPS_TO_C
@@ -388,7 +388,7 @@ loop_5:
temp_v0_4->unk0 = 0xB6000000;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B0004.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B0004.s")
#endif
@@ -449,7 +449,7 @@ void func_800B0350(void) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B0350.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B0350.s")
#endif
#ifdef MIPS_TO_C
@@ -1005,7 +1005,7 @@ void func_800B053C(struct Controller *arg0, u16 arg1) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B053C.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B053C.s")
#endif
// Handle navigating the data menu interface
@@ -1322,7 +1322,7 @@ void func_800B15AC(struct Controller *arg0, u16 arg1) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B15AC.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B15AC.s")
#endif
// Handle controller input during the logo screen
@@ -1478,7 +1478,7 @@ void func_800B1C90(struct Controller* controller, u16 arg1) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B1C90.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B1C90.s")
#endif
#ifdef MIPS_TO_C
@@ -1765,7 +1765,7 @@ void func_800B20F4(void *arg0, s32 arg1) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B20F4.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B20F4.s")
#endif
void func_800B28C8(void) {
@@ -2157,7 +2157,7 @@ block_64:
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B29D8.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B29D8.s")
#endif
s32 func_800B34E8(s32 arg0) {
@@ -2180,7 +2180,7 @@ Please modify the assembly to work around it (e.g. copy the instruction
to all jump sources and move the label, or add a nop to the delay slot).
*/
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B3554.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B3554.s")
#endif
// Handle navigating the course menu interface
@@ -2560,7 +2560,7 @@ void func_800B3F74(u32 arg0) {
func_800B44AC();
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B3F74.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B3F74.s")
#endif
void func_800B44AC(void) {
@@ -2582,7 +2582,7 @@ void func_800B44BC(void) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B44BC.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B44BC.s")
#endif
s32 func_800B4520(void) {
@@ -2603,7 +2603,7 @@ extern s32 D_80162DE0;
extern s32 D_8018D9C0;
extern ? D_8018EE16;
// Separated from assembly in code_800AF9B0/func_800B4520.s
// Separated from assembly in menus/func_800B4520.s
UNUSED void func_800B4560(s32 arg0, s32 arg1) {
s32 sp18;
@@ -2613,7 +2613,7 @@ UNUSED void func_800B4560(s32 arg0, s32 arg1) {
rmonPrintf(&D_800F2C0C, (s32) ((arg1 << 7) + sp18)->unk6);
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B4560.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B4560.s")
#endif
void func_800B45E0(s32 arg0) {
@@ -2720,7 +2720,7 @@ s32 compute_save_data_checksum_1(void) {
return ((D_8018ED10.grandPrixPointsMushroomCup + 1 + ((temp_a0->unk0 + 1) * 2) + 1 + ((temp_a0->unk1 + 1) * 3) + 1 + 1 + ((temp_a0->unk2 + 1) * 4) + 1 + 2 + ((temp_a0->unk3 + 1) * 5) + 1 + 3) % 0x100) & 0xFF;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B492C.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B492C.s")
#endif
s32 compute_save_data_checksum_2(void) {
@@ -2822,7 +2822,7 @@ void func_800B4A9C(s32 arg0) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B4A9C.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B4A9C.s")
#endif
void validate_save_data(void) {
@@ -2885,7 +2885,7 @@ s32 func_800B4DF4(u8 *arg0) {
return ((arg0[1] << 8) + arg0[0] + (arg0[2] << 0x10)) & 0xFFFFFF;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B4DF4.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B4DF4.s")
#endif
// Get a time trial record, infer course index
@@ -3033,7 +3033,7 @@ block_10:
return phi_s1_2;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B5020.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B5020.s")
#endif
#ifdef MIPS_TO_C
@@ -3102,7 +3102,7 @@ s32 func_800B5218(void) {
return phi_v0_2;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B5218.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B5218.s")
#endif
void func_800B536C(s32 arg0) {
@@ -3276,7 +3276,7 @@ void func_800B559C(s32 arg0, void *arg1, void *arg2) {
osEepromLongWrite(&gSIEventMesgQueue, ((temp_s2_2 - &D_8018EB90) >> 3) & 0xFF, temp_s2_2, 0x38);
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B559C.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B559C.s")
#endif
#ifdef MIPS_TO_C
@@ -3325,7 +3325,7 @@ loop_2:
return (temp_v1 % 0x100) & 0xFF;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B578C.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B578C.s")
#endif
s32 func_800B5888(s32 arg0) {
@@ -3379,7 +3379,7 @@ void update_save_data_backup(void) {
osEepromLongWrite(&gSIEventMesgQueue, ((&D_8018ED88 - &D_8018EB90) >> 3) & 0xFF, &D_8018ED88, 8);
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B5948.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B5948.s")
#endif
#ifdef MIPS_TO_C
@@ -3393,7 +3393,7 @@ s32 compute_save_data_checksum_backup_1(void) {
return ((D_8018ED88.grandPrixPointsMushroomCup + 1 + ((temp_a0->unk0 + 1) * 2) + 1 + ((temp_a0->unk1 + 1) * 3) + 1 + 1 + ((temp_a0->unk2 + 1) * 4) + 1 + 2 + ((temp_a0->unk3 + 1) * 5) + 1 + 3) % 0x100) & 0xFF;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B59F4.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B59F4.s")
#endif
s32 compute_save_data_checksum_backup_2(void) {
@@ -3519,7 +3519,7 @@ block_27:
return phi_v0_2;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B5B94.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B5B94.s")
#endif
#ifdef MIPS_TO_C
@@ -3604,7 +3604,7 @@ block_25:
return phi_v0_2;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B5DA4.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B5DA4.s")
#endif
s32 func_800B5F30(void) {
@@ -3682,7 +3682,7 @@ s32 func_800B60E8(s32 arg0) {
return temp_v1 & 0xFF;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B60E8.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B60E8.s")
#endif
#ifdef MIPS_TO_C
@@ -3782,7 +3782,7 @@ s32 func_800B6178(s32 arg0) {
return phi_v1;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B6178.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B6178.s")
#endif
s32 func_800B6348(s32 arg0) {
@@ -3924,7 +3924,7 @@ block_9:
return sp34;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B65F4.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B65F4.s")
#endif
void func_800B6708(void) {
@@ -3985,7 +3985,7 @@ s32 func_800B6828(s32 arg0) {
return temp_v1 & 0xFF;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B6828.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B6828.s")
#endif
#ifdef MIPS_TO_C
@@ -4015,7 +4015,7 @@ s32 func_800B68F4(s32 arg0) {
return temp_a1 & 0xFF;
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B68F4.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B68F4.s")
#endif
#ifdef MIPS_TO_C
@@ -4056,7 +4056,7 @@ void func_800B69BC(s32 arg0) {
osPfsReadWriteFile(&D_8018E868, D_8018EB84, 1, temp_a3, 0x80, temp_t0);
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B69BC.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B69BC.s")
#endif
s32 func_800B6A68(void) {
@@ -4096,7 +4096,7 @@ extern ? D_8018EB84;
extern s32 gControllerPakNumPagesFree;
extern ? gSIEventMesgQueue;
// Separated from assembly in code_800AF9B0/func_800B6A68.s
// Separated from assembly in menus/func_800B6A68.s
UNUSED void func_800B6AF8(void) {
s32 temp_t1;
@@ -4109,5 +4109,5 @@ UNUSED void func_800B6AF8(void) {
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B6AF8.s")
GLOBAL_ASM("asm/non_matchings/menus/func_800B6AF8.s")
#endif
+3 -3
View File
@@ -1,5 +1,5 @@
#ifndef CODE_800AF9B0_H
#define CODE_800AF9B0_H
#ifndef MENUS_H
#define MENUS_H
#include "PR/os.h"
#include "common_structs.h"
@@ -152,4 +152,4 @@ extern s8 D_8018EE0A;
extern s8 gCupCourseSelection; // D_8018EE0B
extern struct_8018EE10_entry D_8018EE10[];
#endif
#endif // MENUS_H
+119 -115
View File
@@ -52,8 +52,8 @@ s32 D_80162DFC;
s32 D_80162E00;
extern u8 D_802BFB80[77824];
extern u8 D_802D2B80[32768];
extern u8 D_802DAB80[20480];
extern u8 *D_802D2B80[32768];
extern u8 *D_802DAB80[20480];
u32 *D_800DC710 = &D_802D2B80[0];
u32 *D_800DC714 = &D_802DAB80[0];
@@ -222,7 +222,7 @@ void func_80005310(void) {
D_80162DD8 = 1U;
D_80162DBC = &D_802BFB80[(D_80162DCC << 0xF) + 0x3000];
D_80162DBC[0] = -1;
*D_80162DBC = 0xFFFFFFFF;
D_80162DB8 = 0;
D_80162DDC = 0;
func_80091EE4(&D_80162DC0);
@@ -411,67 +411,69 @@ void func_800057DC(void) {
D_80162D8C += (s32) 0xFFFF0000;
}
}
/*
void func_8000599C(void) {
s16 temp_a2;
u32 temp_v0;
u32 phi_a3;
u32 temp_v1;
u32 temp_v2;
u32 *temp_t0;
s16 new_var;
u32 temp_v0;
u32 temp_t0;
u32 temp_a0_2;
u32 temp_a3;
u32 phi_a3;
if (D_80162DB8 >= 0x1000) {
if (((D_80162DB8 >= 0x1000) ||
((gPlayerOne->unk_0CA & 2) != 0)) ||
((gPlayerOne->unk_0CA & 8) != 0)) {
D_80162DF8 = 1;
return;
}
temp_v1 &= 0xff;
temp_v2 &= 0xff << 8;
//temp_v1 = gPlayerOne->unk_0CA;
//if (((temp_v1 & 2) != 0) || ((temp_v1 & 8) != 0)) {
//}
temp_v1 = gControllerOne->rawStickX;
temp_v1 &= 0xFF;
temp_v2 = gControllerOne->rawStickY;
temp_v2 = (temp_v2 & 0xFF) << 8;
temp_a2 = gControllerOne->button;
phi_a3 = 0;
if (temp_a2 & A_BUTTON) {
if (temp_a2 & 0x8000) {
phi_a3 |= 0x80000000;
}
if (temp_a2 & B_BUTTON) {
} if (temp_a2 & 0x4000) {
phi_a3 |= 0x40000000;
}
if (temp_a2 & Z_TRIG) {
if (temp_a2 & 0x2000) {
phi_a3 |= 0x20000000;
}
if (temp_a2 & R_TRIG) {
if (temp_a2 & 0x0010) {
phi_a3 |= 0x10000000;
}
phi_a3 |= temp_v1;
phi_a3 |= temp_v2;
temp_v0 = (gControllerOne->rawStickY & 0xFF) << 8;
temp_a3 = phi_a3 | (gControllerOne->rawStickX & 0xFF) | temp_v0;
temp_a0_2 = &D_80162DBC[D_80162DB8];;
if (*D_80162DBC == -1) {
*temp_t0 = temp_a3;
} else {
if ((temp_a0_2 & 0xFF00FFFF) == temp_a3) {
if ((temp_a0_2 & 0xFF0000) == 0xFF0000) {
D_80162DB8++;
D_80162DBC[D_80162DB8] = temp_a3;
} else {
*temp_t0 += 0x10000;
}
} else {
temp_t0 = D_80162DBC[D_80162DB8];
temp_a0_2 = temp_t0 & 0xFF00FFFF;
if ((*D_80162DBC) == 0xFFFFFFFF) {
D_80162DBC[D_80162DB8] = phi_a3;
} else if (temp_a0_2 == phi_a3) {
temp_v0 = temp_t0 & 0xFF0000;
if (temp_v0 == 0xFF0000) {
D_80162DB8++;
D_80162DBC[D_80162DB8] = temp_a3;
D_80162DBC[D_80162DB8] = phi_a3;
} else {
temp_t0 += 0x10000;
D_80162DBC[D_80162DB8] = temp_t0;
}
} else {
D_80162DB8++; D_80162DBC[D_80162DB8] = phi_a3;
}
}
*/
GLOBAL_ASM("asm/non_matchings/staff_ghosts/func_8000599C.s")
// sets player to AI? (unconfirmed)
void func_80005AE8(Player *ply) {
@@ -482,84 +484,86 @@ void func_80005AE8(Player *ply) {
#ifdef NON_MATCHING
void func_80005B18(void) {
s16 *temp_v0_2;
s16 *temp_v0_3;
s32 temp_v0;
u16 *phi_a3;
if (gModeSelection == TIME_TRIALS) {
temp_v0 = gLapCountByPlayerId[0];
//phi_a3 = &D_80162DD4;
if ((gLapCountByPlayerId[0] == 3) && (D_80162DDC == 0) && D_80162DF8 != 1) {
//if (D_80162DF8 != 1) {
if (D_80162DD4 == 1) {
D_80162DD0 = D_80162DCC;
func_800052A4(); //gModeSelection, &D_80162DDC, 3, &D_80162DD4);
D_80162DD4 = 0;
D_80162DDC = 1;
D_80162DE0 = gPlayerOne->characterId;
D_80162DE8 = gPlayerOne->characterId;
D_80162E00 = 0;
D_80162DFC = D_8018CA78;
func_80005AE8(gPlayerTwo); // (u16) &D_80162DDC);
func_80005AE8(gPlayerThree);
} else {
if (gLapCountByPlayerId[4] != 3) {
D_80162DD0 = D_80162DCC;
func_800052A4(); // gModeSelection, &D_80162DDC, 3, &D_80162DD4);
D_80162DDC = 1;
D_80162DE0 = gPlayerOne->characterId;
D_80162DFC = D_8018CA78;
D_80162E00 = 0;
D_80162DE8 = gPlayerOne->characterId;
func_80005AE8(gPlayerTwo); // (u16) &D_80162DDC);
func_80005AE8(gPlayerThree);
return;
}
}
D_80162D80 = (void *) ((D_80162DC8 << 0xF) + 0x3000 + &D_802BFB80);
D_80162D84 = D_80162D86;
D_80162DD0 = D_80162DCC;
D_80162DE8 = gPlayerOne->characterId;
D_80162DD8 = 0;
D_80162DD4 = 0;
D_80162DDC = 1;
func_80005AE8(gPlayerTwo); // (u16) &D_80162DDC, 3, &D_80162DD4);
func_80005AE8(gPlayerThree);
return;
}
if ((gLapCountByPlayerId[0] == 3) && (D_80162DDC == 0) && (D_80162DF8 == 1)) {
D_80162D80 = (void *) ((D_80162DC8 << 0xF) + 0x3000 + &D_802BFB80);
D_80162D84 = D_80162D86;
D_80162DDC = 1;
}
if (( gPlayerOne->unk_000 & PLAYER_CINEMATIC_MODE) == PLAYER_CINEMATIC_MODE) {
func_80005AE8(gPlayerTwo); // (u16) &D_80162DDC, 3, phi_a3);
func_80005AE8(gPlayerThree);
return;
};
D_80162DEC++;
if (D_80162DEC > 100) {
D_80162DEC = 100;
}
if ((gModeSelection == TIME_TRIALS) && (gActiveScreenMode == 0)) {
if ((D_80162DD4 == 0) && (gLapCountByPlayerId[4] != 3)) {
func_800057DC(); //gModeSelection, &D_80162DDC, 3, &D_80162DD4);
}
if ((D_80162DD6 == 0) && (3 != gLapCountByPlayerId[8])) {
func_8000561C();
}
if (( gPlayerOne->unk_000 & PLAYER_CINEMATIC_MODE) == 0) {
func_8000599C();
}
void func_80005B18(void)
{
if (gModeSelection == 1)
{
if (((gLapCountByPlayerId[0] == 3) && (D_80162DDC == 0)) && (D_80162DF8 != 1))
{
if (D_80162DD4 == (u16)1)
{
D_80162DD0 = D_80162DCC;
func_800052A4();
D_80162DD4 = 0;
D_80162DDC = 1;
D_80162DE0 = gPlayerOne->characterId;
D_80162DE8 = gPlayerOne->characterId;
D_80162E00 = 0;
D_80162DFC = D_8018CA78;
func_80005AE8(gPlayerTwo);
func_80005AE8(gPlayerThree);
}
else
{
if (gLapCountByPlayerId[4] != 3)
{
D_80162DD0 = D_80162DCC;
func_800052A4();
D_80162DDC = 1;
D_80162DE0 = gPlayerOne->characterId;
D_80162DFC = D_8018CA78;
D_80162E00 = 0;
D_80162DE8 = gPlayerOne->characterId;
func_80005AE8(gPlayerTwo);
func_80005AE8(gPlayerThree);
return;
}
}
D_80162D80 = &D_802BFB80[(D_80162DC8 << 0xF) + 0x3000];
D_80162D84 = D_80162D86;
D_80162DD0 = D_80162DCC;
D_80162DE8 = gPlayerOne->characterId;
D_80162DD8 = 0;
D_80162DD4 = 0;
D_80162DDC = 1;
func_80005AE8(gPlayerTwo);
func_80005AE8(gPlayerThree);
return;
}
if (((gLapCountByPlayerId[0] == 3) && (D_80162DDC == 0)) && (D_80162DF8 == 1))
{
D_80162D80 = &D_802BFB80[(D_80162DC8 << 0xF) + 0x3000];
D_80162D84 = D_80162D86;
D_80162DDC = 1;
}
if ((gPlayerOne->unk_000 & 0x800) == 0x800)
{
func_80005AE8(gPlayerTwo);
func_80005AE8(gPlayerThree);
return;
}
;
D_80162DEC++;
if (D_80162DEC > 100)
{
D_80162DEC = 100;
}
if ((gModeSelection == 1) && (gActiveScreenMode == 0))
{
if ((D_80162DD4 == 0) && (gLapCountByPlayerId[1] != 3))
{
func_800057DC();
}
if ((D_80162DD6 == 0) && (3 != gLapCountByPlayerId[8]))
{
func_8000561C();
}
if ((gPlayerOne->unk_000 & (1 << 11)) == 0)
{
func_8000599C();
}
}
}
}
#else