Match a variety functions (#136)

* Match func_800A4B38

* Match func_800A6034

* Change type of "blue" argument

This allows the function's type signature to look the same as the other
 box drawing function.

* Match func_800AC300

* Matched func_800AAEF4

* Matched func_800AAF30 and func_800AAF70

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
This commit is contained in:
Tyler McGavran 2022-01-13 00:13:01 -05:00 committed by GitHub
parent 29f9f8890a
commit 65e7fc87df
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 85 additions and 307 deletions

View File

@ -1,43 +0,0 @@
glabel func_800A4B38
/* 0A5738 800A4B38 3C0E800E */ lui $t6, %hi(D_800DC5FC) # $t6, 0x800e
/* 0A573C 800A4B3C 95CEC5FC */ lhu $t6, %lo(D_800DC5FC)($t6)
/* 0A5740 800A4B40 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0A5744 800A4B44 AFBF0014 */ sw $ra, 0x14($sp)
/* 0A5748 800A4B48 11C0001B */ beqz $t6, .L800A4BB8
/* 0A574C 800A4B4C 3C02800E */ lui $v0, %hi(gModeSelection) # $v0, 0x800e
/* 0A5750 800A4B50 8C42C53C */ lw $v0, %lo(gModeSelection)($v0)
/* 0A5754 800A4B54 24010001 */ li $at, 1
/* 0A5758 800A4B58 10400011 */ beqz $v0, .L800A4BA0
/* 0A575C 800A4B5C 00000000 */ nop
/* 0A5760 800A4B60 10410007 */ beq $v0, $at, .L800A4B80
/* 0A5764 800A4B64 24010002 */ li $at, 2
/* 0A5768 800A4B68 10410009 */ beq $v0, $at, .L800A4B90
/* 0A576C 800A4B6C 24010003 */ li $at, 3
/* 0A5770 800A4B70 1041000F */ beq $v0, $at, .L800A4BB0
/* 0A5774 800A4B74 00000000 */ nop
/* 0A5778 800A4B78 10000010 */ b .L800A4BBC
/* 0A577C 800A4B7C 8FBF0014 */ lw $ra, 0x14($sp)
.L800A4B80:
/* 0A5780 800A4B80 0C0292F2 */ jal func_800A4BC8
/* 0A5784 800A4B84 00000000 */ nop
/* 0A5788 800A4B88 1000000C */ b .L800A4BBC
/* 0A578C 800A4B8C 8FBF0014 */ lw $ra, 0x14($sp)
.L800A4B90:
/* 0A5790 800A4B90 0C0293BE */ jal func_800A4EF8
/* 0A5794 800A4B94 00000000 */ nop
/* 0A5798 800A4B98 10000008 */ b .L800A4BBC
/* 0A579C 800A4B9C 8FBF0014 */ lw $ra, 0x14($sp)
.L800A4BA0:
/* 0A57A0 800A4BA0 0C029421 */ jal func_800A5084
/* 0A57A4 800A4BA4 00000000 */ nop
/* 0A57A8 800A4BA8 10000004 */ b .L800A4BBC
/* 0A57AC 800A4BAC 8FBF0014 */ lw $ra, 0x14($sp)
.L800A4BB0:
/* 0A57B0 800A4BB0 0C0294D8 */ jal func_800A5360
/* 0A57B4 800A4BB4 00000000 */ nop
.L800A4BB8:
/* 0A57B8 800A4BB8 8FBF0014 */ lw $ra, 0x14($sp)
.L800A4BBC:
/* 0A57BC 800A4BBC 27BD0018 */ addiu $sp, $sp, 0x18
/* 0A57C0 800A4BC0 03E00008 */ jr $ra
/* 0A57C4 800A4BC4 00000000 */ nop

View File

@ -1,75 +0,0 @@
glabel func_800A6034
/* 0A6C34 800A6034 3C0E8016 */ lui $t6, %hi(D_801657E8) # $t6, 0x8016
/* 0A6C38 800A6038 81CE57E8 */ lb $t6, %lo(D_801657E8)($t6)
/* 0A6C3C 800A603C 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 0A6C40 800A6040 AFB00020 */ sw $s0, 0x20($sp)
/* 0A6C44 800A6044 24010001 */ li $at, 1
/* 0A6C48 800A6048 00808025 */ move $s0, $a0
/* 0A6C4C 800A604C 11C1003C */ beq $t6, $at, .L800A6140
/* 0A6C50 800A6050 AFBF0024 */ sw $ra, 0x24($sp)
/* 0A6C54 800A6054 3C058015 */ lui $a1, %hi(gDisplayListHead) # $a1, 0x8015
/* 0A6C58 800A6058 24A50298 */ addiu $a1, %lo(gDisplayListHead) # addiu $a1, $a1, 0x298
/* 0A6C5C 800A605C 8CA30000 */ lw $v1, ($a1)
/* 0A6C60 800A6060 3C18FA00 */ lui $t8, 0xfa00
/* 0A6C64 800A6064 3C09800E */ lui $t1, %hi(D_800DC540) # $t1, 0x800e
/* 0A6C68 800A6068 246F0008 */ addiu $t7, $v1, 8
/* 0A6C6C 800A606C ACAF0000 */ sw $t7, ($a1)
/* 0A6C70 800A6070 AC780000 */ sw $t8, ($v1)
/* 0A6C74 800A6074 8C99001C */ lw $t9, 0x1c($a0)
/* 0A6C78 800A6078 3C0B800E */ lui $t3, %hi(D_800E7500)
/* 0A6C7C 800A607C 24040005 */ li $a0, 5
/* 0A6C80 800A6080 332800FF */ andi $t0, $t9, 0xff
/* 0A6C84 800A6084 AC680004 */ sw $t0, 4($v1)
/* 0A6C88 800A6088 8D29C540 */ lw $t1, %lo(D_800DC540)($t1)
/* 0A6C8C 800A608C 00095080 */ sll $t2, $t1, 2
/* 0A6C90 800A6090 016A5821 */ addu $t3, $t3, $t2
/* 0A6C94 800A6094 8D6B7500 */ lw $t3, %lo(D_800E7500)($t3)
/* 0A6C98 800A6098 0C024C36 */ jal set_text_color
/* 0A6C9C 800A609C AFAB002C */ sw $t3, 0x2c($sp)
/* 0A6CA0 800A60A0 3C01800F */ lui $at, %hi(D_800F1F04) # $at, 0x800f
/* 0A6CA4 800A60A4 C4241F04 */ lwc1 $f4, %lo(D_800F1F04)($at)
/* 0A6CA8 800A60A8 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 0A6CAC 800A60AC 44813000 */ mtc1 $at, $f6
/* 0A6CB0 800A60B0 8E04000C */ lw $a0, 0xc($s0)
/* 0A6CB4 800A60B4 8E050010 */ lw $a1, 0x10($s0)
/* 0A6CB8 800A60B8 8FA6002C */ lw $a2, 0x2c($sp)
/* 0A6CBC 800A60BC 00003825 */ move $a3, $zero
/* 0A6CC0 800A60C0 E7A40010 */ swc1 $f4, 0x10($sp)
/* 0A6CC4 800A60C4 E7A60014 */ swc1 $f6, 0x14($sp)
/* 0A6CC8 800A60C8 24840041 */ addiu $a0, $a0, 0x41
/* 0A6CCC 800A60CC 0C024DD5 */ jal func_80093754
/* 0A6CD0 800A60D0 24A500A0 */ addiu $a1, $a1, 0xa0
/* 0A6CD4 800A60D4 3C02800E */ lui $v0, %hi(gCurrentCourseId) # $v0, 0x800e
/* 0A6CD8 800A60D8 8442C5A0 */ lh $v0, %lo(gCurrentCourseId)($v0)
/* 0A6CDC 800A60DC 3C0D800E */ lui $t5, %hi(D_800E7524)
/* 0A6CE0 800A60E0 00026080 */ sll $t4, $v0, 2
/* 0A6CE4 800A60E4 01AC6821 */ addu $t5, $t5, $t4
/* 0A6CE8 800A60E8 8DAD7524 */ lw $t5, %lo(D_800E7524)($t5)
/* 0A6CEC 800A60EC AFAD002C */ sw $t5, 0x2c($sp)
/* 0A6CF0 800A60F0 04410004 */ bgez $v0, .L800A6104
/* 0A6CF4 800A60F4 30440003 */ andi $a0, $v0, 3
/* 0A6CF8 800A60F8 10800002 */ beqz $a0, .L800A6104
/* 0A6CFC 800A60FC 00000000 */ nop
/* 0A6D00 800A6100 2484FFFC */ addiu $a0, $a0, -4
.L800A6104:
/* 0A6D04 800A6104 0C024C36 */ jal set_text_color
/* 0A6D08 800A6108 00000000 */ nop
/* 0A6D0C 800A610C 3C01800F */ lui $at, %hi(D_800F1F08) # $at, 0x800f
/* 0A6D10 800A6110 C4281F08 */ lwc1 $f8, %lo(D_800F1F08)($at)
/* 0A6D14 800A6114 3C01800F */ lui $at, %hi(D_800F1F0C) # $at, 0x800f
/* 0A6D18 800A6118 C42A1F0C */ lwc1 $f10, %lo(D_800F1F0C)($at)
/* 0A6D1C 800A611C 8E04000C */ lw $a0, 0xc($s0)
/* 0A6D20 800A6120 8E050010 */ lw $a1, 0x10($s0)
/* 0A6D24 800A6124 8FA6002C */ lw $a2, 0x2c($sp)
/* 0A6D28 800A6128 00003825 */ move $a3, $zero
/* 0A6D2C 800A612C E7A80010 */ swc1 $f8, 0x10($sp)
/* 0A6D30 800A6130 E7AA0014 */ swc1 $f10, 0x14($sp)
/* 0A6D34 800A6134 24840041 */ addiu $a0, $a0, 0x41
/* 0A6D38 800A6138 0C024DD5 */ jal func_80093754
/* 0A6D3C 800A613C 24A500C3 */ addiu $a1, $a1, 0xc3
.L800A6140:
/* 0A6D40 800A6140 8FBF0024 */ lw $ra, 0x24($sp)
/* 0A6D44 800A6144 8FB00020 */ lw $s0, 0x20($sp)
/* 0A6D48 800A6148 27BD0030 */ addiu $sp, $sp, 0x30
/* 0A6D4C 800A614C 03E00008 */ jr $ra
/* 0A6D50 800A6150 00000000 */ nop

View File

@ -1,19 +0,0 @@
glabel func_800AAEF4
/* 0ABAF4 800AAEF4 3C038019 */ lui $v1, %hi(D_8018D9E0) # $v1, 0x8019
/* 0ABAF8 800AAEF8 3C028019 */ lui $v0, %hi(D_8018DEE0) # $v0, 0x8019
/* 0ABAFC 800AAEFC 2463D9E0 */ addiu $v1, %lo(D_8018D9E0) # addiu $v1, $v1, -0x2620
/* 0ABB00 800AAF00 2442DEE0 */ addiu $v0, %lo(D_8018DEE0) # addiu $v0, $v0, -0x2120
/* 0ABB04 800AAF04 8C6E0000 */ lw $t6, ($v1)
.L800AAF08:
/* 0ABB08 800AAF08 108E0007 */ beq $a0, $t6, .L800AAF28
/* 0ABB0C 800AAF0C 00000000 */ nop
/* 0ABB10 800AAF10 24630028 */ addiu $v1, $v1, 0x28
/* 0ABB14 800AAF14 0043082B */ sltu $at, $v0, $v1
/* 0ABB18 800AAF18 5020FFFB */ beql $at, $zero, .L800AAF08
/* 0ABB1C 800AAF1C 8C6E0000 */ lw $t6, ($v1)
.L800AAF20:
/* 0ABB20 800AAF20 1000FFFF */ b .L800AAF20
/* 0ABB24 800AAF24 00000000 */ nop
.L800AAF28:
/* 0ABB28 800AAF28 03E00008 */ jr $ra
/* 0ABB2C 800AAF2C 00601025 */ move $v0, $v1

View File

@ -1,30 +0,0 @@
glabel func_800AAF30
/* 0ABB30 800AAF30 3C038019 */ lui $v1, %hi(D_8018D9E0) # $v1, 0x8019
/* 0ABB34 800AAF34 3C028019 */ lui $v0, %hi(D_8018DEE0) # $v0, 0x8019
/* 0ABB38 800AAF38 2463D9E0 */ addiu $v1, %lo(D_8018D9E0) # addiu $v1, $v1, -0x2620
/* 0ABB3C 800AAF3C 2442DEE0 */ addiu $v0, %lo(D_8018DEE0) # addiu $v0, $v0, -0x2120
/* 0ABB40 800AAF40 8C6E0000 */ lw $t6, ($v1)
.L800AAF44:
/* 0ABB44 800AAF44 508E0008 */ beql $a0, $t6, .L800AAF68
/* 0ABB48 800AAF48 00601025 */ move $v0, $v1
/* 0ABB4C 800AAF4C 24630028 */ addiu $v1, $v1, 0x28
/* 0ABB50 800AAF50 0043082B */ sltu $at, $v0, $v1
/* 0ABB54 800AAF54 5020FFFB */ beql $at, $zero, .L800AAF44
/* 0ABB58 800AAF58 8C6E0000 */ lw $t6, ($v1)
/* 0ABB5C 800AAF5C 03E00008 */ jr $ra
/* 0ABB60 800AAF60 00001025 */ move $v0, $zero
/* 0ABB64 800AAF64 00601025 */ move $v0, $v1
.L800AAF68:
/* 0ABB68 800AAF68 03E00008 */ jr $ra
/* 0ABB6C 800AAF6C 00000000 */ nop
/* 0ABB70 800AAF70 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0ABB74 800AAF74 AFBF0014 */ sw $ra, 0x14($sp)
/* 0ABB78 800AAF78 0C02ABAD */ jal func_800AAEB4
/* 0ABB7C 800AAF7C 00000000 */ nop
/* 0ABB80 800AAF80 8FBF0014 */ lw $ra, 0x14($sp)
/* 0ABB84 800AAF84 8C420004 */ lw $v0, 4($v0)
/* 0ABB88 800AAF88 27BD0018 */ addiu $sp, $sp, 0x18
/* 0ABB8C 800AAF8C 03E00008 */ jr $ra
/* 0ABB90 800AAF90 00000000 */ nop

View File

@ -1,11 +0,0 @@
glabel func_800AC300
/* 0ACF00 800AC300 8C8E001C */ lw $t6, 0x1c($a0)
/* 0ACF04 800AC304 8C980020 */ lw $t8, 0x20($a0)
/* 0ACF08 800AC308 25CF0001 */ addiu $t7, $t6, 1
/* 0ACF0C 800AC30C 030F082A */ slt $at, $t8, $t7
/* 0ACF10 800AC310 10200002 */ beqz $at, .L800AC31C
/* 0ACF14 800AC314 AC8F001C */ sw $t7, 0x1c($a0)
/* 0ACF18 800AC318 AC800000 */ sw $zero, ($a0)
.L800AC31C:
/* 0ACF1C 800AC31C 03E00008 */ jr $ra
/* 0ACF20 800AC320 00000000 */ nop

View File

@ -100,9 +100,11 @@ extern Vp D_802B8880[];
extern Gfx D_0D0077A0[];
extern s32 D_800DC50C;
extern u16 D_800DC51C;
extern s32 D_800DC52C;
extern s32 D_800DC50C;
extern s32 D_800DC540;
extern u16 D_800DC5FC;
extern u16 D_8015F890;
@ -112,9 +114,9 @@ extern s32 D_80162DE0;
extern s32 D_80162DE4;
extern s32 D_80162DE8;
extern s32 D_80164A28;
extern f32 D_80164510[];
extern s16* D_80164550;
extern s32 D_80164A28;
extern s16 D_80164AF0;
extern s16 D_80165020[];
@ -160,6 +162,8 @@ extern s16 D_8016557E;
extern s16 D_80165580;
extern s16 D_80165582;
extern s8 D_801657E8;
extern s8 D_801658FE;
extern s32 D_8018D120;

View File

@ -93,7 +93,7 @@ struct UnkStruct_800DC5EC *D_800DC5EC = &D_8015F480[0];
struct UnkStruct_800DC5EC *D_800DC5F0 = &D_8015F480[1];
struct UnkStruct_800DC5EC *D_800DC5F4 = &D_8015F480[2];
struct UnkStruct_800DC5EC *D_800DC5F8 = &D_8015F480[3];
s16 D_800DC5FC = 0;
u16 D_800DC5FC = 0;
u8 *D_800DC600 = &osAppNmiBuffer[0];
s32 gIsMirrorMode = 0;
f32 D_800DC608 = 1.0f;

View File

@ -3824,7 +3824,7 @@ void *func_800987D0(void *arg0, u32 arg1, u32 arg2, u32 arg3, u32 arg4, s32 arg5
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800987D0.s")
#endif
Gfx *func_80098C18(Gfx *displayListHead, s32 ulx, s32 uly, s32 lrx, s32 lry, s32 red, s32 green, u32 blue, s32 alpha) {
Gfx *func_80098C18(Gfx *displayListHead, s32 ulx, s32 uly, s32 lrx, s32 lry, s32 red, s32 green, s32 blue, s32 alpha) {
red &= 0xFF;
green &= 0xFF;
blue &= 0xFF;
@ -3854,7 +3854,7 @@ Gfx *func_80098C18(Gfx *displayListHead, s32 ulx, s32 uly, s32 lrx, s32 lry, s32
lry = 0xEF;
}
gSPDisplayList(displayListHead++, D_02008030);
gDPSetFillColor(displayListHead++, (GPACK_RGBA5551(red, green, blue, alpha) << 0x10 | GPACK_RGBA5551(red, green, blue, alpha)));
gDPSetFillColor(displayListHead++, (GPACK_RGBA5551(red, green, (u32)blue, alpha) << 0x10 | GPACK_RGBA5551(red, green, (u32)blue, alpha)));
gDPFillRectangle(displayListHead++, ulx, uly, lrx, lry);
gSPDisplayList(displayListHead++, D_02008058);
return displayListHead;
@ -11021,41 +11021,24 @@ void func_800A4A24(void *arg0) {
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A4A24.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
? func_800A4BC8(); // extern
? func_800A4EF8(); // extern
? func_800A5084(); // extern
? func_800A5360(); // extern
extern u16 D_800DC5FC;
void func_800A4B38(void) {
s32 temp_v0;
void func_800A4B38(struct_8018D9E0_entry *arg0) {
if (D_800DC5FC != 0) {
temp_v0 = gModeSelection;
if (temp_v0 != GRAND_PRIX) {
if (temp_v0 != TIME_TRIALS) {
if (temp_v0 != VERSUS) {
if (temp_v0 != BATTLE) {
return;
}
func_800A5360();
// Duplicate return node #10. Try simplifying control flow for better match
return;
}
func_800A4EF8();
return;
}
func_800A4BC8();
return;
switch (gModeSelection) {
case TIME_TRIALS:
func_800A4BC8(arg0);
break;
case VERSUS:
func_800A4EF8(arg0);
break;
case GRAND_PRIX:
func_800A5084(arg0);
break;
case BATTLE:
func_800A5360(arg0);
break;
}
func_800A5084();
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A4B38.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
@ -11693,41 +11676,19 @@ block_42:
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A5738.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
? func_80093754(s32, s32, s32, ?, f32, f32); // extern
? set_text_color(s32, void **); // extern
extern s32 D_800DC540;
extern ? D_800E7500;
extern ? D_800E7524;
extern f32 D_800F1F04;
extern f32 D_800F1F08;
extern f32 D_800F1F0C;
extern s8 D_801657E8;
extern void *gDisplayListHead;
void func_800A6034(void *arg0) {
s32 sp2C;
s16 temp_v0;
void *temp_v1;
void func_800A6034(struct_8018D9E0_entry *arg0) {
char *text;
if (D_801657E8 != 1) {
temp_v1 = gDisplayListHead;
gDisplayListHead = temp_v1 + 8;
temp_v1->unk0 = 0xFA000000;
temp_v1->unk4 = arg0->unk1C & 0xFF;
sp2C = *(&D_800E7500 + (D_800DC540 * 4));
gDPSetPrimColor(gDisplayListHead++, 0, 0, 0x00, 0x00, 0x00, arg0->unk1C);
text = D_800E7500[D_800DC540];
set_text_color(TEXT_BLUE_GREEN_RED_CYCLE_2);
func_80093754(arg0->unkC + 0x41, arg0->unk10 + 0xA0, sp2C, 0, D_800F1F04, 1.0f);
temp_v0 = gCurrentCourseId;
sp2C = *(&D_800E7524 + (temp_v0 * 4));
set_text_color(temp_v0 % 4);
func_80093754(arg0->unkC + 0x41, arg0->unk10 + 0xC3, sp2C, 0, D_800F1F08, D_800F1F0C);
func_80093754(arg0->column + 0x41, arg0->row + 0xA0, text, 0, D_800F1F04, 1.0f);
text = D_800E7524[gCurrentCourseId];
set_text_color((s32) gCurrentCourseId % 4);
func_80093754(arg0->column + 0x41, arg0->row + 0xC3, text, 0, D_800F1F08, D_800F1F0C);
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A6034.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
@ -14803,56 +14764,38 @@ loop_3:
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800AAEB4.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
extern s32 D_8018D9E0;
extern ? D_8018DEE0;
s32 *func_800AAEF4(s32 arg0) {
s32 *temp_v1;
s32 *phi_v1;
phi_v1 = &D_8018D9E0;
loop_1:
if (arg0 != *phi_v1) {
temp_v1 = phi_v1 + 0x28;
phi_v1 = temp_v1;
if (&D_8018DEE0 < temp_v1) {
loop_3:
goto loop_3;
struct_8018D9E0_entry *func_800AAEF4(s32 arg0) {
struct_8018D9E0_entry *entry = D_8018D9E0;
for (; !(entry > (&D_8018D9E0[D_8018D9E0_SIZE])); entry++) {
if (entry->type == arg0) {
goto escape;
}
goto loop_1;
}
return phi_v1;
// I don't know why they'd want a function that could potentially hard lock the game...
while(1);
escape:
return entry;
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800AAEF4.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
extern s32 D_8018D9E0;
extern ? D_8018DEE0;
s32 *func_800AAF30(s32 arg0) {
s32 *temp_v1;
s32 *phi_v1;
phi_v1 = &D_8018D9E0;
loop_1:
if (arg0 != *phi_v1) {
temp_v1 = phi_v1 + 0x28;
phi_v1 = temp_v1;
if (&D_8018DEE0 < temp_v1) {
return NULL;
struct_8018D9E0_entry *func_800AAF30(s32 arg0) {
struct_8018D9E0_entry *entry = D_8018D9E0;
for (; !(entry > (&D_8018D9E0[D_8018D9E0_SIZE])); entry++) {
if (entry->type == arg0) {
goto escape;
}
goto loop_1;
}
return phi_v1;
return NULL;
escape:
return entry;
}
s32 func_800AAF70(s32 arg0) {
struct_8018D9E0_entry *temp;
temp = func_800AAEB4(arg0);
return temp->unk4;
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800AAF30.s")
#endif
void func_800AAF94(struct_8018D9E0_entry *arg0, s32 arg1) {
struct_8018D9E0_entry *temp_v0;
@ -15616,20 +15559,11 @@ block_5:
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800ABF68.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
void func_800AC300(void *arg0) {
s32 temp_t7;
temp_t7 = arg0->unk1C + 1;
arg0->unk1C = temp_t7;
if (arg0->unk20 < temp_t7) {
arg0->unk0 = 0;
void func_800AC300(struct_8018D9E0_entry *arg0) {
if (arg0->unk20 < ++arg0->unk1C) {
arg0->type = 0;
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800AC300.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307

View File

@ -48,7 +48,7 @@ void func_800947B4(struct GfxPool*, s32);
void func_80094A64(Mtx*);
void func_80094C60();
void func_80095574();
Gfx *func_80098C18(Gfx*, s32, s32, s32, s32, s32, s32, u32, s32);
Gfx *func_80098C18(Gfx*, s32, s32, s32, s32, s32, s32, s32, s32);
Gfx *draw_box(Gfx*, s32, s32, s32, s32, s32, s32, s32, s32);
Gfx *func_80098FC8(Gfx*, s32, s32, s32, s32);
void func_80099110();
@ -62,14 +62,12 @@ void func_80099AEC();
void func_80099E54();
void func_80099E60(Mk64_Texture *, s32, s32);
void func_80099EC4();
void func_80099A70();
void func_8009A594(s32, s32, segment_address_t);
void func_8009A640(s32, s32, s32, segment_address_t);
void func_80099A70();
segment_address_t func_8009A878(struct_8018DEE0_entry*);
void func_800A54EC();
void func_8009A76C(s32, s32, s32, s32);
void func_8009A7EC(s32, s32, s32, s32, s32);
void func_800A8250();
segment_address_t func_8009A878(struct_8018DEE0_entry*);
void func_8009A944(struct_8018DEE0_entry*, s32);
Gfx *func_8009BA74(Gfx *, Mk64_Texture*, s32, s32);
s32 func_8009C434(s32, struct_8018DEE0_entry*, s32, s32, s32);
@ -81,6 +79,13 @@ void func_8009E258();
void func_800A0AD0(struct_8018D9E0_entry*);
void func_800A11D0(struct_8018D9E0_entry*, s32, s32);
void func_800A1924(struct_8018D9E0_entry*);
void func_800A4B38(struct_8018D9E0_entry*);
void func_800A4BC8(struct_8018D9E0_entry*);
void func_800A4EF8(struct_8018D9E0_entry*);
void func_800A5084(struct_8018D9E0_entry*);
void func_800A5360(struct_8018D9E0_entry*);
void func_800A54EC();
void func_800A6034(struct_8018D9E0_entry*);
void func_800A7258(struct_8018D9E0_entry*);
void func_800A72FC(struct_8018D9E0_entry*);
void func_800A7448(struct_8018D9E0_entry*);
@ -91,6 +96,7 @@ void get_time_record_minutes(s32, char*);
void get_time_record_seconds(s32 , char*);
void get_time_record_centiseconds(s32, char*);
void func_800A8230();
void func_800A8250();
void func_800A86E8(struct_8018D9E0_entry*);
void func_800A8E14(struct_8018D9E0_entry*);
void func_800A8EC0(struct_8018D9E0_entry*);
@ -99,11 +105,19 @@ void func_800AADD4(struct_8018D9E0_entry*);
void func_800AAE18(struct_8018D9E0_entry*);
struct_8018D9E0_entry *func_800AAEB4(s32);
struct_8018D9E0_entry *func_800AAEF4(s32);
struct_8018D9E0_entry *func_800AAF30(s32);
s32 func_800AAF70(s32);
void func_800AAF94(struct_8018D9E0_entry*, s32);
// code_80057C60.c
void func_80057CE4();
/* File specific defines */
#define D_8018D9E0_SIZE 0x20
#define D_8018DEE0_SIZE 0x10
#define D_8018E118_SIZE 0xC8
/* This is where I'd put my static data, if I had any */
extern Mk64_Texture D_0200157C;
@ -127,6 +141,7 @@ extern Gfx D_06009410[];
extern s16 gGlyphDisplayWidth[]; // D_800EF690
extern RGBA16 D_800E74A8[5];
extern char *D_800E7500[9];
extern char *D_800E7524[];
extern char *D_800E7678[];
extern char *D_800E76CC[4];
extern char *D_800E76DC[4];
@ -141,6 +156,9 @@ extern Mk64_Texture_Group *D_800E82B4[5];
extern f32 D_800E8530;
extern f32 D_800E8534;
extern s8 D_800E86D0[20];
extern f32 D_800F1F04;
extern f32 D_800F1F08;
extern f32 D_800F1F0C;
extern f32 D_800F1F30;
extern f32 D_800F24A8;
extern f32 D_800F24AC;
@ -150,9 +168,9 @@ extern f32 D_800F24B8;
extern f64 D_800F24C0;
extern s32 D_80165754;
extern s8 D_8018D9D9;
extern struct_8018D9E0_entry D_8018D9E0[32]; // D_8018D9E0
extern struct_8018DEE0_entry D_8018DEE0[16]; // D_8018DEE0
extern struct_8018E118_entry D_8018E118[200]; // D_8018E118
extern struct_8018D9E0_entry D_8018D9E0[D_8018D9E0_SIZE]; // D_8018D9E0
extern struct_8018DEE0_entry D_8018DEE0[D_8018DEE0_SIZE]; // D_8018DEE0
extern struct_8018E118_entry D_8018E118[D_8018E118_SIZE]; // D_8018E118
extern s8 gTextColor; // D_8018E860
extern s8 D_8018ED91;
extern s32 D_8018E850;