From e47fc4b0efc063a75a49dc5c1a4c43c534f65f0f Mon Sep 17 00:00:00 2001 From: Fazana <52551480+FazanaJ@users.noreply.github.com> Date: Sun, 30 Oct 2022 19:58:59 +0000 Subject: [PATCH] Couple matches (#270) * match func_80077268 * Update borders.c * Update borders.h * game.c labels * rename border * match func_80068BF4 and func_80069484 * Update camera.c * camera.c labels * more camera.c documentation oh god this is gonna be another one of THOSE PR's again isn't it? * Update camera.c * destruction * nonmatching func_80002DF8 * make clean now removes the linker * Update unknown_003260.c * match func_800A0EB4 * match render_background * fix warnings * style fixes * label indicator arrows in the UI * requested changes * struct renames * match func_800A7B68 * Update README.md * match func_800A5A64 * Fix unforgivable typo sorry im not a fake fan I sware on me nan * Update README.md * more detailed documentation of game_ui * match func_800A01A0 * prelim changes * oh no * nonmatching func_80024D54 * labbel * fix build * fix context warnings * match func_800A7520 * fixes * requested changes --- asm/non_matchings/game/func_8006DCF8.s | 12 +- asm/non_matchings/game/func_8006ECFC.s | 12 +- asm/non_matchings/game_ui/func_8009ECF0.s | 438 ++-- asm/non_matchings/game_ui/func_8009F034.s | 28 +- asm/non_matchings/game_ui/func_800A01A0.s | 672 ------ asm/non_matchings/game_ui/func_800A0BD4.s | 4 +- asm/non_matchings/game_ui/func_800A1248.s | 2 +- asm/non_matchings/game_ui/func_800A19A4.s | 16 +- asm/non_matchings/game_ui/func_800A1C04.s | 2 +- asm/non_matchings/game_ui/func_800A22F4.s | 40 +- asm/non_matchings/game_ui/func_800A277C.s | 2122 ++++++++--------- asm/non_matchings/game_ui/func_800A3884.s | 68 +- asm/non_matchings/game_ui/func_800A3CE4.s | 594 ++--- asm/non_matchings/game_ui/func_800A4154.s | 52 +- asm/non_matchings/game_ui/func_800A45F0.s | 16 +- asm/non_matchings/game_ui/func_800A47A0.s | 252 +- asm/non_matchings/game_ui/func_800A497C.s | 372 +-- asm/non_matchings/game_ui/func_800A4C44.s | 20 +- asm/non_matchings/game_ui/func_800A4F50.s | 1494 ++++++------ asm/non_matchings/game_ui/func_800A5F18.s | 16 +- asm/non_matchings/game_ui/func_800A6254.s | 10 +- asm/non_matchings/game_ui/func_800A6E30.s | 486 ++-- asm/non_matchings/game_ui/func_800A718C.s | 32 +- asm/non_matchings/game_ui/func_800A7520.s | 369 --- asm/non_matchings/game_ui/func_800A7A60.s | 16 +- asm/non_matchings/game_ui/func_800A7FBC.s | 8 +- asm/non_matchings/game_ui/func_800A8474.s | 108 +- asm/non_matchings/game_ui/func_800AA600.s | 36 +- asm/non_matchings/objects/func_8000B020.s | 4 +- asm/non_matchings/objects/func_8001AE64.s | 4 +- asm/non_matchings/objects/func_8001B3C4.s | 2 +- .../unknown_0255E0/func_8002581C.s | 40 +- .../unknown_0255E0/func_80027184.s | 20 +- .../unknown_0255E0/func_80028050.s | 32 +- .../unknown_0255E0/func_800289B8.s | 20 +- .../unknown_0255E0/func_8002D670.s | 4 +- .../unknown_0255E0/render_floor_decal.s | 8 +- .../unknown_0255E0/render_level_segment.s | 4 +- .../{func_80024D54.s => render_scene.s} | 48 +- include/structs.h | 9 +- include/types.h | 2 +- src/game.c | 28 +- src/game_ui.c | 543 ++++- src/game_ui.h | 70 +- src/menu.c | 99 +- src/object_functions.c | 2 +- src/object_models.c | 2 +- src/objects.h | 1 + src/racer.c | 14 +- src/racer.h | 5 - src/textures_sprites.h | 2 +- src/unknown_0255E0.c | 233 +- src/unknown_0255E0.h | 16 +- src/unknown_05CEF0.c | 6 +- src/unknown_05FF10.c | 6 +- tools/python/calc_func_checksums.py | 2 +- 56 files changed, 3988 insertions(+), 4535 deletions(-) delete mode 100644 asm/non_matchings/game_ui/func_800A01A0.s delete mode 100644 asm/non_matchings/game_ui/func_800A7520.s rename asm/non_matchings/unknown_0255E0/{func_80024D54.s => render_scene.s} (92%) diff --git a/asm/non_matchings/game/func_8006DCF8.s b/asm/non_matchings/game/func_8006DCF8.s index 31706a79..4ae586a0 100644 --- a/asm/non_matchings/game/func_8006DCF8.s +++ b/asm/non_matchings/game/func_8006DCF8.s @@ -27,12 +27,12 @@ glabel func_8006DCF8 .L8006DD44: /* 06E944 8006DD44 3C108012 */ lui $s0, %hi(gCurrDisplayList) # $s0, 0x8012 /* 06E948 8006DD48 261011F8 */ addiu $s0, %lo(gCurrDisplayList) # addiu $s0, $s0, 0x11f8 -/* 06E94C 8006DD4C 3C058012 */ lui $a1, %hi(gCurrHudMat) # $a1, 0x8012 -/* 06E950 8006DD50 3C068012 */ lui $a2, %hi(gCurrHudVerts) # $a2, 0x8012 -/* 06E954 8006DD54 3C078012 */ lui $a3, %hi(gCurrHudTris) # $a3, 0x8012 -/* 06E958 8006DD58 24E71228 */ addiu $a3, %lo(gCurrHudTris) # addiu $a3, $a3, 0x1228 -/* 06E95C 8006DD5C 24C61218 */ addiu $a2, %lo(gCurrHudVerts) # addiu $a2, $a2, 0x1218 -/* 06E960 8006DD60 24A51208 */ addiu $a1, %lo(gCurrHudMat) # addiu $a1, $a1, 0x1208 +/* 06E94C 8006DD4C 3C058012 */ lui $a1, %hi(gGameCurrMatrix) # $a1, 0x8012 +/* 06E950 8006DD50 3C068012 */ lui $a2, %hi(gGameCurrVertexList) # $a2, 0x8012 +/* 06E954 8006DD54 3C078012 */ lui $a3, %hi(gGameCurrTriList) # $a3, 0x8012 +/* 06E958 8006DD58 24E71228 */ addiu $a3, %lo(gGameCurrTriList) # addiu $a3, $a3, 0x1228 +/* 06E95C 8006DD5C 24C61218 */ addiu $a2, %lo(gGameCurrVertexList) # addiu $a2, $a2, 0x1218 +/* 06E960 8006DD60 24A51208 */ addiu $a1, %lo(gGameCurrMatrix) # addiu $a1, $a1, 0x1208 /* 06E964 8006DD64 02002025 */ move $a0, $s0 /* 06E968 8006DD68 0C020569 */ jal menu_loop /* 06E96C 8006DD6C AFB80010 */ sw $t8, 0x10($sp) diff --git a/asm/non_matchings/game/func_8006ECFC.s b/asm/non_matchings/game/func_8006ECFC.s index 21abd3e0..80524fa3 100644 --- a/asm/non_matchings/game/func_8006ECFC.s +++ b/asm/non_matchings/game/func_8006ECFC.s @@ -151,17 +151,17 @@ glabel func_8006ECFC /* 06FB3C 8006EF3C AC990000 */ sw $t9, ($a0) /* 06FB40 8006EF40 8DAD1200 */ lw $t5, %lo(gHudMatrices)($t5) /* 06FB44 8006EF44 3C0C8012 */ lui $t4, %hi(gHudTriangles) # $t4, 0x8012 -/* 06FB48 8006EF48 3C018012 */ lui $at, %hi(gCurrHudMat) # $at, 0x8012 +/* 06FB48 8006EF48 3C018012 */ lui $at, %hi(gGameCurrMatrix) # $at, 0x8012 /* 06FB4C 8006EF4C 018F6021 */ addu $t4, $t4, $t7 /* 06FB50 8006EF50 8D8C1220 */ lw $t4, %lo(gHudTriangles)($t4) /* 06FB54 8006EF54 3C0E8012 */ lui $t6, %hi(gHudVertices) # $t6, 0x8012 -/* 06FB58 8006EF58 AC2D1208 */ sw $t5, %lo(gCurrHudMat)($at) -/* 06FB5C 8006EF5C 3C018012 */ lui $at, %hi(gCurrHudTris) # $at, 0x8012 +/* 06FB58 8006EF58 AC2D1208 */ sw $t5, %lo(gGameCurrMatrix)($at) +/* 06FB5C 8006EF5C 3C018012 */ lui $at, %hi(gGameCurrTriList) # $at, 0x8012 /* 06FB60 8006EF60 01CF7021 */ addu $t6, $t6, $t7 /* 06FB64 8006EF64 8DCE1210 */ lw $t6, %lo(gHudVertices)($t6) -/* 06FB68 8006EF68 AC2C1228 */ sw $t4, %lo(gCurrHudTris)($at) -/* 06FB6C 8006EF6C 3C018012 */ lui $at, %hi(gCurrHudVerts) # $at, 0x8012 -/* 06FB70 8006EF70 AC2E1218 */ sw $t6, %lo(gCurrHudVerts)($at) +/* 06FB68 8006EF68 AC2C1228 */ sw $t4, %lo(gGameCurrTriList)($at) +/* 06FB6C 8006EF6C 3C018012 */ lui $at, %hi(gGameCurrVertexList) # $at, 0x8012 +/* 06FB70 8006EF70 AC2E1218 */ sw $t6, %lo(gGameCurrVertexList)($at) /* 06FB74 8006EF74 8C820000 */ lw $v0, ($a0) /* 06FB78 8006EF78 3C18E900 */ lui $t8, 0xe900 /* 06FB7C 8006EF7C 244F0008 */ addiu $t7, $v0, 8 diff --git a/asm/non_matchings/game_ui/func_8009ECF0.s b/asm/non_matchings/game_ui/func_8009ECF0.s index 5b9234e6..08a6423e 100644 --- a/asm/non_matchings/game_ui/func_8009ECF0.s +++ b/asm/non_matchings/game_ui/func_8009ECF0.s @@ -1,219 +1,219 @@ -glabel func_8009ECF0 -/* 09F8F0 8009ECF0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 09F8F4 8009ECF4 AFBF0024 */ sw $ra, 0x24($sp) -/* 09F8F8 8009ECF8 AFB20020 */ sw $s2, 0x20($sp) -/* 09F8FC 8009ECFC AFB1001C */ sw $s1, 0x1c($sp) -/* 09F900 8009ED00 AFB00018 */ sw $s0, 0x18($sp) -/* 09F904 8009ED04 0C019884 */ jal get_viewport_count -/* 09F908 8009ED08 AFA40028 */ sw $a0, 0x28($sp) -/* 09F90C 8009ED0C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 09F910 8009ED10 24636D0C */ addiu $v1, %lo(D_80126D0C) # addiu $v1, $v1, 0x6d0c -/* 09F914 8009ED14 AC620000 */ sw $v0, ($v1) -/* 09F918 8009ED18 0C01994B */ jal set_active_viewports_and_object_stack_cap -/* 09F91C 8009ED1C 00402025 */ move $a0, $v0 -/* 09F920 8009ED20 3C018012 */ lui $at, %hi(D_80126D37) # $at, 0x8012 -/* 09F924 8009ED24 0C01BAA4 */ jal get_settings -/* 09F928 8009ED28 A0226D37 */ sb $v0, %lo(D_80126D37)($at) -/* 09F92C 8009ED2C 3C018012 */ lui $at, %hi(D_80127184) # $at, 0x8012 -/* 09F930 8009ED30 0C003877 */ jal check_if_silver_coin_race -/* 09F934 8009ED34 AC227184 */ sw $v0, %lo(D_80127184)($at) -/* 09F938 8009ED38 3C018012 */ lui $at, %hi(D_80127188) # $at, 0x8012 -/* 09F93C 8009ED3C A0227188 */ sb $v0, %lo(D_80127188)($at) -/* 09F940 8009ED40 0C01DB16 */ jal load_asset_section_from_rom -/* 09F944 8009ED44 24040011 */ li $a0, 17 -/* 09F948 8009ED48 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 -/* 09F94C 8009ED4C 3C118012 */ lui $s1, %hi(D_80126CF0) # $s1, 0x8012 -/* 09F950 8009ED50 26316CF0 */ addiu $s1, %lo(D_80126CF0) # addiu $s1, $s1, 0x6cf0 -/* 09F954 8009ED54 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 -/* 09F958 8009ED58 00007040 */ sll $t6, $zero, 1 -/* 09F95C 8009ED5C AE220000 */ sw $v0, ($s1) -/* 09F960 8009ED60 ACC00000 */ sw $zero, ($a2) -/* 09F964 8009ED64 004E7821 */ addu $t7, $v0, $t6 -/* 09F968 8009ED68 85F80000 */ lh $t8, ($t7) -/* 09F96C 8009ED6C 2412FFFF */ li $s2, -1 -/* 09F970 8009ED70 00401825 */ move $v1, $v0 -/* 09F974 8009ED74 12580009 */ beq $s2, $t8, .L8009ED9C -/* 09F978 8009ED78 00008025 */ move $s0, $zero -/* 09F97C 8009ED7C 26190001 */ addiu $t9, $s0, 1 -.L8009ED80: -/* 09F980 8009ED80 00194040 */ sll $t0, $t9, 1 -/* 09F984 8009ED84 00684821 */ addu $t1, $v1, $t0 -/* 09F988 8009ED88 ACD90000 */ sw $t9, ($a2) -/* 09F98C 8009ED8C 852A0000 */ lh $t2, ($t1) -/* 09F990 8009ED90 03208025 */ move $s0, $t9 -/* 09F994 8009ED94 164AFFFA */ bne $s2, $t2, .L8009ED80 -/* 09F998 8009ED98 26190001 */ addiu $t9, $s0, 1 -.L8009ED9C: -/* 09F99C 8009ED9C 00102080 */ sll $a0, $s0, 2 -/* 09F9A0 8009EDA0 00902021 */ addu $a0, $a0, $s0 -/* 09F9A4 8009EDA4 0C01C327 */ jal allocate_from_main_pool_safe -/* 09F9A8 8009EDA8 3405FFFF */ li $a1, 65535 -/* 09F9AC 8009EDAC 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 -/* 09F9B0 8009EDB0 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 -/* 09F9B4 8009EDB4 8CD00000 */ lw $s0, ($a2) -/* 09F9B8 8009EDB8 3C048012 */ lui $a0, %hi(D_80126CD8) # $a0, 0x8012 -/* 09F9BC 8009EDBC 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09F9C0 8009EDC0 00105880 */ sll $t3, $s0, 2 -/* 09F9C4 8009EDC4 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09F9C8 8009EDC8 24846CD8 */ addiu $a0, %lo(D_80126CD8) # addiu $a0, $a0, 0x6cd8 -/* 09F9CC 8009EDCC 01626821 */ addu $t5, $t3, $v0 -/* 09F9D0 8009EDD0 ACE20000 */ sw $v0, ($a3) -/* 09F9D4 8009EDD4 AC8D0000 */ sw $t5, ($a0) -/* 09F9D8 8009EDD8 1A00000F */ blez $s0, .L8009EE18 -/* 09F9DC 8009EDDC 00001825 */ move $v1, $zero -/* 09F9E0 8009EDE0 00001025 */ move $v0, $zero -.L8009EDE4: -/* 09F9E4 8009EDE4 8C8E0000 */ lw $t6, ($a0) -/* 09F9E8 8009EDE8 00000000 */ nop -/* 09F9EC 8009EDEC 01C37821 */ addu $t7, $t6, $v1 -/* 09F9F0 8009EDF0 A1E00000 */ sb $zero, ($t7) -/* 09F9F4 8009EDF4 8CF80000 */ lw $t8, ($a3) -/* 09F9F8 8009EDF8 24630001 */ addiu $v1, $v1, 1 -/* 09F9FC 8009EDFC 0302C821 */ addu $t9, $t8, $v0 -/* 09FA00 8009EE00 AF200000 */ sw $zero, ($t9) -/* 09FA04 8009EE04 8CC80000 */ lw $t0, ($a2) -/* 09FA08 8009EE08 24420004 */ addiu $v0, $v0, 4 -/* 09FA0C 8009EE0C 0068082A */ slt $at, $v1, $t0 -/* 09FA10 8009EE10 1420FFF4 */ bnez $at, .L8009EDE4 -/* 09FA14 8009EE14 00000000 */ nop -.L8009EE18: -/* 09FA18 8009EE18 8E290000 */ lw $t1, ($s1) -/* 09FA1C 8009EE1C 24050001 */ li $a1, 1 -/* 09FA20 8009EE20 85240002 */ lh $a0, 2($t1) -/* 09FA24 8009EE24 00000000 */ nop -/* 09FA28 8009EE28 308A3FFF */ andi $t2, $a0, 0x3fff -/* 09FA2C 8009EE2C 0C01F04B */ jal func_8007C12C -/* 09FA30 8009EE30 01402025 */ move $a0, $t2 -/* 09FA34 8009EE34 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FA38 8009EE38 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FA3C 8009EE3C 8CEB0000 */ lw $t3, ($a3) -/* 09FA40 8009EE40 24050001 */ li $a1, 1 -/* 09FA44 8009EE44 AD620004 */ sw $v0, 4($t3) -/* 09FA48 8009EE48 8E2C0000 */ lw $t4, ($s1) -/* 09FA4C 8009EE4C 00000000 */ nop -/* 09FA50 8009EE50 8584002E */ lh $a0, 0x2e($t4) -/* 09FA54 8009EE54 00000000 */ nop -/* 09FA58 8009EE58 308D3FFF */ andi $t5, $a0, 0x3fff -/* 09FA5C 8009EE5C 0C01F04B */ jal func_8007C12C -/* 09FA60 8009EE60 01A02025 */ move $a0, $t5 -/* 09FA64 8009EE64 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FA68 8009EE68 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FA6C 8009EE6C 8CEE0000 */ lw $t6, ($a3) -/* 09FA70 8009EE70 24050001 */ li $a1, 1 -/* 09FA74 8009EE74 ADC2005C */ sw $v0, 0x5c($t6) -/* 09FA78 8009EE78 8E2F0000 */ lw $t7, ($s1) -/* 09FA7C 8009EE7C 00000000 */ nop -/* 09FA80 8009EE80 85E40010 */ lh $a0, 0x10($t7) -/* 09FA84 8009EE84 00000000 */ nop -/* 09FA88 8009EE88 30983FFF */ andi $t8, $a0, 0x3fff -/* 09FA8C 8009EE8C 0C01F04B */ jal func_8007C12C -/* 09FA90 8009EE90 03002025 */ move $a0, $t8 -/* 09FA94 8009EE94 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FA98 8009EE98 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FA9C 8009EE9C 8CF90000 */ lw $t9, ($a3) -/* 09FAA0 8009EEA0 24050001 */ li $a1, 1 -/* 09FAA4 8009EEA4 AF220020 */ sw $v0, 0x20($t9) -/* 09FAA8 8009EEA8 8E280000 */ lw $t0, ($s1) -/* 09FAAC 8009EEAC 00000000 */ nop -/* 09FAB0 8009EEB0 85040022 */ lh $a0, 0x22($t0) -/* 09FAB4 8009EEB4 00000000 */ nop -/* 09FAB8 8009EEB8 30893FFF */ andi $t1, $a0, 0x3fff -/* 09FABC 8009EEBC 0C01F04B */ jal func_8007C12C -/* 09FAC0 8009EEC0 01202025 */ move $a0, $t1 -/* 09FAC4 8009EEC4 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FAC8 8009EEC8 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FACC 8009EECC 8CEA0000 */ lw $t2, ($a3) -/* 09FAD0 8009EED0 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 09FAD4 8009EED4 AD420044 */ sw $v0, 0x44($t2) -/* 09FAD8 8009EED8 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 09FADC 8009EEDC 24010003 */ li $at, 3 -/* 09FAE0 8009EEE0 10610003 */ beq $v1, $at, .L8009EEF0 -/* 09FAE4 8009EEE4 3405FFFF */ li $a1, 65535 -/* 09FAE8 8009EEE8 10000002 */ b .L8009EEF4 -/* 09FAEC 8009EEEC 00601025 */ move $v0, $v1 -.L8009EEF0: -/* 09FAF0 8009EEF0 24020004 */ li $v0, 4 -.L8009EEF4: -/* 09FAF4 8009EEF4 00022100 */ sll $a0, $v0, 4 -/* 09FAF8 8009EEF8 00822023 */ subu $a0, $a0, $v0 -/* 09FAFC 8009EEFC 00042080 */ sll $a0, $a0, 2 -/* 09FB00 8009EF00 00822023 */ subu $a0, $a0, $v0 -/* 09FB04 8009EF04 0C01C327 */ jal allocate_from_main_pool_safe -/* 09FB08 8009EF08 00042140 */ sll $a0, $a0, 5 -/* 09FB0C 8009EF0C 3C038012 */ lui $v1, %hi(D_80126CE0) # $v1, 0x8012 -/* 09FB10 8009EF10 24636CE0 */ addiu $v1, %lo(D_80126CE0) # addiu $v1, $v1, 0x6ce0 -/* 09FB14 8009EF14 244C0760 */ addiu $t4, $v0, 0x760 -/* 09FB18 8009EF18 258E0760 */ addiu $t6, $t4, 0x760 -/* 09FB1C 8009EF1C 25D80760 */ addiu $t8, $t6, 0x760 -/* 09FB20 8009EF20 AC620000 */ sw $v0, ($v1) -/* 09FB24 8009EF24 AC6C0004 */ sw $t4, 4($v1) -/* 09FB28 8009EF28 AC6E0008 */ sw $t6, 8($v1) -/* 09FB2C 8009EF2C 0C027C0D */ jal func_8009F034 -/* 09FB30 8009EF30 AC78000C */ sw $t8, 0xc($v1) -/* 09FB34 8009EF34 3C018012 */ lui $at, %hi(D_80126D64) # $at, 0x8012 -/* 09FB38 8009EF38 A0206D64 */ sb $zero, %lo(D_80126D64)($at) -/* 09FB3C 8009EF3C 3C018012 */ lui $at, %hi(D_80126D6C) # $at, 0x8012 -/* 09FB40 8009EF40 AC206D6C */ sw $zero, %lo(D_80126D6C)($at) -/* 09FB44 8009EF44 3C018012 */ lui $at, %hi(D_80126D48) # $at, 0x8012 -/* 09FB48 8009EF48 A4206D48 */ sh $zero, %lo(D_80126D48)($at) -/* 09FB4C 8009EF4C 24020004 */ li $v0, 4 -/* 09FB50 8009EF50 3C018012 */ lui $at, %hi(D_80126D66) # $at, 0x8012 -/* 09FB54 8009EF54 A0226D66 */ sb $v0, %lo(D_80126D66)($at) -/* 09FB58 8009EF58 3C018012 */ lui $at, %hi(D_80126D65) # $at, 0x8012 -/* 09FB5C 8009EF5C A0206D65 */ sb $zero, %lo(D_80126D65)($at) -/* 09FB60 8009EF60 3C018012 */ lui $at, %hi(D_80126D67) # $at, 0x8012 -/* 09FB64 8009EF64 A0226D67 */ sb $v0, %lo(D_80126D67)($at) -/* 09FB68 8009EF68 3C018012 */ lui $at, %hi(D_80126D69) # $at, 0x8012 -/* 09FB6C 8009EF6C 24190001 */ li $t9, 1 -/* 09FB70 8009EF70 A0396D69 */ sb $t9, %lo(D_80126D69)($at) -/* 09FB74 8009EF74 3C018012 */ lui $at, %hi(D_80126D68) # $at, 0x8012 -/* 09FB78 8009EF78 24080001 */ li $t0, 1 -/* 09FB7C 8009EF7C A0286D68 */ sb $t0, %lo(D_80126D68)($at) -/* 09FB80 8009EF80 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 -/* 09FB84 8009EF84 A0206D70 */ sb $zero, %lo(D_80126D70)($at) -/* 09FB88 8009EF88 3C018012 */ lui $at, %hi(D_80126D7C) # $at, 0x8012 -/* 09FB8C 8009EF8C A4206D7C */ sh $zero, %lo(D_80126D7C)($at) -/* 09FB90 8009EF90 3C018012 */ lui $at, %hi(D_80126D74) # $at, 0x8012 -/* 09FB94 8009EF94 AC206D74 */ sw $zero, %lo(D_80126D74)($at) -/* 09FB98 8009EF98 3C018012 */ lui $at, %hi(D_80126D3C) # $at, 0x8012 -/* 09FB9C 8009EF9C AC206D3C */ sw $zero, %lo(D_80126D3C)($at) -/* 09FBA0 8009EFA0 3C018012 */ lui $at, %hi(D_80126D44) # $at, 0x8012 -/* 09FBA4 8009EFA4 AC206D44 */ sw $zero, %lo(D_80126D44)($at) -/* 09FBA8 8009EFA8 3C018012 */ lui $at, %hi(D_80126CD3) # $at, 0x8012 -/* 09FBAC 8009EFAC A0206CD3 */ sb $zero, %lo(D_80126CD3)($at) -/* 09FBB0 8009EFB0 0C0078A7 */ jal get_misc_asset -/* 09FBB4 8009EFB4 2404003A */ li $a0, 58 -/* 09FBB8 8009EFB8 3C038012 */ lui $v1, %hi(D_80127194) # $v1, 0x8012 -/* 09FBBC 8009EFBC 24637194 */ addiu $v1, %lo(D_80127194) # addiu $v1, $v1, 0x7194 -/* 09FBC0 8009EFC0 AC620000 */ sw $v0, ($v1) -/* 09FBC4 8009EFC4 0C01FC7A */ jal func_8007F1E8 -/* 09FBC8 8009EFC8 00402025 */ move $a0, $v0 -/* 09FBCC 8009EFCC 00002025 */ move $a0, $zero -/* 09FBD0 8009EFD0 0C001298 */ jal func_80004A60 -/* 09FBD4 8009EFD4 24057FFF */ li $a1, 32767 -/* 09FBD8 8009EFD8 24040002 */ li $a0, 2 -/* 09FBDC 8009EFDC 0C001298 */ jal func_80004A60 -/* 09FBE0 8009EFE0 24057FFF */ li $a1, 32767 -/* 09FBE4 8009EFE4 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e -/* 09FBE8 8009EFE8 3C11800E */ lui $s1, %hi(D_800E2790) # $s1, 0x800e -/* 09FBEC 8009EFEC 26312790 */ addiu $s1, %lo(D_800E2790) # addiu $s1, $s1, 0x2790 -/* 09FBF0 8009EFF0 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 -.L8009EFF4: -/* 09FBF4 8009EFF4 8E040004 */ lw $a0, 4($s0) -/* 09FBF8 8009EFF8 A2000002 */ sb $zero, 2($s0) -/* 09FBFC 8009EFFC A2000003 */ sb $zero, 3($s0) -/* 09FC00 8009F000 10800003 */ beqz $a0, .L8009F010 -/* 09FC04 8009F004 A212000C */ sb $s2, 0xc($s0) -/* 09FC08 8009F008 0C001223 */ jal func_8000488C -/* 09FC0C 8009F00C 00000000 */ nop -.L8009F010: -/* 09FC10 8009F010 26100010 */ addiu $s0, $s0, 0x10 -/* 09FC14 8009F014 1611FFF7 */ bne $s0, $s1, .L8009EFF4 -/* 09FC18 8009F018 00000000 */ nop -/* 09FC1C 8009F01C 8FBF0024 */ lw $ra, 0x24($sp) -/* 09FC20 8009F020 8FB00018 */ lw $s0, 0x18($sp) -/* 09FC24 8009F024 8FB1001C */ lw $s1, 0x1c($sp) -/* 09FC28 8009F028 8FB20020 */ lw $s2, 0x20($sp) -/* 09FC2C 8009F02C 03E00008 */ jr $ra -/* 09FC30 8009F030 27BD0028 */ addiu $sp, $sp, 0x28 - +glabel func_8009ECF0 +/* 09F8F0 8009ECF0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 09F8F4 8009ECF4 AFBF0024 */ sw $ra, 0x24($sp) +/* 09F8F8 8009ECF8 AFB20020 */ sw $s2, 0x20($sp) +/* 09F8FC 8009ECFC AFB1001C */ sw $s1, 0x1c($sp) +/* 09F900 8009ED00 AFB00018 */ sw $s0, 0x18($sp) +/* 09F904 8009ED04 0C019884 */ jal get_viewport_count +/* 09F908 8009ED08 AFA40028 */ sw $a0, 0x28($sp) +/* 09F90C 8009ED0C 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 +/* 09F910 8009ED10 24636D0C */ addiu $v1, %lo(gHUDNumPlayers) # addiu $v1, $v1, 0x6d0c +/* 09F914 8009ED14 AC620000 */ sw $v0, ($v1) +/* 09F918 8009ED18 0C01994B */ jal set_active_viewports_and_object_stack_cap +/* 09F91C 8009ED1C 00402025 */ move $a0, $v0 +/* 09F920 8009ED20 3C018012 */ lui $at, %hi(D_80126D37) # $at, 0x8012 +/* 09F924 8009ED24 0C01BAA4 */ jal get_settings +/* 09F928 8009ED28 A0226D37 */ sb $v0, %lo(D_80126D37)($at) +/* 09F92C 8009ED2C 3C018012 */ lui $at, %hi(D_80127184) # $at, 0x8012 +/* 09F930 8009ED30 0C003877 */ jal check_if_silver_coin_race +/* 09F934 8009ED34 AC227184 */ sw $v0, %lo(D_80127184)($at) +/* 09F938 8009ED38 3C018012 */ lui $at, %hi(D_80127188) # $at, 0x8012 +/* 09F93C 8009ED3C A0227188 */ sb $v0, %lo(D_80127188)($at) +/* 09F940 8009ED40 0C01DB16 */ jal load_asset_section_from_rom +/* 09F944 8009ED44 24040011 */ li $a0, 17 +/* 09F948 8009ED48 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 +/* 09F94C 8009ED4C 3C118012 */ lui $s1, %hi(D_80126CF0) # $s1, 0x8012 +/* 09F950 8009ED50 26316CF0 */ addiu $s1, %lo(D_80126CF0) # addiu $s1, $s1, 0x6cf0 +/* 09F954 8009ED54 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 +/* 09F958 8009ED58 00007040 */ sll $t6, $zero, 1 +/* 09F95C 8009ED5C AE220000 */ sw $v0, ($s1) +/* 09F960 8009ED60 ACC00000 */ sw $zero, ($a2) +/* 09F964 8009ED64 004E7821 */ addu $t7, $v0, $t6 +/* 09F968 8009ED68 85F80000 */ lh $t8, ($t7) +/* 09F96C 8009ED6C 2412FFFF */ li $s2, -1 +/* 09F970 8009ED70 00401825 */ move $v1, $v0 +/* 09F974 8009ED74 12580009 */ beq $s2, $t8, .L8009ED9C +/* 09F978 8009ED78 00008025 */ move $s0, $zero +/* 09F97C 8009ED7C 26190001 */ addiu $t9, $s0, 1 +.L8009ED80: +/* 09F980 8009ED80 00194040 */ sll $t0, $t9, 1 +/* 09F984 8009ED84 00684821 */ addu $t1, $v1, $t0 +/* 09F988 8009ED88 ACD90000 */ sw $t9, ($a2) +/* 09F98C 8009ED8C 852A0000 */ lh $t2, ($t1) +/* 09F990 8009ED90 03208025 */ move $s0, $t9 +/* 09F994 8009ED94 164AFFFA */ bne $s2, $t2, .L8009ED80 +/* 09F998 8009ED98 26190001 */ addiu $t9, $s0, 1 +.L8009ED9C: +/* 09F99C 8009ED9C 00102080 */ sll $a0, $s0, 2 +/* 09F9A0 8009EDA0 00902021 */ addu $a0, $a0, $s0 +/* 09F9A4 8009EDA4 0C01C327 */ jal allocate_from_main_pool_safe +/* 09F9A8 8009EDA8 3405FFFF */ li $a1, 65535 +/* 09F9AC 8009EDAC 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 +/* 09F9B0 8009EDB0 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 +/* 09F9B4 8009EDB4 8CD00000 */ lw $s0, ($a2) +/* 09F9B8 8009EDB8 3C048012 */ lui $a0, %hi(D_80126CD8) # $a0, 0x8012 +/* 09F9BC 8009EDBC 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09F9C0 8009EDC0 00105880 */ sll $t3, $s0, 2 +/* 09F9C4 8009EDC4 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09F9C8 8009EDC8 24846CD8 */ addiu $a0, %lo(D_80126CD8) # addiu $a0, $a0, 0x6cd8 +/* 09F9CC 8009EDCC 01626821 */ addu $t5, $t3, $v0 +/* 09F9D0 8009EDD0 ACE20000 */ sw $v0, ($a3) +/* 09F9D4 8009EDD4 AC8D0000 */ sw $t5, ($a0) +/* 09F9D8 8009EDD8 1A00000F */ blez $s0, .L8009EE18 +/* 09F9DC 8009EDDC 00001825 */ move $v1, $zero +/* 09F9E0 8009EDE0 00001025 */ move $v0, $zero +.L8009EDE4: +/* 09F9E4 8009EDE4 8C8E0000 */ lw $t6, ($a0) +/* 09F9E8 8009EDE8 00000000 */ nop +/* 09F9EC 8009EDEC 01C37821 */ addu $t7, $t6, $v1 +/* 09F9F0 8009EDF0 A1E00000 */ sb $zero, ($t7) +/* 09F9F4 8009EDF4 8CF80000 */ lw $t8, ($a3) +/* 09F9F8 8009EDF8 24630001 */ addiu $v1, $v1, 1 +/* 09F9FC 8009EDFC 0302C821 */ addu $t9, $t8, $v0 +/* 09FA00 8009EE00 AF200000 */ sw $zero, ($t9) +/* 09FA04 8009EE04 8CC80000 */ lw $t0, ($a2) +/* 09FA08 8009EE08 24420004 */ addiu $v0, $v0, 4 +/* 09FA0C 8009EE0C 0068082A */ slt $at, $v1, $t0 +/* 09FA10 8009EE10 1420FFF4 */ bnez $at, .L8009EDE4 +/* 09FA14 8009EE14 00000000 */ nop +.L8009EE18: +/* 09FA18 8009EE18 8E290000 */ lw $t1, ($s1) +/* 09FA1C 8009EE1C 24050001 */ li $a1, 1 +/* 09FA20 8009EE20 85240002 */ lh $a0, 2($t1) +/* 09FA24 8009EE24 00000000 */ nop +/* 09FA28 8009EE28 308A3FFF */ andi $t2, $a0, 0x3fff +/* 09FA2C 8009EE2C 0C01F04B */ jal func_8007C12C +/* 09FA30 8009EE30 01402025 */ move $a0, $t2 +/* 09FA34 8009EE34 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FA38 8009EE38 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FA3C 8009EE3C 8CEB0000 */ lw $t3, ($a3) +/* 09FA40 8009EE40 24050001 */ li $a1, 1 +/* 09FA44 8009EE44 AD620004 */ sw $v0, 4($t3) +/* 09FA48 8009EE48 8E2C0000 */ lw $t4, ($s1) +/* 09FA4C 8009EE4C 00000000 */ nop +/* 09FA50 8009EE50 8584002E */ lh $a0, 0x2e($t4) +/* 09FA54 8009EE54 00000000 */ nop +/* 09FA58 8009EE58 308D3FFF */ andi $t5, $a0, 0x3fff +/* 09FA5C 8009EE5C 0C01F04B */ jal func_8007C12C +/* 09FA60 8009EE60 01A02025 */ move $a0, $t5 +/* 09FA64 8009EE64 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FA68 8009EE68 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FA6C 8009EE6C 8CEE0000 */ lw $t6, ($a3) +/* 09FA70 8009EE70 24050001 */ li $a1, 1 +/* 09FA74 8009EE74 ADC2005C */ sw $v0, 0x5c($t6) +/* 09FA78 8009EE78 8E2F0000 */ lw $t7, ($s1) +/* 09FA7C 8009EE7C 00000000 */ nop +/* 09FA80 8009EE80 85E40010 */ lh $a0, 0x10($t7) +/* 09FA84 8009EE84 00000000 */ nop +/* 09FA88 8009EE88 30983FFF */ andi $t8, $a0, 0x3fff +/* 09FA8C 8009EE8C 0C01F04B */ jal func_8007C12C +/* 09FA90 8009EE90 03002025 */ move $a0, $t8 +/* 09FA94 8009EE94 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FA98 8009EE98 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FA9C 8009EE9C 8CF90000 */ lw $t9, ($a3) +/* 09FAA0 8009EEA0 24050001 */ li $a1, 1 +/* 09FAA4 8009EEA4 AF220020 */ sw $v0, 0x20($t9) +/* 09FAA8 8009EEA8 8E280000 */ lw $t0, ($s1) +/* 09FAAC 8009EEAC 00000000 */ nop +/* 09FAB0 8009EEB0 85040022 */ lh $a0, 0x22($t0) +/* 09FAB4 8009EEB4 00000000 */ nop +/* 09FAB8 8009EEB8 30893FFF */ andi $t1, $a0, 0x3fff +/* 09FABC 8009EEBC 0C01F04B */ jal func_8007C12C +/* 09FAC0 8009EEC0 01202025 */ move $a0, $t1 +/* 09FAC4 8009EEC4 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FAC8 8009EEC8 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FACC 8009EECC 8CEA0000 */ lw $t2, ($a3) +/* 09FAD0 8009EED0 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 09FAD4 8009EED4 AD420044 */ sw $v0, 0x44($t2) +/* 09FAD8 8009EED8 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 09FADC 8009EEDC 24010003 */ li $at, 3 +/* 09FAE0 8009EEE0 10610003 */ beq $v1, $at, .L8009EEF0 +/* 09FAE4 8009EEE4 3405FFFF */ li $a1, 65535 +/* 09FAE8 8009EEE8 10000002 */ b .L8009EEF4 +/* 09FAEC 8009EEEC 00601025 */ move $v0, $v1 +.L8009EEF0: +/* 09FAF0 8009EEF0 24020004 */ li $v0, 4 +.L8009EEF4: +/* 09FAF4 8009EEF4 00022100 */ sll $a0, $v0, 4 +/* 09FAF8 8009EEF8 00822023 */ subu $a0, $a0, $v0 +/* 09FAFC 8009EEFC 00042080 */ sll $a0, $a0, 2 +/* 09FB00 8009EF00 00822023 */ subu $a0, $a0, $v0 +/* 09FB04 8009EF04 0C01C327 */ jal allocate_from_main_pool_safe +/* 09FB08 8009EF08 00042140 */ sll $a0, $a0, 5 +/* 09FB0C 8009EF0C 3C038012 */ lui $v1, %hi(D_80126CE0) # $v1, 0x8012 +/* 09FB10 8009EF10 24636CE0 */ addiu $v1, %lo(D_80126CE0) # addiu $v1, $v1, 0x6ce0 +/* 09FB14 8009EF14 244C0760 */ addiu $t4, $v0, 0x760 +/* 09FB18 8009EF18 258E0760 */ addiu $t6, $t4, 0x760 +/* 09FB1C 8009EF1C 25D80760 */ addiu $t8, $t6, 0x760 +/* 09FB20 8009EF20 AC620000 */ sw $v0, ($v1) +/* 09FB24 8009EF24 AC6C0004 */ sw $t4, 4($v1) +/* 09FB28 8009EF28 AC6E0008 */ sw $t6, 8($v1) +/* 09FB2C 8009EF2C 0C027C0D */ jal func_8009F034 +/* 09FB30 8009EF30 AC78000C */ sw $t8, 0xc($v1) +/* 09FB34 8009EF34 3C018012 */ lui $at, %hi(D_80126D64) # $at, 0x8012 +/* 09FB38 8009EF38 A0206D64 */ sb $zero, %lo(D_80126D64)($at) +/* 09FB3C 8009EF3C 3C018012 */ lui $at, %hi(gWrongWayNagTimer) # $at, 0x8012 +/* 09FB40 8009EF40 AC206D6C */ sw $zero, %lo(gWrongWayNagTimer)($at) +/* 09FB44 8009EF44 3C018012 */ lui $at, %hi(D_80126D48) # $at, 0x8012 +/* 09FB48 8009EF48 A4206D48 */ sh $zero, %lo(D_80126D48)($at) +/* 09FB4C 8009EF4C 24020004 */ li $v0, 4 +/* 09FB50 8009EF50 3C018012 */ lui $at, %hi(D_80126D66) # $at, 0x8012 +/* 09FB54 8009EF54 A0226D66 */ sb $v0, %lo(D_80126D66)($at) +/* 09FB58 8009EF58 3C018012 */ lui $at, %hi(D_80126D65) # $at, 0x8012 +/* 09FB5C 8009EF5C A0206D65 */ sb $zero, %lo(D_80126D65)($at) +/* 09FB60 8009EF60 3C018012 */ lui $at, %hi(D_80126D67) # $at, 0x8012 +/* 09FB64 8009EF64 A0226D67 */ sb $v0, %lo(D_80126D67)($at) +/* 09FB68 8009EF68 3C018012 */ lui $at, %hi(D_80126D69) # $at, 0x8012 +/* 09FB6C 8009EF6C 24190001 */ li $t9, 1 +/* 09FB70 8009EF70 A0396D69 */ sb $t9, %lo(D_80126D69)($at) +/* 09FB74 8009EF74 3C018012 */ lui $at, %hi(D_80126D68) # $at, 0x8012 +/* 09FB78 8009EF78 24080001 */ li $t0, 1 +/* 09FB7C 8009EF7C A0286D68 */ sb $t0, %lo(D_80126D68)($at) +/* 09FB80 8009EF80 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 +/* 09FB84 8009EF84 A0206D70 */ sb $zero, %lo(D_80126D70)($at) +/* 09FB88 8009EF88 3C018012 */ lui $at, %hi(D_80126D7C) # $at, 0x8012 +/* 09FB8C 8009EF8C A4206D7C */ sh $zero, %lo(D_80126D7C)($at) +/* 09FB90 8009EF90 3C018012 */ lui $at, %hi(D_80126D74) # $at, 0x8012 +/* 09FB94 8009EF94 AC206D74 */ sw $zero, %lo(D_80126D74)($at) +/* 09FB98 8009EF98 3C018012 */ lui $at, %hi(D_80126D3C) # $at, 0x8012 +/* 09FB9C 8009EF9C AC206D3C */ sw $zero, %lo(D_80126D3C)($at) +/* 09FBA0 8009EFA0 3C018012 */ lui $at, %hi(D_80126D44) # $at, 0x8012 +/* 09FBA4 8009EFA4 AC206D44 */ sw $zero, %lo(D_80126D44)($at) +/* 09FBA8 8009EFA8 3C018012 */ lui $at, %hi(D_80126CD3) # $at, 0x8012 +/* 09FBAC 8009EFAC A0206CD3 */ sb $zero, %lo(D_80126CD3)($at) +/* 09FBB0 8009EFB0 0C0078A7 */ jal get_misc_asset +/* 09FBB4 8009EFB4 2404003A */ li $a0, 58 +/* 09FBB8 8009EFB8 3C038012 */ lui $v1, %hi(D_80127194) # $v1, 0x8012 +/* 09FBBC 8009EFBC 24637194 */ addiu $v1, %lo(D_80127194) # addiu $v1, $v1, 0x7194 +/* 09FBC0 8009EFC0 AC620000 */ sw $v0, ($v1) +/* 09FBC4 8009EFC4 0C01FC7A */ jal func_8007F1E8 +/* 09FBC8 8009EFC8 00402025 */ move $a0, $v0 +/* 09FBCC 8009EFCC 00002025 */ move $a0, $zero +/* 09FBD0 8009EFD0 0C001298 */ jal func_80004A60 +/* 09FBD4 8009EFD4 24057FFF */ li $a1, 32767 +/* 09FBD8 8009EFD8 24040002 */ li $a0, 2 +/* 09FBDC 8009EFDC 0C001298 */ jal func_80004A60 +/* 09FBE0 8009EFE0 24057FFF */ li $a1, 32767 +/* 09FBE4 8009EFE4 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e +/* 09FBE8 8009EFE8 3C11800E */ lui $s1, %hi(D_800E2790) # $s1, 0x800e +/* 09FBEC 8009EFEC 26312790 */ addiu $s1, %lo(D_800E2790) # addiu $s1, $s1, 0x2790 +/* 09FBF0 8009EFF0 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 +.L8009EFF4: +/* 09FBF4 8009EFF4 8E040004 */ lw $a0, 4($s0) +/* 09FBF8 8009EFF8 A2000002 */ sb $zero, 2($s0) +/* 09FBFC 8009EFFC A2000003 */ sb $zero, 3($s0) +/* 09FC00 8009F000 10800003 */ beqz $a0, .L8009F010 +/* 09FC04 8009F004 A212000C */ sb $s2, 0xc($s0) +/* 09FC08 8009F008 0C001223 */ jal func_8000488C +/* 09FC0C 8009F00C 00000000 */ nop +.L8009F010: +/* 09FC10 8009F010 26100010 */ addiu $s0, $s0, 0x10 +/* 09FC14 8009F014 1611FFF7 */ bne $s0, $s1, .L8009EFF4 +/* 09FC18 8009F018 00000000 */ nop +/* 09FC1C 8009F01C 8FBF0024 */ lw $ra, 0x24($sp) +/* 09FC20 8009F020 8FB00018 */ lw $s0, 0x18($sp) +/* 09FC24 8009F024 8FB1001C */ lw $s1, 0x1c($sp) +/* 09FC28 8009F028 8FB20020 */ lw $s2, 0x20($sp) +/* 09FC2C 8009F02C 03E00008 */ jr $ra +/* 09FC30 8009F030 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/game_ui/func_8009F034.s b/asm/non_matchings/game_ui/func_8009F034.s index 9e761589..1dc1340e 100644 --- a/asm/non_matchings/game_ui/func_8009F034.s +++ b/asm/non_matchings/game_ui/func_8009F034.s @@ -52,7 +52,7 @@ glabel func_8009F034 /* 09FC94 8009F094 3C108000 */ lui $s0, %hi(osTvType) # $s0, 0x8000 /* 09FC98 8009F098 24010005 */ li $at, 5 /* 09FC9C 8009F09C 14410007 */ bne $v0, $at, .L8009F0BC -/* 09FCA0 8009F0A0 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 +/* 09FCA0 8009F0A0 3C0F8012 */ lui $t7, %hi(gHUDNumPlayers) # $t7, 0x8012 .L8009F0A4: /* 09FCA4 8009F0A4 3C018012 */ lui $at, %hi(D_80126D24) # $at, 0x8012 /* 09FCA8 8009F0A8 AC206D24 */ sw $zero, %lo(D_80126D24)($at) @@ -61,7 +61,7 @@ glabel func_8009F034 /* 09FCB4 8009F0B4 10000015 */ b .L8009F10C /* 09FCB8 8009F0B8 A02E6D34 */ sb $t6, %lo(D_80126D34)($at) .L8009F0BC: -/* 09FCBC 8009F0BC 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) +/* 09FCBC 8009F0BC 8DEF6D0C */ lw $t7, %lo(gHUDNumPlayers)($t7) /* 09FCC0 8009F0C0 24180140 */ li $t8, 320 /* 09FCC4 8009F0C4 29E10002 */ slti $at, $t7, 2 /* 09FCC8 8009F0C8 10200008 */ beqz $at, .L8009F0EC @@ -88,10 +88,10 @@ glabel func_8009F034 /* 09FD10 8009F110 A4206D2C */ sh $zero, %lo(D_80126D2C)($at) /* 09FD14 8009F114 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 /* 09FD18 8009F118 A0206CD4 */ sb $zero, %lo(D_80126CD4)($at) -/* 09FD1C 8009F11C 3C018012 */ lui $at, %hi(D_80126D36) # $at, 0x8012 -/* 09FD20 8009F120 A0206D36 */ sb $zero, %lo(D_80126D36)($at) -/* 09FD24 8009F124 3C018012 */ lui $at, %hi(D_80126D38) # $at, 0x8012 -/* 09FD28 8009F128 A0206D38 */ sb $zero, %lo(D_80126D38)($at) +/* 09FD1C 8009F11C 3C018012 */ lui $at, %hi(gHideRaceTimer) # $at, 0x8012 +/* 09FD20 8009F120 A0206D36 */ sb $zero, %lo(gHideRaceTimer)($at) +/* 09FD24 8009F124 3C018012 */ lui $at, %hi(gWrongWayNagPrefix) # $at, 0x8012 +/* 09FD28 8009F128 A0206D38 */ sb $zero, %lo(gWrongWayNagPrefix)($at) /* 09FD2C 8009F12C 3C018012 */ lui $at, %hi(D_80126D35) # $at, 0x8012 /* 09FD30 8009F130 A0206D35 */ sb $zero, %lo(D_80126D35)($at) /* 09FD34 8009F134 3C018012 */ lui $at, %hi(D_80126CD0) # $at, 0x8012 @@ -271,9 +271,9 @@ glabel func_8009F034 /* 09FFC8 8009F3C8 A1D9001D */ sb $t9, 0x1d($t6) /* 09FFCC 8009F3CC 8CB80000 */ lw $t8, ($a1) /* 09FFD0 8009F3D0 240F0005 */ li $t7, 5 -/* 09FFD4 8009F3D4 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 09FFD4 8009F3D4 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 /* 09FFD8 8009F3D8 A30F05DC */ sb $t7, 0x5dc($t8) -/* 09FFDC 8009F3DC 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 09FFDC 8009F3DC 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) /* 09FFE0 8009F3E0 3C014188 */ li $at, 0x41880000 # 17.000000 /* 09FFE4 8009F3E4 15830084 */ bne $t4, $v1, .L8009F5F8 /* 09FFE8 8009F3E8 00000000 */ nop @@ -406,12 +406,12 @@ glabel func_8009F034 /* 0A01CC 8009F5CC 24180003 */ li $t8, 3 /* 0A01D0 8009F5D0 E5E406F0 */ swc1 $f4, 0x6f0($t7) /* 0A01D4 8009F5D4 8CB90000 */ lw $t9, ($a1) -/* 0A01D8 8009F5D8 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A01D8 8009F5D8 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 /* 0A01DC 8009F5DC E7200650 */ swc1 $f0, 0x650($t9) /* 0A01E0 8009F5E0 8CAE0000 */ lw $t6, ($a1) /* 0A01E4 8009F5E4 00000000 */ nop /* 0A01E8 8009F5E8 A1D805DC */ sb $t8, 0x5dc($t6) -/* 0A01EC 8009F5EC 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A01EC 8009F5EC 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) /* 0A01F0 8009F5F0 10000072 */ b .L8009F7BC /* 0A01F4 8009F5F4 00000000 */ nop .L8009F5F8: @@ -539,8 +539,8 @@ glabel func_8009F034 /* 0A03A4 8009F7A4 24420008 */ addiu $v0, $v0, 8 /* 0A03A8 8009F7A8 1543FF9E */ bne $t2, $v1, .L8009F624 /* 0A03AC 8009F7AC 00000000 */ nop -/* 0A03B0 8009F7B0 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A03B4 8009F7B4 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A03B0 8009F7B0 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 +/* 0A03B4 8009F7B4 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) /* 0A03B8 8009F7B8 00000000 */ nop .L8009F7BC: /* 0A03BC 8009F7BC 10600046 */ beqz $v1, .L8009F8D8 @@ -619,8 +619,8 @@ glabel func_8009F034 /* 0A04C0 8009F8C0 24630020 */ addiu $v1, $v1, 0x20 /* 0A04C4 8009F8C4 1472FFC0 */ bne $v1, $s2, .L8009F7C8 /* 0A04C8 8009F8C8 00000000 */ nop -/* 0A04CC 8009F8CC 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A04D0 8009F8D0 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A04CC 8009F8CC 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 +/* 0A04D0 8009F8D0 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) /* 0A04D4 8009F8D4 00000000 */ nop .L8009F8D8: /* 0A04D8 8009F8D8 8CA40000 */ lw $a0, ($a1) diff --git a/asm/non_matchings/game_ui/func_800A01A0.s b/asm/non_matchings/game_ui/func_800A01A0.s deleted file mode 100644 index fe58a2cf..00000000 --- a/asm/non_matchings/game_ui/func_800A01A0.s +++ /dev/null @@ -1,672 +0,0 @@ -glabel func_800A01A0 -/* 0A0DA0 800A01A0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A0DA4 800A01A4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0A0DA8 800A01A8 AFA40030 */ sw $a0, 0x30($sp) -/* 0A0DAC 800A01AC AFA50034 */ sw $a1, 0x34($sp) -/* 0A0DB0 800A01B0 AFA60038 */ sw $a2, 0x38($sp) -/* 0A0DB4 800A01B4 0C019888 */ jal func_80066220 -/* 0A0DB8 800A01B8 AFA7003C */ sw $a3, 0x3c($sp) -/* 0A0DBC 800A01BC 3C0E8012 */ lui $t6, %hi(D_8012718A) # $t6, 0x8012 -/* 0A0DC0 800A01C0 91CE718A */ lbu $t6, %lo(D_8012718A)($t6) -/* 0A0DC4 800A01C4 3C018012 */ lui $at, %hi(D_80126D08) # $at, 0x8012 -/* 0A0DC8 800A01C8 11C00007 */ beqz $t6, .L800A01E8 -/* 0A0DCC 800A01CC AC226D08 */ sw $v0, %lo(D_80126D08)($at) -/* 0A0DD0 800A01D0 3C0F8012 */ lui $t7, %hi(D_80126D08) # $t7, 0x8012 -/* 0A0DD4 800A01D4 8DEF6D08 */ lw $t7, %lo(D_80126D08)($t7) -/* 0A0DD8 800A01D8 24180001 */ li $t8, 1 -/* 0A0DDC 800A01DC 0C006EC6 */ jal func_8001BB18 -/* 0A0DE0 800A01E0 030F2023 */ subu $a0, $t8, $t7 -/* 0A0DE4 800A01E4 AFA2003C */ sw $v0, 0x3c($sp) -.L800A01E8: -/* 0A0DE8 800A01E8 0C01AF6C */ jal get_current_level_header -/* 0A0DEC 800A01EC 00000000 */ nop -/* 0A0DF0 800A01F0 8FB9003C */ lw $t9, 0x3c($sp) -/* 0A0DF4 800A01F4 3C018012 */ lui $at, %hi(D_80126D60) # $at, 0x8012 -/* 0A0DF8 800A01F8 17200009 */ bnez $t9, .L800A0220 -/* 0A0DFC 800A01FC AC226D60 */ sw $v0, %lo(D_80126D60)($at) -/* 0A0E00 800A0200 0C007910 */ jal func_8001E440 -/* 0A0E04 800A0204 00000000 */ nop -/* 0A0E08 800A0208 2401000A */ li $at, 10 -/* 0A0E0C 800A020C 14410005 */ bne $v0, $at, .L800A0224 -/* 0A0E10 800A0210 8FA8003C */ lw $t0, 0x3c($sp) -/* 0A0E14 800A0214 0C006EC6 */ jal func_8001BB18 -/* 0A0E18 800A0218 00002025 */ move $a0, $zero -/* 0A0E1C 800A021C AFA2003C */ sw $v0, 0x3c($sp) -.L800A0220: -/* 0A0E20 800A0220 8FA8003C */ lw $t0, 0x3c($sp) -.L800A0224: -/* 0A0E24 800A0224 3C098012 */ lui $t1, %hi(D_80126D60) # $t1, 0x8012 -/* 0A0E28 800A0228 1100024F */ beqz $t0, .L800A0B68 -/* 0A0E2C 800A022C 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A0E30 800A0230 8D296D60 */ lw $t1, %lo(D_80126D60)($t1) -/* 0A0E34 800A0234 00000000 */ nop -/* 0A0E38 800A0238 912A00BC */ lbu $t2, 0xbc($t1) -/* 0A0E3C 800A023C 00000000 */ nop -/* 0A0E40 800A0240 314B0002 */ andi $t3, $t2, 2 -/* 0A0E44 800A0244 15600248 */ bnez $t3, .L800A0B68 -/* 0A0E48 800A0248 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A0E4C 800A024C 0C01B683 */ jal get_render_context -/* 0A0E50 800A0250 00000000 */ nop -/* 0A0E54 800A0254 24030001 */ li $v1, 1 -/* 0A0E58 800A0258 10430242 */ beq $v0, $v1, .L800A0B64 -/* 0A0E5C 800A025C 3C018012 */ lui $at, %hi(gHUDCurrDisplayList) # $at, 0x8012 -/* 0A0E60 800A0260 8FAC0030 */ lw $t4, 0x30($sp) -/* 0A0E64 800A0264 8FAE0034 */ lw $t6, 0x34($sp) -/* 0A0E68 800A0268 8D8D0000 */ lw $t5, ($t4) -/* 0A0E6C 800A026C 8FAF0038 */ lw $t7, 0x38($sp) -/* 0A0E70 800A0270 AC2D6CFC */ sw $t5, %lo(gHUDCurrDisplayList)($at) -/* 0A0E74 800A0274 8DD80000 */ lw $t8, ($t6) -/* 0A0E78 800A0278 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 -/* 0A0E7C 800A027C AC386D00 */ sw $t8, %lo(D_80126D00)($at) -/* 0A0E80 800A0280 8DF90000 */ lw $t9, ($t7) -/* 0A0E84 800A0284 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 -/* 0A0E88 800A0288 3C088012 */ lui $t0, %hi(D_80126CD1) # $t0, 0x8012 -/* 0A0E8C 800A028C 81086CD1 */ lb $t0, %lo(D_80126CD1)($t0) -/* 0A0E90 800A0290 AC396D04 */ sw $t9, %lo(D_80126D04)($at) -/* 0A0E94 800A0294 3C018012 */ lui $at, %hi(D_80127180) # $at, 0x8012 -/* 0A0E98 800A0298 11000010 */ beqz $t0, .L800A02DC -/* 0A0E9C 800A029C AC207180 */ sw $zero, %lo(D_80127180)($at) -/* 0A0EA0 800A02A0 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 -/* 0A0EA4 800A02A4 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 -/* 0A0EA8 800A02A8 80C90000 */ lb $t1, ($a2) -/* 0A0EAC 800A02AC 8FAA0040 */ lw $t2, 0x40($sp) -/* 0A0EB0 800A02B0 3C028012 */ lui $v0, %hi(D_8012718B) # $v0, 0x8012 -/* 0A0EB4 800A02B4 012A5821 */ addu $t3, $t1, $t2 -/* 0A0EB8 800A02B8 A0CB0000 */ sb $t3, ($a2) -/* 0A0EBC 800A02BC 80CC0000 */ lb $t4, ($a2) -/* 0A0EC0 800A02C0 9042718B */ lbu $v0, %lo(D_8012718B)($v0) -/* 0A0EC4 800A02C4 00000000 */ nop -/* 0A0EC8 800A02C8 004C082A */ slt $at, $v0, $t4 -/* 0A0ECC 800A02CC 1020000F */ beqz $at, .L800A030C -/* 0A0ED0 800A02D0 00000000 */ nop -/* 0A0ED4 800A02D4 1000000D */ b .L800A030C -/* 0A0ED8 800A02D8 A0C20000 */ sb $v0, ($a2) -.L800A02DC: -/* 0A0EDC 800A02DC 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 -/* 0A0EE0 800A02E0 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 -/* 0A0EE4 800A02E4 80CD0000 */ lb $t5, ($a2) -/* 0A0EE8 800A02E8 8FAE0040 */ lw $t6, 0x40($sp) -/* 0A0EEC 800A02EC 00000000 */ nop -/* 0A0EF0 800A02F0 01AEC023 */ subu $t8, $t5, $t6 -/* 0A0EF4 800A02F4 A0D80000 */ sb $t8, ($a2) -/* 0A0EF8 800A02F8 80CF0000 */ lb $t7, ($a2) -/* 0A0EFC 800A02FC 00000000 */ nop -/* 0A0F00 800A0300 05E10002 */ bgez $t7, .L800A030C -/* 0A0F04 800A0304 00000000 */ nop -/* 0A0F08 800A0308 A0C00000 */ sb $zero, ($a2) -.L800A030C: -/* 0A0F0C 800A030C 3C198012 */ lui $t9, %hi(D_80126CD2) # $t9, 0x8012 -/* 0A0F10 800A0310 83396CD2 */ lb $t9, %lo(D_80126CD2)($t9) -/* 0A0F14 800A0314 8FA8003C */ lw $t0, 0x3c($sp) -/* 0A0F18 800A0318 17200212 */ bnez $t9, .L800A0B64 -/* 0A0F1C 800A031C 3C098012 */ lui $t1, %hi(D_8012718A) # $t1, 0x8012 -/* 0A0F20 800A0320 9129718A */ lbu $t1, %lo(D_8012718A)($t1) -/* 0A0F24 800A0324 8D020064 */ lw $v0, 0x64($t0) -/* 0A0F28 800A0328 11200006 */ beqz $t1, .L800A0344 -/* 0A0F2C 800A032C 3C0D8012 */ lui $t5, %hi(D_80126D08) # $t5, 0x8012 -/* 0A0F30 800A0330 844A0000 */ lh $t2, ($v0) -/* 0A0F34 800A0334 3C018012 */ lui $at, %hi(D_80126D10) # $at, 0x8012 -/* 0A0F38 800A0338 006A5823 */ subu $t3, $v1, $t2 -/* 0A0F3C 800A033C 10000004 */ b .L800A0350 -/* 0A0F40 800A0340 AC2B6D10 */ sw $t3, %lo(D_80126D10)($at) -.L800A0344: -/* 0A0F44 800A0344 844C0000 */ lh $t4, ($v0) -/* 0A0F48 800A0348 3C018012 */ lui $at, %hi(D_80126D10) # $at, 0x8012 -/* 0A0F4C 800A034C AC2C6D10 */ sw $t4, %lo(D_80126D10)($at) -.L800A0350: -/* 0A0F50 800A0350 8DAD6D08 */ lw $t5, %lo(D_80126D08)($t5) -/* 0A0F54 800A0354 3C188012 */ lui $t8, %hi(D_80126CE0) # $t8, 0x8012 -/* 0A0F58 800A0358 000D7080 */ sll $t6, $t5, 2 -/* 0A0F5C 800A035C 030EC021 */ addu $t8, $t8, $t6 -/* 0A0F60 800A0360 8F186CE0 */ lw $t8, %lo(D_80126CE0)($t8) -/* 0A0F64 800A0364 3C018012 */ lui $at, %hi(D_80126CDC) # $at, 0x8012 -/* 0A0F68 800A0368 AFA20028 */ sw $v0, 0x28($sp) -/* 0A0F6C 800A036C 0C007910 */ jal func_8001E440 -/* 0A0F70 800A0370 AC386CDC */ sw $t8, %lo(D_80126CDC)($at) -/* 0A0F74 800A0374 2401000A */ li $at, 10 -/* 0A0F78 800A0378 1041008B */ beq $v0, $at, .L800A05A8 -/* 0A0F7C 800A037C 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 -/* 0A0F80 800A0380 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) -/* 0A0F84 800A0384 3C048012 */ lui $a0, %hi(D_80126D10) # $a0, 0x8012 -/* 0A0F88 800A0388 15E0002F */ bnez $t7, .L800A0448 -/* 0A0F8C 800A038C 00000000 */ nop -/* 0A0F90 800A0390 3C048012 */ lui $a0, %hi(D_80126D10) # $a0, 0x8012 -/* 0A0F94 800A0394 8C846D10 */ lw $a0, %lo(D_80126D10)($a0) -/* 0A0F98 800A0398 0C01A955 */ jal get_buttons_pressed_from_player -/* 0A0F9C 800A039C 00000000 */ nop -/* 0A0FA0 800A03A0 30590004 */ andi $t9, $v0, 4 -/* 0A0FA4 800A03A4 13200059 */ beqz $t9, .L800A050C -/* 0A0FA8 800A03A8 00000000 */ nop -/* 0A0FAC 800A03AC 8FA80028 */ lw $t0, 0x28($sp) -/* 0A0FB0 800A03B0 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A0FB4 800A03B4 810901D8 */ lb $t1, 0x1d8($t0) -/* 0A0FB8 800A03B8 00000000 */ nop -/* 0A0FBC 800A03BC 15200053 */ bnez $t1, .L800A050C -/* 0A0FC0 800A03C0 00000000 */ nop -/* 0A0FC4 800A03C4 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A0FC8 800A03C8 24010003 */ li $at, 3 -/* 0A0FCC 800A03CC 8142004C */ lb $v0, 0x4c($t2) -/* 0A0FD0 800A03D0 3C0B8012 */ lui $t3, %hi(D_80126D34) # $t3, 0x8012 -/* 0A0FD4 800A03D4 10400003 */ beqz $v0, .L800A03E4 -/* 0A0FD8 800A03D8 00000000 */ nop -/* 0A0FDC 800A03DC 1441004B */ bne $v0, $at, .L800A050C -/* 0A0FE0 800A03E0 00000000 */ nop -.L800A03E4: -/* 0A0FE4 800A03E4 916B6D34 */ lbu $t3, %lo(D_80126D34)($t3) -/* 0A0FE8 800A03E8 3C02800E */ lui $v0, %hi(D_800E2790) # $v0, 0x800e -/* 0A0FEC 800A03EC 11600047 */ beqz $t3, .L800A050C -/* 0A0FF0 800A03F0 24422790 */ addiu $v0, %lo(D_800E2790) # addiu $v0, $v0, 0x2790 -/* 0A0FF4 800A03F4 904C0000 */ lbu $t4, ($v0) -/* 0A0FF8 800A03F8 240D0001 */ li $t5, 1 -/* 0A0FFC 800A03FC 01AC7023 */ subu $t6, $t5, $t4 -/* 0A1000 800A0400 31C400FF */ andi $a0, $t6, 0xff -/* 0A1004 800A0404 2484014F */ addiu $a0, $a0, 0x14f -/* 0A1008 800A0408 3098FFFF */ andi $t8, $a0, 0xffff -/* 0A100C 800A040C A04E0000 */ sb $t6, ($v0) -/* 0A1010 800A0410 03002025 */ move $a0, $t8 -/* 0A1014 800A0414 0C000741 */ jal play_sound_global -/* 0A1018 800A0418 00002825 */ move $a1, $zero -/* 0A101C 800A041C 3C02800E */ lui $v0, %hi(D_800E2790) # $v0, 0x800e -/* 0A1020 800A0420 24422790 */ addiu $v0, %lo(D_800E2790) # addiu $v0, $v0, 0x2790 -/* 0A1024 800A0424 904F0000 */ lbu $t7, ($v0) -/* 0A1028 800A0428 24190078 */ li $t9, 120 -/* 0A102C 800A042C 11E00004 */ beqz $t7, .L800A0440 -/* 0A1030 800A0430 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e -/* 0A1034 800A0434 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e -/* 0A1038 800A0438 10000034 */ b .L800A050C -/* 0A103C 800A043C A03927B8 */ sb $t9, %lo(D_800E27B8)($at) -.L800A0440: -/* 0A1040 800A0440 10000032 */ b .L800A050C -/* 0A1044 800A0444 A02027B8 */ sb $zero, %lo(D_800E27B8)($at) -.L800A0448: -/* 0A1048 800A0448 8C846D10 */ lw $a0, %lo(D_80126D10)($a0) -/* 0A104C 800A044C 0C01A955 */ jal get_buttons_pressed_from_player -/* 0A1050 800A0450 00000000 */ nop -/* 0A1054 800A0454 30480004 */ andi $t0, $v0, 4 -/* 0A1058 800A0458 1100002C */ beqz $t0, .L800A050C -/* 0A105C 800A045C 00000000 */ nop -/* 0A1060 800A0460 8FA90028 */ lw $t1, 0x28($sp) -/* 0A1064 800A0464 3C0B8012 */ lui $t3, %hi(D_80126D60) # $t3, 0x8012 -/* 0A1068 800A0468 812A01D8 */ lb $t2, 0x1d8($t1) -/* 0A106C 800A046C 00000000 */ nop -/* 0A1070 800A0470 15400026 */ bnez $t2, .L800A050C -/* 0A1074 800A0474 00000000 */ nop -/* 0A1078 800A0478 8D6B6D60 */ lw $t3, %lo(D_80126D60)($t3) -/* 0A107C 800A047C 3C0E8012 */ lui $t6, %hi(D_80126D34) # $t6, 0x8012 -/* 0A1080 800A0480 816D004C */ lb $t5, 0x4c($t3) -/* 0A1084 800A0484 00000000 */ nop -/* 0A1088 800A0488 31AC0040 */ andi $t4, $t5, 0x40 -/* 0A108C 800A048C 1580001F */ bnez $t4, .L800A050C -/* 0A1090 800A0490 00000000 */ nop -/* 0A1094 800A0494 91CE6D34 */ lbu $t6, %lo(D_80126D34)($t6) -/* 0A1098 800A0498 3C188012 */ lui $t8, %hi(D_80126D0C) # $t8, 0x8012 -/* 0A109C 800A049C 11C0001B */ beqz $t6, .L800A050C -/* 0A10A0 800A04A0 3C19800E */ lui $t9, %hi(D_800E2794) # $t9, 0x800e -/* 0A10A4 800A04A4 8F186D0C */ lw $t8, %lo(D_80126D0C)($t8) -/* 0A10A8 800A04A8 85280000 */ lh $t0, ($t1) -/* 0A10AC 800A04AC 27392794 */ addiu $t9, %lo(D_800E2794) # addiu $t9, $t9, 0x2794 -/* 0A10B0 800A04B0 00187880 */ sll $t7, $t8, 2 -/* 0A10B4 800A04B4 01F91821 */ addu $v1, $t7, $t9 -/* 0A10B8 800A04B8 00681021 */ addu $v0, $v1, $t0 -/* 0A10BC 800A04BC 90440000 */ lbu $a0, ($v0) -/* 0A10C0 800A04C0 00000000 */ nop -/* 0A10C4 800A04C4 28810003 */ slti $at, $a0, 3 -/* 0A10C8 800A04C8 10200003 */ beqz $at, .L800A04D8 -/* 0A10CC 800A04CC 248A0001 */ addiu $t2, $a0, 1 -/* 0A10D0 800A04D0 10000002 */ b .L800A04DC -/* 0A10D4 800A04D4 A04A0000 */ sb $t2, ($v0) -.L800A04D8: -/* 0A10D8 800A04D8 A0400000 */ sb $zero, ($v0) -.L800A04DC: -/* 0A10DC 800A04DC 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A10E0 800A04E0 240F0150 */ li $t7, 336 -/* 0A10E4 800A04E4 856D0000 */ lh $t5, ($t3) -/* 0A10E8 800A04E8 00002825 */ move $a1, $zero -/* 0A10EC 800A04EC 006D6021 */ addu $t4, $v1, $t5 -/* 0A10F0 800A04F0 918E0000 */ lbu $t6, ($t4) -/* 0A10F4 800A04F4 00000000 */ nop -/* 0A10F8 800A04F8 2DD80001 */ sltiu $t8, $t6, 1 -/* 0A10FC 800A04FC 01F82023 */ subu $a0, $t7, $t8 -/* 0A1100 800A0500 3099FFFF */ andi $t9, $a0, 0xffff -/* 0A1104 800A0504 0C000741 */ jal play_sound_global -/* 0A1108 800A0508 03202025 */ move $a0, $t9 -.L800A050C: -/* 0A110C 800A050C 3C048012 */ lui $a0, %hi(D_80126D10) # $a0, 0x8012 -/* 0A1110 800A0510 8C846D10 */ lw $a0, %lo(D_80126D10)($a0) -/* 0A1114 800A0514 0C01A955 */ jal get_buttons_pressed_from_player -/* 0A1118 800A0518 00000000 */ nop -/* 0A111C 800A051C 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 -/* 0A1120 800A0520 30490001 */ andi $t1, $v0, 1 -/* 0A1124 800A0524 11200020 */ beqz $t1, .L800A05A8 -/* 0A1128 800A0528 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 -/* 0A112C 800A052C 8FA80028 */ lw $t0, 0x28($sp) -/* 0A1130 800A0530 3C0B8012 */ lui $t3, %hi(D_80126D34) # $t3, 0x8012 -/* 0A1134 800A0534 810A01D8 */ lb $t2, 0x1d8($t0) -/* 0A1138 800A0538 00000000 */ nop -/* 0A113C 800A053C 1540001A */ bnez $t2, .L800A05A8 -/* 0A1140 800A0540 00000000 */ nop -/* 0A1144 800A0544 916B6D34 */ lbu $t3, %lo(D_80126D34)($t3) -/* 0A1148 800A0548 00000000 */ nop -/* 0A114C 800A054C 11600016 */ beqz $t3, .L800A05A8 -/* 0A1150 800A0550 00000000 */ nop -/* 0A1154 800A0554 80CD0000 */ lb $t5, ($a2) -/* 0A1158 800A0558 3C0C8012 */ lui $t4, %hi(D_80126D0C) # $t4, 0x8012 -/* 0A115C 800A055C 15A00012 */ bnez $t5, .L800A05A8 -/* 0A1160 800A0560 3C0E800E */ lui $t6, %hi(D_800E27A4) # $t6, 0x800e -/* 0A1164 800A0564 8D8C6D0C */ lw $t4, %lo(D_80126D0C)($t4) -/* 0A1168 800A0568 25CE27A4 */ addiu $t6, %lo(D_800E27A4) # addiu $t6, $t6, 0x27a4 -/* 0A116C 800A056C 018E1021 */ addu $v0, $t4, $t6 -/* 0A1170 800A0570 804F0000 */ lb $t7, ($v0) -/* 0A1174 800A0574 24180001 */ li $t8, 1 -/* 0A1178 800A0578 030FC823 */ subu $t9, $t8, $t7 -/* 0A117C 800A057C A0590000 */ sb $t9, ($v0) -/* 0A1180 800A0580 80490000 */ lb $t1, ($v0) -/* 0A1184 800A0584 00002825 */ move $a1, $zero -/* 0A1188 800A0588 15200005 */ bnez $t1, .L800A05A0 -/* 0A118C 800A058C 2404005E */ li $a0, 94 -/* 0A1190 800A0590 0C000741 */ jal play_sound_global -/* 0A1194 800A0594 2404005D */ li $a0, 93 -/* 0A1198 800A0598 10000003 */ b .L800A05A8 -/* 0A119C 800A059C 00000000 */ nop -.L800A05A0: -/* 0A11A0 800A05A0 0C000741 */ jal play_sound_global -/* 0A11A4 800A05A4 00002825 */ move $a1, $zero -.L800A05A8: -/* 0A11A8 800A05A8 3C088012 */ lui $t0, %hi(D_80126CD4) # $t0, 0x8012 -/* 0A11AC 800A05AC 81086CD4 */ lb $t0, %lo(D_80126CD4)($t0) -/* 0A11B0 800A05B0 00000000 */ nop -/* 0A11B4 800A05B4 15000024 */ bnez $t0, .L800A0648 -/* 0A11B8 800A05B8 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A11BC 800A05BC 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A11C0 800A05C0 2403007F */ li $v1, 127 -/* 0A11C4 800A05C4 8142004C */ lb $v0, 0x4c($t2) -/* 0A11C8 800A05C8 00000000 */ nop -/* 0A11CC 800A05CC 304B0040 */ andi $t3, $v0, 0x40 -/* 0A11D0 800A05D0 15600006 */ bnez $t3, .L800A05EC -/* 0A11D4 800A05D4 00000000 */ nop -/* 0A11D8 800A05D8 10400004 */ beqz $v0, .L800A05EC -/* 0A11DC 800A05DC 24010003 */ li $at, 3 -/* 0A11E0 800A05E0 10410002 */ beq $v0, $at, .L800A05EC -/* 0A11E4 800A05E4 24010008 */ li $at, 8 -/* 0A11E8 800A05E8 1441000D */ bne $v0, $at, .L800A0620 -.L800A05EC: -/* 0A11EC 800A05EC 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e -/* 0A11F0 800A05F0 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 -/* 0A11F4 800A05F4 A0430002 */ sb $v1, 2($v0) -/* 0A11F8 800A05F8 0C000611 */ jal func_80001844 -/* 0A11FC 800A05FC A0430012 */ sb $v1, 0x12($v0) -/* 0A1200 800A0600 0C0004BA */ jal func_800012E8 -/* 0A1204 800A0604 00000000 */ nop -/* 0A1208 800A0608 0C0002CD */ jal play_music -/* 0A120C 800A060C 2404001E */ li $a0, 30 -/* 0A1210 800A0610 0C000C63 */ jal set_sound_channel_count -/* 0A1214 800A0614 2404000C */ li $a0, 12 -/* 0A1218 800A0618 10000005 */ b .L800A0630 -/* 0A121C 800A061C 00000000 */ nop -.L800A0620: -/* 0A1220 800A0620 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0A1224 800A0624 44816000 */ mtc1 $at, $f12 -/* 0A1228 800A0628 0C01AF44 */ jal func_8006BD10 -/* 0A122C 800A062C 00000000 */ nop -.L800A0630: -/* 0A1230 800A0630 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 -/* 0A1234 800A0634 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 -/* 0A1238 800A0638 804D0000 */ lb $t5, ($v0) -/* 0A123C 800A063C 00000000 */ nop -/* 0A1240 800A0640 25AC0001 */ addiu $t4, $t5, 1 -/* 0A1244 800A0644 A04C0000 */ sb $t4, ($v0) -.L800A0648: -/* 0A1248 800A0648 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A124C 800A064C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A1250 800A0650 8C820000 */ lw $v0, ($a0) -/* 0A1254 800A0654 3C18E700 */ lui $t8, 0xe700 -/* 0A1258 800A0658 244E0008 */ addiu $t6, $v0, 8 -/* 0A125C 800A065C AC8E0000 */ sw $t6, ($a0) -/* 0A1260 800A0660 AC400004 */ sw $zero, 4($v0) -/* 0A1264 800A0664 0C01E037 */ jal init_rsp -/* 0A1268 800A0668 AC580000 */ sw $t8, ($v0) -/* 0A126C 800A066C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A1270 800A0670 0C01E015 */ jal init_rdp_and_framebuffer -/* 0A1274 800A0674 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A1278 800A0678 0C01EB8A */ jal func_8007AE28 -/* 0A127C 800A067C 2404FFFF */ li $a0, -1 -/* 0A1280 800A0680 0C01EB83 */ jal func_8007AE0C -/* 0A1284 800A0684 24040002 */ li $a0, 2 -/* 0A1288 800A0688 0C01EFC7 */ jal func_8007BF1C -/* 0A128C 800A068C 00002025 */ move $a0, $zero -/* 0A1290 800A0690 0C019944 */ jal check_if_showing_cutscene_camera -/* 0A1294 800A0694 00000000 */ nop -/* 0A1298 800A0698 14400066 */ bnez $v0, .L800A0834 -/* 0A129C 800A069C 3C0F8012 */ lui $t7, %hi(D_80126D34) # $t7, 0x8012 -/* 0A12A0 800A06A0 91EF6D34 */ lbu $t7, %lo(D_80126D34)($t7) -/* 0A12A4 800A06A4 8FB90028 */ lw $t9, 0x28($sp) -/* 0A12A8 800A06A8 15E00062 */ bnez $t7, .L800A0834 -/* 0A12AC 800A06AC 00000000 */ nop -/* 0A12B0 800A06B0 87290000 */ lh $t1, ($t9) -/* 0A12B4 800A06B4 3C088012 */ lui $t0, %hi(D_80126D35) # $t0, 0x8012 -/* 0A12B8 800A06B8 1520005E */ bnez $t1, .L800A0834 -/* 0A12BC 800A06BC 00000000 */ nop -/* 0A12C0 800A06C0 91086D35 */ lbu $t0, %lo(D_80126D35)($t0) -/* 0A12C4 800A06C4 3C028012 */ lui $v0, %hi(D_80126D2C) # $v0, 0x8012 -/* 0A12C8 800A06C8 11000039 */ beqz $t0, .L800A07B0 -/* 0A12CC 800A06CC 3C098012 */ lui $t1, %hi(D_80126CD4) # $t1, 0x8012 -/* 0A12D0 800A06D0 24426D2C */ addiu $v0, %lo(D_80126D2C) # addiu $v0, $v0, 0x6d2c -/* 0A12D4 800A06D4 84440000 */ lh $a0, ($v0) -/* 0A12D8 800A06D8 0C01C1F1 */ jal cosine_s -/* 0A12DC 800A06DC 00000000 */ nop -/* 0A12E0 800A06E0 3C048012 */ lui $a0, %hi(D_80126D30) # $a0, 0x8012 -/* 0A12E4 800A06E4 24846D30 */ addiu $a0, %lo(D_80126D30) # addiu $a0, $a0, 0x6d30 -/* 0A12E8 800A06E8 C4820000 */ lwc1 $f2, ($a0) -/* 0A12EC 800A06EC 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0A12F0 800A06F0 46020102 */ mul.s $f4, $f0, $f2 -/* 0A12F4 800A06F4 44813000 */ mtc1 $at, $f6 -/* 0A12F8 800A06F8 3C028012 */ lui $v0, %hi(D_80126D2C) # $v0, 0x8012 -/* 0A12FC 800A06FC 8FAC0040 */ lw $t4, 0x40($sp) -/* 0A1300 800A0700 46062202 */ mul.s $f8, $f4, $f6 -/* 0A1304 800A0704 24426D2C */ addiu $v0, %lo(D_80126D2C) # addiu $v0, $v0, 0x6d2c -/* 0A1308 800A0708 000C72C0 */ sll $t6, $t4, 0xb -/* 0A130C 800A070C 444AF800 */ cfc1 $t2, $31 -/* 0A1310 800A0710 00000000 */ nop -/* 0A1314 800A0714 35410003 */ ori $at, $t2, 3 -/* 0A1318 800A0718 38210002 */ xori $at, $at, 2 -/* 0A131C 800A071C 44C1F800 */ ctc1 $at, $31 -/* 0A1320 800A0720 3C018012 */ lui $at, %hi(D_80126D28) # $at, 0x8012 -/* 0A1324 800A0724 460042A4 */ cvt.w.s $f10, $f8 -/* 0A1328 800A0728 440B5000 */ mfc1 $t3, $f10 -/* 0A132C 800A072C 44CAF800 */ ctc1 $t2, $31 -/* 0A1330 800A0730 AC2B6D28 */ sw $t3, %lo(D_80126D28)($at) -/* 0A1334 800A0734 944D0000 */ lhu $t5, ($v0) -/* 0A1338 800A0738 34018000 */ li $at, 32768 -/* 0A133C 800A073C 01AEC021 */ addu $t8, $t5, $t6 -/* 0A1340 800A0740 3303FFFF */ andi $v1, $t8, 0xffff -/* 0A1344 800A0744 0061082A */ slt $at, $v1, $at -/* 0A1348 800A0748 1420003A */ bnez $at, .L800A0834 -/* 0A134C 800A074C A4580000 */ sh $t8, ($v0) -/* 0A1350 800A0750 24018000 */ li $at, -32768 -/* 0A1354 800A0754 00617821 */ addu $t7, $v1, $at -/* 0A1358 800A0758 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A135C 800A075C 44818000 */ mtc1 $at, $f16 -/* 0A1360 800A0760 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 0A1364 800A0764 46101483 */ div.s $f18, $f2, $f16 -/* 0A1368 800A0768 44812800 */ mtc1 $at, $f5 -/* 0A136C 800A076C 44802000 */ mtc1 $zero, $f4 -/* 0A1370 800A0770 3C038012 */ lui $v1, %hi(D_80126D24) # $v1, 0x8012 -/* 0A1374 800A0774 A44F0000 */ sh $t7, ($v0) -/* 0A1378 800A0778 24636D24 */ addiu $v1, %lo(D_80126D24) # addiu $v1, $v1, 0x6d24 -/* 0A137C 800A077C 3C018012 */ lui $at, %hi(D_80126D34) # $at, 0x8012 -/* 0A1380 800A0780 24190001 */ li $t9, 1 -/* 0A1384 800A0784 E4920000 */ swc1 $f18, ($a0) -/* 0A1388 800A0788 C4860000 */ lwc1 $f6, ($a0) -/* 0A138C 800A078C 00000000 */ nop -/* 0A1390 800A0790 46003221 */ cvt.d.s $f8, $f6 -/* 0A1394 800A0794 4624403E */ c.le.d $f8, $f4 -/* 0A1398 800A0798 00000000 */ nop -/* 0A139C 800A079C 45000025 */ bc1f .L800A0834 -/* 0A13A0 800A07A0 00000000 */ nop -/* 0A13A4 800A07A4 A0396D34 */ sb $t9, %lo(D_80126D34)($at) -/* 0A13A8 800A07A8 10000022 */ b .L800A0834 -/* 0A13AC 800A07AC AC600000 */ sw $zero, ($v1) -.L800A07B0: -/* 0A13B0 800A07B0 81296CD4 */ lb $t1, %lo(D_80126CD4)($t1) -/* 0A13B4 800A07B4 24010001 */ li $at, 1 -/* 0A13B8 800A07B8 15210008 */ bne $t1, $at, .L800A07DC -/* 0A13BC 800A07BC 24040016 */ li $a0, 22 -/* 0A13C0 800A07C0 0C000741 */ jal play_sound_global -/* 0A13C4 800A07C4 00002825 */ move $a1, $zero -/* 0A13C8 800A07C8 3C088012 */ lui $t0, %hi(D_80126CD4) # $t0, 0x8012 -/* 0A13CC 800A07CC 81086CD4 */ lb $t0, %lo(D_80126CD4)($t0) -/* 0A13D0 800A07D0 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 -/* 0A13D4 800A07D4 250A0001 */ addiu $t2, $t0, 1 -/* 0A13D8 800A07D8 A02A6CD4 */ sb $t2, %lo(D_80126CD4)($at) -.L800A07DC: -/* 0A13DC 800A07DC 8FAC0040 */ lw $t4, 0x40($sp) -/* 0A13E0 800A07E0 3C038012 */ lui $v1, %hi(D_80126D24) # $v1, 0x8012 -/* 0A13E4 800A07E4 000C6880 */ sll $t5, $t4, 2 -/* 0A13E8 800A07E8 24636D24 */ addiu $v1, %lo(D_80126D24) # addiu $v1, $v1, 0x6d24 -/* 0A13EC 800A07EC 01AC6823 */ subu $t5, $t5, $t4 -/* 0A13F0 800A07F0 8C6B0000 */ lw $t3, ($v1) -/* 0A13F4 800A07F4 000D6880 */ sll $t5, $t5, 2 -/* 0A13F8 800A07F8 01AC6821 */ addu $t5, $t5, $t4 -/* 0A13FC 800A07FC 016D1023 */ subu $v0, $t3, $t5 -/* 0A1400 800A0800 04410003 */ bgez $v0, .L800A0810 -/* 0A1404 800A0804 AC620000 */ sw $v0, ($v1) -/* 0A1408 800A0808 AC600000 */ sw $zero, ($v1) -/* 0A140C 800A080C 00001025 */ move $v0, $zero -.L800A0810: -/* 0A1410 800A0810 14400008 */ bnez $v0, .L800A0834 -/* 0A1414 800A0814 24180001 */ li $t8, 1 -/* 0A1418 800A0818 3C018012 */ lui $at, %hi(D_80126D35) # $at, 0x8012 -/* 0A141C 800A081C A0386D35 */ sb $t8, %lo(D_80126D35)($at) -/* 0A1420 800A0820 24040017 */ li $a0, 23 -/* 0A1424 800A0824 0C000741 */ jal play_sound_global -/* 0A1428 800A0828 00002825 */ move $a1, $zero -/* 0A142C 800A082C 3C018012 */ lui $at, %hi(D_80126D28) # $at, 0x8012 -/* 0A1430 800A0830 AC206D28 */ sw $zero, %lo(D_80126D28)($at) -.L800A0834: -/* 0A1434 800A0834 3C058012 */ lui $a1, %hi(gHUDCurrDisplayList) # $a1, 0x8012 -/* 0A1438 800A0838 24A56CFC */ addiu $a1, %lo(gHUDCurrDisplayList) # addiu $a1, $a1, 0x6cfc -/* 0A143C 800A083C 8CA20000 */ lw $v0, ($a1) -/* 0A1440 800A0840 3C19FA00 */ lui $t9, 0xfa00 -/* 0A1444 800A0844 244F0008 */ addiu $t7, $v0, 8 -/* 0A1448 800A0848 ACAF0000 */ sw $t7, ($a1) -/* 0A144C 800A084C 2409FFFF */ li $t1, -1 -/* 0A1450 800A0850 AC490004 */ sw $t1, 4($v0) -/* 0A1454 800A0854 AC590000 */ sw $t9, ($v0) -/* 0A1458 800A0858 8FA4003C */ lw $a0, 0x3c($sp) -/* 0A145C 800A085C 0C029E98 */ jal func_800A7A60 -/* 0A1460 800A0860 00000000 */ nop -/* 0A1464 800A0864 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A1468 800A0868 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A146C 800A086C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A1470 800A0870 0C019FCB */ jal func_80067F2C -/* 0A1474 800A0874 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A1478 800A0878 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A147C 800A087C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A1480 800A0880 8C820000 */ lw $v0, ($a0) -/* 0A1484 800A0884 3C0AFB00 */ lui $t2, 0xfb00 -/* 0A1488 800A0888 24480008 */ addiu $t0, $v0, 8 -/* 0A148C 800A088C AC880000 */ sw $t0, ($a0) -/* 0A1490 800A0890 240CFF00 */ li $t4, -256 -/* 0A1494 800A0894 AC4C0004 */ sw $t4, 4($v0) -/* 0A1498 800A0898 0C0044E7 */ jal func_8001139C -/* 0A149C 800A089C AC4A0000 */ sw $t2, ($v0) -/* 0A14A0 800A08A0 00022043 */ sra $a0, $v0, 1 -/* 0A14A4 800A08A4 0C003936 */ jal func_8000E4D8 -/* 0A14A8 800A08A8 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A14AC 800A08AC 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A14B0 800A08B0 10400007 */ beqz $v0, .L800A08D0 -/* 0A14B4 800A08B4 00000000 */ nop -/* 0A14B8 800A08B8 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A14BC 800A08BC 8FA60040 */ lw $a2, 0x40($sp) -/* 0A14C0 800A08C0 0C0289DF */ jal func_800A277C -/* 0A14C4 800A08C4 00000000 */ nop -/* 0A14C8 800A08C8 1000004F */ b .L800A0A08 -/* 0A14CC 800A08CC 8FAB0028 */ lw $t3, 0x28($sp) -.L800A08D0: -/* 0A14D0 800A08D0 0C007910 */ jal func_8001E440 -/* 0A14D4 800A08D4 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A14D8 800A08D8 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A14DC 800A08DC 2401000A */ li $at, 10 -/* 0A14E0 800A08E0 1441000A */ bne $v0, $at, .L800A090C -/* 0A14E4 800A08E4 00000000 */ nop -/* 0A14E8 800A08E8 0C01A142 */ jal func_80068508 -/* 0A14EC 800A08EC 24040001 */ li $a0, 1 -/* 0A14F0 800A08F0 8FA40028 */ lw $a0, 0x28($sp) -/* 0A14F4 800A08F4 0C029C63 */ jal func_800A718C -/* 0A14F8 800A08F8 00000000 */ nop -/* 0A14FC 800A08FC 0C01A142 */ jal func_80068508 -/* 0A1500 800A0900 00002025 */ move $a0, $zero -/* 0A1504 800A0904 10000040 */ b .L800A0A08 -/* 0A1508 800A0908 8FAB0028 */ lw $t3, 0x28($sp) -.L800A090C: -/* 0A150C 800A090C 0C01AF66 */ jal get_current_level_race_type -/* 0A1510 800A0910 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A1514 800A0914 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A1518 800A0918 1040000D */ beqz $v0, .L800A0950 -/* 0A151C 800A091C 24010003 */ li $at, 3 -/* 0A1520 800A0920 1041000B */ beq $v0, $at, .L800A0950 -/* 0A1524 800A0924 24010008 */ li $at, 8 -/* 0A1528 800A0928 1041001A */ beq $v0, $at, .L800A0994 -/* 0A152C 800A092C 24010040 */ li $at, 64 -/* 0A1530 800A0930 10410024 */ beq $v0, $at, .L800A09C4 -/* 0A1534 800A0934 24010041 */ li $at, 65 -/* 0A1538 800A0938 1041001C */ beq $v0, $at, .L800A09AC -/* 0A153C 800A093C 24010042 */ li $at, 66 -/* 0A1540 800A0940 10410027 */ beq $v0, $at, .L800A09E0 -/* 0A1544 800A0944 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1548 800A0948 1000002B */ b .L800A09F8 -/* 0A154C 800A094C 8FA4003C */ lw $a0, 0x3c($sp) -.L800A0950: -/* 0A1550 800A0950 0C008D07 */ jal func_8002341C -/* 0A1554 800A0954 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A1558 800A0958 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A155C 800A095C 10400008 */ beqz $v0, .L800A0980 -/* 0A1560 800A0960 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1564 800A0964 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1568 800A0968 8FA60040 */ lw $a2, 0x40($sp) -/* 0A156C 800A096C 0C02898F */ jal func_800A263C -/* 0A1570 800A0970 00000000 */ nop -/* 0A1574 800A0974 10000024 */ b .L800A0A08 -/* 0A1578 800A0978 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A157C 800A097C 8FA5003C */ lw $a1, 0x3c($sp) -.L800A0980: -/* 0A1580 800A0980 8FA60040 */ lw $a2, 0x40($sp) -/* 0A1584 800A0984 0C028370 */ jal func_800A0DC0 -/* 0A1588 800A0988 00000000 */ nop -/* 0A158C 800A098C 1000001E */ b .L800A0A08 -/* 0A1590 800A0990 8FAB0028 */ lw $t3, 0x28($sp) -.L800A0994: -/* 0A1594 800A0994 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1598 800A0998 8FA60040 */ lw $a2, 0x40($sp) -/* 0A159C 800A099C 0C028963 */ jal func_800A258C -/* 0A15A0 800A09A0 00000000 */ nop -/* 0A15A4 800A09A4 10000018 */ b .L800A0A08 -/* 0A15A8 800A09A8 8FAB0028 */ lw $t3, 0x28($sp) -.L800A09AC: -/* 0A15AC 800A09AC 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A15B0 800A09B0 8FA60040 */ lw $a2, 0x40($sp) -/* 0A15B4 800A09B4 0C028492 */ jal func_800A1248 -/* 0A15B8 800A09B8 00000000 */ nop -/* 0A15BC 800A09BC 10000012 */ b .L800A0A08 -/* 0A15C0 800A09C0 8FAB0028 */ lw $t3, 0x28($sp) -.L800A09C4: -/* 0A15C4 800A09C4 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A15C8 800A09C8 8FA60040 */ lw $a2, 0x40($sp) -/* 0A15CC 800A09CC 0C028701 */ jal func_800A1C04 -/* 0A15D0 800A09D0 00000000 */ nop -/* 0A15D4 800A09D4 1000000C */ b .L800A0A08 -/* 0A15D8 800A09D8 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A15DC 800A09DC 8FA5003C */ lw $a1, 0x3c($sp) -.L800A09E0: -/* 0A15E0 800A09E0 8FA60040 */ lw $a2, 0x40($sp) -/* 0A15E4 800A09E4 0C02850A */ jal func_800A1428 -/* 0A15E8 800A09E8 00000000 */ nop -/* 0A15EC 800A09EC 10000006 */ b .L800A0A08 -/* 0A15F0 800A09F0 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A15F4 800A09F4 8FA4003C */ lw $a0, 0x3c($sp) -.L800A09F8: -/* 0A15F8 800A09F8 8FA50040 */ lw $a1, 0x40($sp) -/* 0A15FC 800A09FC 0C0289B2 */ jal func_800A26C8 -/* 0A1600 800A0A00 00000000 */ nop -/* 0A1604 800A0A04 8FAB0028 */ lw $t3, 0x28($sp) -.L800A0A08: -/* 0A1608 800A0A08 24010001 */ li $at, 1 -/* 0A160C 800A0A0C 816D01D8 */ lb $t5, 0x1d8($t3) -/* 0A1610 800A0A10 00000000 */ nop -/* 0A1614 800A0A14 15A1002C */ bne $t5, $at, .L800A0AC8 -/* 0A1618 800A0A18 00000000 */ nop -/* 0A161C 800A0A1C 0C01A142 */ jal func_80068508 -/* 0A1620 800A0A20 24040001 */ li $a0, 1 -/* 0A1624 800A0A24 0C003936 */ jal func_8000E4D8 -/* 0A1628 800A0A28 00000000 */ nop -/* 0A162C 800A0A2C 10400007 */ beqz $v0, .L800A0A4C -/* 0A1630 800A0A30 00000000 */ nop -/* 0A1634 800A0A34 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1638 800A0A38 8FA50040 */ lw $a1, 0x40($sp) -/* 0A163C 800A0A3C 0C029B8C */ jal func_800A6E30 -/* 0A1640 800A0A40 00000000 */ nop -/* 0A1644 800A0A44 1000001E */ b .L800A0AC0 -/* 0A1648 800A0A48 00000000 */ nop -.L800A0A4C: -/* 0A164C 800A0A4C 0C019884 */ jal get_viewport_count -/* 0A1650 800A0A50 00000000 */ nop -/* 0A1654 800A0A54 14400017 */ bnez $v0, .L800A0AB4 -/* 0A1658 800A0A58 8FA40028 */ lw $a0, 0x28($sp) -/* 0A165C 800A0A5C 8FAE0028 */ lw $t6, 0x28($sp) -/* 0A1660 800A0A60 24010001 */ li $at, 1 -/* 0A1664 800A0A64 85D801AC */ lh $t8, 0x1ac($t6) -/* 0A1668 800A0A68 00000000 */ nop -/* 0A166C 800A0A6C 17010011 */ bne $t8, $at, .L800A0AB4 -/* 0A1670 800A0A70 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1674 800A0A74 0C027B20 */ jal is_in_two_player_adventure -/* 0A1678 800A0A78 00000000 */ nop -/* 0A167C 800A0A7C 10400007 */ beqz $v0, .L800A0A9C -/* 0A1680 800A0A80 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1684 800A0A84 0C01AF66 */ jal get_current_level_race_type -/* 0A1688 800A0A88 00000000 */ nop -/* 0A168C 800A0A8C 24010008 */ li $at, 8 -/* 0A1690 800A0A90 14410008 */ bne $v0, $at, .L800A0AB4 -/* 0A1694 800A0A94 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1698 800A0A98 8FA40028 */ lw $a0, 0x28($sp) -.L800A0A9C: -/* 0A169C 800A0A9C 8FA50040 */ lw $a1, 0x40($sp) -/* 0A16A0 800A0AA0 0C02925F */ jal func_800A497C -/* 0A16A4 800A0AA4 00000000 */ nop -/* 0A16A8 800A0AA8 10000005 */ b .L800A0AC0 -/* 0A16AC 800A0AAC 00000000 */ nop -/* 0A16B0 800A0AB0 8FA40028 */ lw $a0, 0x28($sp) -.L800A0AB4: -/* 0A16B4 800A0AB4 8FA50040 */ lw $a1, 0x40($sp) -/* 0A16B8 800A0AB8 0C029895 */ jal func_800A6254 -/* 0A16BC 800A0ABC 00000000 */ nop -.L800A0AC0: -/* 0A16C0 800A0AC0 0C01A142 */ jal func_80068508 -/* 0A16C4 800A0AC4 00002025 */ move $a0, $zero -.L800A0AC8: -/* 0A16C8 800A0AC8 3C018012 */ lui $at, %hi(D_80126CD1) # $at, 0x8012 -/* 0A16CC 800A0ACC A0206CD1 */ sb $zero, %lo(D_80126CD1)($at) -/* 0A16D0 800A0AD0 0C01EFC7 */ jal func_8007BF1C -/* 0A16D4 800A0AD4 24040001 */ li $a0, 1 -/* 0A16D8 800A0AD8 3C028012 */ lui $v0, %hi(D_80127180) # $v0, 0x8012 -/* 0A16DC 800A0ADC 8C427180 */ lw $v0, %lo(D_80127180)($v0) -/* 0A16E0 800A0AE0 3C058012 */ lui $a1, %hi(D_80126D80) # $a1, 0x8012 -/* 0A16E4 800A0AE4 10400011 */ beqz $v0, .L800A0B2C -/* 0A16E8 800A0AE8 24A56D80 */ addiu $a1, %lo(D_80126D80) # addiu $a1, $a1, 0x6d80 -/* 0A16EC 800A0AEC 000278C0 */ sll $t7, $v0, 3 -/* 0A16F0 800A0AF0 00AFC821 */ addu $t9, $a1, $t7 -/* 0A16F4 800A0AF4 AF200000 */ sw $zero, ($t9) -/* 0A16F8 800A0AF8 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A16FC 800A0AFC 240900FF */ li $t1, 255 -/* 0A1700 800A0B00 240800FF */ li $t0, 255 -/* 0A1704 800A0B04 240A00FF */ li $t2, 255 -/* 0A1708 800A0B08 240C00FF */ li $t4, 255 -/* 0A170C 800A0B0C AFAC001C */ sw $t4, 0x1c($sp) -/* 0A1710 800A0B10 AFAA0018 */ sw $t2, 0x18($sp) -/* 0A1714 800A0B14 AFA80014 */ sw $t0, 0x14($sp) -/* 0A1718 800A0B18 AFA90010 */ sw $t1, 0x10($sp) -/* 0A171C 800A0B1C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A1720 800A0B20 00003025 */ move $a2, $zero -/* 0A1724 800A0B24 0C01E2AE */ jal render_textured_rectangle -/* 0A1728 800A0B28 00003825 */ move $a3, $zero -.L800A0B2C: -/* 0A172C 800A0B2C 3C0B8012 */ lui $t3, %hi(gHUDCurrDisplayList) # $t3, 0x8012 -/* 0A1730 800A0B30 8D6B6CFC */ lw $t3, %lo(gHUDCurrDisplayList)($t3) -/* 0A1734 800A0B34 8FAD0030 */ lw $t5, 0x30($sp) -/* 0A1738 800A0B38 3C0E8012 */ lui $t6, %hi(D_80126D00) # $t6, 0x8012 -/* 0A173C 800A0B3C ADAB0000 */ sw $t3, ($t5) -/* 0A1740 800A0B40 8FB80034 */ lw $t8, 0x34($sp) -/* 0A1744 800A0B44 8DCE6D00 */ lw $t6, %lo(D_80126D00)($t6) -/* 0A1748 800A0B48 3C0F8012 */ lui $t7, %hi(D_80126D04) # $t7, 0x8012 -/* 0A174C 800A0B4C AF0E0000 */ sw $t6, ($t8) -/* 0A1750 800A0B50 8FB90038 */ lw $t9, 0x38($sp) -/* 0A1754 800A0B54 8DEF6D04 */ lw $t7, %lo(D_80126D04)($t7) -/* 0A1758 800A0B58 2404FFFF */ li $a0, -1 -/* 0A175C 800A0B5C 0C01EB8A */ jal func_8007AE28 -/* 0A1760 800A0B60 AF2F0000 */ sw $t7, ($t9) -.L800A0B64: -/* 0A1764 800A0B64 8FBF0024 */ lw $ra, 0x24($sp) -.L800A0B68: -/* 0A1768 800A0B68 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0A176C 800A0B6C 03E00008 */ jr $ra -/* 0A1770 800A0B70 00000000 */ nop - diff --git a/asm/non_matchings/game_ui/func_800A0BD4.s b/asm/non_matchings/game_ui/func_800A0BD4.s index 6c95e39f..c24a712b 100644 --- a/asm/non_matchings/game_ui/func_800A0BD4.s +++ b/asm/non_matchings/game_ui/func_800A0BD4.s @@ -14,8 +14,8 @@ glabel func_800A0BD4 /* 0A1804 800A0C04 00447023 */ subu $t6, $v0, $a0 /* 0A1808 800A0C08 1DC0000A */ bgtz $t6, .L800A0C34 /* 0A180C 800A0C0C AC6E0000 */ sw $t6, ($v1) -/* 0A1810 800A0C10 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A1814 800A0C14 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A1810 800A0C10 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A1814 800A0C14 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 /* 0A1818 800A0C18 8CB80000 */ lw $t8, ($a1) /* 0A181C 800A0C1C AC600000 */ sw $zero, ($v1) /* 0A1820 800A0C20 17000004 */ bnez $t8, .L800A0C34 diff --git a/asm/non_matchings/game_ui/func_800A1248.s b/asm/non_matchings/game_ui/func_800A1248.s index c5ac0f55..92adc71d 100644 --- a/asm/non_matchings/game_ui/func_800A1248.s +++ b/asm/non_matchings/game_ui/func_800A1248.s @@ -118,7 +118,7 @@ glabel func_800A1248 /* 0A1FE8 800A13E8 00000000 */ nop /* 0A1FEC 800A13EC 8FA4004C */ lw $a0, 0x4c($sp) /* 0A1FF0 800A13F0 8FA50050 */ lw $a1, 0x50($sp) -/* 0A1FF4 800A13F4 0C029D48 */ jal func_800A7520 +/* 0A1FF4 800A13F4 0C029D48 */ jal render_weapon_hud /* 0A1FF8 800A13F8 00000000 */ nop /* 0A1FFC 800A13FC 0C01A142 */ jal func_80068508 /* 0A2000 800A1400 00002025 */ move $a0, $zero diff --git a/asm/non_matchings/game_ui/func_800A19A4.s b/asm/non_matchings/game_ui/func_800A19A4.s index 1a29720c..9fe1a298 100644 --- a/asm/non_matchings/game_ui/func_800A19A4.s +++ b/asm/non_matchings/game_ui/func_800A19A4.s @@ -44,10 +44,10 @@ glabel func_800A19A4 .L800A1A4C: /* 0A264C 800A1A4C 8E470000 */ lw $a3, ($s2) /* 0A2650 800A1A50 3C148012 */ lui $s4, %hi(gHUDCurrDisplayList) # $s4, 0x8012 -/* 0A2654 800A1A54 3C158012 */ lui $s5, %hi(D_80126D00) # $s5, 0x8012 -/* 0A2658 800A1A58 3C168012 */ lui $s6, %hi(D_80126D04) # $s6, 0x8012 -/* 0A265C 800A1A5C 26C66D04 */ addiu $a2, $s6, %lo(D_80126D04) -/* 0A2660 800A1A60 26A56D00 */ addiu $a1, $s5, %lo(D_80126D00) +/* 0A2654 800A1A54 3C158012 */ lui $s5, %hi(gHUDCurrMatrix) # $s5, 0x8012 +/* 0A2658 800A1A58 3C168012 */ lui $s6, %hi(gHUDCurrTriList) # $s6, 0x8012 +/* 0A265C 800A1A5C 26C66D04 */ addiu $a2, $s6, %lo(gHUDCurrTriList) +/* 0A2660 800A1A60 26A56D00 */ addiu $a1, $s5, %lo(gHUDCurrMatrix) /* 0A2664 800A1A64 26846CFC */ addiu $a0, $s4, %lo(gHUDCurrDisplayList) /* 0A2668 800A1A68 24110003 */ li $s1, 3 /* 0A266C 800A1A6C 0C02A980 */ jal func_800AA600 @@ -56,10 +56,10 @@ glabel func_800A19A4 /* 0A2674 800A1A74 8E4A0000 */ lw $t2, ($s2) /* 0A2678 800A1A78 3C148012 */ lui $s4, %hi(gHUDCurrDisplayList) # $s4, 0x8012 /* 0A267C 800A1A7C 8142067A */ lb $v0, 0x67a($t2) -/* 0A2680 800A1A80 3C158012 */ lui $s5, %hi(D_80126D00) # $s5, 0x8012 -/* 0A2684 800A1A84 3C168012 */ lui $s6, %hi(D_80126D04) # $s6, 0x8012 -/* 0A2688 800A1A88 26D66D04 */ addiu $s6, %lo(D_80126D04) # addiu $s6, $s6, 0x6d04 -/* 0A268C 800A1A8C 26B56D00 */ addiu $s5, %lo(D_80126D00) # addiu $s5, $s5, 0x6d00 +/* 0A2680 800A1A80 3C158012 */ lui $s5, %hi(gHUDCurrMatrix) # $s5, 0x8012 +/* 0A2684 800A1A84 3C168012 */ lui $s6, %hi(gHUDCurrTriList) # $s6, 0x8012 +/* 0A2688 800A1A88 26D66D04 */ addiu $s6, %lo(gHUDCurrTriList) # addiu $s6, $s6, 0x6d04 +/* 0A268C 800A1A8C 26B56D00 */ addiu $s5, %lo(gHUDCurrMatrix) # addiu $s5, $s5, 0x6d00 /* 0A2690 800A1A90 04410005 */ bgez $v0, .L800A1AA8 /* 0A2694 800A1A94 26946CFC */ addiu $s4, %lo(gHUDCurrDisplayList) # addiu $s4, $s4, 0x6cfc /* 0A2698 800A1A98 00025840 */ sll $t3, $v0, 1 diff --git a/asm/non_matchings/game_ui/func_800A1C04.s b/asm/non_matchings/game_ui/func_800A1C04.s index c4f1a802..e1eecc10 100644 --- a/asm/non_matchings/game_ui/func_800A1C04.s +++ b/asm/non_matchings/game_ui/func_800A1C04.s @@ -23,7 +23,7 @@ glabel func_800A1C04 /* 0A2854 800A1C54 00000000 */ nop /* 0A2858 800A1C58 8FA40044 */ lw $a0, 0x44($sp) /* 0A285C 800A1C5C 8FA50048 */ lw $a1, 0x48($sp) -/* 0A2860 800A1C60 0C029D48 */ jal func_800A7520 +/* 0A2860 800A1C60 0C029D48 */ jal render_weapon_hud /* 0A2864 800A1C64 00000000 */ nop /* 0A2868 800A1C68 0C006E9D */ jal get_object_struct_array /* 0A286C 800A1C6C 27A40034 */ addiu $a0, $sp, 0x34 diff --git a/asm/non_matchings/game_ui/func_800A22F4.s b/asm/non_matchings/game_ui/func_800A22F4.s index 6e36e1e1..6e7ff5f4 100644 --- a/asm/non_matchings/game_ui/func_800A22F4.s +++ b/asm/non_matchings/game_ui/func_800A22F4.s @@ -30,10 +30,10 @@ glabel func_800A22F4 /* 0A2F60 800A2360 A02A6CD5 */ sb $t2, %lo(D_80126CD5)($at) /* 0A2F64 800A2364 8E070000 */ lw $a3, ($s0) /* 0A2F68 800A2368 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A2F6C 800A236C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A2F70 800A2370 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A2F74 800A2374 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A2F78 800A2378 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A2F6C 800A236C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A2F70 800A2370 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A2F74 800A2374 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A2F78 800A2378 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A2F7C 800A237C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A2F80 800A2380 0C02A980 */ jal func_800AA600 /* 0A2F84 800A2384 24E70640 */ addiu $a3, $a3, 0x640 @@ -83,10 +83,10 @@ glabel func_800A22F4 /* 0A3028 800A2428 0006000D */ break 6 .L800A242C: /* 0A302C 800A242C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A3030 800A2430 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3034 800A2434 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3038 800A2438 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A303C 800A243C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3030 800A2430 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A3034 800A2434 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A3038 800A2438 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A303C 800A243C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A3040 800A2440 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A3044 800A2444 00007012 */ mflo $t6 /* 0A3048 800A2448 A5EE06D8 */ sh $t6, 0x6d8($t7) @@ -114,10 +114,10 @@ glabel func_800A22F4 .L800A2498: /* 0A3098 800A2498 8E070000 */ lw $a3, ($s0) /* 0A309C 800A249C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A30A0 800A24A0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A30A4 800A24A4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A30A8 800A24A8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A30AC 800A24AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A30A0 800A24A0 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A30A4 800A24A4 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A30A8 800A24A8 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A30AC 800A24AC 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A30B0 800A24B0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A30B4 800A24B4 0C02A980 */ jal func_800AA600 /* 0A30B8 800A24B8 24E706C0 */ addiu $a3, $a3, 0x6c0 @@ -125,7 +125,7 @@ glabel func_800A22F4 /* 0A30C0 800A24C0 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) /* 0A30C4 800A24C4 24040002 */ li $a0, 2 /* 0A30C8 800A24C8 14830011 */ bne $a0, $v1, .L800A2510 -/* 0A30CC 800A24CC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A30CC 800A24CC 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0A30D0 800A24D0 8FAA0020 */ lw $t2, 0x20($sp) /* 0A30D4 800A24D4 00000000 */ nop /* 0A30D8 800A24D8 814B0185 */ lb $t3, 0x185($t2) @@ -144,11 +144,11 @@ glabel func_800A22F4 /* 0A310C 800A250C 00000000 */ nop .L800A2510: /* 0A3110 800A2510 1083001A */ beq $a0, $v1, .L800A257C -/* 0A3114 800A2514 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3114 800A2514 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A3118 800A2518 8E070000 */ lw $a3, ($s0) /* 0A311C 800A251C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A3120 800A2520 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3124 800A2524 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3120 800A2520 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A3124 800A2524 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 /* 0A3128 800A2528 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A312C 800A252C 0C02A980 */ jal func_800AA600 /* 0A3130 800A2530 24E706A0 */ addiu $a3, $a3, 0x6a0 @@ -159,10 +159,10 @@ glabel func_800A22F4 /* 0A3144 800A2544 A02C6CD5 */ sb $t4, %lo(D_80126CD5)($at) /* 0A3148 800A2548 8E070000 */ lw $a3, ($s0) /* 0A314C 800A254C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A3150 800A2550 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3154 800A2554 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3158 800A2558 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A315C 800A255C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3150 800A2550 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A3154 800A2554 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A3158 800A2558 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A315C 800A255C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A3160 800A2560 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A3164 800A2564 0C02A980 */ jal func_800AA600 /* 0A3168 800A2568 24E70680 */ addiu $a3, $a3, 0x680 diff --git a/asm/non_matchings/game_ui/func_800A277C.s b/asm/non_matchings/game_ui/func_800A277C.s index 8f0bab90..58c06001 100644 --- a/asm/non_matchings/game_ui/func_800A277C.s +++ b/asm/non_matchings/game_ui/func_800A277C.s @@ -1,1061 +1,1061 @@ -.rdata -glabel D_800E8640 -.asciz "CAN'T" -.ascii "\0\0" # padding -glabel D_800E8648 -.asciz "SAVE" -.ascii "\0\0\0" # padding -glabel D_800E8650 -.asciz "GHOST" -.ascii "\0\0" # padding -glabel D_800E8658 -.asciz " CONTROLLER" -glabel D_800E8664 -.asciz "PAK" -glabel D_800E8668 -.asciz "FULL" -.ascii "\0\0\0" # padding -glabel D_800E8670 -.asciz " CONTROLLER" -glabel D_800E867C -.asciz "PAK" -glabel D_800E8680 -.asciz "DAMAGED" - -.late_rodata -glabel D_800E8738 -.double 1.2 - -.text -glabel func_800A277C -/* 0A337C 800A277C 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* 0A3380 800A2780 AFB00020 */ sw $s0, 0x20($sp) -/* 0A3384 800A2784 3C108012 */ lui $s0, %hi(D_80126CF4) # $s0, 0x8012 -/* 0A3388 800A2788 AFBF002C */ sw $ra, 0x2c($sp) -/* 0A338C 800A278C AFB20028 */ sw $s2, 0x28($sp) -/* 0A3390 800A2790 AFB10024 */ sw $s1, 0x24($sp) -/* 0A3394 800A2794 AFA400C0 */ sw $a0, 0xc0($sp) -/* 0A3398 800A2798 AFA500C4 */ sw $a1, 0xc4($sp) -/* 0A339C 800A279C AFA600C8 */ sw $a2, 0xc8($sp) -/* 0A33A0 800A27A0 8CAF0064 */ lw $t7, 0x64($a1) -/* 0A33A4 800A27A4 26106CF4 */ addiu $s0, %lo(D_80126CF4) # addiu $s0, $s0, 0x6cf4 -/* 0A33A8 800A27A8 8E030000 */ lw $v1, ($s0) -/* 0A33AC 800A27AC AFAF00A0 */ sw $t7, 0xa0($sp) -/* 0A33B0 800A27B0 8C780050 */ lw $t8, 0x50($v1) -/* 0A33B4 800A27B4 00004825 */ move $t1, $zero -/* 0A33B8 800A27B8 1700001E */ bnez $t8, .L800A2834 -/* 0A33BC 800A27BC 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 -/* 0A33C0 800A27C0 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) -/* 0A33C4 800A27C4 240C0008 */ li $t4, 8 -/* 0A33C8 800A27C8 872B0028 */ lh $t3, 0x28($t9) -/* 0A33CC 800A27CC A3AC0091 */ sb $t4, 0x91($sp) -/* 0A33D0 800A27D0 A7A00092 */ sh $zero, 0x92($sp) -/* 0A33D4 800A27D4 A7A00094 */ sh $zero, 0x94($sp) -/* 0A33D8 800A27D8 A7A00096 */ sh $zero, 0x96($sp) -/* 0A33DC 800A27DC AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A33E0 800A27E0 27A40090 */ addiu $a0, $sp, 0x90 -/* 0A33E4 800A27E4 00002825 */ move $a1, $zero -/* 0A33E8 800A27E8 0C003A95 */ jal spawn_object -/* 0A33EC 800A27EC A3AB0090 */ sb $t3, 0x90($sp) -/* 0A33F0 800A27F0 8E0D0000 */ lw $t5, ($s0) -/* 0A33F4 800A27F4 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A33F8 800A27F8 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 -/* 0A33FC 800A27FC 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc -/* 0A3400 800A2800 ADA20050 */ sw $v0, 0x50($t5) -/* 0A3404 800A2804 8E2F0000 */ lw $t7, ($s1) -/* 0A3408 800A2808 240E8000 */ li $t6, -32768 -/* 0A340C 800A280C A5EE0340 */ sh $t6, 0x340($t7) -/* 0A3410 800A2810 8E030000 */ lw $v1, ($s0) -/* 0A3414 800A2814 00000000 */ nop -/* 0A3418 800A2818 8C640050 */ lw $a0, 0x50($v1) -/* 0A341C 800A281C 00000000 */ nop -/* 0A3420 800A2820 10800004 */ beqz $a0, .L800A2834 -/* 0A3424 800A2824 00000000 */ nop -/* 0A3428 800A2828 A4800018 */ sh $zero, 0x18($a0) -/* 0A342C 800A282C 8E030000 */ lw $v1, ($s0) -/* 0A3430 800A2830 00000000 */ nop -.L800A2834: -/* 0A3434 800A2834 8C780088 */ lw $t8, 0x88($v1) -/* 0A3438 800A2838 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 -/* 0A343C 800A283C 17000016 */ bnez $t8, .L800A2898 -/* 0A3440 800A2840 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc -/* 0A3444 800A2844 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 -/* 0A3448 800A2848 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) -/* 0A344C 800A284C 240C0008 */ li $t4, 8 -/* 0A3450 800A2850 872B0044 */ lh $t3, 0x44($t9) -/* 0A3454 800A2854 A3AC0089 */ sb $t4, 0x89($sp) -/* 0A3458 800A2858 A7A0008A */ sh $zero, 0x8a($sp) -/* 0A345C 800A285C A7A0008C */ sh $zero, 0x8c($sp) -/* 0A3460 800A2860 A7A0008E */ sh $zero, 0x8e($sp) -/* 0A3464 800A2864 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3468 800A2868 27A40088 */ addiu $a0, $sp, 0x88 -/* 0A346C 800A286C 00002825 */ move $a1, $zero -/* 0A3470 800A2870 0C003A95 */ jal spawn_object -/* 0A3474 800A2874 A3AB0088 */ sb $t3, 0x88($sp) -/* 0A3478 800A2878 8E0D0000 */ lw $t5, ($s0) -/* 0A347C 800A287C 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3480 800A2880 ADA20088 */ sw $v0, 0x88($t5) -/* 0A3484 800A2884 8E2F0000 */ lw $t7, ($s1) -/* 0A3488 800A2888 240E8000 */ li $t6, -32768 -/* 0A348C 800A288C A5EE0440 */ sh $t6, 0x440($t7) -/* 0A3490 800A2890 8E030000 */ lw $v1, ($s0) -/* 0A3494 800A2894 00000000 */ nop -.L800A2898: -/* 0A3498 800A2898 8C700050 */ lw $s0, 0x50($v1) -/* 0A349C 800A289C 3C128012 */ lui $s2, %hi(D_80126D67) # $s2, 0x8012 -/* 0A34A0 800A28A0 12000384 */ beqz $s0, .L800A36B4 -/* 0A34A4 800A28A4 26526D67 */ addiu $s2, %lo(D_80126D67) # addiu $s2, $s2, 0x6d67 -/* 0A34A8 800A28A8 92580000 */ lbu $t8, ($s2) -/* 0A34AC 800A28AC 8E190068 */ lw $t9, 0x68($s0) -/* 0A34B0 800A28B0 A218003B */ sb $t8, 0x3b($s0) -/* 0A34B4 800A28B4 8F2A0000 */ lw $t2, ($t9) -/* 0A34B8 800A28B8 8FAB00C8 */ lw $t3, 0xc8($sp) -/* 0A34BC 800A28BC AFAA0098 */ sw $t2, 0x98($sp) -/* 0A34C0 800A28C0 8D4D0000 */ lw $t5, ($t2) -/* 0A34C4 800A28C4 240100FF */ li $at, 255 -/* 0A34C8 800A28C8 A5AB0052 */ sh $t3, 0x52($t5) -/* 0A34CC 800A28CC 92420000 */ lbu $v0, ($s2) -/* 0A34D0 800A28D0 00000000 */ nop -/* 0A34D4 800A28D4 104100A4 */ beq $v0, $at, .L800A2B68 -/* 0A34D8 800A28D8 24010004 */ li $at, 4 -/* 0A34DC 800A28DC 1441000D */ bne $v0, $at, .L800A2914 -/* 0A34E0 800A28E0 00000000 */ nop -/* 0A34E4 800A28E4 0C0044E7 */ jal func_8001139C -/* 0A34E8 800A28E8 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A34EC 800A28EC 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A34F0 800A28F0 14400006 */ bnez $v0, .L800A290C -/* 0A34F4 800A28F4 240E0010 */ li $t6, 16 -/* 0A34F8 800A28F8 0C000572 */ jal music_is_playing -/* 0A34FC 800A28FC AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3500 800A2900 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3504 800A2904 14400003 */ bnez $v0, .L800A2914 -/* 0A3508 800A2908 240E0010 */ li $t6, 16 -.L800A290C: -/* 0A350C 800A290C 10000091 */ b .L800A2B54 -/* 0A3510 800A2910 A60E0018 */ sh $t6, 0x18($s0) -.L800A2914: -/* 0A3514 800A2914 924F0000 */ lbu $t7, ($s2) -/* 0A3518 800A2918 24010004 */ li $at, 4 -/* 0A351C 800A291C 15E10042 */ bne $t7, $at, .L800A2A28 -/* 0A3520 800A2920 00000000 */ nop -/* 0A3524 800A2924 0C00057E */ jal func_800015F8 -/* 0A3528 800A2928 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A352C 800A292C 8FB80098 */ lw $t8, 0x98($sp) -/* 0A3530 800A2930 924C0000 */ lbu $t4, ($s2) -/* 0A3534 800A2934 8F190000 */ lw $t9, ($t8) -/* 0A3538 800A2938 000C58C0 */ sll $t3, $t4, 3 -/* 0A353C 800A293C 8F2A0044 */ lw $t2, 0x44($t9) -/* 0A3540 800A2940 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 -/* 0A3544 800A2944 014B6821 */ addu $t5, $t2, $t3 -/* 0A3548 800A2948 8DA20004 */ lw $v0, 4($t5) -/* 0A354C 800A294C 44812800 */ mtc1 $at, $f5 -/* 0A3550 800A2950 44802000 */ mtc1 $zero, $f4 -/* 0A3554 800A2954 46000321 */ cvt.d.s $f12, $f0 -/* 0A3558 800A2958 462C2032 */ c.eq.d $f4, $f12 -/* 0A355C 800A295C 2442FFFF */ addiu $v0, $v0, -1 -/* 0A3560 800A2960 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3564 800A2964 00027100 */ sll $t6, $v0, 4 -/* 0A3568 800A2968 45000003 */ bc1f .L800A2978 -/* 0A356C 800A296C 01C01025 */ move $v0, $t6 -/* 0A3570 800A2970 10000078 */ b .L800A2B54 -/* 0A3574 800A2974 A6000018 */ sh $zero, 0x18($s0) -.L800A2978: -/* 0A3578 800A2978 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0A357C 800A297C 44819800 */ mtc1 $at, $f19 -/* 0A3580 800A2980 44809000 */ mtc1 $zero, $f18 -/* 0A3584 800A2984 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A3588 800A2988 462C903C */ c.lt.d $f18, $f12 -/* 0A358C 800A298C 00000000 */ nop -/* 0A3590 800A2990 45000015 */ bc1f .L800A29E8 -/* 0A3594 800A2994 00000000 */ nop -/* 0A3598 800A2998 46326181 */ sub.d $f6, $f12, $f18 -/* 0A359C 800A299C 44825000 */ mtc1 $v0, $f10 -/* 0A35A0 800A29A0 462033A0 */ cvt.s.d $f14, $f6 -/* 0A35A4 800A29A4 460070A1 */ cvt.d.s $f2, $f14 -/* 0A35A8 800A29A8 46221200 */ add.d $f8, $f2, $f2 -/* 0A35AC 800A29AC 46805420 */ cvt.s.w $f16, $f10 -/* 0A35B0 800A29B0 462043A0 */ cvt.s.d $f14, $f8 -/* 0A35B4 800A29B4 46107102 */ mul.s $f4, $f14, $f16 -/* 0A35B8 800A29B8 46048181 */ sub.s $f6, $f16, $f4 -/* 0A35BC 800A29BC 444FF800 */ cfc1 $t7, $31 -/* 0A35C0 800A29C0 00000000 */ nop -/* 0A35C4 800A29C4 35E10003 */ ori $at, $t7, 3 -/* 0A35C8 800A29C8 38210002 */ xori $at, $at, 2 -/* 0A35CC 800A29CC 44C1F800 */ ctc1 $at, $31 -/* 0A35D0 800A29D0 00000000 */ nop -/* 0A35D4 800A29D4 46003224 */ cvt.w.s $f8, $f6 -/* 0A35D8 800A29D8 44184000 */ mfc1 $t8, $f8 -/* 0A35DC 800A29DC 44CFF800 */ ctc1 $t7, $31 -/* 0A35E0 800A29E0 1000005C */ b .L800A2B54 -/* 0A35E4 800A29E4 A6180018 */ sh $t8, 0x18($s0) -.L800A29E8: -/* 0A35E8 800A29E8 44815000 */ mtc1 $at, $f10 -/* 0A35EC 800A29EC 44822000 */ mtc1 $v0, $f4 -/* 0A35F0 800A29F0 460A0382 */ mul.s $f14, $f0, $f10 -/* 0A35F4 800A29F4 468021A0 */ cvt.s.w $f6, $f4 -/* 0A35F8 800A29F8 460E3202 */ mul.s $f8, $f6, $f14 -/* 0A35FC 800A29FC 4459F800 */ cfc1 $t9, $31 -/* 0A3600 800A2A00 00000000 */ nop -/* 0A3604 800A2A04 37210003 */ ori $at, $t9, 3 -/* 0A3608 800A2A08 38210002 */ xori $at, $at, 2 -/* 0A360C 800A2A0C 44C1F800 */ ctc1 $at, $31 -/* 0A3610 800A2A10 00000000 */ nop -/* 0A3614 800A2A14 460042A4 */ cvt.w.s $f10, $f8 -/* 0A3618 800A2A18 440C5000 */ mfc1 $t4, $f10 -/* 0A361C 800A2A1C 44D9F800 */ ctc1 $t9, $31 -/* 0A3620 800A2A20 1000004C */ b .L800A2B54 -/* 0A3624 800A2A24 A60C0018 */ sh $t4, 0x18($s0) -.L800A2A28: -/* 0A3628 800A2A28 0C01BAA8 */ jal is_game_paused -/* 0A362C 800A2A2C AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3630 800A2A30 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3634 800A2A34 14400047 */ bnez $v0, .L800A2B54 -/* 0A3638 800A2A38 3C058012 */ lui $a1, %hi(D_80126D69) # $a1, 0x8012 -/* 0A363C 800A2A3C 24A56D69 */ addiu $a1, %lo(D_80126D69) # addiu $a1, $a1, 0x6d69 -/* 0A3640 800A2A40 80A20000 */ lb $v0, ($a1) -/* 0A3644 800A2A44 8FAC00C8 */ lw $t4, 0xc8($sp) -/* 0A3648 800A2A48 04410012 */ bgez $v0, .L800A2A94 -/* 0A364C 800A2A4C 00000000 */ nop -/* 0A3650 800A2A50 8FAA00C8 */ lw $t2, 0xc8($sp) -/* 0A3654 800A2A54 86040018 */ lh $a0, 0x18($s0) -/* 0A3658 800A2A58 01420019 */ multu $t2, $v0 -/* 0A365C 800A2A5C 240E0001 */ li $t6, 1 -/* 0A3660 800A2A60 00001812 */ mflo $v1 -/* 0A3664 800A2A64 00035823 */ negu $t3, $v1 -/* 0A3668 800A2A68 0164082A */ slt $at, $t3, $a0 -/* 0A366C 800A2A6C 10200003 */ beqz $at, .L800A2A7C -/* 0A3670 800A2A70 00836821 */ addu $t5, $a0, $v1 -/* 0A3674 800A2A74 10000037 */ b .L800A2B54 -/* 0A3678 800A2A78 A60D0018 */ sh $t5, 0x18($s0) -.L800A2A7C: -/* 0A367C 800A2A7C A60E0018 */ sh $t6, 0x18($s0) -/* 0A3680 800A2A80 80AF0000 */ lb $t7, ($a1) -/* 0A3684 800A2A84 00000000 */ nop -/* 0A3688 800A2A88 000FC023 */ negu $t8, $t7 -/* 0A368C 800A2A8C 10000031 */ b .L800A2B54 -/* 0A3690 800A2A90 A0B80000 */ sb $t8, ($a1) -.L800A2A94: -/* 0A3694 800A2A94 01820019 */ multu $t4, $v0 -/* 0A3698 800A2A98 86190018 */ lh $t9, 0x18($s0) -/* 0A369C 800A2A9C 00005012 */ mflo $t2 -/* 0A36A0 800A2AA0 032A5821 */ addu $t3, $t9, $t2 -/* 0A36A4 800A2AA4 A60B0018 */ sh $t3, 0x18($s0) -/* 0A36A8 800A2AA8 8FAD0098 */ lw $t5, 0x98($sp) -/* 0A36AC 800A2AAC 92580000 */ lbu $t8, ($s2) -/* 0A36B0 800A2AB0 8DAE0000 */ lw $t6, ($t5) -/* 0A36B4 800A2AB4 001860C0 */ sll $t4, $t8, 3 -/* 0A36B8 800A2AB8 8DCF0044 */ lw $t7, 0x44($t6) -/* 0A36BC 800A2ABC 860B0018 */ lh $t3, 0x18($s0) -/* 0A36C0 800A2AC0 01ECC821 */ addu $t9, $t7, $t4 -/* 0A36C4 800A2AC4 8F230004 */ lw $v1, 4($t9) -/* 0A36C8 800A2AC8 3C0D8012 */ lui $t5, %hi(D_80126D68) # $t5, 0x8012 -/* 0A36CC 800A2ACC 2463FFFF */ addiu $v1, $v1, -1 -/* 0A36D0 800A2AD0 00035100 */ sll $t2, $v1, 4 -/* 0A36D4 800A2AD4 016A082A */ slt $at, $t3, $t2 -/* 0A36D8 800A2AD8 1420001F */ bnez $at, .L800A2B58 -/* 0A36DC 800A2ADC 02002025 */ move $a0, $s0 -/* 0A36E0 800A2AE0 91AD6D68 */ lbu $t5, %lo(D_80126D68)($t5) -/* 0A36E4 800A2AE4 00000000 */ nop -/* 0A36E8 800A2AE8 11A00007 */ beqz $t5, .L800A2B08 -/* 0A36EC 800A2AEC 00000000 */ nop -/* 0A36F0 800A2AF0 80AE0000 */ lb $t6, ($a1) -/* 0A36F4 800A2AF4 254FFFFF */ addiu $t7, $t2, -1 -/* 0A36F8 800A2AF8 000EC023 */ negu $t8, $t6 -/* 0A36FC 800A2AFC A0B80000 */ sb $t8, ($a1) -/* 0A3700 800A2B00 10000014 */ b .L800A2B54 -/* 0A3704 800A2B04 A60F0018 */ sh $t7, 0x18($s0) -.L800A2B08: -/* 0A3708 800A2B08 A6000018 */ sh $zero, 0x18($s0) -/* 0A370C 800A2B0C 8FAC00A0 */ lw $t4, 0xa0($sp) -/* 0A3710 800A2B10 00000000 */ nop -/* 0A3714 800A2B14 919901FC */ lbu $t9, 0x1fc($t4) -/* 0A3718 800A2B18 00000000 */ nop -/* 0A371C 800A2B1C 1720000E */ bnez $t9, .L800A2B58 -/* 0A3720 800A2B20 02002025 */ move $a0, $s0 -/* 0A3724 800A2B24 818A01D8 */ lb $t2, 0x1d8($t4) -/* 0A3728 800A2B28 24040004 */ li $a0, 4 -/* 0A372C 800A2B2C 15400009 */ bnez $t2, .L800A2B54 -/* 0A3730 800A2B30 00002825 */ move $a1, $zero -/* 0A3734 800A2B34 240B0001 */ li $t3, 1 -/* 0A3738 800A2B38 AFAB0010 */ sw $t3, 0x10($sp) -/* 0A373C 800A2B3C 24060004 */ li $a2, 4 -/* 0A3740 800A2B40 24070001 */ li $a3, 1 -/* 0A3744 800A2B44 0C028DB3 */ jal func_800A36CC -/* 0A3748 800A2B48 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A374C 800A2B4C 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3750 800A2B50 00000000 */ nop -.L800A2B54: -/* 0A3754 800A2B54 02002025 */ move $a0, $s0 -.L800A2B58: -/* 0A3758 800A2B58 0C01874C */ jal func_80061D30 -/* 0A375C 800A2B5C AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3760 800A2B60 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3764 800A2B64 00000000 */ nop -.L800A2B68: -/* 0A3768 800A2B68 8E270000 */ lw $a3, ($s1) -/* 0A376C 800A2B6C 3C128012 */ lui $s2, %hi(gHUDCurrDisplayList) # $s2, 0x8012 -/* 0A3770 800A2B70 26526CFC */ addiu $s2, %lo(gHUDCurrDisplayList) # addiu $s2, $s2, 0x6cfc -/* 0A3774 800A2B74 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3778 800A2B78 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A377C 800A2B7C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3780 800A2B80 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3784 800A2B84 02402025 */ move $a0, $s2 -/* 0A3788 800A2B88 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A378C 800A2B8C 0C02A980 */ jal func_800AA600 -/* 0A3790 800A2B90 24E70340 */ addiu $a3, $a3, 0x340 -/* 0A3794 800A2B94 8FA500A0 */ lw $a1, 0xa0($sp) -/* 0A3798 800A2B98 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A379C 800A2B9C 80A30193 */ lb $v1, 0x193($a1) -/* 0A37A0 800A2BA0 00004025 */ move $t0, $zero -/* 0A37A4 800A2BA4 0460000C */ bltz $v1, .L800A2BD8 -/* 0A37A8 800A2BA8 3C188000 */ lui $t8, %hi(osTvType) # $t8, 0x8000 -/* 0A37AC 800A2BAC 00086880 */ sll $t5, $t0, 2 -/* 0A37B0 800A2BB0 00AD8021 */ addu $s0, $a1, $t5 -/* 0A37B4 800A2BB4 24020005 */ li $v0, 5 -.L800A2BB8: -/* 0A37B8 800A2BB8 8E0E0128 */ lw $t6, 0x128($s0) -/* 0A37BC 800A2BBC 25080001 */ addiu $t0, $t0, 1 -/* 0A37C0 800A2BC0 0068082A */ slt $at, $v1, $t0 -/* 0A37C4 800A2BC4 26100004 */ addiu $s0, $s0, 4 -/* 0A37C8 800A2BC8 14200003 */ bnez $at, .L800A2BD8 -/* 0A37CC 800A2BCC 012E4821 */ addu $t1, $t1, $t6 -/* 0A37D0 800A2BD0 1502FFF9 */ bne $t0, $v0, .L800A2BB8 -/* 0A37D4 800A2BD4 00000000 */ nop -.L800A2BD8: -/* 0A37D8 800A2BD8 8F180300 */ lw $t8, %lo(osTvType)($t8) -/* 0A37DC 800A2BDC 34048CA0 */ li $a0, 36000 -/* 0A37E0 800A2BE0 17000012 */ bnez $t8, .L800A2C2C -/* 0A37E4 800A2BE4 00000000 */ nop -/* 0A37E8 800A2BE8 44892000 */ mtc1 $t1, $f4 -/* 0A37EC 800A2BEC 3C01800F */ lui $at, %hi(D_800E8738 + 4) # $at, 0x800f -/* 0A37F0 800A2BF0 468021A0 */ cvt.s.w $f6, $f4 -/* 0A37F4 800A2BF4 C42B8738 */ lwc1 $f11, %lo(D_800E8738)($at) -/* 0A37F8 800A2BF8 C42A873C */ lwc1 $f10, %lo(D_800E8738 + 4)($at) -/* 0A37FC 800A2BFC 46003221 */ cvt.d.s $f8, $f6 -/* 0A3800 800A2C00 462A4102 */ mul.d $f4, $f8, $f10 -/* 0A3804 800A2C04 444FF800 */ cfc1 $t7, $31 -/* 0A3808 800A2C08 00000000 */ nop -/* 0A380C 800A2C0C 35E10003 */ ori $at, $t7, 3 -/* 0A3810 800A2C10 38210002 */ xori $at, $at, 2 -/* 0A3814 800A2C14 44C1F800 */ ctc1 $at, $31 -/* 0A3818 800A2C18 00000000 */ nop -/* 0A381C 800A2C1C 462021A4 */ cvt.w.d $f6, $f4 -/* 0A3820 800A2C20 44CFF800 */ ctc1 $t7, $31 -/* 0A3824 800A2C24 44093000 */ mfc1 $t1, $f6 -/* 0A3828 800A2C28 00000000 */ nop -.L800A2C2C: -/* 0A382C 800A2C2C 0C00322D */ jal normalise_time -/* 0A3830 800A2C30 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3834 800A2C34 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3838 800A2C38 00000000 */ nop -/* 0A383C 800A2C3C 0049082A */ slt $at, $v0, $t1 -/* 0A3840 800A2C40 10200005 */ beqz $at, .L800A2C58 -/* 0A3844 800A2C44 24100444 */ li $s0, 1092 -/* 0A3848 800A2C48 0C00322D */ jal normalise_time -/* 0A384C 800A2C4C 34048CA0 */ li $a0, 36000 -/* 0A3850 800A2C50 00404825 */ move $t1, $v0 -/* 0A3854 800A2C54 24100444 */ li $s0, 1092 -.L800A2C58: -/* 0A3858 800A2C58 01300019 */ multu $t1, $s0 -/* 0A385C 800A2C5C 8E2A0000 */ lw $t2, ($s1) -/* 0A3860 800A2C60 0000C812 */ mflo $t9 -/* 0A3864 800A2C64 272C7FF8 */ addiu $t4, $t9, 0x7ff8 -/* 0A3868 800A2C68 A54C0444 */ sh $t4, 0x444($t2) -/* 0A386C 800A2C6C 0C00382C */ jal func_8000E0B0 -/* 0A3870 800A2C70 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3874 800A2C74 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3878 800A2C78 1C40000D */ bgtz $v0, .L800A2CB0 -/* 0A387C 800A2C7C 2403003C */ li $v1, 60 -/* 0A3880 800A2C80 8E270000 */ lw $a3, ($s1) -/* 0A3884 800A2C84 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3888 800A2C88 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A388C 800A2C8C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3890 800A2C90 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3894 800A2C94 02402025 */ move $a0, $s2 -/* 0A3898 800A2C98 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A389C 800A2C9C 0C02A980 */ jal func_800AA600 -/* 0A38A0 800A2CA0 24E70440 */ addiu $a3, $a3, 0x440 -/* 0A38A4 800A2CA4 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A38A8 800A2CA8 00000000 */ nop -/* 0A38AC 800A2CAC 2403003C */ li $v1, 60 -.L800A2CB0: -/* 0A38B0 800A2CB0 0123001A */ div $zero, $t1, $v1 -/* 0A38B4 800A2CB4 8E380000 */ lw $t8, ($s1) -/* 0A38B8 800A2CB8 14600002 */ bnez $v1, .L800A2CC4 -/* 0A38BC 800A2CBC 00000000 */ nop -/* 0A38C0 800A2CC0 0007000D */ break 7 -.L800A2CC4: -/* 0A38C4 800A2CC4 2401FFFF */ li $at, -1 -/* 0A38C8 800A2CC8 14610004 */ bne $v1, $at, .L800A2CDC -/* 0A38CC 800A2CCC 3C018000 */ lui $at, 0x8000 -/* 0A38D0 800A2CD0 15210002 */ bne $t1, $at, .L800A2CDC -/* 0A38D4 800A2CD4 00000000 */ nop -/* 0A38D8 800A2CD8 0006000D */ break 6 -.L800A2CDC: -/* 0A38DC 800A2CDC 00005812 */ mflo $t3 -/* 0A38E0 800A2CE0 256D001E */ addiu $t5, $t3, 0x1e -/* 0A38E4 800A2CE4 00000000 */ nop -/* 0A38E8 800A2CE8 01A3001A */ div $zero, $t5, $v1 -/* 0A38EC 800A2CEC 14600002 */ bnez $v1, .L800A2CF8 -/* 0A38F0 800A2CF0 00000000 */ nop -/* 0A38F4 800A2CF4 0007000D */ break 7 -.L800A2CF8: -/* 0A38F8 800A2CF8 2401FFFF */ li $at, -1 -/* 0A38FC 800A2CFC 14610004 */ bne $v1, $at, .L800A2D10 -/* 0A3900 800A2D00 3C018000 */ lui $at, 0x8000 -/* 0A3904 800A2D04 15A10002 */ bne $t5, $at, .L800A2D10 -/* 0A3908 800A2D08 00000000 */ nop -/* 0A390C 800A2D0C 0006000D */ break 6 -.L800A2D10: -/* 0A3910 800A2D10 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0A3914 800A2D14 44815000 */ mtc1 $at, $f10 -/* 0A3918 800A2D18 00004810 */ mfhi $t1 -/* 0A391C 800A2D1C 00000000 */ nop -/* 0A3920 800A2D20 00000000 */ nop -/* 0A3924 800A2D24 01300019 */ multu $t1, $s0 -/* 0A3928 800A2D28 00007012 */ mflo $t6 -/* 0A392C 800A2D2C A70E0444 */ sh $t6, 0x444($t8) -/* 0A3930 800A2D30 8E220000 */ lw $v0, ($s1) -/* 0A3934 800A2D34 00000000 */ nop -/* 0A3938 800A2D38 C4480350 */ lwc1 $f8, 0x350($v0) -/* 0A393C 800A2D3C 00000000 */ nop -/* 0A3940 800A2D40 460A4100 */ add.s $f4, $f8, $f10 -/* 0A3944 800A2D44 0C00382C */ jal func_8000E0B0 -/* 0A3948 800A2D48 E4440450 */ swc1 $f4, 0x450($v0) -/* 0A394C 800A2D4C 1C40000A */ bgtz $v0, .L800A2D78 -/* 0A3950 800A2D50 8FAF0098 */ lw $t7, 0x98($sp) -/* 0A3954 800A2D54 8E270000 */ lw $a3, ($s1) -/* 0A3958 800A2D58 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A395C 800A2D5C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3960 800A2D60 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3964 800A2D64 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3968 800A2D68 02402025 */ move $a0, $s2 -/* 0A396C 800A2D6C 0C02A980 */ jal func_800AA600 -/* 0A3970 800A2D70 24E70440 */ addiu $a3, $a3, 0x440 -/* 0A3974 800A2D74 8FAF0098 */ lw $t7, 0x98($sp) -.L800A2D78: -/* 0A3978 800A2D78 24040001 */ li $a0, 1 -/* 0A397C 800A2D7C 0C01A142 */ jal func_80068508 -/* 0A3980 800A2D80 A1E00020 */ sb $zero, 0x20($t7) -/* 0A3984 800A2D84 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A3988 800A2D88 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A398C 800A2D8C 0C0283AD */ jal render_course_indicator_arrows -/* 0A3990 800A2D90 00000000 */ nop -/* 0A3994 800A2D94 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3998 800A2D98 00000000 */ nop -/* 0A399C 800A2D9C 813901D8 */ lb $t9, 0x1d8($t1) -/* 0A39A0 800A2DA0 00000000 */ nop -/* 0A39A4 800A2DA4 172000CC */ bnez $t9, .L800A30D8 -/* 0A39A8 800A2DA8 00000000 */ nop -/* 0A39AC 800A2DAC 444AF800 */ cfc1 $t2, $31 -/* 0A39B0 800A2DB0 8E2C0000 */ lw $t4, ($s1) -/* 0A39B4 800A2DB4 35410003 */ ori $at, $t2, 3 -/* 0A39B8 800A2DB8 38210002 */ xori $at, $at, 2 -/* 0A39BC 800A2DBC 44C1F800 */ ctc1 $at, $31 -/* 0A39C0 800A2DC0 C58602F0 */ lwc1 $f6, 0x2f0($t4) -/* 0A39C4 800A2DC4 00004025 */ move $t0, $zero -/* 0A39C8 800A2DC8 46003224 */ cvt.w.s $f8, $f6 -/* 0A39CC 800A2DCC 3C0E8012 */ lui $t6, %hi(D_80126D60) # $t6, 0x8012 -/* 0A39D0 800A2DD0 440B4000 */ mfc1 $t3, $f8 -/* 0A39D4 800A2DD4 44CAF800 */ ctc1 $t2, $31 -/* 0A39D8 800A2DD8 AFAB00B8 */ sw $t3, 0xb8($sp) -/* 0A39DC 800A2DDC 812D0194 */ lb $t5, 0x194($t1) -/* 0A39E0 800A2DE0 00000000 */ nop -/* 0A39E4 800A2DE4 19A00067 */ blez $t5, .L800A2F84 -/* 0A39E8 800A2DE8 00086880 */ sll $t5, $t0, 2 -/* 0A39EC 800A2DEC 8DCE6D60 */ lw $t6, %lo(D_80126D60)($t6) -/* 0A39F0 800A2DF0 00001080 */ sll $v0, $zero, 2 -/* 0A39F4 800A2DF4 81D8004B */ lb $t8, 0x4b($t6) -/* 0A39F8 800A2DF8 01228021 */ addu $s0, $t1, $v0 -/* 0A39FC 800A2DFC 1B000060 */ blez $t8, .L800A2F80 -/* 0A3A00 800A2E00 3C0F800E */ lui $t7, %hi(D_800E27AC) # $t7, 0x800e -/* 0A3A04 800A2E04 25EF27AC */ addiu $t7, %lo(D_800E27AC) # addiu $t7, $t7, 0x27ac -/* 0A3A08 800A2E08 004FC821 */ addu $t9, $v0, $t7 -/* 0A3A0C 800A2E0C AFB9003C */ sw $t9, 0x3c($sp) -.L800A2E10: -/* 0A3A10 800A2E10 8E040128 */ lw $a0, 0x128($s0) -/* 0A3A14 800A2E14 AFA800BC */ sw $t0, 0xbc($sp) -/* 0A3A18 800A2E18 27A500B4 */ addiu $a1, $sp, 0xb4 -/* 0A3A1C 800A2E1C 27A600B0 */ addiu $a2, $sp, 0xb0 -/* 0A3A20 800A2E20 0C0165E4 */ jal get_timestamp_from_frames -/* 0A3A24 800A2E24 27A700AC */ addiu $a3, $sp, 0xac -/* 0A3A28 800A2E28 8FAC003C */ lw $t4, 0x3c($sp) -/* 0A3A2C 800A2E2C 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A3A30 800A2E30 8D8A0000 */ lw $t2, ($t4) -/* 0A3A34 800A2E34 444DF800 */ cfc1 $t5, $31 -/* 0A3A38 800A2E38 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) -/* 0A3A3C 800A2E3C 8E2B0000 */ lw $t3, ($s1) -/* 0A3A40 800A2E40 35A10003 */ ori $at, $t5, 3 -/* 0A3A44 800A2E44 38210002 */ xori $at, $at, 2 -/* 0A3A48 800A2E48 44C1F800 */ ctc1 $at, $31 -/* 0A3A4C 800A2E4C C56A02EC */ lwc1 $f10, 0x2ec($t3) -/* 0A3A50 800A2E50 8FAE00AC */ lw $t6, 0xac($sp) -/* 0A3A54 800A2E54 46005124 */ cvt.w.s $f4, $f10 -/* 0A3A58 800A2E58 8FA500B8 */ lw $a1, 0xb8($sp) -/* 0A3A5C 800A2E5C 44042000 */ mfc1 $a0, $f4 -/* 0A3A60 800A2E60 8FA600B4 */ lw $a2, 0xb4($sp) -/* 0A3A64 800A2E64 8FA700B0 */ lw $a3, 0xb0($sp) -/* 0A3A68 800A2E68 24180001 */ li $t8, 1 -/* 0A3A6C 800A2E6C 44CDF800 */ ctc1 $t5, $31 -/* 0A3A70 800A2E70 AFB80014 */ sw $t8, 0x14($sp) -/* 0A3A74 800A2E74 0C029FEF */ jal func_800A7FBC -/* 0A3A78 800A2E78 AFAE0010 */ sw $t6, 0x10($sp) -/* 0A3A7C 800A2E7C 240FFFFE */ li $t7, -2 -/* 0A3A80 800A2E80 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A3A84 800A2E84 AC2F2834 */ sw $t7, %lo(D_800E2834)($at) -/* 0A3A88 800A2E88 8FB900B8 */ lw $t9, 0xb8($sp) -/* 0A3A8C 800A2E8C 8E430000 */ lw $v1, ($s2) -/* 0A3A90 800A2E90 272C000C */ addiu $t4, $t9, 0xc -/* 0A3A94 800A2E94 246A0008 */ addiu $t2, $v1, 8 -/* 0A3A98 800A2E98 8FA800BC */ lw $t0, 0xbc($sp) -/* 0A3A9C 800A2E9C AFAC00B8 */ sw $t4, 0xb8($sp) -/* 0A3AA0 800A2EA0 AE4A0000 */ sw $t2, ($s2) -/* 0A3AA4 800A2EA4 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A3AA8 800A2EA8 240DFFFF */ li $t5, -1 -/* 0A3AAC 800A2EAC AC6D0004 */ sw $t5, 4($v1) -/* 0A3AB0 800A2EB0 AC6B0000 */ sw $t3, ($v1) -/* 0A3AB4 800A2EB4 8E2E0000 */ lw $t6, ($s1) -/* 0A3AB8 800A2EB8 25090001 */ addiu $t1, $t0, 1 -/* 0A3ABC 800A2EBC A5C90338 */ sh $t1, 0x338($t6) -/* 0A3AC0 800A2EC0 8E270000 */ lw $a3, ($s1) -/* 0A3AC4 800A2EC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3AC8 800A2EC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3ACC 800A2ECC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3AD0 800A2ED0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3AD4 800A2ED4 AFA90050 */ sw $t1, 0x50($sp) -/* 0A3AD8 800A2ED8 02402025 */ move $a0, $s2 -/* 0A3ADC 800A2EDC 0C02A980 */ jal func_800AA600 -/* 0A3AE0 800A2EE0 24E70320 */ addiu $a3, $a3, 0x320 -/* 0A3AE4 800A2EE4 8E270000 */ lw $a3, ($s1) -/* 0A3AE8 800A2EE8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3AEC 800A2EEC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3AF0 800A2EF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3AF4 800A2EF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3AF8 800A2EF8 02402025 */ move $a0, $s2 -/* 0A3AFC 800A2EFC 0C02A980 */ jal func_800AA600 -/* 0A3B00 800A2F00 24E70300 */ addiu $a3, $a3, 0x300 -/* 0A3B04 800A2F04 8E220000 */ lw $v0, ($s1) -/* 0A3B08 800A2F08 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 0A3B0C 800A2F0C 44810000 */ mtc1 $at, $f0 -/* 0A3B10 800A2F10 C4460330 */ lwc1 $f6, 0x330($v0) -/* 0A3B14 800A2F14 26100004 */ addiu $s0, $s0, 4 -/* 0A3B18 800A2F18 46003200 */ add.s $f8, $f6, $f0 -/* 0A3B1C 800A2F1C 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A3B20 800A2F20 E4480330 */ swc1 $f8, 0x330($v0) -/* 0A3B24 800A2F24 8E220000 */ lw $v0, ($s1) -/* 0A3B28 800A2F28 00000000 */ nop -/* 0A3B2C 800A2F2C C44A0310 */ lwc1 $f10, 0x310($v0) -/* 0A3B30 800A2F30 00000000 */ nop -/* 0A3B34 800A2F34 46005100 */ add.s $f4, $f10, $f0 -/* 0A3B38 800A2F38 E4440310 */ swc1 $f4, 0x310($v0) -/* 0A3B3C 800A2F3C 8FB8003C */ lw $t8, 0x3c($sp) -/* 0A3B40 800A2F40 8FB900A0 */ lw $t9, 0xa0($sp) -/* 0A3B44 800A2F44 270F0004 */ addiu $t7, $t8, 4 -/* 0A3B48 800A2F48 AFAF003C */ sw $t7, 0x3c($sp) -/* 0A3B4C 800A2F4C 8FA80050 */ lw $t0, 0x50($sp) -/* 0A3B50 800A2F50 832C0194 */ lb $t4, 0x194($t9) -/* 0A3B54 800A2F54 00000000 */ nop -/* 0A3B58 800A2F58 010C082A */ slt $at, $t0, $t4 -/* 0A3B5C 800A2F5C 10200009 */ beqz $at, .L800A2F84 -/* 0A3B60 800A2F60 00086880 */ sll $t5, $t0, 2 -/* 0A3B64 800A2F64 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A3B68 800A2F68 00000000 */ nop -/* 0A3B6C 800A2F6C 814B004B */ lb $t3, 0x4b($t2) -/* 0A3B70 800A2F70 00000000 */ nop -/* 0A3B74 800A2F74 010B082A */ slt $at, $t0, $t3 -/* 0A3B78 800A2F78 1420FFA5 */ bnez $at, .L800A2E10 -/* 0A3B7C 800A2F7C 00000000 */ nop -.L800A2F80: -/* 0A3B80 800A2F80 00086880 */ sll $t5, $t0, 2 -.L800A2F84: -/* 0A3B84 800A2F84 01A86823 */ subu $t5, $t5, $t0 -/* 0A3B88 800A2F88 000D6880 */ sll $t5, $t5, 2 -/* 0A3B8C 800A2F8C 448D3000 */ mtc1 $t5, $f6 -/* 0A3B90 800A2F90 8E220000 */ lw $v0, ($s1) -/* 0A3B94 800A2F94 46803020 */ cvt.s.w $f0, $f6 -/* 0A3B98 800A2F98 C4480330 */ lwc1 $f8, 0x330($v0) -/* 0A3B9C 800A2F9C 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3BA0 800A2FA0 46004281 */ sub.s $f10, $f8, $f0 -/* 0A3BA4 800A2FA4 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 -/* 0A3BA8 800A2FA8 E44A0330 */ swc1 $f10, 0x330($v0) -/* 0A3BAC 800A2FAC 8E220000 */ lw $v0, ($s1) -/* 0A3BB0 800A2FB0 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c -/* 0A3BB4 800A2FB4 C4440310 */ lwc1 $f4, 0x310($v0) -/* 0A3BB8 800A2FB8 00000000 */ nop -/* 0A3BBC 800A2FBC 46002181 */ sub.s $f6, $f4, $f0 -/* 0A3BC0 800A2FC0 E4460310 */ swc1 $f6, 0x310($v0) -/* 0A3BC4 800A2FC4 912E01EF */ lbu $t6, 0x1ef($t1) -/* 0A3BC8 800A2FC8 00000000 */ nop -/* 0A3BCC 800A2FCC 31D80004 */ andi $t8, $t6, 4 -/* 0A3BD0 800A2FD0 13000010 */ beqz $t8, .L800A3014 -/* 0A3BD4 800A2FD4 00000000 */ nop -/* 0A3BD8 800A2FD8 8E0F0000 */ lw $t7, ($s0) -/* 0A3BDC 800A2FDC 24040007 */ li $a0, 7 -/* 0A3BE0 800A2FE0 1DE0000C */ bgtz $t7, .L800A3014 -/* 0A3BE4 800A2FE4 24050003 */ li $a1, 3 -/* 0A3BE8 800A2FE8 00003025 */ move $a2, $zero -/* 0A3BEC 800A2FEC 24070004 */ li $a3, 4 -/* 0A3BF0 800A2FF0 0C028DB3 */ jal func_800A36CC -/* 0A3BF4 800A2FF4 AFA00010 */ sw $zero, 0x10($sp) -/* 0A3BF8 800A2FF8 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3BFC 800A2FFC 2419003C */ li $t9, 60 -/* 0A3C00 800A3000 AE190000 */ sw $t9, ($s0) -/* 0A3C04 800A3004 912A01EF */ lbu $t2, 0x1ef($t1) -/* 0A3C08 800A3008 00000000 */ nop -/* 0A3C0C 800A300C 314BFFFB */ andi $t3, $t2, 0xfffb -/* 0A3C10 800A3010 A12B01EF */ sb $t3, 0x1ef($t1) -.L800A3014: -/* 0A3C14 800A3014 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 -/* 0A3C18 800A3018 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c -/* 0A3C1C 800A301C 8E020000 */ lw $v0, ($s0) -/* 0A3C20 800A3020 8FAD00C8 */ lw $t5, 0xc8($sp) -/* 0A3C24 800A3024 18400006 */ blez $v0, .L800A3040 -/* 0A3C28 800A3028 004D7023 */ subu $t6, $v0, $t5 -/* 0A3C2C 800A302C AE0E0000 */ sw $t6, ($s0) -/* 0A3C30 800A3030 05C10003 */ bgez $t6, .L800A3040 -/* 0A3C34 800A3034 01C01025 */ move $v0, $t6 -/* 0A3C38 800A3038 AE000000 */ sw $zero, ($s0) -/* 0A3C3C 800A303C 00001025 */ move $v0, $zero -.L800A3040: -/* 0A3C40 800A3040 14400025 */ bnez $v0, .L800A30D8 -/* 0A3C44 800A3044 00000000 */ nop -/* 0A3C48 800A3048 813801D8 */ lb $t8, 0x1d8($t1) -/* 0A3C4C 800A304C 240FFF9C */ li $t7, -100 -/* 0A3C50 800A3050 17000021 */ bnez $t8, .L800A30D8 -/* 0A3C54 800A3054 3C198012 */ lui $t9, %hi(D_80126D40) # $t9, 0x8012 -/* 0A3C58 800A3058 AE0F0000 */ sw $t7, ($s0) -/* 0A3C5C 800A305C 8F396D40 */ lw $t9, %lo(D_80126D40)($t9) -/* 0A3C60 800A3060 3C108012 */ lui $s0, %hi(D_80126D64) # $s0, 0x8012 -/* 0A3C64 800A3064 1720001C */ bnez $t9, .L800A30D8 -/* 0A3C68 800A3068 26106D64 */ addiu $s0, %lo(D_80126D64) # addiu $s0, $s0, 0x6d64 -/* 0A3C6C 800A306C 92050000 */ lbu $a1, ($s0) -/* 0A3C70 800A3070 00002025 */ move $a0, $zero -/* 0A3C74 800A3074 0C01BE53 */ jal get_random_number_from_range -/* 0A3C78 800A3078 24A50002 */ addiu $a1, $a1, 2 -/* 0A3C7C 800A307C 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 -/* 0A3C80 800A3080 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 -/* 0A3C84 800A3084 962A0000 */ lhu $t2, ($s1) -/* 0A3C88 800A3088 2443014B */ addiu $v1, $v0, 0x14b -/* 0A3C8C 800A308C 306BFFFF */ andi $t3, $v1, 0xffff -/* 0A3C90 800A3090 154B000A */ bne $t2, $t3, .L800A30BC -/* 0A3C94 800A3094 3064FFFF */ andi $a0, $v1, 0xffff -.L800A3098: -/* 0A3C98 800A3098 92050000 */ lbu $a1, ($s0) -/* 0A3C9C 800A309C 00002025 */ move $a0, $zero -/* 0A3CA0 800A30A0 0C01BE53 */ jal get_random_number_from_range -/* 0A3CA4 800A30A4 24A50002 */ addiu $a1, $a1, 2 -/* 0A3CA8 800A30A8 962C0000 */ lhu $t4, ($s1) -/* 0A3CAC 800A30AC 2443014B */ addiu $v1, $v0, 0x14b -/* 0A3CB0 800A30B0 306DFFFF */ andi $t5, $v1, 0xffff -/* 0A3CB4 800A30B4 118DFFF8 */ beq $t4, $t5, .L800A3098 -/* 0A3CB8 800A30B8 3064FFFF */ andi $a0, $v1, 0xffff -.L800A30BC: -/* 0A3CBC 800A30BC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A3CC0 800A30C0 A6240000 */ sh $a0, ($s1) -/* 0A3CC4 800A30C4 0C000741 */ jal play_sound_global -/* 0A3CC8 800A30C8 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A3CCC 800A30CC 240E0001 */ li $t6, 1 -/* 0A3CD0 800A30D0 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3CD4 800A30D4 A20E0000 */ sb $t6, ($s0) -.L800A30D8: -/* 0A3CD8 800A30D8 81230193 */ lb $v1, 0x193($t1) -/* 0A3CDC 800A30DC 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 -/* 0A3CE0 800A30E0 18600041 */ blez $v1, .L800A31E8 -/* 0A3CE4 800A30E4 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 -/* 0A3CE8 800A30E8 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 -/* 0A3CEC 800A30EC 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) -/* 0A3CF0 800A30F0 0003C880 */ sll $t9, $v1, 2 -/* 0A3CF4 800A30F4 830F004B */ lb $t7, 0x4b($t8) -/* 0A3CF8 800A30F8 01395021 */ addu $t2, $t1, $t9 -/* 0A3CFC 800A30FC 006F082A */ slt $at, $v1, $t7 -/* 0A3D00 800A3100 10200039 */ beqz $at, .L800A31E8 -/* 0A3D04 800A3104 00000000 */ nop -/* 0A3D08 800A3108 8D4B0128 */ lw $t3, 0x128($t2) -/* 0A3D0C 800A310C 3C0C8012 */ lui $t4, %hi(D_80126D40) # $t4, 0x8012 -/* 0A3D10 800A3110 29610014 */ slti $at, $t3, 0x14 -/* 0A3D14 800A3114 10200034 */ beqz $at, .L800A31E8 -/* 0A3D18 800A3118 00000000 */ nop -/* 0A3D1C 800A311C 8D8C6D40 */ lw $t4, %lo(D_80126D40)($t4) -/* 0A3D20 800A3120 00000000 */ nop -/* 0A3D24 800A3124 15800030 */ bnez $t4, .L800A31E8 -/* 0A3D28 800A3128 00000000 */ nop -/* 0A3D2C 800A312C 812D01D6 */ lb $t5, 0x1d6($t1) -/* 0A3D30 800A3130 00000000 */ nop -/* 0A3D34 800A3134 29A10003 */ slti $at, $t5, 3 -/* 0A3D38 800A3138 1020002B */ beqz $at, .L800A31E8 -/* 0A3D3C 800A313C 00000000 */ nop -/* 0A3D40 800A3140 0C01BAA4 */ jal get_settings -/* 0A3D44 800A3144 00000000 */ nop -/* 0A3D48 800A3148 3C108012 */ lui $s0, %hi(D_80127184) # $s0, 0x8012 -/* 0A3D4C 800A314C 26107184 */ addiu $s0, %lo(D_80127184) # addiu $s0, $s0, 0x7184 -/* 0A3D50 800A3150 0C01AF62 */ jal func_8006BD88 -/* 0A3D54 800A3154 AE020000 */ sw $v0, ($s0) -/* 0A3D58 800A3158 8FAE00A0 */ lw $t6, 0xa0($sp) -/* 0A3D5C 800A315C 8E190000 */ lw $t9, ($s0) -/* 0A3D60 800A3160 81C30193 */ lb $v1, 0x193($t6) -/* 0A3D64 800A3164 81CA01D6 */ lb $t2, 0x1d6($t6) -/* 0A3D68 800A3168 0003C080 */ sll $t8, $v1, 2 -/* 0A3D6C 800A316C 000A5880 */ sll $t3, $t2, 2 -/* 0A3D70 800A3170 01D87821 */ addu $t7, $t6, $t8 -/* 0A3D74 800A3174 032B6021 */ addu $t4, $t9, $t3 -/* 0A3D78 800A3178 8D8D0024 */ lw $t5, 0x24($t4) -/* 0A3D7C 800A317C 8DE40124 */ lw $a0, 0x124($t7) -/* 0A3D80 800A3180 0002C040 */ sll $t8, $v0, 1 -/* 0A3D84 800A3184 01B87821 */ addu $t7, $t5, $t8 -/* 0A3D88 800A3188 95EA0000 */ lhu $t2, ($t7) -/* 0A3D8C 800A318C 2465FFFF */ addiu $a1, $v1, -1 -/* 0A3D90 800A3190 008A082A */ slt $at, $a0, $t2 -/* 0A3D94 800A3194 10200014 */ beqz $at, .L800A31E8 -/* 0A3D98 800A3198 00000000 */ nop -/* 0A3D9C 800A319C 18A0000D */ blez $a1, .L800A31D4 -/* 0A3DA0 800A31A0 00804825 */ move $t1, $a0 -/* 0A3DA4 800A31A4 00001025 */ move $v0, $zero -/* 0A3DA8 800A31A8 01C08025 */ move $s0, $t6 -/* 0A3DAC 800A31AC 00051880 */ sll $v1, $a1, 2 -.L800A31B0: -/* 0A3DB0 800A31B0 8E190128 */ lw $t9, 0x128($s0) -/* 0A3DB4 800A31B4 24420004 */ addiu $v0, $v0, 4 -/* 0A3DB8 800A31B8 0139082A */ slt $at, $t1, $t9 -/* 0A3DBC 800A31BC 14200003 */ bnez $at, .L800A31CC -/* 0A3DC0 800A31C0 0043082A */ slt $at, $v0, $v1 -/* 0A3DC4 800A31C4 00004825 */ move $t1, $zero -/* 0A3DC8 800A31C8 0043082A */ slt $at, $v0, $v1 -.L800A31CC: -/* 0A3DCC 800A31CC 1420FFF8 */ bnez $at, .L800A31B0 -/* 0A3DD0 800A31D0 26100004 */ addiu $s0, $s0, 4 -.L800A31D4: -/* 0A3DD4 800A31D4 11200004 */ beqz $t1, .L800A31E8 -/* 0A3DD8 800A31D8 24040144 */ li $a0, 324 -/* 0A3DDC 800A31DC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A3DE0 800A31E0 0C000741 */ jal play_sound_global -/* 0A3DE4 800A31E4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -.L800A31E8: -/* 0A3DE8 800A31E8 0C006CA2 */ jal func_8001B288 -/* 0A3DEC 800A31EC 00000000 */ nop -/* 0A3DF0 800A31F0 1040004F */ beqz $v0, .L800A3330 -/* 0A3DF4 800A31F4 8FAA00A0 */ lw $t2, 0xa0($sp) -/* 0A3DF8 800A31F8 0C006CB8 */ jal func_8001B2E0 -/* 0A3DFC 800A31FC 00000000 */ nop -/* 0A3E00 800A3200 1040004A */ beqz $v0, .L800A332C -/* 0A3E04 800A3204 00408025 */ move $s0, $v0 -/* 0A3E08 800A3208 0C0044E7 */ jal func_8001139C -/* 0A3E0C 800A320C 00000000 */ nop -/* 0A3E10 800A3210 14400047 */ bnez $v0, .L800A3330 -/* 0A3E14 800A3214 8FAA00A0 */ lw $t2, 0xa0($sp) -/* 0A3E18 800A3218 8FAB00A0 */ lw $t3, 0xa0($sp) -/* 0A3E1C 800A321C 8FAD00C4 */ lw $t5, 0xc4($sp) -/* 0A3E20 800A3220 816C01D8 */ lb $t4, 0x1d8($t3) -/* 0A3E24 800A3224 00000000 */ nop -/* 0A3E28 800A3228 15800041 */ bnez $t4, .L800A3330 -/* 0A3E2C 800A322C 8FAA00A0 */ lw $t2, 0xa0($sp) -/* 0A3E30 800A3230 C608000C */ lwc1 $f8, 0xc($s0) -/* 0A3E34 800A3234 C5AA000C */ lwc1 $f10, 0xc($t5) -/* 0A3E38 800A3238 C6040010 */ lwc1 $f4, 0x10($s0) -/* 0A3E3C 800A323C C5A60010 */ lwc1 $f6, 0x10($t5) -/* 0A3E40 800A3240 460A4001 */ sub.s $f0, $f8, $f10 -/* 0A3E44 800A3244 C5AA0014 */ lwc1 $f10, 0x14($t5) -/* 0A3E48 800A3248 46062081 */ sub.s $f2, $f4, $f6 -/* 0A3E4C 800A324C C6080014 */ lwc1 $f8, 0x14($s0) -/* 0A3E50 800A3250 46000102 */ mul.s $f4, $f0, $f0 -/* 0A3E54 800A3254 460A4381 */ sub.s $f14, $f8, $f10 -/* 0A3E58 800A3258 46021182 */ mul.s $f6, $f2, $f2 -/* 0A3E5C 800A325C 00000000 */ nop -/* 0A3E60 800A3260 460E7282 */ mul.s $f10, $f14, $f14 -/* 0A3E64 800A3264 46062200 */ add.s $f8, $f4, $f6 -/* 0A3E68 800A3268 0C0326B4 */ jal sqrtf -/* 0A3E6C 800A326C 460A4300 */ add.s $f12, $f8, $f10 -/* 0A3E70 800A3270 3C014416 */ li $at, 0x44160000 # 600.000000 -/* 0A3E74 800A3274 44812000 */ mtc1 $at, $f4 -/* 0A3E78 800A3278 3C188012 */ lui $t8, %hi(D_80126D40) # $t8, 0x8012 -/* 0A3E7C 800A327C 4604003C */ c.lt.s $f0, $f4 -/* 0A3E80 800A3280 00000000 */ nop -/* 0A3E84 800A3284 45000020 */ bc1f .L800A3308 -/* 0A3E88 800A3288 00000000 */ nop -/* 0A3E8C 800A328C 8F186D40 */ lw $t8, %lo(D_80126D40)($t8) -/* 0A3E90 800A3290 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 -/* 0A3E94 800A3294 1700001C */ bnez $t8, .L800A3308 -/* 0A3E98 800A3298 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 -/* 0A3E9C 800A329C 8E0F0000 */ lw $t7, ($s0) -/* 0A3EA0 800A32A0 00002025 */ move $a0, $zero -/* 0A3EA4 800A32A4 15E00018 */ bnez $t7, .L800A3308 -/* 0A3EA8 800A32A8 00000000 */ nop -/* 0A3EAC 800A32AC 0C01BE53 */ jal get_random_number_from_range -/* 0A3EB0 800A32B0 24050002 */ li $a1, 2 -/* 0A3EB4 800A32B4 962A0000 */ lhu $t2, ($s1) -/* 0A3EB8 800A32B8 24430147 */ addiu $v1, $v0, 0x147 -/* 0A3EBC 800A32BC 306EFFFF */ andi $t6, $v1, 0xffff -/* 0A3EC0 800A32C0 154E0009 */ bne $t2, $t6, .L800A32E8 -/* 0A3EC4 800A32C4 3064FFFF */ andi $a0, $v1, 0xffff -.L800A32C8: -/* 0A3EC8 800A32C8 00002025 */ move $a0, $zero -/* 0A3ECC 800A32CC 0C01BE53 */ jal get_random_number_from_range -/* 0A3ED0 800A32D0 24050002 */ li $a1, 2 -/* 0A3ED4 800A32D4 96390000 */ lhu $t9, ($s1) -/* 0A3ED8 800A32D8 24430147 */ addiu $v1, $v0, 0x147 -/* 0A3EDC 800A32DC 306BFFFF */ andi $t3, $v1, 0xffff -/* 0A3EE0 800A32E0 132BFFF9 */ beq $t9, $t3, .L800A32C8 -/* 0A3EE4 800A32E4 3064FFFF */ andi $a0, $v1, 0xffff -.L800A32E8: -/* 0A3EE8 800A32E8 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A3EEC 800A32EC A6240000 */ sh $a0, ($s1) -/* 0A3EF0 800A32F0 0C000741 */ jal play_sound_global -/* 0A3EF4 800A32F4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A3EF8 800A32F8 24040078 */ li $a0, 120 -/* 0A3EFC 800A32FC 0C01BE53 */ jal get_random_number_from_range -/* 0A3F00 800A3300 240504B0 */ li $a1, 1200 -/* 0A3F04 800A3304 AE020000 */ sw $v0, ($s0) -.L800A3308: -/* 0A3F08 800A3308 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 -/* 0A3F0C 800A330C 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 -/* 0A3F10 800A3310 8E0C0000 */ lw $t4, ($s0) -/* 0A3F14 800A3314 8FAD00C8 */ lw $t5, 0xc8($sp) -/* 0A3F18 800A3318 00000000 */ nop -/* 0A3F1C 800A331C 018DC023 */ subu $t8, $t4, $t5 -/* 0A3F20 800A3320 07010002 */ bgez $t8, .L800A332C -/* 0A3F24 800A3324 AE180000 */ sw $t8, ($s0) -/* 0A3F28 800A3328 AE000000 */ sw $zero, ($s0) -.L800A332C: -/* 0A3F2C 800A332C 8FAA00A0 */ lw $t2, 0xa0($sp) -.L800A3330: -/* 0A3F30 800A3330 8FAC00A0 */ lw $t4, 0xa0($sp) -/* 0A3F34 800A3334 81430193 */ lb $v1, 0x193($t2) -/* 0A3F38 800A3338 00000000 */ nop -/* 0A3F3C 800A333C 00037080 */ sll $t6, $v1, 2 -/* 0A3F40 800A3340 014EC821 */ addu $t9, $t2, $t6 -/* 0A3F44 800A3344 8F2B0128 */ lw $t3, 0x128($t9) -/* 0A3F48 800A3348 00000000 */ nop -/* 0A3F4C 800A334C 2961001E */ slti $at, $t3, 0x1e -/* 0A3F50 800A3350 1020000A */ beqz $at, .L800A337C -/* 0A3F54 800A3354 00000000 */ nop -/* 0A3F58 800A3358 10600008 */ beqz $v1, .L800A337C -/* 0A3F5C 800A335C 24040005 */ li $a0, 5 -/* 0A3F60 800A3360 24050001 */ li $a1, 1 -/* 0A3F64 800A3364 24060002 */ li $a2, 2 -/* 0A3F68 800A3368 24070002 */ li $a3, 2 -/* 0A3F6C 800A336C 0C028DB3 */ jal func_800A36CC -/* 0A3F70 800A3370 AFA00010 */ sw $zero, 0x10($sp) -/* 0A3F74 800A3374 10000016 */ b .L800A33D0 -/* 0A3F78 800A3378 8FA400A0 */ lw $a0, 0xa0($sp) -.L800A337C: -/* 0A3F7C 800A337C 818D01D3 */ lb $t5, 0x1d3($t4) -/* 0A3F80 800A3380 8FB800A0 */ lw $t8, 0xa0($sp) -/* 0A3F84 800A3384 19A00008 */ blez $t5, .L800A33A8 -/* 0A3F88 800A3388 24040006 */ li $a0, 6 -/* 0A3F8C 800A338C 24050002 */ li $a1, 2 -/* 0A3F90 800A3390 24060003 */ li $a2, 3 -/* 0A3F94 800A3394 24070002 */ li $a3, 2 -/* 0A3F98 800A3398 0C028DB3 */ jal func_800A36CC -/* 0A3F9C 800A339C AFA00010 */ sw $zero, 0x10($sp) -/* 0A3FA0 800A33A0 1000000B */ b .L800A33D0 -/* 0A3FA4 800A33A4 8FA400A0 */ lw $a0, 0xa0($sp) -.L800A33A8: -/* 0A3FA8 800A33A8 930F01FC */ lbu $t7, 0x1fc($t8) -/* 0A3FAC 800A33AC 24040006 */ li $a0, 6 -/* 0A3FB0 800A33B0 29E10079 */ slti $at, $t7, 0x79 -/* 0A3FB4 800A33B4 14200005 */ bnez $at, .L800A33CC -/* 0A3FB8 800A33B8 24050003 */ li $a1, 3 -/* 0A3FBC 800A33BC 24060001 */ li $a2, 1 -/* 0A3FC0 800A33C0 24070004 */ li $a3, 4 -/* 0A3FC4 800A33C4 0C028DB3 */ jal func_800A36CC -/* 0A3FC8 800A33C8 AFA00010 */ sw $zero, 0x10($sp) -.L800A33CC: -/* 0A3FCC 800A33CC 8FA400A0 */ lw $a0, 0xa0($sp) -.L800A33D0: -/* 0A3FD0 800A33D0 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A3FD4 800A33D4 0C0293D4 */ jal func_800A4F50 -/* 0A3FD8 800A33D8 00000000 */ nop -/* 0A3FDC 800A33DC 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A3FE0 800A33E0 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A3FE4 800A33E4 0C029EDA */ jal render_race_time -/* 0A3FE8 800A33E8 00000000 */ nop -/* 0A3FEC 800A33EC 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A3FF0 800A33F0 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A3FF4 800A33F4 0C029055 */ jal func_800A4154 -/* 0A3FF8 800A33F8 00000000 */ nop -/* 0A3FFC 800A33FC 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A4000 800A3400 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A4004 800A3404 0C029699 */ jal render_wrong_way_text -/* 0A4008 800A3408 00000000 */ nop -/* 0A400C 800A340C 8FA400C0 */ lw $a0, 0xc0($sp) -/* 0A4010 800A3410 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A4014 800A3414 0C028F39 */ jal func_800A3CE4 -/* 0A4018 800A3418 00000000 */ nop -/* 0A401C 800A341C 8FA400C4 */ lw $a0, 0xc4($sp) -/* 0A4020 800A3420 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A4024 800A3424 0C028E21 */ jal func_800A3884 -/* 0A4028 800A3428 00000000 */ nop -/* 0A402C 800A342C 0C00382C */ jal func_8000E0B0 -/* 0A4030 800A3430 00000000 */ nop -/* 0A4034 800A3434 1840009D */ blez $v0, .L800A36AC -/* 0A4038 800A3438 00000000 */ nop -/* 0A403C 800A343C 0C00382C */ jal func_8000E0B0 -/* 0A4040 800A3440 00000000 */ nop -/* 0A4044 800A3444 24010001 */ li $at, 1 -/* 0A4048 800A3448 10410008 */ beq $v0, $at, .L800A346C -/* 0A404C 800A344C 24010002 */ li $at, 2 -/* 0A4050 800A3450 10410010 */ beq $v0, $at, .L800A3494 -/* 0A4054 800A3454 3C0B800F */ lui $t3, %hi(D_800E8658) # $t3, 0x800f -/* 0A4058 800A3458 24010003 */ li $at, 3 -/* 0A405C 800A345C 10410016 */ beq $v0, $at, .L800A34B8 -/* 0A4060 800A3460 3C18800F */ lui $t8, %hi(D_800E8670) # $t8, 0x800f -/* 0A4064 800A3464 1000001C */ b .L800A34D8 -/* 0A4068 800A3468 00000000 */ nop -.L800A346C: -/* 0A406C 800A346C 3C0A800F */ lui $t2, %hi(D_800E8640) # $t2, 0x800f -/* 0A4070 800A3470 3C0E800F */ lui $t6, %hi(D_800E8648) # $t6, 0x800f -/* 0A4074 800A3474 3C19800F */ lui $t9, %hi(D_800E8650) # $t9, 0x800f -/* 0A4078 800A3478 254A8640 */ addiu $t2, %lo(D_800E8640) # addiu $t2, $t2, -0x79c0 -/* 0A407C 800A347C 25CE8648 */ addiu $t6, %lo(D_800E8648) # addiu $t6, $t6, -0x79b8 -/* 0A4080 800A3480 27398650 */ addiu $t9, %lo(D_800E8650) # addiu $t9, $t9, -0x79b0 -/* 0A4084 800A3484 AFAA0060 */ sw $t2, 0x60($sp) -/* 0A4088 800A3488 AFAE005C */ sw $t6, 0x5c($sp) -/* 0A408C 800A348C 10000012 */ b .L800A34D8 -/* 0A4090 800A3490 AFB90058 */ sw $t9, 0x58($sp) -.L800A3494: -/* 0A4094 800A3494 3C0C800F */ lui $t4, %hi(D_800E8664) # $t4, 0x800f -/* 0A4098 800A3498 3C0D800F */ lui $t5, %hi(D_800E8668) # $t5, 0x800f -/* 0A409C 800A349C 256B8658 */ addiu $t3, %lo(D_800E8658) # addiu $t3, $t3, -0x79a8 -/* 0A40A0 800A34A0 258C8664 */ addiu $t4, %lo(D_800E8664) # addiu $t4, $t4, -0x799c -/* 0A40A4 800A34A4 25AD8668 */ addiu $t5, %lo(D_800E8668) # addiu $t5, $t5, -0x7998 -/* 0A40A8 800A34A8 AFAB0060 */ sw $t3, 0x60($sp) -/* 0A40AC 800A34AC AFAC005C */ sw $t4, 0x5c($sp) -/* 0A40B0 800A34B0 10000009 */ b .L800A34D8 -/* 0A40B4 800A34B4 AFAD0058 */ sw $t5, 0x58($sp) -.L800A34B8: -/* 0A40B8 800A34B8 3C0F800F */ lui $t7, %hi(D_800E867C) # $t7, 0x800f -/* 0A40BC 800A34BC 3C0A800F */ lui $t2, %hi(D_800E8680) # $t2, 0x800f -/* 0A40C0 800A34C0 27188670 */ addiu $t8, %lo(D_800E8670) # addiu $t8, $t8, -0x7990 -/* 0A40C4 800A34C4 25EF867C */ addiu $t7, %lo(D_800E867C) # addiu $t7, $t7, -0x7984 -/* 0A40C8 800A34C8 254A8680 */ addiu $t2, %lo(D_800E8680) # addiu $t2, $t2, -0x7980 -/* 0A40CC 800A34CC AFB80060 */ sw $t8, 0x60($sp) -/* 0A40D0 800A34D0 AFAF005C */ sw $t7, 0x5c($sp) -/* 0A40D4 800A34D4 AFAA0058 */ sw $t2, 0x58($sp) -.L800A34D8: -/* 0A40D8 800A34D8 0C031059 */ jal func_800C4164 -/* 0A40DC 800A34DC 24040001 */ li $a0, 1 -/* 0A40E0 800A34E0 0C0310BB */ jal set_text_font -/* 0A40E4 800A34E4 00002025 */ move $a0, $zero -/* 0A40E8 800A34E8 240E00FF */ li $t6, 255 -/* 0A40EC 800A34EC AFAE0010 */ sw $t6, 0x10($sp) -/* 0A40F0 800A34F0 00002025 */ move $a0, $zero -/* 0A40F4 800A34F4 00002825 */ move $a1, $zero -/* 0A40F8 800A34F8 00003025 */ move $a2, $zero -/* 0A40FC 800A34FC 0C0310E1 */ jal set_text_colour -/* 0A4100 800A3500 240700FF */ li $a3, 255 -/* 0A4104 800A3504 3C108012 */ lui $s0, %hi(D_8012718C) # $s0, 0x8012 -/* 0A4108 800A3508 3C118012 */ lui $s1, %hi(D_80126D24) # $s1, 0x8012 -/* 0A410C 800A350C 26316D24 */ addiu $s1, %lo(D_80126D24) # addiu $s1, $s1, 0x6d24 -/* 0A4110 800A3510 2610718C */ addiu $s0, %lo(D_8012718C) # addiu $s0, $s0, 0x718c -/* 0A4114 800A3514 8E190000 */ lw $t9, ($s0) -/* 0A4118 800A3518 8E2B0000 */ lw $t3, ($s1) -/* 0A411C 800A351C 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 -/* 0A4120 800A3520 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) -/* 0A4124 800A3524 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4128 800A3528 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A412C 800A352C 032B6021 */ addu $t4, $t9, $t3 -/* 0A4130 800A3530 8FA70060 */ lw $a3, 0x60($sp) -/* 0A4134 800A3534 2418000C */ li $t8, 12 -/* 0A4138 800A3538 018D2821 */ addu $a1, $t4, $t5 -/* 0A413C 800A353C 24A50001 */ addiu $a1, $a1, 1 -/* 0A4140 800A3540 AFB80010 */ sw $t8, 0x10($sp) -/* 0A4144 800A3544 02402025 */ move $a0, $s2 -/* 0A4148 800A3548 0C031110 */ jal draw_text -/* 0A414C 800A354C 24C60001 */ addiu $a2, $a2, 1 -/* 0A4150 800A3550 8E0F0000 */ lw $t7, ($s0) -/* 0A4154 800A3554 8E2A0000 */ lw $t2, ($s1) -/* 0A4158 800A3558 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 -/* 0A415C 800A355C 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) -/* 0A4160 800A3560 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4164 800A3564 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A4168 800A3568 01EA7021 */ addu $t6, $t7, $t2 -/* 0A416C 800A356C 8FA7005C */ lw $a3, 0x5c($sp) -/* 0A4170 800A3570 240B000C */ li $t3, 12 -/* 0A4174 800A3574 01D92821 */ addu $a1, $t6, $t9 -/* 0A4178 800A3578 24A50001 */ addiu $a1, $a1, 1 -/* 0A417C 800A357C AFAB0010 */ sw $t3, 0x10($sp) -/* 0A4180 800A3580 02402025 */ move $a0, $s2 -/* 0A4184 800A3584 0C031110 */ jal draw_text -/* 0A4188 800A3588 24C6000F */ addiu $a2, $a2, 0xf -/* 0A418C 800A358C 8E0C0000 */ lw $t4, ($s0) -/* 0A4190 800A3590 8E2D0000 */ lw $t5, ($s1) -/* 0A4194 800A3594 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 -/* 0A4198 800A3598 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) -/* 0A419C 800A359C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A41A0 800A35A0 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A41A4 800A35A4 018DC021 */ addu $t8, $t4, $t5 -/* 0A41A8 800A35A8 8FA70058 */ lw $a3, 0x58($sp) -/* 0A41AC 800A35AC 240A000C */ li $t2, 12 -/* 0A41B0 800A35B0 030F2821 */ addu $a1, $t8, $t7 -/* 0A41B4 800A35B4 24A50001 */ addiu $a1, $a1, 1 -/* 0A41B8 800A35B8 AFAA0010 */ sw $t2, 0x10($sp) -/* 0A41BC 800A35BC 02402025 */ move $a0, $s2 -/* 0A41C0 800A35C0 0C031110 */ jal draw_text -/* 0A41C4 800A35C4 24C6001D */ addiu $a2, $a2, 0x1d -/* 0A41C8 800A35C8 3C028012 */ lui $v0, %hi(D_80127194) # $v0, 0x8012 -/* 0A41CC 800A35CC 8C427194 */ lw $v0, %lo(D_80127194)($v0) -/* 0A41D0 800A35D0 24070080 */ li $a3, 128 -/* 0A41D4 800A35D4 904E0013 */ lbu $t6, 0x13($v0) -/* 0A41D8 800A35D8 90440010 */ lbu $a0, 0x10($v0) -/* 0A41DC 800A35DC 90450011 */ lbu $a1, 0x11($v0) -/* 0A41E0 800A35E0 90460012 */ lbu $a2, 0x12($v0) -/* 0A41E4 800A35E4 0C0310E1 */ jal set_text_colour -/* 0A41E8 800A35E8 AFAE0010 */ sw $t6, 0x10($sp) -/* 0A41EC 800A35EC 8E190000 */ lw $t9, ($s0) -/* 0A41F0 800A35F0 8E2B0000 */ lw $t3, ($s1) -/* 0A41F4 800A35F4 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 -/* 0A41F8 800A35F8 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) -/* 0A41FC 800A35FC 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4200 800A3600 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A4204 800A3604 8FA70060 */ lw $a3, 0x60($sp) -/* 0A4208 800A3608 2418000C */ li $t8, 12 -/* 0A420C 800A360C 032B6021 */ addu $t4, $t9, $t3 -/* 0A4210 800A3610 AFB80010 */ sw $t8, 0x10($sp) -/* 0A4214 800A3614 02402025 */ move $a0, $s2 -/* 0A4218 800A3618 0C031110 */ jal draw_text -/* 0A421C 800A361C 018D2821 */ addu $a1, $t4, $t5 -/* 0A4220 800A3620 8E0F0000 */ lw $t7, ($s0) -/* 0A4224 800A3624 8E2A0000 */ lw $t2, ($s1) -/* 0A4228 800A3628 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 -/* 0A422C 800A362C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4230 800A3630 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A4234 800A3634 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) -/* 0A4238 800A3638 8FA7005C */ lw $a3, 0x5c($sp) -/* 0A423C 800A363C 240B000C */ li $t3, 12 -/* 0A4240 800A3640 01EA7021 */ addu $t6, $t7, $t2 -/* 0A4244 800A3644 AFAB0010 */ sw $t3, 0x10($sp) -/* 0A4248 800A3648 02402025 */ move $a0, $s2 -/* 0A424C 800A364C 24C6000E */ addiu $a2, $a2, 0xe -/* 0A4250 800A3650 0C031110 */ jal draw_text -/* 0A4254 800A3654 01D92821 */ addu $a1, $t6, $t9 -/* 0A4258 800A3658 8E0C0000 */ lw $t4, ($s0) -/* 0A425C 800A365C 8E2D0000 */ lw $t5, ($s1) -/* 0A4260 800A3660 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 -/* 0A4264 800A3664 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4268 800A3668 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A426C 800A366C 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) -/* 0A4270 800A3670 8FA70058 */ lw $a3, 0x58($sp) -/* 0A4274 800A3674 240A000C */ li $t2, 12 -/* 0A4278 800A3678 018DC021 */ addu $t8, $t4, $t5 -/* 0A427C 800A367C AFAA0010 */ sw $t2, 0x10($sp) -/* 0A4280 800A3680 02402025 */ move $a0, $s2 -/* 0A4284 800A3684 24C6001C */ addiu $a2, $a2, 0x1c -/* 0A4288 800A3688 0C031110 */ jal draw_text -/* 0A428C 800A368C 030F2821 */ addu $a1, $t8, $t7 -/* 0A4290 800A3690 3C048012 */ lui $a0, %hi(D_80127194) # $a0, 0x8012 -/* 0A4294 800A3694 8C847194 */ lw $a0, %lo(D_80127194)($a0) -/* 0A4298 800A3698 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A429C 800A369C 0C01FC93 */ jal func_8007F24C -/* 0A42A0 800A36A0 00000000 */ nop -/* 0A42A4 800A36A4 0C031059 */ jal func_800C4164 -/* 0A42A8 800A36A8 00002025 */ move $a0, $zero -.L800A36AC: -/* 0A42AC 800A36AC 0C01A142 */ jal func_80068508 -/* 0A42B0 800A36B0 00002025 */ move $a0, $zero -.L800A36B4: -/* 0A42B4 800A36B4 8FBF002C */ lw $ra, 0x2c($sp) -/* 0A42B8 800A36B8 8FB00020 */ lw $s0, 0x20($sp) -/* 0A42BC 800A36BC 8FB10024 */ lw $s1, 0x24($sp) -/* 0A42C0 800A36C0 8FB20028 */ lw $s2, 0x28($sp) -/* 0A42C4 800A36C4 03E00008 */ jr $ra -/* 0A42C8 800A36C8 27BD00C0 */ addiu $sp, $sp, 0xc0 - +.rdata +glabel D_800E8640 +.asciz "CAN'T" +.ascii "\0\0" # padding +glabel D_800E8648 +.asciz "SAVE" +.ascii "\0\0\0" # padding +glabel D_800E8650 +.asciz "GHOST" +.ascii "\0\0" # padding +glabel D_800E8658 +.asciz " CONTROLLER" +glabel D_800E8664 +.asciz "PAK" +glabel D_800E8668 +.asciz "FULL" +.ascii "\0\0\0" # padding +glabel D_800E8670 +.asciz " CONTROLLER" +glabel D_800E867C +.asciz "PAK" +glabel D_800E8680 +.asciz "DAMAGED" + +.late_rodata +glabel D_800E8738 +.double 1.2 + +.text +glabel func_800A277C +/* 0A337C 800A277C 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 0A3380 800A2780 AFB00020 */ sw $s0, 0x20($sp) +/* 0A3384 800A2784 3C108012 */ lui $s0, %hi(D_80126CF4) # $s0, 0x8012 +/* 0A3388 800A2788 AFBF002C */ sw $ra, 0x2c($sp) +/* 0A338C 800A278C AFB20028 */ sw $s2, 0x28($sp) +/* 0A3390 800A2790 AFB10024 */ sw $s1, 0x24($sp) +/* 0A3394 800A2794 AFA400C0 */ sw $a0, 0xc0($sp) +/* 0A3398 800A2798 AFA500C4 */ sw $a1, 0xc4($sp) +/* 0A339C 800A279C AFA600C8 */ sw $a2, 0xc8($sp) +/* 0A33A0 800A27A0 8CAF0064 */ lw $t7, 0x64($a1) +/* 0A33A4 800A27A4 26106CF4 */ addiu $s0, %lo(D_80126CF4) # addiu $s0, $s0, 0x6cf4 +/* 0A33A8 800A27A8 8E030000 */ lw $v1, ($s0) +/* 0A33AC 800A27AC AFAF00A0 */ sw $t7, 0xa0($sp) +/* 0A33B0 800A27B0 8C780050 */ lw $t8, 0x50($v1) +/* 0A33B4 800A27B4 00004825 */ move $t1, $zero +/* 0A33B8 800A27B8 1700001E */ bnez $t8, .L800A2834 +/* 0A33BC 800A27BC 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 +/* 0A33C0 800A27C0 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) +/* 0A33C4 800A27C4 240C0008 */ li $t4, 8 +/* 0A33C8 800A27C8 872B0028 */ lh $t3, 0x28($t9) +/* 0A33CC 800A27CC A3AC0091 */ sb $t4, 0x91($sp) +/* 0A33D0 800A27D0 A7A00092 */ sh $zero, 0x92($sp) +/* 0A33D4 800A27D4 A7A00094 */ sh $zero, 0x94($sp) +/* 0A33D8 800A27D8 A7A00096 */ sh $zero, 0x96($sp) +/* 0A33DC 800A27DC AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A33E0 800A27E0 27A40090 */ addiu $a0, $sp, 0x90 +/* 0A33E4 800A27E4 00002825 */ move $a1, $zero +/* 0A33E8 800A27E8 0C003A95 */ jal spawn_object +/* 0A33EC 800A27EC A3AB0090 */ sb $t3, 0x90($sp) +/* 0A33F0 800A27F0 8E0D0000 */ lw $t5, ($s0) +/* 0A33F4 800A27F4 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A33F8 800A27F8 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 +/* 0A33FC 800A27FC 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc +/* 0A3400 800A2800 ADA20050 */ sw $v0, 0x50($t5) +/* 0A3404 800A2804 8E2F0000 */ lw $t7, ($s1) +/* 0A3408 800A2808 240E8000 */ li $t6, -32768 +/* 0A340C 800A280C A5EE0340 */ sh $t6, 0x340($t7) +/* 0A3410 800A2810 8E030000 */ lw $v1, ($s0) +/* 0A3414 800A2814 00000000 */ nop +/* 0A3418 800A2818 8C640050 */ lw $a0, 0x50($v1) +/* 0A341C 800A281C 00000000 */ nop +/* 0A3420 800A2820 10800004 */ beqz $a0, .L800A2834 +/* 0A3424 800A2824 00000000 */ nop +/* 0A3428 800A2828 A4800018 */ sh $zero, 0x18($a0) +/* 0A342C 800A282C 8E030000 */ lw $v1, ($s0) +/* 0A3430 800A2830 00000000 */ nop +.L800A2834: +/* 0A3434 800A2834 8C780088 */ lw $t8, 0x88($v1) +/* 0A3438 800A2838 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 +/* 0A343C 800A283C 17000016 */ bnez $t8, .L800A2898 +/* 0A3440 800A2840 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc +/* 0A3444 800A2844 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 +/* 0A3448 800A2848 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) +/* 0A344C 800A284C 240C0008 */ li $t4, 8 +/* 0A3450 800A2850 872B0044 */ lh $t3, 0x44($t9) +/* 0A3454 800A2854 A3AC0089 */ sb $t4, 0x89($sp) +/* 0A3458 800A2858 A7A0008A */ sh $zero, 0x8a($sp) +/* 0A345C 800A285C A7A0008C */ sh $zero, 0x8c($sp) +/* 0A3460 800A2860 A7A0008E */ sh $zero, 0x8e($sp) +/* 0A3464 800A2864 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3468 800A2868 27A40088 */ addiu $a0, $sp, 0x88 +/* 0A346C 800A286C 00002825 */ move $a1, $zero +/* 0A3470 800A2870 0C003A95 */ jal spawn_object +/* 0A3474 800A2874 A3AB0088 */ sb $t3, 0x88($sp) +/* 0A3478 800A2878 8E0D0000 */ lw $t5, ($s0) +/* 0A347C 800A287C 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3480 800A2880 ADA20088 */ sw $v0, 0x88($t5) +/* 0A3484 800A2884 8E2F0000 */ lw $t7, ($s1) +/* 0A3488 800A2888 240E8000 */ li $t6, -32768 +/* 0A348C 800A288C A5EE0440 */ sh $t6, 0x440($t7) +/* 0A3490 800A2890 8E030000 */ lw $v1, ($s0) +/* 0A3494 800A2894 00000000 */ nop +.L800A2898: +/* 0A3498 800A2898 8C700050 */ lw $s0, 0x50($v1) +/* 0A349C 800A289C 3C128012 */ lui $s2, %hi(D_80126D67) # $s2, 0x8012 +/* 0A34A0 800A28A0 12000384 */ beqz $s0, .L800A36B4 +/* 0A34A4 800A28A4 26526D67 */ addiu $s2, %lo(D_80126D67) # addiu $s2, $s2, 0x6d67 +/* 0A34A8 800A28A8 92580000 */ lbu $t8, ($s2) +/* 0A34AC 800A28AC 8E190068 */ lw $t9, 0x68($s0) +/* 0A34B0 800A28B0 A218003B */ sb $t8, 0x3b($s0) +/* 0A34B4 800A28B4 8F2A0000 */ lw $t2, ($t9) +/* 0A34B8 800A28B8 8FAB00C8 */ lw $t3, 0xc8($sp) +/* 0A34BC 800A28BC AFAA0098 */ sw $t2, 0x98($sp) +/* 0A34C0 800A28C0 8D4D0000 */ lw $t5, ($t2) +/* 0A34C4 800A28C4 240100FF */ li $at, 255 +/* 0A34C8 800A28C8 A5AB0052 */ sh $t3, 0x52($t5) +/* 0A34CC 800A28CC 92420000 */ lbu $v0, ($s2) +/* 0A34D0 800A28D0 00000000 */ nop +/* 0A34D4 800A28D4 104100A4 */ beq $v0, $at, .L800A2B68 +/* 0A34D8 800A28D8 24010004 */ li $at, 4 +/* 0A34DC 800A28DC 1441000D */ bne $v0, $at, .L800A2914 +/* 0A34E0 800A28E0 00000000 */ nop +/* 0A34E4 800A28E4 0C0044E7 */ jal func_8001139C +/* 0A34E8 800A28E8 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A34EC 800A28EC 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A34F0 800A28F0 14400006 */ bnez $v0, .L800A290C +/* 0A34F4 800A28F4 240E0010 */ li $t6, 16 +/* 0A34F8 800A28F8 0C000572 */ jal music_is_playing +/* 0A34FC 800A28FC AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3500 800A2900 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3504 800A2904 14400003 */ bnez $v0, .L800A2914 +/* 0A3508 800A2908 240E0010 */ li $t6, 16 +.L800A290C: +/* 0A350C 800A290C 10000091 */ b .L800A2B54 +/* 0A3510 800A2910 A60E0018 */ sh $t6, 0x18($s0) +.L800A2914: +/* 0A3514 800A2914 924F0000 */ lbu $t7, ($s2) +/* 0A3518 800A2918 24010004 */ li $at, 4 +/* 0A351C 800A291C 15E10042 */ bne $t7, $at, .L800A2A28 +/* 0A3520 800A2920 00000000 */ nop +/* 0A3524 800A2924 0C00057E */ jal func_800015F8 +/* 0A3528 800A2928 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A352C 800A292C 8FB80098 */ lw $t8, 0x98($sp) +/* 0A3530 800A2930 924C0000 */ lbu $t4, ($s2) +/* 0A3534 800A2934 8F190000 */ lw $t9, ($t8) +/* 0A3538 800A2938 000C58C0 */ sll $t3, $t4, 3 +/* 0A353C 800A293C 8F2A0044 */ lw $t2, 0x44($t9) +/* 0A3540 800A2940 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 +/* 0A3544 800A2944 014B6821 */ addu $t5, $t2, $t3 +/* 0A3548 800A2948 8DA20004 */ lw $v0, 4($t5) +/* 0A354C 800A294C 44812800 */ mtc1 $at, $f5 +/* 0A3550 800A2950 44802000 */ mtc1 $zero, $f4 +/* 0A3554 800A2954 46000321 */ cvt.d.s $f12, $f0 +/* 0A3558 800A2958 462C2032 */ c.eq.d $f4, $f12 +/* 0A355C 800A295C 2442FFFF */ addiu $v0, $v0, -1 +/* 0A3560 800A2960 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3564 800A2964 00027100 */ sll $t6, $v0, 4 +/* 0A3568 800A2968 45000003 */ bc1f .L800A2978 +/* 0A356C 800A296C 01C01025 */ move $v0, $t6 +/* 0A3570 800A2970 10000078 */ b .L800A2B54 +/* 0A3574 800A2974 A6000018 */ sh $zero, 0x18($s0) +.L800A2978: +/* 0A3578 800A2978 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0A357C 800A297C 44819800 */ mtc1 $at, $f19 +/* 0A3580 800A2980 44809000 */ mtc1 $zero, $f18 +/* 0A3584 800A2984 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0A3588 800A2988 462C903C */ c.lt.d $f18, $f12 +/* 0A358C 800A298C 00000000 */ nop +/* 0A3590 800A2990 45000015 */ bc1f .L800A29E8 +/* 0A3594 800A2994 00000000 */ nop +/* 0A3598 800A2998 46326181 */ sub.d $f6, $f12, $f18 +/* 0A359C 800A299C 44825000 */ mtc1 $v0, $f10 +/* 0A35A0 800A29A0 462033A0 */ cvt.s.d $f14, $f6 +/* 0A35A4 800A29A4 460070A1 */ cvt.d.s $f2, $f14 +/* 0A35A8 800A29A8 46221200 */ add.d $f8, $f2, $f2 +/* 0A35AC 800A29AC 46805420 */ cvt.s.w $f16, $f10 +/* 0A35B0 800A29B0 462043A0 */ cvt.s.d $f14, $f8 +/* 0A35B4 800A29B4 46107102 */ mul.s $f4, $f14, $f16 +/* 0A35B8 800A29B8 46048181 */ sub.s $f6, $f16, $f4 +/* 0A35BC 800A29BC 444FF800 */ cfc1 $t7, $31 +/* 0A35C0 800A29C0 00000000 */ nop +/* 0A35C4 800A29C4 35E10003 */ ori $at, $t7, 3 +/* 0A35C8 800A29C8 38210002 */ xori $at, $at, 2 +/* 0A35CC 800A29CC 44C1F800 */ ctc1 $at, $31 +/* 0A35D0 800A29D0 00000000 */ nop +/* 0A35D4 800A29D4 46003224 */ cvt.w.s $f8, $f6 +/* 0A35D8 800A29D8 44184000 */ mfc1 $t8, $f8 +/* 0A35DC 800A29DC 44CFF800 */ ctc1 $t7, $31 +/* 0A35E0 800A29E0 1000005C */ b .L800A2B54 +/* 0A35E4 800A29E4 A6180018 */ sh $t8, 0x18($s0) +.L800A29E8: +/* 0A35E8 800A29E8 44815000 */ mtc1 $at, $f10 +/* 0A35EC 800A29EC 44822000 */ mtc1 $v0, $f4 +/* 0A35F0 800A29F0 460A0382 */ mul.s $f14, $f0, $f10 +/* 0A35F4 800A29F4 468021A0 */ cvt.s.w $f6, $f4 +/* 0A35F8 800A29F8 460E3202 */ mul.s $f8, $f6, $f14 +/* 0A35FC 800A29FC 4459F800 */ cfc1 $t9, $31 +/* 0A3600 800A2A00 00000000 */ nop +/* 0A3604 800A2A04 37210003 */ ori $at, $t9, 3 +/* 0A3608 800A2A08 38210002 */ xori $at, $at, 2 +/* 0A360C 800A2A0C 44C1F800 */ ctc1 $at, $31 +/* 0A3610 800A2A10 00000000 */ nop +/* 0A3614 800A2A14 460042A4 */ cvt.w.s $f10, $f8 +/* 0A3618 800A2A18 440C5000 */ mfc1 $t4, $f10 +/* 0A361C 800A2A1C 44D9F800 */ ctc1 $t9, $31 +/* 0A3620 800A2A20 1000004C */ b .L800A2B54 +/* 0A3624 800A2A24 A60C0018 */ sh $t4, 0x18($s0) +.L800A2A28: +/* 0A3628 800A2A28 0C01BAA8 */ jal is_game_paused +/* 0A362C 800A2A2C AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3630 800A2A30 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3634 800A2A34 14400047 */ bnez $v0, .L800A2B54 +/* 0A3638 800A2A38 3C058012 */ lui $a1, %hi(D_80126D69) # $a1, 0x8012 +/* 0A363C 800A2A3C 24A56D69 */ addiu $a1, %lo(D_80126D69) # addiu $a1, $a1, 0x6d69 +/* 0A3640 800A2A40 80A20000 */ lb $v0, ($a1) +/* 0A3644 800A2A44 8FAC00C8 */ lw $t4, 0xc8($sp) +/* 0A3648 800A2A48 04410012 */ bgez $v0, .L800A2A94 +/* 0A364C 800A2A4C 00000000 */ nop +/* 0A3650 800A2A50 8FAA00C8 */ lw $t2, 0xc8($sp) +/* 0A3654 800A2A54 86040018 */ lh $a0, 0x18($s0) +/* 0A3658 800A2A58 01420019 */ multu $t2, $v0 +/* 0A365C 800A2A5C 240E0001 */ li $t6, 1 +/* 0A3660 800A2A60 00001812 */ mflo $v1 +/* 0A3664 800A2A64 00035823 */ negu $t3, $v1 +/* 0A3668 800A2A68 0164082A */ slt $at, $t3, $a0 +/* 0A366C 800A2A6C 10200003 */ beqz $at, .L800A2A7C +/* 0A3670 800A2A70 00836821 */ addu $t5, $a0, $v1 +/* 0A3674 800A2A74 10000037 */ b .L800A2B54 +/* 0A3678 800A2A78 A60D0018 */ sh $t5, 0x18($s0) +.L800A2A7C: +/* 0A367C 800A2A7C A60E0018 */ sh $t6, 0x18($s0) +/* 0A3680 800A2A80 80AF0000 */ lb $t7, ($a1) +/* 0A3684 800A2A84 00000000 */ nop +/* 0A3688 800A2A88 000FC023 */ negu $t8, $t7 +/* 0A368C 800A2A8C 10000031 */ b .L800A2B54 +/* 0A3690 800A2A90 A0B80000 */ sb $t8, ($a1) +.L800A2A94: +/* 0A3694 800A2A94 01820019 */ multu $t4, $v0 +/* 0A3698 800A2A98 86190018 */ lh $t9, 0x18($s0) +/* 0A369C 800A2A9C 00005012 */ mflo $t2 +/* 0A36A0 800A2AA0 032A5821 */ addu $t3, $t9, $t2 +/* 0A36A4 800A2AA4 A60B0018 */ sh $t3, 0x18($s0) +/* 0A36A8 800A2AA8 8FAD0098 */ lw $t5, 0x98($sp) +/* 0A36AC 800A2AAC 92580000 */ lbu $t8, ($s2) +/* 0A36B0 800A2AB0 8DAE0000 */ lw $t6, ($t5) +/* 0A36B4 800A2AB4 001860C0 */ sll $t4, $t8, 3 +/* 0A36B8 800A2AB8 8DCF0044 */ lw $t7, 0x44($t6) +/* 0A36BC 800A2ABC 860B0018 */ lh $t3, 0x18($s0) +/* 0A36C0 800A2AC0 01ECC821 */ addu $t9, $t7, $t4 +/* 0A36C4 800A2AC4 8F230004 */ lw $v1, 4($t9) +/* 0A36C8 800A2AC8 3C0D8012 */ lui $t5, %hi(D_80126D68) # $t5, 0x8012 +/* 0A36CC 800A2ACC 2463FFFF */ addiu $v1, $v1, -1 +/* 0A36D0 800A2AD0 00035100 */ sll $t2, $v1, 4 +/* 0A36D4 800A2AD4 016A082A */ slt $at, $t3, $t2 +/* 0A36D8 800A2AD8 1420001F */ bnez $at, .L800A2B58 +/* 0A36DC 800A2ADC 02002025 */ move $a0, $s0 +/* 0A36E0 800A2AE0 91AD6D68 */ lbu $t5, %lo(D_80126D68)($t5) +/* 0A36E4 800A2AE4 00000000 */ nop +/* 0A36E8 800A2AE8 11A00007 */ beqz $t5, .L800A2B08 +/* 0A36EC 800A2AEC 00000000 */ nop +/* 0A36F0 800A2AF0 80AE0000 */ lb $t6, ($a1) +/* 0A36F4 800A2AF4 254FFFFF */ addiu $t7, $t2, -1 +/* 0A36F8 800A2AF8 000EC023 */ negu $t8, $t6 +/* 0A36FC 800A2AFC A0B80000 */ sb $t8, ($a1) +/* 0A3700 800A2B00 10000014 */ b .L800A2B54 +/* 0A3704 800A2B04 A60F0018 */ sh $t7, 0x18($s0) +.L800A2B08: +/* 0A3708 800A2B08 A6000018 */ sh $zero, 0x18($s0) +/* 0A370C 800A2B0C 8FAC00A0 */ lw $t4, 0xa0($sp) +/* 0A3710 800A2B10 00000000 */ nop +/* 0A3714 800A2B14 919901FC */ lbu $t9, 0x1fc($t4) +/* 0A3718 800A2B18 00000000 */ nop +/* 0A371C 800A2B1C 1720000E */ bnez $t9, .L800A2B58 +/* 0A3720 800A2B20 02002025 */ move $a0, $s0 +/* 0A3724 800A2B24 818A01D8 */ lb $t2, 0x1d8($t4) +/* 0A3728 800A2B28 24040004 */ li $a0, 4 +/* 0A372C 800A2B2C 15400009 */ bnez $t2, .L800A2B54 +/* 0A3730 800A2B30 00002825 */ move $a1, $zero +/* 0A3734 800A2B34 240B0001 */ li $t3, 1 +/* 0A3738 800A2B38 AFAB0010 */ sw $t3, 0x10($sp) +/* 0A373C 800A2B3C 24060004 */ li $a2, 4 +/* 0A3740 800A2B40 24070001 */ li $a3, 1 +/* 0A3744 800A2B44 0C028DB3 */ jal func_800A36CC +/* 0A3748 800A2B48 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A374C 800A2B4C 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3750 800A2B50 00000000 */ nop +.L800A2B54: +/* 0A3754 800A2B54 02002025 */ move $a0, $s0 +.L800A2B58: +/* 0A3758 800A2B58 0C01874C */ jal func_80061D30 +/* 0A375C 800A2B5C AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3760 800A2B60 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3764 800A2B64 00000000 */ nop +.L800A2B68: +/* 0A3768 800A2B68 8E270000 */ lw $a3, ($s1) +/* 0A376C 800A2B6C 3C128012 */ lui $s2, %hi(gHUDCurrDisplayList) # $s2, 0x8012 +/* 0A3770 800A2B70 26526CFC */ addiu $s2, %lo(gHUDCurrDisplayList) # addiu $s2, $s2, 0x6cfc +/* 0A3774 800A2B74 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A3778 800A2B78 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A377C 800A2B7C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A3780 800A2B80 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A3784 800A2B84 02402025 */ move $a0, $s2 +/* 0A3788 800A2B88 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A378C 800A2B8C 0C02A980 */ jal func_800AA600 +/* 0A3790 800A2B90 24E70340 */ addiu $a3, $a3, 0x340 +/* 0A3794 800A2B94 8FA500A0 */ lw $a1, 0xa0($sp) +/* 0A3798 800A2B98 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A379C 800A2B9C 80A30193 */ lb $v1, 0x193($a1) +/* 0A37A0 800A2BA0 00004025 */ move $t0, $zero +/* 0A37A4 800A2BA4 0460000C */ bltz $v1, .L800A2BD8 +/* 0A37A8 800A2BA8 3C188000 */ lui $t8, %hi(osTvType) # $t8, 0x8000 +/* 0A37AC 800A2BAC 00086880 */ sll $t5, $t0, 2 +/* 0A37B0 800A2BB0 00AD8021 */ addu $s0, $a1, $t5 +/* 0A37B4 800A2BB4 24020005 */ li $v0, 5 +.L800A2BB8: +/* 0A37B8 800A2BB8 8E0E0128 */ lw $t6, 0x128($s0) +/* 0A37BC 800A2BBC 25080001 */ addiu $t0, $t0, 1 +/* 0A37C0 800A2BC0 0068082A */ slt $at, $v1, $t0 +/* 0A37C4 800A2BC4 26100004 */ addiu $s0, $s0, 4 +/* 0A37C8 800A2BC8 14200003 */ bnez $at, .L800A2BD8 +/* 0A37CC 800A2BCC 012E4821 */ addu $t1, $t1, $t6 +/* 0A37D0 800A2BD0 1502FFF9 */ bne $t0, $v0, .L800A2BB8 +/* 0A37D4 800A2BD4 00000000 */ nop +.L800A2BD8: +/* 0A37D8 800A2BD8 8F180300 */ lw $t8, %lo(osTvType)($t8) +/* 0A37DC 800A2BDC 34048CA0 */ li $a0, 36000 +/* 0A37E0 800A2BE0 17000012 */ bnez $t8, .L800A2C2C +/* 0A37E4 800A2BE4 00000000 */ nop +/* 0A37E8 800A2BE8 44892000 */ mtc1 $t1, $f4 +/* 0A37EC 800A2BEC 3C01800F */ lui $at, %hi(D_800E8738 + 4) # $at, 0x800f +/* 0A37F0 800A2BF0 468021A0 */ cvt.s.w $f6, $f4 +/* 0A37F4 800A2BF4 C42B8738 */ lwc1 $f11, %lo(D_800E8738)($at) +/* 0A37F8 800A2BF8 C42A873C */ lwc1 $f10, %lo(D_800E8738 + 4)($at) +/* 0A37FC 800A2BFC 46003221 */ cvt.d.s $f8, $f6 +/* 0A3800 800A2C00 462A4102 */ mul.d $f4, $f8, $f10 +/* 0A3804 800A2C04 444FF800 */ cfc1 $t7, $31 +/* 0A3808 800A2C08 00000000 */ nop +/* 0A380C 800A2C0C 35E10003 */ ori $at, $t7, 3 +/* 0A3810 800A2C10 38210002 */ xori $at, $at, 2 +/* 0A3814 800A2C14 44C1F800 */ ctc1 $at, $31 +/* 0A3818 800A2C18 00000000 */ nop +/* 0A381C 800A2C1C 462021A4 */ cvt.w.d $f6, $f4 +/* 0A3820 800A2C20 44CFF800 */ ctc1 $t7, $31 +/* 0A3824 800A2C24 44093000 */ mfc1 $t1, $f6 +/* 0A3828 800A2C28 00000000 */ nop +.L800A2C2C: +/* 0A382C 800A2C2C 0C00322D */ jal normalise_time +/* 0A3830 800A2C30 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3834 800A2C34 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3838 800A2C38 00000000 */ nop +/* 0A383C 800A2C3C 0049082A */ slt $at, $v0, $t1 +/* 0A3840 800A2C40 10200005 */ beqz $at, .L800A2C58 +/* 0A3844 800A2C44 24100444 */ li $s0, 1092 +/* 0A3848 800A2C48 0C00322D */ jal normalise_time +/* 0A384C 800A2C4C 34048CA0 */ li $a0, 36000 +/* 0A3850 800A2C50 00404825 */ move $t1, $v0 +/* 0A3854 800A2C54 24100444 */ li $s0, 1092 +.L800A2C58: +/* 0A3858 800A2C58 01300019 */ multu $t1, $s0 +/* 0A385C 800A2C5C 8E2A0000 */ lw $t2, ($s1) +/* 0A3860 800A2C60 0000C812 */ mflo $t9 +/* 0A3864 800A2C64 272C7FF8 */ addiu $t4, $t9, 0x7ff8 +/* 0A3868 800A2C68 A54C0444 */ sh $t4, 0x444($t2) +/* 0A386C 800A2C6C 0C00382C */ jal func_8000E0B0 +/* 0A3870 800A2C70 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3874 800A2C74 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3878 800A2C78 1C40000D */ bgtz $v0, .L800A2CB0 +/* 0A387C 800A2C7C 2403003C */ li $v1, 60 +/* 0A3880 800A2C80 8E270000 */ lw $a3, ($s1) +/* 0A3884 800A2C84 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A3888 800A2C88 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A388C 800A2C8C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A3890 800A2C90 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A3894 800A2C94 02402025 */ move $a0, $s2 +/* 0A3898 800A2C98 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A389C 800A2C9C 0C02A980 */ jal func_800AA600 +/* 0A38A0 800A2CA0 24E70440 */ addiu $a3, $a3, 0x440 +/* 0A38A4 800A2CA4 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A38A8 800A2CA8 00000000 */ nop +/* 0A38AC 800A2CAC 2403003C */ li $v1, 60 +.L800A2CB0: +/* 0A38B0 800A2CB0 0123001A */ div $zero, $t1, $v1 +/* 0A38B4 800A2CB4 8E380000 */ lw $t8, ($s1) +/* 0A38B8 800A2CB8 14600002 */ bnez $v1, .L800A2CC4 +/* 0A38BC 800A2CBC 00000000 */ nop +/* 0A38C0 800A2CC0 0007000D */ break 7 +.L800A2CC4: +/* 0A38C4 800A2CC4 2401FFFF */ li $at, -1 +/* 0A38C8 800A2CC8 14610004 */ bne $v1, $at, .L800A2CDC +/* 0A38CC 800A2CCC 3C018000 */ lui $at, 0x8000 +/* 0A38D0 800A2CD0 15210002 */ bne $t1, $at, .L800A2CDC +/* 0A38D4 800A2CD4 00000000 */ nop +/* 0A38D8 800A2CD8 0006000D */ break 6 +.L800A2CDC: +/* 0A38DC 800A2CDC 00005812 */ mflo $t3 +/* 0A38E0 800A2CE0 256D001E */ addiu $t5, $t3, 0x1e +/* 0A38E4 800A2CE4 00000000 */ nop +/* 0A38E8 800A2CE8 01A3001A */ div $zero, $t5, $v1 +/* 0A38EC 800A2CEC 14600002 */ bnez $v1, .L800A2CF8 +/* 0A38F0 800A2CF0 00000000 */ nop +/* 0A38F4 800A2CF4 0007000D */ break 7 +.L800A2CF8: +/* 0A38F8 800A2CF8 2401FFFF */ li $at, -1 +/* 0A38FC 800A2CFC 14610004 */ bne $v1, $at, .L800A2D10 +/* 0A3900 800A2D00 3C018000 */ lui $at, 0x8000 +/* 0A3904 800A2D04 15A10002 */ bne $t5, $at, .L800A2D10 +/* 0A3908 800A2D08 00000000 */ nop +/* 0A390C 800A2D0C 0006000D */ break 6 +.L800A2D10: +/* 0A3910 800A2D10 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0A3914 800A2D14 44815000 */ mtc1 $at, $f10 +/* 0A3918 800A2D18 00004810 */ mfhi $t1 +/* 0A391C 800A2D1C 00000000 */ nop +/* 0A3920 800A2D20 00000000 */ nop +/* 0A3924 800A2D24 01300019 */ multu $t1, $s0 +/* 0A3928 800A2D28 00007012 */ mflo $t6 +/* 0A392C 800A2D2C A70E0444 */ sh $t6, 0x444($t8) +/* 0A3930 800A2D30 8E220000 */ lw $v0, ($s1) +/* 0A3934 800A2D34 00000000 */ nop +/* 0A3938 800A2D38 C4480350 */ lwc1 $f8, 0x350($v0) +/* 0A393C 800A2D3C 00000000 */ nop +/* 0A3940 800A2D40 460A4100 */ add.s $f4, $f8, $f10 +/* 0A3944 800A2D44 0C00382C */ jal func_8000E0B0 +/* 0A3948 800A2D48 E4440450 */ swc1 $f4, 0x450($v0) +/* 0A394C 800A2D4C 1C40000A */ bgtz $v0, .L800A2D78 +/* 0A3950 800A2D50 8FAF0098 */ lw $t7, 0x98($sp) +/* 0A3954 800A2D54 8E270000 */ lw $a3, ($s1) +/* 0A3958 800A2D58 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A395C 800A2D5C 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A3960 800A2D60 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A3964 800A2D64 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A3968 800A2D68 02402025 */ move $a0, $s2 +/* 0A396C 800A2D6C 0C02A980 */ jal func_800AA600 +/* 0A3970 800A2D70 24E70440 */ addiu $a3, $a3, 0x440 +/* 0A3974 800A2D74 8FAF0098 */ lw $t7, 0x98($sp) +.L800A2D78: +/* 0A3978 800A2D78 24040001 */ li $a0, 1 +/* 0A397C 800A2D7C 0C01A142 */ jal func_80068508 +/* 0A3980 800A2D80 A1E00020 */ sb $zero, 0x20($t7) +/* 0A3984 800A2D84 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A3988 800A2D88 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A398C 800A2D8C 0C0283AD */ jal render_course_indicator_arrows +/* 0A3990 800A2D90 00000000 */ nop +/* 0A3994 800A2D94 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3998 800A2D98 00000000 */ nop +/* 0A399C 800A2D9C 813901D8 */ lb $t9, 0x1d8($t1) +/* 0A39A0 800A2DA0 00000000 */ nop +/* 0A39A4 800A2DA4 172000CC */ bnez $t9, .L800A30D8 +/* 0A39A8 800A2DA8 00000000 */ nop +/* 0A39AC 800A2DAC 444AF800 */ cfc1 $t2, $31 +/* 0A39B0 800A2DB0 8E2C0000 */ lw $t4, ($s1) +/* 0A39B4 800A2DB4 35410003 */ ori $at, $t2, 3 +/* 0A39B8 800A2DB8 38210002 */ xori $at, $at, 2 +/* 0A39BC 800A2DBC 44C1F800 */ ctc1 $at, $31 +/* 0A39C0 800A2DC0 C58602F0 */ lwc1 $f6, 0x2f0($t4) +/* 0A39C4 800A2DC4 00004025 */ move $t0, $zero +/* 0A39C8 800A2DC8 46003224 */ cvt.w.s $f8, $f6 +/* 0A39CC 800A2DCC 3C0E8012 */ lui $t6, %hi(D_80126D60) # $t6, 0x8012 +/* 0A39D0 800A2DD0 440B4000 */ mfc1 $t3, $f8 +/* 0A39D4 800A2DD4 44CAF800 */ ctc1 $t2, $31 +/* 0A39D8 800A2DD8 AFAB00B8 */ sw $t3, 0xb8($sp) +/* 0A39DC 800A2DDC 812D0194 */ lb $t5, 0x194($t1) +/* 0A39E0 800A2DE0 00000000 */ nop +/* 0A39E4 800A2DE4 19A00067 */ blez $t5, .L800A2F84 +/* 0A39E8 800A2DE8 00086880 */ sll $t5, $t0, 2 +/* 0A39EC 800A2DEC 8DCE6D60 */ lw $t6, %lo(D_80126D60)($t6) +/* 0A39F0 800A2DF0 00001080 */ sll $v0, $zero, 2 +/* 0A39F4 800A2DF4 81D8004B */ lb $t8, 0x4b($t6) +/* 0A39F8 800A2DF8 01228021 */ addu $s0, $t1, $v0 +/* 0A39FC 800A2DFC 1B000060 */ blez $t8, .L800A2F80 +/* 0A3A00 800A2E00 3C0F800E */ lui $t7, %hi(D_800E27AC) # $t7, 0x800e +/* 0A3A04 800A2E04 25EF27AC */ addiu $t7, %lo(D_800E27AC) # addiu $t7, $t7, 0x27ac +/* 0A3A08 800A2E08 004FC821 */ addu $t9, $v0, $t7 +/* 0A3A0C 800A2E0C AFB9003C */ sw $t9, 0x3c($sp) +.L800A2E10: +/* 0A3A10 800A2E10 8E040128 */ lw $a0, 0x128($s0) +/* 0A3A14 800A2E14 AFA800BC */ sw $t0, 0xbc($sp) +/* 0A3A18 800A2E18 27A500B4 */ addiu $a1, $sp, 0xb4 +/* 0A3A1C 800A2E1C 27A600B0 */ addiu $a2, $sp, 0xb0 +/* 0A3A20 800A2E20 0C0165E4 */ jal get_timestamp_from_frames +/* 0A3A24 800A2E24 27A700AC */ addiu $a3, $sp, 0xac +/* 0A3A28 800A2E28 8FAC003C */ lw $t4, 0x3c($sp) +/* 0A3A2C 800A2E2C 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A3A30 800A2E30 8D8A0000 */ lw $t2, ($t4) +/* 0A3A34 800A2E34 444DF800 */ cfc1 $t5, $31 +/* 0A3A38 800A2E38 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) +/* 0A3A3C 800A2E3C 8E2B0000 */ lw $t3, ($s1) +/* 0A3A40 800A2E40 35A10003 */ ori $at, $t5, 3 +/* 0A3A44 800A2E44 38210002 */ xori $at, $at, 2 +/* 0A3A48 800A2E48 44C1F800 */ ctc1 $at, $31 +/* 0A3A4C 800A2E4C C56A02EC */ lwc1 $f10, 0x2ec($t3) +/* 0A3A50 800A2E50 8FAE00AC */ lw $t6, 0xac($sp) +/* 0A3A54 800A2E54 46005124 */ cvt.w.s $f4, $f10 +/* 0A3A58 800A2E58 8FA500B8 */ lw $a1, 0xb8($sp) +/* 0A3A5C 800A2E5C 44042000 */ mfc1 $a0, $f4 +/* 0A3A60 800A2E60 8FA600B4 */ lw $a2, 0xb4($sp) +/* 0A3A64 800A2E64 8FA700B0 */ lw $a3, 0xb0($sp) +/* 0A3A68 800A2E68 24180001 */ li $t8, 1 +/* 0A3A6C 800A2E6C 44CDF800 */ ctc1 $t5, $31 +/* 0A3A70 800A2E70 AFB80014 */ sw $t8, 0x14($sp) +/* 0A3A74 800A2E74 0C029FEF */ jal func_800A7FBC +/* 0A3A78 800A2E78 AFAE0010 */ sw $t6, 0x10($sp) +/* 0A3A7C 800A2E7C 240FFFFE */ li $t7, -2 +/* 0A3A80 800A2E80 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A3A84 800A2E84 AC2F2834 */ sw $t7, %lo(D_800E2834)($at) +/* 0A3A88 800A2E88 8FB900B8 */ lw $t9, 0xb8($sp) +/* 0A3A8C 800A2E8C 8E430000 */ lw $v1, ($s2) +/* 0A3A90 800A2E90 272C000C */ addiu $t4, $t9, 0xc +/* 0A3A94 800A2E94 246A0008 */ addiu $t2, $v1, 8 +/* 0A3A98 800A2E98 8FA800BC */ lw $t0, 0xbc($sp) +/* 0A3A9C 800A2E9C AFAC00B8 */ sw $t4, 0xb8($sp) +/* 0A3AA0 800A2EA0 AE4A0000 */ sw $t2, ($s2) +/* 0A3AA4 800A2EA4 3C0BFA00 */ lui $t3, 0xfa00 +/* 0A3AA8 800A2EA8 240DFFFF */ li $t5, -1 +/* 0A3AAC 800A2EAC AC6D0004 */ sw $t5, 4($v1) +/* 0A3AB0 800A2EB0 AC6B0000 */ sw $t3, ($v1) +/* 0A3AB4 800A2EB4 8E2E0000 */ lw $t6, ($s1) +/* 0A3AB8 800A2EB8 25090001 */ addiu $t1, $t0, 1 +/* 0A3ABC 800A2EBC A5C90338 */ sh $t1, 0x338($t6) +/* 0A3AC0 800A2EC0 8E270000 */ lw $a3, ($s1) +/* 0A3AC4 800A2EC4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A3AC8 800A2EC8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A3ACC 800A2ECC 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A3AD0 800A2ED0 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A3AD4 800A2ED4 AFA90050 */ sw $t1, 0x50($sp) +/* 0A3AD8 800A2ED8 02402025 */ move $a0, $s2 +/* 0A3ADC 800A2EDC 0C02A980 */ jal func_800AA600 +/* 0A3AE0 800A2EE0 24E70320 */ addiu $a3, $a3, 0x320 +/* 0A3AE4 800A2EE4 8E270000 */ lw $a3, ($s1) +/* 0A3AE8 800A2EE8 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A3AEC 800A2EEC 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A3AF0 800A2EF0 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A3AF4 800A2EF4 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A3AF8 800A2EF8 02402025 */ move $a0, $s2 +/* 0A3AFC 800A2EFC 0C02A980 */ jal func_800AA600 +/* 0A3B00 800A2F00 24E70300 */ addiu $a3, $a3, 0x300 +/* 0A3B04 800A2F04 8E220000 */ lw $v0, ($s1) +/* 0A3B08 800A2F08 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 0A3B0C 800A2F0C 44810000 */ mtc1 $at, $f0 +/* 0A3B10 800A2F10 C4460330 */ lwc1 $f6, 0x330($v0) +/* 0A3B14 800A2F14 26100004 */ addiu $s0, $s0, 4 +/* 0A3B18 800A2F18 46003200 */ add.s $f8, $f6, $f0 +/* 0A3B1C 800A2F1C 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A3B20 800A2F20 E4480330 */ swc1 $f8, 0x330($v0) +/* 0A3B24 800A2F24 8E220000 */ lw $v0, ($s1) +/* 0A3B28 800A2F28 00000000 */ nop +/* 0A3B2C 800A2F2C C44A0310 */ lwc1 $f10, 0x310($v0) +/* 0A3B30 800A2F30 00000000 */ nop +/* 0A3B34 800A2F34 46005100 */ add.s $f4, $f10, $f0 +/* 0A3B38 800A2F38 E4440310 */ swc1 $f4, 0x310($v0) +/* 0A3B3C 800A2F3C 8FB8003C */ lw $t8, 0x3c($sp) +/* 0A3B40 800A2F40 8FB900A0 */ lw $t9, 0xa0($sp) +/* 0A3B44 800A2F44 270F0004 */ addiu $t7, $t8, 4 +/* 0A3B48 800A2F48 AFAF003C */ sw $t7, 0x3c($sp) +/* 0A3B4C 800A2F4C 8FA80050 */ lw $t0, 0x50($sp) +/* 0A3B50 800A2F50 832C0194 */ lb $t4, 0x194($t9) +/* 0A3B54 800A2F54 00000000 */ nop +/* 0A3B58 800A2F58 010C082A */ slt $at, $t0, $t4 +/* 0A3B5C 800A2F5C 10200009 */ beqz $at, .L800A2F84 +/* 0A3B60 800A2F60 00086880 */ sll $t5, $t0, 2 +/* 0A3B64 800A2F64 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) +/* 0A3B68 800A2F68 00000000 */ nop +/* 0A3B6C 800A2F6C 814B004B */ lb $t3, 0x4b($t2) +/* 0A3B70 800A2F70 00000000 */ nop +/* 0A3B74 800A2F74 010B082A */ slt $at, $t0, $t3 +/* 0A3B78 800A2F78 1420FFA5 */ bnez $at, .L800A2E10 +/* 0A3B7C 800A2F7C 00000000 */ nop +.L800A2F80: +/* 0A3B80 800A2F80 00086880 */ sll $t5, $t0, 2 +.L800A2F84: +/* 0A3B84 800A2F84 01A86823 */ subu $t5, $t5, $t0 +/* 0A3B88 800A2F88 000D6880 */ sll $t5, $t5, 2 +/* 0A3B8C 800A2F8C 448D3000 */ mtc1 $t5, $f6 +/* 0A3B90 800A2F90 8E220000 */ lw $v0, ($s1) +/* 0A3B94 800A2F94 46803020 */ cvt.s.w $f0, $f6 +/* 0A3B98 800A2F98 C4480330 */ lwc1 $f8, 0x330($v0) +/* 0A3B9C 800A2F9C 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3BA0 800A2FA0 46004281 */ sub.s $f10, $f8, $f0 +/* 0A3BA4 800A2FA4 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 +/* 0A3BA8 800A2FA8 E44A0330 */ swc1 $f10, 0x330($v0) +/* 0A3BAC 800A2FAC 8E220000 */ lw $v0, ($s1) +/* 0A3BB0 800A2FB0 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c +/* 0A3BB4 800A2FB4 C4440310 */ lwc1 $f4, 0x310($v0) +/* 0A3BB8 800A2FB8 00000000 */ nop +/* 0A3BBC 800A2FBC 46002181 */ sub.s $f6, $f4, $f0 +/* 0A3BC0 800A2FC0 E4460310 */ swc1 $f6, 0x310($v0) +/* 0A3BC4 800A2FC4 912E01EF */ lbu $t6, 0x1ef($t1) +/* 0A3BC8 800A2FC8 00000000 */ nop +/* 0A3BCC 800A2FCC 31D80004 */ andi $t8, $t6, 4 +/* 0A3BD0 800A2FD0 13000010 */ beqz $t8, .L800A3014 +/* 0A3BD4 800A2FD4 00000000 */ nop +/* 0A3BD8 800A2FD8 8E0F0000 */ lw $t7, ($s0) +/* 0A3BDC 800A2FDC 24040007 */ li $a0, 7 +/* 0A3BE0 800A2FE0 1DE0000C */ bgtz $t7, .L800A3014 +/* 0A3BE4 800A2FE4 24050003 */ li $a1, 3 +/* 0A3BE8 800A2FE8 00003025 */ move $a2, $zero +/* 0A3BEC 800A2FEC 24070004 */ li $a3, 4 +/* 0A3BF0 800A2FF0 0C028DB3 */ jal func_800A36CC +/* 0A3BF4 800A2FF4 AFA00010 */ sw $zero, 0x10($sp) +/* 0A3BF8 800A2FF8 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3BFC 800A2FFC 2419003C */ li $t9, 60 +/* 0A3C00 800A3000 AE190000 */ sw $t9, ($s0) +/* 0A3C04 800A3004 912A01EF */ lbu $t2, 0x1ef($t1) +/* 0A3C08 800A3008 00000000 */ nop +/* 0A3C0C 800A300C 314BFFFB */ andi $t3, $t2, 0xfffb +/* 0A3C10 800A3010 A12B01EF */ sb $t3, 0x1ef($t1) +.L800A3014: +/* 0A3C14 800A3014 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 +/* 0A3C18 800A3018 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c +/* 0A3C1C 800A301C 8E020000 */ lw $v0, ($s0) +/* 0A3C20 800A3020 8FAD00C8 */ lw $t5, 0xc8($sp) +/* 0A3C24 800A3024 18400006 */ blez $v0, .L800A3040 +/* 0A3C28 800A3028 004D7023 */ subu $t6, $v0, $t5 +/* 0A3C2C 800A302C AE0E0000 */ sw $t6, ($s0) +/* 0A3C30 800A3030 05C10003 */ bgez $t6, .L800A3040 +/* 0A3C34 800A3034 01C01025 */ move $v0, $t6 +/* 0A3C38 800A3038 AE000000 */ sw $zero, ($s0) +/* 0A3C3C 800A303C 00001025 */ move $v0, $zero +.L800A3040: +/* 0A3C40 800A3040 14400025 */ bnez $v0, .L800A30D8 +/* 0A3C44 800A3044 00000000 */ nop +/* 0A3C48 800A3048 813801D8 */ lb $t8, 0x1d8($t1) +/* 0A3C4C 800A304C 240FFF9C */ li $t7, -100 +/* 0A3C50 800A3050 17000021 */ bnez $t8, .L800A30D8 +/* 0A3C54 800A3054 3C198012 */ lui $t9, %hi(gHUDVoiceSoundMask) # $t9, 0x8012 +/* 0A3C58 800A3058 AE0F0000 */ sw $t7, ($s0) +/* 0A3C5C 800A305C 8F396D40 */ lw $t9, %lo(gHUDVoiceSoundMask)($t9) +/* 0A3C60 800A3060 3C108012 */ lui $s0, %hi(D_80126D64) # $s0, 0x8012 +/* 0A3C64 800A3064 1720001C */ bnez $t9, .L800A30D8 +/* 0A3C68 800A3068 26106D64 */ addiu $s0, %lo(D_80126D64) # addiu $s0, $s0, 0x6d64 +/* 0A3C6C 800A306C 92050000 */ lbu $a1, ($s0) +/* 0A3C70 800A3070 00002025 */ move $a0, $zero +/* 0A3C74 800A3074 0C01BE53 */ jal get_random_number_from_range +/* 0A3C78 800A3078 24A50002 */ addiu $a1, $a1, 2 +/* 0A3C7C 800A307C 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 +/* 0A3C80 800A3080 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 +/* 0A3C84 800A3084 962A0000 */ lhu $t2, ($s1) +/* 0A3C88 800A3088 2443014B */ addiu $v1, $v0, 0x14b +/* 0A3C8C 800A308C 306BFFFF */ andi $t3, $v1, 0xffff +/* 0A3C90 800A3090 154B000A */ bne $t2, $t3, .L800A30BC +/* 0A3C94 800A3094 3064FFFF */ andi $a0, $v1, 0xffff +.L800A3098: +/* 0A3C98 800A3098 92050000 */ lbu $a1, ($s0) +/* 0A3C9C 800A309C 00002025 */ move $a0, $zero +/* 0A3CA0 800A30A0 0C01BE53 */ jal get_random_number_from_range +/* 0A3CA4 800A30A4 24A50002 */ addiu $a1, $a1, 2 +/* 0A3CA8 800A30A8 962C0000 */ lhu $t4, ($s1) +/* 0A3CAC 800A30AC 2443014B */ addiu $v1, $v0, 0x14b +/* 0A3CB0 800A30B0 306DFFFF */ andi $t5, $v1, 0xffff +/* 0A3CB4 800A30B4 118DFFF8 */ beq $t4, $t5, .L800A3098 +/* 0A3CB8 800A30B8 3064FFFF */ andi $a0, $v1, 0xffff +.L800A30BC: +/* 0A3CBC 800A30BC 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A3CC0 800A30C0 A6240000 */ sh $a0, ($s1) +/* 0A3CC4 800A30C4 0C000741 */ jal play_sound_global +/* 0A3CC8 800A30C8 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A3CCC 800A30CC 240E0001 */ li $t6, 1 +/* 0A3CD0 800A30D0 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3CD4 800A30D4 A20E0000 */ sb $t6, ($s0) +.L800A30D8: +/* 0A3CD8 800A30D8 81230193 */ lb $v1, 0x193($t1) +/* 0A3CDC 800A30DC 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 +/* 0A3CE0 800A30E0 18600041 */ blez $v1, .L800A31E8 +/* 0A3CE4 800A30E4 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 +/* 0A3CE8 800A30E8 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 +/* 0A3CEC 800A30EC 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) +/* 0A3CF0 800A30F0 0003C880 */ sll $t9, $v1, 2 +/* 0A3CF4 800A30F4 830F004B */ lb $t7, 0x4b($t8) +/* 0A3CF8 800A30F8 01395021 */ addu $t2, $t1, $t9 +/* 0A3CFC 800A30FC 006F082A */ slt $at, $v1, $t7 +/* 0A3D00 800A3100 10200039 */ beqz $at, .L800A31E8 +/* 0A3D04 800A3104 00000000 */ nop +/* 0A3D08 800A3108 8D4B0128 */ lw $t3, 0x128($t2) +/* 0A3D0C 800A310C 3C0C8012 */ lui $t4, %hi(gHUDVoiceSoundMask) # $t4, 0x8012 +/* 0A3D10 800A3110 29610014 */ slti $at, $t3, 0x14 +/* 0A3D14 800A3114 10200034 */ beqz $at, .L800A31E8 +/* 0A3D18 800A3118 00000000 */ nop +/* 0A3D1C 800A311C 8D8C6D40 */ lw $t4, %lo(gHUDVoiceSoundMask)($t4) +/* 0A3D20 800A3120 00000000 */ nop +/* 0A3D24 800A3124 15800030 */ bnez $t4, .L800A31E8 +/* 0A3D28 800A3128 00000000 */ nop +/* 0A3D2C 800A312C 812D01D6 */ lb $t5, 0x1d6($t1) +/* 0A3D30 800A3130 00000000 */ nop +/* 0A3D34 800A3134 29A10003 */ slti $at, $t5, 3 +/* 0A3D38 800A3138 1020002B */ beqz $at, .L800A31E8 +/* 0A3D3C 800A313C 00000000 */ nop +/* 0A3D40 800A3140 0C01BAA4 */ jal get_settings +/* 0A3D44 800A3144 00000000 */ nop +/* 0A3D48 800A3148 3C108012 */ lui $s0, %hi(D_80127184) # $s0, 0x8012 +/* 0A3D4C 800A314C 26107184 */ addiu $s0, %lo(D_80127184) # addiu $s0, $s0, 0x7184 +/* 0A3D50 800A3150 0C01AF62 */ jal func_8006BD88 +/* 0A3D54 800A3154 AE020000 */ sw $v0, ($s0) +/* 0A3D58 800A3158 8FAE00A0 */ lw $t6, 0xa0($sp) +/* 0A3D5C 800A315C 8E190000 */ lw $t9, ($s0) +/* 0A3D60 800A3160 81C30193 */ lb $v1, 0x193($t6) +/* 0A3D64 800A3164 81CA01D6 */ lb $t2, 0x1d6($t6) +/* 0A3D68 800A3168 0003C080 */ sll $t8, $v1, 2 +/* 0A3D6C 800A316C 000A5880 */ sll $t3, $t2, 2 +/* 0A3D70 800A3170 01D87821 */ addu $t7, $t6, $t8 +/* 0A3D74 800A3174 032B6021 */ addu $t4, $t9, $t3 +/* 0A3D78 800A3178 8D8D0024 */ lw $t5, 0x24($t4) +/* 0A3D7C 800A317C 8DE40124 */ lw $a0, 0x124($t7) +/* 0A3D80 800A3180 0002C040 */ sll $t8, $v0, 1 +/* 0A3D84 800A3184 01B87821 */ addu $t7, $t5, $t8 +/* 0A3D88 800A3188 95EA0000 */ lhu $t2, ($t7) +/* 0A3D8C 800A318C 2465FFFF */ addiu $a1, $v1, -1 +/* 0A3D90 800A3190 008A082A */ slt $at, $a0, $t2 +/* 0A3D94 800A3194 10200014 */ beqz $at, .L800A31E8 +/* 0A3D98 800A3198 00000000 */ nop +/* 0A3D9C 800A319C 18A0000D */ blez $a1, .L800A31D4 +/* 0A3DA0 800A31A0 00804825 */ move $t1, $a0 +/* 0A3DA4 800A31A4 00001025 */ move $v0, $zero +/* 0A3DA8 800A31A8 01C08025 */ move $s0, $t6 +/* 0A3DAC 800A31AC 00051880 */ sll $v1, $a1, 2 +.L800A31B0: +/* 0A3DB0 800A31B0 8E190128 */ lw $t9, 0x128($s0) +/* 0A3DB4 800A31B4 24420004 */ addiu $v0, $v0, 4 +/* 0A3DB8 800A31B8 0139082A */ slt $at, $t1, $t9 +/* 0A3DBC 800A31BC 14200003 */ bnez $at, .L800A31CC +/* 0A3DC0 800A31C0 0043082A */ slt $at, $v0, $v1 +/* 0A3DC4 800A31C4 00004825 */ move $t1, $zero +/* 0A3DC8 800A31C8 0043082A */ slt $at, $v0, $v1 +.L800A31CC: +/* 0A3DCC 800A31CC 1420FFF8 */ bnez $at, .L800A31B0 +/* 0A3DD0 800A31D0 26100004 */ addiu $s0, $s0, 4 +.L800A31D4: +/* 0A3DD4 800A31D4 11200004 */ beqz $t1, .L800A31E8 +/* 0A3DD8 800A31D8 24040144 */ li $a0, 324 +/* 0A3DDC 800A31DC 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A3DE0 800A31E0 0C000741 */ jal play_sound_global +/* 0A3DE4 800A31E4 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +.L800A31E8: +/* 0A3DE8 800A31E8 0C006CA2 */ jal func_8001B288 +/* 0A3DEC 800A31EC 00000000 */ nop +/* 0A3DF0 800A31F0 1040004F */ beqz $v0, .L800A3330 +/* 0A3DF4 800A31F4 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 0A3DF8 800A31F8 0C006CB8 */ jal func_8001B2E0 +/* 0A3DFC 800A31FC 00000000 */ nop +/* 0A3E00 800A3200 1040004A */ beqz $v0, .L800A332C +/* 0A3E04 800A3204 00408025 */ move $s0, $v0 +/* 0A3E08 800A3208 0C0044E7 */ jal func_8001139C +/* 0A3E0C 800A320C 00000000 */ nop +/* 0A3E10 800A3210 14400047 */ bnez $v0, .L800A3330 +/* 0A3E14 800A3214 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 0A3E18 800A3218 8FAB00A0 */ lw $t3, 0xa0($sp) +/* 0A3E1C 800A321C 8FAD00C4 */ lw $t5, 0xc4($sp) +/* 0A3E20 800A3220 816C01D8 */ lb $t4, 0x1d8($t3) +/* 0A3E24 800A3224 00000000 */ nop +/* 0A3E28 800A3228 15800041 */ bnez $t4, .L800A3330 +/* 0A3E2C 800A322C 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 0A3E30 800A3230 C608000C */ lwc1 $f8, 0xc($s0) +/* 0A3E34 800A3234 C5AA000C */ lwc1 $f10, 0xc($t5) +/* 0A3E38 800A3238 C6040010 */ lwc1 $f4, 0x10($s0) +/* 0A3E3C 800A323C C5A60010 */ lwc1 $f6, 0x10($t5) +/* 0A3E40 800A3240 460A4001 */ sub.s $f0, $f8, $f10 +/* 0A3E44 800A3244 C5AA0014 */ lwc1 $f10, 0x14($t5) +/* 0A3E48 800A3248 46062081 */ sub.s $f2, $f4, $f6 +/* 0A3E4C 800A324C C6080014 */ lwc1 $f8, 0x14($s0) +/* 0A3E50 800A3250 46000102 */ mul.s $f4, $f0, $f0 +/* 0A3E54 800A3254 460A4381 */ sub.s $f14, $f8, $f10 +/* 0A3E58 800A3258 46021182 */ mul.s $f6, $f2, $f2 +/* 0A3E5C 800A325C 00000000 */ nop +/* 0A3E60 800A3260 460E7282 */ mul.s $f10, $f14, $f14 +/* 0A3E64 800A3264 46062200 */ add.s $f8, $f4, $f6 +/* 0A3E68 800A3268 0C0326B4 */ jal sqrtf +/* 0A3E6C 800A326C 460A4300 */ add.s $f12, $f8, $f10 +/* 0A3E70 800A3270 3C014416 */ li $at, 0x44160000 # 600.000000 +/* 0A3E74 800A3274 44812000 */ mtc1 $at, $f4 +/* 0A3E78 800A3278 3C188012 */ lui $t8, %hi(gHUDVoiceSoundMask) # $t8, 0x8012 +/* 0A3E7C 800A327C 4604003C */ c.lt.s $f0, $f4 +/* 0A3E80 800A3280 00000000 */ nop +/* 0A3E84 800A3284 45000020 */ bc1f .L800A3308 +/* 0A3E88 800A3288 00000000 */ nop +/* 0A3E8C 800A328C 8F186D40 */ lw $t8, %lo(gHUDVoiceSoundMask)($t8) +/* 0A3E90 800A3290 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 +/* 0A3E94 800A3294 1700001C */ bnez $t8, .L800A3308 +/* 0A3E98 800A3298 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 +/* 0A3E9C 800A329C 8E0F0000 */ lw $t7, ($s0) +/* 0A3EA0 800A32A0 00002025 */ move $a0, $zero +/* 0A3EA4 800A32A4 15E00018 */ bnez $t7, .L800A3308 +/* 0A3EA8 800A32A8 00000000 */ nop +/* 0A3EAC 800A32AC 0C01BE53 */ jal get_random_number_from_range +/* 0A3EB0 800A32B0 24050002 */ li $a1, 2 +/* 0A3EB4 800A32B4 962A0000 */ lhu $t2, ($s1) +/* 0A3EB8 800A32B8 24430147 */ addiu $v1, $v0, 0x147 +/* 0A3EBC 800A32BC 306EFFFF */ andi $t6, $v1, 0xffff +/* 0A3EC0 800A32C0 154E0009 */ bne $t2, $t6, .L800A32E8 +/* 0A3EC4 800A32C4 3064FFFF */ andi $a0, $v1, 0xffff +.L800A32C8: +/* 0A3EC8 800A32C8 00002025 */ move $a0, $zero +/* 0A3ECC 800A32CC 0C01BE53 */ jal get_random_number_from_range +/* 0A3ED0 800A32D0 24050002 */ li $a1, 2 +/* 0A3ED4 800A32D4 96390000 */ lhu $t9, ($s1) +/* 0A3ED8 800A32D8 24430147 */ addiu $v1, $v0, 0x147 +/* 0A3EDC 800A32DC 306BFFFF */ andi $t3, $v1, 0xffff +/* 0A3EE0 800A32E0 132BFFF9 */ beq $t9, $t3, .L800A32C8 +/* 0A3EE4 800A32E4 3064FFFF */ andi $a0, $v1, 0xffff +.L800A32E8: +/* 0A3EE8 800A32E8 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A3EEC 800A32EC A6240000 */ sh $a0, ($s1) +/* 0A3EF0 800A32F0 0C000741 */ jal play_sound_global +/* 0A3EF4 800A32F4 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A3EF8 800A32F8 24040078 */ li $a0, 120 +/* 0A3EFC 800A32FC 0C01BE53 */ jal get_random_number_from_range +/* 0A3F00 800A3300 240504B0 */ li $a1, 1200 +/* 0A3F04 800A3304 AE020000 */ sw $v0, ($s0) +.L800A3308: +/* 0A3F08 800A3308 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 +/* 0A3F0C 800A330C 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 +/* 0A3F10 800A3310 8E0C0000 */ lw $t4, ($s0) +/* 0A3F14 800A3314 8FAD00C8 */ lw $t5, 0xc8($sp) +/* 0A3F18 800A3318 00000000 */ nop +/* 0A3F1C 800A331C 018DC023 */ subu $t8, $t4, $t5 +/* 0A3F20 800A3320 07010002 */ bgez $t8, .L800A332C +/* 0A3F24 800A3324 AE180000 */ sw $t8, ($s0) +/* 0A3F28 800A3328 AE000000 */ sw $zero, ($s0) +.L800A332C: +/* 0A3F2C 800A332C 8FAA00A0 */ lw $t2, 0xa0($sp) +.L800A3330: +/* 0A3F30 800A3330 8FAC00A0 */ lw $t4, 0xa0($sp) +/* 0A3F34 800A3334 81430193 */ lb $v1, 0x193($t2) +/* 0A3F38 800A3338 00000000 */ nop +/* 0A3F3C 800A333C 00037080 */ sll $t6, $v1, 2 +/* 0A3F40 800A3340 014EC821 */ addu $t9, $t2, $t6 +/* 0A3F44 800A3344 8F2B0128 */ lw $t3, 0x128($t9) +/* 0A3F48 800A3348 00000000 */ nop +/* 0A3F4C 800A334C 2961001E */ slti $at, $t3, 0x1e +/* 0A3F50 800A3350 1020000A */ beqz $at, .L800A337C +/* 0A3F54 800A3354 00000000 */ nop +/* 0A3F58 800A3358 10600008 */ beqz $v1, .L800A337C +/* 0A3F5C 800A335C 24040005 */ li $a0, 5 +/* 0A3F60 800A3360 24050001 */ li $a1, 1 +/* 0A3F64 800A3364 24060002 */ li $a2, 2 +/* 0A3F68 800A3368 24070002 */ li $a3, 2 +/* 0A3F6C 800A336C 0C028DB3 */ jal func_800A36CC +/* 0A3F70 800A3370 AFA00010 */ sw $zero, 0x10($sp) +/* 0A3F74 800A3374 10000016 */ b .L800A33D0 +/* 0A3F78 800A3378 8FA400A0 */ lw $a0, 0xa0($sp) +.L800A337C: +/* 0A3F7C 800A337C 818D01D3 */ lb $t5, 0x1d3($t4) +/* 0A3F80 800A3380 8FB800A0 */ lw $t8, 0xa0($sp) +/* 0A3F84 800A3384 19A00008 */ blez $t5, .L800A33A8 +/* 0A3F88 800A3388 24040006 */ li $a0, 6 +/* 0A3F8C 800A338C 24050002 */ li $a1, 2 +/* 0A3F90 800A3390 24060003 */ li $a2, 3 +/* 0A3F94 800A3394 24070002 */ li $a3, 2 +/* 0A3F98 800A3398 0C028DB3 */ jal func_800A36CC +/* 0A3F9C 800A339C AFA00010 */ sw $zero, 0x10($sp) +/* 0A3FA0 800A33A0 1000000B */ b .L800A33D0 +/* 0A3FA4 800A33A4 8FA400A0 */ lw $a0, 0xa0($sp) +.L800A33A8: +/* 0A3FA8 800A33A8 930F01FC */ lbu $t7, 0x1fc($t8) +/* 0A3FAC 800A33AC 24040006 */ li $a0, 6 +/* 0A3FB0 800A33B0 29E10079 */ slti $at, $t7, 0x79 +/* 0A3FB4 800A33B4 14200005 */ bnez $at, .L800A33CC +/* 0A3FB8 800A33B8 24050003 */ li $a1, 3 +/* 0A3FBC 800A33BC 24060001 */ li $a2, 1 +/* 0A3FC0 800A33C0 24070004 */ li $a3, 4 +/* 0A3FC4 800A33C4 0C028DB3 */ jal func_800A36CC +/* 0A3FC8 800A33C8 AFA00010 */ sw $zero, 0x10($sp) +.L800A33CC: +/* 0A3FCC 800A33CC 8FA400A0 */ lw $a0, 0xa0($sp) +.L800A33D0: +/* 0A3FD0 800A33D0 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A3FD4 800A33D4 0C0293D4 */ jal func_800A4F50 +/* 0A3FD8 800A33D8 00000000 */ nop +/* 0A3FDC 800A33DC 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A3FE0 800A33E0 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A3FE4 800A33E4 0C029EDA */ jal render_race_time +/* 0A3FE8 800A33E8 00000000 */ nop +/* 0A3FEC 800A33EC 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A3FF0 800A33F0 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A3FF4 800A33F4 0C029055 */ jal func_800A4154 +/* 0A3FF8 800A33F8 00000000 */ nop +/* 0A3FFC 800A33FC 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A4000 800A3400 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A4004 800A3404 0C029699 */ jal render_wrong_way_text +/* 0A4008 800A3408 00000000 */ nop +/* 0A400C 800A340C 8FA400C0 */ lw $a0, 0xc0($sp) +/* 0A4010 800A3410 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A4014 800A3414 0C028F39 */ jal func_800A3CE4 +/* 0A4018 800A3418 00000000 */ nop +/* 0A401C 800A341C 8FA400C4 */ lw $a0, 0xc4($sp) +/* 0A4020 800A3420 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A4024 800A3424 0C028E21 */ jal func_800A3884 +/* 0A4028 800A3428 00000000 */ nop +/* 0A402C 800A342C 0C00382C */ jal func_8000E0B0 +/* 0A4030 800A3430 00000000 */ nop +/* 0A4034 800A3434 1840009D */ blez $v0, .L800A36AC +/* 0A4038 800A3438 00000000 */ nop +/* 0A403C 800A343C 0C00382C */ jal func_8000E0B0 +/* 0A4040 800A3440 00000000 */ nop +/* 0A4044 800A3444 24010001 */ li $at, 1 +/* 0A4048 800A3448 10410008 */ beq $v0, $at, .L800A346C +/* 0A404C 800A344C 24010002 */ li $at, 2 +/* 0A4050 800A3450 10410010 */ beq $v0, $at, .L800A3494 +/* 0A4054 800A3454 3C0B800F */ lui $t3, %hi(D_800E8658) # $t3, 0x800f +/* 0A4058 800A3458 24010003 */ li $at, 3 +/* 0A405C 800A345C 10410016 */ beq $v0, $at, .L800A34B8 +/* 0A4060 800A3460 3C18800F */ lui $t8, %hi(D_800E8670) # $t8, 0x800f +/* 0A4064 800A3464 1000001C */ b .L800A34D8 +/* 0A4068 800A3468 00000000 */ nop +.L800A346C: +/* 0A406C 800A346C 3C0A800F */ lui $t2, %hi(D_800E8640) # $t2, 0x800f +/* 0A4070 800A3470 3C0E800F */ lui $t6, %hi(D_800E8648) # $t6, 0x800f +/* 0A4074 800A3474 3C19800F */ lui $t9, %hi(D_800E8650) # $t9, 0x800f +/* 0A4078 800A3478 254A8640 */ addiu $t2, %lo(D_800E8640) # addiu $t2, $t2, -0x79c0 +/* 0A407C 800A347C 25CE8648 */ addiu $t6, %lo(D_800E8648) # addiu $t6, $t6, -0x79b8 +/* 0A4080 800A3480 27398650 */ addiu $t9, %lo(D_800E8650) # addiu $t9, $t9, -0x79b0 +/* 0A4084 800A3484 AFAA0060 */ sw $t2, 0x60($sp) +/* 0A4088 800A3488 AFAE005C */ sw $t6, 0x5c($sp) +/* 0A408C 800A348C 10000012 */ b .L800A34D8 +/* 0A4090 800A3490 AFB90058 */ sw $t9, 0x58($sp) +.L800A3494: +/* 0A4094 800A3494 3C0C800F */ lui $t4, %hi(D_800E8664) # $t4, 0x800f +/* 0A4098 800A3498 3C0D800F */ lui $t5, %hi(D_800E8668) # $t5, 0x800f +/* 0A409C 800A349C 256B8658 */ addiu $t3, %lo(D_800E8658) # addiu $t3, $t3, -0x79a8 +/* 0A40A0 800A34A0 258C8664 */ addiu $t4, %lo(D_800E8664) # addiu $t4, $t4, -0x799c +/* 0A40A4 800A34A4 25AD8668 */ addiu $t5, %lo(D_800E8668) # addiu $t5, $t5, -0x7998 +/* 0A40A8 800A34A8 AFAB0060 */ sw $t3, 0x60($sp) +/* 0A40AC 800A34AC AFAC005C */ sw $t4, 0x5c($sp) +/* 0A40B0 800A34B0 10000009 */ b .L800A34D8 +/* 0A40B4 800A34B4 AFAD0058 */ sw $t5, 0x58($sp) +.L800A34B8: +/* 0A40B8 800A34B8 3C0F800F */ lui $t7, %hi(D_800E867C) # $t7, 0x800f +/* 0A40BC 800A34BC 3C0A800F */ lui $t2, %hi(D_800E8680) # $t2, 0x800f +/* 0A40C0 800A34C0 27188670 */ addiu $t8, %lo(D_800E8670) # addiu $t8, $t8, -0x7990 +/* 0A40C4 800A34C4 25EF867C */ addiu $t7, %lo(D_800E867C) # addiu $t7, $t7, -0x7984 +/* 0A40C8 800A34C8 254A8680 */ addiu $t2, %lo(D_800E8680) # addiu $t2, $t2, -0x7980 +/* 0A40CC 800A34CC AFB80060 */ sw $t8, 0x60($sp) +/* 0A40D0 800A34D0 AFAF005C */ sw $t7, 0x5c($sp) +/* 0A40D4 800A34D4 AFAA0058 */ sw $t2, 0x58($sp) +.L800A34D8: +/* 0A40D8 800A34D8 0C031059 */ jal func_800C4164 +/* 0A40DC 800A34DC 24040001 */ li $a0, 1 +/* 0A40E0 800A34E0 0C0310BB */ jal set_text_font +/* 0A40E4 800A34E4 00002025 */ move $a0, $zero +/* 0A40E8 800A34E8 240E00FF */ li $t6, 255 +/* 0A40EC 800A34EC AFAE0010 */ sw $t6, 0x10($sp) +/* 0A40F0 800A34F0 00002025 */ move $a0, $zero +/* 0A40F4 800A34F4 00002825 */ move $a1, $zero +/* 0A40F8 800A34F8 00003025 */ move $a2, $zero +/* 0A40FC 800A34FC 0C0310E1 */ jal set_text_colour +/* 0A4100 800A3500 240700FF */ li $a3, 255 +/* 0A4104 800A3504 3C108012 */ lui $s0, %hi(D_8012718C) # $s0, 0x8012 +/* 0A4108 800A3508 3C118012 */ lui $s1, %hi(D_80126D24) # $s1, 0x8012 +/* 0A410C 800A350C 26316D24 */ addiu $s1, %lo(D_80126D24) # addiu $s1, $s1, 0x6d24 +/* 0A4110 800A3510 2610718C */ addiu $s0, %lo(D_8012718C) # addiu $s0, $s0, 0x718c +/* 0A4114 800A3514 8E190000 */ lw $t9, ($s0) +/* 0A4118 800A3518 8E2B0000 */ lw $t3, ($s1) +/* 0A411C 800A351C 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 +/* 0A4120 800A3520 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) +/* 0A4124 800A3524 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4128 800A3528 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A412C 800A352C 032B6021 */ addu $t4, $t9, $t3 +/* 0A4130 800A3530 8FA70060 */ lw $a3, 0x60($sp) +/* 0A4134 800A3534 2418000C */ li $t8, 12 +/* 0A4138 800A3538 018D2821 */ addu $a1, $t4, $t5 +/* 0A413C 800A353C 24A50001 */ addiu $a1, $a1, 1 +/* 0A4140 800A3540 AFB80010 */ sw $t8, 0x10($sp) +/* 0A4144 800A3544 02402025 */ move $a0, $s2 +/* 0A4148 800A3548 0C031110 */ jal draw_text +/* 0A414C 800A354C 24C60001 */ addiu $a2, $a2, 1 +/* 0A4150 800A3550 8E0F0000 */ lw $t7, ($s0) +/* 0A4154 800A3554 8E2A0000 */ lw $t2, ($s1) +/* 0A4158 800A3558 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 +/* 0A415C 800A355C 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) +/* 0A4160 800A3560 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4164 800A3564 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A4168 800A3568 01EA7021 */ addu $t6, $t7, $t2 +/* 0A416C 800A356C 8FA7005C */ lw $a3, 0x5c($sp) +/* 0A4170 800A3570 240B000C */ li $t3, 12 +/* 0A4174 800A3574 01D92821 */ addu $a1, $t6, $t9 +/* 0A4178 800A3578 24A50001 */ addiu $a1, $a1, 1 +/* 0A417C 800A357C AFAB0010 */ sw $t3, 0x10($sp) +/* 0A4180 800A3580 02402025 */ move $a0, $s2 +/* 0A4184 800A3584 0C031110 */ jal draw_text +/* 0A4188 800A3588 24C6000F */ addiu $a2, $a2, 0xf +/* 0A418C 800A358C 8E0C0000 */ lw $t4, ($s0) +/* 0A4190 800A3590 8E2D0000 */ lw $t5, ($s1) +/* 0A4194 800A3594 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 +/* 0A4198 800A3598 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) +/* 0A419C 800A359C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A41A0 800A35A0 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A41A4 800A35A4 018DC021 */ addu $t8, $t4, $t5 +/* 0A41A8 800A35A8 8FA70058 */ lw $a3, 0x58($sp) +/* 0A41AC 800A35AC 240A000C */ li $t2, 12 +/* 0A41B0 800A35B0 030F2821 */ addu $a1, $t8, $t7 +/* 0A41B4 800A35B4 24A50001 */ addiu $a1, $a1, 1 +/* 0A41B8 800A35B8 AFAA0010 */ sw $t2, 0x10($sp) +/* 0A41BC 800A35BC 02402025 */ move $a0, $s2 +/* 0A41C0 800A35C0 0C031110 */ jal draw_text +/* 0A41C4 800A35C4 24C6001D */ addiu $a2, $a2, 0x1d +/* 0A41C8 800A35C8 3C028012 */ lui $v0, %hi(D_80127194) # $v0, 0x8012 +/* 0A41CC 800A35CC 8C427194 */ lw $v0, %lo(D_80127194)($v0) +/* 0A41D0 800A35D0 24070080 */ li $a3, 128 +/* 0A41D4 800A35D4 904E0013 */ lbu $t6, 0x13($v0) +/* 0A41D8 800A35D8 90440010 */ lbu $a0, 0x10($v0) +/* 0A41DC 800A35DC 90450011 */ lbu $a1, 0x11($v0) +/* 0A41E0 800A35E0 90460012 */ lbu $a2, 0x12($v0) +/* 0A41E4 800A35E4 0C0310E1 */ jal set_text_colour +/* 0A41E8 800A35E8 AFAE0010 */ sw $t6, 0x10($sp) +/* 0A41EC 800A35EC 8E190000 */ lw $t9, ($s0) +/* 0A41F0 800A35F0 8E2B0000 */ lw $t3, ($s1) +/* 0A41F4 800A35F4 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 +/* 0A41F8 800A35F8 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) +/* 0A41FC 800A35FC 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4200 800A3600 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A4204 800A3604 8FA70060 */ lw $a3, 0x60($sp) +/* 0A4208 800A3608 2418000C */ li $t8, 12 +/* 0A420C 800A360C 032B6021 */ addu $t4, $t9, $t3 +/* 0A4210 800A3610 AFB80010 */ sw $t8, 0x10($sp) +/* 0A4214 800A3614 02402025 */ move $a0, $s2 +/* 0A4218 800A3618 0C031110 */ jal draw_text +/* 0A421C 800A361C 018D2821 */ addu $a1, $t4, $t5 +/* 0A4220 800A3620 8E0F0000 */ lw $t7, ($s0) +/* 0A4224 800A3624 8E2A0000 */ lw $t2, ($s1) +/* 0A4228 800A3628 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 +/* 0A422C 800A362C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4230 800A3630 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A4234 800A3634 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) +/* 0A4238 800A3638 8FA7005C */ lw $a3, 0x5c($sp) +/* 0A423C 800A363C 240B000C */ li $t3, 12 +/* 0A4240 800A3640 01EA7021 */ addu $t6, $t7, $t2 +/* 0A4244 800A3644 AFAB0010 */ sw $t3, 0x10($sp) +/* 0A4248 800A3648 02402025 */ move $a0, $s2 +/* 0A424C 800A364C 24C6000E */ addiu $a2, $a2, 0xe +/* 0A4250 800A3650 0C031110 */ jal draw_text +/* 0A4254 800A3654 01D92821 */ addu $a1, $t6, $t9 +/* 0A4258 800A3658 8E0C0000 */ lw $t4, ($s0) +/* 0A425C 800A365C 8E2D0000 */ lw $t5, ($s1) +/* 0A4260 800A3660 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 +/* 0A4264 800A3664 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4268 800A3668 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A426C 800A366C 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) +/* 0A4270 800A3670 8FA70058 */ lw $a3, 0x58($sp) +/* 0A4274 800A3674 240A000C */ li $t2, 12 +/* 0A4278 800A3678 018DC021 */ addu $t8, $t4, $t5 +/* 0A427C 800A367C AFAA0010 */ sw $t2, 0x10($sp) +/* 0A4280 800A3680 02402025 */ move $a0, $s2 +/* 0A4284 800A3684 24C6001C */ addiu $a2, $a2, 0x1c +/* 0A4288 800A3688 0C031110 */ jal draw_text +/* 0A428C 800A368C 030F2821 */ addu $a1, $t8, $t7 +/* 0A4290 800A3690 3C048012 */ lui $a0, %hi(D_80127194) # $a0, 0x8012 +/* 0A4294 800A3694 8C847194 */ lw $a0, %lo(D_80127194)($a0) +/* 0A4298 800A3698 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A429C 800A369C 0C01FC93 */ jal func_8007F24C +/* 0A42A0 800A36A0 00000000 */ nop +/* 0A42A4 800A36A4 0C031059 */ jal func_800C4164 +/* 0A42A8 800A36A8 00002025 */ move $a0, $zero +.L800A36AC: +/* 0A42AC 800A36AC 0C01A142 */ jal func_80068508 +/* 0A42B0 800A36B0 00002025 */ move $a0, $zero +.L800A36B4: +/* 0A42B4 800A36B4 8FBF002C */ lw $ra, 0x2c($sp) +/* 0A42B8 800A36B8 8FB00020 */ lw $s0, 0x20($sp) +/* 0A42BC 800A36BC 8FB10024 */ lw $s1, 0x24($sp) +/* 0A42C0 800A36C0 8FB20028 */ lw $s2, 0x28($sp) +/* 0A42C4 800A36C4 03E00008 */ jr $ra +/* 0A42C8 800A36C8 27BD00C0 */ addiu $sp, $sp, 0xc0 + diff --git a/asm/non_matchings/game_ui/func_800A3884.s b/asm/non_matchings/game_ui/func_800A3884.s index 8d82bda4..12b0c2f3 100644 --- a/asm/non_matchings/game_ui/func_800A3884.s +++ b/asm/non_matchings/game_ui/func_800A3884.s @@ -103,7 +103,7 @@ glabel func_800A3884 /* 0A45E8 800A39E8 E7A20024 */ swc1 $f2, 0x24($sp) /* 0A45EC 800A39EC C7A20024 */ lwc1 $f2, 0x24($sp) /* 0A45F0 800A39F0 1440002E */ bnez $v0, .L800A3AAC -/* 0A45F4 800A39F4 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 +/* 0A45F4 800A39F4 3C0D8012 */ lui $t5, %hi(gHUDNumPlayers) # $t5, 0x8012 /* 0A45F8 800A39F8 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 /* 0A45FC 800A39FC 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) /* 0A4600 800A3A00 3C014100 */ li $at, 0x41000000 # 8.000000 @@ -151,7 +151,7 @@ glabel func_800A3884 /* 0A46A4 800A3AA4 A44C04C4 */ sh $t4, 0x4c4($v0) /* 0A46A8 800A3AA8 00000000 */ nop .L800A3AAC: -/* 0A46AC 800A3AAC 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) +/* 0A46AC 800A3AAC 8DAD6D0C */ lw $t5, %lo(gHUDNumPlayers)($t5) /* 0A46B0 800A3AB0 3C0E800E */ lui $t6, %hi(D_800E27A4) # $t6, 0x800e /* 0A46B4 800A3AB4 01CD7021 */ addu $t6, $t6, $t5 /* 0A46B8 800A3AB8 81CE27A4 */ lb $t6, %lo(D_800E27A4)($t6) @@ -162,7 +162,7 @@ glabel func_800A3884 /* 0A46CC 800A3ACC 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A46D0 800A3AD0 31F80002 */ andi $t8, $t7, 2 /* 0A46D4 800A3AD4 1300001F */ beqz $t8, .L800A3B54 -/* 0A46D8 800A3AD8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A46D8 800A3AD8 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0A46DC 800A3ADC 3C198012 */ lui $t9, %hi(D_80126CD0) # $t9, 0x8012 /* 0A46E0 800A3AE0 83396CD0 */ lb $t9, %lo(D_80126CD0)($t9) /* 0A46E4 800A3AE4 3C088012 */ lui $t0, %hi(D_8012718B) # $t0, 0x8012 @@ -200,9 +200,9 @@ glabel func_800A3884 .L800A3B5C: /* 0A475C 800A3B5C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A4760 800A3B60 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A4764 800A3B64 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4768 800A3B68 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A476C 800A3B6C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4764 800A3B64 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4768 800A3B68 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A476C 800A3B6C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A4770 800A3B70 0C02A980 */ jal func_800AA600 /* 0A4774 800A3B74 24E705A0 */ addiu $a3, $a3, 0x5a0 /* 0A4778 800A3B78 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 @@ -224,10 +224,10 @@ glabel func_800A3884 /* 0A47B8 800A3BB8 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A47BC 800A3BBC AC780004 */ sw $t8, 4($v1) /* 0A47C0 800A3BC0 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A47C4 800A3BC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A47C8 800A3BC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A47CC 800A3BCC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A47D0 800A3BD0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A47C4 800A3BC4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A47C8 800A3BC8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A47CC 800A3BCC 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A47D0 800A3BD0 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A47D4 800A3BD4 0C02A980 */ jal func_800AA600 /* 0A47D8 800A3BD8 24E704C0 */ addiu $a3, $a3, 0x4c0 /* 0A47DC 800A3BDC 0C01EFC7 */ jal func_8007BF1C @@ -235,60 +235,60 @@ glabel func_800A3884 /* 0A47E4 800A3BE4 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A47E8 800A3BE8 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A47EC 800A3BEC 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A47F0 800A3BF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A47F4 800A3BF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A47F8 800A3BF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A47FC 800A3BFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A47F0 800A3BF0 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A47F4 800A3BF4 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A47F8 800A3BF8 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A47FC 800A3BFC 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A4800 800A3C00 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A4804 800A3C04 0C02A980 */ jal func_800AA600 /* 0A4808 800A3C08 24E704E0 */ addiu $a3, $a3, 0x4e0 /* 0A480C 800A3C0C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A4810 800A3C10 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A4814 800A3C14 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4818 800A3C18 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A481C 800A3C1C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4820 800A3C20 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4824 800A3C24 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4818 800A3C18 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A481C 800A3C1C 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4820 800A3C20 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A4824 800A3C24 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A4828 800A3C28 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A482C 800A3C2C 0C02A980 */ jal func_800AA600 /* 0A4830 800A3C30 24E70500 */ addiu $a3, $a3, 0x500 /* 0A4834 800A3C34 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A4838 800A3C38 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A483C 800A3C3C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4840 800A3C40 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4844 800A3C44 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4848 800A3C48 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A484C 800A3C4C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4840 800A3C40 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A4844 800A3C44 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4848 800A3C48 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A484C 800A3C4C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A4850 800A3C50 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A4854 800A3C54 0C02A980 */ jal func_800AA600 /* 0A4858 800A3C58 24E70520 */ addiu $a3, $a3, 0x520 /* 0A485C 800A3C5C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A4860 800A3C60 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A4864 800A3C64 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4868 800A3C68 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A486C 800A3C6C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4870 800A3C70 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4874 800A3C74 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4868 800A3C68 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A486C 800A3C6C 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4870 800A3C70 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A4874 800A3C74 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A4878 800A3C78 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A487C 800A3C7C 0C02A980 */ jal func_800AA600 /* 0A4880 800A3C80 24E70540 */ addiu $a3, $a3, 0x540 /* 0A4884 800A3C84 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A4888 800A3C88 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A488C 800A3C8C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4890 800A3C90 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4894 800A3C94 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4898 800A3C98 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A489C 800A3C9C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4890 800A3C90 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A4894 800A3C94 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4898 800A3C98 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A489C 800A3C9C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A48A0 800A3CA0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A48A4 800A3CA4 0C02A980 */ jal func_800AA600 /* 0A48A8 800A3CA8 24E70560 */ addiu $a3, $a3, 0x560 /* 0A48AC 800A3CAC 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A48B0 800A3CB0 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A48B4 800A3CB4 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A48B8 800A3CB8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A48BC 800A3CBC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A48C0 800A3CC0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A48C4 800A3CC4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A48B8 800A3CB8 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A48BC 800A3CBC 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A48C0 800A3CC0 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A48C4 800A3CC4 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A48C8 800A3CC8 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A48CC 800A3CCC 0C02A980 */ jal func_800AA600 /* 0A48D0 800A3CD0 24E70580 */ addiu $a3, $a3, 0x580 diff --git a/asm/non_matchings/game_ui/func_800A3CE4.s b/asm/non_matchings/game_ui/func_800A3CE4.s index 7b1e1760..d4ff8998 100644 --- a/asm/non_matchings/game_ui/func_800A3CE4.s +++ b/asm/non_matchings/game_ui/func_800A3CE4.s @@ -1,297 +1,297 @@ -glabel func_800A3CE4 -/* 0A48E4 800A3CE4 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 0A48E8 800A3CE8 AFBF0024 */ sw $ra, 0x24($sp) -/* 0A48EC 800A3CEC AFA40058 */ sw $a0, 0x58($sp) -/* 0A48F0 800A3CF0 0C01BAA8 */ jal is_game_paused -/* 0A48F4 800A3CF4 AFA5005C */ sw $a1, 0x5c($sp) -/* 0A48F8 800A3CF8 8FA90058 */ lw $t1, 0x58($sp) -/* 0A48FC 800A3CFC 14400111 */ bnez $v0, .L800A4144 -/* 0A4900 800A3D00 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 -/* 0A4904 800A3D04 15200008 */ bnez $t1, .L800A3D28 -/* 0A4908 800A3D08 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A490C 800A3D0C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A4910 800A3D10 806E000C */ lb $t6, 0xc($v1) -/* 0A4914 800A3D14 2402FFFF */ li $v0, -1 -/* 0A4918 800A3D18 144E0003 */ bne $v0, $t6, .L800A3D28 -/* 0A491C 800A3D1C 00000000 */ nop -/* 0A4920 800A3D20 A0620003 */ sb $v0, 3($v1) -/* 0A4924 800A3D24 A0620013 */ sb $v0, 0x13($v1) -.L800A3D28: -/* 0A4928 800A3D28 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) -/* 0A492C 800A3D2C 24010001 */ li $at, 1 -/* 0A4930 800A3D30 15E10005 */ bne $t7, $at, .L800A3D48 -/* 0A4934 800A3D34 00000000 */ nop -/* 0A4938 800A3D38 0C01EFC7 */ jal func_8007BF1C -/* 0A493C 800A3D3C 24040001 */ li $a0, 1 -/* 0A4940 800A3D40 8FA90058 */ lw $t1, 0x58($sp) -/* 0A4944 800A3D44 00000000 */ nop -.L800A3D48: -/* 0A4948 800A3D48 19200083 */ blez $t1, .L800A3F58 -/* 0A494C 800A3D4C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A4950 800A3D50 3C188012 */ lui $t8, %hi(D_80126D34) # $t8, 0x8012 -/* 0A4954 800A3D54 93186D34 */ lbu $t8, %lo(D_80126D34)($t8) -/* 0A4958 800A3D58 00095A00 */ sll $t3, $t1, 8 -/* 0A495C 800A3D5C 1300002F */ beqz $t8, .L800A3E1C -/* 0A4960 800A3D60 01695823 */ subu $t3, $t3, $t1 -/* 0A4964 800A3D64 24010028 */ li $at, 40 -/* 0A4968 800A3D68 0161001A */ div $zero, $t3, $at -/* 0A496C 800A3D6C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4970 800A3D70 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A4974 800A3D74 8C820000 */ lw $v0, ($a0) -/* 0A4978 800A3D78 2401FF00 */ li $at, -256 -/* 0A497C 800A3D7C 24590008 */ addiu $t9, $v0, 8 -/* 0A4980 800A3D80 AC990000 */ sw $t9, ($a0) -/* 0A4984 800A3D84 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A4988 800A3D88 3C0AFA00 */ lui $t2, 0xfa00 -/* 0A498C 800A3D8C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A4990 800A3D90 AC4A0000 */ sw $t2, ($v0) -/* 0A4994 800A3D94 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4998 800A3D98 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A499C 800A3D9C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A49A0 800A3DA0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A49A4 800A3DA4 00006012 */ mflo $t4 -/* 0A49A8 800A3DA8 318D00FF */ andi $t5, $t4, 0xff -/* 0A49AC 800A3DAC 01A17025 */ or $t6, $t5, $at -/* 0A49B0 800A3DB0 AC4E0004 */ sw $t6, 4($v0) -/* 0A49B4 800A3DB4 8D070000 */ lw $a3, ($t0) -/* 0A49B8 800A3DB8 0C02A980 */ jal func_800AA600 -/* 0A49BC 800A3DBC 24E701A0 */ addiu $a3, $a3, 0x1a0 -/* 0A49C0 800A3DC0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A49C4 800A3DC4 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A49C8 800A3DC8 8C820000 */ lw $v0, ($a0) -/* 0A49CC 800A3DCC 3C18FA00 */ lui $t8, 0xfa00 -/* 0A49D0 800A3DD0 244F0008 */ addiu $t7, $v0, 8 -/* 0A49D4 800A3DD4 AC8F0000 */ sw $t7, ($a0) -/* 0A49D8 800A3DD8 2419FFFF */ li $t9, -1 -/* 0A49DC 800A3DDC 3C0A8012 */ lui $t2, %hi(D_80126CD4) # $t2, 0x8012 -/* 0A49E0 800A3DE0 AC590004 */ sw $t9, 4($v0) -/* 0A49E4 800A3DE4 AC580000 */ sw $t8, ($v0) -/* 0A49E8 800A3DE8 814A6CD4 */ lb $t2, %lo(D_80126CD4)($t2) -/* 0A49EC 800A3DEC 24010002 */ li $at, 2 -/* 0A49F0 800A3DF0 1541000A */ bne $t2, $at, .L800A3E1C -/* 0A49F4 800A3DF4 24040018 */ li $a0, 24 -/* 0A49F8 800A3DF8 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A49FC 800A3DFC 0C000741 */ jal play_sound_global -/* 0A4A00 800A3E00 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A4A04 800A3E04 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 -/* 0A4A08 800A3E08 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 -/* 0A4A0C 800A3E0C 804B0000 */ lb $t3, ($v0) -/* 0A4A10 800A3E10 00000000 */ nop -/* 0A4A14 800A3E14 256C0001 */ addiu $t4, $t3, 1 -/* 0A4A18 800A3E18 A04C0000 */ sb $t4, ($v0) -.L800A3E1C: -/* 0A4A1C 800A3E1C 3C0D8012 */ lui $t5, %hi(D_80126D3C) # $t5, 0x8012 -/* 0A4A20 800A3E20 8DAD6D3C */ lw $t5, %lo(D_80126D3C)($t5) -/* 0A4A24 800A3E24 00000000 */ nop -/* 0A4A28 800A3E28 15A000C4 */ bnez $t5, .L800A413C -/* 0A4A2C 800A3E2C 00000000 */ nop -/* 0A4A30 800A3E30 0C008D5A */ jal func_80023568 -/* 0A4A34 800A3E34 00000000 */ nop -/* 0A4A38 800A3E38 144000C0 */ bnez $v0, .L800A413C -/* 0A4A3C 800A3E3C 00000000 */ nop -/* 0A4A40 800A3E40 0C006E9D */ jal get_object_struct_array -/* 0A4A44 800A3E44 27A40038 */ addiu $a0, $sp, 0x38 -/* 0A4A48 800A3E48 8FA50038 */ lw $a1, 0x38($sp) -/* 0A4A4C 800A3E4C AFA20044 */ sw $v0, 0x44($sp) -/* 0A4A50 800A3E50 0C01BE53 */ jal get_random_number_from_range -/* 0A4A54 800A3E54 24040001 */ li $a0, 1 -/* 0A4A58 800A3E58 8FAE0044 */ lw $t6, 0x44($sp) -/* 0A4A5C 800A3E5C 00027880 */ sll $t7, $v0, 2 -/* 0A4A60 800A3E60 01CFC021 */ addu $t8, $t6, $t7 -/* 0A4A64 800A3E64 8F08FFFC */ lw $t0, -4($t8) -/* 0A4A68 800A3E68 00002025 */ move $a0, $zero -/* 0A4A6C 800A3E6C 8D030064 */ lw $v1, 0x64($t0) -/* 0A4A70 800A3E70 24050064 */ li $a1, 100 -/* 0A4A74 800A3E74 807901D6 */ lb $t9, 0x1d6($v1) -/* 0A4A78 800A3E78 00000000 */ nop -/* 0A4A7C 800A3E7C 172000AF */ bnez $t9, .L800A413C -/* 0A4A80 800A3E80 00000000 */ nop -/* 0A4A84 800A3E84 0C01BE53 */ jal get_random_number_from_range -/* 0A4A88 800A3E88 AFA80040 */ sw $t0, 0x40($sp) -/* 0A4A8C 800A3E8C 8FA80040 */ lw $t0, 0x40($sp) -/* 0A4A90 800A3E90 28410060 */ slti $at, $v0, 0x60 -/* 0A4A94 800A3E94 142000A9 */ bnez $at, .L800A413C -/* 0A4A98 800A3E98 00002025 */ move $a0, $zero -/* 0A4A9C 800A3E9C 24050007 */ li $a1, 7 -/* 0A4AA0 800A3EA0 0C01BE53 */ jal get_random_number_from_range -/* 0A4AA4 800A3EA4 AFA80040 */ sw $t0, 0x40($sp) -/* 0A4AA8 800A3EA8 44822000 */ mtc1 $v0, $f4 -/* 0A4AAC 800A3EAC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0A4AB0 800A3EB0 468021A1 */ cvt.d.w $f6, $f4 -/* 0A4AB4 800A3EB4 44814800 */ mtc1 $at, $f9 -/* 0A4AB8 800A3EB8 44804000 */ mtc1 $zero, $f8 -/* 0A4ABC 800A3EBC 3C01401C */ li $at, 0x401C0000 # 2.437500 -/* 0A4AC0 800A3EC0 46283282 */ mul.d $f10, $f6, $f8 -/* 0A4AC4 800A3EC4 44818800 */ mtc1 $at, $f17 -/* 0A4AC8 800A3EC8 44808000 */ mtc1 $zero, $f16 -/* 0A4ACC 800A3ECC 3C013FF4 */ li $at, 0x3FF40000 # 1.906250 -/* 0A4AD0 800A3ED0 44812800 */ mtc1 $at, $f5 -/* 0A4AD4 800A3ED4 46305483 */ div.d $f18, $f10, $f16 -/* 0A4AD8 800A3ED8 44802000 */ mtc1 $zero, $f4 -/* 0A4ADC 800A3EDC 00002025 */ move $a0, $zero -/* 0A4AE0 800A3EE0 24050007 */ li $a1, 7 -/* 0A4AE4 800A3EE4 46322181 */ sub.d $f6, $f4, $f18 -/* 0A4AE8 800A3EE8 46203220 */ cvt.s.d $f8, $f6 -/* 0A4AEC 800A3EEC 0C01BE53 */ jal get_random_number_from_range -/* 0A4AF0 800A3EF0 E7A8004C */ swc1 $f8, 0x4c($sp) -/* 0A4AF4 800A3EF4 00025980 */ sll $t3, $v0, 6 -/* 0A4AF8 800A3EF8 01625823 */ subu $t3, $t3, $v0 -/* 0A4AFC 800A3EFC 24010007 */ li $at, 7 -/* 0A4B00 800A3F00 0161001A */ div $zero, $t3, $at -/* 0A4B04 800A3F04 8FA80040 */ lw $t0, 0x40($sp) -/* 0A4B08 800A3F08 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 0A4B0C 800A3F0C 44818000 */ mtc1 $at, $f16 -/* 0A4B10 800A3F10 C7AA004C */ lwc1 $f10, 0x4c($sp) -/* 0A4B14 800A3F14 8D05000C */ lw $a1, 0xc($t0) -/* 0A4B18 800A3F18 8D060010 */ lw $a2, 0x10($t0) -/* 0A4B1C 800A3F1C 8D070014 */ lw $a3, 0x14($t0) -/* 0A4B20 800A3F20 46105102 */ mul.s $f4, $f10, $f16 -/* 0A4B24 800A3F24 3C0E8012 */ lui $t6, %hi(D_80126D3C) # $t6, 0x8012 -/* 0A4B28 800A3F28 25CE6D3C */ addiu $t6, %lo(D_80126D3C) # addiu $t6, $t6, 0x6d3c -/* 0A4B2C 800A3F2C 240A0004 */ li $t2, 4 -/* 0A4B30 800A3F30 AFAA0010 */ sw $t2, 0x10($sp) -/* 0A4B34 800A3F34 AFAE001C */ sw $t6, 0x1c($sp) -/* 0A4B38 800A3F38 E7A40018 */ swc1 $f4, 0x18($sp) -/* 0A4B3C 800A3F3C 2404004C */ li $a0, 76 -/* 0A4B40 800A3F40 00006012 */ mflo $t4 -/* 0A4B44 800A3F44 258D0018 */ addiu $t5, $t4, 0x18 -/* 0A4B48 800A3F48 0C00257A */ jal func_800095E8 -/* 0A4B4C 800A3F4C AFAD0014 */ sw $t5, 0x14($sp) -/* 0A4B50 800A3F50 1000007A */ b .L800A413C -/* 0A4B54 800A3F54 00000000 */ nop -.L800A3F58: -/* 0A4B58 800A3F58 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A4B5C 800A3F5C 8D0F0000 */ lw $t7, ($t0) -/* 0A4B60 800A3F60 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A4B64 800A3F64 44819000 */ mtc1 $at, $f18 -/* 0A4B68 800A3F68 C5E6018C */ lwc1 $f6, 0x18c($t7) -/* 0A4B6C 800A3F6C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4B70 800A3F70 4606903C */ c.lt.s $f18, $f6 -/* 0A4B74 800A3F74 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A4B78 800A3F78 45000070 */ bc1f .L800A413C -/* 0A4B7C 800A3F7C 3C19FA00 */ lui $t9, 0xfa00 -/* 0A4B80 800A3F80 8C820000 */ lw $v0, ($a0) -/* 0A4B84 800A3F84 240AFFA0 */ li $t2, -96 -/* 0A4B88 800A3F88 24580008 */ addiu $t8, $v0, 8 -/* 0A4B8C 800A3F8C AC980000 */ sw $t8, ($a0) -/* 0A4B90 800A3F90 AC4A0004 */ sw $t2, 4($v0) -/* 0A4B94 800A3F94 AC590000 */ sw $t9, ($v0) -/* 0A4B98 800A3F98 8D070000 */ lw $a3, ($t0) -/* 0A4B9C 800A3F9C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4BA0 800A3FA0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4BA4 800A3FA4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4BA8 800A3FA8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4BAC 800A3FAC 0C02A980 */ jal func_800AA600 -/* 0A4BB0 800A3FB0 24E70180 */ addiu $a3, $a3, 0x180 -/* 0A4BB4 800A3FB4 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4BB8 800A3FB8 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A4BBC 800A3FBC 8C820000 */ lw $v0, ($a0) -/* 0A4BC0 800A3FC0 3C0CFA00 */ lui $t4, 0xfa00 -/* 0A4BC4 800A3FC4 244B0008 */ addiu $t3, $v0, 8 -/* 0A4BC8 800A3FC8 AC8B0000 */ sw $t3, ($a0) -/* 0A4BCC 800A3FCC 240DFFFF */ li $t5, -1 -/* 0A4BD0 800A3FD0 3C078012 */ lui $a3, %hi(D_80126D08) # $a3, 0x8012 -/* 0A4BD4 800A3FD4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A4BD8 800A3FD8 AC4D0004 */ sw $t5, 4($v0) -/* 0A4BDC 800A3FDC AC4C0000 */ sw $t4, ($v0) -/* 0A4BE0 800A3FE0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A4BE4 800A3FE4 24E76D08 */ addiu $a3, %lo(D_80126D08) # addiu $a3, $a3, 0x6d08 -/* 0A4BE8 800A3FE8 8CEF0000 */ lw $t7, ($a3) -/* 0A4BEC 800A3FEC 8D0E0000 */ lw $t6, ($t0) -/* 0A4BF0 800A3FF0 8FB9005C */ lw $t9, 0x5c($sp) -/* 0A4BF4 800A3FF4 01CF2821 */ addu $a1, $t6, $t7 -/* 0A4BF8 800A3FF8 80B8019A */ lb $t8, 0x19a($a1) -/* 0A4BFC 800A3FFC 3C0E8012 */ lui $t6, %hi(D_80126CD4) # $t6, 0x8012 -/* 0A4C00 800A4000 03195021 */ addu $t2, $t8, $t9 -/* 0A4C04 800A4004 A0AA019A */ sb $t2, 0x19a($a1) -/* 0A4C08 800A4008 8CEB0000 */ lw $t3, ($a3) -/* 0A4C0C 800A400C 8D060000 */ lw $a2, ($t0) -/* 0A4C10 800A4010 00000000 */ nop -/* 0A4C14 800A4014 00CB6021 */ addu $t4, $a2, $t3 -/* 0A4C18 800A4018 818D019A */ lb $t5, 0x19a($t4) -/* 0A4C1C 800A401C 00000000 */ nop -/* 0A4C20 800A4020 29A1003C */ slti $at, $t5, 0x3c -/* 0A4C24 800A4024 14200025 */ bnez $at, .L800A40BC -/* 0A4C28 800A4028 00000000 */ nop -/* 0A4C2C 800A402C 81CE6CD4 */ lb $t6, %lo(D_80126CD4)($t6) -/* 0A4C30 800A4030 24010004 */ li $at, 4 -/* 0A4C34 800A4034 15C1001A */ bne $t6, $at, .L800A40A0 -/* 0A4C38 800A4038 8FB9005C */ lw $t9, 0x5c($sp) -/* 0A4C3C 800A403C 0C019884 */ jal get_viewport_count -/* 0A4C40 800A4040 00000000 */ nop -/* 0A4C44 800A4044 28410002 */ slti $at, $v0, 2 -/* 0A4C48 800A4048 14200006 */ bnez $at, .L800A4064 -/* 0A4C4C 800A404C 3C013F80 */ lui $at, 0x3f80 -/* 0A4C50 800A4050 0C0002CD */ jal play_music -/* 0A4C54 800A4054 00002025 */ move $a0, $zero -/* 0A4C58 800A4058 10000006 */ b .L800A4074 -/* 0A4C5C 800A405C 24040016 */ li $a0, 22 -/* 0A4C60 800A4060 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L800A4064: -/* 0A4C64 800A4064 44816000 */ mtc1 $at, $f12 -/* 0A4C68 800A4068 0C01AF44 */ jal func_8006BD10 -/* 0A4C6C 800A406C 00000000 */ nop -/* 0A4C70 800A4070 24040016 */ li $a0, 22 -.L800A4074: -/* 0A4C74 800A4074 0C000741 */ jal play_sound_global -/* 0A4C78 800A4078 00002825 */ move $a1, $zero -/* 0A4C7C 800A407C 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 -/* 0A4C80 800A4080 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 -/* 0A4C84 800A4084 804F0000 */ lb $t7, ($v0) -/* 0A4C88 800A4088 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 -/* 0A4C8C 800A408C 25F80001 */ addiu $t8, $t7, 1 -/* 0A4C90 800A4090 A0580000 */ sb $t8, ($v0) -/* 0A4C94 800A4094 8CC66CDC */ lw $a2, %lo(D_80126CDC)($a2) -/* 0A4C98 800A4098 00000000 */ nop -/* 0A4C9C 800A409C 8FB9005C */ lw $t9, 0x5c($sp) -.L800A40A0: -/* 0A4CA0 800A40A0 C4C8018C */ lwc1 $f8, 0x18c($a2) -/* 0A4CA4 800A40A4 001950C0 */ sll $t2, $t9, 3 -/* 0A4CA8 800A40A8 448A5000 */ mtc1 $t2, $f10 -/* 0A4CAC 800A40AC 00000000 */ nop -/* 0A4CB0 800A40B0 46805420 */ cvt.s.w $f16, $f10 -/* 0A4CB4 800A40B4 46104101 */ sub.s $f4, $f8, $f16 -/* 0A4CB8 800A40B8 E4C4018C */ swc1 $f4, 0x18c($a2) -.L800A40BC: -/* 0A4CBC 800A40BC 3C0B8012 */ lui $t3, %hi(D_80126CD4) # $t3, 0x8012 -/* 0A4CC0 800A40C0 816B6CD4 */ lb $t3, %lo(D_80126CD4)($t3) -/* 0A4CC4 800A40C4 24010003 */ li $at, 3 -/* 0A4CC8 800A40C8 1561001C */ bne $t3, $at, .L800A413C -/* 0A4CCC 800A40CC 24040019 */ li $a0, 25 -/* 0A4CD0 800A40D0 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A4CD4 800A40D4 0C000741 */ jal play_sound_global -/* 0A4CD8 800A40D8 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A4CDC 800A40DC 0C006D90 */ jal func_8001B640 -/* 0A4CE0 800A40E0 00000000 */ nop -/* 0A4CE4 800A40E4 1040000D */ beqz $v0, .L800A411C -/* 0A4CE8 800A40E8 00000000 */ nop -/* 0A4CEC 800A40EC 0C006D94 */ jal func_8001B650 -/* 0A4CF0 800A40F0 00000000 */ nop -/* 0A4CF4 800A40F4 14400009 */ bnez $v0, .L800A411C -/* 0A4CF8 800A40F8 2404024B */ li $a0, 587 -/* 0A4CFC 800A40FC 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 -/* 0A4D00 800A4100 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a -/* 0A4D04 800A4104 0C029D21 */ jal func_800A7484 -/* 0A4D08 800A4108 00003025 */ move $a2, $zero -/* 0A4D0C 800A410C 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 -/* 0A4D10 800A4110 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a -/* 0A4D14 800A4114 0C030C56 */ jal func_800C3158 -/* 0A4D18 800A4118 24040052 */ li $a0, 82 -.L800A411C: -/* 0A4D1C 800A411C 3C0D8012 */ lui $t5, %hi(D_80126CD4) # $t5, 0x8012 -/* 0A4D20 800A4120 81AD6CD4 */ lb $t5, %lo(D_80126CD4)($t5) -/* 0A4D24 800A4124 240C0001 */ li $t4, 1 -/* 0A4D28 800A4128 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 -/* 0A4D2C 800A412C A02C6D70 */ sb $t4, %lo(D_80126D70)($at) -/* 0A4D30 800A4130 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 -/* 0A4D34 800A4134 25AE0001 */ addiu $t6, $t5, 1 -/* 0A4D38 800A4138 A02E6CD4 */ sb $t6, %lo(D_80126CD4)($at) -.L800A413C: -/* 0A4D3C 800A413C 0C01EFC7 */ jal func_8007BF1C -/* 0A4D40 800A4140 00002025 */ move $a0, $zero -.L800A4144: -/* 0A4D44 800A4144 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A4D48 800A4148 27BD0058 */ addiu $sp, $sp, 0x58 -/* 0A4D4C 800A414C 03E00008 */ jr $ra -/* 0A4D50 800A4150 00000000 */ nop - +glabel func_800A3CE4 +/* 0A48E4 800A3CE4 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 0A48E8 800A3CE8 AFBF0024 */ sw $ra, 0x24($sp) +/* 0A48EC 800A3CEC AFA40058 */ sw $a0, 0x58($sp) +/* 0A48F0 800A3CF0 0C01BAA8 */ jal is_game_paused +/* 0A48F4 800A3CF4 AFA5005C */ sw $a1, 0x5c($sp) +/* 0A48F8 800A3CF8 8FA90058 */ lw $t1, 0x58($sp) +/* 0A48FC 800A3CFC 14400111 */ bnez $v0, .L800A4144 +/* 0A4900 800A3D00 3C0F8012 */ lui $t7, %hi(gHUDNumPlayers) # $t7, 0x8012 +/* 0A4904 800A3D04 15200008 */ bnez $t1, .L800A3D28 +/* 0A4908 800A3D08 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A490C 800A3D0C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A4910 800A3D10 806E000C */ lb $t6, 0xc($v1) +/* 0A4914 800A3D14 2402FFFF */ li $v0, -1 +/* 0A4918 800A3D18 144E0003 */ bne $v0, $t6, .L800A3D28 +/* 0A491C 800A3D1C 00000000 */ nop +/* 0A4920 800A3D20 A0620003 */ sb $v0, 3($v1) +/* 0A4924 800A3D24 A0620013 */ sb $v0, 0x13($v1) +.L800A3D28: +/* 0A4928 800A3D28 8DEF6D0C */ lw $t7, %lo(gHUDNumPlayers)($t7) +/* 0A492C 800A3D2C 24010001 */ li $at, 1 +/* 0A4930 800A3D30 15E10005 */ bne $t7, $at, .L800A3D48 +/* 0A4934 800A3D34 00000000 */ nop +/* 0A4938 800A3D38 0C01EFC7 */ jal func_8007BF1C +/* 0A493C 800A3D3C 24040001 */ li $a0, 1 +/* 0A4940 800A3D40 8FA90058 */ lw $t1, 0x58($sp) +/* 0A4944 800A3D44 00000000 */ nop +.L800A3D48: +/* 0A4948 800A3D48 19200083 */ blez $t1, .L800A3F58 +/* 0A494C 800A3D4C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A4950 800A3D50 3C188012 */ lui $t8, %hi(D_80126D34) # $t8, 0x8012 +/* 0A4954 800A3D54 93186D34 */ lbu $t8, %lo(D_80126D34)($t8) +/* 0A4958 800A3D58 00095A00 */ sll $t3, $t1, 8 +/* 0A495C 800A3D5C 1300002F */ beqz $t8, .L800A3E1C +/* 0A4960 800A3D60 01695823 */ subu $t3, $t3, $t1 +/* 0A4964 800A3D64 24010028 */ li $at, 40 +/* 0A4968 800A3D68 0161001A */ div $zero, $t3, $at +/* 0A496C 800A3D6C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A4970 800A3D70 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A4974 800A3D74 8C820000 */ lw $v0, ($a0) +/* 0A4978 800A3D78 2401FF00 */ li $at, -256 +/* 0A497C 800A3D7C 24590008 */ addiu $t9, $v0, 8 +/* 0A4980 800A3D80 AC990000 */ sw $t9, ($a0) +/* 0A4984 800A3D84 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A4988 800A3D88 3C0AFA00 */ lui $t2, 0xfa00 +/* 0A498C 800A3D8C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A4990 800A3D90 AC4A0000 */ sw $t2, ($v0) +/* 0A4994 800A3D94 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A4998 800A3D98 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A499C 800A3D9C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A49A0 800A3DA0 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A49A4 800A3DA4 00006012 */ mflo $t4 +/* 0A49A8 800A3DA8 318D00FF */ andi $t5, $t4, 0xff +/* 0A49AC 800A3DAC 01A17025 */ or $t6, $t5, $at +/* 0A49B0 800A3DB0 AC4E0004 */ sw $t6, 4($v0) +/* 0A49B4 800A3DB4 8D070000 */ lw $a3, ($t0) +/* 0A49B8 800A3DB8 0C02A980 */ jal func_800AA600 +/* 0A49BC 800A3DBC 24E701A0 */ addiu $a3, $a3, 0x1a0 +/* 0A49C0 800A3DC0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A49C4 800A3DC4 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A49C8 800A3DC8 8C820000 */ lw $v0, ($a0) +/* 0A49CC 800A3DCC 3C18FA00 */ lui $t8, 0xfa00 +/* 0A49D0 800A3DD0 244F0008 */ addiu $t7, $v0, 8 +/* 0A49D4 800A3DD4 AC8F0000 */ sw $t7, ($a0) +/* 0A49D8 800A3DD8 2419FFFF */ li $t9, -1 +/* 0A49DC 800A3DDC 3C0A8012 */ lui $t2, %hi(D_80126CD4) # $t2, 0x8012 +/* 0A49E0 800A3DE0 AC590004 */ sw $t9, 4($v0) +/* 0A49E4 800A3DE4 AC580000 */ sw $t8, ($v0) +/* 0A49E8 800A3DE8 814A6CD4 */ lb $t2, %lo(D_80126CD4)($t2) +/* 0A49EC 800A3DEC 24010002 */ li $at, 2 +/* 0A49F0 800A3DF0 1541000A */ bne $t2, $at, .L800A3E1C +/* 0A49F4 800A3DF4 24040018 */ li $a0, 24 +/* 0A49F8 800A3DF8 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A49FC 800A3DFC 0C000741 */ jal play_sound_global +/* 0A4A00 800A3E00 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A4A04 800A3E04 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 +/* 0A4A08 800A3E08 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 +/* 0A4A0C 800A3E0C 804B0000 */ lb $t3, ($v0) +/* 0A4A10 800A3E10 00000000 */ nop +/* 0A4A14 800A3E14 256C0001 */ addiu $t4, $t3, 1 +/* 0A4A18 800A3E18 A04C0000 */ sb $t4, ($v0) +.L800A3E1C: +/* 0A4A1C 800A3E1C 3C0D8012 */ lui $t5, %hi(D_80126D3C) # $t5, 0x8012 +/* 0A4A20 800A3E20 8DAD6D3C */ lw $t5, %lo(D_80126D3C)($t5) +/* 0A4A24 800A3E24 00000000 */ nop +/* 0A4A28 800A3E28 15A000C4 */ bnez $t5, .L800A413C +/* 0A4A2C 800A3E2C 00000000 */ nop +/* 0A4A30 800A3E30 0C008D5A */ jal func_80023568 +/* 0A4A34 800A3E34 00000000 */ nop +/* 0A4A38 800A3E38 144000C0 */ bnez $v0, .L800A413C +/* 0A4A3C 800A3E3C 00000000 */ nop +/* 0A4A40 800A3E40 0C006E9D */ jal get_object_struct_array +/* 0A4A44 800A3E44 27A40038 */ addiu $a0, $sp, 0x38 +/* 0A4A48 800A3E48 8FA50038 */ lw $a1, 0x38($sp) +/* 0A4A4C 800A3E4C AFA20044 */ sw $v0, 0x44($sp) +/* 0A4A50 800A3E50 0C01BE53 */ jal get_random_number_from_range +/* 0A4A54 800A3E54 24040001 */ li $a0, 1 +/* 0A4A58 800A3E58 8FAE0044 */ lw $t6, 0x44($sp) +/* 0A4A5C 800A3E5C 00027880 */ sll $t7, $v0, 2 +/* 0A4A60 800A3E60 01CFC021 */ addu $t8, $t6, $t7 +/* 0A4A64 800A3E64 8F08FFFC */ lw $t0, -4($t8) +/* 0A4A68 800A3E68 00002025 */ move $a0, $zero +/* 0A4A6C 800A3E6C 8D030064 */ lw $v1, 0x64($t0) +/* 0A4A70 800A3E70 24050064 */ li $a1, 100 +/* 0A4A74 800A3E74 807901D6 */ lb $t9, 0x1d6($v1) +/* 0A4A78 800A3E78 00000000 */ nop +/* 0A4A7C 800A3E7C 172000AF */ bnez $t9, .L800A413C +/* 0A4A80 800A3E80 00000000 */ nop +/* 0A4A84 800A3E84 0C01BE53 */ jal get_random_number_from_range +/* 0A4A88 800A3E88 AFA80040 */ sw $t0, 0x40($sp) +/* 0A4A8C 800A3E8C 8FA80040 */ lw $t0, 0x40($sp) +/* 0A4A90 800A3E90 28410060 */ slti $at, $v0, 0x60 +/* 0A4A94 800A3E94 142000A9 */ bnez $at, .L800A413C +/* 0A4A98 800A3E98 00002025 */ move $a0, $zero +/* 0A4A9C 800A3E9C 24050007 */ li $a1, 7 +/* 0A4AA0 800A3EA0 0C01BE53 */ jal get_random_number_from_range +/* 0A4AA4 800A3EA4 AFA80040 */ sw $t0, 0x40($sp) +/* 0A4AA8 800A3EA8 44822000 */ mtc1 $v0, $f4 +/* 0A4AAC 800A3EAC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0A4AB0 800A3EB0 468021A1 */ cvt.d.w $f6, $f4 +/* 0A4AB4 800A3EB4 44814800 */ mtc1 $at, $f9 +/* 0A4AB8 800A3EB8 44804000 */ mtc1 $zero, $f8 +/* 0A4ABC 800A3EBC 3C01401C */ li $at, 0x401C0000 # 2.437500 +/* 0A4AC0 800A3EC0 46283282 */ mul.d $f10, $f6, $f8 +/* 0A4AC4 800A3EC4 44818800 */ mtc1 $at, $f17 +/* 0A4AC8 800A3EC8 44808000 */ mtc1 $zero, $f16 +/* 0A4ACC 800A3ECC 3C013FF4 */ li $at, 0x3FF40000 # 1.906250 +/* 0A4AD0 800A3ED0 44812800 */ mtc1 $at, $f5 +/* 0A4AD4 800A3ED4 46305483 */ div.d $f18, $f10, $f16 +/* 0A4AD8 800A3ED8 44802000 */ mtc1 $zero, $f4 +/* 0A4ADC 800A3EDC 00002025 */ move $a0, $zero +/* 0A4AE0 800A3EE0 24050007 */ li $a1, 7 +/* 0A4AE4 800A3EE4 46322181 */ sub.d $f6, $f4, $f18 +/* 0A4AE8 800A3EE8 46203220 */ cvt.s.d $f8, $f6 +/* 0A4AEC 800A3EEC 0C01BE53 */ jal get_random_number_from_range +/* 0A4AF0 800A3EF0 E7A8004C */ swc1 $f8, 0x4c($sp) +/* 0A4AF4 800A3EF4 00025980 */ sll $t3, $v0, 6 +/* 0A4AF8 800A3EF8 01625823 */ subu $t3, $t3, $v0 +/* 0A4AFC 800A3EFC 24010007 */ li $at, 7 +/* 0A4B00 800A3F00 0161001A */ div $zero, $t3, $at +/* 0A4B04 800A3F04 8FA80040 */ lw $t0, 0x40($sp) +/* 0A4B08 800A3F08 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 0A4B0C 800A3F0C 44818000 */ mtc1 $at, $f16 +/* 0A4B10 800A3F10 C7AA004C */ lwc1 $f10, 0x4c($sp) +/* 0A4B14 800A3F14 8D05000C */ lw $a1, 0xc($t0) +/* 0A4B18 800A3F18 8D060010 */ lw $a2, 0x10($t0) +/* 0A4B1C 800A3F1C 8D070014 */ lw $a3, 0x14($t0) +/* 0A4B20 800A3F20 46105102 */ mul.s $f4, $f10, $f16 +/* 0A4B24 800A3F24 3C0E8012 */ lui $t6, %hi(D_80126D3C) # $t6, 0x8012 +/* 0A4B28 800A3F28 25CE6D3C */ addiu $t6, %lo(D_80126D3C) # addiu $t6, $t6, 0x6d3c +/* 0A4B2C 800A3F2C 240A0004 */ li $t2, 4 +/* 0A4B30 800A3F30 AFAA0010 */ sw $t2, 0x10($sp) +/* 0A4B34 800A3F34 AFAE001C */ sw $t6, 0x1c($sp) +/* 0A4B38 800A3F38 E7A40018 */ swc1 $f4, 0x18($sp) +/* 0A4B3C 800A3F3C 2404004C */ li $a0, 76 +/* 0A4B40 800A3F40 00006012 */ mflo $t4 +/* 0A4B44 800A3F44 258D0018 */ addiu $t5, $t4, 0x18 +/* 0A4B48 800A3F48 0C00257A */ jal func_800095E8 +/* 0A4B4C 800A3F4C AFAD0014 */ sw $t5, 0x14($sp) +/* 0A4B50 800A3F50 1000007A */ b .L800A413C +/* 0A4B54 800A3F54 00000000 */ nop +.L800A3F58: +/* 0A4B58 800A3F58 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A4B5C 800A3F5C 8D0F0000 */ lw $t7, ($t0) +/* 0A4B60 800A3F60 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A4B64 800A3F64 44819000 */ mtc1 $at, $f18 +/* 0A4B68 800A3F68 C5E6018C */ lwc1 $f6, 0x18c($t7) +/* 0A4B6C 800A3F6C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A4B70 800A3F70 4606903C */ c.lt.s $f18, $f6 +/* 0A4B74 800A3F74 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A4B78 800A3F78 45000070 */ bc1f .L800A413C +/* 0A4B7C 800A3F7C 3C19FA00 */ lui $t9, 0xfa00 +/* 0A4B80 800A3F80 8C820000 */ lw $v0, ($a0) +/* 0A4B84 800A3F84 240AFFA0 */ li $t2, -96 +/* 0A4B88 800A3F88 24580008 */ addiu $t8, $v0, 8 +/* 0A4B8C 800A3F8C AC980000 */ sw $t8, ($a0) +/* 0A4B90 800A3F90 AC4A0004 */ sw $t2, 4($v0) +/* 0A4B94 800A3F94 AC590000 */ sw $t9, ($v0) +/* 0A4B98 800A3F98 8D070000 */ lw $a3, ($t0) +/* 0A4B9C 800A3F9C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A4BA0 800A3FA0 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4BA4 800A3FA4 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A4BA8 800A3FA8 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A4BAC 800A3FAC 0C02A980 */ jal func_800AA600 +/* 0A4BB0 800A3FB0 24E70180 */ addiu $a3, $a3, 0x180 +/* 0A4BB4 800A3FB4 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A4BB8 800A3FB8 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A4BBC 800A3FBC 8C820000 */ lw $v0, ($a0) +/* 0A4BC0 800A3FC0 3C0CFA00 */ lui $t4, 0xfa00 +/* 0A4BC4 800A3FC4 244B0008 */ addiu $t3, $v0, 8 +/* 0A4BC8 800A3FC8 AC8B0000 */ sw $t3, ($a0) +/* 0A4BCC 800A3FCC 240DFFFF */ li $t5, -1 +/* 0A4BD0 800A3FD0 3C078012 */ lui $a3, %hi(D_80126D08) # $a3, 0x8012 +/* 0A4BD4 800A3FD4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A4BD8 800A3FD8 AC4D0004 */ sw $t5, 4($v0) +/* 0A4BDC 800A3FDC AC4C0000 */ sw $t4, ($v0) +/* 0A4BE0 800A3FE0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A4BE4 800A3FE4 24E76D08 */ addiu $a3, %lo(D_80126D08) # addiu $a3, $a3, 0x6d08 +/* 0A4BE8 800A3FE8 8CEF0000 */ lw $t7, ($a3) +/* 0A4BEC 800A3FEC 8D0E0000 */ lw $t6, ($t0) +/* 0A4BF0 800A3FF0 8FB9005C */ lw $t9, 0x5c($sp) +/* 0A4BF4 800A3FF4 01CF2821 */ addu $a1, $t6, $t7 +/* 0A4BF8 800A3FF8 80B8019A */ lb $t8, 0x19a($a1) +/* 0A4BFC 800A3FFC 3C0E8012 */ lui $t6, %hi(D_80126CD4) # $t6, 0x8012 +/* 0A4C00 800A4000 03195021 */ addu $t2, $t8, $t9 +/* 0A4C04 800A4004 A0AA019A */ sb $t2, 0x19a($a1) +/* 0A4C08 800A4008 8CEB0000 */ lw $t3, ($a3) +/* 0A4C0C 800A400C 8D060000 */ lw $a2, ($t0) +/* 0A4C10 800A4010 00000000 */ nop +/* 0A4C14 800A4014 00CB6021 */ addu $t4, $a2, $t3 +/* 0A4C18 800A4018 818D019A */ lb $t5, 0x19a($t4) +/* 0A4C1C 800A401C 00000000 */ nop +/* 0A4C20 800A4020 29A1003C */ slti $at, $t5, 0x3c +/* 0A4C24 800A4024 14200025 */ bnez $at, .L800A40BC +/* 0A4C28 800A4028 00000000 */ nop +/* 0A4C2C 800A402C 81CE6CD4 */ lb $t6, %lo(D_80126CD4)($t6) +/* 0A4C30 800A4030 24010004 */ li $at, 4 +/* 0A4C34 800A4034 15C1001A */ bne $t6, $at, .L800A40A0 +/* 0A4C38 800A4038 8FB9005C */ lw $t9, 0x5c($sp) +/* 0A4C3C 800A403C 0C019884 */ jal get_viewport_count +/* 0A4C40 800A4040 00000000 */ nop +/* 0A4C44 800A4044 28410002 */ slti $at, $v0, 2 +/* 0A4C48 800A4048 14200006 */ bnez $at, .L800A4064 +/* 0A4C4C 800A404C 3C013F80 */ lui $at, 0x3f80 +/* 0A4C50 800A4050 0C0002CD */ jal play_music +/* 0A4C54 800A4054 00002025 */ move $a0, $zero +/* 0A4C58 800A4058 10000006 */ b .L800A4074 +/* 0A4C5C 800A405C 24040016 */ li $a0, 22 +/* 0A4C60 800A4060 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L800A4064: +/* 0A4C64 800A4064 44816000 */ mtc1 $at, $f12 +/* 0A4C68 800A4068 0C01AF44 */ jal func_8006BD10 +/* 0A4C6C 800A406C 00000000 */ nop +/* 0A4C70 800A4070 24040016 */ li $a0, 22 +.L800A4074: +/* 0A4C74 800A4074 0C000741 */ jal play_sound_global +/* 0A4C78 800A4078 00002825 */ move $a1, $zero +/* 0A4C7C 800A407C 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 +/* 0A4C80 800A4080 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 +/* 0A4C84 800A4084 804F0000 */ lb $t7, ($v0) +/* 0A4C88 800A4088 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 +/* 0A4C8C 800A408C 25F80001 */ addiu $t8, $t7, 1 +/* 0A4C90 800A4090 A0580000 */ sb $t8, ($v0) +/* 0A4C94 800A4094 8CC66CDC */ lw $a2, %lo(D_80126CDC)($a2) +/* 0A4C98 800A4098 00000000 */ nop +/* 0A4C9C 800A409C 8FB9005C */ lw $t9, 0x5c($sp) +.L800A40A0: +/* 0A4CA0 800A40A0 C4C8018C */ lwc1 $f8, 0x18c($a2) +/* 0A4CA4 800A40A4 001950C0 */ sll $t2, $t9, 3 +/* 0A4CA8 800A40A8 448A5000 */ mtc1 $t2, $f10 +/* 0A4CAC 800A40AC 00000000 */ nop +/* 0A4CB0 800A40B0 46805420 */ cvt.s.w $f16, $f10 +/* 0A4CB4 800A40B4 46104101 */ sub.s $f4, $f8, $f16 +/* 0A4CB8 800A40B8 E4C4018C */ swc1 $f4, 0x18c($a2) +.L800A40BC: +/* 0A4CBC 800A40BC 3C0B8012 */ lui $t3, %hi(D_80126CD4) # $t3, 0x8012 +/* 0A4CC0 800A40C0 816B6CD4 */ lb $t3, %lo(D_80126CD4)($t3) +/* 0A4CC4 800A40C4 24010003 */ li $at, 3 +/* 0A4CC8 800A40C8 1561001C */ bne $t3, $at, .L800A413C +/* 0A4CCC 800A40CC 24040019 */ li $a0, 25 +/* 0A4CD0 800A40D0 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A4CD4 800A40D4 0C000741 */ jal play_sound_global +/* 0A4CD8 800A40D8 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A4CDC 800A40DC 0C006D90 */ jal func_8001B640 +/* 0A4CE0 800A40E0 00000000 */ nop +/* 0A4CE4 800A40E4 1040000D */ beqz $v0, .L800A411C +/* 0A4CE8 800A40E8 00000000 */ nop +/* 0A4CEC 800A40EC 0C006D94 */ jal func_8001B650 +/* 0A4CF0 800A40F0 00000000 */ nop +/* 0A4CF4 800A40F4 14400009 */ bnez $v0, .L800A411C +/* 0A4CF8 800A40F8 2404024B */ li $a0, 587 +/* 0A4CFC 800A40FC 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 +/* 0A4D00 800A4100 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a +/* 0A4D04 800A4104 0C029D21 */ jal func_800A7484 +/* 0A4D08 800A4108 00003025 */ move $a2, $zero +/* 0A4D0C 800A410C 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 +/* 0A4D10 800A4110 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a +/* 0A4D14 800A4114 0C030C56 */ jal func_800C3158 +/* 0A4D18 800A4118 24040052 */ li $a0, 82 +.L800A411C: +/* 0A4D1C 800A411C 3C0D8012 */ lui $t5, %hi(D_80126CD4) # $t5, 0x8012 +/* 0A4D20 800A4120 81AD6CD4 */ lb $t5, %lo(D_80126CD4)($t5) +/* 0A4D24 800A4124 240C0001 */ li $t4, 1 +/* 0A4D28 800A4128 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 +/* 0A4D2C 800A412C A02C6D70 */ sb $t4, %lo(D_80126D70)($at) +/* 0A4D30 800A4130 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 +/* 0A4D34 800A4134 25AE0001 */ addiu $t6, $t5, 1 +/* 0A4D38 800A4138 A02E6CD4 */ sb $t6, %lo(D_80126CD4)($at) +.L800A413C: +/* 0A4D3C 800A413C 0C01EFC7 */ jal func_8007BF1C +/* 0A4D40 800A4140 00002025 */ move $a0, $zero +.L800A4144: +/* 0A4D44 800A4144 8FBF0024 */ lw $ra, 0x24($sp) +/* 0A4D48 800A4148 27BD0058 */ addiu $sp, $sp, 0x58 +/* 0A4D4C 800A414C 03E00008 */ jr $ra +/* 0A4D50 800A4150 00000000 */ nop + diff --git a/asm/non_matchings/game_ui/func_800A4154.s b/asm/non_matchings/game_ui/func_800A4154.s index fee7b60c..d5dba3b4 100644 --- a/asm/non_matchings/game_ui/func_800A4154.s +++ b/asm/non_matchings/game_ui/func_800A4154.s @@ -7,8 +7,8 @@ glabel func_800A4154 /* 0A4D68 800A4168 84820000 */ lh $v0, ($a0) /* 0A4D6C 800A416C 2401FFFF */ li $at, -1 /* 0A4D70 800A4170 1041002B */ beq $v0, $at, .L800A4220 -/* 0A4D74 800A4174 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A4D78 800A4178 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A4D74 800A4174 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 +/* 0A4D78 800A4178 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) /* 0A4D7C 800A417C 3C19800E */ lui $t9, %hi(D_800E2794) # $t9, 0x800e /* 0A4D80 800A4180 1860000F */ blez $v1, .L800A41C0 /* 0A4D84 800A4184 00037880 */ sll $t7, $v1, 2 @@ -56,10 +56,10 @@ glabel func_800A4154 /* 0A4E24 800A4224 26106CDC */ addiu $s0, %lo(D_80126CDC) # addiu $s0, $s0, 0x6cdc /* 0A4E28 800A4228 8E070000 */ lw $a3, ($s0) /* 0A4E2C 800A422C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4E30 800A4230 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4E34 800A4234 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4E38 800A4238 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4E3C 800A423C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4E30 800A4230 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A4E34 800A4234 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4E38 800A4238 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A4E3C 800A423C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A4E40 800A4240 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A4E44 800A4244 0C02A980 */ jal func_800AA600 /* 0A4E48 800A4248 24E70240 */ addiu $a3, $a3, 0x240 @@ -127,10 +127,10 @@ glabel func_800A4154 /* 0A4F38 800A4338 24040001 */ li $a0, 1 /* 0A4F3C 800A433C 8E070000 */ lw $a3, ($s0) /* 0A4F40 800A4340 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A4F44 800A4344 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4F48 800A4348 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4F4C 800A434C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4F50 800A4350 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4F44 800A4344 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A4F48 800A4348 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A4F4C 800A434C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A4F50 800A4350 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A4F54 800A4354 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A4F58 800A4358 0C02A980 */ jal func_800AA600 /* 0A4F5C 800A435C 24E70360 */ addiu $a3, $a3, 0x360 @@ -181,10 +181,10 @@ glabel func_800A4154 /* 0A5008 800A4408 24040001 */ li $a0, 1 /* 0A500C 800A440C 8E070000 */ lw $a3, ($s0) /* 0A5010 800A4410 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5014 800A4414 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5018 800A4418 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A501C 800A441C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5020 800A4420 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5014 800A4414 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5018 800A4418 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A501C 800A441C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5020 800A4420 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A5024 800A4424 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A5028 800A4428 0C02A980 */ jal func_800AA600 /* 0A502C 800A442C 24E70380 */ addiu $a3, $a3, 0x380 @@ -205,10 +205,10 @@ glabel func_800A4154 /* 0A5064 800A4464 24040001 */ li $a0, 1 /* 0A5068 800A4468 8E070000 */ lw $a3, ($s0) /* 0A506C 800A446C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5070 800A4470 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5074 800A4474 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5078 800A4478 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A507C 800A447C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5070 800A4470 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5074 800A4474 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A5078 800A4478 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A507C 800A447C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A5080 800A4480 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A5084 800A4484 0C02A980 */ jal func_800AA600 /* 0A5088 800A4488 24E700E0 */ addiu $a3, $a3, 0xe0 @@ -259,10 +259,10 @@ glabel func_800A4154 /* 0A512C 800A452C 0006000D */ break 6 .L800A4530: /* 0A5130 800A4530 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5134 800A4534 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5138 800A4538 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A513C 800A453C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5140 800A4540 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5134 800A4534 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5138 800A4538 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A513C 800A453C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5140 800A4540 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A5144 800A4544 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A5148 800A4548 0000C010 */ mfhi $t8 /* 0A514C 800A454C A7380138 */ sh $t8, 0x138($t9) @@ -290,10 +290,10 @@ glabel func_800A4154 /* 0A5198 800A4598 8E070000 */ lw $a3, ($s0) .L800A459C: /* 0A519C 800A459C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A51A0 800A45A0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A51A4 800A45A4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A51A8 800A45A8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A51AC 800A45AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A51A0 800A45A0 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A51A4 800A45A4 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A51A8 800A45A8 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A51AC 800A45AC 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A51B0 800A45B0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A51B4 800A45B4 0C02A980 */ jal func_800AA600 /* 0A51B8 800A45B8 24E70100 */ addiu $a3, $a3, 0x100 diff --git a/asm/non_matchings/game_ui/func_800A45F0.s b/asm/non_matchings/game_ui/func_800A45F0.s index 308a5732..ad6326b7 100644 --- a/asm/non_matchings/game_ui/func_800A45F0.s +++ b/asm/non_matchings/game_ui/func_800A45F0.s @@ -45,11 +45,11 @@ glabel func_800A45F0 /* 0A5298 800A4698 26526CD5 */ addiu $s2, %lo(D_80126CD5) # addiu $s2, $s2, 0x6cd5 /* 0A529C 800A469C 241E0001 */ li $fp, 1 /* 0A52A0 800A46A0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A52A4 800A46A4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A52A8 800A46A8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A52A4 800A46A4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A52A8 800A46A8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 /* 0A52AC 800A46AC A25E0000 */ sb $fp, ($s2) -/* 0A52B0 800A46B0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A52B4 800A46B4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A52B0 800A46B0 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A52B4 800A46B4 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A52B8 800A46B8 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A52BC 800A46BC 0C02A980 */ jal func_800AA600 /* 0A52C0 800A46C0 24E70640 */ addiu $a3, $a3, 0x640 @@ -74,11 +74,11 @@ glabel func_800A45F0 /* 0A5304 800A4704 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 /* 0A5308 800A4708 AEB30000 */ sw $s3, ($s5) .L800A470C: -/* 0A530C 800A470C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5310 800A4710 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A530C 800A470C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5310 800A4710 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 /* 0A5314 800A4714 A25E0000 */ sb $fp, ($s2) -/* 0A5318 800A4718 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A531C 800A471C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5318 800A4718 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A531C 800A471C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A5320 800A4720 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A5324 800A4724 0C02A980 */ jal func_800AA600 /* 0A5328 800A4728 26270400 */ addiu $a3, $s1, 0x400 diff --git a/asm/non_matchings/game_ui/func_800A47A0.s b/asm/non_matchings/game_ui/func_800A47A0.s index 0d5a37e2..fcd61f4d 100644 --- a/asm/non_matchings/game_ui/func_800A47A0.s +++ b/asm/non_matchings/game_ui/func_800A47A0.s @@ -1,126 +1,126 @@ -glabel func_800A47A0 -/* 0A53A0 800A47A0 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0A53A4 800A47A4 AFBE0038 */ sw $fp, 0x38($sp) -/* 0A53A8 800A47A8 444EF800 */ cfc1 $t6, $31 -/* 0A53AC 800A47AC 3C1E8012 */ lui $fp, %hi(D_80126CDC) # $fp, 0x8012 -/* 0A53B0 800A47B0 27DE6CDC */ addiu $fp, %lo(D_80126CDC) # addiu $fp, $fp, 0x6cdc -/* 0A53B4 800A47B4 AFB1001C */ sw $s1, 0x1c($sp) -/* 0A53B8 800A47B8 8FD10000 */ lw $s1, ($fp) -/* 0A53BC 800A47BC 35C10003 */ ori $at, $t6, 3 -/* 0A53C0 800A47C0 AFBF003C */ sw $ra, 0x3c($sp) -/* 0A53C4 800A47C4 AFB70034 */ sw $s7, 0x34($sp) -/* 0A53C8 800A47C8 AFB60030 */ sw $s6, 0x30($sp) -/* 0A53CC 800A47CC AFB5002C */ sw $s5, 0x2c($sp) -/* 0A53D0 800A47D0 AFB40028 */ sw $s4, 0x28($sp) -/* 0A53D4 800A47D4 AFB30024 */ sw $s3, 0x24($sp) -/* 0A53D8 800A47D8 AFB20020 */ sw $s2, 0x20($sp) -/* 0A53DC 800A47DC AFB00018 */ sw $s0, 0x18($sp) -/* 0A53E0 800A47E0 AFA5004C */ sw $a1, 0x4c($sp) -/* 0A53E4 800A47E4 38210002 */ xori $at, $at, 2 -/* 0A53E8 800A47E8 44C1F800 */ ctc1 $at, $31 -/* 0A53EC 800A47EC C62405D0 */ lwc1 $f4, 0x5d0($s1) -/* 0A53F0 800A47F0 3C128080 */ lui $s2, (0x80808080 >> 16) # lui $s2, 0x8080 -/* 0A53F4 800A47F4 460021A4 */ cvt.w.s $f6, $f4 -/* 0A53F8 800A47F8 3C138012 */ lui $s3, %hi(gHUDCurrDisplayList) # $s3, 0x8012 -/* 0A53FC 800A47FC 440F3000 */ mfc1 $t7, $f6 -/* 0A5400 800A4800 44CEF800 */ ctc1 $t6, $31 -/* 0A5404 800A4804 448F4000 */ mtc1 $t7, $f8 -/* 0A5408 800A4808 3C148012 */ lui $s4, %hi(D_80126D00) # $s4, 0x8012 -/* 0A540C 800A480C 468042A0 */ cvt.s.w $f10, $f8 -/* 0A5410 800A4810 3C158012 */ lui $s5, %hi(D_80126D04) # $s5, 0x8012 -/* 0A5414 800A4814 0080B025 */ move $s6, $a0 -/* 0A5418 800A4818 4459F800 */ cfc1 $t9, $31 -/* 0A541C 800A481C E62A05D0 */ swc1 $f10, 0x5d0($s1) -/* 0A5420 800A4820 8FD80000 */ lw $t8, ($fp) -/* 0A5424 800A4824 37210003 */ ori $at, $t9, 3 -/* 0A5428 800A4828 38210002 */ xori $at, $at, 2 -/* 0A542C 800A482C 44C1F800 */ ctc1 $at, $31 -/* 0A5430 800A4830 C71005D0 */ lwc1 $f16, 0x5d0($t8) -/* 0A5434 800A4834 26B56D04 */ addiu $s5, %lo(D_80126D04) # addiu $s5, $s5, 0x6d04 -/* 0A5438 800A4838 460084A4 */ cvt.w.s $f18, $f16 -/* 0A543C 800A483C 26946D00 */ addiu $s4, %lo(D_80126D00) # addiu $s4, $s4, 0x6d00 -/* 0A5440 800A4840 44089000 */ mfc1 $t0, $f18 -/* 0A5444 800A4844 44D9F800 */ ctc1 $t9, $31 -/* 0A5448 800A4848 26736CFC */ addiu $s3, %lo(gHUDCurrDisplayList) # addiu $s3, $s3, 0x6cfc -/* 0A544C 800A484C 36528080 */ ori $s2, (0x80808080 & 0xFFFF) # ori $s2, $s2, 0x8080 -/* 0A5450 800A4850 00008025 */ move $s0, $zero -/* 0A5454 800A4854 24170008 */ li $s7, 8 -/* 0A5458 800A4858 AFA80040 */ sw $t0, 0x40($sp) -.L800A485C: -/* 0A545C 800A485C 82C90202 */ lb $t1, 0x202($s6) -/* 0A5460 800A4860 8FD10000 */ lw $s1, ($fp) -/* 0A5464 800A4864 0209082A */ slt $at, $s0, $t1 -/* 0A5468 800A4868 14200003 */ bnez $at, .L800A4878 -/* 0A546C 800A486C 02602025 */ move $a0, $s3 -/* 0A5470 800A4870 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A5474 800A4874 AC322834 */ sw $s2, %lo(D_800E2834)($at) -.L800A4878: -/* 0A5478 800A4878 02802825 */ move $a1, $s4 -/* 0A547C 800A487C 02A03025 */ move $a2, $s5 -/* 0A5480 800A4880 0C02A980 */ jal func_800AA600 -/* 0A5484 800A4884 262705C0 */ addiu $a3, $s1, 0x5c0 -/* 0A5488 800A4888 8FD10000 */ lw $s1, ($fp) -/* 0A548C 800A488C 26100001 */ addiu $s0, $s0, 1 -/* 0A5490 800A4890 822A05DC */ lb $t2, 0x5dc($s1) -/* 0A5494 800A4894 C62405D0 */ lwc1 $f4, 0x5d0($s1) -/* 0A5498 800A4898 448A3000 */ mtc1 $t2, $f6 -/* 0A549C 800A489C 00000000 */ nop -/* 0A54A0 800A48A0 46803220 */ cvt.s.w $f8, $f6 -/* 0A54A4 800A48A4 46082281 */ sub.s $f10, $f4, $f8 -/* 0A54A8 800A48A8 1617FFEC */ bne $s0, $s7, .L800A485C -/* 0A54AC 800A48AC E62A05D0 */ swc1 $f10, 0x5d0($s1) -/* 0A54B0 800A48B0 82CB0202 */ lb $t3, 0x202($s6) -/* 0A54B4 800A48B4 00000000 */ nop -/* 0A54B8 800A48B8 16EB001D */ bne $s7, $t3, .L800A4930 -/* 0A54BC 800A48BC 8FA80040 */ lw $t0, 0x40($sp) -/* 0A54C0 800A48C0 8FD10000 */ lw $s1, ($fp) -/* 0A54C4 800A48C4 8FAC004C */ lw $t4, 0x4c($sp) -/* 0A54C8 800A48C8 822205DB */ lb $v0, 0x5db($s1) -/* 0A54CC 800A48CC 00000000 */ nop -/* 0A54D0 800A48D0 2841001E */ slti $at, $v0, 0x1e -/* 0A54D4 800A48D4 10200004 */ beqz $at, .L800A48E8 -/* 0A54D8 800A48D8 004C6821 */ addu $t5, $v0, $t4 -/* 0A54DC 800A48DC A22D05DB */ sb $t5, 0x5db($s1) -/* 0A54E0 800A48E0 8FD10000 */ lw $s1, ($fp) -/* 0A54E4 800A48E4 00000000 */ nop -.L800A48E8: -/* 0A54E8 800A48E8 822E05DA */ lb $t6, 0x5da($s1) -/* 0A54EC 800A48EC 00000000 */ nop -/* 0A54F0 800A48F0 15C0000F */ bnez $t6, .L800A4930 -/* 0A54F4 800A48F4 8FA80040 */ lw $t0, 0x40($sp) -/* 0A54F8 800A48F8 822F05DB */ lb $t7, 0x5db($s1) -/* 0A54FC 800A48FC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A5500 800A4900 29E1001E */ slti $at, $t7, 0x1e -/* 0A5504 800A4904 14200009 */ bnez $at, .L800A492C -/* 0A5508 800A4908 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A550C 800A490C 24180001 */ li $t8, 1 -/* 0A5510 800A4910 A23805DA */ sb $t8, 0x5da($s1) -/* 0A5514 800A4914 8CB90000 */ lw $t9, ($a1) -/* 0A5518 800A4918 00000000 */ nop -/* 0A551C 800A491C 17200004 */ bnez $t9, .L800A4930 -/* 0A5520 800A4920 8FA80040 */ lw $t0, 0x40($sp) -/* 0A5524 800A4924 0C000741 */ jal play_sound_global -/* 0A5528 800A4928 24040147 */ li $a0, 327 -.L800A492C: -/* 0A552C 800A492C 8FA80040 */ lw $t0, 0x40($sp) -.L800A4930: -/* 0A5530 800A4930 8FC90000 */ lw $t1, ($fp) -/* 0A5534 800A4934 44888000 */ mtc1 $t0, $f16 -/* 0A5538 800A4938 240AFFFE */ li $t2, -2 -/* 0A553C 800A493C 468084A0 */ cvt.s.w $f18, $f16 -/* 0A5540 800A4940 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A5544 800A4944 E53205D0 */ swc1 $f18, 0x5d0($t1) -/* 0A5548 800A4948 8FBF003C */ lw $ra, 0x3c($sp) -/* 0A554C 800A494C 8FBE0038 */ lw $fp, 0x38($sp) -/* 0A5550 800A4950 8FB70034 */ lw $s7, 0x34($sp) -/* 0A5554 800A4954 8FB60030 */ lw $s6, 0x30($sp) -/* 0A5558 800A4958 8FB5002C */ lw $s5, 0x2c($sp) -/* 0A555C 800A495C 8FB40028 */ lw $s4, 0x28($sp) -/* 0A5560 800A4960 8FB30024 */ lw $s3, 0x24($sp) -/* 0A5564 800A4964 8FB20020 */ lw $s2, 0x20($sp) -/* 0A5568 800A4968 8FB1001C */ lw $s1, 0x1c($sp) -/* 0A556C 800A496C 8FB00018 */ lw $s0, 0x18($sp) -/* 0A5570 800A4970 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) -/* 0A5574 800A4974 03E00008 */ jr $ra -/* 0A5578 800A4978 27BD0048 */ addiu $sp, $sp, 0x48 - +glabel func_800A47A0 +/* 0A53A0 800A47A0 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0A53A4 800A47A4 AFBE0038 */ sw $fp, 0x38($sp) +/* 0A53A8 800A47A8 444EF800 */ cfc1 $t6, $31 +/* 0A53AC 800A47AC 3C1E8012 */ lui $fp, %hi(D_80126CDC) # $fp, 0x8012 +/* 0A53B0 800A47B0 27DE6CDC */ addiu $fp, %lo(D_80126CDC) # addiu $fp, $fp, 0x6cdc +/* 0A53B4 800A47B4 AFB1001C */ sw $s1, 0x1c($sp) +/* 0A53B8 800A47B8 8FD10000 */ lw $s1, ($fp) +/* 0A53BC 800A47BC 35C10003 */ ori $at, $t6, 3 +/* 0A53C0 800A47C0 AFBF003C */ sw $ra, 0x3c($sp) +/* 0A53C4 800A47C4 AFB70034 */ sw $s7, 0x34($sp) +/* 0A53C8 800A47C8 AFB60030 */ sw $s6, 0x30($sp) +/* 0A53CC 800A47CC AFB5002C */ sw $s5, 0x2c($sp) +/* 0A53D0 800A47D0 AFB40028 */ sw $s4, 0x28($sp) +/* 0A53D4 800A47D4 AFB30024 */ sw $s3, 0x24($sp) +/* 0A53D8 800A47D8 AFB20020 */ sw $s2, 0x20($sp) +/* 0A53DC 800A47DC AFB00018 */ sw $s0, 0x18($sp) +/* 0A53E0 800A47E0 AFA5004C */ sw $a1, 0x4c($sp) +/* 0A53E4 800A47E4 38210002 */ xori $at, $at, 2 +/* 0A53E8 800A47E8 44C1F800 */ ctc1 $at, $31 +/* 0A53EC 800A47EC C62405D0 */ lwc1 $f4, 0x5d0($s1) +/* 0A53F0 800A47F0 3C128080 */ lui $s2, (0x80808080 >> 16) # lui $s2, 0x8080 +/* 0A53F4 800A47F4 460021A4 */ cvt.w.s $f6, $f4 +/* 0A53F8 800A47F8 3C138012 */ lui $s3, %hi(gHUDCurrDisplayList) # $s3, 0x8012 +/* 0A53FC 800A47FC 440F3000 */ mfc1 $t7, $f6 +/* 0A5400 800A4800 44CEF800 */ ctc1 $t6, $31 +/* 0A5404 800A4804 448F4000 */ mtc1 $t7, $f8 +/* 0A5408 800A4808 3C148012 */ lui $s4, %hi(gHUDCurrMatrix) # $s4, 0x8012 +/* 0A540C 800A480C 468042A0 */ cvt.s.w $f10, $f8 +/* 0A5410 800A4810 3C158012 */ lui $s5, %hi(gHUDCurrTriList) # $s5, 0x8012 +/* 0A5414 800A4814 0080B025 */ move $s6, $a0 +/* 0A5418 800A4818 4459F800 */ cfc1 $t9, $31 +/* 0A541C 800A481C E62A05D0 */ swc1 $f10, 0x5d0($s1) +/* 0A5420 800A4820 8FD80000 */ lw $t8, ($fp) +/* 0A5424 800A4824 37210003 */ ori $at, $t9, 3 +/* 0A5428 800A4828 38210002 */ xori $at, $at, 2 +/* 0A542C 800A482C 44C1F800 */ ctc1 $at, $31 +/* 0A5430 800A4830 C71005D0 */ lwc1 $f16, 0x5d0($t8) +/* 0A5434 800A4834 26B56D04 */ addiu $s5, %lo(gHUDCurrTriList) # addiu $s5, $s5, 0x6d04 +/* 0A5438 800A4838 460084A4 */ cvt.w.s $f18, $f16 +/* 0A543C 800A483C 26946D00 */ addiu $s4, %lo(gHUDCurrMatrix) # addiu $s4, $s4, 0x6d00 +/* 0A5440 800A4840 44089000 */ mfc1 $t0, $f18 +/* 0A5444 800A4844 44D9F800 */ ctc1 $t9, $31 +/* 0A5448 800A4848 26736CFC */ addiu $s3, %lo(gHUDCurrDisplayList) # addiu $s3, $s3, 0x6cfc +/* 0A544C 800A484C 36528080 */ ori $s2, (0x80808080 & 0xFFFF) # ori $s2, $s2, 0x8080 +/* 0A5450 800A4850 00008025 */ move $s0, $zero +/* 0A5454 800A4854 24170008 */ li $s7, 8 +/* 0A5458 800A4858 AFA80040 */ sw $t0, 0x40($sp) +.L800A485C: +/* 0A545C 800A485C 82C90202 */ lb $t1, 0x202($s6) +/* 0A5460 800A4860 8FD10000 */ lw $s1, ($fp) +/* 0A5464 800A4864 0209082A */ slt $at, $s0, $t1 +/* 0A5468 800A4868 14200003 */ bnez $at, .L800A4878 +/* 0A546C 800A486C 02602025 */ move $a0, $s3 +/* 0A5470 800A4870 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A5474 800A4874 AC322834 */ sw $s2, %lo(D_800E2834)($at) +.L800A4878: +/* 0A5478 800A4878 02802825 */ move $a1, $s4 +/* 0A547C 800A487C 02A03025 */ move $a2, $s5 +/* 0A5480 800A4880 0C02A980 */ jal func_800AA600 +/* 0A5484 800A4884 262705C0 */ addiu $a3, $s1, 0x5c0 +/* 0A5488 800A4888 8FD10000 */ lw $s1, ($fp) +/* 0A548C 800A488C 26100001 */ addiu $s0, $s0, 1 +/* 0A5490 800A4890 822A05DC */ lb $t2, 0x5dc($s1) +/* 0A5494 800A4894 C62405D0 */ lwc1 $f4, 0x5d0($s1) +/* 0A5498 800A4898 448A3000 */ mtc1 $t2, $f6 +/* 0A549C 800A489C 00000000 */ nop +/* 0A54A0 800A48A0 46803220 */ cvt.s.w $f8, $f6 +/* 0A54A4 800A48A4 46082281 */ sub.s $f10, $f4, $f8 +/* 0A54A8 800A48A8 1617FFEC */ bne $s0, $s7, .L800A485C +/* 0A54AC 800A48AC E62A05D0 */ swc1 $f10, 0x5d0($s1) +/* 0A54B0 800A48B0 82CB0202 */ lb $t3, 0x202($s6) +/* 0A54B4 800A48B4 00000000 */ nop +/* 0A54B8 800A48B8 16EB001D */ bne $s7, $t3, .L800A4930 +/* 0A54BC 800A48BC 8FA80040 */ lw $t0, 0x40($sp) +/* 0A54C0 800A48C0 8FD10000 */ lw $s1, ($fp) +/* 0A54C4 800A48C4 8FAC004C */ lw $t4, 0x4c($sp) +/* 0A54C8 800A48C8 822205DB */ lb $v0, 0x5db($s1) +/* 0A54CC 800A48CC 00000000 */ nop +/* 0A54D0 800A48D0 2841001E */ slti $at, $v0, 0x1e +/* 0A54D4 800A48D4 10200004 */ beqz $at, .L800A48E8 +/* 0A54D8 800A48D8 004C6821 */ addu $t5, $v0, $t4 +/* 0A54DC 800A48DC A22D05DB */ sb $t5, 0x5db($s1) +/* 0A54E0 800A48E0 8FD10000 */ lw $s1, ($fp) +/* 0A54E4 800A48E4 00000000 */ nop +.L800A48E8: +/* 0A54E8 800A48E8 822E05DA */ lb $t6, 0x5da($s1) +/* 0A54EC 800A48EC 00000000 */ nop +/* 0A54F0 800A48F0 15C0000F */ bnez $t6, .L800A4930 +/* 0A54F4 800A48F4 8FA80040 */ lw $t0, 0x40($sp) +/* 0A54F8 800A48F8 822F05DB */ lb $t7, 0x5db($s1) +/* 0A54FC 800A48FC 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A5500 800A4900 29E1001E */ slti $at, $t7, 0x1e +/* 0A5504 800A4904 14200009 */ bnez $at, .L800A492C +/* 0A5508 800A4908 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A550C 800A490C 24180001 */ li $t8, 1 +/* 0A5510 800A4910 A23805DA */ sb $t8, 0x5da($s1) +/* 0A5514 800A4914 8CB90000 */ lw $t9, ($a1) +/* 0A5518 800A4918 00000000 */ nop +/* 0A551C 800A491C 17200004 */ bnez $t9, .L800A4930 +/* 0A5520 800A4920 8FA80040 */ lw $t0, 0x40($sp) +/* 0A5524 800A4924 0C000741 */ jal play_sound_global +/* 0A5528 800A4928 24040147 */ li $a0, 327 +.L800A492C: +/* 0A552C 800A492C 8FA80040 */ lw $t0, 0x40($sp) +.L800A4930: +/* 0A5530 800A4930 8FC90000 */ lw $t1, ($fp) +/* 0A5534 800A4934 44888000 */ mtc1 $t0, $f16 +/* 0A5538 800A4938 240AFFFE */ li $t2, -2 +/* 0A553C 800A493C 468084A0 */ cvt.s.w $f18, $f16 +/* 0A5540 800A4940 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A5544 800A4944 E53205D0 */ swc1 $f18, 0x5d0($t1) +/* 0A5548 800A4948 8FBF003C */ lw $ra, 0x3c($sp) +/* 0A554C 800A494C 8FBE0038 */ lw $fp, 0x38($sp) +/* 0A5550 800A4950 8FB70034 */ lw $s7, 0x34($sp) +/* 0A5554 800A4954 8FB60030 */ lw $s6, 0x30($sp) +/* 0A5558 800A4958 8FB5002C */ lw $s5, 0x2c($sp) +/* 0A555C 800A495C 8FB40028 */ lw $s4, 0x28($sp) +/* 0A5560 800A4960 8FB30024 */ lw $s3, 0x24($sp) +/* 0A5564 800A4964 8FB20020 */ lw $s2, 0x20($sp) +/* 0A5568 800A4968 8FB1001C */ lw $s1, 0x1c($sp) +/* 0A556C 800A496C 8FB00018 */ lw $s0, 0x18($sp) +/* 0A5570 800A4970 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) +/* 0A5574 800A4974 03E00008 */ jr $ra +/* 0A5578 800A4978 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/game_ui/func_800A497C.s b/asm/non_matchings/game_ui/func_800A497C.s index 09f7c1c6..ae07738b 100644 --- a/asm/non_matchings/game_ui/func_800A497C.s +++ b/asm/non_matchings/game_ui/func_800A497C.s @@ -1,186 +1,186 @@ -glabel func_800A497C -/* 0A557C 800A497C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A5580 800A4980 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A5584 800A4984 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A5588 800A4988 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A558C 800A498C AFB00018 */ sw $s0, 0x18($sp) -/* 0A5590 800A4990 AFA40030 */ sw $a0, 0x30($sp) -/* 0A5594 800A4994 A3A00027 */ sb $zero, 0x27($sp) -/* 0A5598 800A4998 24470700 */ addiu $a3, $v0, 0x700 -/* 0A559C 800A499C 80E3001A */ lb $v1, 0x1a($a3) -/* 0A55A0 800A49A0 24040018 */ li $a0, 24 -/* 0A55A4 800A49A4 1060000B */ beqz $v1, .L800A49D4 -/* 0A55A8 800A49A8 24500740 */ addiu $s0, $v0, 0x740 -/* 0A55AC 800A49AC 24010001 */ li $at, 1 -/* 0A55B0 800A49B0 1061001F */ beq $v1, $at, .L800A4A30 -/* 0A55B4 800A49B4 24020002 */ li $v0, 2 -/* 0A55B8 800A49B8 1062005F */ beq $v1, $v0, .L800A4B38 -/* 0A55BC 800A49BC 00055880 */ sll $t3, $a1, 2 -/* 0A55C0 800A49C0 24020003 */ li $v0, 3 -/* 0A55C4 800A49C4 10620074 */ beq $v1, $v0, .L800A4B98 -/* 0A55C8 800A49C8 00000000 */ nop -/* 0A55CC 800A49CC 10000074 */ b .L800A4BA0 -/* 0A55D0 800A49D0 83AD0027 */ lb $t5, 0x27($sp) -.L800A49D4: -/* 0A55D4 800A49D4 0C0002F8 */ jal set_music_player_voice_limit -/* 0A55D8 800A49D8 AFA7002C */ sw $a3, 0x2c($sp) -/* 0A55DC 800A49DC 0C0002CD */ jal play_music -/* 0A55E0 800A49E0 24040019 */ li $a0, 25 -/* 0A55E4 800A49E4 24040016 */ li $a0, 22 -/* 0A55E8 800A49E8 0C000741 */ jal play_sound_global -/* 0A55EC 800A49EC 00002825 */ move $a1, $zero -/* 0A55F0 800A49F0 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A55F4 800A49F4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A55F8 800A49F8 0C000741 */ jal play_sound_global -/* 0A55FC 800A49FC 24040102 */ li $a0, 258 -/* 0A5600 800A4A00 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e -/* 0A5604 800A4A04 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 -/* 0A5608 800A4A08 8FAF0030 */ lw $t7, 0x30($sp) -/* 0A560C 800A4A0C 240E007F */ li $t6, 127 -/* 0A5610 800A4A10 A04E0002 */ sb $t6, 2($v0) -/* 0A5614 800A4A14 A0400003 */ sb $zero, 3($v0) -/* 0A5618 800A4A18 85F80000 */ lh $t8, ($t7) -/* 0A561C 800A4A1C 8FA7002C */ lw $a3, 0x2c($sp) -/* 0A5620 800A4A20 24190001 */ li $t9, 1 -/* 0A5624 800A4A24 A058000C */ sb $t8, 0xc($v0) -/* 0A5628 800A4A28 1000005C */ b .L800A4B9C -/* 0A562C 800A4A2C A0F9001A */ sb $t9, 0x1a($a3) -.L800A4A30: -/* 0A5630 800A4A30 00054080 */ sll $t0, $a1, 2 -/* 0A5634 800A4A34 01054023 */ subu $t0, $t0, $a1 -/* 0A5638 800A4A38 00084080 */ sll $t0, $t0, 2 -/* 0A563C 800A4A3C 01054021 */ addu $t0, $t0, $a1 -/* 0A5640 800A4A40 44882000 */ mtc1 $t0, $f4 -/* 0A5644 800A4A44 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 0A5648 800A4A48 46802020 */ cvt.s.w $f0, $f4 -/* 0A564C 800A4A4C 3C01C1B8 */ li $at, 0xC1B80000 # -23.000000 -/* 0A5650 800A4A50 44811000 */ mtc1 $at, $f2 -/* 0A5654 800A4A54 46003200 */ add.s $f8, $f6, $f0 -/* 0A5658 800A4A58 E4E8000C */ swc1 $f8, 0xc($a3) -/* 0A565C 800A4A5C C4EA000C */ lwc1 $f10, 0xc($a3) -/* 0A5660 800A4A60 00000000 */ nop -/* 0A5664 800A4A64 460A103C */ c.lt.s $f2, $f10 -/* 0A5668 800A4A68 00000000 */ nop -/* 0A566C 800A4A6C 45000002 */ bc1f .L800A4A78 -/* 0A5670 800A4A70 00000000 */ nop -/* 0A5674 800A4A74 E4E2000C */ swc1 $f2, 0xc($a3) -.L800A4A78: -/* 0A5678 800A4A78 C610000C */ lwc1 $f16, 0xc($s0) -/* 0A567C 800A4A7C 3C0141B0 */ li $at, 0x41B00000 # 22.000000 -/* 0A5680 800A4A80 46008481 */ sub.s $f18, $f16, $f0 -/* 0A5684 800A4A84 44816000 */ mtc1 $at, $f12 -/* 0A5688 800A4A88 E612000C */ swc1 $f18, 0xc($s0) -/* 0A568C 800A4A8C C602000C */ lwc1 $f2, 0xc($s0) -/* 0A5690 800A4A90 00000000 */ nop -/* 0A5694 800A4A94 460C103C */ c.lt.s $f2, $f12 -/* 0A5698 800A4A98 00000000 */ nop -/* 0A569C 800A4A9C 45000004 */ bc1f .L800A4AB0 -/* 0A56A0 800A4AA0 00000000 */ nop -/* 0A56A4 800A4AA4 E60C000C */ swc1 $f12, 0xc($s0) -/* 0A56A8 800A4AA8 C602000C */ lwc1 $f2, 0xc($s0) -/* 0A56AC 800A4AAC 00000000 */ nop -.L800A4AB0: -/* 0A56B0 800A4AB0 46026032 */ c.eq.s $f12, $f2 -/* 0A56B4 800A4AB4 24090001 */ li $t1, 1 -/* 0A56B8 800A4AB8 45000038 */ bc1f .L800A4B9C -/* 0A56BC 800A4ABC A3A90027 */ sb $t1, 0x27($sp) -/* 0A56C0 800A4AC0 80EA001B */ lb $t2, 0x1b($a3) -/* 0A56C4 800A4AC4 240DFF88 */ li $t5, -120 -/* 0A56C8 800A4AC8 01455821 */ addu $t3, $t2, $a1 -/* 0A56CC 800A4ACC A0EB001B */ sb $t3, 0x1b($a3) -/* 0A56D0 800A4AD0 80EC001B */ lb $t4, 0x1b($a3) -/* 0A56D4 800A4AD4 00002825 */ move $a1, $zero -/* 0A56D8 800A4AD8 29810078 */ slti $at, $t4, 0x78 -/* 0A56DC 800A4ADC 14200005 */ bnez $at, .L800A4AF4 -/* 0A56E0 800A4AE0 24040016 */ li $a0, 22 -/* 0A56E4 800A4AE4 80EE001C */ lb $t6, 0x1c($a3) -/* 0A56E8 800A4AE8 A0ED001B */ sb $t5, 0x1b($a3) -/* 0A56EC 800A4AEC 25CF0001 */ addiu $t7, $t6, 1 -/* 0A56F0 800A4AF0 A0EF001C */ sb $t7, 0x1c($a3) -.L800A4AF4: -/* 0A56F4 800A4AF4 80F8001C */ lb $t8, 0x1c($a3) -/* 0A56F8 800A4AF8 24020002 */ li $v0, 2 -/* 0A56FC 800A4AFC 14580028 */ bne $v0, $t8, .L800A4BA0 -/* 0A5700 800A4B00 83AD0027 */ lb $t5, 0x27($sp) -/* 0A5704 800A4B04 A0E2001A */ sb $v0, 0x1a($a3) -/* 0A5708 800A4B08 0C000741 */ jal play_sound_global -/* 0A570C 800A4B0C AFA7002C */ sw $a3, 0x2c($sp) -/* 0A5710 800A4B10 8FB90030 */ lw $t9, 0x30($sp) -/* 0A5714 800A4B14 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e -/* 0A5718 800A4B18 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 -/* 0A571C 800A4B1C 8049000C */ lb $t1, 0xc($v0) -/* 0A5720 800A4B20 87280000 */ lh $t0, ($t9) -/* 0A5724 800A4B24 8FA7002C */ lw $a3, 0x2c($sp) -/* 0A5728 800A4B28 1509001C */ bne $t0, $t1, .L800A4B9C -/* 0A572C 800A4B2C 240AFFFF */ li $t2, -1 -/* 0A5730 800A4B30 1000001A */ b .L800A4B9C -/* 0A5734 800A4B34 A04A0003 */ sb $t2, 3($v0) -.L800A4B38: -/* 0A5738 800A4B38 01655823 */ subu $t3, $t3, $a1 -/* 0A573C 800A4B3C 000B5880 */ sll $t3, $t3, 2 -/* 0A5740 800A4B40 01655821 */ addu $t3, $t3, $a1 -/* 0A5744 800A4B44 448B2000 */ mtc1 $t3, $f4 -/* 0A5748 800A4B48 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 0A574C 800A4B4C 46802020 */ cvt.s.w $f0, $f4 -/* 0A5750 800A4B50 240C0001 */ li $t4, 1 -/* 0A5754 800A4B54 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 0A5758 800A4B58 46003200 */ add.s $f8, $f6, $f0 -/* 0A575C 800A4B5C 44819000 */ mtc1 $at, $f18 -/* 0A5760 800A4B60 E4E8000C */ swc1 $f8, 0xc($a3) -/* 0A5764 800A4B64 C60A000C */ lwc1 $f10, 0xc($s0) -/* 0A5768 800A4B68 24020003 */ li $v0, 3 -/* 0A576C 800A4B6C 46005400 */ add.s $f16, $f10, $f0 -/* 0A5770 800A4B70 E610000C */ swc1 $f16, 0xc($s0) -/* 0A5774 800A4B74 A3AC0027 */ sb $t4, 0x27($sp) -/* 0A5778 800A4B78 C4E4000C */ lwc1 $f4, 0xc($a3) -/* 0A577C 800A4B7C 00000000 */ nop -/* 0A5780 800A4B80 4604903C */ c.lt.s $f18, $f4 -/* 0A5784 800A4B84 00000000 */ nop -/* 0A5788 800A4B88 45000005 */ bc1f .L800A4BA0 -/* 0A578C 800A4B8C 83AD0027 */ lb $t5, 0x27($sp) -/* 0A5790 800A4B90 10000002 */ b .L800A4B9C -/* 0A5794 800A4B94 A0E2001A */ sb $v0, 0x1a($a3) -.L800A4B98: -/* 0A5798 800A4B98 A0E2001A */ sb $v0, 0x1a($a3) -.L800A4B9C: -/* 0A579C 800A4B9C 83AD0027 */ lb $t5, 0x27($sp) -.L800A4BA0: -/* 0A57A0 800A4BA0 00000000 */ nop -/* 0A57A4 800A4BA4 11A0001F */ beqz $t5, .L800A4C24 -/* 0A57A8 800A4BA8 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A57AC 800A4BAC 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A57B0 800A4BB0 8C830000 */ lw $v1, ($a0) -/* 0A57B4 800A4BB4 3C0FFA00 */ lui $t7, 0xfa00 -/* 0A57B8 800A4BB8 246E0008 */ addiu $t6, $v1, 8 -/* 0A57BC 800A4BBC AC8E0000 */ sw $t6, ($a0) -/* 0A57C0 800A4BC0 2418FFD2 */ li $t8, -46 -/* 0A57C4 800A4BC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A57C8 800A4BC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A57CC 800A4BCC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A57D0 800A4BD0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A57D4 800A4BD4 AC780004 */ sw $t8, 4($v1) -/* 0A57D8 800A4BD8 0C02A980 */ jal func_800AA600 -/* 0A57DC 800A4BDC AC6F0000 */ sw $t7, ($v1) -/* 0A57E0 800A4BE0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A57E4 800A4BE4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A57E8 800A4BE8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A57EC 800A4BEC 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A57F0 800A4BF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A57F4 800A4BF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A57F8 800A4BF8 0C02A980 */ jal func_800AA600 -/* 0A57FC 800A4BFC 02003825 */ move $a3, $s0 -/* 0A5800 800A4C00 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5804 800A4C04 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A5808 800A4C08 8C830000 */ lw $v1, ($a0) -/* 0A580C 800A4C0C 3C08FA00 */ lui $t0, 0xfa00 -/* 0A5810 800A4C10 24790008 */ addiu $t9, $v1, 8 -/* 0A5814 800A4C14 AC990000 */ sw $t9, ($a0) -/* 0A5818 800A4C18 2409FFFF */ li $t1, -1 -/* 0A581C 800A4C1C AC690004 */ sw $t1, 4($v1) -/* 0A5820 800A4C20 AC680000 */ sw $t0, ($v1) -.L800A4C24: -/* 0A5824 800A4C24 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A5828 800A4C28 8FB00018 */ lw $s0, 0x18($sp) -/* 0A582C 800A4C2C 03E00008 */ jr $ra -/* 0A5830 800A4C30 27BD0030 */ addiu $sp, $sp, 0x30 - +glabel func_800A497C +/* 0A557C 800A497C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A5580 800A4980 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A5584 800A4984 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A5588 800A4988 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A558C 800A498C AFB00018 */ sw $s0, 0x18($sp) +/* 0A5590 800A4990 AFA40030 */ sw $a0, 0x30($sp) +/* 0A5594 800A4994 A3A00027 */ sb $zero, 0x27($sp) +/* 0A5598 800A4998 24470700 */ addiu $a3, $v0, 0x700 +/* 0A559C 800A499C 80E3001A */ lb $v1, 0x1a($a3) +/* 0A55A0 800A49A0 24040018 */ li $a0, 24 +/* 0A55A4 800A49A4 1060000B */ beqz $v1, .L800A49D4 +/* 0A55A8 800A49A8 24500740 */ addiu $s0, $v0, 0x740 +/* 0A55AC 800A49AC 24010001 */ li $at, 1 +/* 0A55B0 800A49B0 1061001F */ beq $v1, $at, .L800A4A30 +/* 0A55B4 800A49B4 24020002 */ li $v0, 2 +/* 0A55B8 800A49B8 1062005F */ beq $v1, $v0, .L800A4B38 +/* 0A55BC 800A49BC 00055880 */ sll $t3, $a1, 2 +/* 0A55C0 800A49C0 24020003 */ li $v0, 3 +/* 0A55C4 800A49C4 10620074 */ beq $v1, $v0, .L800A4B98 +/* 0A55C8 800A49C8 00000000 */ nop +/* 0A55CC 800A49CC 10000074 */ b .L800A4BA0 +/* 0A55D0 800A49D0 83AD0027 */ lb $t5, 0x27($sp) +.L800A49D4: +/* 0A55D4 800A49D4 0C0002F8 */ jal set_music_player_voice_limit +/* 0A55D8 800A49D8 AFA7002C */ sw $a3, 0x2c($sp) +/* 0A55DC 800A49DC 0C0002CD */ jal play_music +/* 0A55E0 800A49E0 24040019 */ li $a0, 25 +/* 0A55E4 800A49E4 24040016 */ li $a0, 22 +/* 0A55E8 800A49E8 0C000741 */ jal play_sound_global +/* 0A55EC 800A49EC 00002825 */ move $a1, $zero +/* 0A55F0 800A49F0 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A55F4 800A49F4 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A55F8 800A49F8 0C000741 */ jal play_sound_global +/* 0A55FC 800A49FC 24040102 */ li $a0, 258 +/* 0A5600 800A4A00 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e +/* 0A5604 800A4A04 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 +/* 0A5608 800A4A08 8FAF0030 */ lw $t7, 0x30($sp) +/* 0A560C 800A4A0C 240E007F */ li $t6, 127 +/* 0A5610 800A4A10 A04E0002 */ sb $t6, 2($v0) +/* 0A5614 800A4A14 A0400003 */ sb $zero, 3($v0) +/* 0A5618 800A4A18 85F80000 */ lh $t8, ($t7) +/* 0A561C 800A4A1C 8FA7002C */ lw $a3, 0x2c($sp) +/* 0A5620 800A4A20 24190001 */ li $t9, 1 +/* 0A5624 800A4A24 A058000C */ sb $t8, 0xc($v0) +/* 0A5628 800A4A28 1000005C */ b .L800A4B9C +/* 0A562C 800A4A2C A0F9001A */ sb $t9, 0x1a($a3) +.L800A4A30: +/* 0A5630 800A4A30 00054080 */ sll $t0, $a1, 2 +/* 0A5634 800A4A34 01054023 */ subu $t0, $t0, $a1 +/* 0A5638 800A4A38 00084080 */ sll $t0, $t0, 2 +/* 0A563C 800A4A3C 01054021 */ addu $t0, $t0, $a1 +/* 0A5640 800A4A40 44882000 */ mtc1 $t0, $f4 +/* 0A5644 800A4A44 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 0A5648 800A4A48 46802020 */ cvt.s.w $f0, $f4 +/* 0A564C 800A4A4C 3C01C1B8 */ li $at, 0xC1B80000 # -23.000000 +/* 0A5650 800A4A50 44811000 */ mtc1 $at, $f2 +/* 0A5654 800A4A54 46003200 */ add.s $f8, $f6, $f0 +/* 0A5658 800A4A58 E4E8000C */ swc1 $f8, 0xc($a3) +/* 0A565C 800A4A5C C4EA000C */ lwc1 $f10, 0xc($a3) +/* 0A5660 800A4A60 00000000 */ nop +/* 0A5664 800A4A64 460A103C */ c.lt.s $f2, $f10 +/* 0A5668 800A4A68 00000000 */ nop +/* 0A566C 800A4A6C 45000002 */ bc1f .L800A4A78 +/* 0A5670 800A4A70 00000000 */ nop +/* 0A5674 800A4A74 E4E2000C */ swc1 $f2, 0xc($a3) +.L800A4A78: +/* 0A5678 800A4A78 C610000C */ lwc1 $f16, 0xc($s0) +/* 0A567C 800A4A7C 3C0141B0 */ li $at, 0x41B00000 # 22.000000 +/* 0A5680 800A4A80 46008481 */ sub.s $f18, $f16, $f0 +/* 0A5684 800A4A84 44816000 */ mtc1 $at, $f12 +/* 0A5688 800A4A88 E612000C */ swc1 $f18, 0xc($s0) +/* 0A568C 800A4A8C C602000C */ lwc1 $f2, 0xc($s0) +/* 0A5690 800A4A90 00000000 */ nop +/* 0A5694 800A4A94 460C103C */ c.lt.s $f2, $f12 +/* 0A5698 800A4A98 00000000 */ nop +/* 0A569C 800A4A9C 45000004 */ bc1f .L800A4AB0 +/* 0A56A0 800A4AA0 00000000 */ nop +/* 0A56A4 800A4AA4 E60C000C */ swc1 $f12, 0xc($s0) +/* 0A56A8 800A4AA8 C602000C */ lwc1 $f2, 0xc($s0) +/* 0A56AC 800A4AAC 00000000 */ nop +.L800A4AB0: +/* 0A56B0 800A4AB0 46026032 */ c.eq.s $f12, $f2 +/* 0A56B4 800A4AB4 24090001 */ li $t1, 1 +/* 0A56B8 800A4AB8 45000038 */ bc1f .L800A4B9C +/* 0A56BC 800A4ABC A3A90027 */ sb $t1, 0x27($sp) +/* 0A56C0 800A4AC0 80EA001B */ lb $t2, 0x1b($a3) +/* 0A56C4 800A4AC4 240DFF88 */ li $t5, -120 +/* 0A56C8 800A4AC8 01455821 */ addu $t3, $t2, $a1 +/* 0A56CC 800A4ACC A0EB001B */ sb $t3, 0x1b($a3) +/* 0A56D0 800A4AD0 80EC001B */ lb $t4, 0x1b($a3) +/* 0A56D4 800A4AD4 00002825 */ move $a1, $zero +/* 0A56D8 800A4AD8 29810078 */ slti $at, $t4, 0x78 +/* 0A56DC 800A4ADC 14200005 */ bnez $at, .L800A4AF4 +/* 0A56E0 800A4AE0 24040016 */ li $a0, 22 +/* 0A56E4 800A4AE4 80EE001C */ lb $t6, 0x1c($a3) +/* 0A56E8 800A4AE8 A0ED001B */ sb $t5, 0x1b($a3) +/* 0A56EC 800A4AEC 25CF0001 */ addiu $t7, $t6, 1 +/* 0A56F0 800A4AF0 A0EF001C */ sb $t7, 0x1c($a3) +.L800A4AF4: +/* 0A56F4 800A4AF4 80F8001C */ lb $t8, 0x1c($a3) +/* 0A56F8 800A4AF8 24020002 */ li $v0, 2 +/* 0A56FC 800A4AFC 14580028 */ bne $v0, $t8, .L800A4BA0 +/* 0A5700 800A4B00 83AD0027 */ lb $t5, 0x27($sp) +/* 0A5704 800A4B04 A0E2001A */ sb $v0, 0x1a($a3) +/* 0A5708 800A4B08 0C000741 */ jal play_sound_global +/* 0A570C 800A4B0C AFA7002C */ sw $a3, 0x2c($sp) +/* 0A5710 800A4B10 8FB90030 */ lw $t9, 0x30($sp) +/* 0A5714 800A4B14 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e +/* 0A5718 800A4B18 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 +/* 0A571C 800A4B1C 8049000C */ lb $t1, 0xc($v0) +/* 0A5720 800A4B20 87280000 */ lh $t0, ($t9) +/* 0A5724 800A4B24 8FA7002C */ lw $a3, 0x2c($sp) +/* 0A5728 800A4B28 1509001C */ bne $t0, $t1, .L800A4B9C +/* 0A572C 800A4B2C 240AFFFF */ li $t2, -1 +/* 0A5730 800A4B30 1000001A */ b .L800A4B9C +/* 0A5734 800A4B34 A04A0003 */ sb $t2, 3($v0) +.L800A4B38: +/* 0A5738 800A4B38 01655823 */ subu $t3, $t3, $a1 +/* 0A573C 800A4B3C 000B5880 */ sll $t3, $t3, 2 +/* 0A5740 800A4B40 01655821 */ addu $t3, $t3, $a1 +/* 0A5744 800A4B44 448B2000 */ mtc1 $t3, $f4 +/* 0A5748 800A4B48 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 0A574C 800A4B4C 46802020 */ cvt.s.w $f0, $f4 +/* 0A5750 800A4B50 240C0001 */ li $t4, 1 +/* 0A5754 800A4B54 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 0A5758 800A4B58 46003200 */ add.s $f8, $f6, $f0 +/* 0A575C 800A4B5C 44819000 */ mtc1 $at, $f18 +/* 0A5760 800A4B60 E4E8000C */ swc1 $f8, 0xc($a3) +/* 0A5764 800A4B64 C60A000C */ lwc1 $f10, 0xc($s0) +/* 0A5768 800A4B68 24020003 */ li $v0, 3 +/* 0A576C 800A4B6C 46005400 */ add.s $f16, $f10, $f0 +/* 0A5770 800A4B70 E610000C */ swc1 $f16, 0xc($s0) +/* 0A5774 800A4B74 A3AC0027 */ sb $t4, 0x27($sp) +/* 0A5778 800A4B78 C4E4000C */ lwc1 $f4, 0xc($a3) +/* 0A577C 800A4B7C 00000000 */ nop +/* 0A5780 800A4B80 4604903C */ c.lt.s $f18, $f4 +/* 0A5784 800A4B84 00000000 */ nop +/* 0A5788 800A4B88 45000005 */ bc1f .L800A4BA0 +/* 0A578C 800A4B8C 83AD0027 */ lb $t5, 0x27($sp) +/* 0A5790 800A4B90 10000002 */ b .L800A4B9C +/* 0A5794 800A4B94 A0E2001A */ sb $v0, 0x1a($a3) +.L800A4B98: +/* 0A5798 800A4B98 A0E2001A */ sb $v0, 0x1a($a3) +.L800A4B9C: +/* 0A579C 800A4B9C 83AD0027 */ lb $t5, 0x27($sp) +.L800A4BA0: +/* 0A57A0 800A4BA0 00000000 */ nop +/* 0A57A4 800A4BA4 11A0001F */ beqz $t5, .L800A4C24 +/* 0A57A8 800A4BA8 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A57AC 800A4BAC 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A57B0 800A4BB0 8C830000 */ lw $v1, ($a0) +/* 0A57B4 800A4BB4 3C0FFA00 */ lui $t7, 0xfa00 +/* 0A57B8 800A4BB8 246E0008 */ addiu $t6, $v1, 8 +/* 0A57BC 800A4BBC AC8E0000 */ sw $t6, ($a0) +/* 0A57C0 800A4BC0 2418FFD2 */ li $t8, -46 +/* 0A57C4 800A4BC4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A57C8 800A4BC8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A57CC 800A4BCC 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A57D0 800A4BD0 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A57D4 800A4BD4 AC780004 */ sw $t8, 4($v1) +/* 0A57D8 800A4BD8 0C02A980 */ jal func_800AA600 +/* 0A57DC 800A4BDC AC6F0000 */ sw $t7, ($v1) +/* 0A57E0 800A4BE0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A57E4 800A4BE4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A57E8 800A4BE8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A57EC 800A4BEC 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A57F0 800A4BF0 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A57F4 800A4BF4 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A57F8 800A4BF8 0C02A980 */ jal func_800AA600 +/* 0A57FC 800A4BFC 02003825 */ move $a3, $s0 +/* 0A5800 800A4C00 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A5804 800A4C04 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A5808 800A4C08 8C830000 */ lw $v1, ($a0) +/* 0A580C 800A4C0C 3C08FA00 */ lui $t0, 0xfa00 +/* 0A5810 800A4C10 24790008 */ addiu $t9, $v1, 8 +/* 0A5814 800A4C14 AC990000 */ sw $t9, ($a0) +/* 0A5818 800A4C18 2409FFFF */ li $t1, -1 +/* 0A581C 800A4C1C AC690004 */ sw $t1, 4($v1) +/* 0A5820 800A4C20 AC680000 */ sw $t0, ($v1) +.L800A4C24: +/* 0A5824 800A4C24 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A5828 800A4C28 8FB00018 */ lw $s0, 0x18($sp) +/* 0A582C 800A4C2C 03E00008 */ jr $ra +/* 0A5830 800A4C30 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/game_ui/func_800A4C44.s b/asm/non_matchings/game_ui/func_800A4C44.s index c48971b2..cd254984 100644 --- a/asm/non_matchings/game_ui/func_800A4C44.s +++ b/asm/non_matchings/game_ui/func_800A4C44.s @@ -41,8 +41,8 @@ glabel func_800A4C44 /* 0A58D8 800A4CD8 A5230018 */ sh $v1, 0x18($t1) /* 0A58DC 800A4CDC 24630001 */ addiu $v1, $v1, 1 .L800A4CE0: -/* 0A58E0 800A4CE0 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0A58E4 800A4CE4 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) +/* 0A58E0 800A4CE0 3C0A8012 */ lui $t2, %hi(gHUDNumPlayers) # $t2, 0x8012 +/* 0A58E4 800A4CE4 8D4A6D0C */ lw $t2, %lo(gHUDNumPlayers)($t2) /* 0A58E8 800A4CE8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 /* 0A58EC 800A4CEC 29410002 */ slti $at, $t2, 2 /* 0A58F0 800A4CF0 10200017 */ beqz $at, .L800A4D50 @@ -60,10 +60,10 @@ glabel func_800A4C44 /* 0A591C 800A4D1C A5CD0038 */ sh $t5, 0x38($t6) .L800A4D20: /* 0A5920 800A4D20 8D070000 */ lw $a3, ($t0) -/* 0A5924 800A4D24 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5928 800A4D28 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A592C 800A4D2C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5930 800A4D30 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5924 800A4D24 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5928 800A4D28 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A592C 800A4D2C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5930 800A4D30 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A5934 800A4D34 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A5938 800A4D38 AFA30034 */ sw $v1, 0x34($sp) /* 0A593C 800A4D3C 0C02A980 */ jal func_800AA600 @@ -113,10 +113,10 @@ glabel func_800A4C44 /* 0A59E8 800A4DE8 44809000 */ mtc1 $zero, $f18 /* 0A59EC 800A4DEC 3C0141C0 */ li $at, 0x41C00000 # 24.000000 /* 0A59F0 800A4DF0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A59F4 800A4DF4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A59F8 800A4DF8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A59FC 800A4DFC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5A00 800A4E00 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A59F4 800A4DF4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A59F8 800A4DF8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A59FC 800A4DFC 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5A00 800A4E00 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A5A04 800A4E04 460021A1 */ cvt.d.s $f6, $f4 /* 0A5A08 800A4E08 46309100 */ add.d $f4, $f18, $f16 /* 0A5A0C 800A4E0C 44819000 */ mtc1 $at, $f18 diff --git a/asm/non_matchings/game_ui/func_800A4F50.s b/asm/non_matchings/game_ui/func_800A4F50.s index 8a29aac9..0c6d4b7f 100644 --- a/asm/non_matchings/game_ui/func_800A4F50.s +++ b/asm/non_matchings/game_ui/func_800A4F50.s @@ -1,747 +1,747 @@ -glabel func_800A4F50 -/* 0A5B50 800A4F50 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A5B54 800A4F54 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A5B58 800A4F58 AFA40018 */ sw $a0, 0x18($sp) -/* 0A5B5C 800A4F5C AFA5001C */ sw $a1, 0x1c($sp) -/* 0A5B60 800A4F60 808F01D8 */ lb $t7, 0x1d8($a0) -/* 0A5B64 800A4F64 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0A5B68 800A4F68 15E00089 */ bnez $t7, .L800A5190 -/* 0A5B6C 800A4F6C 00000000 */ nop -/* 0A5B70 800A4F70 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) -/* 0A5B74 800A4F74 00000000 */ nop -/* 0A5B78 800A4F78 1840000B */ blez $v0, .L800A4FA8 -/* 0A5B7C 800A4F7C 00000000 */ nop -/* 0A5B80 800A4F80 80830193 */ lb $v1, 0x193($a0) -/* 0A5B84 800A4F84 00000000 */ nop -/* 0A5B88 800A4F88 18600007 */ blez $v1, .L800A4FA8 -/* 0A5B8C 800A4F8C 0003C080 */ sll $t8, $v1, 2 -/* 0A5B90 800A4F90 0098C821 */ addu $t9, $a0, $t8 -/* 0A5B94 800A4F94 8F2B0128 */ lw $t3, 0x128($t9) -/* 0A5B98 800A4F98 00000000 */ nop -/* 0A5B9C 800A4F9C 296100B4 */ slti $at, $t3, 0xb4 -/* 0A5BA0 800A4FA0 1420007B */ bnez $at, .L800A5190 -/* 0A5BA4 800A4FA4 00000000 */ nop -.L800A4FA8: -/* 0A5BA8 800A4FA8 1840000B */ blez $v0, .L800A4FD8 -/* 0A5BAC 800A4FAC 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 -/* 0A5BB0 800A4FB0 8FAD0018 */ lw $t5, 0x18($sp) -/* 0A5BB4 800A4FB4 00026080 */ sll $t4, $v0, 2 -/* 0A5BB8 800A4FB8 85AF0000 */ lh $t7, ($t5) -/* 0A5BBC 800A4FBC 3C18800E */ lui $t8, %hi(D_800E2794) # $t8, 0x800e -/* 0A5BC0 800A4FC0 018F7021 */ addu $t6, $t4, $t7 -/* 0A5BC4 800A4FC4 030EC021 */ addu $t8, $t8, $t6 -/* 0A5BC8 800A4FC8 93182794 */ lbu $t8, %lo(D_800E2794)($t8) -/* 0A5BCC 800A4FCC 24010003 */ li $at, 3 -/* 0A5BD0 800A4FD0 1701006F */ bne $t8, $at, .L800A5190 -/* 0A5BD4 800A4FD4 00000000 */ nop -.L800A4FD8: -/* 0A5BD8 800A4FD8 8FAD0018 */ lw $t5, 0x18($sp) -/* 0A5BDC 800A4FDC 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) -/* 0A5BE0 800A4FE0 81AC0194 */ lb $t4, 0x194($t5) -/* 0A5BE4 800A4FE4 832B004B */ lb $t3, 0x4b($t9) -/* 0A5BE8 800A4FE8 258F0001 */ addiu $t7, $t4, 1 -/* 0A5BEC 800A4FEC 156F0029 */ bne $t3, $t7, .L800A5094 -/* 0A5BF0 800A4FF0 28410002 */ slti $at, $v0, 2 -/* 0A5BF4 800A4FF4 10200027 */ beqz $at, .L800A5094 -/* 0A5BF8 800A4FF8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5BFC 800A4FFC 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5C00 800A5000 8D020000 */ lw $v0, ($t0) -/* 0A5C04 800A5004 8FB8001C */ lw $t8, 0x1c($sp) -/* 0A5C08 800A5008 804E021A */ lb $t6, 0x21a($v0) -/* 0A5C0C 800A500C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5C10 800A5010 01D8C821 */ addu $t9, $t6, $t8 -/* 0A5C14 800A5014 A059021A */ sb $t9, 0x21a($v0) -/* 0A5C18 800A5018 8D020000 */ lw $v0, ($t0) -/* 0A5C1C 800A501C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5C20 800A5020 804D021A */ lb $t5, 0x21a($v0) -/* 0A5C24 800A5024 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5C28 800A5028 29A10007 */ slti $at, $t5, 7 -/* 0A5C2C 800A502C 14200015 */ bnez $at, .L800A5084 -/* 0A5C30 800A5030 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A5C34 800A5034 844C0218 */ lh $t4, 0x218($v0) -/* 0A5C38 800A5038 00000000 */ nop -/* 0A5C3C 800A503C 258B0001 */ addiu $t3, $t4, 1 -/* 0A5C40 800A5040 A44B0218 */ sh $t3, 0x218($v0) -/* 0A5C44 800A5044 8D020000 */ lw $v0, ($t0) -/* 0A5C48 800A5048 00000000 */ nop -/* 0A5C4C 800A504C 804F021A */ lb $t7, 0x21a($v0) -/* 0A5C50 800A5050 00000000 */ nop -/* 0A5C54 800A5054 25EEFFFA */ addiu $t6, $t7, -6 -/* 0A5C58 800A5058 A04E021A */ sb $t6, 0x21a($v0) -/* 0A5C5C 800A505C 8D020000 */ lw $v0, ($t0) -/* 0A5C60 800A5060 00000000 */ nop -/* 0A5C64 800A5064 84580218 */ lh $t8, 0x218($v0) -/* 0A5C68 800A5068 00000000 */ nop -/* 0A5C6C 800A506C 2B010005 */ slti $at, $t8, 5 -/* 0A5C70 800A5070 14200004 */ bnez $at, .L800A5084 -/* 0A5C74 800A5074 00000000 */ nop -/* 0A5C78 800A5078 A4400218 */ sh $zero, 0x218($v0) -/* 0A5C7C 800A507C 8D020000 */ lw $v0, ($t0) -/* 0A5C80 800A5080 00000000 */ nop -.L800A5084: -/* 0A5C84 800A5084 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5C88 800A5088 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5C8C 800A508C 0C02A980 */ jal func_800AA600 -/* 0A5C90 800A5090 24470200 */ addiu $a3, $v0, 0x200 -.L800A5094: -/* 0A5C94 800A5094 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5C98 800A5098 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5C9C 800A509C 8D070000 */ lw $a3, ($t0) -/* 0A5CA0 800A50A0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5CA4 800A50A4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5CA8 800A50A8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5CAC 800A50AC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5CB0 800A50B0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5CB4 800A50B4 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A5CB8 800A50B8 0C02A980 */ jal func_800AA600 -/* 0A5CBC 800A50BC 24E70060 */ addiu $a3, $a3, 0x60 -/* 0A5CC0 800A50C0 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A5CC4 800A50C4 254A6D60 */ addiu $t2, %lo(D_80126D60) # addiu $t2, $t2, 0x6d60 -/* 0A5CC8 800A50C8 8D590000 */ lw $t9, ($t2) -/* 0A5CCC 800A50CC 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5CD0 800A50D0 8322004B */ lb $v0, 0x4b($t9) -/* 0A5CD4 800A50D4 81230194 */ lb $v1, 0x194($t1) -/* 0A5CD8 800A50D8 244DFFFF */ addiu $t5, $v0, -1 -/* 0A5CDC 800A50DC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5CE0 800A50E0 006D082A */ slt $at, $v1, $t5 -/* 0A5CE4 800A50E4 14200004 */ bnez $at, .L800A50F8 -/* 0A5CE8 800A50E8 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5CEC 800A50EC 8D0C0000 */ lw $t4, ($t0) -/* 0A5CF0 800A50F0 10000004 */ b .L800A5104 -/* 0A5CF4 800A50F4 A5820098 */ sh $v0, 0x98($t4) -.L800A50F8: -/* 0A5CF8 800A50F8 8D0F0000 */ lw $t7, ($t0) -/* 0A5CFC 800A50FC 246B0001 */ addiu $t3, $v1, 1 -/* 0A5D00 800A5100 A5EB0098 */ sh $t3, 0x98($t7) -.L800A5104: -/* 0A5D04 800A5104 8D4E0000 */ lw $t6, ($t2) -/* 0A5D08 800A5108 8D190000 */ lw $t9, ($t0) -/* 0A5D0C 800A510C 81D8004B */ lb $t8, 0x4b($t6) -/* 0A5D10 800A5110 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5D14 800A5114 A73800D8 */ sh $t8, 0xd8($t9) -/* 0A5D18 800A5118 8D070000 */ lw $a3, ($t0) -/* 0A5D1C 800A511C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5D20 800A5120 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5D24 800A5124 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5D28 800A5128 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5D2C 800A512C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A5D30 800A5130 0C02A980 */ jal func_800AA600 -/* 0A5D34 800A5134 24E70080 */ addiu $a3, $a3, 0x80 -/* 0A5D38 800A5138 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5D3C 800A513C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5D40 800A5140 8D070000 */ lw $a3, ($t0) -/* 0A5D44 800A5144 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5D48 800A5148 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5D4C 800A514C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5D50 800A5150 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5D54 800A5154 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5D58 800A5158 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A5D5C 800A515C 0C02A980 */ jal func_800AA600 -/* 0A5D60 800A5160 24E700A0 */ addiu $a3, $a3, 0xa0 -/* 0A5D64 800A5164 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5D68 800A5168 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5D6C 800A516C 8D070000 */ lw $a3, ($t0) -/* 0A5D70 800A5170 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A5D74 800A5174 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5D78 800A5178 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5D7C 800A517C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5D80 800A5180 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5D84 800A5184 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A5D88 800A5188 0C02A980 */ jal func_800AA600 -/* 0A5D8C 800A518C 24E700C0 */ addiu $a3, $a3, 0xc0 -.L800A5190: -/* 0A5D90 800A5190 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 -/* 0A5D94 800A5194 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) -/* 0A5D98 800A5198 24010001 */ li $at, 1 -/* 0A5D9C 800A519C 15A10003 */ bne $t5, $at, .L800A51AC -/* 0A5DA0 800A51A0 00000000 */ nop -/* 0A5DA4 800A51A4 0C01EFC7 */ jal func_8007BF1C -/* 0A5DA8 800A51A8 24040001 */ li $a0, 1 -.L800A51AC: -/* 0A5DAC 800A51AC 0C01BAA8 */ jal is_game_paused -/* 0A5DB0 800A51B0 00000000 */ nop -/* 0A5DB4 800A51B4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5DB8 800A51B8 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5DBC 800A51BC 14400223 */ bnez $v0, .L800A5A4C -/* 0A5DC0 800A51C0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5DC4 800A51C4 81230193 */ lb $v1, 0x193($t1) -/* 0A5DC8 800A51C8 00000000 */ nop -/* 0A5DCC 800A51CC 00036080 */ sll $t4, $v1, 2 -/* 0A5DD0 800A51D0 012C5821 */ addu $t3, $t1, $t4 -/* 0A5DD4 800A51D4 8D6F0128 */ lw $t7, 0x128($t3) -/* 0A5DD8 800A51D8 00000000 */ nop -/* 0A5DDC 800A51DC 29E1001E */ slti $at, $t7, 0x1e -/* 0A5DE0 800A51E0 102000BF */ beqz $at, .L800A54E0 -/* 0A5DE4 800A51E4 00000000 */ nop -/* 0A5DE8 800A51E8 8D020000 */ lw $v0, ($t0) -/* 0A5DEC 800A51EC 00000000 */ nop -/* 0A5DF0 800A51F0 804E03DA */ lb $t6, 0x3da($v0) -/* 0A5DF4 800A51F4 00000000 */ nop -/* 0A5DF8 800A51F8 15C000B9 */ bnez $t6, .L800A54E0 -/* 0A5DFC 800A51FC 00000000 */ nop -/* 0A5E00 800A5200 813801D8 */ lb $t8, 0x1d8($t1) -/* 0A5E04 800A5204 24060001 */ li $a2, 1 -/* 0A5E08 800A5208 170000B5 */ bnez $t8, .L800A54E0 -/* 0A5E0C 800A520C 00000000 */ nop -/* 0A5E10 800A5210 14C30058 */ bne $a2, $v1, .L800A5374 -/* 0A5E14 800A5214 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 -/* 0A5E18 800A5218 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) -/* 0A5E1C 800A521C 240C0002 */ li $t4, 2 -/* 0A5E20 800A5220 832D004B */ lb $t5, 0x4b($t9) -/* 0A5E24 800A5224 24040016 */ li $a0, 22 -/* 0A5E28 800A5228 29A10003 */ slti $at, $t5, 3 -/* 0A5E2C 800A522C 14200051 */ bnez $at, .L800A5374 -/* 0A5E30 800A5230 00000000 */ nop -/* 0A5E34 800A5234 A04C03DA */ sb $t4, 0x3da($v0) -/* 0A5E38 800A5238 8D0B0000 */ lw $t3, ($t0) -/* 0A5E3C 800A523C 00002825 */ move $a1, $zero -/* 0A5E40 800A5240 A16603DB */ sb $a2, 0x3db($t3) -/* 0A5E44 800A5244 8D0F0000 */ lw $t7, ($t0) -/* 0A5E48 800A5248 0C000741 */ jal play_sound_global -/* 0A5E4C 800A524C A1E003DD */ sb $zero, 0x3dd($t7) -/* 0A5E50 800A5250 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0A5E54 800A5254 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) -/* 0A5E58 800A5258 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5E5C 800A525C 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5E60 800A5260 10400006 */ beqz $v0, .L800A527C -/* 0A5E64 800A5264 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5E68 800A5268 24010001 */ li $at, 1 -/* 0A5E6C 800A526C 10410012 */ beq $v0, $at, .L800A52B8 -/* 0A5E70 800A5270 240FFFF0 */ li $t7, -16 -/* 0A5E74 800A5274 1000001E */ b .L800A52F0 -/* 0A5E78 800A5278 24010002 */ li $at, 2 -.L800A527C: -/* 0A5E7C 800A527C 8D180000 */ lw $t8, ($t0) -/* 0A5E80 800A5280 240EFFEB */ li $t6, -21 -/* 0A5E84 800A5284 A30E03DC */ sb $t6, 0x3dc($t8) -/* 0A5E88 800A5288 8D0D0000 */ lw $t5, ($t0) -/* 0A5E8C 800A528C 24190020 */ li $t9, 32 -/* 0A5E90 800A5290 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A5E94 800A5294 A1B903FC */ sb $t9, 0x3fc($t5) -/* 0A5E98 800A5298 8D0C0000 */ lw $t4, ($t0) -/* 0A5E9C 800A529C 44812000 */ mtc1 $at, $f4 -/* 0A5EA0 800A52A0 3C014353 */ li $at, 0x43530000 # 211.000000 -/* 0A5EA4 800A52A4 E58403CC */ swc1 $f4, 0x3cc($t4) -/* 0A5EA8 800A52A8 8D0B0000 */ lw $t3, ($t0) -/* 0A5EAC 800A52AC 44813000 */ mtc1 $at, $f6 -/* 0A5EB0 800A52B0 1000008B */ b .L800A54E0 -/* 0A5EB4 800A52B4 E56603EC */ swc1 $f6, 0x3ec($t3) -.L800A52B8: -/* 0A5EB8 800A52B8 8D0E0000 */ lw $t6, ($t0) -/* 0A5EBC 800A52BC 2418001B */ li $t8, 27 -/* 0A5EC0 800A52C0 A1CF03DC */ sb $t7, 0x3dc($t6) -/* 0A5EC4 800A52C4 8D190000 */ lw $t9, ($t0) -/* 0A5EC8 800A52C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A5ECC 800A52CC A33803FC */ sb $t8, 0x3fc($t9) -/* 0A5ED0 800A52D0 8D0D0000 */ lw $t5, ($t0) -/* 0A5ED4 800A52D4 44814000 */ mtc1 $at, $f8 -/* 0A5ED8 800A52D8 3C014353 */ li $at, 0x43530000 # 211.000000 -/* 0A5EDC 800A52DC E5A803CC */ swc1 $f8, 0x3cc($t5) -/* 0A5EE0 800A52E0 8D0C0000 */ lw $t4, ($t0) -/* 0A5EE4 800A52E4 44815000 */ mtc1 $at, $f10 -/* 0A5EE8 800A52E8 1000007D */ b .L800A54E0 -/* 0A5EEC 800A52EC E58A03EC */ swc1 $f10, 0x3ec($t4) -.L800A52F0: -/* 0A5EF0 800A52F0 85220000 */ lh $v0, ($t1) -/* 0A5EF4 800A52F4 240CFFA6 */ li $t4, -90 -/* 0A5EF8 800A52F8 10400011 */ beqz $v0, .L800A5340 -/* 0A5EFC 800A52FC 240FFFC5 */ li $t7, -59 -/* 0A5F00 800A5300 1041000F */ beq $v0, $at, .L800A5340 -/* 0A5F04 800A5304 240B003C */ li $t3, 60 -/* 0A5F08 800A5308 8D0F0000 */ lw $t7, ($t0) -/* 0A5F0C 800A530C 240E005B */ li $t6, 91 -/* 0A5F10 800A5310 A1EB03DC */ sb $t3, 0x3dc($t7) -/* 0A5F14 800A5314 8D180000 */ lw $t8, ($t0) -/* 0A5F18 800A5318 3C01C28C */ li $at, 0xC28C0000 # -70.000000 -/* 0A5F1C 800A531C A30E03FC */ sb $t6, 0x3fc($t8) -/* 0A5F20 800A5320 8D190000 */ lw $t9, ($t0) -/* 0A5F24 800A5324 44818000 */ mtc1 $at, $f16 -/* 0A5F28 800A5328 3C01435D */ li $at, 0x435D0000 # 221.000000 -/* 0A5F2C 800A532C E73003CC */ swc1 $f16, 0x3cc($t9) -/* 0A5F30 800A5330 8D0D0000 */ lw $t5, ($t0) -/* 0A5F34 800A5334 44819000 */ mtc1 $at, $f18 -/* 0A5F38 800A5338 10000069 */ b .L800A54E0 -/* 0A5F3C 800A533C E5B203EC */ swc1 $f18, 0x3ec($t5) -.L800A5340: -/* 0A5F40 800A5340 8D0B0000 */ lw $t3, ($t0) -/* 0A5F44 800A5344 3C01C35C */ li $at, 0xC35C0000 # -220.000000 -/* 0A5F48 800A5348 A16C03DC */ sb $t4, 0x3dc($t3) -/* 0A5F4C 800A534C 8D0E0000 */ lw $t6, ($t0) -/* 0A5F50 800A5350 44812000 */ mtc1 $at, $f4 -/* 0A5F54 800A5354 A1CF03FC */ sb $t7, 0x3fc($t6) -/* 0A5F58 800A5358 8D180000 */ lw $t8, ($t0) -/* 0A5F5C 800A535C 3C01428E */ li $at, 0x428E0000 # 71.000000 -/* 0A5F60 800A5360 E70403CC */ swc1 $f4, 0x3cc($t8) -/* 0A5F64 800A5364 8D190000 */ lw $t9, ($t0) -/* 0A5F68 800A5368 44813000 */ mtc1 $at, $f6 -/* 0A5F6C 800A536C 1000005C */ b .L800A54E0 -/* 0A5F70 800A5370 E72603EC */ swc1 $f6, 0x3ec($t9) -.L800A5374: -/* 0A5F74 800A5374 3C0D8012 */ lui $t5, %hi(D_80126D60) # $t5, 0x8012 -/* 0A5F78 800A5378 8DAD6D60 */ lw $t5, %lo(D_80126D60)($t5) -/* 0A5F7C 800A537C 246B0001 */ addiu $t3, $v1, 1 -/* 0A5F80 800A5380 81AC004B */ lb $t4, 0x4b($t5) -/* 0A5F84 800A5384 00000000 */ nop -/* 0A5F88 800A5388 158B0055 */ bne $t4, $t3, .L800A54E0 -/* 0A5F8C 800A538C 00000000 */ nop -/* 0A5F90 800A5390 10600053 */ beqz $v1, .L800A54E0 -/* 0A5F94 800A5394 240F0003 */ li $t7, 3 -/* 0A5F98 800A5398 A04F03DA */ sb $t7, 0x3da($v0) -/* 0A5F9C 800A539C 8D180000 */ lw $t8, ($t0) -/* 0A5FA0 800A53A0 240EFFFF */ li $t6, -1 -/* 0A5FA4 800A53A4 A30E03DB */ sb $t6, 0x3db($t8) -/* 0A5FA8 800A53A8 8D190000 */ lw $t9, ($t0) -/* 0A5FAC 800A53AC 24040016 */ li $a0, 22 -/* 0A5FB0 800A53B0 00002825 */ move $a1, $zero -/* 0A5FB4 800A53B4 0C000741 */ jal play_sound_global -/* 0A5FB8 800A53B8 A32003DD */ sb $zero, 0x3dd($t9) -/* 0A5FBC 800A53BC 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0A5FC0 800A53C0 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) -/* 0A5FC4 800A53C4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5FC8 800A53C8 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5FCC 800A53CC 10400006 */ beqz $v0, .L800A53E8 -/* 0A5FD0 800A53D0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5FD4 800A53D4 24010001 */ li $at, 1 -/* 0A5FD8 800A53D8 10410012 */ beq $v0, $at, .L800A5424 -/* 0A5FDC 800A53DC 24190029 */ li $t9, 41 -/* 0A5FE0 800A53E0 1000001E */ b .L800A545C -/* 0A5FE4 800A53E4 24010002 */ li $at, 2 -.L800A53E8: -/* 0A5FE8 800A53E8 8D0C0000 */ lw $t4, ($t0) -/* 0A5FEC 800A53EC 240D0033 */ li $t5, 51 -/* 0A5FF0 800A53F0 A18D03DC */ sb $t5, 0x3dc($t4) -/* 0A5FF4 800A53F4 8D0F0000 */ lw $t7, ($t0) -/* 0A5FF8 800A53F8 240BFFD7 */ li $t3, -41 -/* 0A5FFC 800A53FC 3C014352 */ li $at, 0x43520000 # 210.000000 -/* 0A6000 800A5400 A1EB03BC */ sb $t3, 0x3bc($t7) -/* 0A6004 800A5404 8D0E0000 */ lw $t6, ($t0) -/* 0A6008 800A5408 44814000 */ mtc1 $at, $f8 -/* 0A600C 800A540C 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A6010 800A5410 E5C803CC */ swc1 $f8, 0x3cc($t6) -/* 0A6014 800A5414 8D180000 */ lw $t8, ($t0) -/* 0A6018 800A5418 44815000 */ mtc1 $at, $f10 -/* 0A601C 800A541C 10000030 */ b .L800A54E0 -/* 0A6020 800A5420 E70A03AC */ swc1 $f10, 0x3ac($t8) -.L800A5424: -/* 0A6024 800A5424 8D0D0000 */ lw $t5, ($t0) -/* 0A6028 800A5428 240CFFE1 */ li $t4, -31 -/* 0A602C 800A542C A1B903DC */ sb $t9, 0x3dc($t5) -/* 0A6030 800A5430 8D0B0000 */ lw $t3, ($t0) -/* 0A6034 800A5434 3C014352 */ li $at, 0x43520000 # 210.000000 -/* 0A6038 800A5438 A16C03BC */ sb $t4, 0x3bc($t3) -/* 0A603C 800A543C 8D0F0000 */ lw $t7, ($t0) -/* 0A6040 800A5440 44818000 */ mtc1 $at, $f16 -/* 0A6044 800A5444 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A6048 800A5448 E5F003CC */ swc1 $f16, 0x3cc($t7) -/* 0A604C 800A544C 8D0E0000 */ lw $t6, ($t0) -/* 0A6050 800A5450 44819000 */ mtc1 $at, $f18 -/* 0A6054 800A5454 10000022 */ b .L800A54E0 -/* 0A6058 800A5458 E5D203AC */ swc1 $f18, 0x3ac($t6) -.L800A545C: -/* 0A605C 800A545C 85220000 */ lh $v0, ($t1) -/* 0A6060 800A5460 240EFFCE */ li $t6, -50 -/* 0A6064 800A5464 10400011 */ beqz $v0, .L800A54AC -/* 0A6068 800A5468 2419FF9C */ li $t9, -100 -/* 0A606C 800A546C 1041000F */ beq $v0, $at, .L800A54AC -/* 0A6070 800A5470 24180064 */ li $t8, 100 -/* 0A6074 800A5474 8D190000 */ lw $t9, ($t0) -/* 0A6078 800A5478 240D0032 */ li $t5, 50 -/* 0A607C 800A547C A33803DC */ sb $t8, 0x3dc($t9) -/* 0A6080 800A5480 8D0C0000 */ lw $t4, ($t0) -/* 0A6084 800A5484 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 0A6088 800A5488 A18D03BC */ sb $t5, 0x3bc($t4) -/* 0A608C 800A548C 8D0B0000 */ lw $t3, ($t0) -/* 0A6090 800A5490 44812000 */ mtc1 $at, $f4 -/* 0A6094 800A5494 3C01C248 */ li $at, 0xC2480000 # -50.000000 -/* 0A6098 800A5498 E56403CC */ swc1 $f4, 0x3cc($t3) -/* 0A609C 800A549C 8D0F0000 */ lw $t7, ($t0) -/* 0A60A0 800A54A0 44813000 */ mtc1 $at, $f6 -/* 0A60A4 800A54A4 1000000E */ b .L800A54E0 -/* 0A60A8 800A54A8 E5E603AC */ swc1 $f6, 0x3ac($t7) -.L800A54AC: -/* 0A60AC 800A54AC 8D180000 */ lw $t8, ($t0) -/* 0A60B0 800A54B0 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 0A60B4 800A54B4 A30E03DC */ sb $t6, 0x3dc($t8) -/* 0A60B8 800A54B8 8D0D0000 */ lw $t5, ($t0) -/* 0A60BC 800A54BC 44814000 */ mtc1 $at, $f8 -/* 0A60C0 800A54C0 A1B903BC */ sb $t9, 0x3bc($t5) -/* 0A60C4 800A54C4 8D0C0000 */ lw $t4, ($t0) -/* 0A60C8 800A54C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A60CC 800A54CC E58803CC */ swc1 $f8, 0x3cc($t4) -/* 0A60D0 800A54D0 8D0B0000 */ lw $t3, ($t0) -/* 0A60D4 800A54D4 44815000 */ mtc1 $at, $f10 -/* 0A60D8 800A54D8 00000000 */ nop -/* 0A60DC 800A54DC E56A03AC */ swc1 $f10, 0x3ac($t3) -.L800A54E0: -/* 0A60E0 800A54E0 8D020000 */ lw $v0, ($t0) -/* 0A60E4 800A54E4 24060001 */ li $a2, 1 -/* 0A60E8 800A54E8 804303DA */ lb $v1, 0x3da($v0) -/* 0A60EC 800A54EC 24010002 */ li $at, 2 -/* 0A60F0 800A54F0 10600156 */ beqz $v1, .L800A5A4C -/* 0A60F4 800A54F4 00000000 */ nop -/* 0A60F8 800A54F8 146100AA */ bne $v1, $at, .L800A57A4 -/* 0A60FC 800A54FC 24010003 */ li $at, 3 -/* 0A6100 800A5500 804303DB */ lb $v1, 0x3db($v0) -/* 0A6104 800A5504 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A6108 800A5508 14C30063 */ bne $a2, $v1, .L800A5698 -/* 0A610C 800A550C 2401FFFF */ li $at, -1 -/* 0A6110 800A5510 00047880 */ sll $t7, $a0, 2 -/* 0A6114 800A5514 01E47823 */ subu $t7, $t7, $a0 -/* 0A6118 800A5518 804303DC */ lb $v1, 0x3dc($v0) -/* 0A611C 800A551C 000F7880 */ sll $t7, $t7, 2 -/* 0A6120 800A5520 01E47821 */ addu $t7, $t7, $a0 -/* 0A6124 800A5524 006F7023 */ subu $t6, $v1, $t7 -/* 0A6128 800A5528 448E8000 */ mtc1 $t6, $f16 -/* 0A612C 800A552C C44003CC */ lwc1 $f0, 0x3cc($v0) -/* 0A6130 800A5530 468084A0 */ cvt.s.w $f18, $f16 -/* 0A6134 800A5534 01E02025 */ move $a0, $t7 -/* 0A6138 800A5538 240FFFFF */ li $t7, -1 -/* 0A613C 800A553C 4612003C */ c.lt.s $f0, $f18 -/* 0A6140 800A5540 00002825 */ move $a1, $zero -/* 0A6144 800A5544 45000007 */ bc1f .L800A5564 -/* 0A6148 800A5548 00000000 */ nop -/* 0A614C 800A554C 44842000 */ mtc1 $a0, $f4 -/* 0A6150 800A5550 00000000 */ nop -/* 0A6154 800A5554 468021A0 */ cvt.s.w $f6, $f4 -/* 0A6158 800A5558 46060200 */ add.s $f8, $f0, $f6 -/* 0A615C 800A555C 10000005 */ b .L800A5574 -/* 0A6160 800A5560 E44803CC */ swc1 $f8, 0x3cc($v0) -.L800A5564: -/* 0A6164 800A5564 44835000 */ mtc1 $v1, $f10 -/* 0A6168 800A5568 00000000 */ nop -/* 0A616C 800A556C 46805420 */ cvt.s.w $f16, $f10 -/* 0A6170 800A5570 E45003CC */ swc1 $f16, 0x3cc($v0) -.L800A5574: -/* 0A6174 800A5574 8D020000 */ lw $v0, ($t0) -/* 0A6178 800A5578 00000000 */ nop -/* 0A617C 800A557C 804303FC */ lb $v1, 0x3fc($v0) -/* 0A6180 800A5580 C44003EC */ lwc1 $f0, 0x3ec($v0) -/* 0A6184 800A5584 0064C021 */ addu $t8, $v1, $a0 -/* 0A6188 800A5588 44989000 */ mtc1 $t8, $f18 -/* 0A618C 800A558C 00000000 */ nop -/* 0A6190 800A5590 46809120 */ cvt.s.w $f4, $f18 -/* 0A6194 800A5594 4600203C */ c.lt.s $f4, $f0 -/* 0A6198 800A5598 00000000 */ nop -/* 0A619C 800A559C 45000007 */ bc1f .L800A55BC -/* 0A61A0 800A55A0 00000000 */ nop -/* 0A61A4 800A55A4 44843000 */ mtc1 $a0, $f6 -/* 0A61A8 800A55A8 00000000 */ nop -/* 0A61AC 800A55AC 46803220 */ cvt.s.w $f8, $f6 -/* 0A61B0 800A55B0 46080281 */ sub.s $f10, $f0, $f8 -/* 0A61B4 800A55B4 10000005 */ b .L800A55CC -/* 0A61B8 800A55B8 E44A03EC */ swc1 $f10, 0x3ec($v0) -.L800A55BC: -/* 0A61BC 800A55BC 44838000 */ mtc1 $v1, $f16 -/* 0A61C0 800A55C0 00000000 */ nop -/* 0A61C4 800A55C4 468084A0 */ cvt.s.w $f18, $f16 -/* 0A61C8 800A55C8 E45203EC */ swc1 $f18, 0x3ec($v0) -.L800A55CC: -/* 0A61CC 800A55CC 81390193 */ lb $t9, 0x193($t1) -/* 0A61D0 800A55D0 24040016 */ li $a0, 22 -/* 0A61D4 800A55D4 00196880 */ sll $t5, $t9, 2 -/* 0A61D8 800A55D8 012D6021 */ addu $t4, $t1, $t5 -/* 0A61DC 800A55DC 8D8B0128 */ lw $t3, 0x128($t4) -/* 0A61E0 800A55E0 00000000 */ nop -/* 0A61E4 800A55E4 2961003C */ slti $at, $t3, 0x3c -/* 0A61E8 800A55E8 14200007 */ bnez $at, .L800A5608 -/* 0A61EC 800A55EC 00000000 */ nop -/* 0A61F0 800A55F0 8D0E0000 */ lw $t6, ($t0) -/* 0A61F4 800A55F4 0C000741 */ jal play_sound_global -/* 0A61F8 800A55F8 A1CF03DB */ sb $t7, 0x3db($t6) -/* 0A61FC 800A55FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6200 800A5600 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6204 800A5604 24060001 */ li $a2, 1 -.L800A5608: -/* 0A6208 800A5608 8D020000 */ lw $v0, ($t0) -/* 0A620C 800A560C 00000000 */ nop -/* 0A6210 800A5610 805803DC */ lb $t8, 0x3dc($v0) -/* 0A6214 800A5614 C44403CC */ lwc1 $f4, 0x3cc($v0) -/* 0A6218 800A5618 44983000 */ mtc1 $t8, $f6 -/* 0A621C 800A561C 00000000 */ nop -/* 0A6220 800A5620 46803220 */ cvt.s.w $f8, $f6 -/* 0A6224 800A5624 46082032 */ c.eq.s $f4, $f8 -/* 0A6228 800A5628 00000000 */ nop -/* 0A622C 800A562C 45000037 */ bc1f .L800A570C -/* 0A6230 800A5630 00000000 */ nop -/* 0A6234 800A5634 805903FC */ lb $t9, 0x3fc($v0) -/* 0A6238 800A5638 C44A03EC */ lwc1 $f10, 0x3ec($v0) -/* 0A623C 800A563C 44998000 */ mtc1 $t9, $f16 -/* 0A6240 800A5640 00000000 */ nop -/* 0A6244 800A5644 468084A0 */ cvt.s.w $f18, $f16 -/* 0A6248 800A5648 46125032 */ c.eq.s $f10, $f18 -/* 0A624C 800A564C 00000000 */ nop -/* 0A6250 800A5650 4500002E */ bc1f .L800A570C -/* 0A6254 800A5654 00000000 */ nop -/* 0A6258 800A5658 804D03DD */ lb $t5, 0x3dd($v0) -/* 0A625C 800A565C 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A6260 800A5660 15A0002A */ bnez $t5, .L800A570C -/* 0A6264 800A5664 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A6268 800A5668 8CAC0000 */ lw $t4, ($a1) -/* 0A626C 800A566C 00000000 */ nop -/* 0A6270 800A5670 15800007 */ bnez $t4, .L800A5690 -/* 0A6274 800A5674 00000000 */ nop -/* 0A6278 800A5678 0C000741 */ jal play_sound_global -/* 0A627C 800A567C 24040100 */ li $a0, 256 -/* 0A6280 800A5680 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6284 800A5684 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6288 800A5688 8D020000 */ lw $v0, ($t0) -/* 0A628C 800A568C 24060001 */ li $a2, 1 -.L800A5690: -/* 0A6290 800A5690 1000001E */ b .L800A570C -/* 0A6294 800A5694 A04603DD */ sb $a2, 0x3dd($v0) -.L800A5698: -/* 0A6298 800A5698 1461001C */ bne $v1, $at, .L800A570C -/* 0A629C 800A569C 00000000 */ nop -/* 0A62A0 800A56A0 8FAB001C */ lw $t3, 0x1c($sp) -/* 0A62A4 800A56A4 C44403CC */ lwc1 $f4, 0x3cc($v0) -/* 0A62A8 800A56A8 000B7880 */ sll $t7, $t3, 2 -/* 0A62AC 800A56AC 01EB7823 */ subu $t7, $t7, $t3 -/* 0A62B0 800A56B0 000F7880 */ sll $t7, $t7, 2 -/* 0A62B4 800A56B4 01EB7821 */ addu $t7, $t7, $t3 -/* 0A62B8 800A56B8 448F3000 */ mtc1 $t7, $f6 -/* 0A62BC 800A56BC 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A62C0 800A56C0 46803020 */ cvt.s.w $f0, $f6 -/* 0A62C4 800A56C4 44813000 */ mtc1 $at, $f6 -/* 0A62C8 800A56C8 46002201 */ sub.s $f8, $f4, $f0 -/* 0A62CC 800A56CC E44803CC */ swc1 $f8, 0x3cc($v0) -/* 0A62D0 800A56D0 8D020000 */ lw $v0, ($t0) -/* 0A62D4 800A56D4 00000000 */ nop -/* 0A62D8 800A56D8 C45003EC */ lwc1 $f16, 0x3ec($v0) -/* 0A62DC 800A56DC 00000000 */ nop -/* 0A62E0 800A56E0 46008280 */ add.s $f10, $f16, $f0 -/* 0A62E4 800A56E4 E44A03EC */ swc1 $f10, 0x3ec($v0) -/* 0A62E8 800A56E8 8D020000 */ lw $v0, ($t0) -/* 0A62EC 800A56EC 00000000 */ nop -/* 0A62F0 800A56F0 C45203CC */ lwc1 $f18, 0x3cc($v0) -/* 0A62F4 800A56F4 00000000 */ nop -/* 0A62F8 800A56F8 4606903C */ c.lt.s $f18, $f6 -/* 0A62FC 800A56FC 00000000 */ nop -/* 0A6300 800A5700 45000002 */ bc1f .L800A570C -/* 0A6304 800A5704 00000000 */ nop -/* 0A6308 800A5708 A04003DA */ sb $zero, 0x3da($v0) -.L800A570C: -/* 0A630C 800A570C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A6310 800A5710 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A6314 800A5714 8C820000 */ lw $v0, ($a0) -/* 0A6318 800A5718 3C18FA00 */ lui $t8, 0xfa00 -/* 0A631C 800A571C 244E0008 */ addiu $t6, $v0, 8 -/* 0A6320 800A5720 AC8E0000 */ sw $t6, ($a0) -/* 0A6324 800A5724 2419FFA0 */ li $t9, -96 -/* 0A6328 800A5728 AC590004 */ sw $t9, 4($v0) -/* 0A632C 800A572C AC580000 */ sw $t8, ($v0) -/* 0A6330 800A5730 8D070000 */ lw $a3, ($t0) -/* 0A6334 800A5734 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6338 800A5738 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A633C 800A573C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6340 800A5740 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A6344 800A5744 0C02A980 */ jal func_800AA600 -/* 0A6348 800A5748 24E703E0 */ addiu $a3, $a3, 0x3e0 -/* 0A634C 800A574C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6350 800A5750 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6354 800A5754 8D070000 */ lw $a3, ($t0) -/* 0A6358 800A5758 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A635C 800A575C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6360 800A5760 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6364 800A5764 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6368 800A5768 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A636C 800A576C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A6370 800A5770 0C02A980 */ jal func_800AA600 -/* 0A6374 800A5774 24E703C0 */ addiu $a3, $a3, 0x3c0 -/* 0A6378 800A5778 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A637C 800A577C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A6380 800A5780 8C820000 */ lw $v0, ($a0) -/* 0A6384 800A5784 3C0CFA00 */ lui $t4, 0xfa00 -/* 0A6388 800A5788 244D0008 */ addiu $t5, $v0, 8 -/* 0A638C 800A578C AC8D0000 */ sw $t5, ($a0) -/* 0A6390 800A5790 240BFFFF */ li $t3, -1 -/* 0A6394 800A5794 AC4B0004 */ sw $t3, 4($v0) -/* 0A6398 800A5798 100000AC */ b .L800A5A4C -/* 0A639C 800A579C AC4C0000 */ sw $t4, ($v0) -/* 0A63A0 800A57A0 24010003 */ li $at, 3 -.L800A57A4: -/* 0A63A4 800A57A4 146100A9 */ bne $v1, $at, .L800A5A4C -/* 0A63A8 800A57A8 00000000 */ nop -/* 0A63AC 800A57AC 804303DB */ lb $v1, 0x3db($v0) -/* 0A63B0 800A57B0 2401FFFF */ li $at, -1 -/* 0A63B4 800A57B4 14610064 */ bne $v1, $at, .L800A5948 -/* 0A63B8 800A57B8 00000000 */ nop -/* 0A63BC 800A57BC 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A63C0 800A57C0 804303DC */ lb $v1, 0x3dc($v0) -/* 0A63C4 800A57C4 00047880 */ sll $t7, $a0, 2 -/* 0A63C8 800A57C8 01E47823 */ subu $t7, $t7, $a0 -/* 0A63CC 800A57CC 000F7880 */ sll $t7, $t7, 2 -/* 0A63D0 800A57D0 01E47821 */ addu $t7, $t7, $a0 -/* 0A63D4 800A57D4 006F7021 */ addu $t6, $v1, $t7 -/* 0A63D8 800A57D8 448E2000 */ mtc1 $t6, $f4 -/* 0A63DC 800A57DC C44003CC */ lwc1 $f0, 0x3cc($v0) -/* 0A63E0 800A57E0 46802220 */ cvt.s.w $f8, $f4 -/* 0A63E4 800A57E4 01E02025 */ move $a0, $t7 -/* 0A63E8 800A57E8 00002825 */ move $a1, $zero -/* 0A63EC 800A57EC 4600403C */ c.lt.s $f8, $f0 -/* 0A63F0 800A57F0 00000000 */ nop -/* 0A63F4 800A57F4 45000007 */ bc1f .L800A5814 -/* 0A63F8 800A57F8 00000000 */ nop -/* 0A63FC 800A57FC 44848000 */ mtc1 $a0, $f16 -/* 0A6400 800A5800 00000000 */ nop -/* 0A6404 800A5804 468082A0 */ cvt.s.w $f10, $f16 -/* 0A6408 800A5808 460A0481 */ sub.s $f18, $f0, $f10 -/* 0A640C 800A580C 10000005 */ b .L800A5824 -/* 0A6410 800A5810 E45203CC */ swc1 $f18, 0x3cc($v0) -.L800A5814: -/* 0A6414 800A5814 44833000 */ mtc1 $v1, $f6 -/* 0A6418 800A5818 00000000 */ nop -/* 0A641C 800A581C 46803120 */ cvt.s.w $f4, $f6 -/* 0A6420 800A5820 E44403CC */ swc1 $f4, 0x3cc($v0) -.L800A5824: -/* 0A6424 800A5824 8D020000 */ lw $v0, ($t0) -/* 0A6428 800A5828 00000000 */ nop -/* 0A642C 800A582C 804303BC */ lb $v1, 0x3bc($v0) -/* 0A6430 800A5830 C44003AC */ lwc1 $f0, 0x3ac($v0) -/* 0A6434 800A5834 0064C023 */ subu $t8, $v1, $a0 -/* 0A6438 800A5838 44984000 */ mtc1 $t8, $f8 -/* 0A643C 800A583C 00000000 */ nop -/* 0A6440 800A5840 46804420 */ cvt.s.w $f16, $f8 -/* 0A6444 800A5844 4610003C */ c.lt.s $f0, $f16 -/* 0A6448 800A5848 00000000 */ nop -/* 0A644C 800A584C 45000007 */ bc1f .L800A586C -/* 0A6450 800A5850 00000000 */ nop -/* 0A6454 800A5854 44845000 */ mtc1 $a0, $f10 -/* 0A6458 800A5858 00000000 */ nop -/* 0A645C 800A585C 468054A0 */ cvt.s.w $f18, $f10 -/* 0A6460 800A5860 46120180 */ add.s $f6, $f0, $f18 -/* 0A6464 800A5864 10000005 */ b .L800A587C -/* 0A6468 800A5868 E44603AC */ swc1 $f6, 0x3ac($v0) -.L800A586C: -/* 0A646C 800A586C 44832000 */ mtc1 $v1, $f4 -/* 0A6470 800A5870 00000000 */ nop -/* 0A6474 800A5874 46802220 */ cvt.s.w $f8, $f4 -/* 0A6478 800A5878 E44803AC */ swc1 $f8, 0x3ac($v0) -.L800A587C: -/* 0A647C 800A587C 81390193 */ lb $t9, 0x193($t1) -/* 0A6480 800A5880 24040016 */ li $a0, 22 -/* 0A6484 800A5884 00196880 */ sll $t5, $t9, 2 -/* 0A6488 800A5888 012D6021 */ addu $t4, $t1, $t5 -/* 0A648C 800A588C 8D8B0128 */ lw $t3, 0x128($t4) -/* 0A6490 800A5890 00000000 */ nop -/* 0A6494 800A5894 2961003C */ slti $at, $t3, 0x3c -/* 0A6498 800A5898 14200007 */ bnez $at, .L800A58B8 -/* 0A649C 800A589C 00000000 */ nop -/* 0A64A0 800A58A0 8D0F0000 */ lw $t7, ($t0) -/* 0A64A4 800A58A4 0C000741 */ jal play_sound_global -/* 0A64A8 800A58A8 A1E603DB */ sb $a2, 0x3db($t7) -/* 0A64AC 800A58AC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A64B0 800A58B0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A64B4 800A58B4 24060001 */ li $a2, 1 -.L800A58B8: -/* 0A64B8 800A58B8 8D020000 */ lw $v0, ($t0) -/* 0A64BC 800A58BC 00000000 */ nop -/* 0A64C0 800A58C0 804E03DC */ lb $t6, 0x3dc($v0) -/* 0A64C4 800A58C4 C45003CC */ lwc1 $f16, 0x3cc($v0) -/* 0A64C8 800A58C8 448E5000 */ mtc1 $t6, $f10 -/* 0A64CC 800A58CC 00000000 */ nop -/* 0A64D0 800A58D0 468054A0 */ cvt.s.w $f18, $f10 -/* 0A64D4 800A58D4 46128032 */ c.eq.s $f16, $f18 -/* 0A64D8 800A58D8 00000000 */ nop -/* 0A64DC 800A58DC 45000037 */ bc1f .L800A59BC -/* 0A64E0 800A58E0 00000000 */ nop -/* 0A64E4 800A58E4 805803BC */ lb $t8, 0x3bc($v0) -/* 0A64E8 800A58E8 C44603AC */ lwc1 $f6, 0x3ac($v0) -/* 0A64EC 800A58EC 44982000 */ mtc1 $t8, $f4 -/* 0A64F0 800A58F0 00000000 */ nop -/* 0A64F4 800A58F4 46802220 */ cvt.s.w $f8, $f4 -/* 0A64F8 800A58F8 46083032 */ c.eq.s $f6, $f8 -/* 0A64FC 800A58FC 00000000 */ nop -/* 0A6500 800A5900 4500002E */ bc1f .L800A59BC -/* 0A6504 800A5904 00000000 */ nop -/* 0A6508 800A5908 805903DD */ lb $t9, 0x3dd($v0) -/* 0A650C 800A590C 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A6510 800A5910 1720002A */ bnez $t9, .L800A59BC -/* 0A6514 800A5914 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A6518 800A5918 8CAD0000 */ lw $t5, ($a1) -/* 0A651C 800A591C 00000000 */ nop -/* 0A6520 800A5920 15A00007 */ bnez $t5, .L800A5940 -/* 0A6524 800A5924 00000000 */ nop -/* 0A6528 800A5928 0C000741 */ jal play_sound_global -/* 0A652C 800A592C 24040101 */ li $a0, 257 -/* 0A6530 800A5930 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6534 800A5934 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6538 800A5938 8D020000 */ lw $v0, ($t0) -/* 0A653C 800A593C 24060001 */ li $a2, 1 -.L800A5940: -/* 0A6540 800A5940 1000001E */ b .L800A59BC -/* 0A6544 800A5944 A04603DD */ sb $a2, 0x3dd($v0) -.L800A5948: -/* 0A6548 800A5948 14C3001C */ bne $a2, $v1, .L800A59BC -/* 0A654C 800A594C 00000000 */ nop -/* 0A6550 800A5950 8FAC001C */ lw $t4, 0x1c($sp) -/* 0A6554 800A5954 C45003CC */ lwc1 $f16, 0x3cc($v0) -/* 0A6558 800A5958 000C5880 */ sll $t3, $t4, 2 -/* 0A655C 800A595C 016C5823 */ subu $t3, $t3, $t4 -/* 0A6560 800A5960 000B5880 */ sll $t3, $t3, 2 -/* 0A6564 800A5964 016C5821 */ addu $t3, $t3, $t4 -/* 0A6568 800A5968 448B5000 */ mtc1 $t3, $f10 -/* 0A656C 800A596C 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 0A6570 800A5970 46805020 */ cvt.s.w $f0, $f10 -/* 0A6574 800A5974 44814000 */ mtc1 $at, $f8 -/* 0A6578 800A5978 46008480 */ add.s $f18, $f16, $f0 -/* 0A657C 800A597C E45203CC */ swc1 $f18, 0x3cc($v0) -/* 0A6580 800A5980 8D020000 */ lw $v0, ($t0) -/* 0A6584 800A5984 00000000 */ nop -/* 0A6588 800A5988 C44403AC */ lwc1 $f4, 0x3ac($v0) -/* 0A658C 800A598C 00000000 */ nop -/* 0A6590 800A5990 46002181 */ sub.s $f6, $f4, $f0 -/* 0A6594 800A5994 E44603AC */ swc1 $f6, 0x3ac($v0) -/* 0A6598 800A5998 8D020000 */ lw $v0, ($t0) -/* 0A659C 800A599C 00000000 */ nop -/* 0A65A0 800A59A0 C44A03CC */ lwc1 $f10, 0x3cc($v0) -/* 0A65A4 800A59A4 00000000 */ nop -/* 0A65A8 800A59A8 460A403C */ c.lt.s $f8, $f10 -/* 0A65AC 800A59AC 00000000 */ nop -/* 0A65B0 800A59B0 45000002 */ bc1f .L800A59BC -/* 0A65B4 800A59B4 00000000 */ nop -/* 0A65B8 800A59B8 A04003DA */ sb $zero, 0x3da($v0) -.L800A59BC: -/* 0A65BC 800A59BC 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A65C0 800A59C0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A65C4 800A59C4 8C820000 */ lw $v0, ($a0) -/* 0A65C8 800A59C8 3C0EFA00 */ lui $t6, 0xfa00 -/* 0A65CC 800A59CC 244F0008 */ addiu $t7, $v0, 8 -/* 0A65D0 800A59D0 AC8F0000 */ sw $t7, ($a0) -/* 0A65D4 800A59D4 2418FFA0 */ li $t8, -96 -/* 0A65D8 800A59D8 AC580004 */ sw $t8, 4($v0) -/* 0A65DC 800A59DC AC4E0000 */ sw $t6, ($v0) -/* 0A65E0 800A59E0 8D070000 */ lw $a3, ($t0) -/* 0A65E4 800A59E4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A65E8 800A59E8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A65EC 800A59EC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A65F0 800A59F0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A65F4 800A59F4 0C02A980 */ jal func_800AA600 -/* 0A65F8 800A59F8 24E703A0 */ addiu $a3, $a3, 0x3a0 -/* 0A65FC 800A59FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6600 800A5A00 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6604 800A5A04 8D070000 */ lw $a3, ($t0) -/* 0A6608 800A5A08 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A660C 800A5A0C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6610 800A5A10 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6614 800A5A14 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6618 800A5A18 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A661C 800A5A1C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A6620 800A5A20 0C02A980 */ jal func_800AA600 -/* 0A6624 800A5A24 24E703C0 */ addiu $a3, $a3, 0x3c0 -/* 0A6628 800A5A28 3C028012 */ lui $v0, %hi(gHUDCurrDisplayList) # $v0, 0x8012 -/* 0A662C 800A5A2C 8C426CFC */ lw $v0, %lo(gHUDCurrDisplayList)($v0) -/* 0A6630 800A5A30 3C018012 */ lui $at, %hi(gHUDCurrDisplayList) # $at, 0x8012 -/* 0A6634 800A5A34 24590008 */ addiu $t9, $v0, 8 -/* 0A6638 800A5A38 AC396CFC */ sw $t9, %lo(gHUDCurrDisplayList)($at) -/* 0A663C 800A5A3C 3C0DFA00 */ lui $t5, 0xfa00 -/* 0A6640 800A5A40 240CFFFF */ li $t4, -1 -/* 0A6644 800A5A44 AC4C0004 */ sw $t4, 4($v0) -/* 0A6648 800A5A48 AC4D0000 */ sw $t5, ($v0) -.L800A5A4C: -/* 0A664C 800A5A4C 0C01EFC7 */ jal func_8007BF1C -/* 0A6650 800A5A50 00002025 */ move $a0, $zero -/* 0A6654 800A5A54 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A6658 800A5A58 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A665C 800A5A5C 03E00008 */ jr $ra -/* 0A6660 800A5A60 00000000 */ nop - +glabel func_800A4F50 +/* 0A5B50 800A4F50 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A5B54 800A4F54 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A5B58 800A4F58 AFA40018 */ sw $a0, 0x18($sp) +/* 0A5B5C 800A4F5C AFA5001C */ sw $a1, 0x1c($sp) +/* 0A5B60 800A4F60 808F01D8 */ lb $t7, 0x1d8($a0) +/* 0A5B64 800A4F64 3C028012 */ lui $v0, %hi(gHUDNumPlayers) # $v0, 0x8012 +/* 0A5B68 800A4F68 15E00089 */ bnez $t7, .L800A5190 +/* 0A5B6C 800A4F6C 00000000 */ nop +/* 0A5B70 800A4F70 8C426D0C */ lw $v0, %lo(gHUDNumPlayers)($v0) +/* 0A5B74 800A4F74 00000000 */ nop +/* 0A5B78 800A4F78 1840000B */ blez $v0, .L800A4FA8 +/* 0A5B7C 800A4F7C 00000000 */ nop +/* 0A5B80 800A4F80 80830193 */ lb $v1, 0x193($a0) +/* 0A5B84 800A4F84 00000000 */ nop +/* 0A5B88 800A4F88 18600007 */ blez $v1, .L800A4FA8 +/* 0A5B8C 800A4F8C 0003C080 */ sll $t8, $v1, 2 +/* 0A5B90 800A4F90 0098C821 */ addu $t9, $a0, $t8 +/* 0A5B94 800A4F94 8F2B0128 */ lw $t3, 0x128($t9) +/* 0A5B98 800A4F98 00000000 */ nop +/* 0A5B9C 800A4F9C 296100B4 */ slti $at, $t3, 0xb4 +/* 0A5BA0 800A4FA0 1420007B */ bnez $at, .L800A5190 +/* 0A5BA4 800A4FA4 00000000 */ nop +.L800A4FA8: +/* 0A5BA8 800A4FA8 1840000B */ blez $v0, .L800A4FD8 +/* 0A5BAC 800A4FAC 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 +/* 0A5BB0 800A4FB0 8FAD0018 */ lw $t5, 0x18($sp) +/* 0A5BB4 800A4FB4 00026080 */ sll $t4, $v0, 2 +/* 0A5BB8 800A4FB8 85AF0000 */ lh $t7, ($t5) +/* 0A5BBC 800A4FBC 3C18800E */ lui $t8, %hi(D_800E2794) # $t8, 0x800e +/* 0A5BC0 800A4FC0 018F7021 */ addu $t6, $t4, $t7 +/* 0A5BC4 800A4FC4 030EC021 */ addu $t8, $t8, $t6 +/* 0A5BC8 800A4FC8 93182794 */ lbu $t8, %lo(D_800E2794)($t8) +/* 0A5BCC 800A4FCC 24010003 */ li $at, 3 +/* 0A5BD0 800A4FD0 1701006F */ bne $t8, $at, .L800A5190 +/* 0A5BD4 800A4FD4 00000000 */ nop +.L800A4FD8: +/* 0A5BD8 800A4FD8 8FAD0018 */ lw $t5, 0x18($sp) +/* 0A5BDC 800A4FDC 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) +/* 0A5BE0 800A4FE0 81AC0194 */ lb $t4, 0x194($t5) +/* 0A5BE4 800A4FE4 832B004B */ lb $t3, 0x4b($t9) +/* 0A5BE8 800A4FE8 258F0001 */ addiu $t7, $t4, 1 +/* 0A5BEC 800A4FEC 156F0029 */ bne $t3, $t7, .L800A5094 +/* 0A5BF0 800A4FF0 28410002 */ slti $at, $v0, 2 +/* 0A5BF4 800A4FF4 10200027 */ beqz $at, .L800A5094 +/* 0A5BF8 800A4FF8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5BFC 800A4FFC 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5C00 800A5000 8D020000 */ lw $v0, ($t0) +/* 0A5C04 800A5004 8FB8001C */ lw $t8, 0x1c($sp) +/* 0A5C08 800A5008 804E021A */ lb $t6, 0x21a($v0) +/* 0A5C0C 800A500C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A5C10 800A5010 01D8C821 */ addu $t9, $t6, $t8 +/* 0A5C14 800A5014 A059021A */ sb $t9, 0x21a($v0) +/* 0A5C18 800A5018 8D020000 */ lw $v0, ($t0) +/* 0A5C1C 800A501C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5C20 800A5020 804D021A */ lb $t5, 0x21a($v0) +/* 0A5C24 800A5024 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A5C28 800A5028 29A10007 */ slti $at, $t5, 7 +/* 0A5C2C 800A502C 14200015 */ bnez $at, .L800A5084 +/* 0A5C30 800A5030 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A5C34 800A5034 844C0218 */ lh $t4, 0x218($v0) +/* 0A5C38 800A5038 00000000 */ nop +/* 0A5C3C 800A503C 258B0001 */ addiu $t3, $t4, 1 +/* 0A5C40 800A5040 A44B0218 */ sh $t3, 0x218($v0) +/* 0A5C44 800A5044 8D020000 */ lw $v0, ($t0) +/* 0A5C48 800A5048 00000000 */ nop +/* 0A5C4C 800A504C 804F021A */ lb $t7, 0x21a($v0) +/* 0A5C50 800A5050 00000000 */ nop +/* 0A5C54 800A5054 25EEFFFA */ addiu $t6, $t7, -6 +/* 0A5C58 800A5058 A04E021A */ sb $t6, 0x21a($v0) +/* 0A5C5C 800A505C 8D020000 */ lw $v0, ($t0) +/* 0A5C60 800A5060 00000000 */ nop +/* 0A5C64 800A5064 84580218 */ lh $t8, 0x218($v0) +/* 0A5C68 800A5068 00000000 */ nop +/* 0A5C6C 800A506C 2B010005 */ slti $at, $t8, 5 +/* 0A5C70 800A5070 14200004 */ bnez $at, .L800A5084 +/* 0A5C74 800A5074 00000000 */ nop +/* 0A5C78 800A5078 A4400218 */ sh $zero, 0x218($v0) +/* 0A5C7C 800A507C 8D020000 */ lw $v0, ($t0) +/* 0A5C80 800A5080 00000000 */ nop +.L800A5084: +/* 0A5C84 800A5084 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A5C88 800A5088 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5C8C 800A508C 0C02A980 */ jal func_800AA600 +/* 0A5C90 800A5090 24470200 */ addiu $a3, $v0, 0x200 +.L800A5094: +/* 0A5C94 800A5094 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5C98 800A5098 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5C9C 800A509C 8D070000 */ lw $a3, ($t0) +/* 0A5CA0 800A50A0 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A5CA4 800A50A4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5CA8 800A50A8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A5CAC 800A50AC 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5CB0 800A50B0 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A5CB4 800A50B4 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A5CB8 800A50B8 0C02A980 */ jal func_800AA600 +/* 0A5CBC 800A50BC 24E70060 */ addiu $a3, $a3, 0x60 +/* 0A5CC0 800A50C0 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A5CC4 800A50C4 254A6D60 */ addiu $t2, %lo(D_80126D60) # addiu $t2, $t2, 0x6d60 +/* 0A5CC8 800A50C8 8D590000 */ lw $t9, ($t2) +/* 0A5CCC 800A50CC 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5CD0 800A50D0 8322004B */ lb $v0, 0x4b($t9) +/* 0A5CD4 800A50D4 81230194 */ lb $v1, 0x194($t1) +/* 0A5CD8 800A50D8 244DFFFF */ addiu $t5, $v0, -1 +/* 0A5CDC 800A50DC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5CE0 800A50E0 006D082A */ slt $at, $v1, $t5 +/* 0A5CE4 800A50E4 14200004 */ bnez $at, .L800A50F8 +/* 0A5CE8 800A50E8 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5CEC 800A50EC 8D0C0000 */ lw $t4, ($t0) +/* 0A5CF0 800A50F0 10000004 */ b .L800A5104 +/* 0A5CF4 800A50F4 A5820098 */ sh $v0, 0x98($t4) +.L800A50F8: +/* 0A5CF8 800A50F8 8D0F0000 */ lw $t7, ($t0) +/* 0A5CFC 800A50FC 246B0001 */ addiu $t3, $v1, 1 +/* 0A5D00 800A5100 A5EB0098 */ sh $t3, 0x98($t7) +.L800A5104: +/* 0A5D04 800A5104 8D4E0000 */ lw $t6, ($t2) +/* 0A5D08 800A5108 8D190000 */ lw $t9, ($t0) +/* 0A5D0C 800A510C 81D8004B */ lb $t8, 0x4b($t6) +/* 0A5D10 800A5110 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A5D14 800A5114 A73800D8 */ sh $t8, 0xd8($t9) +/* 0A5D18 800A5118 8D070000 */ lw $a3, ($t0) +/* 0A5D1C 800A511C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5D20 800A5120 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A5D24 800A5124 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5D28 800A5128 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A5D2C 800A512C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A5D30 800A5130 0C02A980 */ jal func_800AA600 +/* 0A5D34 800A5134 24E70080 */ addiu $a3, $a3, 0x80 +/* 0A5D38 800A5138 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5D3C 800A513C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5D40 800A5140 8D070000 */ lw $a3, ($t0) +/* 0A5D44 800A5144 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A5D48 800A5148 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5D4C 800A514C 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A5D50 800A5150 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5D54 800A5154 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A5D58 800A5158 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A5D5C 800A515C 0C02A980 */ jal func_800AA600 +/* 0A5D60 800A5160 24E700A0 */ addiu $a3, $a3, 0xa0 +/* 0A5D64 800A5164 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5D68 800A5168 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5D6C 800A516C 8D070000 */ lw $a3, ($t0) +/* 0A5D70 800A5170 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A5D74 800A5174 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A5D78 800A5178 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A5D7C 800A517C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A5D80 800A5180 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A5D84 800A5184 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A5D88 800A5188 0C02A980 */ jal func_800AA600 +/* 0A5D8C 800A518C 24E700C0 */ addiu $a3, $a3, 0xc0 +.L800A5190: +/* 0A5D90 800A5190 3C0D8012 */ lui $t5, %hi(gHUDNumPlayers) # $t5, 0x8012 +/* 0A5D94 800A5194 8DAD6D0C */ lw $t5, %lo(gHUDNumPlayers)($t5) +/* 0A5D98 800A5198 24010001 */ li $at, 1 +/* 0A5D9C 800A519C 15A10003 */ bne $t5, $at, .L800A51AC +/* 0A5DA0 800A51A0 00000000 */ nop +/* 0A5DA4 800A51A4 0C01EFC7 */ jal func_8007BF1C +/* 0A5DA8 800A51A8 24040001 */ li $a0, 1 +.L800A51AC: +/* 0A5DAC 800A51AC 0C01BAA8 */ jal is_game_paused +/* 0A5DB0 800A51B0 00000000 */ nop +/* 0A5DB4 800A51B4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5DB8 800A51B8 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5DBC 800A51BC 14400223 */ bnez $v0, .L800A5A4C +/* 0A5DC0 800A51C0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5DC4 800A51C4 81230193 */ lb $v1, 0x193($t1) +/* 0A5DC8 800A51C8 00000000 */ nop +/* 0A5DCC 800A51CC 00036080 */ sll $t4, $v1, 2 +/* 0A5DD0 800A51D0 012C5821 */ addu $t3, $t1, $t4 +/* 0A5DD4 800A51D4 8D6F0128 */ lw $t7, 0x128($t3) +/* 0A5DD8 800A51D8 00000000 */ nop +/* 0A5DDC 800A51DC 29E1001E */ slti $at, $t7, 0x1e +/* 0A5DE0 800A51E0 102000BF */ beqz $at, .L800A54E0 +/* 0A5DE4 800A51E4 00000000 */ nop +/* 0A5DE8 800A51E8 8D020000 */ lw $v0, ($t0) +/* 0A5DEC 800A51EC 00000000 */ nop +/* 0A5DF0 800A51F0 804E03DA */ lb $t6, 0x3da($v0) +/* 0A5DF4 800A51F4 00000000 */ nop +/* 0A5DF8 800A51F8 15C000B9 */ bnez $t6, .L800A54E0 +/* 0A5DFC 800A51FC 00000000 */ nop +/* 0A5E00 800A5200 813801D8 */ lb $t8, 0x1d8($t1) +/* 0A5E04 800A5204 24060001 */ li $a2, 1 +/* 0A5E08 800A5208 170000B5 */ bnez $t8, .L800A54E0 +/* 0A5E0C 800A520C 00000000 */ nop +/* 0A5E10 800A5210 14C30058 */ bne $a2, $v1, .L800A5374 +/* 0A5E14 800A5214 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 +/* 0A5E18 800A5218 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) +/* 0A5E1C 800A521C 240C0002 */ li $t4, 2 +/* 0A5E20 800A5220 832D004B */ lb $t5, 0x4b($t9) +/* 0A5E24 800A5224 24040016 */ li $a0, 22 +/* 0A5E28 800A5228 29A10003 */ slti $at, $t5, 3 +/* 0A5E2C 800A522C 14200051 */ bnez $at, .L800A5374 +/* 0A5E30 800A5230 00000000 */ nop +/* 0A5E34 800A5234 A04C03DA */ sb $t4, 0x3da($v0) +/* 0A5E38 800A5238 8D0B0000 */ lw $t3, ($t0) +/* 0A5E3C 800A523C 00002825 */ move $a1, $zero +/* 0A5E40 800A5240 A16603DB */ sb $a2, 0x3db($t3) +/* 0A5E44 800A5244 8D0F0000 */ lw $t7, ($t0) +/* 0A5E48 800A5248 0C000741 */ jal play_sound_global +/* 0A5E4C 800A524C A1E003DD */ sb $zero, 0x3dd($t7) +/* 0A5E50 800A5250 3C028012 */ lui $v0, %hi(gHUDNumPlayers) # $v0, 0x8012 +/* 0A5E54 800A5254 8C426D0C */ lw $v0, %lo(gHUDNumPlayers)($v0) +/* 0A5E58 800A5258 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5E5C 800A525C 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5E60 800A5260 10400006 */ beqz $v0, .L800A527C +/* 0A5E64 800A5264 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5E68 800A5268 24010001 */ li $at, 1 +/* 0A5E6C 800A526C 10410012 */ beq $v0, $at, .L800A52B8 +/* 0A5E70 800A5270 240FFFF0 */ li $t7, -16 +/* 0A5E74 800A5274 1000001E */ b .L800A52F0 +/* 0A5E78 800A5278 24010002 */ li $at, 2 +.L800A527C: +/* 0A5E7C 800A527C 8D180000 */ lw $t8, ($t0) +/* 0A5E80 800A5280 240EFFEB */ li $t6, -21 +/* 0A5E84 800A5284 A30E03DC */ sb $t6, 0x3dc($t8) +/* 0A5E88 800A5288 8D0D0000 */ lw $t5, ($t0) +/* 0A5E8C 800A528C 24190020 */ li $t9, 32 +/* 0A5E90 800A5290 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A5E94 800A5294 A1B903FC */ sb $t9, 0x3fc($t5) +/* 0A5E98 800A5298 8D0C0000 */ lw $t4, ($t0) +/* 0A5E9C 800A529C 44812000 */ mtc1 $at, $f4 +/* 0A5EA0 800A52A0 3C014353 */ li $at, 0x43530000 # 211.000000 +/* 0A5EA4 800A52A4 E58403CC */ swc1 $f4, 0x3cc($t4) +/* 0A5EA8 800A52A8 8D0B0000 */ lw $t3, ($t0) +/* 0A5EAC 800A52AC 44813000 */ mtc1 $at, $f6 +/* 0A5EB0 800A52B0 1000008B */ b .L800A54E0 +/* 0A5EB4 800A52B4 E56603EC */ swc1 $f6, 0x3ec($t3) +.L800A52B8: +/* 0A5EB8 800A52B8 8D0E0000 */ lw $t6, ($t0) +/* 0A5EBC 800A52BC 2418001B */ li $t8, 27 +/* 0A5EC0 800A52C0 A1CF03DC */ sb $t7, 0x3dc($t6) +/* 0A5EC4 800A52C4 8D190000 */ lw $t9, ($t0) +/* 0A5EC8 800A52C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A5ECC 800A52CC A33803FC */ sb $t8, 0x3fc($t9) +/* 0A5ED0 800A52D0 8D0D0000 */ lw $t5, ($t0) +/* 0A5ED4 800A52D4 44814000 */ mtc1 $at, $f8 +/* 0A5ED8 800A52D8 3C014353 */ li $at, 0x43530000 # 211.000000 +/* 0A5EDC 800A52DC E5A803CC */ swc1 $f8, 0x3cc($t5) +/* 0A5EE0 800A52E0 8D0C0000 */ lw $t4, ($t0) +/* 0A5EE4 800A52E4 44815000 */ mtc1 $at, $f10 +/* 0A5EE8 800A52E8 1000007D */ b .L800A54E0 +/* 0A5EEC 800A52EC E58A03EC */ swc1 $f10, 0x3ec($t4) +.L800A52F0: +/* 0A5EF0 800A52F0 85220000 */ lh $v0, ($t1) +/* 0A5EF4 800A52F4 240CFFA6 */ li $t4, -90 +/* 0A5EF8 800A52F8 10400011 */ beqz $v0, .L800A5340 +/* 0A5EFC 800A52FC 240FFFC5 */ li $t7, -59 +/* 0A5F00 800A5300 1041000F */ beq $v0, $at, .L800A5340 +/* 0A5F04 800A5304 240B003C */ li $t3, 60 +/* 0A5F08 800A5308 8D0F0000 */ lw $t7, ($t0) +/* 0A5F0C 800A530C 240E005B */ li $t6, 91 +/* 0A5F10 800A5310 A1EB03DC */ sb $t3, 0x3dc($t7) +/* 0A5F14 800A5314 8D180000 */ lw $t8, ($t0) +/* 0A5F18 800A5318 3C01C28C */ li $at, 0xC28C0000 # -70.000000 +/* 0A5F1C 800A531C A30E03FC */ sb $t6, 0x3fc($t8) +/* 0A5F20 800A5320 8D190000 */ lw $t9, ($t0) +/* 0A5F24 800A5324 44818000 */ mtc1 $at, $f16 +/* 0A5F28 800A5328 3C01435D */ li $at, 0x435D0000 # 221.000000 +/* 0A5F2C 800A532C E73003CC */ swc1 $f16, 0x3cc($t9) +/* 0A5F30 800A5330 8D0D0000 */ lw $t5, ($t0) +/* 0A5F34 800A5334 44819000 */ mtc1 $at, $f18 +/* 0A5F38 800A5338 10000069 */ b .L800A54E0 +/* 0A5F3C 800A533C E5B203EC */ swc1 $f18, 0x3ec($t5) +.L800A5340: +/* 0A5F40 800A5340 8D0B0000 */ lw $t3, ($t0) +/* 0A5F44 800A5344 3C01C35C */ li $at, 0xC35C0000 # -220.000000 +/* 0A5F48 800A5348 A16C03DC */ sb $t4, 0x3dc($t3) +/* 0A5F4C 800A534C 8D0E0000 */ lw $t6, ($t0) +/* 0A5F50 800A5350 44812000 */ mtc1 $at, $f4 +/* 0A5F54 800A5354 A1CF03FC */ sb $t7, 0x3fc($t6) +/* 0A5F58 800A5358 8D180000 */ lw $t8, ($t0) +/* 0A5F5C 800A535C 3C01428E */ li $at, 0x428E0000 # 71.000000 +/* 0A5F60 800A5360 E70403CC */ swc1 $f4, 0x3cc($t8) +/* 0A5F64 800A5364 8D190000 */ lw $t9, ($t0) +/* 0A5F68 800A5368 44813000 */ mtc1 $at, $f6 +/* 0A5F6C 800A536C 1000005C */ b .L800A54E0 +/* 0A5F70 800A5370 E72603EC */ swc1 $f6, 0x3ec($t9) +.L800A5374: +/* 0A5F74 800A5374 3C0D8012 */ lui $t5, %hi(D_80126D60) # $t5, 0x8012 +/* 0A5F78 800A5378 8DAD6D60 */ lw $t5, %lo(D_80126D60)($t5) +/* 0A5F7C 800A537C 246B0001 */ addiu $t3, $v1, 1 +/* 0A5F80 800A5380 81AC004B */ lb $t4, 0x4b($t5) +/* 0A5F84 800A5384 00000000 */ nop +/* 0A5F88 800A5388 158B0055 */ bne $t4, $t3, .L800A54E0 +/* 0A5F8C 800A538C 00000000 */ nop +/* 0A5F90 800A5390 10600053 */ beqz $v1, .L800A54E0 +/* 0A5F94 800A5394 240F0003 */ li $t7, 3 +/* 0A5F98 800A5398 A04F03DA */ sb $t7, 0x3da($v0) +/* 0A5F9C 800A539C 8D180000 */ lw $t8, ($t0) +/* 0A5FA0 800A53A0 240EFFFF */ li $t6, -1 +/* 0A5FA4 800A53A4 A30E03DB */ sb $t6, 0x3db($t8) +/* 0A5FA8 800A53A8 8D190000 */ lw $t9, ($t0) +/* 0A5FAC 800A53AC 24040016 */ li $a0, 22 +/* 0A5FB0 800A53B0 00002825 */ move $a1, $zero +/* 0A5FB4 800A53B4 0C000741 */ jal play_sound_global +/* 0A5FB8 800A53B8 A32003DD */ sb $zero, 0x3dd($t9) +/* 0A5FBC 800A53BC 3C028012 */ lui $v0, %hi(gHUDNumPlayers) # $v0, 0x8012 +/* 0A5FC0 800A53C0 8C426D0C */ lw $v0, %lo(gHUDNumPlayers)($v0) +/* 0A5FC4 800A53C4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5FC8 800A53C8 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5FCC 800A53CC 10400006 */ beqz $v0, .L800A53E8 +/* 0A5FD0 800A53D0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5FD4 800A53D4 24010001 */ li $at, 1 +/* 0A5FD8 800A53D8 10410012 */ beq $v0, $at, .L800A5424 +/* 0A5FDC 800A53DC 24190029 */ li $t9, 41 +/* 0A5FE0 800A53E0 1000001E */ b .L800A545C +/* 0A5FE4 800A53E4 24010002 */ li $at, 2 +.L800A53E8: +/* 0A5FE8 800A53E8 8D0C0000 */ lw $t4, ($t0) +/* 0A5FEC 800A53EC 240D0033 */ li $t5, 51 +/* 0A5FF0 800A53F0 A18D03DC */ sb $t5, 0x3dc($t4) +/* 0A5FF4 800A53F4 8D0F0000 */ lw $t7, ($t0) +/* 0A5FF8 800A53F8 240BFFD7 */ li $t3, -41 +/* 0A5FFC 800A53FC 3C014352 */ li $at, 0x43520000 # 210.000000 +/* 0A6000 800A5400 A1EB03BC */ sb $t3, 0x3bc($t7) +/* 0A6004 800A5404 8D0E0000 */ lw $t6, ($t0) +/* 0A6008 800A5408 44814000 */ mtc1 $at, $f8 +/* 0A600C 800A540C 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A6010 800A5410 E5C803CC */ swc1 $f8, 0x3cc($t6) +/* 0A6014 800A5414 8D180000 */ lw $t8, ($t0) +/* 0A6018 800A5418 44815000 */ mtc1 $at, $f10 +/* 0A601C 800A541C 10000030 */ b .L800A54E0 +/* 0A6020 800A5420 E70A03AC */ swc1 $f10, 0x3ac($t8) +.L800A5424: +/* 0A6024 800A5424 8D0D0000 */ lw $t5, ($t0) +/* 0A6028 800A5428 240CFFE1 */ li $t4, -31 +/* 0A602C 800A542C A1B903DC */ sb $t9, 0x3dc($t5) +/* 0A6030 800A5430 8D0B0000 */ lw $t3, ($t0) +/* 0A6034 800A5434 3C014352 */ li $at, 0x43520000 # 210.000000 +/* 0A6038 800A5438 A16C03BC */ sb $t4, 0x3bc($t3) +/* 0A603C 800A543C 8D0F0000 */ lw $t7, ($t0) +/* 0A6040 800A5440 44818000 */ mtc1 $at, $f16 +/* 0A6044 800A5444 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A6048 800A5448 E5F003CC */ swc1 $f16, 0x3cc($t7) +/* 0A604C 800A544C 8D0E0000 */ lw $t6, ($t0) +/* 0A6050 800A5450 44819000 */ mtc1 $at, $f18 +/* 0A6054 800A5454 10000022 */ b .L800A54E0 +/* 0A6058 800A5458 E5D203AC */ swc1 $f18, 0x3ac($t6) +.L800A545C: +/* 0A605C 800A545C 85220000 */ lh $v0, ($t1) +/* 0A6060 800A5460 240EFFCE */ li $t6, -50 +/* 0A6064 800A5464 10400011 */ beqz $v0, .L800A54AC +/* 0A6068 800A5468 2419FF9C */ li $t9, -100 +/* 0A606C 800A546C 1041000F */ beq $v0, $at, .L800A54AC +/* 0A6070 800A5470 24180064 */ li $t8, 100 +/* 0A6074 800A5474 8D190000 */ lw $t9, ($t0) +/* 0A6078 800A5478 240D0032 */ li $t5, 50 +/* 0A607C 800A547C A33803DC */ sb $t8, 0x3dc($t9) +/* 0A6080 800A5480 8D0C0000 */ lw $t4, ($t0) +/* 0A6084 800A5484 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 0A6088 800A5488 A18D03BC */ sb $t5, 0x3bc($t4) +/* 0A608C 800A548C 8D0B0000 */ lw $t3, ($t0) +/* 0A6090 800A5490 44812000 */ mtc1 $at, $f4 +/* 0A6094 800A5494 3C01C248 */ li $at, 0xC2480000 # -50.000000 +/* 0A6098 800A5498 E56403CC */ swc1 $f4, 0x3cc($t3) +/* 0A609C 800A549C 8D0F0000 */ lw $t7, ($t0) +/* 0A60A0 800A54A0 44813000 */ mtc1 $at, $f6 +/* 0A60A4 800A54A4 1000000E */ b .L800A54E0 +/* 0A60A8 800A54A8 E5E603AC */ swc1 $f6, 0x3ac($t7) +.L800A54AC: +/* 0A60AC 800A54AC 8D180000 */ lw $t8, ($t0) +/* 0A60B0 800A54B0 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 0A60B4 800A54B4 A30E03DC */ sb $t6, 0x3dc($t8) +/* 0A60B8 800A54B8 8D0D0000 */ lw $t5, ($t0) +/* 0A60BC 800A54BC 44814000 */ mtc1 $at, $f8 +/* 0A60C0 800A54C0 A1B903BC */ sb $t9, 0x3bc($t5) +/* 0A60C4 800A54C4 8D0C0000 */ lw $t4, ($t0) +/* 0A60C8 800A54C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A60CC 800A54CC E58803CC */ swc1 $f8, 0x3cc($t4) +/* 0A60D0 800A54D0 8D0B0000 */ lw $t3, ($t0) +/* 0A60D4 800A54D4 44815000 */ mtc1 $at, $f10 +/* 0A60D8 800A54D8 00000000 */ nop +/* 0A60DC 800A54DC E56A03AC */ swc1 $f10, 0x3ac($t3) +.L800A54E0: +/* 0A60E0 800A54E0 8D020000 */ lw $v0, ($t0) +/* 0A60E4 800A54E4 24060001 */ li $a2, 1 +/* 0A60E8 800A54E8 804303DA */ lb $v1, 0x3da($v0) +/* 0A60EC 800A54EC 24010002 */ li $at, 2 +/* 0A60F0 800A54F0 10600156 */ beqz $v1, .L800A5A4C +/* 0A60F4 800A54F4 00000000 */ nop +/* 0A60F8 800A54F8 146100AA */ bne $v1, $at, .L800A57A4 +/* 0A60FC 800A54FC 24010003 */ li $at, 3 +/* 0A6100 800A5500 804303DB */ lb $v1, 0x3db($v0) +/* 0A6104 800A5504 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A6108 800A5508 14C30063 */ bne $a2, $v1, .L800A5698 +/* 0A610C 800A550C 2401FFFF */ li $at, -1 +/* 0A6110 800A5510 00047880 */ sll $t7, $a0, 2 +/* 0A6114 800A5514 01E47823 */ subu $t7, $t7, $a0 +/* 0A6118 800A5518 804303DC */ lb $v1, 0x3dc($v0) +/* 0A611C 800A551C 000F7880 */ sll $t7, $t7, 2 +/* 0A6120 800A5520 01E47821 */ addu $t7, $t7, $a0 +/* 0A6124 800A5524 006F7023 */ subu $t6, $v1, $t7 +/* 0A6128 800A5528 448E8000 */ mtc1 $t6, $f16 +/* 0A612C 800A552C C44003CC */ lwc1 $f0, 0x3cc($v0) +/* 0A6130 800A5530 468084A0 */ cvt.s.w $f18, $f16 +/* 0A6134 800A5534 01E02025 */ move $a0, $t7 +/* 0A6138 800A5538 240FFFFF */ li $t7, -1 +/* 0A613C 800A553C 4612003C */ c.lt.s $f0, $f18 +/* 0A6140 800A5540 00002825 */ move $a1, $zero +/* 0A6144 800A5544 45000007 */ bc1f .L800A5564 +/* 0A6148 800A5548 00000000 */ nop +/* 0A614C 800A554C 44842000 */ mtc1 $a0, $f4 +/* 0A6150 800A5550 00000000 */ nop +/* 0A6154 800A5554 468021A0 */ cvt.s.w $f6, $f4 +/* 0A6158 800A5558 46060200 */ add.s $f8, $f0, $f6 +/* 0A615C 800A555C 10000005 */ b .L800A5574 +/* 0A6160 800A5560 E44803CC */ swc1 $f8, 0x3cc($v0) +.L800A5564: +/* 0A6164 800A5564 44835000 */ mtc1 $v1, $f10 +/* 0A6168 800A5568 00000000 */ nop +/* 0A616C 800A556C 46805420 */ cvt.s.w $f16, $f10 +/* 0A6170 800A5570 E45003CC */ swc1 $f16, 0x3cc($v0) +.L800A5574: +/* 0A6174 800A5574 8D020000 */ lw $v0, ($t0) +/* 0A6178 800A5578 00000000 */ nop +/* 0A617C 800A557C 804303FC */ lb $v1, 0x3fc($v0) +/* 0A6180 800A5580 C44003EC */ lwc1 $f0, 0x3ec($v0) +/* 0A6184 800A5584 0064C021 */ addu $t8, $v1, $a0 +/* 0A6188 800A5588 44989000 */ mtc1 $t8, $f18 +/* 0A618C 800A558C 00000000 */ nop +/* 0A6190 800A5590 46809120 */ cvt.s.w $f4, $f18 +/* 0A6194 800A5594 4600203C */ c.lt.s $f4, $f0 +/* 0A6198 800A5598 00000000 */ nop +/* 0A619C 800A559C 45000007 */ bc1f .L800A55BC +/* 0A61A0 800A55A0 00000000 */ nop +/* 0A61A4 800A55A4 44843000 */ mtc1 $a0, $f6 +/* 0A61A8 800A55A8 00000000 */ nop +/* 0A61AC 800A55AC 46803220 */ cvt.s.w $f8, $f6 +/* 0A61B0 800A55B0 46080281 */ sub.s $f10, $f0, $f8 +/* 0A61B4 800A55B4 10000005 */ b .L800A55CC +/* 0A61B8 800A55B8 E44A03EC */ swc1 $f10, 0x3ec($v0) +.L800A55BC: +/* 0A61BC 800A55BC 44838000 */ mtc1 $v1, $f16 +/* 0A61C0 800A55C0 00000000 */ nop +/* 0A61C4 800A55C4 468084A0 */ cvt.s.w $f18, $f16 +/* 0A61C8 800A55C8 E45203EC */ swc1 $f18, 0x3ec($v0) +.L800A55CC: +/* 0A61CC 800A55CC 81390193 */ lb $t9, 0x193($t1) +/* 0A61D0 800A55D0 24040016 */ li $a0, 22 +/* 0A61D4 800A55D4 00196880 */ sll $t5, $t9, 2 +/* 0A61D8 800A55D8 012D6021 */ addu $t4, $t1, $t5 +/* 0A61DC 800A55DC 8D8B0128 */ lw $t3, 0x128($t4) +/* 0A61E0 800A55E0 00000000 */ nop +/* 0A61E4 800A55E4 2961003C */ slti $at, $t3, 0x3c +/* 0A61E8 800A55E8 14200007 */ bnez $at, .L800A5608 +/* 0A61EC 800A55EC 00000000 */ nop +/* 0A61F0 800A55F0 8D0E0000 */ lw $t6, ($t0) +/* 0A61F4 800A55F4 0C000741 */ jal play_sound_global +/* 0A61F8 800A55F8 A1CF03DB */ sb $t7, 0x3db($t6) +/* 0A61FC 800A55FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6200 800A5600 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6204 800A5604 24060001 */ li $a2, 1 +.L800A5608: +/* 0A6208 800A5608 8D020000 */ lw $v0, ($t0) +/* 0A620C 800A560C 00000000 */ nop +/* 0A6210 800A5610 805803DC */ lb $t8, 0x3dc($v0) +/* 0A6214 800A5614 C44403CC */ lwc1 $f4, 0x3cc($v0) +/* 0A6218 800A5618 44983000 */ mtc1 $t8, $f6 +/* 0A621C 800A561C 00000000 */ nop +/* 0A6220 800A5620 46803220 */ cvt.s.w $f8, $f6 +/* 0A6224 800A5624 46082032 */ c.eq.s $f4, $f8 +/* 0A6228 800A5628 00000000 */ nop +/* 0A622C 800A562C 45000037 */ bc1f .L800A570C +/* 0A6230 800A5630 00000000 */ nop +/* 0A6234 800A5634 805903FC */ lb $t9, 0x3fc($v0) +/* 0A6238 800A5638 C44A03EC */ lwc1 $f10, 0x3ec($v0) +/* 0A623C 800A563C 44998000 */ mtc1 $t9, $f16 +/* 0A6240 800A5640 00000000 */ nop +/* 0A6244 800A5644 468084A0 */ cvt.s.w $f18, $f16 +/* 0A6248 800A5648 46125032 */ c.eq.s $f10, $f18 +/* 0A624C 800A564C 00000000 */ nop +/* 0A6250 800A5650 4500002E */ bc1f .L800A570C +/* 0A6254 800A5654 00000000 */ nop +/* 0A6258 800A5658 804D03DD */ lb $t5, 0x3dd($v0) +/* 0A625C 800A565C 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A6260 800A5660 15A0002A */ bnez $t5, .L800A570C +/* 0A6264 800A5664 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A6268 800A5668 8CAC0000 */ lw $t4, ($a1) +/* 0A626C 800A566C 00000000 */ nop +/* 0A6270 800A5670 15800007 */ bnez $t4, .L800A5690 +/* 0A6274 800A5674 00000000 */ nop +/* 0A6278 800A5678 0C000741 */ jal play_sound_global +/* 0A627C 800A567C 24040100 */ li $a0, 256 +/* 0A6280 800A5680 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6284 800A5684 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6288 800A5688 8D020000 */ lw $v0, ($t0) +/* 0A628C 800A568C 24060001 */ li $a2, 1 +.L800A5690: +/* 0A6290 800A5690 1000001E */ b .L800A570C +/* 0A6294 800A5694 A04603DD */ sb $a2, 0x3dd($v0) +.L800A5698: +/* 0A6298 800A5698 1461001C */ bne $v1, $at, .L800A570C +/* 0A629C 800A569C 00000000 */ nop +/* 0A62A0 800A56A0 8FAB001C */ lw $t3, 0x1c($sp) +/* 0A62A4 800A56A4 C44403CC */ lwc1 $f4, 0x3cc($v0) +/* 0A62A8 800A56A8 000B7880 */ sll $t7, $t3, 2 +/* 0A62AC 800A56AC 01EB7823 */ subu $t7, $t7, $t3 +/* 0A62B0 800A56B0 000F7880 */ sll $t7, $t7, 2 +/* 0A62B4 800A56B4 01EB7821 */ addu $t7, $t7, $t3 +/* 0A62B8 800A56B8 448F3000 */ mtc1 $t7, $f6 +/* 0A62BC 800A56BC 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A62C0 800A56C0 46803020 */ cvt.s.w $f0, $f6 +/* 0A62C4 800A56C4 44813000 */ mtc1 $at, $f6 +/* 0A62C8 800A56C8 46002201 */ sub.s $f8, $f4, $f0 +/* 0A62CC 800A56CC E44803CC */ swc1 $f8, 0x3cc($v0) +/* 0A62D0 800A56D0 8D020000 */ lw $v0, ($t0) +/* 0A62D4 800A56D4 00000000 */ nop +/* 0A62D8 800A56D8 C45003EC */ lwc1 $f16, 0x3ec($v0) +/* 0A62DC 800A56DC 00000000 */ nop +/* 0A62E0 800A56E0 46008280 */ add.s $f10, $f16, $f0 +/* 0A62E4 800A56E4 E44A03EC */ swc1 $f10, 0x3ec($v0) +/* 0A62E8 800A56E8 8D020000 */ lw $v0, ($t0) +/* 0A62EC 800A56EC 00000000 */ nop +/* 0A62F0 800A56F0 C45203CC */ lwc1 $f18, 0x3cc($v0) +/* 0A62F4 800A56F4 00000000 */ nop +/* 0A62F8 800A56F8 4606903C */ c.lt.s $f18, $f6 +/* 0A62FC 800A56FC 00000000 */ nop +/* 0A6300 800A5700 45000002 */ bc1f .L800A570C +/* 0A6304 800A5704 00000000 */ nop +/* 0A6308 800A5708 A04003DA */ sb $zero, 0x3da($v0) +.L800A570C: +/* 0A630C 800A570C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A6310 800A5710 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A6314 800A5714 8C820000 */ lw $v0, ($a0) +/* 0A6318 800A5718 3C18FA00 */ lui $t8, 0xfa00 +/* 0A631C 800A571C 244E0008 */ addiu $t6, $v0, 8 +/* 0A6320 800A5720 AC8E0000 */ sw $t6, ($a0) +/* 0A6324 800A5724 2419FFA0 */ li $t9, -96 +/* 0A6328 800A5728 AC590004 */ sw $t9, 4($v0) +/* 0A632C 800A572C AC580000 */ sw $t8, ($v0) +/* 0A6330 800A5730 8D070000 */ lw $a3, ($t0) +/* 0A6334 800A5734 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A6338 800A5738 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A633C 800A573C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A6340 800A5740 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A6344 800A5744 0C02A980 */ jal func_800AA600 +/* 0A6348 800A5748 24E703E0 */ addiu $a3, $a3, 0x3e0 +/* 0A634C 800A574C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6350 800A5750 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6354 800A5754 8D070000 */ lw $a3, ($t0) +/* 0A6358 800A5758 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A635C 800A575C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A6360 800A5760 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A6364 800A5764 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A6368 800A5768 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A636C 800A576C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A6370 800A5770 0C02A980 */ jal func_800AA600 +/* 0A6374 800A5774 24E703C0 */ addiu $a3, $a3, 0x3c0 +/* 0A6378 800A5778 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A637C 800A577C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A6380 800A5780 8C820000 */ lw $v0, ($a0) +/* 0A6384 800A5784 3C0CFA00 */ lui $t4, 0xfa00 +/* 0A6388 800A5788 244D0008 */ addiu $t5, $v0, 8 +/* 0A638C 800A578C AC8D0000 */ sw $t5, ($a0) +/* 0A6390 800A5790 240BFFFF */ li $t3, -1 +/* 0A6394 800A5794 AC4B0004 */ sw $t3, 4($v0) +/* 0A6398 800A5798 100000AC */ b .L800A5A4C +/* 0A639C 800A579C AC4C0000 */ sw $t4, ($v0) +/* 0A63A0 800A57A0 24010003 */ li $at, 3 +.L800A57A4: +/* 0A63A4 800A57A4 146100A9 */ bne $v1, $at, .L800A5A4C +/* 0A63A8 800A57A8 00000000 */ nop +/* 0A63AC 800A57AC 804303DB */ lb $v1, 0x3db($v0) +/* 0A63B0 800A57B0 2401FFFF */ li $at, -1 +/* 0A63B4 800A57B4 14610064 */ bne $v1, $at, .L800A5948 +/* 0A63B8 800A57B8 00000000 */ nop +/* 0A63BC 800A57BC 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A63C0 800A57C0 804303DC */ lb $v1, 0x3dc($v0) +/* 0A63C4 800A57C4 00047880 */ sll $t7, $a0, 2 +/* 0A63C8 800A57C8 01E47823 */ subu $t7, $t7, $a0 +/* 0A63CC 800A57CC 000F7880 */ sll $t7, $t7, 2 +/* 0A63D0 800A57D0 01E47821 */ addu $t7, $t7, $a0 +/* 0A63D4 800A57D4 006F7021 */ addu $t6, $v1, $t7 +/* 0A63D8 800A57D8 448E2000 */ mtc1 $t6, $f4 +/* 0A63DC 800A57DC C44003CC */ lwc1 $f0, 0x3cc($v0) +/* 0A63E0 800A57E0 46802220 */ cvt.s.w $f8, $f4 +/* 0A63E4 800A57E4 01E02025 */ move $a0, $t7 +/* 0A63E8 800A57E8 00002825 */ move $a1, $zero +/* 0A63EC 800A57EC 4600403C */ c.lt.s $f8, $f0 +/* 0A63F0 800A57F0 00000000 */ nop +/* 0A63F4 800A57F4 45000007 */ bc1f .L800A5814 +/* 0A63F8 800A57F8 00000000 */ nop +/* 0A63FC 800A57FC 44848000 */ mtc1 $a0, $f16 +/* 0A6400 800A5800 00000000 */ nop +/* 0A6404 800A5804 468082A0 */ cvt.s.w $f10, $f16 +/* 0A6408 800A5808 460A0481 */ sub.s $f18, $f0, $f10 +/* 0A640C 800A580C 10000005 */ b .L800A5824 +/* 0A6410 800A5810 E45203CC */ swc1 $f18, 0x3cc($v0) +.L800A5814: +/* 0A6414 800A5814 44833000 */ mtc1 $v1, $f6 +/* 0A6418 800A5818 00000000 */ nop +/* 0A641C 800A581C 46803120 */ cvt.s.w $f4, $f6 +/* 0A6420 800A5820 E44403CC */ swc1 $f4, 0x3cc($v0) +.L800A5824: +/* 0A6424 800A5824 8D020000 */ lw $v0, ($t0) +/* 0A6428 800A5828 00000000 */ nop +/* 0A642C 800A582C 804303BC */ lb $v1, 0x3bc($v0) +/* 0A6430 800A5830 C44003AC */ lwc1 $f0, 0x3ac($v0) +/* 0A6434 800A5834 0064C023 */ subu $t8, $v1, $a0 +/* 0A6438 800A5838 44984000 */ mtc1 $t8, $f8 +/* 0A643C 800A583C 00000000 */ nop +/* 0A6440 800A5840 46804420 */ cvt.s.w $f16, $f8 +/* 0A6444 800A5844 4610003C */ c.lt.s $f0, $f16 +/* 0A6448 800A5848 00000000 */ nop +/* 0A644C 800A584C 45000007 */ bc1f .L800A586C +/* 0A6450 800A5850 00000000 */ nop +/* 0A6454 800A5854 44845000 */ mtc1 $a0, $f10 +/* 0A6458 800A5858 00000000 */ nop +/* 0A645C 800A585C 468054A0 */ cvt.s.w $f18, $f10 +/* 0A6460 800A5860 46120180 */ add.s $f6, $f0, $f18 +/* 0A6464 800A5864 10000005 */ b .L800A587C +/* 0A6468 800A5868 E44603AC */ swc1 $f6, 0x3ac($v0) +.L800A586C: +/* 0A646C 800A586C 44832000 */ mtc1 $v1, $f4 +/* 0A6470 800A5870 00000000 */ nop +/* 0A6474 800A5874 46802220 */ cvt.s.w $f8, $f4 +/* 0A6478 800A5878 E44803AC */ swc1 $f8, 0x3ac($v0) +.L800A587C: +/* 0A647C 800A587C 81390193 */ lb $t9, 0x193($t1) +/* 0A6480 800A5880 24040016 */ li $a0, 22 +/* 0A6484 800A5884 00196880 */ sll $t5, $t9, 2 +/* 0A6488 800A5888 012D6021 */ addu $t4, $t1, $t5 +/* 0A648C 800A588C 8D8B0128 */ lw $t3, 0x128($t4) +/* 0A6490 800A5890 00000000 */ nop +/* 0A6494 800A5894 2961003C */ slti $at, $t3, 0x3c +/* 0A6498 800A5898 14200007 */ bnez $at, .L800A58B8 +/* 0A649C 800A589C 00000000 */ nop +/* 0A64A0 800A58A0 8D0F0000 */ lw $t7, ($t0) +/* 0A64A4 800A58A4 0C000741 */ jal play_sound_global +/* 0A64A8 800A58A8 A1E603DB */ sb $a2, 0x3db($t7) +/* 0A64AC 800A58AC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A64B0 800A58B0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A64B4 800A58B4 24060001 */ li $a2, 1 +.L800A58B8: +/* 0A64B8 800A58B8 8D020000 */ lw $v0, ($t0) +/* 0A64BC 800A58BC 00000000 */ nop +/* 0A64C0 800A58C0 804E03DC */ lb $t6, 0x3dc($v0) +/* 0A64C4 800A58C4 C45003CC */ lwc1 $f16, 0x3cc($v0) +/* 0A64C8 800A58C8 448E5000 */ mtc1 $t6, $f10 +/* 0A64CC 800A58CC 00000000 */ nop +/* 0A64D0 800A58D0 468054A0 */ cvt.s.w $f18, $f10 +/* 0A64D4 800A58D4 46128032 */ c.eq.s $f16, $f18 +/* 0A64D8 800A58D8 00000000 */ nop +/* 0A64DC 800A58DC 45000037 */ bc1f .L800A59BC +/* 0A64E0 800A58E0 00000000 */ nop +/* 0A64E4 800A58E4 805803BC */ lb $t8, 0x3bc($v0) +/* 0A64E8 800A58E8 C44603AC */ lwc1 $f6, 0x3ac($v0) +/* 0A64EC 800A58EC 44982000 */ mtc1 $t8, $f4 +/* 0A64F0 800A58F0 00000000 */ nop +/* 0A64F4 800A58F4 46802220 */ cvt.s.w $f8, $f4 +/* 0A64F8 800A58F8 46083032 */ c.eq.s $f6, $f8 +/* 0A64FC 800A58FC 00000000 */ nop +/* 0A6500 800A5900 4500002E */ bc1f .L800A59BC +/* 0A6504 800A5904 00000000 */ nop +/* 0A6508 800A5908 805903DD */ lb $t9, 0x3dd($v0) +/* 0A650C 800A590C 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 +/* 0A6510 800A5910 1720002A */ bnez $t9, .L800A59BC +/* 0A6514 800A5914 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 +/* 0A6518 800A5918 8CAD0000 */ lw $t5, ($a1) +/* 0A651C 800A591C 00000000 */ nop +/* 0A6520 800A5920 15A00007 */ bnez $t5, .L800A5940 +/* 0A6524 800A5924 00000000 */ nop +/* 0A6528 800A5928 0C000741 */ jal play_sound_global +/* 0A652C 800A592C 24040101 */ li $a0, 257 +/* 0A6530 800A5930 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6534 800A5934 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6538 800A5938 8D020000 */ lw $v0, ($t0) +/* 0A653C 800A593C 24060001 */ li $a2, 1 +.L800A5940: +/* 0A6540 800A5940 1000001E */ b .L800A59BC +/* 0A6544 800A5944 A04603DD */ sb $a2, 0x3dd($v0) +.L800A5948: +/* 0A6548 800A5948 14C3001C */ bne $a2, $v1, .L800A59BC +/* 0A654C 800A594C 00000000 */ nop +/* 0A6550 800A5950 8FAC001C */ lw $t4, 0x1c($sp) +/* 0A6554 800A5954 C45003CC */ lwc1 $f16, 0x3cc($v0) +/* 0A6558 800A5958 000C5880 */ sll $t3, $t4, 2 +/* 0A655C 800A595C 016C5823 */ subu $t3, $t3, $t4 +/* 0A6560 800A5960 000B5880 */ sll $t3, $t3, 2 +/* 0A6564 800A5964 016C5821 */ addu $t3, $t3, $t4 +/* 0A6568 800A5968 448B5000 */ mtc1 $t3, $f10 +/* 0A656C 800A596C 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 0A6570 800A5970 46805020 */ cvt.s.w $f0, $f10 +/* 0A6574 800A5974 44814000 */ mtc1 $at, $f8 +/* 0A6578 800A5978 46008480 */ add.s $f18, $f16, $f0 +/* 0A657C 800A597C E45203CC */ swc1 $f18, 0x3cc($v0) +/* 0A6580 800A5980 8D020000 */ lw $v0, ($t0) +/* 0A6584 800A5984 00000000 */ nop +/* 0A6588 800A5988 C44403AC */ lwc1 $f4, 0x3ac($v0) +/* 0A658C 800A598C 00000000 */ nop +/* 0A6590 800A5990 46002181 */ sub.s $f6, $f4, $f0 +/* 0A6594 800A5994 E44603AC */ swc1 $f6, 0x3ac($v0) +/* 0A6598 800A5998 8D020000 */ lw $v0, ($t0) +/* 0A659C 800A599C 00000000 */ nop +/* 0A65A0 800A59A0 C44A03CC */ lwc1 $f10, 0x3cc($v0) +/* 0A65A4 800A59A4 00000000 */ nop +/* 0A65A8 800A59A8 460A403C */ c.lt.s $f8, $f10 +/* 0A65AC 800A59AC 00000000 */ nop +/* 0A65B0 800A59B0 45000002 */ bc1f .L800A59BC +/* 0A65B4 800A59B4 00000000 */ nop +/* 0A65B8 800A59B8 A04003DA */ sb $zero, 0x3da($v0) +.L800A59BC: +/* 0A65BC 800A59BC 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A65C0 800A59C0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A65C4 800A59C4 8C820000 */ lw $v0, ($a0) +/* 0A65C8 800A59C8 3C0EFA00 */ lui $t6, 0xfa00 +/* 0A65CC 800A59CC 244F0008 */ addiu $t7, $v0, 8 +/* 0A65D0 800A59D0 AC8F0000 */ sw $t7, ($a0) +/* 0A65D4 800A59D4 2418FFA0 */ li $t8, -96 +/* 0A65D8 800A59D8 AC580004 */ sw $t8, 4($v0) +/* 0A65DC 800A59DC AC4E0000 */ sw $t6, ($v0) +/* 0A65E0 800A59E0 8D070000 */ lw $a3, ($t0) +/* 0A65E4 800A59E4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A65E8 800A59E8 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A65EC 800A59EC 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A65F0 800A59F0 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A65F4 800A59F4 0C02A980 */ jal func_800AA600 +/* 0A65F8 800A59F8 24E703A0 */ addiu $a3, $a3, 0x3a0 +/* 0A65FC 800A59FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6600 800A5A00 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6604 800A5A04 8D070000 */ lw $a3, ($t0) +/* 0A6608 800A5A08 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A660C 800A5A0C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A6610 800A5A10 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A6614 800A5A14 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A6618 800A5A18 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A661C 800A5A1C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A6620 800A5A20 0C02A980 */ jal func_800AA600 +/* 0A6624 800A5A24 24E703C0 */ addiu $a3, $a3, 0x3c0 +/* 0A6628 800A5A28 3C028012 */ lui $v0, %hi(gHUDCurrDisplayList) # $v0, 0x8012 +/* 0A662C 800A5A2C 8C426CFC */ lw $v0, %lo(gHUDCurrDisplayList)($v0) +/* 0A6630 800A5A30 3C018012 */ lui $at, %hi(gHUDCurrDisplayList) # $at, 0x8012 +/* 0A6634 800A5A34 24590008 */ addiu $t9, $v0, 8 +/* 0A6638 800A5A38 AC396CFC */ sw $t9, %lo(gHUDCurrDisplayList)($at) +/* 0A663C 800A5A3C 3C0DFA00 */ lui $t5, 0xfa00 +/* 0A6640 800A5A40 240CFFFF */ li $t4, -1 +/* 0A6644 800A5A44 AC4C0004 */ sw $t4, 4($v0) +/* 0A6648 800A5A48 AC4D0000 */ sw $t5, ($v0) +.L800A5A4C: +/* 0A664C 800A5A4C 0C01EFC7 */ jal func_8007BF1C +/* 0A6650 800A5A50 00002025 */ move $a0, $zero +/* 0A6654 800A5A54 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A6658 800A5A58 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A665C 800A5A5C 03E00008 */ jr $ra +/* 0A6660 800A5A60 00000000 */ nop + diff --git a/asm/non_matchings/game_ui/func_800A5F18.s b/asm/non_matchings/game_ui/func_800A5F18.s index f337c0c4..53a6db5a 100644 --- a/asm/non_matchings/game_ui/func_800A5F18.s +++ b/asm/non_matchings/game_ui/func_800A5F18.s @@ -16,20 +16,20 @@ glabel func_800A5F18 /* 0A6B24 800A5F24 AFA40028 */ sw $a0, 0x28($sp) /* 0A6B28 800A5F28 AFBF001C */ sw $ra, 0x1c($sp) /* 0A6B2C 800A5F2C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A6B30 800A5F30 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6B34 800A5F34 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6B38 800A5F38 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6B3C 800A5F3C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A6B30 800A5F30 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A6B34 800A5F34 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A6B38 800A5F38 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A6B3C 800A5F3C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A6B40 800A5F40 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A6B44 800A5F44 0C02A980 */ jal func_800AA600 /* 0A6B48 800A5F48 24E705E0 */ addiu $a3, $a3, 0x5e0 /* 0A6B4C 800A5F4C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A6B50 800A5F50 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A6B54 800A5F54 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A6B58 800A5F58 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6B5C 800A5F5C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6B60 800A5F60 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6B64 800A5F64 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A6B58 800A5F58 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A6B5C 800A5F5C 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A6B60 800A5F60 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A6B64 800A5F64 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A6B68 800A5F68 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A6B6C 800A5F6C 0C02A980 */ jal func_800AA600 /* 0A6B70 800A5F70 24E70600 */ addiu $a3, $a3, 0x600 diff --git a/asm/non_matchings/game_ui/func_800A6254.s b/asm/non_matchings/game_ui/func_800A6254.s index f2612e2d..bd1756e7 100644 --- a/asm/non_matchings/game_ui/func_800A6254.s +++ b/asm/non_matchings/game_ui/func_800A6254.s @@ -126,8 +126,8 @@ glabel L800A63D8 /* 0A7014 800A6414 8FA70070 */ lw $a3, 0x70($sp) /* 0A7018 800A6418 00000000 */ nop .L800A641C: -/* 0A701C 800A641C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A7020 800A6420 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A701C 800A641C 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 +/* 0A7020 800A6420 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) /* 0A7024 800A6424 240EFFEC */ li $t6, -20 /* 0A7028 800A6428 10600006 */ beqz $v1, .L800A6444 /* 0A702C 800A642C 24060002 */ li $a2, 2 @@ -596,7 +596,7 @@ glabel L800A691C /* 0A76EC 800A6AEC E44602EC */ swc1 $f6, 0x2ec($v0) .L800A6AF0: /* 0A76F0 800A6AF0 10C00032 */ beqz $a2, .L800A6BBC -/* 0A76F4 800A6AF4 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A76F4 800A6AF4 3C058012 */ lui $a1, %hi(gHUDVoiceSoundMask) # $a1, 0x8012 /* 0A76F8 800A6AF8 8D2D0000 */ lw $t5, ($t1) /* 0A76FC 800A6AFC 24060002 */ li $a2, 2 /* 0A7700 800A6B00 A1A605FA */ sb $a2, 0x5fa($t5) @@ -604,7 +604,7 @@ glabel L800A691C /* 0A7708 800A6B08 240EFF88 */ li $t6, -120 /* 0A770C 800A6B0C A1EE05FB */ sb $t6, 0x5fb($t7) /* 0A7710 800A6B10 8D380000 */ lw $t8, ($t1) -/* 0A7714 800A6B14 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A7714 800A6B14 24A56D40 */ addiu $a1, %lo(gHUDVoiceSoundMask) # addiu $a1, $a1, 0x6d40 /* 0A7718 800A6B18 A30005FC */ sb $zero, 0x5fc($t8) /* 0A771C 800A6B1C 8CB90000 */ lw $t9, ($a1) /* 0A7720 800A6B20 8FAA005C */ lw $t2, 0x5c($sp) @@ -646,7 +646,7 @@ glabel L800A691C /* 0A77A0 800A6BA0 8FA70070 */ lw $a3, 0x70($sp) /* 0A77A4 800A6BA4 14400005 */ bnez $v0, .L800A6BBC /* 0A77A8 800A6BA8 00E02025 */ move $a0, $a3 -/* 0A77AC 800A6BAC 0C029B6D */ jal func_800A6DB4 +/* 0A77AC 800A6BAC 0C029B6D */ jal play_time_trial_end_message /* 0A77B0 800A6BB0 AFA70070 */ sw $a3, 0x70($sp) /* 0A77B4 800A6BB4 8FA70070 */ lw $a3, 0x70($sp) /* 0A77B8 800A6BB8 00000000 */ nop diff --git a/asm/non_matchings/game_ui/func_800A6E30.s b/asm/non_matchings/game_ui/func_800A6E30.s index b7a7f718..dacca678 100644 --- a/asm/non_matchings/game_ui/func_800A6E30.s +++ b/asm/non_matchings/game_ui/func_800A6E30.s @@ -1,243 +1,243 @@ -.late_rodata -glabel jpt_800E8768 -.word L800A6E70, L800A6F3C, L800A7014, L800A70D4, L800A7158 - -.text -glabel func_800A6E30 -/* 0A7A30 800A6E30 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A7A34 800A6E34 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A7A38 800A6E38 8D020000 */ lw $v0, ($t0) -/* 0A7A3C 800A6E3C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A7A40 800A6E40 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A7A44 800A6E44 904E01DA */ lbu $t6, 0x1da($v0) -/* 0A7A48 800A6E48 00803025 */ move $a2, $a0 -/* 0A7A4C 800A6E4C 2DC10005 */ sltiu $at, $t6, 5 -/* 0A7A50 800A6E50 102000CA */ beqz $at, .L800A717C -/* 0A7A54 800A6E54 000E7080 */ sll $t6, $t6, 2 -/* 0A7A58 800A6E58 3C01800F */ lui $at, %hi(jpt_800E8768) # $at, 0x800f -/* 0A7A5C 800A6E5C 002E0821 */ addu $at, $at, $t6 -/* 0A7A60 800A6E60 8C2E8768 */ lw $t6, %lo(jpt_800E8768)($at) -/* 0A7A64 800A6E64 00000000 */ nop -/* 0A7A68 800A6E68 01C00008 */ jr $t6 -/* 0A7A6C 800A6E6C 00000000 */ nop -glabel L800A6E70 -/* 0A7A70 800A6E70 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A7A74 800A6E74 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A7A78 800A6E78 240F007F */ li $t7, 127 -/* 0A7A7C 800A6E7C A06F0002 */ sb $t7, 2($v1) -/* 0A7A80 800A6E80 A0600003 */ sb $zero, 3($v1) -/* 0A7A84 800A6E84 84D80000 */ lh $t8, ($a2) -/* 0A7A88 800A6E88 AFA60018 */ sw $a2, 0x18($sp) -/* 0A7A8C 800A6E8C 24040016 */ li $a0, 22 -/* 0A7A90 800A6E90 00002825 */ move $a1, $zero -/* 0A7A94 800A6E94 0C000741 */ jal play_sound_global -/* 0A7A98 800A6E98 A078000C */ sb $t8, 0xc($v1) -/* 0A7A9C 800A6E9C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A7AA0 800A6EA0 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A7AA4 800A6EA4 8FA60018 */ lw $a2, 0x18($sp) -/* 0A7AA8 800A6EA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A7AAC 800A6EAC 10600003 */ beqz $v1, .L800A6EBC -/* 0A7AB0 800A6EB0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A7AB4 800A6EB4 24010001 */ li $at, 1 -/* 0A7AB8 800A6EB8 14610008 */ bne $v1, $at, .L800A6EDC -.L800A6EBC: -/* 0A7ABC 800A6EBC 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A7AC0 800A6EC0 44812000 */ mtc1 $at, $f4 -/* 0A7AC4 800A6EC4 8D190000 */ lw $t9, ($t0) -/* 0A7AC8 800A6EC8 00000000 */ nop -/* 0A7ACC 800A6ECC E72401CC */ swc1 $f4, 0x1cc($t9) -/* 0A7AD0 800A6ED0 8D090000 */ lw $t1, ($t0) -/* 0A7AD4 800A6ED4 10000015 */ b .L800A6F2C -/* 0A7AD8 800A6ED8 A12001DD */ sb $zero, 0x1dd($t1) -.L800A6EDC: -/* 0A7ADC 800A6EDC 84C20000 */ lh $v0, ($a2) -/* 0A7AE0 800A6EE0 24010002 */ li $at, 2 -/* 0A7AE4 800A6EE4 10400003 */ beqz $v0, .L800A6EF4 -/* 0A7AE8 800A6EE8 240AFFB0 */ li $t2, -80 -/* 0A7AEC 800A6EEC 14410008 */ bne $v0, $at, .L800A6F10 -/* 0A7AF0 800A6EF0 240D0050 */ li $t5, 80 -.L800A6EF4: -/* 0A7AF4 800A6EF4 8D0B0000 */ lw $t3, ($t0) -/* 0A7AF8 800A6EF8 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A7AFC 800A6EFC A16A01DD */ sb $t2, 0x1dd($t3) -/* 0A7B00 800A6F00 8D0C0000 */ lw $t4, ($t0) -/* 0A7B04 800A6F04 44813000 */ mtc1 $at, $f6 -/* 0A7B08 800A6F08 10000008 */ b .L800A6F2C -/* 0A7B0C 800A6F0C E58601CC */ swc1 $f6, 0x1cc($t4) -.L800A6F10: -/* 0A7B10 800A6F10 8D0E0000 */ lw $t6, ($t0) -/* 0A7B14 800A6F14 3C01C220 */ li $at, 0xC2200000 # -40.000000 -/* 0A7B18 800A6F18 A1CD01DD */ sb $t5, 0x1dd($t6) -/* 0A7B1C 800A6F1C 8D0F0000 */ lw $t7, ($t0) -/* 0A7B20 800A6F20 44814000 */ mtc1 $at, $f8 -/* 0A7B24 800A6F24 00000000 */ nop -/* 0A7B28 800A6F28 E5E801CC */ swc1 $f8, 0x1cc($t7) -.L800A6F2C: -/* 0A7B2C 800A6F2C 8D190000 */ lw $t9, ($t0) -/* 0A7B30 800A6F30 24180001 */ li $t8, 1 -/* 0A7B34 800A6F34 10000091 */ b .L800A717C -/* 0A7B38 800A6F38 A33801DA */ sb $t8, 0x1da($t9) -glabel L800A6F3C -/* 0A7B3C 800A6F3C 00051880 */ sll $v1, $a1, 2 -/* 0A7B40 800A6F40 00651823 */ subu $v1, $v1, $a1 -/* 0A7B44 800A6F44 804401DD */ lb $a0, 0x1dd($v0) -/* 0A7B48 800A6F48 00031880 */ sll $v1, $v1, 2 -/* 0A7B4C 800A6F4C 00651821 */ addu $v1, $v1, $a1 -/* 0A7B50 800A6F50 00834823 */ subu $t1, $a0, $v1 -/* 0A7B54 800A6F54 44895000 */ mtc1 $t1, $f10 -/* 0A7B58 800A6F58 C44001CC */ lwc1 $f0, 0x1cc($v0) -/* 0A7B5C 800A6F5C 46805420 */ cvt.s.w $f16, $f10 -/* 0A7B60 800A6F60 4610003C */ c.lt.s $f0, $f16 -/* 0A7B64 800A6F64 00000000 */ nop -/* 0A7B68 800A6F68 45000007 */ bc1f .L800A6F88 -/* 0A7B6C 800A6F6C 00000000 */ nop -/* 0A7B70 800A6F70 44839000 */ mtc1 $v1, $f18 -/* 0A7B74 800A6F74 00000000 */ nop -/* 0A7B78 800A6F78 46809120 */ cvt.s.w $f4, $f18 -/* 0A7B7C 800A6F7C 46040180 */ add.s $f6, $f0, $f4 -/* 0A7B80 800A6F80 10000019 */ b .L800A6FE8 -/* 0A7B84 800A6F84 E44601CC */ swc1 $f6, 0x1cc($v0) -.L800A6F88: -/* 0A7B88 800A6F88 44844000 */ mtc1 $a0, $f8 -/* 0A7B8C 800A6F8C 240A0002 */ li $t2, 2 -/* 0A7B90 800A6F90 468042A0 */ cvt.s.w $f10, $f8 -/* 0A7B94 800A6F94 240CFF88 */ li $t4, -120 -/* 0A7B98 800A6F98 3C0E8012 */ lui $t6, %hi(D_80126D40) # $t6, 0x8012 -/* 0A7B9C 800A6F9C E44A01CC */ swc1 $f10, 0x1cc($v0) -/* 0A7BA0 800A6FA0 8D0B0000 */ lw $t3, ($t0) -/* 0A7BA4 800A6FA4 3C0F8012 */ lui $t7, %hi(D_80126D71) # $t7, 0x8012 -/* 0A7BA8 800A6FA8 A16A01DA */ sb $t2, 0x1da($t3) -/* 0A7BAC 800A6FAC 8D0D0000 */ lw $t5, ($t0) -/* 0A7BB0 800A6FB0 00000000 */ nop -/* 0A7BB4 800A6FB4 A1AC01DB */ sb $t4, 0x1db($t5) -/* 0A7BB8 800A6FB8 8DCE6D40 */ lw $t6, %lo(D_80126D40)($t6) -/* 0A7BBC 800A6FBC 00000000 */ nop -/* 0A7BC0 800A6FC0 15C00009 */ bnez $t6, .L800A6FE8 -/* 0A7BC4 800A6FC4 00000000 */ nop -/* 0A7BC8 800A6FC8 91EF6D71 */ lbu $t7, %lo(D_80126D71)($t7) -/* 0A7BCC 800A6FCC 00000000 */ nop -/* 0A7BD0 800A6FD0 15E00005 */ bnez $t7, .L800A6FE8 -/* 0A7BD4 800A6FD4 00000000 */ nop -/* 0A7BD8 800A6FD8 0C029B6D */ jal func_800A6DB4 -/* 0A7BDC 800A6FDC 00C02025 */ move $a0, $a2 -/* 0A7BE0 800A6FE0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A7BE4 800A6FE4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -.L800A6FE8: -/* 0A7BE8 800A6FE8 8D070000 */ lw $a3, ($t0) -/* 0A7BEC 800A6FEC 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A7BF0 800A6FF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7BF4 800A6FF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7BF8 800A6FF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7BFC 800A6FFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7C00 800A7000 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A7C04 800A7004 0C02A980 */ jal func_800AA600 -/* 0A7C08 800A7008 24E701C0 */ addiu $a3, $a3, 0x1c0 -/* 0A7C0C 800A700C 1000005C */ b .L800A7180 -/* 0A7C10 800A7010 8FBF0014 */ lw $ra, 0x14($sp) -glabel L800A7014 -/* 0A7C14 800A7014 805801DB */ lb $t8, 0x1db($v0) -/* 0A7C18 800A7018 240A0003 */ li $t2, 3 -/* 0A7C1C 800A701C 0305C821 */ addu $t9, $t8, $a1 -/* 0A7C20 800A7020 A05901DB */ sb $t9, 0x1db($v0) -/* 0A7C24 800A7024 8D020000 */ lw $v0, ($t0) -/* 0A7C28 800A7028 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A7C2C 800A702C 804901DB */ lb $t1, 0x1db($v0) -/* 0A7C30 800A7030 24040016 */ li $a0, 22 -/* 0A7C34 800A7034 29210078 */ slti $at, $t1, 0x78 -/* 0A7C38 800A7038 1420001C */ bnez $at, .L800A70AC -/* 0A7C3C 800A703C 00000000 */ nop -/* 0A7C40 800A7040 A04A01DA */ sb $t2, 0x1da($v0) -/* 0A7C44 800A7044 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A7C48 800A7048 24010001 */ li $at, 1 -/* 0A7C4C 800A704C 10600003 */ beqz $v1, .L800A705C -/* 0A7C50 800A7050 240B0038 */ li $t3, 56 -/* 0A7C54 800A7054 14610004 */ bne $v1, $at, .L800A7068 -/* 0A7C58 800A7058 00000000 */ nop -.L800A705C: -/* 0A7C5C 800A705C 8D0C0000 */ lw $t4, ($t0) -/* 0A7C60 800A7060 1000000D */ b .L800A7098 -/* 0A7C64 800A7064 A18B01DD */ sb $t3, 0x1dd($t4) -.L800A7068: -/* 0A7C68 800A7068 84C20000 */ lh $v0, ($a2) -/* 0A7C6C 800A706C 24010002 */ li $at, 2 -/* 0A7C70 800A7070 10400003 */ beqz $v0, .L800A7080 -/* 0A7C74 800A7074 240D0038 */ li $t5, 56 -/* 0A7C78 800A7078 14410004 */ bne $v0, $at, .L800A708C -/* 0A7C7C 800A707C 00000000 */ nop -.L800A7080: -/* 0A7C80 800A7080 8D0E0000 */ lw $t6, ($t0) -/* 0A7C84 800A7084 10000004 */ b .L800A7098 -/* 0A7C88 800A7088 A1CD01DD */ sb $t5, 0x1dd($t6) -.L800A708C: -/* 0A7C8C 800A708C 8D180000 */ lw $t8, ($t0) -/* 0A7C90 800A7090 240FFFD8 */ li $t7, -40 -/* 0A7C94 800A7094 A30F01DD */ sb $t7, 0x1dd($t8) -.L800A7098: -/* 0A7C98 800A7098 0C000741 */ jal play_sound_global -/* 0A7C9C 800A709C 00002825 */ move $a1, $zero -/* 0A7CA0 800A70A0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A7CA4 800A70A4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A7CA8 800A70A8 00000000 */ nop -.L800A70AC: -/* 0A7CAC 800A70AC 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A7CB0 800A70B0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7CB4 800A70B4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7CB8 800A70B8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7CBC 800A70BC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7CC0 800A70C0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A7CC4 800A70C4 0C02A980 */ jal func_800AA600 -/* 0A7CC8 800A70C8 244701C0 */ addiu $a3, $v0, 0x1c0 -/* 0A7CCC 800A70CC 1000002C */ b .L800A7180 -/* 0A7CD0 800A70D0 8FBF0014 */ lw $ra, 0x14($sp) -glabel L800A70D4 -/* 0A7CD4 800A70D4 0005C880 */ sll $t9, $a1, 2 -/* 0A7CD8 800A70D8 0325C823 */ subu $t9, $t9, $a1 -/* 0A7CDC 800A70DC 0019C880 */ sll $t9, $t9, 2 -/* 0A7CE0 800A70E0 0325C821 */ addu $t9, $t9, $a1 -/* 0A7CE4 800A70E4 44999000 */ mtc1 $t9, $f18 -/* 0A7CE8 800A70E8 C45001CC */ lwc1 $f16, 0x1cc($v0) -/* 0A7CEC 800A70EC 46809120 */ cvt.s.w $f4, $f18 -/* 0A7CF0 800A70F0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7CF4 800A70F4 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A7CF8 800A70F8 46048181 */ sub.s $f6, $f16, $f4 -/* 0A7CFC 800A70FC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7D00 800A7100 E44601CC */ swc1 $f6, 0x1cc($v0) -/* 0A7D04 800A7104 8D020000 */ lw $v0, ($t0) -/* 0A7D08 800A7108 240A0004 */ li $t2, 4 -/* 0A7D0C 800A710C 804901DD */ lb $t1, 0x1dd($v0) -/* 0A7D10 800A7110 C44801CC */ lwc1 $f8, 0x1cc($v0) -/* 0A7D14 800A7114 44895000 */ mtc1 $t1, $f10 -/* 0A7D18 800A7118 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7D1C 800A711C 468054A0 */ cvt.s.w $f18, $f10 -/* 0A7D20 800A7120 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A7D24 800A7124 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7D28 800A7128 4612403C */ c.lt.s $f8, $f18 -/* 0A7D2C 800A712C 00000000 */ nop -/* 0A7D30 800A7130 45000005 */ bc1f .L800A7148 -/* 0A7D34 800A7134 00000000 */ nop -/* 0A7D38 800A7138 A04A01DA */ sb $t2, 0x1da($v0) -/* 0A7D3C 800A713C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A7D40 800A7140 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A7D44 800A7144 00000000 */ nop -.L800A7148: -/* 0A7D48 800A7148 0C02A980 */ jal func_800AA600 -/* 0A7D4C 800A714C 244701C0 */ addiu $a3, $v0, 0x1c0 -/* 0A7D50 800A7150 1000000B */ b .L800A7180 -/* 0A7D54 800A7154 8FBF0014 */ lw $ra, 0x14($sp) -glabel L800A7158 -/* 0A7D58 800A7158 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A7D5C 800A715C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A7D60 800A7160 240BFFFF */ li $t3, -1 -/* 0A7D64 800A7164 A06B0003 */ sb $t3, 3($v1) -/* 0A7D68 800A7168 240C0005 */ li $t4, 5 -/* 0A7D6C 800A716C A04C01DA */ sb $t4, 0x1da($v0) -/* 0A7D70 800A7170 8D0D0000 */ lw $t5, ($t0) -/* 0A7D74 800A7174 00000000 */ nop -/* 0A7D78 800A7178 A1A001DB */ sb $zero, 0x1db($t5) -.L800A717C: -/* 0A7D7C 800A717C 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7180: -/* 0A7D80 800A7180 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A7D84 800A7184 03E00008 */ jr $ra -/* 0A7D88 800A7188 00000000 */ nop - +.late_rodata +glabel jpt_800E8768 +.word L800A6E70, L800A6F3C, L800A7014, L800A70D4, L800A7158 + +.text +glabel func_800A6E30 +/* 0A7A30 800A6E30 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A7A34 800A6E34 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A7A38 800A6E38 8D020000 */ lw $v0, ($t0) +/* 0A7A3C 800A6E3C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A7A40 800A6E40 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A7A44 800A6E44 904E01DA */ lbu $t6, 0x1da($v0) +/* 0A7A48 800A6E48 00803025 */ move $a2, $a0 +/* 0A7A4C 800A6E4C 2DC10005 */ sltiu $at, $t6, 5 +/* 0A7A50 800A6E50 102000CA */ beqz $at, .L800A717C +/* 0A7A54 800A6E54 000E7080 */ sll $t6, $t6, 2 +/* 0A7A58 800A6E58 3C01800F */ lui $at, %hi(jpt_800E8768) # $at, 0x800f +/* 0A7A5C 800A6E5C 002E0821 */ addu $at, $at, $t6 +/* 0A7A60 800A6E60 8C2E8768 */ lw $t6, %lo(jpt_800E8768)($at) +/* 0A7A64 800A6E64 00000000 */ nop +/* 0A7A68 800A6E68 01C00008 */ jr $t6 +/* 0A7A6C 800A6E6C 00000000 */ nop +glabel L800A6E70 +/* 0A7A70 800A6E70 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A7A74 800A6E74 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A7A78 800A6E78 240F007F */ li $t7, 127 +/* 0A7A7C 800A6E7C A06F0002 */ sb $t7, 2($v1) +/* 0A7A80 800A6E80 A0600003 */ sb $zero, 3($v1) +/* 0A7A84 800A6E84 84D80000 */ lh $t8, ($a2) +/* 0A7A88 800A6E88 AFA60018 */ sw $a2, 0x18($sp) +/* 0A7A8C 800A6E8C 24040016 */ li $a0, 22 +/* 0A7A90 800A6E90 00002825 */ move $a1, $zero +/* 0A7A94 800A6E94 0C000741 */ jal play_sound_global +/* 0A7A98 800A6E98 A078000C */ sb $t8, 0xc($v1) +/* 0A7A9C 800A6E9C 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 +/* 0A7AA0 800A6EA0 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) +/* 0A7AA4 800A6EA4 8FA60018 */ lw $a2, 0x18($sp) +/* 0A7AA8 800A6EA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A7AAC 800A6EAC 10600003 */ beqz $v1, .L800A6EBC +/* 0A7AB0 800A6EB0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A7AB4 800A6EB4 24010001 */ li $at, 1 +/* 0A7AB8 800A6EB8 14610008 */ bne $v1, $at, .L800A6EDC +.L800A6EBC: +/* 0A7ABC 800A6EBC 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A7AC0 800A6EC0 44812000 */ mtc1 $at, $f4 +/* 0A7AC4 800A6EC4 8D190000 */ lw $t9, ($t0) +/* 0A7AC8 800A6EC8 00000000 */ nop +/* 0A7ACC 800A6ECC E72401CC */ swc1 $f4, 0x1cc($t9) +/* 0A7AD0 800A6ED0 8D090000 */ lw $t1, ($t0) +/* 0A7AD4 800A6ED4 10000015 */ b .L800A6F2C +/* 0A7AD8 800A6ED8 A12001DD */ sb $zero, 0x1dd($t1) +.L800A6EDC: +/* 0A7ADC 800A6EDC 84C20000 */ lh $v0, ($a2) +/* 0A7AE0 800A6EE0 24010002 */ li $at, 2 +/* 0A7AE4 800A6EE4 10400003 */ beqz $v0, .L800A6EF4 +/* 0A7AE8 800A6EE8 240AFFB0 */ li $t2, -80 +/* 0A7AEC 800A6EEC 14410008 */ bne $v0, $at, .L800A6F10 +/* 0A7AF0 800A6EF0 240D0050 */ li $t5, 80 +.L800A6EF4: +/* 0A7AF4 800A6EF4 8D0B0000 */ lw $t3, ($t0) +/* 0A7AF8 800A6EF8 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A7AFC 800A6EFC A16A01DD */ sb $t2, 0x1dd($t3) +/* 0A7B00 800A6F00 8D0C0000 */ lw $t4, ($t0) +/* 0A7B04 800A6F04 44813000 */ mtc1 $at, $f6 +/* 0A7B08 800A6F08 10000008 */ b .L800A6F2C +/* 0A7B0C 800A6F0C E58601CC */ swc1 $f6, 0x1cc($t4) +.L800A6F10: +/* 0A7B10 800A6F10 8D0E0000 */ lw $t6, ($t0) +/* 0A7B14 800A6F14 3C01C220 */ li $at, 0xC2200000 # -40.000000 +/* 0A7B18 800A6F18 A1CD01DD */ sb $t5, 0x1dd($t6) +/* 0A7B1C 800A6F1C 8D0F0000 */ lw $t7, ($t0) +/* 0A7B20 800A6F20 44814000 */ mtc1 $at, $f8 +/* 0A7B24 800A6F24 00000000 */ nop +/* 0A7B28 800A6F28 E5E801CC */ swc1 $f8, 0x1cc($t7) +.L800A6F2C: +/* 0A7B2C 800A6F2C 8D190000 */ lw $t9, ($t0) +/* 0A7B30 800A6F30 24180001 */ li $t8, 1 +/* 0A7B34 800A6F34 10000091 */ b .L800A717C +/* 0A7B38 800A6F38 A33801DA */ sb $t8, 0x1da($t9) +glabel L800A6F3C +/* 0A7B3C 800A6F3C 00051880 */ sll $v1, $a1, 2 +/* 0A7B40 800A6F40 00651823 */ subu $v1, $v1, $a1 +/* 0A7B44 800A6F44 804401DD */ lb $a0, 0x1dd($v0) +/* 0A7B48 800A6F48 00031880 */ sll $v1, $v1, 2 +/* 0A7B4C 800A6F4C 00651821 */ addu $v1, $v1, $a1 +/* 0A7B50 800A6F50 00834823 */ subu $t1, $a0, $v1 +/* 0A7B54 800A6F54 44895000 */ mtc1 $t1, $f10 +/* 0A7B58 800A6F58 C44001CC */ lwc1 $f0, 0x1cc($v0) +/* 0A7B5C 800A6F5C 46805420 */ cvt.s.w $f16, $f10 +/* 0A7B60 800A6F60 4610003C */ c.lt.s $f0, $f16 +/* 0A7B64 800A6F64 00000000 */ nop +/* 0A7B68 800A6F68 45000007 */ bc1f .L800A6F88 +/* 0A7B6C 800A6F6C 00000000 */ nop +/* 0A7B70 800A6F70 44839000 */ mtc1 $v1, $f18 +/* 0A7B74 800A6F74 00000000 */ nop +/* 0A7B78 800A6F78 46809120 */ cvt.s.w $f4, $f18 +/* 0A7B7C 800A6F7C 46040180 */ add.s $f6, $f0, $f4 +/* 0A7B80 800A6F80 10000019 */ b .L800A6FE8 +/* 0A7B84 800A6F84 E44601CC */ swc1 $f6, 0x1cc($v0) +.L800A6F88: +/* 0A7B88 800A6F88 44844000 */ mtc1 $a0, $f8 +/* 0A7B8C 800A6F8C 240A0002 */ li $t2, 2 +/* 0A7B90 800A6F90 468042A0 */ cvt.s.w $f10, $f8 +/* 0A7B94 800A6F94 240CFF88 */ li $t4, -120 +/* 0A7B98 800A6F98 3C0E8012 */ lui $t6, %hi(gHUDVoiceSoundMask) # $t6, 0x8012 +/* 0A7B9C 800A6F9C E44A01CC */ swc1 $f10, 0x1cc($v0) +/* 0A7BA0 800A6FA0 8D0B0000 */ lw $t3, ($t0) +/* 0A7BA4 800A6FA4 3C0F8012 */ lui $t7, %hi(D_80126D71) # $t7, 0x8012 +/* 0A7BA8 800A6FA8 A16A01DA */ sb $t2, 0x1da($t3) +/* 0A7BAC 800A6FAC 8D0D0000 */ lw $t5, ($t0) +/* 0A7BB0 800A6FB0 00000000 */ nop +/* 0A7BB4 800A6FB4 A1AC01DB */ sb $t4, 0x1db($t5) +/* 0A7BB8 800A6FB8 8DCE6D40 */ lw $t6, %lo(gHUDVoiceSoundMask)($t6) +/* 0A7BBC 800A6FBC 00000000 */ nop +/* 0A7BC0 800A6FC0 15C00009 */ bnez $t6, .L800A6FE8 +/* 0A7BC4 800A6FC4 00000000 */ nop +/* 0A7BC8 800A6FC8 91EF6D71 */ lbu $t7, %lo(D_80126D71)($t7) +/* 0A7BCC 800A6FCC 00000000 */ nop +/* 0A7BD0 800A6FD0 15E00005 */ bnez $t7, .L800A6FE8 +/* 0A7BD4 800A6FD4 00000000 */ nop +/* 0A7BD8 800A6FD8 0C029B6D */ jal play_time_trial_end_message +/* 0A7BDC 800A6FDC 00C02025 */ move $a0, $a2 +/* 0A7BE0 800A6FE0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A7BE4 800A6FE4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +.L800A6FE8: +/* 0A7BE8 800A6FE8 8D070000 */ lw $a3, ($t0) +/* 0A7BEC 800A6FEC 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A7BF0 800A6FF0 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A7BF4 800A6FF4 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A7BF8 800A6FF8 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A7BFC 800A6FFC 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A7C00 800A7000 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A7C04 800A7004 0C02A980 */ jal func_800AA600 +/* 0A7C08 800A7008 24E701C0 */ addiu $a3, $a3, 0x1c0 +/* 0A7C0C 800A700C 1000005C */ b .L800A7180 +/* 0A7C10 800A7010 8FBF0014 */ lw $ra, 0x14($sp) +glabel L800A7014 +/* 0A7C14 800A7014 805801DB */ lb $t8, 0x1db($v0) +/* 0A7C18 800A7018 240A0003 */ li $t2, 3 +/* 0A7C1C 800A701C 0305C821 */ addu $t9, $t8, $a1 +/* 0A7C20 800A7020 A05901DB */ sb $t9, 0x1db($v0) +/* 0A7C24 800A7024 8D020000 */ lw $v0, ($t0) +/* 0A7C28 800A7028 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012 +/* 0A7C2C 800A702C 804901DB */ lb $t1, 0x1db($v0) +/* 0A7C30 800A7030 24040016 */ li $a0, 22 +/* 0A7C34 800A7034 29210078 */ slti $at, $t1, 0x78 +/* 0A7C38 800A7038 1420001C */ bnez $at, .L800A70AC +/* 0A7C3C 800A703C 00000000 */ nop +/* 0A7C40 800A7040 A04A01DA */ sb $t2, 0x1da($v0) +/* 0A7C44 800A7044 8C636D0C */ lw $v1, %lo(gHUDNumPlayers)($v1) +/* 0A7C48 800A7048 24010001 */ li $at, 1 +/* 0A7C4C 800A704C 10600003 */ beqz $v1, .L800A705C +/* 0A7C50 800A7050 240B0038 */ li $t3, 56 +/* 0A7C54 800A7054 14610004 */ bne $v1, $at, .L800A7068 +/* 0A7C58 800A7058 00000000 */ nop +.L800A705C: +/* 0A7C5C 800A705C 8D0C0000 */ lw $t4, ($t0) +/* 0A7C60 800A7060 1000000D */ b .L800A7098 +/* 0A7C64 800A7064 A18B01DD */ sb $t3, 0x1dd($t4) +.L800A7068: +/* 0A7C68 800A7068 84C20000 */ lh $v0, ($a2) +/* 0A7C6C 800A706C 24010002 */ li $at, 2 +/* 0A7C70 800A7070 10400003 */ beqz $v0, .L800A7080 +/* 0A7C74 800A7074 240D0038 */ li $t5, 56 +/* 0A7C78 800A7078 14410004 */ bne $v0, $at, .L800A708C +/* 0A7C7C 800A707C 00000000 */ nop +.L800A7080: +/* 0A7C80 800A7080 8D0E0000 */ lw $t6, ($t0) +/* 0A7C84 800A7084 10000004 */ b .L800A7098 +/* 0A7C88 800A7088 A1CD01DD */ sb $t5, 0x1dd($t6) +.L800A708C: +/* 0A7C8C 800A708C 8D180000 */ lw $t8, ($t0) +/* 0A7C90 800A7090 240FFFD8 */ li $t7, -40 +/* 0A7C94 800A7094 A30F01DD */ sb $t7, 0x1dd($t8) +.L800A7098: +/* 0A7C98 800A7098 0C000741 */ jal play_sound_global +/* 0A7C9C 800A709C 00002825 */ move $a1, $zero +/* 0A7CA0 800A70A0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A7CA4 800A70A4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A7CA8 800A70A8 00000000 */ nop +.L800A70AC: +/* 0A7CAC 800A70AC 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A7CB0 800A70B0 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A7CB4 800A70B4 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A7CB8 800A70B8 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A7CBC 800A70BC 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A7CC0 800A70C0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A7CC4 800A70C4 0C02A980 */ jal func_800AA600 +/* 0A7CC8 800A70C8 244701C0 */ addiu $a3, $v0, 0x1c0 +/* 0A7CCC 800A70CC 1000002C */ b .L800A7180 +/* 0A7CD0 800A70D0 8FBF0014 */ lw $ra, 0x14($sp) +glabel L800A70D4 +/* 0A7CD4 800A70D4 0005C880 */ sll $t9, $a1, 2 +/* 0A7CD8 800A70D8 0325C823 */ subu $t9, $t9, $a1 +/* 0A7CDC 800A70DC 0019C880 */ sll $t9, $t9, 2 +/* 0A7CE0 800A70E0 0325C821 */ addu $t9, $t9, $a1 +/* 0A7CE4 800A70E4 44999000 */ mtc1 $t9, $f18 +/* 0A7CE8 800A70E8 C45001CC */ lwc1 $f16, 0x1cc($v0) +/* 0A7CEC 800A70EC 46809120 */ cvt.s.w $f4, $f18 +/* 0A7CF0 800A70F0 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A7CF4 800A70F4 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 +/* 0A7CF8 800A70F8 46048181 */ sub.s $f6, $f16, $f4 +/* 0A7CFC 800A70FC 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A7D00 800A7100 E44601CC */ swc1 $f6, 0x1cc($v0) +/* 0A7D04 800A7104 8D020000 */ lw $v0, ($t0) +/* 0A7D08 800A7108 240A0004 */ li $t2, 4 +/* 0A7D0C 800A710C 804901DD */ lb $t1, 0x1dd($v0) +/* 0A7D10 800A7110 C44801CC */ lwc1 $f8, 0x1cc($v0) +/* 0A7D14 800A7114 44895000 */ mtc1 $t1, $f10 +/* 0A7D18 800A7118 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A7D1C 800A711C 468054A0 */ cvt.s.w $f18, $f10 +/* 0A7D20 800A7120 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc +/* 0A7D24 800A7124 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 +/* 0A7D28 800A7128 4612403C */ c.lt.s $f8, $f18 +/* 0A7D2C 800A712C 00000000 */ nop +/* 0A7D30 800A7130 45000005 */ bc1f .L800A7148 +/* 0A7D34 800A7134 00000000 */ nop +/* 0A7D38 800A7138 A04A01DA */ sb $t2, 0x1da($v0) +/* 0A7D3C 800A713C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A7D40 800A7140 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A7D44 800A7144 00000000 */ nop +.L800A7148: +/* 0A7D48 800A7148 0C02A980 */ jal func_800AA600 +/* 0A7D4C 800A714C 244701C0 */ addiu $a3, $v0, 0x1c0 +/* 0A7D50 800A7150 1000000B */ b .L800A7180 +/* 0A7D54 800A7154 8FBF0014 */ lw $ra, 0x14($sp) +glabel L800A7158 +/* 0A7D58 800A7158 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A7D5C 800A715C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A7D60 800A7160 240BFFFF */ li $t3, -1 +/* 0A7D64 800A7164 A06B0003 */ sb $t3, 3($v1) +/* 0A7D68 800A7168 240C0005 */ li $t4, 5 +/* 0A7D6C 800A716C A04C01DA */ sb $t4, 0x1da($v0) +/* 0A7D70 800A7170 8D0D0000 */ lw $t5, ($t0) +/* 0A7D74 800A7174 00000000 */ nop +/* 0A7D78 800A7178 A1A001DB */ sb $zero, 0x1db($t5) +.L800A717C: +/* 0A7D7C 800A717C 8FBF0014 */ lw $ra, 0x14($sp) +.L800A7180: +/* 0A7D80 800A7180 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A7D84 800A7184 03E00008 */ jr $ra +/* 0A7D88 800A7188 00000000 */ nop + diff --git a/asm/non_matchings/game_ui/func_800A718C.s b/asm/non_matchings/game_ui/func_800A718C.s index cb213772..24449857 100644 --- a/asm/non_matchings/game_ui/func_800A718C.s +++ b/asm/non_matchings/game_ui/func_800A718C.s @@ -108,10 +108,10 @@ glabel func_800A718C /* 0A7F10 800A7310 00000000 */ nop /* 0A7F14 800A7314 0006000D */ break 6 .L800A7318: -/* 0A7F18 800A7318 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7F1C 800A731C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7F20 800A7320 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7F24 800A7324 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7F18 800A7318 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A7F1C 800A731C 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A7F20 800A7320 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A7F24 800A7324 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A7F28 800A7328 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A7F2C 800A732C 00006010 */ mfhi $t4 /* 0A7F30 800A7330 A5AC02D8 */ sh $t4, 0x2d8($t5) @@ -142,10 +142,10 @@ glabel func_800A718C /* 0A7F84 800A7384 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A7F88 800A7388 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A7F8C 800A738C 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A7F90 800A7390 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7F94 800A7394 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7F98 800A7398 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7F9C 800A739C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7F90 800A7390 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A7F94 800A7394 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A7F98 800A7398 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A7F9C 800A739C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A7FA0 800A73A0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A7FA4 800A73A4 0C02A980 */ jal func_800AA600 /* 0A7FA8 800A73A8 24E702A0 */ addiu $a3, $a3, 0x2a0 @@ -162,10 +162,10 @@ glabel func_800A718C /* 0A7FD0 800A73D0 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A7FD4 800A73D4 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A7FD8 800A73D8 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A7FDC 800A73DC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7FE0 800A73E0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7FE4 800A73E4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7FE8 800A73E8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7FDC 800A73DC 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A7FE0 800A73E0 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A7FE4 800A73E4 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A7FE8 800A73E8 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A7FEC 800A73EC 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A7FF0 800A73F0 0C02A980 */ jal func_800AA600 /* 0A7FF4 800A73F4 24E70260 */ addiu $a3, $a3, 0x260 @@ -176,10 +176,10 @@ glabel func_800A718C /* 0A8008 800A7408 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 /* 0A800C 800A740C 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) /* 0A8010 800A7410 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A8014 800A7414 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8018 800A7418 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A801C 800A741C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8020 800A7420 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8014 800A7414 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A8018 800A7418 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0A801C 800A741C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A8020 800A7420 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A8024 800A7424 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A8028 800A7428 0C02A980 */ jal func_800AA600 /* 0A802C 800A742C 24E70280 */ addiu $a3, $a3, 0x280 diff --git a/asm/non_matchings/game_ui/func_800A7520.s b/asm/non_matchings/game_ui/func_800A7520.s deleted file mode 100644 index 066f08d9..00000000 --- a/asm/non_matchings/game_ui/func_800A7520.s +++ /dev/null @@ -1,369 +0,0 @@ -.late_rodata -glabel D_800E8780 -.double 0.04687 -glabel D_800E8788 -.double 682.6583 -glabel D_800E8790 -.double 0.18 -glabel D_800E8798 -.double 0.04687 - -.text -glabel func_800A7520 -/* 0A8120 800A7520 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A8124 800A7524 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A8128 800A7528 AFA50024 */ sw $a1, 0x24($sp) -/* 0A812C 800A752C 8C890064 */ lw $t1, 0x64($a0) -/* 0A8130 800A7530 24040001 */ li $a0, 1 -/* 0A8134 800A7534 812E01D8 */ lb $t6, 0x1d8($t1) -/* 0A8138 800A7538 00000000 */ nop -/* 0A813C 800A753C 15C00145 */ bnez $t6, .L800A7A54 -/* 0A8140 800A7540 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A8144 800A7544 0C019826 */ jal set_viewport_tv_type -/* 0A8148 800A7548 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A814C 800A754C 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A8150 800A7550 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8154 800A7554 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A8158 800A7558 8D020000 */ lw $v0, ($t0) -/* 0A815C 800A755C 812F0172 */ lb $t7, 0x172($t1) -/* 0A8160 800A7560 81230174 */ lb $v1, 0x174($t1) -/* 0A8164 800A7564 8059005D */ lb $t9, 0x5d($v0) -/* 0A8168 800A7568 000FC080 */ sll $t8, $t7, 2 -/* 0A816C 800A756C 030FC023 */ subu $t8, $t8, $t7 -/* 0A8170 800A7570 10790013 */ beq $v1, $t9, .L800A75C0 -/* 0A8174 800A7574 03032021 */ addu $a0, $t8, $v1 -/* 0A8178 800A7578 14600004 */ bnez $v1, .L800A758C -/* 0A817C 800A757C 3C0B8012 */ lui $t3, %hi(D_80126D37) # $t3, 0x8012 -/* 0A8180 800A7580 240A0078 */ li $t2, 120 -/* 0A8184 800A7584 10000008 */ b .L800A75A8 -/* 0A8188 800A7588 A04A005C */ sb $t2, 0x5c($v0) -.L800A758C: -/* 0A818C 800A758C 916B6D37 */ lbu $t3, %lo(D_80126D37)($t3) -/* 0A8190 800A7590 24010001 */ li $at, 1 -/* 0A8194 800A7594 15610003 */ bne $t3, $at, .L800A75A4 -/* 0A8198 800A7598 240C0078 */ li $t4, 120 -/* 0A819C 800A759C 10000002 */ b .L800A75A8 -/* 0A81A0 800A75A0 A040005C */ sb $zero, 0x5c($v0) -.L800A75A4: -/* 0A81A4 800A75A4 A04C005C */ sb $t4, 0x5c($v0) -.L800A75A8: -/* 0A81A8 800A75A8 812D0174 */ lb $t5, 0x174($t1) -/* 0A81AC 800A75AC 8D0E0000 */ lw $t6, ($t0) -/* 0A81B0 800A75B0 00000000 */ nop -/* 0A81B4 800A75B4 A1CD005D */ sb $t5, 0x5d($t6) -/* 0A81B8 800A75B8 8D020000 */ lw $v0, ($t0) -/* 0A81BC 800A75BC 00000000 */ nop -.L800A75C0: -/* 0A81C0 800A75C0 812F0173 */ lb $t7, 0x173($t1) -/* 0A81C4 800A75C4 00000000 */ nop -/* 0A81C8 800A75C8 19E000DD */ blez $t7, .L800A7940 -/* 0A81CC 800A75CC 00000000 */ nop -/* 0A81D0 800A75D0 8043005B */ lb $v1, 0x5b($v0) -/* 0A81D4 800A75D4 00000000 */ nop -/* 0A81D8 800A75D8 28610010 */ slti $at, $v1, 0x10 -/* 0A81DC 800A75DC 10200016 */ beqz $at, .L800A7638 -/* 0A81E0 800A75E0 00000000 */ nop -/* 0A81E4 800A75E4 85380170 */ lh $t8, 0x170($t1) -/* 0A81E8 800A75E8 0003CB00 */ sll $t9, $v1, 0xc -/* 0A81EC 800A75EC 17000012 */ bnez $t8, .L800A7638 -/* 0A81F0 800A75F0 00000000 */ nop -/* 0A81F4 800A75F4 A4590044 */ sh $t9, 0x44($v0) -/* 0A81F8 800A75F8 8D020000 */ lw $v0, ($t0) -/* 0A81FC 800A75FC 3C01800F */ lui $at, %hi(D_800E8780 + 4) # $at, 0x800f -/* 0A8200 800A7600 804A005B */ lb $t2, 0x5b($v0) -/* 0A8204 800A7604 C4298780 */ lwc1 $f9, %lo(D_800E8780)($at) -/* 0A8208 800A7608 448A2000 */ mtc1 $t2, $f4 -/* 0A820C 800A760C C4288784 */ lwc1 $f8, %lo(D_800E8780 + 4)($at) -/* 0A8210 800A7610 468021A1 */ cvt.d.w $f6, $f4 -/* 0A8214 800A7614 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 0A8218 800A7618 44818800 */ mtc1 $at, $f17 -/* 0A821C 800A761C 46283282 */ mul.d $f10, $f6, $f8 -/* 0A8220 800A7620 44808000 */ mtc1 $zero, $f16 -/* 0A8224 800A7624 00000000 */ nop -/* 0A8228 800A7628 46305480 */ add.d $f18, $f10, $f16 -/* 0A822C 800A762C 46209120 */ cvt.s.d $f4, $f18 -/* 0A8230 800A7630 10000007 */ b .L800A7650 -/* 0A8234 800A7634 E4440048 */ swc1 $f4, 0x48($v0) -.L800A7638: -/* 0A8238 800A7638 A4400044 */ sh $zero, 0x44($v0) -/* 0A823C 800A763C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0A8240 800A7640 44813000 */ mtc1 $at, $f6 -/* 0A8244 800A7644 8D0B0000 */ lw $t3, ($t0) -/* 0A8248 800A7648 00000000 */ nop -/* 0A824C 800A764C E5660048 */ swc1 $f6, 0x48($t3) -.L800A7650: -/* 0A8250 800A7650 8D0C0000 */ lw $t4, ($t0) -/* 0A8254 800A7654 24190010 */ li $t9, 16 -/* 0A8258 800A7658 A5840058 */ sh $a0, 0x58($t4) -/* 0A825C 800A765C 8D020000 */ lw $v0, ($t0) -/* 0A8260 800A7660 8FAE0024 */ lw $t6, 0x24($sp) -/* 0A8264 800A7664 804D005B */ lb $t5, 0x5b($v0) -/* 0A8268 800A7668 00000000 */ nop -/* 0A826C 800A766C 01AE7821 */ addu $t7, $t5, $t6 -/* 0A8270 800A7670 A04F005B */ sb $t7, 0x5b($v0) -/* 0A8274 800A7674 8D020000 */ lw $v0, ($t0) -/* 0A8278 800A7678 00000000 */ nop -/* 0A827C 800A767C 8058005B */ lb $t8, 0x5b($v0) -/* 0A8280 800A7680 00000000 */ nop -/* 0A8284 800A7684 2B010011 */ slti $at, $t8, 0x11 -/* 0A8288 800A7688 14200040 */ bnez $at, .L800A778C -/* 0A828C 800A768C 00000000 */ nop -/* 0A8290 800A7690 A059005B */ sb $t9, 0x5b($v0) -/* 0A8294 800A7694 8D020000 */ lw $v0, ($t0) -/* 0A8298 800A7698 8FAB0024 */ lw $t3, 0x24($sp) -/* 0A829C 800A769C 804A005C */ lb $t2, 0x5c($v0) -/* 0A82A0 800A76A0 240D0078 */ li $t5, 120 -/* 0A82A4 800A76A4 014B6021 */ addu $t4, $t2, $t3 -/* 0A82A8 800A76A8 A04C005C */ sb $t4, 0x5c($v0) -/* 0A82AC 800A76AC 8D020000 */ lw $v0, ($t0) -/* 0A82B0 800A76B0 3C0E8012 */ lui $t6, %hi(D_80126D0C) # $t6, 0x8012 -/* 0A82B4 800A76B4 8043005C */ lb $v1, 0x5c($v0) -/* 0A82B8 800A76B8 00000000 */ nop -/* 0A82BC 800A76BC 28610079 */ slti $at, $v1, 0x79 -/* 0A82C0 800A76C0 14200005 */ bnez $at, .L800A76D8 -/* 0A82C4 800A76C4 00000000 */ nop -/* 0A82C8 800A76C8 A04D005C */ sb $t5, 0x5c($v0) -/* 0A82CC 800A76CC 8D020000 */ lw $v0, ($t0) -/* 0A82D0 800A76D0 1000002E */ b .L800A778C -/* 0A82D4 800A76D4 00000000 */ nop -.L800A76D8: -/* 0A82D8 800A76D8 8DCE6D0C */ lw $t6, %lo(D_80126D0C)($t6) -/* 0A82DC 800A76DC 00000000 */ nop -/* 0A82E0 800A76E0 15C0002A */ bnez $t6, .L800A778C -/* 0A82E4 800A76E4 00000000 */ nop -/* 0A82E8 800A76E8 44834000 */ mtc1 $v1, $f8 -/* 0A82EC 800A76EC 3C01800F */ lui $at, %hi(D_800E8788 + 4) # $at, 0x800f -/* 0A82F0 800A76F0 468042A0 */ cvt.s.w $f10, $f8 -/* 0A82F4 800A76F4 C4338788 */ lwc1 $f19, %lo(D_800E8788)($at) -/* 0A82F8 800A76F8 C432878C */ lwc1 $f18, %lo(D_800E8788 + 4)($at) -/* 0A82FC 800A76FC 46005421 */ cvt.d.s $f16, $f10 -/* 0A8300 800A7700 46328102 */ mul.d $f4, $f16, $f18 -/* 0A8304 800A7704 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 0A8308 800A7708 44813800 */ mtc1 $at, $f7 -/* 0A830C 800A770C 44803000 */ mtc1 $zero, $f6 -/* 0A8310 800A7710 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A8314 800A7714 46262202 */ mul.d $f8, $f4, $f6 -/* 0A8318 800A7718 444FF800 */ cfc1 $t7, $31 -/* 0A831C 800A771C 00000000 */ nop -/* 0A8320 800A7720 35E10003 */ ori $at, $t7, 3 -/* 0A8324 800A7724 38210002 */ xori $at, $at, 2 -/* 0A8328 800A7728 44C1F800 */ ctc1 $at, $31 -/* 0A832C 800A772C 00000000 */ nop -/* 0A8330 800A7730 462042A4 */ cvt.w.d $f10, $f8 -/* 0A8334 800A7734 44045000 */ mfc1 $a0, $f10 -/* 0A8338 800A7738 44CFF800 */ ctc1 $t7, $31 -/* 0A833C 800A773C 0004C400 */ sll $t8, $a0, 0x10 -/* 0A8340 800A7740 0C01C1F1 */ jal cosine_s -/* 0A8344 800A7744 00182403 */ sra $a0, $t8, 0x10 -/* 0A8348 800A7748 3C01800F */ lui $at, %hi(D_800E8790 + 4) # $at, 0x800f -/* 0A834C 800A774C C4318790 */ lwc1 $f17, %lo(D_800E8790)($at) -/* 0A8350 800A7750 C4308794 */ lwc1 $f16, %lo(D_800E8790 + 4)($at) -/* 0A8354 800A7754 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8358 800A7758 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A835C 800A775C 460004A1 */ cvt.d.s $f18, $f0 -/* 0A8360 800A7760 46328102 */ mul.d $f4, $f16, $f18 -/* 0A8364 800A7764 8D020000 */ lw $v0, ($t0) -/* 0A8368 800A7768 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A836C 800A776C C4460048 */ lwc1 $f6, 0x48($v0) -/* 0A8370 800A7770 00000000 */ nop -/* 0A8374 800A7774 46003221 */ cvt.d.s $f8, $f6 -/* 0A8378 800A7778 46244280 */ add.d $f10, $f8, $f4 -/* 0A837C 800A777C 46205420 */ cvt.s.d $f16, $f10 -/* 0A8380 800A7780 E4500048 */ swc1 $f16, 0x48($v0) -/* 0A8384 800A7784 8D020000 */ lw $v0, ($t0) -/* 0A8388 800A7788 00000000 */ nop -.L800A778C: -/* 0A838C 800A778C 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0A8390 800A7790 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) -/* 0A8394 800A7794 44808000 */ mtc1 $zero, $f16 -/* 0A8398 800A7798 1940000A */ blez $t2, .L800A77C4 -/* 0A839C 800A779C 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 0A83A0 800A77A0 C4520048 */ lwc1 $f18, 0x48($v0) -/* 0A83A4 800A77A4 44814800 */ mtc1 $at, $f9 -/* 0A83A8 800A77A8 44804000 */ mtc1 $zero, $f8 -/* 0A83AC 800A77AC 460091A1 */ cvt.d.s $f6, $f18 -/* 0A83B0 800A77B0 46283102 */ mul.d $f4, $f6, $f8 -/* 0A83B4 800A77B4 462022A0 */ cvt.s.d $f10, $f4 -/* 0A83B8 800A77B8 E44A0048 */ swc1 $f10, 0x48($v0) -/* 0A83BC 800A77BC 8D020000 */ lw $v0, ($t0) -/* 0A83C0 800A77C0 00000000 */ nop -.L800A77C4: -/* 0A83C4 800A77C4 C4520048 */ lwc1 $f18, 0x48($v0) -/* 0A83C8 800A77C8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0A83CC 800A77CC 44818800 */ mtc1 $at, $f17 -/* 0A83D0 800A77D0 460091A1 */ cvt.d.s $f6, $f18 -/* 0A83D4 800A77D4 46268032 */ c.eq.d $f16, $f6 -/* 0A83D8 800A77D8 24040001 */ li $a0, 1 -/* 0A83DC 800A77DC 45010008 */ bc1t .L800A7800 -/* 0A83E0 800A77E0 00000000 */ nop -/* 0A83E4 800A77E4 0C01EFC7 */ jal func_8007BF1C -/* 0A83E8 800A77E8 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A83EC 800A77EC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A83F0 800A77F0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A83F4 800A77F4 8D020000 */ lw $v0, ($t0) -/* 0A83F8 800A77F8 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A83FC 800A77FC 00000000 */ nop -.L800A7800: -/* 0A8400 800A7800 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A8404 800A7804 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8408 800A7808 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A840C 800A780C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8410 800A7810 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A8414 800A7814 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A8418 800A7818 24470040 */ addiu $a3, $v0, 0x40 -/* 0A841C 800A781C 0C02A980 */ jal func_800AA600 -/* 0A8420 800A7820 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A8424 800A7824 0C01EFC7 */ jal func_8007BF1C -/* 0A8428 800A7828 00002025 */ move $a0, $zero -/* 0A842C 800A782C 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A8430 800A7830 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8434 800A7834 81230173 */ lb $v1, 0x173($t1) -/* 0A8438 800A7838 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A843C 800A783C 28610004 */ slti $at, $v1, 4 -/* 0A8440 800A7840 14200006 */ bnez $at, .L800A785C -/* 0A8444 800A7844 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A8448 800A7848 8D0C0000 */ lw $t4, ($t0) -/* 0A844C 800A784C 240BFF80 */ li $t3, -128 -/* 0A8450 800A7850 A18B063A */ sb $t3, 0x63a($t4) -/* 0A8454 800A7854 81230173 */ lb $v1, 0x173($t1) -/* 0A8458 800A7858 00000000 */ nop -.L800A785C: -/* 0A845C 800A785C 28610003 */ slti $at, $v1, 3 -/* 0A8460 800A7860 10200009 */ beqz $at, .L800A7888 -/* 0A8464 800A7864 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A8468 800A7868 8D020000 */ lw $v0, ($t0) -/* 0A846C 800A786C 8FAE0024 */ lw $t6, 0x24($sp) -/* 0A8470 800A7870 804D063A */ lb $t5, 0x63a($v0) -/* 0A8474 800A7874 00000000 */ nop -/* 0A8478 800A7878 01AE7823 */ subu $t7, $t5, $t6 -/* 0A847C 800A787C A04F063A */ sb $t7, 0x63a($v0) -/* 0A8480 800A7880 81230173 */ lb $v1, 0x173($t1) -/* 0A8484 800A7884 00000000 */ nop -.L800A7888: -/* 0A8488 800A7888 28610003 */ slti $at, $v1, 3 -/* 0A848C 800A788C 10200010 */ beqz $at, .L800A78D0 -/* 0A8490 800A7890 3C0DFA00 */ lui $t5, 0xfa00 -/* 0A8494 800A7894 8D180000 */ lw $t8, ($t0) -/* 0A8498 800A7898 00000000 */ nop -/* 0A849C 800A789C 8319063A */ lb $t9, 0x63a($t8) -/* 0A84A0 800A78A0 00000000 */ nop -/* 0A84A4 800A78A4 272A0080 */ addiu $t2, $t9, 0x80 -/* 0A84A8 800A78A8 05410004 */ bgez $t2, .L800A78BC -/* 0A84AC 800A78AC 314B001F */ andi $t3, $t2, 0x1f -/* 0A84B0 800A78B0 11600002 */ beqz $t3, .L800A78BC -/* 0A84B4 800A78B4 00000000 */ nop -/* 0A84B8 800A78B8 256BFFE0 */ addiu $t3, $t3, -0x20 -.L800A78BC: -/* 0A84BC 800A78BC 29610014 */ slti $at, $t3, 0x14 -/* 0A84C0 800A78C0 1020001D */ beqz $at, .L800A7938 -/* 0A84C4 800A78C4 24010001 */ li $at, 1 -/* 0A84C8 800A78C8 1061001B */ beq $v1, $at, .L800A7938 -/* 0A84CC 800A78CC 00000000 */ nop -.L800A78D0: -/* 0A84D0 800A78D0 8C820000 */ lw $v0, ($a0) -/* 0A84D4 800A78D4 240EFFA0 */ li $t6, -96 -/* 0A84D8 800A78D8 244C0008 */ addiu $t4, $v0, 8 -/* 0A84DC 800A78DC AC8C0000 */ sw $t4, ($a0) -/* 0A84E0 800A78E0 AC4E0004 */ sw $t6, 4($v0) -/* 0A84E4 800A78E4 AC4D0000 */ sw $t5, ($v0) -/* 0A84E8 800A78E8 812F0173 */ lb $t7, 0x173($t1) -/* 0A84EC 800A78EC 8D190000 */ lw $t9, ($t0) -/* 0A84F0 800A78F0 25F8FFFF */ addiu $t8, $t7, -1 -/* 0A84F4 800A78F4 A7380638 */ sh $t8, 0x638($t9) -/* 0A84F8 800A78F8 8D070000 */ lw $a3, ($t0) -/* 0A84FC 800A78FC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8500 800A7900 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A8504 800A7904 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8508 800A7908 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A850C 800A790C 0C02A980 */ jal func_800AA600 -/* 0A8510 800A7910 24E70620 */ addiu $a3, $a3, 0x620 -/* 0A8514 800A7914 3C058012 */ lui $a1, %hi(gHUDCurrDisplayList) # $a1, 0x8012 -/* 0A8518 800A7918 24A56CFC */ addiu $a1, %lo(gHUDCurrDisplayList) # addiu $a1, $a1, 0x6cfc -/* 0A851C 800A791C 8CA20000 */ lw $v0, ($a1) -/* 0A8520 800A7920 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A8524 800A7924 244A0008 */ addiu $t2, $v0, 8 -/* 0A8528 800A7928 ACAA0000 */ sw $t2, ($a1) -/* 0A852C 800A792C 240CFFFF */ li $t4, -1 -/* 0A8530 800A7930 AC4C0004 */ sw $t4, 4($v0) -/* 0A8534 800A7934 AC4B0000 */ sw $t3, ($v0) -.L800A7938: -/* 0A8538 800A7938 1000003A */ b .L800A7A24 -/* 0A853C 800A793C 00000000 */ nop -.L800A7940: -/* 0A8540 800A7940 8043005B */ lb $v1, 0x5b($v0) -/* 0A8544 800A7944 00000000 */ nop -/* 0A8548 800A7948 18600036 */ blez $v1, .L800A7A24 -/* 0A854C 800A794C 00036B00 */ sll $t5, $v1, 0xc -/* 0A8550 800A7950 A44D0044 */ sh $t5, 0x44($v0) -/* 0A8554 800A7954 8D020000 */ lw $v0, ($t0) -/* 0A8558 800A7958 3C01800F */ lui $at, %hi(D_800E8798 + 4) # $at, 0x800f -/* 0A855C 800A795C 804E005B */ lb $t6, 0x5b($v0) -/* 0A8560 800A7960 C42B8798 */ lwc1 $f11, %lo(D_800E8798)($at) -/* 0A8564 800A7964 448E4000 */ mtc1 $t6, $f8 -/* 0A8568 800A7968 C42A879C */ lwc1 $f10, %lo(D_800E8798 + 4)($at) -/* 0A856C 800A796C 46804121 */ cvt.d.w $f4, $f8 -/* 0A8570 800A7970 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 0A8574 800A7974 44818800 */ mtc1 $at, $f17 -/* 0A8578 800A7978 462A2482 */ mul.d $f18, $f4, $f10 -/* 0A857C 800A797C 44808000 */ mtc1 $zero, $f16 -/* 0A8580 800A7980 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8584 800A7984 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A8588 800A7988 3C0C8012 */ lui $t4, %hi(D_80126D0C) # $t4, 0x8012 -/* 0A858C 800A798C 46309180 */ add.d $f6, $f18, $f16 -/* 0A8590 800A7990 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A8594 800A7994 46203220 */ cvt.s.d $f8, $f6 -/* 0A8598 800A7998 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A859C 800A799C E4480048 */ swc1 $f8, 0x48($v0) -/* 0A85A0 800A79A0 8D020000 */ lw $v0, ($t0) -/* 0A85A4 800A79A4 8FB80024 */ lw $t8, 0x24($sp) -/* 0A85A8 800A79A8 804F005B */ lb $t7, 0x5b($v0) -/* 0A85AC 800A79AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A85B0 800A79B0 01F8C823 */ subu $t9, $t7, $t8 -/* 0A85B4 800A79B4 A059005B */ sb $t9, 0x5b($v0) -/* 0A85B8 800A79B8 8D0A0000 */ lw $t2, ($t0) -/* 0A85BC 800A79BC 00000000 */ nop -/* 0A85C0 800A79C0 A5440058 */ sh $a0, 0x58($t2) -/* 0A85C4 800A79C4 8D020000 */ lw $v0, ($t0) -/* 0A85C8 800A79C8 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A85CC 800A79CC 804B005B */ lb $t3, 0x5b($v0) -/* 0A85D0 800A79D0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc -/* 0A85D4 800A79D4 05610005 */ bgez $t3, .L800A79EC -/* 0A85D8 800A79D8 00000000 */ nop -/* 0A85DC 800A79DC A040005B */ sb $zero, 0x5b($v0) -/* 0A85E0 800A79E0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A85E4 800A79E4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A85E8 800A79E8 00000000 */ nop -.L800A79EC: -/* 0A85EC 800A79EC 8D8C6D0C */ lw $t4, %lo(D_80126D0C)($t4) -/* 0A85F0 800A79F0 00000000 */ nop -/* 0A85F4 800A79F4 11800009 */ beqz $t4, .L800A7A1C -/* 0A85F8 800A79F8 00000000 */ nop -/* 0A85FC 800A79FC C4440048 */ lwc1 $f4, 0x48($v0) -/* 0A8600 800A7A00 44815000 */ mtc1 $at, $f10 -/* 0A8604 800A7A04 00000000 */ nop -/* 0A8608 800A7A08 460A2483 */ div.s $f18, $f4, $f10 -/* 0A860C 800A7A0C E4520048 */ swc1 $f18, 0x48($v0) -/* 0A8610 800A7A10 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A8614 800A7A14 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A8618 800A7A18 00000000 */ nop -.L800A7A1C: -/* 0A861C 800A7A1C 0C02A980 */ jal func_800AA600 -/* 0A8620 800A7A20 24470040 */ addiu $a3, $v0, 0x40 -.L800A7A24: -/* 0A8624 800A7A24 3C058012 */ lui $a1, %hi(gHUDCurrDisplayList) # $a1, 0x8012 -/* 0A8628 800A7A28 24A56CFC */ addiu $a1, %lo(gHUDCurrDisplayList) # addiu $a1, $a1, 0x6cfc -/* 0A862C 800A7A2C 8CA20000 */ lw $v0, ($a1) -/* 0A8630 800A7A30 3C0EFA00 */ lui $t6, 0xfa00 -/* 0A8634 800A7A34 244D0008 */ addiu $t5, $v0, 8 -/* 0A8638 800A7A38 ACAD0000 */ sw $t5, ($a1) -/* 0A863C 800A7A3C 240FFFFF */ li $t7, -1 -/* 0A8640 800A7A40 00002025 */ move $a0, $zero -/* 0A8644 800A7A44 AC4F0004 */ sw $t7, 4($v0) -/* 0A8648 800A7A48 0C019826 */ jal set_viewport_tv_type -/* 0A864C 800A7A4C AC4E0000 */ sw $t6, ($v0) -/* 0A8650 800A7A50 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7A54: -/* 0A8654 800A7A54 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0A8658 800A7A58 03E00008 */ jr $ra -/* 0A865C 800A7A5C 00000000 */ nop - diff --git a/asm/non_matchings/game_ui/func_800A7A60.s b/asm/non_matchings/game_ui/func_800A7A60.s index 38e4c723..0f2b66a5 100644 --- a/asm/non_matchings/game_ui/func_800A7A60.s +++ b/asm/non_matchings/game_ui/func_800A7A60.s @@ -34,30 +34,30 @@ glabel func_800A7A60 /* 0A86E0 800A7AE0 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A86E4 800A7AE4 012A5821 */ addu $t3, $t1, $t2 /* 0A86E8 800A7AE8 8D620000 */ lw $v0, ($t3) -/* 0A86EC 800A7AEC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A86EC 800A7AEC 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0A86F0 800A7AF0 10400019 */ beqz $v0, .L800A7B58 /* 0A86F4 800A7AF4 24E70220 */ addiu $a3, $a3, 0x220 /* 0A86F8 800A7AF8 8D8C6CD8 */ lw $t4, %lo(D_80126CD8)($t4) -/* 0A86FC 800A7AFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A86FC 800A7AFC 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A8700 800A7B00 01866821 */ addu $t5, $t4, $a2 /* 0A8704 800A7B04 A1A00000 */ sb $zero, ($t5) /* 0A8708 800A7B08 AFA70028 */ sw $a3, 0x28($sp) /* 0A870C 800A7B0C 0C019B37 */ jal func_80066CDC /* 0A8710 800A7B10 AFA2002C */ sw $v0, 0x2c($sp) /* 0A8714 800A7B14 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A8718 800A7B18 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A871C 800A7B1C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8718 800A7B18 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A871C 800A7B1C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A8720 800A7B20 0C01A102 */ jal func_80068408 /* 0A8724 800A7B24 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A8728 800A7B28 8FA2002C */ lw $v0, 0x2c($sp) /* 0A872C 800A7B2C 8FA70028 */ lw $a3, 0x28($sp) /* 0A8730 800A7B30 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0A8734 800A7B34 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8738 800A7B38 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A8734 800A7B34 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A8738 800A7B38 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 /* 0A873C 800A7B3C 240E0100 */ li $t6, 256 /* 0A8740 800A7B40 AFAE0014 */ sw $t6, 0x14($sp) -/* 0A8744 800A7B44 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8748 800A7B48 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8744 800A7B44 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0A8748 800A7B48 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A874C 800A7B4C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0A8750 800A7B50 0C01A145 */ jal func_80068514 /* 0A8754 800A7B54 AFA20010 */ sw $v0, 0x10($sp) diff --git a/asm/non_matchings/game_ui/func_800A7FBC.s b/asm/non_matchings/game_ui/func_800A7FBC.s index f8b58e5c..3349e3df 100644 --- a/asm/non_matchings/game_ui/func_800A7FBC.s +++ b/asm/non_matchings/game_ui/func_800A7FBC.s @@ -50,10 +50,10 @@ glabel func_800A7FBC /* 0A8C74 800A8074 2415000A */ li $s5, 10 /* 0A8C78 800A8078 0155001A */ div $zero, $t2, $s5 /* 0A8C7C 800A807C 3C108012 */ lui $s0, %hi(gHUDCurrDisplayList) # $s0, 0x8012 -/* 0A8C80 800A8080 3C118012 */ lui $s1, %hi(D_80126D00) # $s1, 0x8012 -/* 0A8C84 800A8084 3C128012 */ lui $s2, %hi(D_80126D04) # $s2, 0x8012 -/* 0A8C88 800A8088 26526D04 */ addiu $s2, %lo(D_80126D04) # addiu $s2, $s2, 0x6d04 -/* 0A8C8C 800A808C 26316D00 */ addiu $s1, %lo(D_80126D00) # addiu $s1, $s1, 0x6d00 +/* 0A8C80 800A8080 3C118012 */ lui $s1, %hi(gHUDCurrMatrix) # $s1, 0x8012 +/* 0A8C84 800A8084 3C128012 */ lui $s2, %hi(gHUDCurrTriList) # $s2, 0x8012 +/* 0A8C88 800A8088 26526D04 */ addiu $s2, %lo(gHUDCurrTriList) # addiu $s2, $s2, 0x6d04 +/* 0A8C8C 800A808C 26316D00 */ addiu $s1, %lo(gHUDCurrMatrix) # addiu $s1, $s1, 0x6d00 /* 0A8C90 800A8090 26106CFC */ addiu $s0, %lo(gHUDCurrDisplayList) # addiu $s0, $s0, 0x6cfc /* 0A8C94 800A8094 27B30060 */ addiu $s3, $sp, 0x60 /* 0A8C98 800A8098 A7B40066 */ sh $s4, 0x66($sp) diff --git a/asm/non_matchings/game_ui/func_800A8474.s b/asm/non_matchings/game_ui/func_800A8474.s index be011e79..df64c668 100644 --- a/asm/non_matchings/game_ui/func_800A8474.s +++ b/asm/non_matchings/game_ui/func_800A8474.s @@ -197,13 +197,13 @@ glabel func_800A8474 /* 0A9308 800A8708 AE8D0000 */ sw $t5, ($s4) /* 0A930C 800A870C 8DCF0000 */ lw $t7, ($t6) /* 0A9310 800A8710 8FB80168 */ lw $t8, 0x168($sp) -/* 0A9314 800A8714 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 -/* 0A9318 800A8718 AC2F6D00 */ sw $t7, %lo(D_80126D00)($at) +/* 0A9314 800A8714 3C018012 */ lui $at, %hi(gHUDCurrMatrix) # $at, 0x8012 +/* 0A9318 800A8718 AC2F6D00 */ sw $t7, %lo(gHUDCurrMatrix)($at) /* 0A931C 800A871C 8F190000 */ lw $t9, ($t8) /* 0A9320 800A8720 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 /* 0A9324 800A8724 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A9328 800A8728 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 -/* 0A932C 800A872C AC396D04 */ sw $t9, %lo(D_80126D04)($at) +/* 0A9328 800A8728 3C018012 */ lui $at, %hi(gHUDCurrTriList) # $at, 0x8012 +/* 0A932C 800A872C AC396D04 */ sw $t9, %lo(gHUDCurrTriList)($at) /* 0A9330 800A8730 8143004C */ lb $v1, 0x4c($t2) /* 0A9334 800A8734 24010042 */ li $at, 66 /* 0A9338 800A8738 146100D4 */ bne $v1, $at, .L800A8A8C @@ -212,8 +212,8 @@ glabel func_800A8474 /* 0A9344 800A8744 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) /* 0A9348 800A8748 24010002 */ li $at, 2 /* 0A934C 800A874C 1461000E */ bne $v1, $at, .L800A8788 -/* 0A9350 800A8750 3C0B8012 */ lui $t3, %hi(D_80126D0C) # $t3, 0x8012 -/* 0A9354 800A8754 8D6B6D0C */ lw $t3, %lo(D_80126D0C)($t3) +/* 0A9350 800A8750 3C0B8012 */ lui $t3, %hi(gHUDNumPlayers) # $t3, 0x8012 +/* 0A9354 800A8754 8D6B6D0C */ lw $t3, %lo(gHUDNumPlayers)($t3) /* 0A9358 800A8758 3C0C800E */ lui $t4, %hi(D_800E27A4) # $t4, 0x800e /* 0A935C 800A875C 018B6021 */ addu $t4, $t4, $t3 /* 0A9360 800A8760 818C27A4 */ lb $t4, %lo(D_800E27A4)($t4) @@ -440,8 +440,8 @@ glabel func_800A8474 /* 0A9698 800A8A98 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) /* 0A969C 800A8A9C 24010002 */ li $at, 2 /* 0A96A0 800A8AA0 1461001B */ bne $v1, $at, .L800A8B10 -/* 0A96A4 800A8AA4 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0A96A8 800A8AA8 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) +/* 0A96A4 800A8AA4 3C0A8012 */ lui $t2, %hi(gHUDNumPlayers) # $t2, 0x8012 +/* 0A96A8 800A8AA8 8D4A6D0C */ lw $t2, %lo(gHUDNumPlayers)($t2) /* 0A96AC 800A8AAC 3C0B800E */ lui $t3, %hi(D_800E27A4) # $t3, 0x800e /* 0A96B0 800A8AB0 016A5821 */ addu $t3, $t3, $t2 /* 0A96B4 800A8AB4 816B27A4 */ lb $t3, %lo(D_800E27A4)($t3) @@ -452,8 +452,8 @@ glabel func_800A8474 /* 0A96C8 800A8AC8 24040001 */ li $a0, 1 /* 0A96CC 800A8ACC 0C01EFC7 */ jal func_8007BF1C /* 0A96D0 800A8AD0 00002025 */ move $a0, $zero -/* 0A96D4 800A8AD4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A96D8 800A8AD8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A96D4 800A8AD4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A96D8 800A8AD8 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A96DC 800A8ADC 0C019FCB */ jal func_80067F2C /* 0A96E0 800A8AE0 02802025 */ move $a0, $s4 /* 0A96E4 800A8AE4 8FA5016C */ lw $a1, 0x16c($sp) @@ -578,8 +578,8 @@ glabel func_800A8474 /* 0A9894 800A8C94 44CFF800 */ ctc1 $t7, $31 /* 0A9898 800A8C98 0C01EFC7 */ jal func_8007BF1C /* 0A989C 800A8C9C AFB800E0 */ sw $t8, 0xe0($sp) -/* 0A98A0 800A8CA0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A98A4 800A8CA4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A98A0 800A8CA0 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0A98A4 800A8CA4 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A98A8 800A8CA8 0C019FCB */ jal func_80067F2C /* 0A98AC 800A8CAC 02802025 */ move $a0, $s4 /* 0A98B0 800A8CB0 0C01A142 */ jal func_80068508 @@ -608,7 +608,7 @@ glabel func_800A8474 /* 0A9904 800A8D04 8DAD0300 */ lw $t5, %lo(osTvType)($t5) /* 0A9908 800A8D08 26316CD5 */ addiu $s1, %lo(D_80126CD5) # addiu $s1, $s1, 0x6cd5 /* 0A990C 800A8D0C 15A00020 */ bnez $t5, .L800A8D90 -/* 0A9910 800A8D10 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A9910 800A8D10 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0A9914 800A8D14 8E420000 */ lw $v0, ($s2) /* 0A9918 800A8D18 3C014284 */ li $at, 0x42840000 # 66.000000 /* 0A991C 800A8D1C 44815000 */ mtc1 $at, $f10 @@ -675,7 +675,7 @@ glabel func_800A8474 /* 0A9A08 800A8E08 246A0001 */ addiu $t2, $v1, 1 /* 0A9A0C 800A8E0C 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 /* 0A9A10 800A8E10 46006180 */ add.s $f6, $f12, $f0 -/* 0A9A14 800A8E14 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A9A14 800A8E14 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 /* 0A9A18 800A8E18 E446036C */ swc1 $f6, 0x36c($v0) /* 0A9A1C 800A8E1C 8E420000 */ lw $v0, ($s2) /* 0A9A20 800A8E20 468050A0 */ cvt.s.w $f2, $f10 @@ -685,11 +685,11 @@ glabel func_800A8474 /* 0A9A30 800A8E30 240F0001 */ li $t7, 1 /* 0A9A34 800A8E34 E4480370 */ swc1 $f8, 0x370($v0) /* 0A9A38 800A8E38 8E420000 */ lw $v0, ($s2) -/* 0A9A3C 800A8E3C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A9A3C 800A8E3C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 /* 0A9A40 800A8E40 C45000EC */ lwc1 $f16, 0xec($v0) /* 0A9A44 800A8E44 02802025 */ move $a0, $s4 /* 0A9A48 800A8E48 46008100 */ add.s $f4, $f16, $f0 -/* 0A9A4C 800A8E4C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A9A4C 800A8E4C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0A9A50 800A8E50 E44400EC */ swc1 $f4, 0xec($v0) /* 0A9A54 800A8E54 8E420000 */ lw $v0, ($s2) /* 0A9A58 800A8E58 00000000 */ nop @@ -894,8 +894,8 @@ glabel func_800A8474 /* 0A9D60 800A9160 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) /* 0A9D64 800A9164 24010002 */ li $at, 2 /* 0A9D68 800A9168 1461007C */ bne $v1, $at, .L800A935C -/* 0A9D6C 800A916C 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 -/* 0A9D70 800A9170 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) +/* 0A9D6C 800A916C 3C0D8012 */ lui $t5, %hi(gHUDNumPlayers) # $t5, 0x8012 +/* 0A9D70 800A9170 8DAD6D0C */ lw $t5, %lo(gHUDNumPlayers)($t5) /* 0A9D74 800A9174 3C0E800E */ lui $t6, %hi(D_800E27A4) # $t6, 0x800e /* 0A9D78 800A9178 01CD7021 */ addu $t6, $t6, $t5 /* 0A9D7C 800A917C 81CE27A4 */ lb $t6, %lo(D_800E27A4)($t6) @@ -1276,14 +1276,14 @@ glabel func_800A8474 .L800A9710: /* 0AA310 800A9710 8E8B0000 */ lw $t3, ($s4) /* 0AA314 800A9714 8FAC0160 */ lw $t4, 0x160($sp) -/* 0AA318 800A9718 3C0D8012 */ lui $t5, %hi(D_80126D00) # $t5, 0x8012 +/* 0AA318 800A9718 3C0D8012 */ lui $t5, %hi(gHUDCurrMatrix) # $t5, 0x8012 /* 0AA31C 800A971C AD8B0000 */ sw $t3, ($t4) /* 0AA320 800A9720 8FAE0164 */ lw $t6, 0x164($sp) -/* 0AA324 800A9724 8DAD6D00 */ lw $t5, %lo(D_80126D00)($t5) -/* 0AA328 800A9728 3C0F8012 */ lui $t7, %hi(D_80126D04) # $t7, 0x8012 +/* 0AA324 800A9724 8DAD6D00 */ lw $t5, %lo(gHUDCurrMatrix)($t5) +/* 0AA328 800A9728 3C0F8012 */ lui $t7, %hi(gHUDCurrTriList) # $t7, 0x8012 /* 0AA32C 800A972C ADCD0000 */ sw $t5, ($t6) /* 0AA330 800A9730 8FB80168 */ lw $t8, 0x168($sp) -/* 0AA334 800A9734 8DEF6D04 */ lw $t7, %lo(D_80126D04)($t7) +/* 0AA334 800A9734 8DEF6D04 */ lw $t7, %lo(gHUDCurrTriList)($t7) /* 0AA338 800A9738 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 /* 0AA33C 800A973C AF0F0000 */ sw $t7, ($t8) /* 0AA340 800A9740 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) @@ -1401,8 +1401,8 @@ glabel func_800A8474 /* 0AA4E0 800A98E0 1626FFC3 */ bne $s1, $a2, .L800A97F0 /* 0AA4E4 800A98E4 26100010 */ addiu $s0, $s0, 0x10 .L800A98E8: -/* 0AA4E8 800A98E8 3C198012 */ lui $t9, %hi(D_80126D0C) # $t9, 0x8012 -/* 0AA4EC 800A98EC 8F396D0C */ lw $t9, %lo(D_80126D0C)($t9) +/* 0AA4E8 800A98E8 3C198012 */ lui $t9, %hi(gHUDNumPlayers) # $t9, 0x8012 +/* 0AA4EC 800A98EC 8F396D0C */ lw $t9, %lo(gHUDNumPlayers)($t9) /* 0AA4F0 800A98F0 24010002 */ li $at, 2 /* 0AA4F4 800A98F4 17210006 */ bne $t9, $at, .L800A9910 /* 0AA4F8 800A98F8 00000000 */ nop @@ -1418,8 +1418,8 @@ glabel func_800A8474 /* 0AA51C 800A991C 144002AC */ bnez $v0, .L800AA3D0 /* 0AA520 800A9920 8FBF003C */ lw $ra, 0x3c($sp) /* 0AA524 800A9924 148002A9 */ bnez $a0, .L800AA3CC -/* 0AA528 800A9928 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0AA52C 800A992C 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) +/* 0AA528 800A9928 3C0A8012 */ lui $t2, %hi(gHUDNumPlayers) # $t2, 0x8012 +/* 0AA52C 800A992C 8D4A6D0C */ lw $t2, %lo(gHUDNumPlayers)($t2) /* 0AA530 800A9930 3C0B800E */ lui $t3, %hi(D_800E27A4) # $t3, 0x800e /* 0AA534 800A9934 016A5821 */ addu $t3, $t3, $t2 /* 0AA538 800A9938 816B27A4 */ lb $t3, %lo(D_800E27A4)($t3) @@ -1431,8 +1431,8 @@ glabel func_800A8474 .L800A9950: /* 0AA550 800A9950 0C01ECF4 */ jal func_8007B3D0 /* 0AA554 800A9954 02802025 */ move $a0, $s4 -/* 0AA558 800A9958 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AA55C 800A995C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AA558 800A9958 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0AA55C 800A995C 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0AA560 800A9960 0C019FCB */ jal func_80067F2C /* 0AA564 800A9964 02802025 */ move $a0, $s4 /* 0AA568 800A9968 0C00B1F1 */ jal get_current_level_model @@ -1445,8 +1445,8 @@ glabel func_800A8474 /* 0AA584 800A9984 0C01A142 */ jal func_80068508 /* 0AA588 800A9988 24040001 */ li $a0, 1 /* 0AA58C 800A998C 8FAC0158 */ lw $t4, 0x158($sp) -/* 0AA590 800A9990 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0AA594 800A9994 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) +/* 0AA590 800A9990 3C028012 */ lui $v0, %hi(gHUDNumPlayers) # $v0, 0x8012 +/* 0AA594 800A9994 8C426D0C */ lw $v0, %lo(gHUDNumPlayers)($v0) /* 0AA598 800A9998 8D8D0020 */ lw $t5, 0x20($t4) /* 0AA59C 800A999C 24010001 */ li $at, 1 /* 0AA5A0 800A99A0 1041000E */ beq $v0, $at, .L800A99DC @@ -1686,10 +1686,10 @@ glabel func_800A8474 /* 0AA8FC 800A9CFC AD0D0004 */ sw $t5, 4($t0) .L800A9D00: /* 0AA900 800A9D00 8FAE0154 */ lw $t6, 0x154($sp) -/* 0AA904 800A9D04 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AA908 800A9D08 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AA90C 800A9D0C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AA910 800A9D10 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AA904 800A9D04 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0AA908 800A9D08 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0AA90C 800A9D0C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0AA910 800A9D10 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0AA914 800A9D14 27A70120 */ addiu $a3, $sp, 0x120 /* 0AA918 800A9D18 AFA00014 */ sw $zero, 0x14($sp) /* 0AA91C 800A9D1C 0C01A2FD */ jal func_80068BF4 @@ -1780,9 +1780,9 @@ glabel func_800A8474 /* 0AAA6C 800A9E6C 250D0008 */ addiu $t5, $t0, 8 /* 0AAA70 800A9E70 AE8D0000 */ sw $t5, ($s4) /* 0AAA74 800A9E74 AD0E0000 */ sw $t6, ($t0) -/* 0AAA78 800A9E78 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AAA78 800A9E78 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0AAA7C 800A9E7C 444AF800 */ cfc1 $t2, $31 -/* 0AAA80 800A9E80 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0AAA80 800A9E80 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 /* 0AAA84 800A9E84 35410003 */ ori $at, $t2, 3 /* 0AAA88 800A9E88 38210002 */ xori $at, $at, 2 /* 0AAA8C 800A9E8C 44C1F800 */ ctc1 $at, $31 @@ -1795,8 +1795,8 @@ glabel func_800A8474 /* 0AAAA8 800A9EA8 03017825 */ or $t7, $t8, $at /* 0AAAAC 800A9EAC AD0F0004 */ sw $t7, 4($t0) /* 0AAAB0 800A9EB0 8E470000 */ lw $a3, ($s2) -/* 0AAAB4 800A9EB4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AAAB8 800A9EB8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AAAB4 800A9EB4 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0AAAB8 800A9EB8 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0AAABC 800A9EBC 02802025 */ move $a0, $s4 /* 0AAAC0 800A9EC0 0C02A980 */ jal func_800AA600 /* 0AAAC4 800A9EC4 24E701E0 */ addiu $a3, $a3, 0x1e0 @@ -1865,12 +1865,12 @@ glabel func_800A8474 /* 0AABB8 800A9FB8 240E000E */ li $t6, 14 /* 0AABBC 800A9FBC E54A01E8 */ swc1 $f10, 0x1e8($t2) /* 0AABC0 800A9FC0 8E580000 */ lw $t8, ($s2) -/* 0AABC4 800A9FC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AABC4 800A9FC4 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0AABC8 800A9FC8 A70E01E6 */ sh $t6, 0x1e6($t8) /* 0AABCC 800A9FCC 8E470000 */ lw $a3, ($s2) -/* 0AABD0 800A9FD0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AABD4 800A9FD4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AABD8 800A9FD8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AABD0 800A9FD0 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0AABD4 800A9FD4 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0AABD8 800A9FD8 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0AABDC 800A9FDC 02802025 */ move $a0, $s4 /* 0AABE0 800A9FE0 0C02A980 */ jal func_800AA600 /* 0AABE4 800A9FE4 24E701E0 */ addiu $a3, $a3, 0x1e0 @@ -1912,12 +1912,12 @@ glabel func_800A8474 /* 0AAC70 800AA070 AD0F0004 */ sw $t7, 4($t0) /* 0AAC74 800AA074 8E4C0000 */ lw $t4, ($s2) /* 0AAC78 800AA078 44819000 */ mtc1 $at, $f18 -/* 0AAC7C 800AA07C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AAC7C 800AA07C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0AAC80 800AA080 E59201E8 */ swc1 $f18, 0x1e8($t4) /* 0AAC84 800AA084 8E470000 */ lw $a3, ($s2) -/* 0AAC88 800AA088 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AAC8C 800AA08C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AAC90 800AA090 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AAC88 800AA088 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0AAC8C 800AA08C 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0AAC90 800AA090 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0AAC94 800AA094 02802025 */ move $a0, $s4 /* 0AAC98 800AA098 0C02A980 */ jal func_800AA600 /* 0AAC9C 800AA09C 24E701E0 */ addiu $a3, $a3, 0x1e0 @@ -2107,10 +2107,10 @@ glabel func_800A8474 .L800AA344: /* 0AAF44 800AA344 8E470000 */ lw $a3, ($s2) .L800AA348: -/* 0AAF48 800AA348 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AAF4C 800AA34C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AAF50 800AA350 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AAF54 800AA354 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AAF48 800AA348 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0AAF4C 800AA34C 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0AAF50 800AA350 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0AAF54 800AA354 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0AAF58 800AA358 0C02A980 */ jal func_800AA600 /* 0AAF5C 800AA35C 24E701E0 */ addiu $a3, $a3, 0x1e0 .L800AA360: @@ -2133,14 +2133,14 @@ glabel func_800A8474 /* 0AAF98 800AA398 24040001 */ li $a0, 1 /* 0AAF9C 800AA39C 8E8B0000 */ lw $t3, ($s4) /* 0AAFA0 800AA3A0 8FAA0160 */ lw $t2, 0x160($sp) -/* 0AAFA4 800AA3A4 3C0F8012 */ lui $t7, %hi(D_80126D00) # $t7, 0x8012 +/* 0AAFA4 800AA3A4 3C0F8012 */ lui $t7, %hi(gHUDCurrMatrix) # $t7, 0x8012 /* 0AAFA8 800AA3A8 AD4B0000 */ sw $t3, ($t2) /* 0AAFAC 800AA3AC 8FB90164 */ lw $t9, 0x164($sp) -/* 0AAFB0 800AA3B0 8DEF6D00 */ lw $t7, %lo(D_80126D00)($t7) -/* 0AAFB4 800AA3B4 3C0E8012 */ lui $t6, %hi(D_80126D04) # $t6, 0x8012 +/* 0AAFB0 800AA3B0 8DEF6D00 */ lw $t7, %lo(gHUDCurrMatrix)($t7) +/* 0AAFB4 800AA3B4 3C0E8012 */ lui $t6, %hi(gHUDCurrTriList) # $t6, 0x8012 /* 0AAFB8 800AA3B8 AF2F0000 */ sw $t7, ($t9) /* 0AAFBC 800AA3BC 8FB80168 */ lw $t8, 0x168($sp) -/* 0AAFC0 800AA3C0 8DCE6D04 */ lw $t6, %lo(D_80126D04)($t6) +/* 0AAFC0 800AA3C0 8DCE6D04 */ lw $t6, %lo(gHUDCurrTriList)($t6) /* 0AAFC4 800AA3C4 00000000 */ nop /* 0AAFC8 800AA3C8 AF0E0000 */ sw $t6, ($t8) .L800AA3CC: diff --git a/asm/non_matchings/game_ui/func_800AA600.s b/asm/non_matchings/game_ui/func_800AA600.s index 04e4cac7..80b65dee 100644 --- a/asm/non_matchings/game_ui/func_800AA600.s +++ b/asm/non_matchings/game_ui/func_800AA600.s @@ -134,11 +134,11 @@ glabel func_800AA600 /* 0AB3D4 800AA7D4 8FAF00C0 */ lw $t7, 0xc0($sp) /* 0AB3D8 800AA7D8 AC2D6CFC */ sw $t5, %lo(gHUDCurrDisplayList)($at) /* 0AB3DC 800AA7DC 8D8E0000 */ lw $t6, ($t4) -/* 0AB3E0 800AA7E0 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 -/* 0AB3E4 800AA7E4 AC2E6D00 */ sw $t6, %lo(D_80126D00)($at) +/* 0AB3E0 800AA7E0 3C018012 */ lui $at, %hi(gHUDCurrMatrix) # $at, 0x8012 +/* 0AB3E4 800AA7E4 AC2E6D00 */ sw $t6, %lo(gHUDCurrMatrix)($at) /* 0AB3E8 800AA7E8 8DF90000 */ lw $t9, ($t7) -/* 0AB3EC 800AA7EC 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 -/* 0AB3F0 800AA7F0 AC396D04 */ sw $t9, %lo(D_80126D04)($at) +/* 0AB3EC 800AA7EC 3C018012 */ lui $at, %hi(gHUDCurrTriList) # $at, 0x8012 +/* 0AB3F0 800AA7F0 AC396D04 */ sw $t9, %lo(gHUDCurrTriList)($at) /* 0AB3F4 800AA7F4 86080006 */ lh $t0, 6($s0) /* 0AB3F8 800AA7F8 24010028 */ li $at, 40 /* 0AB3FC 800AA7FC 11010021 */ beq $t0, $at, .L800AA884 @@ -538,10 +538,10 @@ glabel func_800AA600 /* 0AB9DC 800AADDC 01CFC823 */ subu $t9, $t6, $t7 /* 0AB9E0 800AADE0 A6190004 */ sh $t9, 4($s0) /* 0AB9E4 800AADE4 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 -/* 0AB9E8 800AADE8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AB9EC 800AADEC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AB9F0 800AADF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AB9F4 800AADF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AB9E8 800AADE8 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0AB9EC 800AADEC 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 +/* 0AB9F0 800AADF0 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 +/* 0AB9F4 800AADF4 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0AB9F8 800AADF8 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0AB9FC 800AADFC AFA00014 */ sw $zero, 0x14($sp) /* 0ABA00 800AAE00 02003825 */ move $a3, $s0 @@ -568,16 +568,16 @@ glabel func_800AA600 /* 0ABA50 800AAE50 3C048012 */ lui $a0, %hi(gHUDCurrDisplayList) # $a0, 0x8012 /* 0ABA54 800AAE54 A4ED0002 */ sh $t5, 2($a3) /* 0ABA58 800AAE58 860C0004 */ lh $t4, 4($s0) -/* 0ABA5C 800AAE5C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0ABA5C 800AAE5C 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 /* 0ABA60 800AAE60 A4EC0004 */ sh $t4, 4($a3) /* 0ABA64 800AAE64 C610000C */ lwc1 $f16, 0xc($s0) -/* 0ABA68 800AAE68 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0ABA68 800AAE68 3C068012 */ lui $a2, %hi(gHUDCurrTriList) # $a2, 0x8012 /* 0ABA6C 800AAE6C E4F0000C */ swc1 $f16, 0xc($a3) /* 0ABA70 800AAE70 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 0ABA74 800AAE74 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0ABA74 800AAE74 24C66D04 */ addiu $a2, %lo(gHUDCurrTriList) # addiu $a2, $a2, 0x6d04 /* 0ABA78 800AAE78 E4EA0010 */ swc1 $f10, 0x10($a3) /* 0ABA7C 800AAE7C C6040014 */ lwc1 $f4, 0x14($s0) -/* 0ABA80 800AAE80 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0ABA80 800AAE80 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0ABA84 800AAE84 E4E40014 */ swc1 $f4, 0x14($a3) /* 0ABA88 800AAE88 C6060008 */ lwc1 $f6, 8($s0) /* 0ABA8C 800AAE8C 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc @@ -589,8 +589,8 @@ glabel func_800AA600 /* 0ABAA4 800AAEA4 86080006 */ lh $t0, 6($s0) .L800AAEA8: /* 0ABAA8 800AAEA8 44809000 */ mtc1 $zero, $f18 -/* 0ABAAC 800AAEAC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0ABAB0 800AAEB0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0ABAAC 800AAEAC 3C058012 */ lui $a1, %hi(gHUDCurrMatrix) # $a1, 0x8012 +/* 0ABAB0 800AAEB0 24A56D00 */ addiu $a1, %lo(gHUDCurrMatrix) # addiu $a1, $a1, 0x6d00 /* 0ABAB4 800AAEB4 24846CFC */ addiu $a0, %lo(gHUDCurrDisplayList) # addiu $a0, $a0, 0x6cfc /* 0ABAB8 800AAEB8 02003025 */ move $a2, $s0 /* 0ABABC 800AAEBC 3C073F80 */ lui $a3, 0x3f80 @@ -653,14 +653,14 @@ glabel func_800AA600 .L800AAF90: /* 0ABB90 800AAF90 8D6B6CFC */ lw $t3, %lo(gHUDCurrDisplayList)($t3) /* 0ABB94 800AAF94 8FAD00B8 */ lw $t5, 0xb8($sp) -/* 0ABB98 800AAF98 3C0C8012 */ lui $t4, %hi(D_80126D00) # $t4, 0x8012 +/* 0ABB98 800AAF98 3C0C8012 */ lui $t4, %hi(gHUDCurrMatrix) # $t4, 0x8012 /* 0ABB9C 800AAF9C ADAB0000 */ sw $t3, ($t5) /* 0ABBA0 800AAFA0 8FAE00BC */ lw $t6, 0xbc($sp) -/* 0ABBA4 800AAFA4 8D8C6D00 */ lw $t4, %lo(D_80126D00)($t4) -/* 0ABBA8 800AAFA8 3C198012 */ lui $t9, %hi(D_80126D04) # $t9, 0x8012 +/* 0ABBA4 800AAFA4 8D8C6D00 */ lw $t4, %lo(gHUDCurrMatrix)($t4) +/* 0ABBA8 800AAFA8 3C198012 */ lui $t9, %hi(gHUDCurrTriList) # $t9, 0x8012 /* 0ABBAC 800AAFAC ADCC0000 */ sw $t4, ($t6) /* 0ABBB0 800AAFB0 8FAF00C0 */ lw $t7, 0xc0($sp) -/* 0ABBB4 800AAFB4 8F396D04 */ lw $t9, %lo(D_80126D04)($t9) +/* 0ABBB4 800AAFB4 8F396D04 */ lw $t9, %lo(gHUDCurrTriList)($t9) /* 0ABBB8 800AAFB8 00000000 */ nop /* 0ABBBC 800AAFBC ADF90000 */ sw $t9, ($t7) .L800AAFC0: diff --git a/asm/non_matchings/objects/func_8000B020.s b/asm/non_matchings/objects/func_8000B020.s index a019d555..058e5b36 100644 --- a/asm/non_matchings/objects/func_8000B020.s +++ b/asm/non_matchings/objects/func_8000B020.s @@ -116,9 +116,9 @@ glabel func_8000B020 /* 00BDE0 8000B1E0 00002825 */ move $a1, $zero /* 00BDE4 8000B1E4 3C01800E */ lui $at, %hi(D_800DC75C) # $at, 0x800e /* 00BDE8 8000B1E8 3C108012 */ lui $s0, %hi(D_8011B078) # $s0, 0x8012 -/* 00BDEC 8000B1EC 3C118012 */ lui $s1, %hi(D_8011B0A0) # $s1, 0x8012 +/* 00BDEC 8000B1EC 3C118012 */ lui $s1, %hi(gSceneCurrDisplayList) # $s1, 0x8012 /* 00BDF0 8000B1F0 AC22C75C */ sw $v0, %lo(D_800DC75C)($at) -/* 00BDF4 8000B1F4 2631B0A0 */ addiu $s1, %lo(D_8011B0A0) # addiu $s1, $s1, -0x4f60 +/* 00BDF4 8000B1F4 2631B0A0 */ addiu $s1, %lo(gSceneCurrDisplayList) # addiu $s1, $s1, -0x4f60 /* 00BDF8 8000B1F8 2610B078 */ addiu $s0, %lo(D_8011B078) # addiu $s0, $s0, -0x4f88 .L8000B1FC: /* 00BDFC 8000B1FC A2000000 */ sb $zero, ($s0) diff --git a/asm/non_matchings/objects/func_8001AE64.s b/asm/non_matchings/objects/func_8001AE64.s index d9d1b2e7..509eda76 100644 --- a/asm/non_matchings/objects/func_8001AE64.s +++ b/asm/non_matchings/objects/func_8001AE64.s @@ -272,12 +272,12 @@ glabel func_8001AE64 /* 01BE58 8001B258 10000008 */ b .L8001B27C /* 01BE5C 8001B25C 8FBF001C */ lw $ra, 0x1c($sp) .L8001B260: -/* 01BE60 8001B260 0C029B6D */ jal func_800A6DB4 +/* 01BE60 8001B260 0C029B6D */ jal play_time_trial_end_message /* 01BE64 8001B264 00000000 */ nop /* 01BE68 8001B268 10000004 */ b .L8001B27C /* 01BE6C 8001B26C 8FBF001C */ lw $ra, 0x1c($sp) .L8001B270: -/* 01BE70 8001B270 0C029B6D */ jal func_800A6DB4 +/* 01BE70 8001B270 0C029B6D */ jal play_time_trial_end_message /* 01BE74 8001B274 00000000 */ nop .L8001B278: /* 01BE78 8001B278 8FBF001C */ lw $ra, 0x1c($sp) diff --git a/asm/non_matchings/objects/func_8001B3C4.s b/asm/non_matchings/objects/func_8001B3C4.s index 2e05e62f..f0ceab93 100644 --- a/asm/non_matchings/objects/func_8001B3C4.s +++ b/asm/non_matchings/objects/func_8001B3C4.s @@ -76,7 +76,7 @@ glabel func_8001B3C4 /* 01C0DC 8001B4DC A2000000 */ sb $zero, ($s0) .L8001B4E0: /* 01C0E0 8001B4E0 8FA40024 */ lw $a0, 0x24($sp) -/* 01C0E4 8001B4E4 0C029B6D */ jal func_800A6DB4 +/* 01C0E4 8001B4E4 0C029B6D */ jal play_time_trial_end_message /* 01C0E8 8001B4E8 00000000 */ nop .L8001B4EC: /* 01C0EC 8001B4EC 8FBF001C */ lw $ra, 0x1c($sp) diff --git a/asm/non_matchings/unknown_0255E0/func_8002581C.s b/asm/non_matchings/unknown_0255E0/func_8002581C.s index b5bdcae5..44c81062 100644 --- a/asm/non_matchings/unknown_0255E0/func_8002581C.s +++ b/asm/non_matchings/unknown_0255E0/func_8002581C.s @@ -36,8 +36,8 @@ glabel func_8002581C /* 026490 80025890 2508D480 */ addiu $t0, %lo(D_8011D480) # addiu $t0, $t0, -0x2b80 /* 026494 80025894 AD0A0000 */ sw $t2, ($t0) /* 026498 80025898 8C4B000C */ lw $t3, 0xc($v0) -/* 02649C 8002589C 3C048012 */ lui $a0, %hi(D_8011B0A0) # $a0, 0x8012 -/* 0264A0 800258A0 2484B0A0 */ addiu $a0, %lo(D_8011B0A0) # addiu $a0, $a0, -0x4f60 +/* 02649C 8002589C 3C048012 */ lui $a0, %hi(gSceneCurrDisplayList) # $a0, 0x8012 +/* 0264A0 800258A0 2484B0A0 */ addiu $a0, %lo(gSceneCurrDisplayList) # addiu $a0, $a0, -0x4f60 /* 0264A4 800258A4 00002825 */ move $a1, $zero /* 0264A8 800258A8 24060003 */ li $a2, 3 /* 0264AC 800258AC 0C01ED32 */ jal func_8007B4C8 @@ -354,28 +354,28 @@ glabel func_8002581C /* 02694C 80025D4C 0303C021 */ addu $t8, $t8, $v1 /* 026950 80025D50 8F18D480 */ lw $t8, %lo(D_8011D480)($t8) /* 026954 80025D54 85930000 */ lh $s3, ($t4) -/* 026958 80025D58 3C0E8012 */ lui $t6, %hi(D_8011B0A8) # $t6, 0x8012 +/* 026958 80025D58 3C0E8012 */ lui $t6, %hi(gSceneCurrVertexList) # $t6, 0x8012 /* 02695C 80025D5C 3C0A8012 */ lui $t2, %hi(D_8011D490) # $t2, 0x8012 -/* 026960 80025D60 8DCEB0A8 */ lw $t6, %lo(D_8011B0A8)($t6) -/* 026964 80025D64 3C018012 */ lui $at, %hi(D_8011B0A8) # $at, 0x8012 +/* 026960 80025D60 8DCEB0A8 */ lw $t6, %lo(gSceneCurrVertexList)($t6) +/* 026964 80025D64 3C018012 */ lui $at, %hi(gSceneCurrVertexList) # $at, 0x8012 /* 026968 80025D68 01435021 */ addu $t2, $t2, $v1 /* 02696C 80025D6C 8D4AD490 */ lw $t2, %lo(D_8011D490)($t2) -/* 026970 80025D70 3C0F8012 */ lui $t7, %hi(D_8011B0AC) # $t7, 0x8012 -/* 026974 80025D74 AC38B0A8 */ sw $t8, %lo(D_8011B0A8)($at) -/* 026978 80025D78 8DEFB0AC */ lw $t7, %lo(D_8011B0AC)($t7) -/* 02697C 80025D7C 3C018012 */ lui $at, %hi(D_8011B0AC) # $at, 0x8012 +/* 026970 80025D70 3C0F8012 */ lui $t7, %hi(gSceneCurrTriList) # $t7, 0x8012 +/* 026974 80025D74 AC38B0A8 */ sw $t8, %lo(gSceneCurrVertexList)($at) +/* 026978 80025D78 8DEFB0AC */ lw $t7, %lo(gSceneCurrTriList)($t7) +/* 02697C 80025D7C 3C018012 */ lui $at, %hi(gSceneCurrTriList) # $at, 0x8012 /* 026980 80025D80 24190001 */ li $t9, 1 /* 026984 80025D84 03225823 */ subu $t3, $t9, $v0 /* 026988 80025D88 0013A400 */ sll $s4, $s3, 0x10 -/* 02698C 80025D8C AC2AB0AC */ sw $t2, %lo(D_8011B0AC)($at) +/* 02698C 80025D8C AC2AB0AC */ sw $t2, %lo(gSceneCurrTriList)($at) /* 026990 80025D90 00146C03 */ sra $t5, $s4, 0x10 /* 026994 80025D94 A08B0000 */ sb $t3, ($a0) -/* 026998 80025D98 3C0C8012 */ lui $t4, %hi(D_8011B0A8) # $t4, 0x8012 -/* 02699C 80025D9C 8D8CB0A8 */ lw $t4, %lo(D_8011B0A8)($t4) +/* 026998 80025D98 3C0C8012 */ lui $t4, %hi(gSceneCurrVertexList) # $t4, 0x8012 +/* 02699C 80025D9C 8D8CB0A8 */ lw $t4, %lo(gSceneCurrVertexList)($t4) /* 0269A0 80025DA0 01A0A025 */ move $s4, $t5 /* 0269A4 80025DA4 3C018012 */ lui $at, %hi(D_8011D488) # $at, 0x8012 -/* 0269A8 80025DA8 3C0D8012 */ lui $t5, %hi(D_8011B0AC) # $t5, 0x8012 -/* 0269AC 80025DAC 8DADB0AC */ lw $t5, %lo(D_8011B0AC)($t5) +/* 0269A8 80025DA8 3C0D8012 */ lui $t5, %hi(gSceneCurrTriList) # $t5, 0x8012 +/* 0269AC 80025DAC 8DADB0AC */ lw $t5, %lo(gSceneCurrTriList)($t5) /* 0269B0 80025DB0 AC2CD488 */ sw $t4, %lo(D_8011D488)($at) /* 0269B4 80025DB4 3C018012 */ lui $at, %hi(D_8011D498) # $at, 0x8012 /* 0269B8 80025DB8 AC2DD498 */ sw $t5, %lo(D_8011D498)($at) @@ -492,8 +492,8 @@ glabel func_8002581C /* 026B48 80025F48 84C6D4B6 */ lh $a2, %lo(D_8011D4B6)($a2) /* 026B4C 80025F4C 3C078000 */ lui $a3, 0x8000 /* 026B50 80025F50 10C00031 */ beqz $a2, .L80026018 -/* 026B54 80025F54 3C088012 */ lui $t0, %hi(D_8011B0A0) # $t0, 0x8012 -/* 026B58 80025F58 2508B0A0 */ addiu $t0, %lo(D_8011B0A0) # addiu $t0, $t0, -0x4f60 +/* 026B54 80025F54 3C088012 */ lui $t0, %hi(gSceneCurrDisplayList) # $t0, 0x8012 +/* 026B58 80025F58 2508B0A0 */ addiu $t0, %lo(gSceneCurrDisplayList) # addiu $t0, $t0, -0x4f60 /* 026B5C 80025F5C 8D020000 */ lw $v0, ($t0) /* 026B60 80025F60 3C0C8012 */ lui $t4, %hi(D_8011D488) # $t4, 0x8012 /* 026B64 80025F64 244A0008 */ addiu $t2, $v0, 8 @@ -543,11 +543,11 @@ glabel func_8002581C /* 026C14 80026014 AC590004 */ sw $t9, 4($v0) .L80026018: /* 026C18 80026018 8FAF00AC */ lw $t7, 0xac($sp) -/* 026C1C 8002601C 3C018012 */ lui $at, %hi(D_8011B0A8) # $at, 0x8012 +/* 026C1C 8002601C 3C018012 */ lui $at, %hi(gSceneCurrVertexList) # $at, 0x8012 /* 026C20 80026020 8FB800A8 */ lw $t8, 0xa8($sp) -/* 026C24 80026024 AC2FB0A8 */ sw $t7, %lo(D_8011B0A8)($at) -/* 026C28 80026028 3C018012 */ lui $at, %hi(D_8011B0AC) # $at, 0x8012 -/* 026C2C 8002602C AC38B0AC */ sw $t8, %lo(D_8011B0AC)($at) +/* 026C24 80026024 AC2FB0A8 */ sw $t7, %lo(gSceneCurrVertexList)($at) +/* 026C28 80026028 3C018012 */ lui $at, %hi(gSceneCurrTriList) # $at, 0x8012 +/* 026C2C 8002602C AC38B0AC */ sw $t8, %lo(gSceneCurrTriList)($at) .L80026030: /* 026C30 80026030 8FBF004C */ lw $ra, 0x4c($sp) .L80026034: diff --git a/asm/non_matchings/unknown_0255E0/func_80027184.s b/asm/non_matchings/unknown_0255E0/func_80027184.s index 60b98818..42344da7 100644 --- a/asm/non_matchings/unknown_0255E0/func_80027184.s +++ b/asm/non_matchings/unknown_0255E0/func_80027184.s @@ -19,9 +19,9 @@ glabel func_80027184 /* 027DC4 800271C4 84620000 */ lh $v0, ($v1) /* 027DC8 800271C8 24010018 */ li $at, 24 /* 027DCC 800271CC 1441003A */ bne $v0, $at, .L800272B8 -/* 027DD0 800271D0 3C078012 */ lui $a3, %hi(D_8011B0A8) # $a3, 0x8012 -/* 027DD4 800271D4 3C0D8012 */ lui $t5, %hi(D_8011B0A0) # $t5, 0x8012 -/* 027DD8 800271D8 25ADB0A0 */ addiu $t5, %lo(D_8011B0A0) # addiu $t5, $t5, -0x4f60 +/* 027DD0 800271D0 3C078012 */ lui $a3, %hi(gSceneCurrVertexList) # $a3, 0x8012 +/* 027DD4 800271D4 3C0D8012 */ lui $t5, %hi(gSceneCurrDisplayList) # $t5, 0x8012 +/* 027DD8 800271D8 25ADB0A0 */ addiu $t5, %lo(gSceneCurrDisplayList) # addiu $t5, $t5, -0x4f60 /* 027DDC 800271DC 8DAA0000 */ lw $t2, ($t5) /* 027DE0 800271E0 3C108012 */ lui $s0, %hi(D_8011D488) # $s0, 0x8012 /* 027DE4 800271E4 2610D488 */ addiu $s0, %lo(D_8011D488) # addiu $s0, $s0, -0x2b78 @@ -66,12 +66,12 @@ glabel func_80027184 /* 027E80 80027280 3C198012 */ lui $t9, %hi(D_8011D498) # $t9, 0x8012 /* 027E84 80027284 AD4E0000 */ sw $t6, ($t2) /* 027E88 80027288 8F39D498 */ lw $t9, %lo(D_8011D498)($t9) -/* 027E8C 8002728C 24E7B0A8 */ addiu $a3, %lo(D_8011B0A8) # addiu $a3, $a3, -0x4f58 +/* 027E8C 8002728C 24E7B0A8 */ addiu $a3, %lo(gSceneCurrVertexList) # addiu $a3, $a3, -0x4f58 /* 027E90 80027290 03317821 */ addu $t7, $t9, $s1 /* 027E94 80027294 AD4F0004 */ sw $t7, 4($t2) -/* 027E98 80027298 3C088012 */ lui $t0, %hi(D_8011B0AC) # $t0, 0x8012 +/* 027E98 80027298 3C088012 */ lui $t0, %hi(gSceneCurrTriList) # $t0, 0x8012 /* 027E9C 8002729C 8CF80000 */ lw $t8, ($a3) -/* 027EA0 800272A0 2508B0AC */ addiu $t0, %lo(D_8011B0AC) # addiu $t0, $t0, -0x4f54 +/* 027EA0 800272A0 2508B0AC */ addiu $t0, %lo(gSceneCurrTriList) # addiu $t0, $t0, -0x4f54 /* 027EA4 800272A4 8D0E0000 */ lw $t6, ($t0) /* 027EA8 800272A8 A4600000 */ sh $zero, ($v1) /* 027EAC 800272AC 3C018012 */ lui $at, %hi(D_8011D498) # $at, 0x8012 @@ -85,8 +85,8 @@ glabel func_80027184 /* 027EC8 800272C8 3C018012 */ lui $at, %hi(D_8011D4AC) # $at, 0x8012 /* 027ECC 800272CC 46006102 */ mul.s $f4, $f12, $f0 /* 027ED0 800272D0 C422D4AC */ lwc1 $f2, %lo(D_8011D4AC)($at) -/* 027ED4 800272D4 3C078012 */ lui $a3, %hi(D_8011B0A8) # $a3, 0x8012 -/* 027ED8 800272D8 24E7B0A8 */ addiu $a3, %lo(D_8011B0A8) # addiu $a3, $a3, -0x4f58 +/* 027ED4 800272D4 3C078012 */ lui $a3, %hi(gSceneCurrVertexList) # $a3, 0x8012 +/* 027ED8 800272D8 24E7B0A8 */ addiu $a3, %lo(gSceneCurrVertexList) # addiu $a3, $a3, -0x4f58 /* 027EDC 800272DC 46022180 */ add.s $f6, $f4, $f2 /* 027EE0 800272E0 8CE20000 */ lw $v0, ($a3) /* 027EE4 800272E4 4459F800 */ cfc1 $t9, $31 @@ -118,9 +118,9 @@ glabel func_80027184 /* 027F4C 8002734C 46004282 */ mul.s $f10, $f8, $f0 /* 027F50 80027350 9231B0E3 */ lbu $s1, %lo(D_8011B0E3)($s1) /* 027F54 80027354 A4490000 */ sh $t1, ($v0) -/* 027F58 80027358 3C088012 */ lui $t0, %hi(D_8011B0AC) # $t0, 0x8012 +/* 027F58 80027358 3C088012 */ lui $t0, %hi(gSceneCurrTriList) # $t0, 0x8012 /* 027F5C 8002735C 46025100 */ add.s $f4, $f10, $f2 -/* 027F60 80027360 2508B0AC */ addiu $t0, %lo(D_8011B0AC) # addiu $t0, $t0, -0x4f54 +/* 027F60 80027360 2508B0AC */ addiu $t0, %lo(gSceneCurrTriList) # addiu $t0, $t0, -0x4f54 /* 027F64 80027364 4458F800 */ cfc1 $t8, $31 /* 027F68 80027368 24420028 */ addiu $v0, $v0, 0x28 /* 027F6C 8002736C 37010003 */ ori $at, $t8, 3 diff --git a/asm/non_matchings/unknown_0255E0/func_80028050.s b/asm/non_matchings/unknown_0255E0/func_80028050.s index f2f3071e..c1803115 100644 --- a/asm/non_matchings/unknown_0255E0/func_80028050.s +++ b/asm/non_matchings/unknown_0255E0/func_80028050.s @@ -2,11 +2,11 @@ glabel func_80028050 /* 028C50 80028050 27BDFEA8 */ addiu $sp, $sp, -0x158 /* 028C54 80028054 AFB10018 */ sw $s1, 0x18($sp) /* 028C58 80028058 AFB00014 */ sw $s0, 0x14($sp) -/* 028C5C 8002805C 3C118012 */ lui $s1, %hi(D_8011B0A8) # $s1, 0x8012 -/* 028C60 80028060 3C108012 */ lui $s0, %hi(D_8011B0AC) # $s0, 0x8012 +/* 028C5C 8002805C 3C118012 */ lui $s1, %hi(gSceneCurrVertexList) # $s1, 0x8012 +/* 028C60 80028060 3C108012 */ lui $s0, %hi(gSceneCurrTriList) # $s0, 0x8012 /* 028C64 80028064 AFBF0024 */ sw $ra, 0x24($sp) -/* 028C68 80028068 8E31B0A8 */ lw $s1, %lo(D_8011B0A8)($s1) -/* 028C6C 8002806C 8E10B0AC */ lw $s0, %lo(D_8011B0AC)($s0) +/* 028C68 80028068 8E31B0A8 */ lw $s1, %lo(gSceneCurrVertexList)($s1) +/* 028C6C 8002806C 8E10B0AC */ lw $s0, %lo(gSceneCurrTriList)($s0) /* 028C70 80028070 AFB30020 */ sw $s3, 0x20($sp) /* 028C74 80028074 0C01A748 */ jal func_80069D20 /* 028C78 80028078 AFB2001C */ sw $s2, 0x1c($sp) @@ -283,7 +283,7 @@ glabel func_80028050 /* 0290B4 800284B4 44C1F800 */ ctc1 $at, $31 /* 0290B8 800284B8 A7AD0120 */ sh $t5, 0x120($sp) /* 0290BC 800284BC 460022A4 */ cvt.w.s $f10, $f4 -/* 0290C0 800284C0 3C138012 */ lui $s3, %hi(D_8011B0A0) # $s3, 0x8012 +/* 0290C0 800284C0 3C138012 */ lui $s3, %hi(gSceneCurrDisplayList) # $s3, 0x8012 /* 0290C4 800284C4 44D9F800 */ ctc1 $t9, $31 /* 0290C8 800284C8 440F5000 */ mfc1 $t7, $f10 /* 0290CC 800284CC 46108080 */ add.s $f2, $f16, $f16 @@ -291,13 +291,13 @@ glabel func_80028050 /* 0290D4 800284D4 46001181 */ sub.s $f6, $f2, $f0 /* 0290D8 800284D8 A7B80136 */ sh $t8, 0x136($sp) /* 0290DC 800284DC 444DF800 */ cfc1 $t5, $31 -/* 0290E0 800284E0 2673B0A0 */ addiu $s3, %lo(D_8011B0A0) # addiu $s3, $s3, -0x4f60 +/* 0290E0 800284E0 2673B0A0 */ addiu $s3, %lo(gSceneCurrDisplayList) # addiu $s3, $s3, -0x4f60 /* 0290E4 800284E4 35A10003 */ ori $at, $t5, 3 /* 0290E8 800284E8 38210002 */ xori $at, $at, 2 /* 0290EC 800284EC 44C1F800 */ ctc1 $at, $31 -/* 0290F0 800284F0 3C058012 */ lui $a1, %hi(D_8011B0A4) # $a1, 0x8012 +/* 0290F0 800284F0 3C058012 */ lui $a1, %hi(gSceneCurrMatrix) # $a1, 0x8012 /* 0290F4 800284F4 46003224 */ cvt.w.s $f8, $f6 -/* 0290F8 800284F8 24A5B0A4 */ addiu $a1, %lo(D_8011B0A4) # addiu $a1, $a1, -0x4f5c +/* 0290F8 800284F8 24A5B0A4 */ addiu $a1, %lo(gSceneCurrMatrix) # addiu $a1, $a1, -0x4f5c /* 0290FC 800284FC 44CDF800 */ ctc1 $t5, $31 /* 029100 80028500 440E4000 */ mfc1 $t6, $f8 /* 029104 80028504 460E6101 */ sub.s $f4, $f12, $f14 @@ -374,9 +374,9 @@ glabel func_80028050 /* 029214 80028614 AC780000 */ sw $t8, ($v1) /* 029218 80028618 8C4D000C */ lw $t5, 0xc($v0) /* 02921C 8002861C 3C098000 */ lui $t1, 0x8000 -/* 029220 80028620 3C0B8012 */ lui $t3, %hi(D_8011B0A8) # $t3, 0x8012 +/* 029220 80028620 3C0B8012 */ lui $t3, %hi(gSceneCurrVertexList) # $t3, 0x8012 /* 029224 80028624 01A9C821 */ addu $t9, $t5, $t1 -/* 029228 80028628 256BB0A8 */ addiu $t3, %lo(D_8011B0A8) # addiu $t3, $t3, -0x4f58 +/* 029228 80028628 256BB0A8 */ addiu $t3, %lo(gSceneCurrVertexList) # addiu $t3, $t3, -0x4f58 /* 02922C 8002862C AC790004 */ sw $t9, 4($v1) /* 029230 80028630 8D6C0000 */ lw $t4, ($t3) /* 029234 80028634 8E630000 */ lw $v1, ($s3) @@ -399,9 +399,9 @@ glabel func_80028050 /* 029278 80028678 35CE0080 */ ori $t6, (0x05710080 & 0xFFFF) # ori $t6, $t6, 0x80 /* 02927C 8002867C 24790008 */ addiu $t9, $v1, 8 /* 029280 80028680 AE790000 */ sw $t9, ($s3) -/* 029284 80028684 3C0C8012 */ lui $t4, %hi(D_8011B0AC) # $t4, 0x8012 +/* 029284 80028684 3C0C8012 */ lui $t4, %hi(gSceneCurrTriList) # $t4, 0x8012 /* 029288 80028688 AC6E0000 */ sw $t6, ($v1) -/* 02928C 8002868C 8D8CB0AC */ lw $t4, %lo(D_8011B0AC)($t4) +/* 02928C 8002868C 8D8CB0AC */ lw $t4, %lo(gSceneCurrTriList)($t4) /* 029290 80028690 3C0DE700 */ lui $t5, 0xe700 /* 029294 80028694 01897821 */ addu $t7, $t4, $t1 /* 029298 80028698 AC6F0004 */ sw $t7, 4($v1) @@ -598,11 +598,11 @@ glabel func_80028050 /* 029580 80028980 85B90000 */ lh $t9, ($t5) /* 029584 80028984 14C7FF9A */ bne $a2, $a3, .L800287F0 /* 029588 80028988 A619FFFE */ sh $t9, -2($s0) -/* 02958C 8002898C 3C018012 */ lui $at, %hi(D_8011B0A8) # $at, 0x8012 -/* 029590 80028990 AC31B0A8 */ sw $s1, %lo(D_8011B0A8)($at) -/* 029594 80028994 3C018012 */ lui $at, %hi(D_8011B0AC) # $at, 0x8012 +/* 02958C 8002898C 3C018012 */ lui $at, %hi(gSceneCurrVertexList) # $at, 0x8012 +/* 029590 80028990 AC31B0A8 */ sw $s1, %lo(gSceneCurrVertexList)($at) +/* 029594 80028994 3C018012 */ lui $at, %hi(gSceneCurrTriList) # $at, 0x8012 /* 029598 80028998 8FBF0024 */ lw $ra, 0x24($sp) -/* 02959C 8002899C AC30B0AC */ sw $s0, %lo(D_8011B0AC)($at) +/* 02959C 8002899C AC30B0AC */ sw $s0, %lo(gSceneCurrTriList)($at) /* 0295A0 800289A0 8FB00014 */ lw $s0, 0x14($sp) /* 0295A4 800289A4 8FB10018 */ lw $s1, 0x18($sp) /* 0295A8 800289A8 8FB2001C */ lw $s2, 0x1c($sp) diff --git a/asm/non_matchings/unknown_0255E0/func_800289B8.s b/asm/non_matchings/unknown_0255E0/func_800289B8.s index 0473229d..1412f0fd 100644 --- a/asm/non_matchings/unknown_0255E0/func_800289B8.s +++ b/asm/non_matchings/unknown_0255E0/func_800289B8.s @@ -5,22 +5,22 @@ glabel func_800289B8 /* 0295C4 800289C4 AFBF001C */ sw $ra, 0x1c($sp) /* 0295C8 800289C8 AFB00018 */ sw $s0, 0x18($sp) /* 0295CC 800289CC 904E00C1 */ lbu $t6, 0xc1($v0) -/* 0295D0 800289D0 3C038012 */ lui $v1, %hi(D_8011B0A8) # $v1, 0x8012 +/* 0295D0 800289D0 3C038012 */ lui $v1, %hi(gSceneCurrVertexList) # $v1, 0x8012 /* 0295D4 800289D4 A3AE002F */ sb $t6, 0x2f($sp) /* 0295D8 800289D8 904F00C2 */ lbu $t7, 0xc2($v0) -/* 0295DC 800289DC 3C078012 */ lui $a3, %hi(D_8011B0AC) # $a3, 0x8012 +/* 0295DC 800289DC 3C078012 */ lui $a3, %hi(gSceneCurrTriList) # $a3, 0x8012 /* 0295E0 800289E0 A3AF002E */ sb $t7, 0x2e($sp) /* 0295E4 800289E4 905800C3 */ lbu $t8, 0xc3($v0) -/* 0295E8 800289E8 8C63B0A8 */ lw $v1, %lo(D_8011B0A8)($v1) +/* 0295E8 800289E8 8C63B0A8 */ lw $v1, %lo(gSceneCurrVertexList)($v1) /* 0295EC 800289EC A3B8002D */ sb $t8, 0x2d($sp) /* 0295F0 800289F0 905900BE */ lbu $t9, 0xbe($v0) -/* 0295F4 800289F4 8CE7B0AC */ lw $a3, %lo(D_8011B0AC)($a3) +/* 0295F4 800289F4 8CE7B0AC */ lw $a3, %lo(gSceneCurrTriList)($a3) /* 0295F8 800289F8 A3B9002C */ sb $t9, 0x2c($sp) /* 0295FC 800289FC 904E00BF */ lbu $t6, 0xbf($v0) -/* 029600 80028A00 3C108012 */ lui $s0, %hi(D_8011B0A0) # $s0, 0x8012 +/* 029600 80028A00 3C108012 */ lui $s0, %hi(gSceneCurrDisplayList) # $s0, 0x8012 /* 029604 80028A04 A3AE002B */ sb $t6, 0x2b($sp) /* 029608 80028A08 904F00C0 */ lbu $t7, 0xc0($v0) -/* 02960C 80028A0C 2610B0A0 */ addiu $s0, %lo(D_8011B0A0) # addiu $s0, $s0, -0x4f60 +/* 02960C 80028A0C 2610B0A0 */ addiu $s0, %lo(gSceneCurrDisplayList) # addiu $s0, $s0, -0x4f60 /* 029610 80028A10 02002025 */ move $a0, $s0 /* 029614 80028A14 AFA30024 */ sw $v1, 0x24($sp) /* 029618 80028A18 AFA70020 */ sw $a3, 0x20($sp) @@ -142,13 +142,13 @@ glabel func_800289B8 /* 0297E0 80028BE0 A4E0001C */ sh $zero, 0x1c($a3) /* 0297E4 80028BE4 A4E0001E */ sh $zero, 0x1e($a3) /* 0297E8 80028BE8 24630028 */ addiu $v1, $v1, 0x28 -/* 0297EC 80028BEC 3C018012 */ lui $at, %hi(D_8011B0A8) # $at, 0x8012 +/* 0297EC 80028BEC 3C018012 */ lui $at, %hi(gSceneCurrVertexList) # $at, 0x8012 /* 0297F0 80028BF0 8FBF001C */ lw $ra, 0x1c($sp) -/* 0297F4 80028BF4 AC23B0A8 */ sw $v1, %lo(D_8011B0A8)($at) +/* 0297F4 80028BF4 AC23B0A8 */ sw $v1, %lo(gSceneCurrVertexList)($at) /* 0297F8 80028BF8 24E70020 */ addiu $a3, $a3, 0x20 -/* 0297FC 80028BFC 3C018012 */ lui $at, %hi(D_8011B0AC) # $at, 0x8012 +/* 0297FC 80028BFC 3C018012 */ lui $at, %hi(gSceneCurrTriList) # $at, 0x8012 /* 029800 80028C00 8FB00018 */ lw $s0, 0x18($sp) -/* 029804 80028C04 AC27B0AC */ sw $a3, %lo(D_8011B0AC)($at) +/* 029804 80028C04 AC27B0AC */ sw $a3, %lo(gSceneCurrTriList)($at) /* 029808 80028C08 03E00008 */ jr $ra /* 02980C 80028C0C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/non_matchings/unknown_0255E0/func_8002D670.s b/asm/non_matchings/unknown_0255E0/func_8002D670.s index 4619a57e..ea3d321a 100644 --- a/asm/non_matchings/unknown_0255E0/func_8002D670.s +++ b/asm/non_matchings/unknown_0255E0/func_8002D670.s @@ -76,8 +76,8 @@ glabel func_8002D670 /* 02E394 8002D794 0258082A */ slt $at, $s2, $t8 /* 02E398 8002D798 10200044 */ beqz $at, .L8002D8AC /* 02E39C 8002D79C 3C1E0400 */ lui $fp, 0x400 -/* 02E3A0 8002D7A0 3C108012 */ lui $s0, %hi(D_8011B0A0) # $s0, 0x8012 -/* 02E3A4 8002D7A4 2610B0A0 */ addiu $s0, %lo(D_8011B0A0) # addiu $s0, $s0, -0x4f60 +/* 02E3A0 8002D7A0 3C108012 */ lui $s0, %hi(gSceneCurrDisplayList) # $s0, 0x8012 +/* 02E3A4 8002D7A4 2610B0A0 */ addiu $s0, %lo(gSceneCurrDisplayList) # addiu $s0, $s0, -0x4f60 /* 02E3A8 8002D7A8 2417000A */ li $s7, 10 /* 02E3AC 8002D7AC 3C148000 */ lui $s4, 0x8000 .L8002D7B0: diff --git a/asm/non_matchings/unknown_0255E0/render_floor_decal.s b/asm/non_matchings/unknown_0255E0/render_floor_decal.s index db7b9ef5..d32c1d34 100644 --- a/asm/non_matchings/unknown_0255E0/render_floor_decal.s +++ b/asm/non_matchings/unknown_0255E0/render_floor_decal.s @@ -82,8 +82,8 @@ glabel render_floor_decal /* 02E0B8 8002D4B8 00000000 */ nop .L8002D4BC: /* 02E0BC 8002D4BC 00A30019 */ multu $a1, $v1 -/* 02E0C0 8002D4C0 3C118012 */ lui $s1, %hi(D_8011B0A0) # $s1, 0x8012 -/* 02E0C4 8002D4C4 2631B0A0 */ addiu $s1, %lo(D_8011B0A0) # addiu $s1, $s1, -0x4f60 +/* 02E0C0 8002D4C0 3C118012 */ lui $s1, %hi(gSceneCurrDisplayList) # $s1, 0x8012 +/* 02E0C4 8002D4C4 2631B0A0 */ addiu $s1, %lo(gSceneCurrDisplayList) # addiu $s1, $s1, -0x4f60 /* 02E0C8 8002D4C8 8E240000 */ lw $a0, ($s1) /* 02E0CC 8002D4CC 2401FF00 */ li $at, -256 /* 02E0D0 8002D4D0 248F0008 */ addiu $t7, $a0, 8 @@ -99,10 +99,10 @@ glabel render_floor_decal .L8002D4F8: /* 02E0F8 8002D4F8 84EE000A */ lh $t6, 0xa($a3) .L8002D4FC: -/* 02E0FC 8002D4FC 3C118012 */ lui $s1, %hi(D_8011B0A0) # $s1, 0x8012 +/* 02E0FC 8002D4FC 3C118012 */ lui $s1, %hi(gSceneCurrDisplayList) # $s1, 0x8012 /* 02E100 8002D500 026E082A */ slt $at, $s3, $t6 /* 02E104 8002D504 10200045 */ beqz $at, .L8002D61C -/* 02E108 8002D508 2631B0A0 */ addiu $s1, %lo(D_8011B0A0) # addiu $s1, $s1, -0x4f60 +/* 02E108 8002D508 2631B0A0 */ addiu $s1, %lo(gSceneCurrDisplayList) # addiu $s1, $s1, -0x4f60 /* 02E10C 8002D50C 001380C0 */ sll $s0, $s3, 3 /* 02E110 8002D510 AFA70044 */ sw $a3, 0x44($sp) /* 02E114 8002D514 3C150400 */ lui $s5, 0x400 diff --git a/asm/non_matchings/unknown_0255E0/render_level_segment.s b/asm/non_matchings/unknown_0255E0/render_level_segment.s index 1e698ef8..6906326d 100644 --- a/asm/non_matchings/unknown_0255E0/render_level_segment.s +++ b/asm/non_matchings/unknown_0255E0/render_level_segment.s @@ -53,8 +53,8 @@ glabel render_level_segment /* 02A314 80029714 102000EC */ beqz $at, .L80029AC8 /* 02A318 80029718 00025080 */ sll $t2, $v0, 2 /* 02A31C 8002971C 01425023 */ subu $t2, $t2, $v0 -/* 02A320 80029720 3C128012 */ lui $s2, %hi(D_8011B0A0) # $s2, 0x8012 -/* 02A324 80029724 2652B0A0 */ addiu $s2, %lo(D_8011B0A0) # addiu $s2, $s2, -0x4f60 +/* 02A320 80029720 3C128012 */ lui $s2, %hi(gSceneCurrDisplayList) # $s2, 0x8012 +/* 02A324 80029724 2652B0A0 */ addiu $s2, %lo(gSceneCurrDisplayList) # addiu $s2, $s2, -0x4f60 /* 02A328 80029728 000A5080 */ sll $t2, $t2, 2 .L8002972C: /* 02A32C 8002972C 8FB900AC */ lw $t9, 0xac($sp) diff --git a/asm/non_matchings/unknown_0255E0/func_80024D54.s b/asm/non_matchings/unknown_0255E0/render_scene.s similarity index 92% rename from asm/non_matchings/unknown_0255E0/func_80024D54.s rename to asm/non_matchings/unknown_0255E0/render_scene.s index d1c4bc59..ad6fcd6e 100644 --- a/asm/non_matchings/unknown_0255E0/func_80024D54.s +++ b/asm/non_matchings/unknown_0255E0/render_scene.s @@ -1,4 +1,4 @@ -glabel func_80024D54 +glabel render_scene /* 025954 80024D54 27BDFF70 */ addiu $sp, $sp, -0x90 /* 025958 80024D58 AFB10020 */ sw $s1, 0x20($sp) /* 02595C 80024D5C AFBF002C */ sw $ra, 0x2c($sp) @@ -10,19 +10,19 @@ glabel func_80024D54 /* 025974 80024D74 AFA60098 */ sw $a2, 0x98($sp) /* 025978 80024D78 AFA7009C */ sw $a3, 0x9c($sp) /* 02597C 80024D7C 8C8F0000 */ lw $t7, ($a0) -/* 025980 80024D80 3C118012 */ lui $s1, %hi(D_8011B0A0) # $s1, 0x8012 -/* 025984 80024D84 2631B0A0 */ addiu $s1, %lo(D_8011B0A0) # addiu $s1, $s1, -0x4f60 +/* 025980 80024D80 3C118012 */ lui $s1, %hi(gSceneCurrDisplayList) # $s1, 0x8012 +/* 025984 80024D84 2631B0A0 */ addiu $s1, %lo(gSceneCurrDisplayList) # addiu $s1, $s1, -0x4f60 /* 025988 80024D88 AE2F0000 */ sw $t7, ($s1) /* 02598C 80024D8C 8CB90000 */ lw $t9, ($a1) -/* 025990 80024D90 3C128012 */ lui $s2, %hi(D_8011B0A4) # $s2, 0x8012 -/* 025994 80024D94 2652B0A4 */ addiu $s2, %lo(D_8011B0A4) # addiu $s2, $s2, -0x4f5c +/* 025990 80024D90 3C128012 */ lui $s2, %hi(gSceneCurrMatrix) # $s2, 0x8012 +/* 025994 80024D94 2652B0A4 */ addiu $s2, %lo(gSceneCurrMatrix) # addiu $s2, $s2, -0x4f5c /* 025998 80024D98 AE590000 */ sw $t9, ($s2) /* 02599C 80024D9C 8CCB0000 */ lw $t3, ($a2) -/* 0259A0 80024DA0 3C018012 */ lui $at, %hi(D_8011B0A8) # $at, 0x8012 -/* 0259A4 80024DA4 AC2BB0A8 */ sw $t3, %lo(D_8011B0A8)($at) +/* 0259A0 80024DA0 3C018012 */ lui $at, %hi(gSceneCurrVertexList) # $at, 0x8012 +/* 0259A4 80024DA4 AC2BB0A8 */ sw $t3, %lo(gSceneCurrVertexList)($at) /* 0259A8 80024DA8 8CED0000 */ lw $t5, ($a3) -/* 0259AC 80024DAC 3C018012 */ lui $at, %hi(D_8011B0AC) # $at, 0x8012 -/* 0259B0 80024DB0 AC2DB0AC */ sw $t5, %lo(D_8011B0AC)($at) +/* 0259AC 80024DAC 3C018012 */ lui $at, %hi(gSceneCurrTriList) # $at, 0x8012 +/* 0259B0 80024DB0 AC2DB0AC */ sw $t5, %lo(gSceneCurrTriList)($at) /* 0259B4 80024DB4 3C018012 */ lui $at, %hi(D_8011B0DC) # $at, 0x8012 /* 0259B8 80024DB8 240E0001 */ li $t6, 1 /* 0259BC 80024DBC AC2EB0DC */ sw $t6, %lo(D_8011B0DC)($at) @@ -325,10 +325,10 @@ glabel func_80024D54 /* 025E10 80025210 10200009 */ beqz $at, .L80025238 /* 025E14 80025214 02202025 */ move $a0, $s1 /* 025E18 80025218 8FAF0084 */ lw $t7, 0x84($sp) -/* 025E1C 8002521C 3C068012 */ lui $a2, %hi(D_8011B0A8) # $a2, 0x8012 -/* 025E20 80025220 3C078012 */ lui $a3, %hi(D_8011B0AC) # $a3, 0x8012 -/* 025E24 80025224 24E7B0AC */ addiu $a3, %lo(D_8011B0AC) # addiu $a3, $a3, -0x4f54 -/* 025E28 80025228 24C6B0A8 */ addiu $a2, %lo(D_8011B0A8) # addiu $a2, $a2, -0x4f58 +/* 025E1C 8002521C 3C068012 */ lui $a2, %hi(gSceneCurrVertexList) # $a2, 0x8012 +/* 025E20 80025220 3C078012 */ lui $a3, %hi(gSceneCurrTriList) # $a3, 0x8012 +/* 025E24 80025224 24E7B0AC */ addiu $a3, %lo(gSceneCurrTriList) # addiu $a3, $a3, -0x4f54 +/* 025E28 80025228 24C6B0A8 */ addiu $a2, %lo(gSceneCurrVertexList) # addiu $a2, $a2, -0x4f58 /* 025E2C 8002522C 02402825 */ move $a1, $s2 /* 025E30 80025230 0C02AF9A */ jal process_weather /* 025E34 80025234 AFAF0010 */ sw $t7, 0x10($sp) @@ -339,8 +339,8 @@ glabel func_80024D54 /* 025E44 80025244 00402025 */ move $a0, $v0 /* 025E48 80025248 0C01A748 */ jal func_80069D20 /* 025E4C 8002524C 00000000 */ nop -/* 025E50 80025250 3C068012 */ lui $a2, %hi(D_8011B0A8) # $a2, 0x8012 -/* 025E54 80025254 24C6B0A8 */ addiu $a2, %lo(D_8011B0A8) # addiu $a2, $a2, -0x4f58 +/* 025E50 80025250 3C068012 */ lui $a2, %hi(gSceneCurrVertexList) # $a2, 0x8012 +/* 025E54 80025254 24C6B0A8 */ addiu $a2, %lo(gSceneCurrVertexList) # addiu $a2, $a2, -0x4f58 /* 025E58 80025258 02202025 */ move $a0, $s1 /* 025E5C 8002525C 02402825 */ move $a1, $s2 /* 025E60 80025260 0C02B288 */ jal func_800ACA20 @@ -349,12 +349,12 @@ glabel func_80024D54 /* 025E6C 8002526C 0C006EC6 */ jal func_8001BB18 /* 025E70 80025270 00000000 */ nop /* 025E74 80025274 8FAD00A0 */ lw $t5, 0xa0($sp) -/* 025E78 80025278 3C068012 */ lui $a2, %hi(D_8011B0A8) # $a2, 0x8012 -/* 025E7C 8002527C 24C6B0A8 */ addiu $a2, %lo(D_8011B0A8) # addiu $a2, $a2, -0x4f58 +/* 025E78 80025278 3C068012 */ lui $a2, %hi(gSceneCurrVertexList) # $a2, 0x8012 +/* 025E7C 8002527C 24C6B0A8 */ addiu $a2, %lo(gSceneCurrVertexList) # addiu $a2, $a2, -0x4f58 /* 025E80 80025280 02202025 */ move $a0, $s1 /* 025E84 80025284 02402825 */ move $a1, $s2 /* 025E88 80025288 00403825 */ move $a3, $v0 -/* 025E8C 8002528C 0C028068 */ jal func_800A01A0 +/* 025E8C 8002528C 0C028068 */ jal render_hud /* 025E90 80025290 AFAD0010 */ sw $t5, 0x10($sp) /* 025E94 80025294 8E0E0000 */ lw $t6, ($s0) /* 025E98 80025298 00000000 */ nop @@ -446,8 +446,8 @@ glabel func_80024D54 /* 025FE8 800253E8 00402025 */ move $a0, $v0 /* 025FEC 800253EC 0C01A748 */ jal func_80069D20 /* 025FF0 800253F0 00000000 */ nop -/* 025FF4 800253F4 3C068012 */ lui $a2, %hi(D_8011B0A8) # $a2, 0x8012 -/* 025FF8 800253F8 24C6B0A8 */ addiu $a2, %lo(D_8011B0A8) # addiu $a2, $a2, -0x4f58 +/* 025FF4 800253F4 3C068012 */ lui $a2, %hi(gSceneCurrVertexList) # $a2, 0x8012 +/* 025FF8 800253F8 24C6B0A8 */ addiu $a2, %lo(gSceneCurrVertexList) # addiu $a2, $a2, -0x4f58 /* 025FFC 800253FC 02202025 */ move $a0, $s1 /* 026000 80025400 02402825 */ move $a1, $s2 /* 026004 80025404 0C02B288 */ jal func_800ACA20 @@ -504,14 +504,14 @@ glabel func_80024D54 /* 0260C0 800254C0 AD590000 */ sw $t9, ($t2) /* 0260C4 800254C4 8FAC0094 */ lw $t4, 0x94($sp) /* 0260C8 800254C8 8E4B0000 */ lw $t3, ($s2) -/* 0260CC 800254CC 3C0F8012 */ lui $t7, %hi(D_8011B0A8) # $t7, 0x8012 +/* 0260CC 800254CC 3C0F8012 */ lui $t7, %hi(gSceneCurrVertexList) # $t7, 0x8012 /* 0260D0 800254D0 AD8B0000 */ sw $t3, ($t4) /* 0260D4 800254D4 8FAE0098 */ lw $t6, 0x98($sp) -/* 0260D8 800254D8 8DEFB0A8 */ lw $t7, %lo(D_8011B0A8)($t7) -/* 0260DC 800254DC 3C0D8012 */ lui $t5, %hi(D_8011B0AC) # $t5, 0x8012 +/* 0260D8 800254D8 8DEFB0A8 */ lw $t7, %lo(gSceneCurrVertexList)($t7) +/* 0260DC 800254DC 3C0D8012 */ lui $t5, %hi(gSceneCurrTriList) # $t5, 0x8012 /* 0260E0 800254E0 ADCF0000 */ sw $t7, ($t6) /* 0260E4 800254E4 8FB8009C */ lw $t8, 0x9c($sp) -/* 0260E8 800254E8 8DADB0AC */ lw $t5, %lo(D_8011B0AC)($t5) +/* 0260E8 800254E8 8DADB0AC */ lw $t5, %lo(gSceneCurrTriList)($t5) /* 0260EC 800254EC 00000000 */ nop /* 0260F0 800254F0 AF0D0000 */ sw $t5, ($t8) /* 0260F4 800254F4 8FBF002C */ lw $ra, 0x2c($sp) diff --git a/include/structs.h b/include/structs.h index 013a25c1..17b986e1 100644 --- a/include/structs.h +++ b/include/structs.h @@ -300,7 +300,9 @@ typedef struct LevelHeader { /* 0x9D */ u8 bgColorRed; /* 0x9E */ u8 bgColorGreen; /* 0x9F */ u8 bgColorBlue; - /* 0xA0 */ s32 unkA0; + /* 0xA0 */ s16 unkA0; + /* 0xA2 */ s8 unkA2; + /* 0xA3 */ s8 unkA3; /* 0xA4 */ TextureHeader *unkA4; /* 0xA8 */ u16 unkA8; /* 0xAA */ u16 unkAA; @@ -493,7 +495,8 @@ typedef struct LevelModel { /* 0x14 */ BspTreeNode *segmentsBspTree; /* 0x18 */ s16 numberOfTextures; /* 0x1A */ s16 numberOfSegments; - u8 pad1C[4]; +/* 0x1C */ s16 unk1C; +/* 0x1E */ s16 unk1E; /* 0x20 */ s32 unk20; //spriteIndex? u8 pad24[0x14]; /* 0x38 */ u32 minimapColor; @@ -1002,7 +1005,7 @@ typedef struct Object_Racer { /* 0x1D5 */ u8 unk1D5; /* 0x1D6 */ s8 unk1D6; /* 0x1D7 */ s8 unk1D7; - /* 0x1D8 */ s8 raceStatus; + /* 0x1D8 */ s8 raceFinished; /* 0x1D9 */ s8 unk1D9; /* 0x1DA */ u8 unk1DA; /* 0x1DB */ s8 spinout_timer; diff --git a/include/types.h b/include/types.h index 62bd6686..293eceab 100644 --- a/include/types.h +++ b/include/types.h @@ -2,7 +2,7 @@ #define _TYPES_H_ #ifndef NULL -#define NULL (void *)0 +#define NULL 0 #endif #define TRUE 1 diff --git a/src/game.c b/src/game.c index 4744eee5..85d731c9 100644 --- a/src/game.c +++ b/src/game.c @@ -140,11 +140,11 @@ Gfx *gDisplayLists[2]; Gfx *gCurrDisplayList; UNUSED s32 D_801211FC; Mtx *gHudMatrices[2]; -Mtx *gCurrHudMat; +Mtx *gGameCurrMatrix; VertexList *gHudVertices[2]; -VertexList *gCurrHudVerts; +VertexList *gGameCurrVertexList; TriangleList *gHudTriangles[2]; -TriangleList *gCurrHudTris; +TriangleList *gGameCurrTriList; UNUSED s32 D_80121230[8]; s8 D_80121250[16]; //Settings4C OSSched gMainSched; // 0x288 / 648 bytes @@ -923,9 +923,9 @@ void main_game_loop(void) { } gCurrDisplayList = gDisplayLists[gSPTaskNum]; - gCurrHudMat = gHudMatrices[gSPTaskNum]; - gCurrHudVerts = gHudVertices[gSPTaskNum]; - gCurrHudTris = gHudTriangles[gSPTaskNum]; + gGameCurrMatrix = gHudMatrices[gSPTaskNum]; + gGameCurrVertexList = gHudVertices[gSPTaskNum]; + gGameCurrTriList = gHudTriangles[gSPTaskNum]; set_rsp_segment(&gCurrDisplayList, 0, 0); set_rsp_segment(&gCurrDisplayList, 1, gVideoLastFramebuffer); @@ -933,7 +933,7 @@ void main_game_loop(void) { set_rsp_segment(&gCurrDisplayList, 4, gVideoLastFramebuffer - 0x500); init_rsp(&gCurrDisplayList); init_rdp_and_framebuffer(&gCurrDisplayList); - render_background(&gCurrDisplayList, (Mtx *) &gCurrHudMat, TRUE); + render_background(&gCurrDisplayList, (Mtx *) &gGameCurrMatrix, TRUE); D_800DD37C = func_8006A1C4(D_800DD37C, sLogicUpdateRate); if (get_lockup_status()) { render_epc_lock_up_display(); @@ -969,12 +969,12 @@ void main_game_loop(void) { handle_music_fade(sLogicUpdateRate); print_debug_strings(&gCurrDisplayList); - render_dialogue_boxes(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts); + render_dialogue_boxes(&gCurrDisplayList, &gGameCurrMatrix, &gGameCurrVertexList); close_dialogue_box(4); assign_dialogue_box_id(4); // handle_transitions will perform the logic of transitions and return the transition ID. if (handle_transitions(sLogicUpdateRate)) { - render_fade_transition(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts); + render_fade_transition(&gCurrDisplayList, &gGameCurrMatrix, &gGameCurrVertexList); } if ((sBootDelayTimer >= 8) && (is_controller_missing())) { print_missing_controller_text(&gCurrDisplayList, sLogicUpdateRate); @@ -1107,13 +1107,13 @@ void ingame_logic_loop(s32 updateRate) { } gParticlePtrList_flush(); func_8001BF20(); - func_80024D54(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts, &gCurrHudTris, updateRate); + render_scene(&gCurrDisplayList, &gGameCurrMatrix, &gGameCurrVertexList, &gGameCurrTriList, updateRate); if (sRenderContext == DRAW_GAME) { // Ignore the user's L/R/Z buttons. buttonHeldInputs &= ~(L_TRIG | R_TRIG | Z_TRIG); } if (D_80123516) { - i = func_80095728(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts, updateRate); + i = func_80095728(&gCurrDisplayList, &gGameCurrMatrix, &gGameCurrVertexList, updateRate); switch (i) { case 2: buttonHeldInputs |= (L_TRIG | Z_TRIG); @@ -1218,7 +1218,7 @@ void ingame_logic_loop(s32 updateRate) { } init_rdp_and_framebuffer(&gCurrDisplayList); render_borders_for_multiplayer(&gCurrDisplayList); - func_800A8474(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts, updateRate); + func_800A8474(&gCurrDisplayList, &gGameCurrMatrix, &gGameCurrVertexList, updateRate); render_second_multiplayer_borders(&gCurrDisplayList); if (D_800DD39C != 0) { if (func_800214C4() != 0) { @@ -1531,7 +1531,7 @@ void func_8006DC58(s32 updateRate) { func_80010994(updateRate); gParticlePtrList_flush(); func_8001BF20(); - func_80024D54(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts, &gCurrHudTris, updateRate); + render_scene(&gCurrDisplayList, &gGameCurrMatrix, &gGameCurrVertexList, &gGameCurrTriList, updateRate); func_800C3440(updateRate); init_rdp_and_framebuffer(&gCurrDisplayList); render_borders_for_multiplayer(&gCurrDisplayList); @@ -1549,7 +1549,7 @@ void func_8006DCF8(s32 updateRate) { if (!gIsLoading && D_801234F0) { func_8006DC58(updateRate); } - menuLoopResult = menu_loop(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts, &gCurrHudTris, updateRate); + menuLoopResult = menu_loop(&gCurrDisplayList, &gGameCurrMatrix, &gGameCurrVertexList, &gGameCurrTriList, updateRate); D_801234F0 = TRUE; if (menuLoopResult == -2) { D_801234F0 = FALSE; diff --git a/src/game_ui.c b/src/game_ui.c index 3309113d..9ec72b49 100644 --- a/src/game_ui.c +++ b/src/game_ui.c @@ -11,6 +11,7 @@ #include "audio.h" #include "textures_sprites.h" #include "racer.h" +#include "math_util.h" extern u32 osTvType; @@ -120,8 +121,11 @@ unk800E2770 D_800E2770[2] = { u8 D_800E2790 = 1; -u8 D_800E2794[16] = { - 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 +u8 D_800E2794[4][4] = { + {1, 1, 1, 1}, + {2, 2, 2, 2}, + {2, 2, 2, 2}, + {2, 2, 2, 2} }; s8 D_800E27A4[4] = { @@ -169,26 +173,24 @@ s32 D_800E283C[5] = { /************ .bss ************/ -u8 D_80126CD0; -u8 D_80126CD1; -u8 D_80126CD2; -u8 D_80126CD3; -u8 D_80126CD4; -u8 D_80126CD5; +s8 D_80126CD0; +s8 D_80126CD1; +s8 D_80126CD2; +s8 D_80126CD3; +s8 D_80126CD4; +s8 D_80126CD5; s32 D_80126CD8; unk80126CDC *D_80126CDC; -s32 D_80126CE0; -s32 D_80126CE4; -s32 D_80126CE8; +unk80126CDC *D_80126CE0[3]; s32 D_80126CEC; s32 D_80126CF0; s32 D_80126CF4; s32 D_80126CF8; Gfx *gHUDCurrDisplayList; -u32 D_80126D00; -u32 D_80126D04; +Matrix *gHUDCurrMatrix; +TriangleList *gHUDCurrTriList; s32 D_80126D08; -s32 D_80126D0C; //Number of Players? +s32 gHUDNumPlayers; s32 D_80126D10; s32 D_80126D14; s32 D_80126D18; @@ -196,15 +198,15 @@ s32 D_80126D1C; s32 D_80126D20; s32 D_80126D24; s32 D_80126D28; -s32 D_80126D2C; -s32 D_80126D30; +u16 D_80126D2C; +f32 D_80126D30; u8 D_80126D34; u8 D_80126D35; -u8 D_80126D36; +u8 gHideRaceTimer; u8 D_80126D37; -u8 D_80126D38; +u8 gWrongWayNagPrefix; s32 D_80126D3C; -s32 D_80126D40; +s32 gHUDVoiceSoundMask; s32 D_80126D44; s32 D_80126D48; s32 D_80126D4C; @@ -214,21 +216,20 @@ u8 gMinimapGreen; u8 gMinimapBlue; s32 D_80126D58; s32 D_80126D5C; -unk80126D60 *D_80126D60; +LevelHeader *D_80126D60; u8 D_80126D64; u8 D_80126D65; u8 D_80126D66; u8 D_80126D67; u8 D_80126D68; u8 D_80126D69; -s32 D_80126D6C; +s32 gWrongWayNagTimer; u8 D_80126D70; u8 D_80126D71; s32 D_80126D74; s32 D_80126D78; u16 D_80126D7C; -s32 D_80126D80; -s32 D_80126D84; +DrawTexture D_80126D80; s32 D_80126D88[254]; s32 D_80127180; s32 D_80127184; @@ -254,7 +255,197 @@ u8 func_800A0190(void) { return D_80126D34; } -GLOBAL_ASM("asm/non_matchings/game_ui/func_800A01A0.s") +/** + * The root function for all of the heads up display during an active event. + * Branches off to its own function for each race type, but overridden completely in time trial. +*/ +void render_hud(Gfx **dList, Matrix **mtx, TriangleList **tris, Object *arg3, s32 updateRate) { + s32 sp2C; + Object_64* racer; + + D_80126D08 = func_80066220(); + if (D_8012718A) { + arg3 = func_8001BB18(1 - D_80126D08); + } + D_80126D60 = get_current_level_header(); + if (arg3 == NULL) { + if (func_8001E440() == 10) { + arg3 = func_8001BB18(0); + } + } + if (arg3 != NULL && !(D_80126D60->unkBC & 2)) { + if (get_render_context() != DRAW_MENU) { + gHUDCurrDisplayList = *dList; + gHUDCurrMatrix = *mtx; + gHUDCurrTriList = *tris; + D_80127180 = 0; + if (D_80126CD1 != 0) { + D_80126CD0 += updateRate; + if (D_8012718B < D_80126CD0) { + D_80126CD0 = D_8012718B; + } + } else { + D_80126CD0 -= updateRate; + if (D_80126CD0 < 0) { + D_80126CD0 = 0; + } + } + if (D_80126CD2 == 0) { + racer = arg3->unk64; + if (D_8012718A) { + D_80126D10 = 1 - racer->racer.playerIndex; + } else { + D_80126D10 = racer->racer.playerIndex; + } + D_80126CDC = D_80126CE0[D_80126D08]; + if (func_8001E440() != 10) { + if (gHUDNumPlayers == 0) { + if (get_buttons_pressed_from_player(D_80126D10) & D_CBUTTONS && racer->racer.raceFinished == FALSE && ((D_80126D60->race_type == RACETYPE_DEFAULT) || D_80126D60->race_type == RACETYPE_HORSESHOE_GULCH) && D_80126D34) { + D_800E2790 = 1 - D_800E2790; + play_sound_global((SOUND_TING_HIGHER + D_800E2790), NULL); + if (D_800E2790) { + D_800E27B8 = 0x78; + } else { + D_800E27B8 = 0; + } + } + } else if (get_buttons_pressed_from_player(D_80126D10) & D_CBUTTONS && racer->racer.raceFinished == FALSE && !(D_80126D60->race_type & RACETYPE_CHALLENGE) && D_80126D34) { + if (D_800E2794[gHUDNumPlayers][racer->racer.playerIndex] < PLAYER_FOUR) { + D_800E2794[gHUDNumPlayers][racer->racer.playerIndex]++; + } else { + D_800E2794[gHUDNumPlayers][racer->racer.playerIndex] = PLAYER_ONE; + } + play_sound_global((SOUND_TING_HIGHEST - (D_800E2794[gHUDNumPlayers][racer->racer.playerIndex] == 0)), NULL); + } + if (get_buttons_pressed_from_player(D_80126D10) & R_CBUTTONS && racer->racer.raceFinished == FALSE && D_80126D34 && D_80126CD0 == 0) { + D_800E27A4[gHUDNumPlayers] = 1 - D_800E27A4[gHUDNumPlayers]; + if (D_800E27A4[gHUDNumPlayers] == 0) { + play_sound_global(SOUND_TING_LOW, NULL); + } else { + play_sound_global(SOUND_TING_HIGH, NULL); + } + } + } + if (D_80126CD4 == 0) { + if (D_80126D60->race_type & RACETYPE_CHALLENGE || D_80126D60->race_type == RACETYPE_DEFAULT || D_80126D60->race_type == RACETYPE_HORSESHOE_GULCH || D_80126D60->race_type == RACETYPE_BOSS) { + D_800E2770[0].unk2 = 0x7F; + D_800E2770[1].unk2 = 0x7F; + func_80001844(); + func_800012E8(); + play_music(SEQUENCE_RACE_START_FANFARE); + set_sound_channel_count(12); + } else { + func_8006BD10(1.0f); + } + D_80126CD4 += 1; + } + gDPPipeSync(gHUDCurrDisplayList++); + init_rsp(&gHUDCurrDisplayList); + init_rdp_and_framebuffer(&gHUDCurrDisplayList); + func_8007AE28(-1); + func_8007AE0C(2); + func_8007BF1C(0); + if (check_if_showing_cutscene_camera() == FALSE && D_80126D34 == 0 && racer->racer.playerIndex == PLAYER_ONE) { + if (D_80126D35 != 0) { + D_80126D28 = cosine_s(D_80126D2C) * D_80126D30 * 8.0f; + D_80126D2C += updateRate << 0xB; + if (D_80126D2C >= 0x8000) { + D_80126D2C -= 0x8000; + D_80126D30 = D_80126D30 / 2; + if (D_80126D30 <= 0.125) { + D_80126D34 = 1; + D_80126D24 = 0; + } + } + } else { + if (D_80126CD4 == 1) { + play_sound_global(SOUND_WHOOSH1, NULL); + D_80126CD4 += 1; + } + D_80126D24 -= updateRate * 13; + if (D_80126D24 < 0) { + D_80126D24 = 0; + } + if (D_80126D24 == 0) { + D_80126D35 = 1; + play_sound_global(SOUND_EXPLOSION2, NULL); + D_80126D28 = 0; + } + } + } + gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 255); + func_800A7A60(arg3, &gHUDCurrDisplayList); + func_80067F2C(&gHUDCurrDisplayList, (Mtx** ) &gHUDCurrMatrix); + gDPSetEnvColor(gHUDCurrDisplayList++, 255, 255, 255, 0); + sp2C = func_8001139C(&gHUDCurrDisplayList) >> 1; + if (func_8000E4D8()) { + func_800A277C(sp2C, arg3, updateRate); + } else { + if (func_8001E440(sp2C) == 10) { + func_80068508(1); + func_800A718C(racer); + func_80068508(0); + } else { + switch (get_current_level_race_type()) { + case RACETYPE_DEFAULT: + case RACETYPE_HORSESHOE_GULCH: + if (func_8002341C() != 0) { + func_800A263C(sp2C, arg3, updateRate); + } else { + func_800A0DC0(sp2C, arg3, updateRate); + } + break; + case RACETYPE_BOSS: + render_hud_race_boss(sp2C, arg3, updateRate); + break; + case RACETYPE_CHALLENGE_BANANAS: + func_800A1248(sp2C, arg3, updateRate); + break; + case RACETYPE_CHALLENGE_BATTLE: + func_800A1C04(sp2C, arg3, updateRate); + break; + case RACETYPE_CHALLENGE_EGGS: + render_hud_challenge_eggs(sp2C, arg3, updateRate); + break; + default: + render_hud_hubworld(arg3, updateRate); + break; + } + } + } + if (racer->racer.raceFinished == 1) { + func_80068508(1); + if (func_8000E4D8()) { + func_800A6E30(racer, updateRate); + } else if (get_viewport_count() == VIEWPORTS_COUNT_1_PLAYER && racer->racer.unk1AC == 1) { + if (is_in_two_player_adventure()) { + if (get_current_level_race_type() == RACETYPE_BOSS) { + goto block_93; + } + goto block_95; + } +block_93: + func_800A497C(racer, updateRate); + } else { +block_95: + func_800A6254(racer, updateRate); + } + func_80068508(0); + } + D_80126CD1 = 0; + func_8007BF1C(1); + if (D_80127180) { + (&D_80126D80)[D_80127180].texture = NULL; + render_textured_rectangle(&gHUDCurrDisplayList, &D_80126D80, 0, 0, 255, 255, 255, 255); + } + *dList = gHUDCurrDisplayList; + *mtx = gHUDCurrMatrix; + *tris = gHUDCurrTriList; + func_8007AE28(-1); + } + } + } +} void func_800A0B74(void) { s32 i; @@ -269,28 +460,28 @@ void func_800A0B74(void) { GLOBAL_ASM("asm/non_matchings/game_ui/func_800A0BD4.s") -void func_800A0DC0(s32 arg0, Object *arg1, s32 arg2) { - Object_Racer *temp = &arg1->unk64->racer; +void func_800A0DC0(s32 arg0, Object *arg1, s32 updateRate) { + Object_Racer *racer = &arg1->unk64->racer; func_80068508(1); - render_course_indicator_arrows(temp, arg2); - render_wrong_way_text(temp, arg2); - func_800A3CE4(arg0, arg2); + render_course_indicator_arrows(racer, updateRate); + render_wrong_way_text(racer, updateRate); + func_800A3CE4(arg0, updateRate); - if (D_80126D60->unk4C == 0) { - func_800A4F50(temp, arg2); + if (D_80126D60->race_type == RACETYPE_DEFAULT) { + func_800A4F50(racer, updateRate); } - func_800A4154(temp, arg2); - render_race_time(temp, arg2); - func_800A4C44(temp, arg2); - func_800A3884(arg1, arg2); + func_800A4154(racer, updateRate); + render_race_time(racer, updateRate); + func_800A4C44(racer, updateRate); + func_800A3884(arg1, updateRate); - if (D_80127188 != 0 && temp->raceStatus == STATUS_RACING) { - func_800A47A0(temp, arg2); + if (D_80127188 && racer->raceFinished == FALSE) { + func_800A47A0(racer, updateRate); } - func_800A7520(arg1, arg2); + render_weapon_hud(arg1, updateRate); func_80068508(0); } @@ -349,14 +540,14 @@ void render_course_indicator_arrows(Object_64 *racer, s32 updateRate) { break; } // Flip the arrow direction on adventure 2. - if ((get_filtered_cheats() & CHEAT_MIRRORED_TRACKS) && ((s32) racer->racer.indicator_type < ASSET_TEX2D_30)) { + if (get_filtered_cheats() & CHEAT_MIRRORED_TRACKS && racer->racer.indicator_type < ASSET_TEX2D_30) { indicator->unk0 = (s16) (0x8000 - indicator->unk0); } - if ((D_80126D0C == 0) && (racer->racer.raceStatus == STATUS_RACING) && (racer->racer.indicator_type) && (D_800E27B8 == 0)) { + if (gHUDNumPlayers == 0 && racer->racer.raceFinished == FALSE && racer->racer.indicator_type && D_800E27B8 == 0) { gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 160); - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, indicator); + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, indicator); indicator->unkC = -indicator->unkC; - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, indicator); + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, indicator); indicator->unkC = -indicator->unkC; indicator->unk2 = 0; gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 255); @@ -375,9 +566,9 @@ void render_course_indicator_arrows(Object_64 *racer, s32 updateRate) { if ((get_filtered_cheats() & CHEAT_MIRRORED_TRACKS) && ((s32) racer->racer.indicator_type < ASSET_TEX2D_30)) { indicator->unk0 = (s16) (0x8000 - indicator->unk0); } - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, indicator); + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, indicator); indicator->unkC = (f32) -indicator->unkC; - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, indicator); + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, indicator); indicator->unkC = (f32) -indicator->unkC; gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 255); } @@ -392,19 +583,22 @@ void render_course_indicator_arrows(Object_64 *racer, s32 updateRate) { GLOBAL_ASM("asm/non_matchings/game_ui/func_800A1248.s") -void func_800A1428(s32 arg0, Object *arg1, s32 arg2) { - Object_Racer *temp = &arg1->unk64->racer; - if (temp->raceStatus == STATUS_RACING) { +/** + * The Egg Collector challenge mode displays the icons of each player and their score. +*/ +void render_hud_challenge_eggs(s32 arg0, Object *arg1, s32 updateRate) { + Object_Racer *racer = &arg1->unk64->racer; + if (racer->raceFinished == FALSE) { func_80068508(1); - func_800A3CE4(arg0, arg2); - func_800A7520(arg1, arg2); - if ((0x7F - (arg2 * 2)) >= D_80126CDC->unk67A) { - D_80126CDC->unk67A += (arg2 * 2); + func_800A3CE4(arg0, updateRate); + render_weapon_hud(arg1, updateRate); + if ((127 - (updateRate * 2)) >= D_80126CDC->unk67A) { + D_80126CDC->unk67A += updateRate * 2; } else { - D_80126CDC->unk67A = (D_80126CDC->unk67A + (arg2 * 2)) - 0xFF; + D_80126CDC->unk67A = (D_80126CDC->unk67A + (updateRate * 2)) - 255; } if (D_80126D37 != 2) { - func_800A14F0(arg1, arg2); + func_800A14F0(arg1, updateRate); } func_80068508(0); } @@ -416,40 +610,47 @@ GLOBAL_ASM("asm/non_matchings/game_ui/func_800A1C04.s") GLOBAL_ASM("asm/non_matchings/game_ui/func_800A1E48.s") GLOBAL_ASM("asm/non_matchings/game_ui/func_800A22F4.s") -void func_800A258C(s32 arg0, Object *arg1, s32 arg2) { +/** + * When racing the boss, render the essentials, but skip the bananas. +*/ +void render_hud_race_boss(s32 arg0, Object *arg1, s32 updateRate) { LevelHeader *level; Object_64 *temp = arg1->unk64; func_80068508(1); - render_wrong_way_text(temp, arg2); - func_800A3CE4(arg0, arg2); - render_race_time(temp, arg2); - func_800A7520(arg1, arg2); + render_wrong_way_text(temp, updateRate); + func_800A3CE4(arg0, updateRate); + render_race_time(temp, updateRate); + render_weapon_hud(arg1, updateRate); level = get_current_level_header(); if (level->laps > 1) { - func_800A4F50(temp, arg2); + func_800A4F50(temp, updateRate); } - func_800A3884(arg1, arg2); - func_800A4C44(temp, arg2); + func_800A3884(arg1, updateRate); + func_800A4C44(temp, updateRate); func_80068508(0); } -void func_800A263C(s32 arg0, Object *arg1, s32 arg2) { +void func_800A263C(s32 arg0, Object *arg1, s32 updateRate) { Object_64 *temp = arg1->unk64; func_80068508(1); - render_wrong_way_text(temp, arg2); - func_800A4F50(temp, arg2); - func_800A4C44(temp, arg2); - render_race_time(temp, arg2); - func_800A3CE4(arg0, arg2); - func_800A3884(arg1, arg2); + render_wrong_way_text(temp, updateRate); + func_800A4F50(temp, updateRate); + func_800A4C44(temp, updateRate); + render_race_time(temp, updateRate); + func_800A3CE4(arg0, updateRate); + func_800A3884(arg1, updateRate); func_80068508(0); } -void func_800A26C8(Object *obj, s32 arg1) { +/** + * The hub world displays the player's balloon count. + * In two player adventure, the icon of the character of the player sitting out is displayed. +*/ +void render_hud_hubworld(Object *obj, s32 updateRate) { Object_64 *obj64; unk80126CDC *temp_a3; @@ -457,11 +658,11 @@ void func_800A26C8(Object *obj, s32 arg1) { obj64 = obj->unk64; func_80068508(1); func_800A718C(obj64); - func_800A3884(obj, arg1); + func_800A3884(obj, updateRate); if (is_in_two_player_adventure()) { temp_a3 = &D_80126CDC[1]; temp_a3->unk6 = (get_settings()->racers[1].character + 0x38); - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, temp_a3); + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, temp_a3); } func_80068508(0); } @@ -488,64 +689,60 @@ GLOBAL_ASM("asm/non_matchings/game_ui/func_800A4F50.s") * Players going the wrong way will be nagged by T.T to turn around. * This function plays the audio, and makes the text fly in. */ -void render_wrong_way_text(Object_64* obj, s32 updateRate) { - f32 temp_f0; - f32 temp_f0_2; - f32 temp_f2; - f32 temp_f2_2; - s8 temp_v1; - s8 temp_v1_2; - u8 var_t9; +void render_wrong_way_text(Object_64* obj, s32 updateRate) { + f32 textMoveSpeed; + f32 textPosTarget; - if (D_80126D0C == 1) { + if (gHUDNumPlayers == 1) { func_8007BF1C(1); } - if (obj->racer.unk1FC > 120 && (D_80126D0C || D_80126CDC->unk46C == D_80126CDC->unk47A[2]) && !is_game_paused()) { - if ((D_80126D38 || D_80126D6C == 0) && D_80126D40 == 0) { - if (D_80126D38 || (get_random_number_from_range(1, 10) >= 8)) { - D_80126D38 = 0; - play_sound_global(SOUND_VOICE_TT_WRONG_WAY, &D_80126D40); - D_80126D6C = get_random_number_from_range(1, 480) + 120; + if (obj->racer.unk1FC > 120 && (gHUDNumPlayers || D_80126CDC->unk46C == D_80126CDC->unk47A[2]) && !is_game_paused()) { + if ((gWrongWayNagPrefix || gWrongWayNagTimer == 0) && gHUDVoiceSoundMask == NULL) { + // 20% chance that T.T decides not to precede his nagging with "No no no!" + if (gWrongWayNagPrefix || (get_random_number_from_range(1, 10) >= 8)) { + gWrongWayNagPrefix = FALSE; + play_sound_global(SOUND_VOICE_TT_WRONG_WAY, &gHUDVoiceSoundMask); + gWrongWayNagTimer = get_random_number_from_range(1, 480) + 120; } else { - D_80126D38 = 1; - play_sound_global(SOUND_VOICE_TT_NONONO, &D_80126D40); + gWrongWayNagPrefix = TRUE; + play_sound_global(SOUND_VOICE_TT_NONONO, &gHUDVoiceSoundMask); } } - D_80126D6C -= updateRate; - if (D_80126D6C < 0) { - D_80126D6C = 0; + gWrongWayNagTimer -= updateRate; + if (gWrongWayNagTimer < 0) { + gWrongWayNagTimer = 0; } } if (D_80126CDC->unk47A[0]) { if (D_80126CDC->unk47A[0] == 1) { if (D_80126CDC->unk47A[1] == 1) { - temp_f0 = updateRate * 13; - D_80126CDC->unk46C = D_80126CDC->unk46C + temp_f0; - temp_f2 = D_80126CDC->unk47A[2]; - if (temp_f2 < D_80126CDC->unk46C) { - D_80126CDC->unk46C = temp_f2; + textMoveSpeed = updateRate * 13; + D_80126CDC->unk46C += textMoveSpeed; + textPosTarget = D_80126CDC->unk47A[2]; + if (D_80126CDC->unk46C > textPosTarget) { + D_80126CDC->unk46C = textPosTarget; } - D_80126CDC->unk48C = (f32) (D_80126CDC->unk48C - temp_f0); - temp_f2_2 = D_80126CDC->unk49C; - if (D_80126CDC->unk48C < temp_f2_2) { - D_80126CDC->unk48C = temp_f2_2; + D_80126CDC->unk48C -= textMoveSpeed; + textPosTarget = D_80126CDC->unk49C; + if (D_80126CDC->unk48C < textPosTarget) { + D_80126CDC->unk48C = textPosTarget; } if (obj->racer.unk1FC <= 90) { D_80126CDC->unk47A[1] = -1; play_sound_global(SOUND_WHOOSH1, NULL); } } else if (D_80126CDC->unk47A[1] == -1) { - temp_f0_2 = (f32) (updateRate * 13); - D_80126CDC->unk46C -= temp_f0_2; - D_80126CDC->unk48C += temp_f0_2; + textMoveSpeed = updateRate * 13; + D_80126CDC->unk46C -= textMoveSpeed; + D_80126CDC->unk48C += textMoveSpeed; if (D_80126CDC->unk46C < -200.0f) { D_80126CDC->unk47A[0] = 0; } } if (!is_game_paused()) { gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 160); - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, (unk80126CDC* ) &D_80126CDC->unk454[0xC]); - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, (unk80126CDC* ) &D_80126CDC->unk454[0x2C]); + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, (unk80126CDC* ) &D_80126CDC->unk460); + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, (unk80126CDC* ) &D_80126CDC->unk480); gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 255); } } @@ -555,10 +752,10 @@ void render_wrong_way_text(Object_64* obj, s32 updateRate) { D_80126CDC->unk47A[2] = -31; D_80126CDC->unk49C = 52; D_80126CDC->unk47A[3] = 0; - if (D_80126D0C == 1) { + if (gHUDNumPlayers == 1) { D_80126CDC->unk47A[2] = -21; D_80126CDC->unk49C = 42; - } else if (D_80126D0C >= 2) { + } else if (gHUDNumPlayers > 1) { if (obj->racer.playerIndex == PLAYER_ONE || obj->racer.playerIndex == PLAYER_THREE) { D_80126CDC->unk47A[2] = -100; D_80126CDC->unk49C = -55; @@ -569,7 +766,7 @@ void render_wrong_way_text(Object_64* obj, s32 updateRate) { } D_80126CDC->unk48C = D_80126CDC->unk49C + 200; D_80126CDC->unk46C = D_80126CDC->unk49C - 200; - play_sound_global(0x16U, NULL); + play_sound_global(SOUND_WHOOSH1, NULL); } func_8007BF1C(0); } @@ -577,14 +774,18 @@ void render_wrong_way_text(Object_64* obj, s32 updateRate) { GLOBAL_ASM("asm/non_matchings/game_ui/func_800A5F18.s") GLOBAL_ASM("asm/non_matchings/game_ui/func_800A6254.s") -void func_800A6DB4(s16 *arg0) { +/** + * Play the normal race finish message, unless you beat your time record, + * then T.T will say "Race Record" instead. +*/ +void play_time_trial_end_message(s16 *playerID) { Settings *settings = get_settings(); - if (arg0 != NULL) { - if (settings->racers[*arg0].best_times & 0x80) { - play_sound_global(SOUND_VOICE_TT_RACE_RECORD, &D_80126D40); + if (playerID != NULL) { + if (settings->racers[*playerID].best_times & 0x80) { + play_sound_global(SOUND_VOICE_TT_RACE_RECORD, &gHUDVoiceSoundMask); } else { - play_sound_global(SOUND_VOICE_TT_FINISH, &D_80126D40); + play_sound_global(SOUND_VOICE_TT_FINISH, &gHUDVoiceSoundMask); } } } @@ -592,9 +793,13 @@ void func_800A6DB4(s16 *arg0) { GLOBAL_ASM("asm/non_matchings/game_ui/func_800A6E30.s") GLOBAL_ASM("asm/non_matchings/game_ui/func_800A718C.s") -UNUSED void func_800A7440(u16 soundId) { - if ((D_80126D40 == 0) && (!is_game_paused())) { - play_sound_global(soundId, &D_80126D40); +/** + * Unused function that plays whichever T.T voice line is passed through. + * Only if the game is currently running and no voice line is already playing. +*/ +UNUSED void play_hud_voice_line(u16 soundId) { + if (gHUDVoiceSoundMask == NULL && !(is_game_paused())) { + play_sound_global(soundId, &gHUDVoiceSoundMask); } } @@ -612,7 +817,87 @@ void func_800A74EC(u16 arg0, s32 arg1) { } } -GLOBAL_ASM("asm/non_matchings/game_ui/func_800A7520.s") +/** + * Renders the icon in the bottom left of the current weapon. + * The icon will spin and grow as it appears, then spins and shrinks as it disappears. +*/ +void render_weapon_hud(Object *obj, s32 updateRate) { + Object_64 *racerObj; + s32 temp_a0; + + racerObj = obj->unk64; + if (racerObj->racer.raceFinished == FALSE) { + set_viewport_tv_type(TV_TYPE_NTSC); + temp_a0 = (racerObj->racer.balloon_type * 3) + (racerObj->racer.balloon_level); + if (D_80126CDC->unk5D != racerObj->racer.balloon_level) { + if (racerObj->racer.balloon_level == 0) { + D_80126CDC->unk5C = 120; + } else if (D_80126D37 == 1) { + D_80126CDC->unk5C = 0; + } else { + D_80126CDC->unk5C = 120; + } + D_80126CDC->unk5D = racerObj->racer.balloon_level; + } + if (racerObj->racer.balloon_quantity > 0) { + if (D_80126CDC->unk5B < 16 && racerObj->racer.unk170 == 0) { + D_80126CDC->unk44 = D_80126CDC->unk5B << 12; + D_80126CDC->unk48 = (D_80126CDC->unk5B * 0.04687) + 0.25; + } else { + D_80126CDC->unk44 = 0; + D_80126CDC->unk48 = 1.0f; + } + D_80126CDC->unk58 = temp_a0; + D_80126CDC->unk5B += updateRate; + if (D_80126CDC->unk5B > 16) { + D_80126CDC->unk5B = 16; + D_80126CDC->unk5C += updateRate; + if (D_80126CDC->unk5C > 120) { + D_80126CDC->unk5C = 120; + } else if (gHUDNumPlayers == 0) { + D_80126CDC->unk48 += 0.18 * cosine_s(((f32) D_80126CDC->unk5C * 682.6583 * 4.0)); + } + } + if (gHUDNumPlayers > 0) { + D_80126CDC->unk48 *= 0.75; + } + if (D_80126CDC->unk48 != 1.0) { + func_8007BF1C(1); + } + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, &D_80126CDC->unk40); + func_8007BF1C(0); + if (racerObj->racer.balloon_quantity > 3) { + D_80126CDC->unk63A = -128; + } + if (racerObj->racer.balloon_quantity < 3) { + D_80126CDC->unk63A -= updateRate; + } + if (racerObj->racer.balloon_quantity >= 3 || (((D_80126CDC->unk63A + 128) % 32) < 20) && racerObj->racer.balloon_quantity != 1) { + gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 160); + D_80126CDC->unk638 = racerObj->racer.balloon_quantity - 1; + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, &D_80126CDC->unk620); + gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 255); + } + } else { + if (D_80126CDC->unk5B > 0) { + D_80126CDC->unk44 = D_80126CDC->unk5B << 12; + D_80126CDC->unk48 = (D_80126CDC->unk5B * 0.04687) + 0.25; + D_80126CDC->unk5B -= updateRate; + D_80126CDC->unk58 = temp_a0; + if (D_80126CDC->unk5B < 0) { + D_80126CDC->unk5B = 0; + } + if (gHUDNumPlayers) { + D_80126CDC->unk48 /= 2; + } + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, &D_80126CDC->unk40); + } + } + gDPSetPrimColor(gHUDCurrDisplayList++, 0, 0, 255, 255, 255, 255); + set_viewport_tv_type(TV_TYPE_PAL); + } +} + GLOBAL_ASM("asm/non_matchings/game_ui/func_800A7A60.s") /** @@ -628,10 +913,10 @@ void render_race_time(Object_64* obj, s32 updateRate) { s32 countingDown; s32 timerHideCounter; - if (!(D_80126D0C && D_800E2794[(D_80126D0C * 4) + obj->racer.playerIndex] != 1) || (D_80126D0C > 0 && obj->racer.lapCount > 0 && obj->racer.lap_times[obj->racer.lapCount] < 180)) { - if (obj->racer.raceStatus == STATUS_RACING) { + if (!(gHUDNumPlayers && D_800E2794[gHUDNumPlayers][obj->racer.playerIndex] != 1) || (gHUDNumPlayers > 0 && obj->racer.lapCount > 0 && obj->racer.lap_times[obj->racer.lapCount] < 180)) { + if (obj->racer.raceFinished == FALSE) { timerHideCounter = D_80126CDC->unk15A + 127; - if (obj->racer.lapCount > 0 && obj->racer.lap_times[obj->racer.lapCount] < 180 && obj->racer.lapCount < D_80126D60->numLaps) { + if (obj->racer.lapCount > 0 && obj->racer.lap_times[obj->racer.lapCount] < 180 && obj->racer.lapCount < D_80126D60->laps) { stopwatchTimer = obj->racer.lap_times[obj->racer.lapCount - 1]; countingDown = TRUE; if (timerHideCounter == 0) { @@ -639,15 +924,15 @@ void render_race_time(Object_64* obj, s32 updateRate) { } } else { stopwatchTimer = 0; - for (i = 0; obj->racer.unk194 >= i && i < D_80126D60->numLaps; i++) { + for (i = 0; obj->racer.unk194 >= i && i < D_80126D60->laps; i++) { stopwatchTimer += obj->racer.lap_times[i]; } - countingDown = stopwatchTimer == 0 || obj->racer.raceStatus != STATUS_RACING || is_game_paused(); + countingDown = stopwatchTimer == 0 || obj->racer.raceFinished || is_game_paused(); D_80126CDC->unk15A = -127; timerHideCounter = 0; } - if (D_80126D0C == 0) { - func_800AA600(&gHUDCurrDisplayList, &D_80126D00, &D_80126D04, (unk80126CDC* ) &D_80126CDC->unk140); + if (gHUDNumPlayers == 0) { + func_800AA600(&gHUDCurrDisplayList, &gHUDCurrMatrix, &gHUDCurrTriList, (unk80126CDC* ) &D_80126CDC->unk140); } if (normalise_time(36000) < stopwatchTimer) { stopwatchTimer = normalise_time(36000); @@ -661,14 +946,14 @@ void render_race_time(Object_64* obj, s32 updateRate) { } D_80126CDC->unk15A = timerHideCounter - 127; if ((timerHideCounter % 30) > 20) { - D_80126D36 = TRUE; + gHideRaceTimer = TRUE; return; } else { - if (D_80126D36) { - if (D_80126D0C == 0) { + if (gHideRaceTimer) { + if (gHUDNumPlayers == 0) { play_sound_global(SOUND_HUD_LAP_TICK, NULL); } - D_80126D36 = 0; + gHideRaceTimer = FALSE; } } } else { @@ -702,7 +987,7 @@ void func_800A83B4(LevelModel *model) { } s8 func_800A8458(void) { - return D_800E27A4[D_80126D0C]; + return D_800E27A4[gHUDNumPlayers]; } GLOBAL_ASM("asm/non_matchings/game_ui/func_800A8474.s") diff --git a/src/game_ui.h b/src/game_ui.h index d505d1bf..5d6c7aa1 100644 --- a/src/game_ui.h +++ b/src/game_ui.h @@ -15,7 +15,7 @@ enum CourseIndicatorArrows { INDICATOR_RIGHT_UTURN, INDICATOR_UP, INDICATOR_DOWN, - INDICATOR_EXCLAMATION, + INDICATOR_EXCLAMATION }; typedef struct { @@ -31,7 +31,21 @@ typedef struct { typedef struct unk80126CDC { u8 unk0[0x6]; s16 unk6; - u8 unk8[0x58]; + u8 unk8[0x38]; + struct unk80126CDC *unk40; + s16 unk44; + s16 unk46; + f32 unk48; + s32 unk4C; + s32 unk50; + s32 unk54; + s16 unk58; + s8 unk5A; + s8 unk5B; + s8 unk5C; + s8 unk5D; + s8 unk5E; + s8 unk5F; struct unk80126CDC *unk60; // Not sure if this is correct. s8 unk64[4]; u8 unk68[0xD8]; @@ -72,18 +86,33 @@ typedef struct unk80126CDC { u8 unk446[0xA]; f32 unk450; s8 unk454[4]; - u8 unk458[0x14]; + u8 unk458; + u8 unk459; + u8 unk45A[0x6]; + u8 unk460; + s8 unk461; + u8 unk462[0xA]; f32 unk46C; u8 unk470[0xA]; s8 unk47A[4]; - u8 unk47E[0xC]; + u8 unk47E; + u8 unk47F; + u8 unk480; + s8 unk481; + u8 unk482[0x8]; f32 unk48C; u8 unk490[0xC]; s8 unk49C; s8 unk49D; s8 unk49E[0x25]; u16 unk4C4; - u8 unk4C6[0x1B4]; + u8 unk4C6[0x15A]; + struct unk80126CDC *unk620; + u8 unk624[0x14]; + s16 unk638; + s8 unk63A; + s8 unk63B; + u8 unk63C[0x3E]; s8 unk67A; s8 unk67B[0xA4]; s8 unk720; @@ -119,20 +148,20 @@ typedef struct unk800E2770 { extern unk80126CDC *D_80126CDC; extern Gfx *gHUDCurrDisplayList; -extern u32 D_80126D00; -extern u32 D_80126D04; +extern Matrix *gHUDCurrMatrix; +extern TriangleList *gHUDCurrTriList; extern u8 D_80126D37; extern u8 gGfxTaskYieldData[0xA00]; u8 func_800A0190(void); void func_800A0B74(void); -void func_800A0DC0(s32 arg0, Object *arg1, s32 arg2); -void func_800A1428(s32 arg0, Object *arg1, s32 arg2); -void func_800A258C(s32 arg0, Object *arg1, s32 arg2); -void func_800A263C(s32 arg0, Object *arg1, s32 arg2); +void func_800A0DC0(s32 arg0, Object *arg1, s32 updateRate); +void render_hud_challenge_eggs(s32 arg0, Object *arg1, s32 updateRate); +void render_hud_race_boss(s32 arg0, Object *arg1, s32 updateRate); +void func_800A263C(s32 arg0, Object *arg1, s32 updateRate); void func_800A3870(void); -void func_800A6DB4(s16 *arg0); +void play_time_trial_end_message(s16 *playerID); void func_800A7484(u16 arg0, f32 arg1, s32 arg2); void func_800A74EC(u16 arg0, s32 arg1); void func_800A83B4(LevelModel *model); @@ -141,16 +170,18 @@ void func_800AB194(s32 arg0); void func_800AB1AC(s32 arg0); void func_800AB1C8(void); void func_800AB1D4(u8 arg0); +void render_race_time(Object_64 *obj, s32 updateRate); +void render_wrong_way_text(Object_64 *obj, s32 updateRate); +void render_course_indicator_arrows(Object_64 *obj, s32 updateRate); +void render_hud_hubworld(Object *obj, s32 updateRate); +void render_hud(Gfx **dList, Matrix **mtx, TriangleList **tris, Object *arg3, s32 updateRate); +void render_weapon_hud(Object *obj, s32 updateRate); // Non Matching void func_800A14F0(Object *, s32); void func_800A3CE4(s32, s32); -void func_800A7520(Object *, s32); -void render_course_indicator_arrows(Object_64 *arg0, s32 arg1); -void render_wrong_way_text(Object_64 *arg0, s32 arg1); void func_800A4F50(Object_64 *arg0, s32 arg1); void func_800A4154(Object_64 *arg0, s32 arg1); -void render_race_time(Object_64 *arg0, s32 arg1); void func_800A4C44(Object_64 *arg0, s32 arg1); void func_800A3884(Object *arg0, s32 arg1); void func_800A47A0(Object_64 *arg0, s32 arg1); @@ -160,5 +191,12 @@ void func_8009ECF0(s32 viewPortCount); void func_800A003C(void); void func_800A8474(Gfx **gfx, Mtx **mtx, VertexList **vtx, s32 updateRate); void func_800A7FBC(s32, s32, s32 minutes, s32 seconds, s32 hundredths, s32); +void func_800A1248(s32, Object*, s32); +void func_800A1C04(s32, Object*, s32); +void func_800A277C(s32, Object*, s32); +void func_800A497C(Object_64*, s32); +void func_800A6254(Object_64*, s32); +void func_800A6E30(Object_64*, s32); +void func_800A7A60(Object*, Gfx**); #endif diff --git a/src/menu.c b/src/menu.c index 0367699c..d4f123ed 100644 --- a/src/menu.c +++ b/src/menu.c @@ -422,16 +422,16 @@ DrawTexture sGameTitleTileOffsets[12] = { // Title screen cinematic text unk800DF83C D_800DF83C[10] = { - { "TIMBER", 14.0f, 14.5f, 16.5f, 17.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "BUMPER", 19.0f, 19.5f, 21.5f, 22.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "CONKER", 24.0f, 24.5f, 26.5f, 27.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "TIPTUP", 29.0f, 29.5f, 31.5f, 32.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "DRUMSTICK", 35.0f, 35.5f, 37.5f, 38.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "PIPSY", 40.0f, 40.5f, 42.5f, 43.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "BANJO", 45.0f, 45.5f, 47.5f, 48.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "KRUNCH", 50.0f, 50.5f, 52.5f, 53.0f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "WIZPIG", 57.5f, 58.0f, 60.0f, 60.5f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f }, - { "DIDDY", 63.5f, 64.0f, 66.0f, 66.5f, -80.0f, 208.0f, 160.0f, 208.0f, 400.0f, 208.0f } + { "TIMBER", 14.0f, 14.5f, 16.5f, 17.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "BUMPER", 19.0f, 19.5f, 21.5f, 22.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "CONKER", 24.0f, 24.5f, 26.5f, 27.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "TIPTUP", 29.0f, 29.5f, 31.5f, 32.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "DRUMSTICK", 35.0f, 35.5f, 37.5f, 38.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "PIPSY", 40.0f, 40.5f, 42.5f, 43.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "BANJO", 45.0f, 45.5f, 47.5f, 48.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "KRUNCH", 50.0f, 50.5f, 52.5f, 53.0f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "WIZPIG", 57.5f, 58.0f, 60.0f, 60.5f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f }, + { "DIDDY", 63.5f, 64.0f, 66.0f, 66.5f, -80.0f, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT_HALF, SCREEN_HEIGHT_FLOAT - 32.0f, SCREEN_WIDTH_FLOAT + 80.0f, SCREEN_HEIGHT_FLOAT - 32.0f } }; s32 D_800DF9F4 = 0; @@ -566,7 +566,8 @@ s16 D_800DFDCC[2] = { -1, 0 }; #define PIPSY 6 #define TIMBER 7 #define DRUMSTICK 8 -#define TICTOC 8 // Will later be redefined as 9. +#define TICTOC_8 8 // T.T's unlocked but Drumstick is not +#define TICTOC_9 9 // Everyone unlocked. /** * Diddy Kong Racing's character select menu refers to these arrays below to know how @@ -612,17 +613,16 @@ u8 gCharacterSelectBytesDrumStick[] = { /*Name Up Down Left Right Voice ID*/ u8 gCharacterSelectBytesTT[] = { /*Krunch*/ NONE, NONE, CONKER, NONE, NONE, NONE, NONE, NONE, DIDDY, BUMPER, BANJO, NONE, 0x00, 0x00, -/*Diddy*/ NONE, NONE, TIPTUP, TICTOC, KRUNCH, NONE, NONE, NONE, BUMPER, BANJO, NONE, NONE, 0x00, 0x09, -/*Bumper*/ NONE, NONE, TICTOC, PIPSY, DIDDY, KRUNCH, NONE, NONE, BANJO, NONE, NONE, NONE, 0x00, 0x01, +/*Diddy*/ NONE, NONE, TIPTUP, TICTOC_8, KRUNCH, NONE, NONE, NONE, BUMPER, BANJO, NONE, NONE, 0x00, 0x09, +/*Bumper*/ NONE, NONE, TICTOC_8, PIPSY, DIDDY, KRUNCH, NONE, NONE, BANJO, NONE, NONE, NONE, 0x00, 0x01, /*Banjo*/ NONE, NONE, PIPSY, TIMBER, BUMPER, DIDDY, KRUNCH, NONE, NONE, NONE, NONE, NONE, 0x00, 0x05, -/*Conker*/ KRUNCH, NONE, NONE, NONE, NONE, NONE, NONE, NONE, TIPTUP, TICTOC, PIPSY, TIMBER, 0x00, 0x03, -/*Tiptup*/ KRUNCH, DIDDY, NONE, NONE, CONKER, NONE, NONE, NONE, TICTOC, PIPSY, TIMBER, NONE, 0x00, 0x02, -/*Pipsy*/ BUMPER, BANJO, NONE, NONE, TICTOC, TIPTUP, CONKER, NONE, TIMBER, NONE, NONE, NONE, 0x00, 0x07, -/*Timber*/ BANJO, NONE, NONE, NONE, PIPSY, TICTOC, TIPTUP, CONKER, NONE, NONE, NONE, NONE, 0x00, 0x04, +/*Conker*/ KRUNCH, NONE, NONE, NONE, NONE, NONE, NONE, NONE, TIPTUP, TICTOC_8, PIPSY, TIMBER, 0x00, 0x03, +/*Tiptup*/ KRUNCH, DIDDY, NONE, NONE, CONKER, NONE, NONE, NONE, TICTOC_8, PIPSY, TIMBER, NONE, 0x00, 0x02, +/*Pipsy*/ BUMPER, BANJO, NONE, NONE, TICTOC_8, TIPTUP, CONKER, NONE, TIMBER, NONE, NONE, NONE, 0x00, 0x07, +/*Timber*/ BANJO, NONE, NONE, NONE, PIPSY, TICTOC_8, TIPTUP, CONKER, NONE, NONE, NONE, NONE, 0x00, 0x04, /*T.T*/ DIDDY, BUMPER, NONE, NONE, TIPTUP, CONKER, NONE, NONE, PIPSY, TIMBER, NONE, NONE, 0x00, 0x08, }; -#define TICTOC 9 // With everyone unlocked. /*Name Up Down Left Right Voice ID*/ u8 gCharacterSelectBytesComplete[] = { @@ -630,12 +630,13 @@ u8 gCharacterSelectBytesComplete[] = { /*Diddy*/ NONE, NONE, TIPTUP, NONE, KRUNCH, NONE, NONE, NONE, DRUMSTICK, BUMPER, BANJO, NONE, 0x00, 0x09, /*Bumper*/ NONE, NONE, PIPSY, NONE, DRUMSTICK, DIDDY, KRUNCH, NONE, BANJO, NONE, NONE, NONE, 0x00, 0x01, /*Banjo*/ NONE, NONE, TIMBER, NONE, BUMPER, DRUMSTICK, DIDDY, KRUNCH, NONE, NONE, NONE, NONE, 0x00, 0x05, -/*Conker*/ KRUNCH, NONE, NONE, NONE, NONE, NONE, NONE, NONE, TIPTUP, TICTOC, PIPSY, TIMBER, 0x00, 0x03, -/*Tiptup*/ DIDDY, NONE, NONE, NONE, CONKER, NONE, NONE, NONE, TICTOC, PIPSY, TIMBER, NONE, 0x00, 0x02, -/*Pipsy*/ BUMPER, NONE, NONE, NONE, TICTOC, TIPTUP, CONKER, NONE, TIMBER, NONE, NONE, NONE, 0x00, 0x07, -/*Timber*/ BANJO, NONE, NONE, NONE, PIPSY, TICTOC, TIPTUP, CONKER, NONE, NONE, NONE, NONE, 0x00, 0x04, -/*Drumstick*/ NONE, NONE, TICTOC, NONE, DIDDY, KRUNCH, NONE, NONE, BUMPER, BANJO, NONE, NONE, 0x00, 0x06, +/*Conker*/ KRUNCH, NONE, NONE, NONE, NONE, NONE, NONE, NONE, TIPTUP, TICTOC_9, PIPSY, TIMBER, 0x00, 0x03, +/*Tiptup*/ DIDDY, NONE, NONE, NONE, CONKER, NONE, NONE, NONE, TICTOC_9, PIPSY, TIMBER, NONE, 0x00, 0x02, +/*Pipsy*/ BUMPER, NONE, NONE, NONE, TICTOC_9, TIPTUP, CONKER, NONE, TIMBER, NONE, NONE, NONE, 0x00, 0x07, +/*Timber*/ BANJO, NONE, NONE, NONE, PIPSY, TICTOC_9, TIPTUP, CONKER, NONE, NONE, NONE, NONE, 0x00, 0x04, +/*Drumstick*/ NONE, NONE, TICTOC_9, NONE, DIDDY, KRUNCH, NONE, NONE, BUMPER, BANJO, NONE, NONE, 0x00, 0x06, /*T.T*/ DRUMSTICK, NONE, TIPTUP, NONE, TIPTUP, CONKER, NONE, NONE, PIPSY, TIMBER, NONE, NONE, 0x00, 0x08, +// !@bug T.T's down input selects Tiptup. It should be set to NONE. }; s32 D_800DFFCC = 0; // Likely unused. @@ -643,41 +644,41 @@ s32 D_800DFFD0 = 0; s32 D_800DFFD4 = -1; MenuElement gCautionMenuTextElements[14] = { - { 161, 35, 161, 35, 161, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 32, 160, 32, 160, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 72, 160, 68, 160, 72, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 86, 160, 82, 160, 86, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 100, 160, 96, 160, 100, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 114, 160, 110, 160, 114, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 128, 160, 124, 160, 128, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 142, 160, 138, 160, 142, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 156, 160, 152, 160, 156, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 156, 160, 166, 160, 156, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 186, 160, 180, 160, 186, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 200, 160, 194, 160, 200, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 200, 160, 208, 160, 200, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF + 1, 35, SCREEN_WIDTH_HALF + 1, 35, SCREEN_WIDTH_HALF + 1, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 32, SCREEN_WIDTH_HALF, 32, SCREEN_WIDTH_HALF, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 72, SCREEN_WIDTH_HALF, 68, SCREEN_WIDTH_HALF, 72, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 86, SCREEN_WIDTH_HALF, 82, SCREEN_WIDTH_HALF, 86, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 100, SCREEN_WIDTH_HALF, 96, SCREEN_WIDTH_HALF, 100, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 114, SCREEN_WIDTH_HALF, 110, SCREEN_WIDTH_HALF, 114, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 128, SCREEN_WIDTH_HALF, 124, SCREEN_WIDTH_HALF, 128, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 142, SCREEN_WIDTH_HALF, 138, SCREEN_WIDTH_HALF, 142, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 156, SCREEN_WIDTH_HALF, 152, SCREEN_WIDTH_HALF, 156, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 156, SCREEN_WIDTH_HALF, 166, SCREEN_WIDTH_HALF, 156, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 186, SCREEN_WIDTH_HALF, 180, SCREEN_WIDTH_HALF, 186, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 200, SCREEN_WIDTH_HALF, 194, SCREEN_WIDTH_HALF, 200, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 200, SCREEN_WIDTH_HALF, 208, SCREEN_WIDTH_HALF, 200, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, { NULL }, 0, 0, 0, 0 }, }; MenuElement gGameSelectTextElemsNoAdv2[7] = { - { 161, 35, 161, 35, 161, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 32, 160, 32, 160, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF + 1, 35, SCREEN_WIDTH_HALF + 1, 35, SCREEN_WIDTH_HALF + 1, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 32, SCREEN_WIDTH_HALF, 32, SCREEN_WIDTH_HALF, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { -96, 39, -96, 39, -96, 39, 176, 224, 192, 255, 255, ASSET_FONTS_FUNFONT, 0, 7, { NULL }, 192, 44, 4, 4 }, - { 160, 104, 160, 104, 160, 104, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 104, SCREEN_WIDTH_HALF, 104, SCREEN_WIDTH_HALF, 104, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { -96, -9, -96, -9, -96, -9, 176, 224, 192, 255, 255, ASSET_FONTS_FUNFONT, 0, 7, { NULL }, 192, 44, 4, 4 }, - { 160, 152, 160, 152, 160, 152, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 152, SCREEN_WIDTH_HALF, 152, SCREEN_WIDTH_HALF, 152, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, { NULL }, 0, 0, 0, 0 }, }; MenuElement gGameSelectTextElemsWithAdv2[9] = { - { 161, 35, 161, 35, 161, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 160, 32, 160, 32, 160, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF + 1, 35, SCREEN_WIDTH_HALF + 1, 35, SCREEN_WIDTH_HALF + 1, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 32, SCREEN_WIDTH_HALF, 32, SCREEN_WIDTH_HALF, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { -112, 55, -112, 55, -112, 55, 176, 224, 192, 255, 255, ASSET_FONTS_FUNFONT, 0, 7, { NULL }, 224, 44, 4, 4 }, - { 160, 88, 160, 88, 160, 88, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 88, SCREEN_WIDTH_HALF, 88, SCREEN_WIDTH_HALF, 88, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { -112, 7, -112, 7, -112, 7, 176, 224, 192, 255, 255, ASSET_FONTS_FUNFONT, 0, 7, { NULL }, 224, 44, 4, 4 }, - { 160, 136, 160, 136, 160, 136, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 136, SCREEN_WIDTH_HALF, 136, SCREEN_WIDTH_HALF, 136, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { -112, -41, -112, -41, -112, -41, 176, 224, 192, 255, 255, ASSET_FONTS_FUNFONT, 0, 7, { NULL }, 224, 44, 4, 4 }, - { 160, 184, 160, 184, 160, 184, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH_HALF, 184, SCREEN_WIDTH_HALF, 184, SCREEN_WIDTH_HALF, 184, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, { NULL }, 0, 0, 0, 0 }, }; @@ -1099,8 +1100,8 @@ s16 D_800E1044 = -1; MenuElement D_800E1048[9][3] = { { - { 481, 35, 161, 35, -159, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, - { 480, 32, 160, 32, -160, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH + 160 + 1, 35, SCREEN_WIDTH_HALF + 1, 35, -159, 35, 0, 0, 0, 255, 128, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, + { SCREEN_WIDTH + 160, 32, SCREEN_WIDTH_HALF, 32, -160, 32, 255, 255, 255, 0, 255, ASSET_FONTS_BIGFONT, 12, 0, { NULL }, 0, 0, 0, 0 }, { 64, -192, 64, 48, 64, 288, 255, 255, 255, 0, 255, ASSET_FONTS_FUNFONT, 0, 3, { &D_800E0A50 }, 0, 0, 0, 0 } }, { @@ -1392,7 +1393,7 @@ s32 gCheatsInCreditsArray[21] = { }; #define NUMBER_CHEATS_IN_CREDITS sizeof(gCheatsInCreditsArray) / sizeof(s32) -s32 gViewingCreditsFromCheat = 0; // Set to 1 if viewing credits from "WHODIDTHIS" cheat +s32 gViewingCreditsFromCheat = FALSE; // Set to 1 if viewing credits from "WHODIDTHIS" cheat MenuElement D_800E1B50[9] = { { 480, 104, 160, 104, -160, 104, 255, 0, 255, 48, 255, ASSET_FONTS_FUNFONT, 4, 0, { NULL }, 0, 0, 0, 0 }, @@ -7355,7 +7356,7 @@ void menu_credits_init(void) { gCreditsArray[84] = gCreditsLastMessageArray[2]; // "THE END" gCreditsArray[85] = gCreditsLastMessageArray[3]; // "NO CHEAT" gCreditsArray[86] = gCreditsLastMessageArray[4]; // "THIS TIME." - gViewingCreditsFromCheat = 0; + gViewingCreditsFromCheat = FALSE; } else { if (settings->bosses & 0x20) { play_music(SEQUENCE_CRESCENT_ISLAND); diff --git a/src/object_functions.c b/src/object_functions.c index 49edc9f2..4e616e4f 100644 --- a/src/object_functions.c +++ b/src/object_functions.c @@ -848,7 +848,7 @@ void obj_loop_groundzipper(Object *obj, UNUSED s32 speed) { if (racer->throttleReleased) { racer->boostType |= BOOST_SMALL_FAST; } - if (racer->raceStatus == STATUS_RACING) { + if (racer->raceFinished == FALSE) { func_80072348(racer->playerIndex, 8); } } diff --git a/src/object_models.c b/src/object_models.c index 5ddd7e38..351a9fcc 100644 --- a/src/object_models.c +++ b/src/object_models.c @@ -64,7 +64,7 @@ void func_8005F850(void) { // Anti-tamper check. checksum = 0; for (i = 0; i < gFunc80024D54Length; i++) { - checksum += *(u8 *)(((s32)&func_80024D54) + i); + checksum += *(u8 *)(((s32)&render_scene) + i); } if (checksum != gTractionTableChecksum) { antipiracy_modify_surface_traction_table(); diff --git a/src/objects.h b/src/objects.h index d01cd0b2..87e18cf8 100644 --- a/src/objects.h +++ b/src/objects.h @@ -370,6 +370,7 @@ s16 func_8001C418(f32 yPos); void func_80021400(s32 arg0); s32 func_8001B668(s32 arg0); s32 func_80011570(Object *obj, f32 xPos, f32 yPos, f32 zPos); +s32 func_8001BB18(s32 arg0); //Non Matching void calc_dynamic_lighting_for_object_1(Object *, ObjectModel *, s16, Object *, f32, f32); diff --git a/src/racer.c b/src/racer.c index c2092be9..0cdaf478 100644 --- a/src/racer.c +++ b/src/racer.c @@ -1275,7 +1275,7 @@ void update_player_racer(Object* obj, s32 updateRate) { gCameraObject = (ObjectCamera *) func_80069CFC(); tempRacer->unk1E7++; gCurrentPlayerIndex = tempRacer->playerIndex; - if ((tempRacer->raceStatus == STATUS_FINISHED) || (context == 1)) { + if ((tempRacer->raceFinished == TRUE) || (context == 1)) { tempRacer->unk1CA = 1; tempRacer->playerIndex = PLAYER_COMPUTER; tempRacer->unk1C9 = 0; @@ -1533,7 +1533,7 @@ void update_player_racer(Object* obj, s32 updateRate) { } func_80018CE0(obj, xTemp, yTemp, zTemp, updateRate); func_80059208(obj, tempRacer, updateRate); - if (tempRacer->raceStatus == 1) { + if (tempRacer->raceFinished == TRUE) { if (tempRacer->unk1D9 < 60) { tempRacer->unk1D9 += updateRate; } @@ -1894,7 +1894,7 @@ void func_8005250C(Object* obj, Object_Racer* racer, s32 updateRate) { racer->unk1F3 = 0; racer->unk1F2 = 0; } - if (racer->raceStatus == STATUS_FINISHED) { + if (racer->raceFinished == TRUE) { racer->unk1F2 = 0; racer->unk1F3 = 0; } @@ -2037,7 +2037,7 @@ void racer_spinout_car(Object* obj, Object_Racer* racer, s32 updateRate, f32 upd racer->velocity *= 0.97; //@Delta: Reduces 3% of speed per frame, not accounting for game speed. racer->lateral_velocity = 0.0f; - if (racer->raceStatus == STATUS_RACING) { + if (racer->raceFinished == FALSE) { func_80072348(racer->playerIndex, 0); } angleVel = racer->y_rotation_vel; @@ -2902,7 +2902,7 @@ f32 handle_racer_top_speed(Object *obj, Object_Racer *racer) { } } } - if (racer->boostTimer && !gRaceStartTimer && timer3 && racer->raceStatus == STATUS_RACING) { + if (racer->boostTimer && !gRaceStartTimer && timer3 && racer->raceFinished == FALSE) { func_80072348(racer->playerIndex, 6); } if ((gRaceStartTimer < 80) && gCurrentButtonsPressed & A_BUTTON) { @@ -3018,7 +3018,7 @@ void update_player_camera(Object *obj, Object_Racer *racer, f32 updateRate) { break; } } - if (racer->raceStatus == STATUS_FINISHED && gCameraObject->mode != CAMERA_FINISH_CHALLENGE) { + if (racer->raceFinished == TRUE && gCameraObject->mode != CAMERA_FINISH_CHALLENGE) { gCameraObject->mode = CAMERA_FINISH_RACE; } if (racer->unk108) { @@ -3100,7 +3100,7 @@ void update_player_camera(Object *obj, Object_Racer *racer, f32 updateRate) { void func_800580B4(Object *obj, Object_Racer *racer, s32 mode, f32 arg3) { f32 xPos, yPos, zPos; - if ((gCurrentPlayerIndex != -1) && (racer->raceStatus != STATUS_FINISHED)) { + if (gCurrentPlayerIndex != PLAYER_COMPUTER && racer->raceFinished != TRUE) { if (mode != gCameraObject->mode) { update_player_camera(obj, racer, arg3); xPos = gCameraObject->trans.x_position; diff --git a/src/racer.h b/src/racer.h index b7afde74..305ee586 100644 --- a/src/racer.h +++ b/src/racer.h @@ -23,11 +23,6 @@ typedef enum ActivePlayers { PLAYER_FOUR } ActivePlayers; -typedef enum RaceStatus { - STATUS_RACING, - STATUS_FINISHED -} RaceStatus; - typedef enum CameraZoom { ZOOM_MEDIUM, ZOOM_FAR, diff --git a/src/textures_sprites.h b/src/textures_sprites.h index 4b125162..3a055c9a 100644 --- a/src/textures_sprites.h +++ b/src/textures_sprites.h @@ -13,7 +13,7 @@ extern u32 gTexColourTag; extern s32 D_800DE7C4; extern Gfx D_800DF1A8[32][2]; -extern Gfx *D_8011B0A0; +extern Gfx *gSceneCurrDisplayList; extern s32 D_8011B0FC; extern u32 D_8011D384; extern LevelHeader *gCurrentLevelHeader2; diff --git a/src/unknown_0255E0.c b/src/unknown_0255E0.c index 4185166d..ebf1ae22 100644 --- a/src/unknown_0255E0.c +++ b/src/unknown_0255E0.c @@ -60,10 +60,10 @@ const char D_800E5E10[] = "TrackGetHeight() - Overflow!!!\n"; /************ .bss ************/ -Gfx *D_8011B0A0; -Mtx *D_8011B0A4; -VertexList *D_8011B0A8; -TriangleList *D_8011B0AC; +Gfx *gSceneCurrDisplayList; +Mtx *gSceneCurrMatrix; +VertexList *gSceneCurrVertexList; +TriangleList *gSceneCurrTriList; Object *D_8011B0B0; // Camera Object? @@ -257,7 +257,168 @@ void func_800249F0(u32 arg0, u32 arg1, s32 arg2, u32 arg3, u32 arg4, u32 arg5, u GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_800249F0.s") #endif -GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_80024D54.s") +// Regalloc +#ifdef NON_MATCHING +extern s32 D_A0000200; +/** + * The root function for rendering the entire scene +*/ +void render_scene(Gfx** dList, Mtx** mtx, s16** vtx, s8** tris, s32 updateRate) { + s32 i; + s32 numViewports; + s32 delta; + s8 flip; + s32 posX; + s32 posY; + UNUSED s32 pad; + + gSceneCurrDisplayList = *dList; + gSceneCurrMatrix = *mtx; + gSceneCurrVertexList = *vtx; + gSceneCurrTriList = *tris; + D_8011B0DC = 1; + D_8011B0C4 = 0; + D_8011B0C0 = 0; + D_8011B0BC = 0; + numViewports = set_active_viewports_and_object_stack_cap(D_8011D37C); + if (is_game_paused()) { + delta = 0; + } else { + delta = updateRate; + } + if (D_8011D384) { + func_800B9C18(delta); + } + func_8002D8DC(2, 2, updateRate); + for (i = 0; i < 7; i++) { + if ((s32) gCurrentLevelHeader2->unk74[i] != -1) { + func_8007F24C(gCurrentLevelHeader2->unk74[i], delta); + } + } + if (gCurrentLevelHeader2->pulseLightData != (PulsatingLightData* ) -1) { + update_pulsating_light_data(gCurrentLevelHeader2->pulseLightData, delta); + } + D_8011B0E0 = 1; + if (gCurrentLevelHeader2->race_type == 7) { + D_8011B0E0 = 0; + D_8011B0FC = 1; + } + if (gCurrentLevelHeader2->race_type == 6 || gCurrentLevelHeader2->unkBD) { + D_8011B0FC = 1; + } + if (gCurrentLevelHeader2->unk49 == -1) { + gCurrentLevelHeader2->unkA8 = (gCurrentLevelHeader2->unkA8 + (gCurrentLevelHeader2->unkA2 * delta)) & ((gCurrentLevelHeader2->unkA4->width << 9) - 1); + gCurrentLevelHeader2->unkAA = (gCurrentLevelHeader2->unkAA + (gCurrentLevelHeader2->unkA3 * delta)) & ((gCurrentLevelHeader2->unkA4->height << 9) - 1); + func_8007EF80(gCurrentLevelHeader2->unkA4, &D_8011B114, &D_8011B110, delta); + } + flip = FALSE; + if (get_filtered_cheats() & CHEAT_MIRRORED_TRACKS) { + flip = TRUE; + } + if (D_A0000200 != 0xAC290000) { + flip = TRUE; + } + func_8007B3D0(&gSceneCurrDisplayList); + gDkrDisableBillboard(gSceneCurrDisplayList++); + gSPClearGeometryMode(gSceneCurrDisplayList++, CVG_X_ALPHA); + gDPSetBlendColor(gSceneCurrDisplayList++, 0, 0, 0, 0x64); + gDPSetPrimColor(gSceneCurrDisplayList++, 0, 0, 255, 255, 255, 255); + gDPSetEnvColor(gSceneCurrDisplayList++, 255, 255, 255, 0); + func_800AD40C(); + func_80030838(numViewports, delta); + func_800AF404(delta); + if (gCurrentLevelModel->unk1E > 0) { + func_80027E24(delta); + } + for (i = D_8011B0B4 = 0; i < numViewports; D_8011B0B4++, i = D_8011B0B4) { + if (i == 0) { + if ((func_8000E184()) && (numViewports == 1)) { + D_8011B0B4 = 1; + } + } + if (flip) { + gSPSetGeometryMode(gSceneCurrDisplayList++, CVG_X_ALPHA); + } + func_8003093C(D_8011B0B4); + gDPPipeSync(gSceneCurrDisplayList++); + set_object_stack_pos(D_8011B0B4); + func_80066CDC(&gSceneCurrDisplayList, &gSceneCurrMatrix); + func_8002A31C(); + if (numViewports < 2) { + func_80068408(&gSceneCurrDisplayList, &gSceneCurrMatrix); + if (gCurrentLevelHeader2->unk49 == -1) { + func_80028050(); + } else { + render_skydome(); + } + } else { + func_8006807C(&gSceneCurrDisplayList, &gSceneCurrMatrix); + func_800289B8(); + func_80067D3C(&gSceneCurrDisplayList, &gSceneCurrMatrix); + func_80068408(&gSceneCurrDisplayList, &gSceneCurrMatrix); + } + gDPPipeSync(gSceneCurrDisplayList++); + func_80028CD0(updateRate); + func_800AB308(-1, -512); + if (gCurrentLevelHeader2->weatherEnable > 0 && numViewports < 2) { + process_weather(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, &gSceneCurrTriList, delta); + } + func_800AD030(func_80069D20()); + func_800ACA20(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, func_80069D20()); + render_hud(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, func_8001BB18(D_8011B0B4), updateRate); + } + if ((numViewports == 3) && + (get_current_level_race_type() != RACETYPE_CHALLENGE_EGGS) && + (get_current_level_race_type() != RACETYPE_CHALLENGE_BATTLE) && + (get_current_level_race_type() != RACETYPE_CHALLENGE_BANANAS)) { + if (func_800A8458() == 0) { + if (flip) { + gSPSetGeometryMode(gSceneCurrDisplayList++, CVG_X_ALPHA); + } + func_8003093C(3); + gDPPipeSync(gSceneCurrDisplayList++); + set_object_stack_pos(3); + disable_cutscene_camera(); + func_800278E8(updateRate); + func_80066CDC(&gSceneCurrDisplayList, &gSceneCurrMatrix); + func_8002A31C(); + func_8006807C(&gSceneCurrDisplayList, &gSceneCurrMatrix); + func_800289B8(); + func_80067D3C(&gSceneCurrDisplayList, &gSceneCurrMatrix); + func_80068408(&gSceneCurrDisplayList, &gSceneCurrMatrix); + + gDPPipeSync(gSceneCurrDisplayList++); + func_80028CD0(updateRate); + func_800AB308(-1, -512); + func_800AD030(func_80069D20()); + func_800ACA20(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, func_80069D20()); + set_text_font(0); + if (osTvType == 0) { + posX = 166; + posY = 138; + } else { + posX = 170; + posY = 125; + } + draw_text(&gSceneCurrDisplayList, posX, posY, (char *) &D_800E5DF0, ALIGN_TOP_LEFT); + } else { + set_object_stack_pos(3); + func_800278E8(updateRate); + } + } + func_800682AC(&gSceneCurrDisplayList); + gDPPipeSync(gSceneCurrDisplayList++); + gDkrDisableBillboard(gSceneCurrDisplayList++); + D_8011B0C8 = 1 - D_8011B0C8; + *dList = gSceneCurrDisplayList; + *mtx = gSceneCurrMatrix; + *vtx = gSceneCurrVertexList; + *tris = gSceneCurrTriList; +} +#else +GLOBAL_ASM("asm/non_matchings/unknown_0255E0/render_scene.s") +#endif + GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_80025510.s") void func_800257D0(void) { @@ -342,10 +503,10 @@ void func_800289B8(void) { u8 sp_2c = gCurrentLevelHeader2->unkBE; u8 sp_2b = gCurrentLevelHeader2->unkBF; u8 sp_2a = gCurrentLevelHeader2->unkC0; - u32 sp_24 = D_8011B0A8; - func_8007B3D0(&D_8011B0A0); - func_8007B4C8(&D_8011B0A0, 0, 8); - D_8011B0A0 += 8; + u32 sp_24 = gSceneCurrVertexList; + func_8007B3D0(&gSceneCurrDisplayList); + func_8007B4C8(&gSceneCurrDisplayList, 0, 8); + gSceneCurrDisplayList += 8; } #else GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_800289B8.s") @@ -363,9 +524,9 @@ void render_skydome(void) { D_8011B0B8->segment.trans.z_position = v0_some_struct->trans.z_position; } - func_80068408(&D_8011B0A0, &D_8011B0A4); + func_80068408(&gSceneCurrDisplayList, &gSceneCurrMatrix); if (D_8011B0DC) { - func_80012D5C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, D_8011B0B8); + func_80012D5C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, D_8011B0B8); } } @@ -420,7 +581,7 @@ void render_level_geometry_and_objects(void) { sp58[1] = TRUE; } - func_8007B3D0(&D_8011B0A0); + func_8007B3D0(&gSceneCurrDisplayList); func_80015348(sp160, sp16C - 1); sp158 = 0x200 << (func_80066220() & 1); @@ -438,12 +599,12 @@ void render_level_geometry_and_objects(void) { } if ((obj != NULL) && (s0 == 0xFF) && (func_8002A900(obj)) && ((sp58[obj->segment.unk2C.half.lower + 1]) || (1000.0 < obj->segment.unk34_a.unk34))) { if (obj->segment.trans.unk6 & 0x8000) { - func_80012D5C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); + func_80012D5C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); continue; } else if (obj->unk50 != NULL) { render_floor_decal(obj, obj->unk50); } - func_80012D5C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); + func_80012D5C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); if ((obj->unk58 != NULL) && (obj->segment.header->unk30 & 0x10)) { func_8002D670(obj, obj->unk58); } @@ -460,12 +621,12 @@ void render_level_geometry_and_objects(void) { } if (obj != NULL && s0 && (objFlags & 0x100) && (sp58[obj->segment.unk2C.half.lower + 1]) && (func_8002A900(obj) != 0)) { if (obj->segment.trans.unk6 & 0x8000) { - func_80012D5C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); + func_80012D5C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); continue; } else if (obj->unk50 != NULL) { render_floor_decal(obj, obj->unk50); } - func_80012D5C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); + func_80012D5C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); if ((obj->unk58 != NULL) && (obj->segment.header->unk30 & 0x10)) { func_8002D670(obj, obj->unk58); } @@ -479,12 +640,12 @@ void render_level_geometry_and_objects(void) { } if (D_8011D384 != 0) { - func_800BA8E4(&D_8011B0A0, &D_8011B0A4, func_80066220()); + func_800BA8E4(&gSceneCurrDisplayList, &gSceneCurrMatrix, func_80066220()); } - func_8007B3D0(&D_8011B0A0); - func_8007B4C8(&D_8011B0A0, 0, 0xA); - func_80012C3C(&D_8011B0A0); + func_8007B3D0(&gSceneCurrDisplayList); + func_8007B4C8(&gSceneCurrDisplayList, 0, 0xA); + func_80012C3C(&gSceneCurrDisplayList); for (i = sp16C - 1; i >= sp160; i--) { obj = get_object(i); @@ -504,20 +665,20 @@ void render_level_geometry_and_objects(void) { if (obj != NULL && s0 < 0xFF && sp58[obj->segment.unk2C.half.lower + 1] && func_8002A900(obj)) { if (s0 > 0) { if (obj->segment.trans.unk6 & 0x8000) { - func_80012D5C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); + func_80012D5C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); goto skip; } else if (obj->unk50 != NULL) { render_floor_decal(obj, obj->unk50); } - func_80012D5C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); + func_80012D5C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); if ((obj->unk58 != 0) && (obj->segment.header->unk30 & 0x10)) { func_8002D670(obj, obj->unk58); } } skip: if (obj->behaviorId == 1) { - func_80013A0C(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); - func_80013DCC(&D_8011B0A0, &D_8011B0A4, &D_8011B0A8, obj); + func_80013A0C(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); + func_80013DCC(&gSceneCurrDisplayList, &gSceneCurrMatrix, &gSceneCurrVertexList, obj); } } } @@ -596,22 +757,22 @@ void render_level_segment(s32 segmentId, s32 nonOpaque) { temp = batchInfo->unk7 << 14; if (levelHeaderIndex != 0) { // This is unused, so this should always be false. lvlHeader70 = gCurrentLevelHeader2[levelHeaderIndex << 2].unk70; - gDPSetEnvColor(D_8011B0A0++, lvlHeader70->red, lvlHeader70->green, lvlHeader70->blue, lvlHeader70->alpha); + gDPSetEnvColor(gSceneCurrDisplayList++, lvlHeader70->red, lvlHeader70->green, lvlHeader70->blue, lvlHeader70->alpha); } else { - gDPSetEnvColor(D_8011B0A0++, 255, 255, 255, 0); + gDPSetEnvColor(gSceneCurrDisplayList++, 255, 255, 255, 0); } if (batchInfo->flags & 0x40000) { // Only gets used in Spaceport alpha for the pulsating lights in the outside section. color = gCurrentLevelHeader2->pulseLightData->outColorValue & 0xFF; - gDPSetPrimColor(D_8011B0A0++, 0, 0, color, color, color, color); - func_8007BA5C(&D_8011B0A0, texture, batchInfo->flags, temp); - gDkrVertices(D_8011B0A0++, OS_PHYSICAL_TO_K0(vertices), (((numberVertices - 1) << 3) | ((s32)OS_PHYSICAL_TO_K0(vertices) & 6)), numberVertices); - gDkrTriangles(D_8011B0A0++, OS_PHYSICAL_TO_K0(triangles), numberTriangles, TRIN_ENABLE_TEXTURE); - gDPSetPrimColor(D_8011B0A0++, 0, 0, 255, 255, 255, 255); // Reset the primitive color + gDPSetPrimColor(gSceneCurrDisplayList++, 0, 0, color, color, color, color); + func_8007BA5C(&gSceneCurrDisplayList, texture, batchInfo->flags, temp); + gDkrVertices(gSceneCurrDisplayList++, OS_PHYSICAL_TO_K0(vertices), (((numberVertices - 1) << 3) | ((s32)OS_PHYSICAL_TO_K0(vertices) & 6)), numberVertices); + gDkrTriangles(gSceneCurrDisplayList++, OS_PHYSICAL_TO_K0(triangles), numberTriangles, TRIN_ENABLE_TEXTURE); + gDPSetPrimColor(gSceneCurrDisplayList++, 0, 0, 255, 255, 255, 255); // Reset the primitive color } else { - func_8007B4E8(&D_8011B0A0, texture, batchInfo->flags, temp); + func_8007B4E8(&gSceneCurrDisplayList, texture, batchInfo->flags, temp); hasTexture = (texture == NULL) ? TRIN_DISABLE_TEXTURE : TRIN_ENABLE_TEXTURE; - gDkrVertices(D_8011B0A0++, OS_PHYSICAL_TO_K0(vertices), ((numberVertices - 1) << 3) | ((s32)OS_PHYSICAL_TO_K0(vertices) & 6), numberVertices); - gDkrTriangles(D_8011B0A0++, OS_PHYSICAL_TO_K0(triangles), numberTriangles, hasTexture); + gDkrVertices(gSceneCurrDisplayList++, OS_PHYSICAL_TO_K0(vertices), ((numberVertices - 1) << 3) | ((s32)OS_PHYSICAL_TO_K0(vertices) & 6), numberVertices); + gDkrTriangles(gSceneCurrDisplayList++, OS_PHYSICAL_TO_K0(triangles), numberTriangles, hasTexture); } } } @@ -1180,8 +1341,8 @@ void func_80030838(s32 arg0, s32 arg1) { } void func_8003093C(s32 arg0) { - gDPSetFogColor(D_8011B0A0++, D_8011D388[arg0].unk0 >> 0x10, D_8011D388[arg0].unk4 >> 0x10, D_8011D388[arg0].unk8 >> 0x10, 0xFF); - gSPFogPosition(D_8011B0A0++, D_8011D388[arg0].unkC >> 0x10, D_8011D388[arg0].unk10 >> 0x10); + gDPSetFogColor(gSceneCurrDisplayList++, D_8011D388[arg0].unk0 >> 0x10, D_8011D388[arg0].unk4 >> 0x10, D_8011D388[arg0].unk8 >> 0x10, 0xFF); + gSPFogPosition(gSceneCurrDisplayList++, D_8011D388[arg0].unkC >> 0x10, D_8011D388[arg0].unk10 >> 0x10); } #ifdef NON_EQUIVALENT diff --git a/src/unknown_0255E0.h b/src/unknown_0255E0.h index 567a6b99..c5d2eeb8 100644 --- a/src/unknown_0255E0.h +++ b/src/unknown_0255E0.h @@ -118,7 +118,7 @@ void render_level_geometry_and_objects(void); void render_level_segment(s32 segmentId, s32 nonOpaque); s32 func_8002A5F8(LevelModelSegmentBoundingBox *bb); void func_80030664(s32 arg0, s16 arg1, s16 arg2, u8 arg3, u8 arg4, u8 arg5); -void func_80024D54(Gfx **, Mtx **, VertexList **, TriangleList **, s32); +void render_scene(Gfx** dList, Mtx** mtx, s16** vtx, s8** tris, s32 updateRate); void func_8002C7D4(void); void render_floor_decal(Object *, Object_50 *); void func_8002D670(Object *, Object *); @@ -127,8 +127,18 @@ Gfx *func_8002581C(u8 *segmentIds, s32 numberOfSegments, s32 currentViewportInde s32 func_80027568(void); void func_8002C954(LevelModelSegment*, LevelModelSegmentBoundingBox*, s32); s32 func_8002CC30(LevelModelSegment*); -s8 func_8002B0F4(s16, f32 xPos, f32 zPos, struct TempStruct8**); /* extern */ +s8 func_8002B0F4(s16, f32 xPos, f32 zPos, struct TempStruct8**); void func_80013DCC(Gfx **arg0, Vertex **arg1, Vertex **arg2, Object *arg3); -s8 func_8002AD08(f32 yPos, f32* waterHeight, s32*); /* extern */ +s8 func_8002AD08(f32 yPos, f32* waterHeight, s32*); +void func_800278E8(s32); +void func_80028050(void); +void func_800289B8(void); +void func_80028CD0(s32); +void func_8002A31C(void); +void func_8002D8DC(s32, s32, s32); +void func_8007F24C(s8*, s32); +void func_800ACA20(Gfx**, Mtx**, s16**, ObjectSegment*); +void func_800AD030(ObjectSegment*); +void func_800B9C18(s32); #endif diff --git a/src/unknown_05CEF0.c b/src/unknown_05CEF0.c index 91708467..33821494 100644 --- a/src/unknown_05CEF0.c +++ b/src/unknown_05CEF0.c @@ -81,9 +81,9 @@ void func_8005C364(s32 updateRate, f32 updateRateF, Object *obj, Object_Racer *r sp56 = obj->segment.unk3B; sp54 = obj->segment.unk18; sp52 = racer->unk16A; - if (racer->raceStatus == STATUS_FINISHED) { + if (racer->raceFinished == TRUE) { func_80021400(130); - racer->raceStatus++; + racer->raceFinished++; } var_v1 = *startTimer; if ((racer->playerIndex == PLAYER_COMPUTER) && (*startTimer != 100)) { @@ -209,7 +209,7 @@ void func_8005C364(s32 updateRate, f32 updateRateF, Object *obj, Object_Racer *r if ((obj == temp_v0_4->unk4C->unk0) && (temp_v0_4->unk4C->unk14 & 8) && (obj->segment.unk3B == 1)) { temp_s0->attackType = ATTACK_SQUISHED; } - if ((temp_s0->raceStatus != STATUS_RACING) && (D_8011D5C4 == 0)) { + if ((temp_s0->raceFinished != FALSE) && (D_8011D5C4 == 0)) { D_8011D5C4 = 1; func_8005CB68(temp_s0, &D_8011D5C4); } diff --git a/src/unknown_05FF10.c b/src/unknown_05FF10.c index b8435576..4af13d12 100644 --- a/src/unknown_05FF10.c +++ b/src/unknown_05FF10.c @@ -62,9 +62,9 @@ void func_8005F310(s32 updateRate, f32 updateRateF, Object *obj, Object_Racer *r if ((racer->velocity < 0.3) && (racer->velocity > -0.3)) { *buttonsPressed = 0; } - if (racer->raceStatus == STATUS_FINISHED && func_80023568()) { + if (racer->raceFinished == TRUE && func_80023568()) { func_80021400(130); - racer->raceStatus++; + racer->raceFinished++; } if (*startTimer == 100) { D_8011D610 = 0; @@ -154,7 +154,7 @@ void func_8005F310(s32 updateRate, f32 updateRateF, Object *obj, Object_Racer *r if ((obj == tempObj->unk4C->unk0) && (tempObj->unk4C->unk14 & 8) && (obj->segment.unk3B == 1)) { obj64->racer.attackType = ATTACK_SQUISHED; } - if ((obj64->racer.raceStatus != STATUS_RACING) && (D_8011D610 == 0)) { + if ((obj64->racer.raceFinished != FALSE) && (D_8011D610 == 0)) { D_8011D610 = 1; func_8005CB68(obj64, &D_8011D610); } diff --git a/tools/python/calc_func_checksums.py b/tools/python/calc_func_checksums.py index 3948173b..d19c56c7 100644 --- a/tools/python/calc_func_checksums.py +++ b/tools/python/calc_func_checksums.py @@ -13,7 +13,7 @@ ROM_FILEPATH = BUILD_DIR + '/dkr.z64' FUNCTIONS_TO_CALC = [ # function checksum variable func size variable ('func_80019808', 'gFunc80019808Checksum', 'gFunc80019808Length'), - ('func_80024D54', 'gTractionTableChecksum', 'gFunc80024D54Length'), + ('render_scene', 'gTractionTableChecksum', 'gFunc80024D54Length'), ('obj_loop_goldenballoon', 'gObjLoopGoldenBalloonChecksum', 'gObjLoopGoldenBalloonLength'), ('func_80068158', 'gFunc80068158Checksum', 'gFunc80068158Length') ]