diff --git a/asm/non_matchings/code_80091750/func_8009F5E0.s b/asm/non_matchings/code_80091750/func_8009F5E0.s index ff52c1fba..294f1bf0f 100644 --- a/asm/non_matchings/code_80091750/func_8009F5E0.s +++ b/asm/non_matchings/code_80091750/func_8009F5E0.s @@ -300,7 +300,7 @@ glabel L8009F904 /* 0A0634 8009FA34 27B00080 */ addiu $s0, $sp, 0x80 .L8009FA38: /* 0A0638 8009FA38 02002825 */ move $a1, $s0 -/* 0A063C 8009FA3C 0C029E3D */ jal func_800A78F4 +/* 0A063C 8009FA3C 0C029E3D */ jal get_time_record_minutes /* 0A0640 8009FA40 02202025 */ move $a0, $s1 /* 0A0644 8009FA44 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0A0648 8009FA48 44810000 */ mtc1 $at, $f0 @@ -322,7 +322,7 @@ glabel L8009F904 /* 0A0688 8009FA88 0C024CC9 */ jal func_80093324 /* 0A068C 8009FA8C E7A00014 */ swc1 $f0, 0x14($sp) /* 0A0690 8009FA90 02202025 */ move $a0, $s1 -/* 0A0694 8009FA94 0C029E51 */ jal func_800A7944 +/* 0A0694 8009FA94 0C029E51 */ jal get_time_record_seconds /* 0A0698 8009FA98 02002825 */ move $a1, $s0 /* 0A069C 8009FA9C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0A06A0 8009FAA0 44810000 */ mtc1 $at, $f0 @@ -344,7 +344,7 @@ glabel L8009F904 /* 0A06E0 8009FAE0 0C024CC9 */ jal func_80093324 /* 0A06E4 8009FAE4 E7A00014 */ swc1 $f0, 0x14($sp) /* 0A06E8 8009FAE8 02202025 */ move $a0, $s1 -/* 0A06EC 8009FAEC 0C029E69 */ jal func_800A79A4 +/* 0A06EC 8009FAEC 0C029E69 */ jal get_time_record_centiseconds /* 0A06F0 8009FAF0 02002825 */ move $a1, $s0 /* 0A06F4 8009FAF4 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0A06F8 8009FAF8 44819000 */ mtc1 $at, $f18 diff --git a/asm/non_matchings/code_80091750/func_800A1FB0.s b/asm/non_matchings/code_80091750/func_800A1FB0.s index f8b9229e4..31138fe1a 100644 --- a/asm/non_matchings/code_80091750/func_800A1FB0.s +++ b/asm/non_matchings/code_80091750/func_800A1FB0.s @@ -399,7 +399,7 @@ glabel L800A23DC /* 0A3174 800A2574 26110001 */ addiu $s1, $s0, 1 .L800A2578: /* 0A3178 800A2578 02202025 */ move $a0, $s1 -/* 0A317C 800A257C 0C029E25 */ jal func_800A7894 +/* 0A317C 800A257C 0C029E25 */ jal convert_number_to_ascii /* 0A3180 800A2580 27A500B8 */ addiu $a1, $sp, 0xb8 /* 0A3184 800A2584 02C02025 */ move $a0, $s6 /* 0A3188 800A2588 02402825 */ move $a1, $s2 @@ -592,7 +592,7 @@ glabel L800A26A8 /* 0A3430 800A2830 26110001 */ addiu $s1, $s0, 1 .L800A2834: /* 0A3434 800A2834 02202025 */ move $a0, $s1 -/* 0A3438 800A2838 0C029E25 */ jal func_800A7894 +/* 0A3438 800A2838 0C029E25 */ jal convert_number_to_ascii /* 0A343C 800A283C 02A02825 */ move $a1, $s5 /* 0A3440 800A2840 02C02025 */ move $a0, $s6 /* 0A3444 800A2844 02402825 */ move $a1, $s2 @@ -810,7 +810,7 @@ glabel L800A29D0 /* 0A374C 800A2B4C 26110001 */ addiu $s1, $s0, 1 .L800A2B50: /* 0A3750 800A2B50 02202025 */ move $a0, $s1 -/* 0A3754 800A2B54 0C029E25 */ jal func_800A7894 +/* 0A3754 800A2B54 0C029E25 */ jal convert_number_to_ascii /* 0A3758 800A2B58 27A50098 */ addiu $a1, $sp, 0x98 /* 0A375C 800A2B5C 02C02025 */ move $a0, $s6 /* 0A3760 800A2B60 02402825 */ move $a1, $s2 diff --git a/asm/non_matchings/code_80091750/func_800A2EB8.s b/asm/non_matchings/code_80091750/func_800A2EB8.s index 044d9d30a..09e43bd65 100644 --- a/asm/non_matchings/code_80091750/func_800A2EB8.s +++ b/asm/non_matchings/code_80091750/func_800A2EB8.s @@ -61,7 +61,7 @@ glabel func_800A2EB8 /* 0A3BA0 800A2FA0 3C048019 */ lui $a0, %hi(gCourseSelection) # $a0, 0x8019 /* 0A3BA4 800A2FA4 8084EE0B */ lb $a0, %lo(gCourseSelection)($a0) /* 0A3BA8 800A2FA8 27A50068 */ addiu $a1, $sp, 0x68 -/* 0A3BAC 800A2FAC 0C029E25 */ jal func_800A7894 +/* 0A3BAC 800A2FAC 0C029E25 */ jal convert_number_to_ascii /* 0A3BB0 800A2FB0 24840001 */ addiu $a0, $a0, 1 /* 0A3BB4 800A2FB4 3C01800F */ lui $at, %hi(D_800F1C94) # $at, 0x800f /* 0A3BB8 800A2FB8 C4201C94 */ lwc1 $f0, %lo(D_800F1C94)($at) diff --git a/asm/non_matchings/code_80091750/func_800A32B4.s b/asm/non_matchings/code_80091750/func_800A32B4.s index a875410ff..6cac6047a 100644 --- a/asm/non_matchings/code_80091750/func_800A32B4.s +++ b/asm/non_matchings/code_80091750/func_800A32B4.s @@ -19,7 +19,7 @@ glabel func_800A32B4 /* 0A3EF8 800A32F8 AFA60060 */ sw $a2, 0x60($sp) /* 0A3EFC 800A32FC 02402825 */ move $a1, $s2 /* 0A3F00 800A3300 24E40001 */ addiu $a0, $a3, 1 -/* 0A3F04 800A3304 0C029E25 */ jal func_800A7894 +/* 0A3F04 800A3304 0C029E25 */ jal convert_number_to_ascii /* 0A3F08 800A3308 E7A40050 */ swc1 $f4, 0x50($sp) /* 0A3F0C 800A330C 3C01800F */ lui $at, %hi(D_800F1CA4) # $at, 0x800f /* 0A3F10 800A3310 C4341CA4 */ lwc1 $f20, %lo(D_800F1CA4)($at) @@ -53,7 +53,7 @@ glabel func_800A32B4 /* 0A3F80 800A3380 460A4403 */ div.s $f16, $f8, $f10 /* 0A3F84 800A3384 4600848D */ trunc.w.s $f18, $f16 /* 0A3F88 800A3388 44049000 */ mfc1 $a0, $f18 -/* 0A3F8C 800A338C 0C029E25 */ jal func_800A7894 +/* 0A3F8C 800A338C 0C029E25 */ jal convert_number_to_ascii /* 0A3F90 800A3390 00000000 */ nop /* 0A3F94 800A3394 26040042 */ addiu $a0, $s0, 0x42 /* 0A3F98 800A3398 02202825 */ move $a1, $s1 @@ -70,7 +70,7 @@ glabel func_800A32B4 /* 0A3FC4 800A33C4 00000000 */ nop /* 0A3FC8 800A33C8 0081001A */ div $zero, $a0, $at /* 0A3FCC 800A33CC 00002010 */ mfhi $a0 -/* 0A3FD0 800A33D0 0C029E25 */ jal func_800A7894 +/* 0A3FD0 800A33D0 0C029E25 */ jal convert_number_to_ascii /* 0A3FD4 800A33D4 00000000 */ nop /* 0A3FD8 800A33D8 3C06800F */ lui $a2, %hi(D_800F0C2C) # $a2, 0x800f /* 0A3FDC 800A33DC 24C60C2C */ addiu $a2, %lo(D_800F0C2C) # addiu $a2, $a2, 0xc2c @@ -100,7 +100,7 @@ glabel func_800A32B4 /* 0A403C 800A343C 00000000 */ nop /* 0A4040 800A3440 0081001A */ div $zero, $a0, $at /* 0A4044 800A3444 00002010 */ mfhi $a0 -/* 0A4048 800A3448 0C029E25 */ jal func_800A7894 +/* 0A4048 800A3448 0C029E25 */ jal convert_number_to_ascii /* 0A404C 800A344C 00000000 */ nop /* 0A4050 800A3450 3C06800F */ lui $a2, %hi(D_800F0C30) # $a2, 0x800f /* 0A4054 800A3454 24C60C30 */ addiu $a2, %lo(D_800F0C30) # addiu $a2, $a2, 0xc30 diff --git a/asm/non_matchings/code_80091750/func_800A34A8.s b/asm/non_matchings/code_80091750/func_800A34A8.s index e80a07364..3ae915358 100644 --- a/asm/non_matchings/code_80091750/func_800A34A8.s +++ b/asm/non_matchings/code_80091750/func_800A34A8.s @@ -93,7 +93,7 @@ glabel func_800A34A8 /* 0A4208 800A3608 3C048019 */ lui $a0, %hi(gCourseSelection) # $a0, 0x8019 /* 0A420C 800A360C 8084EE0B */ lb $a0, %lo(gCourseSelection)($a0) /* 0A4210 800A3610 27A50078 */ addiu $a1, $sp, 0x78 -/* 0A4214 800A3614 0C029E25 */ jal func_800A7894 +/* 0A4214 800A3614 0C029E25 */ jal convert_number_to_ascii /* 0A4218 800A3618 24840001 */ addiu $a0, $a0, 1 /* 0A421C 800A361C 3C01800F */ lui $at, %hi(D_800F1CB4) # $at, 0x800f /* 0A4220 800A3620 C4201CB4 */ lwc1 $f0, %lo(D_800F1CB4)($at) diff --git a/asm/non_matchings/code_80091750/func_800A3ADC.s b/asm/non_matchings/code_80091750/func_800A3ADC.s index 87b78f9d1..8b1e509b3 100644 --- a/asm/non_matchings/code_80091750/func_800A3ADC.s +++ b/asm/non_matchings/code_80091750/func_800A3ADC.s @@ -13,7 +13,7 @@ glabel func_800A3ADC /* 0A4708 800A3B08 10200006 */ beqz $at, .L800A3B24 /* 0A470C 800A3B0C 27A50034 */ addiu $a1, $sp, 0x34 /* 0A4710 800A3B10 24840001 */ addiu $a0, $a0, 1 -/* 0A4714 800A3B14 0C029E25 */ jal func_800A7894 +/* 0A4714 800A3B14 0C029E25 */ jal convert_number_to_ascii /* 0A4718 800A3B18 27A50034 */ addiu $a1, $sp, 0x34 /* 0A471C 800A3B1C 10000014 */ b .L800A3B70 /* 0A4720 800A3B20 00000000 */ nop @@ -37,7 +37,7 @@ glabel func_800A3ADC /* 0A4760 800A3B60 1460FFF6 */ bnez $v1, .L800A3B3C /* 0A4764 800A3B64 2442FFFF */ addiu $v0, $v0, -1 .L800A3B68: -/* 0A4768 800A3B68 0C029E25 */ jal func_800A7894 +/* 0A4768 800A3B68 0C029E25 */ jal convert_number_to_ascii /* 0A476C 800A3B6C 24640001 */ addiu $a0, $v1, 1 .L800A3B70: /* 0A4770 800A3B70 3C01800F */ lui $at, %hi(D_800F1CC4) # $at, 0x800f @@ -69,7 +69,7 @@ glabel func_800A3ADC /* 0A47D8 800A3BD8 2508D9C8 */ addiu $t0, %lo(gGPCharacterPoints) # addiu $t0, $t0, -0x2638 /* 0A47DC 800A3BDC 01095021 */ addu $t2, $t0, $t1 /* 0A47E0 800A3BE0 81440000 */ lb $a0, ($t2) -/* 0A47E4 800A3BE4 0C029E25 */ jal func_800A7894 +/* 0A47E4 800A3BE4 0C029E25 */ jal convert_number_to_ascii /* 0A47E8 800A3BE8 27A50034 */ addiu $a1, $sp, 0x34 /* 0A47EC 800A3BEC 8FA40044 */ lw $a0, 0x44($sp) /* 0A47F0 800A3BF0 8FA50048 */ lw $a1, 0x48($sp) @@ -92,7 +92,7 @@ glabel func_800A3ADC /* 0A4834 800A3C34 8D6BD9BC */ lw $t3, %lo(D_8018D9BC)($t3) /* 0A4838 800A3C38 27A50034 */ addiu $a1, $sp, 0x34 /* 0A483C 800A3C3C 01627021 */ addu $t6, $t3, $v0 -/* 0A4840 800A3C40 0C029E25 */ jal func_800A7894 +/* 0A4840 800A3C40 0C029E25 */ jal convert_number_to_ascii /* 0A4844 800A3C44 91C40000 */ lbu $a0, ($t6) /* 0A4848 800A3C48 8FA40044 */ lw $a0, 0x44($sp) /* 0A484C 800A3C4C 240F002B */ li $t7, 43 diff --git a/asm/non_matchings/code_80091750/func_800A3E60.s b/asm/non_matchings/code_80091750/func_800A3E60.s index 43b06df0e..2506fbc5b 100644 --- a/asm/non_matchings/code_80091750/func_800A3E60.s +++ b/asm/non_matchings/code_80091750/func_800A3E60.s @@ -226,7 +226,7 @@ glabel L800A412C /* 0A4DAC 800A41AC 2484FFEF */ addiu $a0, $a0, -0x11 /* 0A4DB0 800A41B0 26240001 */ addiu $a0, $s1, 1 /* 0A4DB4 800A41B4 AFA40054 */ sw $a0, 0x54($sp) -/* 0A4DB8 800A41B8 0C029E25 */ jal func_800A7894 +/* 0A4DB8 800A41B8 0C029E25 */ jal convert_number_to_ascii /* 0A4DBC 800A41BC 27A50060 */ addiu $a1, $sp, 0x60 /* 0A4DC0 800A41C0 8E6E000C */ lw $t6, 0xc($s3) /* 0A4DC4 800A41C4 241800B1 */ li $t8, 177 diff --git a/asm/non_matchings/code_80091750/func_800A4550.s b/asm/non_matchings/code_80091750/func_800A4550.s index 855ba353d..5e2acf576 100644 --- a/asm/non_matchings/code_80091750/func_800A4550.s +++ b/asm/non_matchings/code_80091750/func_800A4550.s @@ -76,7 +76,7 @@ glabel func_800A4550 /* 0A5264 800A4664 0C024C36 */ jal set_text_color /* 0A5268 800A4668 00000000 */ nop /* 0A526C 800A466C 8FA40040 */ lw $a0, 0x40($sp) -/* 0A5270 800A4670 0C029E3D */ jal func_800A78F4 +/* 0A5270 800A4670 0C029E3D */ jal get_time_record_minutes /* 0A5274 800A4674 27A50034 */ addiu $a1, $sp, 0x34 /* 0A5278 800A4678 8FA4004C */ lw $a0, 0x4c($sp) /* 0A527C 800A467C 8FA50050 */ lw $a1, 0x50($sp) @@ -96,7 +96,7 @@ glabel func_800A4550 /* 0A52B4 800A46B4 0C024CC9 */ jal func_80093324 /* 0A52B8 800A46B8 24840037 */ addiu $a0, $a0, 0x37 /* 0A52BC 800A46BC 8FA40040 */ lw $a0, 0x40($sp) -/* 0A52C0 800A46C0 0C029E51 */ jal func_800A7944 +/* 0A52C0 800A46C0 0C029E51 */ jal get_time_record_seconds /* 0A52C4 800A46C4 27A50034 */ addiu $a1, $sp, 0x34 /* 0A52C8 800A46C8 8FA4004C */ lw $a0, 0x4c($sp) /* 0A52CC 800A46CC 8FA50050 */ lw $a1, 0x50($sp) @@ -116,7 +116,7 @@ glabel func_800A4550 /* 0A5304 800A4704 0C024CC9 */ jal func_80093324 /* 0A5308 800A4708 2484004B */ addiu $a0, $a0, 0x4b /* 0A530C 800A470C 8FA40040 */ lw $a0, 0x40($sp) -/* 0A5310 800A4710 0C029E69 */ jal func_800A79A4 +/* 0A5310 800A4710 0C029E69 */ jal get_time_record_centiseconds /* 0A5314 800A4714 27A50034 */ addiu $a1, $sp, 0x34 /* 0A5318 800A4718 8FA4004C */ lw $a0, 0x4c($sp) /* 0A531C 800A471C 8FA50050 */ lw $a1, 0x50($sp) diff --git a/asm/non_matchings/code_80091750/func_800A474C.s b/asm/non_matchings/code_80091750/func_800A474C.s index fc9359e3d..c3d979710 100644 --- a/asm/non_matchings/code_80091750/func_800A474C.s +++ b/asm/non_matchings/code_80091750/func_800A474C.s @@ -118,7 +118,7 @@ glabel func_800A474C /* 0A54E8 800A48E8 00814024 */ and $t0, $a0, $at /* 0A54EC 800A48EC 01002025 */ move $a0, $t0 /* 0A54F0 800A48F0 AFA8002C */ sw $t0, 0x2c($sp) -/* 0A54F4 800A48F4 0C029E3D */ jal func_800A78F4 +/* 0A54F4 800A48F4 0C029E3D */ jal get_time_record_minutes /* 0A54F8 800A48F8 27A50038 */ addiu $a1, $sp, 0x38 /* 0A54FC 800A48FC 8FA40054 */ lw $a0, 0x54($sp) /* 0A5500 800A4900 8FA50058 */ lw $a1, 0x58($sp) @@ -138,7 +138,7 @@ glabel func_800A474C /* 0A5538 800A4938 0C024CC9 */ jal func_80093324 /* 0A553C 800A493C 24840032 */ addiu $a0, $a0, 0x32 /* 0A5540 800A4940 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A5544 800A4944 0C029E51 */ jal func_800A7944 +/* 0A5544 800A4944 0C029E51 */ jal get_time_record_seconds /* 0A5548 800A4948 27A50038 */ addiu $a1, $sp, 0x38 /* 0A554C 800A494C 8FA40054 */ lw $a0, 0x54($sp) /* 0A5550 800A4950 8FA50058 */ lw $a1, 0x58($sp) @@ -158,7 +158,7 @@ glabel func_800A474C /* 0A5588 800A4988 0C024CC9 */ jal func_80093324 /* 0A558C 800A498C 24840046 */ addiu $a0, $a0, 0x46 /* 0A5590 800A4990 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A5594 800A4994 0C029E69 */ jal func_800A79A4 +/* 0A5594 800A4994 0C029E69 */ jal get_time_record_centiseconds /* 0A5598 800A4998 27A50038 */ addiu $a1, $sp, 0x38 /* 0A559C 800A499C 8FA40054 */ lw $a0, 0x54($sp) /* 0A55A0 800A49A0 8FA50058 */ lw $a1, 0x58($sp) diff --git a/asm/non_matchings/code_80091750/func_800A4BC8.s b/asm/non_matchings/code_80091750/func_800A4BC8.s index 6871a0f81..34a220cc8 100644 --- a/asm/non_matchings/code_80091750/func_800A4BC8.s +++ b/asm/non_matchings/code_80091750/func_800A4BC8.s @@ -67,7 +67,7 @@ glabel func_800A4BC8 /* 0A58CC 800A4CCC 27B00068 */ addiu $s0, $sp, 0x68 /* 0A58D0 800A4CD0 00532024 */ and $a0, $v0, $s3 /* 0A58D4 800A4CD4 00808825 */ move $s1, $a0 -/* 0A58D8 800A4CD8 0C029E3D */ jal func_800A78F4 +/* 0A58D8 800A4CD8 0C029E3D */ jal get_time_record_minutes /* 0A58DC 800A4CDC 02002825 */ move $a1, $s0 /* 0A58E0 800A4CE0 2404007F */ li $a0, 127 /* 0A58E4 800A4CE4 2405006D */ li $a1, 109 @@ -85,7 +85,7 @@ glabel func_800A4BC8 /* 0A5914 800A4D14 0C024CC9 */ jal func_80093324 /* 0A5918 800A4D18 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A591C 800A4D1C 02202025 */ move $a0, $s1 -/* 0A5920 800A4D20 0C029E51 */ jal func_800A7944 +/* 0A5920 800A4D20 0C029E51 */ jal get_time_record_seconds /* 0A5924 800A4D24 02002825 */ move $a1, $s0 /* 0A5928 800A4D28 24040098 */ li $a0, 152 /* 0A592C 800A4D2C 2405006D */ li $a1, 109 @@ -103,7 +103,7 @@ glabel func_800A4BC8 /* 0A595C 800A4D5C 0C024CC9 */ jal func_80093324 /* 0A5960 800A4D60 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A5964 800A4D64 02202025 */ move $a0, $s1 -/* 0A5968 800A4D68 0C029E69 */ jal func_800A79A4 +/* 0A5968 800A4D68 0C029E69 */ jal get_time_record_centiseconds /* 0A596C 800A4D6C 02002825 */ move $a1, $s0 /* 0A5970 800A4D70 240400B3 */ li $a0, 179 /* 0A5974 800A4D74 2405006D */ li $a1, 109 @@ -123,7 +123,7 @@ glabel func_800A4BC8 /* 0A59AC 800A4DAC 00000000 */ nop /* 0A59B0 800A4DB0 00532024 */ and $a0, $v0, $s3 /* 0A59B4 800A4DB4 00808825 */ move $s1, $a0 -/* 0A59B8 800A4DB8 0C029E3D */ jal func_800A78F4 +/* 0A59B8 800A4DB8 0C029E3D */ jal get_time_record_minutes /* 0A59BC 800A4DBC 02002825 */ move $a1, $s0 /* 0A59C0 800A4DC0 2404007F */ li $a0, 127 /* 0A59C4 800A4DC4 24050089 */ li $a1, 137 @@ -141,7 +141,7 @@ glabel func_800A4BC8 /* 0A59F4 800A4DF4 0C024CC9 */ jal func_80093324 /* 0A59F8 800A4DF8 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A59FC 800A4DFC 02202025 */ move $a0, $s1 -/* 0A5A00 800A4E00 0C029E51 */ jal func_800A7944 +/* 0A5A00 800A4E00 0C029E51 */ jal get_time_record_seconds /* 0A5A04 800A4E04 02002825 */ move $a1, $s0 /* 0A5A08 800A4E08 24040098 */ li $a0, 152 /* 0A5A0C 800A4E0C 24050089 */ li $a1, 137 @@ -159,7 +159,7 @@ glabel func_800A4BC8 /* 0A5A3C 800A4E3C 0C024CC9 */ jal func_80093324 /* 0A5A40 800A4E40 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A5A44 800A4E44 02202025 */ move $a0, $s1 -/* 0A5A48 800A4E48 0C029E69 */ jal func_800A79A4 +/* 0A5A48 800A4E48 0C029E69 */ jal get_time_record_centiseconds /* 0A5A4C 800A4E4C 02002825 */ move $a1, $s0 /* 0A5A50 800A4E50 240400B3 */ li $a0, 179 /* 0A5A54 800A4E54 24050089 */ li $a1, 137 diff --git a/asm/non_matchings/code_80091750/func_800A5738.s b/asm/non_matchings/code_80091750/func_800A5738.s index f72bd3256..2c4b77c26 100644 --- a/asm/non_matchings/code_80091750/func_800A5738.s +++ b/asm/non_matchings/code_80091750/func_800A5738.s @@ -155,7 +155,7 @@ glabel L800A5940 /* 0A6584 800A5984 27B00084 */ addiu $s0, $sp, 0x84 /* 0A6588 800A5988 00412024 */ and $a0, $v0, $at /* 0A658C 800A598C 00808825 */ move $s1, $a0 -/* 0A6590 800A5990 0C029E3D */ jal func_800A78F4 +/* 0A6590 800A5990 0C029E3D */ jal get_time_record_minutes /* 0A6594 800A5994 02002825 */ move $a1, $s0 /* 0A6598 800A5998 2404007F */ li $a0, 127 /* 0A659C 800A599C 2405006D */ li $a1, 109 @@ -173,7 +173,7 @@ glabel L800A5940 /* 0A65CC 800A59CC 0C024CD6 */ jal func_80093358 /* 0A65D0 800A59D0 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A65D4 800A59D4 02202025 */ move $a0, $s1 -/* 0A65D8 800A59D8 0C029E51 */ jal func_800A7944 +/* 0A65D8 800A59D8 0C029E51 */ jal get_time_record_seconds /* 0A65DC 800A59DC 02002825 */ move $a1, $s0 /* 0A65E0 800A59E0 24040098 */ li $a0, 152 /* 0A65E4 800A59E4 2405006D */ li $a1, 109 @@ -191,7 +191,7 @@ glabel L800A5940 /* 0A6614 800A5A14 0C024CD6 */ jal func_80093358 /* 0A6618 800A5A18 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A661C 800A5A1C 02202025 */ move $a0, $s1 -/* 0A6620 800A5A20 0C029E69 */ jal func_800A79A4 +/* 0A6620 800A5A20 0C029E69 */ jal get_time_record_centiseconds /* 0A6624 800A5A24 02002825 */ move $a1, $s0 /* 0A6628 800A5A28 240400B3 */ li $a0, 179 /* 0A662C 800A5A2C 2405006D */ li $a1, 109 @@ -213,7 +213,7 @@ glabel L800A5940 /* 0A666C 800A5A6C 3421FFFF */ ori $at, (0x000FFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 0A6670 800A5A70 00412024 */ and $a0, $v0, $at /* 0A6674 800A5A74 00808825 */ move $s1, $a0 -/* 0A6678 800A5A78 0C029E3D */ jal func_800A78F4 +/* 0A6678 800A5A78 0C029E3D */ jal get_time_record_minutes /* 0A667C 800A5A7C 02002825 */ move $a1, $s0 /* 0A6680 800A5A80 2404007F */ li $a0, 127 /* 0A6684 800A5A84 24050089 */ li $a1, 137 @@ -231,7 +231,7 @@ glabel L800A5940 /* 0A66B4 800A5AB4 0C024CD6 */ jal func_80093358 /* 0A66B8 800A5AB8 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A66BC 800A5ABC 02202025 */ move $a0, $s1 -/* 0A66C0 800A5AC0 0C029E51 */ jal func_800A7944 +/* 0A66C0 800A5AC0 0C029E51 */ jal get_time_record_seconds /* 0A66C4 800A5AC4 02002825 */ move $a1, $s0 /* 0A66C8 800A5AC8 24040098 */ li $a0, 152 /* 0A66CC 800A5ACC 24050089 */ li $a1, 137 @@ -249,7 +249,7 @@ glabel L800A5940 /* 0A66FC 800A5AFC 0C024CD6 */ jal func_80093358 /* 0A6700 800A5B00 E7B40014 */ swc1 $f20, 0x14($sp) /* 0A6704 800A5B04 02202025 */ move $a0, $s1 -/* 0A6708 800A5B08 0C029E69 */ jal func_800A79A4 +/* 0A6708 800A5B08 0C029E69 */ jal get_time_record_centiseconds /* 0A670C 800A5B0C 02002825 */ move $a1, $s0 /* 0A6710 800A5B10 240400B3 */ li $a0, 179 /* 0A6714 800A5B14 24050089 */ li $a1, 137 @@ -361,7 +361,7 @@ glabel L800A5C18 /* 0A68A4 800A5CA4 2484FFE2 */ addiu $a0, $a0, -0x1e /* 0A68A8 800A5CA8 26240001 */ addiu $a0, $s1, 1 /* 0A68AC 800A5CAC AFA40054 */ sw $a0, 0x54($sp) -/* 0A68B0 800A5CB0 0C029E25 */ jal func_800A7894 +/* 0A68B0 800A5CB0 0C029E25 */ jal convert_number_to_ascii /* 0A68B4 800A5CB4 27A5005C */ addiu $a1, $sp, 0x5c /* 0A68B8 800A5CB8 8E69000C */ lw $t1, 0xc($s3) /* 0A68BC 800A5CBC 240A005A */ li $t2, 90 diff --git a/asm/non_matchings/code_80091750/func_800A6E94.s b/asm/non_matchings/code_80091750/func_800A6E94.s index e47228758..3111c203c 100644 --- a/asm/non_matchings/code_80091750/func_800A6E94.s +++ b/asm/non_matchings/code_80091750/func_800A6E94.s @@ -53,7 +53,7 @@ glabel func_800A6E94 /* 0A7B58 800A6F58 0338C823 */ subu $t9, $t9, $t8 /* 0A7B5C 800A6F5C 03281021 */ addu $v0, $t9, $t0 /* 0A7B60 800A6F60 90440000 */ lbu $a0, ($v0) -/* 0A7B64 800A6F64 0C029E25 */ jal func_800A7894 +/* 0A7B64 800A6F64 0C029E25 */ jal convert_number_to_ascii /* 0A7B68 800A6F68 AFA20030 */ sw $v0, 0x30($sp) /* 0A7B6C 800A6F6C 86040000 */ lh $a0, ($s0) /* 0A7B70 800A6F70 86050002 */ lh $a1, 2($s0) @@ -97,7 +97,7 @@ glabel func_800A6E94 /* 0A7C00 800A7000 24A50069 */ addiu $a1, $a1, 0x69 /* 0A7C04 800A7004 8FAA0030 */ lw $t2, 0x30($sp) /* 0A7C08 800A7008 27A50040 */ addiu $a1, $sp, 0x40 -/* 0A7C0C 800A700C 0C029E25 */ jal func_800A7894 +/* 0A7C0C 800A700C 0C029E25 */ jal convert_number_to_ascii /* 0A7C10 800A7010 91440001 */ lbu $a0, 1($t2) /* 0A7C14 800A7014 86040000 */ lh $a0, ($s0) /* 0A7C18 800A7018 86050002 */ lh $a1, 2($s0) @@ -138,7 +138,7 @@ glabel func_800A6E94 /* 0A7C9C 800A709C 24A50078 */ addiu $a1, $a1, 0x78 /* 0A7CA0 800A70A0 8FAE0030 */ lw $t6, 0x30($sp) /* 0A7CA4 800A70A4 27A50040 */ addiu $a1, $sp, 0x40 -/* 0A7CA8 800A70A8 0C029E25 */ jal func_800A7894 +/* 0A7CA8 800A70A8 0C029E25 */ jal convert_number_to_ascii /* 0A7CAC 800A70AC 91C40002 */ lbu $a0, 2($t6) /* 0A7CB0 800A70B0 86040000 */ lh $a0, ($s0) /* 0A7CB4 800A70B4 86050002 */ lh $a1, 2($s0) diff --git a/asm/non_matchings/code_80091750/func_800A761C.s b/asm/non_matchings/code_80091750/func_800A761C.s index 98fe16a6f..0a067ef2a 100644 --- a/asm/non_matchings/code_80091750/func_800A761C.s +++ b/asm/non_matchings/code_80091750/func_800A761C.s @@ -73,7 +73,7 @@ glabel func_800A761C /* 0A8338 800A7738 0C024DBB */ jal draw_text /* 0A833C 800A773C 03192021 */ addu $a0, $t8, $t9 /* 0A8340 800A7740 8FA40038 */ lw $a0, 0x38($sp) -/* 0A8344 800A7744 0C029E25 */ jal func_800A7894 +/* 0A8344 800A7744 0C029E25 */ jal convert_number_to_ascii /* 0A8348 800A7748 27A5003C */ addiu $a1, $sp, 0x3c /* 0A834C 800A774C 8E09000C */ lw $t1, 0xc($s0) /* 0A8350 800A7750 8FAA0048 */ lw $t2, 0x48($sp) diff --git a/asm/non_matchings/code_80091750/func_800A7894.s b/asm/non_matchings/code_80091750/func_800A7894.s deleted file mode 100644 index 51007b12d..000000000 --- a/asm/non_matchings/code_80091750/func_800A7894.s +++ /dev/null @@ -1,22 +0,0 @@ -glabel func_800A7894 -/* 0A8494 800A7894 2402000A */ li $v0, 10 -/* 0A8498 800A7898 0082001A */ div $zero, $a0, $v0 -/* 0A849C 800A789C 00007012 */ mflo $t6 -/* 0A84A0 800A78A0 0000C010 */ mfhi $t8 -/* 0A84A4 800A78A4 25CF0030 */ addiu $t7, $t6, 0x30 -/* 0A84A8 800A78A8 14400002 */ bnez $v0, .L800A78B4 -/* 0A84AC 800A78AC 00000000 */ nop -/* 0A84B0 800A78B0 0007000D */ break 7 -.L800A78B4: -/* 0A84B4 800A78B4 2401FFFF */ li $at, -1 -/* 0A84B8 800A78B8 14410004 */ bne $v0, $at, .L800A78CC -/* 0A84BC 800A78BC 3C018000 */ lui $at, 0x8000 -/* 0A84C0 800A78C0 14810002 */ bne $a0, $at, .L800A78CC -/* 0A84C4 800A78C4 00000000 */ nop -/* 0A84C8 800A78C8 0006000D */ break 6 -.L800A78CC: -/* 0A84CC 800A78CC 27190030 */ addiu $t9, $t8, 0x30 -/* 0A84D0 800A78D0 A0AF0000 */ sb $t7, ($a1) -/* 0A84D4 800A78D4 A0B90001 */ sb $t9, 1($a1) -/* 0A84D8 800A78D8 03E00008 */ jr $ra -/* 0A84DC 800A78DC A0A00002 */ sb $zero, 2($a1) diff --git a/asm/non_matchings/code_80091750/func_800A78E0.s b/asm/non_matchings/code_80091750/func_800A78E0.s deleted file mode 100644 index 669e67f39..000000000 --- a/asm/non_matchings/code_80091750/func_800A78E0.s +++ /dev/null @@ -1,6 +0,0 @@ -glabel func_800A78E0 -/* 0A84E0 800A78E0 2402002D */ li $v0, 45 -/* 0A84E4 800A78E4 A0820000 */ sb $v0, ($a0) -/* 0A84E8 800A78E8 A0820001 */ sb $v0, 1($a0) -/* 0A84EC 800A78EC 03E00008 */ jr $ra -/* 0A84F0 800A78F0 A0800002 */ sb $zero, 2($a0) diff --git a/asm/non_matchings/code_80091750/func_800A78F4.s b/asm/non_matchings/code_80091750/func_800A78F4.s deleted file mode 100644 index 39a97836c..000000000 --- a/asm/non_matchings/code_80091750/func_800A78F4.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_800A78F4 -/* 0A84F4 800A78F4 3C010009 */ lui $at, (0x000927C0 >> 16) # lui $at, 9 -/* 0A84F8 800A78F8 342127C0 */ ori $at, (0x000927C0 & 0xFFFF) # ori $at, $at, 0x27c0 -/* 0A84FC 800A78FC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A8500 800A7900 0081082A */ slt $at, $a0, $at -/* 0A8504 800A7904 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A8508 800A7908 14200005 */ bnez $at, .L800A7920 -/* 0A850C 800A790C 00803025 */ move $a2, $a0 -/* 0A8510 800A7910 0C029E38 */ jal func_800A78E0 -/* 0A8514 800A7914 00A02025 */ move $a0, $a1 -/* 0A8518 800A7918 10000007 */ b .L800A7938 -/* 0A851C 800A791C 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7920: -/* 0A8520 800A7920 24011770 */ li $at, 6000 -/* 0A8524 800A7924 00C1001A */ div $zero, $a2, $at -/* 0A8528 800A7928 00002012 */ mflo $a0 -/* 0A852C 800A792C 0C029E25 */ jal func_800A7894 -/* 0A8530 800A7930 00000000 */ nop -/* 0A8534 800A7934 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7938: -/* 0A8538 800A7938 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A853C 800A793C 03E00008 */ jr $ra -/* 0A8540 800A7940 00000000 */ nop diff --git a/asm/non_matchings/code_80091750/func_800A7944.s b/asm/non_matchings/code_80091750/func_800A7944.s deleted file mode 100644 index 074b448a1..000000000 --- a/asm/non_matchings/code_80091750/func_800A7944.s +++ /dev/null @@ -1,27 +0,0 @@ -glabel func_800A7944 -/* 0A8544 800A7944 3C010009 */ lui $at, (0x000927C0 >> 16) # lui $at, 9 -/* 0A8548 800A7948 342127C0 */ ori $at, (0x000927C0 & 0xFFFF) # ori $at, $at, 0x27c0 -/* 0A854C 800A794C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A8550 800A7950 0081082A */ slt $at, $a0, $at -/* 0A8554 800A7954 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A8558 800A7958 14200005 */ bnez $at, .L800A7970 -/* 0A855C 800A795C 00803025 */ move $a2, $a0 -/* 0A8560 800A7960 0C029E38 */ jal func_800A78E0 -/* 0A8564 800A7964 00A02025 */ move $a0, $a1 -/* 0A8568 800A7968 1000000B */ b .L800A7998 -/* 0A856C 800A796C 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7970: -/* 0A8570 800A7970 24010064 */ li $at, 100 -/* 0A8574 800A7974 00C1001A */ div $zero, $a2, $at -/* 0A8578 800A7978 00002012 */ mflo $a0 -/* 0A857C 800A797C 2401003C */ li $at, 60 -/* 0A8580 800A7980 00000000 */ nop -/* 0A8584 800A7984 0081001A */ div $zero, $a0, $at -/* 0A8588 800A7988 00002010 */ mfhi $a0 -/* 0A858C 800A798C 0C029E25 */ jal func_800A7894 -/* 0A8590 800A7990 00000000 */ nop -/* 0A8594 800A7994 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7998: -/* 0A8598 800A7998 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A859C 800A799C 03E00008 */ jr $ra -/* 0A85A0 800A79A0 00000000 */ nop diff --git a/asm/non_matchings/code_80091750/func_800A79A4.s b/asm/non_matchings/code_80091750/func_800A79A4.s deleted file mode 100644 index 1330379d0..000000000 --- a/asm/non_matchings/code_80091750/func_800A79A4.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_800A79A4 -/* 0A85A4 800A79A4 3C010009 */ lui $at, (0x000927C0 >> 16) # lui $at, 9 -/* 0A85A8 800A79A8 342127C0 */ ori $at, (0x000927C0 & 0xFFFF) # ori $at, $at, 0x27c0 -/* 0A85AC 800A79AC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A85B0 800A79B0 0081082A */ slt $at, $a0, $at -/* 0A85B4 800A79B4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A85B8 800A79B8 14200005 */ bnez $at, .L800A79D0 -/* 0A85BC 800A79BC 00803025 */ move $a2, $a0 -/* 0A85C0 800A79C0 0C029E38 */ jal func_800A78E0 -/* 0A85C4 800A79C4 00A02025 */ move $a0, $a1 -/* 0A85C8 800A79C8 10000007 */ b .L800A79E8 -/* 0A85CC 800A79CC 8FBF0014 */ lw $ra, 0x14($sp) -.L800A79D0: -/* 0A85D0 800A79D0 24010064 */ li $at, 100 -/* 0A85D4 800A79D4 00C1001A */ div $zero, $a2, $at -/* 0A85D8 800A79D8 00002010 */ mfhi $a0 -/* 0A85DC 800A79DC 0C029E25 */ jal func_800A7894 -/* 0A85E0 800A79E0 00000000 */ nop -/* 0A85E4 800A79E4 8FBF0014 */ lw $ra, 0x14($sp) -.L800A79E8: -/* 0A85E8 800A79E8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A85EC 800A79EC 03E00008 */ jr $ra -/* 0A85F0 800A79F0 00000000 */ nop diff --git a/asm/non_matchings/code_80091750/func_800A874C.s b/asm/non_matchings/code_80091750/func_800A874C.s index 05e0455a8..f2908f4cf 100644 --- a/asm/non_matchings/code_80091750/func_800A874C.s +++ b/asm/non_matchings/code_80091750/func_800A874C.s @@ -26,7 +26,7 @@ glabel func_800A874C /* 0A93A4 800A87A4 3421FFFF */ ori $at, (0x000FFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 0A93A8 800A87A8 02418824 */ and $s1, $s2, $at /* 0A93AC 800A87AC 02202025 */ move $a0, $s1 -/* 0A93B0 800A87B0 0C029E3D */ jal func_800A78F4 +/* 0A93B0 800A87B0 0C029E3D */ jal get_time_record_minutes /* 0A93B4 800A87B4 27A50058 */ addiu $a1, $sp, 0x58 /* 0A93B8 800A87B8 3C01800F */ lui $at, %hi(D_800F24A0) # $at, 0x800f /* 0A93BC 800A87BC C43424A0 */ lwc1 $f20, %lo(D_800F24A0)($at) @@ -52,7 +52,7 @@ glabel func_800A874C /* 0A940C 800A880C 0C024CC9 */ jal func_80093324 /* 0A9410 800A8810 24A50021 */ addiu $a1, $a1, 0x21 /* 0A9414 800A8814 02202025 */ move $a0, $s1 -/* 0A9418 800A8818 0C029E51 */ jal func_800A7944 +/* 0A9418 800A8818 0C029E51 */ jal get_time_record_seconds /* 0A941C 800A881C 27A50058 */ addiu $a1, $sp, 0x58 /* 0A9420 800A8820 8E04000C */ lw $a0, 0xc($s0) /* 0A9424 800A8824 8E050010 */ lw $a1, 0x10($s0) @@ -74,7 +74,7 @@ glabel func_800A874C /* 0A9464 800A8864 0C024CC9 */ jal func_80093324 /* 0A9468 800A8868 24A50021 */ addiu $a1, $a1, 0x21 /* 0A946C 800A886C 02202025 */ move $a0, $s1 -/* 0A9470 800A8870 0C029E69 */ jal func_800A79A4 +/* 0A9470 800A8870 0C029E69 */ jal get_time_record_centiseconds /* 0A9474 800A8874 27A50058 */ addiu $a1, $sp, 0x58 /* 0A9478 800A8878 8E04000C */ lw $a0, 0xc($s0) /* 0A947C 800A887C 8E050010 */ lw $a1, 0x10($s0) diff --git a/src/code_80091750.c b/src/code_80091750.c index 9cb9ec9fd..5e55c98a1 100644 --- a/src/code_80091750.c +++ b/src/code_80091750.c @@ -8668,9 +8668,9 @@ void *func_8009BC9C(void *, ? *, s32, s32, s32, s32); /* extern */ ? func_800A75A0(void *); /* extern */ ? func_800A761C(void *); /* extern */ ? func_800A7790(void *); /* extern */ -? func_800A78F4(s32, ? *); /* extern */ -? func_800A7944(s32, ? *); /* extern */ -? func_800A79A4(s32, ? *); /* extern */ +? get_time_record_minutes(s32, ? *); /* extern */ +? get_time_record_seconds(s32, ? *); /* extern */ +? get_time_record_centiseconds(s32, ? *); /* extern */ ? func_800A8270(s32, void *); /* extern */ ? func_800A8564(void *); /* extern */ ? func_800A86E8(void *); /* extern */ @@ -9129,13 +9129,13 @@ void func_8009F5E0(void *arg0) { } else { set_text_color(TEXT_YELLOW); } - func_800A78F4(temp_v1_4, &sp80); + get_time_record_minutes(temp_v1_4, &sp80); func_800939C8(0x77, 0xA0, &sp80, 0, 1.0f, 1.0f); func_80093324(0x8B, 0xA0, "'", 0, 1.0f, 1.0f); - func_800A7944(temp_v1_4, &sp80); + get_time_record_seconds(temp_v1_4, &sp80); func_800939C8(0x94, 0xA0, &sp80, 0, 1.0f, 1.0f); func_80093324(0xA7, 0xA0, "\"", 0, 1.0f, 1.0f); - func_800A79A4(temp_v1_4, &sp80); + get_time_record_centiseconds(temp_v1_4, &sp80); func_800939C8(0xB4, 0xA0, &sp80, 0, 1.0f, 1.0f); return; case 0x4: /* switch 4 */ @@ -10101,7 +10101,7 @@ Gfx *draw_box(Gfx *, ?, ?, ?, s32, s32, s32, s32, s32); /* extern */ ? func_80092224(s32, s32, ?); /* extern */ ? func_80093324(s16, s16, ? *, ?, f32, f32); /* extern */ ? func_800A66A8(void *, s16 *); /* extern */ -? func_800A7894(s32, ? *); /* extern */ +? convert_number_to_ascii(s32, ? *); /* extern */ ? set_text_color(s32); /* extern */ extern ? D_8018EE10; static ? D_800E75C4; /* unable to generate initializer; const */ @@ -10374,7 +10374,7 @@ loop_38: set_text_color(TEXT_GREEN); } temp_s1_4 = phi_s0_9 + 1; - func_800A7894(temp_s1_4, &spB8); + convert_number_to_ascii(temp_s1_4, &spB8); func_80093324(phi_s6, phi_s2_3, &spB9, 0, 0.6f, 0.6f); if (phi_s3 == 0x2A) { phi_v1 = (phi_s0_9 << 7) + &D_8018EE10; @@ -10432,7 +10432,7 @@ loop_58: set_text_color(TEXT_GREEN); } temp_s1_5 = phi_s0_11 + 1; - func_800A7894(temp_s1_5, &spA8); + convert_number_to_ascii(temp_s1_5, &spA8); func_80093324(phi_s6_2, phi_s2_4, &spA9, 0, 0.6f, 0.6f); if (phi_s3_2 == 0x2A) { phi_v1_2 = (phi_s0_11 << 7) + &D_8018EE10; @@ -10506,7 +10506,7 @@ loop_80: set_text_color(TEXT_GREEN); } temp_s1_6 = phi_s0_12 + 1; - func_800A7894(temp_s1_6, &sp98); + convert_number_to_ascii(temp_s1_6, &sp98); func_80093324(phi_s6_3, phi_s2_6, &sp99, 0, 0.6f, 0.6f); if (phi_s3_4 == 0x2A) { phi_v1_3 = (phi_s0_12 << 7) + &D_8018EE10; @@ -10610,7 +10610,7 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A2D1C.s") s32 func_80093034(s32); // extern ? func_80093324(s32, s32, ? *, ?, f32, f32); // extern ? func_800A32B4(s32, s32, s8, s32); // extern -? func_800A7894(s32, ? *); // extern +? convert_number_to_ascii(s32, ? *); // extern ? set_text_color(s32); // extern extern s32 D_800DC540; extern ? D_800E7500; @@ -10668,18 +10668,23 @@ void func_800A2EB8(void *arg0) { phi_s0 = temp_s0; phi_s1 = temp_s1; } while (temp_s0 < &D_80164370); + // "Results" set_text_color(TEXT_BLUE_GREEN_RED_CYCLE_1); func_80093324(arg0->unkC + 0x1E, arg0->unk10 + 0x19, &D_800F0C1C, 0, 1.0f, 1.0f); + // "Round" set_text_color(5); temp_f0 = D_800F1C90; func_80093324(arg0->unkC + 0x2C, arg0->unk10 + 0x28, &D_800F0C24, 0, temp_f0, temp_f0); - func_800A7894(gCourseSelection + 1, &sp68); + // Convert index of current course in the cup order into a round number + convert_number_to_ascii(gCourseSelection + 1, &sp68); + // Print previously converted round number temp_f0_2 = D_800F1C94; func_80093324(arg0->unkC + 0x57, arg0->unk10 + 0x28, &sp69, 0, temp_f0_2, temp_f0_2); phi_s0_2 = &D_80164360; phi_s3 = 0; phi_s1_2 = &sp70; phi_s2 = 0; + // Print rank 1, 2, 3 and 4 3-lap times do { if (*phi_s0_2 < D_8018EDF3) { phi_a0 = gGlobalTimer % 3; @@ -10698,6 +10703,7 @@ void func_800A2EB8(void *arg0) { phi_s3_2 = 0x40; phi_s1_3 = &sp74; phi_s2_2 = 4; + // Print rank 5, 6, 7 and 8 3-lap times do { if (*phi_s0_3 < D_8018EDF3) { phi_a0_2 = gGlobalTimer % 3; @@ -10712,12 +10718,15 @@ void func_800A2EB8(void *arg0) { phi_s1_3 += 1; phi_s2_2 = temp_s2_2; } while (temp_s2_2 != 8); + // Print Cup name set_text_color(5); temp_s0_2 = ((func_80093034(*(&D_800E7500 + (gCupSelection * 4))) + 8) * D_800F1C98) / 2.0f; temp_f0_3 = D_800F1C9C; + // Some very complicated way to print the cup name and CC mode draw_text((-(((func_80093034(*(&D_800E76CC + (gCCSelection * 4))) + 8) * temp_f0_3) / 2.0f) - arg0->unkC) + 0xF5, arg0->unk10 + 0xE1, *(&D_800E7500 + (D_800DC540 * 4)), 0, temp_f0_3, temp_f0_3); temp_v0 = D_8018EDF3; temp_f0_4 = D_800F1CA0; + // Print CC mode again? draw_text((temp_s0_2 - arg0->unkC) + 0xF5, arg0->unk10 + 0xE1, *(&D_800E76CC + (*(&D_800E86AD + ((temp_v0 * 3) + *(&D_800E86AB + temp_v0))) * 4)), 0, temp_f0_4, temp_f0_4); } #else @@ -10728,7 +10737,7 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A2EB8.s") //generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 ? func_80093324(s32, ?, ? *, ?, f32, f32); // extern ? func_800939C8(s32, ?, ? *, ?, f32, f32); // extern -? func_800A7894(s32, ? *); // extern +? convert_number_to_ascii(s32, ? *); // extern extern ? D_800E76A8; extern ? D_800F0C2C; extern ? D_800F0C30; @@ -10748,19 +10757,34 @@ void func_800A32B4(s32 arg0, ? arg1, s32 arg2, s32 arg3) { temp_f4 = *(&D_8015F898 + (*(&D_80164360 + (arg3 * 2)) * 4)); sp50 = temp_f4; - func_800A7894(arg3 + 1, &sp3C); + // Convert arg3 (some index) into a rank string + // This is a little wonky. + // sp3c becomes "0x30, rank#, \0" + convert_number_to_ascii(arg3 + 1, &sp3C); temp_f20 = D_800F1CA4; + // change the \0 to a "." sp3E = 0x2E; + // add a new termnitator sp3F = 0; + // Print rank string func_800939C8(arg0 - 1, arg1, &sp3D, -4, temp_f20, temp_f20); + // Print character name (arg2 is almost certainly characterId) func_80093324(arg0 + 0xA, arg1, *(&D_800E76A8 + (arg2 * 4)), 0, D_800F1CA8, temp_f20); - func_800A7894(sp50 / 60.0f, &sp3C); + // Get minutes + convert_number_to_ascii(sp50 / 60.0f, &sp3C); + // Print minutes func_800939C8(arg0 + 0x42, arg1, &sp3C, 0, temp_f20, temp_f20); - func_800A7894(temp_f4 % 0x3C, &sp3C); + // Get seconds + convert_number_to_ascii(temp_f4 % 0x3C, &sp3C); + // Print ' func_80093324(arg0 + 0x4E, arg1, &D_800F0C2C, 0, temp_f20, temp_f20); + // Print seconds func_800939C8(arg0 + 0x56, arg1, &sp3C, 0, temp_f20, temp_f20); - func_800A7894((sp50 * 100.0) % 0x64, &sp3C); + // Get centiseconds + convert_number_to_ascii((sp50 * 100.0) % 0x64, &sp3C); + // Print " func_80093324(arg0 + 0x62, arg1, &D_800F0C30, 0, temp_f20, temp_f20); + // Print centiseconds func_800939C8(arg0 + 0x6A, arg1, &sp3C, 0, temp_f20, temp_f20); } #else @@ -10774,7 +10798,7 @@ s32 func_80093034(s32); /* extern */ ? func_80093324(s32, s32, ? *, ?, f32, f32); /* extern */ ? func_800A3A10(s8 *); /* extern */ ? func_800A3ADC(void *, s32, s32, s8, s32, s8 *); /* extern */ -? func_800A7894(s32, ? *); /* extern */ +? convert_number_to_ascii(s32, ? *); /* extern */ ? set_text_color(s32); /* extern */ extern s32 D_800DC540; extern ? D_80164360; @@ -10831,13 +10855,18 @@ void func_800A34A8(void *arg0) { func_800A3A10(&sp80); func_800A3A10(gGPOverallRanks); } + // "Driver's Points" set_text_color(TEXT_BLUE_GREEN_RED_CYCLE_1); func_80093324(arg0->unkC + 0x19, 0x19 - arg0->unk10, "driver's points", 0, 0.8f, 0.8f); + // "Round" set_text_color(5); func_80093324(arg0->unkC + 0x36, 0x28 - arg0->unk10, "round", 0, 0.7f, 0.7f); - func_800A7894(gCourseSelection + 1, &sp78); + // Convert course index to a round number + convert_number_to_ascii(gCourseSelection + 1, &sp78); + // Print round number func_80093324(arg0->unkC + 0x61, 0x28 - arg0->unk10, &sp79, 0, 0.7f, 0.7f); phi_s1 = 0; + // Print rank 1, 2, 3 and 4 lines do { temp_v1_2 = arg0->unk4; if ((temp_v1_2 != 8) && (temp_v1_2 != 9)) { @@ -10869,6 +10898,7 @@ void func_800A34A8(void *arg0) { phi_s1 = temp_s1; } while (temp_s1 < 4); phi_s1_2 = 4; + // Print rank 5, 6, 7 and 8 lines do { temp_v1_3 = arg0->unk4; if ((temp_v1_3 != 8) && (temp_v1_3 != 9)) { @@ -10969,7 +10999,7 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A3A10.s") //generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909 ? func_80093324(s32, s32, s8 *, ?, f32, f32); /* extern */ ? func_800939C8(s32, s32, s8 *, ?, f32, f32); /* extern */ -? func_800A7894(s8, s8 *); /* extern */ +? convert_number_to_ascii(s8, s8 *); /* extern */ extern s32 D_8018D9BC; static ? D_800E76A8; /* unable to generate initializer; const */ @@ -10984,7 +11014,7 @@ void func_800A3ADC(void *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5) s32 phi_v1_2; if (arg0->unk4 < 9) { - func_800A7894(arg4 + 1, &sp34); + convert_number_to_ascii(arg4 + 1, &sp34); } else { phi_v1 = arg4; phi_v1_2 = arg4; @@ -11002,16 +11032,22 @@ loop_4: } } } - func_800A7894(phi_v1_2 + 1, &sp34); + convert_number_to_ascii(phi_v1_2 + 1, &sp34); } sp36 = 0x2E; sp37 = 0; + // Print rank # + "." func_800939C8(arg1, arg2, &sp35, -4, 0.7f, 0.7f); + // Print character name func_80093324(arg1 + 0xA, arg2, *(&D_800E76A8 + (arg3 * 4)), 0, 0.7f, 0.7f); - func_800A7894(gGPCharacterPoints[arg3], &sp34); + // Print character's current point count + convert_number_to_ascii(gGPCharacterPoints[arg3], &sp34); func_800939C8(arg1 + 0x47, arg2, &sp34, 0, 0.7f, 0.7f); + // Print "+" + points left to be allocated + // Only done for rank 1, 2, 3 and 4 + // arg4 is almost certainly rank if ((arg4 < 4) && (arg0->unk4 < 9)) { - func_800A7894(*(D_8018D9BC + arg4), &sp34); + convert_number_to_ascii(*(D_8018D9BC + arg4), &sp34); sp34 = 0x2B; func_80093324(arg1 + 0x5A, arg2, &sp34, 0, 0.7f, 0.7f); } @@ -11084,7 +11120,7 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A3C84.s") ? func_80093358(s32, s32, ? *, ?, f32, f32); /* extern */ ? func_800A4550(s32, s32, s32); /* extern */ ? func_800A66A8(void *, s16 *); /* extern */ -? func_800A7894(s32, ? *); /* extern */ +? convert_number_to_ascii(s32, ? *); /* extern */ ? set_text_color(?); /* extern */ extern ? D_8018EE10; static ? D_800E7390; /* unable to generate initializer; const */ @@ -11248,7 +11284,7 @@ block_43: func_800921C0(arg0->unk4 - 0x11, phi_s1_3, 1); temp_a0 = phi_s1_3 + 1; sp54 = temp_a0; - func_800A7894(temp_a0, &sp60); + convert_number_to_ascii(temp_a0, &sp60); func_80093324(0xB1 - arg0->unkC, phi_s0_5, &sp61, 0, 0.6f, 0.6f); if (phi_s2_3->unk4 == 0) { func_80093324(0xBB - arg0->unkC, phi_s0_5, D_800E7A44, 0, 0.45f, 0.45f); @@ -11357,9 +11393,9 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A3E60.s") ? func_80093324(s32, s32, ? *, ?, f32, f32); // extern ? func_800936B8(s32, s32, s32, ?, f32, f32); // extern ? func_800939C8(s32, s32, ? *, ?, f32, f32); // extern -? func_800A78F4(s32, ? *); // extern -? func_800A7944(s32, ? *); // extern -? func_800A79A4(s32, ? *); // extern +? get_time_record_minutes(s32, ? *); // extern +? get_time_record_seconds(s32, ? *); // extern +? get_time_record_centiseconds(s32, ? *); // extern void *func_800AAEF4(?); // extern ? set_text_color(s32); // extern extern ? D_800E7734; @@ -11402,18 +11438,27 @@ void func_800A4550(s32 arg0, s32 arg1, s32 arg2) { } } else { phi_a0 = 3; + // If 3 lap time is in top 5 times if (temp_v0_2->unk1C >= 0) { phi_a0 = gGlobalTimer % 3; } } set_text_color(phi_a0); - func_800A78F4(sp40, &sp34); + // Get minutes + get_time_record_minutes(sp40, &sp34); + // Print minute func_800939C8(arg1 + 0x2C, arg2, &sp34, 0, temp_f20, temp_f20); + // ' func_80093324(arg1 + 0x37, arg2, &D_800F0C4C, 0, temp_f20, temp_f20); - func_800A7944(sp40, &sp34); + // Get seconds + get_time_record_seconds(sp40, &sp34); + // Print seconds func_800939C8(arg1 + 0x40, arg2, &sp34, 0, temp_f20, temp_f20); + // " func_80093324(arg1 + 0x4B, arg2, &D_800F0C50, 0, temp_f20, temp_f20); - func_800A79A4(sp40, &sp34); + // Get milliseconds + get_time_record_centiseconds(sp40, &sp34); + // Print millisecond func_800939C8(arg1 + 0x55, arg2, &sp34, 0, temp_f20, temp_f20); } #else @@ -11425,9 +11470,9 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A4550.s") ? draw_text(s32, s32, s32, ?, f32, f32); // extern ? func_80093324(s32, s32, ? *, ?, f32, f32); // extern ? func_800939C8(s32, s32, ? *, ?, f32, f32); // extern -? func_800A78F4(u32, ? *); // extern -? func_800A7944(u32, ? *); // extern -? func_800A79A4(u32, ? *); // extern +? get_time_record_minutes(u32, ? *); // extern +? get_time_record_seconds(u32, ? *); // extern +? get_time_record_centiseconds(u32, ? *); // extern void *func_800AAEF4(?); // extern u32 func_800B4E24(s32, s8 *); // extern u32 func_800B4EB4(s32, s8); // extern @@ -11498,13 +11543,18 @@ block_21: set_text_color(sp40); temp_t0 = sp48 & 0xFFFFF; sp2C = temp_t0; - func_800A78F4(temp_t0, &sp38); + get_time_record_minutes(temp_t0, &sp38); + // Print minute func_800939C8(arg1 + 0x27, arg2, &sp38, 0, temp_f20, temp_f20); + // ' func_80093324(arg1 + 0x32, arg2, &D_800F0C54, 0, temp_f20, temp_f20); - func_800A7944(sp2C, &sp38); + get_time_record_seconds(sp2C, &sp38); + // Print second func_800939C8(arg1 + 0x3B, arg2, &sp38, 0, temp_f20, temp_f20); + // " func_80093324(arg1 + 0x46, arg2, &D_800F0C58, 0, temp_f20, temp_f20); - func_800A79A4(sp2C, &sp38); + get_time_record_centiseconds(sp2C, &sp38); + // Print millisecond func_800939C8(arg1 + 0x50, arg2, &sp38, 0, temp_f20, temp_f20); if (sp2C < 0x927C0) { phi_v0_3 = sp48 >> 0x14; @@ -11598,9 +11648,9 @@ s32 draw_box(s32, ?, ?, ?, s32, s32, s32, s32, s32); // extern ? func_800921C0(s32, s32, ?); // extern ? func_80093324(s16, s32, ? *, ?, f32, f32); // extern ? func_800939C8(?, ?, ? *, ?, f32, f32); // extern -? func_800A78F4(s32, ? *); // extern -? func_800A7944(s32, ? *); // extern -? func_800A79A4(s32, ? *); // extern +? get_time_record_minutes(s32, ? *); // extern +? get_time_record_seconds(s32, ? *); // extern +? get_time_record_centiseconds(s32, ? *); // extern s32 func_800B4E24(?); // extern s32 func_800B4F2C(); // extern ? set_text_color(?); // extern @@ -11635,27 +11685,39 @@ void func_800A4BC8(void *arg0) { draw_text(0xA0, 0x50, *(&D_800E7574 + (*(&gCupTrackOrder + ((gCupSelection * 8) + (gCourseSelection * 2))) * 4)), 0, 1.0f, 1.0f); set_text_color(TEXT_RED); temp_f20 = D_800F1DD4; + // "Best Records" draw_text(0x9D, 0x60, D_800E7728.unk0, 0, temp_f20, temp_f20); temp_a0 = func_800B4E24(0) & 0xFFFFF; temp_s1 = temp_a0; - func_800A78F4(temp_a0, &sp68); + // Print minutes + get_time_record_minutes(temp_a0, &sp68); func_800939C8(0x7F, 0x6D, &sp68, 0, temp_f20, temp_f20); + // ' func_80093324(0x8E, 0x6D, &D_800F0C5C, 0, temp_f20, temp_f20); - func_800A7944(temp_s1, &sp68); + // Print seconds + get_time_record_seconds(temp_s1, &sp68); func_800939C8(0x98, 0x6D, &sp68, 0, temp_f20, temp_f20); + // " func_80093324(0xA7, 0x6D, &D_800F0C60, 0, temp_f20, temp_f20); - func_800A79A4(temp_s1, &sp68); + // Print centiseconds + get_time_record_centiseconds(temp_s1, &sp68); func_800939C8(0xB3, 0x6D, &sp68, 0, temp_f20, temp_f20); + // "Best Lap" draw_text(0x9D, 0x7C, D_800E7728.unk4, 0, temp_f20, temp_f20); temp_a0_2 = func_800B4F2C() & 0xFFFFF; temp_s1_2 = temp_a0_2; - func_800A78F4(temp_a0_2, &sp68); + // Print minutes + get_time_record_minutes(temp_a0_2, &sp68); func_800939C8(0x7F, 0x89, &sp68, 0, temp_f20, temp_f20); + // ' func_80093324(0x8E, 0x89, &D_800F0C64, 0, temp_f20, temp_f20); - func_800A7944(temp_s1_2, &sp68); + // Print seconds + get_time_record_seconds(temp_s1_2, &sp68); func_800939C8(0x98, 0x89, &sp68, 0, temp_f20, temp_f20); + // " func_80093324(0xA7, 0x89, &D_800F0C68, 0, temp_f20, temp_f20); - func_800A79A4(temp_s1_2, &sp68); + // Print centiseconds + get_time_record_centiseconds(temp_s1_2, &sp68); func_800939C8(0xB3, 0x89, &sp68, 0, temp_f20, temp_f20); phi_s0 = 0; phi_s1 = 0; @@ -11915,10 +11977,10 @@ s32 func_80093034(? *); /* extern */ ? func_80093358(s16, s32, ? *, ?, f32, f32); /* extern */ ? func_80093754(?, ?, s32, ?, f32, f32); /* extern */ ? func_800A66A8(void *, s16 *); /* extern */ -? func_800A7894(s32, ? *); /* extern */ -? func_800A78F4(s32, ? *); /* extern */ -? func_800A7944(s32, ? *); /* extern */ -? func_800A79A4(s32, ? *); /* extern */ +? convert_number_to_ascii(s32, ? *); /* extern */ +? get_time_record_minutes(s32, ? *); /* extern */ +? get_time_record_seconds(s32, ? *); /* extern */ +? get_time_record_centiseconds(s32, ? *); /* extern */ s32 func_800B4E24(?); /* extern */ ? set_text_color(?); /* extern */ ? text_draw(?, ?, ? *, ?, f32, f32); /* extern */ @@ -12043,24 +12105,24 @@ void func_800A5738(void *arg0) { func_80093754(0x9D, 0x60, D_800E7728.unk0, 0, 0.8f, 0.8f); temp_a0 = func_800B4E24(0) & 0xFFFFF; temp_s1_2 = temp_a0; - func_800A78F4(temp_a0, &sp84); + get_time_record_minutes(temp_a0, &sp84); text_draw(0x7F, 0x6D, &sp84, 0, 0.8f, 0.8f); func_80093358(0x8E, 0x6D, "'", 0, 0.8f, 0.8f); - func_800A7944(temp_s1_2, &sp84); + get_time_record_seconds(temp_s1_2, &sp84); text_draw(0x98, 0x6D, &sp84, 0, 0.8f, 0.8f); func_80093358(0xA7, 0x6D, "\"", 0, 0.8f, 0.8f); - func_800A79A4(temp_s1_2, &sp84); + get_time_record_centiseconds(temp_s1_2, &sp84); text_draw(0xB3, 0x6D, &sp84, 0, 0.8f, 0.8f); func_80093754(0x9D, 0x7C, D_800E7728.unk4, 0, 0.8f, 0.8f); temp_a0_2 = func_800B4F2C() & 0xFFFFF; temp_s1_3 = temp_a0_2; - func_800A78F4(temp_a0_2, &sp84); + get_time_record_minutes(temp_a0_2, &sp84); text_draw(0x7F, 0x89, &sp84, 0, 0.8f, 0.8f); func_80093358(0x8E, 0x89, "'", 0, 0.8f, 0.8f); - func_800A7944(temp_s1_3, &sp84); + get_time_record_seconds(temp_s1_3, &sp84); text_draw(0x98, 0x89, &sp84, 0, 0.8f, 0.8f); func_80093358(0xA7, 0x89, "\"", 0, 0.8f, 0.8f); - func_800A79A4(temp_s1_3, &sp84); + get_time_record_centiseconds(temp_s1_3, &sp84); text_draw(0xB3, 0x89, &sp84, 0, 0.8f, 0.8f); phi_v0 = D_800E775C; phi_s1_2 = 0; @@ -12112,7 +12174,7 @@ block_36: func_800921C0(arg0->unk4 - 0x1E, phi_s1_3, 1); temp_a0_3 = phi_s1_3 + 1; sp54 = temp_a0_3; - func_800A7894(temp_a0_3, &sp5C); + convert_number_to_ascii(temp_a0_3, &sp5C); func_80093324(0x5A - arg0->unkC, phi_s0_4, &sp5D, 0, 0.75f, 0.75f); if (phi_s2_2->unk4 == 0) { func_80093324(0x69 - arg0->unkC, phi_s0_4, D_800E7A44, 0, 0.75f, 0.75f); @@ -12697,7 +12759,7 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A6D94.s") #ifdef MIPS_TO_C //generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_800A7894(u8, ? *); // extern +? convert_number_to_ascii(u8, ? *); // extern ? set_text_color(s32); // extern ? text_draw(s32, s32, ? *, ?, f32, f32); // extern extern ? D_800E7300; @@ -12729,7 +12791,7 @@ void func_800A6E94(s32 arg0, s32 arg1, s32 arg2) { text_draw(temp_s0->unk0 + 4, temp_s0->unk2 + 0x5A, &D_800F0C80, 0, temp_f20, temp_f20); temp_v0 = (arg1 * 3) + arg2; sp30 = temp_v0; - func_800A7894(*temp_v0, &sp40); + convert_number_to_ascii(*temp_v0, &sp40); text_draw(temp_s0->unk0 + 0x2D, temp_s0->unk2 + 0x5A, &sp40, 0, temp_f20, temp_f20); if (sp3C == 1) { sp38 = 1; @@ -12740,7 +12802,7 @@ void func_800A6E94(s32 arg0, s32 arg1, s32 arg2) { } sp38 = sp38; text_draw(temp_s0->unk0 + 4, temp_s0->unk2 + 0x69, &D_800F0C88, 0, temp_f20, temp_f20); - func_800A7894(sp30->unk1, &sp40); + convert_number_to_ascii(sp30->unk1, &sp40); text_draw(temp_s0->unk0 + 0x2D, temp_s0->unk2 + 0x69, &sp40, 0, temp_f20, temp_f20); if ((sp38 + 1) == sp3C) { set_text_color(gGlobalTimer % 3); @@ -12748,7 +12810,7 @@ void func_800A6E94(s32 arg0, s32 arg1, s32 arg2) { set_text_color(TEXT_RED); } text_draw(temp_s0->unk0 + 4, temp_s0->unk2 + 0x78, &D_800F0C90, 0, temp_f20, temp_f20); - func_800A7894(sp30->unk2, &sp40); + convert_number_to_ascii(sp30->unk2, &sp40); text_draw(temp_s0->unk0 + 0x2D, temp_s0->unk2 + 0x78, &sp40, 0, temp_f20, temp_f20); } #else @@ -12925,7 +12987,7 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A75A0.s") ? draw_text(s32, s32, s32, ?, f32, f32); // extern s32 func_80093034(s32); // extern ? func_800939C8(s32, s32, ? *, ?, f32, f32); // extern -? func_800A7894(s32, ? *); // extern +? convert_number_to_ascii(s32, ? *); // extern ? func_800A79F4(s32, ? *); // extern ? set_text_color(s32); // extern extern s32 D_800E7AA4; @@ -12958,7 +13020,7 @@ void func_800A761C(void *arg0) { draw_text(arg0->unkC - sp44, arg0->unk10, D_800E7AA4, 0, temp_f20, temp_f20); set_text_color(gGlobalTimer % 3); draw_text(arg0->unkC + sp48, arg0->unk10, *sp34, 0, temp_f20, temp_f20); - func_800A7894(temp_a0, &sp3C); + convert_number_to_ascii(temp_a0, &sp3C); func_800939C8((arg0->unkC + sp48) - 0x18, arg0->unk10, &sp3D, 0, 2.0f, 2.0f); } #else @@ -13000,75 +13062,61 @@ void func_800A7790(void *arg0) { GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A7790.s") #endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_800A7894(s32 arg0, void *arg1) { - arg1->unk0 = (arg0 / 0xA) + 0x30; - arg1->unk1 = (arg0 % 0xA) + 0x30; - arg1->unk2 = 0; +// Originally func_800A7894 +// Presumes that "number" is a 2 digit number. Convert it to a string +void convert_number_to_ascii(s32 number, char *buffer) { + buffer[0] = (number / 0xA) + 0x30; + buffer[1] = (number % 0xA) + 0x30; + // Terminator + buffer[2] = 0; } -#else -GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A7894.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_800A78E0(void *arg0) { - arg0->unk0 = 0x2D; - arg0->unk1 = 0x2D; - arg0->unk2 = 0; +// Originally func_800A78E0 +// MK 64 doesn't show more then 2 digits for any given time +// (minute, second, centisecond) +// So, if timeRecord is greater than 10 minutes, just use '-'s +void write_dashes(char *buffer) { + buffer[0] = 0x2D; + buffer[1] = 0x2D; + // Terminator + buffer[2] = 0; } -#else -GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A78E0.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_800A7894(s32, s32); // extern -? func_800A78E0(?, s32); // extern - -void func_800A78F4(s32 arg0, ? arg1) { - if (arg0 >= 0x927C0) { - func_800A78E0(arg1, arg0); +// Originally func_800A78F4 +// timeRecord is assumed to be measured in centiseconds +void get_time_record_minutes(s32 timeRecord, char *buffer) { + // If timeRecord is greater than 100 minutes, put '-' + // in buffer + if (timeRecord >= 0x927C0) { + write_dashes(buffer); return; } - func_800A7894(arg0 / 0x1770, arg0); + convert_number_to_ascii(timeRecord / 0x1770, buffer); } -#else -GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A78F4.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_800A7894(s32, s32); // extern -? func_800A78E0(?, s32); // extern - -void func_800A7944(s32 arg0, ? arg1) { - if (arg0 >= 0x927C0) { - func_800A78E0(arg1, arg0); +// Originally func_800A7944 +// timeRecord is assumed to be measured in centiseconds +void get_time_record_seconds(s32 timeRecord, char *buffer) { + // If timeRecord is greater than 100 minutes, put '-' + // in buffer + if (timeRecord >= 0x927C0) { + write_dashes(buffer); return; } - func_800A7894((arg0 / 0x64) % 0x3C, arg0); + convert_number_to_ascii((timeRecord / 0x64) % 0x3C, buffer); } -#else -GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A7944.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_800A7894(s32, s32); // extern -? func_800A78E0(?, s32); // extern - -void func_800A79A4(s32 arg0, ? arg1) { - if (arg0 >= 0x927C0) { - func_800A78E0(arg1, arg0); +// Originally func_800A79A4 +// timeRecord is assumed to be measured in centiseconds +void get_time_record_centiseconds(s32 timeRecord, char *buffer) { + // If timeRecord is greater than 100 minutes, put '-' + // in buffer + if (timeRecord >= 0x927C0) { + write_dashes(buffer); return; } - func_800A7894(arg0 % 0x64, arg0); + convert_number_to_ascii(timeRecord % 0x64, buffer); } -#else -GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A79A4.s") -#endif #ifdef MIPS_TO_C //generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 @@ -13744,9 +13792,9 @@ GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A86E8.s") //generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 ? func_80093324(s32, s32, ? *, ?, f32, f32); // extern ? func_800936B8(s32, s32, s32, ?, f32, f32); // extern -? func_800A78F4(u32, ? *); // extern -? func_800A7944(u32, ? *); // extern -? func_800A79A4(u32, ? *); // extern +? get_time_record_minutes(u32, ? *); // extern +? get_time_record_seconds(u32, ? *); // extern +? get_time_record_centiseconds(u32, ? *); // extern u32 func_800B4E24(?); // extern u32 func_800B4F2C(); // extern ? set_text_color(?); // extern @@ -13772,15 +13820,15 @@ void func_800A874C(void *arg0) { phi_v0 = func_800B4F2C(); } temp_s1 = phi_v0 & 0xFFFFF; - func_800A78F4(temp_s1, &sp58); + get_time_record_minutes(temp_s1, &sp58); temp_f20 = D_800F24A0; temp_f22 = D_800F24A4; text_draw(arg0->unkC + 5, arg0->unk10 + 0x21, &sp58, 0, temp_f20, temp_f22); func_80093324(arg0->unkC + 0xE, arg0->unk10 + 0x21, &D_800F0C98, 0, temp_f20, temp_f22); - func_800A7944(temp_s1, &sp58); + get_time_record_seconds(temp_s1, &sp58); text_draw(arg0->unkC + 0x16, arg0->unk10 + 0x21, &sp58, 0, temp_f20, temp_f22); func_80093324(arg0->unkC + 0x20, arg0->unk10 + 0x21, &D_800F0C9C, 0, temp_f20, temp_f22); - func_800A79A4(temp_s1, &sp58); + get_time_record_centiseconds(temp_s1, &sp58); text_draw(arg0->unkC + 0x29, arg0->unk10 + 0x21, &sp58, 0, temp_f20, temp_f22); if (temp_s1 < 0x927C0) { phi_s2 = phi_v0 >> 0x14;