diff --git a/.gitignore b/.gitignore index 8ee542b7..8d4e17ae 100755 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ # Baseroms is where the user will place their ROM files. baseroms/* +nonmatchings/* # Ignore pycache __pycache__ @@ -23,3 +24,7 @@ ctx.c.m2c # Ignore .deb packages *.deb + +# Ignore batch and executable files. +*.exe +*.bat \ No newline at end of file diff --git a/README.md b/README.md index bbe7bfb6..2ccfed81 100755 --- a/README.md +++ b/README.md @@ -115,29 +115,29 @@ s32 is_drumstick_unlocked(void) { As of October 3rd, 2022, this is our current score: ``` - ======================================================== - ADVENTURE ONE (ASM -> C Decompilation) - ------------------- 32.49% Complete -------------------- - # Decompiled functions: 1283 - # GLOBAL_ASM remaining: 550 - # NON_MATCHING functions: 14 - # NON_EQUIVALENT WIP functions: 99 - --------------------- Game Status ---------------------- - Balloons: 17/47, Keys: 2/4, Trophies: 1/5 - T.T. Amulets: 1/4, Wizpig Amulets: 1/4 - -------------------------------------------------------- - We are racing the walrus boss Bluey. - ======================================================== - ADVENTURE TWO (Cleanup & Documentation) - ------------------- 5.48% Complete -------------------- - # Documented functions: 197 - # Undocumented remaining: 1636 - --------------------- Game Status ---------------------- - Balloons: 3/47, Keys: 0/4, Trophies: 0/5 - T.T. Amulets: 0/4, Wizpig Amulets: 0/4 - -------------------------------------------------------- - We are collecting the fourth balloon on Timber's Island. - ======================================================== + ========================================== + ADVENTURE ONE (ASM -> C Decompilation) + ------------ 33.19% Complete ------------- + # Decompiled functions: 1292 + # GLOBAL_ASM remaining: 541 + # NON_MATCHING functions: 12 + # NON_EQUIVALENT WIP functions: 94 + -------------- Game Status --------------- + Balloons: 17/47, Keys: 2/4, Trophies: 1/5 + T.T. Amulets: 1/4, Wizpig Amulets: 1/4 + ------------------------------------------ + We are racing the walrus boss Bluey. + ========================================== + ADVENTURE TWO (Cleanup & Documentation) + ------------ 6.13% Complete ------------- + # Documented functions: 210 + # Undocumented remaining: 1623 + -------------- Game Status --------------- + Balloons: 4/47, Keys: 0/4, Trophies: 0/5 + T.T. Amulets: 0/4, Wizpig Amulets: 0/4 + ------------------------------------------ + We are racing in Ancient Lake. (Lap 1/3) + ========================================== ``` --- diff --git a/asm/non_matchings/game/load_level.s b/asm/non_matchings/game/load_level.s index 1989654a..c6e75ad2 100644 --- a/asm/non_matchings/game/load_level.s +++ b/asm/non_matchings/game/load_level.s @@ -1,745 +1,745 @@ -glabel load_level -/* 06BE50 8006B250 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 06BE54 8006B254 AFBF002C */ sw $ra, 0x2c($sp) -/* 06BE58 8006B258 AFB10028 */ sw $s1, 0x28($sp) -/* 06BE5C 8006B25C AFB00024 */ sw $s0, 0x24($sp) -/* 06BE60 8006B260 AFA40060 */ sw $a0, 0x60($sp) -/* 06BE64 8006B264 AFA50064 */ sw $a1, 0x64($sp) -/* 06BE68 8006B268 AFA60068 */ sw $a2, 0x68($sp) -/* 06BE6C 8006B26C 0C01C9C2 */ jal func_80072708 -/* 06BE70 8006B270 AFA7006C */ sw $a3, 0x6c($sp) -/* 06BE74 8006B274 8FAE0070 */ lw $t6, 0x70($sp) -/* 06BE78 8006B278 2402FFFF */ li $v0, -1 -/* 06BE7C 8006B27C 15C20003 */ bne $t6, $v0, .L8006B28C -/* 06BE80 8006B280 8FAF0064 */ lw $t7, 0x64($sp) -/* 06BE84 8006B284 AFA00070 */ sw $zero, 0x70($sp) -/* 06BE88 8006B288 8FAF0064 */ lw $t7, 0x64($sp) -.L8006B28C: -/* 06BE8C 8006B28C 00000000 */ nop -/* 06BE90 8006B290 15E20004 */ bne $t7, $v0, .L8006B2A4 -/* 06BE94 8006B294 24180001 */ li $t8, 1 -/* 06BE98 8006B298 AFB80048 */ sw $t8, 0x48($sp) -/* 06BE9C 8006B29C 10000002 */ b .L8006B2A8 -/* 06BEA0 8006B2A0 AFA00064 */ sw $zero, 0x64($sp) -.L8006B2A4: -/* 06BEA4 8006B2A4 AFA00048 */ sw $zero, 0x48($sp) -.L8006B2A8: -/* 06BEA8 8006B2A8 8FB90064 */ lw $t9, 0x64($sp) -/* 06BEAC 8006B2AC 00000000 */ nop -/* 06BEB0 8006B2B0 17200006 */ bnez $t9, .L8006B2CC -/* 06BEB4 8006B2B4 8FAA0064 */ lw $t2, 0x64($sp) -/* 06BEB8 8006B2B8 0C000C63 */ jal set_sound_channel_count -/* 06BEBC 8006B2BC 24040008 */ li $a0, 8 -/* 06BEC0 8006B2C0 1000000B */ b .L8006B2F0 -/* 06BEC4 8006B2C4 00000000 */ nop -/* 06BEC8 8006B2C8 8FAA0064 */ lw $t2, 0x64($sp) -.L8006B2CC: -/* 06BECC 8006B2CC 24010001 */ li $at, 1 -/* 06BED0 8006B2D0 15410005 */ bne $t2, $at, .L8006B2E8 -/* 06BED4 8006B2D4 00000000 */ nop -/* 06BED8 8006B2D8 0C000C63 */ jal set_sound_channel_count -/* 06BEDC 8006B2DC 2404000C */ li $a0, 12 -/* 06BEE0 8006B2E0 10000003 */ b .L8006B2F0 -/* 06BEE4 8006B2E4 00000000 */ nop -.L8006B2E8: -/* 06BEE8 8006B2E8 0C000C63 */ jal set_sound_channel_count -/* 06BEEC 8006B2EC 24040010 */ li $a0, 16 -.L8006B2F0: -/* 06BEF0 8006B2F0 0C01BAA4 */ jal get_settings -/* 06BEF4 8006B2F4 00000000 */ nop -/* 06BEF8 8006B2F8 AFA20040 */ sw $v0, 0x40($sp) -/* 06BEFC 8006B2FC 0C01DB16 */ jal load_asset_section_from_rom -/* 06BF00 8006B300 24040016 */ li $a0, 22 -/* 06BF04 8006B304 3C098012 */ lui $t1, %hi(gTempAssetTable) # $t1, 0x8012 -/* 06BF08 8006B308 25291160 */ addiu $t1, %lo(gTempAssetTable) # addiu $t1, $t1, 0x1160 -/* 06BF0C 8006B30C AD220000 */ sw $v0, ($t1) -/* 06BF10 8006B310 8C4B0000 */ lw $t3, ($v0) -/* 06BF14 8006B314 2408FFFF */ li $t0, -1 -/* 06BF18 8006B318 00001825 */ move $v1, $zero -/* 06BF1C 8006B31C 110B0005 */ beq $t0, $t3, .L8006B334 -/* 06BF20 8006B320 00403025 */ move $a2, $v0 -.L8006B324: -/* 06BF24 8006B324 8C4C0004 */ lw $t4, 4($v0) -/* 06BF28 8006B328 24630001 */ addiu $v1, $v1, 1 -/* 06BF2C 8006B32C 150CFFFD */ bne $t0, $t4, .L8006B324 -/* 06BF30 8006B330 24420004 */ addiu $v0, $v0, 4 -.L8006B334: -/* 06BF34 8006B334 8FAD0060 */ lw $t5, 0x60($sp) -/* 06BF38 8006B338 2463FFFF */ addiu $v1, $v1, -1 -/* 06BF3C 8006B33C 01A3082A */ slt $at, $t5, $v1 -/* 06BF40 8006B340 14200002 */ bnez $at, .L8006B34C -/* 06BF44 8006B344 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff -/* 06BF48 8006B348 AFA00060 */ sw $zero, 0x60($sp) -.L8006B34C: -/* 06BF4C 8006B34C 8FA30060 */ lw $v1, 0x60($sp) -/* 06BF50 8006B350 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 06BF54 8006B354 00037080 */ sll $t6, $v1, 2 -/* 06BF58 8006B358 00CE1021 */ addu $v0, $a2, $t6 -/* 06BF5C 8006B35C 8C500000 */ lw $s0, ($v0) -/* 06BF60 8006B360 8C4F0004 */ lw $t7, 4($v0) -/* 06BF64 8006B364 AFAE0034 */ sw $t6, 0x34($sp) -/* 06BF68 8006B368 01F02023 */ subu $a0, $t7, $s0 -/* 06BF6C 8006B36C 0C01C327 */ jal allocate_from_main_pool_safe -/* 06BF70 8006B370 AFA40054 */ sw $a0, 0x54($sp) -/* 06BF74 8006B374 3C118012 */ lui $s1, %hi(gCurrentLevelHeader) # $s1, 0x8012 -/* 06BF78 8006B378 26311168 */ addiu $s1, %lo(gCurrentLevelHeader) # addiu $s1, $s1, 0x1168 -/* 06BF7C 8006B37C 8FA70054 */ lw $a3, 0x54($sp) -/* 06BF80 8006B380 AE220000 */ sw $v0, ($s1) -/* 06BF84 8006B384 24040017 */ li $a0, 23 -/* 06BF88 8006B388 00402825 */ move $a1, $v0 -/* 06BF8C 8006B38C 0C01DB9A */ jal load_asset_to_address -/* 06BF90 8006B390 02003025 */ move $a2, $s0 -/* 06BF94 8006B394 3C01800E */ lui $at, %hi(D_800DD330) # $at, 0x800e -/* 06BF98 8006B398 8FB80060 */ lw $t8, 0x60($sp) -/* 06BF9C 8006B39C A020D330 */ sb $zero, %lo(D_800DD330)($at) -/* 06BFA0 8006B3A0 8E390000 */ lw $t9, ($s1) -/* 06BFA4 8006B3A4 AFB80044 */ sw $t8, 0x44($sp) -/* 06BFA8 8006B3A8 832A004C */ lb $t2, 0x4c($t9) -/* 06BFAC 8006B3AC 00000000 */ nop -/* 06BFB0 8006B3B0 15400003 */ bnez $t2, .L8006B3C0 -/* 06BFB4 8006B3B4 00000000 */ nop -/* 06BFB8 8006B3B8 0C01B0B9 */ jal func_8006C2E4 -/* 06BFBC 8006B3BC 00000000 */ nop -.L8006B3C0: -/* 06BFC0 8006B3C0 0C01B0BC */ jal func_8006C2F0 -/* 06BFC4 8006B3C4 00000000 */ nop -/* 06BFC8 8006B3C8 14400099 */ bnez $v0, .L8006B630 -/* 06BFCC 8006B3CC 3C0B800E */ lui $t3, %hi(D_800DD32C) # $t3, 0x800e -/* 06BFD0 8006B3D0 856BD32C */ lh $t3, %lo(D_800DD32C)($t3) -/* 06BFD4 8006B3D4 00000000 */ nop -/* 06BFD8 8006B3D8 15600096 */ bnez $t3, .L8006B634 -/* 06BFDC 8006B3DC 8FAE0044 */ lw $t6, 0x44($sp) -/* 06BFE0 8006B3E0 8E230000 */ lw $v1, ($s1) -/* 06BFE4 8006B3E4 24010008 */ li $at, 8 -/* 06BFE8 8006B3E8 806C004C */ lb $t4, 0x4c($v1) -/* 06BFEC 8006B3EC 8FAD0040 */ lw $t5, 0x40($sp) -/* 06BFF0 8006B3F0 1581003E */ bne $t4, $at, .L8006B4EC -/* 06BFF4 8006B3F4 00000000 */ nop -/* 06BFF8 8006B3F8 8DAE0004 */ lw $t6, 4($t5) -/* 06BFFC 8006B3FC 8FAF0034 */ lw $t7, 0x34($sp) -/* 06C000 8006B400 80640000 */ lb $a0, ($v1) -/* 06C004 8006B404 01CFC021 */ addu $t8, $t6, $t7 -/* 06C008 8006B408 8F100000 */ lw $s0, ($t8) -/* 06C00C 8006B40C 10800004 */ beqz $a0, .L8006B420 -/* 06C010 8006B410 00001025 */ move $v0, $zero -/* 06C014 8006B414 24010005 */ li $at, 5 -/* 06C018 8006B418 14810003 */ bne $a0, $at, .L8006B428 -/* 06C01C 8006B41C 32030001 */ andi $v1, $s0, 1 -.L8006B420: -/* 06C020 8006B420 24020001 */ li $v0, 1 -/* 06C024 8006B424 32030001 */ andi $v1, $s0, 1 -.L8006B428: -/* 06C028 8006B428 10600004 */ beqz $v1, .L8006B43C -/* 06C02C 8006B42C 8FA40060 */ lw $a0, 0x60($sp) -/* 06C030 8006B430 1040002E */ beqz $v0, .L8006B4EC -/* 06C034 8006B434 00000000 */ nop -/* 06C038 8006B438 8FA40060 */ lw $a0, 0x60($sp) -.L8006B43C: -/* 06C03C 8006B43C 8FA50068 */ lw $a1, 0x68($sp) -/* 06C040 8006B440 8FA6006C */ lw $a2, 0x6c($sp) -/* 06C044 8006B444 8FA70070 */ lw $a3, 0x70($sp) -/* 06C048 8006B448 AFA2004C */ sw $v0, 0x4c($sp) -/* 06C04C 8006B44C 0C01B06B */ jal func_8006C1AC -/* 06C050 8006B450 AFA30038 */ sw $v1, 0x38($sp) -/* 06C054 8006B454 8FA50040 */ lw $a1, 0x40($sp) -/* 06C058 8006B458 240B0001 */ li $t3, 1 -/* 06C05C 8006B45C 90AA0048 */ lbu $t2, 0x48($a1) -/* 06C060 8006B460 94B9000C */ lhu $t9, 0xc($a1) -/* 06C064 8006B464 014B6004 */ sllv $t4, $t3, $t2 -/* 06C068 8006B468 8FA2004C */ lw $v0, 0x4c($sp) -/* 06C06C 8006B46C 8FA30038 */ lw $v1, 0x38($sp) -/* 06C070 8006B470 032C6824 */ and $t5, $t9, $t4 -/* 06C074 8006B474 11A00004 */ beqz $t5, .L8006B488 -/* 06C078 8006B478 240F0003 */ li $t7, 3 -/* 06C07C 8006B47C 240E0007 */ li $t6, 7 -/* 06C080 8006B480 10000002 */ b .L8006B48C -/* 06C084 8006B484 AFAE0070 */ sw $t6, 0x70($sp) -.L8006B488: -/* 06C088 8006B488 AFAF0070 */ sw $t7, 0x70($sp) -.L8006B48C: -/* 06C08C 8006B48C 10400006 */ beqz $v0, .L8006B4A8 -/* 06C090 8006B490 00000000 */ nop -/* 06C094 8006B494 10600004 */ beqz $v1, .L8006B4A8 -/* 06C098 8006B498 AFA00070 */ sw $zero, 0x70($sp) -/* 06C09C 8006B49C 24180002 */ li $t8, 2 -/* 06C0A0 8006B4A0 3C01800E */ lui $at, %hi(D_800DD330) # $at, 0x800e -/* 06C0A4 8006B4A4 A038D330 */ sb $t8, %lo(D_800DD330)($at) -.L8006B4A8: -/* 06C0A8 8006B4A8 0C0078A7 */ jal get_misc_asset -/* 06C0AC 8006B4AC 24040043 */ li $a0, 67 -/* 06C0B0 8006B4B0 8FA50060 */ lw $a1, 0x60($sp) -/* 06C0B4 8006B4B4 804B0000 */ lb $t3, ($v0) -/* 06C0B8 8006B4B8 00402025 */ move $a0, $v0 -/* 06C0BC 8006B4BC 10AB0006 */ beq $a1, $t3, .L8006B4D8 -/* 06C0C0 8006B4C0 00008025 */ move $s0, $zero -/* 06C0C4 8006B4C4 00801825 */ move $v1, $a0 -.L8006B4C8: -/* 06C0C8 8006B4C8 806A0002 */ lb $t2, 2($v1) -/* 06C0CC 8006B4CC 26100002 */ addiu $s0, $s0, 2 -/* 06C0D0 8006B4D0 14AAFFFD */ bne $a1, $t2, .L8006B4C8 -/* 06C0D4 8006B4D4 24630002 */ addiu $v1, $v1, 2 -.L8006B4D8: -/* 06C0D8 8006B4D8 0202C821 */ addu $t9, $s0, $v0 -/* 06C0DC 8006B4DC 832C0001 */ lb $t4, 1($t9) -/* 06C0E0 8006B4E0 8FAD0070 */ lw $t5, 0x70($sp) -/* 06C0E4 8006B4E4 AFAC0060 */ sw $t4, 0x60($sp) -/* 06C0E8 8006B4E8 AFAD0068 */ sw $t5, 0x68($sp) -.L8006B4EC: -/* 06C0EC 8006B4EC 8E230000 */ lw $v1, ($s1) -/* 06C0F0 8006B4F0 24010005 */ li $at, 5 -/* 06C0F4 8006B4F4 8065004C */ lb $a1, 0x4c($v1) -/* 06C0F8 8006B4F8 00000000 */ nop -/* 06C0FC 8006B4FC 14A1002C */ bne $a1, $at, .L8006B5B0 -/* 06C100 8006B500 24010005 */ li $at, 5 -/* 06C104 8006B504 80640000 */ lb $a0, ($v1) -/* 06C108 8006B508 00000000 */ nop -/* 06C10C 8006B50C 18800027 */ blez $a0, .L8006B5AC -/* 06C110 8006B510 28810005 */ slti $at, $a0, 5 -/* 06C114 8006B514 10200026 */ beqz $at, .L8006B5B0 -/* 06C118 8006B518 24010005 */ li $at, 5 -/* 06C11C 8006B51C 8FAE0040 */ lw $t6, 0x40($sp) -/* 06C120 8006B520 24180001 */ li $t8, 1 -/* 06C124 8006B524 95CF0008 */ lhu $t7, 8($t6) -/* 06C128 8006B528 00985804 */ sllv $t3, $t8, $a0 -/* 06C12C 8006B52C 01EB5024 */ and $t2, $t7, $t3 -/* 06C130 8006B530 1140001E */ beqz $t2, .L8006B5AC -/* 06C134 8006B534 00808025 */ move $s0, $a0 -/* 06C138 8006B538 8DCD0010 */ lw $t5, 0x10($t6) -/* 06C13C 8006B53C 2499001F */ addiu $t9, $a0, 0x1f -/* 06C140 8006B540 240C4000 */ li $t4, 16384 -/* 06C144 8006B544 032C1004 */ sllv $v0, $t4, $t9 -/* 06C148 8006B548 01A2C024 */ and $t8, $t5, $v0 -/* 06C14C 8006B54C 17000018 */ bnez $t8, .L8006B5B0 -/* 06C150 8006B550 24010005 */ li $at, 5 -/* 06C154 8006B554 8FA40060 */ lw $a0, 0x60($sp) -/* 06C158 8006B558 8FA50068 */ lw $a1, 0x68($sp) -/* 06C15C 8006B55C 8FA6006C */ lw $a2, 0x6c($sp) -/* 06C160 8006B560 8FA70070 */ lw $a3, 0x70($sp) -/* 06C164 8006B564 0C01B06B */ jal func_8006C1AC -/* 06C168 8006B568 AFA20030 */ sw $v0, 0x30($sp) -/* 06C16C 8006B56C 8FA30040 */ lw $v1, 0x40($sp) -/* 06C170 8006B570 8FA20030 */ lw $v0, 0x30($sp) -/* 06C174 8006B574 8C6F0010 */ lw $t7, 0x10($v1) -/* 06C178 8006B578 24040044 */ li $a0, 68 -/* 06C17C 8006B57C 01E25825 */ or $t3, $t7, $v0 -/* 06C180 8006B580 0C0078A7 */ jal get_misc_asset -/* 06C184 8006B584 AC6B0010 */ sw $t3, 0x10($v1) -/* 06C188 8006B588 02025021 */ addu $t2, $s0, $v0 -/* 06C18C 8006B58C 814CFFFF */ lb $t4, -1($t2) -/* 06C190 8006B590 8E230000 */ lw $v1, ($s1) -/* 06C194 8006B594 24190005 */ li $t9, 5 -/* 06C198 8006B598 AFA00068 */ sw $zero, 0x68($sp) -/* 06C19C 8006B59C AFB90070 */ sw $t9, 0x70($sp) -/* 06C1A0 8006B5A0 AFAC0060 */ sw $t4, 0x60($sp) -/* 06C1A4 8006B5A4 8065004C */ lb $a1, 0x4c($v1) -/* 06C1A8 8006B5A8 00000000 */ nop -.L8006B5AC: -/* 06C1AC 8006B5AC 24010005 */ li $at, 5 -.L8006B5B0: -/* 06C1B0 8006B5B0 14A10020 */ bne $a1, $at, .L8006B634 -/* 06C1B4 8006B5B4 8FAE0044 */ lw $t6, 0x44($sp) -/* 06C1B8 8006B5B8 806E0000 */ lb $t6, ($v1) -/* 06C1BC 8006B5BC 8FAD0040 */ lw $t5, 0x40($sp) -/* 06C1C0 8006B5C0 15C0001C */ bnez $t6, .L8006B634 -/* 06C1C4 8006B5C4 8FAE0044 */ lw $t6, 0x44($sp) -/* 06C1C8 8006B5C8 8DB80010 */ lw $t8, 0x10($t5) -/* 06C1CC 8006B5CC 00000000 */ nop -/* 06C1D0 8006B5D0 330F2000 */ andi $t7, $t8, 0x2000 -/* 06C1D4 8006B5D4 15E00017 */ bnez $t7, .L8006B634 -/* 06C1D8 8006B5D8 8FAE0044 */ lw $t6, 0x44($sp) -/* 06C1DC 8006B5DC 91AB0017 */ lbu $t3, 0x17($t5) -/* 06C1E0 8006B5E0 8FA40060 */ lw $a0, 0x60($sp) -/* 06C1E4 8006B5E4 29610004 */ slti $at, $t3, 4 -/* 06C1E8 8006B5E8 14200012 */ bnez $at, .L8006B634 -/* 06C1EC 8006B5EC 8FAE0044 */ lw $t6, 0x44($sp) -/* 06C1F0 8006B5F0 8FA50068 */ lw $a1, 0x68($sp) -/* 06C1F4 8006B5F4 8FA6006C */ lw $a2, 0x6c($sp) -/* 06C1F8 8006B5F8 8FA70070 */ lw $a3, 0x70($sp) -/* 06C1FC 8006B5FC AFA00070 */ sw $zero, 0x70($sp) -/* 06C200 8006B600 0C01B06B */ jal func_8006C1AC -/* 06C204 8006B604 AFA00068 */ sw $zero, 0x68($sp) -/* 06C208 8006B608 8FA20040 */ lw $v0, 0x40($sp) -/* 06C20C 8006B60C 24040044 */ li $a0, 68 -/* 06C210 8006B610 8C4A0010 */ lw $t2, 0x10($v0) -/* 06C214 8006B614 00000000 */ nop -/* 06C218 8006B618 354C2000 */ ori $t4, $t2, 0x2000 -/* 06C21C 8006B61C 0C0078A7 */ jal get_misc_asset -/* 06C220 8006B620 AC4C0010 */ sw $t4, 0x10($v0) -/* 06C224 8006B624 80590004 */ lb $t9, 4($v0) -/* 06C228 8006B628 00000000 */ nop -/* 06C22C 8006B62C AFB90060 */ sw $t9, 0x60($sp) -.L8006B630: -/* 06C230 8006B630 8FAE0044 */ lw $t6, 0x44($sp) -.L8006B634: -/* 06C234 8006B634 8FB80060 */ lw $t8, 0x60($sp) -/* 06C238 8006B638 3C01800E */ lui $at, %hi(D_800DD32C) # $at, 0x800e -/* 06C23C 8006B63C 11D80016 */ beq $t6, $t8, .L8006B698 -/* 06C240 8006B640 A420D32C */ sh $zero, %lo(D_800DD32C)($at) -/* 06C244 8006B644 8E240000 */ lw $a0, ($s1) -/* 06C248 8006B648 00187880 */ sll $t7, $t8, 2 -/* 06C24C 8006B64C 0C01C450 */ jal free_from_memory_pool -/* 06C250 8006B650 AFAF0034 */ sw $t7, 0x34($sp) -/* 06C254 8006B654 3C0D8012 */ lui $t5, %hi(gTempAssetTable) # $t5, 0x8012 -/* 06C258 8006B658 8DAD1160 */ lw $t5, %lo(gTempAssetTable)($t5) -/* 06C25C 8006B65C 8FAB0034 */ lw $t3, 0x34($sp) -/* 06C260 8006B660 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff -/* 06C264 8006B664 01AB1021 */ addu $v0, $t5, $t3 -/* 06C268 8006B668 8C500000 */ lw $s0, ($v0) -/* 06C26C 8006B66C 8C4A0004 */ lw $t2, 4($v0) -/* 06C270 8006B670 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 06C274 8006B674 01502023 */ subu $a0, $t2, $s0 -/* 06C278 8006B678 0C01C327 */ jal allocate_from_main_pool_safe -/* 06C27C 8006B67C AFA40054 */ sw $a0, 0x54($sp) -/* 06C280 8006B680 8FA70054 */ lw $a3, 0x54($sp) -/* 06C284 8006B684 AE220000 */ sw $v0, ($s1) -/* 06C288 8006B688 24040017 */ li $a0, 23 -/* 06C28C 8006B68C 00402825 */ move $a1, $v0 -/* 06C290 8006B690 0C01DB9A */ jal load_asset_to_address -/* 06C294 8006B694 02003025 */ move $a2, $s0 -.L8006B698: -/* 06C298 8006B698 3C048012 */ lui $a0, %hi(gTempAssetTable) # $a0, 0x8012 -/* 06C29C 8006B69C 8C841160 */ lw $a0, %lo(gTempAssetTable)($a0) -/* 06C2A0 8006B6A0 0C01C450 */ jal free_from_memory_pool -/* 06C2A4 8006B6A4 00000000 */ nop -/* 06C2A8 8006B6A8 8E240000 */ lw $a0, ($s1) -/* 06C2AC 8006B6AC 0C01AFF2 */ jal func_8006BFC8 -/* 06C2B0 8006B6B0 24840020 */ addiu $a0, $a0, 0x20 -/* 06C2B4 8006B6B4 0C0032F0 */ jal func_8000CBC0 -/* 06C2B8 8006B6B8 00000000 */ nop -/* 06C2BC 8006B6BC 8FAC0060 */ lw $t4, 0x60($sp) -/* 06C2C0 8006B6C0 3C018012 */ lui $at, %hi(D_80121164) # $at, 0x8012 -/* 06C2C4 8006B6C4 00001825 */ move $v1, $zero -/* 06C2C8 8006B6C8 AC2C1164 */ sw $t4, %lo(D_80121164)($at) -.L8006B6CC: -/* 06C2CC 8006B6CC 8E390000 */ lw $t9, ($s1) -/* 06C2D0 8006B6D0 2401FFFF */ li $at, -1 -/* 06C2D4 8006B6D4 03237021 */ addu $t6, $t9, $v1 -/* 06C2D8 8006B6D8 8DC40074 */ lw $a0, 0x74($t6) -/* 06C2DC 8006B6DC 00000000 */ nop -/* 06C2E0 8006B6E0 10810010 */ beq $a0, $at, .L8006B724 -/* 06C2E4 8006B6E4 00000000 */ nop -/* 06C2E8 8006B6E8 0C0078A7 */ jal get_misc_asset -/* 06C2EC 8006B6EC AFA30038 */ sw $v1, 0x38($sp) -/* 06C2F0 8006B6F0 8FA30038 */ lw $v1, 0x38($sp) -/* 06C2F4 8006B6F4 8E380000 */ lw $t8, ($s1) -/* 06C2F8 8006B6F8 00000000 */ nop -/* 06C2FC 8006B6FC 03037821 */ addu $t7, $t8, $v1 -/* 06C300 8006B700 ADE20074 */ sw $v0, 0x74($t7) -/* 06C304 8006B704 8E2D0000 */ lw $t5, ($s1) -/* 06C308 8006B708 00000000 */ nop -/* 06C30C 8006B70C 01A35821 */ addu $t3, $t5, $v1 -/* 06C310 8006B710 8D640074 */ lw $a0, 0x74($t3) -/* 06C314 8006B714 0C01FC7A */ jal func_8007F1E8 -/* 06C318 8006B718 00000000 */ nop -/* 06C31C 8006B71C 8FA30038 */ lw $v1, 0x38($sp) -/* 06C320 8006B720 00000000 */ nop -.L8006B724: -/* 06C324 8006B724 24630004 */ addiu $v1, $v1, 4 -/* 06C328 8006B728 2861001C */ slti $at, $v1, 0x1c -/* 06C32C 8006B72C 1420FFE7 */ bnez $at, .L8006B6CC -/* 06C330 8006B730 00000000 */ nop -/* 06C334 8006B734 8FAA0070 */ lw $t2, 0x70($sp) -/* 06C338 8006B738 24010064 */ li $at, 100 -/* 06C33C 8006B73C 15410019 */ bne $t2, $at, .L8006B7A4 -/* 06C340 8006B740 00000000 */ nop -/* 06C344 8006B744 0C02658B */ jal get_trophy_race_world_id -/* 06C348 8006B748 00000000 */ nop -/* 06C34C 8006B74C 10400009 */ beqz $v0, .L8006B774 -/* 06C350 8006B750 00000000 */ nop -/* 06C354 8006B754 8E2C0000 */ lw $t4, ($s1) -/* 06C358 8006B758 00000000 */ nop -/* 06C35C 8006B75C 8199004C */ lb $t9, 0x4c($t4) -/* 06C360 8006B760 00000000 */ nop -/* 06C364 8006B764 1720000F */ bnez $t9, .L8006B7A4 -/* 06C368 8006B768 00000000 */ nop -/* 06C36C 8006B76C 1000000D */ b .L8006B7A4 -/* 06C370 8006B770 AFA00070 */ sw $zero, 0x70($sp) -.L8006B774: -/* 06C374 8006B774 0C0270B4 */ jal is_in_tracks_mode -/* 06C378 8006B778 00000000 */ nop -/* 06C37C 8006B77C 24010001 */ li $at, 1 -/* 06C380 8006B780 14410008 */ bne $v0, $at, .L8006B7A4 -/* 06C384 8006B784 00000000 */ nop -/* 06C388 8006B788 8E2E0000 */ lw $t6, ($s1) -/* 06C38C 8006B78C 00000000 */ nop -/* 06C390 8006B790 81D8004C */ lb $t8, 0x4c($t6) -/* 06C394 8006B794 00000000 */ nop -/* 06C398 8006B798 17000002 */ bnez $t8, .L8006B7A4 -/* 06C39C 8006B79C 00000000 */ nop -/* 06C3A0 8006B7A0 AFA00070 */ sw $zero, 0x70($sp) -.L8006B7A4: -/* 06C3A4 8006B7A4 8E230000 */ lw $v1, ($s1) -/* 06C3A8 8006B7A8 00000000 */ nop -/* 06C3AC 8006B7AC 8065004C */ lb $a1, 0x4c($v1) -/* 06C3B0 8006B7B0 00000000 */ nop -/* 06C3B4 8006B7B4 10A00002 */ beqz $a1, .L8006B7C0 -/* 06C3B8 8006B7B8 24010008 */ li $at, 8 -/* 06C3BC 8006B7BC 14A10004 */ bne $a1, $at, .L8006B7D0 -.L8006B7C0: -/* 06C3C0 8006B7C0 240F0001 */ li $t7, 1 -/* 06C3C4 8006B7C4 3C01800E */ lui $at, %hi(D_800DD31C) # $at, 0x800e -/* 06C3C8 8006B7C8 10000003 */ b .L8006B7D8 -/* 06C3CC 8006B7CC AC2FD31C */ sw $t7, %lo(D_800DD31C)($at) -.L8006B7D0: -/* 06C3D0 8006B7D0 3C01800E */ lui $at, %hi(D_800DD31C) # $at, 0x800e -/* 06C3D4 8006B7D4 AC20D31C */ sw $zero, %lo(D_800DD31C)($at) -.L8006B7D8: -/* 06C3D8 8006B7D8 8FAD0048 */ lw $t5, 0x48($sp) -/* 06C3DC 8006B7DC 00000000 */ nop -/* 06C3E0 8006B7E0 11A00008 */ beqz $t5, .L8006B804 -/* 06C3E4 8006B7E4 00000000 */ nop -/* 06C3E8 8006B7E8 806B004C */ lb $t3, 0x4c($v1) -/* 06C3EC 8006B7EC 24010007 */ li $at, 7 -/* 06C3F0 8006B7F0 11610004 */ beq $t3, $at, .L8006B804 -/* 06C3F4 8006B7F4 240A0006 */ li $t2, 6 -/* 06C3F8 8006B7F8 A06A004C */ sb $t2, 0x4c($v1) -/* 06C3FC 8006B7FC 8E230000 */ lw $v1, ($s1) -/* 06C400 8006B800 00000000 */ nop -.L8006B804: -/* 06C404 8006B804 906400B3 */ lbu $a0, 0xb3($v1) -/* 06C408 8006B808 0C0002F8 */ jal set_music_player_voice_limit -/* 06C40C 8006B80C 00000000 */ nop -/* 06C410 8006B810 0C00032F */ jal func_80000CBC -/* 06C414 8006B814 00000000 */ nop -/* 06C418 8006B818 0C00C6EE */ jal func_80031BB8 -/* 06C41C 8006B81C 24040020 */ li $a0, 32 -/* 06C420 8006B820 8FAC006C */ lw $t4, 0x6c($sp) -/* 06C424 8006B824 00008025 */ move $s0, $zero -/* 06C428 8006B828 05800008 */ bltz $t4, .L8006B84C -/* 06C42C 8006B82C 29810003 */ slti $at, $t4, 3 -/* 06C430 8006B830 10200006 */ beqz $at, .L8006B84C -/* 06C434 8006B834 00000000 */ nop -/* 06C438 8006B838 8E390000 */ lw $t9, ($s1) -/* 06C43C 8006B83C 00000000 */ nop -/* 06C440 8006B840 032C7021 */ addu $t6, $t9, $t4 -/* 06C444 8006B844 81D0004F */ lb $s0, 0x4f($t6) -/* 06C448 8006B848 00000000 */ nop -.L8006B84C: -/* 06C44C 8006B84C 0C005F9D */ jal func_80017E74 -/* 06C450 8006B850 02002025 */ move $a0, $s0 -/* 06C454 8006B854 8E380000 */ lw $t8, ($s1) -/* 06C458 8006B858 8FA30040 */ lw $v1, 0x40($sp) -/* 06C45C 8006B85C 83040000 */ lb $a0, ($t8) -/* 06C460 8006B860 2401FFFF */ li $at, -1 -/* 06C464 8006B864 90700048 */ lbu $s0, 0x48($v1) -/* 06C468 8006B868 10810003 */ beq $a0, $at, .L8006B878 -/* 06C46C 8006B86C 8FAF0060 */ lw $t7, 0x60($sp) -/* 06C470 8006B870 A0640048 */ sb $a0, 0x48($v1) -/* 06C474 8006B874 8FAF0060 */ lw $t7, 0x60($sp) -.L8006B878: -/* 06C478 8006B878 1600000A */ bnez $s0, .L8006B8A4 -/* 06C47C 8006B87C A06F0049 */ sb $t7, 0x49($v1) -/* 06C480 8006B880 906D0048 */ lbu $t5, 0x48($v1) -/* 06C484 8006B884 00000000 */ nop -/* 06C488 8006B888 19A00006 */ blez $t5, .L8006B8A4 -/* 06C48C 8006B88C 00000000 */ nop -/* 06C490 8006B890 0C01B6CB */ jal get_level_default_vehicle -/* 06C494 8006B894 00000000 */ nop -/* 06C498 8006B898 3C01800E */ lui $at, %hi(D_800DD314) # $at, 0x800e -/* 06C49C 8006B89C 8FA30040 */ lw $v1, 0x40($sp) -/* 06C4A0 8006B8A0 A022D314 */ sb $v0, %lo(D_800DD314)($at) -.L8006B8A4: -/* 06C4A4 8006B8A4 906B0048 */ lbu $t3, 0x48($v1) -/* 06C4A8 8006B8A8 00000000 */ nop -/* 06C4AC 8006B8AC 15600009 */ bnez $t3, .L8006B8D4 -/* 06C4B0 8006B8B0 8FA4006C */ lw $a0, 0x6c($sp) -/* 06C4B4 8006B8B4 1A000006 */ blez $s0, .L8006B8D0 -/* 06C4B8 8006B8B8 3C02800E */ lui $v0, %hi(D_800DD314) # $v0, 0x800e -/* 06C4BC 8006B8BC 8042D314 */ lb $v0, %lo(D_800DD314)($v0) -/* 06C4C0 8006B8C0 2401FFFF */ li $at, -1 -/* 06C4C4 8006B8C4 10410003 */ beq $v0, $at, .L8006B8D4 -/* 06C4C8 8006B8C8 8FA4006C */ lw $a0, 0x6c($sp) -/* 06C4CC 8006B8CC AFA2006C */ sw $v0, 0x6c($sp) -.L8006B8D0: -/* 06C4D0 8006B8D0 8FA4006C */ lw $a0, 0x6c($sp) -.L8006B8D4: -/* 06C4D4 8006B8D4 0C01B6C8 */ jal func_8006DB20 -/* 06C4D8 8006B8D8 00000000 */ nop -/* 06C4DC 8006B8DC 8E2A0000 */ lw $t2, ($s1) -/* 06C4E0 8006B8E0 24010005 */ li $at, 5 -/* 06C4E4 8006B8E4 8159004C */ lb $t9, 0x4c($t2) -/* 06C4E8 8006B8E8 00000000 */ nop -/* 06C4EC 8006B8EC 1721003C */ bne $t9, $at, .L8006B9E0 -/* 06C4F0 8006B8F0 00000000 */ nop -/* 06C4F4 8006B8F4 8FA50040 */ lw $a1, 0x40($sp) -/* 06C4F8 8006B8F8 240E0008 */ li $t6, 8 -/* 06C4FC 8006B8FC 90A40048 */ lbu $a0, 0x48($a1) -/* 06C500 8006B900 24010005 */ li $at, 5 -/* 06C504 8006B904 18800036 */ blez $a0, .L8006B9E0 -/* 06C508 8006B908 248C001F */ addiu $t4, $a0, 0x1f -/* 06C50C 8006B90C 14810015 */ bne $a0, $at, .L8006B964 -/* 06C510 8006B910 018E8004 */ sllv $s0, $t6, $t4 -/* 06C514 8006B914 8CB80000 */ lw $t8, ($a1) -/* 06C518 8006B918 00000000 */ nop -/* 06C51C 8006B91C 870F0000 */ lh $t7, ($t8) -/* 06C520 8006B920 00000000 */ nop -/* 06C524 8006B924 29E1002F */ slti $at, $t7, 0x2f -/* 06C528 8006B928 1420002D */ bnez $at, .L8006B9E0 -/* 06C52C 8006B92C 00000000 */ nop -/* 06C530 8006B930 90AD0016 */ lbu $t5, 0x16($a1) -/* 06C534 8006B934 00000000 */ nop -/* 06C538 8006B938 29A10004 */ slti $at, $t5, 4 -/* 06C53C 8006B93C 14200028 */ bnez $at, .L8006B9E0 -/* 06C540 8006B940 00000000 */ nop -/* 06C544 8006B944 8CA20010 */ lw $v0, 0x10($a1) -/* 06C548 8006B948 24190005 */ li $t9, 5 -/* 06C54C 8006B94C 00505824 */ and $t3, $v0, $s0 -/* 06C550 8006B950 15600023 */ bnez $t3, .L8006B9E0 -/* 06C554 8006B954 00505025 */ or $t2, $v0, $s0 -/* 06C558 8006B958 ACAA0010 */ sw $t2, 0x10($a1) -/* 06C55C 8006B95C 10000020 */ b .L8006B9E0 -/* 06C560 8006B960 AFB90070 */ sw $t9, 0x70($sp) -.L8006B964: -/* 06C564 8006B964 8CAE0000 */ lw $t6, ($a1) -/* 06C568 8006B968 00046040 */ sll $t4, $a0, 1 -/* 06C56C 8006B96C 01CCC021 */ addu $t8, $t6, $t4 -/* 06C570 8006B970 87030000 */ lh $v1, ($t8) -/* 06C574 8006B974 00000000 */ nop -/* 06C578 8006B978 28610004 */ slti $at, $v1, 4 -/* 06C57C 8006B97C 1420000F */ bnez $at, .L8006B9BC -/* 06C580 8006B980 28610008 */ slti $at, $v1, 8 -/* 06C584 8006B984 8CA20010 */ lw $v0, 0x10($a1) -/* 06C588 8006B988 240B0005 */ li $t3, 5 -/* 06C58C 8006B98C 00507824 */ and $t7, $v0, $s0 -/* 06C590 8006B990 15E00009 */ bnez $t7, .L8006B9B8 -/* 06C594 8006B994 00506825 */ or $t5, $v0, $s0 -/* 06C598 8006B998 ACAD0010 */ sw $t5, 0x10($a1) -/* 06C59C 8006B99C AFAB0070 */ sw $t3, 0x70($sp) -/* 06C5A0 8006B9A0 90B90048 */ lbu $t9, 0x48($a1) -/* 06C5A4 8006B9A4 8CAA0000 */ lw $t2, ($a1) -/* 06C5A8 8006B9A8 00197040 */ sll $t6, $t9, 1 -/* 06C5AC 8006B9AC 014E6021 */ addu $t4, $t2, $t6 -/* 06C5B0 8006B9B0 85830000 */ lh $v1, ($t4) -/* 06C5B4 8006B9B4 00000000 */ nop -.L8006B9B8: -/* 06C5B8 8006B9B8 28610008 */ slti $at, $v1, 8 -.L8006B9BC: -/* 06C5BC 8006B9BC 14200008 */ bnez $at, .L8006B9E0 -/* 06C5C0 8006B9C0 0010C140 */ sll $t8, $s0, 5 -/* 06C5C4 8006B9C4 8CA20010 */ lw $v0, 0x10($a1) -/* 06C5C8 8006B9C8 240B0005 */ li $t3, 5 -/* 06C5CC 8006B9CC 00587824 */ and $t7, $v0, $t8 -/* 06C5D0 8006B9D0 15E00003 */ bnez $t7, .L8006B9E0 -/* 06C5D4 8006B9D4 00586825 */ or $t5, $v0, $t8 -/* 06C5D8 8006B9D8 ACAD0010 */ sw $t5, 0x10($a1) -/* 06C5DC 8006B9DC AFAB0070 */ sw $t3, 0x70($sp) -.L8006B9E0: -/* 06C5E0 8006B9E0 8E390000 */ lw $t9, ($s1) -/* 06C5E4 8006B9E4 8FAA0064 */ lw $t2, 0x64($sp) -/* 06C5E8 8006B9E8 8325004C */ lb $a1, 0x4c($t9) -/* 06C5EC 8006B9EC 11400004 */ beqz $t2, .L8006BA00 -/* 06C5F0 8006B9F0 00000000 */ nop -/* 06C5F4 8006B9F4 14A00002 */ bnez $a1, .L8006BA00 -/* 06C5F8 8006B9F8 240E0064 */ li $t6, 100 -/* 06C5FC 8006B9FC AFAE0070 */ sw $t6, 0x70($sp) -.L8006BA00: -/* 06C600 8006BA00 10A00003 */ beqz $a1, .L8006BA10 -/* 06C604 8006BA04 30AC0040 */ andi $t4, $a1, 0x40 -/* 06C608 8006BA08 1180000B */ beqz $t4, .L8006BA38 -/* 06C60C 8006BA0C 00000000 */ nop -.L8006BA10: -/* 06C610 8006BA10 0C027B20 */ jal is_in_two_player_adventure -/* 06C614 8006BA14 00000000 */ nop -/* 06C618 8006BA18 10400007 */ beqz $v0, .L8006BA38 -/* 06C61C 8006BA1C 24180001 */ li $t8, 1 -/* 06C620 8006BA20 3C01800E */ lui $at, %hi(D_800DD318) # $at, 0x800e -/* 06C624 8006BA24 A038D318 */ sb $t8, %lo(D_800DD318)($at) -/* 06C628 8006BA28 8E230000 */ lw $v1, ($s1) -/* 06C62C 8006BA2C 240F0064 */ li $t7, 100 -/* 06C630 8006BA30 10000005 */ b .L8006BA48 -/* 06C634 8006BA34 AFAF0070 */ sw $t7, 0x70($sp) -.L8006BA38: -/* 06C638 8006BA38 3C01800E */ lui $at, %hi(D_800DD318) # $at, 0x800e -/* 06C63C 8006BA3C A020D318 */ sb $zero, %lo(D_800DD318)($at) -/* 06C640 8006BA40 8E230000 */ lw $v1, ($s1) -/* 06C644 8006BA44 00000000 */ nop -.L8006BA48: -/* 06C648 8006BA48 806D004C */ lb $t5, 0x4c($v1) -/* 06C64C 8006BA4C 00000000 */ nop -/* 06C650 8006BA50 15A0000B */ bnez $t5, .L8006BA80 -/* 06C654 8006BA54 8FA40070 */ lw $a0, 0x70($sp) -/* 06C658 8006BA58 8FAB0048 */ lw $t3, 0x48($sp) -/* 06C65C 8006BA5C 00000000 */ nop -/* 06C660 8006BA60 15600007 */ bnez $t3, .L8006BA80 -/* 06C664 8006BA64 8FA40070 */ lw $a0, 0x70($sp) -/* 06C668 8006BA68 0C003932 */ jal is_time_trial_enabled -/* 06C66C 8006BA6C 00000000 */ nop -/* 06C670 8006BA70 10400002 */ beqz $v0, .L8006BA7C -/* 06C674 8006BA74 24190064 */ li $t9, 100 -/* 06C678 8006BA78 AFB90070 */ sw $t9, 0x70($sp) -.L8006BA7C: -/* 06C67C 8006BA7C 8FA40070 */ lw $a0, 0x70($sp) -.L8006BA80: -/* 06C680 8006BA80 0C007914 */ jal func_8001E450 -/* 06C684 8006BA84 00000000 */ nop -/* 06C688 8006BA88 8E230000 */ lw $v1, ($s1) -/* 06C68C 8006BA8C 8FAA0068 */ lw $t2, 0x68($sp) -/* 06C690 8006BA90 84640034 */ lh $a0, 0x34($v1) -/* 06C694 8006BA94 84650038 */ lh $a1, 0x38($v1) -/* 06C698 8006BA98 AFAA0010 */ sw $t2, 0x10($sp) -/* 06C69C 8006BA9C 846E0036 */ lh $t6, 0x36($v1) -/* 06C6A0 8006BAA0 8FA60064 */ lw $a2, 0x64($sp) -/* 06C6A4 8006BAA4 AFAE0014 */ sw $t6, 0x14($sp) -/* 06C6A8 8006BAA8 846C00BA */ lh $t4, 0xba($v1) -/* 06C6AC 8006BAAC 8FA7006C */ lw $a3, 0x6c($sp) -/* 06C6B0 8006BAB0 0C00927C */ jal func_800249F0 -/* 06C6B4 8006BAB4 AFAC0018 */ sw $t4, 0x18($sp) -/* 06C6B8 8006BAB8 8E230000 */ lw $v1, ($s1) -/* 06C6BC 8006BABC 00000000 */ nop -/* 06C6C0 8006BAC0 8478003A */ lh $t8, 0x3a($v1) -/* 06C6C4 8006BAC4 00000000 */ nop -/* 06C6C8 8006BAC8 1700001A */ bnez $t8, .L8006BB34 -/* 06C6CC 8006BACC 00008025 */ move $s0, $zero -/* 06C6D0 8006BAD0 846F003C */ lh $t7, 0x3c($v1) -/* 06C6D4 8006BAD4 00000000 */ nop -/* 06C6D8 8006BAD8 15E00016 */ bnez $t7, .L8006BB34 -/* 06C6DC 8006BADC 00008025 */ move $s0, $zero -/* 06C6E0 8006BAE0 846D003E */ lh $t5, 0x3e($v1) -/* 06C6E4 8006BAE4 00000000 */ nop -/* 06C6E8 8006BAE8 15A00012 */ bnez $t5, .L8006BB34 -/* 06C6EC 8006BAEC 00008025 */ move $s0, $zero -/* 06C6F0 8006BAF0 846B0040 */ lh $t3, 0x40($v1) -/* 06C6F4 8006BAF4 00000000 */ nop -/* 06C6F8 8006BAF8 1560000E */ bnez $t3, .L8006BB34 -/* 06C6FC 8006BAFC 00008025 */ move $s0, $zero -/* 06C700 8006BB00 84790042 */ lh $t9, 0x42($v1) -/* 06C704 8006BB04 00008025 */ move $s0, $zero -/* 06C708 8006BB08 17200009 */ bnez $t9, .L8006BB30 -/* 06C70C 8006BB0C 00000000 */ nop -.L8006BB10: -/* 06C710 8006BB10 0C00C1EF */ jal func_800307BC -/* 06C714 8006BB14 02002025 */ move $a0, $s0 -/* 06C718 8006BB18 26100001 */ addiu $s0, $s0, 1 -/* 06C71C 8006BB1C 24010004 */ li $at, 4 -/* 06C720 8006BB20 1601FFFB */ bne $s0, $at, .L8006BB10 -/* 06C724 8006BB24 00000000 */ nop -/* 06C728 8006BB28 10000010 */ b .L8006BB6C -/* 06C72C 8006BB2C 00000000 */ nop -.L8006BB30: -/* 06C730 8006BB30 00008025 */ move $s0, $zero -.L8006BB34: -/* 06C734 8006BB34 8E230000 */ lw $v1, ($s1) -/* 06C738 8006BB38 02002025 */ move $a0, $s0 -/* 06C73C 8006BB3C 846A0040 */ lh $t2, 0x40($v1) -/* 06C740 8006BB40 8465003A */ lh $a1, 0x3a($v1) -/* 06C744 8006BB44 8466003C */ lh $a2, 0x3c($v1) -/* 06C748 8006BB48 9067003F */ lbu $a3, 0x3f($v1) -/* 06C74C 8006BB4C AFAA0010 */ sw $t2, 0x10($sp) -/* 06C750 8006BB50 846E0042 */ lh $t6, 0x42($v1) -/* 06C754 8006BB54 0C00C199 */ jal func_80030664 -/* 06C758 8006BB58 AFAE0014 */ sw $t6, 0x14($sp) -/* 06C75C 8006BB5C 26100001 */ addiu $s0, $s0, 1 -/* 06C760 8006BB60 24010004 */ li $at, 4 -/* 06C764 8006BB64 1601FFF3 */ bne $s0, $at, .L8006BB34 -/* 06C768 8006BB68 00000000 */ nop -.L8006BB6C: -/* 06C76C 8006BB6C 0C01BAA4 */ jal get_settings -/* 06C770 8006BB70 00000000 */ nop -/* 06C774 8006BB74 8E2C0000 */ lw $t4, ($s1) -/* 06C778 8006BB78 2401FFFF */ li $at, -1 -/* 06C77C 8006BB7C 81840000 */ lb $a0, ($t4) -/* 06C780 8006BB80 00000000 */ nop -/* 06C784 8006BB84 10810003 */ beq $a0, $at, .L8006BB94 -/* 06C788 8006BB88 8FB80060 */ lw $t8, 0x60($sp) -/* 06C78C 8006BB8C A0440048 */ sb $a0, 0x48($v0) -/* 06C790 8006BB90 8FB80060 */ lw $t8, 0x60($sp) -.L8006BB94: -/* 06C794 8006BB94 00000000 */ nop -/* 06C798 8006BB98 A0580049 */ sb $t8, 0x49($v0) -/* 06C79C 8006BB9C 8E230000 */ lw $v1, ($s1) -/* 06C7A0 8006BBA0 00000000 */ nop -/* 06C7A4 8006BBA4 84650090 */ lh $a1, 0x90($v1) -/* 06C7A8 8006BBA8 00000000 */ nop -/* 06C7AC 8006BBAC 18A0001C */ blez $a1, .L8006BC20 -/* 06C7B0 8006BBB0 00000000 */ nop -/* 06C7B4 8006BBB4 846B009A */ lh $t3, 0x9a($v1) -/* 06C7B8 8006BBB8 84660096 */ lh $a2, 0x96($v1) -/* 06C7BC 8006BBBC 84670098 */ lh $a3, 0x98($v1) -/* 06C7C0 8006BBC0 84640092 */ lh $a0, 0x92($v1) -/* 06C7C4 8006BBC4 000BCA00 */ sll $t9, $t3, 8 -/* 06C7C8 8006BBC8 AFB90010 */ sw $t9, 0x10($sp) -/* 06C7CC 8006BBCC 906A0094 */ lbu $t2, 0x94($v1) -/* 06C7D0 8006BBD0 24020101 */ li $v0, 257 -/* 06C7D4 8006BBD4 01420019 */ multu $t2, $v0 -/* 06C7D8 8006BBD8 00067A00 */ sll $t7, $a2, 8 -/* 06C7DC 8006BBDC 00076A00 */ sll $t5, $a3, 8 -/* 06C7E0 8006BBE0 01A03825 */ move $a3, $t5 -/* 06C7E4 8006BBE4 01E03025 */ move $a2, $t7 -/* 06C7E8 8006BBE8 00007012 */ mflo $t6 -/* 06C7EC 8006BBEC AFAE0014 */ sw $t6, 0x14($sp) -/* 06C7F0 8006BBF0 906C0095 */ lbu $t4, 0x95($v1) -/* 06C7F4 8006BBF4 00000000 */ nop -/* 06C7F8 8006BBF8 01820019 */ multu $t4, $v0 -/* 06C7FC 8006BBFC 0000C012 */ mflo $t8 -/* 06C800 8006BC00 AFB80018 */ sw $t8, 0x18($sp) -/* 06C804 8006BC04 0C02AD2A */ jal func_800AB4A8 -/* 06C808 8006BC08 00000000 */ nop -/* 06C80C 8006BC0C 2404FFFF */ li $a0, -1 -/* 06C810 8006BC10 0C02ACC2 */ jal func_800AB308 -/* 06C814 8006BC14 2405FE00 */ li $a1, -512 -/* 06C818 8006BC18 8E230000 */ lw $v1, ($s1) -/* 06C81C 8006BC1C 00000000 */ nop -.L8006BC20: -/* 06C820 8006BC20 806F0049 */ lb $t7, 0x49($v1) -/* 06C824 8006BC24 2401FFFF */ li $at, -1 -/* 06C828 8006BC28 15E1000F */ bne $t7, $at, .L8006BC68 -/* 06C82C 8006BC2C 00000000 */ nop -/* 06C830 8006BC30 8C6400A4 */ lw $a0, 0xa4($v1) -/* 06C834 8006BC34 0C01EB9D */ jal load_texture -/* 06C838 8006BC38 00000000 */ nop -/* 06C83C 8006BC3C 8E2D0000 */ lw $t5, ($s1) -/* 06C840 8006BC40 00000000 */ nop -/* 06C844 8006BC44 ADA200A4 */ sw $v0, 0xa4($t5) -/* 06C848 8006BC48 8E2B0000 */ lw $t3, ($s1) -/* 06C84C 8006BC4C 00000000 */ nop -/* 06C850 8006BC50 A56000A8 */ sh $zero, 0xa8($t3) -/* 06C854 8006BC54 8E390000 */ lw $t9, ($s1) -/* 06C858 8006BC58 00000000 */ nop -/* 06C85C 8006BC5C A72000AA */ sh $zero, 0xaa($t9) -/* 06C860 8006BC60 8E230000 */ lw $v1, ($s1) -/* 06C864 8006BC64 00000000 */ nop -.L8006BC68: -/* 06C868 8006BC68 8C6400AC */ lw $a0, 0xac($v1) -/* 06C86C 8006BC6C 2401FFFF */ li $at, -1 -/* 06C870 8006BC70 1081000D */ beq $a0, $at, .L8006BCA8 -/* 06C874 8006BC74 00000000 */ nop -/* 06C878 8006BC78 0C0078A7 */ jal get_misc_asset -/* 06C87C 8006BC7C 00000000 */ nop -/* 06C880 8006BC80 8E2A0000 */ lw $t2, ($s1) -/* 06C884 8006BC84 00000000 */ nop -/* 06C888 8006BC88 AD4200AC */ sw $v0, 0xac($t2) -/* 06C88C 8006BC8C 8E2E0000 */ lw $t6, ($s1) -/* 06C890 8006BC90 00000000 */ nop -/* 06C894 8006BC94 8DC400AC */ lw $a0, 0xac($t6) -/* 06C898 8006BC98 0C01FD05 */ jal init_pulsating_light_data -/* 06C89C 8006BC9C 00000000 */ nop -/* 06C8A0 8006BCA0 8E230000 */ lw $v1, ($s1) -/* 06C8A4 8006BCA4 00000000 */ nop -.L8006BCA8: -/* 06C8A8 8006BCA8 806C009C */ lb $t4, 0x9c($v1) -/* 06C8AC 8006BCAC 00000000 */ nop -/* 06C8B0 8006BCB0 448C2000 */ mtc1 $t4, $f4 -/* 06C8B4 8006BCB4 0C01983B */ jal update_camera_fov -/* 06C8B8 8006BCB8 46802320 */ cvt.s.w $f12, $f4 -/* 06C8BC 8006BCBC 8E230000 */ lw $v1, ($s1) -/* 06C8C0 8006BCC0 00000000 */ nop -/* 06C8C4 8006BCC4 9064009D */ lbu $a0, 0x9d($v1) -/* 06C8C8 8006BCC8 9065009E */ lbu $a1, 0x9e($v1) -/* 06C8CC 8006BCCC 9066009F */ lbu $a2, 0x9f($v1) -/* 06C8D0 8006BCD0 0C01DECD */ jal set_background_prim_colour -/* 06C8D4 8006BCD4 00000000 */ nop -/* 06C8D8 8006BCD8 0C01EA5D */ jal func_8007A974 -/* 06C8DC 8006BCDC 00000000 */ nop -/* 06C8E0 8006BCE0 8E380000 */ lw $t8, ($s1) -/* 06C8E4 8006BCE4 8FAF0064 */ lw $t7, 0x64($sp) -/* 06C8E8 8006BCE8 00000000 */ nop -/* 06C8EC 8006BCEC 030F6821 */ addu $t5, $t8, $t7 -/* 06C8F0 8006BCF0 91A40004 */ lbu $a0, 4($t5) -/* 06C8F4 8006BCF4 0C01EAC9 */ jal func_8007AB24 -/* 06C8F8 8006BCF8 00000000 */ nop -/* 06C8FC 8006BCFC 8FBF002C */ lw $ra, 0x2c($sp) -/* 06C900 8006BD00 8FB00024 */ lw $s0, 0x24($sp) -/* 06C904 8006BD04 8FB10028 */ lw $s1, 0x28($sp) -/* 06C908 8006BD08 03E00008 */ jr $ra -/* 06C90C 8006BD0C 27BD0060 */ addiu $sp, $sp, 0x60 - +glabel load_level +/* 06BE50 8006B250 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 06BE54 8006B254 AFBF002C */ sw $ra, 0x2c($sp) +/* 06BE58 8006B258 AFB10028 */ sw $s1, 0x28($sp) +/* 06BE5C 8006B25C AFB00024 */ sw $s0, 0x24($sp) +/* 06BE60 8006B260 AFA40060 */ sw $a0, 0x60($sp) +/* 06BE64 8006B264 AFA50064 */ sw $a1, 0x64($sp) +/* 06BE68 8006B268 AFA60068 */ sw $a2, 0x68($sp) +/* 06BE6C 8006B26C 0C01C9C2 */ jal func_80072708 +/* 06BE70 8006B270 AFA7006C */ sw $a3, 0x6c($sp) +/* 06BE74 8006B274 8FAE0070 */ lw $t6, 0x70($sp) +/* 06BE78 8006B278 2402FFFF */ li $v0, -1 +/* 06BE7C 8006B27C 15C20003 */ bne $t6, $v0, .L8006B28C +/* 06BE80 8006B280 8FAF0064 */ lw $t7, 0x64($sp) +/* 06BE84 8006B284 AFA00070 */ sw $zero, 0x70($sp) +/* 06BE88 8006B288 8FAF0064 */ lw $t7, 0x64($sp) +.L8006B28C: +/* 06BE8C 8006B28C 00000000 */ nop +/* 06BE90 8006B290 15E20004 */ bne $t7, $v0, .L8006B2A4 +/* 06BE94 8006B294 24180001 */ li $t8, 1 +/* 06BE98 8006B298 AFB80048 */ sw $t8, 0x48($sp) +/* 06BE9C 8006B29C 10000002 */ b .L8006B2A8 +/* 06BEA0 8006B2A0 AFA00064 */ sw $zero, 0x64($sp) +.L8006B2A4: +/* 06BEA4 8006B2A4 AFA00048 */ sw $zero, 0x48($sp) +.L8006B2A8: +/* 06BEA8 8006B2A8 8FB90064 */ lw $t9, 0x64($sp) +/* 06BEAC 8006B2AC 00000000 */ nop +/* 06BEB0 8006B2B0 17200006 */ bnez $t9, .L8006B2CC +/* 06BEB4 8006B2B4 8FAA0064 */ lw $t2, 0x64($sp) +/* 06BEB8 8006B2B8 0C000C63 */ jal set_sound_channel_count +/* 06BEBC 8006B2BC 24040008 */ li $a0, 8 +/* 06BEC0 8006B2C0 1000000B */ b .L8006B2F0 +/* 06BEC4 8006B2C4 00000000 */ nop +/* 06BEC8 8006B2C8 8FAA0064 */ lw $t2, 0x64($sp) +.L8006B2CC: +/* 06BECC 8006B2CC 24010001 */ li $at, 1 +/* 06BED0 8006B2D0 15410005 */ bne $t2, $at, .L8006B2E8 +/* 06BED4 8006B2D4 00000000 */ nop +/* 06BED8 8006B2D8 0C000C63 */ jal set_sound_channel_count +/* 06BEDC 8006B2DC 2404000C */ li $a0, 12 +/* 06BEE0 8006B2E0 10000003 */ b .L8006B2F0 +/* 06BEE4 8006B2E4 00000000 */ nop +.L8006B2E8: +/* 06BEE8 8006B2E8 0C000C63 */ jal set_sound_channel_count +/* 06BEEC 8006B2EC 24040010 */ li $a0, 16 +.L8006B2F0: +/* 06BEF0 8006B2F0 0C01BAA4 */ jal get_settings +/* 06BEF4 8006B2F4 00000000 */ nop +/* 06BEF8 8006B2F8 AFA20040 */ sw $v0, 0x40($sp) +/* 06BEFC 8006B2FC 0C01DB16 */ jal load_asset_section_from_rom +/* 06BF00 8006B300 24040016 */ li $a0, 22 +/* 06BF04 8006B304 3C098012 */ lui $t1, %hi(gTempAssetTable) # $t1, 0x8012 +/* 06BF08 8006B308 25291160 */ addiu $t1, %lo(gTempAssetTable) # addiu $t1, $t1, 0x1160 +/* 06BF0C 8006B30C AD220000 */ sw $v0, ($t1) +/* 06BF10 8006B310 8C4B0000 */ lw $t3, ($v0) +/* 06BF14 8006B314 2408FFFF */ li $t0, -1 +/* 06BF18 8006B318 00001825 */ move $v1, $zero +/* 06BF1C 8006B31C 110B0005 */ beq $t0, $t3, .L8006B334 +/* 06BF20 8006B320 00403025 */ move $a2, $v0 +.L8006B324: +/* 06BF24 8006B324 8C4C0004 */ lw $t4, 4($v0) +/* 06BF28 8006B328 24630001 */ addiu $v1, $v1, 1 +/* 06BF2C 8006B32C 150CFFFD */ bne $t0, $t4, .L8006B324 +/* 06BF30 8006B330 24420004 */ addiu $v0, $v0, 4 +.L8006B334: +/* 06BF34 8006B334 8FAD0060 */ lw $t5, 0x60($sp) +/* 06BF38 8006B338 2463FFFF */ addiu $v1, $v1, -1 +/* 06BF3C 8006B33C 01A3082A */ slt $at, $t5, $v1 +/* 06BF40 8006B340 14200002 */ bnez $at, .L8006B34C +/* 06BF44 8006B344 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff +/* 06BF48 8006B348 AFA00060 */ sw $zero, 0x60($sp) +.L8006B34C: +/* 06BF4C 8006B34C 8FA30060 */ lw $v1, 0x60($sp) +/* 06BF50 8006B350 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 06BF54 8006B354 00037080 */ sll $t6, $v1, 2 +/* 06BF58 8006B358 00CE1021 */ addu $v0, $a2, $t6 +/* 06BF5C 8006B35C 8C500000 */ lw $s0, ($v0) +/* 06BF60 8006B360 8C4F0004 */ lw $t7, 4($v0) +/* 06BF64 8006B364 AFAE0034 */ sw $t6, 0x34($sp) +/* 06BF68 8006B368 01F02023 */ subu $a0, $t7, $s0 +/* 06BF6C 8006B36C 0C01C327 */ jal allocate_from_main_pool_safe +/* 06BF70 8006B370 AFA40054 */ sw $a0, 0x54($sp) +/* 06BF74 8006B374 3C118012 */ lui $s1, %hi(gCurrentLevelHeader) # $s1, 0x8012 +/* 06BF78 8006B378 26311168 */ addiu $s1, %lo(gCurrentLevelHeader) # addiu $s1, $s1, 0x1168 +/* 06BF7C 8006B37C 8FA70054 */ lw $a3, 0x54($sp) +/* 06BF80 8006B380 AE220000 */ sw $v0, ($s1) +/* 06BF84 8006B384 24040017 */ li $a0, 23 +/* 06BF88 8006B388 00402825 */ move $a1, $v0 +/* 06BF8C 8006B38C 0C01DB9A */ jal load_asset_to_address +/* 06BF90 8006B390 02003025 */ move $a2, $s0 +/* 06BF94 8006B394 3C01800E */ lui $at, %hi(D_800DD330) # $at, 0x800e +/* 06BF98 8006B398 8FB80060 */ lw $t8, 0x60($sp) +/* 06BF9C 8006B39C A020D330 */ sb $zero, %lo(D_800DD330)($at) +/* 06BFA0 8006B3A0 8E390000 */ lw $t9, ($s1) +/* 06BFA4 8006B3A4 AFB80044 */ sw $t8, 0x44($sp) +/* 06BFA8 8006B3A8 832A004C */ lb $t2, 0x4c($t9) +/* 06BFAC 8006B3AC 00000000 */ nop +/* 06BFB0 8006B3B0 15400003 */ bnez $t2, .L8006B3C0 +/* 06BFB4 8006B3B4 00000000 */ nop +/* 06BFB8 8006B3B8 0C01B0B9 */ jal func_8006C2E4 +/* 06BFBC 8006B3BC 00000000 */ nop +.L8006B3C0: +/* 06BFC0 8006B3C0 0C01B0BC */ jal func_8006C2F0 +/* 06BFC4 8006B3C4 00000000 */ nop +/* 06BFC8 8006B3C8 14400099 */ bnez $v0, .L8006B630 +/* 06BFCC 8006B3CC 3C0B800E */ lui $t3, %hi(D_800DD32C) # $t3, 0x800e +/* 06BFD0 8006B3D0 856BD32C */ lh $t3, %lo(D_800DD32C)($t3) +/* 06BFD4 8006B3D4 00000000 */ nop +/* 06BFD8 8006B3D8 15600096 */ bnez $t3, .L8006B634 +/* 06BFDC 8006B3DC 8FAE0044 */ lw $t6, 0x44($sp) +/* 06BFE0 8006B3E0 8E230000 */ lw $v1, ($s1) +/* 06BFE4 8006B3E4 24010008 */ li $at, 8 +/* 06BFE8 8006B3E8 806C004C */ lb $t4, 0x4c($v1) +/* 06BFEC 8006B3EC 8FAD0040 */ lw $t5, 0x40($sp) +/* 06BFF0 8006B3F0 1581003E */ bne $t4, $at, .L8006B4EC +/* 06BFF4 8006B3F4 00000000 */ nop +/* 06BFF8 8006B3F8 8DAE0004 */ lw $t6, 4($t5) +/* 06BFFC 8006B3FC 8FAF0034 */ lw $t7, 0x34($sp) +/* 06C000 8006B400 80640000 */ lb $a0, ($v1) +/* 06C004 8006B404 01CFC021 */ addu $t8, $t6, $t7 +/* 06C008 8006B408 8F100000 */ lw $s0, ($t8) +/* 06C00C 8006B40C 10800004 */ beqz $a0, .L8006B420 +/* 06C010 8006B410 00001025 */ move $v0, $zero +/* 06C014 8006B414 24010005 */ li $at, 5 +/* 06C018 8006B418 14810003 */ bne $a0, $at, .L8006B428 +/* 06C01C 8006B41C 32030001 */ andi $v1, $s0, 1 +.L8006B420: +/* 06C020 8006B420 24020001 */ li $v0, 1 +/* 06C024 8006B424 32030001 */ andi $v1, $s0, 1 +.L8006B428: +/* 06C028 8006B428 10600004 */ beqz $v1, .L8006B43C +/* 06C02C 8006B42C 8FA40060 */ lw $a0, 0x60($sp) +/* 06C030 8006B430 1040002E */ beqz $v0, .L8006B4EC +/* 06C034 8006B434 00000000 */ nop +/* 06C038 8006B438 8FA40060 */ lw $a0, 0x60($sp) +.L8006B43C: +/* 06C03C 8006B43C 8FA50068 */ lw $a1, 0x68($sp) +/* 06C040 8006B440 8FA6006C */ lw $a2, 0x6c($sp) +/* 06C044 8006B444 8FA70070 */ lw $a3, 0x70($sp) +/* 06C048 8006B448 AFA2004C */ sw $v0, 0x4c($sp) +/* 06C04C 8006B44C 0C01B06B */ jal func_8006C1AC +/* 06C050 8006B450 AFA30038 */ sw $v1, 0x38($sp) +/* 06C054 8006B454 8FA50040 */ lw $a1, 0x40($sp) +/* 06C058 8006B458 240B0001 */ li $t3, 1 +/* 06C05C 8006B45C 90AA0048 */ lbu $t2, 0x48($a1) +/* 06C060 8006B460 94B9000C */ lhu $t9, 0xc($a1) +/* 06C064 8006B464 014B6004 */ sllv $t4, $t3, $t2 +/* 06C068 8006B468 8FA2004C */ lw $v0, 0x4c($sp) +/* 06C06C 8006B46C 8FA30038 */ lw $v1, 0x38($sp) +/* 06C070 8006B470 032C6824 */ and $t5, $t9, $t4 +/* 06C074 8006B474 11A00004 */ beqz $t5, .L8006B488 +/* 06C078 8006B478 240F0003 */ li $t7, 3 +/* 06C07C 8006B47C 240E0007 */ li $t6, 7 +/* 06C080 8006B480 10000002 */ b .L8006B48C +/* 06C084 8006B484 AFAE0070 */ sw $t6, 0x70($sp) +.L8006B488: +/* 06C088 8006B488 AFAF0070 */ sw $t7, 0x70($sp) +.L8006B48C: +/* 06C08C 8006B48C 10400006 */ beqz $v0, .L8006B4A8 +/* 06C090 8006B490 00000000 */ nop +/* 06C094 8006B494 10600004 */ beqz $v1, .L8006B4A8 +/* 06C098 8006B498 AFA00070 */ sw $zero, 0x70($sp) +/* 06C09C 8006B49C 24180002 */ li $t8, 2 +/* 06C0A0 8006B4A0 3C01800E */ lui $at, %hi(D_800DD330) # $at, 0x800e +/* 06C0A4 8006B4A4 A038D330 */ sb $t8, %lo(D_800DD330)($at) +.L8006B4A8: +/* 06C0A8 8006B4A8 0C0078A7 */ jal get_misc_asset +/* 06C0AC 8006B4AC 24040043 */ li $a0, 67 +/* 06C0B0 8006B4B0 8FA50060 */ lw $a1, 0x60($sp) +/* 06C0B4 8006B4B4 804B0000 */ lb $t3, ($v0) +/* 06C0B8 8006B4B8 00402025 */ move $a0, $v0 +/* 06C0BC 8006B4BC 10AB0006 */ beq $a1, $t3, .L8006B4D8 +/* 06C0C0 8006B4C0 00008025 */ move $s0, $zero +/* 06C0C4 8006B4C4 00801825 */ move $v1, $a0 +.L8006B4C8: +/* 06C0C8 8006B4C8 806A0002 */ lb $t2, 2($v1) +/* 06C0CC 8006B4CC 26100002 */ addiu $s0, $s0, 2 +/* 06C0D0 8006B4D0 14AAFFFD */ bne $a1, $t2, .L8006B4C8 +/* 06C0D4 8006B4D4 24630002 */ addiu $v1, $v1, 2 +.L8006B4D8: +/* 06C0D8 8006B4D8 0202C821 */ addu $t9, $s0, $v0 +/* 06C0DC 8006B4DC 832C0001 */ lb $t4, 1($t9) +/* 06C0E0 8006B4E0 8FAD0070 */ lw $t5, 0x70($sp) +/* 06C0E4 8006B4E4 AFAC0060 */ sw $t4, 0x60($sp) +/* 06C0E8 8006B4E8 AFAD0068 */ sw $t5, 0x68($sp) +.L8006B4EC: +/* 06C0EC 8006B4EC 8E230000 */ lw $v1, ($s1) +/* 06C0F0 8006B4F0 24010005 */ li $at, 5 +/* 06C0F4 8006B4F4 8065004C */ lb $a1, 0x4c($v1) +/* 06C0F8 8006B4F8 00000000 */ nop +/* 06C0FC 8006B4FC 14A1002C */ bne $a1, $at, .L8006B5B0 +/* 06C100 8006B500 24010005 */ li $at, 5 +/* 06C104 8006B504 80640000 */ lb $a0, ($v1) +/* 06C108 8006B508 00000000 */ nop +/* 06C10C 8006B50C 18800027 */ blez $a0, .L8006B5AC +/* 06C110 8006B510 28810005 */ slti $at, $a0, 5 +/* 06C114 8006B514 10200026 */ beqz $at, .L8006B5B0 +/* 06C118 8006B518 24010005 */ li $at, 5 +/* 06C11C 8006B51C 8FAE0040 */ lw $t6, 0x40($sp) +/* 06C120 8006B520 24180001 */ li $t8, 1 +/* 06C124 8006B524 95CF0008 */ lhu $t7, 8($t6) +/* 06C128 8006B528 00985804 */ sllv $t3, $t8, $a0 +/* 06C12C 8006B52C 01EB5024 */ and $t2, $t7, $t3 +/* 06C130 8006B530 1140001E */ beqz $t2, .L8006B5AC +/* 06C134 8006B534 00808025 */ move $s0, $a0 +/* 06C138 8006B538 8DCD0010 */ lw $t5, 0x10($t6) +/* 06C13C 8006B53C 2499001F */ addiu $t9, $a0, 0x1f +/* 06C140 8006B540 240C4000 */ li $t4, 16384 +/* 06C144 8006B544 032C1004 */ sllv $v0, $t4, $t9 +/* 06C148 8006B548 01A2C024 */ and $t8, $t5, $v0 +/* 06C14C 8006B54C 17000018 */ bnez $t8, .L8006B5B0 +/* 06C150 8006B550 24010005 */ li $at, 5 +/* 06C154 8006B554 8FA40060 */ lw $a0, 0x60($sp) +/* 06C158 8006B558 8FA50068 */ lw $a1, 0x68($sp) +/* 06C15C 8006B55C 8FA6006C */ lw $a2, 0x6c($sp) +/* 06C160 8006B560 8FA70070 */ lw $a3, 0x70($sp) +/* 06C164 8006B564 0C01B06B */ jal func_8006C1AC +/* 06C168 8006B568 AFA20030 */ sw $v0, 0x30($sp) +/* 06C16C 8006B56C 8FA30040 */ lw $v1, 0x40($sp) +/* 06C170 8006B570 8FA20030 */ lw $v0, 0x30($sp) +/* 06C174 8006B574 8C6F0010 */ lw $t7, 0x10($v1) +/* 06C178 8006B578 24040044 */ li $a0, 68 +/* 06C17C 8006B57C 01E25825 */ or $t3, $t7, $v0 +/* 06C180 8006B580 0C0078A7 */ jal get_misc_asset +/* 06C184 8006B584 AC6B0010 */ sw $t3, 0x10($v1) +/* 06C188 8006B588 02025021 */ addu $t2, $s0, $v0 +/* 06C18C 8006B58C 814CFFFF */ lb $t4, -1($t2) +/* 06C190 8006B590 8E230000 */ lw $v1, ($s1) +/* 06C194 8006B594 24190005 */ li $t9, 5 +/* 06C198 8006B598 AFA00068 */ sw $zero, 0x68($sp) +/* 06C19C 8006B59C AFB90070 */ sw $t9, 0x70($sp) +/* 06C1A0 8006B5A0 AFAC0060 */ sw $t4, 0x60($sp) +/* 06C1A4 8006B5A4 8065004C */ lb $a1, 0x4c($v1) +/* 06C1A8 8006B5A8 00000000 */ nop +.L8006B5AC: +/* 06C1AC 8006B5AC 24010005 */ li $at, 5 +.L8006B5B0: +/* 06C1B0 8006B5B0 14A10020 */ bne $a1, $at, .L8006B634 +/* 06C1B4 8006B5B4 8FAE0044 */ lw $t6, 0x44($sp) +/* 06C1B8 8006B5B8 806E0000 */ lb $t6, ($v1) +/* 06C1BC 8006B5BC 8FAD0040 */ lw $t5, 0x40($sp) +/* 06C1C0 8006B5C0 15C0001C */ bnez $t6, .L8006B634 +/* 06C1C4 8006B5C4 8FAE0044 */ lw $t6, 0x44($sp) +/* 06C1C8 8006B5C8 8DB80010 */ lw $t8, 0x10($t5) +/* 06C1CC 8006B5CC 00000000 */ nop +/* 06C1D0 8006B5D0 330F2000 */ andi $t7, $t8, 0x2000 +/* 06C1D4 8006B5D4 15E00017 */ bnez $t7, .L8006B634 +/* 06C1D8 8006B5D8 8FAE0044 */ lw $t6, 0x44($sp) +/* 06C1DC 8006B5DC 91AB0017 */ lbu $t3, 0x17($t5) +/* 06C1E0 8006B5E0 8FA40060 */ lw $a0, 0x60($sp) +/* 06C1E4 8006B5E4 29610004 */ slti $at, $t3, 4 +/* 06C1E8 8006B5E8 14200012 */ bnez $at, .L8006B634 +/* 06C1EC 8006B5EC 8FAE0044 */ lw $t6, 0x44($sp) +/* 06C1F0 8006B5F0 8FA50068 */ lw $a1, 0x68($sp) +/* 06C1F4 8006B5F4 8FA6006C */ lw $a2, 0x6c($sp) +/* 06C1F8 8006B5F8 8FA70070 */ lw $a3, 0x70($sp) +/* 06C1FC 8006B5FC AFA00070 */ sw $zero, 0x70($sp) +/* 06C200 8006B600 0C01B06B */ jal func_8006C1AC +/* 06C204 8006B604 AFA00068 */ sw $zero, 0x68($sp) +/* 06C208 8006B608 8FA20040 */ lw $v0, 0x40($sp) +/* 06C20C 8006B60C 24040044 */ li $a0, 68 +/* 06C210 8006B610 8C4A0010 */ lw $t2, 0x10($v0) +/* 06C214 8006B614 00000000 */ nop +/* 06C218 8006B618 354C2000 */ ori $t4, $t2, 0x2000 +/* 06C21C 8006B61C 0C0078A7 */ jal get_misc_asset +/* 06C220 8006B620 AC4C0010 */ sw $t4, 0x10($v0) +/* 06C224 8006B624 80590004 */ lb $t9, 4($v0) +/* 06C228 8006B628 00000000 */ nop +/* 06C22C 8006B62C AFB90060 */ sw $t9, 0x60($sp) +.L8006B630: +/* 06C230 8006B630 8FAE0044 */ lw $t6, 0x44($sp) +.L8006B634: +/* 06C234 8006B634 8FB80060 */ lw $t8, 0x60($sp) +/* 06C238 8006B638 3C01800E */ lui $at, %hi(D_800DD32C) # $at, 0x800e +/* 06C23C 8006B63C 11D80016 */ beq $t6, $t8, .L8006B698 +/* 06C240 8006B640 A420D32C */ sh $zero, %lo(D_800DD32C)($at) +/* 06C244 8006B644 8E240000 */ lw $a0, ($s1) +/* 06C248 8006B648 00187880 */ sll $t7, $t8, 2 +/* 06C24C 8006B64C 0C01C450 */ jal free_from_memory_pool +/* 06C250 8006B650 AFAF0034 */ sw $t7, 0x34($sp) +/* 06C254 8006B654 3C0D8012 */ lui $t5, %hi(gTempAssetTable) # $t5, 0x8012 +/* 06C258 8006B658 8DAD1160 */ lw $t5, %lo(gTempAssetTable)($t5) +/* 06C25C 8006B65C 8FAB0034 */ lw $t3, 0x34($sp) +/* 06C260 8006B660 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff +/* 06C264 8006B664 01AB1021 */ addu $v0, $t5, $t3 +/* 06C268 8006B668 8C500000 */ lw $s0, ($v0) +/* 06C26C 8006B66C 8C4A0004 */ lw $t2, 4($v0) +/* 06C270 8006B670 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 06C274 8006B674 01502023 */ subu $a0, $t2, $s0 +/* 06C278 8006B678 0C01C327 */ jal allocate_from_main_pool_safe +/* 06C27C 8006B67C AFA40054 */ sw $a0, 0x54($sp) +/* 06C280 8006B680 8FA70054 */ lw $a3, 0x54($sp) +/* 06C284 8006B684 AE220000 */ sw $v0, ($s1) +/* 06C288 8006B688 24040017 */ li $a0, 23 +/* 06C28C 8006B68C 00402825 */ move $a1, $v0 +/* 06C290 8006B690 0C01DB9A */ jal load_asset_to_address +/* 06C294 8006B694 02003025 */ move $a2, $s0 +.L8006B698: +/* 06C298 8006B698 3C048012 */ lui $a0, %hi(gTempAssetTable) # $a0, 0x8012 +/* 06C29C 8006B69C 8C841160 */ lw $a0, %lo(gTempAssetTable)($a0) +/* 06C2A0 8006B6A0 0C01C450 */ jal free_from_memory_pool +/* 06C2A4 8006B6A4 00000000 */ nop +/* 06C2A8 8006B6A8 8E240000 */ lw $a0, ($s1) +/* 06C2AC 8006B6AC 0C01AFF2 */ jal func_8006BFC8 +/* 06C2B0 8006B6B0 24840020 */ addiu $a0, $a0, 0x20 +/* 06C2B4 8006B6B4 0C0032F0 */ jal func_8000CBC0 +/* 06C2B8 8006B6B8 00000000 */ nop +/* 06C2BC 8006B6BC 8FAC0060 */ lw $t4, 0x60($sp) +/* 06C2C0 8006B6C0 3C018012 */ lui $at, %hi(D_80121164) # $at, 0x8012 +/* 06C2C4 8006B6C4 00001825 */ move $v1, $zero +/* 06C2C8 8006B6C8 AC2C1164 */ sw $t4, %lo(D_80121164)($at) +.L8006B6CC: +/* 06C2CC 8006B6CC 8E390000 */ lw $t9, ($s1) +/* 06C2D0 8006B6D0 2401FFFF */ li $at, -1 +/* 06C2D4 8006B6D4 03237021 */ addu $t6, $t9, $v1 +/* 06C2D8 8006B6D8 8DC40074 */ lw $a0, 0x74($t6) +/* 06C2DC 8006B6DC 00000000 */ nop +/* 06C2E0 8006B6E0 10810010 */ beq $a0, $at, .L8006B724 +/* 06C2E4 8006B6E4 00000000 */ nop +/* 06C2E8 8006B6E8 0C0078A7 */ jal get_misc_asset +/* 06C2EC 8006B6EC AFA30038 */ sw $v1, 0x38($sp) +/* 06C2F0 8006B6F0 8FA30038 */ lw $v1, 0x38($sp) +/* 06C2F4 8006B6F4 8E380000 */ lw $t8, ($s1) +/* 06C2F8 8006B6F8 00000000 */ nop +/* 06C2FC 8006B6FC 03037821 */ addu $t7, $t8, $v1 +/* 06C300 8006B700 ADE20074 */ sw $v0, 0x74($t7) +/* 06C304 8006B704 8E2D0000 */ lw $t5, ($s1) +/* 06C308 8006B708 00000000 */ nop +/* 06C30C 8006B70C 01A35821 */ addu $t3, $t5, $v1 +/* 06C310 8006B710 8D640074 */ lw $a0, 0x74($t3) +/* 06C314 8006B714 0C01FC7A */ jal func_8007F1E8 +/* 06C318 8006B718 00000000 */ nop +/* 06C31C 8006B71C 8FA30038 */ lw $v1, 0x38($sp) +/* 06C320 8006B720 00000000 */ nop +.L8006B724: +/* 06C324 8006B724 24630004 */ addiu $v1, $v1, 4 +/* 06C328 8006B728 2861001C */ slti $at, $v1, 0x1c +/* 06C32C 8006B72C 1420FFE7 */ bnez $at, .L8006B6CC +/* 06C330 8006B730 00000000 */ nop +/* 06C334 8006B734 8FAA0070 */ lw $t2, 0x70($sp) +/* 06C338 8006B738 24010064 */ li $at, 100 +/* 06C33C 8006B73C 15410019 */ bne $t2, $at, .L8006B7A4 +/* 06C340 8006B740 00000000 */ nop +/* 06C344 8006B744 0C02658B */ jal get_trophy_race_world_id +/* 06C348 8006B748 00000000 */ nop +/* 06C34C 8006B74C 10400009 */ beqz $v0, .L8006B774 +/* 06C350 8006B750 00000000 */ nop +/* 06C354 8006B754 8E2C0000 */ lw $t4, ($s1) +/* 06C358 8006B758 00000000 */ nop +/* 06C35C 8006B75C 8199004C */ lb $t9, 0x4c($t4) +/* 06C360 8006B760 00000000 */ nop +/* 06C364 8006B764 1720000F */ bnez $t9, .L8006B7A4 +/* 06C368 8006B768 00000000 */ nop +/* 06C36C 8006B76C 1000000D */ b .L8006B7A4 +/* 06C370 8006B770 AFA00070 */ sw $zero, 0x70($sp) +.L8006B774: +/* 06C374 8006B774 0C0270B4 */ jal is_in_tracks_mode +/* 06C378 8006B778 00000000 */ nop +/* 06C37C 8006B77C 24010001 */ li $at, 1 +/* 06C380 8006B780 14410008 */ bne $v0, $at, .L8006B7A4 +/* 06C384 8006B784 00000000 */ nop +/* 06C388 8006B788 8E2E0000 */ lw $t6, ($s1) +/* 06C38C 8006B78C 00000000 */ nop +/* 06C390 8006B790 81D8004C */ lb $t8, 0x4c($t6) +/* 06C394 8006B794 00000000 */ nop +/* 06C398 8006B798 17000002 */ bnez $t8, .L8006B7A4 +/* 06C39C 8006B79C 00000000 */ nop +/* 06C3A0 8006B7A0 AFA00070 */ sw $zero, 0x70($sp) +.L8006B7A4: +/* 06C3A4 8006B7A4 8E230000 */ lw $v1, ($s1) +/* 06C3A8 8006B7A8 00000000 */ nop +/* 06C3AC 8006B7AC 8065004C */ lb $a1, 0x4c($v1) +/* 06C3B0 8006B7B0 00000000 */ nop +/* 06C3B4 8006B7B4 10A00002 */ beqz $a1, .L8006B7C0 +/* 06C3B8 8006B7B8 24010008 */ li $at, 8 +/* 06C3BC 8006B7BC 14A10004 */ bne $a1, $at, .L8006B7D0 +.L8006B7C0: +/* 06C3C0 8006B7C0 240F0001 */ li $t7, 1 +/* 06C3C4 8006B7C4 3C01800E */ lui $at, %hi(D_800DD31C) # $at, 0x800e +/* 06C3C8 8006B7C8 10000003 */ b .L8006B7D8 +/* 06C3CC 8006B7CC AC2FD31C */ sw $t7, %lo(D_800DD31C)($at) +.L8006B7D0: +/* 06C3D0 8006B7D0 3C01800E */ lui $at, %hi(D_800DD31C) # $at, 0x800e +/* 06C3D4 8006B7D4 AC20D31C */ sw $zero, %lo(D_800DD31C)($at) +.L8006B7D8: +/* 06C3D8 8006B7D8 8FAD0048 */ lw $t5, 0x48($sp) +/* 06C3DC 8006B7DC 00000000 */ nop +/* 06C3E0 8006B7E0 11A00008 */ beqz $t5, .L8006B804 +/* 06C3E4 8006B7E4 00000000 */ nop +/* 06C3E8 8006B7E8 806B004C */ lb $t3, 0x4c($v1) +/* 06C3EC 8006B7EC 24010007 */ li $at, 7 +/* 06C3F0 8006B7F0 11610004 */ beq $t3, $at, .L8006B804 +/* 06C3F4 8006B7F4 240A0006 */ li $t2, 6 +/* 06C3F8 8006B7F8 A06A004C */ sb $t2, 0x4c($v1) +/* 06C3FC 8006B7FC 8E230000 */ lw $v1, ($s1) +/* 06C400 8006B800 00000000 */ nop +.L8006B804: +/* 06C404 8006B804 906400B3 */ lbu $a0, 0xb3($v1) +/* 06C408 8006B808 0C0002F8 */ jal set_music_player_voice_limit +/* 06C40C 8006B80C 00000000 */ nop +/* 06C410 8006B810 0C00032F */ jal func_80000CBC +/* 06C414 8006B814 00000000 */ nop +/* 06C418 8006B818 0C00C6EE */ jal func_80031BB8 +/* 06C41C 8006B81C 24040020 */ li $a0, 32 +/* 06C420 8006B820 8FAC006C */ lw $t4, 0x6c($sp) +/* 06C424 8006B824 00008025 */ move $s0, $zero +/* 06C428 8006B828 05800008 */ bltz $t4, .L8006B84C +/* 06C42C 8006B82C 29810003 */ slti $at, $t4, 3 +/* 06C430 8006B830 10200006 */ beqz $at, .L8006B84C +/* 06C434 8006B834 00000000 */ nop +/* 06C438 8006B838 8E390000 */ lw $t9, ($s1) +/* 06C43C 8006B83C 00000000 */ nop +/* 06C440 8006B840 032C7021 */ addu $t6, $t9, $t4 +/* 06C444 8006B844 81D0004F */ lb $s0, 0x4f($t6) +/* 06C448 8006B848 00000000 */ nop +.L8006B84C: +/* 06C44C 8006B84C 0C005F9D */ jal func_80017E74 +/* 06C450 8006B850 02002025 */ move $a0, $s0 +/* 06C454 8006B854 8E380000 */ lw $t8, ($s1) +/* 06C458 8006B858 8FA30040 */ lw $v1, 0x40($sp) +/* 06C45C 8006B85C 83040000 */ lb $a0, ($t8) +/* 06C460 8006B860 2401FFFF */ li $at, -1 +/* 06C464 8006B864 90700048 */ lbu $s0, 0x48($v1) +/* 06C468 8006B868 10810003 */ beq $a0, $at, .L8006B878 +/* 06C46C 8006B86C 8FAF0060 */ lw $t7, 0x60($sp) +/* 06C470 8006B870 A0640048 */ sb $a0, 0x48($v1) +/* 06C474 8006B874 8FAF0060 */ lw $t7, 0x60($sp) +.L8006B878: +/* 06C478 8006B878 1600000A */ bnez $s0, .L8006B8A4 +/* 06C47C 8006B87C A06F0049 */ sb $t7, 0x49($v1) +/* 06C480 8006B880 906D0048 */ lbu $t5, 0x48($v1) +/* 06C484 8006B884 00000000 */ nop +/* 06C488 8006B888 19A00006 */ blez $t5, .L8006B8A4 +/* 06C48C 8006B88C 00000000 */ nop +/* 06C490 8006B890 0C01B6CB */ jal get_level_default_vehicle +/* 06C494 8006B894 00000000 */ nop +/* 06C498 8006B898 3C01800E */ lui $at, %hi(D_800DD314) # $at, 0x800e +/* 06C49C 8006B89C 8FA30040 */ lw $v1, 0x40($sp) +/* 06C4A0 8006B8A0 A022D314 */ sb $v0, %lo(D_800DD314)($at) +.L8006B8A4: +/* 06C4A4 8006B8A4 906B0048 */ lbu $t3, 0x48($v1) +/* 06C4A8 8006B8A8 00000000 */ nop +/* 06C4AC 8006B8AC 15600009 */ bnez $t3, .L8006B8D4 +/* 06C4B0 8006B8B0 8FA4006C */ lw $a0, 0x6c($sp) +/* 06C4B4 8006B8B4 1A000006 */ blez $s0, .L8006B8D0 +/* 06C4B8 8006B8B8 3C02800E */ lui $v0, %hi(D_800DD314) # $v0, 0x800e +/* 06C4BC 8006B8BC 8042D314 */ lb $v0, %lo(D_800DD314)($v0) +/* 06C4C0 8006B8C0 2401FFFF */ li $at, -1 +/* 06C4C4 8006B8C4 10410003 */ beq $v0, $at, .L8006B8D4 +/* 06C4C8 8006B8C8 8FA4006C */ lw $a0, 0x6c($sp) +/* 06C4CC 8006B8CC AFA2006C */ sw $v0, 0x6c($sp) +.L8006B8D0: +/* 06C4D0 8006B8D0 8FA4006C */ lw $a0, 0x6c($sp) +.L8006B8D4: +/* 06C4D4 8006B8D4 0C01B6C8 */ jal func_8006DB20 +/* 06C4D8 8006B8D8 00000000 */ nop +/* 06C4DC 8006B8DC 8E2A0000 */ lw $t2, ($s1) +/* 06C4E0 8006B8E0 24010005 */ li $at, 5 +/* 06C4E4 8006B8E4 8159004C */ lb $t9, 0x4c($t2) +/* 06C4E8 8006B8E8 00000000 */ nop +/* 06C4EC 8006B8EC 1721003C */ bne $t9, $at, .L8006B9E0 +/* 06C4F0 8006B8F0 00000000 */ nop +/* 06C4F4 8006B8F4 8FA50040 */ lw $a1, 0x40($sp) +/* 06C4F8 8006B8F8 240E0008 */ li $t6, 8 +/* 06C4FC 8006B8FC 90A40048 */ lbu $a0, 0x48($a1) +/* 06C500 8006B900 24010005 */ li $at, 5 +/* 06C504 8006B904 18800036 */ blez $a0, .L8006B9E0 +/* 06C508 8006B908 248C001F */ addiu $t4, $a0, 0x1f +/* 06C50C 8006B90C 14810015 */ bne $a0, $at, .L8006B964 +/* 06C510 8006B910 018E8004 */ sllv $s0, $t6, $t4 +/* 06C514 8006B914 8CB80000 */ lw $t8, ($a1) +/* 06C518 8006B918 00000000 */ nop +/* 06C51C 8006B91C 870F0000 */ lh $t7, ($t8) +/* 06C520 8006B920 00000000 */ nop +/* 06C524 8006B924 29E1002F */ slti $at, $t7, 0x2f +/* 06C528 8006B928 1420002D */ bnez $at, .L8006B9E0 +/* 06C52C 8006B92C 00000000 */ nop +/* 06C530 8006B930 90AD0016 */ lbu $t5, 0x16($a1) +/* 06C534 8006B934 00000000 */ nop +/* 06C538 8006B938 29A10004 */ slti $at, $t5, 4 +/* 06C53C 8006B93C 14200028 */ bnez $at, .L8006B9E0 +/* 06C540 8006B940 00000000 */ nop +/* 06C544 8006B944 8CA20010 */ lw $v0, 0x10($a1) +/* 06C548 8006B948 24190005 */ li $t9, 5 +/* 06C54C 8006B94C 00505824 */ and $t3, $v0, $s0 +/* 06C550 8006B950 15600023 */ bnez $t3, .L8006B9E0 +/* 06C554 8006B954 00505025 */ or $t2, $v0, $s0 +/* 06C558 8006B958 ACAA0010 */ sw $t2, 0x10($a1) +/* 06C55C 8006B95C 10000020 */ b .L8006B9E0 +/* 06C560 8006B960 AFB90070 */ sw $t9, 0x70($sp) +.L8006B964: +/* 06C564 8006B964 8CAE0000 */ lw $t6, ($a1) +/* 06C568 8006B968 00046040 */ sll $t4, $a0, 1 +/* 06C56C 8006B96C 01CCC021 */ addu $t8, $t6, $t4 +/* 06C570 8006B970 87030000 */ lh $v1, ($t8) +/* 06C574 8006B974 00000000 */ nop +/* 06C578 8006B978 28610004 */ slti $at, $v1, 4 +/* 06C57C 8006B97C 1420000F */ bnez $at, .L8006B9BC +/* 06C580 8006B980 28610008 */ slti $at, $v1, 8 +/* 06C584 8006B984 8CA20010 */ lw $v0, 0x10($a1) +/* 06C588 8006B988 240B0005 */ li $t3, 5 +/* 06C58C 8006B98C 00507824 */ and $t7, $v0, $s0 +/* 06C590 8006B990 15E00009 */ bnez $t7, .L8006B9B8 +/* 06C594 8006B994 00506825 */ or $t5, $v0, $s0 +/* 06C598 8006B998 ACAD0010 */ sw $t5, 0x10($a1) +/* 06C59C 8006B99C AFAB0070 */ sw $t3, 0x70($sp) +/* 06C5A0 8006B9A0 90B90048 */ lbu $t9, 0x48($a1) +/* 06C5A4 8006B9A4 8CAA0000 */ lw $t2, ($a1) +/* 06C5A8 8006B9A8 00197040 */ sll $t6, $t9, 1 +/* 06C5AC 8006B9AC 014E6021 */ addu $t4, $t2, $t6 +/* 06C5B0 8006B9B0 85830000 */ lh $v1, ($t4) +/* 06C5B4 8006B9B4 00000000 */ nop +.L8006B9B8: +/* 06C5B8 8006B9B8 28610008 */ slti $at, $v1, 8 +.L8006B9BC: +/* 06C5BC 8006B9BC 14200008 */ bnez $at, .L8006B9E0 +/* 06C5C0 8006B9C0 0010C140 */ sll $t8, $s0, 5 +/* 06C5C4 8006B9C4 8CA20010 */ lw $v0, 0x10($a1) +/* 06C5C8 8006B9C8 240B0005 */ li $t3, 5 +/* 06C5CC 8006B9CC 00587824 */ and $t7, $v0, $t8 +/* 06C5D0 8006B9D0 15E00003 */ bnez $t7, .L8006B9E0 +/* 06C5D4 8006B9D4 00586825 */ or $t5, $v0, $t8 +/* 06C5D8 8006B9D8 ACAD0010 */ sw $t5, 0x10($a1) +/* 06C5DC 8006B9DC AFAB0070 */ sw $t3, 0x70($sp) +.L8006B9E0: +/* 06C5E0 8006B9E0 8E390000 */ lw $t9, ($s1) +/* 06C5E4 8006B9E4 8FAA0064 */ lw $t2, 0x64($sp) +/* 06C5E8 8006B9E8 8325004C */ lb $a1, 0x4c($t9) +/* 06C5EC 8006B9EC 11400004 */ beqz $t2, .L8006BA00 +/* 06C5F0 8006B9F0 00000000 */ nop +/* 06C5F4 8006B9F4 14A00002 */ bnez $a1, .L8006BA00 +/* 06C5F8 8006B9F8 240E0064 */ li $t6, 100 +/* 06C5FC 8006B9FC AFAE0070 */ sw $t6, 0x70($sp) +.L8006BA00: +/* 06C600 8006BA00 10A00003 */ beqz $a1, .L8006BA10 +/* 06C604 8006BA04 30AC0040 */ andi $t4, $a1, 0x40 +/* 06C608 8006BA08 1180000B */ beqz $t4, .L8006BA38 +/* 06C60C 8006BA0C 00000000 */ nop +.L8006BA10: +/* 06C610 8006BA10 0C027B20 */ jal is_in_two_player_adventure +/* 06C614 8006BA14 00000000 */ nop +/* 06C618 8006BA18 10400007 */ beqz $v0, .L8006BA38 +/* 06C61C 8006BA1C 24180001 */ li $t8, 1 +/* 06C620 8006BA20 3C01800E */ lui $at, %hi(D_800DD318) # $at, 0x800e +/* 06C624 8006BA24 A038D318 */ sb $t8, %lo(D_800DD318)($at) +/* 06C628 8006BA28 8E230000 */ lw $v1, ($s1) +/* 06C62C 8006BA2C 240F0064 */ li $t7, 100 +/* 06C630 8006BA30 10000005 */ b .L8006BA48 +/* 06C634 8006BA34 AFAF0070 */ sw $t7, 0x70($sp) +.L8006BA38: +/* 06C638 8006BA38 3C01800E */ lui $at, %hi(D_800DD318) # $at, 0x800e +/* 06C63C 8006BA3C A020D318 */ sb $zero, %lo(D_800DD318)($at) +/* 06C640 8006BA40 8E230000 */ lw $v1, ($s1) +/* 06C644 8006BA44 00000000 */ nop +.L8006BA48: +/* 06C648 8006BA48 806D004C */ lb $t5, 0x4c($v1) +/* 06C64C 8006BA4C 00000000 */ nop +/* 06C650 8006BA50 15A0000B */ bnez $t5, .L8006BA80 +/* 06C654 8006BA54 8FA40070 */ lw $a0, 0x70($sp) +/* 06C658 8006BA58 8FAB0048 */ lw $t3, 0x48($sp) +/* 06C65C 8006BA5C 00000000 */ nop +/* 06C660 8006BA60 15600007 */ bnez $t3, .L8006BA80 +/* 06C664 8006BA64 8FA40070 */ lw $a0, 0x70($sp) +/* 06C668 8006BA68 0C003932 */ jal is_time_trial_enabled +/* 06C66C 8006BA6C 00000000 */ nop +/* 06C670 8006BA70 10400002 */ beqz $v0, .L8006BA7C +/* 06C674 8006BA74 24190064 */ li $t9, 100 +/* 06C678 8006BA78 AFB90070 */ sw $t9, 0x70($sp) +.L8006BA7C: +/* 06C67C 8006BA7C 8FA40070 */ lw $a0, 0x70($sp) +.L8006BA80: +/* 06C680 8006BA80 0C007914 */ jal func_8001E450 +/* 06C684 8006BA84 00000000 */ nop +/* 06C688 8006BA88 8E230000 */ lw $v1, ($s1) +/* 06C68C 8006BA8C 8FAA0068 */ lw $t2, 0x68($sp) +/* 06C690 8006BA90 84640034 */ lh $a0, 0x34($v1) +/* 06C694 8006BA94 84650038 */ lh $a1, 0x38($v1) +/* 06C698 8006BA98 AFAA0010 */ sw $t2, 0x10($sp) +/* 06C69C 8006BA9C 846E0036 */ lh $t6, 0x36($v1) +/* 06C6A0 8006BAA0 8FA60064 */ lw $a2, 0x64($sp) +/* 06C6A4 8006BAA4 AFAE0014 */ sw $t6, 0x14($sp) +/* 06C6A8 8006BAA8 846C00BA */ lh $t4, 0xba($v1) +/* 06C6AC 8006BAAC 8FA7006C */ lw $a3, 0x6c($sp) +/* 06C6B0 8006BAB0 0C00927C */ jal func_800249F0 +/* 06C6B4 8006BAB4 AFAC0018 */ sw $t4, 0x18($sp) +/* 06C6B8 8006BAB8 8E230000 */ lw $v1, ($s1) +/* 06C6BC 8006BABC 00000000 */ nop +/* 06C6C0 8006BAC0 8478003A */ lh $t8, 0x3a($v1) +/* 06C6C4 8006BAC4 00000000 */ nop +/* 06C6C8 8006BAC8 1700001A */ bnez $t8, .L8006BB34 +/* 06C6CC 8006BACC 00008025 */ move $s0, $zero +/* 06C6D0 8006BAD0 846F003C */ lh $t7, 0x3c($v1) +/* 06C6D4 8006BAD4 00000000 */ nop +/* 06C6D8 8006BAD8 15E00016 */ bnez $t7, .L8006BB34 +/* 06C6DC 8006BADC 00008025 */ move $s0, $zero +/* 06C6E0 8006BAE0 846D003E */ lh $t5, 0x3e($v1) +/* 06C6E4 8006BAE4 00000000 */ nop +/* 06C6E8 8006BAE8 15A00012 */ bnez $t5, .L8006BB34 +/* 06C6EC 8006BAEC 00008025 */ move $s0, $zero +/* 06C6F0 8006BAF0 846B0040 */ lh $t3, 0x40($v1) +/* 06C6F4 8006BAF4 00000000 */ nop +/* 06C6F8 8006BAF8 1560000E */ bnez $t3, .L8006BB34 +/* 06C6FC 8006BAFC 00008025 */ move $s0, $zero +/* 06C700 8006BB00 84790042 */ lh $t9, 0x42($v1) +/* 06C704 8006BB04 00008025 */ move $s0, $zero +/* 06C708 8006BB08 17200009 */ bnez $t9, .L8006BB30 +/* 06C70C 8006BB0C 00000000 */ nop +.L8006BB10: +/* 06C710 8006BB10 0C00C1EF */ jal func_800307BC +/* 06C714 8006BB14 02002025 */ move $a0, $s0 +/* 06C718 8006BB18 26100001 */ addiu $s0, $s0, 1 +/* 06C71C 8006BB1C 24010004 */ li $at, 4 +/* 06C720 8006BB20 1601FFFB */ bne $s0, $at, .L8006BB10 +/* 06C724 8006BB24 00000000 */ nop +/* 06C728 8006BB28 10000010 */ b .L8006BB6C +/* 06C72C 8006BB2C 00000000 */ nop +.L8006BB30: +/* 06C730 8006BB30 00008025 */ move $s0, $zero +.L8006BB34: +/* 06C734 8006BB34 8E230000 */ lw $v1, ($s1) +/* 06C738 8006BB38 02002025 */ move $a0, $s0 +/* 06C73C 8006BB3C 846A0040 */ lh $t2, 0x40($v1) +/* 06C740 8006BB40 8465003A */ lh $a1, 0x3a($v1) +/* 06C744 8006BB44 8466003C */ lh $a2, 0x3c($v1) +/* 06C748 8006BB48 9067003F */ lbu $a3, 0x3f($v1) +/* 06C74C 8006BB4C AFAA0010 */ sw $t2, 0x10($sp) +/* 06C750 8006BB50 846E0042 */ lh $t6, 0x42($v1) +/* 06C754 8006BB54 0C00C199 */ jal func_80030664 +/* 06C758 8006BB58 AFAE0014 */ sw $t6, 0x14($sp) +/* 06C75C 8006BB5C 26100001 */ addiu $s0, $s0, 1 +/* 06C760 8006BB60 24010004 */ li $at, 4 +/* 06C764 8006BB64 1601FFF3 */ bne $s0, $at, .L8006BB34 +/* 06C768 8006BB68 00000000 */ nop +.L8006BB6C: +/* 06C76C 8006BB6C 0C01BAA4 */ jal get_settings +/* 06C770 8006BB70 00000000 */ nop +/* 06C774 8006BB74 8E2C0000 */ lw $t4, ($s1) +/* 06C778 8006BB78 2401FFFF */ li $at, -1 +/* 06C77C 8006BB7C 81840000 */ lb $a0, ($t4) +/* 06C780 8006BB80 00000000 */ nop +/* 06C784 8006BB84 10810003 */ beq $a0, $at, .L8006BB94 +/* 06C788 8006BB88 8FB80060 */ lw $t8, 0x60($sp) +/* 06C78C 8006BB8C A0440048 */ sb $a0, 0x48($v0) +/* 06C790 8006BB90 8FB80060 */ lw $t8, 0x60($sp) +.L8006BB94: +/* 06C794 8006BB94 00000000 */ nop +/* 06C798 8006BB98 A0580049 */ sb $t8, 0x49($v0) +/* 06C79C 8006BB9C 8E230000 */ lw $v1, ($s1) +/* 06C7A0 8006BBA0 00000000 */ nop +/* 06C7A4 8006BBA4 84650090 */ lh $a1, 0x90($v1) +/* 06C7A8 8006BBA8 00000000 */ nop +/* 06C7AC 8006BBAC 18A0001C */ blez $a1, .L8006BC20 +/* 06C7B0 8006BBB0 00000000 */ nop +/* 06C7B4 8006BBB4 846B009A */ lh $t3, 0x9a($v1) +/* 06C7B8 8006BBB8 84660096 */ lh $a2, 0x96($v1) +/* 06C7BC 8006BBBC 84670098 */ lh $a3, 0x98($v1) +/* 06C7C0 8006BBC0 84640092 */ lh $a0, 0x92($v1) +/* 06C7C4 8006BBC4 000BCA00 */ sll $t9, $t3, 8 +/* 06C7C8 8006BBC8 AFB90010 */ sw $t9, 0x10($sp) +/* 06C7CC 8006BBCC 906A0094 */ lbu $t2, 0x94($v1) +/* 06C7D0 8006BBD0 24020101 */ li $v0, 257 +/* 06C7D4 8006BBD4 01420019 */ multu $t2, $v0 +/* 06C7D8 8006BBD8 00067A00 */ sll $t7, $a2, 8 +/* 06C7DC 8006BBDC 00076A00 */ sll $t5, $a3, 8 +/* 06C7E0 8006BBE0 01A03825 */ move $a3, $t5 +/* 06C7E4 8006BBE4 01E03025 */ move $a2, $t7 +/* 06C7E8 8006BBE8 00007012 */ mflo $t6 +/* 06C7EC 8006BBEC AFAE0014 */ sw $t6, 0x14($sp) +/* 06C7F0 8006BBF0 906C0095 */ lbu $t4, 0x95($v1) +/* 06C7F4 8006BBF4 00000000 */ nop +/* 06C7F8 8006BBF8 01820019 */ multu $t4, $v0 +/* 06C7FC 8006BBFC 0000C012 */ mflo $t8 +/* 06C800 8006BC00 AFB80018 */ sw $t8, 0x18($sp) +/* 06C804 8006BC04 0C02AD2A */ jal func_800AB4A8 +/* 06C808 8006BC08 00000000 */ nop +/* 06C80C 8006BC0C 2404FFFF */ li $a0, -1 +/* 06C810 8006BC10 0C02ACC2 */ jal func_800AB308 +/* 06C814 8006BC14 2405FE00 */ li $a1, -512 +/* 06C818 8006BC18 8E230000 */ lw $v1, ($s1) +/* 06C81C 8006BC1C 00000000 */ nop +.L8006BC20: +/* 06C820 8006BC20 806F0049 */ lb $t7, 0x49($v1) +/* 06C824 8006BC24 2401FFFF */ li $at, -1 +/* 06C828 8006BC28 15E1000F */ bne $t7, $at, .L8006BC68 +/* 06C82C 8006BC2C 00000000 */ nop +/* 06C830 8006BC30 8C6400A4 */ lw $a0, 0xa4($v1) +/* 06C834 8006BC34 0C01EB9D */ jal load_texture +/* 06C838 8006BC38 00000000 */ nop +/* 06C83C 8006BC3C 8E2D0000 */ lw $t5, ($s1) +/* 06C840 8006BC40 00000000 */ nop +/* 06C844 8006BC44 ADA200A4 */ sw $v0, 0xa4($t5) +/* 06C848 8006BC48 8E2B0000 */ lw $t3, ($s1) +/* 06C84C 8006BC4C 00000000 */ nop +/* 06C850 8006BC50 A56000A8 */ sh $zero, 0xa8($t3) +/* 06C854 8006BC54 8E390000 */ lw $t9, ($s1) +/* 06C858 8006BC58 00000000 */ nop +/* 06C85C 8006BC5C A72000AA */ sh $zero, 0xaa($t9) +/* 06C860 8006BC60 8E230000 */ lw $v1, ($s1) +/* 06C864 8006BC64 00000000 */ nop +.L8006BC68: +/* 06C868 8006BC68 8C6400AC */ lw $a0, 0xac($v1) +/* 06C86C 8006BC6C 2401FFFF */ li $at, -1 +/* 06C870 8006BC70 1081000D */ beq $a0, $at, .L8006BCA8 +/* 06C874 8006BC74 00000000 */ nop +/* 06C878 8006BC78 0C0078A7 */ jal get_misc_asset +/* 06C87C 8006BC7C 00000000 */ nop +/* 06C880 8006BC80 8E2A0000 */ lw $t2, ($s1) +/* 06C884 8006BC84 00000000 */ nop +/* 06C888 8006BC88 AD4200AC */ sw $v0, 0xac($t2) +/* 06C88C 8006BC8C 8E2E0000 */ lw $t6, ($s1) +/* 06C890 8006BC90 00000000 */ nop +/* 06C894 8006BC94 8DC400AC */ lw $a0, 0xac($t6) +/* 06C898 8006BC98 0C01FD05 */ jal init_pulsating_light_data +/* 06C89C 8006BC9C 00000000 */ nop +/* 06C8A0 8006BCA0 8E230000 */ lw $v1, ($s1) +/* 06C8A4 8006BCA4 00000000 */ nop +.L8006BCA8: +/* 06C8A8 8006BCA8 806C009C */ lb $t4, 0x9c($v1) +/* 06C8AC 8006BCAC 00000000 */ nop +/* 06C8B0 8006BCB0 448C2000 */ mtc1 $t4, $f4 +/* 06C8B4 8006BCB4 0C01983B */ jal update_camera_fov +/* 06C8B8 8006BCB8 46802320 */ cvt.s.w $f12, $f4 +/* 06C8BC 8006BCBC 8E230000 */ lw $v1, ($s1) +/* 06C8C0 8006BCC0 00000000 */ nop +/* 06C8C4 8006BCC4 9064009D */ lbu $a0, 0x9d($v1) +/* 06C8C8 8006BCC8 9065009E */ lbu $a1, 0x9e($v1) +/* 06C8CC 8006BCCC 9066009F */ lbu $a2, 0x9f($v1) +/* 06C8D0 8006BCD0 0C01DECD */ jal set_background_prim_colour +/* 06C8D4 8006BCD4 00000000 */ nop +/* 06C8D8 8006BCD8 0C01EA5D */ jal reset_video_delta_time +/* 06C8DC 8006BCDC 00000000 */ nop +/* 06C8E0 8006BCE0 8E380000 */ lw $t8, ($s1) +/* 06C8E4 8006BCE4 8FAF0064 */ lw $t7, 0x64($sp) +/* 06C8E8 8006BCE8 00000000 */ nop +/* 06C8EC 8006BCEC 030F6821 */ addu $t5, $t8, $t7 +/* 06C8F0 8006BCF0 91A40004 */ lbu $a0, 4($t5) +/* 06C8F4 8006BCF4 0C01EAC9 */ jal func_8007AB24 +/* 06C8F8 8006BCF8 00000000 */ nop +/* 06C8FC 8006BCFC 8FBF002C */ lw $ra, 0x2c($sp) +/* 06C900 8006BD00 8FB00024 */ lw $s0, 0x24($sp) +/* 06C904 8006BD04 8FB10028 */ lw $s1, 0x28($sp) +/* 06C908 8006BD08 03E00008 */ jr $ra +/* 06C90C 8006BD0C 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/menu/func_80084854.s b/asm/non_matchings/menu/func_80084854.s index e6ee8214..170050be 100644 --- a/asm/non_matchings/menu/func_80084854.s +++ b/asm/non_matchings/menu/func_80084854.s @@ -1,280 +1,280 @@ -glabel func_80084854 -/* 085454 80084854 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 085458 80084858 3C058012 */ lui $a1, %hi(gMusicTestString) # $a1, 0x8012 -/* 08545C 8008485C 24A569E0 */ addiu $a1, %lo(gMusicTestString) # addiu $a1, $a1, 0x69e0 -/* 085460 80084860 8CA30000 */ lw $v1, ($a1) -/* 085464 80084864 AFBF003C */ sw $ra, 0x3c($sp) -/* 085468 80084868 AFB30038 */ sw $s3, 0x38($sp) -/* 08546C 8008486C AFB20034 */ sw $s2, 0x34($sp) -/* 085470 80084870 AFB10030 */ sw $s1, 0x30($sp) -/* 085474 80084874 AFB0002C */ sw $s0, 0x2c($sp) -/* 085478 80084878 AFA40058 */ sw $a0, 0x58($sp) -/* 08547C 8008487C 906E0000 */ lbu $t6, ($v1) -/* 085480 80084880 3C13800E */ lui $s3, %hi(D_800DFABC) # $s3, 0x800e -/* 085484 80084884 8E73FABC */ lw $s3, %lo(D_800DFABC)($s3) -/* 085488 80084888 29C10030 */ slti $at, $t6, 0x30 -/* 08548C 8008488C 14200006 */ bnez $at, .L800848A8 -/* 085490 80084890 00008825 */ move $s1, $zero -/* 085494 80084894 906F0000 */ lbu $t7, ($v1) -/* 085498 80084898 00000000 */ nop -/* 08549C 8008489C 29E1003A */ slti $at, $t7, 0x3a -/* 0854A0 800848A0 1420000C */ bnez $at, .L800848D4 -/* 0854A4 800848A4 2404000A */ li $a0, 10 -.L800848A8: -/* 0854A8 800848A8 26310001 */ addiu $s1, $s1, 1 -/* 0854AC 800848AC 0071C021 */ addu $t8, $v1, $s1 -/* 0854B0 800848B0 93020000 */ lbu $v0, ($t8) -/* 0854B4 800848B4 00000000 */ nop -/* 0854B8 800848B8 28410030 */ slti $at, $v0, 0x30 -/* 0854BC 800848BC 1420FFFA */ bnez $at, .L800848A8 -/* 0854C0 800848C0 00000000 */ nop -/* 0854C4 800848C4 2841003A */ slti $at, $v0, 0x3a -/* 0854C8 800848C8 1020FFF7 */ beqz $at, .L800848A8 -/* 0854CC 800848CC 00000000 */ nop -/* 0854D0 800848D0 2404000A */ li $a0, 10 -.L800848D4: -/* 0854D4 800848D4 0264001A */ div $zero, $s3, $a0 -/* 0854D8 800848D8 00714021 */ addu $t0, $v1, $s1 -/* 0854DC 800848DC 14800002 */ bnez $a0, .L800848E8 -/* 0854E0 800848E0 00000000 */ nop -/* 0854E4 800848E4 0007000D */ break 7 -.L800848E8: -/* 0854E8 800848E8 2401FFFF */ li $at, -1 -/* 0854EC 800848EC 14810004 */ bne $a0, $at, .L80084900 -/* 0854F0 800848F0 3C018000 */ lui $at, 0x8000 -/* 0854F4 800848F4 16610002 */ bne $s3, $at, .L80084900 -/* 0854F8 800848F8 00000000 */ nop -/* 0854FC 800848FC 0006000D */ break 6 -.L80084900: -/* 085500 80084900 26310001 */ addiu $s1, $s1, 1 -/* 085504 80084904 3C128012 */ lui $s2, %hi(sMenuCurrDisplayList) # $s2, 0x8012 -/* 085508 80084908 265263A0 */ addiu $s2, %lo(sMenuCurrDisplayList) # addiu $s2, $s2, 0x63a0 -/* 08550C 8008490C 3C0F800E */ lui $t7, %hi(D_800DFAC8) # $t7, 0x800e -/* 085510 80084910 00001012 */ mflo $v0 -/* 085514 80084914 24590030 */ addiu $t9, $v0, 0x30 -/* 085518 80084918 A1190000 */ sb $t9, ($t0) -/* 08551C 8008491C 00440019 */ multu $v0, $a0 -/* 085520 80084920 8CAB0000 */ lw $t3, ($a1) -/* 085524 80084924 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 -/* 085528 80084928 01716021 */ addu $t4, $t3, $s1 -/* 08552C 8008492C 3C198012 */ lui $t9, %hi(gAudioOutputStrings) # $t9, 0x8012 -/* 085530 80084930 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 -/* 085534 80084934 02402025 */ move $a0, $s2 -/* 085538 80084938 00004812 */ mflo $t1 -/* 08553C 8008493C 02699823 */ subu $s3, $s3, $t1 -/* 085540 80084940 266A0030 */ addiu $t2, $s3, 0x30 -/* 085544 80084944 A18A0000 */ sb $t2, ($t4) -/* 085548 80084948 3C138012 */ lui $s3, %hi(D_801263BC) # $s3, 0x8012 -/* 08554C 8008494C 8E7363BC */ lw $s3, %lo(D_801263BC)($s3) -/* 085550 80084950 00000000 */ nop -/* 085554 80084954 001368C0 */ sll $t5, $s3, 3 -/* 085558 80084958 29A10100 */ slti $at, $t5, 0x100 -/* 08555C 8008495C 14200003 */ bnez $at, .L8008496C -/* 085560 80084960 01A09825 */ move $s3, $t5 -/* 085564 80084964 240E01FF */ li $t6, 511 -/* 085568 80084968 01CD9823 */ subu $s3, $t6, $t5 -.L8008496C: -/* 08556C 8008496C 8DEFFAC8 */ lw $t7, %lo(D_800DFAC8)($t7) -/* 085570 80084970 3C01800E */ lui $at, %hi(gAudioMenuStrings+12) # $at, 0x800e -/* 085574 80084974 000FC080 */ sll $t8, $t7, 2 -/* 085578 80084978 0338C821 */ addu $t9, $t9, $t8 -/* 08557C 8008497C 8F3969D0 */ lw $t9, %lo(gAudioOutputStrings)($t9) -/* 085580 80084980 0C019FCB */ jal func_80067F2C -/* 085584 80084984 AC39FA48 */ sw $t9, %lo(gAudioMenuStrings+12)($at) -/* 085588 80084988 3C088000 */ lui $t0, %hi(osTvType) # $t0, 0x8000 -/* 08558C 8008498C 8D080300 */ lw $t0, %lo(osTvType)($t0) -/* 085590 80084990 3C11FFC0 */ lui $s1, (0xFFC040FF >> 16) # lui $s1, 0xffc0 -/* 085594 80084994 15000003 */ bnez $t0, .L800849A4 -/* 085598 80084998 363140FF */ ori $s1, (0xFFC040FF & 0xFFFF) # ori $s1, $s1, 0x40ff -/* 08559C 8008499C 10000002 */ b .L800849A8 -/* 0855A0 800849A0 24100065 */ li $s0, 101 -.L800849A4: -/* 0855A4 800849A4 24100071 */ li $s0, 113 -.L800849A8: -/* 0855A8 800849A8 3C0D8012 */ lui $t5, %hi(D_80126660) # $t5, 0x8012 -/* 0855AC 800849AC 8DAD6660 */ lw $t5, %lo(D_80126660)($t5) -/* 0855B0 800849B0 24090078 */ li $t1, 120 -/* 0855B4 800849B4 240B000E */ li $t3, 14 -/* 0855B8 800849B8 240A0006 */ li $t2, 6 -/* 0855BC 800849BC 240C0004 */ li $t4, 4 -/* 0855C0 800849C0 AFAC0018 */ sw $t4, 0x18($sp) -/* 0855C4 800849C4 AFAA0014 */ sw $t2, 0x14($sp) -/* 0855C8 800849C8 AFAB0010 */ sw $t3, 0x10($sp) -/* 0855CC 800849CC 01303023 */ subu $a2, $t1, $s0 -/* 0855D0 800849D0 00002025 */ move $a0, $zero -/* 0855D4 800849D4 2405FFB8 */ li $a1, -72 -/* 0855D8 800849D8 24070090 */ li $a3, 144 -/* 0855DC 800849DC AFB1001C */ sw $s1, 0x1c($sp) -/* 0855E0 800849E0 0C020160 */ jal func_80080580 -/* 0855E4 800849E4 AFAD0020 */ sw $t5, 0x20($sp) -/* 0855E8 800849E8 3C088012 */ lui $t0, %hi(D_80126660) # $t0, 0x8012 -/* 0855EC 800849EC 8D086660 */ lw $t0, %lo(D_80126660)($t0) -/* 0855F0 800849F0 240E0050 */ li $t6, 80 -/* 0855F4 800849F4 240F000E */ li $t7, 14 -/* 0855F8 800849F8 24180006 */ li $t8, 6 -/* 0855FC 800849FC 24190004 */ li $t9, 4 -/* 085600 80084A00 AFB90018 */ sw $t9, 0x18($sp) -/* 085604 80084A04 AFB80014 */ sw $t8, 0x14($sp) -/* 085608 80084A08 AFAF0010 */ sw $t7, 0x10($sp) -/* 08560C 80084A0C 01D03023 */ subu $a2, $t6, $s0 -/* 085610 80084A10 00002025 */ move $a0, $zero -/* 085614 80084A14 2405FFB8 */ li $a1, -72 -/* 085618 80084A18 24070090 */ li $a3, 144 -/* 08561C 80084A1C AFB1001C */ sw $s1, 0x1c($sp) -/* 085620 80084A20 0C020160 */ jal func_80080580 -/* 085624 80084A24 AFA80020 */ sw $t0, 0x20($sp) -/* 085628 80084A28 0C0202F2 */ jal func_80080BC8 -/* 08562C 80084A2C 02402025 */ move $a0, $s2 -/* 085630 80084A30 0C031525 */ jal assign_dialogue_box_id -/* 085634 80084A34 24040007 */ li $a0, 7 -/* 085638 80084A38 240900FF */ li $t1, 255 -/* 08563C 80084A3C AFA90010 */ sw $t1, 0x10($sp) -/* 085640 80084A40 24040007 */ li $a0, 7 -/* 085644 80084A44 00002825 */ move $a1, $zero -/* 085648 80084A48 00003025 */ move $a2, $zero -/* 08564C 80084A4C 0C0313EF */ jal set_current_dialogue_background_colour -/* 085650 80084A50 00003825 */ move $a3, $zero -/* 085654 80084A54 240B007B */ li $t3, 123 -/* 085658 80084A58 AFAB0010 */ sw $t3, 0x10($sp) -/* 08565C 80084A5C 24040007 */ li $a0, 7 -/* 085660 80084A60 2405005E */ li $a1, 94 -/* 085664 80084A64 24060075 */ li $a2, 117 -/* 085668 80084A68 0C0313B7 */ jal set_current_dialogue_box_coords -/* 08566C 80084A6C 240700E2 */ li $a3, 226 -/* 085670 80084A70 02402025 */ move $a0, $s2 -/* 085674 80084A74 00002825 */ move $a1, $zero -/* 085678 80084A78 00003025 */ move $a2, $zero -/* 08567C 80084A7C 0C0316D6 */ jal render_dialogue_box -/* 085680 80084A80 24070007 */ li $a3, 7 -/* 085684 80084A84 240A00A3 */ li $t2, 163 -/* 085688 80084A88 AFAA0010 */ sw $t2, 0x10($sp) -/* 08568C 80084A8C 24040007 */ li $a0, 7 -/* 085690 80084A90 2405005E */ li $a1, 94 -/* 085694 80084A94 2406009D */ li $a2, 157 -/* 085698 80084A98 0C0313B7 */ jal set_current_dialogue_box_coords -/* 08569C 80084A9C 240700E2 */ li $a3, 226 -/* 0856A0 80084AA0 02402025 */ move $a0, $s2 -/* 0856A4 80084AA4 00002825 */ move $a1, $zero -/* 0856A8 80084AA8 00003025 */ move $a2, $zero -/* 0856AC 80084AAC 0C0316D6 */ jal render_dialogue_box -/* 0856B0 80084AB0 24070007 */ li $a3, 7 -/* 0856B4 80084AB4 3C06800E */ lui $a2, %hi(gSfxVolumeSliderValue) # $a2, 0x800e -/* 0856B8 80084AB8 8CC6FAC0 */ lw $a2, %lo(gSfxVolumeSliderValue)($a2) -/* 0856BC 80084ABC 3C10800E */ lui $s0, %hi(gMenuSelectionArrowLeft) # $s0, 0x800e -/* 0856C0 80084AC0 2610042C */ addiu $s0, %lo(gMenuSelectionArrowLeft) # addiu $s0, $s0, 0x42c -/* 0856C4 80084AC4 240D00FF */ li $t5, 255 -/* 0856C8 80084AC8 240E00FF */ li $t6, 255 -/* 0856CC 80084ACC 240F00FF */ li $t7, 255 -/* 0856D0 80084AD0 241800FF */ li $t8, 255 -/* 0856D4 80084AD4 00066043 */ sra $t4, $a2, 1 -/* 0856D8 80084AD8 25860060 */ addiu $a2, $t4, 0x60 -/* 0856DC 80084ADC AFB8001C */ sw $t8, 0x1c($sp) -/* 0856E0 80084AE0 AFAF0018 */ sw $t7, 0x18($sp) -/* 0856E4 80084AE4 AFAE0014 */ sw $t6, 0x14($sp) -/* 0856E8 80084AE8 AFAD0010 */ sw $t5, 0x10($sp) -/* 0856EC 80084AEC 02002825 */ move $a1, $s0 -/* 0856F0 80084AF0 02402025 */ move $a0, $s2 -/* 0856F4 80084AF4 0C01E2AE */ jal render_textured_rectangle -/* 0856F8 80084AF8 24070078 */ li $a3, 120 -/* 0856FC 80084AFC 3C06800E */ lui $a2, %hi(gMusicVolumeSliderValue) # $a2, 0x800e -/* 085700 80084B00 8CC6FAC4 */ lw $a2, %lo(gMusicVolumeSliderValue)($a2) -/* 085704 80084B04 240800FF */ li $t0, 255 -/* 085708 80084B08 240900FF */ li $t1, 255 -/* 08570C 80084B0C 240B00FF */ li $t3, 255 -/* 085710 80084B10 240A00FF */ li $t2, 255 -/* 085714 80084B14 0006C843 */ sra $t9, $a2, 1 -/* 085718 80084B18 27260060 */ addiu $a2, $t9, 0x60 -/* 08571C 80084B1C AFAA001C */ sw $t2, 0x1c($sp) -/* 085720 80084B20 AFAB0018 */ sw $t3, 0x18($sp) -/* 085724 80084B24 AFA90014 */ sw $t1, 0x14($sp) -/* 085728 80084B28 AFA80010 */ sw $t0, 0x10($sp) -/* 08572C 80084B2C 02402025 */ move $a0, $s2 -/* 085730 80084B30 02002825 */ move $a1, $s0 -/* 085734 80084B34 0C01E2AE */ jal render_textured_rectangle -/* 085738 80084B38 240700A0 */ li $a3, 160 -/* 08573C 80084B3C 0C01ECF4 */ jal func_8007B3D0 -/* 085740 80084B40 02402025 */ move $a0, $s2 -/* 085744 80084B44 00002025 */ move $a0, $zero -/* 085748 80084B48 00002825 */ move $a1, $zero -/* 08574C 80084B4C 00003025 */ move $a2, $zero -/* 085750 80084B50 0C0310F3 */ jal set_text_background_colour -/* 085754 80084B54 00003825 */ move $a3, $zero -/* 085758 80084B58 3C0C8012 */ lui $t4, %hi(D_801263E0) # $t4, 0x8012 -/* 08575C 80084B5C 8D8C63E0 */ lw $t4, %lo(D_801263E0)($t4) -/* 085760 80084B60 00001825 */ move $v1, $zero -/* 085764 80084B64 29810005 */ slti $at, $t4, 5 -/* 085768 80084B68 10200005 */ beqz $at, .L80084B80 -/* 08576C 80084B6C 3C0D800E */ lui $t5, %hi(gAudioMenuStrings+12) # $t5, 0x800e -/* 085770 80084B70 3C118012 */ lui $s1, %hi(gOptionsMenuItemIndex) # $s1, 0x8012 -/* 085774 80084B74 86316C46 */ lh $s1, %lo(gOptionsMenuItemIndex)($s1) -/* 085778 80084B78 1000000E */ b .L80084BB4 -/* 08577C 80084B7C 00000000 */ nop -.L80084B80: -/* 085780 80084B80 3C028012 */ lui $v0, %hi(gOptionsMenuItemIndex) # $v0, 0x8012 -/* 085784 80084B84 84426C46 */ lh $v0, %lo(gOptionsMenuItemIndex)($v0) -/* 085788 80084B88 00000000 */ nop -/* 08578C 80084B8C 28410003 */ slti $at, $v0, 3 -/* 085790 80084B90 10200004 */ beqz $at, .L80084BA4 -/* 085794 80084B94 24010003 */ li $at, 3 -/* 085798 80084B98 10000006 */ b .L80084BB4 -/* 08579C 80084B9C 00408825 */ move $s1, $v0 -/* 0857A0 80084BA0 24010003 */ li $at, 3 -.L80084BA4: -/* 0857A4 80084BA4 14410003 */ bne $v0, $at, .L80084BB4 -/* 0857A8 80084BA8 24110003 */ li $s1, 3 -/* 0857AC 80084BAC 10000001 */ b .L80084BB4 -/* 0857B0 80084BB0 24110006 */ li $s1, 6 -.L80084BB4: -/* 0857B4 80084BB4 8DADFA48 */ lw $t5, %lo(gAudioMenuStrings+12)($t5) -/* 0857B8 80084BB8 00037100 */ sll $t6, $v1, 4 -/* 0857BC 80084BBC 11A00026 */ beqz $t5, .L80084C58 -/* 0857C0 80084BC0 3C0F800E */ lui $t7, %hi(gAudioMenuStrings) # $t7, 0x800e -/* 0857C4 80084BC4 25EFFA3C */ addiu $t7, %lo(gAudioMenuStrings) # addiu $t7, $t7, -0x5c4 -/* 0857C8 80084BC8 0011C100 */ sll $t8, $s1, 4 -/* 0857CC 80084BCC 030FC821 */ addu $t9, $t8, $t7 -/* 0857D0 80084BD0 AFB90040 */ sw $t9, 0x40($sp) -/* 0857D4 80084BD4 01CF8021 */ addu $s0, $t6, $t7 -.L80084BD8: -/* 0857D8 80084BD8 92040009 */ lbu $a0, 9($s0) -/* 0857DC 80084BDC 0C0310BB */ jal set_text_font -/* 0857E0 80084BE0 00000000 */ nop -/* 0857E4 80084BE4 8FA80040 */ lw $t0, 0x40($sp) -/* 0857E8 80084BE8 240400FF */ li $a0, 255 -/* 0857EC 80084BEC 16080008 */ bne $s0, $t0, .L80084C10 -/* 0857F0 80084BF0 240500FF */ li $a1, 255 -/* 0857F4 80084BF4 240900FF */ li $t1, 255 -/* 0857F8 80084BF8 AFA90010 */ sw $t1, 0x10($sp) -/* 0857FC 80084BFC 240600FF */ li $a2, 255 -/* 085800 80084C00 0C0310E1 */ jal set_text_colour -/* 085804 80084C04 02603825 */ move $a3, $s3 -/* 085808 80084C08 10000009 */ b .L80084C30 -/* 08580C 80084C0C 860A000A */ lh $t2, 0xa($s0) -.L80084C10: -/* 085810 80084C10 920B0008 */ lbu $t3, 8($s0) -/* 085814 80084C14 92040004 */ lbu $a0, 4($s0) -/* 085818 80084C18 92050005 */ lbu $a1, 5($s0) -/* 08581C 80084C1C 92060006 */ lbu $a2, 6($s0) -/* 085820 80084C20 92070007 */ lbu $a3, 7($s0) -/* 085824 80084C24 0C0310E1 */ jal set_text_colour -/* 085828 80084C28 AFAB0010 */ sw $t3, 0x10($sp) -/* 08582C 80084C2C 860A000A */ lh $t2, 0xa($s0) -.L80084C30: -/* 085830 80084C30 86050000 */ lh $a1, ($s0) -/* 085834 80084C34 86060002 */ lh $a2, 2($s0) -/* 085838 80084C38 8E07000C */ lw $a3, 0xc($s0) -/* 08583C 80084C3C 02402025 */ move $a0, $s2 -/* 085840 80084C40 0C031110 */ jal draw_text -/* 085844 80084C44 AFAA0010 */ sw $t2, 0x10($sp) -/* 085848 80084C48 8E0C001C */ lw $t4, 0x1c($s0) -/* 08584C 80084C4C 26100010 */ addiu $s0, $s0, 0x10 -/* 085850 80084C50 1580FFE1 */ bnez $t4, .L80084BD8 -/* 085854 80084C54 00000000 */ nop -.L80084C58: -/* 085858 80084C58 8FBF003C */ lw $ra, 0x3c($sp) -/* 08585C 80084C5C 8FB0002C */ lw $s0, 0x2c($sp) -/* 085860 80084C60 8FB10030 */ lw $s1, 0x30($sp) -/* 085864 80084C64 8FB20034 */ lw $s2, 0x34($sp) -/* 085868 80084C68 8FB30038 */ lw $s3, 0x38($sp) -/* 08586C 80084C6C 03E00008 */ jr $ra -/* 085870 80084C70 27BD0058 */ addiu $sp, $sp, 0x58 - +glabel func_80084854 +/* 085454 80084854 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 085458 80084858 3C058012 */ lui $a1, %hi(gMusicTestString) # $a1, 0x8012 +/* 08545C 8008485C 24A569E0 */ addiu $a1, %lo(gMusicTestString) # addiu $a1, $a1, 0x69e0 +/* 085460 80084860 8CA30000 */ lw $v1, ($a1) +/* 085464 80084864 AFBF003C */ sw $ra, 0x3c($sp) +/* 085468 80084868 AFB30038 */ sw $s3, 0x38($sp) +/* 08546C 8008486C AFB20034 */ sw $s2, 0x34($sp) +/* 085470 80084870 AFB10030 */ sw $s1, 0x30($sp) +/* 085474 80084874 AFB0002C */ sw $s0, 0x2c($sp) +/* 085478 80084878 AFA40058 */ sw $a0, 0x58($sp) +/* 08547C 8008487C 906E0000 */ lbu $t6, ($v1) +/* 085480 80084880 3C13800E */ lui $s3, %hi(D_800DFABC) # $s3, 0x800e +/* 085484 80084884 8E73FABC */ lw $s3, %lo(D_800DFABC)($s3) +/* 085488 80084888 29C10030 */ slti $at, $t6, 0x30 +/* 08548C 8008488C 14200006 */ bnez $at, .L800848A8 +/* 085490 80084890 00008825 */ move $s1, $zero +/* 085494 80084894 906F0000 */ lbu $t7, ($v1) +/* 085498 80084898 00000000 */ nop +/* 08549C 8008489C 29E1003A */ slti $at, $t7, 0x3a +/* 0854A0 800848A0 1420000C */ bnez $at, .L800848D4 +/* 0854A4 800848A4 2404000A */ li $a0, 10 +.L800848A8: +/* 0854A8 800848A8 26310001 */ addiu $s1, $s1, 1 +/* 0854AC 800848AC 0071C021 */ addu $t8, $v1, $s1 +/* 0854B0 800848B0 93020000 */ lbu $v0, ($t8) +/* 0854B4 800848B4 00000000 */ nop +/* 0854B8 800848B8 28410030 */ slti $at, $v0, 0x30 +/* 0854BC 800848BC 1420FFFA */ bnez $at, .L800848A8 +/* 0854C0 800848C0 00000000 */ nop +/* 0854C4 800848C4 2841003A */ slti $at, $v0, 0x3a +/* 0854C8 800848C8 1020FFF7 */ beqz $at, .L800848A8 +/* 0854CC 800848CC 00000000 */ nop +/* 0854D0 800848D0 2404000A */ li $a0, 10 +.L800848D4: +/* 0854D4 800848D4 0264001A */ div $zero, $s3, $a0 +/* 0854D8 800848D8 00714021 */ addu $t0, $v1, $s1 +/* 0854DC 800848DC 14800002 */ bnez $a0, .L800848E8 +/* 0854E0 800848E0 00000000 */ nop +/* 0854E4 800848E4 0007000D */ break 7 +.L800848E8: +/* 0854E8 800848E8 2401FFFF */ li $at, -1 +/* 0854EC 800848EC 14810004 */ bne $a0, $at, .L80084900 +/* 0854F0 800848F0 3C018000 */ lui $at, 0x8000 +/* 0854F4 800848F4 16610002 */ bne $s3, $at, .L80084900 +/* 0854F8 800848F8 00000000 */ nop +/* 0854FC 800848FC 0006000D */ break 6 +.L80084900: +/* 085500 80084900 26310001 */ addiu $s1, $s1, 1 +/* 085504 80084904 3C128012 */ lui $s2, %hi(sMenuCurrDisplayList) # $s2, 0x8012 +/* 085508 80084908 265263A0 */ addiu $s2, %lo(sMenuCurrDisplayList) # addiu $s2, $s2, 0x63a0 +/* 08550C 8008490C 3C0F800E */ lui $t7, %hi(D_800DFAC8) # $t7, 0x800e +/* 085510 80084910 00001012 */ mflo $v0 +/* 085514 80084914 24590030 */ addiu $t9, $v0, 0x30 +/* 085518 80084918 A1190000 */ sb $t9, ($t0) +/* 08551C 8008491C 00440019 */ multu $v0, $a0 +/* 085520 80084920 8CAB0000 */ lw $t3, ($a1) +/* 085524 80084924 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 +/* 085528 80084928 01716021 */ addu $t4, $t3, $s1 +/* 08552C 8008492C 3C198012 */ lui $t9, %hi(gAudioOutputStrings) # $t9, 0x8012 +/* 085530 80084930 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 +/* 085534 80084934 02402025 */ move $a0, $s2 +/* 085538 80084938 00004812 */ mflo $t1 +/* 08553C 8008493C 02699823 */ subu $s3, $s3, $t1 +/* 085540 80084940 266A0030 */ addiu $t2, $s3, 0x30 +/* 085544 80084944 A18A0000 */ sb $t2, ($t4) +/* 085548 80084948 3C138012 */ lui $s3, %hi(gOptionBlinkTimer) # $s3, 0x8012 +/* 08554C 8008494C 8E7363BC */ lw $s3, %lo(gOptionBlinkTimer)($s3) +/* 085550 80084950 00000000 */ nop +/* 085554 80084954 001368C0 */ sll $t5, $s3, 3 +/* 085558 80084958 29A10100 */ slti $at, $t5, 0x100 +/* 08555C 8008495C 14200003 */ bnez $at, .L8008496C +/* 085560 80084960 01A09825 */ move $s3, $t5 +/* 085564 80084964 240E01FF */ li $t6, 511 +/* 085568 80084968 01CD9823 */ subu $s3, $t6, $t5 +.L8008496C: +/* 08556C 8008496C 8DEFFAC8 */ lw $t7, %lo(D_800DFAC8)($t7) +/* 085570 80084970 3C01800E */ lui $at, %hi(gAudioMenuStrings+12) # $at, 0x800e +/* 085574 80084974 000FC080 */ sll $t8, $t7, 2 +/* 085578 80084978 0338C821 */ addu $t9, $t9, $t8 +/* 08557C 8008497C 8F3969D0 */ lw $t9, %lo(gAudioOutputStrings)($t9) +/* 085580 80084980 0C019FCB */ jal func_80067F2C +/* 085584 80084984 AC39FA48 */ sw $t9, %lo(gAudioMenuStrings+12)($at) +/* 085588 80084988 3C088000 */ lui $t0, %hi(osTvType) # $t0, 0x8000 +/* 08558C 8008498C 8D080300 */ lw $t0, %lo(osTvType)($t0) +/* 085590 80084990 3C11FFC0 */ lui $s1, (0xFFC040FF >> 16) # lui $s1, 0xffc0 +/* 085594 80084994 15000003 */ bnez $t0, .L800849A4 +/* 085598 80084998 363140FF */ ori $s1, (0xFFC040FF & 0xFFFF) # ori $s1, $s1, 0x40ff +/* 08559C 8008499C 10000002 */ b .L800849A8 +/* 0855A0 800849A0 24100065 */ li $s0, 101 +.L800849A4: +/* 0855A4 800849A4 24100071 */ li $s0, 113 +.L800849A8: +/* 0855A8 800849A8 3C0D8012 */ lui $t5, %hi(D_80126660) # $t5, 0x8012 +/* 0855AC 800849AC 8DAD6660 */ lw $t5, %lo(D_80126660)($t5) +/* 0855B0 800849B0 24090078 */ li $t1, 120 +/* 0855B4 800849B4 240B000E */ li $t3, 14 +/* 0855B8 800849B8 240A0006 */ li $t2, 6 +/* 0855BC 800849BC 240C0004 */ li $t4, 4 +/* 0855C0 800849C0 AFAC0018 */ sw $t4, 0x18($sp) +/* 0855C4 800849C4 AFAA0014 */ sw $t2, 0x14($sp) +/* 0855C8 800849C8 AFAB0010 */ sw $t3, 0x10($sp) +/* 0855CC 800849CC 01303023 */ subu $a2, $t1, $s0 +/* 0855D0 800849D0 00002025 */ move $a0, $zero +/* 0855D4 800849D4 2405FFB8 */ li $a1, -72 +/* 0855D8 800849D8 24070090 */ li $a3, 144 +/* 0855DC 800849DC AFB1001C */ sw $s1, 0x1c($sp) +/* 0855E0 800849E0 0C020160 */ jal func_80080580 +/* 0855E4 800849E4 AFAD0020 */ sw $t5, 0x20($sp) +/* 0855E8 800849E8 3C088012 */ lui $t0, %hi(D_80126660) # $t0, 0x8012 +/* 0855EC 800849EC 8D086660 */ lw $t0, %lo(D_80126660)($t0) +/* 0855F0 800849F0 240E0050 */ li $t6, 80 +/* 0855F4 800849F4 240F000E */ li $t7, 14 +/* 0855F8 800849F8 24180006 */ li $t8, 6 +/* 0855FC 800849FC 24190004 */ li $t9, 4 +/* 085600 80084A00 AFB90018 */ sw $t9, 0x18($sp) +/* 085604 80084A04 AFB80014 */ sw $t8, 0x14($sp) +/* 085608 80084A08 AFAF0010 */ sw $t7, 0x10($sp) +/* 08560C 80084A0C 01D03023 */ subu $a2, $t6, $s0 +/* 085610 80084A10 00002025 */ move $a0, $zero +/* 085614 80084A14 2405FFB8 */ li $a1, -72 +/* 085618 80084A18 24070090 */ li $a3, 144 +/* 08561C 80084A1C AFB1001C */ sw $s1, 0x1c($sp) +/* 085620 80084A20 0C020160 */ jal func_80080580 +/* 085624 80084A24 AFA80020 */ sw $t0, 0x20($sp) +/* 085628 80084A28 0C0202F2 */ jal func_80080BC8 +/* 08562C 80084A2C 02402025 */ move $a0, $s2 +/* 085630 80084A30 0C031525 */ jal assign_dialogue_box_id +/* 085634 80084A34 24040007 */ li $a0, 7 +/* 085638 80084A38 240900FF */ li $t1, 255 +/* 08563C 80084A3C AFA90010 */ sw $t1, 0x10($sp) +/* 085640 80084A40 24040007 */ li $a0, 7 +/* 085644 80084A44 00002825 */ move $a1, $zero +/* 085648 80084A48 00003025 */ move $a2, $zero +/* 08564C 80084A4C 0C0313EF */ jal set_current_dialogue_background_colour +/* 085650 80084A50 00003825 */ move $a3, $zero +/* 085654 80084A54 240B007B */ li $t3, 123 +/* 085658 80084A58 AFAB0010 */ sw $t3, 0x10($sp) +/* 08565C 80084A5C 24040007 */ li $a0, 7 +/* 085660 80084A60 2405005E */ li $a1, 94 +/* 085664 80084A64 24060075 */ li $a2, 117 +/* 085668 80084A68 0C0313B7 */ jal set_current_dialogue_box_coords +/* 08566C 80084A6C 240700E2 */ li $a3, 226 +/* 085670 80084A70 02402025 */ move $a0, $s2 +/* 085674 80084A74 00002825 */ move $a1, $zero +/* 085678 80084A78 00003025 */ move $a2, $zero +/* 08567C 80084A7C 0C0316D6 */ jal render_dialogue_box +/* 085680 80084A80 24070007 */ li $a3, 7 +/* 085684 80084A84 240A00A3 */ li $t2, 163 +/* 085688 80084A88 AFAA0010 */ sw $t2, 0x10($sp) +/* 08568C 80084A8C 24040007 */ li $a0, 7 +/* 085690 80084A90 2405005E */ li $a1, 94 +/* 085694 80084A94 2406009D */ li $a2, 157 +/* 085698 80084A98 0C0313B7 */ jal set_current_dialogue_box_coords +/* 08569C 80084A9C 240700E2 */ li $a3, 226 +/* 0856A0 80084AA0 02402025 */ move $a0, $s2 +/* 0856A4 80084AA4 00002825 */ move $a1, $zero +/* 0856A8 80084AA8 00003025 */ move $a2, $zero +/* 0856AC 80084AAC 0C0316D6 */ jal render_dialogue_box +/* 0856B0 80084AB0 24070007 */ li $a3, 7 +/* 0856B4 80084AB4 3C06800E */ lui $a2, %hi(gSfxVolumeSliderValue) # $a2, 0x800e +/* 0856B8 80084AB8 8CC6FAC0 */ lw $a2, %lo(gSfxVolumeSliderValue)($a2) +/* 0856BC 80084ABC 3C10800E */ lui $s0, %hi(gMenuSelectionArrowLeft) # $s0, 0x800e +/* 0856C0 80084AC0 2610042C */ addiu $s0, %lo(gMenuSelectionArrowLeft) # addiu $s0, $s0, 0x42c +/* 0856C4 80084AC4 240D00FF */ li $t5, 255 +/* 0856C8 80084AC8 240E00FF */ li $t6, 255 +/* 0856CC 80084ACC 240F00FF */ li $t7, 255 +/* 0856D0 80084AD0 241800FF */ li $t8, 255 +/* 0856D4 80084AD4 00066043 */ sra $t4, $a2, 1 +/* 0856D8 80084AD8 25860060 */ addiu $a2, $t4, 0x60 +/* 0856DC 80084ADC AFB8001C */ sw $t8, 0x1c($sp) +/* 0856E0 80084AE0 AFAF0018 */ sw $t7, 0x18($sp) +/* 0856E4 80084AE4 AFAE0014 */ sw $t6, 0x14($sp) +/* 0856E8 80084AE8 AFAD0010 */ sw $t5, 0x10($sp) +/* 0856EC 80084AEC 02002825 */ move $a1, $s0 +/* 0856F0 80084AF0 02402025 */ move $a0, $s2 +/* 0856F4 80084AF4 0C01E2AE */ jal render_textured_rectangle +/* 0856F8 80084AF8 24070078 */ li $a3, 120 +/* 0856FC 80084AFC 3C06800E */ lui $a2, %hi(gMusicVolumeSliderValue) # $a2, 0x800e +/* 085700 80084B00 8CC6FAC4 */ lw $a2, %lo(gMusicVolumeSliderValue)($a2) +/* 085704 80084B04 240800FF */ li $t0, 255 +/* 085708 80084B08 240900FF */ li $t1, 255 +/* 08570C 80084B0C 240B00FF */ li $t3, 255 +/* 085710 80084B10 240A00FF */ li $t2, 255 +/* 085714 80084B14 0006C843 */ sra $t9, $a2, 1 +/* 085718 80084B18 27260060 */ addiu $a2, $t9, 0x60 +/* 08571C 80084B1C AFAA001C */ sw $t2, 0x1c($sp) +/* 085720 80084B20 AFAB0018 */ sw $t3, 0x18($sp) +/* 085724 80084B24 AFA90014 */ sw $t1, 0x14($sp) +/* 085728 80084B28 AFA80010 */ sw $t0, 0x10($sp) +/* 08572C 80084B2C 02402025 */ move $a0, $s2 +/* 085730 80084B30 02002825 */ move $a1, $s0 +/* 085734 80084B34 0C01E2AE */ jal render_textured_rectangle +/* 085738 80084B38 240700A0 */ li $a3, 160 +/* 08573C 80084B3C 0C01ECF4 */ jal func_8007B3D0 +/* 085740 80084B40 02402025 */ move $a0, $s2 +/* 085744 80084B44 00002025 */ move $a0, $zero +/* 085748 80084B48 00002825 */ move $a1, $zero +/* 08574C 80084B4C 00003025 */ move $a2, $zero +/* 085750 80084B50 0C0310F3 */ jal set_text_background_colour +/* 085754 80084B54 00003825 */ move $a3, $zero +/* 085758 80084B58 3C0C8012 */ lui $t4, %hi(D_801263E0) # $t4, 0x8012 +/* 08575C 80084B5C 8D8C63E0 */ lw $t4, %lo(D_801263E0)($t4) +/* 085760 80084B60 00001825 */ move $v1, $zero +/* 085764 80084B64 29810005 */ slti $at, $t4, 5 +/* 085768 80084B68 10200005 */ beqz $at, .L80084B80 +/* 08576C 80084B6C 3C0D800E */ lui $t5, %hi(gAudioMenuStrings+12) # $t5, 0x800e +/* 085770 80084B70 3C118012 */ lui $s1, %hi(gOptionsMenuItemIndex) # $s1, 0x8012 +/* 085774 80084B74 86316C46 */ lh $s1, %lo(gOptionsMenuItemIndex)($s1) +/* 085778 80084B78 1000000E */ b .L80084BB4 +/* 08577C 80084B7C 00000000 */ nop +.L80084B80: +/* 085780 80084B80 3C028012 */ lui $v0, %hi(gOptionsMenuItemIndex) # $v0, 0x8012 +/* 085784 80084B84 84426C46 */ lh $v0, %lo(gOptionsMenuItemIndex)($v0) +/* 085788 80084B88 00000000 */ nop +/* 08578C 80084B8C 28410003 */ slti $at, $v0, 3 +/* 085790 80084B90 10200004 */ beqz $at, .L80084BA4 +/* 085794 80084B94 24010003 */ li $at, 3 +/* 085798 80084B98 10000006 */ b .L80084BB4 +/* 08579C 80084B9C 00408825 */ move $s1, $v0 +/* 0857A0 80084BA0 24010003 */ li $at, 3 +.L80084BA4: +/* 0857A4 80084BA4 14410003 */ bne $v0, $at, .L80084BB4 +/* 0857A8 80084BA8 24110003 */ li $s1, 3 +/* 0857AC 80084BAC 10000001 */ b .L80084BB4 +/* 0857B0 80084BB0 24110006 */ li $s1, 6 +.L80084BB4: +/* 0857B4 80084BB4 8DADFA48 */ lw $t5, %lo(gAudioMenuStrings+12)($t5) +/* 0857B8 80084BB8 00037100 */ sll $t6, $v1, 4 +/* 0857BC 80084BBC 11A00026 */ beqz $t5, .L80084C58 +/* 0857C0 80084BC0 3C0F800E */ lui $t7, %hi(gAudioMenuStrings) # $t7, 0x800e +/* 0857C4 80084BC4 25EFFA3C */ addiu $t7, %lo(gAudioMenuStrings) # addiu $t7, $t7, -0x5c4 +/* 0857C8 80084BC8 0011C100 */ sll $t8, $s1, 4 +/* 0857CC 80084BCC 030FC821 */ addu $t9, $t8, $t7 +/* 0857D0 80084BD0 AFB90040 */ sw $t9, 0x40($sp) +/* 0857D4 80084BD4 01CF8021 */ addu $s0, $t6, $t7 +.L80084BD8: +/* 0857D8 80084BD8 92040009 */ lbu $a0, 9($s0) +/* 0857DC 80084BDC 0C0310BB */ jal set_text_font +/* 0857E0 80084BE0 00000000 */ nop +/* 0857E4 80084BE4 8FA80040 */ lw $t0, 0x40($sp) +/* 0857E8 80084BE8 240400FF */ li $a0, 255 +/* 0857EC 80084BEC 16080008 */ bne $s0, $t0, .L80084C10 +/* 0857F0 80084BF0 240500FF */ li $a1, 255 +/* 0857F4 80084BF4 240900FF */ li $t1, 255 +/* 0857F8 80084BF8 AFA90010 */ sw $t1, 0x10($sp) +/* 0857FC 80084BFC 240600FF */ li $a2, 255 +/* 085800 80084C00 0C0310E1 */ jal set_text_colour +/* 085804 80084C04 02603825 */ move $a3, $s3 +/* 085808 80084C08 10000009 */ b .L80084C30 +/* 08580C 80084C0C 860A000A */ lh $t2, 0xa($s0) +.L80084C10: +/* 085810 80084C10 920B0008 */ lbu $t3, 8($s0) +/* 085814 80084C14 92040004 */ lbu $a0, 4($s0) +/* 085818 80084C18 92050005 */ lbu $a1, 5($s0) +/* 08581C 80084C1C 92060006 */ lbu $a2, 6($s0) +/* 085820 80084C20 92070007 */ lbu $a3, 7($s0) +/* 085824 80084C24 0C0310E1 */ jal set_text_colour +/* 085828 80084C28 AFAB0010 */ sw $t3, 0x10($sp) +/* 08582C 80084C2C 860A000A */ lh $t2, 0xa($s0) +.L80084C30: +/* 085830 80084C30 86050000 */ lh $a1, ($s0) +/* 085834 80084C34 86060002 */ lh $a2, 2($s0) +/* 085838 80084C38 8E07000C */ lw $a3, 0xc($s0) +/* 08583C 80084C3C 02402025 */ move $a0, $s2 +/* 085840 80084C40 0C031110 */ jal draw_text +/* 085844 80084C44 AFAA0010 */ sw $t2, 0x10($sp) +/* 085848 80084C48 8E0C001C */ lw $t4, 0x1c($s0) +/* 08584C 80084C4C 26100010 */ addiu $s0, $s0, 0x10 +/* 085850 80084C50 1580FFE1 */ bnez $t4, .L80084BD8 +/* 085854 80084C54 00000000 */ nop +.L80084C58: +/* 085858 80084C58 8FBF003C */ lw $ra, 0x3c($sp) +/* 08585C 80084C5C 8FB0002C */ lw $s0, 0x2c($sp) +/* 085860 80084C60 8FB10030 */ lw $s1, 0x30($sp) +/* 085864 80084C64 8FB20034 */ lw $s2, 0x34($sp) +/* 085868 80084C68 8FB30038 */ lw $s3, 0x38($sp) +/* 08586C 80084C6C 03E00008 */ jr $ra +/* 085870 80084C70 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/menu/func_80085B9C.s b/asm/non_matchings/menu/func_80085B9C.s index 43e0e929..6ed1a284 100644 --- a/asm/non_matchings/menu/func_80085B9C.s +++ b/asm/non_matchings/menu/func_80085B9C.s @@ -1,354 +1,354 @@ -.late_rodata -glabel jpt_800E83E0 -.word L80085C30, L80085BF8, L80085BF8, L80085C00, L80085C00, L80085C08, L80085C14, L80085C24 - -.text -glabel func_80085B9C -/* 08679C 80085B9C 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 0867A0 80085BA0 AFBF003C */ sw $ra, 0x3c($sp) -/* 0867A4 80085BA4 AFB40038 */ sw $s4, 0x38($sp) -/* 0867A8 80085BA8 AFB30034 */ sw $s3, 0x34($sp) -/* 0867AC 80085BAC AFB20030 */ sw $s2, 0x30($sp) -/* 0867B0 80085BB0 AFB1002C */ sw $s1, 0x2c($sp) -/* 0867B4 80085BB4 AFB00028 */ sw $s0, 0x28($sp) -/* 0867B8 80085BB8 0C01E948 */ jal get_video_width_and_height_as_s32 -/* 0867BC 80085BBC AFA40068 */ sw $a0, 0x68($sp) -/* 0867C0 80085BC0 3C038012 */ lui $v1, %hi(D_801263E0) # $v1, 0x8012 -/* 0867C4 80085BC4 8C6363E0 */ lw $v1, %lo(D_801263E0)($v1) -/* 0867C8 80085BC8 3C01800F */ lui $at, %hi(jpt_800E83E0) # $at, 0x800f -/* 0867CC 80085BCC 306E0007 */ andi $t6, $v1, 7 -/* 0867D0 80085BD0 000E7080 */ sll $t6, $t6, 2 -/* 0867D4 80085BD4 002E0821 */ addu $at, $at, $t6 -/* 0867D8 80085BD8 8C2E83E0 */ lw $t6, %lo(jpt_800E83E0)($at) -/* 0867DC 80085BDC 3054FFFF */ andi $s4, $v0, 0xffff -/* 0867E0 80085BE0 00009825 */ move $s3, $zero -/* 0867E4 80085BE4 00003025 */ move $a2, $zero -/* 0867E8 80085BE8 00003825 */ move $a3, $zero -/* 0867EC 80085BEC 00004025 */ move $t0, $zero -/* 0867F0 80085BF0 01C00008 */ jr $t6 -/* 0867F4 80085BF4 00004825 */ move $t1, $zero -glabel L80085BF8 -/* 0867F8 80085BF8 1000000D */ b .L80085C30 -/* 0867FC 80085BFC 24070001 */ li $a3, 1 -glabel L80085C00 -/* 086800 80085C00 1000000B */ b .L80085C30 -/* 086804 80085C04 24130001 */ li $s3, 1 -glabel L80085C08 -/* 086808 80085C08 24130001 */ li $s3, 1 -/* 08680C 80085C0C 10000008 */ b .L80085C30 -/* 086810 80085C10 24060001 */ li $a2, 1 -glabel L80085C14 -/* 086814 80085C14 24130001 */ li $s3, 1 -/* 086818 80085C18 24060001 */ li $a2, 1 -/* 08681C 80085C1C 10000004 */ b .L80085C30 -/* 086820 80085C20 24080001 */ li $t0, 1 -glabel L80085C24 -/* 086824 80085C24 24130001 */ li $s3, 1 -/* 086828 80085C28 24060001 */ li $a2, 1 -/* 08682C 80085C2C 24070001 */ li $a3, 1 -.L80085C30: -glabel L80085C30 -/* 086830 80085C30 306F0008 */ andi $t7, $v1, 8 -/* 086834 80085C34 11E00002 */ beqz $t7, .L80085C40 -/* 086838 80085C38 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 08683C 80085C3C 24090001 */ li $t1, 1 -.L80085C40: -/* 086840 80085C40 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 -/* 086844 80085C44 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 -/* 086848 80085C48 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 08684C 80085C4C AFA6004C */ sw $a2, 0x4c($sp) -/* 086850 80085C50 AFA70048 */ sw $a3, 0x48($sp) -/* 086854 80085C54 AFA80044 */ sw $t0, 0x44($sp) -/* 086858 80085C58 0C019FCB */ jal func_80067F2C -/* 08685C 80085C5C AFA90040 */ sw $t1, 0x40($sp) -/* 086860 80085C60 00002025 */ move $a0, $zero -/* 086864 80085C64 00002825 */ move $a1, $zero -/* 086868 80085C68 00003025 */ move $a2, $zero -/* 08686C 80085C6C 0C0310F3 */ jal set_text_background_colour -/* 086870 80085C70 00003825 */ move $a3, $zero -/* 086874 80085C74 0C0310BB */ jal set_text_font -/* 086878 80085C78 24040002 */ li $a0, 2 -/* 08687C 80085C7C 24180080 */ li $t8, 128 -/* 086880 80085C80 AFB80010 */ sw $t8, 0x10($sp) -/* 086884 80085C84 00002025 */ move $a0, $zero -/* 086888 80085C88 00002825 */ move $a1, $zero -/* 08688C 80085C8C 00003025 */ move $a2, $zero -/* 086890 80085C90 0C0310E1 */ jal set_text_colour -/* 086894 80085C94 240700FF */ li $a3, 255 -/* 086898 80085C98 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e -/* 08689C 80085C9C 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) -/* 0868A0 80085CA0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0868A4 80085CA4 240A000C */ li $t2, 12 -/* 0868A8 80085CA8 8F270294 */ lw $a3, 0x294($t9) -/* 0868AC 80085CAC AFAA0010 */ sw $t2, 0x10($sp) -/* 0868B0 80085CB0 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0868B4 80085CB4 240500A1 */ li $a1, 161 -/* 0868B8 80085CB8 0C031110 */ jal draw_text -/* 0868BC 80085CBC 24060023 */ li $a2, 35 -/* 0868C0 80085CC0 240B00FF */ li $t3, 255 -/* 0868C4 80085CC4 AFAB0010 */ sw $t3, 0x10($sp) -/* 0868C8 80085CC8 240400FF */ li $a0, 255 -/* 0868CC 80085CCC 240500FF */ li $a1, 255 -/* 0868D0 80085CD0 240600FF */ li $a2, 255 -/* 0868D4 80085CD4 0C0310E1 */ jal set_text_colour -/* 0868D8 80085CD8 00003825 */ move $a3, $zero -/* 0868DC 80085CDC 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e -/* 0868E0 80085CE0 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) -/* 0868E4 80085CE4 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0868E8 80085CE8 240D000C */ li $t5, 12 -/* 0868EC 80085CEC 8D870294 */ lw $a3, 0x294($t4) -/* 0868F0 80085CF0 AFAD0010 */ sw $t5, 0x10($sp) -/* 0868F4 80085CF4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0868F8 80085CF8 240500A0 */ li $a1, 160 -/* 0868FC 80085CFC 0C031110 */ jal draw_text -/* 086900 80085D00 24060020 */ li $a2, 32 -/* 086904 80085D04 8FAE004C */ lw $t6, 0x4c($sp) -/* 086908 80085D08 3C0F8000 */ lui $t7, %hi(osTvType) # $t7, 0x8000 -/* 08690C 80085D0C 11C0001F */ beqz $t6, .L80085D8C -/* 086910 80085D10 3C188012 */ lui $t8, %hi(D_801263BC) # $t8, 0x8012 -/* 086914 80085D14 8DEF0300 */ lw $t7, %lo(osTvType)($t7) -/* 086918 80085D18 00009025 */ move $s2, $zero -/* 08691C 80085D1C 15E00003 */ bnez $t7, .L80085D2C -/* 086920 80085D20 3C11800E */ lui $s1, %hi(gMenuSelectionArrowDown) # $s1, 0x800e -/* 086924 80085D24 10000002 */ b .L80085D30 -/* 086928 80085D28 24100084 */ li $s0, 132 -.L80085D2C: -/* 08692C 80085D2C 24100078 */ li $s0, 120 -.L80085D30: -/* 086930 80085D30 8F1863BC */ lw $t8, %lo(D_801263BC)($t8) -/* 086934 80085D34 2631043C */ addiu $s1, %lo(gMenuSelectionArrowDown) # addiu $s1, $s1, 0x43c -/* 086938 80085D38 3319001F */ andi $t9, $t8, 0x1f -/* 08693C 80085D3C 00195043 */ sra $t2, $t9, 1 -/* 086940 80085D40 020A8021 */ addu $s0, $s0, $t2 -.L80085D44: -/* 086944 80085D44 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 086948 80085D48 240B00FF */ li $t3, 255 -/* 08694C 80085D4C 240C00FF */ li $t4, 255 -/* 086950 80085D50 240D00FF */ li $t5, 255 -/* 086954 80085D54 240E00FF */ li $t6, 255 -/* 086958 80085D58 AFAE001C */ sw $t6, 0x1c($sp) -/* 08695C 80085D5C AFAD0018 */ sw $t5, 0x18($sp) -/* 086960 80085D60 AFAC0014 */ sw $t4, 0x14($sp) -/* 086964 80085D64 AFAB0010 */ sw $t3, 0x10($sp) -/* 086968 80085D68 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 08696C 80085D6C 02202825 */ move $a1, $s1 -/* 086970 80085D70 240600A0 */ li $a2, 160 -/* 086974 80085D74 0C01E2AE */ jal render_textured_rectangle -/* 086978 80085D78 02003825 */ move $a3, $s0 -/* 08697C 80085D7C 26520001 */ addiu $s2, $s2, 1 -/* 086980 80085D80 24010002 */ li $at, 2 -/* 086984 80085D84 1641FFEF */ bne $s2, $at, .L80085D44 -/* 086988 80085D88 26100010 */ addiu $s0, $s0, 0x10 -.L80085D8C: -/* 08698C 80085D8C 1260004A */ beqz $s3, .L80085EB8 -/* 086990 80085D90 3C018012 */ lui $at, %hi(D_80126BDC) # $at, 0x8012 -/* 086994 80085D94 444FF800 */ cfc1 $t7, $31 -/* 086998 80085D98 C4206BDC */ lwc1 $f0, %lo(D_80126BDC)($at) -/* 08699C 80085D9C 35E10003 */ ori $at, $t7, 3 -/* 0869A0 80085DA0 38210002 */ xori $at, $at, 2 -/* 0869A4 80085DA4 44C1F800 */ ctc1 $at, $31 -/* 0869A8 80085DA8 3C014324 */ li $at, 0x43240000 # 164.000000 -/* 0869AC 80085DAC 46000124 */ cvt.w.s $f4, $f0 -/* 0869B0 80085DB0 44818000 */ mtc1 $at, $f16 -/* 0869B4 80085DB4 44122000 */ mfc1 $s2, $f4 -/* 0869B8 80085DB8 44CFF800 */ ctc1 $t7, $31 -/* 0869BC 80085DBC 44923000 */ mtc1 $s2, $f6 -/* 0869C0 80085DC0 240A0050 */ li $t2, 80 -/* 0869C4 80085DC4 46803220 */ cvt.s.w $f8, $f6 -/* 0869C8 80085DC8 3C0B8012 */ lui $t3, %hi(D_80126A08) # $t3, 0x8012 -/* 0869CC 80085DCC 02408025 */ move $s0, $s2 -/* 0869D0 80085DD0 46080281 */ sub.s $f10, $f0, $f8 -/* 0869D4 80085DD4 46105482 */ mul.s $f18, $f10, $f16 -/* 0869D8 80085DD8 4458F800 */ cfc1 $t8, $31 -/* 0869DC 80085DDC 00000000 */ nop -/* 0869E0 80085DE0 37010003 */ ori $at, $t8, 3 -/* 0869E4 80085DE4 38210002 */ xori $at, $at, 2 -/* 0869E8 80085DE8 44C1F800 */ ctc1 $at, $31 -/* 0869EC 80085DEC 00000000 */ nop -/* 0869F0 80085DF0 46009124 */ cvt.w.s $f4, $f18 -/* 0869F4 80085DF4 44192000 */ mfc1 $t9, $f4 -/* 0869F8 80085DF8 44D8F800 */ ctc1 $t8, $31 -/* 0869FC 80085DFC 01591023 */ subu $v0, $t2, $t9 -/* 086A00 80085E00 0054082A */ slt $at, $v0, $s4 -/* 086A04 80085E04 00408825 */ move $s1, $v0 -/* 086A08 80085E08 10200018 */ beqz $at, .L80085E6C -/* 086A0C 80085E0C AFA2005C */ sw $v0, 0x5c($sp) -/* 086A10 80085E10 8D6B6A08 */ lw $t3, %lo(D_80126A08)($t3) -/* 086A14 80085E14 AFA2005C */ sw $v0, 0x5c($sp) -/* 086A18 80085E18 024B082A */ slt $at, $s2, $t3 -/* 086A1C 80085E1C 10200013 */ beqz $at, .L80085E6C -/* 086A20 80085E20 3C138012 */ lui $s3, %hi(D_80126A0C) # $s3, 0x8012 -/* 086A24 80085E24 AFA2005C */ sw $v0, 0x5c($sp) -/* 086A28 80085E28 26736A0C */ addiu $s3, %lo(D_80126A0C) # addiu $s3, $s3, 0x6a0c -.L80085E2C: -/* 086A2C 80085E2C 8E6D0000 */ lw $t5, ($s3) -/* 086A30 80085E30 00106100 */ sll $t4, $s0, 4 -/* 086A34 80085E34 02202825 */ move $a1, $s1 -/* 086A38 80085E38 24060040 */ li $a2, 64 -/* 086A3C 80085E3C 0C0214F4 */ jal func_800853D0 -/* 086A40 80085E40 018D2021 */ addu $a0, $t4, $t5 -/* 086A44 80085E44 263100A4 */ addiu $s1, $s1, 0xa4 -/* 086A48 80085E48 0234082A */ slt $at, $s1, $s4 -/* 086A4C 80085E4C 10200007 */ beqz $at, .L80085E6C -/* 086A50 80085E50 26100001 */ addiu $s0, $s0, 1 -/* 086A54 80085E54 3C0E8012 */ lui $t6, %hi(D_80126A08) # $t6, 0x8012 -/* 086A58 80085E58 8DCE6A08 */ lw $t6, %lo(D_80126A08)($t6) -/* 086A5C 80085E5C 00000000 */ nop -/* 086A60 80085E60 020E082A */ slt $at, $s0, $t6 -/* 086A64 80085E64 1420FFF1 */ bnez $at, .L80085E2C -/* 086A68 80085E68 00000000 */ nop -.L80085E6C: -/* 086A6C 80085E6C 8FB1005C */ lw $s1, 0x5c($sp) -/* 086A70 80085E70 3C138012 */ lui $s3, %hi(D_80126A0C) # $s3, 0x8012 -/* 086A74 80085E74 26736A0C */ addiu $s3, %lo(D_80126A0C) # addiu $s3, $s3, 0x6a0c -/* 086A78 80085E78 1A20000F */ blez $s1, .L80085EB8 -/* 086A7C 80085E7C 02408025 */ move $s0, $s2 -/* 086A80 80085E80 1A40000E */ blez $s2, .L80085EBC -/* 086A84 80085E84 8FAA004C */ lw $t2, 0x4c($sp) -.L80085E88: -/* 086A88 80085E88 8E780000 */ lw $t8, ($s3) -/* 086A8C 80085E8C 2610FFFF */ addiu $s0, $s0, -1 -/* 086A90 80085E90 2631FF5C */ addiu $s1, $s1, -0xa4 -/* 086A94 80085E94 00107900 */ sll $t7, $s0, 4 -/* 086A98 80085E98 02202825 */ move $a1, $s1 -/* 086A9C 80085E9C 24060040 */ li $a2, 64 -/* 086AA0 80085EA0 0C0214F4 */ jal func_800853D0 -/* 086AA4 80085EA4 01F82021 */ addu $a0, $t7, $t8 -/* 086AA8 80085EA8 1A200004 */ blez $s1, .L80085EBC -/* 086AAC 80085EAC 8FAA004C */ lw $t2, 0x4c($sp) -/* 086AB0 80085EB0 1E00FFF5 */ bgtz $s0, .L80085E88 -/* 086AB4 80085EB4 00000000 */ nop -.L80085EB8: -/* 086AB8 80085EB8 8FAA004C */ lw $t2, 0x4c($sp) -.L80085EBC: -/* 086ABC 80085EBC 3C018012 */ lui $at, %hi(D_80126BEC) # $at, 0x8012 -/* 086AC0 80085EC0 11400047 */ beqz $t2, .L80085FE0 -/* 086AC4 80085EC4 00000000 */ nop -/* 086AC8 80085EC8 4459F800 */ cfc1 $t9, $31 -/* 086ACC 80085ECC C4206BEC */ lwc1 $f0, %lo(D_80126BEC)($at) -/* 086AD0 80085ED0 37210003 */ ori $at, $t9, 3 -/* 086AD4 80085ED4 38210002 */ xori $at, $at, 2 -/* 086AD8 80085ED8 44C1F800 */ ctc1 $at, $31 -/* 086ADC 80085EDC 3C014324 */ li $at, 0x43240000 # 164.000000 -/* 086AE0 80085EE0 460001A4 */ cvt.w.s $f6, $f0 -/* 086AE4 80085EE4 44819000 */ mtc1 $at, $f18 -/* 086AE8 80085EE8 44123000 */ mfc1 $s2, $f6 -/* 086AEC 80085EEC 44D9F800 */ ctc1 $t9, $31 -/* 086AF0 80085EF0 44924000 */ mtc1 $s2, $f8 -/* 086AF4 80085EF4 240D0050 */ li $t5, 80 -/* 086AF8 80085EF8 468042A0 */ cvt.s.w $f10, $f8 -/* 086AFC 80085EFC 3C0F8012 */ lui $t7, %hi(D_80126A00) # $t7, 0x8012 -/* 086B00 80085F00 02408025 */ move $s0, $s2 -/* 086B04 80085F04 460A0401 */ sub.s $f16, $f0, $f10 -/* 086B08 80085F08 46128102 */ mul.s $f4, $f16, $f18 -/* 086B0C 80085F0C 444BF800 */ cfc1 $t3, $31 -/* 086B10 80085F10 00000000 */ nop -/* 086B14 80085F14 35610003 */ ori $at, $t3, 3 -/* 086B18 80085F18 38210002 */ xori $at, $at, 2 -/* 086B1C 80085F1C 44C1F800 */ ctc1 $at, $31 -/* 086B20 80085F20 00000000 */ nop -/* 086B24 80085F24 460021A4 */ cvt.w.s $f6, $f4 -/* 086B28 80085F28 440C3000 */ mfc1 $t4, $f6 -/* 086B2C 80085F2C 44CBF800 */ ctc1 $t3, $31 -/* 086B30 80085F30 01AC8823 */ subu $s1, $t5, $t4 -/* 086B34 80085F34 0234082A */ slt $at, $s1, $s4 -/* 086B38 80085F38 10200016 */ beqz $at, .L80085F94 -/* 086B3C 80085F3C AFB1005C */ sw $s1, 0x5c($sp) -/* 086B40 80085F40 8DEF6A00 */ lw $t7, %lo(D_80126A00)($t7) -/* 086B44 80085F44 3C138012 */ lui $s3, %hi(D_80126A04) # $s3, 0x8012 -/* 086B48 80085F48 024F082A */ slt $at, $s2, $t7 -/* 086B4C 80085F4C 10200011 */ beqz $at, .L80085F94 -/* 086B50 80085F50 26736A04 */ addiu $s3, %lo(D_80126A04) # addiu $s3, $s3, 0x6a04 -.L80085F54: -/* 086B54 80085F54 8E6A0000 */ lw $t2, ($s3) -/* 086B58 80085F58 0010C100 */ sll $t8, $s0, 4 -/* 086B5C 80085F5C 02202825 */ move $a1, $s1 -/* 086B60 80085F60 24060090 */ li $a2, 144 -/* 086B64 80085F64 0C0214F4 */ jal func_800853D0 -/* 086B68 80085F68 030A2021 */ addu $a0, $t8, $t2 -/* 086B6C 80085F6C 263100A4 */ addiu $s1, $s1, 0xa4 -/* 086B70 80085F70 0234082A */ slt $at, $s1, $s4 -/* 086B74 80085F74 10200007 */ beqz $at, .L80085F94 -/* 086B78 80085F78 26100001 */ addiu $s0, $s0, 1 -/* 086B7C 80085F7C 3C198012 */ lui $t9, %hi(D_80126A00) # $t9, 0x8012 -/* 086B80 80085F80 8F396A00 */ lw $t9, %lo(D_80126A00)($t9) -/* 086B84 80085F84 00000000 */ nop -/* 086B88 80085F88 0219082A */ slt $at, $s0, $t9 -/* 086B8C 80085F8C 1420FFF1 */ bnez $at, .L80085F54 -/* 086B90 80085F90 00000000 */ nop -.L80085F94: -/* 086B94 80085F94 8FB1005C */ lw $s1, 0x5c($sp) -/* 086B98 80085F98 3C138012 */ lui $s3, %hi(D_80126A04) # $s3, 0x8012 -/* 086B9C 80085F9C 26736A04 */ addiu $s3, %lo(D_80126A04) # addiu $s3, $s3, 0x6a04 -/* 086BA0 80085FA0 1A20000F */ blez $s1, .L80085FE0 -/* 086BA4 80085FA4 02408025 */ move $s0, $s2 -/* 086BA8 80085FA8 1A40000D */ blez $s2, .L80085FE0 -/* 086BAC 80085FAC 00000000 */ nop -.L80085FB0: -/* 086BB0 80085FB0 8E6C0000 */ lw $t4, ($s3) -/* 086BB4 80085FB4 2610FFFF */ addiu $s0, $s0, -1 -/* 086BB8 80085FB8 2631FF5C */ addiu $s1, $s1, -0xa4 -/* 086BBC 80085FBC 00106900 */ sll $t5, $s0, 4 -/* 086BC0 80085FC0 02202825 */ move $a1, $s1 -/* 086BC4 80085FC4 24060090 */ li $a2, 144 -/* 086BC8 80085FC8 0C0214F4 */ jal func_800853D0 -/* 086BCC 80085FCC 01AC2021 */ addu $a0, $t5, $t4 -/* 086BD0 80085FD0 1A200003 */ blez $s1, .L80085FE0 -/* 086BD4 80085FD4 00000000 */ nop -/* 086BD8 80085FD8 1E00FFF5 */ bgtz $s0, .L80085FB0 -/* 086BDC 80085FDC 00000000 */ nop -.L80085FE0: -/* 086BE0 80085FE0 0C0310BB */ jal set_text_font -/* 086BE4 80085FE4 24040002 */ li $a0, 2 -/* 086BE8 80085FE8 240E00FF */ li $t6, 255 -/* 086BEC 80085FEC AFAE0010 */ sw $t6, 0x10($sp) -/* 086BF0 80085FF0 240400FF */ li $a0, 255 -/* 086BF4 80085FF4 240500FF */ li $a1, 255 -/* 086BF8 80085FF8 240600FF */ li $a2, 255 -/* 086BFC 80085FFC 0C0310E1 */ jal set_text_colour -/* 086C00 80086000 00003825 */ move $a3, $zero -/* 086C04 80086004 8FAF0044 */ lw $t7, 0x44($sp) -/* 086C08 80086008 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 086C0C 8008600C 11E00008 */ beqz $t7, .L80086030 -/* 086C10 80086010 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 086C14 80086014 3C07800F */ lui $a3, %hi(D_800E8208) # $a3, 0x800f -/* 086C18 80086018 2418000C */ li $t8, 12 -/* 086C1C 8008601C AFB80010 */ sw $t8, 0x10($sp) -/* 086C20 80086020 24E78208 */ addiu $a3, %lo(D_800E8208) # addiu $a3, $a3, -0x7df8 -/* 086C24 80086024 240500A0 */ li $a1, 160 -/* 086C28 80086028 0C031110 */ jal draw_text -/* 086C2C 8008602C 24060080 */ li $a2, 128 -.L80086030: -/* 086C30 80086030 8FAA0048 */ lw $t2, 0x48($sp) -/* 086C34 80086034 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 086C38 80086038 11400009 */ beqz $t2, .L80086060 -/* 086C3C 8008603C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 086C40 80086040 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e -/* 086C44 80086044 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) -/* 086C48 80086048 240B000C */ li $t3, 12 -/* 086C4C 8008604C 8F2701F0 */ lw $a3, 0x1f0($t9) -/* 086C50 80086050 AFAB0010 */ sw $t3, 0x10($sp) -/* 086C54 80086054 240500A0 */ li $a1, 160 -/* 086C58 80086058 0C031110 */ jal draw_text -/* 086C5C 8008605C 24060080 */ li $a2, 128 -.L80086060: -/* 086C60 80086060 8FAD0040 */ lw $t5, 0x40($sp) -/* 086C64 80086064 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 086C68 80086068 11A00005 */ beqz $t5, .L80086080 -/* 086C6C 8008606C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 086C70 80086070 00002825 */ move $a1, $zero -/* 086C74 80086074 00003025 */ move $a2, $zero -/* 086C78 80086078 0C0316D6 */ jal render_dialogue_box -/* 086C7C 8008607C 24070007 */ li $a3, 7 -.L80086080: -/* 086C80 80086080 0C02039B */ jal func_80080E6C -/* 086C84 80086084 00000000 */ nop -/* 086C88 80086088 8FBF003C */ lw $ra, 0x3c($sp) -/* 086C8C 8008608C 8FB00028 */ lw $s0, 0x28($sp) -/* 086C90 80086090 8FB1002C */ lw $s1, 0x2c($sp) -/* 086C94 80086094 8FB20030 */ lw $s2, 0x30($sp) -/* 086C98 80086098 8FB30034 */ lw $s3, 0x34($sp) -/* 086C9C 8008609C 8FB40038 */ lw $s4, 0x38($sp) -/* 086CA0 800860A0 03E00008 */ jr $ra -/* 086CA4 800860A4 27BD0068 */ addiu $sp, $sp, 0x68 - +.late_rodata +glabel jpt_800E83E0 +.word L80085C30, L80085BF8, L80085BF8, L80085C00, L80085C00, L80085C08, L80085C14, L80085C24 + +.text +glabel func_80085B9C +/* 08679C 80085B9C 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 0867A0 80085BA0 AFBF003C */ sw $ra, 0x3c($sp) +/* 0867A4 80085BA4 AFB40038 */ sw $s4, 0x38($sp) +/* 0867A8 80085BA8 AFB30034 */ sw $s3, 0x34($sp) +/* 0867AC 80085BAC AFB20030 */ sw $s2, 0x30($sp) +/* 0867B0 80085BB0 AFB1002C */ sw $s1, 0x2c($sp) +/* 0867B4 80085BB4 AFB00028 */ sw $s0, 0x28($sp) +/* 0867B8 80085BB8 0C01E948 */ jal get_video_width_and_height_as_s32 +/* 0867BC 80085BBC AFA40068 */ sw $a0, 0x68($sp) +/* 0867C0 80085BC0 3C038012 */ lui $v1, %hi(D_801263E0) # $v1, 0x8012 +/* 0867C4 80085BC4 8C6363E0 */ lw $v1, %lo(D_801263E0)($v1) +/* 0867C8 80085BC8 3C01800F */ lui $at, %hi(jpt_800E83E0) # $at, 0x800f +/* 0867CC 80085BCC 306E0007 */ andi $t6, $v1, 7 +/* 0867D0 80085BD0 000E7080 */ sll $t6, $t6, 2 +/* 0867D4 80085BD4 002E0821 */ addu $at, $at, $t6 +/* 0867D8 80085BD8 8C2E83E0 */ lw $t6, %lo(jpt_800E83E0)($at) +/* 0867DC 80085BDC 3054FFFF */ andi $s4, $v0, 0xffff +/* 0867E0 80085BE0 00009825 */ move $s3, $zero +/* 0867E4 80085BE4 00003025 */ move $a2, $zero +/* 0867E8 80085BE8 00003825 */ move $a3, $zero +/* 0867EC 80085BEC 00004025 */ move $t0, $zero +/* 0867F0 80085BF0 01C00008 */ jr $t6 +/* 0867F4 80085BF4 00004825 */ move $t1, $zero +glabel L80085BF8 +/* 0867F8 80085BF8 1000000D */ b .L80085C30 +/* 0867FC 80085BFC 24070001 */ li $a3, 1 +glabel L80085C00 +/* 086800 80085C00 1000000B */ b .L80085C30 +/* 086804 80085C04 24130001 */ li $s3, 1 +glabel L80085C08 +/* 086808 80085C08 24130001 */ li $s3, 1 +/* 08680C 80085C0C 10000008 */ b .L80085C30 +/* 086810 80085C10 24060001 */ li $a2, 1 +glabel L80085C14 +/* 086814 80085C14 24130001 */ li $s3, 1 +/* 086818 80085C18 24060001 */ li $a2, 1 +/* 08681C 80085C1C 10000004 */ b .L80085C30 +/* 086820 80085C20 24080001 */ li $t0, 1 +glabel L80085C24 +/* 086824 80085C24 24130001 */ li $s3, 1 +/* 086828 80085C28 24060001 */ li $a2, 1 +/* 08682C 80085C2C 24070001 */ li $a3, 1 +.L80085C30: +glabel L80085C30 +/* 086830 80085C30 306F0008 */ andi $t7, $v1, 8 +/* 086834 80085C34 11E00002 */ beqz $t7, .L80085C40 +/* 086838 80085C38 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 08683C 80085C3C 24090001 */ li $t1, 1 +.L80085C40: +/* 086840 80085C40 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 +/* 086844 80085C44 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 +/* 086848 80085C48 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 08684C 80085C4C AFA6004C */ sw $a2, 0x4c($sp) +/* 086850 80085C50 AFA70048 */ sw $a3, 0x48($sp) +/* 086854 80085C54 AFA80044 */ sw $t0, 0x44($sp) +/* 086858 80085C58 0C019FCB */ jal func_80067F2C +/* 08685C 80085C5C AFA90040 */ sw $t1, 0x40($sp) +/* 086860 80085C60 00002025 */ move $a0, $zero +/* 086864 80085C64 00002825 */ move $a1, $zero +/* 086868 80085C68 00003025 */ move $a2, $zero +/* 08686C 80085C6C 0C0310F3 */ jal set_text_background_colour +/* 086870 80085C70 00003825 */ move $a3, $zero +/* 086874 80085C74 0C0310BB */ jal set_text_font +/* 086878 80085C78 24040002 */ li $a0, 2 +/* 08687C 80085C7C 24180080 */ li $t8, 128 +/* 086880 80085C80 AFB80010 */ sw $t8, 0x10($sp) +/* 086884 80085C84 00002025 */ move $a0, $zero +/* 086888 80085C88 00002825 */ move $a1, $zero +/* 08688C 80085C8C 00003025 */ move $a2, $zero +/* 086890 80085C90 0C0310E1 */ jal set_text_colour +/* 086894 80085C94 240700FF */ li $a3, 255 +/* 086898 80085C98 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e +/* 08689C 80085C9C 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) +/* 0868A0 80085CA0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0868A4 80085CA4 240A000C */ li $t2, 12 +/* 0868A8 80085CA8 8F270294 */ lw $a3, 0x294($t9) +/* 0868AC 80085CAC AFAA0010 */ sw $t2, 0x10($sp) +/* 0868B0 80085CB0 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0868B4 80085CB4 240500A1 */ li $a1, 161 +/* 0868B8 80085CB8 0C031110 */ jal draw_text +/* 0868BC 80085CBC 24060023 */ li $a2, 35 +/* 0868C0 80085CC0 240B00FF */ li $t3, 255 +/* 0868C4 80085CC4 AFAB0010 */ sw $t3, 0x10($sp) +/* 0868C8 80085CC8 240400FF */ li $a0, 255 +/* 0868CC 80085CCC 240500FF */ li $a1, 255 +/* 0868D0 80085CD0 240600FF */ li $a2, 255 +/* 0868D4 80085CD4 0C0310E1 */ jal set_text_colour +/* 0868D8 80085CD8 00003825 */ move $a3, $zero +/* 0868DC 80085CDC 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e +/* 0868E0 80085CE0 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) +/* 0868E4 80085CE4 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0868E8 80085CE8 240D000C */ li $t5, 12 +/* 0868EC 80085CEC 8D870294 */ lw $a3, 0x294($t4) +/* 0868F0 80085CF0 AFAD0010 */ sw $t5, 0x10($sp) +/* 0868F4 80085CF4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0868F8 80085CF8 240500A0 */ li $a1, 160 +/* 0868FC 80085CFC 0C031110 */ jal draw_text +/* 086900 80085D00 24060020 */ li $a2, 32 +/* 086904 80085D04 8FAE004C */ lw $t6, 0x4c($sp) +/* 086908 80085D08 3C0F8000 */ lui $t7, %hi(osTvType) # $t7, 0x8000 +/* 08690C 80085D0C 11C0001F */ beqz $t6, .L80085D8C +/* 086910 80085D10 3C188012 */ lui $t8, %hi(gOptionBlinkTimer) # $t8, 0x8012 +/* 086914 80085D14 8DEF0300 */ lw $t7, %lo(osTvType)($t7) +/* 086918 80085D18 00009025 */ move $s2, $zero +/* 08691C 80085D1C 15E00003 */ bnez $t7, .L80085D2C +/* 086920 80085D20 3C11800E */ lui $s1, %hi(gMenuSelectionArrowDown) # $s1, 0x800e +/* 086924 80085D24 10000002 */ b .L80085D30 +/* 086928 80085D28 24100084 */ li $s0, 132 +.L80085D2C: +/* 08692C 80085D2C 24100078 */ li $s0, 120 +.L80085D30: +/* 086930 80085D30 8F1863BC */ lw $t8, %lo(gOptionBlinkTimer)($t8) +/* 086934 80085D34 2631043C */ addiu $s1, %lo(gMenuSelectionArrowDown) # addiu $s1, $s1, 0x43c +/* 086938 80085D38 3319001F */ andi $t9, $t8, 0x1f +/* 08693C 80085D3C 00195043 */ sra $t2, $t9, 1 +/* 086940 80085D40 020A8021 */ addu $s0, $s0, $t2 +.L80085D44: +/* 086944 80085D44 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 086948 80085D48 240B00FF */ li $t3, 255 +/* 08694C 80085D4C 240C00FF */ li $t4, 255 +/* 086950 80085D50 240D00FF */ li $t5, 255 +/* 086954 80085D54 240E00FF */ li $t6, 255 +/* 086958 80085D58 AFAE001C */ sw $t6, 0x1c($sp) +/* 08695C 80085D5C AFAD0018 */ sw $t5, 0x18($sp) +/* 086960 80085D60 AFAC0014 */ sw $t4, 0x14($sp) +/* 086964 80085D64 AFAB0010 */ sw $t3, 0x10($sp) +/* 086968 80085D68 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 08696C 80085D6C 02202825 */ move $a1, $s1 +/* 086970 80085D70 240600A0 */ li $a2, 160 +/* 086974 80085D74 0C01E2AE */ jal render_textured_rectangle +/* 086978 80085D78 02003825 */ move $a3, $s0 +/* 08697C 80085D7C 26520001 */ addiu $s2, $s2, 1 +/* 086980 80085D80 24010002 */ li $at, 2 +/* 086984 80085D84 1641FFEF */ bne $s2, $at, .L80085D44 +/* 086988 80085D88 26100010 */ addiu $s0, $s0, 0x10 +.L80085D8C: +/* 08698C 80085D8C 1260004A */ beqz $s3, .L80085EB8 +/* 086990 80085D90 3C018012 */ lui $at, %hi(D_80126BDC) # $at, 0x8012 +/* 086994 80085D94 444FF800 */ cfc1 $t7, $31 +/* 086998 80085D98 C4206BDC */ lwc1 $f0, %lo(D_80126BDC)($at) +/* 08699C 80085D9C 35E10003 */ ori $at, $t7, 3 +/* 0869A0 80085DA0 38210002 */ xori $at, $at, 2 +/* 0869A4 80085DA4 44C1F800 */ ctc1 $at, $31 +/* 0869A8 80085DA8 3C014324 */ li $at, 0x43240000 # 164.000000 +/* 0869AC 80085DAC 46000124 */ cvt.w.s $f4, $f0 +/* 0869B0 80085DB0 44818000 */ mtc1 $at, $f16 +/* 0869B4 80085DB4 44122000 */ mfc1 $s2, $f4 +/* 0869B8 80085DB8 44CFF800 */ ctc1 $t7, $31 +/* 0869BC 80085DBC 44923000 */ mtc1 $s2, $f6 +/* 0869C0 80085DC0 240A0050 */ li $t2, 80 +/* 0869C4 80085DC4 46803220 */ cvt.s.w $f8, $f6 +/* 0869C8 80085DC8 3C0B8012 */ lui $t3, %hi(D_80126A08) # $t3, 0x8012 +/* 0869CC 80085DCC 02408025 */ move $s0, $s2 +/* 0869D0 80085DD0 46080281 */ sub.s $f10, $f0, $f8 +/* 0869D4 80085DD4 46105482 */ mul.s $f18, $f10, $f16 +/* 0869D8 80085DD8 4458F800 */ cfc1 $t8, $31 +/* 0869DC 80085DDC 00000000 */ nop +/* 0869E0 80085DE0 37010003 */ ori $at, $t8, 3 +/* 0869E4 80085DE4 38210002 */ xori $at, $at, 2 +/* 0869E8 80085DE8 44C1F800 */ ctc1 $at, $31 +/* 0869EC 80085DEC 00000000 */ nop +/* 0869F0 80085DF0 46009124 */ cvt.w.s $f4, $f18 +/* 0869F4 80085DF4 44192000 */ mfc1 $t9, $f4 +/* 0869F8 80085DF8 44D8F800 */ ctc1 $t8, $31 +/* 0869FC 80085DFC 01591023 */ subu $v0, $t2, $t9 +/* 086A00 80085E00 0054082A */ slt $at, $v0, $s4 +/* 086A04 80085E04 00408825 */ move $s1, $v0 +/* 086A08 80085E08 10200018 */ beqz $at, .L80085E6C +/* 086A0C 80085E0C AFA2005C */ sw $v0, 0x5c($sp) +/* 086A10 80085E10 8D6B6A08 */ lw $t3, %lo(D_80126A08)($t3) +/* 086A14 80085E14 AFA2005C */ sw $v0, 0x5c($sp) +/* 086A18 80085E18 024B082A */ slt $at, $s2, $t3 +/* 086A1C 80085E1C 10200013 */ beqz $at, .L80085E6C +/* 086A20 80085E20 3C138012 */ lui $s3, %hi(D_80126A0C) # $s3, 0x8012 +/* 086A24 80085E24 AFA2005C */ sw $v0, 0x5c($sp) +/* 086A28 80085E28 26736A0C */ addiu $s3, %lo(D_80126A0C) # addiu $s3, $s3, 0x6a0c +.L80085E2C: +/* 086A2C 80085E2C 8E6D0000 */ lw $t5, ($s3) +/* 086A30 80085E30 00106100 */ sll $t4, $s0, 4 +/* 086A34 80085E34 02202825 */ move $a1, $s1 +/* 086A38 80085E38 24060040 */ li $a2, 64 +/* 086A3C 80085E3C 0C0214F4 */ jal func_800853D0 +/* 086A40 80085E40 018D2021 */ addu $a0, $t4, $t5 +/* 086A44 80085E44 263100A4 */ addiu $s1, $s1, 0xa4 +/* 086A48 80085E48 0234082A */ slt $at, $s1, $s4 +/* 086A4C 80085E4C 10200007 */ beqz $at, .L80085E6C +/* 086A50 80085E50 26100001 */ addiu $s0, $s0, 1 +/* 086A54 80085E54 3C0E8012 */ lui $t6, %hi(D_80126A08) # $t6, 0x8012 +/* 086A58 80085E58 8DCE6A08 */ lw $t6, %lo(D_80126A08)($t6) +/* 086A5C 80085E5C 00000000 */ nop +/* 086A60 80085E60 020E082A */ slt $at, $s0, $t6 +/* 086A64 80085E64 1420FFF1 */ bnez $at, .L80085E2C +/* 086A68 80085E68 00000000 */ nop +.L80085E6C: +/* 086A6C 80085E6C 8FB1005C */ lw $s1, 0x5c($sp) +/* 086A70 80085E70 3C138012 */ lui $s3, %hi(D_80126A0C) # $s3, 0x8012 +/* 086A74 80085E74 26736A0C */ addiu $s3, %lo(D_80126A0C) # addiu $s3, $s3, 0x6a0c +/* 086A78 80085E78 1A20000F */ blez $s1, .L80085EB8 +/* 086A7C 80085E7C 02408025 */ move $s0, $s2 +/* 086A80 80085E80 1A40000E */ blez $s2, .L80085EBC +/* 086A84 80085E84 8FAA004C */ lw $t2, 0x4c($sp) +.L80085E88: +/* 086A88 80085E88 8E780000 */ lw $t8, ($s3) +/* 086A8C 80085E8C 2610FFFF */ addiu $s0, $s0, -1 +/* 086A90 80085E90 2631FF5C */ addiu $s1, $s1, -0xa4 +/* 086A94 80085E94 00107900 */ sll $t7, $s0, 4 +/* 086A98 80085E98 02202825 */ move $a1, $s1 +/* 086A9C 80085E9C 24060040 */ li $a2, 64 +/* 086AA0 80085EA0 0C0214F4 */ jal func_800853D0 +/* 086AA4 80085EA4 01F82021 */ addu $a0, $t7, $t8 +/* 086AA8 80085EA8 1A200004 */ blez $s1, .L80085EBC +/* 086AAC 80085EAC 8FAA004C */ lw $t2, 0x4c($sp) +/* 086AB0 80085EB0 1E00FFF5 */ bgtz $s0, .L80085E88 +/* 086AB4 80085EB4 00000000 */ nop +.L80085EB8: +/* 086AB8 80085EB8 8FAA004C */ lw $t2, 0x4c($sp) +.L80085EBC: +/* 086ABC 80085EBC 3C018012 */ lui $at, %hi(D_80126BEC) # $at, 0x8012 +/* 086AC0 80085EC0 11400047 */ beqz $t2, .L80085FE0 +/* 086AC4 80085EC4 00000000 */ nop +/* 086AC8 80085EC8 4459F800 */ cfc1 $t9, $31 +/* 086ACC 80085ECC C4206BEC */ lwc1 $f0, %lo(D_80126BEC)($at) +/* 086AD0 80085ED0 37210003 */ ori $at, $t9, 3 +/* 086AD4 80085ED4 38210002 */ xori $at, $at, 2 +/* 086AD8 80085ED8 44C1F800 */ ctc1 $at, $31 +/* 086ADC 80085EDC 3C014324 */ li $at, 0x43240000 # 164.000000 +/* 086AE0 80085EE0 460001A4 */ cvt.w.s $f6, $f0 +/* 086AE4 80085EE4 44819000 */ mtc1 $at, $f18 +/* 086AE8 80085EE8 44123000 */ mfc1 $s2, $f6 +/* 086AEC 80085EEC 44D9F800 */ ctc1 $t9, $31 +/* 086AF0 80085EF0 44924000 */ mtc1 $s2, $f8 +/* 086AF4 80085EF4 240D0050 */ li $t5, 80 +/* 086AF8 80085EF8 468042A0 */ cvt.s.w $f10, $f8 +/* 086AFC 80085EFC 3C0F8012 */ lui $t7, %hi(D_80126A00) # $t7, 0x8012 +/* 086B00 80085F00 02408025 */ move $s0, $s2 +/* 086B04 80085F04 460A0401 */ sub.s $f16, $f0, $f10 +/* 086B08 80085F08 46128102 */ mul.s $f4, $f16, $f18 +/* 086B0C 80085F0C 444BF800 */ cfc1 $t3, $31 +/* 086B10 80085F10 00000000 */ nop +/* 086B14 80085F14 35610003 */ ori $at, $t3, 3 +/* 086B18 80085F18 38210002 */ xori $at, $at, 2 +/* 086B1C 80085F1C 44C1F800 */ ctc1 $at, $31 +/* 086B20 80085F20 00000000 */ nop +/* 086B24 80085F24 460021A4 */ cvt.w.s $f6, $f4 +/* 086B28 80085F28 440C3000 */ mfc1 $t4, $f6 +/* 086B2C 80085F2C 44CBF800 */ ctc1 $t3, $31 +/* 086B30 80085F30 01AC8823 */ subu $s1, $t5, $t4 +/* 086B34 80085F34 0234082A */ slt $at, $s1, $s4 +/* 086B38 80085F38 10200016 */ beqz $at, .L80085F94 +/* 086B3C 80085F3C AFB1005C */ sw $s1, 0x5c($sp) +/* 086B40 80085F40 8DEF6A00 */ lw $t7, %lo(D_80126A00)($t7) +/* 086B44 80085F44 3C138012 */ lui $s3, %hi(D_80126A04) # $s3, 0x8012 +/* 086B48 80085F48 024F082A */ slt $at, $s2, $t7 +/* 086B4C 80085F4C 10200011 */ beqz $at, .L80085F94 +/* 086B50 80085F50 26736A04 */ addiu $s3, %lo(D_80126A04) # addiu $s3, $s3, 0x6a04 +.L80085F54: +/* 086B54 80085F54 8E6A0000 */ lw $t2, ($s3) +/* 086B58 80085F58 0010C100 */ sll $t8, $s0, 4 +/* 086B5C 80085F5C 02202825 */ move $a1, $s1 +/* 086B60 80085F60 24060090 */ li $a2, 144 +/* 086B64 80085F64 0C0214F4 */ jal func_800853D0 +/* 086B68 80085F68 030A2021 */ addu $a0, $t8, $t2 +/* 086B6C 80085F6C 263100A4 */ addiu $s1, $s1, 0xa4 +/* 086B70 80085F70 0234082A */ slt $at, $s1, $s4 +/* 086B74 80085F74 10200007 */ beqz $at, .L80085F94 +/* 086B78 80085F78 26100001 */ addiu $s0, $s0, 1 +/* 086B7C 80085F7C 3C198012 */ lui $t9, %hi(D_80126A00) # $t9, 0x8012 +/* 086B80 80085F80 8F396A00 */ lw $t9, %lo(D_80126A00)($t9) +/* 086B84 80085F84 00000000 */ nop +/* 086B88 80085F88 0219082A */ slt $at, $s0, $t9 +/* 086B8C 80085F8C 1420FFF1 */ bnez $at, .L80085F54 +/* 086B90 80085F90 00000000 */ nop +.L80085F94: +/* 086B94 80085F94 8FB1005C */ lw $s1, 0x5c($sp) +/* 086B98 80085F98 3C138012 */ lui $s3, %hi(D_80126A04) # $s3, 0x8012 +/* 086B9C 80085F9C 26736A04 */ addiu $s3, %lo(D_80126A04) # addiu $s3, $s3, 0x6a04 +/* 086BA0 80085FA0 1A20000F */ blez $s1, .L80085FE0 +/* 086BA4 80085FA4 02408025 */ move $s0, $s2 +/* 086BA8 80085FA8 1A40000D */ blez $s2, .L80085FE0 +/* 086BAC 80085FAC 00000000 */ nop +.L80085FB0: +/* 086BB0 80085FB0 8E6C0000 */ lw $t4, ($s3) +/* 086BB4 80085FB4 2610FFFF */ addiu $s0, $s0, -1 +/* 086BB8 80085FB8 2631FF5C */ addiu $s1, $s1, -0xa4 +/* 086BBC 80085FBC 00106900 */ sll $t5, $s0, 4 +/* 086BC0 80085FC0 02202825 */ move $a1, $s1 +/* 086BC4 80085FC4 24060090 */ li $a2, 144 +/* 086BC8 80085FC8 0C0214F4 */ jal func_800853D0 +/* 086BCC 80085FCC 01AC2021 */ addu $a0, $t5, $t4 +/* 086BD0 80085FD0 1A200003 */ blez $s1, .L80085FE0 +/* 086BD4 80085FD4 00000000 */ nop +/* 086BD8 80085FD8 1E00FFF5 */ bgtz $s0, .L80085FB0 +/* 086BDC 80085FDC 00000000 */ nop +.L80085FE0: +/* 086BE0 80085FE0 0C0310BB */ jal set_text_font +/* 086BE4 80085FE4 24040002 */ li $a0, 2 +/* 086BE8 80085FE8 240E00FF */ li $t6, 255 +/* 086BEC 80085FEC AFAE0010 */ sw $t6, 0x10($sp) +/* 086BF0 80085FF0 240400FF */ li $a0, 255 +/* 086BF4 80085FF4 240500FF */ li $a1, 255 +/* 086BF8 80085FF8 240600FF */ li $a2, 255 +/* 086BFC 80085FFC 0C0310E1 */ jal set_text_colour +/* 086C00 80086000 00003825 */ move $a3, $zero +/* 086C04 80086004 8FAF0044 */ lw $t7, 0x44($sp) +/* 086C08 80086008 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 086C0C 8008600C 11E00008 */ beqz $t7, .L80086030 +/* 086C10 80086010 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 086C14 80086014 3C07800F */ lui $a3, %hi(D_800E8208) # $a3, 0x800f +/* 086C18 80086018 2418000C */ li $t8, 12 +/* 086C1C 8008601C AFB80010 */ sw $t8, 0x10($sp) +/* 086C20 80086020 24E78208 */ addiu $a3, %lo(D_800E8208) # addiu $a3, $a3, -0x7df8 +/* 086C24 80086024 240500A0 */ li $a1, 160 +/* 086C28 80086028 0C031110 */ jal draw_text +/* 086C2C 8008602C 24060080 */ li $a2, 128 +.L80086030: +/* 086C30 80086030 8FAA0048 */ lw $t2, 0x48($sp) +/* 086C34 80086034 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 086C38 80086038 11400009 */ beqz $t2, .L80086060 +/* 086C3C 8008603C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 086C40 80086040 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e +/* 086C44 80086044 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) +/* 086C48 80086048 240B000C */ li $t3, 12 +/* 086C4C 8008604C 8F2701F0 */ lw $a3, 0x1f0($t9) +/* 086C50 80086050 AFAB0010 */ sw $t3, 0x10($sp) +/* 086C54 80086054 240500A0 */ li $a1, 160 +/* 086C58 80086058 0C031110 */ jal draw_text +/* 086C5C 8008605C 24060080 */ li $a2, 128 +.L80086060: +/* 086C60 80086060 8FAD0040 */ lw $t5, 0x40($sp) +/* 086C64 80086064 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 086C68 80086068 11A00005 */ beqz $t5, .L80086080 +/* 086C6C 8008606C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 086C70 80086070 00002825 */ move $a1, $zero +/* 086C74 80086074 00003025 */ move $a2, $zero +/* 086C78 80086078 0C0316D6 */ jal render_dialogue_box +/* 086C7C 8008607C 24070007 */ li $a3, 7 +.L80086080: +/* 086C80 80086080 0C02039B */ jal func_80080E6C +/* 086C84 80086084 00000000 */ nop +/* 086C88 80086088 8FBF003C */ lw $ra, 0x3c($sp) +/* 086C8C 8008608C 8FB00028 */ lw $s0, 0x28($sp) +/* 086C90 80086090 8FB1002C */ lw $s1, 0x2c($sp) +/* 086C94 80086094 8FB20030 */ lw $s2, 0x30($sp) +/* 086C98 80086098 8FB30034 */ lw $s3, 0x34($sp) +/* 086C9C 8008609C 8FB40038 */ lw $s4, 0x38($sp) +/* 086CA0 800860A0 03E00008 */ jr $ra +/* 086CA4 800860A4 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/menu/func_80087734.s b/asm/non_matchings/menu/func_80087734.s index 4e5aa330..8c93723f 100644 --- a/asm/non_matchings/menu/func_80087734.s +++ b/asm/non_matchings/menu/func_80087734.s @@ -8,8 +8,8 @@ glabel jpt_800E8488 .text glabel func_80087734 -/* 088334 80087734 3C068012 */ lui $a2, %hi(D_801263BC) # $a2, 0x8012 -/* 088338 80087738 8CC663BC */ lw $a2, %lo(D_801263BC)($a2) +/* 088334 80087734 3C068012 */ lui $a2, %hi(gOptionBlinkTimer) # $a2, 0x8012 +/* 088338 80087738 8CC663BC */ lw $a2, %lo(gOptionBlinkTimer)($a2) /* 08833C 8008773C 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 088340 80087740 000670C0 */ sll $t6, $a2, 3 /* 088344 80087744 29C10100 */ slti $at, $t6, 0x100 diff --git a/asm/non_matchings/menu/func_80092E94.s b/asm/non_matchings/menu/func_80092E94.s index 67daf6a5..9eccc62e 100644 --- a/asm/non_matchings/menu/func_80092E94.s +++ b/asm/non_matchings/menu/func_80092E94.s @@ -1,490 +1,490 @@ -glabel func_80092E94 -/* 093A94 80092E94 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 093A98 80092E98 AFBF0034 */ sw $ra, 0x34($sp) -/* 093A9C 80092E9C AFB1002C */ sw $s1, 0x2c($sp) -/* 093AA0 80092EA0 00C08825 */ move $s1, $a2 -/* 093AA4 80092EA4 AFB20030 */ sw $s2, 0x30($sp) -/* 093AA8 80092EA8 AFB00028 */ sw $s0, 0x28($sp) -/* 093AAC 80092EAC AFA40078 */ sw $a0, 0x78($sp) -/* 093AB0 80092EB0 AFA5007C */ sw $a1, 0x7c($sp) -/* 093AB4 80092EB4 0C01BAA4 */ jal get_settings -/* 093AB8 80092EB8 AFA00054 */ sw $zero, 0x54($sp) -/* 093ABC 80092EBC 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 -/* 093AC0 80092EC0 8DCE0300 */ lw $t6, %lo(osTvType)($t6) -/* 093AC4 80092EC4 00402025 */ move $a0, $v0 -/* 093AC8 80092EC8 15C00002 */ bnez $t6, .L80092ED4 -/* 093ACC 80092ECC 00002825 */ move $a1, $zero -/* 093AD0 80092ED0 2405000C */ li $a1, 12 -.L80092ED4: -/* 093AD4 80092ED4 3C18800E */ lui $t8, %hi(gTrackIdForPreview) # $t8, 0x800e -/* 093AD8 80092ED8 8F18F4C4 */ lw $t8, %lo(gTrackIdForPreview)($t8) -/* 093ADC 80092EDC 8C8F004C */ lw $t7, 0x4c($a0) -/* 093AE0 80092EE0 3C128012 */ lui $s2, %hi(sMenuCurrDisplayList) # $s2, 0x8012 -/* 093AE4 80092EE4 265263A0 */ addiu $s2, %lo(sMenuCurrDisplayList) # addiu $s2, $s2, 0x63a0 -/* 093AE8 80092EE8 01F8C821 */ addu $t9, $t7, $t8 -/* 093AEC 80092EEC 83280002 */ lb $t0, 2($t9) -/* 093AF0 80092EF0 8E430000 */ lw $v1, ($s2) -/* 093AF4 80092EF4 AFA80058 */ sw $t0, 0x58($sp) -/* 093AF8 80092EF8 24690008 */ addiu $t1, $v1, 8 -/* 093AFC 80092EFC AE490000 */ sw $t1, ($s2) -/* 093B00 80092F00 3C0AB600 */ lui $t2, 0xb600 -/* 093B04 80092F04 240B1000 */ li $t3, 4096 -/* 093B08 80092F08 AC6B0004 */ sw $t3, 4($v1) -/* 093B0C 80092F0C AC6A0000 */ sw $t2, ($v1) -/* 093B10 80092F10 AFA50060 */ sw $a1, 0x60($sp) -/* 093B14 80092F14 0C026F57 */ jal func_8009BD5C -/* 093B18 80092F18 AFA40050 */ sw $a0, 0x50($sp) -/* 093B1C 80092F1C 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 -/* 093B20 80092F20 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 -/* 093B24 80092F24 0C019FCB */ jal func_80067F2C -/* 093B28 80092F28 02402025 */ move $a0, $s2 -/* 093B2C 80092F2C 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e -/* 093B30 80092F30 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) -/* 093B34 80092F34 00000000 */ nop -/* 093B38 80092F38 2841FFEC */ slti $at, $v0, -0x14 -/* 093B3C 80092F3C 142001AA */ bnez $at, .L800935E8 -/* 093B40 80092F40 28410015 */ slti $at, $v0, 0x15 -/* 093B44 80092F44 102001A9 */ beqz $at, .L800935EC -/* 093B48 80092F48 8FBF0034 */ lw $ra, 0x34($sp) -/* 093B4C 80092F4C 8FA40058 */ lw $a0, 0x58($sp) -/* 093B50 80092F50 0C01AC3E */ jal func_8006B0F8 -/* 093B54 80092F54 00000000 */ nop -/* 093B58 80092F58 8FA40058 */ lw $a0, 0x58($sp) -/* 093B5C 80092F5C 0C01AF77 */ jal get_level_name -/* 093B60 80092F60 AFA2005C */ sw $v0, 0x5c($sp) -/* 093B64 80092F64 00408025 */ move $s0, $v0 -/* 093B68 80092F68 0C0310BB */ jal set_text_font -/* 093B6C 80092F6C 24040002 */ li $a0, 2 -/* 093B70 80092F70 00002025 */ move $a0, $zero -/* 093B74 80092F74 00002825 */ move $a1, $zero -/* 093B78 80092F78 00003025 */ move $a2, $zero -/* 093B7C 80092F7C 0C0310F3 */ jal set_text_background_colour -/* 093B80 80092F80 00003825 */ move $a3, $zero -/* 093B84 80092F84 240C0080 */ li $t4, 128 -/* 093B88 80092F88 AFAC0010 */ sw $t4, 0x10($sp) -/* 093B8C 80092F8C 00002025 */ move $a0, $zero -/* 093B90 80092F90 00002825 */ move $a1, $zero -/* 093B94 80092F94 00003025 */ move $a2, $zero -/* 093B98 80092F98 0C0310E1 */ jal set_text_colour -/* 093B9C 80092F9C 240700FF */ li $a3, 255 -/* 093BA0 80092FA0 240D000C */ li $t5, 12 -/* 093BA4 80092FA4 AFAD0010 */ sw $t5, 0x10($sp) -/* 093BA8 80092FA8 02402025 */ move $a0, $s2 -/* 093BAC 80092FAC 240500A1 */ li $a1, 161 -/* 093BB0 80092FB0 2406002E */ li $a2, 46 -/* 093BB4 80092FB4 0C031110 */ jal draw_text -/* 093BB8 80092FB8 02003825 */ move $a3, $s0 -/* 093BBC 80092FBC 240E00FF */ li $t6, 255 -/* 093BC0 80092FC0 AFAE0010 */ sw $t6, 0x10($sp) -/* 093BC4 80092FC4 240400FF */ li $a0, 255 -/* 093BC8 80092FC8 240500FF */ li $a1, 255 -/* 093BCC 80092FCC 240600FF */ li $a2, 255 -/* 093BD0 80092FD0 0C0310E1 */ jal set_text_colour -/* 093BD4 80092FD4 00003825 */ move $a3, $zero -/* 093BD8 80092FD8 240F000C */ li $t7, 12 -/* 093BDC 80092FDC AFAF0010 */ sw $t7, 0x10($sp) -/* 093BE0 80092FE0 02402025 */ move $a0, $s2 -/* 093BE4 80092FE4 240500A0 */ li $a1, 160 -/* 093BE8 80092FE8 2406002B */ li $a2, 43 -/* 093BEC 80092FEC 0C031110 */ jal draw_text -/* 093BF0 80092FF0 02003825 */ move $a3, $s0 -/* 093BF4 80092FF4 8FA40058 */ lw $a0, 0x58($sp) -/* 093BF8 80092FF8 0C01AC53 */ jal func_8006B14C -/* 093BFC 80092FFC 00000000 */ nop -/* 093C00 80093000 30580040 */ andi $t8, $v0, 0x40 -/* 093C04 80093004 17000179 */ bnez $t8, .L800935EC -/* 093C08 80093008 8FBF0034 */ lw $ra, 0x34($sp) -/* 093C0C 8009300C 16200141 */ bnez $s1, .L80093514 -/* 093C10 80093010 00000000 */ nop -/* 093C14 80093014 0C003932 */ jal is_time_trial_enabled -/* 093C18 80093018 00000000 */ nop -/* 093C1C 8009301C 10400091 */ beqz $v0, .L80093264 -/* 093C20 80093020 00000000 */ nop -/* 093C24 80093024 8FA40058 */ lw $a0, 0x58($sp) -/* 093C28 80093028 0C024AF8 */ jal func_80092BE0 -/* 093C2C 8009302C 00000000 */ nop -/* 093C30 80093030 04400010 */ bltz $v0, .L80093074 -/* 093C34 80093034 3C0A800E */ lui $t2, %hi(sMenuGuiOpacity) # $t2, 0x800e -/* 093C38 80093038 8D4AF764 */ lw $t2, %lo(sMenuGuiOpacity)($t2) -/* 093C3C 8009303C 8FA70060 */ lw $a3, 0x60($sp) -/* 093C40 80093040 3C05800E */ lui $a1, %hi(gRaceSelectionTTTexture) # $a1, 0x800e -/* 093C44 80093044 241900FF */ li $t9, 255 -/* 093C48 80093048 240800FF */ li $t0, 255 -/* 093C4C 8009304C 240900FF */ li $t1, 255 -/* 093C50 80093050 AFA90018 */ sw $t1, 0x18($sp) -/* 093C54 80093054 AFA80014 */ sw $t0, 0x14($sp) -/* 093C58 80093058 AFB90010 */ sw $t9, 0x10($sp) -/* 093C5C 8009305C 24A50614 */ addiu $a1, %lo(gRaceSelectionTTTexture) # addiu $a1, $a1, 0x614 -/* 093C60 80093060 02402025 */ move $a0, $s2 -/* 093C64 80093064 240600CC */ li $a2, 204 -/* 093C68 80093068 AFAA001C */ sw $t2, 0x1c($sp) -/* 093C6C 8009306C 0C01E2AE */ jal render_textured_rectangle -/* 093C70 80093070 24E7007A */ addiu $a3, $a3, 0x7a -.L80093074: -/* 093C74 80093074 0C0310BB */ jal set_text_font -/* 093C78 80093078 00002025 */ move $a0, $zero -/* 093C7C 8009307C 240B00FF */ li $t3, 255 -/* 093C80 80093080 AFAB0010 */ sw $t3, 0x10($sp) -/* 093C84 80093084 240400FF */ li $a0, 255 -/* 093C88 80093088 24050040 */ li $a1, 64 -/* 093C8C 8009308C 24060040 */ li $a2, 64 -/* 093C90 80093090 0C0310E1 */ jal set_text_colour -/* 093C94 80093094 24070060 */ li $a3, 96 -/* 093C98 80093098 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e -/* 093C9C 8009309C 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) -/* 093CA0 800930A0 8FB00060 */ lw $s0, 0x60($sp) -/* 093CA4 800930A4 240D000C */ li $t5, 12 -/* 093CA8 800930A8 8D870024 */ lw $a3, 0x24($t4) -/* 093CAC 800930AC 26100048 */ addiu $s0, $s0, 0x48 -/* 093CB0 800930B0 02003025 */ move $a2, $s0 -/* 093CB4 800930B4 AFAD0010 */ sw $t5, 0x10($sp) -/* 093CB8 800930B8 02402025 */ move $a0, $s2 -/* 093CBC 800930BC 0C031110 */ jal draw_text -/* 093CC0 800930C0 24050058 */ li $a1, 88 -/* 093CC4 800930C4 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e -/* 093CC8 800930C8 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) -/* 093CCC 800930CC 8FA60060 */ lw $a2, 0x60($sp) -/* 093CD0 800930D0 8DC70028 */ lw $a3, 0x28($t6) -/* 093CD4 800930D4 240F000C */ li $t7, 12 -/* 093CD8 800930D8 24C6005C */ addiu $a2, $a2, 0x5c -/* 093CDC 800930DC AFA60040 */ sw $a2, 0x40($sp) -/* 093CE0 800930E0 AFAF0010 */ sw $t7, 0x10($sp) -/* 093CE4 800930E4 02402025 */ move $a0, $s2 -/* 093CE8 800930E8 0C031110 */ jal draw_text -/* 093CEC 800930EC 24050058 */ li $a1, 88 -/* 093CF0 800930F0 241800FF */ li $t8, 255 -/* 093CF4 800930F4 AFB80010 */ sw $t8, 0x10($sp) -/* 093CF8 800930F8 240400FF */ li $a0, 255 -/* 093CFC 800930FC 24050080 */ li $a1, 128 -/* 093D00 80093100 240600FF */ li $a2, 255 -/* 093D04 80093104 0C0310E1 */ jal set_text_colour -/* 093D08 80093108 24070060 */ li $a3, 96 -/* 093D0C 8009310C 3C098012 */ lui $t1, %hi(gPlayerSelectVehicle) # $t1, 0x8012 -/* 093D10 80093110 812969C0 */ lb $t1, %lo(gPlayerSelectVehicle)($t1) -/* 093D14 80093114 8FA80050 */ lw $t0, 0x50($sp) -/* 093D18 80093118 00095080 */ sll $t2, $t1, 2 -/* 093D1C 8009311C 8FB10058 */ lw $s1, 0x58($sp) -/* 093D20 80093120 010A5821 */ addu $t3, $t0, $t2 -/* 093D24 80093124 8D6C0030 */ lw $t4, 0x30($t3) -/* 093D28 80093128 0011C840 */ sll $t9, $s1, 1 -/* 093D2C 8009312C 01996821 */ addu $t5, $t4, $t9 -/* 093D30 80093130 95A40000 */ lhu $a0, ($t5) -/* 093D34 80093134 03208825 */ move $s1, $t9 -/* 093D38 80093138 27A50054 */ addiu $a1, $sp, 0x54 -/* 093D3C 8009313C 0C025DBE */ jal decompress_filename_string -/* 093D40 80093140 24060003 */ li $a2, 3 -/* 093D44 80093144 240E000C */ li $t6, 12 -/* 093D48 80093148 AFAE0010 */ sw $t6, 0x10($sp) -/* 093D4C 8009314C 02402025 */ move $a0, $s2 -/* 093D50 80093150 24050102 */ li $a1, 258 -/* 093D54 80093154 02003025 */ move $a2, $s0 -/* 093D58 80093158 0C031110 */ jal draw_text -/* 093D5C 8009315C 27A70054 */ addiu $a3, $sp, 0x54 -/* 093D60 80093160 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 -/* 093D64 80093164 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) -/* 093D68 80093168 8FAF0050 */ lw $t7, 0x50($sp) -/* 093D6C 8009316C 0018C880 */ sll $t9, $t8, 2 -/* 093D70 80093170 01F94821 */ addu $t1, $t7, $t9 -/* 093D74 80093174 8D280018 */ lw $t0, 0x18($t1) -/* 093D78 80093178 27B00054 */ addiu $s0, $sp, 0x54 -/* 093D7C 8009317C 01115021 */ addu $t2, $t0, $s1 -/* 093D80 80093180 95440000 */ lhu $a0, ($t2) -/* 093D84 80093184 02002825 */ move $a1, $s0 -/* 093D88 80093188 0C025DBE */ jal decompress_filename_string -/* 093D8C 8009318C 24060003 */ li $a2, 3 -/* 093D90 80093190 8FA60040 */ lw $a2, 0x40($sp) -/* 093D94 80093194 240B000C */ li $t3, 12 -/* 093D98 80093198 AFAB0010 */ sw $t3, 0x10($sp) -/* 093D9C 8009319C 02402025 */ move $a0, $s2 -/* 093DA0 800931A0 24050102 */ li $a1, 258 -/* 093DA4 800931A4 0C031110 */ jal draw_text -/* 093DA8 800931A8 02003825 */ move $a3, $s0 -/* 093DAC 800931AC 8FA20050 */ lw $v0, 0x50($sp) -/* 093DB0 800931B0 3C0D800E */ lui $t5, %hi(gTrackIdForPreview) # $t5, 0x800e -/* 093DB4 800931B4 3C198012 */ lui $t9, %hi(gPlayerSelectVehicle) # $t9, 0x8012 -/* 093DB8 800931B8 833969C0 */ lb $t9, %lo(gPlayerSelectVehicle)($t9) -/* 093DBC 800931BC 8DADF4C4 */ lw $t5, %lo(gTrackIdForPreview)($t5) -/* 093DC0 800931C0 8C4C004C */ lw $t4, 0x4c($v0) -/* 093DC4 800931C4 00194880 */ sll $t1, $t9, 2 -/* 093DC8 800931C8 018D7021 */ addu $t6, $t4, $t5 -/* 093DCC 800931CC 81D80002 */ lb $t8, 2($t6) -/* 093DD0 800931D0 00494021 */ addu $t0, $v0, $t1 -/* 093DD4 800931D4 8D0A003C */ lw $t2, 0x3c($t0) -/* 093DD8 800931D8 00187840 */ sll $t7, $t8, 1 -/* 093DDC 800931DC 014F5821 */ addu $t3, $t2, $t7 -/* 093DE0 800931E0 95640000 */ lhu $a0, ($t3) -/* 093DE4 800931E4 240D00FF */ li $t5, 255 -/* 093DE8 800931E8 240C00FF */ li $t4, 255 -/* 093DEC 800931EC AFAC0010 */ sw $t4, 0x10($sp) -/* 093DF0 800931F0 AFAD0014 */ sw $t5, 0x14($sp) -/* 093DF4 800931F4 AFA00018 */ sw $zero, 0x18($sp) -/* 093DF8 800931F8 2405001A */ li $a1, 26 -/* 093DFC 800931FC 24060035 */ li $a2, 53 -/* 093E00 80093200 0C020600 */ jal show_timestamp -/* 093E04 80093204 24070080 */ li $a3, 128 -/* 093E08 80093208 8FAE0050 */ lw $t6, 0x50($sp) -/* 093E0C 8009320C 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 -/* 093E10 80093210 3C0F800E */ lui $t7, %hi(gTrackIdForPreview) # $t7, 0x800e -/* 093E14 80093214 8DEFF4C4 */ lw $t7, %lo(gTrackIdForPreview)($t7) -/* 093E18 80093218 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) -/* 093E1C 8009321C 8DCA004C */ lw $t2, 0x4c($t6) -/* 093E20 80093220 0018C880 */ sll $t9, $t8, 2 -/* 093E24 80093224 014F5821 */ addu $t3, $t2, $t7 -/* 093E28 80093228 816C0002 */ lb $t4, 2($t3) -/* 093E2C 8009322C 01D94821 */ addu $t1, $t6, $t9 -/* 093E30 80093230 8D280024 */ lw $t0, 0x24($t1) -/* 093E34 80093234 000C6840 */ sll $t5, $t4, 1 -/* 093E38 80093238 010DC021 */ addu $t8, $t0, $t5 -/* 093E3C 8009323C 97040000 */ lhu $a0, ($t8) -/* 093E40 80093240 240900FF */ li $t1, 255 -/* 093E44 80093244 241900C0 */ li $t9, 192 -/* 093E48 80093248 AFB90010 */ sw $t9, 0x10($sp) -/* 093E4C 8009324C AFA90014 */ sw $t1, 0x14($sp) -/* 093E50 80093250 AFA00018 */ sw $zero, 0x18($sp) -/* 093E54 80093254 2405001A */ li $a1, 26 -/* 093E58 80093258 24060021 */ li $a2, 33 -/* 093E5C 8009325C 0C020600 */ jal show_timestamp -/* 093E60 80093260 240700FF */ li $a3, 255 -.L80093264: -/* 093E64 80093264 3C068012 */ lui $a2, %hi(D_801263BC) # $a2, 0x8012 -/* 093E68 80093268 8CC663BC */ lw $a2, %lo(D_801263BC)($a2) -/* 093E6C 8009326C 24040007 */ li $a0, 7 -/* 093E70 80093270 000670C0 */ sll $t6, $a2, 3 -/* 093E74 80093274 29C10100 */ slti $at, $t6, 0x100 -/* 093E78 80093278 14200003 */ bnez $at, .L80093288 -/* 093E7C 8009327C 01C03025 */ move $a2, $t6 -/* 093E80 80093280 240A01FF */ li $t2, 511 -/* 093E84 80093284 014E3023 */ subu $a2, $t2, $t6 -.L80093288: -/* 093E88 80093288 240F00FF */ li $t7, 255 -/* 093E8C 8009328C AFAF0010 */ sw $t7, 0x10($sp) -/* 093E90 80093290 240500FF */ li $a1, 255 -/* 093E94 80093294 0C0313EF */ jal set_current_dialogue_background_colour -/* 093E98 80093298 00003825 */ move $a3, $zero -/* 093E9C 8009329C 8FA20060 */ lw $v0, 0x60($sp) -/* 093EA0 800932A0 24040007 */ li $a0, 7 -/* 093EA4 800932A4 244B0089 */ addiu $t3, $v0, 0x89 -/* 093EA8 800932A8 AFAB0010 */ sw $t3, 0x10($sp) -/* 093EAC 800932AC 24050086 */ li $a1, 134 -/* 093EB0 800932B0 240700BA */ li $a3, 186 -/* 093EB4 800932B4 0C0313B7 */ jal set_current_dialogue_box_coords -/* 093EB8 800932B8 24460070 */ addiu $a2, $v0, 0x70 -/* 093EBC 800932BC 02402025 */ move $a0, $s2 -/* 093EC0 800932C0 00002825 */ move $a1, $zero -/* 093EC4 800932C4 00003025 */ move $a2, $zero -/* 093EC8 800932C8 0C0316D6 */ jal render_dialogue_box -/* 093ECC 800932CC 24070007 */ li $a3, 7 -/* 093ED0 800932D0 8FA70060 */ lw $a3, 0x60($sp) -/* 093ED4 800932D4 3C05800E */ lui $a1, %hi(gRaceSelectionVehicleTitleTexture) # $a1, 0x800e -/* 093ED8 800932D8 240C00FF */ li $t4, 255 -/* 093EDC 800932DC 240800FF */ li $t0, 255 -/* 093EE0 800932E0 240D00FF */ li $t5, 255 -/* 093EE4 800932E4 241800FF */ li $t8, 255 -/* 093EE8 800932E8 AFB8001C */ sw $t8, 0x1c($sp) -/* 093EEC 800932EC AFAD0018 */ sw $t5, 0x18($sp) -/* 093EF0 800932F0 AFA80014 */ sw $t0, 0x14($sp) -/* 093EF4 800932F4 AFAC0010 */ sw $t4, 0x10($sp) -/* 093EF8 800932F8 24A505B4 */ addiu $a1, %lo(gRaceSelectionVehicleTitleTexture) # addiu $a1, $a1, 0x5b4 -/* 093EFC 800932FC 02402025 */ move $a0, $s2 -/* 093F00 80093300 24060088 */ li $a2, 136 -/* 093F04 80093304 0C01E2AE */ jal render_textured_rectangle -/* 093F08 80093308 24E70072 */ addiu $a3, $a3, 0x72 -/* 093F0C 8009330C 8FB90060 */ lw $t9, 0x60($sp) -/* 093F10 80093310 00008025 */ move $s0, $zero -/* 093F14 80093314 2731008B */ addiu $s1, $t9, 0x8b -/* 093F18 80093318 AFB10040 */ sw $s1, 0x40($sp) -/* 093F1C 8009331C 8FAE007C */ lw $t6, 0x7c($sp) -.L80093320: -/* 093F20 80093320 8FA40058 */ lw $a0, 0x58($sp) -/* 093F24 80093324 29C10002 */ slti $at, $t6, 2 -/* 093F28 80093328 10200008 */ beqz $at, .L8009334C -/* 093F2C 8009332C 240200FF */ li $v0, 255 -/* 093F30 80093330 0C01AC2B */ jal func_8006B0AC -/* 093F34 80093334 00000000 */ nop -/* 093F38 80093338 10500004 */ beq $v0, $s0, .L8009334C -/* 093F3C 8009333C 240200FF */ li $v0, 255 -/* 093F40 80093340 10000002 */ b .L8009334C -/* 093F44 80093344 24020080 */ li $v0, 128 -/* 093F48 80093348 240200FF */ li $v0, 255 -.L8009334C: -/* 093F4C 8009334C 8FAB005C */ lw $t3, 0x5c($sp) -/* 093F50 80093350 240A0001 */ li $t2, 1 -/* 093F54 80093354 020A7804 */ sllv $t7, $t2, $s0 -/* 093F58 80093358 01EB6024 */ and $t4, $t7, $t3 -/* 093F5C 8009335C 11800025 */ beqz $t4, .L800933F4 -/* 093F60 80093360 00104080 */ sll $t0, $s0, 2 -/* 093F64 80093364 3C198012 */ lui $t9, %hi(gPlayerSelectVehicle) # $t9, 0x8012 -/* 093F68 80093368 833969C0 */ lb $t9, %lo(gPlayerSelectVehicle)($t9) -/* 093F6C 8009336C 01104023 */ subu $t0, $t0, $s0 -/* 093F70 80093370 3C18800E */ lui $t8, %hi(gRaceSelectionImages) # $t8, 0x800e -/* 093F74 80093374 27180624 */ addiu $t8, %lo(gRaceSelectionImages) # addiu $t8, $t8, 0x624 -/* 093F78 80093378 00086880 */ sll $t5, $t0, 2 -/* 093F7C 8009337C 16190010 */ bne $s0, $t9, .L800933C0 -/* 093F80 80093380 01B81821 */ addu $v1, $t5, $t8 -/* 093F84 80093384 8C650004 */ lw $a1, 4($v1) -/* 093F88 80093388 240900FF */ li $t1, 255 -/* 093F8C 8009338C 240E00FF */ li $t6, 255 -/* 093F90 80093390 240A00FF */ li $t2, 255 -/* 093F94 80093394 240F00FF */ li $t7, 255 -/* 093F98 80093398 AFAF001C */ sw $t7, 0x1c($sp) -/* 093F9C 8009339C AFAA0018 */ sw $t2, 0x18($sp) -/* 093FA0 800933A0 AFAE0014 */ sw $t6, 0x14($sp) -/* 093FA4 800933A4 AFA90010 */ sw $t1, 0x10($sp) -/* 093FA8 800933A8 02402025 */ move $a0, $s2 -/* 093FAC 800933AC 24060068 */ li $a2, 104 -/* 093FB0 800933B0 0C01E2AE */ jal render_textured_rectangle -/* 093FB4 800933B4 02203825 */ move $a3, $s1 -/* 093FB8 800933B8 1000000E */ b .L800933F4 -/* 093FBC 800933BC 26310018 */ addiu $s1, $s1, 0x18 -.L800933C0: -/* 093FC0 800933C0 8C650008 */ lw $a1, 8($v1) -/* 093FC4 800933C4 240B00FF */ li $t3, 255 -/* 093FC8 800933C8 240C00FF */ li $t4, 255 -/* 093FCC 800933CC 240800FF */ li $t0, 255 -/* 093FD0 800933D0 AFA80018 */ sw $t0, 0x18($sp) -/* 093FD4 800933D4 AFAC0014 */ sw $t4, 0x14($sp) -/* 093FD8 800933D8 AFAB0010 */ sw $t3, 0x10($sp) -/* 093FDC 800933DC 02402025 */ move $a0, $s2 -/* 093FE0 800933E0 24060068 */ li $a2, 104 -/* 093FE4 800933E4 02203825 */ move $a3, $s1 -/* 093FE8 800933E8 0C01E2AE */ jal render_textured_rectangle -/* 093FEC 800933EC AFA2001C */ sw $v0, 0x1c($sp) -/* 093FF0 800933F0 26310018 */ addiu $s1, $s1, 0x18 -.L800933F4: -/* 093FF4 800933F4 26100001 */ addiu $s0, $s0, 1 -/* 093FF8 800933F8 24010003 */ li $at, 3 -/* 093FFC 800933FC 1601FFC8 */ bne $s0, $at, .L80093320 -/* 094000 80093400 8FAE007C */ lw $t6, 0x7c($sp) -/* 094004 80093404 3C028012 */ lui $v0, %hi(gPlayerSelectVehicle) # $v0, 0x8012 -/* 094008 80093408 804269C0 */ lb $v0, %lo(gPlayerSelectVehicle)($v0) -/* 09400C 8009340C 8FB10040 */ lw $s1, 0x40($sp) -/* 094010 80093410 24010002 */ li $at, 2 -/* 094014 80093414 14410002 */ bne $v0, $at, .L80093420 -/* 094018 80093418 02402025 */ move $a0, $s2 -/* 09401C 8009341C 26310002 */ addiu $s1, $s1, 2 -.L80093420: -/* 094020 80093420 00026880 */ sll $t5, $v0, 2 -/* 094024 80093424 01A26823 */ subu $t5, $t5, $v0 -/* 094028 80093428 000DC080 */ sll $t8, $t5, 2 -/* 09402C 8009342C 3C05800E */ lui $a1, %hi(gRaceSelectionImages) # $a1, 0x800e -/* 094030 80093430 00B82821 */ addu $a1, $a1, $t8 -/* 094034 80093434 8CA50624 */ lw $a1, %lo(gRaceSelectionImages)($a1) -/* 094038 80093438 241900FF */ li $t9, 255 -/* 09403C 8009343C 240900FF */ li $t1, 255 -/* 094040 80093440 240E00FF */ li $t6, 255 -/* 094044 80093444 240A00FF */ li $t2, 255 -/* 094048 80093448 AFAA001C */ sw $t2, 0x1c($sp) -/* 09404C 8009344C AFAE0018 */ sw $t6, 0x18($sp) -/* 094050 80093450 AFA90014 */ sw $t1, 0x14($sp) -/* 094054 80093454 AFB90010 */ sw $t9, 0x10($sp) -/* 094058 80093458 24060095 */ li $a2, 149 -/* 09405C 8009345C 0C01E2AE */ jal render_textured_rectangle -/* 094060 80093460 02203825 */ move $a3, $s1 -/* 094064 80093464 0C01ECF4 */ jal func_8007B3D0 -/* 094068 80093468 02402025 */ move $a0, $s2 -/* 09406C 8009346C 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e -/* 094070 80093470 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 -/* 094074 80093474 3C0141A8 */ li $at, 0x41A80000 # 21.000000 -/* 094078 80093478 44812000 */ mtc1 $at, $f4 -/* 09407C 8009347C 8C4F0000 */ lw $t7, ($v0) -/* 094080 80093480 3C01C250 */ li $at, 0xC2500000 # -52.000000 -/* 094084 80093484 E5E400EC */ swc1 $f4, 0xec($t7) -/* 094088 80093488 8C4B0000 */ lw $t3, ($v0) -/* 09408C 8009348C 44813000 */ mtc1 $at, $f6 -/* 094090 80093490 24040007 */ li $a0, 7 -/* 094094 80093494 0C027298 */ jal func_8009CA60 -/* 094098 80093498 E56600F0 */ swc1 $f6, 0xf0($t3) -/* 09409C 8009349C 3C0C8012 */ lui $t4, %hi(D_801263E0) # $t4, 0x8012 -/* 0940A0 800934A0 8D8C63E0 */ lw $t4, %lo(D_801263E0)($t4) -/* 0940A4 800934A4 00000000 */ nop -/* 0940A8 800934A8 11800050 */ beqz $t4, .L800935EC -/* 0940AC 800934AC 8FBF0034 */ lw $ra, 0x34($sp) -/* 0940B0 800934B0 0C0310BB */ jal set_text_font -/* 0940B4 800934B4 24040002 */ li $a0, 2 -/* 0940B8 800934B8 00002025 */ move $a0, $zero -/* 0940BC 800934BC 00002825 */ move $a1, $zero -/* 0940C0 800934C0 00003025 */ move $a2, $zero -/* 0940C4 800934C4 0C0310F3 */ jal set_text_background_colour -/* 0940C8 800934C8 00003825 */ move $a3, $zero -/* 0940CC 800934CC 240800FF */ li $t0, 255 -/* 0940D0 800934D0 AFA80010 */ sw $t0, 0x10($sp) -/* 0940D4 800934D4 240400FF */ li $a0, 255 -/* 0940D8 800934D8 240500FF */ li $a1, 255 -/* 0940DC 800934DC 240600FF */ li $a2, 255 -/* 0940E0 800934E0 0C0310E1 */ jal set_text_colour -/* 0940E4 800934E4 00003825 */ move $a3, $zero -/* 0940E8 800934E8 8FA60060 */ lw $a2, 0x60($sp) -/* 0940EC 800934EC 3C07800F */ lui $a3, %hi(D_800E8240) # $a3, 0x800f -/* 0940F0 800934F0 240D000C */ li $t5, 12 -/* 0940F4 800934F4 AFAD0010 */ sw $t5, 0x10($sp) -/* 0940F8 800934F8 24E78240 */ addiu $a3, %lo(D_800E8240) # addiu $a3, $a3, -0x7dc0 -/* 0940FC 800934FC 02402025 */ move $a0, $s2 -/* 094100 80093500 240500A0 */ li $a1, 160 -/* 094104 80093504 0C031110 */ jal draw_text -/* 094108 80093508 24C600AC */ addiu $a2, $a2, 0xac -/* 09410C 8009350C 10000037 */ b .L800935EC -/* 094110 80093510 8FBF0034 */ lw $ra, 0x34($sp) -.L80093514: -/* 094114 80093514 0C0310BB */ jal set_text_font -/* 094118 80093518 24040002 */ li $a0, 2 -/* 09411C 8009351C 00002025 */ move $a0, $zero -/* 094120 80093520 00002825 */ move $a1, $zero -/* 094124 80093524 00003025 */ move $a2, $zero -/* 094128 80093528 0C0310F3 */ jal set_text_background_colour -/* 09412C 8009352C 00003825 */ move $a3, $zero -/* 094130 80093530 241800FF */ li $t8, 255 -/* 094134 80093534 AFB80010 */ sw $t8, 0x10($sp) -/* 094138 80093538 240400FF */ li $a0, 255 -/* 09413C 8009353C 240500FF */ li $a1, 255 -/* 094140 80093540 240600FF */ li $a2, 255 -/* 094144 80093544 0C0310E1 */ jal set_text_colour -/* 094148 80093548 00003825 */ move $a3, $zero -/* 09414C 8009354C 8FB00060 */ lw $s0, 0x60($sp) -/* 094150 80093550 00000000 */ nop -/* 094154 80093554 261000B0 */ addiu $s0, $s0, 0xb0 -/* 094158 80093558 0C027AC8 */ jal get_language -/* 09415C 8009355C 02008825 */ move $s1, $s0 -/* 094160 80093560 24010002 */ li $at, 2 -/* 094164 80093564 1441000A */ bne $v0, $at, .L80093590 -/* 094168 80093568 02402025 */ move $a0, $s2 -/* 09416C 8009356C 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e -/* 094170 80093570 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) -/* 094174 80093574 2409000C */ li $t1, 12 -/* 094178 80093578 8F270034 */ lw $a3, 0x34($t9) -/* 09417C 8009357C AFA90010 */ sw $t1, 0x10($sp) -/* 094180 80093580 240500A0 */ li $a1, 160 -/* 094184 80093584 0C031110 */ jal draw_text -/* 094188 80093588 02003025 */ move $a2, $s0 -/* 09418C 8009358C 26110020 */ addiu $s1, $s0, 0x20 -.L80093590: -/* 094190 80093590 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e -/* 094194 80093594 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) -/* 094198 80093598 240A000C */ li $t2, 12 -/* 09419C 8009359C 8DC7002C */ lw $a3, 0x2c($t6) -/* 0941A0 800935A0 AFAA0010 */ sw $t2, 0x10($sp) -/* 0941A4 800935A4 02402025 */ move $a0, $s2 -/* 0941A8 800935A8 240500A0 */ li $a1, 160 -/* 0941AC 800935AC 0C031110 */ jal draw_text -/* 0941B0 800935B0 02203025 */ move $a2, $s1 -/* 0941B4 800935B4 0C027AC8 */ jal get_language -/* 0941B8 800935B8 26310020 */ addiu $s1, $s1, 0x20 -/* 0941BC 800935BC 24010002 */ li $at, 2 -/* 0941C0 800935C0 10410009 */ beq $v0, $at, .L800935E8 -/* 0941C4 800935C4 02402025 */ move $a0, $s2 -/* 0941C8 800935C8 3C0F800E */ lui $t7, %hi(gMenuText) # $t7, 0x800e -/* 0941CC 800935CC 8DEFF4A0 */ lw $t7, %lo(gMenuText)($t7) -/* 0941D0 800935D0 240B000C */ li $t3, 12 -/* 0941D4 800935D4 8DE70034 */ lw $a3, 0x34($t7) -/* 0941D8 800935D8 AFAB0010 */ sw $t3, 0x10($sp) -/* 0941DC 800935DC 240500A0 */ li $a1, 160 -/* 0941E0 800935E0 0C031110 */ jal draw_text -/* 0941E4 800935E4 02203025 */ move $a2, $s1 -.L800935E8: -/* 0941E8 800935E8 8FBF0034 */ lw $ra, 0x34($sp) -.L800935EC: -/* 0941EC 800935EC 8FB00028 */ lw $s0, 0x28($sp) -/* 0941F0 800935F0 8FB1002C */ lw $s1, 0x2c($sp) -/* 0941F4 800935F4 8FB20030 */ lw $s2, 0x30($sp) -/* 0941F8 800935F8 03E00008 */ jr $ra -/* 0941FC 800935FC 27BD0078 */ addiu $sp, $sp, 0x78 - +glabel func_80092E94 +/* 093A94 80092E94 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 093A98 80092E98 AFBF0034 */ sw $ra, 0x34($sp) +/* 093A9C 80092E9C AFB1002C */ sw $s1, 0x2c($sp) +/* 093AA0 80092EA0 00C08825 */ move $s1, $a2 +/* 093AA4 80092EA4 AFB20030 */ sw $s2, 0x30($sp) +/* 093AA8 80092EA8 AFB00028 */ sw $s0, 0x28($sp) +/* 093AAC 80092EAC AFA40078 */ sw $a0, 0x78($sp) +/* 093AB0 80092EB0 AFA5007C */ sw $a1, 0x7c($sp) +/* 093AB4 80092EB4 0C01BAA4 */ jal get_settings +/* 093AB8 80092EB8 AFA00054 */ sw $zero, 0x54($sp) +/* 093ABC 80092EBC 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 +/* 093AC0 80092EC0 8DCE0300 */ lw $t6, %lo(osTvType)($t6) +/* 093AC4 80092EC4 00402025 */ move $a0, $v0 +/* 093AC8 80092EC8 15C00002 */ bnez $t6, .L80092ED4 +/* 093ACC 80092ECC 00002825 */ move $a1, $zero +/* 093AD0 80092ED0 2405000C */ li $a1, 12 +.L80092ED4: +/* 093AD4 80092ED4 3C18800E */ lui $t8, %hi(gTrackIdForPreview) # $t8, 0x800e +/* 093AD8 80092ED8 8F18F4C4 */ lw $t8, %lo(gTrackIdForPreview)($t8) +/* 093ADC 80092EDC 8C8F004C */ lw $t7, 0x4c($a0) +/* 093AE0 80092EE0 3C128012 */ lui $s2, %hi(sMenuCurrDisplayList) # $s2, 0x8012 +/* 093AE4 80092EE4 265263A0 */ addiu $s2, %lo(sMenuCurrDisplayList) # addiu $s2, $s2, 0x63a0 +/* 093AE8 80092EE8 01F8C821 */ addu $t9, $t7, $t8 +/* 093AEC 80092EEC 83280002 */ lb $t0, 2($t9) +/* 093AF0 80092EF0 8E430000 */ lw $v1, ($s2) +/* 093AF4 80092EF4 AFA80058 */ sw $t0, 0x58($sp) +/* 093AF8 80092EF8 24690008 */ addiu $t1, $v1, 8 +/* 093AFC 80092EFC AE490000 */ sw $t1, ($s2) +/* 093B00 80092F00 3C0AB600 */ lui $t2, 0xb600 +/* 093B04 80092F04 240B1000 */ li $t3, 4096 +/* 093B08 80092F08 AC6B0004 */ sw $t3, 4($v1) +/* 093B0C 80092F0C AC6A0000 */ sw $t2, ($v1) +/* 093B10 80092F10 AFA50060 */ sw $a1, 0x60($sp) +/* 093B14 80092F14 0C026F57 */ jal func_8009BD5C +/* 093B18 80092F18 AFA40050 */ sw $a0, 0x50($sp) +/* 093B1C 80092F1C 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 +/* 093B20 80092F20 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 +/* 093B24 80092F24 0C019FCB */ jal func_80067F2C +/* 093B28 80092F28 02402025 */ move $a0, $s2 +/* 093B2C 80092F2C 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e +/* 093B30 80092F30 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) +/* 093B34 80092F34 00000000 */ nop +/* 093B38 80092F38 2841FFEC */ slti $at, $v0, -0x14 +/* 093B3C 80092F3C 142001AA */ bnez $at, .L800935E8 +/* 093B40 80092F40 28410015 */ slti $at, $v0, 0x15 +/* 093B44 80092F44 102001A9 */ beqz $at, .L800935EC +/* 093B48 80092F48 8FBF0034 */ lw $ra, 0x34($sp) +/* 093B4C 80092F4C 8FA40058 */ lw $a0, 0x58($sp) +/* 093B50 80092F50 0C01AC3E */ jal func_8006B0F8 +/* 093B54 80092F54 00000000 */ nop +/* 093B58 80092F58 8FA40058 */ lw $a0, 0x58($sp) +/* 093B5C 80092F5C 0C01AF77 */ jal get_level_name +/* 093B60 80092F60 AFA2005C */ sw $v0, 0x5c($sp) +/* 093B64 80092F64 00408025 */ move $s0, $v0 +/* 093B68 80092F68 0C0310BB */ jal set_text_font +/* 093B6C 80092F6C 24040002 */ li $a0, 2 +/* 093B70 80092F70 00002025 */ move $a0, $zero +/* 093B74 80092F74 00002825 */ move $a1, $zero +/* 093B78 80092F78 00003025 */ move $a2, $zero +/* 093B7C 80092F7C 0C0310F3 */ jal set_text_background_colour +/* 093B80 80092F80 00003825 */ move $a3, $zero +/* 093B84 80092F84 240C0080 */ li $t4, 128 +/* 093B88 80092F88 AFAC0010 */ sw $t4, 0x10($sp) +/* 093B8C 80092F8C 00002025 */ move $a0, $zero +/* 093B90 80092F90 00002825 */ move $a1, $zero +/* 093B94 80092F94 00003025 */ move $a2, $zero +/* 093B98 80092F98 0C0310E1 */ jal set_text_colour +/* 093B9C 80092F9C 240700FF */ li $a3, 255 +/* 093BA0 80092FA0 240D000C */ li $t5, 12 +/* 093BA4 80092FA4 AFAD0010 */ sw $t5, 0x10($sp) +/* 093BA8 80092FA8 02402025 */ move $a0, $s2 +/* 093BAC 80092FAC 240500A1 */ li $a1, 161 +/* 093BB0 80092FB0 2406002E */ li $a2, 46 +/* 093BB4 80092FB4 0C031110 */ jal draw_text +/* 093BB8 80092FB8 02003825 */ move $a3, $s0 +/* 093BBC 80092FBC 240E00FF */ li $t6, 255 +/* 093BC0 80092FC0 AFAE0010 */ sw $t6, 0x10($sp) +/* 093BC4 80092FC4 240400FF */ li $a0, 255 +/* 093BC8 80092FC8 240500FF */ li $a1, 255 +/* 093BCC 80092FCC 240600FF */ li $a2, 255 +/* 093BD0 80092FD0 0C0310E1 */ jal set_text_colour +/* 093BD4 80092FD4 00003825 */ move $a3, $zero +/* 093BD8 80092FD8 240F000C */ li $t7, 12 +/* 093BDC 80092FDC AFAF0010 */ sw $t7, 0x10($sp) +/* 093BE0 80092FE0 02402025 */ move $a0, $s2 +/* 093BE4 80092FE4 240500A0 */ li $a1, 160 +/* 093BE8 80092FE8 2406002B */ li $a2, 43 +/* 093BEC 80092FEC 0C031110 */ jal draw_text +/* 093BF0 80092FF0 02003825 */ move $a3, $s0 +/* 093BF4 80092FF4 8FA40058 */ lw $a0, 0x58($sp) +/* 093BF8 80092FF8 0C01AC53 */ jal func_8006B14C +/* 093BFC 80092FFC 00000000 */ nop +/* 093C00 80093000 30580040 */ andi $t8, $v0, 0x40 +/* 093C04 80093004 17000179 */ bnez $t8, .L800935EC +/* 093C08 80093008 8FBF0034 */ lw $ra, 0x34($sp) +/* 093C0C 8009300C 16200141 */ bnez $s1, .L80093514 +/* 093C10 80093010 00000000 */ nop +/* 093C14 80093014 0C003932 */ jal is_time_trial_enabled +/* 093C18 80093018 00000000 */ nop +/* 093C1C 8009301C 10400091 */ beqz $v0, .L80093264 +/* 093C20 80093020 00000000 */ nop +/* 093C24 80093024 8FA40058 */ lw $a0, 0x58($sp) +/* 093C28 80093028 0C024AF8 */ jal func_80092BE0 +/* 093C2C 8009302C 00000000 */ nop +/* 093C30 80093030 04400010 */ bltz $v0, .L80093074 +/* 093C34 80093034 3C0A800E */ lui $t2, %hi(sMenuGuiOpacity) # $t2, 0x800e +/* 093C38 80093038 8D4AF764 */ lw $t2, %lo(sMenuGuiOpacity)($t2) +/* 093C3C 8009303C 8FA70060 */ lw $a3, 0x60($sp) +/* 093C40 80093040 3C05800E */ lui $a1, %hi(gRaceSelectionTTTexture) # $a1, 0x800e +/* 093C44 80093044 241900FF */ li $t9, 255 +/* 093C48 80093048 240800FF */ li $t0, 255 +/* 093C4C 8009304C 240900FF */ li $t1, 255 +/* 093C50 80093050 AFA90018 */ sw $t1, 0x18($sp) +/* 093C54 80093054 AFA80014 */ sw $t0, 0x14($sp) +/* 093C58 80093058 AFB90010 */ sw $t9, 0x10($sp) +/* 093C5C 8009305C 24A50614 */ addiu $a1, %lo(gRaceSelectionTTTexture) # addiu $a1, $a1, 0x614 +/* 093C60 80093060 02402025 */ move $a0, $s2 +/* 093C64 80093064 240600CC */ li $a2, 204 +/* 093C68 80093068 AFAA001C */ sw $t2, 0x1c($sp) +/* 093C6C 8009306C 0C01E2AE */ jal render_textured_rectangle +/* 093C70 80093070 24E7007A */ addiu $a3, $a3, 0x7a +.L80093074: +/* 093C74 80093074 0C0310BB */ jal set_text_font +/* 093C78 80093078 00002025 */ move $a0, $zero +/* 093C7C 8009307C 240B00FF */ li $t3, 255 +/* 093C80 80093080 AFAB0010 */ sw $t3, 0x10($sp) +/* 093C84 80093084 240400FF */ li $a0, 255 +/* 093C88 80093088 24050040 */ li $a1, 64 +/* 093C8C 8009308C 24060040 */ li $a2, 64 +/* 093C90 80093090 0C0310E1 */ jal set_text_colour +/* 093C94 80093094 24070060 */ li $a3, 96 +/* 093C98 80093098 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e +/* 093C9C 8009309C 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) +/* 093CA0 800930A0 8FB00060 */ lw $s0, 0x60($sp) +/* 093CA4 800930A4 240D000C */ li $t5, 12 +/* 093CA8 800930A8 8D870024 */ lw $a3, 0x24($t4) +/* 093CAC 800930AC 26100048 */ addiu $s0, $s0, 0x48 +/* 093CB0 800930B0 02003025 */ move $a2, $s0 +/* 093CB4 800930B4 AFAD0010 */ sw $t5, 0x10($sp) +/* 093CB8 800930B8 02402025 */ move $a0, $s2 +/* 093CBC 800930BC 0C031110 */ jal draw_text +/* 093CC0 800930C0 24050058 */ li $a1, 88 +/* 093CC4 800930C4 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e +/* 093CC8 800930C8 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) +/* 093CCC 800930CC 8FA60060 */ lw $a2, 0x60($sp) +/* 093CD0 800930D0 8DC70028 */ lw $a3, 0x28($t6) +/* 093CD4 800930D4 240F000C */ li $t7, 12 +/* 093CD8 800930D8 24C6005C */ addiu $a2, $a2, 0x5c +/* 093CDC 800930DC AFA60040 */ sw $a2, 0x40($sp) +/* 093CE0 800930E0 AFAF0010 */ sw $t7, 0x10($sp) +/* 093CE4 800930E4 02402025 */ move $a0, $s2 +/* 093CE8 800930E8 0C031110 */ jal draw_text +/* 093CEC 800930EC 24050058 */ li $a1, 88 +/* 093CF0 800930F0 241800FF */ li $t8, 255 +/* 093CF4 800930F4 AFB80010 */ sw $t8, 0x10($sp) +/* 093CF8 800930F8 240400FF */ li $a0, 255 +/* 093CFC 800930FC 24050080 */ li $a1, 128 +/* 093D00 80093100 240600FF */ li $a2, 255 +/* 093D04 80093104 0C0310E1 */ jal set_text_colour +/* 093D08 80093108 24070060 */ li $a3, 96 +/* 093D0C 8009310C 3C098012 */ lui $t1, %hi(gPlayerSelectVehicle) # $t1, 0x8012 +/* 093D10 80093110 812969C0 */ lb $t1, %lo(gPlayerSelectVehicle)($t1) +/* 093D14 80093114 8FA80050 */ lw $t0, 0x50($sp) +/* 093D18 80093118 00095080 */ sll $t2, $t1, 2 +/* 093D1C 8009311C 8FB10058 */ lw $s1, 0x58($sp) +/* 093D20 80093120 010A5821 */ addu $t3, $t0, $t2 +/* 093D24 80093124 8D6C0030 */ lw $t4, 0x30($t3) +/* 093D28 80093128 0011C840 */ sll $t9, $s1, 1 +/* 093D2C 8009312C 01996821 */ addu $t5, $t4, $t9 +/* 093D30 80093130 95A40000 */ lhu $a0, ($t5) +/* 093D34 80093134 03208825 */ move $s1, $t9 +/* 093D38 80093138 27A50054 */ addiu $a1, $sp, 0x54 +/* 093D3C 8009313C 0C025DBE */ jal decompress_filename_string +/* 093D40 80093140 24060003 */ li $a2, 3 +/* 093D44 80093144 240E000C */ li $t6, 12 +/* 093D48 80093148 AFAE0010 */ sw $t6, 0x10($sp) +/* 093D4C 8009314C 02402025 */ move $a0, $s2 +/* 093D50 80093150 24050102 */ li $a1, 258 +/* 093D54 80093154 02003025 */ move $a2, $s0 +/* 093D58 80093158 0C031110 */ jal draw_text +/* 093D5C 8009315C 27A70054 */ addiu $a3, $sp, 0x54 +/* 093D60 80093160 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 +/* 093D64 80093164 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) +/* 093D68 80093168 8FAF0050 */ lw $t7, 0x50($sp) +/* 093D6C 8009316C 0018C880 */ sll $t9, $t8, 2 +/* 093D70 80093170 01F94821 */ addu $t1, $t7, $t9 +/* 093D74 80093174 8D280018 */ lw $t0, 0x18($t1) +/* 093D78 80093178 27B00054 */ addiu $s0, $sp, 0x54 +/* 093D7C 8009317C 01115021 */ addu $t2, $t0, $s1 +/* 093D80 80093180 95440000 */ lhu $a0, ($t2) +/* 093D84 80093184 02002825 */ move $a1, $s0 +/* 093D88 80093188 0C025DBE */ jal decompress_filename_string +/* 093D8C 8009318C 24060003 */ li $a2, 3 +/* 093D90 80093190 8FA60040 */ lw $a2, 0x40($sp) +/* 093D94 80093194 240B000C */ li $t3, 12 +/* 093D98 80093198 AFAB0010 */ sw $t3, 0x10($sp) +/* 093D9C 8009319C 02402025 */ move $a0, $s2 +/* 093DA0 800931A0 24050102 */ li $a1, 258 +/* 093DA4 800931A4 0C031110 */ jal draw_text +/* 093DA8 800931A8 02003825 */ move $a3, $s0 +/* 093DAC 800931AC 8FA20050 */ lw $v0, 0x50($sp) +/* 093DB0 800931B0 3C0D800E */ lui $t5, %hi(gTrackIdForPreview) # $t5, 0x800e +/* 093DB4 800931B4 3C198012 */ lui $t9, %hi(gPlayerSelectVehicle) # $t9, 0x8012 +/* 093DB8 800931B8 833969C0 */ lb $t9, %lo(gPlayerSelectVehicle)($t9) +/* 093DBC 800931BC 8DADF4C4 */ lw $t5, %lo(gTrackIdForPreview)($t5) +/* 093DC0 800931C0 8C4C004C */ lw $t4, 0x4c($v0) +/* 093DC4 800931C4 00194880 */ sll $t1, $t9, 2 +/* 093DC8 800931C8 018D7021 */ addu $t6, $t4, $t5 +/* 093DCC 800931CC 81D80002 */ lb $t8, 2($t6) +/* 093DD0 800931D0 00494021 */ addu $t0, $v0, $t1 +/* 093DD4 800931D4 8D0A003C */ lw $t2, 0x3c($t0) +/* 093DD8 800931D8 00187840 */ sll $t7, $t8, 1 +/* 093DDC 800931DC 014F5821 */ addu $t3, $t2, $t7 +/* 093DE0 800931E0 95640000 */ lhu $a0, ($t3) +/* 093DE4 800931E4 240D00FF */ li $t5, 255 +/* 093DE8 800931E8 240C00FF */ li $t4, 255 +/* 093DEC 800931EC AFAC0010 */ sw $t4, 0x10($sp) +/* 093DF0 800931F0 AFAD0014 */ sw $t5, 0x14($sp) +/* 093DF4 800931F4 AFA00018 */ sw $zero, 0x18($sp) +/* 093DF8 800931F8 2405001A */ li $a1, 26 +/* 093DFC 800931FC 24060035 */ li $a2, 53 +/* 093E00 80093200 0C020600 */ jal show_timestamp +/* 093E04 80093204 24070080 */ li $a3, 128 +/* 093E08 80093208 8FAE0050 */ lw $t6, 0x50($sp) +/* 093E0C 8009320C 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 +/* 093E10 80093210 3C0F800E */ lui $t7, %hi(gTrackIdForPreview) # $t7, 0x800e +/* 093E14 80093214 8DEFF4C4 */ lw $t7, %lo(gTrackIdForPreview)($t7) +/* 093E18 80093218 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) +/* 093E1C 8009321C 8DCA004C */ lw $t2, 0x4c($t6) +/* 093E20 80093220 0018C880 */ sll $t9, $t8, 2 +/* 093E24 80093224 014F5821 */ addu $t3, $t2, $t7 +/* 093E28 80093228 816C0002 */ lb $t4, 2($t3) +/* 093E2C 8009322C 01D94821 */ addu $t1, $t6, $t9 +/* 093E30 80093230 8D280024 */ lw $t0, 0x24($t1) +/* 093E34 80093234 000C6840 */ sll $t5, $t4, 1 +/* 093E38 80093238 010DC021 */ addu $t8, $t0, $t5 +/* 093E3C 8009323C 97040000 */ lhu $a0, ($t8) +/* 093E40 80093240 240900FF */ li $t1, 255 +/* 093E44 80093244 241900C0 */ li $t9, 192 +/* 093E48 80093248 AFB90010 */ sw $t9, 0x10($sp) +/* 093E4C 8009324C AFA90014 */ sw $t1, 0x14($sp) +/* 093E50 80093250 AFA00018 */ sw $zero, 0x18($sp) +/* 093E54 80093254 2405001A */ li $a1, 26 +/* 093E58 80093258 24060021 */ li $a2, 33 +/* 093E5C 8009325C 0C020600 */ jal show_timestamp +/* 093E60 80093260 240700FF */ li $a3, 255 +.L80093264: +/* 093E64 80093264 3C068012 */ lui $a2, %hi(gOptionBlinkTimer) # $a2, 0x8012 +/* 093E68 80093268 8CC663BC */ lw $a2, %lo(gOptionBlinkTimer)($a2) +/* 093E6C 8009326C 24040007 */ li $a0, 7 +/* 093E70 80093270 000670C0 */ sll $t6, $a2, 3 +/* 093E74 80093274 29C10100 */ slti $at, $t6, 0x100 +/* 093E78 80093278 14200003 */ bnez $at, .L80093288 +/* 093E7C 8009327C 01C03025 */ move $a2, $t6 +/* 093E80 80093280 240A01FF */ li $t2, 511 +/* 093E84 80093284 014E3023 */ subu $a2, $t2, $t6 +.L80093288: +/* 093E88 80093288 240F00FF */ li $t7, 255 +/* 093E8C 8009328C AFAF0010 */ sw $t7, 0x10($sp) +/* 093E90 80093290 240500FF */ li $a1, 255 +/* 093E94 80093294 0C0313EF */ jal set_current_dialogue_background_colour +/* 093E98 80093298 00003825 */ move $a3, $zero +/* 093E9C 8009329C 8FA20060 */ lw $v0, 0x60($sp) +/* 093EA0 800932A0 24040007 */ li $a0, 7 +/* 093EA4 800932A4 244B0089 */ addiu $t3, $v0, 0x89 +/* 093EA8 800932A8 AFAB0010 */ sw $t3, 0x10($sp) +/* 093EAC 800932AC 24050086 */ li $a1, 134 +/* 093EB0 800932B0 240700BA */ li $a3, 186 +/* 093EB4 800932B4 0C0313B7 */ jal set_current_dialogue_box_coords +/* 093EB8 800932B8 24460070 */ addiu $a2, $v0, 0x70 +/* 093EBC 800932BC 02402025 */ move $a0, $s2 +/* 093EC0 800932C0 00002825 */ move $a1, $zero +/* 093EC4 800932C4 00003025 */ move $a2, $zero +/* 093EC8 800932C8 0C0316D6 */ jal render_dialogue_box +/* 093ECC 800932CC 24070007 */ li $a3, 7 +/* 093ED0 800932D0 8FA70060 */ lw $a3, 0x60($sp) +/* 093ED4 800932D4 3C05800E */ lui $a1, %hi(gRaceSelectionVehicleTitleTexture) # $a1, 0x800e +/* 093ED8 800932D8 240C00FF */ li $t4, 255 +/* 093EDC 800932DC 240800FF */ li $t0, 255 +/* 093EE0 800932E0 240D00FF */ li $t5, 255 +/* 093EE4 800932E4 241800FF */ li $t8, 255 +/* 093EE8 800932E8 AFB8001C */ sw $t8, 0x1c($sp) +/* 093EEC 800932EC AFAD0018 */ sw $t5, 0x18($sp) +/* 093EF0 800932F0 AFA80014 */ sw $t0, 0x14($sp) +/* 093EF4 800932F4 AFAC0010 */ sw $t4, 0x10($sp) +/* 093EF8 800932F8 24A505B4 */ addiu $a1, %lo(gRaceSelectionVehicleTitleTexture) # addiu $a1, $a1, 0x5b4 +/* 093EFC 800932FC 02402025 */ move $a0, $s2 +/* 093F00 80093300 24060088 */ li $a2, 136 +/* 093F04 80093304 0C01E2AE */ jal render_textured_rectangle +/* 093F08 80093308 24E70072 */ addiu $a3, $a3, 0x72 +/* 093F0C 8009330C 8FB90060 */ lw $t9, 0x60($sp) +/* 093F10 80093310 00008025 */ move $s0, $zero +/* 093F14 80093314 2731008B */ addiu $s1, $t9, 0x8b +/* 093F18 80093318 AFB10040 */ sw $s1, 0x40($sp) +/* 093F1C 8009331C 8FAE007C */ lw $t6, 0x7c($sp) +.L80093320: +/* 093F20 80093320 8FA40058 */ lw $a0, 0x58($sp) +/* 093F24 80093324 29C10002 */ slti $at, $t6, 2 +/* 093F28 80093328 10200008 */ beqz $at, .L8009334C +/* 093F2C 8009332C 240200FF */ li $v0, 255 +/* 093F30 80093330 0C01AC2B */ jal func_8006B0AC +/* 093F34 80093334 00000000 */ nop +/* 093F38 80093338 10500004 */ beq $v0, $s0, .L8009334C +/* 093F3C 8009333C 240200FF */ li $v0, 255 +/* 093F40 80093340 10000002 */ b .L8009334C +/* 093F44 80093344 24020080 */ li $v0, 128 +/* 093F48 80093348 240200FF */ li $v0, 255 +.L8009334C: +/* 093F4C 8009334C 8FAB005C */ lw $t3, 0x5c($sp) +/* 093F50 80093350 240A0001 */ li $t2, 1 +/* 093F54 80093354 020A7804 */ sllv $t7, $t2, $s0 +/* 093F58 80093358 01EB6024 */ and $t4, $t7, $t3 +/* 093F5C 8009335C 11800025 */ beqz $t4, .L800933F4 +/* 093F60 80093360 00104080 */ sll $t0, $s0, 2 +/* 093F64 80093364 3C198012 */ lui $t9, %hi(gPlayerSelectVehicle) # $t9, 0x8012 +/* 093F68 80093368 833969C0 */ lb $t9, %lo(gPlayerSelectVehicle)($t9) +/* 093F6C 8009336C 01104023 */ subu $t0, $t0, $s0 +/* 093F70 80093370 3C18800E */ lui $t8, %hi(gRaceSelectionImages) # $t8, 0x800e +/* 093F74 80093374 27180624 */ addiu $t8, %lo(gRaceSelectionImages) # addiu $t8, $t8, 0x624 +/* 093F78 80093378 00086880 */ sll $t5, $t0, 2 +/* 093F7C 8009337C 16190010 */ bne $s0, $t9, .L800933C0 +/* 093F80 80093380 01B81821 */ addu $v1, $t5, $t8 +/* 093F84 80093384 8C650004 */ lw $a1, 4($v1) +/* 093F88 80093388 240900FF */ li $t1, 255 +/* 093F8C 8009338C 240E00FF */ li $t6, 255 +/* 093F90 80093390 240A00FF */ li $t2, 255 +/* 093F94 80093394 240F00FF */ li $t7, 255 +/* 093F98 80093398 AFAF001C */ sw $t7, 0x1c($sp) +/* 093F9C 8009339C AFAA0018 */ sw $t2, 0x18($sp) +/* 093FA0 800933A0 AFAE0014 */ sw $t6, 0x14($sp) +/* 093FA4 800933A4 AFA90010 */ sw $t1, 0x10($sp) +/* 093FA8 800933A8 02402025 */ move $a0, $s2 +/* 093FAC 800933AC 24060068 */ li $a2, 104 +/* 093FB0 800933B0 0C01E2AE */ jal render_textured_rectangle +/* 093FB4 800933B4 02203825 */ move $a3, $s1 +/* 093FB8 800933B8 1000000E */ b .L800933F4 +/* 093FBC 800933BC 26310018 */ addiu $s1, $s1, 0x18 +.L800933C0: +/* 093FC0 800933C0 8C650008 */ lw $a1, 8($v1) +/* 093FC4 800933C4 240B00FF */ li $t3, 255 +/* 093FC8 800933C8 240C00FF */ li $t4, 255 +/* 093FCC 800933CC 240800FF */ li $t0, 255 +/* 093FD0 800933D0 AFA80018 */ sw $t0, 0x18($sp) +/* 093FD4 800933D4 AFAC0014 */ sw $t4, 0x14($sp) +/* 093FD8 800933D8 AFAB0010 */ sw $t3, 0x10($sp) +/* 093FDC 800933DC 02402025 */ move $a0, $s2 +/* 093FE0 800933E0 24060068 */ li $a2, 104 +/* 093FE4 800933E4 02203825 */ move $a3, $s1 +/* 093FE8 800933E8 0C01E2AE */ jal render_textured_rectangle +/* 093FEC 800933EC AFA2001C */ sw $v0, 0x1c($sp) +/* 093FF0 800933F0 26310018 */ addiu $s1, $s1, 0x18 +.L800933F4: +/* 093FF4 800933F4 26100001 */ addiu $s0, $s0, 1 +/* 093FF8 800933F8 24010003 */ li $at, 3 +/* 093FFC 800933FC 1601FFC8 */ bne $s0, $at, .L80093320 +/* 094000 80093400 8FAE007C */ lw $t6, 0x7c($sp) +/* 094004 80093404 3C028012 */ lui $v0, %hi(gPlayerSelectVehicle) # $v0, 0x8012 +/* 094008 80093408 804269C0 */ lb $v0, %lo(gPlayerSelectVehicle)($v0) +/* 09400C 8009340C 8FB10040 */ lw $s1, 0x40($sp) +/* 094010 80093410 24010002 */ li $at, 2 +/* 094014 80093414 14410002 */ bne $v0, $at, .L80093420 +/* 094018 80093418 02402025 */ move $a0, $s2 +/* 09401C 8009341C 26310002 */ addiu $s1, $s1, 2 +.L80093420: +/* 094020 80093420 00026880 */ sll $t5, $v0, 2 +/* 094024 80093424 01A26823 */ subu $t5, $t5, $v0 +/* 094028 80093428 000DC080 */ sll $t8, $t5, 2 +/* 09402C 8009342C 3C05800E */ lui $a1, %hi(gRaceSelectionImages) # $a1, 0x800e +/* 094030 80093430 00B82821 */ addu $a1, $a1, $t8 +/* 094034 80093434 8CA50624 */ lw $a1, %lo(gRaceSelectionImages)($a1) +/* 094038 80093438 241900FF */ li $t9, 255 +/* 09403C 8009343C 240900FF */ li $t1, 255 +/* 094040 80093440 240E00FF */ li $t6, 255 +/* 094044 80093444 240A00FF */ li $t2, 255 +/* 094048 80093448 AFAA001C */ sw $t2, 0x1c($sp) +/* 09404C 8009344C AFAE0018 */ sw $t6, 0x18($sp) +/* 094050 80093450 AFA90014 */ sw $t1, 0x14($sp) +/* 094054 80093454 AFB90010 */ sw $t9, 0x10($sp) +/* 094058 80093458 24060095 */ li $a2, 149 +/* 09405C 8009345C 0C01E2AE */ jal render_textured_rectangle +/* 094060 80093460 02203825 */ move $a3, $s1 +/* 094064 80093464 0C01ECF4 */ jal func_8007B3D0 +/* 094068 80093468 02402025 */ move $a0, $s2 +/* 09406C 8009346C 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e +/* 094070 80093470 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 +/* 094074 80093474 3C0141A8 */ li $at, 0x41A80000 # 21.000000 +/* 094078 80093478 44812000 */ mtc1 $at, $f4 +/* 09407C 8009347C 8C4F0000 */ lw $t7, ($v0) +/* 094080 80093480 3C01C250 */ li $at, 0xC2500000 # -52.000000 +/* 094084 80093484 E5E400EC */ swc1 $f4, 0xec($t7) +/* 094088 80093488 8C4B0000 */ lw $t3, ($v0) +/* 09408C 8009348C 44813000 */ mtc1 $at, $f6 +/* 094090 80093490 24040007 */ li $a0, 7 +/* 094094 80093494 0C027298 */ jal func_8009CA60 +/* 094098 80093498 E56600F0 */ swc1 $f6, 0xf0($t3) +/* 09409C 8009349C 3C0C8012 */ lui $t4, %hi(D_801263E0) # $t4, 0x8012 +/* 0940A0 800934A0 8D8C63E0 */ lw $t4, %lo(D_801263E0)($t4) +/* 0940A4 800934A4 00000000 */ nop +/* 0940A8 800934A8 11800050 */ beqz $t4, .L800935EC +/* 0940AC 800934AC 8FBF0034 */ lw $ra, 0x34($sp) +/* 0940B0 800934B0 0C0310BB */ jal set_text_font +/* 0940B4 800934B4 24040002 */ li $a0, 2 +/* 0940B8 800934B8 00002025 */ move $a0, $zero +/* 0940BC 800934BC 00002825 */ move $a1, $zero +/* 0940C0 800934C0 00003025 */ move $a2, $zero +/* 0940C4 800934C4 0C0310F3 */ jal set_text_background_colour +/* 0940C8 800934C8 00003825 */ move $a3, $zero +/* 0940CC 800934CC 240800FF */ li $t0, 255 +/* 0940D0 800934D0 AFA80010 */ sw $t0, 0x10($sp) +/* 0940D4 800934D4 240400FF */ li $a0, 255 +/* 0940D8 800934D8 240500FF */ li $a1, 255 +/* 0940DC 800934DC 240600FF */ li $a2, 255 +/* 0940E0 800934E0 0C0310E1 */ jal set_text_colour +/* 0940E4 800934E4 00003825 */ move $a3, $zero +/* 0940E8 800934E8 8FA60060 */ lw $a2, 0x60($sp) +/* 0940EC 800934EC 3C07800F */ lui $a3, %hi(D_800E8240) # $a3, 0x800f +/* 0940F0 800934F0 240D000C */ li $t5, 12 +/* 0940F4 800934F4 AFAD0010 */ sw $t5, 0x10($sp) +/* 0940F8 800934F8 24E78240 */ addiu $a3, %lo(D_800E8240) # addiu $a3, $a3, -0x7dc0 +/* 0940FC 800934FC 02402025 */ move $a0, $s2 +/* 094100 80093500 240500A0 */ li $a1, 160 +/* 094104 80093504 0C031110 */ jal draw_text +/* 094108 80093508 24C600AC */ addiu $a2, $a2, 0xac +/* 09410C 8009350C 10000037 */ b .L800935EC +/* 094110 80093510 8FBF0034 */ lw $ra, 0x34($sp) +.L80093514: +/* 094114 80093514 0C0310BB */ jal set_text_font +/* 094118 80093518 24040002 */ li $a0, 2 +/* 09411C 8009351C 00002025 */ move $a0, $zero +/* 094120 80093520 00002825 */ move $a1, $zero +/* 094124 80093524 00003025 */ move $a2, $zero +/* 094128 80093528 0C0310F3 */ jal set_text_background_colour +/* 09412C 8009352C 00003825 */ move $a3, $zero +/* 094130 80093530 241800FF */ li $t8, 255 +/* 094134 80093534 AFB80010 */ sw $t8, 0x10($sp) +/* 094138 80093538 240400FF */ li $a0, 255 +/* 09413C 8009353C 240500FF */ li $a1, 255 +/* 094140 80093540 240600FF */ li $a2, 255 +/* 094144 80093544 0C0310E1 */ jal set_text_colour +/* 094148 80093548 00003825 */ move $a3, $zero +/* 09414C 8009354C 8FB00060 */ lw $s0, 0x60($sp) +/* 094150 80093550 00000000 */ nop +/* 094154 80093554 261000B0 */ addiu $s0, $s0, 0xb0 +/* 094158 80093558 0C027AC8 */ jal get_language +/* 09415C 8009355C 02008825 */ move $s1, $s0 +/* 094160 80093560 24010002 */ li $at, 2 +/* 094164 80093564 1441000A */ bne $v0, $at, .L80093590 +/* 094168 80093568 02402025 */ move $a0, $s2 +/* 09416C 8009356C 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e +/* 094170 80093570 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) +/* 094174 80093574 2409000C */ li $t1, 12 +/* 094178 80093578 8F270034 */ lw $a3, 0x34($t9) +/* 09417C 8009357C AFA90010 */ sw $t1, 0x10($sp) +/* 094180 80093580 240500A0 */ li $a1, 160 +/* 094184 80093584 0C031110 */ jal draw_text +/* 094188 80093588 02003025 */ move $a2, $s0 +/* 09418C 8009358C 26110020 */ addiu $s1, $s0, 0x20 +.L80093590: +/* 094190 80093590 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e +/* 094194 80093594 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) +/* 094198 80093598 240A000C */ li $t2, 12 +/* 09419C 8009359C 8DC7002C */ lw $a3, 0x2c($t6) +/* 0941A0 800935A0 AFAA0010 */ sw $t2, 0x10($sp) +/* 0941A4 800935A4 02402025 */ move $a0, $s2 +/* 0941A8 800935A8 240500A0 */ li $a1, 160 +/* 0941AC 800935AC 0C031110 */ jal draw_text +/* 0941B0 800935B0 02203025 */ move $a2, $s1 +/* 0941B4 800935B4 0C027AC8 */ jal get_language +/* 0941B8 800935B8 26310020 */ addiu $s1, $s1, 0x20 +/* 0941BC 800935BC 24010002 */ li $at, 2 +/* 0941C0 800935C0 10410009 */ beq $v0, $at, .L800935E8 +/* 0941C4 800935C4 02402025 */ move $a0, $s2 +/* 0941C8 800935C8 3C0F800E */ lui $t7, %hi(gMenuText) # $t7, 0x800e +/* 0941CC 800935CC 8DEFF4A0 */ lw $t7, %lo(gMenuText)($t7) +/* 0941D0 800935D0 240B000C */ li $t3, 12 +/* 0941D4 800935D4 8DE70034 */ lw $a3, 0x34($t7) +/* 0941D8 800935D8 AFAB0010 */ sw $t3, 0x10($sp) +/* 0941DC 800935DC 240500A0 */ li $a1, 160 +/* 0941E0 800935E0 0C031110 */ jal draw_text +/* 0941E4 800935E4 02203025 */ move $a2, $s1 +.L800935E8: +/* 0941E8 800935E8 8FBF0034 */ lw $ra, 0x34($sp) +.L800935EC: +/* 0941EC 800935EC 8FB00028 */ lw $s0, 0x28($sp) +/* 0941F0 800935F0 8FB1002C */ lw $s1, 0x2c($sp) +/* 0941F4 800935F4 8FB20030 */ lw $s2, 0x30($sp) +/* 0941F8 800935F8 03E00008 */ jr $ra +/* 0941FC 800935FC 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/menu/func_80093D40.s b/asm/non_matchings/menu/func_80093D40.s index 16656e75..a37f8a48 100644 --- a/asm/non_matchings/menu/func_80093D40.s +++ b/asm/non_matchings/menu/func_80093D40.s @@ -1,8 +1,8 @@ glabel func_80093D40 /* 094940 80093D40 27BDFFB8 */ addiu $sp, $sp, -0x48 /* 094944 80093D44 AFB3002C */ sw $s3, 0x2c($sp) -/* 094948 80093D48 3C13800E */ lui $s3, %hi(D_800E0984) # $s3, 0x800e -/* 09494C 80093D4C 26730984 */ addiu $s3, %lo(D_800E0984) # addiu $s3, $s3, 0x984 +/* 094948 80093D48 3C13800E */ lui $s3, %hi(gMenuOptionCap) # $s3, 0x800e +/* 09494C 80093D4C 26730984 */ addiu $s3, %lo(gMenuOptionCap) # addiu $s3, $s3, 0x984 /* 094950 80093D50 8E620000 */ lw $v0, ($s3) /* 094954 80093D54 AFB10024 */ sw $s1, 0x24($sp) /* 094958 80093D58 AFBF0034 */ sw $ra, 0x34($sp) @@ -13,8 +13,8 @@ glabel func_80093D40 /* 09496C 80093D6C 00008825 */ move $s1, $zero /* 094970 80093D70 18400013 */ blez $v0, .L80093DC0 /* 094974 80093D74 240800A0 */ li $t0, 160 -/* 094978 80093D78 3C108012 */ lui $s0, %hi(D_80126A40) # $s0, 0x8012 -/* 09497C 80093D7C 26106A40 */ addiu $s0, %lo(D_80126A40) # addiu $s0, $s0, 0x6a40 +/* 094978 80093D78 3C108012 */ lui $s0, %hi(gMenuOptionText) # $s0, 0x8012 +/* 09497C 80093D7C 26106A40 */ addiu $s0, %lo(gMenuOptionText) # addiu $s0, $s0, 0x6a40 .L80093D80: /* 094980 80093D80 8E040000 */ lw $a0, ($s0) /* 094984 80093D84 00002825 */ move $a1, $zero @@ -101,9 +101,9 @@ glabel func_80093D40 /* 094AB8 80093EB8 24040007 */ li $a0, 7 /* 094ABC 80093EBC 0C031400 */ jal set_current_text_colour /* 094AC0 80093EC0 AFAD0010 */ sw $t5, 0x10($sp) -/* 094AC4 80093EC4 3C148012 */ lui $s4, %hi(D_801263BC) # $s4, 0x8012 -/* 094AC8 80093EC8 8E9463BC */ lw $s4, %lo(D_801263BC)($s4) -/* 094ACC 80093ECC 3C12800E */ lui $s2, %hi(D_800E0988) # $s2, 0x800e +/* 094AC4 80093EC4 3C148012 */ lui $s4, %hi(gOptionBlinkTimer) # $s4, 0x8012 +/* 094AC8 80093EC8 8E9463BC */ lw $s4, %lo(gOptionBlinkTimer)($s4) +/* 094ACC 80093ECC 3C12800E */ lui $s2, %hi(gMenuSubOption) # $s2, 0x800e /* 094AD0 80093ED0 001478C0 */ sll $t7, $s4, 3 /* 094AD4 80093ED4 29E10100 */ slti $at, $t7, 0x100 /* 094AD8 80093ED8 14200003 */ bnez $at, .L80093EE8 @@ -111,7 +111,7 @@ glabel func_80093D40 /* 094AE0 80093EE0 241801FF */ li $t8, 511 /* 094AE4 80093EE4 030FA023 */ subu $s4, $t8, $t7 .L80093EE8: -/* 094AE8 80093EE8 26520988 */ addiu $s2, %lo(D_800E0988) # addiu $s2, $s2, 0x988 +/* 094AE8 80093EE8 26520988 */ addiu $s2, %lo(gMenuSubOption) # addiu $s2, $s2, 0x988 /* 094AEC 80093EEC 8E590000 */ lw $t9, ($s2) /* 094AF0 80093EF0 24040007 */ li $a0, 7 /* 094AF4 80093EF4 13200060 */ beqz $t9, .L80094078 @@ -232,11 +232,11 @@ glabel func_80093D40 /* 094CA4 800940A4 00008825 */ move $s1, $zero /* 094CA8 800940A8 19C00027 */ blez $t6, .L80094148 /* 094CAC 800940AC 24120020 */ li $s2, 32 -/* 094CB0 800940B0 3C108012 */ lui $s0, %hi(D_80126A40) # $s0, 0x8012 -/* 094CB4 800940B4 26106A40 */ addiu $s0, %lo(D_80126A40) # addiu $s0, $s0, 0x6a40 +/* 094CB0 800940B0 3C108012 */ lui $s0, %hi(gMenuOptionText) # $s0, 0x8012 +/* 094CB4 800940B4 26106A40 */ addiu $s0, %lo(gMenuOptionText) # addiu $s0, $s0, 0x6a40 .L800940B8: -/* 094CB8 800940B8 3C0F8012 */ lui $t7, %hi(D_80126A68) # $t7, 0x8012 -/* 094CBC 800940BC 8DEF6A68 */ lw $t7, %lo(D_80126A68)($t7) +/* 094CB8 800940B8 3C0F8012 */ lui $t7, %hi(gMenuOption) # $t7, 0x8012 +/* 094CBC 800940BC 8DEF6A68 */ lw $t7, %lo(gMenuOption)($t7) /* 094CC0 800940C0 24040007 */ li $a0, 7 /* 094CC4 800940C4 162F000B */ bne $s1, $t7, .L800940F4 /* 094CC8 800940C8 240500FF */ li $a1, 255 diff --git a/asm/non_matchings/menu/func_80094688.s b/asm/non_matchings/menu/func_80094688.s index b6bdf812..e4dd566f 100644 --- a/asm/non_matchings/menu/func_80094688.s +++ b/asm/non_matchings/menu/func_80094688.s @@ -98,24 +98,24 @@ glabel func_80094688 .L800947EC: /* 0953EC 800947EC 3C018012 */ lui $at, %hi(D_80126CC0) # $at, 0x8012 /* 0953F0 800947F0 AC206CC0 */ sw $zero, %lo(D_80126CC0)($at) -/* 0953F4 800947F4 3C018012 */ lui $at, %hi(D_801263BC) # $at, 0x8012 -/* 0953F8 800947F8 AC2063BC */ sw $zero, %lo(D_801263BC)($at) +/* 0953F4 800947F4 3C018012 */ lui $at, %hi(gOptionBlinkTimer) # $at, 0x8012 +/* 0953F8 800947F8 AC2063BC */ sw $zero, %lo(gOptionBlinkTimer)($at) /* 0953FC 800947FC 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 /* 095400 80094800 AC2063D8 */ sw $zero, %lo(D_801263D8)($at) /* 095404 80094804 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e /* 095408 80094808 AC20F47C */ sw $zero, %lo(gMenuDelay)($at) /* 09540C 8009480C 3C01800E */ lui $at, %hi(D_800DF460) # $at, 0x800e /* 095410 80094810 AC20F460 */ sw $zero, %lo(D_800DF460)($at) -/* 095414 80094814 3C018012 */ lui $at, %hi(D_80126A68) # $at, 0x8012 -/* 095418 80094818 AC206A68 */ sw $zero, %lo(D_80126A68)($at) +/* 095414 80094814 3C018012 */ lui $at, %hi(gMenuOption) # $at, 0x8012 +/* 095418 80094818 AC206A68 */ sw $zero, %lo(gMenuOption)($at) /* 09541C 8009481C 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 /* 095420 80094820 240C0001 */ li $t4, 1 /* 095424 80094824 AC2C63C4 */ sw $t4, %lo(gIgnorePlayerInput)($at) /* 095428 80094828 3C018012 */ lui $at, %hi(D_80126C54) # $at, 0x8012 /* 09542C 8009482C 240EFFFF */ li $t6, -1 /* 095430 80094830 AC2E6C54 */ sw $t6, %lo(D_80126C54)($at) -/* 095434 80094834 3C01800E */ lui $at, %hi(D_800E0988) # $at, 0x800e -/* 095438 80094838 AC200988 */ sw $zero, %lo(D_800E0988)($at) +/* 095434 80094834 3C01800E */ lui $at, %hi(gMenuSubOption) # $at, 0x800e +/* 095438 80094838 AC200988 */ sw $zero, %lo(gMenuSubOption)($at) /* 09543C 8009483C 3C018012 */ lui $at, %hi(D_80126C1C) # $at, 0x8012 /* 095440 80094840 AC206C1C */ sw $zero, %lo(D_80126C1C)($at) /* 095444 80094844 8FAD0028 */ lw $t5, 0x28($sp) diff --git a/asm/non_matchings/menu/func_80094D28.s b/asm/non_matchings/menu/func_80094D28.s index d31a7826..edaf5e1c 100644 --- a/asm/non_matchings/menu/func_80094D28.s +++ b/asm/non_matchings/menu/func_80094D28.s @@ -28,8 +28,8 @@ glabel func_80094D28 /* 095970 80094D70 00002025 */ move $a0, $zero /* 095974 80094D74 0C019A25 */ jal func_80066894 /* 095978 80094D78 24050001 */ li $a1, 1 -/* 09597C 80094D7C 3C138012 */ lui $s3, %hi(D_801263BC) # $s3, 0x8012 -/* 095980 80094D80 8E7363BC */ lw $s3, %lo(D_801263BC)($s3) +/* 09597C 80094D7C 3C138012 */ lui $s3, %hi(gOptionBlinkTimer) # $s3, 0x8012 +/* 095980 80094D80 8E7363BC */ lw $s3, %lo(gOptionBlinkTimer)($s3) /* 095984 80094D84 3C198012 */ lui $t9, %hi(D_801263E0) # $t9, 0x8012 /* 095988 80094D88 001378C0 */ sll $t7, $s3, 3 /* 09598C 80094D8C 29E10100 */ slti $at, $t7, 0x100 @@ -434,9 +434,9 @@ glabel L800951CC /* 095F3C 8009533C 00000000 */ nop .L80095340: /* 095F40 80095340 8C4D0000 */ lw $t5, ($v0) -/* 095F44 80095344 3C11800E */ lui $s1, %hi(D_800E0988) # $s1, 0x800e +/* 095F44 80095344 3C11800E */ lui $s1, %hi(gMenuSubOption) # $s1, 0x800e /* 095F48 80095348 11A00020 */ beqz $t5, .L800953CC -/* 095F4C 8009534C 26310988 */ addiu $s1, %lo(D_800E0988) # addiu $s1, $s1, 0x988 +/* 095F4C 8009534C 26310988 */ addiu $s1, %lo(gMenuSubOption) # addiu $s1, $s1, 0x988 /* 095F50 80095350 3C0E8012 */ lui $t6, %hi(D_80126C24) # $t6, 0x8012 /* 095F54 80095354 8DCE6C24 */ lw $t6, %lo(D_80126C24)($t6) /* 095F58 80095358 2412000C */ li $s2, 12 @@ -545,8 +545,8 @@ glabel L800951CC /* 0960E0 800954E0 3C118012 */ lui $s1, %hi(D_80126BF0) # $s1, 0x8012 /* 0960E4 800954E4 26316BF0 */ addiu $s1, %lo(D_80126BF0) # addiu $s1, $s1, 0x6bf0 .L800954E8: -/* 0960E8 800954E8 3C0B8012 */ lui $t3, %hi(D_80126A68) # $t3, 0x8012 -/* 0960EC 800954EC 8D6B6A68 */ lw $t3, %lo(D_80126A68)($t3) +/* 0960E8 800954E8 3C0B8012 */ lui $t3, %hi(gMenuOption) # $t3, 0x8012 +/* 0960EC 800954EC 8D6B6A68 */ lw $t3, %lo(gMenuOption)($t3) /* 0960F0 800954F0 24040007 */ li $a0, 7 /* 0960F4 800954F4 160B000B */ bne $s0, $t3, .L80095524 /* 0960F8 800954F8 240500FF */ li $a1, 255 diff --git a/asm/non_matchings/menu/func_80095728.s b/asm/non_matchings/menu/func_80095728.s index 7e3f6eb9..8db84707 100644 --- a/asm/non_matchings/menu/func_80095728.s +++ b/asm/non_matchings/menu/func_80095728.s @@ -1,1150 +1,1150 @@ -.late_rodata -glabel jpt_800E8548 -.word L80095948, L80095964, L80095B34, L80095D30, L80095D50, L80095EA8, L80095EC8, L800964AC, L800964DC - -.text -glabel func_80095728 -/* 096328 80095728 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 09632C 8009572C AFBF0024 */ sw $ra, 0x24($sp) -/* 096330 80095730 AFA40058 */ sw $a0, 0x58($sp) -/* 096334 80095734 AFA5005C */ sw $a1, 0x5c($sp) -/* 096338 80095738 AFA60060 */ sw $a2, 0x60($sp) -/* 09633C 8009573C AFA70064 */ sw $a3, 0x64($sp) -/* 096340 80095740 AFA00054 */ sw $zero, 0x54($sp) -/* 096344 80095744 AFA00050 */ sw $zero, 0x50($sp) -/* 096348 80095748 AFA0004C */ sw $zero, 0x4c($sp) -/* 09634C 8009574C AFA00044 */ sw $zero, 0x44($sp) -/* 096350 80095750 8C8F0000 */ lw $t7, ($a0) -/* 096354 80095754 3C018012 */ lui $at, %hi(sMenuCurrDisplayList) # $at, 0x8012 -/* 096358 80095758 AC2F63A0 */ sw $t7, %lo(sMenuCurrDisplayList)($at) -/* 09635C 8009575C 8CB90000 */ lw $t9, ($a1) -/* 096360 80095760 3C018012 */ lui $at, %hi(sMenuCurrHudMat) # $at, 0x8012 -/* 096364 80095764 AC3963A8 */ sw $t9, %lo(sMenuCurrHudMat)($at) -/* 096368 80095768 8CCD0000 */ lw $t5, ($a2) -/* 09636C 8009576C 3C018012 */ lui $at, %hi(sMenuCurrHudVerts) # $at, 0x8012 -/* 096370 80095770 0C01BAA4 */ jal get_settings -/* 096374 80095774 AC2D63AC */ sw $t5, %lo(sMenuCurrHudVerts)($at) -/* 096378 80095778 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 -/* 09637C 8009577C 8DCE0300 */ lw $t6, %lo(osTvType)($t6) -/* 096380 80095780 AFA2002C */ sw $v0, 0x2c($sp) -/* 096384 80095784 15C00006 */ bnez $t6, .L800957A0 -/* 096388 80095788 3C0A800E */ lui $t2, %hi(gNumberOfActivePlayers) # $t2, 0x800e -/* 09638C 8009578C 240F001A */ li $t7, 26 -/* 096390 80095790 2418000C */ li $t8, 12 -/* 096394 80095794 AFAF0038 */ sw $t7, 0x38($sp) -/* 096398 80095798 10000003 */ b .L800957A8 -/* 09639C 8009579C AFB80034 */ sw $t8, 0x34($sp) -.L800957A0: -/* 0963A0 800957A0 AFA00038 */ sw $zero, 0x38($sp) -/* 0963A4 800957A4 AFA00034 */ sw $zero, 0x34($sp) -.L800957A8: -/* 0963A8 800957A8 8D4AF4BC */ lw $t2, %lo(gNumberOfActivePlayers)($t2) -/* 0963AC 800957AC 0C027B20 */ jal is_in_two_player_adventure -/* 0963B0 800957B0 AFAA0030 */ sw $t2, 0x30($sp) -/* 0963B4 800957B4 8FAA0030 */ lw $t2, 0x30($sp) -/* 0963B8 800957B8 10400002 */ beqz $v0, .L800957C4 -/* 0963BC 800957BC 3C198012 */ lui $t9, %hi(D_80126A90) # $t9, 0x8012 -/* 0963C0 800957C0 240A0002 */ li $t2, 2 -.L800957C4: -/* 0963C4 800957C4 8F396A90 */ lw $t9, %lo(D_80126A90)($t9) -/* 0963C8 800957C8 00000000 */ nop -/* 0963CC 800957CC 13200016 */ beqz $t9, .L80095828 -/* 0963D0 800957D0 00000000 */ nop -/* 0963D4 800957D4 0C006DE0 */ jal func_8001B780 -/* 0963D8 800957D8 AFAA0030 */ sw $t2, 0x30($sp) -/* 0963DC 800957DC 8FAA0030 */ lw $t2, 0x30($sp) -/* 0963E0 800957E0 10400010 */ beqz $v0, .L80095824 -/* 0963E4 800957E4 3C018012 */ lui $at, %hi(D_80126A90) # $at, 0x8012 -/* 0963E8 800957E8 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 -/* 0963EC 800957EC 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 -/* 0963F0 800957F0 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e -/* 0963F4 800957F4 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) -/* 0963F8 800957F8 8D230000 */ lw $v1, ($t1) -/* 0963FC 800957FC 3C0D8012 */ lui $t5, %hi(D_80126BF0) # $t5, 0x8012 -/* 096400 80095800 8C4E006C */ lw $t6, 0x6c($v0) -/* 096404 80095804 25AD6BF0 */ addiu $t5, %lo(D_80126BF0) # addiu $t5, $t5, 0x6bf0 -/* 096408 80095808 00036080 */ sll $t4, $v1, 2 -/* 09640C 8009580C 018D2021 */ addu $a0, $t4, $t5 -/* 096410 80095810 AC8EFFFC */ sw $t6, -4($a0) -/* 096414 80095814 8C4F0070 */ lw $t7, 0x70($v0) -/* 096418 80095818 24780001 */ addiu $t8, $v1, 1 -/* 09641C 8009581C AD380000 */ sw $t8, ($t1) -/* 096420 80095820 AC8F0000 */ sw $t7, ($a0) -.L80095824: -/* 096424 80095824 AC206A90 */ sw $zero, %lo(D_80126A90)($at) -.L80095828: -/* 096428 80095828 0C025297 */ jal func_80094A5C -/* 09642C 8009582C AFAA0030 */ sw $t2, 0x30($sp) -/* 096430 80095830 8FA40064 */ lw $a0, 0x64($sp) -/* 096434 80095834 0C025305 */ jal func_80094C14 -/* 096438 80095838 00000000 */ nop -/* 09643C 8009583C 3C19800E */ lui $t9, %hi(gMenuDelay) # $t9, 0x800e -/* 096440 80095840 8F39F47C */ lw $t9, %lo(gMenuDelay)($t9) -/* 096444 80095844 8FAA0030 */ lw $t2, 0x30($sp) -/* 096448 80095848 2B210014 */ slti $at, $t9, 0x14 -/* 09644C 8009584C 1020000E */ beqz $at, .L80095888 -/* 096450 80095850 3C0C8012 */ lui $t4, %hi(D_80126C28) # $t4, 0x8012 -/* 096454 80095854 818C6C28 */ lb $t4, %lo(D_80126C28)($t4) -/* 096458 80095858 3C0D8012 */ lui $t5, %hi(D_80126C54) # $t5, 0x8012 -/* 09645C 8009585C 1580000B */ bnez $t4, .L8009588C -/* 096460 80095860 00002025 */ move $a0, $zero -/* 096464 80095864 8DAD6C54 */ lw $t5, %lo(D_80126C54)($t5) -/* 096468 80095868 8FA40064 */ lw $a0, 0x64($sp) -/* 09646C 8009586C 05A1000D */ bgez $t5, .L800958A4 -/* 096470 80095870 00000000 */ nop -/* 096474 80095874 0C02534A */ jal func_80094D28 -/* 096478 80095878 AFAA0030 */ sw $t2, 0x30($sp) -/* 09647C 8009587C 8FAA0030 */ lw $t2, 0x30($sp) -/* 096480 80095880 10000008 */ b .L800958A4 -/* 096484 80095884 00000000 */ nop -.L80095888: -/* 096488 80095888 00002025 */ move $a0, $zero -.L8009588C: -/* 09648C 8009588C 00002825 */ move $a1, $zero -/* 096490 80095890 00003025 */ move $a2, $zero -/* 096494 80095894 0C01E05C */ jal func_80078170 -/* 096498 80095898 AFAA0030 */ sw $t2, 0x30($sp) -/* 09649C 8009589C 8FAA0030 */ lw $t2, 0x30($sp) -/* 0964A0 800958A0 00000000 */ nop -.L800958A4: -/* 0964A4 800958A4 0C026FC8 */ jal update_controller_sticks -/* 0964A8 800958A8 AFAA0030 */ sw $t2, 0x30($sp) -/* 0964AC 800958AC 3C0E8012 */ lui $t6, %hi(gIgnorePlayerInput) # $t6, 0x8012 -/* 0964B0 800958B0 8DCE63C4 */ lw $t6, %lo(gIgnorePlayerInput)($t6) -/* 0964B4 800958B4 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 -/* 0964B8 800958B8 8FAA0030 */ lw $t2, 0x30($sp) -/* 0964BC 800958BC 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 -/* 0964C0 800958C0 15C00014 */ bnez $t6, .L80095914 -/* 0964C4 800958C4 00001825 */ move $v1, $zero -/* 0964C8 800958C8 3C0F8012 */ lui $t7, %hi(D_80126C54) # $t7, 0x8012 -/* 0964CC 800958CC 8DEF6C54 */ lw $t7, %lo(D_80126C54)($t7) -/* 0964D0 800958D0 00000000 */ nop -/* 0964D4 800958D4 05E1000F */ bgez $t7, .L80095914 -/* 0964D8 800958D8 00000000 */ nop -/* 0964DC 800958DC 1940000D */ blez $t2, .L80095914 -/* 0964E0 800958E0 00002025 */ move $a0, $zero -.L800958E4: -/* 0964E4 800958E4 AFA30040 */ sw $v1, 0x40($sp) -/* 0964E8 800958E8 AFA40048 */ sw $a0, 0x48($sp) -/* 0964EC 800958EC 0C01A955 */ jal get_buttons_pressed_from_player -/* 0964F0 800958F0 AFAA0030 */ sw $t2, 0x30($sp) -/* 0964F4 800958F4 8FA40048 */ lw $a0, 0x48($sp) -/* 0964F8 800958F8 8FA30040 */ lw $v1, 0x40($sp) -/* 0964FC 800958FC 8FAA0030 */ lw $t2, 0x30($sp) -/* 096500 80095900 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 -/* 096504 80095904 24840001 */ addiu $a0, $a0, 1 -/* 096508 80095908 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 -/* 09650C 8009590C 148AFFF5 */ bne $a0, $t2, .L800958E4 -/* 096510 80095910 00621825 */ or $v1, $v1, $v0 -.L80095914: -/* 096514 80095914 3C068012 */ lui $a2, %hi(D_801263E0) # $a2, 0x8012 -/* 096518 80095918 24C663E0 */ addiu $a2, %lo(D_801263E0) # addiu $a2, $a2, 0x63e0 -/* 09651C 8009591C 8CD80000 */ lw $t8, ($a2) -/* 096520 80095920 00000000 */ nop -/* 096524 80095924 2F010009 */ sltiu $at, $t8, 9 -/* 096528 80095928 1020037A */ beqz $at, .L80096714 -/* 09652C 8009592C 0018C080 */ sll $t8, $t8, 2 -/* 096530 80095930 3C01800F */ lui $at, %hi(jpt_800E8548) # $at, 0x800f -/* 096534 80095934 00380821 */ addu $at, $at, $t8 -/* 096538 80095938 8C388548 */ lw $t8, %lo(jpt_800E8548)($at) -/* 09653C 8009593C 00000000 */ nop -/* 096540 80095940 03000008 */ jr $t8 -/* 096544 80095944 00000000 */ nop -glabel L80095948 -/* 096548 80095948 30799000 */ andi $t9, $v1, 0x9000 -/* 09654C 8009594C 13200371 */ beqz $t9, .L80096714 -/* 096550 80095950 24070001 */ li $a3, 1 -/* 096554 80095954 ACC70000 */ sw $a3, ($a2) -/* 096558 80095958 3C018012 */ lui $at, %hi(D_80126A94) # $at, 0x8012 -/* 09655C 8009595C 1000036D */ b .L80096714 -/* 096560 80095960 AC206A94 */ sw $zero, %lo(D_80126A94)($at) -glabel L80095964 -/* 096564 80095964 3C0C8012 */ lui $t4, %hi(D_80126A94) # $t4, 0x8012 -/* 096568 80095968 8D8C6A94 */ lw $t4, %lo(D_80126A94)($t4) -/* 09656C 8009596C 3C028012 */ lui $v0, %hi(D_80126478) # $v0, 0x8012 -/* 096570 80095970 2981003D */ slti $at, $t4, 0x3d -/* 096574 80095974 10200004 */ beqz $at, .L80095988 -/* 096578 80095978 00000000 */ nop -/* 09657C 8009597C 306D9000 */ andi $t5, $v1, 0x9000 -/* 096580 80095980 11A00364 */ beqz $t5, .L80096714 -/* 096584 80095984 00000000 */ nop -.L80095988: -/* 096588 80095988 8C426478 */ lw $v0, %lo(D_80126478)($v0) -/* 09658C 8009598C 24030005 */ li $v1, 5 -/* 096590 80095990 00027080 */ sll $t6, $v0, 2 -/* 096594 80095994 01C3001A */ div $zero, $t6, $v1 -/* 096598 80095998 00002025 */ move $a0, $zero -/* 09659C 8009599C 24050050 */ li $a1, 80 -/* 0965A0 800959A0 14600002 */ bnez $v1, .L800959AC -/* 0965A4 800959A4 00000000 */ nop -/* 0965A8 800959A8 0007000D */ break 7 -.L800959AC: -/* 0965AC 800959AC 2401FFFF */ li $at, -1 -/* 0965B0 800959B0 14610004 */ bne $v1, $at, .L800959C4 -/* 0965B4 800959B4 3C018000 */ lui $at, 0x8000 -/* 0965B8 800959B8 15C10002 */ bne $t6, $at, .L800959C4 -/* 0965BC 800959BC 00000000 */ nop -/* 0965C0 800959C0 0006000D */ break 6 -.L800959C4: -/* 0965C4 800959C4 240700F0 */ li $a3, 240 -/* 0965C8 800959C8 00007812 */ mflo $t7 -/* 0965CC 800959CC 004F3023 */ subu $a2, $v0, $t7 -/* 0965D0 800959D0 00000000 */ nop -/* 0965D4 800959D4 0043001A */ div $zero, $v0, $v1 -/* 0965D8 800959D8 14600002 */ bnez $v1, .L800959E4 -/* 0965DC 800959DC 00000000 */ nop -/* 0965E0 800959E0 0007000D */ break 7 -.L800959E4: -/* 0965E4 800959E4 2401FFFF */ li $at, -1 -/* 0965E8 800959E8 14610004 */ bne $v1, $at, .L800959FC -/* 0965EC 800959EC 3C018000 */ lui $at, 0x8000 -/* 0965F0 800959F0 14410002 */ bne $v0, $at, .L800959FC -/* 0965F4 800959F4 00000000 */ nop -/* 0965F8 800959F8 0006000D */ break 6 -.L800959FC: -/* 0965FC 800959FC 0000C012 */ mflo $t8 -/* 096600 80095A00 0302C821 */ addu $t9, $t8, $v0 -/* 096604 80095A04 0C019A50 */ jal func_80066940 -/* 096608 80095A08 AFB90010 */ sw $t9, 0x10($sp) -/* 09660C 80095A0C 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e -/* 096610 80095A10 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 -/* 096614 80095A14 8C4C0000 */ lw $t4, ($v0) -/* 096618 80095A18 44802000 */ mtc1 $zero, $f4 -/* 09661C 80095A1C 3C014210 */ li $at, 0x42100000 # 36.000000 -/* 096620 80095A20 E584008C */ swc1 $f4, 0x8c($t4) -/* 096624 80095A24 8C4D0000 */ lw $t5, ($v0) -/* 096628 80095A28 44813000 */ mtc1 $at, $f6 -/* 09662C 80095A2C 3C01800E */ lui $at, %hi(sMenuImageProperties+0x88) # $at, 0x800e -/* 096630 80095A30 E5A60090 */ swc1 $f6, 0x90($t5) -/* 096634 80095A34 8C4E0000 */ lw $t6, ($v0) -/* 096638 80095A38 C428F598 */ lwc1 $f8, %lo(sMenuImageProperties+0x88)($at) -/* 09663C 80095A3C 00000000 */ nop -/* 096640 80095A40 E5C80088 */ swc1 $f8, 0x88($t6) -/* 096644 80095A44 8FAF002C */ lw $t7, 0x2c($sp) -/* 096648 80095A48 00000000 */ nop -/* 09664C 80095A4C 91E40049 */ lbu $a0, 0x49($t7) -/* 096650 80095A50 0C01AC53 */ jal func_8006B14C -/* 096654 80095A54 00000000 */ nop -/* 096658 80095A58 30580040 */ andi $t8, $v0, 0x40 -/* 09665C 80095A5C 13000004 */ beqz $t8, .L80095A70 -/* 096660 80095A60 24190006 */ li $t9, 6 -/* 096664 80095A64 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096668 80095A68 1000032A */ b .L80096714 -/* 09666C 80095A6C AC3963E0 */ sw $t9, %lo(D_801263E0)($at) -.L80095A70: -/* 096670 80095A70 8FA3002C */ lw $v1, 0x2c($sp) -/* 096674 80095A74 3C04800E */ lui $a0, %hi(D_800E0BEC) # $a0, 0x800e -/* 096678 80095A78 806C0117 */ lb $t4, 0x117($v1) -/* 09667C 80095A7C 24840BEC */ addiu $a0, %lo(D_800E0BEC) # addiu $a0, $a0, 0xbec -/* 096680 80095A80 15800011 */ bnez $t4, .L80095AC8 -/* 096684 80095A84 3C013F00 */ lui $at, 0x3f00 -/* 096688 80095A88 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 09668C 80095A8C 44810000 */ mtc1 $at, $f0 -/* 096690 80095A90 8FAD0038 */ lw $t5, 0x38($sp) -/* 096694 80095A94 8FAE0034 */ lw $t6, 0x34($sp) -/* 096698 80095A98 3C04800E */ lui $a0, %hi(D_800E0CEC) # $a0, 0x800e -/* 09669C 80095A9C 44050000 */ mfc1 $a1, $f0 -/* 0966A0 80095AA0 44070000 */ mfc1 $a3, $f0 -/* 0966A4 80095AA4 24840CEC */ addiu $a0, %lo(D_800E0CEC) # addiu $a0, $a0, 0xcec -/* 0966A8 80095AA8 3C064170 */ lui $a2, 0x4170 -/* 0966AC 80095AAC AFAD0010 */ sw $t5, 0x10($sp) -/* 0966B0 80095AB0 0C020795 */ jal func_80081E54 -/* 0966B4 80095AB4 AFAE0014 */ sw $t6, 0x14($sp) -/* 0966B8 80095AB8 240F0003 */ li $t7, 3 -/* 0966BC 80095ABC 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 0966C0 80095AC0 10000314 */ b .L80096714 -/* 0966C4 80095AC4 AC2F63E0 */ sw $t7, %lo(D_801263E0)($at) -.L80095AC8: -/* 0966C8 80095AC8 80780114 */ lb $t8, 0x114($v1) -/* 0966CC 80095ACC 44810000 */ mtc1 $at, $f0 -/* 0966D0 80095AD0 0018C880 */ sll $t9, $t8, 2 -/* 0966D4 80095AD4 0338C823 */ subu $t9, $t9, $t8 -/* 0966D8 80095AD8 0019C8C0 */ sll $t9, $t9, 3 -/* 0966DC 80095ADC 00791021 */ addu $v0, $v1, $t9 -/* 0966E0 80095AE0 24420054 */ addiu $v0, $v0, 0x54 -/* 0966E4 80095AE4 8FB90034 */ lw $t9, 0x34($sp) -/* 0966E8 80095AE8 8FB80038 */ lw $t8, 0x38($sp) -/* 0966EC 80095AEC 244C0012 */ addiu $t4, $v0, 0x12 -/* 0966F0 80095AF0 244D0014 */ addiu $t5, $v0, 0x14 -/* 0966F4 80095AF4 244E0016 */ addiu $t6, $v0, 0x16 -/* 0966F8 80095AF8 244F0010 */ addiu $t7, $v0, 0x10 -/* 0966FC 80095AFC 44050000 */ mfc1 $a1, $f0 -/* 096700 80095B00 44070000 */ mfc1 $a3, $f0 -/* 096704 80095B04 AC8C0074 */ sw $t4, 0x74($a0) -/* 096708 80095B08 AC8D0094 */ sw $t5, 0x94($a0) -/* 09670C 80095B0C AC8E00B4 */ sw $t6, 0xb4($a0) -/* 096710 80095B10 AC8F00D4 */ sw $t7, 0xd4($a0) -/* 096714 80095B14 3C064170 */ lui $a2, 0x4170 -/* 096718 80095B18 AFB90014 */ sw $t9, 0x14($sp) -/* 09671C 80095B1C 0C020795 */ jal func_80081E54 -/* 096720 80095B20 AFB80010 */ sw $t8, 0x10($sp) -/* 096724 80095B24 24060002 */ li $a2, 2 -/* 096728 80095B28 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 09672C 80095B2C 100002F9 */ b .L80096714 -/* 096730 80095B30 AC2663E0 */ sw $a2, %lo(D_801263E0)($at) -glabel L80095B34 -/* 096734 80095B34 8FA40064 */ lw $a0, 0x64($sp) -/* 096738 80095B38 0C0207D3 */ jal func_80081F4C -/* 09673C 80095B3C 00000000 */ nop -/* 096740 80095B40 104002F4 */ beqz $v0, .L80096714 -/* 096744 80095B44 3C0C800E */ lui $t4, %hi(gTrophyRaceWorldId) # $t4, 0x800e -/* 096748 80095B48 8D8C0FE8 */ lw $t4, %lo(gTrophyRaceWorldId)($t4) -/* 09674C 80095B4C 8FA7002C */ lw $a3, 0x2c($sp) -/* 096750 80095B50 1180000A */ beqz $t4, .L80095B7C -/* 096754 80095B54 00000000 */ nop -/* 096758 80095B58 0C000326 */ jal set_music_fade_timer -/* 09675C 80095B5C 2404FF80 */ li $a0, -128 -/* 096760 80095B60 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e -/* 096764 80095B64 0C030076 */ jal func_800C01D8 -/* 096768 80095B68 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c -/* 09676C 80095B6C 240D0008 */ li $t5, 8 -/* 096770 80095B70 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096774 80095B74 100002E7 */ b .L80096714 -/* 096778 80095B78 AC2D63E0 */ sw $t5, %lo(D_801263E0)($at) -.L80095B7C: -/* 09677C 80095B7C 80EE0117 */ lb $t6, 0x117($a3) -/* 096780 80095B80 3C013F00 */ lui $at, 0x3f00 -/* 096784 80095B84 11C0005B */ beqz $t6, .L80095CF4 -/* 096788 80095B88 240D0003 */ li $t5, 3 -/* 09678C 80095B8C 3C0F8012 */ lui $t7, %hi(gPlayerSelectVehicle) # $t7, 0x8012 -/* 096790 80095B90 81EF69C0 */ lb $t7, %lo(gPlayerSelectVehicle)($t7) -/* 096794 80095B94 90EC0049 */ lbu $t4, 0x49($a3) -/* 096798 80095B98 000FC080 */ sll $t8, $t7, 2 -/* 09679C 80095B9C 00F81021 */ addu $v0, $a3, $t8 -/* 0967A0 80095BA0 8C59003C */ lw $t9, 0x3c($v0) -/* 0967A4 80095BA4 3C03800E */ lui $v1, %hi(D_800E0E4C) # $v1, 0x800e -/* 0967A8 80095BA8 000C6840 */ sll $t5, $t4, 1 -/* 0967AC 80095BAC 24630E4C */ addiu $v1, %lo(D_800E0E4C) # addiu $v1, $v1, 0xe4c -/* 0967B0 80095BB0 032D7021 */ addu $t6, $t9, $t5 -/* 0967B4 80095BB4 AC6E0074 */ sw $t6, 0x74($v1) -/* 0967B8 80095BB8 90F80049 */ lbu $t8, 0x49($a3) -/* 0967BC 80095BBC 8C4F0024 */ lw $t7, 0x24($v0) -/* 0967C0 80095BC0 00186040 */ sll $t4, $t8, 1 -/* 0967C4 80095BC4 01ECC821 */ addu $t9, $t7, $t4 -/* 0967C8 80095BC8 AC7900D4 */ sw $t9, 0xd4($v1) -/* 0967CC 80095BCC 90EE0049 */ lbu $t6, 0x49($a3) -/* 0967D0 80095BD0 8C4D0030 */ lw $t5, 0x30($v0) -/* 0967D4 80095BD4 000EC040 */ sll $t8, $t6, 1 -/* 0967D8 80095BD8 01B87821 */ addu $t7, $t5, $t8 -/* 0967DC 80095BDC 95E40000 */ lhu $a0, ($t7) -/* 0967E0 80095BE0 3C058012 */ lui $a1, %hi(D_80126390) # $a1, 0x8012 -/* 0967E4 80095BE4 24A56390 */ addiu $a1, %lo(D_80126390) # addiu $a1, $a1, 0x6390 -/* 0967E8 80095BE8 0C025DBE */ jal decompress_filename_string -/* 0967EC 80095BEC 24060003 */ li $a2, 3 -/* 0967F0 80095BF0 3C0C8012 */ lui $t4, %hi(gPlayerSelectVehicle) # $t4, 0x8012 -/* 0967F4 80095BF4 8FA2002C */ lw $v0, 0x2c($sp) -/* 0967F8 80095BF8 818C69C0 */ lb $t4, %lo(gPlayerSelectVehicle)($t4) -/* 0967FC 80095BFC 90580049 */ lbu $t8, 0x49($v0) -/* 096800 80095C00 000CC880 */ sll $t9, $t4, 2 -/* 096804 80095C04 00597021 */ addu $t6, $v0, $t9 -/* 096808 80095C08 8DCD0018 */ lw $t5, 0x18($t6) -/* 09680C 80095C0C 00187840 */ sll $t7, $t8, 1 -/* 096810 80095C10 01AF6021 */ addu $t4, $t5, $t7 -/* 096814 80095C14 95840000 */ lhu $a0, ($t4) -/* 096818 80095C18 3C058012 */ lui $a1, %hi(D_80126394) # $a1, 0x8012 -/* 09681C 80095C1C 24A56394 */ addiu $a1, %lo(D_80126394) # addiu $a1, $a1, 0x6394 -/* 096820 80095C20 0C025DBE */ jal decompress_filename_string -/* 096824 80095C24 24060003 */ li $a2, 3 -/* 096828 80095C28 8FA2002C */ lw $v0, 0x2c($sp) -/* 09682C 80095C2C 3C04800E */ lui $a0, %hi(D_800E0E4C) # $a0, 0x800e -/* 096830 80095C30 80590058 */ lb $t9, 0x58($v0) -/* 096834 80095C34 3C013F00 */ lui $at, 0x3f00 -/* 096838 80095C38 13200021 */ beqz $t9, .L80095CC0 -/* 09683C 80095C3C 24840E4C */ addiu $a0, %lo(D_800E0E4C) # addiu $a0, $a0, 0xe4c -/* 096840 80095C40 3C18800E */ lui $t8, %hi(gIsInTracksMode) # $t8, 0x800e -/* 096844 80095C44 8F18F4B8 */ lw $t8, %lo(gIsInTracksMode)($t8) -/* 096848 80095C48 240E0004 */ li $t6, 4 -/* 09684C 80095C4C 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096850 80095C50 1700000B */ bnez $t8, .L80095C80 -/* 096854 80095C54 AC2E63E0 */ sw $t6, %lo(D_801263E0)($at) -/* 096858 80095C58 3C0D800E */ lui $t5, %hi(D_800E0FAC) # $t5, 0x800e -/* 09685C 80095C5C 8DAD0FAC */ lw $t5, %lo(D_800E0FAC)($t5) -/* 096860 80095C60 3C05800E */ lui $a1, %hi(D_800E0FA8) # $a1, 0x800e -/* 096864 80095C64 11A00006 */ beqz $t5, .L80095C80 -/* 096868 80095C68 24A50FA8 */ addiu $a1, %lo(D_800E0FA8) # addiu $a1, $a1, 0xfa8 -/* 09686C 80095C6C 8C440050 */ lw $a0, 0x50($v0) -/* 096870 80095C70 0C025DBE */ jal decompress_filename_string -/* 096874 80095C74 24060003 */ li $a2, 3 -/* 096878 80095C78 3C01800E */ lui $at, %hi(D_800E0FAC) # $at, 0x800e -/* 09687C 80095C7C AC200FAC */ sw $zero, %lo(D_800E0FAC)($at) -.L80095C80: -/* 096880 80095C80 8FA20038 */ lw $v0, 0x38($sp) -/* 096884 80095C84 3C0F800E */ lui $t7, %hi(D_800E0FA4) # $t7, 0x800e -/* 096888 80095C88 3C0C800E */ lui $t4, %hi(D_800E0FA8) # $t4, 0x800e -/* 09688C 80095C8C 258C0FA8 */ addiu $t4, %lo(D_800E0FA8) # addiu $t4, $t4, 0xfa8 -/* 096890 80095C90 25EF0FA4 */ addiu $t7, %lo(D_800E0FA4) # addiu $t7, $t7, 0xfa4 -/* 096894 80095C94 24190003 */ li $t9, 3 -/* 096898 80095C98 AFB90018 */ sw $t9, 0x18($sp) -/* 09689C 80095C9C AFAF0010 */ sw $t7, 0x10($sp) -/* 0968A0 80095CA0 AFAC0014 */ sw $t4, 0x14($sp) -/* 0968A4 80095CA4 240500A0 */ li $a1, 160 -/* 0968A8 80095CA8 24070002 */ li $a3, 2 -/* 0968AC 80095CAC 244400C4 */ addiu $a0, $v0, 0xc4 -/* 0968B0 80095CB0 0C025E1D */ jal func_80097874 -/* 0968B4 80095CB4 24460078 */ addiu $a2, $v0, 0x78 -/* 0968B8 80095CB8 10000296 */ b .L80096714 -/* 0968BC 80095CBC 00000000 */ nop -.L80095CC0: -/* 0968C0 80095CC0 44810000 */ mtc1 $at, $f0 -/* 0968C4 80095CC4 8FAE0038 */ lw $t6, 0x38($sp) -/* 0968C8 80095CC8 8FB80034 */ lw $t8, 0x34($sp) -/* 0968CC 80095CCC 44050000 */ mfc1 $a1, $f0 -/* 0968D0 80095CD0 44070000 */ mfc1 $a3, $f0 -/* 0968D4 80095CD4 3C064170 */ lui $a2, 0x4170 -/* 0968D8 80095CD8 AFAE0010 */ sw $t6, 0x10($sp) -/* 0968DC 80095CDC 0C020795 */ jal func_80081E54 -/* 0968E0 80095CE0 AFB80014 */ sw $t8, 0x14($sp) -/* 0968E4 80095CE4 24030005 */ li $v1, 5 -/* 0968E8 80095CE8 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 0968EC 80095CEC 10000289 */ b .L80096714 -/* 0968F0 80095CF0 AC2363E0 */ sw $v1, %lo(D_801263E0)($at) -.L80095CF4: -/* 0968F4 80095CF4 44810000 */ mtc1 $at, $f0 -/* 0968F8 80095CF8 8FAF0038 */ lw $t7, 0x38($sp) -/* 0968FC 80095CFC 8FAC0034 */ lw $t4, 0x34($sp) -/* 096900 80095D00 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096904 80095D04 3C04800E */ lui $a0, %hi(D_800E0CEC) # $a0, 0x800e -/* 096908 80095D08 44050000 */ mfc1 $a1, $f0 -/* 09690C 80095D0C 44070000 */ mfc1 $a3, $f0 -/* 096910 80095D10 AC2D63E0 */ sw $t5, %lo(D_801263E0)($at) -/* 096914 80095D14 24840CEC */ addiu $a0, %lo(D_800E0CEC) # addiu $a0, $a0, 0xcec -/* 096918 80095D18 3C064170 */ lui $a2, 0x4170 -/* 09691C 80095D1C AFAF0010 */ sw $t7, 0x10($sp) -/* 096920 80095D20 0C020795 */ jal func_80081E54 -/* 096924 80095D24 AFAC0014 */ sw $t4, 0x14($sp) -/* 096928 80095D28 1000027A */ b .L80096714 -/* 09692C 80095D2C 00000000 */ nop -glabel L80095D30 -/* 096930 80095D30 8FA40064 */ lw $a0, 0x64($sp) -/* 096934 80095D34 0C0207D3 */ jal func_80081F4C -/* 096938 80095D38 00000000 */ nop -/* 09693C 80095D3C 10400275 */ beqz $v0, .L80096714 -/* 096940 80095D40 24190006 */ li $t9, 6 -/* 096944 80095D44 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096948 80095D48 10000272 */ b .L80096714 -/* 09694C 80095D4C AC3963E0 */ sw $t9, %lo(D_801263E0)($at) -glabel L80095D50 -/* 096950 80095D50 8FA40064 */ lw $a0, 0x64($sp) -/* 096954 80095D54 0C025F44 */ jal menu_enter_filename_loop -/* 096958 80095D58 00000000 */ nop -/* 09695C 80095D5C 1040026D */ beqz $v0, .L80096714 -/* 096960 80095D60 00000000 */ nop -/* 096964 80095D64 8FAE002C */ lw $t6, 0x2c($sp) -/* 096968 80095D68 3C04800E */ lui $a0, %hi(D_800E0FA8) # $a0, 0x800e -/* 09696C 80095D6C 81C20058 */ lb $v0, 0x58($t6) -/* 096970 80095D70 24840FA8 */ addiu $a0, %lo(D_800E0FA8) # addiu $a0, $a0, 0xfa8 -/* 096974 80095D74 3058007F */ andi $t8, $v0, 0x7f -/* 096978 80095D78 1300001F */ beqz $t8, .L80095DF8 -/* 09697C 80095D7C 304E0080 */ andi $t6, $v0, 0x80 -/* 096980 80095D80 0C025DD1 */ jal compress_filename_string -/* 096984 80095D84 24050003 */ li $a1, 3 -/* 096988 80095D88 3C078012 */ lui $a3, %hi(gPlayerSelectVehicle) # $a3, 0x8012 -/* 09698C 80095D8C 24E769C0 */ addiu $a3, %lo(gPlayerSelectVehicle) # addiu $a3, $a3, 0x69c0 -/* 096990 80095D90 80ED0000 */ lb $t5, ($a3) -/* 096994 80095D94 8FA3002C */ lw $v1, 0x2c($sp) -/* 096998 80095D98 000D7880 */ sll $t7, $t5, 2 -/* 09699C 80095D9C 906E0049 */ lbu $t6, 0x49($v1) -/* 0969A0 80095DA0 006F6021 */ addu $t4, $v1, $t7 -/* 0969A4 80095DA4 8D990018 */ lw $t9, 0x18($t4) -/* 0969A8 80095DA8 000EC040 */ sll $t8, $t6, 1 -/* 0969AC 80095DAC 03386821 */ addu $t5, $t9, $t8 -/* 0969B0 80095DB0 A5A20000 */ sh $v0, ($t5) -/* 0969B4 80095DB4 80EF0000 */ lb $t7, ($a3) -/* 0969B8 80095DB8 90780049 */ lbu $t8, 0x49($v1) -/* 0969BC 80095DBC 000F6080 */ sll $t4, $t7, 2 -/* 0969C0 80095DC0 006C7021 */ addu $t6, $v1, $t4 -/* 0969C4 80095DC4 8DD90018 */ lw $t9, 0x18($t6) -/* 0969C8 80095DC8 00186840 */ sll $t5, $t8, 1 -/* 0969CC 80095DCC 032D7821 */ addu $t7, $t9, $t5 -/* 0969D0 80095DD0 95E40000 */ lhu $a0, ($t7) -/* 0969D4 80095DD4 3C058012 */ lui $a1, %hi(D_80126394) # $a1, 0x8012 -/* 0969D8 80095DD8 24A56394 */ addiu $a1, %lo(D_80126394) # addiu $a1, $a1, 0x6394 -/* 0969DC 80095DDC 0C025DBE */ jal decompress_filename_string -/* 0969E0 80095DE0 24060003 */ li $a2, 3 -/* 0969E4 80095DE4 8FAC002C */ lw $t4, 0x2c($sp) -/* 0969E8 80095DE8 00000000 */ nop -/* 0969EC 80095DEC 81820058 */ lb $v0, 0x58($t4) -/* 0969F0 80095DF0 00000000 */ nop -/* 0969F4 80095DF4 304E0080 */ andi $t6, $v0, 0x80 -.L80095DF8: -/* 0969F8 80095DF8 11C0001B */ beqz $t6, .L80095E68 -/* 0969FC 80095DFC 3C04800E */ lui $a0, %hi(D_800E0FA8) # $a0, 0x800e -/* 096A00 80095E00 24840FA8 */ addiu $a0, %lo(D_800E0FA8) # addiu $a0, $a0, 0xfa8 -/* 096A04 80095E04 0C025DD1 */ jal compress_filename_string -/* 096A08 80095E08 24050003 */ li $a1, 3 -/* 096A0C 80095E0C 3C078012 */ lui $a3, %hi(gPlayerSelectVehicle) # $a3, 0x8012 -/* 096A10 80095E10 24E769C0 */ addiu $a3, %lo(gPlayerSelectVehicle) # addiu $a3, $a3, 0x69c0 -/* 096A14 80095E14 80F80000 */ lb $t8, ($a3) -/* 096A18 80095E18 8FA3002C */ lw $v1, 0x2c($sp) -/* 096A1C 80095E1C 0018C880 */ sll $t9, $t8, 2 -/* 096A20 80095E20 906C0049 */ lbu $t4, 0x49($v1) -/* 096A24 80095E24 00796821 */ addu $t5, $v1, $t9 -/* 096A28 80095E28 8DAF0030 */ lw $t7, 0x30($t5) -/* 096A2C 80095E2C 000C7040 */ sll $t6, $t4, 1 -/* 096A30 80095E30 01EEC021 */ addu $t8, $t7, $t6 -/* 096A34 80095E34 A7020000 */ sh $v0, ($t8) -/* 096A38 80095E38 80F90000 */ lb $t9, ($a3) -/* 096A3C 80095E3C 906E0049 */ lbu $t6, 0x49($v1) -/* 096A40 80095E40 00196880 */ sll $t5, $t9, 2 -/* 096A44 80095E44 006D6021 */ addu $t4, $v1, $t5 -/* 096A48 80095E48 8D8F0030 */ lw $t7, 0x30($t4) -/* 096A4C 80095E4C 000EC040 */ sll $t8, $t6, 1 -/* 096A50 80095E50 01F8C821 */ addu $t9, $t7, $t8 -/* 096A54 80095E54 97240000 */ lhu $a0, ($t9) -/* 096A58 80095E58 3C058012 */ lui $a1, %hi(D_80126390) # $a1, 0x8012 -/* 096A5C 80095E5C 24A56390 */ addiu $a1, %lo(D_80126390) # addiu $a1, $a1, 0x6390 -/* 096A60 80095E60 0C025DBE */ jal decompress_filename_string -/* 096A64 80095E64 24060003 */ li $a2, 3 -.L80095E68: -/* 096A68 80095E68 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 096A6C 80095E6C 44810000 */ mtc1 $at, $f0 -/* 096A70 80095E70 8FAD0038 */ lw $t5, 0x38($sp) -/* 096A74 80095E74 8FAC0034 */ lw $t4, 0x34($sp) -/* 096A78 80095E78 3C04800E */ lui $a0, %hi(D_800E0E4C) # $a0, 0x800e -/* 096A7C 80095E7C 44050000 */ mfc1 $a1, $f0 -/* 096A80 80095E80 44070000 */ mfc1 $a3, $f0 -/* 096A84 80095E84 24840E4C */ addiu $a0, %lo(D_800E0E4C) # addiu $a0, $a0, 0xe4c -/* 096A88 80095E88 3C064170 */ lui $a2, 0x4170 -/* 096A8C 80095E8C AFAD0010 */ sw $t5, 0x10($sp) -/* 096A90 80095E90 0C020795 */ jal func_80081E54 -/* 096A94 80095E94 AFAC0014 */ sw $t4, 0x14($sp) -/* 096A98 80095E98 24030005 */ li $v1, 5 -/* 096A9C 80095E9C 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096AA0 80095EA0 1000021C */ b .L80096714 -/* 096AA4 80095EA4 AC2363E0 */ sw $v1, %lo(D_801263E0)($at) -glabel L80095EA8 -/* 096AA8 80095EA8 8FA40064 */ lw $a0, 0x64($sp) -/* 096AAC 80095EAC 0C0207D3 */ jal func_80081F4C -/* 096AB0 80095EB0 00000000 */ nop -/* 096AB4 80095EB4 10400217 */ beqz $v0, .L80096714 -/* 096AB8 80095EB8 240E0006 */ li $t6, 6 -/* 096ABC 80095EBC 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096AC0 80095EC0 10000214 */ b .L80096714 -/* 096AC4 80095EC4 AC2E63E0 */ sw $t6, %lo(D_801263E0)($at) -glabel L80095EC8 -/* 096AC8 80095EC8 3C058012 */ lui $a1, %hi(D_80126A98) # $a1, 0x8012 -/* 096ACC 80095ECC 24A56A98 */ addiu $a1, %lo(D_80126A98) # addiu $a1, $a1, 0x6a98 -/* 096AD0 80095ED0 8CA20000 */ lw $v0, ($a1) -/* 096AD4 80095ED4 3C048012 */ lui $a0, %hi(D_80126C1C) # $a0, 0x8012 -/* 096AD8 80095ED8 10400039 */ beqz $v0, .L80095FC0 -/* 096ADC 80095EDC 24846C1C */ addiu $a0, %lo(D_80126C1C) # addiu $a0, $a0, 0x6c1c -/* 096AE0 80095EE0 244F0001 */ addiu $t7, $v0, 1 -/* 096AE4 80095EE4 29E10005 */ slti $at, $t7, 5 -/* 096AE8 80095EE8 1420015A */ bnez $at, .L80096454 -/* 096AEC 80095EEC ACAF0000 */ sw $t7, ($a1) -/* 096AF0 80095EF0 0C00025A */ jal func_80000968 -/* 096AF4 80095EF4 24040003 */ li $a0, 3 -/* 096AF8 80095EF8 0C006DCE */ jal func_8001B738 -/* 096AFC 80095EFC 00002025 */ move $a0, $zero -/* 096B00 80095F00 24030005 */ li $v1, 5 -/* 096B04 80095F04 305900FF */ andi $t9, $v0, 0xff -/* 096B08 80095F08 14790004 */ bne $v1, $t9, .L80095F1C -/* 096B0C 80095F0C AFA20054 */ sw $v0, 0x54($sp) -/* 096B10 80095F10 0C006DCE */ jal func_8001B738 -/* 096B14 80095F14 00002025 */ move $a0, $zero -/* 096B18 80095F18 AFA20054 */ sw $v0, 0x54($sp) -.L80095F1C: -/* 096B1C 80095F1C 0C00025A */ jal func_80000968 -/* 096B20 80095F20 24040002 */ li $a0, 2 -/* 096B24 80095F24 8FAD0054 */ lw $t5, 0x54($sp) -/* 096B28 80095F28 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 -/* 096B2C 80095F2C 11A00006 */ beqz $t5, .L80095F48 -/* 096B30 80095F30 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 -/* 096B34 80095F34 0C025589 */ jal func_80095624 -/* 096B38 80095F38 01A02025 */ move $a0, $t5 -/* 096B3C 80095F3C 240C0001 */ li $t4, 1 -/* 096B40 80095F40 1000001C */ b .L80095FB4 -/* 096B44 80095F44 AFAC0054 */ sw $t4, 0x54($sp) -.L80095F48: -/* 096B48 80095F48 3C048012 */ lui $a0, %hi(D_80126C1C) # $a0, 0x8012 -/* 096B4C 80095F4C 24846C1C */ addiu $a0, %lo(D_80126C1C) # addiu $a0, $a0, 0x6c1c -/* 096B50 80095F50 8C8E0000 */ lw $t6, ($a0) -/* 096B54 80095F54 3C0F800E */ lui $t7, %hi(sInsertControllerPakMenuText) # $t7, 0x800e -/* 096B58 80095F58 25EF0A04 */ addiu $t7, %lo(sInsertControllerPakMenuText) # addiu $t7, $t7, 0xa04 -/* 096B5C 80095F5C 15CF0006 */ bne $t6, $t7, .L80095F78 -/* 096B60 80095F60 00000000 */ nop -/* 096B64 80095F64 0C025589 */ jal func_80095624 -/* 096B68 80095F68 24040008 */ li $a0, 8 -/* 096B6C 80095F6C 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 -/* 096B70 80095F70 10000002 */ b .L80095F7C -/* 096B74 80095F74 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 -.L80095F78: -/* 096B78 80095F78 AC800000 */ sw $zero, ($a0) -.L80095F7C: -/* 096B7C 80095F7C 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 -/* 096B80 80095F80 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 -/* 096B84 80095F84 3C18800E */ lui $t8, %hi(gMenuText) # $t8, 0x800e -/* 096B88 80095F88 8F18F4A0 */ lw $t8, %lo(gMenuText)($t8) -/* 096B8C 80095F8C 8CCD0000 */ lw $t5, ($a2) -/* 096B90 80095F90 8F190070 */ lw $t9, 0x70($t8) -/* 096B94 80095F94 3C018012 */ lui $at, %hi(D_80126BF0) # $at, 0x8012 -/* 096B98 80095F98 000D6080 */ sll $t4, $t5, 2 -/* 096B9C 80095F9C 002C0821 */ addu $at, $at, $t4 -/* 096BA0 80095FA0 AC396BF0 */ sw $t9, %lo(D_80126BF0)($at) -/* 096BA4 80095FA4 8D2E0000 */ lw $t6, ($t1) -/* 096BA8 80095FA8 ACC00000 */ sw $zero, ($a2) -/* 096BAC 80095FAC 25CFFFFF */ addiu $t7, $t6, -1 -/* 096BB0 80095FB0 AD2F0000 */ sw $t7, ($t1) -.L80095FB4: -/* 096BB4 80095FB4 3C018012 */ lui $at, %hi(D_80126A98) # $at, 0x8012 -/* 096BB8 80095FB8 10000126 */ b .L80096454 -/* 096BBC 80095FBC AC206A98 */ sw $zero, %lo(D_80126A98)($at) -.L80095FC0: -/* 096BC0 80095FC0 8C820000 */ lw $v0, ($a0) -/* 096BC4 80095FC4 3C08800E */ lui $t0, %hi(D_800E0988) # $t0, 0x800e -/* 096BC8 80095FC8 10400013 */ beqz $v0, .L80096018 -/* 096BCC 80095FCC 25080988 */ addiu $t0, %lo(D_800E0988) # addiu $t0, $t0, 0x988 -/* 096BD0 80095FD0 30789000 */ andi $t8, $v1, 0x9000 -/* 096BD4 80095FD4 1300000B */ beqz $t8, .L80096004 -/* 096BD8 80095FD8 306C4000 */ andi $t4, $v1, 0x4000 -/* 096BDC 80095FDC 3C19800E */ lui $t9, %hi(sInsertControllerPakMenuText) # $t9, 0x800e -/* 096BE0 80095FE0 240D0001 */ li $t5, 1 -/* 096BE4 80095FE4 27390A04 */ addiu $t9, %lo(sInsertControllerPakMenuText) # addiu $t9, $t9, 0xa04 -/* 096BE8 80095FE8 14590004 */ bne $v0, $t9, .L80095FFC -/* 096BEC 80095FEC AFAD0050 */ sw $t5, 0x50($sp) -/* 096BF0 80095FF0 24070001 */ li $a3, 1 -/* 096BF4 80095FF4 10000117 */ b .L80096454 -/* 096BF8 80095FF8 ACA70000 */ sw $a3, ($a1) -.L80095FFC: -/* 096BFC 80095FFC 10000115 */ b .L80096454 -/* 096C00 80096000 AC800000 */ sw $zero, ($a0) -.L80096004: -/* 096C04 80096004 11800113 */ beqz $t4, .L80096454 -/* 096C08 80096008 240E0001 */ li $t6, 1 -/* 096C0C 8009600C AC800000 */ sw $zero, ($a0) -/* 096C10 80096010 10000110 */ b .L80096454 -/* 096C14 80096014 AFAE0054 */ sw $t6, 0x54($sp) -.L80096018: -/* 096C18 80096018 8D020000 */ lw $v0, ($t0) -/* 096C1C 8009601C 306F9000 */ andi $t7, $v1, 0x9000 -/* 096C20 80096020 10400079 */ beqz $v0, .L80096208 -/* 096C24 80096024 30799000 */ andi $t9, $v1, 0x9000 -/* 096C28 80096028 11E00012 */ beqz $t7, .L80096074 -/* 096C2C 8009602C 306C4000 */ andi $t4, $v1, 0x4000 -/* 096C30 80096030 24070001 */ li $a3, 1 -/* 096C34 80096034 14E2000C */ bne $a3, $v0, .L80096068 -/* 096C38 80096038 24190001 */ li $t9, 1 -/* 096C3C 8009603C 24180001 */ li $t8, 1 -/* 096C40 80096040 AFB80050 */ sw $t8, 0x50($sp) -/* 096C44 80096044 0C000326 */ jal set_music_fade_timer -/* 096C48 80096048 2404FF80 */ li $a0, -128 -/* 096C4C 8009604C 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e -/* 096C50 80096050 0C030076 */ jal func_800C01D8 -/* 096C54 80096054 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c -/* 096C58 80096058 240D0008 */ li $t5, 8 -/* 096C5C 8009605C 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096C60 80096060 100000FC */ b .L80096454 -/* 096C64 80096064 AC2D63E0 */ sw $t5, %lo(D_801263E0)($at) -.L80096068: -/* 096C68 80096068 AFB90054 */ sw $t9, 0x54($sp) -/* 096C6C 8009606C 100000F9 */ b .L80096454 -/* 096C70 80096070 AD000000 */ sw $zero, ($t0) -.L80096074: -/* 096C74 80096074 11800005 */ beqz $t4, .L8009608C -/* 096C78 80096078 00405825 */ move $t3, $v0 -/* 096C7C 8009607C 240E0001 */ li $t6, 1 -/* 096C80 80096080 AFAE0054 */ sw $t6, 0x54($sp) -/* 096C84 80096084 100000F3 */ b .L80096454 -/* 096C88 80096088 AD000000 */ sw $zero, ($t0) -.L8009608C: -/* 096C8C 8009608C 1940005A */ blez $t2, .L800961F8 -/* 096C90 80096090 00002025 */ move $a0, $zero -/* 096C94 80096094 31430003 */ andi $v1, $t2, 3 -/* 096C98 80096098 10600017 */ beqz $v1, .L800960F8 -/* 096C9C 8009609C 00604825 */ move $t1, $v1 -/* 096CA0 800960A0 3C0F8012 */ lui $t7, %hi(gControllersYAxisDirection) # $t7, 0x8012 -/* 096CA4 800960A4 25EF6464 */ addiu $t7, %lo(gControllersYAxisDirection) # addiu $t7, $t7, 0x6464 -/* 096CA8 800960A8 000F2821 */ addu $a1, $zero, $t7 -/* 096CAC 800960AC 24070001 */ li $a3, 1 -/* 096CB0 800960B0 24060002 */ li $a2, 2 -.L800960B4: -/* 096CB4 800960B4 80A30000 */ lb $v1, ($a1) -/* 096CB8 800960B8 24840001 */ addiu $a0, $a0, 1 -/* 096CBC 800960BC 18600005 */ blez $v1, .L800960D4 -/* 096CC0 800960C0 00000000 */ nop -/* 096CC4 800960C4 14C20003 */ bne $a2, $v0, .L800960D4 -/* 096CC8 800960C8 00000000 */ nop -/* 096CCC 800960CC AD070000 */ sw $a3, ($t0) -/* 096CD0 800960D0 00E01025 */ move $v0, $a3 -.L800960D4: -/* 096CD4 800960D4 04610005 */ bgez $v1, .L800960EC -/* 096CD8 800960D8 00000000 */ nop -/* 096CDC 800960DC 14E20003 */ bne $a3, $v0, .L800960EC -/* 096CE0 800960E0 00000000 */ nop -/* 096CE4 800960E4 AD060000 */ sw $a2, ($t0) -/* 096CE8 800960E8 00C01025 */ move $v0, $a2 -.L800960EC: -/* 096CEC 800960EC 1524FFF1 */ bne $t1, $a0, .L800960B4 -/* 096CF0 800960F0 24A50001 */ addiu $a1, $a1, 1 -/* 096CF4 800960F4 108A0040 */ beq $a0, $t2, .L800961F8 -.L800960F8: -/* 096CF8 800960F8 3C188012 */ lui $t8, %hi(gControllersYAxisDirection) # $t8, 0x8012 -/* 096CFC 800960FC 27186464 */ addiu $t8, %lo(gControllersYAxisDirection) # addiu $t8, $t8, 0x6464 -/* 096D00 80096100 00982821 */ addu $a1, $a0, $t8 -/* 096D04 80096104 01584821 */ addu $t1, $t2, $t8 -/* 096D08 80096108 24060002 */ li $a2, 2 -/* 096D0C 8009610C 24070001 */ li $a3, 1 -.L80096110: -/* 096D10 80096110 80A30000 */ lb $v1, ($a1) -/* 096D14 80096114 00000000 */ nop -/* 096D18 80096118 18600005 */ blez $v1, .L80096130 -/* 096D1C 8009611C 00000000 */ nop -/* 096D20 80096120 14C20003 */ bne $a2, $v0, .L80096130 -/* 096D24 80096124 00000000 */ nop -/* 096D28 80096128 AD070000 */ sw $a3, ($t0) -/* 096D2C 8009612C 00E01025 */ move $v0, $a3 -.L80096130: -/* 096D30 80096130 04610005 */ bgez $v1, .L80096148 -/* 096D34 80096134 00000000 */ nop -/* 096D38 80096138 14E20003 */ bne $a3, $v0, .L80096148 -/* 096D3C 8009613C 00000000 */ nop -/* 096D40 80096140 AD060000 */ sw $a2, ($t0) -/* 096D44 80096144 00C01025 */ move $v0, $a2 -.L80096148: -/* 096D48 80096148 80A30001 */ lb $v1, 1($a1) -/* 096D4C 8009614C 00000000 */ nop -/* 096D50 80096150 18600005 */ blez $v1, .L80096168 -/* 096D54 80096154 00000000 */ nop -/* 096D58 80096158 14C20003 */ bne $a2, $v0, .L80096168 -/* 096D5C 8009615C 00000000 */ nop -/* 096D60 80096160 AD070000 */ sw $a3, ($t0) -/* 096D64 80096164 00E01025 */ move $v0, $a3 -.L80096168: -/* 096D68 80096168 04610005 */ bgez $v1, .L80096180 -/* 096D6C 8009616C 00000000 */ nop -/* 096D70 80096170 14E20003 */ bne $a3, $v0, .L80096180 -/* 096D74 80096174 00000000 */ nop -/* 096D78 80096178 AD060000 */ sw $a2, ($t0) -/* 096D7C 8009617C 00C01025 */ move $v0, $a2 -.L80096180: -/* 096D80 80096180 80A30002 */ lb $v1, 2($a1) -/* 096D84 80096184 00000000 */ nop -/* 096D88 80096188 18600005 */ blez $v1, .L800961A0 -/* 096D8C 8009618C 00000000 */ nop -/* 096D90 80096190 14C20003 */ bne $a2, $v0, .L800961A0 -/* 096D94 80096194 00000000 */ nop -/* 096D98 80096198 AD070000 */ sw $a3, ($t0) -/* 096D9C 8009619C 00E01025 */ move $v0, $a3 -.L800961A0: -/* 096DA0 800961A0 04610005 */ bgez $v1, .L800961B8 -/* 096DA4 800961A4 00000000 */ nop -/* 096DA8 800961A8 14E20003 */ bne $a3, $v0, .L800961B8 -/* 096DAC 800961AC 00000000 */ nop -/* 096DB0 800961B0 AD060000 */ sw $a2, ($t0) -/* 096DB4 800961B4 00C01025 */ move $v0, $a2 -.L800961B8: -/* 096DB8 800961B8 80A30003 */ lb $v1, 3($a1) -/* 096DBC 800961BC 24A50004 */ addiu $a1, $a1, 4 -/* 096DC0 800961C0 18600005 */ blez $v1, .L800961D8 -/* 096DC4 800961C4 00000000 */ nop -/* 096DC8 800961C8 14C20003 */ bne $a2, $v0, .L800961D8 -/* 096DCC 800961CC 00000000 */ nop -/* 096DD0 800961D0 AD070000 */ sw $a3, ($t0) -/* 096DD4 800961D4 00E01025 */ move $v0, $a3 -.L800961D8: -/* 096DD8 800961D8 04610005 */ bgez $v1, .L800961F0 -/* 096DDC 800961DC 00000000 */ nop -/* 096DE0 800961E0 14E20003 */ bne $a3, $v0, .L800961F0 -/* 096DE4 800961E4 00000000 */ nop -/* 096DE8 800961E8 AD060000 */ sw $a2, ($t0) -/* 096DEC 800961EC 00C01025 */ move $v0, $a2 -.L800961F0: -/* 096DF0 800961F0 14A9FFC7 */ bne $a1, $t1, .L80096110 -/* 096DF4 800961F4 00000000 */ nop -.L800961F8: -/* 096DF8 800961F8 11620096 */ beq $t3, $v0, .L80096454 -/* 096DFC 800961FC 240D0001 */ li $t5, 1 -/* 096E00 80096200 10000094 */ b .L80096454 -/* 096E04 80096204 AFAD004C */ sw $t5, 0x4c($sp) -.L80096208: -/* 096E08 80096208 13200021 */ beqz $t9, .L80096290 -/* 096E0C 8009620C 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 -/* 096E10 80096210 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 -/* 096E14 80096214 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 -/* 096E18 80096218 8CCE0000 */ lw $t6, ($a2) -/* 096E1C 8009621C 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e -/* 096E20 80096220 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) -/* 096E24 80096224 240C0001 */ li $t4, 1 -/* 096E28 80096228 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 -/* 096E2C 8009622C 000E7880 */ sll $t7, $t6, 2 -/* 096E30 80096230 AFAC0050 */ sw $t4, 0x50($sp) -/* 096E34 80096234 006F1821 */ addu $v1, $v1, $t7 -/* 096E38 80096238 8C636BF0 */ lw $v1, %lo(D_80126BF0)($v1) -/* 096E3C 8009623C 8C58006C */ lw $t8, 0x6c($v0) -/* 096E40 80096240 24070001 */ li $a3, 1 -/* 096E44 80096244 14780003 */ bne $v1, $t8, .L80096254 -/* 096E48 80096248 00000000 */ nop -/* 096E4C 8009624C 10000081 */ b .L80096454 -/* 096E50 80096250 ACA70000 */ sw $a3, ($a1) -.L80096254: -/* 096E54 80096254 8C4D0070 */ lw $t5, 0x70($v0) -/* 096E58 80096258 00000000 */ nop -/* 096E5C 8009625C 146D0003 */ bne $v1, $t5, .L8009626C -/* 096E60 80096260 24060002 */ li $a2, 2 -/* 096E64 80096264 1000007B */ b .L80096454 -/* 096E68 80096268 AD060000 */ sw $a2, ($t0) -.L8009626C: -/* 096E6C 8009626C 0C000326 */ jal set_music_fade_timer -/* 096E70 80096270 2404FF80 */ li $a0, -128 -/* 096E74 80096274 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e -/* 096E78 80096278 0C030076 */ jal func_800C01D8 -/* 096E7C 8009627C 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c -/* 096E80 80096280 24190008 */ li $t9, 8 -/* 096E84 80096284 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 096E88 80096288 10000072 */ b .L80096454 -/* 096E8C 8009628C AC3963E0 */ sw $t9, %lo(D_801263E0)($at) -.L80096290: -/* 096E90 80096290 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 -/* 096E94 80096294 8CC20000 */ lw $v0, ($a2) -/* 096E98 80096298 00002025 */ move $a0, $zero -/* 096E9C 8009629C 1940006A */ blez $t2, .L80096448 -/* 096EA0 800962A0 00405825 */ move $t3, $v0 -/* 096EA4 800962A4 31430003 */ andi $v1, $t2, 3 -/* 096EA8 800962A8 10600019 */ beqz $v1, .L80096310 -/* 096EAC 800962AC 00603825 */ move $a3, $v1 -/* 096EB0 800962B0 3C0C8012 */ lui $t4, %hi(gControllersYAxisDirection) # $t4, 0x8012 -/* 096EB4 800962B4 258C6464 */ addiu $t4, %lo(gControllersYAxisDirection) # addiu $t4, $t4, 0x6464 -/* 096EB8 800962B8 000C2821 */ addu $a1, $zero, $t4 -.L800962BC: -/* 096EBC 800962BC 80A30000 */ lb $v1, ($a1) -/* 096EC0 800962C0 24840001 */ addiu $a0, $a0, 1 -/* 096EC4 800962C4 04610009 */ bgez $v1, .L800962EC -/* 096EC8 800962C8 00000000 */ nop -/* 096ECC 800962CC 8D2E0000 */ lw $t6, ($t1) -/* 096ED0 800962D0 24580001 */ addiu $t8, $v0, 1 -/* 096ED4 800962D4 25CFFFFF */ addiu $t7, $t6, -1 -/* 096ED8 800962D8 004F082A */ slt $at, $v0, $t7 -/* 096EDC 800962DC 10200003 */ beqz $at, .L800962EC -/* 096EE0 800962E0 00000000 */ nop -/* 096EE4 800962E4 ACD80000 */ sw $t8, ($a2) -/* 096EE8 800962E8 03001025 */ move $v0, $t8 -.L800962EC: -/* 096EEC 800962EC 18600005 */ blez $v1, .L80096304 -/* 096EF0 800962F0 00000000 */ nop -/* 096EF4 800962F4 18400003 */ blez $v0, .L80096304 -/* 096EF8 800962F8 244DFFFF */ addiu $t5, $v0, -1 -/* 096EFC 800962FC ACCD0000 */ sw $t5, ($a2) -/* 096F00 80096300 01A01025 */ move $v0, $t5 -.L80096304: -/* 096F04 80096304 14E4FFED */ bne $a3, $a0, .L800962BC -/* 096F08 80096308 24A50001 */ addiu $a1, $a1, 1 -/* 096F0C 8009630C 108A004E */ beq $a0, $t2, .L80096448 -.L80096310: -/* 096F10 80096310 3C198012 */ lui $t9, %hi(gControllersYAxisDirection) # $t9, 0x8012 -/* 096F14 80096314 27396464 */ addiu $t9, %lo(gControllersYAxisDirection) # addiu $t9, $t9, 0x6464 -/* 096F18 80096318 00992821 */ addu $a1, $a0, $t9 -/* 096F1C 8009631C 01593821 */ addu $a3, $t2, $t9 -.L80096320: -/* 096F20 80096320 80A30000 */ lb $v1, ($a1) -/* 096F24 80096324 00000000 */ nop -/* 096F28 80096328 04610009 */ bgez $v1, .L80096350 -/* 096F2C 8009632C 00000000 */ nop -/* 096F30 80096330 8D2C0000 */ lw $t4, ($t1) -/* 096F34 80096334 244F0001 */ addiu $t7, $v0, 1 -/* 096F38 80096338 258EFFFF */ addiu $t6, $t4, -1 -/* 096F3C 8009633C 004E082A */ slt $at, $v0, $t6 -/* 096F40 80096340 10200003 */ beqz $at, .L80096350 -/* 096F44 80096344 00000000 */ nop -/* 096F48 80096348 ACCF0000 */ sw $t7, ($a2) -/* 096F4C 8009634C 01E01025 */ move $v0, $t7 -.L80096350: -/* 096F50 80096350 18600005 */ blez $v1, .L80096368 -/* 096F54 80096354 00000000 */ nop -/* 096F58 80096358 18400003 */ blez $v0, .L80096368 -/* 096F5C 8009635C 2458FFFF */ addiu $t8, $v0, -1 -/* 096F60 80096360 ACD80000 */ sw $t8, ($a2) -/* 096F64 80096364 03001025 */ move $v0, $t8 -.L80096368: -/* 096F68 80096368 80A30001 */ lb $v1, 1($a1) -/* 096F6C 8009636C 00000000 */ nop -/* 096F70 80096370 04610009 */ bgez $v1, .L80096398 -/* 096F74 80096374 00000000 */ nop -/* 096F78 80096378 8D2D0000 */ lw $t5, ($t1) -/* 096F7C 8009637C 244C0001 */ addiu $t4, $v0, 1 -/* 096F80 80096380 25B9FFFF */ addiu $t9, $t5, -1 -/* 096F84 80096384 0059082A */ slt $at, $v0, $t9 -/* 096F88 80096388 10200003 */ beqz $at, .L80096398 -/* 096F8C 8009638C 00000000 */ nop -/* 096F90 80096390 ACCC0000 */ sw $t4, ($a2) -/* 096F94 80096394 01801025 */ move $v0, $t4 -.L80096398: -/* 096F98 80096398 18600005 */ blez $v1, .L800963B0 -/* 096F9C 8009639C 00000000 */ nop -/* 096FA0 800963A0 18400003 */ blez $v0, .L800963B0 -/* 096FA4 800963A4 244EFFFF */ addiu $t6, $v0, -1 -/* 096FA8 800963A8 ACCE0000 */ sw $t6, ($a2) -/* 096FAC 800963AC 01C01025 */ move $v0, $t6 -.L800963B0: -/* 096FB0 800963B0 80A30002 */ lb $v1, 2($a1) -/* 096FB4 800963B4 00000000 */ nop -/* 096FB8 800963B8 04610009 */ bgez $v1, .L800963E0 -/* 096FBC 800963BC 00000000 */ nop -/* 096FC0 800963C0 8D2F0000 */ lw $t7, ($t1) -/* 096FC4 800963C4 244D0001 */ addiu $t5, $v0, 1 -/* 096FC8 800963C8 25F8FFFF */ addiu $t8, $t7, -1 -/* 096FCC 800963CC 0058082A */ slt $at, $v0, $t8 -/* 096FD0 800963D0 10200003 */ beqz $at, .L800963E0 -/* 096FD4 800963D4 00000000 */ nop -/* 096FD8 800963D8 ACCD0000 */ sw $t5, ($a2) -/* 096FDC 800963DC 01A01025 */ move $v0, $t5 -.L800963E0: -/* 096FE0 800963E0 18600005 */ blez $v1, .L800963F8 -/* 096FE4 800963E4 00000000 */ nop -/* 096FE8 800963E8 18400003 */ blez $v0, .L800963F8 -/* 096FEC 800963EC 2459FFFF */ addiu $t9, $v0, -1 -/* 096FF0 800963F0 ACD90000 */ sw $t9, ($a2) -/* 096FF4 800963F4 03201025 */ move $v0, $t9 -.L800963F8: -/* 096FF8 800963F8 80A30003 */ lb $v1, 3($a1) -/* 096FFC 800963FC 24A50004 */ addiu $a1, $a1, 4 -/* 097000 80096400 04610009 */ bgez $v1, .L80096428 -/* 097004 80096404 00000000 */ nop -/* 097008 80096408 8D2C0000 */ lw $t4, ($t1) -/* 09700C 8009640C 244F0001 */ addiu $t7, $v0, 1 -/* 097010 80096410 258EFFFF */ addiu $t6, $t4, -1 -/* 097014 80096414 004E082A */ slt $at, $v0, $t6 -/* 097018 80096418 10200003 */ beqz $at, .L80096428 -/* 09701C 8009641C 00000000 */ nop -/* 097020 80096420 ACCF0000 */ sw $t7, ($a2) -/* 097024 80096424 01E01025 */ move $v0, $t7 -.L80096428: -/* 097028 80096428 18600005 */ blez $v1, .L80096440 -/* 09702C 8009642C 00000000 */ nop -/* 097030 80096430 18400003 */ blez $v0, .L80096440 -/* 097034 80096434 2458FFFF */ addiu $t8, $v0, -1 -/* 097038 80096438 ACD80000 */ sw $t8, ($a2) -/* 09703C 8009643C 03001025 */ move $v0, $t8 -.L80096440: -/* 097040 80096440 14A7FFB7 */ bne $a1, $a3, .L80096320 -/* 097044 80096444 00000000 */ nop -.L80096448: -/* 097048 80096448 11620002 */ beq $t3, $v0, .L80096454 -/* 09704C 8009644C 240D0001 */ li $t5, 1 -/* 097050 80096450 AFAD004C */ sw $t5, 0x4c($sp) -.L80096454: -/* 097054 80096454 8FB90054 */ lw $t9, 0x54($sp) -/* 097058 80096458 00000000 */ nop -/* 09705C 8009645C 13200005 */ beqz $t9, .L80096474 -/* 097060 80096460 24040241 */ li $a0, 577 -/* 097064 80096464 0C000741 */ jal play_sound_global -/* 097068 80096468 00002825 */ move $a1, $zero -/* 09706C 8009646C 100000A9 */ b .L80096714 -/* 097070 80096470 00000000 */ nop -.L80096474: -/* 097074 80096474 8FAC0050 */ lw $t4, 0x50($sp) -/* 097078 80096478 8FAE004C */ lw $t6, 0x4c($sp) -/* 09707C 8009647C 11800005 */ beqz $t4, .L80096494 -/* 097080 80096480 240400EF */ li $a0, 239 -/* 097084 80096484 0C000741 */ jal play_sound_global -/* 097088 80096488 00002825 */ move $a1, $zero -/* 09708C 8009648C 100000A1 */ b .L80096714 -/* 097090 80096490 00000000 */ nop -.L80096494: -/* 097094 80096494 11C0009F */ beqz $t6, .L80096714 -/* 097098 80096498 240400EB */ li $a0, 235 -/* 09709C 8009649C 0C000741 */ jal play_sound_global -/* 0970A0 800964A0 00002825 */ move $a1, $zero -/* 0970A4 800964A4 1000009B */ b .L80096714 -/* 0970A8 800964A8 00000000 */ nop -glabel L800964AC -/* 0970AC 800964AC 306F9000 */ andi $t7, $v1, 0x9000 -/* 0970B0 800964B0 11E00098 */ beqz $t7, .L80096714 -/* 0970B4 800964B4 00000000 */ nop -/* 0970B8 800964B8 0C000326 */ jal set_music_fade_timer -/* 0970BC 800964BC 2404FF80 */ li $a0, -128 -/* 0970C0 800964C0 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e -/* 0970C4 800964C4 0C030076 */ jal func_800C01D8 -/* 0970C8 800964C8 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c -/* 0970CC 800964CC 24180008 */ li $t8, 8 -/* 0970D0 800964D0 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 0970D4 800964D4 1000008F */ b .L80096714 -/* 0970D8 800964D8 AC3863E0 */ sw $t8, %lo(D_801263E0)($at) -glabel L800964DC -/* 0970DC 800964DC 3C0D800E */ lui $t5, %hi(gMenuDelay) # $t5, 0x800e -/* 0970E0 800964E0 8DADF47C */ lw $t5, %lo(gMenuDelay)($t5) -/* 0970E4 800964E4 8FB90064 */ lw $t9, 0x64($sp) -/* 0970E8 800964E8 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e -/* 0970EC 800964EC 01B96021 */ addu $t4, $t5, $t9 -/* 0970F0 800964F0 AC2CF47C */ sw $t4, %lo(gMenuDelay)($at) -/* 0970F4 800964F4 2981001F */ slti $at, $t4, 0x1f -/* 0970F8 800964F8 14200086 */ bnez $at, .L80096714 -/* 0970FC 800964FC 00000000 */ nop -/* 097100 80096500 8FA3002C */ lw $v1, 0x2c($sp) -/* 097104 80096504 00000000 */ nop -/* 097108 80096508 806E0117 */ lb $t6, 0x117($v1) -/* 09710C 8009650C 00000000 */ nop -/* 097110 80096510 11C00012 */ beqz $t6, .L8009655C -/* 097114 80096514 00002025 */ move $a0, $zero -/* 097118 80096518 80620058 */ lb $v0, 0x58($v1) -/* 09711C 8009651C 00000000 */ nop -/* 097120 80096520 304F007F */ andi $t7, $v0, 0x7f -/* 097124 80096524 11E00008 */ beqz $t7, .L80096548 -/* 097128 80096528 304D0080 */ andi $t5, $v0, 0x80 -/* 09712C 8009652C 0C01BAF1 */ jal func_8006EBC4 -/* 097130 80096530 00000000 */ nop -/* 097134 80096534 8FB8002C */ lw $t8, 0x2c($sp) -/* 097138 80096538 00000000 */ nop -/* 09713C 8009653C 83020058 */ lb $v0, 0x58($t8) -/* 097140 80096540 00000000 */ nop -/* 097144 80096544 304D0080 */ andi $t5, $v0, 0x80 -.L80096548: -/* 097148 80096548 11A00004 */ beqz $t5, .L8009655C -/* 09714C 8009654C 00002025 */ move $a0, $zero -/* 097150 80096550 0C01BAF8 */ jal func_8006EBE0 -/* 097154 80096554 00000000 */ nop -/* 097158 80096558 00002025 */ move $a0, $zero -.L8009655C: -/* 09715C 8009655C 0C019A25 */ jal func_80066894 -/* 097160 80096560 00002825 */ move $a1, $zero -/* 097164 80096564 0C0259E4 */ jal func_80096790 -/* 097168 80096568 00000000 */ nop -/* 09716C 8009656C 0C031588 */ jal close_dialogue_box -/* 097170 80096570 24040007 */ li $a0, 7 -/* 097174 80096574 0C031525 */ jal assign_dialogue_box_id -/* 097178 80096578 24040007 */ li $a0, 7 -/* 09717C 8009657C 3C028012 */ lui $v0, %hi(D_80126C28) # $v0, 0x8012 -/* 097180 80096580 80426C28 */ lb $v0, %lo(D_80126C28)($v0) -/* 097184 80096584 3C0C800E */ lui $t4, %hi(gTrophyRaceWorldId) # $t4, 0x800e -/* 097188 80096588 28410002 */ slti $at, $v0, 2 -/* 09718C 8009658C 1420001C */ bnez $at, .L80096600 -/* 097190 80096590 24010009 */ li $at, 9 -/* 097194 80096594 1441000D */ bne $v0, $at, .L800965CC -/* 097198 80096598 00000000 */ nop -/* 09719C 8009659C 0C0078A7 */ jal get_misc_asset -/* 0971A0 800965A0 24040019 */ li $a0, 25 -/* 0971A4 800965A4 3C058012 */ lui $a1, %hi(D_80126C28) # $a1, 0x8012 -/* 0971A8 800965A8 80A56C28 */ lb $a1, %lo(D_80126C28)($a1) -/* 0971AC 800965AC 00402025 */ move $a0, $v0 -/* 0971B0 800965B0 2406010E */ li $a2, 270 -/* 0971B4 800965B4 00003825 */ move $a3, $zero -/* 0971B8 800965B8 AFA00010 */ sw $zero, 0x10($sp) -/* 0971BC 800965BC 0C026AF6 */ jal func_8009ABD8 -/* 0971C0 800965C0 AFA00014 */ sw $zero, 0x14($sp) -/* 0971C4 800965C4 1000000C */ b .L800965F8 -/* 0971C8 800965C8 2419000D */ li $t9, 13 -.L800965CC: -/* 0971CC 800965CC 0C0078A7 */ jal get_misc_asset -/* 0971D0 800965D0 24040019 */ li $a0, 25 -/* 0971D4 800965D4 3C058012 */ lui $a1, %hi(D_80126C28) # $a1, 0x8012 -/* 0971D8 800965D8 80A56C28 */ lb $a1, %lo(D_80126C28)($a1) -/* 0971DC 800965DC 00402025 */ move $a0, $v0 -/* 0971E0 800965E0 24060101 */ li $a2, 257 -/* 0971E4 800965E4 00003825 */ move $a3, $zero -/* 0971E8 800965E8 AFA00010 */ sw $zero, 0x10($sp) -/* 0971EC 800965EC 0C026AF6 */ jal func_8009ABD8 -/* 0971F0 800965F0 AFA00014 */ sw $zero, 0x14($sp) -/* 0971F4 800965F4 2419000D */ li $t9, 13 -.L800965F8: -/* 0971F8 800965F8 10000046 */ b .L80096714 -/* 0971FC 800965FC AFB90044 */ sw $t9, 0x44($sp) -.L80096600: -/* 097200 80096600 8D8C0FE8 */ lw $t4, %lo(gTrophyRaceWorldId)($t4) -/* 097204 80096604 240E000A */ li $t6, 10 -/* 097208 80096608 11800003 */ beqz $t4, .L80096618 -/* 09720C 8009660C 3C0F800E */ lui $t7, %hi(gNumberOfActivePlayers) # $t7, 0x800e -/* 097210 80096610 10000040 */ b .L80096714 -/* 097214 80096614 AFAE0044 */ sw $t6, 0x44($sp) -.L80096618: -/* 097218 80096618 8DEFF4BC */ lw $t7, %lo(gNumberOfActivePlayers)($t7) -/* 09721C 8009661C 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 -/* 097220 80096620 29E10002 */ slti $at, $t7, 2 -/* 097224 80096624 14200004 */ bnez $at, .L80096638 -/* 097228 80096628 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 -/* 09722C 8009662C 24180008 */ li $t8, 8 -/* 097230 80096630 10000038 */ b .L80096714 -/* 097234 80096634 AFB80044 */ sw $t8, 0x44($sp) -.L80096638: -/* 097238 80096638 8CCD0000 */ lw $t5, ($a2) -/* 09723C 8009663C 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e -/* 097240 80096640 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) -/* 097244 80096644 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 -/* 097248 80096648 000DC880 */ sll $t9, $t5, 2 -/* 09724C 8009664C 00791821 */ addu $v1, $v1, $t9 -/* 097250 80096650 8C636BF0 */ lw $v1, %lo(D_80126BF0)($v1) -/* 097254 80096654 8C4C005C */ lw $t4, 0x5c($v0) -/* 097258 80096658 3C0E800E */ lui $t6, %hi(gIsInTracksMode) # $t6, 0x800e -/* 09725C 8009665C 146C001A */ bne $v1, $t4, .L800966C8 -/* 097260 80096660 00000000 */ nop -/* 097264 80096664 8DCEF4B8 */ lw $t6, %lo(gIsInTracksMode)($t6) -/* 097268 80096668 00000000 */ nop -/* 09726C 8009666C 15C00014 */ bnez $t6, .L800966C0 -/* 097270 80096670 24190002 */ li $t9, 2 -/* 097274 80096674 0C01BAC5 */ jal func_8006EB14 -/* 097278 80096678 00000000 */ nop -/* 09727C 8009667C 00027840 */ sll $t7, $v0, 1 -/* 097280 80096680 3C18800E */ lui $t8, %hi(D_800E0758) # $t8, 0x800e -/* 097284 80096684 030FC021 */ addu $t8, $t8, $t7 -/* 097288 80096688 87180758 */ lh $t8, %lo(D_800E0758)($t8) -/* 09728C 8009668C 2401FFFF */ li $at, -1 -/* 097290 80096690 1301000B */ beq $t8, $at, .L800966C0 -/* 097294 80096694 24190002 */ li $t9, 2 -/* 097298 80096698 0C01BAC5 */ jal func_8006EB14 -/* 09729C 8009669C 00000000 */ nop -/* 0972A0 800966A0 00026840 */ sll $t5, $v0, 1 -/* 0972A4 800966A4 3C04800E */ lui $a0, %hi(D_800E0758) # $a0, 0x800e -/* 0972A8 800966A8 008D2021 */ addu $a0, $a0, $t5 -/* 0972AC 800966AC 94840758 */ lhu $a0, %lo(D_800E0758)($a0) -/* 0972B0 800966B0 00002825 */ move $a1, $zero -/* 0972B4 800966B4 0C0003F7 */ jal func_80000FDC -/* 0972B8 800966B8 3C063F80 */ lui $a2, 0x3f80 -/* 0972BC 800966BC 24190002 */ li $t9, 2 -.L800966C0: -/* 0972C0 800966C0 10000014 */ b .L80096714 -/* 0972C4 800966C4 AFB90044 */ sw $t9, 0x44($sp) -.L800966C8: -/* 0972C8 800966C8 8C4C0060 */ lw $t4, 0x60($v0) -/* 0972CC 800966CC 240E0005 */ li $t6, 5 -/* 0972D0 800966D0 146C0003 */ bne $v1, $t4, .L800966E0 -/* 0972D4 800966D4 00000000 */ nop -/* 0972D8 800966D8 1000000E */ b .L80096714 -/* 0972DC 800966DC AFAE0044 */ sw $t6, 0x44($sp) -.L800966E0: -/* 0972E0 800966E0 8C4F0068 */ lw $t7, 0x68($v0) -/* 0972E4 800966E4 2418000C */ li $t8, 12 -/* 0972E8 800966E8 146F0003 */ bne $v1, $t7, .L800966F8 -/* 0972EC 800966EC 00000000 */ nop -/* 0972F0 800966F0 10000008 */ b .L80096714 -/* 0972F4 800966F4 AFB80044 */ sw $t8, 0x44($sp) -.L800966F8: -/* 0972F8 800966F8 8C4D0064 */ lw $t5, 0x64($v0) -/* 0972FC 800966FC 24190001 */ li $t9, 1 -/* 097300 80096700 146D0003 */ bne $v1, $t5, .L80096710 -/* 097304 80096704 240C0004 */ li $t4, 4 -/* 097308 80096708 10000002 */ b .L80096714 -/* 09730C 8009670C AFB90044 */ sw $t9, 0x44($sp) -.L80096710: -/* 097310 80096710 AFAC0044 */ sw $t4, 0x44($sp) -.L80096714: -/* 097314 80096714 3C028012 */ lui $v0, %hi(gIgnorePlayerInput) # $v0, 0x8012 -/* 097318 80096718 8C4263C4 */ lw $v0, %lo(gIgnorePlayerInput)($v0) -/* 09731C 8009671C 3C0D8012 */ lui $t5, %hi(sMenuCurrDisplayList) # $t5, 0x8012 -/* 097320 80096720 1840000B */ blez $v0, .L80096750 -/* 097324 80096724 00000000 */ nop -/* 097328 80096728 8FAE0064 */ lw $t6, 0x64($sp) -/* 09732C 8009672C 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 -/* 097330 80096730 004E7823 */ subu $t7, $v0, $t6 -/* 097334 80096734 AC2F63C4 */ sw $t7, %lo(gIgnorePlayerInput)($at) -/* 097338 80096738 3C188012 */ lui $t8, %hi(gIgnorePlayerInput) # $t8, 0x8012 -/* 09733C 8009673C 8F1863C4 */ lw $t8, %lo(gIgnorePlayerInput)($t8) -/* 097340 80096740 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 -/* 097344 80096744 07010002 */ bgez $t8, .L80096750 -/* 097348 80096748 00000000 */ nop -/* 09734C 8009674C AC2063C4 */ sw $zero, %lo(gIgnorePlayerInput)($at) -.L80096750: -/* 097350 80096750 8DAD63A0 */ lw $t5, %lo(sMenuCurrDisplayList)($t5) -/* 097354 80096754 8FB90058 */ lw $t9, 0x58($sp) -/* 097358 80096758 3C0C8012 */ lui $t4, %hi(sMenuCurrHudMat) # $t4, 0x8012 -/* 09735C 8009675C AF2D0000 */ sw $t5, ($t9) -/* 097360 80096760 8FAE005C */ lw $t6, 0x5c($sp) -/* 097364 80096764 8D8C63A8 */ lw $t4, %lo(sMenuCurrHudMat)($t4) -/* 097368 80096768 3C0F8012 */ lui $t7, %hi(sMenuCurrHudVerts) # $t7, 0x8012 -/* 09736C 8009676C ADCC0000 */ sw $t4, ($t6) -/* 097370 80096770 8FB80060 */ lw $t8, 0x60($sp) -/* 097374 80096774 8DEF63AC */ lw $t7, %lo(sMenuCurrHudVerts)($t7) -/* 097378 80096778 00000000 */ nop -/* 09737C 8009677C AF0F0000 */ sw $t7, ($t8) -/* 097380 80096780 8FBF0024 */ lw $ra, 0x24($sp) -/* 097384 80096784 8FA20044 */ lw $v0, 0x44($sp) -/* 097388 80096788 03E00008 */ jr $ra -/* 09738C 8009678C 27BD0058 */ addiu $sp, $sp, 0x58 - +.late_rodata +glabel jpt_800E8548 +.word L80095948, L80095964, L80095B34, L80095D30, L80095D50, L80095EA8, L80095EC8, L800964AC, L800964DC + +.text +glabel func_80095728 +/* 096328 80095728 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 09632C 8009572C AFBF0024 */ sw $ra, 0x24($sp) +/* 096330 80095730 AFA40058 */ sw $a0, 0x58($sp) +/* 096334 80095734 AFA5005C */ sw $a1, 0x5c($sp) +/* 096338 80095738 AFA60060 */ sw $a2, 0x60($sp) +/* 09633C 8009573C AFA70064 */ sw $a3, 0x64($sp) +/* 096340 80095740 AFA00054 */ sw $zero, 0x54($sp) +/* 096344 80095744 AFA00050 */ sw $zero, 0x50($sp) +/* 096348 80095748 AFA0004C */ sw $zero, 0x4c($sp) +/* 09634C 8009574C AFA00044 */ sw $zero, 0x44($sp) +/* 096350 80095750 8C8F0000 */ lw $t7, ($a0) +/* 096354 80095754 3C018012 */ lui $at, %hi(sMenuCurrDisplayList) # $at, 0x8012 +/* 096358 80095758 AC2F63A0 */ sw $t7, %lo(sMenuCurrDisplayList)($at) +/* 09635C 8009575C 8CB90000 */ lw $t9, ($a1) +/* 096360 80095760 3C018012 */ lui $at, %hi(sMenuCurrHudMat) # $at, 0x8012 +/* 096364 80095764 AC3963A8 */ sw $t9, %lo(sMenuCurrHudMat)($at) +/* 096368 80095768 8CCD0000 */ lw $t5, ($a2) +/* 09636C 8009576C 3C018012 */ lui $at, %hi(sMenuCurrHudVerts) # $at, 0x8012 +/* 096370 80095770 0C01BAA4 */ jal get_settings +/* 096374 80095774 AC2D63AC */ sw $t5, %lo(sMenuCurrHudVerts)($at) +/* 096378 80095778 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 +/* 09637C 8009577C 8DCE0300 */ lw $t6, %lo(osTvType)($t6) +/* 096380 80095780 AFA2002C */ sw $v0, 0x2c($sp) +/* 096384 80095784 15C00006 */ bnez $t6, .L800957A0 +/* 096388 80095788 3C0A800E */ lui $t2, %hi(gNumberOfActivePlayers) # $t2, 0x800e +/* 09638C 8009578C 240F001A */ li $t7, 26 +/* 096390 80095790 2418000C */ li $t8, 12 +/* 096394 80095794 AFAF0038 */ sw $t7, 0x38($sp) +/* 096398 80095798 10000003 */ b .L800957A8 +/* 09639C 8009579C AFB80034 */ sw $t8, 0x34($sp) +.L800957A0: +/* 0963A0 800957A0 AFA00038 */ sw $zero, 0x38($sp) +/* 0963A4 800957A4 AFA00034 */ sw $zero, 0x34($sp) +.L800957A8: +/* 0963A8 800957A8 8D4AF4BC */ lw $t2, %lo(gNumberOfActivePlayers)($t2) +/* 0963AC 800957AC 0C027B20 */ jal is_in_two_player_adventure +/* 0963B0 800957B0 AFAA0030 */ sw $t2, 0x30($sp) +/* 0963B4 800957B4 8FAA0030 */ lw $t2, 0x30($sp) +/* 0963B8 800957B8 10400002 */ beqz $v0, .L800957C4 +/* 0963BC 800957BC 3C198012 */ lui $t9, %hi(D_80126A90) # $t9, 0x8012 +/* 0963C0 800957C0 240A0002 */ li $t2, 2 +.L800957C4: +/* 0963C4 800957C4 8F396A90 */ lw $t9, %lo(D_80126A90)($t9) +/* 0963C8 800957C8 00000000 */ nop +/* 0963CC 800957CC 13200016 */ beqz $t9, .L80095828 +/* 0963D0 800957D0 00000000 */ nop +/* 0963D4 800957D4 0C006DE0 */ jal func_8001B780 +/* 0963D8 800957D8 AFAA0030 */ sw $t2, 0x30($sp) +/* 0963DC 800957DC 8FAA0030 */ lw $t2, 0x30($sp) +/* 0963E0 800957E0 10400010 */ beqz $v0, .L80095824 +/* 0963E4 800957E4 3C018012 */ lui $at, %hi(D_80126A90) # $at, 0x8012 +/* 0963E8 800957E8 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 +/* 0963EC 800957EC 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 +/* 0963F0 800957F0 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e +/* 0963F4 800957F4 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) +/* 0963F8 800957F8 8D230000 */ lw $v1, ($t1) +/* 0963FC 800957FC 3C0D8012 */ lui $t5, %hi(D_80126BF0) # $t5, 0x8012 +/* 096400 80095800 8C4E006C */ lw $t6, 0x6c($v0) +/* 096404 80095804 25AD6BF0 */ addiu $t5, %lo(D_80126BF0) # addiu $t5, $t5, 0x6bf0 +/* 096408 80095808 00036080 */ sll $t4, $v1, 2 +/* 09640C 8009580C 018D2021 */ addu $a0, $t4, $t5 +/* 096410 80095810 AC8EFFFC */ sw $t6, -4($a0) +/* 096414 80095814 8C4F0070 */ lw $t7, 0x70($v0) +/* 096418 80095818 24780001 */ addiu $t8, $v1, 1 +/* 09641C 8009581C AD380000 */ sw $t8, ($t1) +/* 096420 80095820 AC8F0000 */ sw $t7, ($a0) +.L80095824: +/* 096424 80095824 AC206A90 */ sw $zero, %lo(D_80126A90)($at) +.L80095828: +/* 096428 80095828 0C025297 */ jal func_80094A5C +/* 09642C 8009582C AFAA0030 */ sw $t2, 0x30($sp) +/* 096430 80095830 8FA40064 */ lw $a0, 0x64($sp) +/* 096434 80095834 0C025305 */ jal func_80094C14 +/* 096438 80095838 00000000 */ nop +/* 09643C 8009583C 3C19800E */ lui $t9, %hi(gMenuDelay) # $t9, 0x800e +/* 096440 80095840 8F39F47C */ lw $t9, %lo(gMenuDelay)($t9) +/* 096444 80095844 8FAA0030 */ lw $t2, 0x30($sp) +/* 096448 80095848 2B210014 */ slti $at, $t9, 0x14 +/* 09644C 8009584C 1020000E */ beqz $at, .L80095888 +/* 096450 80095850 3C0C8012 */ lui $t4, %hi(D_80126C28) # $t4, 0x8012 +/* 096454 80095854 818C6C28 */ lb $t4, %lo(D_80126C28)($t4) +/* 096458 80095858 3C0D8012 */ lui $t5, %hi(D_80126C54) # $t5, 0x8012 +/* 09645C 8009585C 1580000B */ bnez $t4, .L8009588C +/* 096460 80095860 00002025 */ move $a0, $zero +/* 096464 80095864 8DAD6C54 */ lw $t5, %lo(D_80126C54)($t5) +/* 096468 80095868 8FA40064 */ lw $a0, 0x64($sp) +/* 09646C 8009586C 05A1000D */ bgez $t5, .L800958A4 +/* 096470 80095870 00000000 */ nop +/* 096474 80095874 0C02534A */ jal func_80094D28 +/* 096478 80095878 AFAA0030 */ sw $t2, 0x30($sp) +/* 09647C 8009587C 8FAA0030 */ lw $t2, 0x30($sp) +/* 096480 80095880 10000008 */ b .L800958A4 +/* 096484 80095884 00000000 */ nop +.L80095888: +/* 096488 80095888 00002025 */ move $a0, $zero +.L8009588C: +/* 09648C 8009588C 00002825 */ move $a1, $zero +/* 096490 80095890 00003025 */ move $a2, $zero +/* 096494 80095894 0C01E05C */ jal func_80078170 +/* 096498 80095898 AFAA0030 */ sw $t2, 0x30($sp) +/* 09649C 8009589C 8FAA0030 */ lw $t2, 0x30($sp) +/* 0964A0 800958A0 00000000 */ nop +.L800958A4: +/* 0964A4 800958A4 0C026FC8 */ jal update_controller_sticks +/* 0964A8 800958A8 AFAA0030 */ sw $t2, 0x30($sp) +/* 0964AC 800958AC 3C0E8012 */ lui $t6, %hi(gIgnorePlayerInput) # $t6, 0x8012 +/* 0964B0 800958B0 8DCE63C4 */ lw $t6, %lo(gIgnorePlayerInput)($t6) +/* 0964B4 800958B4 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 +/* 0964B8 800958B8 8FAA0030 */ lw $t2, 0x30($sp) +/* 0964BC 800958BC 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 +/* 0964C0 800958C0 15C00014 */ bnez $t6, .L80095914 +/* 0964C4 800958C4 00001825 */ move $v1, $zero +/* 0964C8 800958C8 3C0F8012 */ lui $t7, %hi(D_80126C54) # $t7, 0x8012 +/* 0964CC 800958CC 8DEF6C54 */ lw $t7, %lo(D_80126C54)($t7) +/* 0964D0 800958D0 00000000 */ nop +/* 0964D4 800958D4 05E1000F */ bgez $t7, .L80095914 +/* 0964D8 800958D8 00000000 */ nop +/* 0964DC 800958DC 1940000D */ blez $t2, .L80095914 +/* 0964E0 800958E0 00002025 */ move $a0, $zero +.L800958E4: +/* 0964E4 800958E4 AFA30040 */ sw $v1, 0x40($sp) +/* 0964E8 800958E8 AFA40048 */ sw $a0, 0x48($sp) +/* 0964EC 800958EC 0C01A955 */ jal get_buttons_pressed_from_player +/* 0964F0 800958F0 AFAA0030 */ sw $t2, 0x30($sp) +/* 0964F4 800958F4 8FA40048 */ lw $a0, 0x48($sp) +/* 0964F8 800958F8 8FA30040 */ lw $v1, 0x40($sp) +/* 0964FC 800958FC 8FAA0030 */ lw $t2, 0x30($sp) +/* 096500 80095900 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 +/* 096504 80095904 24840001 */ addiu $a0, $a0, 1 +/* 096508 80095908 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 +/* 09650C 8009590C 148AFFF5 */ bne $a0, $t2, .L800958E4 +/* 096510 80095910 00621825 */ or $v1, $v1, $v0 +.L80095914: +/* 096514 80095914 3C068012 */ lui $a2, %hi(D_801263E0) # $a2, 0x8012 +/* 096518 80095918 24C663E0 */ addiu $a2, %lo(D_801263E0) # addiu $a2, $a2, 0x63e0 +/* 09651C 8009591C 8CD80000 */ lw $t8, ($a2) +/* 096520 80095920 00000000 */ nop +/* 096524 80095924 2F010009 */ sltiu $at, $t8, 9 +/* 096528 80095928 1020037A */ beqz $at, .L80096714 +/* 09652C 8009592C 0018C080 */ sll $t8, $t8, 2 +/* 096530 80095930 3C01800F */ lui $at, %hi(jpt_800E8548) # $at, 0x800f +/* 096534 80095934 00380821 */ addu $at, $at, $t8 +/* 096538 80095938 8C388548 */ lw $t8, %lo(jpt_800E8548)($at) +/* 09653C 8009593C 00000000 */ nop +/* 096540 80095940 03000008 */ jr $t8 +/* 096544 80095944 00000000 */ nop +glabel L80095948 +/* 096548 80095948 30799000 */ andi $t9, $v1, 0x9000 +/* 09654C 8009594C 13200371 */ beqz $t9, .L80096714 +/* 096550 80095950 24070001 */ li $a3, 1 +/* 096554 80095954 ACC70000 */ sw $a3, ($a2) +/* 096558 80095958 3C018012 */ lui $at, %hi(D_80126A94) # $at, 0x8012 +/* 09655C 8009595C 1000036D */ b .L80096714 +/* 096560 80095960 AC206A94 */ sw $zero, %lo(D_80126A94)($at) +glabel L80095964 +/* 096564 80095964 3C0C8012 */ lui $t4, %hi(D_80126A94) # $t4, 0x8012 +/* 096568 80095968 8D8C6A94 */ lw $t4, %lo(D_80126A94)($t4) +/* 09656C 8009596C 3C028012 */ lui $v0, %hi(D_80126478) # $v0, 0x8012 +/* 096570 80095970 2981003D */ slti $at, $t4, 0x3d +/* 096574 80095974 10200004 */ beqz $at, .L80095988 +/* 096578 80095978 00000000 */ nop +/* 09657C 8009597C 306D9000 */ andi $t5, $v1, 0x9000 +/* 096580 80095980 11A00364 */ beqz $t5, .L80096714 +/* 096584 80095984 00000000 */ nop +.L80095988: +/* 096588 80095988 8C426478 */ lw $v0, %lo(D_80126478)($v0) +/* 09658C 8009598C 24030005 */ li $v1, 5 +/* 096590 80095990 00027080 */ sll $t6, $v0, 2 +/* 096594 80095994 01C3001A */ div $zero, $t6, $v1 +/* 096598 80095998 00002025 */ move $a0, $zero +/* 09659C 8009599C 24050050 */ li $a1, 80 +/* 0965A0 800959A0 14600002 */ bnez $v1, .L800959AC +/* 0965A4 800959A4 00000000 */ nop +/* 0965A8 800959A8 0007000D */ break 7 +.L800959AC: +/* 0965AC 800959AC 2401FFFF */ li $at, -1 +/* 0965B0 800959B0 14610004 */ bne $v1, $at, .L800959C4 +/* 0965B4 800959B4 3C018000 */ lui $at, 0x8000 +/* 0965B8 800959B8 15C10002 */ bne $t6, $at, .L800959C4 +/* 0965BC 800959BC 00000000 */ nop +/* 0965C0 800959C0 0006000D */ break 6 +.L800959C4: +/* 0965C4 800959C4 240700F0 */ li $a3, 240 +/* 0965C8 800959C8 00007812 */ mflo $t7 +/* 0965CC 800959CC 004F3023 */ subu $a2, $v0, $t7 +/* 0965D0 800959D0 00000000 */ nop +/* 0965D4 800959D4 0043001A */ div $zero, $v0, $v1 +/* 0965D8 800959D8 14600002 */ bnez $v1, .L800959E4 +/* 0965DC 800959DC 00000000 */ nop +/* 0965E0 800959E0 0007000D */ break 7 +.L800959E4: +/* 0965E4 800959E4 2401FFFF */ li $at, -1 +/* 0965E8 800959E8 14610004 */ bne $v1, $at, .L800959FC +/* 0965EC 800959EC 3C018000 */ lui $at, 0x8000 +/* 0965F0 800959F0 14410002 */ bne $v0, $at, .L800959FC +/* 0965F4 800959F4 00000000 */ nop +/* 0965F8 800959F8 0006000D */ break 6 +.L800959FC: +/* 0965FC 800959FC 0000C012 */ mflo $t8 +/* 096600 80095A00 0302C821 */ addu $t9, $t8, $v0 +/* 096604 80095A04 0C019A50 */ jal func_80066940 +/* 096608 80095A08 AFB90010 */ sw $t9, 0x10($sp) +/* 09660C 80095A0C 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e +/* 096610 80095A10 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 +/* 096614 80095A14 8C4C0000 */ lw $t4, ($v0) +/* 096618 80095A18 44802000 */ mtc1 $zero, $f4 +/* 09661C 80095A1C 3C014210 */ li $at, 0x42100000 # 36.000000 +/* 096620 80095A20 E584008C */ swc1 $f4, 0x8c($t4) +/* 096624 80095A24 8C4D0000 */ lw $t5, ($v0) +/* 096628 80095A28 44813000 */ mtc1 $at, $f6 +/* 09662C 80095A2C 3C01800E */ lui $at, %hi(sMenuImageProperties+0x88) # $at, 0x800e +/* 096630 80095A30 E5A60090 */ swc1 $f6, 0x90($t5) +/* 096634 80095A34 8C4E0000 */ lw $t6, ($v0) +/* 096638 80095A38 C428F598 */ lwc1 $f8, %lo(sMenuImageProperties+0x88)($at) +/* 09663C 80095A3C 00000000 */ nop +/* 096640 80095A40 E5C80088 */ swc1 $f8, 0x88($t6) +/* 096644 80095A44 8FAF002C */ lw $t7, 0x2c($sp) +/* 096648 80095A48 00000000 */ nop +/* 09664C 80095A4C 91E40049 */ lbu $a0, 0x49($t7) +/* 096650 80095A50 0C01AC53 */ jal func_8006B14C +/* 096654 80095A54 00000000 */ nop +/* 096658 80095A58 30580040 */ andi $t8, $v0, 0x40 +/* 09665C 80095A5C 13000004 */ beqz $t8, .L80095A70 +/* 096660 80095A60 24190006 */ li $t9, 6 +/* 096664 80095A64 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096668 80095A68 1000032A */ b .L80096714 +/* 09666C 80095A6C AC3963E0 */ sw $t9, %lo(D_801263E0)($at) +.L80095A70: +/* 096670 80095A70 8FA3002C */ lw $v1, 0x2c($sp) +/* 096674 80095A74 3C04800E */ lui $a0, %hi(D_800E0BEC) # $a0, 0x800e +/* 096678 80095A78 806C0117 */ lb $t4, 0x117($v1) +/* 09667C 80095A7C 24840BEC */ addiu $a0, %lo(D_800E0BEC) # addiu $a0, $a0, 0xbec +/* 096680 80095A80 15800011 */ bnez $t4, .L80095AC8 +/* 096684 80095A84 3C013F00 */ lui $at, 0x3f00 +/* 096688 80095A88 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 09668C 80095A8C 44810000 */ mtc1 $at, $f0 +/* 096690 80095A90 8FAD0038 */ lw $t5, 0x38($sp) +/* 096694 80095A94 8FAE0034 */ lw $t6, 0x34($sp) +/* 096698 80095A98 3C04800E */ lui $a0, %hi(D_800E0CEC) # $a0, 0x800e +/* 09669C 80095A9C 44050000 */ mfc1 $a1, $f0 +/* 0966A0 80095AA0 44070000 */ mfc1 $a3, $f0 +/* 0966A4 80095AA4 24840CEC */ addiu $a0, %lo(D_800E0CEC) # addiu $a0, $a0, 0xcec +/* 0966A8 80095AA8 3C064170 */ lui $a2, 0x4170 +/* 0966AC 80095AAC AFAD0010 */ sw $t5, 0x10($sp) +/* 0966B0 80095AB0 0C020795 */ jal func_80081E54 +/* 0966B4 80095AB4 AFAE0014 */ sw $t6, 0x14($sp) +/* 0966B8 80095AB8 240F0003 */ li $t7, 3 +/* 0966BC 80095ABC 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 0966C0 80095AC0 10000314 */ b .L80096714 +/* 0966C4 80095AC4 AC2F63E0 */ sw $t7, %lo(D_801263E0)($at) +.L80095AC8: +/* 0966C8 80095AC8 80780114 */ lb $t8, 0x114($v1) +/* 0966CC 80095ACC 44810000 */ mtc1 $at, $f0 +/* 0966D0 80095AD0 0018C880 */ sll $t9, $t8, 2 +/* 0966D4 80095AD4 0338C823 */ subu $t9, $t9, $t8 +/* 0966D8 80095AD8 0019C8C0 */ sll $t9, $t9, 3 +/* 0966DC 80095ADC 00791021 */ addu $v0, $v1, $t9 +/* 0966E0 80095AE0 24420054 */ addiu $v0, $v0, 0x54 +/* 0966E4 80095AE4 8FB90034 */ lw $t9, 0x34($sp) +/* 0966E8 80095AE8 8FB80038 */ lw $t8, 0x38($sp) +/* 0966EC 80095AEC 244C0012 */ addiu $t4, $v0, 0x12 +/* 0966F0 80095AF0 244D0014 */ addiu $t5, $v0, 0x14 +/* 0966F4 80095AF4 244E0016 */ addiu $t6, $v0, 0x16 +/* 0966F8 80095AF8 244F0010 */ addiu $t7, $v0, 0x10 +/* 0966FC 80095AFC 44050000 */ mfc1 $a1, $f0 +/* 096700 80095B00 44070000 */ mfc1 $a3, $f0 +/* 096704 80095B04 AC8C0074 */ sw $t4, 0x74($a0) +/* 096708 80095B08 AC8D0094 */ sw $t5, 0x94($a0) +/* 09670C 80095B0C AC8E00B4 */ sw $t6, 0xb4($a0) +/* 096710 80095B10 AC8F00D4 */ sw $t7, 0xd4($a0) +/* 096714 80095B14 3C064170 */ lui $a2, 0x4170 +/* 096718 80095B18 AFB90014 */ sw $t9, 0x14($sp) +/* 09671C 80095B1C 0C020795 */ jal func_80081E54 +/* 096720 80095B20 AFB80010 */ sw $t8, 0x10($sp) +/* 096724 80095B24 24060002 */ li $a2, 2 +/* 096728 80095B28 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 09672C 80095B2C 100002F9 */ b .L80096714 +/* 096730 80095B30 AC2663E0 */ sw $a2, %lo(D_801263E0)($at) +glabel L80095B34 +/* 096734 80095B34 8FA40064 */ lw $a0, 0x64($sp) +/* 096738 80095B38 0C0207D3 */ jal func_80081F4C +/* 09673C 80095B3C 00000000 */ nop +/* 096740 80095B40 104002F4 */ beqz $v0, .L80096714 +/* 096744 80095B44 3C0C800E */ lui $t4, %hi(gTrophyRaceWorldId) # $t4, 0x800e +/* 096748 80095B48 8D8C0FE8 */ lw $t4, %lo(gTrophyRaceWorldId)($t4) +/* 09674C 80095B4C 8FA7002C */ lw $a3, 0x2c($sp) +/* 096750 80095B50 1180000A */ beqz $t4, .L80095B7C +/* 096754 80095B54 00000000 */ nop +/* 096758 80095B58 0C000326 */ jal set_music_fade_timer +/* 09675C 80095B5C 2404FF80 */ li $a0, -128 +/* 096760 80095B60 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e +/* 096764 80095B64 0C030076 */ jal func_800C01D8 +/* 096768 80095B68 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c +/* 09676C 80095B6C 240D0008 */ li $t5, 8 +/* 096770 80095B70 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096774 80095B74 100002E7 */ b .L80096714 +/* 096778 80095B78 AC2D63E0 */ sw $t5, %lo(D_801263E0)($at) +.L80095B7C: +/* 09677C 80095B7C 80EE0117 */ lb $t6, 0x117($a3) +/* 096780 80095B80 3C013F00 */ lui $at, 0x3f00 +/* 096784 80095B84 11C0005B */ beqz $t6, .L80095CF4 +/* 096788 80095B88 240D0003 */ li $t5, 3 +/* 09678C 80095B8C 3C0F8012 */ lui $t7, %hi(gPlayerSelectVehicle) # $t7, 0x8012 +/* 096790 80095B90 81EF69C0 */ lb $t7, %lo(gPlayerSelectVehicle)($t7) +/* 096794 80095B94 90EC0049 */ lbu $t4, 0x49($a3) +/* 096798 80095B98 000FC080 */ sll $t8, $t7, 2 +/* 09679C 80095B9C 00F81021 */ addu $v0, $a3, $t8 +/* 0967A0 80095BA0 8C59003C */ lw $t9, 0x3c($v0) +/* 0967A4 80095BA4 3C03800E */ lui $v1, %hi(D_800E0E4C) # $v1, 0x800e +/* 0967A8 80095BA8 000C6840 */ sll $t5, $t4, 1 +/* 0967AC 80095BAC 24630E4C */ addiu $v1, %lo(D_800E0E4C) # addiu $v1, $v1, 0xe4c +/* 0967B0 80095BB0 032D7021 */ addu $t6, $t9, $t5 +/* 0967B4 80095BB4 AC6E0074 */ sw $t6, 0x74($v1) +/* 0967B8 80095BB8 90F80049 */ lbu $t8, 0x49($a3) +/* 0967BC 80095BBC 8C4F0024 */ lw $t7, 0x24($v0) +/* 0967C0 80095BC0 00186040 */ sll $t4, $t8, 1 +/* 0967C4 80095BC4 01ECC821 */ addu $t9, $t7, $t4 +/* 0967C8 80095BC8 AC7900D4 */ sw $t9, 0xd4($v1) +/* 0967CC 80095BCC 90EE0049 */ lbu $t6, 0x49($a3) +/* 0967D0 80095BD0 8C4D0030 */ lw $t5, 0x30($v0) +/* 0967D4 80095BD4 000EC040 */ sll $t8, $t6, 1 +/* 0967D8 80095BD8 01B87821 */ addu $t7, $t5, $t8 +/* 0967DC 80095BDC 95E40000 */ lhu $a0, ($t7) +/* 0967E0 80095BE0 3C058012 */ lui $a1, %hi(D_80126390) # $a1, 0x8012 +/* 0967E4 80095BE4 24A56390 */ addiu $a1, %lo(D_80126390) # addiu $a1, $a1, 0x6390 +/* 0967E8 80095BE8 0C025DBE */ jal decompress_filename_string +/* 0967EC 80095BEC 24060003 */ li $a2, 3 +/* 0967F0 80095BF0 3C0C8012 */ lui $t4, %hi(gPlayerSelectVehicle) # $t4, 0x8012 +/* 0967F4 80095BF4 8FA2002C */ lw $v0, 0x2c($sp) +/* 0967F8 80095BF8 818C69C0 */ lb $t4, %lo(gPlayerSelectVehicle)($t4) +/* 0967FC 80095BFC 90580049 */ lbu $t8, 0x49($v0) +/* 096800 80095C00 000CC880 */ sll $t9, $t4, 2 +/* 096804 80095C04 00597021 */ addu $t6, $v0, $t9 +/* 096808 80095C08 8DCD0018 */ lw $t5, 0x18($t6) +/* 09680C 80095C0C 00187840 */ sll $t7, $t8, 1 +/* 096810 80095C10 01AF6021 */ addu $t4, $t5, $t7 +/* 096814 80095C14 95840000 */ lhu $a0, ($t4) +/* 096818 80095C18 3C058012 */ lui $a1, %hi(D_80126394) # $a1, 0x8012 +/* 09681C 80095C1C 24A56394 */ addiu $a1, %lo(D_80126394) # addiu $a1, $a1, 0x6394 +/* 096820 80095C20 0C025DBE */ jal decompress_filename_string +/* 096824 80095C24 24060003 */ li $a2, 3 +/* 096828 80095C28 8FA2002C */ lw $v0, 0x2c($sp) +/* 09682C 80095C2C 3C04800E */ lui $a0, %hi(D_800E0E4C) # $a0, 0x800e +/* 096830 80095C30 80590058 */ lb $t9, 0x58($v0) +/* 096834 80095C34 3C013F00 */ lui $at, 0x3f00 +/* 096838 80095C38 13200021 */ beqz $t9, .L80095CC0 +/* 09683C 80095C3C 24840E4C */ addiu $a0, %lo(D_800E0E4C) # addiu $a0, $a0, 0xe4c +/* 096840 80095C40 3C18800E */ lui $t8, %hi(gIsInTracksMode) # $t8, 0x800e +/* 096844 80095C44 8F18F4B8 */ lw $t8, %lo(gIsInTracksMode)($t8) +/* 096848 80095C48 240E0004 */ li $t6, 4 +/* 09684C 80095C4C 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096850 80095C50 1700000B */ bnez $t8, .L80095C80 +/* 096854 80095C54 AC2E63E0 */ sw $t6, %lo(D_801263E0)($at) +/* 096858 80095C58 3C0D800E */ lui $t5, %hi(D_800E0FAC) # $t5, 0x800e +/* 09685C 80095C5C 8DAD0FAC */ lw $t5, %lo(D_800E0FAC)($t5) +/* 096860 80095C60 3C05800E */ lui $a1, %hi(D_800E0FA8) # $a1, 0x800e +/* 096864 80095C64 11A00006 */ beqz $t5, .L80095C80 +/* 096868 80095C68 24A50FA8 */ addiu $a1, %lo(D_800E0FA8) # addiu $a1, $a1, 0xfa8 +/* 09686C 80095C6C 8C440050 */ lw $a0, 0x50($v0) +/* 096870 80095C70 0C025DBE */ jal decompress_filename_string +/* 096874 80095C74 24060003 */ li $a2, 3 +/* 096878 80095C78 3C01800E */ lui $at, %hi(D_800E0FAC) # $at, 0x800e +/* 09687C 80095C7C AC200FAC */ sw $zero, %lo(D_800E0FAC)($at) +.L80095C80: +/* 096880 80095C80 8FA20038 */ lw $v0, 0x38($sp) +/* 096884 80095C84 3C0F800E */ lui $t7, %hi(D_800E0FA4) # $t7, 0x800e +/* 096888 80095C88 3C0C800E */ lui $t4, %hi(D_800E0FA8) # $t4, 0x800e +/* 09688C 80095C8C 258C0FA8 */ addiu $t4, %lo(D_800E0FA8) # addiu $t4, $t4, 0xfa8 +/* 096890 80095C90 25EF0FA4 */ addiu $t7, %lo(D_800E0FA4) # addiu $t7, $t7, 0xfa4 +/* 096894 80095C94 24190003 */ li $t9, 3 +/* 096898 80095C98 AFB90018 */ sw $t9, 0x18($sp) +/* 09689C 80095C9C AFAF0010 */ sw $t7, 0x10($sp) +/* 0968A0 80095CA0 AFAC0014 */ sw $t4, 0x14($sp) +/* 0968A4 80095CA4 240500A0 */ li $a1, 160 +/* 0968A8 80095CA8 24070002 */ li $a3, 2 +/* 0968AC 80095CAC 244400C4 */ addiu $a0, $v0, 0xc4 +/* 0968B0 80095CB0 0C025E1D */ jal func_80097874 +/* 0968B4 80095CB4 24460078 */ addiu $a2, $v0, 0x78 +/* 0968B8 80095CB8 10000296 */ b .L80096714 +/* 0968BC 80095CBC 00000000 */ nop +.L80095CC0: +/* 0968C0 80095CC0 44810000 */ mtc1 $at, $f0 +/* 0968C4 80095CC4 8FAE0038 */ lw $t6, 0x38($sp) +/* 0968C8 80095CC8 8FB80034 */ lw $t8, 0x34($sp) +/* 0968CC 80095CCC 44050000 */ mfc1 $a1, $f0 +/* 0968D0 80095CD0 44070000 */ mfc1 $a3, $f0 +/* 0968D4 80095CD4 3C064170 */ lui $a2, 0x4170 +/* 0968D8 80095CD8 AFAE0010 */ sw $t6, 0x10($sp) +/* 0968DC 80095CDC 0C020795 */ jal func_80081E54 +/* 0968E0 80095CE0 AFB80014 */ sw $t8, 0x14($sp) +/* 0968E4 80095CE4 24030005 */ li $v1, 5 +/* 0968E8 80095CE8 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 0968EC 80095CEC 10000289 */ b .L80096714 +/* 0968F0 80095CF0 AC2363E0 */ sw $v1, %lo(D_801263E0)($at) +.L80095CF4: +/* 0968F4 80095CF4 44810000 */ mtc1 $at, $f0 +/* 0968F8 80095CF8 8FAF0038 */ lw $t7, 0x38($sp) +/* 0968FC 80095CFC 8FAC0034 */ lw $t4, 0x34($sp) +/* 096900 80095D00 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096904 80095D04 3C04800E */ lui $a0, %hi(D_800E0CEC) # $a0, 0x800e +/* 096908 80095D08 44050000 */ mfc1 $a1, $f0 +/* 09690C 80095D0C 44070000 */ mfc1 $a3, $f0 +/* 096910 80095D10 AC2D63E0 */ sw $t5, %lo(D_801263E0)($at) +/* 096914 80095D14 24840CEC */ addiu $a0, %lo(D_800E0CEC) # addiu $a0, $a0, 0xcec +/* 096918 80095D18 3C064170 */ lui $a2, 0x4170 +/* 09691C 80095D1C AFAF0010 */ sw $t7, 0x10($sp) +/* 096920 80095D20 0C020795 */ jal func_80081E54 +/* 096924 80095D24 AFAC0014 */ sw $t4, 0x14($sp) +/* 096928 80095D28 1000027A */ b .L80096714 +/* 09692C 80095D2C 00000000 */ nop +glabel L80095D30 +/* 096930 80095D30 8FA40064 */ lw $a0, 0x64($sp) +/* 096934 80095D34 0C0207D3 */ jal func_80081F4C +/* 096938 80095D38 00000000 */ nop +/* 09693C 80095D3C 10400275 */ beqz $v0, .L80096714 +/* 096940 80095D40 24190006 */ li $t9, 6 +/* 096944 80095D44 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096948 80095D48 10000272 */ b .L80096714 +/* 09694C 80095D4C AC3963E0 */ sw $t9, %lo(D_801263E0)($at) +glabel L80095D50 +/* 096950 80095D50 8FA40064 */ lw $a0, 0x64($sp) +/* 096954 80095D54 0C025F44 */ jal menu_enter_filename_loop +/* 096958 80095D58 00000000 */ nop +/* 09695C 80095D5C 1040026D */ beqz $v0, .L80096714 +/* 096960 80095D60 00000000 */ nop +/* 096964 80095D64 8FAE002C */ lw $t6, 0x2c($sp) +/* 096968 80095D68 3C04800E */ lui $a0, %hi(D_800E0FA8) # $a0, 0x800e +/* 09696C 80095D6C 81C20058 */ lb $v0, 0x58($t6) +/* 096970 80095D70 24840FA8 */ addiu $a0, %lo(D_800E0FA8) # addiu $a0, $a0, 0xfa8 +/* 096974 80095D74 3058007F */ andi $t8, $v0, 0x7f +/* 096978 80095D78 1300001F */ beqz $t8, .L80095DF8 +/* 09697C 80095D7C 304E0080 */ andi $t6, $v0, 0x80 +/* 096980 80095D80 0C025DD1 */ jal compress_filename_string +/* 096984 80095D84 24050003 */ li $a1, 3 +/* 096988 80095D88 3C078012 */ lui $a3, %hi(gPlayerSelectVehicle) # $a3, 0x8012 +/* 09698C 80095D8C 24E769C0 */ addiu $a3, %lo(gPlayerSelectVehicle) # addiu $a3, $a3, 0x69c0 +/* 096990 80095D90 80ED0000 */ lb $t5, ($a3) +/* 096994 80095D94 8FA3002C */ lw $v1, 0x2c($sp) +/* 096998 80095D98 000D7880 */ sll $t7, $t5, 2 +/* 09699C 80095D9C 906E0049 */ lbu $t6, 0x49($v1) +/* 0969A0 80095DA0 006F6021 */ addu $t4, $v1, $t7 +/* 0969A4 80095DA4 8D990018 */ lw $t9, 0x18($t4) +/* 0969A8 80095DA8 000EC040 */ sll $t8, $t6, 1 +/* 0969AC 80095DAC 03386821 */ addu $t5, $t9, $t8 +/* 0969B0 80095DB0 A5A20000 */ sh $v0, ($t5) +/* 0969B4 80095DB4 80EF0000 */ lb $t7, ($a3) +/* 0969B8 80095DB8 90780049 */ lbu $t8, 0x49($v1) +/* 0969BC 80095DBC 000F6080 */ sll $t4, $t7, 2 +/* 0969C0 80095DC0 006C7021 */ addu $t6, $v1, $t4 +/* 0969C4 80095DC4 8DD90018 */ lw $t9, 0x18($t6) +/* 0969C8 80095DC8 00186840 */ sll $t5, $t8, 1 +/* 0969CC 80095DCC 032D7821 */ addu $t7, $t9, $t5 +/* 0969D0 80095DD0 95E40000 */ lhu $a0, ($t7) +/* 0969D4 80095DD4 3C058012 */ lui $a1, %hi(D_80126394) # $a1, 0x8012 +/* 0969D8 80095DD8 24A56394 */ addiu $a1, %lo(D_80126394) # addiu $a1, $a1, 0x6394 +/* 0969DC 80095DDC 0C025DBE */ jal decompress_filename_string +/* 0969E0 80095DE0 24060003 */ li $a2, 3 +/* 0969E4 80095DE4 8FAC002C */ lw $t4, 0x2c($sp) +/* 0969E8 80095DE8 00000000 */ nop +/* 0969EC 80095DEC 81820058 */ lb $v0, 0x58($t4) +/* 0969F0 80095DF0 00000000 */ nop +/* 0969F4 80095DF4 304E0080 */ andi $t6, $v0, 0x80 +.L80095DF8: +/* 0969F8 80095DF8 11C0001B */ beqz $t6, .L80095E68 +/* 0969FC 80095DFC 3C04800E */ lui $a0, %hi(D_800E0FA8) # $a0, 0x800e +/* 096A00 80095E00 24840FA8 */ addiu $a0, %lo(D_800E0FA8) # addiu $a0, $a0, 0xfa8 +/* 096A04 80095E04 0C025DD1 */ jal compress_filename_string +/* 096A08 80095E08 24050003 */ li $a1, 3 +/* 096A0C 80095E0C 3C078012 */ lui $a3, %hi(gPlayerSelectVehicle) # $a3, 0x8012 +/* 096A10 80095E10 24E769C0 */ addiu $a3, %lo(gPlayerSelectVehicle) # addiu $a3, $a3, 0x69c0 +/* 096A14 80095E14 80F80000 */ lb $t8, ($a3) +/* 096A18 80095E18 8FA3002C */ lw $v1, 0x2c($sp) +/* 096A1C 80095E1C 0018C880 */ sll $t9, $t8, 2 +/* 096A20 80095E20 906C0049 */ lbu $t4, 0x49($v1) +/* 096A24 80095E24 00796821 */ addu $t5, $v1, $t9 +/* 096A28 80095E28 8DAF0030 */ lw $t7, 0x30($t5) +/* 096A2C 80095E2C 000C7040 */ sll $t6, $t4, 1 +/* 096A30 80095E30 01EEC021 */ addu $t8, $t7, $t6 +/* 096A34 80095E34 A7020000 */ sh $v0, ($t8) +/* 096A38 80095E38 80F90000 */ lb $t9, ($a3) +/* 096A3C 80095E3C 906E0049 */ lbu $t6, 0x49($v1) +/* 096A40 80095E40 00196880 */ sll $t5, $t9, 2 +/* 096A44 80095E44 006D6021 */ addu $t4, $v1, $t5 +/* 096A48 80095E48 8D8F0030 */ lw $t7, 0x30($t4) +/* 096A4C 80095E4C 000EC040 */ sll $t8, $t6, 1 +/* 096A50 80095E50 01F8C821 */ addu $t9, $t7, $t8 +/* 096A54 80095E54 97240000 */ lhu $a0, ($t9) +/* 096A58 80095E58 3C058012 */ lui $a1, %hi(D_80126390) # $a1, 0x8012 +/* 096A5C 80095E5C 24A56390 */ addiu $a1, %lo(D_80126390) # addiu $a1, $a1, 0x6390 +/* 096A60 80095E60 0C025DBE */ jal decompress_filename_string +/* 096A64 80095E64 24060003 */ li $a2, 3 +.L80095E68: +/* 096A68 80095E68 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 096A6C 80095E6C 44810000 */ mtc1 $at, $f0 +/* 096A70 80095E70 8FAD0038 */ lw $t5, 0x38($sp) +/* 096A74 80095E74 8FAC0034 */ lw $t4, 0x34($sp) +/* 096A78 80095E78 3C04800E */ lui $a0, %hi(D_800E0E4C) # $a0, 0x800e +/* 096A7C 80095E7C 44050000 */ mfc1 $a1, $f0 +/* 096A80 80095E80 44070000 */ mfc1 $a3, $f0 +/* 096A84 80095E84 24840E4C */ addiu $a0, %lo(D_800E0E4C) # addiu $a0, $a0, 0xe4c +/* 096A88 80095E88 3C064170 */ lui $a2, 0x4170 +/* 096A8C 80095E8C AFAD0010 */ sw $t5, 0x10($sp) +/* 096A90 80095E90 0C020795 */ jal func_80081E54 +/* 096A94 80095E94 AFAC0014 */ sw $t4, 0x14($sp) +/* 096A98 80095E98 24030005 */ li $v1, 5 +/* 096A9C 80095E9C 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096AA0 80095EA0 1000021C */ b .L80096714 +/* 096AA4 80095EA4 AC2363E0 */ sw $v1, %lo(D_801263E0)($at) +glabel L80095EA8 +/* 096AA8 80095EA8 8FA40064 */ lw $a0, 0x64($sp) +/* 096AAC 80095EAC 0C0207D3 */ jal func_80081F4C +/* 096AB0 80095EB0 00000000 */ nop +/* 096AB4 80095EB4 10400217 */ beqz $v0, .L80096714 +/* 096AB8 80095EB8 240E0006 */ li $t6, 6 +/* 096ABC 80095EBC 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096AC0 80095EC0 10000214 */ b .L80096714 +/* 096AC4 80095EC4 AC2E63E0 */ sw $t6, %lo(D_801263E0)($at) +glabel L80095EC8 +/* 096AC8 80095EC8 3C058012 */ lui $a1, %hi(D_80126A98) # $a1, 0x8012 +/* 096ACC 80095ECC 24A56A98 */ addiu $a1, %lo(D_80126A98) # addiu $a1, $a1, 0x6a98 +/* 096AD0 80095ED0 8CA20000 */ lw $v0, ($a1) +/* 096AD4 80095ED4 3C048012 */ lui $a0, %hi(D_80126C1C) # $a0, 0x8012 +/* 096AD8 80095ED8 10400039 */ beqz $v0, .L80095FC0 +/* 096ADC 80095EDC 24846C1C */ addiu $a0, %lo(D_80126C1C) # addiu $a0, $a0, 0x6c1c +/* 096AE0 80095EE0 244F0001 */ addiu $t7, $v0, 1 +/* 096AE4 80095EE4 29E10005 */ slti $at, $t7, 5 +/* 096AE8 80095EE8 1420015A */ bnez $at, .L80096454 +/* 096AEC 80095EEC ACAF0000 */ sw $t7, ($a1) +/* 096AF0 80095EF0 0C00025A */ jal func_80000968 +/* 096AF4 80095EF4 24040003 */ li $a0, 3 +/* 096AF8 80095EF8 0C006DCE */ jal func_8001B738 +/* 096AFC 80095EFC 00002025 */ move $a0, $zero +/* 096B00 80095F00 24030005 */ li $v1, 5 +/* 096B04 80095F04 305900FF */ andi $t9, $v0, 0xff +/* 096B08 80095F08 14790004 */ bne $v1, $t9, .L80095F1C +/* 096B0C 80095F0C AFA20054 */ sw $v0, 0x54($sp) +/* 096B10 80095F10 0C006DCE */ jal func_8001B738 +/* 096B14 80095F14 00002025 */ move $a0, $zero +/* 096B18 80095F18 AFA20054 */ sw $v0, 0x54($sp) +.L80095F1C: +/* 096B1C 80095F1C 0C00025A */ jal func_80000968 +/* 096B20 80095F20 24040002 */ li $a0, 2 +/* 096B24 80095F24 8FAD0054 */ lw $t5, 0x54($sp) +/* 096B28 80095F28 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 +/* 096B2C 80095F2C 11A00006 */ beqz $t5, .L80095F48 +/* 096B30 80095F30 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 +/* 096B34 80095F34 0C025589 */ jal func_80095624 +/* 096B38 80095F38 01A02025 */ move $a0, $t5 +/* 096B3C 80095F3C 240C0001 */ li $t4, 1 +/* 096B40 80095F40 1000001C */ b .L80095FB4 +/* 096B44 80095F44 AFAC0054 */ sw $t4, 0x54($sp) +.L80095F48: +/* 096B48 80095F48 3C048012 */ lui $a0, %hi(D_80126C1C) # $a0, 0x8012 +/* 096B4C 80095F4C 24846C1C */ addiu $a0, %lo(D_80126C1C) # addiu $a0, $a0, 0x6c1c +/* 096B50 80095F50 8C8E0000 */ lw $t6, ($a0) +/* 096B54 80095F54 3C0F800E */ lui $t7, %hi(sInsertControllerPakMenuText) # $t7, 0x800e +/* 096B58 80095F58 25EF0A04 */ addiu $t7, %lo(sInsertControllerPakMenuText) # addiu $t7, $t7, 0xa04 +/* 096B5C 80095F5C 15CF0006 */ bne $t6, $t7, .L80095F78 +/* 096B60 80095F60 00000000 */ nop +/* 096B64 80095F64 0C025589 */ jal func_80095624 +/* 096B68 80095F68 24040008 */ li $a0, 8 +/* 096B6C 80095F6C 3C098012 */ lui $t1, %hi(D_80126C14) # $t1, 0x8012 +/* 096B70 80095F70 10000002 */ b .L80095F7C +/* 096B74 80095F74 25296C14 */ addiu $t1, %lo(D_80126C14) # addiu $t1, $t1, 0x6c14 +.L80095F78: +/* 096B78 80095F78 AC800000 */ sw $zero, ($a0) +.L80095F7C: +/* 096B7C 80095F7C 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 +/* 096B80 80095F80 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 +/* 096B84 80095F84 3C18800E */ lui $t8, %hi(gMenuText) # $t8, 0x800e +/* 096B88 80095F88 8F18F4A0 */ lw $t8, %lo(gMenuText)($t8) +/* 096B8C 80095F8C 8CCD0000 */ lw $t5, ($a2) +/* 096B90 80095F90 8F190070 */ lw $t9, 0x70($t8) +/* 096B94 80095F94 3C018012 */ lui $at, %hi(D_80126BF0) # $at, 0x8012 +/* 096B98 80095F98 000D6080 */ sll $t4, $t5, 2 +/* 096B9C 80095F9C 002C0821 */ addu $at, $at, $t4 +/* 096BA0 80095FA0 AC396BF0 */ sw $t9, %lo(D_80126BF0)($at) +/* 096BA4 80095FA4 8D2E0000 */ lw $t6, ($t1) +/* 096BA8 80095FA8 ACC00000 */ sw $zero, ($a2) +/* 096BAC 80095FAC 25CFFFFF */ addiu $t7, $t6, -1 +/* 096BB0 80095FB0 AD2F0000 */ sw $t7, ($t1) +.L80095FB4: +/* 096BB4 80095FB4 3C018012 */ lui $at, %hi(D_80126A98) # $at, 0x8012 +/* 096BB8 80095FB8 10000126 */ b .L80096454 +/* 096BBC 80095FBC AC206A98 */ sw $zero, %lo(D_80126A98)($at) +.L80095FC0: +/* 096BC0 80095FC0 8C820000 */ lw $v0, ($a0) +/* 096BC4 80095FC4 3C08800E */ lui $t0, %hi(gMenuSubOption) # $t0, 0x800e +/* 096BC8 80095FC8 10400013 */ beqz $v0, .L80096018 +/* 096BCC 80095FCC 25080988 */ addiu $t0, %lo(gMenuSubOption) # addiu $t0, $t0, 0x988 +/* 096BD0 80095FD0 30789000 */ andi $t8, $v1, 0x9000 +/* 096BD4 80095FD4 1300000B */ beqz $t8, .L80096004 +/* 096BD8 80095FD8 306C4000 */ andi $t4, $v1, 0x4000 +/* 096BDC 80095FDC 3C19800E */ lui $t9, %hi(sInsertControllerPakMenuText) # $t9, 0x800e +/* 096BE0 80095FE0 240D0001 */ li $t5, 1 +/* 096BE4 80095FE4 27390A04 */ addiu $t9, %lo(sInsertControllerPakMenuText) # addiu $t9, $t9, 0xa04 +/* 096BE8 80095FE8 14590004 */ bne $v0, $t9, .L80095FFC +/* 096BEC 80095FEC AFAD0050 */ sw $t5, 0x50($sp) +/* 096BF0 80095FF0 24070001 */ li $a3, 1 +/* 096BF4 80095FF4 10000117 */ b .L80096454 +/* 096BF8 80095FF8 ACA70000 */ sw $a3, ($a1) +.L80095FFC: +/* 096BFC 80095FFC 10000115 */ b .L80096454 +/* 096C00 80096000 AC800000 */ sw $zero, ($a0) +.L80096004: +/* 096C04 80096004 11800113 */ beqz $t4, .L80096454 +/* 096C08 80096008 240E0001 */ li $t6, 1 +/* 096C0C 8009600C AC800000 */ sw $zero, ($a0) +/* 096C10 80096010 10000110 */ b .L80096454 +/* 096C14 80096014 AFAE0054 */ sw $t6, 0x54($sp) +.L80096018: +/* 096C18 80096018 8D020000 */ lw $v0, ($t0) +/* 096C1C 8009601C 306F9000 */ andi $t7, $v1, 0x9000 +/* 096C20 80096020 10400079 */ beqz $v0, .L80096208 +/* 096C24 80096024 30799000 */ andi $t9, $v1, 0x9000 +/* 096C28 80096028 11E00012 */ beqz $t7, .L80096074 +/* 096C2C 8009602C 306C4000 */ andi $t4, $v1, 0x4000 +/* 096C30 80096030 24070001 */ li $a3, 1 +/* 096C34 80096034 14E2000C */ bne $a3, $v0, .L80096068 +/* 096C38 80096038 24190001 */ li $t9, 1 +/* 096C3C 8009603C 24180001 */ li $t8, 1 +/* 096C40 80096040 AFB80050 */ sw $t8, 0x50($sp) +/* 096C44 80096044 0C000326 */ jal set_music_fade_timer +/* 096C48 80096048 2404FF80 */ li $a0, -128 +/* 096C4C 8009604C 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e +/* 096C50 80096050 0C030076 */ jal func_800C01D8 +/* 096C54 80096054 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c +/* 096C58 80096058 240D0008 */ li $t5, 8 +/* 096C5C 8009605C 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096C60 80096060 100000FC */ b .L80096454 +/* 096C64 80096064 AC2D63E0 */ sw $t5, %lo(D_801263E0)($at) +.L80096068: +/* 096C68 80096068 AFB90054 */ sw $t9, 0x54($sp) +/* 096C6C 8009606C 100000F9 */ b .L80096454 +/* 096C70 80096070 AD000000 */ sw $zero, ($t0) +.L80096074: +/* 096C74 80096074 11800005 */ beqz $t4, .L8009608C +/* 096C78 80096078 00405825 */ move $t3, $v0 +/* 096C7C 8009607C 240E0001 */ li $t6, 1 +/* 096C80 80096080 AFAE0054 */ sw $t6, 0x54($sp) +/* 096C84 80096084 100000F3 */ b .L80096454 +/* 096C88 80096088 AD000000 */ sw $zero, ($t0) +.L8009608C: +/* 096C8C 8009608C 1940005A */ blez $t2, .L800961F8 +/* 096C90 80096090 00002025 */ move $a0, $zero +/* 096C94 80096094 31430003 */ andi $v1, $t2, 3 +/* 096C98 80096098 10600017 */ beqz $v1, .L800960F8 +/* 096C9C 8009609C 00604825 */ move $t1, $v1 +/* 096CA0 800960A0 3C0F8012 */ lui $t7, %hi(gControllersYAxisDirection) # $t7, 0x8012 +/* 096CA4 800960A4 25EF6464 */ addiu $t7, %lo(gControllersYAxisDirection) # addiu $t7, $t7, 0x6464 +/* 096CA8 800960A8 000F2821 */ addu $a1, $zero, $t7 +/* 096CAC 800960AC 24070001 */ li $a3, 1 +/* 096CB0 800960B0 24060002 */ li $a2, 2 +.L800960B4: +/* 096CB4 800960B4 80A30000 */ lb $v1, ($a1) +/* 096CB8 800960B8 24840001 */ addiu $a0, $a0, 1 +/* 096CBC 800960BC 18600005 */ blez $v1, .L800960D4 +/* 096CC0 800960C0 00000000 */ nop +/* 096CC4 800960C4 14C20003 */ bne $a2, $v0, .L800960D4 +/* 096CC8 800960C8 00000000 */ nop +/* 096CCC 800960CC AD070000 */ sw $a3, ($t0) +/* 096CD0 800960D0 00E01025 */ move $v0, $a3 +.L800960D4: +/* 096CD4 800960D4 04610005 */ bgez $v1, .L800960EC +/* 096CD8 800960D8 00000000 */ nop +/* 096CDC 800960DC 14E20003 */ bne $a3, $v0, .L800960EC +/* 096CE0 800960E0 00000000 */ nop +/* 096CE4 800960E4 AD060000 */ sw $a2, ($t0) +/* 096CE8 800960E8 00C01025 */ move $v0, $a2 +.L800960EC: +/* 096CEC 800960EC 1524FFF1 */ bne $t1, $a0, .L800960B4 +/* 096CF0 800960F0 24A50001 */ addiu $a1, $a1, 1 +/* 096CF4 800960F4 108A0040 */ beq $a0, $t2, .L800961F8 +.L800960F8: +/* 096CF8 800960F8 3C188012 */ lui $t8, %hi(gControllersYAxisDirection) # $t8, 0x8012 +/* 096CFC 800960FC 27186464 */ addiu $t8, %lo(gControllersYAxisDirection) # addiu $t8, $t8, 0x6464 +/* 096D00 80096100 00982821 */ addu $a1, $a0, $t8 +/* 096D04 80096104 01584821 */ addu $t1, $t2, $t8 +/* 096D08 80096108 24060002 */ li $a2, 2 +/* 096D0C 8009610C 24070001 */ li $a3, 1 +.L80096110: +/* 096D10 80096110 80A30000 */ lb $v1, ($a1) +/* 096D14 80096114 00000000 */ nop +/* 096D18 80096118 18600005 */ blez $v1, .L80096130 +/* 096D1C 8009611C 00000000 */ nop +/* 096D20 80096120 14C20003 */ bne $a2, $v0, .L80096130 +/* 096D24 80096124 00000000 */ nop +/* 096D28 80096128 AD070000 */ sw $a3, ($t0) +/* 096D2C 8009612C 00E01025 */ move $v0, $a3 +.L80096130: +/* 096D30 80096130 04610005 */ bgez $v1, .L80096148 +/* 096D34 80096134 00000000 */ nop +/* 096D38 80096138 14E20003 */ bne $a3, $v0, .L80096148 +/* 096D3C 8009613C 00000000 */ nop +/* 096D40 80096140 AD060000 */ sw $a2, ($t0) +/* 096D44 80096144 00C01025 */ move $v0, $a2 +.L80096148: +/* 096D48 80096148 80A30001 */ lb $v1, 1($a1) +/* 096D4C 8009614C 00000000 */ nop +/* 096D50 80096150 18600005 */ blez $v1, .L80096168 +/* 096D54 80096154 00000000 */ nop +/* 096D58 80096158 14C20003 */ bne $a2, $v0, .L80096168 +/* 096D5C 8009615C 00000000 */ nop +/* 096D60 80096160 AD070000 */ sw $a3, ($t0) +/* 096D64 80096164 00E01025 */ move $v0, $a3 +.L80096168: +/* 096D68 80096168 04610005 */ bgez $v1, .L80096180 +/* 096D6C 8009616C 00000000 */ nop +/* 096D70 80096170 14E20003 */ bne $a3, $v0, .L80096180 +/* 096D74 80096174 00000000 */ nop +/* 096D78 80096178 AD060000 */ sw $a2, ($t0) +/* 096D7C 8009617C 00C01025 */ move $v0, $a2 +.L80096180: +/* 096D80 80096180 80A30002 */ lb $v1, 2($a1) +/* 096D84 80096184 00000000 */ nop +/* 096D88 80096188 18600005 */ blez $v1, .L800961A0 +/* 096D8C 8009618C 00000000 */ nop +/* 096D90 80096190 14C20003 */ bne $a2, $v0, .L800961A0 +/* 096D94 80096194 00000000 */ nop +/* 096D98 80096198 AD070000 */ sw $a3, ($t0) +/* 096D9C 8009619C 00E01025 */ move $v0, $a3 +.L800961A0: +/* 096DA0 800961A0 04610005 */ bgez $v1, .L800961B8 +/* 096DA4 800961A4 00000000 */ nop +/* 096DA8 800961A8 14E20003 */ bne $a3, $v0, .L800961B8 +/* 096DAC 800961AC 00000000 */ nop +/* 096DB0 800961B0 AD060000 */ sw $a2, ($t0) +/* 096DB4 800961B4 00C01025 */ move $v0, $a2 +.L800961B8: +/* 096DB8 800961B8 80A30003 */ lb $v1, 3($a1) +/* 096DBC 800961BC 24A50004 */ addiu $a1, $a1, 4 +/* 096DC0 800961C0 18600005 */ blez $v1, .L800961D8 +/* 096DC4 800961C4 00000000 */ nop +/* 096DC8 800961C8 14C20003 */ bne $a2, $v0, .L800961D8 +/* 096DCC 800961CC 00000000 */ nop +/* 096DD0 800961D0 AD070000 */ sw $a3, ($t0) +/* 096DD4 800961D4 00E01025 */ move $v0, $a3 +.L800961D8: +/* 096DD8 800961D8 04610005 */ bgez $v1, .L800961F0 +/* 096DDC 800961DC 00000000 */ nop +/* 096DE0 800961E0 14E20003 */ bne $a3, $v0, .L800961F0 +/* 096DE4 800961E4 00000000 */ nop +/* 096DE8 800961E8 AD060000 */ sw $a2, ($t0) +/* 096DEC 800961EC 00C01025 */ move $v0, $a2 +.L800961F0: +/* 096DF0 800961F0 14A9FFC7 */ bne $a1, $t1, .L80096110 +/* 096DF4 800961F4 00000000 */ nop +.L800961F8: +/* 096DF8 800961F8 11620096 */ beq $t3, $v0, .L80096454 +/* 096DFC 800961FC 240D0001 */ li $t5, 1 +/* 096E00 80096200 10000094 */ b .L80096454 +/* 096E04 80096204 AFAD004C */ sw $t5, 0x4c($sp) +.L80096208: +/* 096E08 80096208 13200021 */ beqz $t9, .L80096290 +/* 096E0C 8009620C 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 +/* 096E10 80096210 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 +/* 096E14 80096214 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 +/* 096E18 80096218 8CCE0000 */ lw $t6, ($a2) +/* 096E1C 8009621C 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e +/* 096E20 80096220 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) +/* 096E24 80096224 240C0001 */ li $t4, 1 +/* 096E28 80096228 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 +/* 096E2C 8009622C 000E7880 */ sll $t7, $t6, 2 +/* 096E30 80096230 AFAC0050 */ sw $t4, 0x50($sp) +/* 096E34 80096234 006F1821 */ addu $v1, $v1, $t7 +/* 096E38 80096238 8C636BF0 */ lw $v1, %lo(D_80126BF0)($v1) +/* 096E3C 8009623C 8C58006C */ lw $t8, 0x6c($v0) +/* 096E40 80096240 24070001 */ li $a3, 1 +/* 096E44 80096244 14780003 */ bne $v1, $t8, .L80096254 +/* 096E48 80096248 00000000 */ nop +/* 096E4C 8009624C 10000081 */ b .L80096454 +/* 096E50 80096250 ACA70000 */ sw $a3, ($a1) +.L80096254: +/* 096E54 80096254 8C4D0070 */ lw $t5, 0x70($v0) +/* 096E58 80096258 00000000 */ nop +/* 096E5C 8009625C 146D0003 */ bne $v1, $t5, .L8009626C +/* 096E60 80096260 24060002 */ li $a2, 2 +/* 096E64 80096264 1000007B */ b .L80096454 +/* 096E68 80096268 AD060000 */ sw $a2, ($t0) +.L8009626C: +/* 096E6C 8009626C 0C000326 */ jal set_music_fade_timer +/* 096E70 80096270 2404FF80 */ li $a0, -128 +/* 096E74 80096274 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e +/* 096E78 80096278 0C030076 */ jal func_800C01D8 +/* 096E7C 8009627C 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c +/* 096E80 80096280 24190008 */ li $t9, 8 +/* 096E84 80096284 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 096E88 80096288 10000072 */ b .L80096454 +/* 096E8C 8009628C AC3963E0 */ sw $t9, %lo(D_801263E0)($at) +.L80096290: +/* 096E90 80096290 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 +/* 096E94 80096294 8CC20000 */ lw $v0, ($a2) +/* 096E98 80096298 00002025 */ move $a0, $zero +/* 096E9C 8009629C 1940006A */ blez $t2, .L80096448 +/* 096EA0 800962A0 00405825 */ move $t3, $v0 +/* 096EA4 800962A4 31430003 */ andi $v1, $t2, 3 +/* 096EA8 800962A8 10600019 */ beqz $v1, .L80096310 +/* 096EAC 800962AC 00603825 */ move $a3, $v1 +/* 096EB0 800962B0 3C0C8012 */ lui $t4, %hi(gControllersYAxisDirection) # $t4, 0x8012 +/* 096EB4 800962B4 258C6464 */ addiu $t4, %lo(gControllersYAxisDirection) # addiu $t4, $t4, 0x6464 +/* 096EB8 800962B8 000C2821 */ addu $a1, $zero, $t4 +.L800962BC: +/* 096EBC 800962BC 80A30000 */ lb $v1, ($a1) +/* 096EC0 800962C0 24840001 */ addiu $a0, $a0, 1 +/* 096EC4 800962C4 04610009 */ bgez $v1, .L800962EC +/* 096EC8 800962C8 00000000 */ nop +/* 096ECC 800962CC 8D2E0000 */ lw $t6, ($t1) +/* 096ED0 800962D0 24580001 */ addiu $t8, $v0, 1 +/* 096ED4 800962D4 25CFFFFF */ addiu $t7, $t6, -1 +/* 096ED8 800962D8 004F082A */ slt $at, $v0, $t7 +/* 096EDC 800962DC 10200003 */ beqz $at, .L800962EC +/* 096EE0 800962E0 00000000 */ nop +/* 096EE4 800962E4 ACD80000 */ sw $t8, ($a2) +/* 096EE8 800962E8 03001025 */ move $v0, $t8 +.L800962EC: +/* 096EEC 800962EC 18600005 */ blez $v1, .L80096304 +/* 096EF0 800962F0 00000000 */ nop +/* 096EF4 800962F4 18400003 */ blez $v0, .L80096304 +/* 096EF8 800962F8 244DFFFF */ addiu $t5, $v0, -1 +/* 096EFC 800962FC ACCD0000 */ sw $t5, ($a2) +/* 096F00 80096300 01A01025 */ move $v0, $t5 +.L80096304: +/* 096F04 80096304 14E4FFED */ bne $a3, $a0, .L800962BC +/* 096F08 80096308 24A50001 */ addiu $a1, $a1, 1 +/* 096F0C 8009630C 108A004E */ beq $a0, $t2, .L80096448 +.L80096310: +/* 096F10 80096310 3C198012 */ lui $t9, %hi(gControllersYAxisDirection) # $t9, 0x8012 +/* 096F14 80096314 27396464 */ addiu $t9, %lo(gControllersYAxisDirection) # addiu $t9, $t9, 0x6464 +/* 096F18 80096318 00992821 */ addu $a1, $a0, $t9 +/* 096F1C 8009631C 01593821 */ addu $a3, $t2, $t9 +.L80096320: +/* 096F20 80096320 80A30000 */ lb $v1, ($a1) +/* 096F24 80096324 00000000 */ nop +/* 096F28 80096328 04610009 */ bgez $v1, .L80096350 +/* 096F2C 8009632C 00000000 */ nop +/* 096F30 80096330 8D2C0000 */ lw $t4, ($t1) +/* 096F34 80096334 244F0001 */ addiu $t7, $v0, 1 +/* 096F38 80096338 258EFFFF */ addiu $t6, $t4, -1 +/* 096F3C 8009633C 004E082A */ slt $at, $v0, $t6 +/* 096F40 80096340 10200003 */ beqz $at, .L80096350 +/* 096F44 80096344 00000000 */ nop +/* 096F48 80096348 ACCF0000 */ sw $t7, ($a2) +/* 096F4C 8009634C 01E01025 */ move $v0, $t7 +.L80096350: +/* 096F50 80096350 18600005 */ blez $v1, .L80096368 +/* 096F54 80096354 00000000 */ nop +/* 096F58 80096358 18400003 */ blez $v0, .L80096368 +/* 096F5C 8009635C 2458FFFF */ addiu $t8, $v0, -1 +/* 096F60 80096360 ACD80000 */ sw $t8, ($a2) +/* 096F64 80096364 03001025 */ move $v0, $t8 +.L80096368: +/* 096F68 80096368 80A30001 */ lb $v1, 1($a1) +/* 096F6C 8009636C 00000000 */ nop +/* 096F70 80096370 04610009 */ bgez $v1, .L80096398 +/* 096F74 80096374 00000000 */ nop +/* 096F78 80096378 8D2D0000 */ lw $t5, ($t1) +/* 096F7C 8009637C 244C0001 */ addiu $t4, $v0, 1 +/* 096F80 80096380 25B9FFFF */ addiu $t9, $t5, -1 +/* 096F84 80096384 0059082A */ slt $at, $v0, $t9 +/* 096F88 80096388 10200003 */ beqz $at, .L80096398 +/* 096F8C 8009638C 00000000 */ nop +/* 096F90 80096390 ACCC0000 */ sw $t4, ($a2) +/* 096F94 80096394 01801025 */ move $v0, $t4 +.L80096398: +/* 096F98 80096398 18600005 */ blez $v1, .L800963B0 +/* 096F9C 8009639C 00000000 */ nop +/* 096FA0 800963A0 18400003 */ blez $v0, .L800963B0 +/* 096FA4 800963A4 244EFFFF */ addiu $t6, $v0, -1 +/* 096FA8 800963A8 ACCE0000 */ sw $t6, ($a2) +/* 096FAC 800963AC 01C01025 */ move $v0, $t6 +.L800963B0: +/* 096FB0 800963B0 80A30002 */ lb $v1, 2($a1) +/* 096FB4 800963B4 00000000 */ nop +/* 096FB8 800963B8 04610009 */ bgez $v1, .L800963E0 +/* 096FBC 800963BC 00000000 */ nop +/* 096FC0 800963C0 8D2F0000 */ lw $t7, ($t1) +/* 096FC4 800963C4 244D0001 */ addiu $t5, $v0, 1 +/* 096FC8 800963C8 25F8FFFF */ addiu $t8, $t7, -1 +/* 096FCC 800963CC 0058082A */ slt $at, $v0, $t8 +/* 096FD0 800963D0 10200003 */ beqz $at, .L800963E0 +/* 096FD4 800963D4 00000000 */ nop +/* 096FD8 800963D8 ACCD0000 */ sw $t5, ($a2) +/* 096FDC 800963DC 01A01025 */ move $v0, $t5 +.L800963E0: +/* 096FE0 800963E0 18600005 */ blez $v1, .L800963F8 +/* 096FE4 800963E4 00000000 */ nop +/* 096FE8 800963E8 18400003 */ blez $v0, .L800963F8 +/* 096FEC 800963EC 2459FFFF */ addiu $t9, $v0, -1 +/* 096FF0 800963F0 ACD90000 */ sw $t9, ($a2) +/* 096FF4 800963F4 03201025 */ move $v0, $t9 +.L800963F8: +/* 096FF8 800963F8 80A30003 */ lb $v1, 3($a1) +/* 096FFC 800963FC 24A50004 */ addiu $a1, $a1, 4 +/* 097000 80096400 04610009 */ bgez $v1, .L80096428 +/* 097004 80096404 00000000 */ nop +/* 097008 80096408 8D2C0000 */ lw $t4, ($t1) +/* 09700C 8009640C 244F0001 */ addiu $t7, $v0, 1 +/* 097010 80096410 258EFFFF */ addiu $t6, $t4, -1 +/* 097014 80096414 004E082A */ slt $at, $v0, $t6 +/* 097018 80096418 10200003 */ beqz $at, .L80096428 +/* 09701C 8009641C 00000000 */ nop +/* 097020 80096420 ACCF0000 */ sw $t7, ($a2) +/* 097024 80096424 01E01025 */ move $v0, $t7 +.L80096428: +/* 097028 80096428 18600005 */ blez $v1, .L80096440 +/* 09702C 8009642C 00000000 */ nop +/* 097030 80096430 18400003 */ blez $v0, .L80096440 +/* 097034 80096434 2458FFFF */ addiu $t8, $v0, -1 +/* 097038 80096438 ACD80000 */ sw $t8, ($a2) +/* 09703C 8009643C 03001025 */ move $v0, $t8 +.L80096440: +/* 097040 80096440 14A7FFB7 */ bne $a1, $a3, .L80096320 +/* 097044 80096444 00000000 */ nop +.L80096448: +/* 097048 80096448 11620002 */ beq $t3, $v0, .L80096454 +/* 09704C 8009644C 240D0001 */ li $t5, 1 +/* 097050 80096450 AFAD004C */ sw $t5, 0x4c($sp) +.L80096454: +/* 097054 80096454 8FB90054 */ lw $t9, 0x54($sp) +/* 097058 80096458 00000000 */ nop +/* 09705C 8009645C 13200005 */ beqz $t9, .L80096474 +/* 097060 80096460 24040241 */ li $a0, 577 +/* 097064 80096464 0C000741 */ jal play_sound_global +/* 097068 80096468 00002825 */ move $a1, $zero +/* 09706C 8009646C 100000A9 */ b .L80096714 +/* 097070 80096470 00000000 */ nop +.L80096474: +/* 097074 80096474 8FAC0050 */ lw $t4, 0x50($sp) +/* 097078 80096478 8FAE004C */ lw $t6, 0x4c($sp) +/* 09707C 8009647C 11800005 */ beqz $t4, .L80096494 +/* 097080 80096480 240400EF */ li $a0, 239 +/* 097084 80096484 0C000741 */ jal play_sound_global +/* 097088 80096488 00002825 */ move $a1, $zero +/* 09708C 8009648C 100000A1 */ b .L80096714 +/* 097090 80096490 00000000 */ nop +.L80096494: +/* 097094 80096494 11C0009F */ beqz $t6, .L80096714 +/* 097098 80096498 240400EB */ li $a0, 235 +/* 09709C 8009649C 0C000741 */ jal play_sound_global +/* 0970A0 800964A0 00002825 */ move $a1, $zero +/* 0970A4 800964A4 1000009B */ b .L80096714 +/* 0970A8 800964A8 00000000 */ nop +glabel L800964AC +/* 0970AC 800964AC 306F9000 */ andi $t7, $v1, 0x9000 +/* 0970B0 800964B0 11E00098 */ beqz $t7, .L80096714 +/* 0970B4 800964B4 00000000 */ nop +/* 0970B8 800964B8 0C000326 */ jal set_music_fade_timer +/* 0970BC 800964BC 2404FF80 */ li $a0, -128 +/* 0970C0 800964C0 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e +/* 0970C4 800964C4 0C030076 */ jal func_800C01D8 +/* 0970C8 800964C8 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c +/* 0970CC 800964CC 24180008 */ li $t8, 8 +/* 0970D0 800964D0 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 0970D4 800964D4 1000008F */ b .L80096714 +/* 0970D8 800964D8 AC3863E0 */ sw $t8, %lo(D_801263E0)($at) +glabel L800964DC +/* 0970DC 800964DC 3C0D800E */ lui $t5, %hi(gMenuDelay) # $t5, 0x800e +/* 0970E0 800964E0 8DADF47C */ lw $t5, %lo(gMenuDelay)($t5) +/* 0970E4 800964E4 8FB90064 */ lw $t9, 0x64($sp) +/* 0970E8 800964E8 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e +/* 0970EC 800964EC 01B96021 */ addu $t4, $t5, $t9 +/* 0970F0 800964F0 AC2CF47C */ sw $t4, %lo(gMenuDelay)($at) +/* 0970F4 800964F4 2981001F */ slti $at, $t4, 0x1f +/* 0970F8 800964F8 14200086 */ bnez $at, .L80096714 +/* 0970FC 800964FC 00000000 */ nop +/* 097100 80096500 8FA3002C */ lw $v1, 0x2c($sp) +/* 097104 80096504 00000000 */ nop +/* 097108 80096508 806E0117 */ lb $t6, 0x117($v1) +/* 09710C 8009650C 00000000 */ nop +/* 097110 80096510 11C00012 */ beqz $t6, .L8009655C +/* 097114 80096514 00002025 */ move $a0, $zero +/* 097118 80096518 80620058 */ lb $v0, 0x58($v1) +/* 09711C 8009651C 00000000 */ nop +/* 097120 80096520 304F007F */ andi $t7, $v0, 0x7f +/* 097124 80096524 11E00008 */ beqz $t7, .L80096548 +/* 097128 80096528 304D0080 */ andi $t5, $v0, 0x80 +/* 09712C 8009652C 0C01BAF1 */ jal func_8006EBC4 +/* 097130 80096530 00000000 */ nop +/* 097134 80096534 8FB8002C */ lw $t8, 0x2c($sp) +/* 097138 80096538 00000000 */ nop +/* 09713C 8009653C 83020058 */ lb $v0, 0x58($t8) +/* 097140 80096540 00000000 */ nop +/* 097144 80096544 304D0080 */ andi $t5, $v0, 0x80 +.L80096548: +/* 097148 80096548 11A00004 */ beqz $t5, .L8009655C +/* 09714C 8009654C 00002025 */ move $a0, $zero +/* 097150 80096550 0C01BAF8 */ jal func_8006EBE0 +/* 097154 80096554 00000000 */ nop +/* 097158 80096558 00002025 */ move $a0, $zero +.L8009655C: +/* 09715C 8009655C 0C019A25 */ jal func_80066894 +/* 097160 80096560 00002825 */ move $a1, $zero +/* 097164 80096564 0C0259E4 */ jal func_80096790 +/* 097168 80096568 00000000 */ nop +/* 09716C 8009656C 0C031588 */ jal close_dialogue_box +/* 097170 80096570 24040007 */ li $a0, 7 +/* 097174 80096574 0C031525 */ jal assign_dialogue_box_id +/* 097178 80096578 24040007 */ li $a0, 7 +/* 09717C 8009657C 3C028012 */ lui $v0, %hi(D_80126C28) # $v0, 0x8012 +/* 097180 80096580 80426C28 */ lb $v0, %lo(D_80126C28)($v0) +/* 097184 80096584 3C0C800E */ lui $t4, %hi(gTrophyRaceWorldId) # $t4, 0x800e +/* 097188 80096588 28410002 */ slti $at, $v0, 2 +/* 09718C 8009658C 1420001C */ bnez $at, .L80096600 +/* 097190 80096590 24010009 */ li $at, 9 +/* 097194 80096594 1441000D */ bne $v0, $at, .L800965CC +/* 097198 80096598 00000000 */ nop +/* 09719C 8009659C 0C0078A7 */ jal get_misc_asset +/* 0971A0 800965A0 24040019 */ li $a0, 25 +/* 0971A4 800965A4 3C058012 */ lui $a1, %hi(D_80126C28) # $a1, 0x8012 +/* 0971A8 800965A8 80A56C28 */ lb $a1, %lo(D_80126C28)($a1) +/* 0971AC 800965AC 00402025 */ move $a0, $v0 +/* 0971B0 800965B0 2406010E */ li $a2, 270 +/* 0971B4 800965B4 00003825 */ move $a3, $zero +/* 0971B8 800965B8 AFA00010 */ sw $zero, 0x10($sp) +/* 0971BC 800965BC 0C026AF6 */ jal func_8009ABD8 +/* 0971C0 800965C0 AFA00014 */ sw $zero, 0x14($sp) +/* 0971C4 800965C4 1000000C */ b .L800965F8 +/* 0971C8 800965C8 2419000D */ li $t9, 13 +.L800965CC: +/* 0971CC 800965CC 0C0078A7 */ jal get_misc_asset +/* 0971D0 800965D0 24040019 */ li $a0, 25 +/* 0971D4 800965D4 3C058012 */ lui $a1, %hi(D_80126C28) # $a1, 0x8012 +/* 0971D8 800965D8 80A56C28 */ lb $a1, %lo(D_80126C28)($a1) +/* 0971DC 800965DC 00402025 */ move $a0, $v0 +/* 0971E0 800965E0 24060101 */ li $a2, 257 +/* 0971E4 800965E4 00003825 */ move $a3, $zero +/* 0971E8 800965E8 AFA00010 */ sw $zero, 0x10($sp) +/* 0971EC 800965EC 0C026AF6 */ jal func_8009ABD8 +/* 0971F0 800965F0 AFA00014 */ sw $zero, 0x14($sp) +/* 0971F4 800965F4 2419000D */ li $t9, 13 +.L800965F8: +/* 0971F8 800965F8 10000046 */ b .L80096714 +/* 0971FC 800965FC AFB90044 */ sw $t9, 0x44($sp) +.L80096600: +/* 097200 80096600 8D8C0FE8 */ lw $t4, %lo(gTrophyRaceWorldId)($t4) +/* 097204 80096604 240E000A */ li $t6, 10 +/* 097208 80096608 11800003 */ beqz $t4, .L80096618 +/* 09720C 8009660C 3C0F800E */ lui $t7, %hi(gNumberOfActivePlayers) # $t7, 0x800e +/* 097210 80096610 10000040 */ b .L80096714 +/* 097214 80096614 AFAE0044 */ sw $t6, 0x44($sp) +.L80096618: +/* 097218 80096618 8DEFF4BC */ lw $t7, %lo(gNumberOfActivePlayers)($t7) +/* 09721C 8009661C 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 +/* 097220 80096620 29E10002 */ slti $at, $t7, 2 +/* 097224 80096624 14200004 */ bnez $at, .L80096638 +/* 097228 80096628 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 +/* 09722C 8009662C 24180008 */ li $t8, 8 +/* 097230 80096630 10000038 */ b .L80096714 +/* 097234 80096634 AFB80044 */ sw $t8, 0x44($sp) +.L80096638: +/* 097238 80096638 8CCD0000 */ lw $t5, ($a2) +/* 09723C 8009663C 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e +/* 097240 80096640 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) +/* 097244 80096644 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 +/* 097248 80096648 000DC880 */ sll $t9, $t5, 2 +/* 09724C 8009664C 00791821 */ addu $v1, $v1, $t9 +/* 097250 80096650 8C636BF0 */ lw $v1, %lo(D_80126BF0)($v1) +/* 097254 80096654 8C4C005C */ lw $t4, 0x5c($v0) +/* 097258 80096658 3C0E800E */ lui $t6, %hi(gIsInTracksMode) # $t6, 0x800e +/* 09725C 8009665C 146C001A */ bne $v1, $t4, .L800966C8 +/* 097260 80096660 00000000 */ nop +/* 097264 80096664 8DCEF4B8 */ lw $t6, %lo(gIsInTracksMode)($t6) +/* 097268 80096668 00000000 */ nop +/* 09726C 8009666C 15C00014 */ bnez $t6, .L800966C0 +/* 097270 80096670 24190002 */ li $t9, 2 +/* 097274 80096674 0C01BAC5 */ jal func_8006EB14 +/* 097278 80096678 00000000 */ nop +/* 09727C 8009667C 00027840 */ sll $t7, $v0, 1 +/* 097280 80096680 3C18800E */ lui $t8, %hi(D_800E0758) # $t8, 0x800e +/* 097284 80096684 030FC021 */ addu $t8, $t8, $t7 +/* 097288 80096688 87180758 */ lh $t8, %lo(D_800E0758)($t8) +/* 09728C 8009668C 2401FFFF */ li $at, -1 +/* 097290 80096690 1301000B */ beq $t8, $at, .L800966C0 +/* 097294 80096694 24190002 */ li $t9, 2 +/* 097298 80096698 0C01BAC5 */ jal func_8006EB14 +/* 09729C 8009669C 00000000 */ nop +/* 0972A0 800966A0 00026840 */ sll $t5, $v0, 1 +/* 0972A4 800966A4 3C04800E */ lui $a0, %hi(D_800E0758) # $a0, 0x800e +/* 0972A8 800966A8 008D2021 */ addu $a0, $a0, $t5 +/* 0972AC 800966AC 94840758 */ lhu $a0, %lo(D_800E0758)($a0) +/* 0972B0 800966B0 00002825 */ move $a1, $zero +/* 0972B4 800966B4 0C0003F7 */ jal func_80000FDC +/* 0972B8 800966B8 3C063F80 */ lui $a2, 0x3f80 +/* 0972BC 800966BC 24190002 */ li $t9, 2 +.L800966C0: +/* 0972C0 800966C0 10000014 */ b .L80096714 +/* 0972C4 800966C4 AFB90044 */ sw $t9, 0x44($sp) +.L800966C8: +/* 0972C8 800966C8 8C4C0060 */ lw $t4, 0x60($v0) +/* 0972CC 800966CC 240E0005 */ li $t6, 5 +/* 0972D0 800966D0 146C0003 */ bne $v1, $t4, .L800966E0 +/* 0972D4 800966D4 00000000 */ nop +/* 0972D8 800966D8 1000000E */ b .L80096714 +/* 0972DC 800966DC AFAE0044 */ sw $t6, 0x44($sp) +.L800966E0: +/* 0972E0 800966E0 8C4F0068 */ lw $t7, 0x68($v0) +/* 0972E4 800966E4 2418000C */ li $t8, 12 +/* 0972E8 800966E8 146F0003 */ bne $v1, $t7, .L800966F8 +/* 0972EC 800966EC 00000000 */ nop +/* 0972F0 800966F0 10000008 */ b .L80096714 +/* 0972F4 800966F4 AFB80044 */ sw $t8, 0x44($sp) +.L800966F8: +/* 0972F8 800966F8 8C4D0064 */ lw $t5, 0x64($v0) +/* 0972FC 800966FC 24190001 */ li $t9, 1 +/* 097300 80096700 146D0003 */ bne $v1, $t5, .L80096710 +/* 097304 80096704 240C0004 */ li $t4, 4 +/* 097308 80096708 10000002 */ b .L80096714 +/* 09730C 8009670C AFB90044 */ sw $t9, 0x44($sp) +.L80096710: +/* 097310 80096710 AFAC0044 */ sw $t4, 0x44($sp) +.L80096714: +/* 097314 80096714 3C028012 */ lui $v0, %hi(gIgnorePlayerInput) # $v0, 0x8012 +/* 097318 80096718 8C4263C4 */ lw $v0, %lo(gIgnorePlayerInput)($v0) +/* 09731C 8009671C 3C0D8012 */ lui $t5, %hi(sMenuCurrDisplayList) # $t5, 0x8012 +/* 097320 80096720 1840000B */ blez $v0, .L80096750 +/* 097324 80096724 00000000 */ nop +/* 097328 80096728 8FAE0064 */ lw $t6, 0x64($sp) +/* 09732C 8009672C 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 +/* 097330 80096730 004E7823 */ subu $t7, $v0, $t6 +/* 097334 80096734 AC2F63C4 */ sw $t7, %lo(gIgnorePlayerInput)($at) +/* 097338 80096738 3C188012 */ lui $t8, %hi(gIgnorePlayerInput) # $t8, 0x8012 +/* 09733C 8009673C 8F1863C4 */ lw $t8, %lo(gIgnorePlayerInput)($t8) +/* 097340 80096740 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 +/* 097344 80096744 07010002 */ bgez $t8, .L80096750 +/* 097348 80096748 00000000 */ nop +/* 09734C 8009674C AC2063C4 */ sw $zero, %lo(gIgnorePlayerInput)($at) +.L80096750: +/* 097350 80096750 8DAD63A0 */ lw $t5, %lo(sMenuCurrDisplayList)($t5) +/* 097354 80096754 8FB90058 */ lw $t9, 0x58($sp) +/* 097358 80096758 3C0C8012 */ lui $t4, %hi(sMenuCurrHudMat) # $t4, 0x8012 +/* 09735C 8009675C AF2D0000 */ sw $t5, ($t9) +/* 097360 80096760 8FAE005C */ lw $t6, 0x5c($sp) +/* 097364 80096764 8D8C63A8 */ lw $t4, %lo(sMenuCurrHudMat)($t4) +/* 097368 80096768 3C0F8012 */ lui $t7, %hi(sMenuCurrHudVerts) # $t7, 0x8012 +/* 09736C 8009676C ADCC0000 */ sw $t4, ($t6) +/* 097370 80096770 8FB80060 */ lw $t8, 0x60($sp) +/* 097374 80096774 8DEF63AC */ lw $t7, %lo(sMenuCurrHudVerts)($t7) +/* 097378 80096778 00000000 */ nop +/* 09737C 8009677C AF0F0000 */ sw $t7, ($t8) +/* 097380 80096780 8FBF0024 */ lw $ra, 0x24($sp) +/* 097384 80096784 8FA20044 */ lw $v0, 0x44($sp) +/* 097388 80096788 03E00008 */ jr $ra +/* 09738C 8009678C 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/menu/func_80096978.s b/asm/non_matchings/menu/func_80096978.s index eada8869..c9d3611f 100644 --- a/asm/non_matchings/menu/func_80096978.s +++ b/asm/non_matchings/menu/func_80096978.s @@ -119,8 +119,8 @@ glabel func_80096978 /* 09773C 80096B3C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 /* 097740 80096B40 1500000E */ bnez $t0, .L80096B7C /* 097744 80096B44 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 097748 80096B48 3C028012 */ lui $v0, %hi(D_801263BC) # $v0, 0x8012 -/* 09774C 80096B4C 8C4263BC */ lw $v0, %lo(D_801263BC)($v0) +/* 097748 80096B48 3C028012 */ lui $v0, %hi(gOptionBlinkTimer) # $v0, 0x8012 +/* 09774C 80096B4C 8C4263BC */ lw $v0, %lo(gOptionBlinkTimer)($v0) /* 097750 80096B50 00000000 */ nop /* 097754 80096B54 28410020 */ slti $at, $v0, 0x20 /* 097758 80096B58 10200005 */ beqz $at, .L80096B70 @@ -441,9 +441,9 @@ glabel func_80096978 /* 097C08 80097008 00003825 */ move $a3, $zero /* 097C0C 8009700C 0C031414 */ jal set_current_text_background_colour /* 097C10 80097010 AFA00010 */ sw $zero, 0x10($sp) -/* 097C14 80097014 3C028012 */ lui $v0, %hi(D_801263BC) # $v0, 0x8012 -/* 097C18 80097018 8C4263BC */ lw $v0, %lo(D_801263BC)($v0) -/* 097C1C 8009701C 3C10800E */ lui $s0, %hi(D_800E0988) # $s0, 0x800e +/* 097C14 80097014 3C028012 */ lui $v0, %hi(gOptionBlinkTimer) # $v0, 0x8012 +/* 097C18 80097018 8C4263BC */ lw $v0, %lo(gOptionBlinkTimer)($v0) +/* 097C1C 8009701C 3C10800E */ lui $s0, %hi(gMenuSubOption) # $s0, 0x800e /* 097C20 80097020 000248C0 */ sll $t1, $v0, 3 /* 097C24 80097024 29210100 */ slti $at, $t1, 0x100 /* 097C28 80097028 14200003 */ bnez $at, .L80097038 @@ -451,7 +451,7 @@ glabel func_80096978 /* 097C30 80097030 240801FF */ li $t0, 511 /* 097C34 80097034 01091023 */ subu $v0, $t0, $t1 .L80097038: -/* 097C38 80097038 26100988 */ addiu $s0, %lo(D_800E0988) # addiu $s0, $s0, 0x988 +/* 097C38 80097038 26100988 */ addiu $s0, %lo(gMenuSubOption) # addiu $s0, $s0, 0x988 /* 097C3C 8009703C 8E0A0000 */ lw $t2, ($s0) /* 097C40 80097040 8FB900A8 */ lw $t9, 0xa8($sp) /* 097C44 80097044 11400055 */ beqz $t2, .L8009719C @@ -550,8 +550,8 @@ glabel func_80096978 /* 097DA4 800971A4 1B20002E */ blez $t9, .L80097260 /* 097DA8 800971A8 AFAA00A8 */ sw $t2, 0xa8($sp) /* 097DAC 800971AC 3C108012 */ lui $s0, %hi(D_80126BF0) # $s0, 0x8012 -/* 097DB0 800971B0 3C128012 */ lui $s2, %hi(D_80126A68) # $s2, 0x8012 -/* 097DB4 800971B4 26526A68 */ addiu $s2, %lo(D_80126A68) # addiu $s2, $s2, 0x6a68 +/* 097DB0 800971B0 3C128012 */ lui $s2, %hi(gMenuOption) # $s2, 0x8012 +/* 097DB4 800971B4 26526A68 */ addiu $s2, %lo(gMenuOption) # addiu $s2, $s2, 0x6a68 /* 097DB8 800971B8 26106BF0 */ addiu $s0, %lo(D_80126BF0) # addiu $s0, $s0, 0x6bf0 /* 097DBC 800971BC AFA200A0 */ sw $v0, 0xa0($sp) .L800971C0: diff --git a/asm/non_matchings/menu/func_80098EBC.s b/asm/non_matchings/menu/func_80098EBC.s index 5b875a30..c15c22b1 100644 --- a/asm/non_matchings/menu/func_80098EBC.s +++ b/asm/non_matchings/menu/func_80098EBC.s @@ -1,6 +1,6 @@ glabel func_80098EBC -/* 099ABC 80098EBC 3C028012 */ lui $v0, %hi(D_801263BC) # $v0, 0x8012 -/* 099AC0 80098EC0 244263BC */ addiu $v0, %lo(D_801263BC) # addiu $v0, $v0, 0x63bc +/* 099ABC 80098EBC 3C028012 */ lui $v0, %hi(gOptionBlinkTimer) # $v0, 0x8012 +/* 099AC0 80098EC0 244263BC */ addiu $v0, %lo(gOptionBlinkTimer) # addiu $v0, $v0, 0x63bc /* 099AC4 80098EC4 8C4E0000 */ lw $t6, ($v0) /* 099AC8 80098EC8 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 099ACC 80098ECC 01C47821 */ addu $t7, $t6, $a0 diff --git a/asm/non_matchings/menu/func_80099E8C.s b/asm/non_matchings/menu/func_80099E8C.s index 47618b20..9be27337 100644 --- a/asm/non_matchings/menu/func_80099E8C.s +++ b/asm/non_matchings/menu/func_80099E8C.s @@ -1,626 +1,626 @@ -.late_rodata -glabel D_800E8570 -.float 0.075 - -.text -glabel func_80099E8C -/* 09AA8C 80099E8C 27BDFF10 */ addiu $sp, $sp, -0xf0 -/* 09AA90 80099E90 AFB70054 */ sw $s7, 0x54($sp) -/* 09AA94 80099E94 3C178012 */ lui $s7, %hi(sMenuCurrDisplayList) # $s7, 0x8012 -/* 09AA98 80099E98 26F763A0 */ addiu $s7, %lo(sMenuCurrDisplayList) # addiu $s7, $s7, 0x63a0 -/* 09AA9C 80099E9C AFBF005C */ sw $ra, 0x5c($sp) -/* 09AAA0 80099EA0 AFA400F0 */ sw $a0, 0xf0($sp) -/* 09AAA4 80099EA4 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 -/* 09AAA8 80099EA8 AFBE0058 */ sw $fp, 0x58($sp) -/* 09AAAC 80099EAC AFB60050 */ sw $s6, 0x50($sp) -/* 09AAB0 80099EB0 AFB5004C */ sw $s5, 0x4c($sp) -/* 09AAB4 80099EB4 AFB40048 */ sw $s4, 0x48($sp) -/* 09AAB8 80099EB8 AFB30044 */ sw $s3, 0x44($sp) -/* 09AABC 80099EBC AFB20040 */ sw $s2, 0x40($sp) -/* 09AAC0 80099EC0 AFB1003C */ sw $s1, 0x3c($sp) -/* 09AAC4 80099EC4 AFB00038 */ sw $s0, 0x38($sp) -/* 09AAC8 80099EC8 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 -/* 09AACC 80099ECC 0C019FCB */ jal func_80067F2C -/* 09AAD0 80099ED0 02E02025 */ move $a0, $s7 -/* 09AAD4 80099ED4 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 -/* 09AAD8 80099ED8 8DCE0300 */ lw $t6, %lo(osTvType)($t6) -/* 09AADC 80099EDC 3C188012 */ lui $t8, %hi(D_801263D8) # $t8, 0x8012 -/* 09AAE0 80099EE0 15C00004 */ bnez $t6, .L80099EF4 -/* 09AAE4 80099EE4 24040002 */ li $a0, 2 -/* 09AAE8 80099EE8 240F000C */ li $t7, 12 -/* 09AAEC 80099EEC 10000002 */ b .L80099EF8 -/* 09AAF0 80099EF0 AFAF00D0 */ sw $t7, 0xd0($sp) -.L80099EF4: -/* 09AAF4 80099EF4 AFA000D0 */ sw $zero, 0xd0($sp) -.L80099EF8: -/* 09AAF8 80099EF8 8F1863D8 */ lw $t8, %lo(D_801263D8)($t8) -/* 09AAFC 80099EFC 0C0310BB */ jal set_text_font -/* 09AB00 80099F00 AFB800E4 */ sw $t8, 0xe4($sp) -/* 09AB04 80099F04 00002025 */ move $a0, $zero -/* 09AB08 80099F08 00002825 */ move $a1, $zero -/* 09AB0C 80099F0C 00003025 */ move $a2, $zero -/* 09AB10 80099F10 0C0310F3 */ jal set_text_background_colour -/* 09AB14 80099F14 00003825 */ move $a3, $zero -/* 09AB18 80099F18 24190080 */ li $t9, 128 -/* 09AB1C 80099F1C AFB90010 */ sw $t9, 0x10($sp) -/* 09AB20 80099F20 00002025 */ move $a0, $zero -/* 09AB24 80099F24 00002825 */ move $a1, $zero -/* 09AB28 80099F28 00003025 */ move $a2, $zero -/* 09AB2C 80099F2C 0C0310E1 */ jal set_text_colour -/* 09AB30 80099F30 240700FF */ li $a3, 255 -/* 09AB34 80099F34 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e -/* 09AB38 80099F38 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) -/* 09AB3C 80099F3C 240A000C */ li $t2, 12 -/* 09AB40 80099F40 8D270148 */ lw $a3, 0x148($t1) -/* 09AB44 80099F44 AFAA0010 */ sw $t2, 0x10($sp) -/* 09AB48 80099F48 02E02025 */ move $a0, $s7 -/* 09AB4C 80099F4C 240500A1 */ li $a1, 161 -/* 09AB50 80099F50 0C031110 */ jal draw_text -/* 09AB54 80099F54 24060023 */ li $a2, 35 -/* 09AB58 80099F58 240B00FF */ li $t3, 255 -/* 09AB5C 80099F5C AFAB0010 */ sw $t3, 0x10($sp) -/* 09AB60 80099F60 240400FF */ li $a0, 255 -/* 09AB64 80099F64 240500FF */ li $a1, 255 -/* 09AB68 80099F68 240600FF */ li $a2, 255 -/* 09AB6C 80099F6C 0C0310E1 */ jal set_text_colour -/* 09AB70 80099F70 00003825 */ move $a3, $zero -/* 09AB74 80099F74 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e -/* 09AB78 80099F78 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) -/* 09AB7C 80099F7C 240D000C */ li $t5, 12 -/* 09AB80 80099F80 8D870148 */ lw $a3, 0x148($t4) -/* 09AB84 80099F84 AFAD0010 */ sw $t5, 0x10($sp) -/* 09AB88 80099F88 02E02025 */ move $a0, $s7 -/* 09AB8C 80099F8C 240500A0 */ li $a1, 160 -/* 09AB90 80099F90 0C031110 */ jal draw_text -/* 09AB94 80099F94 24060020 */ li $a2, 32 -/* 09AB98 80099F98 3C0E8012 */ lui $t6, %hi(D_801264D4) # $t6, 0x8012 -/* 09AB9C 80099F9C 8DCE64D4 */ lw $t6, %lo(D_801264D4)($t6) -/* 09ABA0 80099FA0 24120038 */ li $s2, 56 -/* 09ABA4 80099FA4 1DC00014 */ bgtz $t6, .L80099FF8 -/* 09ABA8 80099FA8 24090003 */ li $t1, 3 -/* 09ABAC 80099FAC 240F00FF */ li $t7, 255 -/* 09ABB0 80099FB0 AFAF0010 */ sw $t7, 0x10($sp) -/* 09ABB4 80099FB4 240400FF */ li $a0, 255 -/* 09ABB8 80099FB8 240500FF */ li $a1, 255 -/* 09ABBC 80099FBC 240600FF */ li $a2, 255 -/* 09ABC0 80099FC0 0C0310E1 */ jal set_text_colour -/* 09ABC4 80099FC4 00003825 */ move $a3, $zero -/* 09ABC8 80099FC8 3C18800E */ lui $t8, %hi(gMenuText) # $t8, 0x800e -/* 09ABCC 80099FCC 8F18F4A0 */ lw $t8, %lo(gMenuText)($t8) -/* 09ABD0 80099FD0 8FA600D0 */ lw $a2, 0xd0($sp) -/* 09ABD4 80099FD4 2419000C */ li $t9, 12 -/* 09ABD8 80099FD8 8F07014C */ lw $a3, 0x14c($t8) -/* 09ABDC 80099FDC AFB90010 */ sw $t9, 0x10($sp) -/* 09ABE0 80099FE0 02E02025 */ move $a0, $s7 -/* 09ABE4 80099FE4 240500A0 */ li $a1, 160 -/* 09ABE8 80099FE8 0C031110 */ jal draw_text -/* 09ABEC 80099FEC 24C60078 */ addiu $a2, $a2, 0x78 -/* 09ABF0 80099FF0 100001ED */ b .L8009A7A8 -/* 09ABF4 80099FF4 8FBF005C */ lw $ra, 0x5c($sp) -.L80099FF8: -/* 09ABF8 80099FF8 3C028012 */ lui $v0, %hi(D_801263BC) # $v0, 0x8012 -/* 09ABFC 80099FFC 8C4263BC */ lw $v0, %lo(D_801263BC)($v0) -/* 09AC00 8009A000 AFA900E8 */ sw $t1, 0xe8($sp) -/* 09AC04 8009A004 000250C0 */ sll $t2, $v0, 3 -/* 09AC08 8009A008 29410100 */ slti $at, $t2, 0x100 -/* 09AC0C 8009A00C 14200003 */ bnez $at, .L8009A01C -/* 09AC10 8009A010 01401025 */ move $v0, $t2 -/* 09AC14 8009A014 240B01FF */ li $t3, 511 -/* 09AC18 8009A018 016A1023 */ subu $v0, $t3, $t2 -.L8009A01C: -/* 09AC1C 8009A01C 2401FF00 */ li $at, -256 -/* 09AC20 8009A020 00416025 */ or $t4, $v0, $at -/* 09AC24 8009A024 AFAC00D8 */ sw $t4, 0xd8($sp) -/* 09AC28 8009A028 0C0310BB */ jal set_text_font -/* 09AC2C 8009A02C 24040001 */ li $a0, 1 -/* 09AC30 8009A030 3C0D8012 */ lui $t5, %hi(D_801264D4) # $t5, 0x8012 -/* 09AC34 8009A034 8FA200E4 */ lw $v0, 0xe4($sp) -/* 09AC38 8009A038 8DAD64D4 */ lw $t5, %lo(D_801264D4)($t5) -/* 09AC3C 8009A03C 3C0E8012 */ lui $t6, %hi(D_80126508) # $t6, 0x8012 -/* 09AC40 8009A040 004D082A */ slt $at, $v0, $t5 -/* 09AC44 8009A044 1020012B */ beqz $at, .L8009A4F4 -/* 09AC48 8009A048 25CE6508 */ addiu $t6, %lo(D_80126508) # addiu $t6, $t6, 0x6508 -/* 09AC4C 8009A04C 240D0028 */ li $t5, 40 -/* 09AC50 8009A050 448D2000 */ mtc1 $t5, $f4 -/* 09AC54 8009A054 3C0F8012 */ lui $t7, %hi(D_80126510) # $t7, 0x8012 -/* 09AC58 8009A058 468021A0 */ cvt.s.w $f6, $f4 -/* 09AC5C 8009A05C 3C198012 */ lui $t9, %hi(D_80126518) # $t9, 0x8012 -/* 09AC60 8009A060 3C0B8012 */ lui $t3, %hi(D_80126520) # $t3, 0x8012 -/* 09AC64 8009A064 256B6520 */ addiu $t3, %lo(D_80126520) # addiu $t3, $t3, 0x6520 -/* 09AC68 8009A068 27396518 */ addiu $t9, %lo(D_80126518) # addiu $t9, $t9, 0x6518 -/* 09AC6C 8009A06C 25EF6510 */ addiu $t7, %lo(D_80126510) # addiu $t7, $t7, 0x6510 -/* 09AC70 8009A070 00025040 */ sll $t2, $v0, 1 -/* 09AC74 8009A074 014B6021 */ addu $t4, $t2, $t3 -/* 09AC78 8009A078 004FC021 */ addu $t8, $v0, $t7 -/* 09AC7C 8009A07C 00594821 */ addu $t1, $v0, $t9 -/* 09AC80 8009A080 3C15800E */ lui $s5, %hi(D_800E1E20) # $s5, 0x800e -/* 09AC84 8009A084 3C11800E */ lui $s1, %hi(D_800E1754) # $s1, 0x800e -/* 09AC88 8009A088 26311754 */ addiu $s1, %lo(D_800E1754) # addiu $s1, $s1, 0x1754 -/* 09AC8C 8009A08C 26B51E20 */ addiu $s5, %lo(D_800E1E20) # addiu $s5, $s5, 0x1e20 -/* 09AC90 8009A090 AFA90070 */ sw $t1, 0x70($sp) -/* 09AC94 8009A094 AFB80074 */ sw $t8, 0x74($sp) -/* 09AC98 8009A098 AFAC006C */ sw $t4, 0x6c($sp) -/* 09AC9C 8009A09C E7A60068 */ swc1 $f6, 0x68($sp) -/* 09ACA0 8009A0A0 004EF021 */ addu $fp, $v0, $t6 -/* 09ACA4 8009A0A4 24160004 */ li $s6, 4 -/* 09ACA8 8009A0A8 2414003F */ li $s4, 63 -/* 09ACAC 8009A0AC 27B30088 */ addiu $s3, $sp, 0x88 -.L8009A0B0: -/* 09ACB0 8009A0B0 93C40000 */ lbu $a0, ($fp) -/* 09ACB4 8009A0B4 0C01AC64 */ jal func_8006B190 -/* 09ACB8 8009A0B8 00000000 */ nop -/* 09ACBC 8009A0BC 2443FFFF */ addiu $v1, $v0, -1 -/* 09ACC0 8009A0C0 04600004 */ bltz $v1, .L8009A0D4 -/* 09ACC4 8009A0C4 00604025 */ move $t0, $v1 -/* 09ACC8 8009A0C8 28610005 */ slti $at, $v1, 5 -/* 09ACCC 8009A0CC 14200002 */ bnez $at, .L8009A0D8 -/* 09ACD0 8009A0D0 00000000 */ nop -.L8009A0D4: -/* 09ACD4 8009A0D4 00004025 */ move $t0, $zero -.L8009A0D8: -/* 09ACD8 8009A0D8 93C40000 */ lbu $a0, ($fp) -/* 09ACDC 8009A0DC 0C01AF77 */ jal get_level_name -/* 09ACE0 8009A0E0 AFA800EC */ sw $t0, 0xec($sp) -/* 09ACE4 8009A0E4 904E0000 */ lbu $t6, ($v0) -/* 09ACE8 8009A0E8 8FA800EC */ lw $t0, 0xec($sp) -/* 09ACEC 8009A0EC 11C00013 */ beqz $t6, .L8009A13C -/* 09ACF0 8009A0F0 00008025 */ move $s0, $zero -/* 09ACF4 8009A0F4 90450000 */ lbu $a1, ($v0) -/* 09ACF8 8009A0F8 02602021 */ addu $a0, $s3, $zero -/* 09ACFC 8009A0FC 00403021 */ addu $a2, $v0, $zero -/* 09AD00 8009A100 30A300FF */ andi $v1, $a1, 0xff -.L8009A104: -/* 09AD04 8009A104 28610061 */ slti $at, $v1, 0x61 -/* 09AD08 8009A108 14200005 */ bnez $at, .L8009A120 -/* 09AD0C 8009A10C A0850000 */ sb $a1, ($a0) -/* 09AD10 8009A110 2861007B */ slti $at, $v1, 0x7b -/* 09AD14 8009A114 10200002 */ beqz $at, .L8009A120 -/* 09AD18 8009A118 386F0020 */ xori $t7, $v1, 0x20 -/* 09AD1C 8009A11C A08F0000 */ sb $t7, ($a0) -.L8009A120: -/* 09AD20 8009A120 90C50001 */ lbu $a1, 1($a2) -/* 09AD24 8009A124 26100001 */ addiu $s0, $s0, 1 -/* 09AD28 8009A128 24840001 */ addiu $a0, $a0, 1 -/* 09AD2C 8009A12C 10A00003 */ beqz $a1, .L8009A13C -/* 09AD30 8009A130 24C60001 */ addiu $a2, $a2, 1 -/* 09AD34 8009A134 1614FFF3 */ bne $s0, $s4, .L8009A104 -/* 09AD38 8009A138 30A300FF */ andi $v1, $a1, 0xff -.L8009A13C: -/* 09AD3C 8009A13C 44924000 */ mtc1 $s2, $f8 -/* 09AD40 8009A140 0270C021 */ addu $t8, $s3, $s0 -/* 09AD44 8009A144 A3000000 */ sb $zero, ($t8) -/* 09AD48 8009A148 3C013F40 */ li $at, 0x3F400000 # 0.750000 -/* 09AD4C 8009A14C 46804220 */ cvt.s.w $f8, $f8 -/* 09AD50 8009A150 44815000 */ mtc1 $at, $f10 -/* 09AD54 8009A154 3C013F50 */ li $at, 0x3F500000 # 0.812500 -/* 09AD58 8009A158 0008C880 */ sll $t9, $t0, 2 -/* 09AD5C 8009A15C 3C05800E */ lui $a1, %hi(D_800E16F4) # $a1, 0x800e -/* 09AD60 8009A160 44818000 */ mtc1 $at, $f16 -/* 09AD64 8009A164 00B92821 */ addu $a1, $a1, $t9 -/* 09AD68 8009A168 8CA516F4 */ lw $a1, %lo(D_800E16F4)($a1) -/* 09AD6C 8009A16C 44074000 */ mfc1 $a3, $f8 -/* 09AD70 8009A170 8FA60068 */ lw $a2, 0x68($sp) -/* 09AD74 8009A174 2409FFFF */ li $t1, -1 -/* 09AD78 8009A178 AFA90018 */ sw $t1, 0x18($sp) -/* 09AD7C 8009A17C AFA0001C */ sw $zero, 0x1c($sp) -/* 09AD80 8009A180 00008025 */ move $s0, $zero -/* 09AD84 8009A184 02E02025 */ move $a0, $s7 -/* 09AD88 8009A188 E7AA0010 */ swc1 $f10, 0x10($sp) -/* 09AD8C 8009A18C 0C01E340 */ jal render_texture_rectangle_scaled -/* 09AD90 8009A190 E7B00014 */ swc1 $f16, 0x14($sp) -/* 09AD94 8009A194 240A0034 */ li $t2, 52 -/* 09AD98 8009A198 240B0020 */ li $t3, 32 -/* 09AD9C 8009A19C 240C0050 */ li $t4, 80 -/* 09ADA0 8009A1A0 240D00B0 */ li $t5, 176 -/* 09ADA4 8009A1A4 240E0080 */ li $t6, 128 -/* 09ADA8 8009A1A8 AFAE0028 */ sw $t6, 0x28($sp) -/* 09ADAC 8009A1AC AFAD0024 */ sw $t5, 0x24($sp) -/* 09ADB0 8009A1B0 AFAC0020 */ sw $t4, 0x20($sp) -/* 09ADB4 8009A1B4 AFAB001C */ sw $t3, 0x1c($sp) -/* 09ADB8 8009A1B8 AFAA0010 */ sw $t2, 0x10($sp) -/* 09ADBC 8009A1BC 02E02025 */ move $a0, $s7 -/* 09ADC0 8009A1C0 24050028 */ li $a1, 40 -/* 09ADC4 8009A1C4 02403025 */ move $a2, $s2 -/* 09ADC8 8009A1C8 240700F0 */ li $a3, 240 -/* 09ADCC 8009A1CC AFB60014 */ sw $s6, 0x14($sp) -/* 09ADD0 8009A1D0 0C0203A4 */ jal func_80080E90 -/* 09ADD4 8009A1D4 AFB60018 */ sw $s6, 0x18($sp) -/* 09ADD8 8009A1D8 3C188012 */ lui $t8, %hi(D_80126498) # $t8, 0x8012 -/* 09ADDC 8009A1DC 8F186498 */ lw $t8, %lo(D_80126498)($t8) -/* 09ADE0 8009A1E0 8FAF00E4 */ lw $t7, 0xe4($sp) -/* 09ADE4 8009A1E4 8FA200D8 */ lw $v0, 0xd8($sp) -/* 09ADE8 8009A1E8 15F8000D */ bne $t7, $t8, .L8009A220 -/* 09ADEC 8009A1EC 02E02025 */ move $a0, $s7 -/* 09ADF0 8009A1F0 24190034 */ li $t9, 52 -/* 09ADF4 8009A1F4 AFB90010 */ sw $t9, 0x10($sp) -/* 09ADF8 8009A1F8 24050028 */ li $a1, 40 -/* 09ADFC 8009A1FC 02403025 */ move $a2, $s2 -/* 09AE00 8009A200 240700F0 */ li $a3, 240 -/* 09AE04 8009A204 AFB60014 */ sw $s6, 0x14($sp) -/* 09AE08 8009A208 AFB60018 */ sw $s6, 0x18($sp) -/* 09AE0C 8009A20C AFA2001C */ sw $v0, 0x1c($sp) -/* 09AE10 8009A210 AFA20020 */ sw $v0, 0x20($sp) -/* 09AE14 8009A214 AFA20024 */ sw $v0, 0x24($sp) -/* 09AE18 8009A218 0C0203A4 */ jal func_80080E90 -/* 09AE1C 8009A21C AFA20028 */ sw $v0, 0x28($sp) -.L8009A220: -/* 09AE20 8009A220 240900FF */ li $t1, 255 -/* 09AE24 8009A224 AFA90010 */ sw $t1, 0x10($sp) -/* 09AE28 8009A228 00002025 */ move $a0, $zero -/* 09AE2C 8009A22C 00002825 */ move $a1, $zero -/* 09AE30 8009A230 00003025 */ move $a2, $zero -/* 09AE34 8009A234 0C0310E1 */ jal set_text_colour -/* 09AE38 8009A238 240700FF */ li $a3, 255 -/* 09AE3C 8009A23C 00105040 */ sll $t2, $s0, 1 -.L8009A240: -/* 09AE40 8009A240 02AA1021 */ addu $v0, $s5, $t2 -/* 09AE44 8009A244 804B0000 */ lb $t3, ($v0) -/* 09AE48 8009A248 804D0001 */ lb $t5, 1($v0) -/* 09AE4C 8009A24C 862C0000 */ lh $t4, ($s1) -/* 09AE50 8009A250 862F0002 */ lh $t7, 2($s1) -/* 09AE54 8009A254 2418000C */ li $t8, 12 -/* 09AE58 8009A258 01B27021 */ addu $t6, $t5, $s2 -/* 09AE5C 8009A25C 016C2821 */ addu $a1, $t3, $t4 -/* 09AE60 8009A260 24A50028 */ addiu $a1, $a1, 0x28 -/* 09AE64 8009A264 AFB80010 */ sw $t8, 0x10($sp) -/* 09AE68 8009A268 02E02025 */ move $a0, $s7 -/* 09AE6C 8009A26C 02603825 */ move $a3, $s3 -/* 09AE70 8009A270 0C031110 */ jal draw_text -/* 09AE74 8009A274 01CF3021 */ addu $a2, $t6, $t7 -/* 09AE78 8009A278 26100001 */ addiu $s0, $s0, 1 -/* 09AE7C 8009A27C 1616FFF0 */ bne $s0, $s6, .L8009A240 -/* 09AE80 8009A280 00105040 */ sll $t2, $s0, 1 -/* 09AE84 8009A284 241900FF */ li $t9, 255 -/* 09AE88 8009A288 AFB90010 */ sw $t9, 0x10($sp) -/* 09AE8C 8009A28C 240400C8 */ li $a0, 200 -/* 09AE90 8009A290 240500E4 */ li $a1, 228 -/* 09AE94 8009A294 24060050 */ li $a2, 80 -/* 09AE98 8009A298 0C0310E1 */ jal set_text_colour -/* 09AE9C 8009A29C 240700FF */ li $a3, 255 -/* 09AEA0 8009A2A0 86250000 */ lh $a1, ($s1) -/* 09AEA4 8009A2A4 86290002 */ lh $t1, 2($s1) -/* 09AEA8 8009A2A8 240A000C */ li $t2, 12 -/* 09AEAC 8009A2AC AFAA0010 */ sw $t2, 0x10($sp) -/* 09AEB0 8009A2B0 02E02025 */ move $a0, $s7 -/* 09AEB4 8009A2B4 02603825 */ move $a3, $s3 -/* 09AEB8 8009A2B8 24A50028 */ addiu $a1, $a1, 0x28 -/* 09AEBC 8009A2BC 0C031110 */ jal draw_text -/* 09AEC0 8009A2C0 01323021 */ addu $a2, $t1, $s2 -/* 09AEC4 8009A2C4 8FAB0074 */ lw $t3, 0x74($sp) -/* 09AEC8 8009A2C8 3C05800E */ lui $a1, %hi(D_800E0AF0) # $a1, 0x800e -/* 09AECC 8009A2CC 916C0000 */ lbu $t4, ($t3) -/* 09AED0 8009A2D0 86260004 */ lh $a2, 4($s1) -/* 09AED4 8009A2D4 000C6880 */ sll $t5, $t4, 2 -/* 09AED8 8009A2D8 862E0006 */ lh $t6, 6($s1) -/* 09AEDC 8009A2DC 00AD2821 */ addu $a1, $a1, $t5 -/* 09AEE0 8009A2E0 8CA50AF0 */ lw $a1, %lo(D_800E0AF0)($a1) -/* 09AEE4 8009A2E4 240F00FF */ li $t7, 255 -/* 09AEE8 8009A2E8 241800FF */ li $t8, 255 -/* 09AEEC 8009A2EC 241900FF */ li $t9, 255 -/* 09AEF0 8009A2F0 240900FF */ li $t1, 255 -/* 09AEF4 8009A2F4 AFA9001C */ sw $t1, 0x1c($sp) -/* 09AEF8 8009A2F8 AFB90018 */ sw $t9, 0x18($sp) -/* 09AEFC 8009A2FC AFB80014 */ sw $t8, 0x14($sp) -/* 09AF00 8009A300 AFAF0010 */ sw $t7, 0x10($sp) -/* 09AF04 8009A304 02E02025 */ move $a0, $s7 -/* 09AF08 8009A308 24C60028 */ addiu $a2, $a2, 0x28 -/* 09AF0C 8009A30C 0C01E2AE */ jal render_textured_rectangle -/* 09AF10 8009A310 01D23821 */ addu $a3, $t6, $s2 -/* 09AF14 8009A314 8FAA0070 */ lw $t2, 0x70($sp) -/* 09AF18 8009A318 24010001 */ li $at, 1 -/* 09AF1C 8009A31C 91420000 */ lbu $v0, ($t2) -/* 09AF20 8009A320 02E02025 */ move $a0, $s7 -/* 09AF24 8009A324 10410007 */ beq $v0, $at, .L8009A344 -/* 09AF28 8009A328 240FFFFF */ li $t7, -1 -/* 09AF2C 8009A32C 24010002 */ li $at, 2 -/* 09AF30 8009A330 10410007 */ beq $v0, $at, .L8009A350 -/* 09AF34 8009A334 3C05800E */ lui $a1, %hi(gRaceSelectionPlaneTex) # $a1, 0x800e -/* 09AF38 8009A338 3C05800E */ lui $a1, %hi(gRaceSelectionCarTex) # $a1, 0x800e -/* 09AF3C 8009A33C 10000005 */ b .L8009A354 -/* 09AF40 8009A340 24A5045C */ addiu $a1, %lo(gRaceSelectionCarTex) # addiu $a1, $a1, 0x45c -.L8009A344: -/* 09AF44 8009A344 3C05800E */ lui $a1, %hi(gRaceSelectionHoverTex) # $a1, 0x800e -/* 09AF48 8009A348 10000002 */ b .L8009A354 -/* 09AF4C 8009A34C 24A50474 */ addiu $a1, %lo(gRaceSelectionHoverTex) # addiu $a1, $a1, 0x474 -.L8009A350: -/* 09AF50 8009A350 24A5048C */ addiu $a1, %lo(gRaceSelectionPlaneTex) # addiu $a1, $a1, 0x48c -.L8009A354: -/* 09AF54 8009A354 862B0008 */ lh $t3, 8($s1) -/* 09AF58 8009A358 862D000A */ lh $t5, 0xa($s1) -/* 09AF5C 8009A35C 256C0028 */ addiu $t4, $t3, 0x28 -/* 09AF60 8009A360 01B27021 */ addu $t6, $t5, $s2 -/* 09AF64 8009A364 448E2000 */ mtc1 $t6, $f4 -/* 09AF68 8009A368 448C9000 */ mtc1 $t4, $f18 -/* 09AF6C 8009A36C 46802120 */ cvt.s.w $f4, $f4 -/* 09AF70 8009A370 3C013F20 */ li $at, 0x3F200000 # 0.625000 -/* 09AF74 8009A374 44810000 */ mtc1 $at, $f0 -/* 09AF78 8009A378 468094A0 */ cvt.s.w $f18, $f18 -/* 09AF7C 8009A37C 44072000 */ mfc1 $a3, $f4 -/* 09AF80 8009A380 AFAF0018 */ sw $t7, 0x18($sp) -/* 09AF84 8009A384 44069000 */ mfc1 $a2, $f18 -/* 09AF88 8009A388 AFA0001C */ sw $zero, 0x1c($sp) -/* 09AF8C 8009A38C E7A00010 */ swc1 $f0, 0x10($sp) -/* 09AF90 8009A390 0C01E340 */ jal render_texture_rectangle_scaled -/* 09AF94 8009A394 E7A00014 */ swc1 $f0, 0x14($sp) -/* 09AF98 8009A398 0C01ECF4 */ jal func_8007B3D0 -/* 09AF9C 8009A39C 02E02025 */ move $a0, $s7 -/* 09AFA0 8009A3A0 8638000C */ lh $t8, 0xc($s1) -/* 09AFA4 8009A3A4 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e -/* 09AFA8 8009A3A8 2719FF88 */ addiu $t9, $t8, -0x78 -/* 09AFAC 8009A3AC 44993000 */ mtc1 $t9, $f6 -/* 09AFB0 8009A3B0 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 -/* 09AFB4 8009A3B4 46803220 */ cvt.s.w $f8, $f6 -/* 09AFB8 8009A3B8 8C490000 */ lw $t1, ($v0) -/* 09AFBC 8009A3BC 3C01800F */ lui $at, %hi(D_800E8570) # $at, 0x800f -/* 09AFC0 8009A3C0 E52800EC */ swc1 $f8, 0xec($t1) -/* 09AFC4 8009A3C4 862A000E */ lh $t2, 0xe($s1) -/* 09AFC8 8009A3C8 8FAD00D0 */ lw $t5, 0xd0($sp) -/* 09AFCC 8009A3CC 000A5823 */ negu $t3, $t2 -/* 09AFD0 8009A3D0 01726023 */ subu $t4, $t3, $s2 -/* 09AFD4 8009A3D4 018D7021 */ addu $t6, $t4, $t5 -/* 09AFD8 8009A3D8 25CF0078 */ addiu $t7, $t6, 0x78 -/* 09AFDC 8009A3DC 448F5000 */ mtc1 $t7, $f10 -/* 09AFE0 8009A3E0 8C580000 */ lw $t8, ($v0) -/* 09AFE4 8009A3E4 46805420 */ cvt.s.w $f16, $f10 -/* 09AFE8 8009A3E8 24040007 */ li $a0, 7 -/* 09AFEC 8009A3EC E71000F0 */ swc1 $f16, 0xf0($t8) -/* 09AFF0 8009A3F0 8C590000 */ lw $t9, ($v0) -/* 09AFF4 8009A3F4 C4328570 */ lwc1 $f18, %lo(D_800E8570)($at) -/* 09AFF8 8009A3F8 0C027298 */ jal func_8009CA60 -/* 09AFFC 8009A3FC E73200E8 */ swc1 $f18, 0xe8($t9) -/* 09B000 8009A400 24090080 */ li $t1, 128 -/* 09B004 8009A404 3C01800E */ lui $at, %hi(sMenuGuiOpacity) # $at, 0x800e -/* 09B008 8009A408 AC29F764 */ sw $t1, %lo(sMenuGuiOpacity)($at) -/* 09B00C 8009A40C 862B0012 */ lh $t3, 0x12($s1) -/* 09B010 8009A410 8FAA006C */ lw $t2, 0x6c($sp) -/* 09B014 8009A414 8FAE00D0 */ lw $t6, 0xd0($sp) -/* 09B018 8009A418 000B6023 */ negu $t4, $t3 -/* 09B01C 8009A41C 95440000 */ lhu $a0, ($t2) -/* 09B020 8009A420 86250010 */ lh $a1, 0x10($s1) -/* 09B024 8009A424 01926823 */ subu $t5, $t4, $s2 -/* 09B028 8009A428 01AE3021 */ addu $a2, $t5, $t6 -/* 09B02C 8009A42C 24C60077 */ addiu $a2, $a2, 0x77 -/* 09B030 8009A430 AFA00018 */ sw $zero, 0x18($sp) -/* 09B034 8009A434 AFA00014 */ sw $zero, 0x14($sp) -/* 09B038 8009A438 AFA00010 */ sw $zero, 0x10($sp) -/* 09B03C 8009A43C 00003825 */ move $a3, $zero -/* 09B040 8009A440 0C020600 */ jal show_timestamp -/* 09B044 8009A444 24A5FF89 */ addiu $a1, $a1, -0x77 -/* 09B048 8009A448 240F00FF */ li $t7, 255 -/* 09B04C 8009A44C 3C01800E */ lui $at, %hi(sMenuGuiOpacity) # $at, 0x800e -/* 09B050 8009A450 AC2FF764 */ sw $t7, %lo(sMenuGuiOpacity)($at) -/* 09B054 8009A454 86390012 */ lh $t9, 0x12($s1) -/* 09B058 8009A458 8FB8006C */ lw $t8, 0x6c($sp) -/* 09B05C 8009A45C 8FAB00D0 */ lw $t3, 0xd0($sp) -/* 09B060 8009A460 00194823 */ negu $t1, $t9 -/* 09B064 8009A464 97040000 */ lhu $a0, ($t8) -/* 09B068 8009A468 86250010 */ lh $a1, 0x10($s1) -/* 09B06C 8009A46C 01325023 */ subu $t2, $t1, $s2 -/* 09B070 8009A470 240C00C0 */ li $t4, 192 -/* 09B074 8009A474 240D00FF */ li $t5, 255 -/* 09B078 8009A478 014B3021 */ addu $a2, $t2, $t3 -/* 09B07C 8009A47C 24C60079 */ addiu $a2, $a2, 0x79 -/* 09B080 8009A480 AFAD0014 */ sw $t5, 0x14($sp) -/* 09B084 8009A484 AFAC0010 */ sw $t4, 0x10($sp) -/* 09B088 8009A488 AFA00018 */ sw $zero, 0x18($sp) -/* 09B08C 8009A48C 240700FF */ li $a3, 255 -/* 09B090 8009A490 0C020600 */ jal show_timestamp -/* 09B094 8009A494 24A5FF87 */ addiu $a1, $a1, -0x79 -/* 09B098 8009A498 8FB80074 */ lw $t8, 0x74($sp) -/* 09B09C 8009A49C 8FAE00E4 */ lw $t6, 0xe4($sp) -/* 09B0A0 8009A4A0 27190001 */ addiu $t9, $t8, 1 -/* 09B0A4 8009A4A4 3C188012 */ lui $t8, %hi(D_801264D4) # $t8, 0x8012 -/* 09B0A8 8009A4A8 8FA90070 */ lw $t1, 0x70($sp) -/* 09B0AC 8009A4AC 8FAB006C */ lw $t3, 0x6c($sp) -/* 09B0B0 8009A4B0 8FAD00E8 */ lw $t5, 0xe8($sp) -/* 09B0B4 8009A4B4 8F1864D4 */ lw $t8, %lo(D_801264D4)($t8) -/* 09B0B8 8009A4B8 25CF0001 */ addiu $t7, $t6, 1 -/* 09B0BC 8009A4BC 252A0001 */ addiu $t2, $t1, 1 -/* 09B0C0 8009A4C0 256C0002 */ addiu $t4, $t3, 2 -/* 09B0C4 8009A4C4 25AEFFFF */ addiu $t6, $t5, -1 -/* 09B0C8 8009A4C8 01F8082A */ slt $at, $t7, $t8 -/* 09B0CC 8009A4CC AFAC006C */ sw $t4, 0x6c($sp) -/* 09B0D0 8009A4D0 AFAA0070 */ sw $t2, 0x70($sp) -/* 09B0D4 8009A4D4 AFAF00E4 */ sw $t7, 0xe4($sp) -/* 09B0D8 8009A4D8 AFB90074 */ sw $t9, 0x74($sp) -/* 09B0DC 8009A4DC 27DE0001 */ addiu $fp, $fp, 1 -/* 09B0E0 8009A4E0 AFAE00E8 */ sw $t6, 0xe8($sp) -/* 09B0E4 8009A4E4 10200003 */ beqz $at, .L8009A4F4 -/* 09B0E8 8009A4E8 26520036 */ addiu $s2, $s2, 0x36 -/* 09B0EC 8009A4EC 1DC0FEF0 */ bgtz $t6, .L8009A0B0 -/* 09B0F0 8009A4F0 00000000 */ nop -.L8009A4F4: -/* 09B0F4 8009A4F4 3C108012 */ lui $s0, %hi(D_801263E0) # $s0, 0x8012 -/* 09B0F8 8009A4F8 8FB900D8 */ lw $t9, 0xd8($sp) -/* 09B0FC 8009A4FC 261063E0 */ addiu $s0, %lo(D_801263E0) # addiu $s0, $s0, 0x63e0 -/* 09B100 8009A500 8E0A0000 */ lw $t2, ($s0) -/* 09B104 8009A504 332900FF */ andi $t1, $t9, 0xff -/* 09B108 8009A508 19400063 */ blez $t2, .L8009A698 -/* 09B10C 8009A50C AFA900D8 */ sw $t1, 0xd8($sp) -/* 09B110 8009A510 0C0315B4 */ jal func_800C56D0 -/* 09B114 8009A514 24040007 */ li $a0, 7 -/* 09B118 8009A518 0C031525 */ jal assign_dialogue_box_id -/* 09B11C 8009A51C 24040007 */ li $a0, 7 -/* 09B120 8009A520 240B008A */ li $t3, 138 -/* 09B124 8009A524 AFAB0010 */ sw $t3, 0x10($sp) -/* 09B128 8009A528 24040007 */ li $a0, 7 -/* 09B12C 8009A52C 24050068 */ li $a1, 104 -/* 09B130 8009A530 24060066 */ li $a2, 102 -/* 09B134 8009A534 0C0313B7 */ jal set_current_dialogue_box_coords -/* 09B138 8009A538 240700D8 */ li $a3, 216 -/* 09B13C 8009A53C 240C00C0 */ li $t4, 192 -/* 09B140 8009A540 AFAC0010 */ sw $t4, 0x10($sp) -/* 09B144 8009A544 24040007 */ li $a0, 7 -/* 09B148 8009A548 00002825 */ move $a1, $zero -/* 09B14C 8009A54C 00003025 */ move $a2, $zero -/* 09B150 8009A550 0C0313EF */ jal set_current_dialogue_background_colour -/* 09B154 8009A554 00003825 */ move $a3, $zero -/* 09B158 8009A558 24040007 */ li $a0, 7 -/* 09B15C 8009A55C 0C0313DF */ jal set_dialogue_font -/* 09B160 8009A560 00002825 */ move $a1, $zero -/* 09B164 8009A564 24040007 */ li $a0, 7 -/* 09B168 8009A568 00002825 */ move $a1, $zero -/* 09B16C 8009A56C 00003025 */ move $a2, $zero -/* 09B170 8009A570 00003825 */ move $a3, $zero -/* 09B174 8009A574 0C031414 */ jal set_current_text_background_colour -/* 09B178 8009A578 AFA00010 */ sw $zero, 0x10($sp) -/* 09B17C 8009A57C 8E0D0000 */ lw $t5, ($s0) -/* 09B180 8009A580 24010001 */ li $at, 1 -/* 09B184 8009A584 15A1000C */ bne $t5, $at, .L8009A5B8 -/* 09B188 8009A588 24040007 */ li $a0, 7 -/* 09B18C 8009A58C 8FAF00D8 */ lw $t7, 0xd8($sp) -/* 09B190 8009A590 241800FF */ li $t8, 255 -/* 09B194 8009A594 AFB80014 */ sw $t8, 0x14($sp) -/* 09B198 8009A598 24040007 */ li $a0, 7 -/* 09B19C 8009A59C 240500FF */ li $a1, 255 -/* 09B1A0 8009A5A0 240600FF */ li $a2, 255 -/* 09B1A4 8009A5A4 240700FF */ li $a3, 255 -/* 09B1A8 8009A5A8 0C031400 */ jal set_current_text_colour -/* 09B1AC 8009A5AC AFAF0010 */ sw $t7, 0x10($sp) -/* 09B1B0 8009A5B0 10000008 */ b .L8009A5D4 -/* 09B1B4 8009A5B4 00000000 */ nop -.L8009A5B8: -/* 09B1B8 8009A5B8 240E00FF */ li $t6, 255 -/* 09B1BC 8009A5BC AFAE0014 */ sw $t6, 0x14($sp) -/* 09B1C0 8009A5C0 240500FF */ li $a1, 255 -/* 09B1C4 8009A5C4 240600FF */ li $a2, 255 -/* 09B1C8 8009A5C8 240700FF */ li $a3, 255 -/* 09B1CC 8009A5CC 0C031400 */ jal set_current_text_colour -/* 09B1D0 8009A5D0 AFA00010 */ sw $zero, 0x10($sp) -.L8009A5D4: -/* 09B1D4 8009A5D4 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e -/* 09B1D8 8009A5D8 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) -/* 09B1DC 8009A5DC 24090001 */ li $t1, 1 -/* 09B1E0 8009A5E0 8F270150 */ lw $a3, 0x150($t9) -/* 09B1E4 8009A5E4 240A000C */ li $t2, 12 -/* 09B1E8 8009A5E8 AFAA0014 */ sw $t2, 0x14($sp) -/* 09B1EC 8009A5EC AFA90010 */ sw $t1, 0x10($sp) -/* 09B1F0 8009A5F0 24040007 */ li $a0, 7 -/* 09B1F4 8009A5F4 24058000 */ li $a1, -32768 -/* 09B1F8 8009A5F8 0C03145A */ jal render_dialogue_text -/* 09B1FC 8009A5FC 2406000C */ li $a2, 12 -/* 09B200 8009A600 8E0B0000 */ lw $t3, ($s0) -/* 09B204 8009A604 24010002 */ li $at, 2 -/* 09B208 8009A608 1561000C */ bne $t3, $at, .L8009A63C -/* 09B20C 8009A60C 24040007 */ li $a0, 7 -/* 09B210 8009A610 8FAC00D8 */ lw $t4, 0xd8($sp) -/* 09B214 8009A614 240D00FF */ li $t5, 255 -/* 09B218 8009A618 AFAD0014 */ sw $t5, 0x14($sp) -/* 09B21C 8009A61C 24040007 */ li $a0, 7 -/* 09B220 8009A620 240500FF */ li $a1, 255 -/* 09B224 8009A624 240600FF */ li $a2, 255 -/* 09B228 8009A628 240700FF */ li $a3, 255 -/* 09B22C 8009A62C 0C031400 */ jal set_current_text_colour -/* 09B230 8009A630 AFAC0010 */ sw $t4, 0x10($sp) -/* 09B234 8009A634 10000008 */ b .L8009A658 -/* 09B238 8009A638 00000000 */ nop -.L8009A63C: -/* 09B23C 8009A63C 240F00FF */ li $t7, 255 -/* 09B240 8009A640 AFAF0014 */ sw $t7, 0x14($sp) -/* 09B244 8009A644 240500FF */ li $a1, 255 -/* 09B248 8009A648 240600FF */ li $a2, 255 -/* 09B24C 8009A64C 240700FF */ li $a3, 255 -/* 09B250 8009A650 0C031400 */ jal set_current_text_colour -/* 09B254 8009A654 AFA00010 */ sw $zero, 0x10($sp) -.L8009A658: -/* 09B258 8009A658 3C18800E */ lui $t8, %hi(gMenuText) # $t8, 0x800e -/* 09B25C 8009A65C 8F18F4A0 */ lw $t8, %lo(gMenuText)($t8) -/* 09B260 8009A660 240E0001 */ li $t6, 1 -/* 09B264 8009A664 8F070154 */ lw $a3, 0x154($t8) -/* 09B268 8009A668 2419000C */ li $t9, 12 -/* 09B26C 8009A66C AFB90014 */ sw $t9, 0x14($sp) -/* 09B270 8009A670 AFAE0010 */ sw $t6, 0x10($sp) -/* 09B274 8009A674 24040007 */ li $a0, 7 -/* 09B278 8009A678 24058000 */ li $a1, -32768 -/* 09B27C 8009A67C 0C03145A */ jal render_dialogue_text -/* 09B280 8009A680 2406001C */ li $a2, 28 -/* 09B284 8009A684 02E02025 */ move $a0, $s7 -/* 09B288 8009A688 00002825 */ move $a1, $zero -/* 09B28C 8009A68C 00003025 */ move $a2, $zero -/* 09B290 8009A690 0C0316D6 */ jal render_dialogue_box -/* 09B294 8009A694 24070007 */ li $a3, 7 -.L8009A698: -/* 09B298 8009A698 3C098012 */ lui $t1, %hi(D_801263BC) # $t1, 0x8012 -/* 09B29C 8009A69C 8D2963BC */ lw $t1, %lo(D_801263BC)($t1) -/* 09B2A0 8009A6A0 3C028012 */ lui $v0, %hi(D_801263D8) # $v0, 0x8012 -/* 09B2A4 8009A6A4 312A0010 */ andi $t2, $t1, 0x10 -/* 09B2A8 8009A6A8 1140003E */ beqz $t2, .L8009A7A4 -/* 09B2AC 8009A6AC 3C0B8012 */ lui $t3, %hi(D_801264D4) # $t3, 0x8012 -/* 09B2B0 8009A6B0 8C4263D8 */ lw $v0, %lo(D_801263D8)($v0) -/* 09B2B4 8009A6B4 8D6B64D4 */ lw $t3, %lo(D_801264D4)($t3) -/* 09B2B8 8009A6B8 244C0003 */ addiu $t4, $v0, 3 -/* 09B2BC 8009A6BC 018B082A */ slt $at, $t4, $t3 -/* 09B2C0 8009A6C0 1020001C */ beqz $at, .L8009A734 -/* 09B2C4 8009A6C4 3C10800E */ lui $s0, %hi(gMenuSelectionArrowDown) # $s0, 0x800e -/* 09B2C8 8009A6C8 2610043C */ addiu $s0, %lo(gMenuSelectionArrowDown) # addiu $s0, $s0, 0x43c -/* 09B2CC 8009A6CC 240D0080 */ li $t5, 128 -/* 09B2D0 8009A6D0 AFAD001C */ sw $t5, 0x1c($sp) -/* 09B2D4 8009A6D4 02002825 */ move $a1, $s0 -/* 09B2D8 8009A6D8 02E02025 */ move $a0, $s7 -/* 09B2DC 8009A6DC 240600A1 */ li $a2, 161 -/* 09B2E0 8009A6E0 26470003 */ addiu $a3, $s2, 3 -/* 09B2E4 8009A6E4 AFA00010 */ sw $zero, 0x10($sp) -/* 09B2E8 8009A6E8 AFA00014 */ sw $zero, 0x14($sp) -/* 09B2EC 8009A6EC 0C01E2AE */ jal render_textured_rectangle -/* 09B2F0 8009A6F0 AFA00018 */ sw $zero, 0x18($sp) -/* 09B2F4 8009A6F4 240F00FF */ li $t7, 255 -/* 09B2F8 8009A6F8 241800FF */ li $t8, 255 -/* 09B2FC 8009A6FC 240E00FF */ li $t6, 255 -/* 09B300 8009A700 241900FF */ li $t9, 255 -/* 09B304 8009A704 AFB9001C */ sw $t9, 0x1c($sp) -/* 09B308 8009A708 AFAE0018 */ sw $t6, 0x18($sp) -/* 09B30C 8009A70C AFB80014 */ sw $t8, 0x14($sp) -/* 09B310 8009A710 AFAF0010 */ sw $t7, 0x10($sp) -/* 09B314 8009A714 02E02025 */ move $a0, $s7 -/* 09B318 8009A718 02002825 */ move $a1, $s0 -/* 09B31C 8009A71C 2406009F */ li $a2, 159 -/* 09B320 8009A720 0C01E2AE */ jal render_textured_rectangle -/* 09B324 8009A724 26470001 */ addiu $a3, $s2, 1 -/* 09B328 8009A728 3C028012 */ lui $v0, %hi(D_801263D8) # $v0, 0x8012 -/* 09B32C 8009A72C 8C4263D8 */ lw $v0, %lo(D_801263D8)($v0) -/* 09B330 8009A730 00000000 */ nop -.L8009A734: -/* 09B334 8009A734 18400019 */ blez $v0, .L8009A79C -/* 09B338 8009A738 3C10800E */ lui $s0, %hi(gMenuSelectionArrowUp) # $s0, 0x800e -/* 09B33C 8009A73C 2610041C */ addiu $s0, %lo(gMenuSelectionArrowUp) # addiu $s0, $s0, 0x41c -/* 09B340 8009A740 24090080 */ li $t1, 128 -/* 09B344 8009A744 AFA9001C */ sw $t1, 0x1c($sp) -/* 09B348 8009A748 02002825 */ move $a1, $s0 -/* 09B34C 8009A74C 02E02025 */ move $a0, $s7 -/* 09B350 8009A750 240600A1 */ li $a2, 161 -/* 09B354 8009A754 24070036 */ li $a3, 54 -/* 09B358 8009A758 AFA00010 */ sw $zero, 0x10($sp) -/* 09B35C 8009A75C AFA00014 */ sw $zero, 0x14($sp) -/* 09B360 8009A760 0C01E2AE */ jal render_textured_rectangle -/* 09B364 8009A764 AFA00018 */ sw $zero, 0x18($sp) -/* 09B368 8009A768 240A00FF */ li $t2, 255 -/* 09B36C 8009A76C 240B00FF */ li $t3, 255 -/* 09B370 8009A770 240C00FF */ li $t4, 255 -/* 09B374 8009A774 240D00FF */ li $t5, 255 -/* 09B378 8009A778 AFAD001C */ sw $t5, 0x1c($sp) -/* 09B37C 8009A77C AFAC0018 */ sw $t4, 0x18($sp) -/* 09B380 8009A780 AFAB0014 */ sw $t3, 0x14($sp) -/* 09B384 8009A784 AFAA0010 */ sw $t2, 0x10($sp) -/* 09B388 8009A788 02E02025 */ move $a0, $s7 -/* 09B38C 8009A78C 02002825 */ move $a1, $s0 -/* 09B390 8009A790 2406009F */ li $a2, 159 -/* 09B394 8009A794 0C01E2AE */ jal render_textured_rectangle -/* 09B398 8009A798 24070034 */ li $a3, 52 -.L8009A79C: -/* 09B39C 8009A79C 0C01ECF4 */ jal func_8007B3D0 -/* 09B3A0 8009A7A0 02E02025 */ move $a0, $s7 -.L8009A7A4: -/* 09B3A4 8009A7A4 8FBF005C */ lw $ra, 0x5c($sp) -.L8009A7A8: -/* 09B3A8 8009A7A8 8FB00038 */ lw $s0, 0x38($sp) -/* 09B3AC 8009A7AC 8FB1003C */ lw $s1, 0x3c($sp) -/* 09B3B0 8009A7B0 8FB20040 */ lw $s2, 0x40($sp) -/* 09B3B4 8009A7B4 8FB30044 */ lw $s3, 0x44($sp) -/* 09B3B8 8009A7B8 8FB40048 */ lw $s4, 0x48($sp) -/* 09B3BC 8009A7BC 8FB5004C */ lw $s5, 0x4c($sp) -/* 09B3C0 8009A7C0 8FB60050 */ lw $s6, 0x50($sp) -/* 09B3C4 8009A7C4 8FB70054 */ lw $s7, 0x54($sp) -/* 09B3C8 8009A7C8 8FBE0058 */ lw $fp, 0x58($sp) -/* 09B3CC 8009A7CC 03E00008 */ jr $ra -/* 09B3D0 8009A7D0 27BD00F0 */ addiu $sp, $sp, 0xf0 - +.late_rodata +glabel D_800E8570 +.float 0.075 + +.text +glabel func_80099E8C +/* 09AA8C 80099E8C 27BDFF10 */ addiu $sp, $sp, -0xf0 +/* 09AA90 80099E90 AFB70054 */ sw $s7, 0x54($sp) +/* 09AA94 80099E94 3C178012 */ lui $s7, %hi(sMenuCurrDisplayList) # $s7, 0x8012 +/* 09AA98 80099E98 26F763A0 */ addiu $s7, %lo(sMenuCurrDisplayList) # addiu $s7, $s7, 0x63a0 +/* 09AA9C 80099E9C AFBF005C */ sw $ra, 0x5c($sp) +/* 09AAA0 80099EA0 AFA400F0 */ sw $a0, 0xf0($sp) +/* 09AAA4 80099EA4 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 +/* 09AAA8 80099EA8 AFBE0058 */ sw $fp, 0x58($sp) +/* 09AAAC 80099EAC AFB60050 */ sw $s6, 0x50($sp) +/* 09AAB0 80099EB0 AFB5004C */ sw $s5, 0x4c($sp) +/* 09AAB4 80099EB4 AFB40048 */ sw $s4, 0x48($sp) +/* 09AAB8 80099EB8 AFB30044 */ sw $s3, 0x44($sp) +/* 09AABC 80099EBC AFB20040 */ sw $s2, 0x40($sp) +/* 09AAC0 80099EC0 AFB1003C */ sw $s1, 0x3c($sp) +/* 09AAC4 80099EC4 AFB00038 */ sw $s0, 0x38($sp) +/* 09AAC8 80099EC8 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 +/* 09AACC 80099ECC 0C019FCB */ jal func_80067F2C +/* 09AAD0 80099ED0 02E02025 */ move $a0, $s7 +/* 09AAD4 80099ED4 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 +/* 09AAD8 80099ED8 8DCE0300 */ lw $t6, %lo(osTvType)($t6) +/* 09AADC 80099EDC 3C188012 */ lui $t8, %hi(D_801263D8) # $t8, 0x8012 +/* 09AAE0 80099EE0 15C00004 */ bnez $t6, .L80099EF4 +/* 09AAE4 80099EE4 24040002 */ li $a0, 2 +/* 09AAE8 80099EE8 240F000C */ li $t7, 12 +/* 09AAEC 80099EEC 10000002 */ b .L80099EF8 +/* 09AAF0 80099EF0 AFAF00D0 */ sw $t7, 0xd0($sp) +.L80099EF4: +/* 09AAF4 80099EF4 AFA000D0 */ sw $zero, 0xd0($sp) +.L80099EF8: +/* 09AAF8 80099EF8 8F1863D8 */ lw $t8, %lo(D_801263D8)($t8) +/* 09AAFC 80099EFC 0C0310BB */ jal set_text_font +/* 09AB00 80099F00 AFB800E4 */ sw $t8, 0xe4($sp) +/* 09AB04 80099F04 00002025 */ move $a0, $zero +/* 09AB08 80099F08 00002825 */ move $a1, $zero +/* 09AB0C 80099F0C 00003025 */ move $a2, $zero +/* 09AB10 80099F10 0C0310F3 */ jal set_text_background_colour +/* 09AB14 80099F14 00003825 */ move $a3, $zero +/* 09AB18 80099F18 24190080 */ li $t9, 128 +/* 09AB1C 80099F1C AFB90010 */ sw $t9, 0x10($sp) +/* 09AB20 80099F20 00002025 */ move $a0, $zero +/* 09AB24 80099F24 00002825 */ move $a1, $zero +/* 09AB28 80099F28 00003025 */ move $a2, $zero +/* 09AB2C 80099F2C 0C0310E1 */ jal set_text_colour +/* 09AB30 80099F30 240700FF */ li $a3, 255 +/* 09AB34 80099F34 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e +/* 09AB38 80099F38 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) +/* 09AB3C 80099F3C 240A000C */ li $t2, 12 +/* 09AB40 80099F40 8D270148 */ lw $a3, 0x148($t1) +/* 09AB44 80099F44 AFAA0010 */ sw $t2, 0x10($sp) +/* 09AB48 80099F48 02E02025 */ move $a0, $s7 +/* 09AB4C 80099F4C 240500A1 */ li $a1, 161 +/* 09AB50 80099F50 0C031110 */ jal draw_text +/* 09AB54 80099F54 24060023 */ li $a2, 35 +/* 09AB58 80099F58 240B00FF */ li $t3, 255 +/* 09AB5C 80099F5C AFAB0010 */ sw $t3, 0x10($sp) +/* 09AB60 80099F60 240400FF */ li $a0, 255 +/* 09AB64 80099F64 240500FF */ li $a1, 255 +/* 09AB68 80099F68 240600FF */ li $a2, 255 +/* 09AB6C 80099F6C 0C0310E1 */ jal set_text_colour +/* 09AB70 80099F70 00003825 */ move $a3, $zero +/* 09AB74 80099F74 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e +/* 09AB78 80099F78 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) +/* 09AB7C 80099F7C 240D000C */ li $t5, 12 +/* 09AB80 80099F80 8D870148 */ lw $a3, 0x148($t4) +/* 09AB84 80099F84 AFAD0010 */ sw $t5, 0x10($sp) +/* 09AB88 80099F88 02E02025 */ move $a0, $s7 +/* 09AB8C 80099F8C 240500A0 */ li $a1, 160 +/* 09AB90 80099F90 0C031110 */ jal draw_text +/* 09AB94 80099F94 24060020 */ li $a2, 32 +/* 09AB98 80099F98 3C0E8012 */ lui $t6, %hi(D_801264D4) # $t6, 0x8012 +/* 09AB9C 80099F9C 8DCE64D4 */ lw $t6, %lo(D_801264D4)($t6) +/* 09ABA0 80099FA0 24120038 */ li $s2, 56 +/* 09ABA4 80099FA4 1DC00014 */ bgtz $t6, .L80099FF8 +/* 09ABA8 80099FA8 24090003 */ li $t1, 3 +/* 09ABAC 80099FAC 240F00FF */ li $t7, 255 +/* 09ABB0 80099FB0 AFAF0010 */ sw $t7, 0x10($sp) +/* 09ABB4 80099FB4 240400FF */ li $a0, 255 +/* 09ABB8 80099FB8 240500FF */ li $a1, 255 +/* 09ABBC 80099FBC 240600FF */ li $a2, 255 +/* 09ABC0 80099FC0 0C0310E1 */ jal set_text_colour +/* 09ABC4 80099FC4 00003825 */ move $a3, $zero +/* 09ABC8 80099FC8 3C18800E */ lui $t8, %hi(gMenuText) # $t8, 0x800e +/* 09ABCC 80099FCC 8F18F4A0 */ lw $t8, %lo(gMenuText)($t8) +/* 09ABD0 80099FD0 8FA600D0 */ lw $a2, 0xd0($sp) +/* 09ABD4 80099FD4 2419000C */ li $t9, 12 +/* 09ABD8 80099FD8 8F07014C */ lw $a3, 0x14c($t8) +/* 09ABDC 80099FDC AFB90010 */ sw $t9, 0x10($sp) +/* 09ABE0 80099FE0 02E02025 */ move $a0, $s7 +/* 09ABE4 80099FE4 240500A0 */ li $a1, 160 +/* 09ABE8 80099FE8 0C031110 */ jal draw_text +/* 09ABEC 80099FEC 24C60078 */ addiu $a2, $a2, 0x78 +/* 09ABF0 80099FF0 100001ED */ b .L8009A7A8 +/* 09ABF4 80099FF4 8FBF005C */ lw $ra, 0x5c($sp) +.L80099FF8: +/* 09ABF8 80099FF8 3C028012 */ lui $v0, %hi(gOptionBlinkTimer) # $v0, 0x8012 +/* 09ABFC 80099FFC 8C4263BC */ lw $v0, %lo(gOptionBlinkTimer)($v0) +/* 09AC00 8009A000 AFA900E8 */ sw $t1, 0xe8($sp) +/* 09AC04 8009A004 000250C0 */ sll $t2, $v0, 3 +/* 09AC08 8009A008 29410100 */ slti $at, $t2, 0x100 +/* 09AC0C 8009A00C 14200003 */ bnez $at, .L8009A01C +/* 09AC10 8009A010 01401025 */ move $v0, $t2 +/* 09AC14 8009A014 240B01FF */ li $t3, 511 +/* 09AC18 8009A018 016A1023 */ subu $v0, $t3, $t2 +.L8009A01C: +/* 09AC1C 8009A01C 2401FF00 */ li $at, -256 +/* 09AC20 8009A020 00416025 */ or $t4, $v0, $at +/* 09AC24 8009A024 AFAC00D8 */ sw $t4, 0xd8($sp) +/* 09AC28 8009A028 0C0310BB */ jal set_text_font +/* 09AC2C 8009A02C 24040001 */ li $a0, 1 +/* 09AC30 8009A030 3C0D8012 */ lui $t5, %hi(D_801264D4) # $t5, 0x8012 +/* 09AC34 8009A034 8FA200E4 */ lw $v0, 0xe4($sp) +/* 09AC38 8009A038 8DAD64D4 */ lw $t5, %lo(D_801264D4)($t5) +/* 09AC3C 8009A03C 3C0E8012 */ lui $t6, %hi(D_80126508) # $t6, 0x8012 +/* 09AC40 8009A040 004D082A */ slt $at, $v0, $t5 +/* 09AC44 8009A044 1020012B */ beqz $at, .L8009A4F4 +/* 09AC48 8009A048 25CE6508 */ addiu $t6, %lo(D_80126508) # addiu $t6, $t6, 0x6508 +/* 09AC4C 8009A04C 240D0028 */ li $t5, 40 +/* 09AC50 8009A050 448D2000 */ mtc1 $t5, $f4 +/* 09AC54 8009A054 3C0F8012 */ lui $t7, %hi(D_80126510) # $t7, 0x8012 +/* 09AC58 8009A058 468021A0 */ cvt.s.w $f6, $f4 +/* 09AC5C 8009A05C 3C198012 */ lui $t9, %hi(D_80126518) # $t9, 0x8012 +/* 09AC60 8009A060 3C0B8012 */ lui $t3, %hi(D_80126520) # $t3, 0x8012 +/* 09AC64 8009A064 256B6520 */ addiu $t3, %lo(D_80126520) # addiu $t3, $t3, 0x6520 +/* 09AC68 8009A068 27396518 */ addiu $t9, %lo(D_80126518) # addiu $t9, $t9, 0x6518 +/* 09AC6C 8009A06C 25EF6510 */ addiu $t7, %lo(D_80126510) # addiu $t7, $t7, 0x6510 +/* 09AC70 8009A070 00025040 */ sll $t2, $v0, 1 +/* 09AC74 8009A074 014B6021 */ addu $t4, $t2, $t3 +/* 09AC78 8009A078 004FC021 */ addu $t8, $v0, $t7 +/* 09AC7C 8009A07C 00594821 */ addu $t1, $v0, $t9 +/* 09AC80 8009A080 3C15800E */ lui $s5, %hi(D_800E1E20) # $s5, 0x800e +/* 09AC84 8009A084 3C11800E */ lui $s1, %hi(D_800E1754) # $s1, 0x800e +/* 09AC88 8009A088 26311754 */ addiu $s1, %lo(D_800E1754) # addiu $s1, $s1, 0x1754 +/* 09AC8C 8009A08C 26B51E20 */ addiu $s5, %lo(D_800E1E20) # addiu $s5, $s5, 0x1e20 +/* 09AC90 8009A090 AFA90070 */ sw $t1, 0x70($sp) +/* 09AC94 8009A094 AFB80074 */ sw $t8, 0x74($sp) +/* 09AC98 8009A098 AFAC006C */ sw $t4, 0x6c($sp) +/* 09AC9C 8009A09C E7A60068 */ swc1 $f6, 0x68($sp) +/* 09ACA0 8009A0A0 004EF021 */ addu $fp, $v0, $t6 +/* 09ACA4 8009A0A4 24160004 */ li $s6, 4 +/* 09ACA8 8009A0A8 2414003F */ li $s4, 63 +/* 09ACAC 8009A0AC 27B30088 */ addiu $s3, $sp, 0x88 +.L8009A0B0: +/* 09ACB0 8009A0B0 93C40000 */ lbu $a0, ($fp) +/* 09ACB4 8009A0B4 0C01AC64 */ jal func_8006B190 +/* 09ACB8 8009A0B8 00000000 */ nop +/* 09ACBC 8009A0BC 2443FFFF */ addiu $v1, $v0, -1 +/* 09ACC0 8009A0C0 04600004 */ bltz $v1, .L8009A0D4 +/* 09ACC4 8009A0C4 00604025 */ move $t0, $v1 +/* 09ACC8 8009A0C8 28610005 */ slti $at, $v1, 5 +/* 09ACCC 8009A0CC 14200002 */ bnez $at, .L8009A0D8 +/* 09ACD0 8009A0D0 00000000 */ nop +.L8009A0D4: +/* 09ACD4 8009A0D4 00004025 */ move $t0, $zero +.L8009A0D8: +/* 09ACD8 8009A0D8 93C40000 */ lbu $a0, ($fp) +/* 09ACDC 8009A0DC 0C01AF77 */ jal get_level_name +/* 09ACE0 8009A0E0 AFA800EC */ sw $t0, 0xec($sp) +/* 09ACE4 8009A0E4 904E0000 */ lbu $t6, ($v0) +/* 09ACE8 8009A0E8 8FA800EC */ lw $t0, 0xec($sp) +/* 09ACEC 8009A0EC 11C00013 */ beqz $t6, .L8009A13C +/* 09ACF0 8009A0F0 00008025 */ move $s0, $zero +/* 09ACF4 8009A0F4 90450000 */ lbu $a1, ($v0) +/* 09ACF8 8009A0F8 02602021 */ addu $a0, $s3, $zero +/* 09ACFC 8009A0FC 00403021 */ addu $a2, $v0, $zero +/* 09AD00 8009A100 30A300FF */ andi $v1, $a1, 0xff +.L8009A104: +/* 09AD04 8009A104 28610061 */ slti $at, $v1, 0x61 +/* 09AD08 8009A108 14200005 */ bnez $at, .L8009A120 +/* 09AD0C 8009A10C A0850000 */ sb $a1, ($a0) +/* 09AD10 8009A110 2861007B */ slti $at, $v1, 0x7b +/* 09AD14 8009A114 10200002 */ beqz $at, .L8009A120 +/* 09AD18 8009A118 386F0020 */ xori $t7, $v1, 0x20 +/* 09AD1C 8009A11C A08F0000 */ sb $t7, ($a0) +.L8009A120: +/* 09AD20 8009A120 90C50001 */ lbu $a1, 1($a2) +/* 09AD24 8009A124 26100001 */ addiu $s0, $s0, 1 +/* 09AD28 8009A128 24840001 */ addiu $a0, $a0, 1 +/* 09AD2C 8009A12C 10A00003 */ beqz $a1, .L8009A13C +/* 09AD30 8009A130 24C60001 */ addiu $a2, $a2, 1 +/* 09AD34 8009A134 1614FFF3 */ bne $s0, $s4, .L8009A104 +/* 09AD38 8009A138 30A300FF */ andi $v1, $a1, 0xff +.L8009A13C: +/* 09AD3C 8009A13C 44924000 */ mtc1 $s2, $f8 +/* 09AD40 8009A140 0270C021 */ addu $t8, $s3, $s0 +/* 09AD44 8009A144 A3000000 */ sb $zero, ($t8) +/* 09AD48 8009A148 3C013F40 */ li $at, 0x3F400000 # 0.750000 +/* 09AD4C 8009A14C 46804220 */ cvt.s.w $f8, $f8 +/* 09AD50 8009A150 44815000 */ mtc1 $at, $f10 +/* 09AD54 8009A154 3C013F50 */ li $at, 0x3F500000 # 0.812500 +/* 09AD58 8009A158 0008C880 */ sll $t9, $t0, 2 +/* 09AD5C 8009A15C 3C05800E */ lui $a1, %hi(D_800E16F4) # $a1, 0x800e +/* 09AD60 8009A160 44818000 */ mtc1 $at, $f16 +/* 09AD64 8009A164 00B92821 */ addu $a1, $a1, $t9 +/* 09AD68 8009A168 8CA516F4 */ lw $a1, %lo(D_800E16F4)($a1) +/* 09AD6C 8009A16C 44074000 */ mfc1 $a3, $f8 +/* 09AD70 8009A170 8FA60068 */ lw $a2, 0x68($sp) +/* 09AD74 8009A174 2409FFFF */ li $t1, -1 +/* 09AD78 8009A178 AFA90018 */ sw $t1, 0x18($sp) +/* 09AD7C 8009A17C AFA0001C */ sw $zero, 0x1c($sp) +/* 09AD80 8009A180 00008025 */ move $s0, $zero +/* 09AD84 8009A184 02E02025 */ move $a0, $s7 +/* 09AD88 8009A188 E7AA0010 */ swc1 $f10, 0x10($sp) +/* 09AD8C 8009A18C 0C01E340 */ jal render_texture_rectangle_scaled +/* 09AD90 8009A190 E7B00014 */ swc1 $f16, 0x14($sp) +/* 09AD94 8009A194 240A0034 */ li $t2, 52 +/* 09AD98 8009A198 240B0020 */ li $t3, 32 +/* 09AD9C 8009A19C 240C0050 */ li $t4, 80 +/* 09ADA0 8009A1A0 240D00B0 */ li $t5, 176 +/* 09ADA4 8009A1A4 240E0080 */ li $t6, 128 +/* 09ADA8 8009A1A8 AFAE0028 */ sw $t6, 0x28($sp) +/* 09ADAC 8009A1AC AFAD0024 */ sw $t5, 0x24($sp) +/* 09ADB0 8009A1B0 AFAC0020 */ sw $t4, 0x20($sp) +/* 09ADB4 8009A1B4 AFAB001C */ sw $t3, 0x1c($sp) +/* 09ADB8 8009A1B8 AFAA0010 */ sw $t2, 0x10($sp) +/* 09ADBC 8009A1BC 02E02025 */ move $a0, $s7 +/* 09ADC0 8009A1C0 24050028 */ li $a1, 40 +/* 09ADC4 8009A1C4 02403025 */ move $a2, $s2 +/* 09ADC8 8009A1C8 240700F0 */ li $a3, 240 +/* 09ADCC 8009A1CC AFB60014 */ sw $s6, 0x14($sp) +/* 09ADD0 8009A1D0 0C0203A4 */ jal func_80080E90 +/* 09ADD4 8009A1D4 AFB60018 */ sw $s6, 0x18($sp) +/* 09ADD8 8009A1D8 3C188012 */ lui $t8, %hi(D_80126498) # $t8, 0x8012 +/* 09ADDC 8009A1DC 8F186498 */ lw $t8, %lo(D_80126498)($t8) +/* 09ADE0 8009A1E0 8FAF00E4 */ lw $t7, 0xe4($sp) +/* 09ADE4 8009A1E4 8FA200D8 */ lw $v0, 0xd8($sp) +/* 09ADE8 8009A1E8 15F8000D */ bne $t7, $t8, .L8009A220 +/* 09ADEC 8009A1EC 02E02025 */ move $a0, $s7 +/* 09ADF0 8009A1F0 24190034 */ li $t9, 52 +/* 09ADF4 8009A1F4 AFB90010 */ sw $t9, 0x10($sp) +/* 09ADF8 8009A1F8 24050028 */ li $a1, 40 +/* 09ADFC 8009A1FC 02403025 */ move $a2, $s2 +/* 09AE00 8009A200 240700F0 */ li $a3, 240 +/* 09AE04 8009A204 AFB60014 */ sw $s6, 0x14($sp) +/* 09AE08 8009A208 AFB60018 */ sw $s6, 0x18($sp) +/* 09AE0C 8009A20C AFA2001C */ sw $v0, 0x1c($sp) +/* 09AE10 8009A210 AFA20020 */ sw $v0, 0x20($sp) +/* 09AE14 8009A214 AFA20024 */ sw $v0, 0x24($sp) +/* 09AE18 8009A218 0C0203A4 */ jal func_80080E90 +/* 09AE1C 8009A21C AFA20028 */ sw $v0, 0x28($sp) +.L8009A220: +/* 09AE20 8009A220 240900FF */ li $t1, 255 +/* 09AE24 8009A224 AFA90010 */ sw $t1, 0x10($sp) +/* 09AE28 8009A228 00002025 */ move $a0, $zero +/* 09AE2C 8009A22C 00002825 */ move $a1, $zero +/* 09AE30 8009A230 00003025 */ move $a2, $zero +/* 09AE34 8009A234 0C0310E1 */ jal set_text_colour +/* 09AE38 8009A238 240700FF */ li $a3, 255 +/* 09AE3C 8009A23C 00105040 */ sll $t2, $s0, 1 +.L8009A240: +/* 09AE40 8009A240 02AA1021 */ addu $v0, $s5, $t2 +/* 09AE44 8009A244 804B0000 */ lb $t3, ($v0) +/* 09AE48 8009A248 804D0001 */ lb $t5, 1($v0) +/* 09AE4C 8009A24C 862C0000 */ lh $t4, ($s1) +/* 09AE50 8009A250 862F0002 */ lh $t7, 2($s1) +/* 09AE54 8009A254 2418000C */ li $t8, 12 +/* 09AE58 8009A258 01B27021 */ addu $t6, $t5, $s2 +/* 09AE5C 8009A25C 016C2821 */ addu $a1, $t3, $t4 +/* 09AE60 8009A260 24A50028 */ addiu $a1, $a1, 0x28 +/* 09AE64 8009A264 AFB80010 */ sw $t8, 0x10($sp) +/* 09AE68 8009A268 02E02025 */ move $a0, $s7 +/* 09AE6C 8009A26C 02603825 */ move $a3, $s3 +/* 09AE70 8009A270 0C031110 */ jal draw_text +/* 09AE74 8009A274 01CF3021 */ addu $a2, $t6, $t7 +/* 09AE78 8009A278 26100001 */ addiu $s0, $s0, 1 +/* 09AE7C 8009A27C 1616FFF0 */ bne $s0, $s6, .L8009A240 +/* 09AE80 8009A280 00105040 */ sll $t2, $s0, 1 +/* 09AE84 8009A284 241900FF */ li $t9, 255 +/* 09AE88 8009A288 AFB90010 */ sw $t9, 0x10($sp) +/* 09AE8C 8009A28C 240400C8 */ li $a0, 200 +/* 09AE90 8009A290 240500E4 */ li $a1, 228 +/* 09AE94 8009A294 24060050 */ li $a2, 80 +/* 09AE98 8009A298 0C0310E1 */ jal set_text_colour +/* 09AE9C 8009A29C 240700FF */ li $a3, 255 +/* 09AEA0 8009A2A0 86250000 */ lh $a1, ($s1) +/* 09AEA4 8009A2A4 86290002 */ lh $t1, 2($s1) +/* 09AEA8 8009A2A8 240A000C */ li $t2, 12 +/* 09AEAC 8009A2AC AFAA0010 */ sw $t2, 0x10($sp) +/* 09AEB0 8009A2B0 02E02025 */ move $a0, $s7 +/* 09AEB4 8009A2B4 02603825 */ move $a3, $s3 +/* 09AEB8 8009A2B8 24A50028 */ addiu $a1, $a1, 0x28 +/* 09AEBC 8009A2BC 0C031110 */ jal draw_text +/* 09AEC0 8009A2C0 01323021 */ addu $a2, $t1, $s2 +/* 09AEC4 8009A2C4 8FAB0074 */ lw $t3, 0x74($sp) +/* 09AEC8 8009A2C8 3C05800E */ lui $a1, %hi(D_800E0AF0) # $a1, 0x800e +/* 09AECC 8009A2CC 916C0000 */ lbu $t4, ($t3) +/* 09AED0 8009A2D0 86260004 */ lh $a2, 4($s1) +/* 09AED4 8009A2D4 000C6880 */ sll $t5, $t4, 2 +/* 09AED8 8009A2D8 862E0006 */ lh $t6, 6($s1) +/* 09AEDC 8009A2DC 00AD2821 */ addu $a1, $a1, $t5 +/* 09AEE0 8009A2E0 8CA50AF0 */ lw $a1, %lo(D_800E0AF0)($a1) +/* 09AEE4 8009A2E4 240F00FF */ li $t7, 255 +/* 09AEE8 8009A2E8 241800FF */ li $t8, 255 +/* 09AEEC 8009A2EC 241900FF */ li $t9, 255 +/* 09AEF0 8009A2F0 240900FF */ li $t1, 255 +/* 09AEF4 8009A2F4 AFA9001C */ sw $t1, 0x1c($sp) +/* 09AEF8 8009A2F8 AFB90018 */ sw $t9, 0x18($sp) +/* 09AEFC 8009A2FC AFB80014 */ sw $t8, 0x14($sp) +/* 09AF00 8009A300 AFAF0010 */ sw $t7, 0x10($sp) +/* 09AF04 8009A304 02E02025 */ move $a0, $s7 +/* 09AF08 8009A308 24C60028 */ addiu $a2, $a2, 0x28 +/* 09AF0C 8009A30C 0C01E2AE */ jal render_textured_rectangle +/* 09AF10 8009A310 01D23821 */ addu $a3, $t6, $s2 +/* 09AF14 8009A314 8FAA0070 */ lw $t2, 0x70($sp) +/* 09AF18 8009A318 24010001 */ li $at, 1 +/* 09AF1C 8009A31C 91420000 */ lbu $v0, ($t2) +/* 09AF20 8009A320 02E02025 */ move $a0, $s7 +/* 09AF24 8009A324 10410007 */ beq $v0, $at, .L8009A344 +/* 09AF28 8009A328 240FFFFF */ li $t7, -1 +/* 09AF2C 8009A32C 24010002 */ li $at, 2 +/* 09AF30 8009A330 10410007 */ beq $v0, $at, .L8009A350 +/* 09AF34 8009A334 3C05800E */ lui $a1, %hi(gRaceSelectionPlaneTex) # $a1, 0x800e +/* 09AF38 8009A338 3C05800E */ lui $a1, %hi(gRaceSelectionCarTex) # $a1, 0x800e +/* 09AF3C 8009A33C 10000005 */ b .L8009A354 +/* 09AF40 8009A340 24A5045C */ addiu $a1, %lo(gRaceSelectionCarTex) # addiu $a1, $a1, 0x45c +.L8009A344: +/* 09AF44 8009A344 3C05800E */ lui $a1, %hi(gRaceSelectionHoverTex) # $a1, 0x800e +/* 09AF48 8009A348 10000002 */ b .L8009A354 +/* 09AF4C 8009A34C 24A50474 */ addiu $a1, %lo(gRaceSelectionHoverTex) # addiu $a1, $a1, 0x474 +.L8009A350: +/* 09AF50 8009A350 24A5048C */ addiu $a1, %lo(gRaceSelectionPlaneTex) # addiu $a1, $a1, 0x48c +.L8009A354: +/* 09AF54 8009A354 862B0008 */ lh $t3, 8($s1) +/* 09AF58 8009A358 862D000A */ lh $t5, 0xa($s1) +/* 09AF5C 8009A35C 256C0028 */ addiu $t4, $t3, 0x28 +/* 09AF60 8009A360 01B27021 */ addu $t6, $t5, $s2 +/* 09AF64 8009A364 448E2000 */ mtc1 $t6, $f4 +/* 09AF68 8009A368 448C9000 */ mtc1 $t4, $f18 +/* 09AF6C 8009A36C 46802120 */ cvt.s.w $f4, $f4 +/* 09AF70 8009A370 3C013F20 */ li $at, 0x3F200000 # 0.625000 +/* 09AF74 8009A374 44810000 */ mtc1 $at, $f0 +/* 09AF78 8009A378 468094A0 */ cvt.s.w $f18, $f18 +/* 09AF7C 8009A37C 44072000 */ mfc1 $a3, $f4 +/* 09AF80 8009A380 AFAF0018 */ sw $t7, 0x18($sp) +/* 09AF84 8009A384 44069000 */ mfc1 $a2, $f18 +/* 09AF88 8009A388 AFA0001C */ sw $zero, 0x1c($sp) +/* 09AF8C 8009A38C E7A00010 */ swc1 $f0, 0x10($sp) +/* 09AF90 8009A390 0C01E340 */ jal render_texture_rectangle_scaled +/* 09AF94 8009A394 E7A00014 */ swc1 $f0, 0x14($sp) +/* 09AF98 8009A398 0C01ECF4 */ jal func_8007B3D0 +/* 09AF9C 8009A39C 02E02025 */ move $a0, $s7 +/* 09AFA0 8009A3A0 8638000C */ lh $t8, 0xc($s1) +/* 09AFA4 8009A3A4 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e +/* 09AFA8 8009A3A8 2719FF88 */ addiu $t9, $t8, -0x78 +/* 09AFAC 8009A3AC 44993000 */ mtc1 $t9, $f6 +/* 09AFB0 8009A3B0 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 +/* 09AFB4 8009A3B4 46803220 */ cvt.s.w $f8, $f6 +/* 09AFB8 8009A3B8 8C490000 */ lw $t1, ($v0) +/* 09AFBC 8009A3BC 3C01800F */ lui $at, %hi(D_800E8570) # $at, 0x800f +/* 09AFC0 8009A3C0 E52800EC */ swc1 $f8, 0xec($t1) +/* 09AFC4 8009A3C4 862A000E */ lh $t2, 0xe($s1) +/* 09AFC8 8009A3C8 8FAD00D0 */ lw $t5, 0xd0($sp) +/* 09AFCC 8009A3CC 000A5823 */ negu $t3, $t2 +/* 09AFD0 8009A3D0 01726023 */ subu $t4, $t3, $s2 +/* 09AFD4 8009A3D4 018D7021 */ addu $t6, $t4, $t5 +/* 09AFD8 8009A3D8 25CF0078 */ addiu $t7, $t6, 0x78 +/* 09AFDC 8009A3DC 448F5000 */ mtc1 $t7, $f10 +/* 09AFE0 8009A3E0 8C580000 */ lw $t8, ($v0) +/* 09AFE4 8009A3E4 46805420 */ cvt.s.w $f16, $f10 +/* 09AFE8 8009A3E8 24040007 */ li $a0, 7 +/* 09AFEC 8009A3EC E71000F0 */ swc1 $f16, 0xf0($t8) +/* 09AFF0 8009A3F0 8C590000 */ lw $t9, ($v0) +/* 09AFF4 8009A3F4 C4328570 */ lwc1 $f18, %lo(D_800E8570)($at) +/* 09AFF8 8009A3F8 0C027298 */ jal func_8009CA60 +/* 09AFFC 8009A3FC E73200E8 */ swc1 $f18, 0xe8($t9) +/* 09B000 8009A400 24090080 */ li $t1, 128 +/* 09B004 8009A404 3C01800E */ lui $at, %hi(sMenuGuiOpacity) # $at, 0x800e +/* 09B008 8009A408 AC29F764 */ sw $t1, %lo(sMenuGuiOpacity)($at) +/* 09B00C 8009A40C 862B0012 */ lh $t3, 0x12($s1) +/* 09B010 8009A410 8FAA006C */ lw $t2, 0x6c($sp) +/* 09B014 8009A414 8FAE00D0 */ lw $t6, 0xd0($sp) +/* 09B018 8009A418 000B6023 */ negu $t4, $t3 +/* 09B01C 8009A41C 95440000 */ lhu $a0, ($t2) +/* 09B020 8009A420 86250010 */ lh $a1, 0x10($s1) +/* 09B024 8009A424 01926823 */ subu $t5, $t4, $s2 +/* 09B028 8009A428 01AE3021 */ addu $a2, $t5, $t6 +/* 09B02C 8009A42C 24C60077 */ addiu $a2, $a2, 0x77 +/* 09B030 8009A430 AFA00018 */ sw $zero, 0x18($sp) +/* 09B034 8009A434 AFA00014 */ sw $zero, 0x14($sp) +/* 09B038 8009A438 AFA00010 */ sw $zero, 0x10($sp) +/* 09B03C 8009A43C 00003825 */ move $a3, $zero +/* 09B040 8009A440 0C020600 */ jal show_timestamp +/* 09B044 8009A444 24A5FF89 */ addiu $a1, $a1, -0x77 +/* 09B048 8009A448 240F00FF */ li $t7, 255 +/* 09B04C 8009A44C 3C01800E */ lui $at, %hi(sMenuGuiOpacity) # $at, 0x800e +/* 09B050 8009A450 AC2FF764 */ sw $t7, %lo(sMenuGuiOpacity)($at) +/* 09B054 8009A454 86390012 */ lh $t9, 0x12($s1) +/* 09B058 8009A458 8FB8006C */ lw $t8, 0x6c($sp) +/* 09B05C 8009A45C 8FAB00D0 */ lw $t3, 0xd0($sp) +/* 09B060 8009A460 00194823 */ negu $t1, $t9 +/* 09B064 8009A464 97040000 */ lhu $a0, ($t8) +/* 09B068 8009A468 86250010 */ lh $a1, 0x10($s1) +/* 09B06C 8009A46C 01325023 */ subu $t2, $t1, $s2 +/* 09B070 8009A470 240C00C0 */ li $t4, 192 +/* 09B074 8009A474 240D00FF */ li $t5, 255 +/* 09B078 8009A478 014B3021 */ addu $a2, $t2, $t3 +/* 09B07C 8009A47C 24C60079 */ addiu $a2, $a2, 0x79 +/* 09B080 8009A480 AFAD0014 */ sw $t5, 0x14($sp) +/* 09B084 8009A484 AFAC0010 */ sw $t4, 0x10($sp) +/* 09B088 8009A488 AFA00018 */ sw $zero, 0x18($sp) +/* 09B08C 8009A48C 240700FF */ li $a3, 255 +/* 09B090 8009A490 0C020600 */ jal show_timestamp +/* 09B094 8009A494 24A5FF87 */ addiu $a1, $a1, -0x79 +/* 09B098 8009A498 8FB80074 */ lw $t8, 0x74($sp) +/* 09B09C 8009A49C 8FAE00E4 */ lw $t6, 0xe4($sp) +/* 09B0A0 8009A4A0 27190001 */ addiu $t9, $t8, 1 +/* 09B0A4 8009A4A4 3C188012 */ lui $t8, %hi(D_801264D4) # $t8, 0x8012 +/* 09B0A8 8009A4A8 8FA90070 */ lw $t1, 0x70($sp) +/* 09B0AC 8009A4AC 8FAB006C */ lw $t3, 0x6c($sp) +/* 09B0B0 8009A4B0 8FAD00E8 */ lw $t5, 0xe8($sp) +/* 09B0B4 8009A4B4 8F1864D4 */ lw $t8, %lo(D_801264D4)($t8) +/* 09B0B8 8009A4B8 25CF0001 */ addiu $t7, $t6, 1 +/* 09B0BC 8009A4BC 252A0001 */ addiu $t2, $t1, 1 +/* 09B0C0 8009A4C0 256C0002 */ addiu $t4, $t3, 2 +/* 09B0C4 8009A4C4 25AEFFFF */ addiu $t6, $t5, -1 +/* 09B0C8 8009A4C8 01F8082A */ slt $at, $t7, $t8 +/* 09B0CC 8009A4CC AFAC006C */ sw $t4, 0x6c($sp) +/* 09B0D0 8009A4D0 AFAA0070 */ sw $t2, 0x70($sp) +/* 09B0D4 8009A4D4 AFAF00E4 */ sw $t7, 0xe4($sp) +/* 09B0D8 8009A4D8 AFB90074 */ sw $t9, 0x74($sp) +/* 09B0DC 8009A4DC 27DE0001 */ addiu $fp, $fp, 1 +/* 09B0E0 8009A4E0 AFAE00E8 */ sw $t6, 0xe8($sp) +/* 09B0E4 8009A4E4 10200003 */ beqz $at, .L8009A4F4 +/* 09B0E8 8009A4E8 26520036 */ addiu $s2, $s2, 0x36 +/* 09B0EC 8009A4EC 1DC0FEF0 */ bgtz $t6, .L8009A0B0 +/* 09B0F0 8009A4F0 00000000 */ nop +.L8009A4F4: +/* 09B0F4 8009A4F4 3C108012 */ lui $s0, %hi(D_801263E0) # $s0, 0x8012 +/* 09B0F8 8009A4F8 8FB900D8 */ lw $t9, 0xd8($sp) +/* 09B0FC 8009A4FC 261063E0 */ addiu $s0, %lo(D_801263E0) # addiu $s0, $s0, 0x63e0 +/* 09B100 8009A500 8E0A0000 */ lw $t2, ($s0) +/* 09B104 8009A504 332900FF */ andi $t1, $t9, 0xff +/* 09B108 8009A508 19400063 */ blez $t2, .L8009A698 +/* 09B10C 8009A50C AFA900D8 */ sw $t1, 0xd8($sp) +/* 09B110 8009A510 0C0315B4 */ jal func_800C56D0 +/* 09B114 8009A514 24040007 */ li $a0, 7 +/* 09B118 8009A518 0C031525 */ jal assign_dialogue_box_id +/* 09B11C 8009A51C 24040007 */ li $a0, 7 +/* 09B120 8009A520 240B008A */ li $t3, 138 +/* 09B124 8009A524 AFAB0010 */ sw $t3, 0x10($sp) +/* 09B128 8009A528 24040007 */ li $a0, 7 +/* 09B12C 8009A52C 24050068 */ li $a1, 104 +/* 09B130 8009A530 24060066 */ li $a2, 102 +/* 09B134 8009A534 0C0313B7 */ jal set_current_dialogue_box_coords +/* 09B138 8009A538 240700D8 */ li $a3, 216 +/* 09B13C 8009A53C 240C00C0 */ li $t4, 192 +/* 09B140 8009A540 AFAC0010 */ sw $t4, 0x10($sp) +/* 09B144 8009A544 24040007 */ li $a0, 7 +/* 09B148 8009A548 00002825 */ move $a1, $zero +/* 09B14C 8009A54C 00003025 */ move $a2, $zero +/* 09B150 8009A550 0C0313EF */ jal set_current_dialogue_background_colour +/* 09B154 8009A554 00003825 */ move $a3, $zero +/* 09B158 8009A558 24040007 */ li $a0, 7 +/* 09B15C 8009A55C 0C0313DF */ jal set_dialogue_font +/* 09B160 8009A560 00002825 */ move $a1, $zero +/* 09B164 8009A564 24040007 */ li $a0, 7 +/* 09B168 8009A568 00002825 */ move $a1, $zero +/* 09B16C 8009A56C 00003025 */ move $a2, $zero +/* 09B170 8009A570 00003825 */ move $a3, $zero +/* 09B174 8009A574 0C031414 */ jal set_current_text_background_colour +/* 09B178 8009A578 AFA00010 */ sw $zero, 0x10($sp) +/* 09B17C 8009A57C 8E0D0000 */ lw $t5, ($s0) +/* 09B180 8009A580 24010001 */ li $at, 1 +/* 09B184 8009A584 15A1000C */ bne $t5, $at, .L8009A5B8 +/* 09B188 8009A588 24040007 */ li $a0, 7 +/* 09B18C 8009A58C 8FAF00D8 */ lw $t7, 0xd8($sp) +/* 09B190 8009A590 241800FF */ li $t8, 255 +/* 09B194 8009A594 AFB80014 */ sw $t8, 0x14($sp) +/* 09B198 8009A598 24040007 */ li $a0, 7 +/* 09B19C 8009A59C 240500FF */ li $a1, 255 +/* 09B1A0 8009A5A0 240600FF */ li $a2, 255 +/* 09B1A4 8009A5A4 240700FF */ li $a3, 255 +/* 09B1A8 8009A5A8 0C031400 */ jal set_current_text_colour +/* 09B1AC 8009A5AC AFAF0010 */ sw $t7, 0x10($sp) +/* 09B1B0 8009A5B0 10000008 */ b .L8009A5D4 +/* 09B1B4 8009A5B4 00000000 */ nop +.L8009A5B8: +/* 09B1B8 8009A5B8 240E00FF */ li $t6, 255 +/* 09B1BC 8009A5BC AFAE0014 */ sw $t6, 0x14($sp) +/* 09B1C0 8009A5C0 240500FF */ li $a1, 255 +/* 09B1C4 8009A5C4 240600FF */ li $a2, 255 +/* 09B1C8 8009A5C8 240700FF */ li $a3, 255 +/* 09B1CC 8009A5CC 0C031400 */ jal set_current_text_colour +/* 09B1D0 8009A5D0 AFA00010 */ sw $zero, 0x10($sp) +.L8009A5D4: +/* 09B1D4 8009A5D4 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e +/* 09B1D8 8009A5D8 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) +/* 09B1DC 8009A5DC 24090001 */ li $t1, 1 +/* 09B1E0 8009A5E0 8F270150 */ lw $a3, 0x150($t9) +/* 09B1E4 8009A5E4 240A000C */ li $t2, 12 +/* 09B1E8 8009A5E8 AFAA0014 */ sw $t2, 0x14($sp) +/* 09B1EC 8009A5EC AFA90010 */ sw $t1, 0x10($sp) +/* 09B1F0 8009A5F0 24040007 */ li $a0, 7 +/* 09B1F4 8009A5F4 24058000 */ li $a1, -32768 +/* 09B1F8 8009A5F8 0C03145A */ jal render_dialogue_text +/* 09B1FC 8009A5FC 2406000C */ li $a2, 12 +/* 09B200 8009A600 8E0B0000 */ lw $t3, ($s0) +/* 09B204 8009A604 24010002 */ li $at, 2 +/* 09B208 8009A608 1561000C */ bne $t3, $at, .L8009A63C +/* 09B20C 8009A60C 24040007 */ li $a0, 7 +/* 09B210 8009A610 8FAC00D8 */ lw $t4, 0xd8($sp) +/* 09B214 8009A614 240D00FF */ li $t5, 255 +/* 09B218 8009A618 AFAD0014 */ sw $t5, 0x14($sp) +/* 09B21C 8009A61C 24040007 */ li $a0, 7 +/* 09B220 8009A620 240500FF */ li $a1, 255 +/* 09B224 8009A624 240600FF */ li $a2, 255 +/* 09B228 8009A628 240700FF */ li $a3, 255 +/* 09B22C 8009A62C 0C031400 */ jal set_current_text_colour +/* 09B230 8009A630 AFAC0010 */ sw $t4, 0x10($sp) +/* 09B234 8009A634 10000008 */ b .L8009A658 +/* 09B238 8009A638 00000000 */ nop +.L8009A63C: +/* 09B23C 8009A63C 240F00FF */ li $t7, 255 +/* 09B240 8009A640 AFAF0014 */ sw $t7, 0x14($sp) +/* 09B244 8009A644 240500FF */ li $a1, 255 +/* 09B248 8009A648 240600FF */ li $a2, 255 +/* 09B24C 8009A64C 240700FF */ li $a3, 255 +/* 09B250 8009A650 0C031400 */ jal set_current_text_colour +/* 09B254 8009A654 AFA00010 */ sw $zero, 0x10($sp) +.L8009A658: +/* 09B258 8009A658 3C18800E */ lui $t8, %hi(gMenuText) # $t8, 0x800e +/* 09B25C 8009A65C 8F18F4A0 */ lw $t8, %lo(gMenuText)($t8) +/* 09B260 8009A660 240E0001 */ li $t6, 1 +/* 09B264 8009A664 8F070154 */ lw $a3, 0x154($t8) +/* 09B268 8009A668 2419000C */ li $t9, 12 +/* 09B26C 8009A66C AFB90014 */ sw $t9, 0x14($sp) +/* 09B270 8009A670 AFAE0010 */ sw $t6, 0x10($sp) +/* 09B274 8009A674 24040007 */ li $a0, 7 +/* 09B278 8009A678 24058000 */ li $a1, -32768 +/* 09B27C 8009A67C 0C03145A */ jal render_dialogue_text +/* 09B280 8009A680 2406001C */ li $a2, 28 +/* 09B284 8009A684 02E02025 */ move $a0, $s7 +/* 09B288 8009A688 00002825 */ move $a1, $zero +/* 09B28C 8009A68C 00003025 */ move $a2, $zero +/* 09B290 8009A690 0C0316D6 */ jal render_dialogue_box +/* 09B294 8009A694 24070007 */ li $a3, 7 +.L8009A698: +/* 09B298 8009A698 3C098012 */ lui $t1, %hi(gOptionBlinkTimer) # $t1, 0x8012 +/* 09B29C 8009A69C 8D2963BC */ lw $t1, %lo(gOptionBlinkTimer)($t1) +/* 09B2A0 8009A6A0 3C028012 */ lui $v0, %hi(D_801263D8) # $v0, 0x8012 +/* 09B2A4 8009A6A4 312A0010 */ andi $t2, $t1, 0x10 +/* 09B2A8 8009A6A8 1140003E */ beqz $t2, .L8009A7A4 +/* 09B2AC 8009A6AC 3C0B8012 */ lui $t3, %hi(D_801264D4) # $t3, 0x8012 +/* 09B2B0 8009A6B0 8C4263D8 */ lw $v0, %lo(D_801263D8)($v0) +/* 09B2B4 8009A6B4 8D6B64D4 */ lw $t3, %lo(D_801264D4)($t3) +/* 09B2B8 8009A6B8 244C0003 */ addiu $t4, $v0, 3 +/* 09B2BC 8009A6BC 018B082A */ slt $at, $t4, $t3 +/* 09B2C0 8009A6C0 1020001C */ beqz $at, .L8009A734 +/* 09B2C4 8009A6C4 3C10800E */ lui $s0, %hi(gMenuSelectionArrowDown) # $s0, 0x800e +/* 09B2C8 8009A6C8 2610043C */ addiu $s0, %lo(gMenuSelectionArrowDown) # addiu $s0, $s0, 0x43c +/* 09B2CC 8009A6CC 240D0080 */ li $t5, 128 +/* 09B2D0 8009A6D0 AFAD001C */ sw $t5, 0x1c($sp) +/* 09B2D4 8009A6D4 02002825 */ move $a1, $s0 +/* 09B2D8 8009A6D8 02E02025 */ move $a0, $s7 +/* 09B2DC 8009A6DC 240600A1 */ li $a2, 161 +/* 09B2E0 8009A6E0 26470003 */ addiu $a3, $s2, 3 +/* 09B2E4 8009A6E4 AFA00010 */ sw $zero, 0x10($sp) +/* 09B2E8 8009A6E8 AFA00014 */ sw $zero, 0x14($sp) +/* 09B2EC 8009A6EC 0C01E2AE */ jal render_textured_rectangle +/* 09B2F0 8009A6F0 AFA00018 */ sw $zero, 0x18($sp) +/* 09B2F4 8009A6F4 240F00FF */ li $t7, 255 +/* 09B2F8 8009A6F8 241800FF */ li $t8, 255 +/* 09B2FC 8009A6FC 240E00FF */ li $t6, 255 +/* 09B300 8009A700 241900FF */ li $t9, 255 +/* 09B304 8009A704 AFB9001C */ sw $t9, 0x1c($sp) +/* 09B308 8009A708 AFAE0018 */ sw $t6, 0x18($sp) +/* 09B30C 8009A70C AFB80014 */ sw $t8, 0x14($sp) +/* 09B310 8009A710 AFAF0010 */ sw $t7, 0x10($sp) +/* 09B314 8009A714 02E02025 */ move $a0, $s7 +/* 09B318 8009A718 02002825 */ move $a1, $s0 +/* 09B31C 8009A71C 2406009F */ li $a2, 159 +/* 09B320 8009A720 0C01E2AE */ jal render_textured_rectangle +/* 09B324 8009A724 26470001 */ addiu $a3, $s2, 1 +/* 09B328 8009A728 3C028012 */ lui $v0, %hi(D_801263D8) # $v0, 0x8012 +/* 09B32C 8009A72C 8C4263D8 */ lw $v0, %lo(D_801263D8)($v0) +/* 09B330 8009A730 00000000 */ nop +.L8009A734: +/* 09B334 8009A734 18400019 */ blez $v0, .L8009A79C +/* 09B338 8009A738 3C10800E */ lui $s0, %hi(gMenuSelectionArrowUp) # $s0, 0x800e +/* 09B33C 8009A73C 2610041C */ addiu $s0, %lo(gMenuSelectionArrowUp) # addiu $s0, $s0, 0x41c +/* 09B340 8009A740 24090080 */ li $t1, 128 +/* 09B344 8009A744 AFA9001C */ sw $t1, 0x1c($sp) +/* 09B348 8009A748 02002825 */ move $a1, $s0 +/* 09B34C 8009A74C 02E02025 */ move $a0, $s7 +/* 09B350 8009A750 240600A1 */ li $a2, 161 +/* 09B354 8009A754 24070036 */ li $a3, 54 +/* 09B358 8009A758 AFA00010 */ sw $zero, 0x10($sp) +/* 09B35C 8009A75C AFA00014 */ sw $zero, 0x14($sp) +/* 09B360 8009A760 0C01E2AE */ jal render_textured_rectangle +/* 09B364 8009A764 AFA00018 */ sw $zero, 0x18($sp) +/* 09B368 8009A768 240A00FF */ li $t2, 255 +/* 09B36C 8009A76C 240B00FF */ li $t3, 255 +/* 09B370 8009A770 240C00FF */ li $t4, 255 +/* 09B374 8009A774 240D00FF */ li $t5, 255 +/* 09B378 8009A778 AFAD001C */ sw $t5, 0x1c($sp) +/* 09B37C 8009A77C AFAC0018 */ sw $t4, 0x18($sp) +/* 09B380 8009A780 AFAB0014 */ sw $t3, 0x14($sp) +/* 09B384 8009A784 AFAA0010 */ sw $t2, 0x10($sp) +/* 09B388 8009A788 02E02025 */ move $a0, $s7 +/* 09B38C 8009A78C 02002825 */ move $a1, $s0 +/* 09B390 8009A790 2406009F */ li $a2, 159 +/* 09B394 8009A794 0C01E2AE */ jal render_textured_rectangle +/* 09B398 8009A798 24070034 */ li $a3, 52 +.L8009A79C: +/* 09B39C 8009A79C 0C01ECF4 */ jal func_8007B3D0 +/* 09B3A0 8009A7A0 02E02025 */ move $a0, $s7 +.L8009A7A4: +/* 09B3A4 8009A7A4 8FBF005C */ lw $ra, 0x5c($sp) +.L8009A7A8: +/* 09B3A8 8009A7A8 8FB00038 */ lw $s0, 0x38($sp) +/* 09B3AC 8009A7AC 8FB1003C */ lw $s1, 0x3c($sp) +/* 09B3B0 8009A7B0 8FB20040 */ lw $s2, 0x40($sp) +/* 09B3B4 8009A7B4 8FB30044 */ lw $s3, 0x44($sp) +/* 09B3B8 8009A7B8 8FB40048 */ lw $s4, 0x48($sp) +/* 09B3BC 8009A7BC 8FB5004C */ lw $s5, 0x4c($sp) +/* 09B3C0 8009A7C0 8FB60050 */ lw $s6, 0x50($sp) +/* 09B3C4 8009A7C4 8FB70054 */ lw $s7, 0x54($sp) +/* 09B3C8 8009A7C8 8FBE0058 */ lw $fp, 0x58($sp) +/* 09B3CC 8009A7CC 03E00008 */ jr $ra +/* 09B3D0 8009A7D0 27BD00F0 */ addiu $sp, $sp, 0xf0 + diff --git a/asm/non_matchings/menu/menu_audio_options_loop.s b/asm/non_matchings/menu/menu_audio_options_loop.s index 4ad5f2b3..f4fbe0a0 100644 --- a/asm/non_matchings/menu/menu_audio_options_loop.s +++ b/asm/non_matchings/menu/menu_audio_options_loop.s @@ -1,6 +1,6 @@ glabel menu_audio_options_loop -/* 085874 80084C74 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 085878 80084C78 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc +/* 085874 80084C74 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 085878 80084C78 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc /* 08587C 80084C7C 8C6E0000 */ lw $t6, ($v1) /* 085880 80084C80 3C09800E */ lui $t1, %hi(gMenuDelay) # $t1, 0x800e /* 085884 80084C84 2529F47C */ addiu $t1, %lo(gMenuDelay) # addiu $t1, $t1, -0xb84 diff --git a/asm/non_matchings/menu/menu_credits_loop.s b/asm/non_matchings/menu/menu_credits_loop.s index 5d15dfd2..f5940adf 100644 --- a/asm/non_matchings/menu/menu_credits_loop.s +++ b/asm/non_matchings/menu/menu_credits_loop.s @@ -1,687 +1,687 @@ -.late_rodata -glabel jpt_800E8574 -.word L8009BA98, L8009BAD8, L8009BB08, L8009BB48, L8009BB9C - -.text -glabel menu_credits_loop -/* 09BF2C 8009B32C 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 09BF30 8009B330 AFBF0054 */ sw $ra, 0x54($sp) -/* 09BF34 8009B334 AFA40088 */ sw $a0, 0x88($sp) -/* 09BF38 8009B338 AFBE0050 */ sw $fp, 0x50($sp) -/* 09BF3C 8009B33C AFB7004C */ sw $s7, 0x4c($sp) -/* 09BF40 8009B340 AFB60048 */ sw $s6, 0x48($sp) -/* 09BF44 8009B344 AFB50044 */ sw $s5, 0x44($sp) -/* 09BF48 8009B348 AFB40040 */ sw $s4, 0x40($sp) -/* 09BF4C 8009B34C AFB3003C */ sw $s3, 0x3c($sp) -/* 09BF50 8009B350 AFB20038 */ sw $s2, 0x38($sp) -/* 09BF54 8009B354 AFB10034 */ sw $s1, 0x34($sp) -/* 09BF58 8009B358 AFB00030 */ sw $s0, 0x30($sp) -/* 09BF5C 8009B35C E7B50028 */ swc1 $f21, 0x28($sp) -/* 09BF60 8009B360 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 09BF64 8009B364 AFA00068 */ sw $zero, 0x68($sp) -/* 09BF68 8009B368 0C0078A7 */ jal get_misc_asset -/* 09BF6C 8009B36C 2404001C */ li $a0, 28 -/* 09BF70 8009B370 AFA2005C */ sw $v0, 0x5c($sp) -/* 09BF74 8009B374 0C0078A7 */ jal get_misc_asset -/* 09BF78 8009B378 24040045 */ li $a0, 69 -/* 09BF7C 8009B37C 0C031CFC */ jal tick_thread30 -/* 09BF80 8009B380 AFA20060 */ sw $v0, 0x60($sp) -/* 09BF84 8009B384 3C0E800E */ lui $t6, %hi(gMenuDelay) # $t6, 0x800e -/* 09BF88 8009B388 8DCEF47C */ lw $t6, %lo(gMenuDelay)($t6) -/* 09BF8C 8009B38C 00000000 */ nop -/* 09BF90 8009B390 15C00007 */ bnez $t6, .L8009B3B0 -/* 09BF94 8009B394 00000000 */ nop -/* 09BF98 8009B398 0C030060 */ jal func_800C0180 -/* 09BF9C 8009B39C 00000000 */ nop -/* 09BFA0 8009B3A0 0C030076 */ jal func_800C01D8 -/* 09BFA4 8009B3A4 00002025 */ move $a0, $zero -/* 09BFA8 8009B3A8 0C03005C */ jal func_800C0170 -/* 09BFAC 8009B3AC 00000000 */ nop -.L8009B3B0: -/* 09BFB0 8009B3B0 3C0F8000 */ lui $t7, %hi(osTvType) # $t7, 0x8000 -/* 09BFB4 8009B3B4 8DEF0300 */ lw $t7, %lo(osTvType)($t7) -/* 09BFB8 8009B3B8 00002025 */ move $a0, $zero -/* 09BFBC 8009B3BC 15E0000C */ bnez $t7, .L8009B3F0 -/* 09BFC0 8009B3C0 24050028 */ li $a1, 40 -/* 09BFC4 8009B3C4 3C188012 */ lui $t8, %hi(D_801263D8) # $t8, 0x8012 -/* 09BFC8 8009B3C8 8F1863D8 */ lw $t8, %lo(D_801263D8)($t8) -/* 09BFCC 8009B3CC 00002025 */ move $a0, $zero -/* 09BFD0 8009B3D0 0018C8C0 */ sll $t9, $t8, 3 -/* 09BFD4 8009B3D4 AFB90010 */ sw $t9, 0x10($sp) -/* 09BFD8 8009B3D8 24050026 */ li $a1, 38 -/* 09BFDC 8009B3DC 24060140 */ li $a2, 320 -/* 09BFE0 8009B3E0 0C026C79 */ jal render_credits_fade -/* 09BFE4 8009B3E4 240700BA */ li $a3, 186 -/* 09BFE8 8009B3E8 10000008 */ b .L8009B40C -/* 09BFEC 8009B3EC 00000000 */ nop -.L8009B3F0: -/* 09BFF0 8009B3F0 3C098012 */ lui $t1, %hi(D_801263D8) # $t1, 0x8012 -/* 09BFF4 8009B3F4 8D2963D8 */ lw $t1, %lo(D_801263D8)($t1) -/* 09BFF8 8009B3F8 24060140 */ li $a2, 320 -/* 09BFFC 8009B3FC 000950C0 */ sll $t2, $t1, 3 -/* 09C000 8009B400 AFAA0010 */ sw $t2, 0x10($sp) -/* 09C004 8009B404 0C026C79 */ jal render_credits_fade -/* 09C008 8009B408 2407009C */ li $a3, 156 -.L8009B40C: -/* 09C00C 8009B40C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 -/* 09C010 8009B410 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 -/* 09C014 8009B414 8CC20000 */ lw $v0, ($a2) -/* 09C018 8009B418 3C03800E */ lui $v1, %hi(D_800DF460) # $v1, 0x800e -/* 09C01C 8009B41C 18400041 */ blez $v0, .L8009B524 -/* 09C020 8009B420 2463F460 */ addiu $v1, %lo(D_800DF460) # addiu $v1, $v1, -0xba0 -/* 09C024 8009B424 8FAC0088 */ lw $t4, 0x88($sp) -/* 09C028 8009B428 8C6B0000 */ lw $t3, ($v1) -/* 09C02C 8009B42C 000C6A00 */ sll $t5, $t4, 8 -/* 09C030 8009B430 28410028 */ slti $at, $v0, 0x28 -/* 09C034 8009B434 016D7021 */ addu $t6, $t3, $t5 -/* 09C038 8009B438 14200003 */ bnez $at, .L8009B448 -/* 09C03C 8009B43C AC6E0000 */ sw $t6, ($v1) -/* 09C040 8009B440 10000003 */ b .L8009B450 -/* 09C044 8009B444 0000A025 */ move $s4, $zero -.L8009B448: -/* 09C048 8009B448 240F0028 */ li $t7, 40 -/* 09C04C 8009B44C 01E2A023 */ subu $s4, $t7, $v0 -.L8009B450: -/* 09C050 8009B450 0014C080 */ sll $t8, $s4, 2 -/* 09C054 8009B454 0314C021 */ addu $t8, $t8, $s4 -/* 09C058 8009B458 8C750000 */ lw $s5, ($v1) -/* 09C05C 8009B45C 0C01E948 */ jal get_video_width_and_height_as_s32 -/* 09C060 8009B460 27140048 */ addiu $s4, $t8, 0x48 -/* 09C064 8009B464 00029443 */ sra $s2, $v0, 0x11 -/* 09C068 8009B468 32597FFF */ andi $t9, $s2, 0x7fff -/* 09C06C 8009B46C 3C10800E */ lui $s0, %hi(D_800E0AF0) # $s0, 0x800e -/* 09C070 8009B470 3C178012 */ lui $s7, %hi(sMenuCurrDisplayList) # $s7, 0x8012 -/* 09C074 8009B474 3C16800E */ lui $s6, %hi(D_800E0B18) # $s6, 0x800e -/* 09C078 8009B478 03209025 */ move $s2, $t9 -/* 09C07C 8009B47C 26D60B18 */ addiu $s6, %lo(D_800E0B18) # addiu $s6, $s6, 0xb18 -/* 09C080 8009B480 26F763A0 */ addiu $s7, %lo(sMenuCurrDisplayList) # addiu $s7, $s7, 0x63a0 -/* 09C084 8009B484 26100AF0 */ addiu $s0, %lo(D_800E0AF0) # addiu $s0, $s0, 0xaf0 -.L8009B488: -/* 09C088 8009B488 00158C00 */ sll $s1, $s5, 0x10 -/* 09C08C 8009B48C 00114C03 */ sra $t1, $s1, 0x10 -/* 09C090 8009B490 00092400 */ sll $a0, $t1, 0x10 -/* 09C094 8009B494 00045403 */ sra $t2, $a0, 0x10 -/* 09C098 8009B498 01402025 */ move $a0, $t2 -/* 09C09C 8009B49C 0C01C20C */ jal func_80070830 -/* 09C0A0 8009B4A0 01208825 */ move $s1, $t1 -/* 09C0A4 8009B4A4 00112400 */ sll $a0, $s1, 0x10 -/* 09C0A8 8009B4A8 00046403 */ sra $t4, $a0, 0x10 -/* 09C0AC 8009B4AC 01802025 */ move $a0, $t4 -/* 09C0B0 8009B4B0 0C01C20B */ jal func_8007082C -/* 09C0B4 8009B4B4 00409825 */ move $s3, $v0 -/* 09C0B8 8009B4B8 02740019 */ multu $s3, $s4 -/* 09C0BC 8009B4BC 8E050000 */ lw $a1, ($s0) -/* 09C0C0 8009B4C0 240F00FF */ li $t7, 255 -/* 09C0C4 8009B4C4 241800FF */ li $t8, 255 -/* 09C0C8 8009B4C8 241900FF */ li $t9, 255 -/* 09C0CC 8009B4CC 240900FF */ li $t1, 255 -/* 09C0D0 8009B4D0 AFA9001C */ sw $t1, 0x1c($sp) -/* 09C0D4 8009B4D4 AFB90018 */ sw $t9, 0x18($sp) -/* 09C0D8 8009B4D8 AFB80014 */ sw $t8, 0x14($sp) -/* 09C0DC 8009B4DC AFAF0010 */ sw $t7, 0x10($sp) -/* 09C0E0 8009B4E0 02E02025 */ move $a0, $s7 -/* 09C0E4 8009B4E4 00003012 */ mflo $a2 -/* 09C0E8 8009B4E8 00065C03 */ sra $t3, $a2, 0x10 -/* 09C0EC 8009B4EC 2566008C */ addiu $a2, $t3, 0x8c -/* 09C0F0 8009B4F0 00540019 */ multu $v0, $s4 -/* 09C0F4 8009B4F4 00006812 */ mflo $t5 -/* 09C0F8 8009B4F8 000D7403 */ sra $t6, $t5, 0x10 -/* 09C0FC 8009B4FC 01D23821 */ addu $a3, $t6, $s2 -/* 09C100 8009B500 0C01E2AE */ jal render_textured_rectangle -/* 09C104 8009B504 24E7FFEC */ addiu $a3, $a3, -0x14 -/* 09C108 8009B508 26100004 */ addiu $s0, $s0, 4 -/* 09C10C 8009B50C 1616FFDE */ bne $s0, $s6, .L8009B488 -/* 09C110 8009B510 26B51999 */ addiu $s5, $s5, 0x1999 -/* 09C114 8009B514 0C01ECF4 */ jal func_8007B3D0 -/* 09C118 8009B518 02E02025 */ move $a0, $s7 -/* 09C11C 8009B51C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 -/* 09C120 8009B520 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 -.L8009B524: -/* 09C124 8009B524 3C0A8012 */ lui $t2, %hi(D_80126BE0) # $t2, 0x8012 -/* 09C128 8009B528 8D4A6BE0 */ lw $t2, %lo(D_80126BE0)($t2) -/* 09C12C 8009B52C 8FA40088 */ lw $a0, 0x88($sp) -/* 09C130 8009B530 11400008 */ beqz $t2, .L8009B554 -/* 09C134 8009B534 00000000 */ nop -/* 09C138 8009B538 0C0207D3 */ jal func_80081F4C -/* 09C13C 8009B53C 00000000 */ nop -/* 09C140 8009B540 2C4C0001 */ sltiu $t4, $v0, 1 -/* 09C144 8009B544 3C018012 */ lui $at, %hi(D_80126BE0) # $at, 0x8012 -/* 09C148 8009B548 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 -/* 09C14C 8009B54C 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 -/* 09C150 8009B550 AC2C6BE0 */ sw $t4, %lo(D_80126BE0)($at) -.L8009B554: -/* 09C154 8009B554 3C0B8012 */ lui $t3, %hi(D_80126BD8) # $t3, 0x8012 -/* 09C158 8009B558 8D6B6BD8 */ lw $t3, %lo(D_80126BD8)($t3) -/* 09C15C 8009B55C 3C0D8012 */ lui $t5, %hi(D_80126BE0) # $t5, 0x8012 -/* 09C160 8009B560 15600130 */ bnez $t3, .L8009BA24 -/* 09C164 8009B564 00000000 */ nop -/* 09C168 8009B568 8DAD6BE0 */ lw $t5, %lo(D_80126BE0)($t5) -/* 09C16C 8009B56C 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 09C170 8009B570 15A0012C */ bnez $t5, .L8009BA24 -/* 09C174 8009B574 3C168012 */ lui $s6, %hi(D_80126BC4) # $s6, 0x8012 -/* 09C178 8009B578 3C1E800E */ lui $fp, %hi(D_800E17F4) # $fp, 0x800e -/* 09C17C 8009B57C 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e -/* 09C180 8009B580 4481A000 */ mtc1 $at, $f20 -/* 09C184 8009B584 AFA0006C */ sw $zero, 0x6c($sp) -/* 09C188 8009B588 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 -/* 09C18C 8009B58C 27DE17F4 */ addiu $fp, %lo(D_800E17F4) # addiu $fp, $fp, 0x17f4 -/* 09C190 8009B590 26D66BC4 */ addiu $s6, %lo(D_80126BC4) # addiu $s6, $s6, 0x6bc4 -/* 09C194 8009B594 24076000 */ li $a3, 24576 -.L8009B598: -/* 09C198 8009B598 8EC50000 */ lw $a1, ($s6) -/* 09C19C 8009B59C 24011000 */ li $at, 4096 -/* 09C1A0 8009B5A0 00057040 */ sll $t6, $a1, 1 -/* 09C1A4 8009B5A4 03CE7821 */ addu $t7, $fp, $t6 -/* 09C1A8 8009B5A8 85E40000 */ lh $a0, ($t7) -/* 09C1AC 8009B5AC 24090001 */ li $t1, 1 -/* 09C1B0 8009B5B0 3082F000 */ andi $v0, $a0, 0xf000 -/* 09C1B4 8009B5B4 00E23026 */ xor $a2, $a3, $v0 -/* 09C1B8 8009B5B8 2CC60001 */ sltiu $a2, $a2, 1 -/* 09C1BC 8009B5BC 0006C600 */ sll $t8, $a2, 0x18 -/* 09C1C0 8009B5C0 10410011 */ beq $v0, $at, .L8009B608 -/* 09C1C4 8009B5C4 00183603 */ sra $a2, $t8, 0x18 -/* 09C1C8 8009B5C8 24012000 */ li $at, 8192 -/* 09C1CC 8009B5CC 10410013 */ beq $v0, $at, .L8009B61C -/* 09C1D0 8009B5D0 24B00001 */ addiu $s0, $a1, 1 -/* 09C1D4 8009B5D4 24013000 */ li $at, 12288 -/* 09C1D8 8009B5D8 104100AC */ beq $v0, $at, .L8009B88C -/* 09C1DC 8009B5DC 24190001 */ li $t9, 1 -/* 09C1E0 8009B5E0 24014000 */ li $at, 16384 -/* 09C1E4 8009B5E4 10410101 */ beq $v0, $at, .L8009B9EC -/* 09C1E8 8009B5E8 24AB0001 */ addiu $t3, $a1, 1 -/* 09C1EC 8009B5EC 24015000 */ li $at, 20480 -/* 09C1F0 8009B5F0 10410105 */ beq $v0, $at, .L8009BA08 -/* 09C1F4 8009B5F4 24AF0001 */ addiu $t7, $a1, 1 -/* 09C1F8 8009B5F8 10470009 */ beq $v0, $a3, .L8009B620 -/* 09C1FC 8009B5FC 3C01FFFF */ lui $at, 0xffff -/* 09C200 8009B600 10000103 */ b .L8009BA10 -/* 09C204 8009B604 8FB8006C */ lw $t8, 0x6c($sp) -.L8009B608: -/* 09C208 8009B608 AEC00000 */ sw $zero, ($s6) -/* 09C20C 8009B60C 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 -/* 09C210 8009B610 AFA90068 */ sw $t1, 0x68($sp) -/* 09C214 8009B614 100000FD */ b .L8009BA0C -/* 09C218 8009B618 AC2063C4 */ sw $zero, %lo(gIgnorePlayerInput)($at) -.L8009B61C: -/* 09C21C 8009B61C 3C01FFFF */ lui $at, (0xFFFF0FFF >> 16) # lui $at, 0xffff -.L8009B620: -/* 09C220 8009B620 34210FFF */ ori $at, (0xFFFF0FFF & 0xFFFF) # ori $at, $at, 0xfff -/* 09C224 8009B624 00815024 */ and $t2, $a0, $at -/* 09C228 8009B628 3C018012 */ lui $at, %hi(D_80126BE8) # $at, 0x8012 -/* 09C22C 8009B62C 00105840 */ sll $t3, $s0, 1 -/* 09C230 8009B630 AC2A6BE8 */ sw $t2, %lo(D_80126BE8)($at) -/* 09C234 8009B634 03CB6821 */ addu $t5, $fp, $t3 -/* 09C238 8009B638 85A20000 */ lh $v0, ($t5) -/* 09C23C 8009B63C 240F0001 */ li $t7, 1 -/* 09C240 8009B640 304EF000 */ andi $t6, $v0, 0xf000 -/* 09C244 8009B644 AED00000 */ sw $s0, ($s6) -/* 09C248 8009B648 02002825 */ move $a1, $s0 -/* 09C24C 8009B64C 01C01025 */ move $v0, $t6 -/* 09C250 8009B650 AFAF006C */ sw $t7, 0x6c($sp) -/* 09C254 8009B654 0000A825 */ move $s5, $zero -/* 09C258 8009B658 24170014 */ li $s7, 20 -/* 09C25C 8009B65C 15C0000A */ bnez $t6, .L8009B688 -/* 09C260 8009B660 00009825 */ move $s3, $zero -.L8009B664: -/* 09C264 8009B664 24B80001 */ addiu $t8, $a1, 1 -/* 09C268 8009B668 0018C840 */ sll $t9, $t8, 1 -/* 09C26C 8009B66C 03D94821 */ addu $t1, $fp, $t9 -/* 09C270 8009B670 85220000 */ lh $v0, ($t1) -/* 09C274 8009B674 AED80000 */ sw $t8, ($s6) -/* 09C278 8009B678 304AF000 */ andi $t2, $v0, 0xf000 -/* 09C27C 8009B67C 01401025 */ move $v0, $t2 -/* 09C280 8009B680 1140FFF8 */ beqz $t2, .L8009B664 -/* 09C284 8009B684 03002825 */ move $a1, $t8 -.L8009B688: -/* 09C288 8009B688 3C0C8000 */ lui $t4, %hi(osTvType) # $t4, 0x8000 -/* 09C28C 8009B68C 8D8C0300 */ lw $t4, %lo(osTvType)($t4) -/* 09C290 8009B690 00B01823 */ subu $v1, $a1, $s0 -/* 09C294 8009B694 15800003 */ bnez $t4, .L8009B6A4 -/* 09C298 8009B698 24010001 */ li $at, 1 -/* 09C29C 8009B69C 10000002 */ b .L8009B6A8 -/* 09C2A0 8009B6A0 24120086 */ li $s2, 134 -.L8009B6A4: -/* 09C2A4 8009B6A4 24120078 */ li $s2, 120 -.L8009B6A8: -/* 09C2A8 8009B6A8 14610004 */ bne $v1, $at, .L8009B6BC -/* 09C2AC 8009B6AC 240E01E0 */ li $t6, 480 -/* 09C2B0 8009B6B0 2652FFF2 */ addiu $s2, $s2, -0xe -/* 09C2B4 8009B6B4 1000000A */ b .L8009B6E0 -/* 09C2B8 8009B6B8 24150002 */ li $s5, 2 -.L8009B6BC: -/* 09C2BC 8009B6BC 10C00006 */ beqz $a2, .L8009B6D8 -/* 09C2C0 8009B6C0 00036900 */ sll $t5, $v1, 4 -/* 09C2C4 8009B6C4 00035900 */ sll $t3, $v1, 4 -/* 09C2C8 8009B6C8 024B9023 */ subu $s2, $s2, $t3 -/* 09C2CC 8009B6CC 26520003 */ addiu $s2, $s2, 3 -/* 09C2D0 8009B6D0 10000003 */ b .L8009B6E0 -/* 09C2D4 8009B6D4 24170020 */ li $s7, 32 -.L8009B6D8: -/* 09C2D8 8009B6D8 024D9023 */ subu $s2, $s2, $t5 -/* 09C2DC 8009B6DC 26520008 */ addiu $s2, $s2, 8 -.L8009B6E0: -/* 09C2E0 8009B6E0 3C01800E */ lui $at, %hi(D_800E1B50) # $at, 0x800e -/* 09C2E4 8009B6E4 A42E1B50 */ sh $t6, %lo(D_800E1B50)($at) -/* 09C2E8 8009B6E8 24013000 */ li $at, 12288 -/* 09C2EC 8009B6EC 14410005 */ bne $v0, $at, .L8009B704 -/* 09C2F0 8009B6F0 2418FF60 */ li $t8, -160 -/* 09C2F4 8009B6F4 240F00A0 */ li $t7, 160 -/* 09C2F8 8009B6F8 3C01800E */ lui $at, %hi(D_800E1B50+8) # $at, 0x800e -/* 09C2FC 8009B6FC 10000003 */ b .L8009B70C -/* 09C300 8009B700 A42F1B58 */ sh $t7, %lo(D_800E1B50+8)($at) -.L8009B704: -/* 09C304 8009B704 3C01800E */ lui $at, %hi(D_800E1B50+8) # $at, 0x800e -/* 09C308 8009B708 A4381B58 */ sh $t8, %lo(D_800E1B50+8)($at) -.L8009B70C: -/* 09C30C 8009B70C 0205082A */ slt $at, $s0, $a1 -/* 09C310 8009B710 10200042 */ beqz $at, .L8009B81C -/* 09C314 8009B714 0200A025 */ move $s4, $s0 -/* 09C318 8009B718 3C10800E */ lui $s0, %hi(D_800E1B50) # $s0, 0x800e -/* 09C31C 8009B71C 0014C840 */ sll $t9, $s4, 1 -/* 09C320 8009B720 03D98821 */ addu $s1, $fp, $t9 -/* 09C324 8009B724 26101B50 */ addiu $s0, %lo(D_800E1B50) # addiu $s0, $s0, 0x1b50 -.L8009B728: -/* 09C328 8009B728 A6120002 */ sh $s2, 2($s0) -/* 09C32C 8009B72C A6120006 */ sh $s2, 6($s0) -/* 09C330 8009B730 10C00023 */ beqz $a2, .L8009B7C0 -/* 09C334 8009B734 A612000A */ sh $s2, 0xa($s0) -/* 09C338 8009B738 862A0000 */ lh $t2, ($s1) -/* 09C33C 8009B73C 8FAC005C */ lw $t4, 0x5c($sp) -/* 09C340 8009B740 24090030 */ li $t1, 48 -/* 09C344 8009B744 A2000011 */ sb $zero, 0x11($s0) -/* 09C348 8009B748 A200000D */ sb $zero, 0xd($s0) -/* 09C34C 8009B74C A209000F */ sb $t1, 0xf($s0) -/* 09C350 8009B750 014C5821 */ addu $t3, $t2, $t4 -/* 09C354 8009B754 81640000 */ lb $a0, ($t3) -/* 09C358 8009B758 A3A6005B */ sb $a2, 0x5b($sp) -/* 09C35C 8009B75C 0C01AF77 */ jal get_level_name -/* 09C360 8009B760 24150002 */ li $s5, 2 -/* 09C364 8009B764 862D0000 */ lh $t5, ($s1) -/* 09C368 8009B768 2643000E */ addiu $v1, $s2, 0xe -/* 09C36C 8009B76C 3C0F800E */ lui $t7, %hi(gCreditsBestTimesArray) # $t7, 0x800e -/* 09C370 8009B770 000D7080 */ sll $t6, $t5, 2 -/* 09C374 8009B774 8EC50000 */ lw $a1, ($s6) -/* 09C378 8009B778 AE020014 */ sw $v0, 0x14($s0) -/* 09C37C 8009B77C A6030022 */ sh $v1, 0x22($s0) -/* 09C380 8009B780 A6030026 */ sh $v1, 0x26($s0) -/* 09C384 8009B784 A603002A */ sh $v1, 0x2a($s0) -/* 09C388 8009B788 A2000031 */ sb $zero, 0x31($s0) -/* 09C38C 8009B78C 01EE7821 */ addu $t7, $t7, $t6 -/* 09C390 8009B790 8DEF1A94 */ lw $t7, %lo(gCreditsBestTimesArray)($t7) -/* 09C394 8009B794 3C19800E */ lui $t9, %hi(D_800E17F4) # $t9, 0x800e -/* 09C398 8009B798 83A6005B */ lb $a2, 0x5b($sp) -/* 09C39C 8009B79C 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e -/* 09C3A0 8009B7A0 273917F4 */ addiu $t9, %lo(D_800E17F4) # addiu $t9, $t9, 0x17f4 -/* 09C3A4 8009B7A4 0005C040 */ sll $t8, $a1, 1 -/* 09C3A8 8009B7A8 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 -/* 09C3AC 8009B7AC 03192021 */ addu $a0, $t8, $t9 -/* 09C3B0 8009B7B0 26730002 */ addiu $s3, $s3, 2 -/* 09C3B4 8009B7B4 26100040 */ addiu $s0, $s0, 0x40 -/* 09C3B8 8009B7B8 10000013 */ b .L8009B808 -/* 09C3BC 8009B7BC AE0FFFF4 */ sw $t7, -0xc($s0) -.L8009B7C0: -/* 09C3C0 8009B7C0 3C0A800E */ lui $t2, %hi(D_800E17F4) # $t2, 0x800e -/* 09C3C4 8009B7C4 254A17F4 */ addiu $t2, %lo(D_800E17F4) # addiu $t2, $t2, 0x17f4 -/* 09C3C8 8009B7C8 00054840 */ sll $t1, $a1, 1 -/* 09C3CC 8009B7CC 326C0001 */ andi $t4, $s3, 1 -/* 09C3D0 8009B7D0 11800004 */ beqz $t4, .L8009B7E4 -/* 09C3D4 8009B7D4 012A2021 */ addu $a0, $t1, $t2 -/* 09C3D8 8009B7D8 240B00FF */ li $t3, 255 -/* 09C3DC 8009B7DC A20B000D */ sb $t3, 0xd($s0) -/* 09C3E0 8009B7E0 A200000F */ sb $zero, 0xf($s0) -.L8009B7E4: -/* 09C3E4 8009B7E4 862D0000 */ lh $t5, ($s1) -/* 09C3E8 8009B7E8 A2150011 */ sb $s5, 0x11($s0) -/* 09C3EC 8009B7EC 000D7080 */ sll $t6, $t5, 2 -/* 09C3F0 8009B7F0 010E7821 */ addu $t7, $t0, $t6 -/* 09C3F4 8009B7F4 8DF80000 */ lw $t8, ($t7) -/* 09C3F8 8009B7F8 24150002 */ li $s5, 2 -/* 09C3FC 8009B7FC 26730001 */ addiu $s3, $s3, 1 -/* 09C400 8009B800 26100020 */ addiu $s0, $s0, 0x20 -/* 09C404 8009B804 AE18FFF4 */ sw $t8, -0xc($s0) -.L8009B808: -/* 09C408 8009B808 26310002 */ addiu $s1, $s1, 2 -/* 09C40C 8009B80C 0224082B */ sltu $at, $s1, $a0 -/* 09C410 8009B810 02579021 */ addu $s2, $s2, $s7 -/* 09C414 8009B814 1420FFC4 */ bnez $at, .L8009B728 -/* 09C418 8009B818 24170020 */ li $s7, 32 -.L8009B81C: -/* 09C41C 8009B81C 3C04800E */ lui $a0, %hi(D_800E1B50) # $a0, 0x800e -/* 09C420 8009B820 24841B50 */ addiu $a0, %lo(D_800E1B50) # addiu $a0, $a0, 0x1b50 -/* 09C424 8009B824 0013C940 */ sll $t9, $s3, 5 -/* 09C428 8009B828 00994821 */ addu $t1, $a0, $t9 -/* 09C42C 8009B82C AD200014 */ sw $zero, 0x14($t1) -/* 09C430 8009B830 3C0A8012 */ lui $t2, %hi(D_80126BE8) # $t2, 0x8012 -/* 09C434 8009B834 8D4A6BE8 */ lw $t2, %lo(D_80126BE8)($t2) -/* 09C438 8009B838 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 09C43C 8009B83C 448A2000 */ mtc1 $t2, $f4 -/* 09C440 8009B840 44814000 */ mtc1 $at, $f8 -/* 09C444 8009B844 468021A0 */ cvt.s.w $f6, $f4 -/* 09C448 8009B848 4405A000 */ mfc1 $a1, $f20 -/* 09C44C 8009B84C 4407A000 */ mfc1 $a3, $f20 -/* 09C450 8009B850 46083283 */ div.s $f10, $f6, $f8 -/* 09C454 8009B854 AFA00014 */ sw $zero, 0x14($sp) -/* 09C458 8009B858 AFA00010 */ sw $zero, 0x10($sp) -/* 09C45C 8009B85C 44065000 */ mfc1 $a2, $f10 -/* 09C460 8009B860 0C020795 */ jal func_80081E54 -/* 09C464 8009B864 00000000 */ nop -/* 09C468 8009B868 0C0207D3 */ jal func_80081F4C -/* 09C46C 8009B86C 00002025 */ move $a0, $zero -/* 09C470 8009B870 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e -/* 09C474 8009B874 2C4C0001 */ sltiu $t4, $v0, 1 -/* 09C478 8009B878 3C018012 */ lui $at, %hi(D_80126BE0) # $at, 0x8012 -/* 09C47C 8009B87C AC2C6BE0 */ sw $t4, %lo(D_80126BE0)($at) -/* 09C480 8009B880 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 -/* 09C484 8009B884 10000061 */ b .L8009BA0C -/* 09C488 8009B888 24076000 */ li $a3, 24576 -.L8009B88C: -/* 09C48C 8009B88C 3C01FFFF */ lui $at, (0xFFFF0FFF >> 16) # lui $at, 0xffff -/* 09C490 8009B890 34210FFF */ ori $at, (0xFFFF0FFF & 0xFFFF) # ori $at, $at, 0xfff -/* 09C494 8009B894 00815824 */ and $t3, $a0, $at -/* 09C498 8009B898 24B00001 */ addiu $s0, $a1, 1 -/* 09C49C 8009B89C 3C018012 */ lui $at, %hi(D_80126BE8) # $at, 0x8012 -/* 09C4A0 8009B8A0 00107040 */ sll $t6, $s0, 1 -/* 09C4A4 8009B8A4 AC2B6BE8 */ sw $t3, %lo(D_80126BE8)($at) -/* 09C4A8 8009B8A8 03CE7821 */ addu $t7, $fp, $t6 -/* 09C4AC 8009B8AC 85E20000 */ lh $v0, ($t7) -/* 09C4B0 8009B8B0 AED00000 */ sw $s0, ($s6) -/* 09C4B4 8009B8B4 3058F000 */ andi $t8, $v0, 0xf000 -/* 09C4B8 8009B8B8 02002825 */ move $a1, $s0 -/* 09C4BC 8009B8BC 03001025 */ move $v0, $t8 -/* 09C4C0 8009B8C0 1700000A */ bnez $t8, .L8009B8EC -/* 09C4C4 8009B8C4 AFB9006C */ sw $t9, 0x6c($sp) -.L8009B8C8: -/* 09C4C8 8009B8C8 24A90001 */ addiu $t1, $a1, 1 -/* 09C4CC 8009B8CC 00095040 */ sll $t2, $t1, 1 -/* 09C4D0 8009B8D0 03CA6021 */ addu $t4, $fp, $t2 -/* 09C4D4 8009B8D4 85820000 */ lh $v0, ($t4) -/* 09C4D8 8009B8D8 AEC90000 */ sw $t1, ($s6) -/* 09C4DC 8009B8DC 304BF000 */ andi $t3, $v0, 0xf000 -/* 09C4E0 8009B8E0 01601025 */ move $v0, $t3 -/* 09C4E4 8009B8E4 1160FFF8 */ beqz $t3, .L8009B8C8 -/* 09C4E8 8009B8E8 01202825 */ move $a1, $t1 -.L8009B8EC: -/* 09C4EC 8009B8EC 3C03800E */ lui $v1, %hi(D_800E1B50) # $v1, 0x800e -/* 09C4F0 8009B8F0 24631B50 */ addiu $v1, %lo(D_800E1B50) # addiu $v1, $v1, 0x1b50 -/* 09C4F4 8009B8F4 240400A0 */ li $a0, 160 -/* 09C4F8 8009B8F8 24013000 */ li $at, 12288 -/* 09C4FC 8009B8FC 14410003 */ bne $v0, $at, .L8009B90C -/* 09C500 8009B900 A4640000 */ sh $a0, ($v1) -/* 09C504 8009B904 10000003 */ b .L8009B914 -/* 09C508 8009B908 A4640008 */ sh $a0, 8($v1) -.L8009B90C: -/* 09C50C 8009B90C 240DFF60 */ li $t5, -160 -/* 09C510 8009B910 A46D0008 */ sh $t5, 8($v1) -.L8009B914: -/* 09C514 8009B914 0205082A */ slt $at, $s0, $a1 -/* 09C518 8009B918 10200014 */ beqz $at, .L8009B96C -/* 09C51C 8009B91C 0200A025 */ move $s4, $s0 -/* 09C520 8009B920 0010C140 */ sll $t8, $s0, 5 -/* 09C524 8009B924 0018C823 */ negu $t9, $t8 -/* 09C528 8009B928 00147940 */ sll $t7, $s4, 5 -/* 09C52C 8009B92C 3C0A800E */ lui $t2, %hi(D_800E1B50) # $t2, 0x800e -/* 09C530 8009B930 254A1B50 */ addiu $t2, %lo(D_800E1B50) # addiu $t2, $t2, 0x1b50 -/* 09C534 8009B934 01F94821 */ addu $t1, $t7, $t9 -/* 09C538 8009B938 00147040 */ sll $t6, $s4, 1 -/* 09C53C 8009B93C 03CE8821 */ addu $s1, $fp, $t6 -/* 09C540 8009B940 012A1021 */ addu $v0, $t1, $t2 -.L8009B944: -/* 09C544 8009B944 862C0000 */ lh $t4, ($s1) -/* 09C548 8009B948 26940001 */ addiu $s4, $s4, 1 -/* 09C54C 8009B94C 000C5880 */ sll $t3, $t4, 2 -/* 09C550 8009B950 010B6821 */ addu $t5, $t0, $t3 -/* 09C554 8009B954 8DAE0000 */ lw $t6, ($t5) -/* 09C558 8009B958 0285082A */ slt $at, $s4, $a1 -/* 09C55C 8009B95C 26310002 */ addiu $s1, $s1, 2 -/* 09C560 8009B960 24420020 */ addiu $v0, $v0, 0x20 -/* 09C564 8009B964 1420FFF7 */ bnez $at, .L8009B944 -/* 09C568 8009B968 AC4E0014 */ sw $t6, 0x14($v0) -.L8009B96C: -/* 09C56C 8009B96C 00107940 */ sll $t7, $s0, 5 -/* 09C570 8009B970 3C0A8012 */ lui $t2, %hi(D_80126BE8) # $t2, 0x8012 -/* 09C574 8009B974 8D4A6BE8 */ lw $t2, %lo(D_80126BE8)($t2) -/* 09C578 8009B978 000FC823 */ negu $t9, $t7 -/* 09C57C 8009B97C 0014C140 */ sll $t8, $s4, 5 -/* 09C580 8009B980 03194821 */ addu $t1, $t8, $t9 -# Setting D_800E1B50[1].source? Not sure why adding $t1 then -/* 09C584 8009B984 3C01800E */ lui $at, %hi(D_800E1B50+0x34) -/* 09C588 8009B988 448A8000 */ mtc1 $t2, $f16 -/* 09C58C 8009B98C 00290821 */ addu $at, $at, $t1 -/* 09C590 8009B990 AC201B84 */ sw $zero, %lo(D_800E1B50+0x34)($at) -/* 09C594 8009B994 468084A0 */ cvt.s.w $f18, $f16 -/* 09C598 8009B998 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 09C59C 8009B99C 44812000 */ mtc1 $at, $f4 -/* 09C5A0 8009B9A0 3C04800E */ lui $a0, %hi(D_800E1B50) # $a0, 0x800e -/* 09C5A4 8009B9A4 46049183 */ div.s $f6, $f18, $f4 -/* 09C5A8 8009B9A8 4405A000 */ mfc1 $a1, $f20 -/* 09C5AC 8009B9AC 4407A000 */ mfc1 $a3, $f20 -/* 09C5B0 8009B9B0 24841B50 */ addiu $a0, %lo(D_800E1B50) # addiu $a0, $a0, 0x1b50 -/* 09C5B4 8009B9B4 AFA00010 */ sw $zero, 0x10($sp) -/* 09C5B8 8009B9B8 AFA00014 */ sw $zero, 0x14($sp) -/* 09C5BC 8009B9BC 44063000 */ mfc1 $a2, $f6 -/* 09C5C0 8009B9C0 0C020795 */ jal func_80081E54 -/* 09C5C4 8009B9C4 00000000 */ nop -/* 09C5C8 8009B9C8 0C0207D3 */ jal func_80081F4C -/* 09C5CC 8009B9CC 00002025 */ move $a0, $zero -/* 09C5D0 8009B9D0 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e -/* 09C5D4 8009B9D4 2C4C0001 */ sltiu $t4, $v0, 1 -/* 09C5D8 8009B9D8 3C018012 */ lui $at, %hi(D_80126BE0) # $at, 0x8012 -/* 09C5DC 8009B9DC AC2C6BE0 */ sw $t4, %lo(D_80126BE0)($at) -/* 09C5E0 8009B9E0 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 -/* 09C5E4 8009B9E4 10000009 */ b .L8009BA0C -/* 09C5E8 8009B9E8 24076000 */ li $a3, 24576 -.L8009B9EC: -/* 09C5EC 8009B9EC AECB0000 */ sw $t3, ($s6) -/* 09C5F0 8009B9F0 240D0001 */ li $t5, 1 -/* 09C5F4 8009B9F4 3C018012 */ lui $at, %hi(D_80126BD8) # $at, 0x8012 -/* 09C5F8 8009B9F8 240E0001 */ li $t6, 1 -/* 09C5FC 8009B9FC AC2D6BD8 */ sw $t5, %lo(D_80126BD8)($at) -/* 09C600 8009BA00 10000002 */ b .L8009BA0C -/* 09C604 8009BA04 AFAE006C */ sw $t6, 0x6c($sp) -.L8009BA08: -/* 09C608 8009BA08 AECF0000 */ sw $t7, ($s6) -.L8009BA0C: -/* 09C60C 8009BA0C 8FB8006C */ lw $t8, 0x6c($sp) -.L8009BA10: -/* 09C610 8009BA10 00000000 */ nop -/* 09C614 8009BA14 1300FEE0 */ beqz $t8, .L8009B598 -/* 09C618 8009BA18 00000000 */ nop -/* 09C61C 8009BA1C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 -/* 09C620 8009BA20 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 -.L8009BA24: -/* 09C624 8009BA24 3C198012 */ lui $t9, %hi(gIgnorePlayerInput) # $t9, 0x8012 -/* 09C628 8009BA28 8F3963C4 */ lw $t9, %lo(gIgnorePlayerInput)($t9) -/* 09C62C 8009BA2C 00009025 */ move $s2, $zero -/* 09C630 8009BA30 1720000C */ bnez $t9, .L8009BA64 -/* 09C634 8009BA34 3C09800E */ lui $t1, %hi(gMenuDelay) # $t1, 0x800e -/* 09C638 8009BA38 8D29F47C */ lw $t1, %lo(gMenuDelay)($t1) -/* 09C63C 8009BA3C 00008025 */ move $s0, $zero -/* 09C640 8009BA40 15200008 */ bnez $t1, .L8009BA64 -/* 09C644 8009BA44 24110004 */ li $s1, 4 -.L8009BA48: -/* 09C648 8009BA48 0C01A955 */ jal get_buttons_pressed_from_player -/* 09C64C 8009BA4C 02002025 */ move $a0, $s0 -/* 09C650 8009BA50 26100001 */ addiu $s0, $s0, 1 -/* 09C654 8009BA54 1611FFFC */ bne $s0, $s1, .L8009BA48 -/* 09C658 8009BA58 02429025 */ or $s2, $s2, $v0 -/* 09C65C 8009BA5C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 -/* 09C660 8009BA60 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 -.L8009BA64: -/* 09C664 8009BA64 3C108012 */ lui $s0, %hi(D_801263E0) # $s0, 0x8012 -/* 09C668 8009BA68 261063E0 */ addiu $s0, %lo(D_801263E0) # addiu $s0, $s0, 0x63e0 -/* 09C66C 8009BA6C 8E0A0000 */ lw $t2, ($s0) -/* 09C670 8009BA70 24110004 */ li $s1, 4 -/* 09C674 8009BA74 2D410005 */ sltiu $at, $t2, 5 -/* 09C678 8009BA78 10200062 */ beqz $at, .L8009BC04 -/* 09C67C 8009BA7C 000A5080 */ sll $t2, $t2, 2 -/* 09C680 8009BA80 3C01800F */ lui $at, %hi(jpt_800E8574) # $at, 0x800f -/* 09C684 8009BA84 002A0821 */ addu $at, $at, $t2 -/* 09C688 8009BA88 8C2A8574 */ lw $t2, %lo(jpt_800E8574)($at) -/* 09C68C 8009BA8C 00000000 */ nop -/* 09C690 8009BA90 01400008 */ jr $t2 -/* 09C694 8009BA94 00000000 */ nop -glabel L8009BA98 -/* 09C698 8009BA98 3C038012 */ lui $v1, %hi(D_80126BCC) # $v1, 0x8012 -/* 09C69C 8009BA9C 24636BCC */ addiu $v1, %lo(D_80126BCC) # addiu $v1, $v1, 0x6bcc -/* 09C6A0 8009BAA0 8C6C0000 */ lw $t4, ($v1) -/* 09C6A4 8009BAA4 8FAD0060 */ lw $t5, 0x60($sp) -/* 09C6A8 8009BAA8 000C5880 */ sll $t3, $t4, 2 -/* 09C6AC 8009BAAC 016D1021 */ addu $v0, $t3, $t5 -/* 09C6B0 8009BAB0 80440000 */ lb $a0, ($v0) -/* 09C6B4 8009BAB4 80450002 */ lb $a1, 2($v0) -/* 09C6B8 8009BAB8 0C031D16 */ jal set_level_to_load_in_background -/* 09C6BC 8009BABC 00000000 */ nop -/* 09C6C0 8009BAC0 240E0001 */ li $t6, 1 -/* 09C6C4 8009BAC4 AE0E0000 */ sw $t6, ($s0) -/* 09C6C8 8009BAC8 240F0028 */ li $t7, 40 -/* 09C6CC 8009BACC 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 -/* 09C6D0 8009BAD0 1000004C */ b .L8009BC04 -/* 09C6D4 8009BAD4 AC2F63D8 */ sw $t7, %lo(D_801263D8)($at) -glabel L8009BAD8 -/* 09C6D8 8009BAD8 0C031CF8 */ jal get_thread30_level_id_to_load -/* 09C6DC 8009BADC 00000000 */ nop -/* 09C6E0 8009BAE0 14400048 */ bnez $v0, .L8009BC04 -/* 09C6E4 8009BAE4 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 09C6E8 8009BAE8 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc -/* 09C6EC 8009BAEC 24180002 */ li $t8, 2 -/* 09C6F0 8009BAF0 24190028 */ li $t9, 40 -/* 09C6F4 8009BAF4 AE180000 */ sw $t8, ($s0) -/* 09C6F8 8009BAF8 AC790000 */ sw $t9, ($v1) -/* 09C6FC 8009BAFC 3C018012 */ lui $at, %hi(D_80126BD8) # $at, 0x8012 -/* 09C700 8009BB00 10000040 */ b .L8009BC04 -/* 09C704 8009BB04 AC206BD8 */ sw $zero, %lo(D_80126BD8)($at) -glabel L8009BB08 -/* 09C708 8009BB08 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 09C70C 8009BB0C 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc -/* 09C710 8009BB10 8C690000 */ lw $t1, ($v1) -/* 09C714 8009BB14 8FAA0088 */ lw $t2, 0x88($sp) -/* 09C718 8009BB18 8CCB0000 */ lw $t3, ($a2) -/* 09C71C 8009BB1C 8FAD0088 */ lw $t5, 0x88($sp) -/* 09C720 8009BB20 012A6023 */ subu $t4, $t1, $t2 -/* 09C724 8009BB24 016D7023 */ subu $t6, $t3, $t5 -/* 09C728 8009BB28 AC6C0000 */ sw $t4, ($v1) -/* 09C72C 8009BB2C 1D800035 */ bgtz $t4, .L8009BC04 -/* 09C730 8009BB30 ACCE0000 */ sw $t6, ($a2) -/* 09C734 8009BB34 258F0258 */ addiu $t7, $t4, 0x258 -/* 09C738 8009BB38 24180003 */ li $t8, 3 -/* 09C73C 8009BB3C AC6F0000 */ sw $t7, ($v1) -/* 09C740 8009BB40 10000030 */ b .L8009BC04 -/* 09C744 8009BB44 AE180000 */ sw $t8, ($s0) -glabel L8009BB48 -/* 09C748 8009BB48 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 09C74C 8009BB4C 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc -/* 09C750 8009BB50 8C790000 */ lw $t9, ($v1) -/* 09C754 8009BB54 8FA90088 */ lw $t1, 0x88($sp) -/* 09C758 8009BB58 8CC20000 */ lw $v0, ($a2) -/* 09C75C 8009BB5C 03295023 */ subu $t2, $t9, $t1 -/* 09C760 8009BB60 18400006 */ blez $v0, .L8009BB7C -/* 09C764 8009BB64 AC6A0000 */ sw $t2, ($v1) -/* 09C768 8009BB68 8FAC0088 */ lw $t4, 0x88($sp) -/* 09C76C 8009BB6C 00000000 */ nop -/* 09C770 8009BB70 004C5823 */ subu $t3, $v0, $t4 -/* 09C774 8009BB74 10000002 */ b .L8009BB80 -/* 09C778 8009BB78 ACCB0000 */ sw $t3, ($a2) -.L8009BB7C: -/* 09C77C 8009BB7C ACC00000 */ sw $zero, ($a2) -.L8009BB80: -/* 09C780 8009BB80 8C6D0000 */ lw $t5, ($v1) -/* 09C784 8009BB84 240E0028 */ li $t6, 40 -/* 09C788 8009BB88 1DA0001F */ bgtz $t5, .L8009BC08 -/* 09C78C 8009BB8C 324C9000 */ andi $t4, $s2, 0x9000 -/* 09C790 8009BB90 AC6E0000 */ sw $t6, ($v1) -/* 09C794 8009BB94 1000001B */ b .L8009BC04 -/* 09C798 8009BB98 AE110000 */ sw $s1, ($s0) -glabel L8009BB9C -/* 09C79C 8009BB9C 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 09C7A0 8009BBA0 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc -/* 09C7A4 8009BBA4 8C6F0000 */ lw $t7, ($v1) -/* 09C7A8 8009BBA8 8FB80088 */ lw $t8, 0x88($sp) -/* 09C7AC 8009BBAC 8CC90000 */ lw $t1, ($a2) -/* 09C7B0 8009BBB0 8FAA0088 */ lw $t2, 0x88($sp) -/* 09C7B4 8009BBB4 01F8C823 */ subu $t9, $t7, $t8 -/* 09C7B8 8009BBB8 012A6021 */ addu $t4, $t1, $t2 -/* 09C7BC 8009BBBC AC790000 */ sw $t9, ($v1) -/* 09C7C0 8009BBC0 1F200010 */ bgtz $t9, .L8009BC04 -/* 09C7C4 8009BBC4 ACCC0000 */ sw $t4, ($a2) -/* 09C7C8 8009BBC8 3C038012 */ lui $v1, %hi(D_80126BCC) # $v1, 0x8012 -/* 09C7CC 8009BBCC 24636BCC */ addiu $v1, %lo(D_80126BCC) # addiu $v1, $v1, 0x6bcc -/* 09C7D0 8009BBD0 8C6D0000 */ lw $t5, ($v1) -/* 09C7D4 8009BBD4 8FB90060 */ lw $t9, 0x60($sp) -/* 09C7D8 8009BBD8 25AE0001 */ addiu $t6, $t5, 1 -/* 09C7DC 8009BBDC 000EC080 */ sll $t8, $t6, 2 -/* 09C7E0 8009BBE0 AE000000 */ sw $zero, ($s0) -/* 09C7E4 8009BBE4 AC6E0000 */ sw $t6, ($v1) -/* 09C7E8 8009BBE8 03194821 */ addu $t1, $t8, $t9 -/* 09C7EC 8009BBEC 812A0000 */ lb $t2, ($t1) -/* 09C7F0 8009BBF0 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 -/* 09C7F4 8009BBF4 05410004 */ bgez $t2, .L8009BC08 -/* 09C7F8 8009BBF8 324C9000 */ andi $t4, $s2, 0x9000 -/* 09C7FC 8009BBFC AC600000 */ sw $zero, ($v1) -/* 09C800 8009BC00 AC2063C4 */ sw $zero, %lo(gIgnorePlayerInput)($at) -.L8009BC04: -/* 09C804 8009BC04 324C9000 */ andi $t4, $s2, 0x9000 -.L8009BC08: -/* 09C808 8009BC08 15800006 */ bnez $t4, .L8009BC24 -/* 09C80C 8009BC0C 324B4000 */ andi $t3, $s2, 0x4000 -/* 09C810 8009BC10 15600005 */ bnez $t3, .L8009BC28 -/* 09C814 8009BC14 240E0001 */ li $t6, 1 -/* 09C818 8009BC18 8FAD0068 */ lw $t5, 0x68($sp) -/* 09C81C 8009BC1C 00000000 */ nop -/* 09C820 8009BC20 11A0000B */ beqz $t5, .L8009BC50 -.L8009BC24: -/* 09C824 8009BC24 240E0001 */ li $t6, 1 -.L8009BC28: -/* 09C828 8009BC28 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e -/* 09C82C 8009BC2C 0C030060 */ jal func_800C0180 -/* 09C830 8009BC30 AC2EF47C */ sw $t6, %lo(gMenuDelay)($at) -/* 09C834 8009BC34 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e -/* 09C838 8009BC38 0C030076 */ jal func_800C01D8 -/* 09C83C 8009BC3C 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c -/* 09C840 8009BC40 0C03005C */ jal func_800C0170 -/* 09C844 8009BC44 00000000 */ nop -/* 09C848 8009BC48 0C000326 */ jal set_music_fade_timer -/* 09C84C 8009BC4C 2404FF80 */ li $a0, -128 -.L8009BC50: -/* 09C850 8009BC50 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e -/* 09C854 8009BC54 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) -/* 09C858 8009BC58 8FAF0088 */ lw $t7, 0x88($sp) -/* 09C85C 8009BC5C 18400015 */ blez $v0, .L8009BCB4 -/* 09C860 8009BC60 004FC021 */ addu $t8, $v0, $t7 -/* 09C864 8009BC64 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e -/* 09C868 8009BC68 0C031CF8 */ jal get_thread30_level_id_to_load -/* 09C86C 8009BC6C AC38F47C */ sw $t8, %lo(gMenuDelay)($at) -/* 09C870 8009BC70 14400010 */ bnez $v0, .L8009BCB4 -/* 09C874 8009BC74 3C19800E */ lui $t9, %hi(gMenuDelay) # $t9, 0x800e -/* 09C878 8009BC78 8F39F47C */ lw $t9, %lo(gMenuDelay)($t9) -/* 09C87C 8009BC7C 00000000 */ nop -/* 09C880 8009BC80 2B21001F */ slti $at, $t9, 0x1f -/* 09C884 8009BC84 1420000C */ bnez $at, .L8009BCB8 -/* 09C888 8009BC88 8FBF0054 */ lw $ra, 0x54($sp) -/* 09C88C 8009BC8C 0C0002CA */ jal func_80000B28 -/* 09C890 8009BC90 00000000 */ nop -/* 09C894 8009BC94 0C026F3C */ jal func_8009BCF0 -/* 09C898 8009BC98 00000000 */ nop -/* 09C89C 8009BC9C 24040015 */ li $a0, 21 -/* 09C8A0 8009BCA0 2405FFFF */ li $a1, -1 -/* 09C8A4 8009BCA4 0C01B8BA */ jal load_level_for_menu -/* 09C8A8 8009BCA8 00003025 */ move $a2, $zero -/* 09C8AC 8009BCAC 0C0204F4 */ jal menu_init -/* 09C8B0 8009BCB0 24040001 */ li $a0, 1 -.L8009BCB4: -/* 09C8B4 8009BCB4 8FBF0054 */ lw $ra, 0x54($sp) -.L8009BCB8: -/* 09C8B8 8009BCB8 C7B50028 */ lwc1 $f21, 0x28($sp) -/* 09C8BC 8009BCBC C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 09C8C0 8009BCC0 8FB00030 */ lw $s0, 0x30($sp) -/* 09C8C4 8009BCC4 8FB10034 */ lw $s1, 0x34($sp) -/* 09C8C8 8009BCC8 8FB20038 */ lw $s2, 0x38($sp) -/* 09C8CC 8009BCCC 8FB3003C */ lw $s3, 0x3c($sp) -/* 09C8D0 8009BCD0 8FB40040 */ lw $s4, 0x40($sp) -/* 09C8D4 8009BCD4 8FB50044 */ lw $s5, 0x44($sp) -/* 09C8D8 8009BCD8 8FB60048 */ lw $s6, 0x48($sp) -/* 09C8DC 8009BCDC 8FB7004C */ lw $s7, 0x4c($sp) -/* 09C8E0 8009BCE0 8FBE0050 */ lw $fp, 0x50($sp) -/* 09C8E4 8009BCE4 27BD0088 */ addiu $sp, $sp, 0x88 -/* 09C8E8 8009BCE8 03E00008 */ jr $ra -/* 09C8EC 8009BCEC 00001025 */ move $v0, $zero - +.late_rodata +glabel jpt_800E8574 +.word L8009BA98, L8009BAD8, L8009BB08, L8009BB48, L8009BB9C + +.text +glabel menu_credits_loop +/* 09BF2C 8009B32C 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 09BF30 8009B330 AFBF0054 */ sw $ra, 0x54($sp) +/* 09BF34 8009B334 AFA40088 */ sw $a0, 0x88($sp) +/* 09BF38 8009B338 AFBE0050 */ sw $fp, 0x50($sp) +/* 09BF3C 8009B33C AFB7004C */ sw $s7, 0x4c($sp) +/* 09BF40 8009B340 AFB60048 */ sw $s6, 0x48($sp) +/* 09BF44 8009B344 AFB50044 */ sw $s5, 0x44($sp) +/* 09BF48 8009B348 AFB40040 */ sw $s4, 0x40($sp) +/* 09BF4C 8009B34C AFB3003C */ sw $s3, 0x3c($sp) +/* 09BF50 8009B350 AFB20038 */ sw $s2, 0x38($sp) +/* 09BF54 8009B354 AFB10034 */ sw $s1, 0x34($sp) +/* 09BF58 8009B358 AFB00030 */ sw $s0, 0x30($sp) +/* 09BF5C 8009B35C E7B50028 */ swc1 $f21, 0x28($sp) +/* 09BF60 8009B360 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 09BF64 8009B364 AFA00068 */ sw $zero, 0x68($sp) +/* 09BF68 8009B368 0C0078A7 */ jal get_misc_asset +/* 09BF6C 8009B36C 2404001C */ li $a0, 28 +/* 09BF70 8009B370 AFA2005C */ sw $v0, 0x5c($sp) +/* 09BF74 8009B374 0C0078A7 */ jal get_misc_asset +/* 09BF78 8009B378 24040045 */ li $a0, 69 +/* 09BF7C 8009B37C 0C031CFC */ jal tick_thread30 +/* 09BF80 8009B380 AFA20060 */ sw $v0, 0x60($sp) +/* 09BF84 8009B384 3C0E800E */ lui $t6, %hi(gMenuDelay) # $t6, 0x800e +/* 09BF88 8009B388 8DCEF47C */ lw $t6, %lo(gMenuDelay)($t6) +/* 09BF8C 8009B38C 00000000 */ nop +/* 09BF90 8009B390 15C00007 */ bnez $t6, .L8009B3B0 +/* 09BF94 8009B394 00000000 */ nop +/* 09BF98 8009B398 0C030060 */ jal func_800C0180 +/* 09BF9C 8009B39C 00000000 */ nop +/* 09BFA0 8009B3A0 0C030076 */ jal func_800C01D8 +/* 09BFA4 8009B3A4 00002025 */ move $a0, $zero +/* 09BFA8 8009B3A8 0C03005C */ jal func_800C0170 +/* 09BFAC 8009B3AC 00000000 */ nop +.L8009B3B0: +/* 09BFB0 8009B3B0 3C0F8000 */ lui $t7, %hi(osTvType) # $t7, 0x8000 +/* 09BFB4 8009B3B4 8DEF0300 */ lw $t7, %lo(osTvType)($t7) +/* 09BFB8 8009B3B8 00002025 */ move $a0, $zero +/* 09BFBC 8009B3BC 15E0000C */ bnez $t7, .L8009B3F0 +/* 09BFC0 8009B3C0 24050028 */ li $a1, 40 +/* 09BFC4 8009B3C4 3C188012 */ lui $t8, %hi(D_801263D8) # $t8, 0x8012 +/* 09BFC8 8009B3C8 8F1863D8 */ lw $t8, %lo(D_801263D8)($t8) +/* 09BFCC 8009B3CC 00002025 */ move $a0, $zero +/* 09BFD0 8009B3D0 0018C8C0 */ sll $t9, $t8, 3 +/* 09BFD4 8009B3D4 AFB90010 */ sw $t9, 0x10($sp) +/* 09BFD8 8009B3D8 24050026 */ li $a1, 38 +/* 09BFDC 8009B3DC 24060140 */ li $a2, 320 +/* 09BFE0 8009B3E0 0C026C79 */ jal render_credits_fade +/* 09BFE4 8009B3E4 240700BA */ li $a3, 186 +/* 09BFE8 8009B3E8 10000008 */ b .L8009B40C +/* 09BFEC 8009B3EC 00000000 */ nop +.L8009B3F0: +/* 09BFF0 8009B3F0 3C098012 */ lui $t1, %hi(D_801263D8) # $t1, 0x8012 +/* 09BFF4 8009B3F4 8D2963D8 */ lw $t1, %lo(D_801263D8)($t1) +/* 09BFF8 8009B3F8 24060140 */ li $a2, 320 +/* 09BFFC 8009B3FC 000950C0 */ sll $t2, $t1, 3 +/* 09C000 8009B400 AFAA0010 */ sw $t2, 0x10($sp) +/* 09C004 8009B404 0C026C79 */ jal render_credits_fade +/* 09C008 8009B408 2407009C */ li $a3, 156 +.L8009B40C: +/* 09C00C 8009B40C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 +/* 09C010 8009B410 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 +/* 09C014 8009B414 8CC20000 */ lw $v0, ($a2) +/* 09C018 8009B418 3C03800E */ lui $v1, %hi(D_800DF460) # $v1, 0x800e +/* 09C01C 8009B41C 18400041 */ blez $v0, .L8009B524 +/* 09C020 8009B420 2463F460 */ addiu $v1, %lo(D_800DF460) # addiu $v1, $v1, -0xba0 +/* 09C024 8009B424 8FAC0088 */ lw $t4, 0x88($sp) +/* 09C028 8009B428 8C6B0000 */ lw $t3, ($v1) +/* 09C02C 8009B42C 000C6A00 */ sll $t5, $t4, 8 +/* 09C030 8009B430 28410028 */ slti $at, $v0, 0x28 +/* 09C034 8009B434 016D7021 */ addu $t6, $t3, $t5 +/* 09C038 8009B438 14200003 */ bnez $at, .L8009B448 +/* 09C03C 8009B43C AC6E0000 */ sw $t6, ($v1) +/* 09C040 8009B440 10000003 */ b .L8009B450 +/* 09C044 8009B444 0000A025 */ move $s4, $zero +.L8009B448: +/* 09C048 8009B448 240F0028 */ li $t7, 40 +/* 09C04C 8009B44C 01E2A023 */ subu $s4, $t7, $v0 +.L8009B450: +/* 09C050 8009B450 0014C080 */ sll $t8, $s4, 2 +/* 09C054 8009B454 0314C021 */ addu $t8, $t8, $s4 +/* 09C058 8009B458 8C750000 */ lw $s5, ($v1) +/* 09C05C 8009B45C 0C01E948 */ jal get_video_width_and_height_as_s32 +/* 09C060 8009B460 27140048 */ addiu $s4, $t8, 0x48 +/* 09C064 8009B464 00029443 */ sra $s2, $v0, 0x11 +/* 09C068 8009B468 32597FFF */ andi $t9, $s2, 0x7fff +/* 09C06C 8009B46C 3C10800E */ lui $s0, %hi(D_800E0AF0) # $s0, 0x800e +/* 09C070 8009B470 3C178012 */ lui $s7, %hi(sMenuCurrDisplayList) # $s7, 0x8012 +/* 09C074 8009B474 3C16800E */ lui $s6, %hi(D_800E0B18) # $s6, 0x800e +/* 09C078 8009B478 03209025 */ move $s2, $t9 +/* 09C07C 8009B47C 26D60B18 */ addiu $s6, %lo(D_800E0B18) # addiu $s6, $s6, 0xb18 +/* 09C080 8009B480 26F763A0 */ addiu $s7, %lo(sMenuCurrDisplayList) # addiu $s7, $s7, 0x63a0 +/* 09C084 8009B484 26100AF0 */ addiu $s0, %lo(D_800E0AF0) # addiu $s0, $s0, 0xaf0 +.L8009B488: +/* 09C088 8009B488 00158C00 */ sll $s1, $s5, 0x10 +/* 09C08C 8009B48C 00114C03 */ sra $t1, $s1, 0x10 +/* 09C090 8009B490 00092400 */ sll $a0, $t1, 0x10 +/* 09C094 8009B494 00045403 */ sra $t2, $a0, 0x10 +/* 09C098 8009B498 01402025 */ move $a0, $t2 +/* 09C09C 8009B49C 0C01C20C */ jal func_80070830 +/* 09C0A0 8009B4A0 01208825 */ move $s1, $t1 +/* 09C0A4 8009B4A4 00112400 */ sll $a0, $s1, 0x10 +/* 09C0A8 8009B4A8 00046403 */ sra $t4, $a0, 0x10 +/* 09C0AC 8009B4AC 01802025 */ move $a0, $t4 +/* 09C0B0 8009B4B0 0C01C20B */ jal func_8007082C +/* 09C0B4 8009B4B4 00409825 */ move $s3, $v0 +/* 09C0B8 8009B4B8 02740019 */ multu $s3, $s4 +/* 09C0BC 8009B4BC 8E050000 */ lw $a1, ($s0) +/* 09C0C0 8009B4C0 240F00FF */ li $t7, 255 +/* 09C0C4 8009B4C4 241800FF */ li $t8, 255 +/* 09C0C8 8009B4C8 241900FF */ li $t9, 255 +/* 09C0CC 8009B4CC 240900FF */ li $t1, 255 +/* 09C0D0 8009B4D0 AFA9001C */ sw $t1, 0x1c($sp) +/* 09C0D4 8009B4D4 AFB90018 */ sw $t9, 0x18($sp) +/* 09C0D8 8009B4D8 AFB80014 */ sw $t8, 0x14($sp) +/* 09C0DC 8009B4DC AFAF0010 */ sw $t7, 0x10($sp) +/* 09C0E0 8009B4E0 02E02025 */ move $a0, $s7 +/* 09C0E4 8009B4E4 00003012 */ mflo $a2 +/* 09C0E8 8009B4E8 00065C03 */ sra $t3, $a2, 0x10 +/* 09C0EC 8009B4EC 2566008C */ addiu $a2, $t3, 0x8c +/* 09C0F0 8009B4F0 00540019 */ multu $v0, $s4 +/* 09C0F4 8009B4F4 00006812 */ mflo $t5 +/* 09C0F8 8009B4F8 000D7403 */ sra $t6, $t5, 0x10 +/* 09C0FC 8009B4FC 01D23821 */ addu $a3, $t6, $s2 +/* 09C100 8009B500 0C01E2AE */ jal render_textured_rectangle +/* 09C104 8009B504 24E7FFEC */ addiu $a3, $a3, -0x14 +/* 09C108 8009B508 26100004 */ addiu $s0, $s0, 4 +/* 09C10C 8009B50C 1616FFDE */ bne $s0, $s6, .L8009B488 +/* 09C110 8009B510 26B51999 */ addiu $s5, $s5, 0x1999 +/* 09C114 8009B514 0C01ECF4 */ jal func_8007B3D0 +/* 09C118 8009B518 02E02025 */ move $a0, $s7 +/* 09C11C 8009B51C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 +/* 09C120 8009B520 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 +.L8009B524: +/* 09C124 8009B524 3C0A8012 */ lui $t2, %hi(D_80126BE0) # $t2, 0x8012 +/* 09C128 8009B528 8D4A6BE0 */ lw $t2, %lo(D_80126BE0)($t2) +/* 09C12C 8009B52C 8FA40088 */ lw $a0, 0x88($sp) +/* 09C130 8009B530 11400008 */ beqz $t2, .L8009B554 +/* 09C134 8009B534 00000000 */ nop +/* 09C138 8009B538 0C0207D3 */ jal func_80081F4C +/* 09C13C 8009B53C 00000000 */ nop +/* 09C140 8009B540 2C4C0001 */ sltiu $t4, $v0, 1 +/* 09C144 8009B544 3C018012 */ lui $at, %hi(D_80126BE0) # $at, 0x8012 +/* 09C148 8009B548 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 +/* 09C14C 8009B54C 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 +/* 09C150 8009B550 AC2C6BE0 */ sw $t4, %lo(D_80126BE0)($at) +.L8009B554: +/* 09C154 8009B554 3C0B8012 */ lui $t3, %hi(D_80126BD8) # $t3, 0x8012 +/* 09C158 8009B558 8D6B6BD8 */ lw $t3, %lo(D_80126BD8)($t3) +/* 09C15C 8009B55C 3C0D8012 */ lui $t5, %hi(D_80126BE0) # $t5, 0x8012 +/* 09C160 8009B560 15600130 */ bnez $t3, .L8009BA24 +/* 09C164 8009B564 00000000 */ nop +/* 09C168 8009B568 8DAD6BE0 */ lw $t5, %lo(D_80126BE0)($t5) +/* 09C16C 8009B56C 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 09C170 8009B570 15A0012C */ bnez $t5, .L8009BA24 +/* 09C174 8009B574 3C168012 */ lui $s6, %hi(D_80126BC4) # $s6, 0x8012 +/* 09C178 8009B578 3C1E800E */ lui $fp, %hi(D_800E17F4) # $fp, 0x800e +/* 09C17C 8009B57C 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e +/* 09C180 8009B580 4481A000 */ mtc1 $at, $f20 +/* 09C184 8009B584 AFA0006C */ sw $zero, 0x6c($sp) +/* 09C188 8009B588 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 +/* 09C18C 8009B58C 27DE17F4 */ addiu $fp, %lo(D_800E17F4) # addiu $fp, $fp, 0x17f4 +/* 09C190 8009B590 26D66BC4 */ addiu $s6, %lo(D_80126BC4) # addiu $s6, $s6, 0x6bc4 +/* 09C194 8009B594 24076000 */ li $a3, 24576 +.L8009B598: +/* 09C198 8009B598 8EC50000 */ lw $a1, ($s6) +/* 09C19C 8009B59C 24011000 */ li $at, 4096 +/* 09C1A0 8009B5A0 00057040 */ sll $t6, $a1, 1 +/* 09C1A4 8009B5A4 03CE7821 */ addu $t7, $fp, $t6 +/* 09C1A8 8009B5A8 85E40000 */ lh $a0, ($t7) +/* 09C1AC 8009B5AC 24090001 */ li $t1, 1 +/* 09C1B0 8009B5B0 3082F000 */ andi $v0, $a0, 0xf000 +/* 09C1B4 8009B5B4 00E23026 */ xor $a2, $a3, $v0 +/* 09C1B8 8009B5B8 2CC60001 */ sltiu $a2, $a2, 1 +/* 09C1BC 8009B5BC 0006C600 */ sll $t8, $a2, 0x18 +/* 09C1C0 8009B5C0 10410011 */ beq $v0, $at, .L8009B608 +/* 09C1C4 8009B5C4 00183603 */ sra $a2, $t8, 0x18 +/* 09C1C8 8009B5C8 24012000 */ li $at, 8192 +/* 09C1CC 8009B5CC 10410013 */ beq $v0, $at, .L8009B61C +/* 09C1D0 8009B5D0 24B00001 */ addiu $s0, $a1, 1 +/* 09C1D4 8009B5D4 24013000 */ li $at, 12288 +/* 09C1D8 8009B5D8 104100AC */ beq $v0, $at, .L8009B88C +/* 09C1DC 8009B5DC 24190001 */ li $t9, 1 +/* 09C1E0 8009B5E0 24014000 */ li $at, 16384 +/* 09C1E4 8009B5E4 10410101 */ beq $v0, $at, .L8009B9EC +/* 09C1E8 8009B5E8 24AB0001 */ addiu $t3, $a1, 1 +/* 09C1EC 8009B5EC 24015000 */ li $at, 20480 +/* 09C1F0 8009B5F0 10410105 */ beq $v0, $at, .L8009BA08 +/* 09C1F4 8009B5F4 24AF0001 */ addiu $t7, $a1, 1 +/* 09C1F8 8009B5F8 10470009 */ beq $v0, $a3, .L8009B620 +/* 09C1FC 8009B5FC 3C01FFFF */ lui $at, 0xffff +/* 09C200 8009B600 10000103 */ b .L8009BA10 +/* 09C204 8009B604 8FB8006C */ lw $t8, 0x6c($sp) +.L8009B608: +/* 09C208 8009B608 AEC00000 */ sw $zero, ($s6) +/* 09C20C 8009B60C 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 +/* 09C210 8009B610 AFA90068 */ sw $t1, 0x68($sp) +/* 09C214 8009B614 100000FD */ b .L8009BA0C +/* 09C218 8009B618 AC2063C4 */ sw $zero, %lo(gIgnorePlayerInput)($at) +.L8009B61C: +/* 09C21C 8009B61C 3C01FFFF */ lui $at, (0xFFFF0FFF >> 16) # lui $at, 0xffff +.L8009B620: +/* 09C220 8009B620 34210FFF */ ori $at, (0xFFFF0FFF & 0xFFFF) # ori $at, $at, 0xfff +/* 09C224 8009B624 00815024 */ and $t2, $a0, $at +/* 09C228 8009B628 3C018012 */ lui $at, %hi(D_80126BE8) # $at, 0x8012 +/* 09C22C 8009B62C 00105840 */ sll $t3, $s0, 1 +/* 09C230 8009B630 AC2A6BE8 */ sw $t2, %lo(D_80126BE8)($at) +/* 09C234 8009B634 03CB6821 */ addu $t5, $fp, $t3 +/* 09C238 8009B638 85A20000 */ lh $v0, ($t5) +/* 09C23C 8009B63C 240F0001 */ li $t7, 1 +/* 09C240 8009B640 304EF000 */ andi $t6, $v0, 0xf000 +/* 09C244 8009B644 AED00000 */ sw $s0, ($s6) +/* 09C248 8009B648 02002825 */ move $a1, $s0 +/* 09C24C 8009B64C 01C01025 */ move $v0, $t6 +/* 09C250 8009B650 AFAF006C */ sw $t7, 0x6c($sp) +/* 09C254 8009B654 0000A825 */ move $s5, $zero +/* 09C258 8009B658 24170014 */ li $s7, 20 +/* 09C25C 8009B65C 15C0000A */ bnez $t6, .L8009B688 +/* 09C260 8009B660 00009825 */ move $s3, $zero +.L8009B664: +/* 09C264 8009B664 24B80001 */ addiu $t8, $a1, 1 +/* 09C268 8009B668 0018C840 */ sll $t9, $t8, 1 +/* 09C26C 8009B66C 03D94821 */ addu $t1, $fp, $t9 +/* 09C270 8009B670 85220000 */ lh $v0, ($t1) +/* 09C274 8009B674 AED80000 */ sw $t8, ($s6) +/* 09C278 8009B678 304AF000 */ andi $t2, $v0, 0xf000 +/* 09C27C 8009B67C 01401025 */ move $v0, $t2 +/* 09C280 8009B680 1140FFF8 */ beqz $t2, .L8009B664 +/* 09C284 8009B684 03002825 */ move $a1, $t8 +.L8009B688: +/* 09C288 8009B688 3C0C8000 */ lui $t4, %hi(osTvType) # $t4, 0x8000 +/* 09C28C 8009B68C 8D8C0300 */ lw $t4, %lo(osTvType)($t4) +/* 09C290 8009B690 00B01823 */ subu $v1, $a1, $s0 +/* 09C294 8009B694 15800003 */ bnez $t4, .L8009B6A4 +/* 09C298 8009B698 24010001 */ li $at, 1 +/* 09C29C 8009B69C 10000002 */ b .L8009B6A8 +/* 09C2A0 8009B6A0 24120086 */ li $s2, 134 +.L8009B6A4: +/* 09C2A4 8009B6A4 24120078 */ li $s2, 120 +.L8009B6A8: +/* 09C2A8 8009B6A8 14610004 */ bne $v1, $at, .L8009B6BC +/* 09C2AC 8009B6AC 240E01E0 */ li $t6, 480 +/* 09C2B0 8009B6B0 2652FFF2 */ addiu $s2, $s2, -0xe +/* 09C2B4 8009B6B4 1000000A */ b .L8009B6E0 +/* 09C2B8 8009B6B8 24150002 */ li $s5, 2 +.L8009B6BC: +/* 09C2BC 8009B6BC 10C00006 */ beqz $a2, .L8009B6D8 +/* 09C2C0 8009B6C0 00036900 */ sll $t5, $v1, 4 +/* 09C2C4 8009B6C4 00035900 */ sll $t3, $v1, 4 +/* 09C2C8 8009B6C8 024B9023 */ subu $s2, $s2, $t3 +/* 09C2CC 8009B6CC 26520003 */ addiu $s2, $s2, 3 +/* 09C2D0 8009B6D0 10000003 */ b .L8009B6E0 +/* 09C2D4 8009B6D4 24170020 */ li $s7, 32 +.L8009B6D8: +/* 09C2D8 8009B6D8 024D9023 */ subu $s2, $s2, $t5 +/* 09C2DC 8009B6DC 26520008 */ addiu $s2, $s2, 8 +.L8009B6E0: +/* 09C2E0 8009B6E0 3C01800E */ lui $at, %hi(D_800E1B50) # $at, 0x800e +/* 09C2E4 8009B6E4 A42E1B50 */ sh $t6, %lo(D_800E1B50)($at) +/* 09C2E8 8009B6E8 24013000 */ li $at, 12288 +/* 09C2EC 8009B6EC 14410005 */ bne $v0, $at, .L8009B704 +/* 09C2F0 8009B6F0 2418FF60 */ li $t8, -160 +/* 09C2F4 8009B6F4 240F00A0 */ li $t7, 160 +/* 09C2F8 8009B6F8 3C01800E */ lui $at, %hi(D_800E1B50+8) # $at, 0x800e +/* 09C2FC 8009B6FC 10000003 */ b .L8009B70C +/* 09C300 8009B700 A42F1B58 */ sh $t7, %lo(D_800E1B50+8)($at) +.L8009B704: +/* 09C304 8009B704 3C01800E */ lui $at, %hi(D_800E1B50+8) # $at, 0x800e +/* 09C308 8009B708 A4381B58 */ sh $t8, %lo(D_800E1B50+8)($at) +.L8009B70C: +/* 09C30C 8009B70C 0205082A */ slt $at, $s0, $a1 +/* 09C310 8009B710 10200042 */ beqz $at, .L8009B81C +/* 09C314 8009B714 0200A025 */ move $s4, $s0 +/* 09C318 8009B718 3C10800E */ lui $s0, %hi(D_800E1B50) # $s0, 0x800e +/* 09C31C 8009B71C 0014C840 */ sll $t9, $s4, 1 +/* 09C320 8009B720 03D98821 */ addu $s1, $fp, $t9 +/* 09C324 8009B724 26101B50 */ addiu $s0, %lo(D_800E1B50) # addiu $s0, $s0, 0x1b50 +.L8009B728: +/* 09C328 8009B728 A6120002 */ sh $s2, 2($s0) +/* 09C32C 8009B72C A6120006 */ sh $s2, 6($s0) +/* 09C330 8009B730 10C00023 */ beqz $a2, .L8009B7C0 +/* 09C334 8009B734 A612000A */ sh $s2, 0xa($s0) +/* 09C338 8009B738 862A0000 */ lh $t2, ($s1) +/* 09C33C 8009B73C 8FAC005C */ lw $t4, 0x5c($sp) +/* 09C340 8009B740 24090030 */ li $t1, 48 +/* 09C344 8009B744 A2000011 */ sb $zero, 0x11($s0) +/* 09C348 8009B748 A200000D */ sb $zero, 0xd($s0) +/* 09C34C 8009B74C A209000F */ sb $t1, 0xf($s0) +/* 09C350 8009B750 014C5821 */ addu $t3, $t2, $t4 +/* 09C354 8009B754 81640000 */ lb $a0, ($t3) +/* 09C358 8009B758 A3A6005B */ sb $a2, 0x5b($sp) +/* 09C35C 8009B75C 0C01AF77 */ jal get_level_name +/* 09C360 8009B760 24150002 */ li $s5, 2 +/* 09C364 8009B764 862D0000 */ lh $t5, ($s1) +/* 09C368 8009B768 2643000E */ addiu $v1, $s2, 0xe +/* 09C36C 8009B76C 3C0F800E */ lui $t7, %hi(gCreditsBestTimesArray) # $t7, 0x800e +/* 09C370 8009B770 000D7080 */ sll $t6, $t5, 2 +/* 09C374 8009B774 8EC50000 */ lw $a1, ($s6) +/* 09C378 8009B778 AE020014 */ sw $v0, 0x14($s0) +/* 09C37C 8009B77C A6030022 */ sh $v1, 0x22($s0) +/* 09C380 8009B780 A6030026 */ sh $v1, 0x26($s0) +/* 09C384 8009B784 A603002A */ sh $v1, 0x2a($s0) +/* 09C388 8009B788 A2000031 */ sb $zero, 0x31($s0) +/* 09C38C 8009B78C 01EE7821 */ addu $t7, $t7, $t6 +/* 09C390 8009B790 8DEF1A94 */ lw $t7, %lo(gCreditsBestTimesArray)($t7) +/* 09C394 8009B794 3C19800E */ lui $t9, %hi(D_800E17F4) # $t9, 0x800e +/* 09C398 8009B798 83A6005B */ lb $a2, 0x5b($sp) +/* 09C39C 8009B79C 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e +/* 09C3A0 8009B7A0 273917F4 */ addiu $t9, %lo(D_800E17F4) # addiu $t9, $t9, 0x17f4 +/* 09C3A4 8009B7A4 0005C040 */ sll $t8, $a1, 1 +/* 09C3A8 8009B7A8 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 +/* 09C3AC 8009B7AC 03192021 */ addu $a0, $t8, $t9 +/* 09C3B0 8009B7B0 26730002 */ addiu $s3, $s3, 2 +/* 09C3B4 8009B7B4 26100040 */ addiu $s0, $s0, 0x40 +/* 09C3B8 8009B7B8 10000013 */ b .L8009B808 +/* 09C3BC 8009B7BC AE0FFFF4 */ sw $t7, -0xc($s0) +.L8009B7C0: +/* 09C3C0 8009B7C0 3C0A800E */ lui $t2, %hi(D_800E17F4) # $t2, 0x800e +/* 09C3C4 8009B7C4 254A17F4 */ addiu $t2, %lo(D_800E17F4) # addiu $t2, $t2, 0x17f4 +/* 09C3C8 8009B7C8 00054840 */ sll $t1, $a1, 1 +/* 09C3CC 8009B7CC 326C0001 */ andi $t4, $s3, 1 +/* 09C3D0 8009B7D0 11800004 */ beqz $t4, .L8009B7E4 +/* 09C3D4 8009B7D4 012A2021 */ addu $a0, $t1, $t2 +/* 09C3D8 8009B7D8 240B00FF */ li $t3, 255 +/* 09C3DC 8009B7DC A20B000D */ sb $t3, 0xd($s0) +/* 09C3E0 8009B7E0 A200000F */ sb $zero, 0xf($s0) +.L8009B7E4: +/* 09C3E4 8009B7E4 862D0000 */ lh $t5, ($s1) +/* 09C3E8 8009B7E8 A2150011 */ sb $s5, 0x11($s0) +/* 09C3EC 8009B7EC 000D7080 */ sll $t6, $t5, 2 +/* 09C3F0 8009B7F0 010E7821 */ addu $t7, $t0, $t6 +/* 09C3F4 8009B7F4 8DF80000 */ lw $t8, ($t7) +/* 09C3F8 8009B7F8 24150002 */ li $s5, 2 +/* 09C3FC 8009B7FC 26730001 */ addiu $s3, $s3, 1 +/* 09C400 8009B800 26100020 */ addiu $s0, $s0, 0x20 +/* 09C404 8009B804 AE18FFF4 */ sw $t8, -0xc($s0) +.L8009B808: +/* 09C408 8009B808 26310002 */ addiu $s1, $s1, 2 +/* 09C40C 8009B80C 0224082B */ sltu $at, $s1, $a0 +/* 09C410 8009B810 02579021 */ addu $s2, $s2, $s7 +/* 09C414 8009B814 1420FFC4 */ bnez $at, .L8009B728 +/* 09C418 8009B818 24170020 */ li $s7, 32 +.L8009B81C: +/* 09C41C 8009B81C 3C04800E */ lui $a0, %hi(D_800E1B50) # $a0, 0x800e +/* 09C420 8009B820 24841B50 */ addiu $a0, %lo(D_800E1B50) # addiu $a0, $a0, 0x1b50 +/* 09C424 8009B824 0013C940 */ sll $t9, $s3, 5 +/* 09C428 8009B828 00994821 */ addu $t1, $a0, $t9 +/* 09C42C 8009B82C AD200014 */ sw $zero, 0x14($t1) +/* 09C430 8009B830 3C0A8012 */ lui $t2, %hi(D_80126BE8) # $t2, 0x8012 +/* 09C434 8009B834 8D4A6BE8 */ lw $t2, %lo(D_80126BE8)($t2) +/* 09C438 8009B838 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 09C43C 8009B83C 448A2000 */ mtc1 $t2, $f4 +/* 09C440 8009B840 44814000 */ mtc1 $at, $f8 +/* 09C444 8009B844 468021A0 */ cvt.s.w $f6, $f4 +/* 09C448 8009B848 4405A000 */ mfc1 $a1, $f20 +/* 09C44C 8009B84C 4407A000 */ mfc1 $a3, $f20 +/* 09C450 8009B850 46083283 */ div.s $f10, $f6, $f8 +/* 09C454 8009B854 AFA00014 */ sw $zero, 0x14($sp) +/* 09C458 8009B858 AFA00010 */ sw $zero, 0x10($sp) +/* 09C45C 8009B85C 44065000 */ mfc1 $a2, $f10 +/* 09C460 8009B860 0C020795 */ jal func_80081E54 +/* 09C464 8009B864 00000000 */ nop +/* 09C468 8009B868 0C0207D3 */ jal func_80081F4C +/* 09C46C 8009B86C 00002025 */ move $a0, $zero +/* 09C470 8009B870 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e +/* 09C474 8009B874 2C4C0001 */ sltiu $t4, $v0, 1 +/* 09C478 8009B878 3C018012 */ lui $at, %hi(D_80126BE0) # $at, 0x8012 +/* 09C47C 8009B87C AC2C6BE0 */ sw $t4, %lo(D_80126BE0)($at) +/* 09C480 8009B880 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 +/* 09C484 8009B884 10000061 */ b .L8009BA0C +/* 09C488 8009B888 24076000 */ li $a3, 24576 +.L8009B88C: +/* 09C48C 8009B88C 3C01FFFF */ lui $at, (0xFFFF0FFF >> 16) # lui $at, 0xffff +/* 09C490 8009B890 34210FFF */ ori $at, (0xFFFF0FFF & 0xFFFF) # ori $at, $at, 0xfff +/* 09C494 8009B894 00815824 */ and $t3, $a0, $at +/* 09C498 8009B898 24B00001 */ addiu $s0, $a1, 1 +/* 09C49C 8009B89C 3C018012 */ lui $at, %hi(D_80126BE8) # $at, 0x8012 +/* 09C4A0 8009B8A0 00107040 */ sll $t6, $s0, 1 +/* 09C4A4 8009B8A4 AC2B6BE8 */ sw $t3, %lo(D_80126BE8)($at) +/* 09C4A8 8009B8A8 03CE7821 */ addu $t7, $fp, $t6 +/* 09C4AC 8009B8AC 85E20000 */ lh $v0, ($t7) +/* 09C4B0 8009B8B0 AED00000 */ sw $s0, ($s6) +/* 09C4B4 8009B8B4 3058F000 */ andi $t8, $v0, 0xf000 +/* 09C4B8 8009B8B8 02002825 */ move $a1, $s0 +/* 09C4BC 8009B8BC 03001025 */ move $v0, $t8 +/* 09C4C0 8009B8C0 1700000A */ bnez $t8, .L8009B8EC +/* 09C4C4 8009B8C4 AFB9006C */ sw $t9, 0x6c($sp) +.L8009B8C8: +/* 09C4C8 8009B8C8 24A90001 */ addiu $t1, $a1, 1 +/* 09C4CC 8009B8CC 00095040 */ sll $t2, $t1, 1 +/* 09C4D0 8009B8D0 03CA6021 */ addu $t4, $fp, $t2 +/* 09C4D4 8009B8D4 85820000 */ lh $v0, ($t4) +/* 09C4D8 8009B8D8 AEC90000 */ sw $t1, ($s6) +/* 09C4DC 8009B8DC 304BF000 */ andi $t3, $v0, 0xf000 +/* 09C4E0 8009B8E0 01601025 */ move $v0, $t3 +/* 09C4E4 8009B8E4 1160FFF8 */ beqz $t3, .L8009B8C8 +/* 09C4E8 8009B8E8 01202825 */ move $a1, $t1 +.L8009B8EC: +/* 09C4EC 8009B8EC 3C03800E */ lui $v1, %hi(D_800E1B50) # $v1, 0x800e +/* 09C4F0 8009B8F0 24631B50 */ addiu $v1, %lo(D_800E1B50) # addiu $v1, $v1, 0x1b50 +/* 09C4F4 8009B8F4 240400A0 */ li $a0, 160 +/* 09C4F8 8009B8F8 24013000 */ li $at, 12288 +/* 09C4FC 8009B8FC 14410003 */ bne $v0, $at, .L8009B90C +/* 09C500 8009B900 A4640000 */ sh $a0, ($v1) +/* 09C504 8009B904 10000003 */ b .L8009B914 +/* 09C508 8009B908 A4640008 */ sh $a0, 8($v1) +.L8009B90C: +/* 09C50C 8009B90C 240DFF60 */ li $t5, -160 +/* 09C510 8009B910 A46D0008 */ sh $t5, 8($v1) +.L8009B914: +/* 09C514 8009B914 0205082A */ slt $at, $s0, $a1 +/* 09C518 8009B918 10200014 */ beqz $at, .L8009B96C +/* 09C51C 8009B91C 0200A025 */ move $s4, $s0 +/* 09C520 8009B920 0010C140 */ sll $t8, $s0, 5 +/* 09C524 8009B924 0018C823 */ negu $t9, $t8 +/* 09C528 8009B928 00147940 */ sll $t7, $s4, 5 +/* 09C52C 8009B92C 3C0A800E */ lui $t2, %hi(D_800E1B50) # $t2, 0x800e +/* 09C530 8009B930 254A1B50 */ addiu $t2, %lo(D_800E1B50) # addiu $t2, $t2, 0x1b50 +/* 09C534 8009B934 01F94821 */ addu $t1, $t7, $t9 +/* 09C538 8009B938 00147040 */ sll $t6, $s4, 1 +/* 09C53C 8009B93C 03CE8821 */ addu $s1, $fp, $t6 +/* 09C540 8009B940 012A1021 */ addu $v0, $t1, $t2 +.L8009B944: +/* 09C544 8009B944 862C0000 */ lh $t4, ($s1) +/* 09C548 8009B948 26940001 */ addiu $s4, $s4, 1 +/* 09C54C 8009B94C 000C5880 */ sll $t3, $t4, 2 +/* 09C550 8009B950 010B6821 */ addu $t5, $t0, $t3 +/* 09C554 8009B954 8DAE0000 */ lw $t6, ($t5) +/* 09C558 8009B958 0285082A */ slt $at, $s4, $a1 +/* 09C55C 8009B95C 26310002 */ addiu $s1, $s1, 2 +/* 09C560 8009B960 24420020 */ addiu $v0, $v0, 0x20 +/* 09C564 8009B964 1420FFF7 */ bnez $at, .L8009B944 +/* 09C568 8009B968 AC4E0014 */ sw $t6, 0x14($v0) +.L8009B96C: +/* 09C56C 8009B96C 00107940 */ sll $t7, $s0, 5 +/* 09C570 8009B970 3C0A8012 */ lui $t2, %hi(D_80126BE8) # $t2, 0x8012 +/* 09C574 8009B974 8D4A6BE8 */ lw $t2, %lo(D_80126BE8)($t2) +/* 09C578 8009B978 000FC823 */ negu $t9, $t7 +/* 09C57C 8009B97C 0014C140 */ sll $t8, $s4, 5 +/* 09C580 8009B980 03194821 */ addu $t1, $t8, $t9 +# Setting D_800E1B50[1].source? Not sure why adding $t1 then +/* 09C584 8009B984 3C01800E */ lui $at, %hi(D_800E1B50+0x34) +/* 09C588 8009B988 448A8000 */ mtc1 $t2, $f16 +/* 09C58C 8009B98C 00290821 */ addu $at, $at, $t1 +/* 09C590 8009B990 AC201B84 */ sw $zero, %lo(D_800E1B50+0x34)($at) +/* 09C594 8009B994 468084A0 */ cvt.s.w $f18, $f16 +/* 09C598 8009B998 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 09C59C 8009B99C 44812000 */ mtc1 $at, $f4 +/* 09C5A0 8009B9A0 3C04800E */ lui $a0, %hi(D_800E1B50) # $a0, 0x800e +/* 09C5A4 8009B9A4 46049183 */ div.s $f6, $f18, $f4 +/* 09C5A8 8009B9A8 4405A000 */ mfc1 $a1, $f20 +/* 09C5AC 8009B9AC 4407A000 */ mfc1 $a3, $f20 +/* 09C5B0 8009B9B0 24841B50 */ addiu $a0, %lo(D_800E1B50) # addiu $a0, $a0, 0x1b50 +/* 09C5B4 8009B9B4 AFA00010 */ sw $zero, 0x10($sp) +/* 09C5B8 8009B9B8 AFA00014 */ sw $zero, 0x14($sp) +/* 09C5BC 8009B9BC 44063000 */ mfc1 $a2, $f6 +/* 09C5C0 8009B9C0 0C020795 */ jal func_80081E54 +/* 09C5C4 8009B9C4 00000000 */ nop +/* 09C5C8 8009B9C8 0C0207D3 */ jal func_80081F4C +/* 09C5CC 8009B9CC 00002025 */ move $a0, $zero +/* 09C5D0 8009B9D0 3C08800E */ lui $t0, %hi(gCreditsArray) # $t0, 0x800e +/* 09C5D4 8009B9D4 2C4C0001 */ sltiu $t4, $v0, 1 +/* 09C5D8 8009B9D8 3C018012 */ lui $at, %hi(D_80126BE0) # $at, 0x8012 +/* 09C5DC 8009B9DC AC2C6BE0 */ sw $t4, %lo(D_80126BE0)($at) +/* 09C5E0 8009B9E0 25081938 */ addiu $t0, %lo(gCreditsArray) # addiu $t0, $t0, 0x1938 +/* 09C5E4 8009B9E4 10000009 */ b .L8009BA0C +/* 09C5E8 8009B9E8 24076000 */ li $a3, 24576 +.L8009B9EC: +/* 09C5EC 8009B9EC AECB0000 */ sw $t3, ($s6) +/* 09C5F0 8009B9F0 240D0001 */ li $t5, 1 +/* 09C5F4 8009B9F4 3C018012 */ lui $at, %hi(D_80126BD8) # $at, 0x8012 +/* 09C5F8 8009B9F8 240E0001 */ li $t6, 1 +/* 09C5FC 8009B9FC AC2D6BD8 */ sw $t5, %lo(D_80126BD8)($at) +/* 09C600 8009BA00 10000002 */ b .L8009BA0C +/* 09C604 8009BA04 AFAE006C */ sw $t6, 0x6c($sp) +.L8009BA08: +/* 09C608 8009BA08 AECF0000 */ sw $t7, ($s6) +.L8009BA0C: +/* 09C60C 8009BA0C 8FB8006C */ lw $t8, 0x6c($sp) +.L8009BA10: +/* 09C610 8009BA10 00000000 */ nop +/* 09C614 8009BA14 1300FEE0 */ beqz $t8, .L8009B598 +/* 09C618 8009BA18 00000000 */ nop +/* 09C61C 8009BA1C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 +/* 09C620 8009BA20 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 +.L8009BA24: +/* 09C624 8009BA24 3C198012 */ lui $t9, %hi(gIgnorePlayerInput) # $t9, 0x8012 +/* 09C628 8009BA28 8F3963C4 */ lw $t9, %lo(gIgnorePlayerInput)($t9) +/* 09C62C 8009BA2C 00009025 */ move $s2, $zero +/* 09C630 8009BA30 1720000C */ bnez $t9, .L8009BA64 +/* 09C634 8009BA34 3C09800E */ lui $t1, %hi(gMenuDelay) # $t1, 0x800e +/* 09C638 8009BA38 8D29F47C */ lw $t1, %lo(gMenuDelay)($t1) +/* 09C63C 8009BA3C 00008025 */ move $s0, $zero +/* 09C640 8009BA40 15200008 */ bnez $t1, .L8009BA64 +/* 09C644 8009BA44 24110004 */ li $s1, 4 +.L8009BA48: +/* 09C648 8009BA48 0C01A955 */ jal get_buttons_pressed_from_player +/* 09C64C 8009BA4C 02002025 */ move $a0, $s0 +/* 09C650 8009BA50 26100001 */ addiu $s0, $s0, 1 +/* 09C654 8009BA54 1611FFFC */ bne $s0, $s1, .L8009BA48 +/* 09C658 8009BA58 02429025 */ or $s2, $s2, $v0 +/* 09C65C 8009BA5C 3C068012 */ lui $a2, %hi(D_801263D8) # $a2, 0x8012 +/* 09C660 8009BA60 24C663D8 */ addiu $a2, %lo(D_801263D8) # addiu $a2, $a2, 0x63d8 +.L8009BA64: +/* 09C664 8009BA64 3C108012 */ lui $s0, %hi(D_801263E0) # $s0, 0x8012 +/* 09C668 8009BA68 261063E0 */ addiu $s0, %lo(D_801263E0) # addiu $s0, $s0, 0x63e0 +/* 09C66C 8009BA6C 8E0A0000 */ lw $t2, ($s0) +/* 09C670 8009BA70 24110004 */ li $s1, 4 +/* 09C674 8009BA74 2D410005 */ sltiu $at, $t2, 5 +/* 09C678 8009BA78 10200062 */ beqz $at, .L8009BC04 +/* 09C67C 8009BA7C 000A5080 */ sll $t2, $t2, 2 +/* 09C680 8009BA80 3C01800F */ lui $at, %hi(jpt_800E8574) # $at, 0x800f +/* 09C684 8009BA84 002A0821 */ addu $at, $at, $t2 +/* 09C688 8009BA88 8C2A8574 */ lw $t2, %lo(jpt_800E8574)($at) +/* 09C68C 8009BA8C 00000000 */ nop +/* 09C690 8009BA90 01400008 */ jr $t2 +/* 09C694 8009BA94 00000000 */ nop +glabel L8009BA98 +/* 09C698 8009BA98 3C038012 */ lui $v1, %hi(D_80126BCC) # $v1, 0x8012 +/* 09C69C 8009BA9C 24636BCC */ addiu $v1, %lo(D_80126BCC) # addiu $v1, $v1, 0x6bcc +/* 09C6A0 8009BAA0 8C6C0000 */ lw $t4, ($v1) +/* 09C6A4 8009BAA4 8FAD0060 */ lw $t5, 0x60($sp) +/* 09C6A8 8009BAA8 000C5880 */ sll $t3, $t4, 2 +/* 09C6AC 8009BAAC 016D1021 */ addu $v0, $t3, $t5 +/* 09C6B0 8009BAB0 80440000 */ lb $a0, ($v0) +/* 09C6B4 8009BAB4 80450002 */ lb $a1, 2($v0) +/* 09C6B8 8009BAB8 0C031D16 */ jal set_level_to_load_in_background +/* 09C6BC 8009BABC 00000000 */ nop +/* 09C6C0 8009BAC0 240E0001 */ li $t6, 1 +/* 09C6C4 8009BAC4 AE0E0000 */ sw $t6, ($s0) +/* 09C6C8 8009BAC8 240F0028 */ li $t7, 40 +/* 09C6CC 8009BACC 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 +/* 09C6D0 8009BAD0 1000004C */ b .L8009BC04 +/* 09C6D4 8009BAD4 AC2F63D8 */ sw $t7, %lo(D_801263D8)($at) +glabel L8009BAD8 +/* 09C6D8 8009BAD8 0C031CF8 */ jal get_thread30_level_id_to_load +/* 09C6DC 8009BADC 00000000 */ nop +/* 09C6E0 8009BAE0 14400048 */ bnez $v0, .L8009BC04 +/* 09C6E4 8009BAE4 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 09C6E8 8009BAE8 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc +/* 09C6EC 8009BAEC 24180002 */ li $t8, 2 +/* 09C6F0 8009BAF0 24190028 */ li $t9, 40 +/* 09C6F4 8009BAF4 AE180000 */ sw $t8, ($s0) +/* 09C6F8 8009BAF8 AC790000 */ sw $t9, ($v1) +/* 09C6FC 8009BAFC 3C018012 */ lui $at, %hi(D_80126BD8) # $at, 0x8012 +/* 09C700 8009BB00 10000040 */ b .L8009BC04 +/* 09C704 8009BB04 AC206BD8 */ sw $zero, %lo(D_80126BD8)($at) +glabel L8009BB08 +/* 09C708 8009BB08 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 09C70C 8009BB0C 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc +/* 09C710 8009BB10 8C690000 */ lw $t1, ($v1) +/* 09C714 8009BB14 8FAA0088 */ lw $t2, 0x88($sp) +/* 09C718 8009BB18 8CCB0000 */ lw $t3, ($a2) +/* 09C71C 8009BB1C 8FAD0088 */ lw $t5, 0x88($sp) +/* 09C720 8009BB20 012A6023 */ subu $t4, $t1, $t2 +/* 09C724 8009BB24 016D7023 */ subu $t6, $t3, $t5 +/* 09C728 8009BB28 AC6C0000 */ sw $t4, ($v1) +/* 09C72C 8009BB2C 1D800035 */ bgtz $t4, .L8009BC04 +/* 09C730 8009BB30 ACCE0000 */ sw $t6, ($a2) +/* 09C734 8009BB34 258F0258 */ addiu $t7, $t4, 0x258 +/* 09C738 8009BB38 24180003 */ li $t8, 3 +/* 09C73C 8009BB3C AC6F0000 */ sw $t7, ($v1) +/* 09C740 8009BB40 10000030 */ b .L8009BC04 +/* 09C744 8009BB44 AE180000 */ sw $t8, ($s0) +glabel L8009BB48 +/* 09C748 8009BB48 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 09C74C 8009BB4C 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc +/* 09C750 8009BB50 8C790000 */ lw $t9, ($v1) +/* 09C754 8009BB54 8FA90088 */ lw $t1, 0x88($sp) +/* 09C758 8009BB58 8CC20000 */ lw $v0, ($a2) +/* 09C75C 8009BB5C 03295023 */ subu $t2, $t9, $t1 +/* 09C760 8009BB60 18400006 */ blez $v0, .L8009BB7C +/* 09C764 8009BB64 AC6A0000 */ sw $t2, ($v1) +/* 09C768 8009BB68 8FAC0088 */ lw $t4, 0x88($sp) +/* 09C76C 8009BB6C 00000000 */ nop +/* 09C770 8009BB70 004C5823 */ subu $t3, $v0, $t4 +/* 09C774 8009BB74 10000002 */ b .L8009BB80 +/* 09C778 8009BB78 ACCB0000 */ sw $t3, ($a2) +.L8009BB7C: +/* 09C77C 8009BB7C ACC00000 */ sw $zero, ($a2) +.L8009BB80: +/* 09C780 8009BB80 8C6D0000 */ lw $t5, ($v1) +/* 09C784 8009BB84 240E0028 */ li $t6, 40 +/* 09C788 8009BB88 1DA0001F */ bgtz $t5, .L8009BC08 +/* 09C78C 8009BB8C 324C9000 */ andi $t4, $s2, 0x9000 +/* 09C790 8009BB90 AC6E0000 */ sw $t6, ($v1) +/* 09C794 8009BB94 1000001B */ b .L8009BC04 +/* 09C798 8009BB98 AE110000 */ sw $s1, ($s0) +glabel L8009BB9C +/* 09C79C 8009BB9C 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 09C7A0 8009BBA0 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc +/* 09C7A4 8009BBA4 8C6F0000 */ lw $t7, ($v1) +/* 09C7A8 8009BBA8 8FB80088 */ lw $t8, 0x88($sp) +/* 09C7AC 8009BBAC 8CC90000 */ lw $t1, ($a2) +/* 09C7B0 8009BBB0 8FAA0088 */ lw $t2, 0x88($sp) +/* 09C7B4 8009BBB4 01F8C823 */ subu $t9, $t7, $t8 +/* 09C7B8 8009BBB8 012A6021 */ addu $t4, $t1, $t2 +/* 09C7BC 8009BBBC AC790000 */ sw $t9, ($v1) +/* 09C7C0 8009BBC0 1F200010 */ bgtz $t9, .L8009BC04 +/* 09C7C4 8009BBC4 ACCC0000 */ sw $t4, ($a2) +/* 09C7C8 8009BBC8 3C038012 */ lui $v1, %hi(D_80126BCC) # $v1, 0x8012 +/* 09C7CC 8009BBCC 24636BCC */ addiu $v1, %lo(D_80126BCC) # addiu $v1, $v1, 0x6bcc +/* 09C7D0 8009BBD0 8C6D0000 */ lw $t5, ($v1) +/* 09C7D4 8009BBD4 8FB90060 */ lw $t9, 0x60($sp) +/* 09C7D8 8009BBD8 25AE0001 */ addiu $t6, $t5, 1 +/* 09C7DC 8009BBDC 000EC080 */ sll $t8, $t6, 2 +/* 09C7E0 8009BBE0 AE000000 */ sw $zero, ($s0) +/* 09C7E4 8009BBE4 AC6E0000 */ sw $t6, ($v1) +/* 09C7E8 8009BBE8 03194821 */ addu $t1, $t8, $t9 +/* 09C7EC 8009BBEC 812A0000 */ lb $t2, ($t1) +/* 09C7F0 8009BBF0 3C018012 */ lui $at, %hi(gIgnorePlayerInput) # $at, 0x8012 +/* 09C7F4 8009BBF4 05410004 */ bgez $t2, .L8009BC08 +/* 09C7F8 8009BBF8 324C9000 */ andi $t4, $s2, 0x9000 +/* 09C7FC 8009BBFC AC600000 */ sw $zero, ($v1) +/* 09C800 8009BC00 AC2063C4 */ sw $zero, %lo(gIgnorePlayerInput)($at) +.L8009BC04: +/* 09C804 8009BC04 324C9000 */ andi $t4, $s2, 0x9000 +.L8009BC08: +/* 09C808 8009BC08 15800006 */ bnez $t4, .L8009BC24 +/* 09C80C 8009BC0C 324B4000 */ andi $t3, $s2, 0x4000 +/* 09C810 8009BC10 15600005 */ bnez $t3, .L8009BC28 +/* 09C814 8009BC14 240E0001 */ li $t6, 1 +/* 09C818 8009BC18 8FAD0068 */ lw $t5, 0x68($sp) +/* 09C81C 8009BC1C 00000000 */ nop +/* 09C820 8009BC20 11A0000B */ beqz $t5, .L8009BC50 +.L8009BC24: +/* 09C824 8009BC24 240E0001 */ li $t6, 1 +.L8009BC28: +/* 09C828 8009BC28 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e +/* 09C82C 8009BC2C 0C030060 */ jal func_800C0180 +/* 09C830 8009BC30 AC2EF47C */ sw $t6, %lo(gMenuDelay)($at) +/* 09C834 8009BC34 3C04800E */ lui $a0, %hi(sMenuTransitionFadeIn) # $a0, 0x800e +/* 09C838 8009BC38 0C030076 */ jal func_800C01D8 +/* 09C83C 8009BC3C 2484F774 */ addiu $a0, %lo(sMenuTransitionFadeIn) # addiu $a0, $a0, -0x88c +/* 09C840 8009BC40 0C03005C */ jal func_800C0170 +/* 09C844 8009BC44 00000000 */ nop +/* 09C848 8009BC48 0C000326 */ jal set_music_fade_timer +/* 09C84C 8009BC4C 2404FF80 */ li $a0, -128 +.L8009BC50: +/* 09C850 8009BC50 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e +/* 09C854 8009BC54 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) +/* 09C858 8009BC58 8FAF0088 */ lw $t7, 0x88($sp) +/* 09C85C 8009BC5C 18400015 */ blez $v0, .L8009BCB4 +/* 09C860 8009BC60 004FC021 */ addu $t8, $v0, $t7 +/* 09C864 8009BC64 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e +/* 09C868 8009BC68 0C031CF8 */ jal get_thread30_level_id_to_load +/* 09C86C 8009BC6C AC38F47C */ sw $t8, %lo(gMenuDelay)($at) +/* 09C870 8009BC70 14400010 */ bnez $v0, .L8009BCB4 +/* 09C874 8009BC74 3C19800E */ lui $t9, %hi(gMenuDelay) # $t9, 0x800e +/* 09C878 8009BC78 8F39F47C */ lw $t9, %lo(gMenuDelay)($t9) +/* 09C87C 8009BC7C 00000000 */ nop +/* 09C880 8009BC80 2B21001F */ slti $at, $t9, 0x1f +/* 09C884 8009BC84 1420000C */ bnez $at, .L8009BCB8 +/* 09C888 8009BC88 8FBF0054 */ lw $ra, 0x54($sp) +/* 09C88C 8009BC8C 0C0002CA */ jal func_80000B28 +/* 09C890 8009BC90 00000000 */ nop +/* 09C894 8009BC94 0C026F3C */ jal func_8009BCF0 +/* 09C898 8009BC98 00000000 */ nop +/* 09C89C 8009BC9C 24040015 */ li $a0, 21 +/* 09C8A0 8009BCA0 2405FFFF */ li $a1, -1 +/* 09C8A4 8009BCA4 0C01B8BA */ jal load_level_for_menu +/* 09C8A8 8009BCA8 00003025 */ move $a2, $zero +/* 09C8AC 8009BCAC 0C0204F4 */ jal menu_init +/* 09C8B0 8009BCB0 24040001 */ li $a0, 1 +.L8009BCB4: +/* 09C8B4 8009BCB4 8FBF0054 */ lw $ra, 0x54($sp) +.L8009BCB8: +/* 09C8B8 8009BCB8 C7B50028 */ lwc1 $f21, 0x28($sp) +/* 09C8BC 8009BCBC C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 09C8C0 8009BCC0 8FB00030 */ lw $s0, 0x30($sp) +/* 09C8C4 8009BCC4 8FB10034 */ lw $s1, 0x34($sp) +/* 09C8C8 8009BCC8 8FB20038 */ lw $s2, 0x38($sp) +/* 09C8CC 8009BCCC 8FB3003C */ lw $s3, 0x3c($sp) +/* 09C8D0 8009BCD0 8FB40040 */ lw $s4, 0x40($sp) +/* 09C8D4 8009BCD4 8FB50044 */ lw $s5, 0x44($sp) +/* 09C8D8 8009BCD8 8FB60048 */ lw $s6, 0x48($sp) +/* 09C8DC 8009BCDC 8FB7004C */ lw $s7, 0x4c($sp) +/* 09C8E0 8009BCE0 8FBE0050 */ lw $fp, 0x50($sp) +/* 09C8E4 8009BCE4 27BD0088 */ addiu $sp, $sp, 0x88 +/* 09C8E8 8009BCE8 03E00008 */ jr $ra +/* 09C8EC 8009BCEC 00001025 */ move $v0, $zero + diff --git a/asm/non_matchings/menu/menu_ghost_data_init.s b/asm/non_matchings/menu/menu_ghost_data_init.s index c62be0c2..1a892980 100644 --- a/asm/non_matchings/menu/menu_ghost_data_init.s +++ b/asm/non_matchings/menu/menu_ghost_data_init.s @@ -1,273 +1,273 @@ -glabel menu_ghost_data_init -/* 09A65C 80099A5C 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 09A660 80099A60 3C048012 */ lui $a0, %hi(D_801264D0) # $a0, 0x8012 -/* 09A664 80099A64 3C0E8012 */ lui $t6, %hi(D_801264F8) # $t6, 0x8012 -/* 09A668 80099A68 AFBF0044 */ sw $ra, 0x44($sp) -/* 09A66C 80099A6C 25CE64F8 */ addiu $t6, %lo(D_801264F8) # addiu $t6, $t6, 0x64f8 -/* 09A670 80099A70 8C8464D0 */ lw $a0, %lo(D_801264D0)($a0) -/* 09A674 80099A74 3C058012 */ lui $a1, %hi(D_801264DC) # $a1, 0x8012 -/* 09A678 80099A78 3C068012 */ lui $a2, %hi(D_801264EC) # $a2, 0x8012 -/* 09A67C 80099A7C 3C078012 */ lui $a3, %hi(D_801264E4) # $a3, 0x8012 -/* 09A680 80099A80 AFBE0040 */ sw $fp, 0x40($sp) -/* 09A684 80099A84 AFB7003C */ sw $s7, 0x3c($sp) -/* 09A688 80099A88 AFB60038 */ sw $s6, 0x38($sp) -/* 09A68C 80099A8C AFB50034 */ sw $s5, 0x34($sp) -/* 09A690 80099A90 AFB40030 */ sw $s4, 0x30($sp) -/* 09A694 80099A94 AFB3002C */ sw $s3, 0x2c($sp) -/* 09A698 80099A98 AFB20028 */ sw $s2, 0x28($sp) -/* 09A69C 80099A9C AFB10024 */ sw $s1, 0x24($sp) -/* 09A6A0 80099AA0 AFB00020 */ sw $s0, 0x20($sp) -/* 09A6A4 80099AA4 24E764E4 */ addiu $a3, %lo(D_801264E4) # addiu $a3, $a3, 0x64e4 -/* 09A6A8 80099AA8 24C664EC */ addiu $a2, %lo(D_801264EC) # addiu $a2, $a2, 0x64ec -/* 09A6AC 80099AAC 24A564DC */ addiu $a1, %lo(D_801264DC) # addiu $a1, $a1, 0x64dc -/* 09A6B0 80099AB0 0C01D5B5 */ jal func_800756D4 -/* 09A6B4 80099AB4 AFAE0010 */ sw $t6, 0x10($sp) -/* 09A6B8 80099AB8 14400003 */ bnez $v0, .L80099AC8 -/* 09A6BC 80099ABC AFA20070 */ sw $v0, 0x70($sp) -/* 09A6C0 80099AC0 0C02658F */ jal func_8009963C -/* 09A6C4 80099AC4 00000000 */ nop -.L80099AC8: -/* 09A6C8 80099AC8 3C04800E */ lui $a0, %hi(D_800E1708) # $a0, 0x800e -/* 09A6CC 80099ACC 0C02719D */ jal func_8009C674 -/* 09A6D0 80099AD0 24841708 */ addiu $a0, %lo(D_800E1708) # addiu $a0, $a0, 0x1708 -/* 09A6D4 80099AD4 3C04800E */ lui $a0, %hi(D_800E174C) # $a0, 0x800e -/* 09A6D8 80099AD8 0C027229 */ jal allocate_menu_images -/* 09A6DC 80099ADC 2484174C */ addiu $a0, %lo(D_800E174C) # addiu $a0, $a0, 0x174c -/* 09A6E0 80099AE0 0C03105C */ jal load_font -/* 09A6E4 80099AE4 24040002 */ li $a0, 2 -/* 09A6E8 80099AE8 3C028012 */ lui $v0, %hi(D_80126550) # $v0, 0x8012 -/* 09A6EC 80099AEC 24426550 */ addiu $v0, %lo(D_80126550) # addiu $v0, $v0, 0x6550 -/* 09A6F0 80099AF0 8C570038 */ lw $s7, 0x38($v0) -/* 09A6F4 80099AF4 3C01800E */ lui $at, %hi(D_800E153C) # $at, 0x800e -/* 09A6F8 80099AF8 AC37153C */ sw $s7, %lo(D_800E153C)($at) -/* 09A6FC 80099AFC 8C5E003C */ lw $fp, 0x3c($v0) -/* 09A700 80099B00 3C01800E */ lui $at, %hi(D_800E153C+0x28) # $at, 0x800e -/* 09A704 80099B04 AC3E1564 */ sw $fp, %lo(D_800E153C+0x28)($at) -/* 09A708 80099B08 8C430040 */ lw $v1, 0x40($v0) -/* 09A70C 80099B0C 3C01800E */ lui $at, %hi(D_800E1594) # $at, 0x800e -/* 09A710 80099B10 AC231594 */ sw $v1, %lo(D_800E1594)($at) -/* 09A714 80099B14 8C440044 */ lw $a0, 0x44($v0) -/* 09A718 80099B18 3C01800E */ lui $at, %hi(D_800E1594+0x28) # $at, 0x800e -/* 09A71C 80099B1C AC2415BC */ sw $a0, %lo(D_800E1594+0x28)($at) -/* 09A720 80099B20 8C450048 */ lw $a1, 0x48($v0) -/* 09A724 80099B24 3C01800E */ lui $at, %hi(D_800E15EC) # $at, 0x800e -/* 09A728 80099B28 AC2515EC */ sw $a1, %lo(D_800E15EC)($at) -/* 09A72C 80099B2C 8C46004C */ lw $a2, 0x4c($v0) -/* 09A730 80099B30 3C01800E */ lui $at, %hi(D_800E15EC+0x28) # $at, 0x800e -/* 09A734 80099B34 AC261614 */ sw $a2, %lo(D_800E15EC+0x28)($at) -/* 09A738 80099B38 8C470050 */ lw $a3, 0x50($v0) -/* 09A73C 80099B3C 3C01800E */ lui $at, %hi(D_800E1644) # $at, 0x800e -/* 09A740 80099B40 AC271644 */ sw $a3, %lo(D_800E1644)($at) -/* 09A744 80099B44 8C490054 */ lw $t1, 0x54($v0) -/* 09A748 80099B48 3C01800E */ lui $at, %hi(D_800E1644+0x28) # $at, 0x800e -/* 09A74C 80099B4C AC29166C */ sw $t1, %lo(D_800E1644+0x28)($at) -/* 09A750 80099B50 8C4A0058 */ lw $t2, 0x58($v0) -/* 09A754 80099B54 3C01800E */ lui $at, %hi(D_800E169C) # $at, 0x800e -/* 09A758 80099B58 24080001 */ li $t0, 1 -/* 09A75C 80099B5C AFA60058 */ sw $a2, 0x58($sp) -/* 09A760 80099B60 AC2A169C */ sw $t2, %lo(D_800E169C)($at) -/* 09A764 80099B64 AFAA004C */ sw $t2, 0x4c($sp) -/* 09A768 80099B68 24060005 */ li $a2, 5 -/* 09A76C 80099B6C 310A0001 */ andi $t2, $t0, 1 -/* 09A770 80099B70 01460019 */ multu $t2, $a2 -/* 09A774 80099B74 8C4B005C */ lw $t3, 0x5c($v0) -/* 09A778 80099B78 3C01800E */ lui $at, %hi(D_800E169C+0x28) # $at, 0x800e -/* 09A77C 80099B7C AC2B16C4 */ sw $t3, %lo(D_800E169C+0x28)($at) -/* 09A780 80099B80 AFAB0048 */ sw $t3, 0x48($sp) -/* 09A784 80099B84 3C0F800E */ lui $t7, %hi(D_800E153C) # $t7, 0x800e -/* 09A788 80099B88 AFA5005C */ sw $a1, 0x5c($sp) -/* 09A78C 80099B8C AFA90050 */ sw $t1, 0x50($sp) -/* 09A790 80099B90 3C05800E */ lui $a1, %hi(D_800E1594) # $a1, 0x800e -/* 09A794 80099B94 000848C0 */ sll $t1, $t0, 3 -/* 09A798 80099B98 25EF153C */ addiu $t7, %lo(D_800E153C) # addiu $t7, $t7, 0x153c -/* 09A79C 80099B9C 24A51594 */ addiu $a1, %lo(D_800E1594) # addiu $a1, $a1, 0x1594 -/* 09A7A0 80099BA0 0000C012 */ mflo $t8 -/* 09A7A4 80099BA4 01185821 */ addu $t3, $t0, $t8 -/* 09A7A8 80099BA8 39580001 */ xori $t8, $t2, 1 -/* 09A7AC 80099BAC 03060019 */ multu $t8, $a2 -/* 09A7B0 80099BB0 000BC8C0 */ sll $t9, $t3, 3 -/* 09A7B4 80099BB4 012F1021 */ addu $v0, $t1, $t7 -/* 09A7B8 80099BB8 00B97821 */ addu $t7, $a1, $t9 -/* 09A7BC 80099BBC 03205825 */ move $t3, $t9 -/* 09A7C0 80099BC0 ADE30000 */ sw $v1, ($t7) -/* 09A7C4 80099BC4 AFA30064 */ sw $v1, 0x64($sp) -/* 09A7C8 80099BC8 AFA70054 */ sw $a3, 0x54($sp) -/* 09A7CC 80099BCC 3C07800E */ lui $a3, %hi(D_800E169C) # $a3, 0x800e -/* 09A7D0 80099BD0 AFA40060 */ sw $a0, 0x60($sp) -/* 09A7D4 80099BD4 24E7169C */ addiu $a3, %lo(D_800E169C) # addiu $a3, $a3, 0x169c -/* 09A7D8 80099BD8 250D0001 */ addiu $t5, $t0, 1 -/* 09A7DC 80099BDC 0000C812 */ mflo $t9 -/* 09A7E0 80099BE0 01196021 */ addu $t4, $t0, $t9 -/* 09A7E4 80099BE4 000C70C0 */ sll $t6, $t4, 3 -/* 09A7E8 80099BE8 00AEC021 */ addu $t8, $a1, $t6 -/* 09A7EC 80099BEC AF040000 */ sw $a0, ($t8) -/* 09A7F0 80099BF0 3C19800E */ lui $t9, %hi(D_800E15EC) # $t9, 0x800e -/* 09A7F4 80099BF4 8FAF0058 */ lw $t7, 0x58($sp) -/* 09A7F8 80099BF8 273915EC */ addiu $t9, %lo(D_800E15EC) # addiu $t9, $t9, 0x15ec -/* 09A7FC 80099BFC 01391821 */ addu $v1, $t1, $t9 -/* 09A800 80099C00 3C18800E */ lui $t8, %hi(D_800E1644) # $t8, 0x800e -/* 09A804 80099C04 27181644 */ addiu $t8, %lo(D_800E1644) # addiu $t8, $t8, 0x1644 -/* 09A808 80099C08 AC6F0028 */ sw $t7, 0x28($v1) -/* 09A80C 80099C0C 8FAF004C */ lw $t7, 0x4c($sp) -/* 09A810 80099C10 01382021 */ addu $a0, $t1, $t8 -/* 09A814 80099C14 00EBC021 */ addu $t8, $a3, $t3 -/* 09A818 80099C18 AF0F0000 */ sw $t7, ($t8) -/* 09A81C 80099C1C 31AF0001 */ andi $t7, $t5, 1 -/* 09A820 80099C20 01E60019 */ multu $t7, $a2 -/* 09A824 80099C24 01E06825 */ move $t5, $t7 -/* 09A828 80099C28 01C06025 */ move $t4, $t6 -/* 09A82C 80099C2C 8FAE005C */ lw $t6, 0x5c($sp) -/* 09A830 80099C30 8FB90054 */ lw $t9, 0x54($sp) -/* 09A834 80099C34 AC6E0000 */ sw $t6, ($v1) -/* 09A838 80099C38 8FAE0050 */ lw $t6, 0x50($sp) -/* 09A83C 80099C3C AC990000 */ sw $t9, ($a0) -/* 09A840 80099C40 8FB90048 */ lw $t9, 0x48($sp) -/* 09A844 80099C44 AC8E0028 */ sw $t6, 0x28($a0) -/* 09A848 80099C48 00EC7021 */ addu $t6, $a3, $t4 -/* 09A84C 80099C4C ADD90000 */ sw $t9, ($t6) -/* 09A850 80099C50 0000C012 */ mflo $t8 -/* 09A854 80099C54 0118F821 */ addu $ra, $t0, $t8 -/* 09A858 80099C58 39B80001 */ xori $t8, $t5, 1 -/* 09A85C 80099C5C 03060019 */ multu $t8, $a2 -/* 09A860 80099C60 001FC8C0 */ sll $t9, $ra, 3 -/* 09A864 80099C64 8FAE0064 */ lw $t6, 0x64($sp) -/* 09A868 80099C68 00B97821 */ addu $t7, $a1, $t9 -/* 09A86C 80099C6C 0320F825 */ move $ra, $t9 -/* 09A870 80099C70 AC570000 */ sw $s7, ($v0) -/* 09A874 80099C74 AC5E0028 */ sw $fp, 0x28($v0) -/* 09A878 80099C78 ADEE0008 */ sw $t6, 8($t7) -/* 09A87C 80099C7C 8FAF0060 */ lw $t7, 0x60($sp) -/* 09A880 80099C80 25110002 */ addiu $s1, $t0, 2 -/* 09A884 80099C84 AC570008 */ sw $s7, 8($v0) -/* 09A888 80099C88 AC5E0030 */ sw $fp, 0x30($v0) -/* 09A88C 80099C8C 0000C812 */ mflo $t9 -/* 09A890 80099C90 01198021 */ addu $s0, $t0, $t9 -/* 09A894 80099C94 001070C0 */ sll $t6, $s0, 3 -/* 09A898 80099C98 00AEC021 */ addu $t8, $a1, $t6 -/* 09A89C 80099C9C AF0F0008 */ sw $t7, 8($t8) -/* 09A8A0 80099CA0 8FB9005C */ lw $t9, 0x5c($sp) -/* 09A8A4 80099CA4 01C08025 */ move $s0, $t6 -/* 09A8A8 80099CA8 8FAE0058 */ lw $t6, 0x58($sp) -/* 09A8AC 80099CAC AC790008 */ sw $t9, 8($v1) -/* 09A8B0 80099CB0 8FB9004C */ lw $t9, 0x4c($sp) -/* 09A8B4 80099CB4 AC6E0030 */ sw $t6, 0x30($v1) -/* 09A8B8 80099CB8 00FF7021 */ addu $t6, $a3, $ra -/* 09A8BC 80099CBC ADD90008 */ sw $t9, 8($t6) -/* 09A8C0 80099CC0 32390001 */ andi $t9, $s1, 1 -/* 09A8C4 80099CC4 03260019 */ multu $t9, $a2 -/* 09A8C8 80099CC8 03208825 */ move $s1, $t9 -/* 09A8CC 80099CCC 8FAF0054 */ lw $t7, 0x54($sp) -/* 09A8D0 80099CD0 8FB80050 */ lw $t8, 0x50($sp) -/* 09A8D4 80099CD4 AC8F0008 */ sw $t7, 8($a0) -/* 09A8D8 80099CD8 8FAF0048 */ lw $t7, 0x48($sp) -/* 09A8DC 80099CDC AC980030 */ sw $t8, 0x30($a0) -/* 09A8E0 80099CE0 00F0C021 */ addu $t8, $a3, $s0 -/* 09A8E4 80099CE4 AF0F0008 */ sw $t7, 8($t8) -/* 09A8E8 80099CE8 8FB80064 */ lw $t8, 0x64($sp) -/* 09A8EC 80099CEC 25140003 */ addiu $s4, $t0, 3 -/* 09A8F0 80099CF0 AC570010 */ sw $s7, 0x10($v0) -/* 09A8F4 80099CF4 00007012 */ mflo $t6 -/* 09A8F8 80099CF8 010E9021 */ addu $s2, $t0, $t6 -/* 09A8FC 80099CFC 3A2E0001 */ xori $t6, $s1, 1 -/* 09A900 80099D00 01C60019 */ multu $t6, $a2 -/* 09A904 80099D04 001278C0 */ sll $t7, $s2, 3 -/* 09A908 80099D08 00AFC821 */ addu $t9, $a1, $t7 -/* 09A90C 80099D0C 01E09025 */ move $s2, $t7 -/* 09A910 80099D10 AF380010 */ sw $t8, 0x10($t9) -/* 09A914 80099D14 8FB90060 */ lw $t9, 0x60($sp) -/* 09A918 80099D18 AC5E0038 */ sw $fp, 0x38($v0) -/* 09A91C 80099D1C 00007812 */ mflo $t7 -/* 09A920 80099D20 010F9821 */ addu $s3, $t0, $t7 -/* 09A924 80099D24 0013C0C0 */ sll $t8, $s3, 3 -/* 09A928 80099D28 00B87021 */ addu $t6, $a1, $t8 -/* 09A92C 80099D2C ADD90010 */ sw $t9, 0x10($t6) -/* 09A930 80099D30 8FAF005C */ lw $t7, 0x5c($sp) -/* 09A934 80099D34 03009825 */ move $s3, $t8 -/* 09A938 80099D38 8FB80058 */ lw $t8, 0x58($sp) -/* 09A93C 80099D3C AC6F0010 */ sw $t7, 0x10($v1) -/* 09A940 80099D40 8FAF004C */ lw $t7, 0x4c($sp) -/* 09A944 80099D44 AC780038 */ sw $t8, 0x38($v1) -/* 09A948 80099D48 00F2C021 */ addu $t8, $a3, $s2 -/* 09A94C 80099D4C AF0F0010 */ sw $t7, 0x10($t8) -/* 09A950 80099D50 328F0001 */ andi $t7, $s4, 1 -/* 09A954 80099D54 01E60019 */ multu $t7, $a2 -/* 09A958 80099D58 01E0A025 */ move $s4, $t7 -/* 09A95C 80099D5C 8FB90054 */ lw $t9, 0x54($sp) -/* 09A960 80099D60 8FAE0050 */ lw $t6, 0x50($sp) -/* 09A964 80099D64 AC990010 */ sw $t9, 0x10($a0) -/* 09A968 80099D68 8FB90048 */ lw $t9, 0x48($sp) -/* 09A96C 80099D6C AC8E0038 */ sw $t6, 0x38($a0) -/* 09A970 80099D70 00F37021 */ addu $t6, $a3, $s3 -/* 09A974 80099D74 ADD90010 */ sw $t9, 0x10($t6) -/* 09A978 80099D78 8FAE0064 */ lw $t6, 0x64($sp) -/* 09A97C 80099D7C AC570018 */ sw $s7, 0x18($v0) -/* 09A980 80099D80 AC5E0040 */ sw $fp, 0x40($v0) -/* 09A984 80099D84 0000C012 */ mflo $t8 -/* 09A988 80099D88 0118A821 */ addu $s5, $t0, $t8 -/* 09A98C 80099D8C 3A980001 */ xori $t8, $s4, 1 -/* 09A990 80099D90 03060019 */ multu $t8, $a2 -/* 09A994 80099D94 0015C8C0 */ sll $t9, $s5, 3 -/* 09A998 80099D98 00B97821 */ addu $t7, $a1, $t9 -/* 09A99C 80099D9C 0320A825 */ move $s5, $t9 -/* 09A9A0 80099DA0 ADEE0018 */ sw $t6, 0x18($t7) -/* 09A9A4 80099DA4 8FAF0060 */ lw $t7, 0x60($sp) -/* 09A9A8 80099DA8 0000C812 */ mflo $t9 -/* 09A9AC 80099DAC 0119B021 */ addu $s6, $t0, $t9 -/* 09A9B0 80099DB0 001670C0 */ sll $t6, $s6, 3 -/* 09A9B4 80099DB4 00AEC021 */ addu $t8, $a1, $t6 -/* 09A9B8 80099DB8 AF0F0018 */ sw $t7, 0x18($t8) -/* 09A9BC 80099DBC 8FB9005C */ lw $t9, 0x5c($sp) -/* 09A9C0 80099DC0 01C0B025 */ move $s6, $t6 -/* 09A9C4 80099DC4 8FAE0058 */ lw $t6, 0x58($sp) -/* 09A9C8 80099DC8 AC790018 */ sw $t9, 0x18($v1) -/* 09A9CC 80099DCC 8FB9004C */ lw $t9, 0x4c($sp) -/* 09A9D0 80099DD0 8FAF0054 */ lw $t7, 0x54($sp) -/* 09A9D4 80099DD4 AC6E0040 */ sw $t6, 0x40($v1) -/* 09A9D8 80099DD8 8FB80050 */ lw $t8, 0x50($sp) -/* 09A9DC 80099DDC 00F57021 */ addu $t6, $a3, $s5 -/* 09A9E0 80099DE0 ADD90018 */ sw $t9, 0x18($t6) -/* 09A9E4 80099DE4 AC8F0018 */ sw $t7, 0x18($a0) -/* 09A9E8 80099DE8 8FAF0048 */ lw $t7, 0x48($sp) -/* 09A9EC 80099DEC AC980040 */ sw $t8, 0x40($a0) -/* 09A9F0 80099DF0 00F6C021 */ addu $t8, $a3, $s6 -/* 09A9F4 80099DF4 0C023917 */ jal assign_vehicle_icon_textures -/* 09A9F8 80099DF8 AF0F0018 */ sw $t7, 0x18($t8) -/* 09A9FC 80099DFC 0C025181 */ jal assign_racer_portrait_textures -/* 09AA00 80099E00 00000000 */ nop -/* 09AA04 80099E04 0C02392C */ jal func_8008E4B0 -/* 09AA08 80099E08 00000000 */ nop -/* 09AA0C 80099E0C 3C018012 */ lui $at, %hi(D_801263BC) # $at, 0x8012 -/* 09AA10 80099E10 AC2063BC */ sw $zero, %lo(D_801263BC)($at) -/* 09AA14 80099E14 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 09AA18 80099E18 AC2063E0 */ sw $zero, %lo(D_801263E0)($at) -/* 09AA1C 80099E1C 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 -/* 09AA20 80099E20 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e -/* 09AA24 80099E24 AC2063D8 */ sw $zero, %lo(D_801263D8)($at) -/* 09AA28 80099E28 8FB90070 */ lw $t9, 0x70($sp) -/* 09AA2C 80099E2C 2442F47C */ addiu $v0, %lo(gMenuDelay) # addiu $v0, $v0, -0xb84 -/* 09AA30 80099E30 AC400000 */ sw $zero, ($v0) -/* 09AA34 80099E34 3C018012 */ lui $at, %hi(D_80126498) # $at, 0x8012 -/* 09AA38 80099E38 17200006 */ bnez $t9, .L80099E54 -/* 09AA3C 80099E3C AC206498 */ sw $zero, %lo(D_80126498)($at) -/* 09AA40 80099E40 3C04800E */ lui $a0, %hi(sMenuTransitionFadeOut) # $a0, 0x800e -/* 09AA44 80099E44 0C030076 */ jal func_800C01D8 -/* 09AA48 80099E48 2484F77C */ addiu $a0, %lo(sMenuTransitionFadeOut) # addiu $a0, $a0, -0x884 -/* 09AA4C 80099E4C 10000004 */ b .L80099E60 -/* 09AA50 80099E50 8FBF0044 */ lw $ra, 0x44($sp) -.L80099E54: -/* 09AA54 80099E54 240E001E */ li $t6, 30 -/* 09AA58 80099E58 AC4E0000 */ sw $t6, ($v0) -/* 09AA5C 80099E5C 8FBF0044 */ lw $ra, 0x44($sp) -.L80099E60: -/* 09AA60 80099E60 8FB00020 */ lw $s0, 0x20($sp) -/* 09AA64 80099E64 8FB10024 */ lw $s1, 0x24($sp) -/* 09AA68 80099E68 8FB20028 */ lw $s2, 0x28($sp) -/* 09AA6C 80099E6C 8FB3002C */ lw $s3, 0x2c($sp) -/* 09AA70 80099E70 8FB40030 */ lw $s4, 0x30($sp) -/* 09AA74 80099E74 8FB50034 */ lw $s5, 0x34($sp) -/* 09AA78 80099E78 8FB60038 */ lw $s6, 0x38($sp) -/* 09AA7C 80099E7C 8FB7003C */ lw $s7, 0x3c($sp) -/* 09AA80 80099E80 8FBE0040 */ lw $fp, 0x40($sp) -/* 09AA84 80099E84 03E00008 */ jr $ra -/* 09AA88 80099E88 27BD0078 */ addiu $sp, $sp, 0x78 - +glabel menu_ghost_data_init +/* 09A65C 80099A5C 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 09A660 80099A60 3C048012 */ lui $a0, %hi(D_801264D0) # $a0, 0x8012 +/* 09A664 80099A64 3C0E8012 */ lui $t6, %hi(D_801264F8) # $t6, 0x8012 +/* 09A668 80099A68 AFBF0044 */ sw $ra, 0x44($sp) +/* 09A66C 80099A6C 25CE64F8 */ addiu $t6, %lo(D_801264F8) # addiu $t6, $t6, 0x64f8 +/* 09A670 80099A70 8C8464D0 */ lw $a0, %lo(D_801264D0)($a0) +/* 09A674 80099A74 3C058012 */ lui $a1, %hi(D_801264DC) # $a1, 0x8012 +/* 09A678 80099A78 3C068012 */ lui $a2, %hi(D_801264EC) # $a2, 0x8012 +/* 09A67C 80099A7C 3C078012 */ lui $a3, %hi(D_801264E4) # $a3, 0x8012 +/* 09A680 80099A80 AFBE0040 */ sw $fp, 0x40($sp) +/* 09A684 80099A84 AFB7003C */ sw $s7, 0x3c($sp) +/* 09A688 80099A88 AFB60038 */ sw $s6, 0x38($sp) +/* 09A68C 80099A8C AFB50034 */ sw $s5, 0x34($sp) +/* 09A690 80099A90 AFB40030 */ sw $s4, 0x30($sp) +/* 09A694 80099A94 AFB3002C */ sw $s3, 0x2c($sp) +/* 09A698 80099A98 AFB20028 */ sw $s2, 0x28($sp) +/* 09A69C 80099A9C AFB10024 */ sw $s1, 0x24($sp) +/* 09A6A0 80099AA0 AFB00020 */ sw $s0, 0x20($sp) +/* 09A6A4 80099AA4 24E764E4 */ addiu $a3, %lo(D_801264E4) # addiu $a3, $a3, 0x64e4 +/* 09A6A8 80099AA8 24C664EC */ addiu $a2, %lo(D_801264EC) # addiu $a2, $a2, 0x64ec +/* 09A6AC 80099AAC 24A564DC */ addiu $a1, %lo(D_801264DC) # addiu $a1, $a1, 0x64dc +/* 09A6B0 80099AB0 0C01D5B5 */ jal func_800756D4 +/* 09A6B4 80099AB4 AFAE0010 */ sw $t6, 0x10($sp) +/* 09A6B8 80099AB8 14400003 */ bnez $v0, .L80099AC8 +/* 09A6BC 80099ABC AFA20070 */ sw $v0, 0x70($sp) +/* 09A6C0 80099AC0 0C02658F */ jal func_8009963C +/* 09A6C4 80099AC4 00000000 */ nop +.L80099AC8: +/* 09A6C8 80099AC8 3C04800E */ lui $a0, %hi(D_800E1708) # $a0, 0x800e +/* 09A6CC 80099ACC 0C02719D */ jal func_8009C674 +/* 09A6D0 80099AD0 24841708 */ addiu $a0, %lo(D_800E1708) # addiu $a0, $a0, 0x1708 +/* 09A6D4 80099AD4 3C04800E */ lui $a0, %hi(D_800E174C) # $a0, 0x800e +/* 09A6D8 80099AD8 0C027229 */ jal allocate_menu_images +/* 09A6DC 80099ADC 2484174C */ addiu $a0, %lo(D_800E174C) # addiu $a0, $a0, 0x174c +/* 09A6E0 80099AE0 0C03105C */ jal load_font +/* 09A6E4 80099AE4 24040002 */ li $a0, 2 +/* 09A6E8 80099AE8 3C028012 */ lui $v0, %hi(D_80126550) # $v0, 0x8012 +/* 09A6EC 80099AEC 24426550 */ addiu $v0, %lo(D_80126550) # addiu $v0, $v0, 0x6550 +/* 09A6F0 80099AF0 8C570038 */ lw $s7, 0x38($v0) +/* 09A6F4 80099AF4 3C01800E */ lui $at, %hi(D_800E153C) # $at, 0x800e +/* 09A6F8 80099AF8 AC37153C */ sw $s7, %lo(D_800E153C)($at) +/* 09A6FC 80099AFC 8C5E003C */ lw $fp, 0x3c($v0) +/* 09A700 80099B00 3C01800E */ lui $at, %hi(D_800E153C+0x28) # $at, 0x800e +/* 09A704 80099B04 AC3E1564 */ sw $fp, %lo(D_800E153C+0x28)($at) +/* 09A708 80099B08 8C430040 */ lw $v1, 0x40($v0) +/* 09A70C 80099B0C 3C01800E */ lui $at, %hi(D_800E1594) # $at, 0x800e +/* 09A710 80099B10 AC231594 */ sw $v1, %lo(D_800E1594)($at) +/* 09A714 80099B14 8C440044 */ lw $a0, 0x44($v0) +/* 09A718 80099B18 3C01800E */ lui $at, %hi(D_800E1594+0x28) # $at, 0x800e +/* 09A71C 80099B1C AC2415BC */ sw $a0, %lo(D_800E1594+0x28)($at) +/* 09A720 80099B20 8C450048 */ lw $a1, 0x48($v0) +/* 09A724 80099B24 3C01800E */ lui $at, %hi(D_800E15EC) # $at, 0x800e +/* 09A728 80099B28 AC2515EC */ sw $a1, %lo(D_800E15EC)($at) +/* 09A72C 80099B2C 8C46004C */ lw $a2, 0x4c($v0) +/* 09A730 80099B30 3C01800E */ lui $at, %hi(D_800E15EC+0x28) # $at, 0x800e +/* 09A734 80099B34 AC261614 */ sw $a2, %lo(D_800E15EC+0x28)($at) +/* 09A738 80099B38 8C470050 */ lw $a3, 0x50($v0) +/* 09A73C 80099B3C 3C01800E */ lui $at, %hi(D_800E1644) # $at, 0x800e +/* 09A740 80099B40 AC271644 */ sw $a3, %lo(D_800E1644)($at) +/* 09A744 80099B44 8C490054 */ lw $t1, 0x54($v0) +/* 09A748 80099B48 3C01800E */ lui $at, %hi(D_800E1644+0x28) # $at, 0x800e +/* 09A74C 80099B4C AC29166C */ sw $t1, %lo(D_800E1644+0x28)($at) +/* 09A750 80099B50 8C4A0058 */ lw $t2, 0x58($v0) +/* 09A754 80099B54 3C01800E */ lui $at, %hi(D_800E169C) # $at, 0x800e +/* 09A758 80099B58 24080001 */ li $t0, 1 +/* 09A75C 80099B5C AFA60058 */ sw $a2, 0x58($sp) +/* 09A760 80099B60 AC2A169C */ sw $t2, %lo(D_800E169C)($at) +/* 09A764 80099B64 AFAA004C */ sw $t2, 0x4c($sp) +/* 09A768 80099B68 24060005 */ li $a2, 5 +/* 09A76C 80099B6C 310A0001 */ andi $t2, $t0, 1 +/* 09A770 80099B70 01460019 */ multu $t2, $a2 +/* 09A774 80099B74 8C4B005C */ lw $t3, 0x5c($v0) +/* 09A778 80099B78 3C01800E */ lui $at, %hi(D_800E169C+0x28) # $at, 0x800e +/* 09A77C 80099B7C AC2B16C4 */ sw $t3, %lo(D_800E169C+0x28)($at) +/* 09A780 80099B80 AFAB0048 */ sw $t3, 0x48($sp) +/* 09A784 80099B84 3C0F800E */ lui $t7, %hi(D_800E153C) # $t7, 0x800e +/* 09A788 80099B88 AFA5005C */ sw $a1, 0x5c($sp) +/* 09A78C 80099B8C AFA90050 */ sw $t1, 0x50($sp) +/* 09A790 80099B90 3C05800E */ lui $a1, %hi(D_800E1594) # $a1, 0x800e +/* 09A794 80099B94 000848C0 */ sll $t1, $t0, 3 +/* 09A798 80099B98 25EF153C */ addiu $t7, %lo(D_800E153C) # addiu $t7, $t7, 0x153c +/* 09A79C 80099B9C 24A51594 */ addiu $a1, %lo(D_800E1594) # addiu $a1, $a1, 0x1594 +/* 09A7A0 80099BA0 0000C012 */ mflo $t8 +/* 09A7A4 80099BA4 01185821 */ addu $t3, $t0, $t8 +/* 09A7A8 80099BA8 39580001 */ xori $t8, $t2, 1 +/* 09A7AC 80099BAC 03060019 */ multu $t8, $a2 +/* 09A7B0 80099BB0 000BC8C0 */ sll $t9, $t3, 3 +/* 09A7B4 80099BB4 012F1021 */ addu $v0, $t1, $t7 +/* 09A7B8 80099BB8 00B97821 */ addu $t7, $a1, $t9 +/* 09A7BC 80099BBC 03205825 */ move $t3, $t9 +/* 09A7C0 80099BC0 ADE30000 */ sw $v1, ($t7) +/* 09A7C4 80099BC4 AFA30064 */ sw $v1, 0x64($sp) +/* 09A7C8 80099BC8 AFA70054 */ sw $a3, 0x54($sp) +/* 09A7CC 80099BCC 3C07800E */ lui $a3, %hi(D_800E169C) # $a3, 0x800e +/* 09A7D0 80099BD0 AFA40060 */ sw $a0, 0x60($sp) +/* 09A7D4 80099BD4 24E7169C */ addiu $a3, %lo(D_800E169C) # addiu $a3, $a3, 0x169c +/* 09A7D8 80099BD8 250D0001 */ addiu $t5, $t0, 1 +/* 09A7DC 80099BDC 0000C812 */ mflo $t9 +/* 09A7E0 80099BE0 01196021 */ addu $t4, $t0, $t9 +/* 09A7E4 80099BE4 000C70C0 */ sll $t6, $t4, 3 +/* 09A7E8 80099BE8 00AEC021 */ addu $t8, $a1, $t6 +/* 09A7EC 80099BEC AF040000 */ sw $a0, ($t8) +/* 09A7F0 80099BF0 3C19800E */ lui $t9, %hi(D_800E15EC) # $t9, 0x800e +/* 09A7F4 80099BF4 8FAF0058 */ lw $t7, 0x58($sp) +/* 09A7F8 80099BF8 273915EC */ addiu $t9, %lo(D_800E15EC) # addiu $t9, $t9, 0x15ec +/* 09A7FC 80099BFC 01391821 */ addu $v1, $t1, $t9 +/* 09A800 80099C00 3C18800E */ lui $t8, %hi(D_800E1644) # $t8, 0x800e +/* 09A804 80099C04 27181644 */ addiu $t8, %lo(D_800E1644) # addiu $t8, $t8, 0x1644 +/* 09A808 80099C08 AC6F0028 */ sw $t7, 0x28($v1) +/* 09A80C 80099C0C 8FAF004C */ lw $t7, 0x4c($sp) +/* 09A810 80099C10 01382021 */ addu $a0, $t1, $t8 +/* 09A814 80099C14 00EBC021 */ addu $t8, $a3, $t3 +/* 09A818 80099C18 AF0F0000 */ sw $t7, ($t8) +/* 09A81C 80099C1C 31AF0001 */ andi $t7, $t5, 1 +/* 09A820 80099C20 01E60019 */ multu $t7, $a2 +/* 09A824 80099C24 01E06825 */ move $t5, $t7 +/* 09A828 80099C28 01C06025 */ move $t4, $t6 +/* 09A82C 80099C2C 8FAE005C */ lw $t6, 0x5c($sp) +/* 09A830 80099C30 8FB90054 */ lw $t9, 0x54($sp) +/* 09A834 80099C34 AC6E0000 */ sw $t6, ($v1) +/* 09A838 80099C38 8FAE0050 */ lw $t6, 0x50($sp) +/* 09A83C 80099C3C AC990000 */ sw $t9, ($a0) +/* 09A840 80099C40 8FB90048 */ lw $t9, 0x48($sp) +/* 09A844 80099C44 AC8E0028 */ sw $t6, 0x28($a0) +/* 09A848 80099C48 00EC7021 */ addu $t6, $a3, $t4 +/* 09A84C 80099C4C ADD90000 */ sw $t9, ($t6) +/* 09A850 80099C50 0000C012 */ mflo $t8 +/* 09A854 80099C54 0118F821 */ addu $ra, $t0, $t8 +/* 09A858 80099C58 39B80001 */ xori $t8, $t5, 1 +/* 09A85C 80099C5C 03060019 */ multu $t8, $a2 +/* 09A860 80099C60 001FC8C0 */ sll $t9, $ra, 3 +/* 09A864 80099C64 8FAE0064 */ lw $t6, 0x64($sp) +/* 09A868 80099C68 00B97821 */ addu $t7, $a1, $t9 +/* 09A86C 80099C6C 0320F825 */ move $ra, $t9 +/* 09A870 80099C70 AC570000 */ sw $s7, ($v0) +/* 09A874 80099C74 AC5E0028 */ sw $fp, 0x28($v0) +/* 09A878 80099C78 ADEE0008 */ sw $t6, 8($t7) +/* 09A87C 80099C7C 8FAF0060 */ lw $t7, 0x60($sp) +/* 09A880 80099C80 25110002 */ addiu $s1, $t0, 2 +/* 09A884 80099C84 AC570008 */ sw $s7, 8($v0) +/* 09A888 80099C88 AC5E0030 */ sw $fp, 0x30($v0) +/* 09A88C 80099C8C 0000C812 */ mflo $t9 +/* 09A890 80099C90 01198021 */ addu $s0, $t0, $t9 +/* 09A894 80099C94 001070C0 */ sll $t6, $s0, 3 +/* 09A898 80099C98 00AEC021 */ addu $t8, $a1, $t6 +/* 09A89C 80099C9C AF0F0008 */ sw $t7, 8($t8) +/* 09A8A0 80099CA0 8FB9005C */ lw $t9, 0x5c($sp) +/* 09A8A4 80099CA4 01C08025 */ move $s0, $t6 +/* 09A8A8 80099CA8 8FAE0058 */ lw $t6, 0x58($sp) +/* 09A8AC 80099CAC AC790008 */ sw $t9, 8($v1) +/* 09A8B0 80099CB0 8FB9004C */ lw $t9, 0x4c($sp) +/* 09A8B4 80099CB4 AC6E0030 */ sw $t6, 0x30($v1) +/* 09A8B8 80099CB8 00FF7021 */ addu $t6, $a3, $ra +/* 09A8BC 80099CBC ADD90008 */ sw $t9, 8($t6) +/* 09A8C0 80099CC0 32390001 */ andi $t9, $s1, 1 +/* 09A8C4 80099CC4 03260019 */ multu $t9, $a2 +/* 09A8C8 80099CC8 03208825 */ move $s1, $t9 +/* 09A8CC 80099CCC 8FAF0054 */ lw $t7, 0x54($sp) +/* 09A8D0 80099CD0 8FB80050 */ lw $t8, 0x50($sp) +/* 09A8D4 80099CD4 AC8F0008 */ sw $t7, 8($a0) +/* 09A8D8 80099CD8 8FAF0048 */ lw $t7, 0x48($sp) +/* 09A8DC 80099CDC AC980030 */ sw $t8, 0x30($a0) +/* 09A8E0 80099CE0 00F0C021 */ addu $t8, $a3, $s0 +/* 09A8E4 80099CE4 AF0F0008 */ sw $t7, 8($t8) +/* 09A8E8 80099CE8 8FB80064 */ lw $t8, 0x64($sp) +/* 09A8EC 80099CEC 25140003 */ addiu $s4, $t0, 3 +/* 09A8F0 80099CF0 AC570010 */ sw $s7, 0x10($v0) +/* 09A8F4 80099CF4 00007012 */ mflo $t6 +/* 09A8F8 80099CF8 010E9021 */ addu $s2, $t0, $t6 +/* 09A8FC 80099CFC 3A2E0001 */ xori $t6, $s1, 1 +/* 09A900 80099D00 01C60019 */ multu $t6, $a2 +/* 09A904 80099D04 001278C0 */ sll $t7, $s2, 3 +/* 09A908 80099D08 00AFC821 */ addu $t9, $a1, $t7 +/* 09A90C 80099D0C 01E09025 */ move $s2, $t7 +/* 09A910 80099D10 AF380010 */ sw $t8, 0x10($t9) +/* 09A914 80099D14 8FB90060 */ lw $t9, 0x60($sp) +/* 09A918 80099D18 AC5E0038 */ sw $fp, 0x38($v0) +/* 09A91C 80099D1C 00007812 */ mflo $t7 +/* 09A920 80099D20 010F9821 */ addu $s3, $t0, $t7 +/* 09A924 80099D24 0013C0C0 */ sll $t8, $s3, 3 +/* 09A928 80099D28 00B87021 */ addu $t6, $a1, $t8 +/* 09A92C 80099D2C ADD90010 */ sw $t9, 0x10($t6) +/* 09A930 80099D30 8FAF005C */ lw $t7, 0x5c($sp) +/* 09A934 80099D34 03009825 */ move $s3, $t8 +/* 09A938 80099D38 8FB80058 */ lw $t8, 0x58($sp) +/* 09A93C 80099D3C AC6F0010 */ sw $t7, 0x10($v1) +/* 09A940 80099D40 8FAF004C */ lw $t7, 0x4c($sp) +/* 09A944 80099D44 AC780038 */ sw $t8, 0x38($v1) +/* 09A948 80099D48 00F2C021 */ addu $t8, $a3, $s2 +/* 09A94C 80099D4C AF0F0010 */ sw $t7, 0x10($t8) +/* 09A950 80099D50 328F0001 */ andi $t7, $s4, 1 +/* 09A954 80099D54 01E60019 */ multu $t7, $a2 +/* 09A958 80099D58 01E0A025 */ move $s4, $t7 +/* 09A95C 80099D5C 8FB90054 */ lw $t9, 0x54($sp) +/* 09A960 80099D60 8FAE0050 */ lw $t6, 0x50($sp) +/* 09A964 80099D64 AC990010 */ sw $t9, 0x10($a0) +/* 09A968 80099D68 8FB90048 */ lw $t9, 0x48($sp) +/* 09A96C 80099D6C AC8E0038 */ sw $t6, 0x38($a0) +/* 09A970 80099D70 00F37021 */ addu $t6, $a3, $s3 +/* 09A974 80099D74 ADD90010 */ sw $t9, 0x10($t6) +/* 09A978 80099D78 8FAE0064 */ lw $t6, 0x64($sp) +/* 09A97C 80099D7C AC570018 */ sw $s7, 0x18($v0) +/* 09A980 80099D80 AC5E0040 */ sw $fp, 0x40($v0) +/* 09A984 80099D84 0000C012 */ mflo $t8 +/* 09A988 80099D88 0118A821 */ addu $s5, $t0, $t8 +/* 09A98C 80099D8C 3A980001 */ xori $t8, $s4, 1 +/* 09A990 80099D90 03060019 */ multu $t8, $a2 +/* 09A994 80099D94 0015C8C0 */ sll $t9, $s5, 3 +/* 09A998 80099D98 00B97821 */ addu $t7, $a1, $t9 +/* 09A99C 80099D9C 0320A825 */ move $s5, $t9 +/* 09A9A0 80099DA0 ADEE0018 */ sw $t6, 0x18($t7) +/* 09A9A4 80099DA4 8FAF0060 */ lw $t7, 0x60($sp) +/* 09A9A8 80099DA8 0000C812 */ mflo $t9 +/* 09A9AC 80099DAC 0119B021 */ addu $s6, $t0, $t9 +/* 09A9B0 80099DB0 001670C0 */ sll $t6, $s6, 3 +/* 09A9B4 80099DB4 00AEC021 */ addu $t8, $a1, $t6 +/* 09A9B8 80099DB8 AF0F0018 */ sw $t7, 0x18($t8) +/* 09A9BC 80099DBC 8FB9005C */ lw $t9, 0x5c($sp) +/* 09A9C0 80099DC0 01C0B025 */ move $s6, $t6 +/* 09A9C4 80099DC4 8FAE0058 */ lw $t6, 0x58($sp) +/* 09A9C8 80099DC8 AC790018 */ sw $t9, 0x18($v1) +/* 09A9CC 80099DCC 8FB9004C */ lw $t9, 0x4c($sp) +/* 09A9D0 80099DD0 8FAF0054 */ lw $t7, 0x54($sp) +/* 09A9D4 80099DD4 AC6E0040 */ sw $t6, 0x40($v1) +/* 09A9D8 80099DD8 8FB80050 */ lw $t8, 0x50($sp) +/* 09A9DC 80099DDC 00F57021 */ addu $t6, $a3, $s5 +/* 09A9E0 80099DE0 ADD90018 */ sw $t9, 0x18($t6) +/* 09A9E4 80099DE4 AC8F0018 */ sw $t7, 0x18($a0) +/* 09A9E8 80099DE8 8FAF0048 */ lw $t7, 0x48($sp) +/* 09A9EC 80099DEC AC980040 */ sw $t8, 0x40($a0) +/* 09A9F0 80099DF0 00F6C021 */ addu $t8, $a3, $s6 +/* 09A9F4 80099DF4 0C023917 */ jal assign_vehicle_icon_textures +/* 09A9F8 80099DF8 AF0F0018 */ sw $t7, 0x18($t8) +/* 09A9FC 80099DFC 0C025181 */ jal assign_racer_portrait_textures +/* 09AA00 80099E00 00000000 */ nop +/* 09AA04 80099E04 0C02392C */ jal func_8008E4B0 +/* 09AA08 80099E08 00000000 */ nop +/* 09AA0C 80099E0C 3C018012 */ lui $at, %hi(gOptionBlinkTimer) # $at, 0x8012 +/* 09AA10 80099E10 AC2063BC */ sw $zero, %lo(gOptionBlinkTimer)($at) +/* 09AA14 80099E14 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 09AA18 80099E18 AC2063E0 */ sw $zero, %lo(D_801263E0)($at) +/* 09AA1C 80099E1C 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 +/* 09AA20 80099E20 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e +/* 09AA24 80099E24 AC2063D8 */ sw $zero, %lo(D_801263D8)($at) +/* 09AA28 80099E28 8FB90070 */ lw $t9, 0x70($sp) +/* 09AA2C 80099E2C 2442F47C */ addiu $v0, %lo(gMenuDelay) # addiu $v0, $v0, -0xb84 +/* 09AA30 80099E30 AC400000 */ sw $zero, ($v0) +/* 09AA34 80099E34 3C018012 */ lui $at, %hi(D_80126498) # $at, 0x8012 +/* 09AA38 80099E38 17200006 */ bnez $t9, .L80099E54 +/* 09AA3C 80099E3C AC206498 */ sw $zero, %lo(D_80126498)($at) +/* 09AA40 80099E40 3C04800E */ lui $a0, %hi(sMenuTransitionFadeOut) # $a0, 0x800e +/* 09AA44 80099E44 0C030076 */ jal func_800C01D8 +/* 09AA48 80099E48 2484F77C */ addiu $a0, %lo(sMenuTransitionFadeOut) # addiu $a0, $a0, -0x884 +/* 09AA4C 80099E4C 10000004 */ b .L80099E60 +/* 09AA50 80099E50 8FBF0044 */ lw $ra, 0x44($sp) +.L80099E54: +/* 09AA54 80099E54 240E001E */ li $t6, 30 +/* 09AA58 80099E58 AC4E0000 */ sw $t6, ($v0) +/* 09AA5C 80099E5C 8FBF0044 */ lw $ra, 0x44($sp) +.L80099E60: +/* 09AA60 80099E60 8FB00020 */ lw $s0, 0x20($sp) +/* 09AA64 80099E64 8FB10024 */ lw $s1, 0x24($sp) +/* 09AA68 80099E68 8FB20028 */ lw $s2, 0x28($sp) +/* 09AA6C 80099E6C 8FB3002C */ lw $s3, 0x2c($sp) +/* 09AA70 80099E70 8FB40030 */ lw $s4, 0x30($sp) +/* 09AA74 80099E74 8FB50034 */ lw $s5, 0x34($sp) +/* 09AA78 80099E78 8FB60038 */ lw $s6, 0x38($sp) +/* 09AA7C 80099E7C 8FB7003C */ lw $s7, 0x3c($sp) +/* 09AA80 80099E80 8FBE0040 */ lw $fp, 0x40($sp) +/* 09AA84 80099E84 03E00008 */ jr $ra +/* 09AA88 80099E88 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/menu/menu_magic_codes_list_loop.s b/asm/non_matchings/menu/menu_magic_codes_list_loop.s index 66bb166e..38146d70 100644 --- a/asm/non_matchings/menu/menu_magic_codes_list_loop.s +++ b/asm/non_matchings/menu/menu_magic_codes_list_loop.s @@ -25,8 +25,8 @@ glabel menu_magic_codes_list_loop /* 08B580 8008A980 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) /* 08B584 8008A984 00000000 */ nop .L8008A988: -/* 08B588 8008A988 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 08B58C 8008A98C 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc +/* 08B588 8008A988 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 08B58C 8008A98C 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc /* 08B590 8008A990 8C780000 */ lw $t8, ($v1) /* 08B594 8008A994 2841FFED */ slti $at, $v0, -0x13 /* 08B598 8008A998 0304C821 */ addu $t9, $t8, $a0 diff --git a/asm/non_matchings/menu/menu_magic_codes_loop.s b/asm/non_matchings/menu/menu_magic_codes_loop.s index 3a26fa2f..cf357e64 100644 --- a/asm/non_matchings/menu/menu_magic_codes_loop.s +++ b/asm/non_matchings/menu/menu_magic_codes_loop.s @@ -19,9 +19,9 @@ glabel menu_magic_codes_loop .L80089D1C: /* 08A91C 80089D1C 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e /* 08A920 80089D20 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) -/* 08A924 80089D24 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 +/* 08A924 80089D24 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 /* 08A928 80089D28 1040000F */ beqz $v0, .L80089D68 -/* 08A92C 80089D2C 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc +/* 08A92C 80089D2C 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc /* 08A930 80089D30 18400008 */ blez $v0, .L80089D54 /* 08A934 80089D34 0044C823 */ subu $t9, $v0, $a0 /* 08A938 80089D38 0044C021 */ addu $t8, $v0, $a0 diff --git a/asm/non_matchings/menu/menu_options_loop.s b/asm/non_matchings/menu/menu_options_loop.s index 0bc713d5..c5c3baf8 100644 --- a/asm/non_matchings/menu/menu_options_loop.s +++ b/asm/non_matchings/menu/menu_options_loop.s @@ -1,6 +1,6 @@ glabel menu_options_loop -/* 084F5C 8008435C 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 084F60 80084360 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc +/* 084F5C 8008435C 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 084F60 80084360 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc /* 084F64 80084364 8C6E0000 */ lw $t6, ($v1) /* 084F68 80084368 3C09800E */ lui $t1, %hi(gMenuDelay) # $t1, 0x800e /* 084F6C 8008436C 2529F47C */ addiu $t1, %lo(gMenuDelay) # addiu $t1, $t1, -0xb84 diff --git a/asm/non_matchings/menu/menu_results_loop.s b/asm/non_matchings/menu/menu_results_loop.s index d4639f5d..e36e6d0c 100644 --- a/asm/non_matchings/menu/menu_results_loop.s +++ b/asm/non_matchings/menu/menu_results_loop.s @@ -1,6 +1,6 @@ glabel menu_results_loop -/* 097EA8 800972A8 3C028012 */ lui $v0, %hi(D_801263BC) # $v0, 0x8012 -/* 097EAC 800972AC 244263BC */ addiu $v0, %lo(D_801263BC) # addiu $v0, $v0, 0x63bc +/* 097EA8 800972A8 3C028012 */ lui $v0, %hi(gOptionBlinkTimer) # $v0, 0x8012 +/* 097EAC 800972AC 244263BC */ addiu $v0, %lo(gOptionBlinkTimer) # addiu $v0, $v0, 0x63bc /* 097EB0 800972B0 8C4E0000 */ lw $t6, ($v0) /* 097EB4 800972B4 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 097EB8 800972B8 01C4C021 */ addu $t8, $t6, $a0 @@ -89,9 +89,9 @@ glabel menu_results_loop /* 097FF4 800973F4 14600088 */ bnez $v1, .L80097618 /* 097FF8 800973F8 8FB80028 */ lw $t8, 0x28($sp) /* 097FFC 800973FC 8CCF0000 */ lw $t7, ($a2) -/* 098000 80097400 3C04800E */ lui $a0, %hi(D_800E0988) # $a0, 0x800e +/* 098000 80097400 3C04800E */ lui $a0, %hi(gMenuSubOption) # $a0, 0x800e /* 098004 80097404 15E00009 */ bnez $t7, .L8009742C -/* 098008 80097408 24840988 */ addiu $a0, %lo(D_800E0988) # addiu $a0, $a0, 0x988 +/* 098008 80097408 24840988 */ addiu $a0, %lo(gMenuSubOption) # addiu $a0, $a0, 0x988 /* 09800C 8009740C 3C188012 */ lui $t8, %hi(D_801267E8) # $t8, 0x8012 /* 098010 80097410 8F1867E8 */ lw $t8, %lo(D_801267E8)($t8) /* 098014 80097414 00000000 */ nop @@ -156,12 +156,12 @@ glabel menu_results_loop /* 0980E8 800974E8 AFAF001C */ sw $t7, 0x1c($sp) .L800974EC: /* 0980EC 800974EC 8F1867E8 */ lw $t8, %lo(D_801267E8)($t8) -/* 0980F0 800974F0 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 +/* 0980F0 800974F0 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 /* 0980F4 800974F4 33199000 */ andi $t9, $t8, 0x9000 /* 0980F8 800974F8 13200019 */ beqz $t9, .L80097560 -/* 0980FC 800974FC 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 -/* 098100 80097500 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 -/* 098104 80097504 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 +/* 0980FC 800974FC 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 +/* 098100 80097500 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 +/* 098104 80097504 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 /* 098108 80097508 8CCA0000 */ lw $t2, ($a2) /* 09810C 8009750C 3C0D800E */ lui $t5, %hi(gMenuText) # $t5, 0x800e /* 098110 80097510 8DADF4A0 */ lw $t5, %lo(gMenuText)($t5) @@ -250,8 +250,8 @@ glabel menu_results_loop /* 098238 80097638 24040007 */ li $a0, 7 /* 09823C 8009763C 0C031525 */ jal assign_dialogue_box_id /* 098240 80097640 24040007 */ li $a0, 7 -/* 098244 80097644 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 -/* 098248 80097648 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 +/* 098244 80097644 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 +/* 098248 80097648 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 /* 09824C 8009764C 8CCB0000 */ lw $t3, ($a2) /* 098250 80097650 3C03800E */ lui $v1, %hi(gMenuText) # $v1, 0x800e /* 098254 80097654 8C63F4A0 */ lw $v1, %lo(gMenuText)($v1) diff --git a/asm/non_matchings/menu/menu_save_options_loop.s b/asm/non_matchings/menu/menu_save_options_loop.s index ef436535..d96c797a 100644 --- a/asm/non_matchings/menu/menu_save_options_loop.s +++ b/asm/non_matchings/menu/menu_save_options_loop.s @@ -4,8 +4,8 @@ glabel jpt_800E84B0 .text glabel menu_save_options_loop -/* 088760 80087B60 3C038012 */ lui $v1, %hi(D_801263BC) # $v1, 0x8012 -/* 088764 80087B64 246363BC */ addiu $v1, %lo(D_801263BC) # addiu $v1, $v1, 0x63bc +/* 088760 80087B60 3C038012 */ lui $v1, %hi(gOptionBlinkTimer) # $v1, 0x8012 +/* 088764 80087B64 246363BC */ addiu $v1, %lo(gOptionBlinkTimer) # addiu $v1, $v1, 0x63bc /* 088768 80087B68 8C6E0000 */ lw $t6, ($v1) /* 08876C 80087B6C 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 088770 80087B70 01C47821 */ addu $t7, $t6, $a0 diff --git a/asm/non_matchings/menu/menu_track_select_init.s b/asm/non_matchings/menu/menu_track_select_init.s index e1e840ca..38f0a7ea 100644 --- a/asm/non_matchings/menu/menu_track_select_init.s +++ b/asm/non_matchings/menu/menu_track_select_init.s @@ -85,8 +85,8 @@ glabel menu_track_select_init /* 08F4E8 8008E8E8 AC3563D0 */ sw $s5, %lo(D_801263D0)($at) /* 08F4EC 8008E8EC 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 /* 08F4F0 8008E8F0 AC2F63D8 */ sw $t7, %lo(D_801263D8)($at) -/* 08F4F4 8008E8F4 3C018012 */ lui $at, %hi(D_801263BC) # $at, 0x8012 -/* 08F4F8 8008E8F8 AC2063BC */ sw $zero, %lo(D_801263BC)($at) +/* 08F4F4 8008E8F4 3C018012 */ lui $at, %hi(gOptionBlinkTimer) # $at, 0x8012 +/* 08F4F8 8008E8F8 AC2063BC */ sw $zero, %lo(gOptionBlinkTimer)($at) /* 08F4FC 8008E8FC 3C018012 */ lui $at, %hi(D_801267D0) # $at, 0x8012 /* 08F500 8008E900 0C023C03 */ jal func_8008F00C /* 08F504 8008E904 AC3567D0 */ sw $s5, %lo(D_801267D0)($at) diff --git a/asm/non_matchings/menu/menu_trophy_race_rankings_init.s b/asm/non_matchings/menu/menu_trophy_race_rankings_init.s index 36e6bc6f..73f92978 100644 --- a/asm/non_matchings/menu/menu_trophy_race_rankings_init.s +++ b/asm/non_matchings/menu/menu_trophy_race_rankings_init.s @@ -1,328 +1,328 @@ -glabel menu_trophy_race_rankings_init -/* 099624 80098A24 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 099628 80098A28 AFBF001C */ sw $ra, 0x1c($sp) -/* 09962C 80098A2C 0C01BAA4 */ jal get_settings -/* 099630 80098A30 00000000 */ nop -/* 099634 80098A34 2404001A */ li $a0, 26 -/* 099638 80098A38 0C0078A7 */ jal get_misc_asset -/* 09963C 80098A3C AFA20040 */ sw $v0, 0x40($sp) -/* 099640 80098A40 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 -/* 099644 80098A44 AC2063E0 */ sw $zero, %lo(D_801263E0)($at) -/* 099648 80098A48 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e -/* 09964C 80098A4C AC20F47C */ sw $zero, %lo(gMenuDelay)($at) -/* 099650 80098A50 3C018012 */ lui $at, %hi(D_801263BC) # $at, 0x8012 -/* 099654 80098A54 AC2063BC */ sw $zero, %lo(D_801263BC)($at) -/* 099658 80098A58 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 -/* 09965C 80098A5C AC2063D8 */ sw $zero, %lo(D_801263D8)($at) -/* 099660 80098A60 0C026F97 */ jal reset_controller_sticks -/* 099664 80098A64 AFA2003C */ sw $v0, 0x3c($sp) -/* 099668 80098A68 3C04800E */ lui $a0, %hi(D_800E1024) # $a0, 0x800e -/* 09966C 80098A6C 0C02719D */ jal func_8009C674 -/* 099670 80098A70 24841024 */ addiu $a0, %lo(D_800E1024) # addiu $a0, $a0, 0x1024 -/* 099674 80098A74 3C04800E */ lui $a0, %hi(D_800E1040) # $a0, 0x800e -/* 099678 80098A78 0C027229 */ jal allocate_menu_images -/* 09967C 80098A7C 24841040 */ addiu $a0, %lo(D_800E1040) # addiu $a0, $a0, 0x1040 -/* 099680 80098A80 3C03800E */ lui $v1, %hi(gTrophyRaceRound) # $v1, 0x800e -/* 099684 80098A84 24630FEC */ addiu $v1, %lo(gTrophyRaceRound) # addiu $v1, $v1, 0xfec -/* 099688 80098A88 8C620000 */ lw $v0, ($v1) -/* 09968C 80098A8C 3C01800E */ lui $at, %hi(D_800E0FF0) # $at, 0x800e -/* 099690 80098A90 3C05800E */ lui $a1, %hi(gTrophyRaceWorldId) # $a1, 0x800e -/* 099694 80098A94 8FA7003C */ lw $a3, 0x3c($sp) -/* 099698 80098A98 8FA90040 */ lw $t1, 0x40($sp) -/* 09969C 80098A9C 24A50FE8 */ addiu $a1, %lo(gTrophyRaceWorldId) # addiu $a1, $a1, 0xfe8 -/* 0996A0 80098AA0 24060006 */ li $a2, 6 -/* 0996A4 80098AA4 2404FFFF */ li $a0, -1 -/* 0996A8 80098AA8 AC220FF0 */ sw $v0, %lo(D_800E0FF0)($at) -/* 0996AC 80098AAC 244E0001 */ addiu $t6, $v0, 1 -.L80098AB0: -/* 0996B0 80098AB0 29C10004 */ slti $at, $t6, 4 -/* 0996B4 80098AB4 AC6E0000 */ sw $t6, ($v1) -/* 0996B8 80098AB8 1020000B */ beqz $at, .L80098AE8 -/* 0996BC 80098ABC 01C01025 */ move $v0, $t6 -/* 0996C0 80098AC0 8CAF0000 */ lw $t7, ($a1) -/* 0996C4 80098AC4 00000000 */ nop -/* 0996C8 80098AC8 01E60019 */ multu $t7, $a2 -/* 0996CC 80098ACC 0000C012 */ mflo $t8 -/* 0996D0 80098AD0 030EC821 */ addu $t9, $t8, $t6 -/* 0996D4 80098AD4 03276821 */ addu $t5, $t9, $a3 -/* 0996D8 80098AD8 81AEFFFA */ lb $t6, -6($t5) -/* 0996DC 80098ADC 00000000 */ nop -/* 0996E0 80098AE0 108EFFF3 */ beq $a0, $t6, .L80098AB0 -/* 0996E4 80098AE4 244E0001 */ addiu $t6, $v0, 1 -.L80098AE8: -/* 0996E8 80098AE8 28410004 */ slti $at, $v0, 4 -/* 0996EC 80098AEC 1020000D */ beqz $at, .L80098B24 -/* 0996F0 80098AF0 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 -/* 0996F4 80098AF4 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e -/* 0996F8 80098AF8 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) -/* 0996FC 80098AFC 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 -/* 099700 80098B00 8C4F0188 */ lw $t7, 0x188($v0) -/* 099704 80098B04 24636BF0 */ addiu $v1, %lo(D_80126BF0) # addiu $v1, $v1, 0x6bf0 -/* 099708 80098B08 AC6F0000 */ sw $t7, ($v1) -/* 09970C 80098B0C 8C580204 */ lw $t8, 0x204($v0) -/* 099710 80098B10 24190003 */ li $t9, 3 -/* 099714 80098B14 3C018012 */ lui $at, %hi(D_80126C14) # $at, 0x8012 -/* 099718 80098B18 AC780004 */ sw $t8, 4($v1) -/* 09971C 80098B1C 10000009 */ b .L80098B44 -/* 099720 80098B20 AC396C14 */ sw $t9, %lo(D_80126C14)($at) -.L80098B24: -/* 099724 80098B24 3C0D800E */ lui $t5, %hi(gMenuText) # $t5, 0x800e -/* 099728 80098B28 8DADF4A0 */ lw $t5, %lo(gMenuText)($t5) -/* 09972C 80098B2C 24636BF0 */ addiu $v1, %lo(D_80126BF0) # addiu $v1, $v1, 0x6bf0 -/* 099730 80098B30 8DAE0244 */ lw $t6, 0x244($t5) -/* 099734 80098B34 240F0001 */ li $t7, 1 -/* 099738 80098B38 3C018012 */ lui $at, %hi(D_80126C14) # $at, 0x8012 -/* 09973C 80098B3C AC6E0000 */ sw $t6, ($v1) -/* 099740 80098B40 AC2F6C14 */ sw $t7, %lo(D_80126C14)($at) -.L80098B44: -/* 099744 80098B44 3C018012 */ lui $at, %hi(D_80126A68) # $at, 0x8012 -/* 099748 80098B48 AC206A68 */ sw $zero, %lo(D_80126A68)($at) -/* 09974C 80098B4C 0C025181 */ jal assign_racer_portrait_textures -/* 099750 80098B50 AFA90040 */ sw $t1, 0x40($sp) -/* 099754 80098B54 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e -/* 099758 80098B58 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 -/* 09975C 80098B5C 8D620000 */ lw $v0, ($t3) -/* 099760 80098B60 8FA90040 */ lw $t1, 0x40($sp) -/* 099764 80098B64 28410003 */ slti $at, $v0, 3 -/* 099768 80098B68 14200004 */ bnez $at, .L80098B7C -/* 09976C 80098B6C 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e -/* 099770 80098B70 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 -/* 099774 80098B74 10000017 */ b .L80098BD4 -/* 099778 80098B78 AD820000 */ sw $v0, ($t4) -.L80098B7C: -/* 09977C 80098B7C 24010002 */ li $at, 2 -/* 099780 80098B80 10410007 */ beq $v0, $at, .L80098BA0 -/* 099784 80098B84 00000000 */ nop -/* 099788 80098B88 0C027B20 */ jal is_in_two_player_adventure -/* 09978C 80098B8C AFA90040 */ sw $t1, 0x40($sp) -/* 099790 80098B90 8FA90040 */ lw $t1, 0x40($sp) -/* 099794 80098B94 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e -/* 099798 80098B98 1040000A */ beqz $v0, .L80098BC4 -/* 09979C 80098B9C 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 -.L80098BA0: -/* 0997A0 80098BA0 0C027110 */ jal get_multiplayer_racer_count -/* 0997A4 80098BA4 AFA90040 */ sw $t1, 0x40($sp) -/* 0997A8 80098BA8 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e -/* 0997AC 80098BAC 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 -/* 0997B0 80098BB0 8FA90040 */ lw $t1, 0x40($sp) -/* 0997B4 80098BB4 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e -/* 0997B8 80098BB8 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 -/* 0997BC 80098BBC 10000005 */ b .L80098BD4 -/* 0997C0 80098BC0 AD820000 */ sw $v0, ($t4) -.L80098BC4: -/* 0997C4 80098BC4 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e -/* 0997C8 80098BC8 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 -/* 0997CC 80098BCC 24180008 */ li $t8, 8 -/* 0997D0 80098BD0 AD980000 */ sw $t8, ($t4) -.L80098BD4: -/* 0997D4 80098BD4 8D850000 */ lw $a1, ($t4) -/* 0997D8 80098BD8 00004025 */ move $t0, $zero -/* 0997DC 80098BDC 18A0001C */ blez $a1, .L80098C50 -/* 0997E0 80098BE0 3C048012 */ lui $a0, %hi(D_80126428) # $a0, 0x8012 -/* 0997E4 80098BE4 24846428 */ addiu $a0, %lo(D_80126428) # addiu $a0, $a0, 0x6428 -/* 0997E8 80098BE8 240A0001 */ li $t2, 1 -.L80098BEC: -/* 0997EC 80098BEC 18A00013 */ blez $a1, .L80098C3C -/* 0997F0 80098BF0 00003825 */ move $a3, $zero -/* 0997F4 80098BF4 01201825 */ move $v1, $t1 -.L80098BF8: -/* 0997F8 80098BF8 8079005A */ lb $t9, 0x5a($v1) -/* 0997FC 80098BFC 00886821 */ addu $t5, $a0, $t0 -/* 099800 80098C00 1519000A */ bne $t0, $t9, .L80098C2C -/* 099804 80098C04 3C0E8012 */ lui $t6, %hi(D_80126418) # $t6, 0x8012 -/* 099808 80098C08 A1A70000 */ sb $a3, ($t5) -/* 09980C 80098C0C 8D6F0000 */ lw $t7, ($t3) -/* 099810 80098C10 25CE6418 */ addiu $t6, %lo(D_80126418) # addiu $t6, $t6, 0x6418 -/* 099814 80098C14 00EF082A */ slt $at, $a3, $t7 -/* 099818 80098C18 10200003 */ beqz $at, .L80098C28 -/* 09981C 80098C1C 010E1021 */ addu $v0, $t0, $t6 -/* 099820 80098C20 10000002 */ b .L80098C2C -/* 099824 80098C24 A04A0000 */ sb $t2, ($v0) -.L80098C28: -/* 099828 80098C28 A0400000 */ sb $zero, ($v0) -.L80098C2C: -/* 09982C 80098C2C 24E70001 */ addiu $a3, $a3, 1 -/* 099830 80098C30 00E5082A */ slt $at, $a3, $a1 -/* 099834 80098C34 1420FFF0 */ bnez $at, .L80098BF8 -/* 099838 80098C38 24630018 */ addiu $v1, $v1, 0x18 -.L80098C3C: -/* 09983C 80098C3C 25080001 */ addiu $t0, $t0, 1 -/* 099840 80098C40 0105082A */ slt $at, $t0, $a1 -/* 099844 80098C44 1420FFE9 */ bnez $at, .L80098BEC -/* 099848 80098C48 00000000 */ nop -/* 09984C 80098C4C 00004025 */ move $t0, $zero -.L80098C50: -/* 099850 80098C50 18A00011 */ blez $a1, .L80098C98 -/* 099854 80098C54 3C188012 */ lui $t8, %hi(D_801263F8) # $t8, 0x8012 -/* 099858 80098C58 270263F8 */ addiu $v0, $t8, %lo(D_801263F8) -/* 09985C 80098C5C 0005C880 */ sll $t9, $a1, 2 -/* 099860 80098C60 3C04800E */ lui $a0, %hi(gTrophyRacePointsArray) # $a0, 0x800e -/* 099864 80098C64 24841004 */ addiu $a0, %lo(gTrophyRacePointsArray) # addiu $a0, $a0, 0x1004 -/* 099868 80098C68 03223021 */ addu $a2, $t9, $v0 -/* 09986C 80098C6C 01201825 */ move $v1, $t1 -.L80098C70: -/* 099870 80098C70 806D005A */ lb $t5, 0x5a($v1) -/* 099874 80098C74 24420004 */ addiu $v0, $v0, 4 -/* 099878 80098C78 000D7080 */ sll $t6, $t5, 2 -/* 09987C 80098C7C 008E7821 */ addu $t7, $a0, $t6 -/* 099880 80098C80 8DF90000 */ lw $t9, ($t7) -/* 099884 80098C84 0046082B */ sltu $at, $v0, $a2 -/* 099888 80098C88 24630018 */ addiu $v1, $v1, 0x18 -/* 09988C 80098C8C 1420FFF8 */ bnez $at, .L80098C70 -/* 099890 80098C90 AC59FFFC */ sw $t9, -4($v0) -/* 099894 80098C94 00004025 */ move $t0, $zero -.L80098C98: -/* 099898 80098C98 18A00012 */ blez $a1, .L80098CE4 -/* 09989C 80098C9C 3C028012 */ lui $v0, %hi(D_801263F8) # $v0, 0x8012 -/* 0998A0 80098CA0 3C048012 */ lui $a0, %hi(D_80126430) # $a0, 0x8012 -/* 0998A4 80098CA4 24846430 */ addiu $a0, %lo(D_80126430) # addiu $a0, $a0, 0x6430 -/* 0998A8 80098CA8 244263F8 */ addiu $v0, %lo(D_801263F8) # addiu $v0, $v0, 0x63f8 -/* 0998AC 80098CAC 01201825 */ move $v1, $t1 -/* 0998B0 80098CB0 27A60048 */ addiu $a2, $sp, 0x48 -.L80098CB4: -/* 0998B4 80098CB4 A0880000 */ sb $t0, ($a0) -/* 0998B8 80098CB8 8C6D0054 */ lw $t5, 0x54($v1) -/* 0998BC 80098CBC 8C580000 */ lw $t8, ($v0) -/* 0998C0 80098CC0 25080001 */ addiu $t0, $t0, 1 -/* 0998C4 80098CC4 0105082A */ slt $at, $t0, $a1 -/* 0998C8 80098CC8 030D7021 */ addu $t6, $t8, $t5 -/* 0998CC 80098CCC 24420004 */ addiu $v0, $v0, 4 -/* 0998D0 80098CD0 24630018 */ addiu $v1, $v1, 0x18 -/* 0998D4 80098CD4 24840001 */ addiu $a0, $a0, 1 -/* 0998D8 80098CD8 24C60004 */ addiu $a2, $a2, 4 -/* 0998DC 80098CDC 1420FFF5 */ bnez $at, .L80098CB4 -/* 0998E0 80098CE0 ACCEFFFC */ sw $t6, -4($a2) -.L80098CE4: -/* 0998E4 80098CE4 24A8FFFF */ addiu $t0, $a1, -1 -/* 0998E8 80098CE8 1900003D */ blez $t0, .L80098DE0 -/* 0998EC 80098CEC 3C098012 */ lui $t1, %hi(D_80126430) # $t1, 0x8012 -/* 0998F0 80098CF0 8FA5004C */ lw $a1, 0x4c($sp) -/* 0998F4 80098CF4 8FA30048 */ lw $v1, 0x48($sp) -/* 0998F8 80098CF8 25296430 */ addiu $t1, %lo(D_80126430) # addiu $t1, $t1, 0x6430 -.L80098CFC: -/* 0998FC 80098CFC 19000033 */ blez $t0, .L80098DCC -/* 099900 80098D00 00003825 */ move $a3, $zero -/* 099904 80098D04 31020001 */ andi $v0, $t0, 1 -/* 099908 80098D08 1040000E */ beqz $v0, .L80098D44 -/* 09990C 80098D0C 0065082A */ slt $at, $v1, $a1 -/* 099910 80098D10 1020000B */ beqz $at, .L80098D40 -/* 099914 80098D14 24070001 */ li $a3, 1 -/* 099918 80098D18 00601025 */ move $v0, $v1 -/* 09991C 80098D1C 00A01825 */ move $v1, $a1 -/* 099920 80098D20 00402825 */ move $a1, $v0 -/* 099924 80098D24 3C028012 */ lui $v0, %hi(D_80126430) # $v0, 0x8012 -/* 099928 80098D28 3C0F8012 */ lui $t7, %hi(D_80126431) # $t7, 0x8012 -/* 09992C 80098D2C 91EF6431 */ lbu $t7, %lo(D_80126431)($t7) -/* 099930 80098D30 90426430 */ lbu $v0, %lo(D_80126430)($v0) -/* 099934 80098D34 3C018012 */ lui $at, %hi(D_80126431) # $at, 0x8012 -/* 099938 80098D38 A02F6430 */ sb $t7, %lo(D_80126430)($at) -/* 09993C 80098D3C A0226431 */ sb $v0, %lo(D_80126431)($at) -.L80098D40: -/* 099940 80098D40 10E80022 */ beq $a3, $t0, .L80098DCC -.L80098D44: -/* 099944 80098D44 0007C880 */ sll $t9, $a3, 2 -/* 099948 80098D48 27B80048 */ addiu $t8, $sp, 0x48 -/* 09994C 80098D4C 03382021 */ addu $a0, $t9, $t8 -/* 099950 80098D50 AFA30048 */ sw $v1, 0x48($sp) -/* 099954 80098D54 AFA5004C */ sw $a1, 0x4c($sp) -.L80098D58: -/* 099958 80098D58 8C860000 */ lw $a2, ($a0) -/* 09995C 80098D5C 8C850004 */ lw $a1, 4($a0) -/* 099960 80098D60 01271821 */ addu $v1, $t1, $a3 -/* 099964 80098D64 00C5082A */ slt $at, $a2, $a1 -/* 099968 80098D68 10200008 */ beqz $at, .L80098D8C -/* 09996C 80098D6C 00000000 */ nop -/* 099970 80098D70 90620000 */ lbu $v0, ($v1) -/* 099974 80098D74 906D0001 */ lbu $t5, 1($v1) -/* 099978 80098D78 AC850000 */ sw $a1, ($a0) -/* 09997C 80098D7C AC860004 */ sw $a2, 4($a0) -/* 099980 80098D80 00C02825 */ move $a1, $a2 -/* 099984 80098D84 A0620001 */ sb $v0, 1($v1) -/* 099988 80098D88 A06D0000 */ sb $t5, ($v1) -.L80098D8C: -/* 09998C 80098D8C 8C860008 */ lw $a2, 8($a0) -/* 099990 80098D90 01271821 */ addu $v1, $t1, $a3 -/* 099994 80098D94 00A6082A */ slt $at, $a1, $a2 -/* 099998 80098D98 10200007 */ beqz $at, .L80098DB8 -/* 09999C 80098D9C 00000000 */ nop -/* 0999A0 80098DA0 90620001 */ lbu $v0, 1($v1) -/* 0999A4 80098DA4 906E0002 */ lbu $t6, 2($v1) -/* 0999A8 80098DA8 AC860004 */ sw $a2, 4($a0) -/* 0999AC 80098DAC AC850008 */ sw $a1, 8($a0) -/* 0999B0 80098DB0 A0620002 */ sb $v0, 2($v1) -/* 0999B4 80098DB4 A06E0001 */ sb $t6, 1($v1) -.L80098DB8: -/* 0999B8 80098DB8 8FA30048 */ lw $v1, 0x48($sp) -/* 0999BC 80098DBC 8FA5004C */ lw $a1, 0x4c($sp) -/* 0999C0 80098DC0 24E70002 */ addiu $a3, $a3, 2 -/* 0999C4 80098DC4 14E8FFE4 */ bne $a3, $t0, .L80098D58 -/* 0999C8 80098DC8 24840008 */ addiu $a0, $a0, 8 -.L80098DCC: -/* 0999CC 80098DCC 2508FFFF */ addiu $t0, $t0, -1 -/* 0999D0 80098DD0 1D00FFCA */ bgtz $t0, .L80098CFC -/* 0999D4 80098DD4 00000000 */ nop -/* 0999D8 80098DD8 AFA5004C */ sw $a1, 0x4c($sp) -/* 0999DC 80098DDC AFA30048 */ sw $v1, 0x48($sp) -.L80098DE0: -/* 0999E0 80098DE0 0C027B20 */ jal is_in_two_player_adventure -/* 0999E4 80098DE4 00000000 */ nop -/* 0999E8 80098DE8 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e -/* 0999EC 80098DEC 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e -/* 0999F0 80098DF0 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 -/* 0999F4 80098DF4 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 -/* 0999F8 80098DF8 10400003 */ beqz $v0, .L80098E08 -/* 0999FC 80098DFC 240A0001 */ li $t2, 1 -/* 099A00 80098E00 10000003 */ b .L80098E10 -/* 099A04 80098E04 24070002 */ li $a3, 2 -.L80098E08: -/* 099A08 80098E08 8D670000 */ lw $a3, ($t3) -/* 099A0C 80098E0C 00000000 */ nop -.L80098E10: -/* 099A10 80098E10 8D850000 */ lw $a1, ($t4) -/* 099A14 80098E14 3C048012 */ lui $a0, %hi(D_80126430) # $a0, 0x8012 -/* 099A18 80098E18 18A00010 */ blez $a1, .L80098E5C -/* 099A1C 80098E1C 24846430 */ addiu $a0, %lo(D_80126430) # addiu $a0, $a0, 0x6430 -/* 099A20 80098E20 3C0F8012 */ lui $t7, %hi(D_80126420) # $t7, 0x8012 -/* 099A24 80098E24 25E26420 */ addiu $v0, $t7, %lo(D_80126420) -/* 099A28 80098E28 00A21821 */ addu $v1, $a1, $v0 -.L80098E2C: -/* 099A2C 80098E2C 90990000 */ lbu $t9, ($a0) -/* 099A30 80098E30 00000000 */ nop -/* 099A34 80098E34 0327082A */ slt $at, $t9, $a3 -/* 099A38 80098E38 10200003 */ beqz $at, .L80098E48 -/* 099A3C 80098E3C 00000000 */ nop -/* 099A40 80098E40 10000002 */ b .L80098E4C -/* 099A44 80098E44 A04A0000 */ sb $t2, ($v0) -.L80098E48: -/* 099A48 80098E48 A0400000 */ sb $zero, ($v0) -.L80098E4C: -/* 099A4C 80098E4C 24420001 */ addiu $v0, $v0, 1 -/* 099A50 80098E50 0043082B */ sltu $at, $v0, $v1 -/* 099A54 80098E54 1420FFF5 */ bnez $at, .L80098E2C -/* 099A58 80098E58 24840001 */ addiu $a0, $a0, 1 -.L80098E5C: -/* 099A5C 80098E5C 0C03105C */ jal load_font -/* 099A60 80098E60 24040002 */ li $a0, 2 -/* 099A64 80098E64 0C0002F8 */ jal set_music_player_voice_limit -/* 099A68 80098E68 24040018 */ li $a0, 24 -/* 099A6C 80098E6C 0C0002CD */ jal play_music -/* 099A70 80098E70 24040018 */ li $a0, 24 -/* 099A74 80098E74 0C000326 */ jal set_music_fade_timer -/* 099A78 80098E78 24040100 */ li $a0, 256 -/* 099A7C 80098E7C 0C0261DD */ jal func_80098774 -/* 099A80 80098E80 00002025 */ move $a0, $zero -/* 099A84 80098E84 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 099A88 80098E88 44810000 */ mtc1 $at, $f0 -/* 099A8C 80098E8C 3C04800E */ lui $a0, %hi(D_800E1048) # $a0, 0x800e -/* 099A90 80098E90 44050000 */ mfc1 $a1, $f0 -/* 099A94 80098E94 44070000 */ mfc1 $a3, $f0 -/* 099A98 80098E98 24841048 */ addiu $a0, %lo(D_800E1048) # addiu $a0, $a0, 0x1048 -/* 099A9C 80098E9C 3C0641A0 */ lui $a2, 0x41a0 -/* 099AA0 80098EA0 AFA00010 */ sw $zero, 0x10($sp) -/* 099AA4 80098EA4 0C020795 */ jal func_80081E54 -/* 099AA8 80098EA8 AFA00014 */ sw $zero, 0x14($sp) -/* 099AAC 80098EAC 8FBF001C */ lw $ra, 0x1c($sp) -/* 099AB0 80098EB0 27BD0070 */ addiu $sp, $sp, 0x70 -/* 099AB4 80098EB4 03E00008 */ jr $ra -/* 099AB8 80098EB8 00000000 */ nop - +glabel menu_trophy_race_rankings_init +/* 099624 80098A24 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 099628 80098A28 AFBF001C */ sw $ra, 0x1c($sp) +/* 09962C 80098A2C 0C01BAA4 */ jal get_settings +/* 099630 80098A30 00000000 */ nop +/* 099634 80098A34 2404001A */ li $a0, 26 +/* 099638 80098A38 0C0078A7 */ jal get_misc_asset +/* 09963C 80098A3C AFA20040 */ sw $v0, 0x40($sp) +/* 099640 80098A40 3C018012 */ lui $at, %hi(D_801263E0) # $at, 0x8012 +/* 099644 80098A44 AC2063E0 */ sw $zero, %lo(D_801263E0)($at) +/* 099648 80098A48 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e +/* 09964C 80098A4C AC20F47C */ sw $zero, %lo(gMenuDelay)($at) +/* 099650 80098A50 3C018012 */ lui $at, %hi(gOptionBlinkTimer) # $at, 0x8012 +/* 099654 80098A54 AC2063BC */ sw $zero, %lo(gOptionBlinkTimer)($at) +/* 099658 80098A58 3C018012 */ lui $at, %hi(D_801263D8) # $at, 0x8012 +/* 09965C 80098A5C AC2063D8 */ sw $zero, %lo(D_801263D8)($at) +/* 099660 80098A60 0C026F97 */ jal reset_controller_sticks +/* 099664 80098A64 AFA2003C */ sw $v0, 0x3c($sp) +/* 099668 80098A68 3C04800E */ lui $a0, %hi(D_800E1024) # $a0, 0x800e +/* 09966C 80098A6C 0C02719D */ jal func_8009C674 +/* 099670 80098A70 24841024 */ addiu $a0, %lo(D_800E1024) # addiu $a0, $a0, 0x1024 +/* 099674 80098A74 3C04800E */ lui $a0, %hi(D_800E1040) # $a0, 0x800e +/* 099678 80098A78 0C027229 */ jal allocate_menu_images +/* 09967C 80098A7C 24841040 */ addiu $a0, %lo(D_800E1040) # addiu $a0, $a0, 0x1040 +/* 099680 80098A80 3C03800E */ lui $v1, %hi(gTrophyRaceRound) # $v1, 0x800e +/* 099684 80098A84 24630FEC */ addiu $v1, %lo(gTrophyRaceRound) # addiu $v1, $v1, 0xfec +/* 099688 80098A88 8C620000 */ lw $v0, ($v1) +/* 09968C 80098A8C 3C01800E */ lui $at, %hi(D_800E0FF0) # $at, 0x800e +/* 099690 80098A90 3C05800E */ lui $a1, %hi(gTrophyRaceWorldId) # $a1, 0x800e +/* 099694 80098A94 8FA7003C */ lw $a3, 0x3c($sp) +/* 099698 80098A98 8FA90040 */ lw $t1, 0x40($sp) +/* 09969C 80098A9C 24A50FE8 */ addiu $a1, %lo(gTrophyRaceWorldId) # addiu $a1, $a1, 0xfe8 +/* 0996A0 80098AA0 24060006 */ li $a2, 6 +/* 0996A4 80098AA4 2404FFFF */ li $a0, -1 +/* 0996A8 80098AA8 AC220FF0 */ sw $v0, %lo(D_800E0FF0)($at) +/* 0996AC 80098AAC 244E0001 */ addiu $t6, $v0, 1 +.L80098AB0: +/* 0996B0 80098AB0 29C10004 */ slti $at, $t6, 4 +/* 0996B4 80098AB4 AC6E0000 */ sw $t6, ($v1) +/* 0996B8 80098AB8 1020000B */ beqz $at, .L80098AE8 +/* 0996BC 80098ABC 01C01025 */ move $v0, $t6 +/* 0996C0 80098AC0 8CAF0000 */ lw $t7, ($a1) +/* 0996C4 80098AC4 00000000 */ nop +/* 0996C8 80098AC8 01E60019 */ multu $t7, $a2 +/* 0996CC 80098ACC 0000C012 */ mflo $t8 +/* 0996D0 80098AD0 030EC821 */ addu $t9, $t8, $t6 +/* 0996D4 80098AD4 03276821 */ addu $t5, $t9, $a3 +/* 0996D8 80098AD8 81AEFFFA */ lb $t6, -6($t5) +/* 0996DC 80098ADC 00000000 */ nop +/* 0996E0 80098AE0 108EFFF3 */ beq $a0, $t6, .L80098AB0 +/* 0996E4 80098AE4 244E0001 */ addiu $t6, $v0, 1 +.L80098AE8: +/* 0996E8 80098AE8 28410004 */ slti $at, $v0, 4 +/* 0996EC 80098AEC 1020000D */ beqz $at, .L80098B24 +/* 0996F0 80098AF0 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 +/* 0996F4 80098AF4 3C02800E */ lui $v0, %hi(gMenuText) # $v0, 0x800e +/* 0996F8 80098AF8 8C42F4A0 */ lw $v0, %lo(gMenuText)($v0) +/* 0996FC 80098AFC 3C038012 */ lui $v1, %hi(D_80126BF0) # $v1, 0x8012 +/* 099700 80098B00 8C4F0188 */ lw $t7, 0x188($v0) +/* 099704 80098B04 24636BF0 */ addiu $v1, %lo(D_80126BF0) # addiu $v1, $v1, 0x6bf0 +/* 099708 80098B08 AC6F0000 */ sw $t7, ($v1) +/* 09970C 80098B0C 8C580204 */ lw $t8, 0x204($v0) +/* 099710 80098B10 24190003 */ li $t9, 3 +/* 099714 80098B14 3C018012 */ lui $at, %hi(D_80126C14) # $at, 0x8012 +/* 099718 80098B18 AC780004 */ sw $t8, 4($v1) +/* 09971C 80098B1C 10000009 */ b .L80098B44 +/* 099720 80098B20 AC396C14 */ sw $t9, %lo(D_80126C14)($at) +.L80098B24: +/* 099724 80098B24 3C0D800E */ lui $t5, %hi(gMenuText) # $t5, 0x800e +/* 099728 80098B28 8DADF4A0 */ lw $t5, %lo(gMenuText)($t5) +/* 09972C 80098B2C 24636BF0 */ addiu $v1, %lo(D_80126BF0) # addiu $v1, $v1, 0x6bf0 +/* 099730 80098B30 8DAE0244 */ lw $t6, 0x244($t5) +/* 099734 80098B34 240F0001 */ li $t7, 1 +/* 099738 80098B38 3C018012 */ lui $at, %hi(D_80126C14) # $at, 0x8012 +/* 09973C 80098B3C AC6E0000 */ sw $t6, ($v1) +/* 099740 80098B40 AC2F6C14 */ sw $t7, %lo(D_80126C14)($at) +.L80098B44: +/* 099744 80098B44 3C018012 */ lui $at, %hi(gMenuOption) # $at, 0x8012 +/* 099748 80098B48 AC206A68 */ sw $zero, %lo(gMenuOption)($at) +/* 09974C 80098B4C 0C025181 */ jal assign_racer_portrait_textures +/* 099750 80098B50 AFA90040 */ sw $t1, 0x40($sp) +/* 099754 80098B54 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e +/* 099758 80098B58 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 +/* 09975C 80098B5C 8D620000 */ lw $v0, ($t3) +/* 099760 80098B60 8FA90040 */ lw $t1, 0x40($sp) +/* 099764 80098B64 28410003 */ slti $at, $v0, 3 +/* 099768 80098B68 14200004 */ bnez $at, .L80098B7C +/* 09976C 80098B6C 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e +/* 099770 80098B70 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 +/* 099774 80098B74 10000017 */ b .L80098BD4 +/* 099778 80098B78 AD820000 */ sw $v0, ($t4) +.L80098B7C: +/* 09977C 80098B7C 24010002 */ li $at, 2 +/* 099780 80098B80 10410007 */ beq $v0, $at, .L80098BA0 +/* 099784 80098B84 00000000 */ nop +/* 099788 80098B88 0C027B20 */ jal is_in_two_player_adventure +/* 09978C 80098B8C AFA90040 */ sw $t1, 0x40($sp) +/* 099790 80098B90 8FA90040 */ lw $t1, 0x40($sp) +/* 099794 80098B94 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e +/* 099798 80098B98 1040000A */ beqz $v0, .L80098BC4 +/* 09979C 80098B9C 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 +.L80098BA0: +/* 0997A0 80098BA0 0C027110 */ jal get_multiplayer_racer_count +/* 0997A4 80098BA4 AFA90040 */ sw $t1, 0x40($sp) +/* 0997A8 80098BA8 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e +/* 0997AC 80098BAC 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 +/* 0997B0 80098BB0 8FA90040 */ lw $t1, 0x40($sp) +/* 0997B4 80098BB4 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e +/* 0997B8 80098BB8 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 +/* 0997BC 80098BBC 10000005 */ b .L80098BD4 +/* 0997C0 80098BC0 AD820000 */ sw $v0, ($t4) +.L80098BC4: +/* 0997C4 80098BC4 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e +/* 0997C8 80098BC8 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 +/* 0997CC 80098BCC 24180008 */ li $t8, 8 +/* 0997D0 80098BD0 AD980000 */ sw $t8, ($t4) +.L80098BD4: +/* 0997D4 80098BD4 8D850000 */ lw $a1, ($t4) +/* 0997D8 80098BD8 00004025 */ move $t0, $zero +/* 0997DC 80098BDC 18A0001C */ blez $a1, .L80098C50 +/* 0997E0 80098BE0 3C048012 */ lui $a0, %hi(D_80126428) # $a0, 0x8012 +/* 0997E4 80098BE4 24846428 */ addiu $a0, %lo(D_80126428) # addiu $a0, $a0, 0x6428 +/* 0997E8 80098BE8 240A0001 */ li $t2, 1 +.L80098BEC: +/* 0997EC 80098BEC 18A00013 */ blez $a1, .L80098C3C +/* 0997F0 80098BF0 00003825 */ move $a3, $zero +/* 0997F4 80098BF4 01201825 */ move $v1, $t1 +.L80098BF8: +/* 0997F8 80098BF8 8079005A */ lb $t9, 0x5a($v1) +/* 0997FC 80098BFC 00886821 */ addu $t5, $a0, $t0 +/* 099800 80098C00 1519000A */ bne $t0, $t9, .L80098C2C +/* 099804 80098C04 3C0E8012 */ lui $t6, %hi(D_80126418) # $t6, 0x8012 +/* 099808 80098C08 A1A70000 */ sb $a3, ($t5) +/* 09980C 80098C0C 8D6F0000 */ lw $t7, ($t3) +/* 099810 80098C10 25CE6418 */ addiu $t6, %lo(D_80126418) # addiu $t6, $t6, 0x6418 +/* 099814 80098C14 00EF082A */ slt $at, $a3, $t7 +/* 099818 80098C18 10200003 */ beqz $at, .L80098C28 +/* 09981C 80098C1C 010E1021 */ addu $v0, $t0, $t6 +/* 099820 80098C20 10000002 */ b .L80098C2C +/* 099824 80098C24 A04A0000 */ sb $t2, ($v0) +.L80098C28: +/* 099828 80098C28 A0400000 */ sb $zero, ($v0) +.L80098C2C: +/* 09982C 80098C2C 24E70001 */ addiu $a3, $a3, 1 +/* 099830 80098C30 00E5082A */ slt $at, $a3, $a1 +/* 099834 80098C34 1420FFF0 */ bnez $at, .L80098BF8 +/* 099838 80098C38 24630018 */ addiu $v1, $v1, 0x18 +.L80098C3C: +/* 09983C 80098C3C 25080001 */ addiu $t0, $t0, 1 +/* 099840 80098C40 0105082A */ slt $at, $t0, $a1 +/* 099844 80098C44 1420FFE9 */ bnez $at, .L80098BEC +/* 099848 80098C48 00000000 */ nop +/* 09984C 80098C4C 00004025 */ move $t0, $zero +.L80098C50: +/* 099850 80098C50 18A00011 */ blez $a1, .L80098C98 +/* 099854 80098C54 3C188012 */ lui $t8, %hi(D_801263F8) # $t8, 0x8012 +/* 099858 80098C58 270263F8 */ addiu $v0, $t8, %lo(D_801263F8) +/* 09985C 80098C5C 0005C880 */ sll $t9, $a1, 2 +/* 099860 80098C60 3C04800E */ lui $a0, %hi(gTrophyRacePointsArray) # $a0, 0x800e +/* 099864 80098C64 24841004 */ addiu $a0, %lo(gTrophyRacePointsArray) # addiu $a0, $a0, 0x1004 +/* 099868 80098C68 03223021 */ addu $a2, $t9, $v0 +/* 09986C 80098C6C 01201825 */ move $v1, $t1 +.L80098C70: +/* 099870 80098C70 806D005A */ lb $t5, 0x5a($v1) +/* 099874 80098C74 24420004 */ addiu $v0, $v0, 4 +/* 099878 80098C78 000D7080 */ sll $t6, $t5, 2 +/* 09987C 80098C7C 008E7821 */ addu $t7, $a0, $t6 +/* 099880 80098C80 8DF90000 */ lw $t9, ($t7) +/* 099884 80098C84 0046082B */ sltu $at, $v0, $a2 +/* 099888 80098C88 24630018 */ addiu $v1, $v1, 0x18 +/* 09988C 80098C8C 1420FFF8 */ bnez $at, .L80098C70 +/* 099890 80098C90 AC59FFFC */ sw $t9, -4($v0) +/* 099894 80098C94 00004025 */ move $t0, $zero +.L80098C98: +/* 099898 80098C98 18A00012 */ blez $a1, .L80098CE4 +/* 09989C 80098C9C 3C028012 */ lui $v0, %hi(D_801263F8) # $v0, 0x8012 +/* 0998A0 80098CA0 3C048012 */ lui $a0, %hi(D_80126430) # $a0, 0x8012 +/* 0998A4 80098CA4 24846430 */ addiu $a0, %lo(D_80126430) # addiu $a0, $a0, 0x6430 +/* 0998A8 80098CA8 244263F8 */ addiu $v0, %lo(D_801263F8) # addiu $v0, $v0, 0x63f8 +/* 0998AC 80098CAC 01201825 */ move $v1, $t1 +/* 0998B0 80098CB0 27A60048 */ addiu $a2, $sp, 0x48 +.L80098CB4: +/* 0998B4 80098CB4 A0880000 */ sb $t0, ($a0) +/* 0998B8 80098CB8 8C6D0054 */ lw $t5, 0x54($v1) +/* 0998BC 80098CBC 8C580000 */ lw $t8, ($v0) +/* 0998C0 80098CC0 25080001 */ addiu $t0, $t0, 1 +/* 0998C4 80098CC4 0105082A */ slt $at, $t0, $a1 +/* 0998C8 80098CC8 030D7021 */ addu $t6, $t8, $t5 +/* 0998CC 80098CCC 24420004 */ addiu $v0, $v0, 4 +/* 0998D0 80098CD0 24630018 */ addiu $v1, $v1, 0x18 +/* 0998D4 80098CD4 24840001 */ addiu $a0, $a0, 1 +/* 0998D8 80098CD8 24C60004 */ addiu $a2, $a2, 4 +/* 0998DC 80098CDC 1420FFF5 */ bnez $at, .L80098CB4 +/* 0998E0 80098CE0 ACCEFFFC */ sw $t6, -4($a2) +.L80098CE4: +/* 0998E4 80098CE4 24A8FFFF */ addiu $t0, $a1, -1 +/* 0998E8 80098CE8 1900003D */ blez $t0, .L80098DE0 +/* 0998EC 80098CEC 3C098012 */ lui $t1, %hi(D_80126430) # $t1, 0x8012 +/* 0998F0 80098CF0 8FA5004C */ lw $a1, 0x4c($sp) +/* 0998F4 80098CF4 8FA30048 */ lw $v1, 0x48($sp) +/* 0998F8 80098CF8 25296430 */ addiu $t1, %lo(D_80126430) # addiu $t1, $t1, 0x6430 +.L80098CFC: +/* 0998FC 80098CFC 19000033 */ blez $t0, .L80098DCC +/* 099900 80098D00 00003825 */ move $a3, $zero +/* 099904 80098D04 31020001 */ andi $v0, $t0, 1 +/* 099908 80098D08 1040000E */ beqz $v0, .L80098D44 +/* 09990C 80098D0C 0065082A */ slt $at, $v1, $a1 +/* 099910 80098D10 1020000B */ beqz $at, .L80098D40 +/* 099914 80098D14 24070001 */ li $a3, 1 +/* 099918 80098D18 00601025 */ move $v0, $v1 +/* 09991C 80098D1C 00A01825 */ move $v1, $a1 +/* 099920 80098D20 00402825 */ move $a1, $v0 +/* 099924 80098D24 3C028012 */ lui $v0, %hi(D_80126430) # $v0, 0x8012 +/* 099928 80098D28 3C0F8012 */ lui $t7, %hi(D_80126431) # $t7, 0x8012 +/* 09992C 80098D2C 91EF6431 */ lbu $t7, %lo(D_80126431)($t7) +/* 099930 80098D30 90426430 */ lbu $v0, %lo(D_80126430)($v0) +/* 099934 80098D34 3C018012 */ lui $at, %hi(D_80126431) # $at, 0x8012 +/* 099938 80098D38 A02F6430 */ sb $t7, %lo(D_80126430)($at) +/* 09993C 80098D3C A0226431 */ sb $v0, %lo(D_80126431)($at) +.L80098D40: +/* 099940 80098D40 10E80022 */ beq $a3, $t0, .L80098DCC +.L80098D44: +/* 099944 80098D44 0007C880 */ sll $t9, $a3, 2 +/* 099948 80098D48 27B80048 */ addiu $t8, $sp, 0x48 +/* 09994C 80098D4C 03382021 */ addu $a0, $t9, $t8 +/* 099950 80098D50 AFA30048 */ sw $v1, 0x48($sp) +/* 099954 80098D54 AFA5004C */ sw $a1, 0x4c($sp) +.L80098D58: +/* 099958 80098D58 8C860000 */ lw $a2, ($a0) +/* 09995C 80098D5C 8C850004 */ lw $a1, 4($a0) +/* 099960 80098D60 01271821 */ addu $v1, $t1, $a3 +/* 099964 80098D64 00C5082A */ slt $at, $a2, $a1 +/* 099968 80098D68 10200008 */ beqz $at, .L80098D8C +/* 09996C 80098D6C 00000000 */ nop +/* 099970 80098D70 90620000 */ lbu $v0, ($v1) +/* 099974 80098D74 906D0001 */ lbu $t5, 1($v1) +/* 099978 80098D78 AC850000 */ sw $a1, ($a0) +/* 09997C 80098D7C AC860004 */ sw $a2, 4($a0) +/* 099980 80098D80 00C02825 */ move $a1, $a2 +/* 099984 80098D84 A0620001 */ sb $v0, 1($v1) +/* 099988 80098D88 A06D0000 */ sb $t5, ($v1) +.L80098D8C: +/* 09998C 80098D8C 8C860008 */ lw $a2, 8($a0) +/* 099990 80098D90 01271821 */ addu $v1, $t1, $a3 +/* 099994 80098D94 00A6082A */ slt $at, $a1, $a2 +/* 099998 80098D98 10200007 */ beqz $at, .L80098DB8 +/* 09999C 80098D9C 00000000 */ nop +/* 0999A0 80098DA0 90620001 */ lbu $v0, 1($v1) +/* 0999A4 80098DA4 906E0002 */ lbu $t6, 2($v1) +/* 0999A8 80098DA8 AC860004 */ sw $a2, 4($a0) +/* 0999AC 80098DAC AC850008 */ sw $a1, 8($a0) +/* 0999B0 80098DB0 A0620002 */ sb $v0, 2($v1) +/* 0999B4 80098DB4 A06E0001 */ sb $t6, 1($v1) +.L80098DB8: +/* 0999B8 80098DB8 8FA30048 */ lw $v1, 0x48($sp) +/* 0999BC 80098DBC 8FA5004C */ lw $a1, 0x4c($sp) +/* 0999C0 80098DC0 24E70002 */ addiu $a3, $a3, 2 +/* 0999C4 80098DC4 14E8FFE4 */ bne $a3, $t0, .L80098D58 +/* 0999C8 80098DC8 24840008 */ addiu $a0, $a0, 8 +.L80098DCC: +/* 0999CC 80098DCC 2508FFFF */ addiu $t0, $t0, -1 +/* 0999D0 80098DD0 1D00FFCA */ bgtz $t0, .L80098CFC +/* 0999D4 80098DD4 00000000 */ nop +/* 0999D8 80098DD8 AFA5004C */ sw $a1, 0x4c($sp) +/* 0999DC 80098DDC AFA30048 */ sw $v1, 0x48($sp) +.L80098DE0: +/* 0999E0 80098DE0 0C027B20 */ jal is_in_two_player_adventure +/* 0999E4 80098DE4 00000000 */ nop +/* 0999E8 80098DE8 3C0B800E */ lui $t3, %hi(gNumberOfActivePlayers) # $t3, 0x800e +/* 0999EC 80098DEC 3C0C800E */ lui $t4, %hi(D_800E0FE4) # $t4, 0x800e +/* 0999F0 80098DF0 258C0FE4 */ addiu $t4, %lo(D_800E0FE4) # addiu $t4, $t4, 0xfe4 +/* 0999F4 80098DF4 256BF4BC */ addiu $t3, %lo(gNumberOfActivePlayers) # addiu $t3, $t3, -0xb44 +/* 0999F8 80098DF8 10400003 */ beqz $v0, .L80098E08 +/* 0999FC 80098DFC 240A0001 */ li $t2, 1 +/* 099A00 80098E00 10000003 */ b .L80098E10 +/* 099A04 80098E04 24070002 */ li $a3, 2 +.L80098E08: +/* 099A08 80098E08 8D670000 */ lw $a3, ($t3) +/* 099A0C 80098E0C 00000000 */ nop +.L80098E10: +/* 099A10 80098E10 8D850000 */ lw $a1, ($t4) +/* 099A14 80098E14 3C048012 */ lui $a0, %hi(D_80126430) # $a0, 0x8012 +/* 099A18 80098E18 18A00010 */ blez $a1, .L80098E5C +/* 099A1C 80098E1C 24846430 */ addiu $a0, %lo(D_80126430) # addiu $a0, $a0, 0x6430 +/* 099A20 80098E20 3C0F8012 */ lui $t7, %hi(D_80126420) # $t7, 0x8012 +/* 099A24 80098E24 25E26420 */ addiu $v0, $t7, %lo(D_80126420) +/* 099A28 80098E28 00A21821 */ addu $v1, $a1, $v0 +.L80098E2C: +/* 099A2C 80098E2C 90990000 */ lbu $t9, ($a0) +/* 099A30 80098E30 00000000 */ nop +/* 099A34 80098E34 0327082A */ slt $at, $t9, $a3 +/* 099A38 80098E38 10200003 */ beqz $at, .L80098E48 +/* 099A3C 80098E3C 00000000 */ nop +/* 099A40 80098E40 10000002 */ b .L80098E4C +/* 099A44 80098E44 A04A0000 */ sb $t2, ($v0) +.L80098E48: +/* 099A48 80098E48 A0400000 */ sb $zero, ($v0) +.L80098E4C: +/* 099A4C 80098E4C 24420001 */ addiu $v0, $v0, 1 +/* 099A50 80098E50 0043082B */ sltu $at, $v0, $v1 +/* 099A54 80098E54 1420FFF5 */ bnez $at, .L80098E2C +/* 099A58 80098E58 24840001 */ addiu $a0, $a0, 1 +.L80098E5C: +/* 099A5C 80098E5C 0C03105C */ jal load_font +/* 099A60 80098E60 24040002 */ li $a0, 2 +/* 099A64 80098E64 0C0002F8 */ jal set_music_player_voice_limit +/* 099A68 80098E68 24040018 */ li $a0, 24 +/* 099A6C 80098E6C 0C0002CD */ jal play_music +/* 099A70 80098E70 24040018 */ li $a0, 24 +/* 099A74 80098E74 0C000326 */ jal set_music_fade_timer +/* 099A78 80098E78 24040100 */ li $a0, 256 +/* 099A7C 80098E7C 0C0261DD */ jal func_80098774 +/* 099A80 80098E80 00002025 */ move $a0, $zero +/* 099A84 80098E84 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 099A88 80098E88 44810000 */ mtc1 $at, $f0 +/* 099A8C 80098E8C 3C04800E */ lui $a0, %hi(D_800E1048) # $a0, 0x800e +/* 099A90 80098E90 44050000 */ mfc1 $a1, $f0 +/* 099A94 80098E94 44070000 */ mfc1 $a3, $f0 +/* 099A98 80098E98 24841048 */ addiu $a0, %lo(D_800E1048) # addiu $a0, $a0, 0x1048 +/* 099A9C 80098E9C 3C0641A0 */ lui $a2, 0x41a0 +/* 099AA0 80098EA0 AFA00010 */ sw $zero, 0x10($sp) +/* 099AA4 80098EA4 0C020795 */ jal func_80081E54 +/* 099AA8 80098EA8 AFA00014 */ sw $zero, 0x14($sp) +/* 099AAC 80098EAC 8FBF001C */ lw $ra, 0x1c($sp) +/* 099AB0 80098EB0 27BD0070 */ addiu $sp, $sp, 0x70 +/* 099AB4 80098EB4 03E00008 */ jr $ra +/* 099AB8 80098EB8 00000000 */ nop + diff --git a/asm/non_matchings/menu/menu_trophy_race_rankings_loop.s b/asm/non_matchings/menu/menu_trophy_race_rankings_loop.s index 82a30e2e..380e4e6f 100644 --- a/asm/non_matchings/menu/menu_trophy_race_rankings_loop.s +++ b/asm/non_matchings/menu/menu_trophy_race_rankings_loop.s @@ -121,8 +121,8 @@ glabel menu_trophy_race_rankings_loop /* 099D94 80099194 8FAB002C */ lw $t3, 0x2c($sp) /* 099D98 80099198 00000000 */ nop .L8009919C: -/* 099D9C 8009919C 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 -/* 099DA0 800991A0 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 +/* 099D9C 8009919C 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 +/* 099DA0 800991A0 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 /* 099DA4 800991A4 3C0D800E */ lui $t5, %hi(gNumberOfActivePlayers) # $t5, 0x800e /* 099DA8 800991A8 8CC20000 */ lw $v0, ($a2) /* 099DAC 800991AC 8DADF4BC */ lw $t5, %lo(gNumberOfActivePlayers)($t5) @@ -143,9 +143,9 @@ glabel menu_trophy_race_rankings_loop /* 099DE4 800991E4 8FA80044 */ lw $t0, 0x44($sp) /* 099DE8 800991E8 80E30000 */ lb $v1, ($a3) /* 099DEC 800991EC 8FA5004C */ lw $a1, 0x4c($sp) -/* 099DF0 800991F0 3C068012 */ lui $a2, %hi(D_80126A68) # $a2, 0x8012 +/* 099DF0 800991F0 3C068012 */ lui $a2, %hi(gMenuOption) # $a2, 0x8012 /* 099DF4 800991F4 8FAB002C */ lw $t3, 0x2c($sp) -/* 099DF8 800991F8 24C66A68 */ addiu $a2, %lo(D_80126A68) # addiu $a2, $a2, 0x6a68 +/* 099DF8 800991F8 24C66A68 */ addiu $a2, %lo(gMenuOption) # addiu $a2, $a2, 0x6a68 /* 099DFC 800991FC 04610005 */ bgez $v1, .L80099214 /* 099E00 80099200 01024025 */ or $t0, $t0, $v0 /* 099E04 80099204 8CCE0000 */ lw $t6, ($a2) diff --git a/asm/non_matchings/menu/render_file_select_menu.s b/asm/non_matchings/menu/render_file_select_menu.s index 00523e2e..90c0237f 100644 --- a/asm/non_matchings/menu/render_file_select_menu.s +++ b/asm/non_matchings/menu/render_file_select_menu.s @@ -1,580 +1,580 @@ -glabel render_file_select_menu -/* 08D974 8008CD74 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 08D978 8008CD78 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 -/* 08D97C 8008CD7C 8DCE0300 */ lw $t6, %lo(osTvType)($t6) -/* 08D980 8008CD80 AFBF0054 */ sw $ra, 0x54($sp) -/* 08D984 8008CD84 AFB70050 */ sw $s7, 0x50($sp) -/* 08D988 8008CD88 AFB6004C */ sw $s6, 0x4c($sp) -/* 08D98C 8008CD8C AFB50048 */ sw $s5, 0x48($sp) -/* 08D990 8008CD90 AFB40044 */ sw $s4, 0x44($sp) -/* 08D994 8008CD94 AFB30040 */ sw $s3, 0x40($sp) -/* 08D998 8008CD98 AFB2003C */ sw $s2, 0x3c($sp) -/* 08D99C 8008CD9C AFB10038 */ sw $s1, 0x38($sp) -/* 08D9A0 8008CDA0 AFB00034 */ sw $s0, 0x34($sp) -/* 08D9A4 8008CDA4 15C00003 */ bnez $t6, .L8008CDB4 -/* 08D9A8 8008CDA8 AFA40088 */ sw $a0, 0x88($sp) -/* 08D9AC 8008CDAC 10000002 */ b .L8008CDB8 -/* 08D9B0 8008CDB0 2416000C */ li $s6, 12 -.L8008CDB4: -/* 08D9B4 8008CDB4 0000B025 */ move $s6, $zero -.L8008CDB8: -/* 08D9B8 8008CDB8 0C026F57 */ jal func_8009BD5C -/* 08D9BC 8008CDBC 00000000 */ nop -/* 08D9C0 8008CDC0 3C178012 */ lui $s7, %hi(sMenuCurrDisplayList) # $s7, 0x8012 -/* 08D9C4 8008CDC4 26F763A0 */ addiu $s7, %lo(sMenuCurrDisplayList) # addiu $s7, $s7, 0x63a0 -/* 08D9C8 8008CDC8 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 -/* 08D9CC 8008CDCC 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 -/* 08D9D0 8008CDD0 0C019FCB */ jal func_80067F2C -/* 08D9D4 8008CDD4 02E02025 */ move $a0, $s7 -/* 08D9D8 8008CDD8 3C118012 */ lui $s1, %hi(gSavefileInfo) # $s1, 0x8012 -/* 08D9DC 8008CDDC 3C10800E */ lui $s0, %hi(gFileSelectButtons) # $s0, 0x800e -/* 08D9E0 8008CDE0 3C158012 */ lui $s5, %hi(D_80126550) # $s5, 0x8012 -/* 08D9E4 8008CDE4 3C13B0E0 */ lui $s3, (0xB0E0C0FF >> 16) # lui $s3, 0xb0e0 -/* 08D9E8 8008CDE8 3C12800E */ lui $s2, %hi(gIsInAdventureTwo) # $s2, 0x800e -/* 08D9EC 8008CDEC 2652F494 */ addiu $s2, %lo(gIsInAdventureTwo) # addiu $s2, $s2, -0xb6c -/* 08D9F0 8008CDF0 3673C0FF */ ori $s3, (0xB0E0C0FF & 0xFFFF) # ori $s3, $s3, 0xc0ff -/* 08D9F4 8008CDF4 26B56550 */ addiu $s5, %lo(D_80126550) # addiu $s5, $s5, 0x6550 -/* 08D9F8 8008CDF8 261003CC */ addiu $s0, %lo(gFileSelectButtons) # addiu $s0, $s0, 0x3cc -/* 08D9FC 8008CDFC 263164A0 */ addiu $s1, %lo(gSavefileInfo) # addiu $s1, $s1, 0x64a0 -/* 08DA00 8008CE00 24140078 */ li $s4, 120 -.L8008CE04: -/* 08DA04 8008CE04 8E4F0000 */ lw $t7, ($s2) -/* 08DA08 8008CE08 92380000 */ lbu $t8, ($s1) -/* 08DA0C 8008CE0C 00002025 */ move $a0, $zero -/* 08DA10 8008CE10 11F80005 */ beq $t7, $t8, .L8008CE28 -/* 08DA14 8008CE14 00000000 */ nop -/* 08DA18 8008CE18 92390001 */ lbu $t9, 1($s1) -/* 08DA1C 8008CE1C 3C026A90 */ lui $v0, (0x6A9073FF >> 16) # lui $v0, 0x6a90 -/* 08DA20 8008CE20 17200003 */ bnez $t9, .L8008CE30 -/* 08DA24 8008CE24 344273FF */ ori $v0, (0x6A9073FF & 0xFFFF) # ori $v0, $v0, 0x73ff -.L8008CE28: -/* 08DA28 8008CE28 10000001 */ b .L8008CE30 -/* 08DA2C 8008CE2C 02601025 */ move $v0, $s3 -.L8008CE30: -/* 08DA30 8008CE30 86050000 */ lh $a1, ($s0) -/* 08DA34 8008CE34 86080002 */ lh $t0, 2($s0) -/* 08DA38 8008CE38 86090006 */ lh $t1, 6($s0) -/* 08DA3C 8008CE3C 860A0008 */ lh $t2, 8($s0) -/* 08DA40 8008CE40 860B000A */ lh $t3, 0xa($s0) -/* 08DA44 8008CE44 8EAC010C */ lw $t4, 0x10c($s5) -/* 08DA48 8008CE48 86070004 */ lh $a3, 4($s0) -/* 08DA4C 8008CE4C AFA2001C */ sw $v0, 0x1c($sp) -/* 08DA50 8008CE50 24A5FF60 */ addiu $a1, $a1, -0xa0 -/* 08DA54 8008CE54 02883023 */ subu $a2, $s4, $t0 -/* 08DA58 8008CE58 AFA90010 */ sw $t1, 0x10($sp) -/* 08DA5C 8008CE5C AFAA0014 */ sw $t2, 0x14($sp) -/* 08DA60 8008CE60 AFAB0018 */ sw $t3, 0x18($sp) -/* 08DA64 8008CE64 0C020160 */ jal func_80080580 -/* 08DA68 8008CE68 AFAC0020 */ sw $t4, 0x20($sp) -/* 08DA6C 8008CE6C 3C0D800E */ lui $t5, %hi(D_800E03FC) # $t5, 0x800e -/* 08DA70 8008CE70 25AD03FC */ addiu $t5, %lo(D_800E03FC) # addiu $t5, $t5, 0x3fc -/* 08DA74 8008CE74 26100010 */ addiu $s0, $s0, 0x10 -/* 08DA78 8008CE78 020D082B */ sltu $at, $s0, $t5 -/* 08DA7C 8008CE7C 1420FFE1 */ bnez $at, .L8008CE04 -/* 08DA80 8008CE80 2631000C */ addiu $s1, $s1, 0xc -/* 08DA84 8008CE84 0C0202F2 */ jal func_80080BC8 -/* 08DA88 8008CE88 02E02025 */ move $a0, $s7 -/* 08DA8C 8008CE8C 3C0E8012 */ lui $t6, %hi(D_801263D8) # $t6, 0x8012 -/* 08DA90 8008CE90 8DCE63D8 */ lw $t6, %lo(D_801263D8)($t6) -/* 08DA94 8008CE94 00000000 */ nop -/* 08DA98 8008CE98 15C00097 */ bnez $t6, .L8008D0F8 -/* 08DA9C 8008CE9C 00000000 */ nop -/* 08DAA0 8008CEA0 0C0310BB */ jal set_text_font -/* 08DAA4 8008CEA4 24040002 */ li $a0, 2 -/* 08DAA8 8008CEA8 00002025 */ move $a0, $zero -/* 08DAAC 8008CEAC 00002825 */ move $a1, $zero -/* 08DAB0 8008CEB0 00003025 */ move $a2, $zero -/* 08DAB4 8008CEB4 0C0310F3 */ jal set_text_background_colour -/* 08DAB8 8008CEB8 00003825 */ move $a3, $zero -/* 08DABC 8008CEBC 3C118012 */ lui $s1, %hi(gSavefileInfo) # $s1, 0x8012 -/* 08DAC0 8008CEC0 3C10800E */ lui $s0, %hi(gFileSelectButtons) # $s0, 0x800e -/* 08DAC4 8008CEC4 3C14800E */ lui $s4, %hi(D_800E03FC) # $s4, 0x800e -/* 08DAC8 8008CEC8 3C13800E */ lui $s3, %hi(gMenuImageStack) # $s3, 0x800e -/* 08DACC 8008CECC 2673F75C */ addiu $s3, %lo(gMenuImageStack) # addiu $s3, $s3, -0x8a4 -/* 08DAD0 8008CED0 269403FC */ addiu $s4, %lo(D_800E03FC) # addiu $s4, $s4, 0x3fc -/* 08DAD4 8008CED4 261003CC */ addiu $s0, %lo(gFileSelectButtons) # addiu $s0, $s0, 0x3cc -/* 08DAD8 8008CED8 263164A0 */ addiu $s1, %lo(gSavefileInfo) # addiu $s1, $s1, 0x64a0 -/* 08DADC 8008CEDC 2415000A */ li $s5, 10 -.L8008CEE0: -/* 08DAE0 8008CEE0 922F0001 */ lbu $t7, 1($s1) -/* 08DAE4 8008CEE4 240400FF */ li $a0, 255 -/* 08DAE8 8008CEE8 11E0006B */ beqz $t7, .L8008D098 -/* 08DAEC 8008CEEC 240500FF */ li $a1, 255 -/* 08DAF0 8008CEF0 00002025 */ move $a0, $zero -/* 08DAF4 8008CEF4 0C01EFC7 */ jal func_8007BF1C -/* 08DAF8 8008CEF8 2412000B */ li $s2, 11 -/* 08DAFC 8008CEFC 92380000 */ lbu $t8, ($s1) -/* 08DB00 8008CF00 00003825 */ move $a3, $zero -/* 08DB04 8008CF04 13000002 */ beqz $t8, .L8008CF10 -/* 08DB08 8008CF08 240B0080 */ li $t3, 128 -/* 08DB0C 8008CF0C 2412000C */ li $s2, 12 -.L8008CF10: -/* 08DB10 8008CF10 86990004 */ lh $t9, 4($s4) -/* 08DB14 8008CF14 86080000 */ lh $t0, ($s0) -/* 08DB18 8008CF18 86890006 */ lh $t1, 6($s4) -/* 08DB1C 8008CF1C 860A0002 */ lh $t2, 2($s0) -/* 08DB20 8008CF20 02402025 */ move $a0, $s2 -/* 08DB24 8008CF24 AFA00010 */ sw $zero, 0x10($sp) -/* 08DB28 8008CF28 AFA00014 */ sw $zero, 0x14($sp) -/* 08DB2C 8008CF2C AFAB0018 */ sw $t3, 0x18($sp) -/* 08DB30 8008CF30 03282821 */ addu $a1, $t9, $t0 -/* 08DB34 8008CF34 0C02330A */ jal render_menu_image -/* 08DB38 8008CF38 012A3021 */ addu $a2, $t1, $t2 -/* 08DB3C 8008CF3C 0C01A142 */ jal func_80068508 -/* 08DB40 8008CF40 24040001 */ li $a0, 1 -/* 08DB44 8008CF44 962C0002 */ lhu $t4, 2($s1) -/* 08DB48 8008CF48 8E6E0000 */ lw $t6, ($s3) -/* 08DB4C 8008CF4C 0195001A */ div $zero, $t4, $s5 -/* 08DB50 8008CF50 24090080 */ li $t1, 128 -/* 08DB54 8008CF54 16A00002 */ bnez $s5, .L8008CF60 -/* 08DB58 8008CF58 00000000 */ nop -/* 08DB5C 8008CF5C 0007000D */ break 7 -.L8008CF60: -/* 08DB60 8008CF60 2401FFFF */ li $at, -1 -/* 08DB64 8008CF64 16A10004 */ bne $s5, $at, .L8008CF78 -/* 08DB68 8008CF68 3C018000 */ lui $at, 0x8000 -/* 08DB6C 8008CF6C 15810002 */ bne $t4, $at, .L8008CF78 -/* 08DB70 8008CF70 00000000 */ nop -/* 08DB74 8008CF74 0006000D */ break 6 -.L8008CF78: -/* 08DB78 8008CF78 00002025 */ move $a0, $zero -/* 08DB7C 8008CF7C 00003825 */ move $a3, $zero -/* 08DB80 8008CF80 00006812 */ mflo $t5 -/* 08DB84 8008CF84 A5CD0018 */ sh $t5, 0x18($t6) -/* 08DB88 8008CF88 86180000 */ lh $t8, ($s0) -/* 08DB8C 8008CF8C 868F000C */ lh $t7, 0xc($s4) -/* 08DB90 8008CF90 86080002 */ lh $t0, 2($s0) -/* 08DB94 8008CF94 8699000E */ lh $t9, 0xe($s4) -/* 08DB98 8008CF98 01F82821 */ addu $a1, $t7, $t8 -/* 08DB9C 8008CF9C 24A5FFFA */ addiu $a1, $a1, -6 -/* 08DBA0 8008CFA0 AFA90018 */ sw $t1, 0x18($sp) -/* 08DBA4 8008CFA4 AFA00014 */ sw $zero, 0x14($sp) -/* 08DBA8 8008CFA8 AFA00010 */ sw $zero, 0x10($sp) -/* 08DBAC 8008CFAC 0C02330A */ jal render_menu_image -/* 08DBB0 8008CFB0 03283021 */ addu $a2, $t9, $t0 -/* 08DBB4 8008CFB4 962A0002 */ lhu $t2, 2($s1) -/* 08DBB8 8008CFB8 8E6C0000 */ lw $t4, ($s3) -/* 08DBBC 8008CFBC 0155001A */ div $zero, $t2, $s5 -/* 08DBC0 8008CFC0 24190080 */ li $t9, 128 -/* 08DBC4 8008CFC4 16A00002 */ bnez $s5, .L8008CFD0 -/* 08DBC8 8008CFC8 00000000 */ nop -/* 08DBCC 8008CFCC 0007000D */ break 7 -.L8008CFD0: -/* 08DBD0 8008CFD0 2401FFFF */ li $at, -1 -/* 08DBD4 8008CFD4 16A10004 */ bne $s5, $at, .L8008CFE8 -/* 08DBD8 8008CFD8 3C018000 */ lui $at, 0x8000 -/* 08DBDC 8008CFDC 15410002 */ bne $t2, $at, .L8008CFE8 -/* 08DBE0 8008CFE0 00000000 */ nop -/* 08DBE4 8008CFE4 0006000D */ break 6 -.L8008CFE8: -/* 08DBE8 8008CFE8 00002025 */ move $a0, $zero -/* 08DBEC 8008CFEC 00003825 */ move $a3, $zero -/* 08DBF0 8008CFF0 00005810 */ mfhi $t3 -/* 08DBF4 8008CFF4 A58B0018 */ sh $t3, 0x18($t4) -/* 08DBF8 8008CFF8 860E0000 */ lh $t6, ($s0) -/* 08DBFC 8008CFFC 868D000C */ lh $t5, 0xc($s4) -/* 08DC00 8008D000 86180002 */ lh $t8, 2($s0) -/* 08DC04 8008D004 868F000E */ lh $t7, 0xe($s4) -/* 08DC08 8008D008 01AE2821 */ addu $a1, $t5, $t6 -/* 08DC0C 8008D00C 24A50006 */ addiu $a1, $a1, 6 -/* 08DC10 8008D010 AFB90018 */ sw $t9, 0x18($sp) -/* 08DC14 8008D014 AFA00014 */ sw $zero, 0x14($sp) -/* 08DC18 8008D018 AFA00010 */ sw $zero, 0x10($sp) -/* 08DC1C 8008D01C 0C02330A */ jal render_menu_image -/* 08DC20 8008D020 01F83021 */ addu $a2, $t7, $t8 -/* 08DC24 8008D024 0C01A142 */ jal func_80068508 -/* 08DC28 8008D028 00002025 */ move $a0, $zero -/* 08DC2C 8008D02C 24020040 */ li $v0, 64 -/* 08DC30 8008D030 3C01800E */ lui $at, %hi(sMenuGuiColourG) # $at, 0x800e -/* 08DC34 8008D034 A022F4A8 */ sb $v0, %lo(sMenuGuiColourG)($at) -/* 08DC38 8008D038 3C01800E */ lui $at, %hi(sMenuGuiColourB) # $at, 0x800e -/* 08DC3C 8008D03C A022F4AC */ sb $v0, %lo(sMenuGuiColourB)($at) -/* 08DC40 8008D040 860B0002 */ lh $t3, 2($s0) -/* 08DC44 8008D044 868A0012 */ lh $t2, 0x12($s4) -/* 08DC48 8008D048 86090000 */ lh $t1, ($s0) -/* 08DC4C 8008D04C 86880010 */ lh $t0, 0x10($s4) -/* 08DC50 8008D050 240C0080 */ li $t4, 128 -/* 08DC54 8008D054 AFAC0018 */ sw $t4, 0x18($sp) -/* 08DC58 8008D058 02A02025 */ move $a0, $s5 -/* 08DC5C 8008D05C 00003825 */ move $a3, $zero -/* 08DC60 8008D060 AFA00010 */ sw $zero, 0x10($sp) -/* 08DC64 8008D064 AFA00014 */ sw $zero, 0x14($sp) -/* 08DC68 8008D068 014B3021 */ addu $a2, $t2, $t3 -/* 08DC6C 8008D06C 0C02330A */ jal render_menu_image -/* 08DC70 8008D070 01092821 */ addu $a1, $t0, $t1 -/* 08DC74 8008D074 240200FF */ li $v0, 255 -/* 08DC78 8008D078 3C01800E */ lui $at, %hi(sMenuGuiColourG) # $at, 0x800e -/* 08DC7C 8008D07C A022F4A8 */ sb $v0, %lo(sMenuGuiColourG)($at) -/* 08DC80 8008D080 3C01800E */ lui $at, %hi(sMenuGuiColourB) # $at, 0x800e -/* 08DC84 8008D084 A022F4AC */ sb $v0, %lo(sMenuGuiColourB)($at) -/* 08DC88 8008D088 0C01EFC7 */ jal func_8007BF1C -/* 08DC8C 8008D08C 24040001 */ li $a0, 1 -/* 08DC90 8008D090 10000014 */ b .L8008D0E4 -/* 08DC94 8008D094 00000000 */ nop -.L8008D098: -/* 08DC98 8008D098 240D00FF */ li $t5, 255 -/* 08DC9C 8008D09C AFAD0010 */ sw $t5, 0x10($sp) -/* 08DCA0 8008D0A0 240600FF */ li $a2, 255 -/* 08DCA4 8008D0A4 0C0310E1 */ jal set_text_colour -/* 08DCA8 8008D0A8 24070040 */ li $a3, 64 -/* 08DCAC 8008D0AC 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e -/* 08DCB0 8008D0B0 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) -/* 08DCB4 8008D0B4 8698000A */ lh $t8, 0xa($s4) -/* 08DCB8 8008D0B8 86190002 */ lh $t9, 2($s0) -/* 08DCBC 8008D0BC 868E0008 */ lh $t6, 8($s4) -/* 08DCC0 8008D0C0 860F0000 */ lh $t7, ($s0) -/* 08DCC4 8008D0C4 240A000C */ li $t2, 12 -/* 08DCC8 8008D0C8 8D27012C */ lw $a3, 0x12c($t1) -/* 08DCCC 8008D0CC 03194021 */ addu $t0, $t8, $t9 -/* 08DCD0 8008D0D0 01163021 */ addu $a2, $t0, $s6 -/* 08DCD4 8008D0D4 AFAA0010 */ sw $t2, 0x10($sp) -/* 08DCD8 8008D0D8 02E02025 */ move $a0, $s7 -/* 08DCDC 8008D0DC 0C031110 */ jal draw_text -/* 08DCE0 8008D0E0 01CF2821 */ addu $a1, $t6, $t7 -.L8008D0E4: -/* 08DCE4 8008D0E4 3C0B800E */ lui $t3, %hi(D_800E03FC) # $t3, 0x800e -/* 08DCE8 8008D0E8 256B03FC */ addiu $t3, %lo(D_800E03FC) # addiu $t3, $t3, 0x3fc -/* 08DCEC 8008D0EC 26100010 */ addiu $s0, $s0, 0x10 -/* 08DCF0 8008D0F0 160BFF7B */ bne $s0, $t3, .L8008CEE0 -/* 08DCF4 8008D0F4 2631000C */ addiu $s1, $s1, 0xc -.L8008D0F8: -/* 08DCF8 8008D0F8 3C028012 */ lui $v0, %hi(D_801263BC) # $v0, 0x8012 -/* 08DCFC 8008D0FC 8C4263BC */ lw $v0, %lo(D_801263BC)($v0) -/* 08DD00 8008D100 3C14800E */ lui $s4, %hi(D_800E03FC) # $s4, 0x800e -/* 08DD04 8008D104 000260C0 */ sll $t4, $v0, 3 -/* 08DD08 8008D108 29810100 */ slti $at, $t4, 0x100 -/* 08DD0C 8008D10C 269403FC */ addiu $s4, %lo(D_800E03FC) # addiu $s4, $s4, 0x3fc -/* 08DD10 8008D110 14200003 */ bnez $at, .L8008D120 -/* 08DD14 8008D114 01801025 */ move $v0, $t4 -/* 08DD18 8008D118 240D01FF */ li $t5, 511 -/* 08DD1C 8008D11C 01AC1023 */ subu $v0, $t5, $t4 -.L8008D120: -/* 08DD20 8008D120 00002025 */ move $a0, $zero -/* 08DD24 8008D124 0C0310BB */ jal set_text_font -/* 08DD28 8008D128 AFA2007C */ sw $v0, 0x7c($sp) -/* 08DD2C 8008D12C 00002025 */ move $a0, $zero -/* 08DD30 8008D130 00002825 */ move $a1, $zero -/* 08DD34 8008D134 00003025 */ move $a2, $zero -/* 08DD38 8008D138 0C0310F3 */ jal set_text_background_colour -/* 08DD3C 8008D13C 00003825 */ move $a3, $zero -/* 08DD40 8008D140 240E00FF */ li $t6, 255 -/* 08DD44 8008D144 AFAE0010 */ sw $t6, 0x10($sp) -/* 08DD48 8008D148 240400FF */ li $a0, 255 -/* 08DD4C 8008D14C 240500FF */ li $a1, 255 -/* 08DD50 8008D150 240600FF */ li $a2, 255 -/* 08DD54 8008D154 0C0310E1 */ jal set_text_colour -/* 08DD58 8008D158 00003825 */ move $a3, $zero -/* 08DD5C 8008D15C 00009825 */ move $s3, $zero -/* 08DD60 8008D160 27B50064 */ addiu $s5, $sp, 0x64 -.L8008D164: -/* 08DD64 8008D164 3C0F8012 */ lui $t7, %hi(D_80126484) # $t7, 0x8012 -/* 08DD68 8008D168 8DEF6484 */ lw $t7, %lo(D_80126484)($t7) -/* 08DD6C 8008D16C 00009025 */ move $s2, $zero -/* 08DD70 8008D170 11E00014 */ beqz $t7, .L8008D1C4 -/* 08DD74 8008D174 3C088012 */ lui $t0, %hi(D_80126488) # $t0, 0x8012 -/* 08DD78 8008D178 3C028012 */ lui $v0, %hi(D_80126494) # $v0, 0x8012 -/* 08DD7C 8008D17C 8C426494 */ lw $v0, %lo(D_80126494)($v0) -/* 08DD80 8008D180 3C188012 */ lui $t8, %hi(D_8012648C) # $t8, 0x8012 -/* 08DD84 8008D184 14400007 */ bnez $v0, .L8008D1A4 -/* 08DD88 8008D188 00000000 */ nop -/* 08DD8C 8008D18C 8F18648C */ lw $t8, %lo(D_8012648C)($t8) -/* 08DD90 8008D190 00000000 */ nop -/* 08DD94 8008D194 16780003 */ bne $s3, $t8, .L8008D1A4 -/* 08DD98 8008D198 00000000 */ nop -/* 08DD9C 8008D19C 1000001C */ b .L8008D210 -/* 08DDA0 8008D1A0 24120001 */ li $s2, 1 -.L8008D1A4: -/* 08DDA4 8008D1A4 1840001A */ blez $v0, .L8008D210 -/* 08DDA8 8008D1A8 3C198012 */ lui $t9, %hi(D_80126490) # $t9, 0x8012 -/* 08DDAC 8008D1AC 8F396490 */ lw $t9, %lo(D_80126490)($t9) -/* 08DDB0 8008D1B0 00000000 */ nop -/* 08DDB4 8008D1B4 16790016 */ bne $s3, $t9, .L8008D210 -/* 08DDB8 8008D1B8 00000000 */ nop -/* 08DDBC 8008D1BC 10000014 */ b .L8008D210 -/* 08DDC0 8008D1C0 24120001 */ li $s2, 1 -.L8008D1C4: -/* 08DDC4 8008D1C4 8D086488 */ lw $t0, %lo(D_80126488)($t0) -/* 08DDC8 8008D1C8 3C098012 */ lui $t1, %hi(D_8012648C) # $t1, 0x8012 -/* 08DDCC 8008D1CC 11000007 */ beqz $t0, .L8008D1EC -/* 08DDD0 8008D1D0 3C0A8012 */ lui $t2, %hi(D_801263E0) # $t2, 0x8012 -/* 08DDD4 8008D1D4 8D29648C */ lw $t1, %lo(D_8012648C)($t1) -/* 08DDD8 8008D1D8 00000000 */ nop -/* 08DDDC 8008D1DC 1669000C */ bne $s3, $t1, .L8008D210 -/* 08DDE0 8008D1E0 00000000 */ nop -/* 08DDE4 8008D1E4 1000000A */ b .L8008D210 -/* 08DDE8 8008D1E8 24120001 */ li $s2, 1 -.L8008D1EC: -/* 08DDEC 8008D1EC 8D4A63E0 */ lw $t2, %lo(D_801263E0)($t2) -/* 08DDF0 8008D1F0 3C0B800E */ lui $t3, %hi(gSaveFileIndex) # $t3, 0x800e -/* 08DDF4 8008D1F4 15400006 */ bnez $t2, .L8008D210 -/* 08DDF8 8008D1F8 00000000 */ nop -/* 08DDFC 8008D1FC 8D6BF4CC */ lw $t3, %lo(gSaveFileIndex)($t3) -/* 08DE00 8008D200 00000000 */ nop -/* 08DE04 8008D204 166B0002 */ bne $s3, $t3, .L8008D210 -/* 08DE08 8008D208 00000000 */ nop -/* 08DE0C 8008D20C 24120001 */ li $s2, 1 -.L8008D210: -/* 08DE10 8008D210 12400018 */ beqz $s2, .L8008D274 -/* 08DE14 8008D214 02E02025 */ move $a0, $s7 -/* 08DE18 8008D218 3C0D800E */ lui $t5, %hi(gFileSelectButtons) # $t5, 0x800e -/* 08DE1C 8008D21C 25AD03CC */ addiu $t5, %lo(gFileSelectButtons) # addiu $t5, $t5, 0x3cc -/* 08DE20 8008D220 00136100 */ sll $t4, $s3, 4 -/* 08DE24 8008D224 018D8021 */ addu $s0, $t4, $t5 -/* 08DE28 8008D228 8FA2007C */ lw $v0, 0x7c($sp) -/* 08DE2C 8008D22C 2401FF00 */ li $at, -256 -/* 08DE30 8008D230 00414025 */ or $t0, $v0, $at -/* 08DE34 8008D234 860E0002 */ lh $t6, 2($s0) -/* 08DE38 8008D238 860F0006 */ lh $t7, 6($s0) -/* 08DE3C 8008D23C 86180008 */ lh $t8, 8($s0) -/* 08DE40 8008D240 8619000A */ lh $t9, 0xa($s0) -/* 08DE44 8008D244 86050000 */ lh $a1, ($s0) -/* 08DE48 8008D248 86070004 */ lh $a3, 4($s0) -/* 08DE4C 8008D24C 01001025 */ move $v0, $t0 -/* 08DE50 8008D250 AFA8001C */ sw $t0, 0x1c($sp) -/* 08DE54 8008D254 AFA80020 */ sw $t0, 0x20($sp) -/* 08DE58 8008D258 AFA80024 */ sw $t0, 0x24($sp) -/* 08DE5C 8008D25C AFA80028 */ sw $t0, 0x28($sp) -/* 08DE60 8008D260 01D63021 */ addu $a2, $t6, $s6 -/* 08DE64 8008D264 AFAF0010 */ sw $t7, 0x10($sp) -/* 08DE68 8008D268 AFB80014 */ sw $t8, 0x14($sp) -/* 08DE6C 8008D26C 0C0203A4 */ jal func_80080E90 -/* 08DE70 8008D270 AFB90018 */ sw $t9, 0x18($sp) -.L8008D274: -/* 08DE74 8008D274 3C098012 */ lui $t1, %hi(D_80126CC0) # $t1, 0x8012 -/* 08DE78 8008D278 8D296CC0 */ lw $t1, %lo(D_80126CC0)($t1) -/* 08DE7C 8008D27C 3C0A800E */ lui $t2, %hi(gSaveFileIndex) # $t2, 0x800e -/* 08DE80 8008D280 11200004 */ beqz $t1, .L8008D294 -/* 08DE84 8008D284 00135880 */ sll $t3, $s3, 2 -/* 08DE88 8008D288 8D4AF4CC */ lw $t2, %lo(gSaveFileIndex)($t2) -/* 08DE8C 8008D28C 00000000 */ nop -/* 08DE90 8008D290 126A0021 */ beq $s3, $t2, .L8008D318 -.L8008D294: -/* 08DE94 8008D294 01735823 */ subu $t3, $t3, $s3 -/* 08DE98 8008D298 3C0C8012 */ lui $t4, %hi(gSavefileInfo) # $t4, 0x8012 -/* 08DE9C 8008D29C 258C64A0 */ addiu $t4, %lo(gSavefileInfo) # addiu $t4, $t4, 0x64a0 -/* 08DEA0 8008D2A0 000B5880 */ sll $t3, $t3, 2 -/* 08DEA4 8008D2A4 016C8821 */ addu $s1, $t3, $t4 -/* 08DEA8 8008D2A8 26240004 */ addiu $a0, $s1, 4 -/* 08DEAC 8008D2AC 0C025DF4 */ jal trim_filename_string -/* 08DEB0 8008D2B0 02A02825 */ move $a1, $s5 -/* 08DEB4 8008D2B4 922D0001 */ lbu $t5, 1($s1) -/* 08DEB8 8008D2B8 00137080 */ sll $t6, $s3, 2 -/* 08DEBC 8008D2BC 15A00005 */ bnez $t5, .L8008D2D4 -/* 08DEC0 8008D2C0 3C04800E */ lui $a0, %hi(gFilenames) # $a0, 0x800e -/* 08DEC4 8008D2C4 008E2021 */ addu $a0, $a0, $t6 -/* 08DEC8 8008D2C8 8C8403B0 */ lw $a0, %lo(gFilenames)($a0) -/* 08DECC 8008D2CC 0C025DF4 */ jal trim_filename_string -/* 08DED0 8008D2D0 02A02825 */ move $a1, $s5 -.L8008D2D4: -/* 08DED4 8008D2D4 12A00010 */ beqz $s5, .L8008D318 -/* 08DED8 8008D2D8 02E02025 */ move $a0, $s7 -/* 08DEDC 8008D2DC 3C18800E */ lui $t8, %hi(gFileSelectButtons) # $t8, 0x800e -/* 08DEE0 8008D2E0 271803CC */ addiu $t8, %lo(gFileSelectButtons) # addiu $t8, $t8, 0x3cc -/* 08DEE4 8008D2E4 00137900 */ sll $t7, $s3, 4 -/* 08DEE8 8008D2E8 01F88021 */ addu $s0, $t7, $t8 -/* 08DEEC 8008D2EC 860A0002 */ lh $t2, 2($s0) -/* 08DEF0 8008D2F0 86890002 */ lh $t1, 2($s4) -/* 08DEF4 8008D2F4 86080000 */ lh $t0, ($s0) -/* 08DEF8 8008D2F8 86990000 */ lh $t9, ($s4) -/* 08DEFC 8008D2FC 240C000C */ li $t4, 12 -/* 08DF00 8008D300 012A5821 */ addu $t3, $t1, $t2 -/* 08DF04 8008D304 01763021 */ addu $a2, $t3, $s6 -/* 08DF08 8008D308 AFAC0010 */ sw $t4, 0x10($sp) -/* 08DF0C 8008D30C 02A03825 */ move $a3, $s5 -/* 08DF10 8008D310 0C031110 */ jal draw_text -/* 08DF14 8008D314 03282821 */ addu $a1, $t9, $t0 -.L8008D318: -/* 08DF18 8008D318 26730001 */ addiu $s3, $s3, 1 -/* 08DF1C 8008D31C 24010003 */ li $at, 3 -/* 08DF20 8008D320 1661FF90 */ bne $s3, $at, .L8008D164 -/* 08DF24 8008D324 00000000 */ nop -/* 08DF28 8008D328 0C0310BB */ jal set_text_font -/* 08DF2C 8008D32C 24040002 */ li $a0, 2 -/* 08DF30 8008D330 240D0080 */ li $t5, 128 -/* 08DF34 8008D334 AFAD0010 */ sw $t5, 0x10($sp) -/* 08DF38 8008D338 00002025 */ move $a0, $zero -/* 08DF3C 8008D33C 00002825 */ move $a1, $zero -/* 08DF40 8008D340 00003025 */ move $a2, $zero -/* 08DF44 8008D344 0C0310E1 */ jal set_text_colour -/* 08DF48 8008D348 240700FF */ li $a3, 255 -/* 08DF4C 8008D34C 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e -/* 08DF50 8008D350 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) -/* 08DF54 8008D354 240F0004 */ li $t7, 4 -/* 08DF58 8008D358 8DC70130 */ lw $a3, 0x130($t6) -/* 08DF5C 8008D35C AFAF0010 */ sw $t7, 0x10($sp) -/* 08DF60 8008D360 02E02025 */ move $a0, $s7 -/* 08DF64 8008D364 240500A1 */ li $a1, 161 -/* 08DF68 8008D368 0C031110 */ jal draw_text -/* 08DF6C 8008D36C 24060013 */ li $a2, 19 -/* 08DF70 8008D370 241800FF */ li $t8, 255 -/* 08DF74 8008D374 AFB80010 */ sw $t8, 0x10($sp) -/* 08DF78 8008D378 240400FF */ li $a0, 255 -/* 08DF7C 8008D37C 240500FF */ li $a1, 255 -/* 08DF80 8008D380 240600FF */ li $a2, 255 -/* 08DF84 8008D384 0C0310E1 */ jal set_text_colour -/* 08DF88 8008D388 00003825 */ move $a3, $zero -/* 08DF8C 8008D38C 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e -/* 08DF90 8008D390 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) -/* 08DF94 8008D394 24080004 */ li $t0, 4 -/* 08DF98 8008D398 8F270130 */ lw $a3, 0x130($t9) -/* 08DF9C 8008D39C AFA80010 */ sw $t0, 0x10($sp) -/* 08DFA0 8008D3A0 02E02025 */ move $a0, $s7 -/* 08DFA4 8008D3A4 240500A0 */ li $a1, 160 -/* 08DFA8 8008D3A8 0C031110 */ jal draw_text -/* 08DFAC 8008D3AC 24060010 */ li $a2, 16 -/* 08DFB0 8008D3B0 240900FF */ li $t1, 255 -/* 08DFB4 8008D3B4 AFA90010 */ sw $t1, 0x10($sp) -/* 08DFB8 8008D3B8 240400FF */ li $a0, 255 -/* 08DFBC 8008D3BC 240500FF */ li $a1, 255 -/* 08DFC0 8008D3C0 240600FF */ li $a2, 255 -/* 08DFC4 8008D3C4 0C0310E1 */ jal set_text_colour -/* 08DFC8 8008D3C8 00003825 */ move $a3, $zero -/* 08DFCC 8008D3CC 3C0A8012 */ lui $t2, %hi(D_80126484) # $t2, 0x8012 -/* 08DFD0 8008D3D0 8D4A6484 */ lw $t2, %lo(D_80126484)($t2) -/* 08DFD4 8008D3D4 26D600BB */ addiu $s6, $s6, 0xbb -/* 08DFD8 8008D3D8 1140002B */ beqz $t2, .L8008D488 -/* 08DFDC 8008D3DC 3C188012 */ lui $t8, %hi(D_80126488) # $t8, 0x8012 -/* 08DFE0 8008D3E0 3C028012 */ lui $v0, %hi(D_80126494) # $v0, 0x8012 -/* 08DFE4 8008D3E4 8C426494 */ lw $v0, %lo(D_80126494)($v0) -/* 08DFE8 8008D3E8 24010001 */ li $at, 1 -/* 08DFEC 8008D3EC 1440000E */ bnez $v0, .L8008D428 -/* 08DFF0 8008D3F0 00000000 */ nop -/* 08DFF4 8008D3F4 0C0310BB */ jal set_text_font -/* 08DFF8 8008D3F8 00002025 */ move $a0, $zero -/* 08DFFC 8008D3FC 3C0B800E */ lui $t3, %hi(gMenuText) # $t3, 0x800e -/* 08E000 8008D400 8D6BF4A0 */ lw $t3, %lo(gMenuText)($t3) -/* 08E004 8008D404 240C000C */ li $t4, 12 -/* 08E008 8008D408 8D670134 */ lw $a3, 0x134($t3) -/* 08E00C 8008D40C AFAC0010 */ sw $t4, 0x10($sp) -/* 08E010 8008D410 02E02025 */ move $a0, $s7 -/* 08E014 8008D414 240500A0 */ li $a1, 160 -/* 08E018 8008D418 0C031110 */ jal draw_text -/* 08E01C 8008D41C 02C03025 */ move $a2, $s6 -/* 08E020 8008D420 1000006B */ b .L8008D5D0 -/* 08E024 8008D424 8FBF0054 */ lw $ra, 0x54($sp) -.L8008D428: -/* 08E028 8008D428 1441000E */ bne $v0, $at, .L8008D464 -/* 08E02C 8008D42C 02E02025 */ move $a0, $s7 -/* 08E030 8008D430 0C0310BB */ jal set_text_font -/* 08E034 8008D434 00002025 */ move $a0, $zero -/* 08E038 8008D438 3C0D800E */ lui $t5, %hi(gMenuText) # $t5, 0x800e -/* 08E03C 8008D43C 8DADF4A0 */ lw $t5, %lo(gMenuText)($t5) -/* 08E040 8008D440 240E000C */ li $t6, 12 -/* 08E044 8008D444 8DA70138 */ lw $a3, 0x138($t5) -/* 08E048 8008D448 AFAE0010 */ sw $t6, 0x10($sp) -/* 08E04C 8008D44C 02E02025 */ move $a0, $s7 -/* 08E050 8008D450 240500A0 */ li $a1, 160 -/* 08E054 8008D454 0C031110 */ jal draw_text -/* 08E058 8008D458 02C03025 */ move $a2, $s6 -/* 08E05C 8008D45C 1000005C */ b .L8008D5D0 -/* 08E060 8008D460 8FBF0054 */ lw $ra, 0x54($sp) -.L8008D464: -/* 08E064 8008D464 3C07800F */ lui $a3, %hi(D_800E8234) # $a3, 0x800f -/* 08E068 8008D468 240F000C */ li $t7, 12 -/* 08E06C 8008D46C AFAF0010 */ sw $t7, 0x10($sp) -/* 08E070 8008D470 24E78234 */ addiu $a3, %lo(D_800E8234) # addiu $a3, $a3, -0x7dcc -/* 08E074 8008D474 240500A0 */ li $a1, 160 -/* 08E078 8008D478 0C031110 */ jal draw_text -/* 08E07C 8008D47C 02C03025 */ move $a2, $s6 -/* 08E080 8008D480 10000053 */ b .L8008D5D0 -/* 08E084 8008D484 8FBF0054 */ lw $ra, 0x54($sp) -.L8008D488: -/* 08E088 8008D488 8F186488 */ lw $t8, %lo(D_80126488)($t8) -/* 08E08C 8008D48C 3C198012 */ lui $t9, %hi(D_80126494) # $t9, 0x8012 -/* 08E090 8008D490 1300001A */ beqz $t8, .L8008D4FC -/* 08E094 8008D494 3C0B8012 */ lui $t3, %hi(D_80126CC0) # $t3, 0x8012 -/* 08E098 8008D498 8F396494 */ lw $t9, %lo(D_80126494)($t9) -/* 08E09C 8008D49C 02E02025 */ move $a0, $s7 -/* 08E0A0 8008D4A0 1720000E */ bnez $t9, .L8008D4DC -/* 08E0A4 8008D4A4 240500A0 */ li $a1, 160 -/* 08E0A8 8008D4A8 0C0310BB */ jal set_text_font -/* 08E0AC 8008D4AC 00002025 */ move $a0, $zero -/* 08E0B0 8008D4B0 3C08800E */ lui $t0, %hi(gMenuText) # $t0, 0x800e -/* 08E0B4 8008D4B4 8D08F4A0 */ lw $t0, %lo(gMenuText)($t0) -/* 08E0B8 8008D4B8 2409000C */ li $t1, 12 -/* 08E0BC 8008D4BC 8D07013C */ lw $a3, 0x13c($t0) -/* 08E0C0 8008D4C0 AFA90010 */ sw $t1, 0x10($sp) -/* 08E0C4 8008D4C4 02E02025 */ move $a0, $s7 -/* 08E0C8 8008D4C8 240500A0 */ li $a1, 160 -/* 08E0CC 8008D4CC 0C031110 */ jal draw_text -/* 08E0D0 8008D4D0 02C03025 */ move $a2, $s6 -/* 08E0D4 8008D4D4 1000003E */ b .L8008D5D0 -/* 08E0D8 8008D4D8 8FBF0054 */ lw $ra, 0x54($sp) -.L8008D4DC: -/* 08E0DC 8008D4DC 3C07800F */ lui $a3, %hi(D_800E8238) # $a3, 0x800f -/* 08E0E0 8008D4E0 240A000C */ li $t2, 12 -/* 08E0E4 8008D4E4 AFAA0010 */ sw $t2, 0x10($sp) -/* 08E0E8 8008D4E8 24E78238 */ addiu $a3, %lo(D_800E8238) # addiu $a3, $a3, -0x7dc8 -/* 08E0EC 8008D4EC 0C031110 */ jal draw_text -/* 08E0F0 8008D4F0 02C03025 */ move $a2, $s6 -/* 08E0F4 8008D4F4 10000036 */ b .L8008D5D0 -/* 08E0F8 8008D4F8 8FBF0054 */ lw $ra, 0x54($sp) -.L8008D4FC: -/* 08E0FC 8008D4FC 8D6B6CC0 */ lw $t3, %lo(D_80126CC0)($t3) -/* 08E100 8008D500 3C0C8012 */ lui $t4, %hi(D_801263E0) # $t4, 0x8012 -/* 08E104 8008D504 15600032 */ bnez $t3, .L8008D5D0 -/* 08E108 8008D508 8FBF0054 */ lw $ra, 0x54($sp) -/* 08E10C 8008D50C 8D8C63E0 */ lw $t4, %lo(D_801263E0)($t4) -/* 08E110 8008D510 24010001 */ li $at, 1 -/* 08E114 8008D514 15810007 */ bne $t4, $at, .L8008D534 -/* 08E118 8008D518 240400FF */ li $a0, 255 -/* 08E11C 8008D51C 8FA7007C */ lw $a3, 0x7c($sp) -/* 08E120 8008D520 240D00FF */ li $t5, 255 -/* 08E124 8008D524 AFAD0010 */ sw $t5, 0x10($sp) -/* 08E128 8008D528 240500FF */ li $a1, 255 -/* 08E12C 8008D52C 0C0310E1 */ jal set_text_colour -/* 08E130 8008D530 240600FF */ li $a2, 255 -.L8008D534: -/* 08E134 8008D534 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e -/* 08E138 8008D538 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) -/* 08E13C 8008D53C 240F000C */ li $t7, 12 -/* 08E140 8008D540 8DC70140 */ lw $a3, 0x140($t6) -/* 08E144 8008D544 AFAF0010 */ sw $t7, 0x10($sp) -/* 08E148 8008D548 02E02025 */ move $a0, $s7 -/* 08E14C 8008D54C 2405005A */ li $a1, 90 -/* 08E150 8008D550 0C031110 */ jal draw_text -/* 08E154 8008D554 02C03025 */ move $a2, $s6 -/* 08E158 8008D558 3C188012 */ lui $t8, %hi(D_801263E0) # $t8, 0x8012 -/* 08E15C 8008D55C 8F1863E0 */ lw $t8, %lo(D_801263E0)($t8) -/* 08E160 8008D560 24010002 */ li $at, 2 -/* 08E164 8008D564 1701000A */ bne $t8, $at, .L8008D590 -/* 08E168 8008D568 240400FF */ li $a0, 255 -/* 08E16C 8008D56C 8FA7007C */ lw $a3, 0x7c($sp) -/* 08E170 8008D570 241900FF */ li $t9, 255 -/* 08E174 8008D574 AFB90010 */ sw $t9, 0x10($sp) -/* 08E178 8008D578 240400FF */ li $a0, 255 -/* 08E17C 8008D57C 240500FF */ li $a1, 255 -/* 08E180 8008D580 0C0310E1 */ jal set_text_colour -/* 08E184 8008D584 240600FF */ li $a2, 255 -/* 08E188 8008D588 10000007 */ b .L8008D5A8 -/* 08E18C 8008D58C 00000000 */ nop -.L8008D590: -/* 08E190 8008D590 240800FF */ li $t0, 255 -/* 08E194 8008D594 AFA80010 */ sw $t0, 0x10($sp) -/* 08E198 8008D598 240500FF */ li $a1, 255 -/* 08E19C 8008D59C 240600FF */ li $a2, 255 -/* 08E1A0 8008D5A0 0C0310E1 */ jal set_text_colour -/* 08E1A4 8008D5A4 00003825 */ move $a3, $zero -.L8008D5A8: -/* 08E1A8 8008D5A8 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e -/* 08E1AC 8008D5AC 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) -/* 08E1B0 8008D5B0 240A000C */ li $t2, 12 -/* 08E1B4 8008D5B4 8D270144 */ lw $a3, 0x144($t1) -/* 08E1B8 8008D5B8 AFAA0010 */ sw $t2, 0x10($sp) -/* 08E1BC 8008D5BC 02E02025 */ move $a0, $s7 -/* 08E1C0 8008D5C0 240500E6 */ li $a1, 230 -/* 08E1C4 8008D5C4 0C031110 */ jal draw_text -/* 08E1C8 8008D5C8 02C03025 */ move $a2, $s6 -/* 08E1CC 8008D5CC 8FBF0054 */ lw $ra, 0x54($sp) -.L8008D5D0: -/* 08E1D0 8008D5D0 8FB00034 */ lw $s0, 0x34($sp) -/* 08E1D4 8008D5D4 8FB10038 */ lw $s1, 0x38($sp) -/* 08E1D8 8008D5D8 8FB2003C */ lw $s2, 0x3c($sp) -/* 08E1DC 8008D5DC 8FB30040 */ lw $s3, 0x40($sp) -/* 08E1E0 8008D5E0 8FB40044 */ lw $s4, 0x44($sp) -/* 08E1E4 8008D5E4 8FB50048 */ lw $s5, 0x48($sp) -/* 08E1E8 8008D5E8 8FB6004C */ lw $s6, 0x4c($sp) -/* 08E1EC 8008D5EC 8FB70050 */ lw $s7, 0x50($sp) -/* 08E1F0 8008D5F0 03E00008 */ jr $ra -/* 08E1F4 8008D5F4 27BD0088 */ addiu $sp, $sp, 0x88 - +glabel render_file_select_menu +/* 08D974 8008CD74 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 08D978 8008CD78 3C0E8000 */ lui $t6, %hi(osTvType) # $t6, 0x8000 +/* 08D97C 8008CD7C 8DCE0300 */ lw $t6, %lo(osTvType)($t6) +/* 08D980 8008CD80 AFBF0054 */ sw $ra, 0x54($sp) +/* 08D984 8008CD84 AFB70050 */ sw $s7, 0x50($sp) +/* 08D988 8008CD88 AFB6004C */ sw $s6, 0x4c($sp) +/* 08D98C 8008CD8C AFB50048 */ sw $s5, 0x48($sp) +/* 08D990 8008CD90 AFB40044 */ sw $s4, 0x44($sp) +/* 08D994 8008CD94 AFB30040 */ sw $s3, 0x40($sp) +/* 08D998 8008CD98 AFB2003C */ sw $s2, 0x3c($sp) +/* 08D99C 8008CD9C AFB10038 */ sw $s1, 0x38($sp) +/* 08D9A0 8008CDA0 AFB00034 */ sw $s0, 0x34($sp) +/* 08D9A4 8008CDA4 15C00003 */ bnez $t6, .L8008CDB4 +/* 08D9A8 8008CDA8 AFA40088 */ sw $a0, 0x88($sp) +/* 08D9AC 8008CDAC 10000002 */ b .L8008CDB8 +/* 08D9B0 8008CDB0 2416000C */ li $s6, 12 +.L8008CDB4: +/* 08D9B4 8008CDB4 0000B025 */ move $s6, $zero +.L8008CDB8: +/* 08D9B8 8008CDB8 0C026F57 */ jal func_8009BD5C +/* 08D9BC 8008CDBC 00000000 */ nop +/* 08D9C0 8008CDC0 3C178012 */ lui $s7, %hi(sMenuCurrDisplayList) # $s7, 0x8012 +/* 08D9C4 8008CDC4 26F763A0 */ addiu $s7, %lo(sMenuCurrDisplayList) # addiu $s7, $s7, 0x63a0 +/* 08D9C8 8008CDC8 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 +/* 08D9CC 8008CDCC 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 +/* 08D9D0 8008CDD0 0C019FCB */ jal func_80067F2C +/* 08D9D4 8008CDD4 02E02025 */ move $a0, $s7 +/* 08D9D8 8008CDD8 3C118012 */ lui $s1, %hi(gSavefileInfo) # $s1, 0x8012 +/* 08D9DC 8008CDDC 3C10800E */ lui $s0, %hi(gFileSelectButtons) # $s0, 0x800e +/* 08D9E0 8008CDE0 3C158012 */ lui $s5, %hi(D_80126550) # $s5, 0x8012 +/* 08D9E4 8008CDE4 3C13B0E0 */ lui $s3, (0xB0E0C0FF >> 16) # lui $s3, 0xb0e0 +/* 08D9E8 8008CDE8 3C12800E */ lui $s2, %hi(gIsInAdventureTwo) # $s2, 0x800e +/* 08D9EC 8008CDEC 2652F494 */ addiu $s2, %lo(gIsInAdventureTwo) # addiu $s2, $s2, -0xb6c +/* 08D9F0 8008CDF0 3673C0FF */ ori $s3, (0xB0E0C0FF & 0xFFFF) # ori $s3, $s3, 0xc0ff +/* 08D9F4 8008CDF4 26B56550 */ addiu $s5, %lo(D_80126550) # addiu $s5, $s5, 0x6550 +/* 08D9F8 8008CDF8 261003CC */ addiu $s0, %lo(gFileSelectButtons) # addiu $s0, $s0, 0x3cc +/* 08D9FC 8008CDFC 263164A0 */ addiu $s1, %lo(gSavefileInfo) # addiu $s1, $s1, 0x64a0 +/* 08DA00 8008CE00 24140078 */ li $s4, 120 +.L8008CE04: +/* 08DA04 8008CE04 8E4F0000 */ lw $t7, ($s2) +/* 08DA08 8008CE08 92380000 */ lbu $t8, ($s1) +/* 08DA0C 8008CE0C 00002025 */ move $a0, $zero +/* 08DA10 8008CE10 11F80005 */ beq $t7, $t8, .L8008CE28 +/* 08DA14 8008CE14 00000000 */ nop +/* 08DA18 8008CE18 92390001 */ lbu $t9, 1($s1) +/* 08DA1C 8008CE1C 3C026A90 */ lui $v0, (0x6A9073FF >> 16) # lui $v0, 0x6a90 +/* 08DA20 8008CE20 17200003 */ bnez $t9, .L8008CE30 +/* 08DA24 8008CE24 344273FF */ ori $v0, (0x6A9073FF & 0xFFFF) # ori $v0, $v0, 0x73ff +.L8008CE28: +/* 08DA28 8008CE28 10000001 */ b .L8008CE30 +/* 08DA2C 8008CE2C 02601025 */ move $v0, $s3 +.L8008CE30: +/* 08DA30 8008CE30 86050000 */ lh $a1, ($s0) +/* 08DA34 8008CE34 86080002 */ lh $t0, 2($s0) +/* 08DA38 8008CE38 86090006 */ lh $t1, 6($s0) +/* 08DA3C 8008CE3C 860A0008 */ lh $t2, 8($s0) +/* 08DA40 8008CE40 860B000A */ lh $t3, 0xa($s0) +/* 08DA44 8008CE44 8EAC010C */ lw $t4, 0x10c($s5) +/* 08DA48 8008CE48 86070004 */ lh $a3, 4($s0) +/* 08DA4C 8008CE4C AFA2001C */ sw $v0, 0x1c($sp) +/* 08DA50 8008CE50 24A5FF60 */ addiu $a1, $a1, -0xa0 +/* 08DA54 8008CE54 02883023 */ subu $a2, $s4, $t0 +/* 08DA58 8008CE58 AFA90010 */ sw $t1, 0x10($sp) +/* 08DA5C 8008CE5C AFAA0014 */ sw $t2, 0x14($sp) +/* 08DA60 8008CE60 AFAB0018 */ sw $t3, 0x18($sp) +/* 08DA64 8008CE64 0C020160 */ jal func_80080580 +/* 08DA68 8008CE68 AFAC0020 */ sw $t4, 0x20($sp) +/* 08DA6C 8008CE6C 3C0D800E */ lui $t5, %hi(D_800E03FC) # $t5, 0x800e +/* 08DA70 8008CE70 25AD03FC */ addiu $t5, %lo(D_800E03FC) # addiu $t5, $t5, 0x3fc +/* 08DA74 8008CE74 26100010 */ addiu $s0, $s0, 0x10 +/* 08DA78 8008CE78 020D082B */ sltu $at, $s0, $t5 +/* 08DA7C 8008CE7C 1420FFE1 */ bnez $at, .L8008CE04 +/* 08DA80 8008CE80 2631000C */ addiu $s1, $s1, 0xc +/* 08DA84 8008CE84 0C0202F2 */ jal func_80080BC8 +/* 08DA88 8008CE88 02E02025 */ move $a0, $s7 +/* 08DA8C 8008CE8C 3C0E8012 */ lui $t6, %hi(D_801263D8) # $t6, 0x8012 +/* 08DA90 8008CE90 8DCE63D8 */ lw $t6, %lo(D_801263D8)($t6) +/* 08DA94 8008CE94 00000000 */ nop +/* 08DA98 8008CE98 15C00097 */ bnez $t6, .L8008D0F8 +/* 08DA9C 8008CE9C 00000000 */ nop +/* 08DAA0 8008CEA0 0C0310BB */ jal set_text_font +/* 08DAA4 8008CEA4 24040002 */ li $a0, 2 +/* 08DAA8 8008CEA8 00002025 */ move $a0, $zero +/* 08DAAC 8008CEAC 00002825 */ move $a1, $zero +/* 08DAB0 8008CEB0 00003025 */ move $a2, $zero +/* 08DAB4 8008CEB4 0C0310F3 */ jal set_text_background_colour +/* 08DAB8 8008CEB8 00003825 */ move $a3, $zero +/* 08DABC 8008CEBC 3C118012 */ lui $s1, %hi(gSavefileInfo) # $s1, 0x8012 +/* 08DAC0 8008CEC0 3C10800E */ lui $s0, %hi(gFileSelectButtons) # $s0, 0x800e +/* 08DAC4 8008CEC4 3C14800E */ lui $s4, %hi(D_800E03FC) # $s4, 0x800e +/* 08DAC8 8008CEC8 3C13800E */ lui $s3, %hi(gMenuImageStack) # $s3, 0x800e +/* 08DACC 8008CECC 2673F75C */ addiu $s3, %lo(gMenuImageStack) # addiu $s3, $s3, -0x8a4 +/* 08DAD0 8008CED0 269403FC */ addiu $s4, %lo(D_800E03FC) # addiu $s4, $s4, 0x3fc +/* 08DAD4 8008CED4 261003CC */ addiu $s0, %lo(gFileSelectButtons) # addiu $s0, $s0, 0x3cc +/* 08DAD8 8008CED8 263164A0 */ addiu $s1, %lo(gSavefileInfo) # addiu $s1, $s1, 0x64a0 +/* 08DADC 8008CEDC 2415000A */ li $s5, 10 +.L8008CEE0: +/* 08DAE0 8008CEE0 922F0001 */ lbu $t7, 1($s1) +/* 08DAE4 8008CEE4 240400FF */ li $a0, 255 +/* 08DAE8 8008CEE8 11E0006B */ beqz $t7, .L8008D098 +/* 08DAEC 8008CEEC 240500FF */ li $a1, 255 +/* 08DAF0 8008CEF0 00002025 */ move $a0, $zero +/* 08DAF4 8008CEF4 0C01EFC7 */ jal func_8007BF1C +/* 08DAF8 8008CEF8 2412000B */ li $s2, 11 +/* 08DAFC 8008CEFC 92380000 */ lbu $t8, ($s1) +/* 08DB00 8008CF00 00003825 */ move $a3, $zero +/* 08DB04 8008CF04 13000002 */ beqz $t8, .L8008CF10 +/* 08DB08 8008CF08 240B0080 */ li $t3, 128 +/* 08DB0C 8008CF0C 2412000C */ li $s2, 12 +.L8008CF10: +/* 08DB10 8008CF10 86990004 */ lh $t9, 4($s4) +/* 08DB14 8008CF14 86080000 */ lh $t0, ($s0) +/* 08DB18 8008CF18 86890006 */ lh $t1, 6($s4) +/* 08DB1C 8008CF1C 860A0002 */ lh $t2, 2($s0) +/* 08DB20 8008CF20 02402025 */ move $a0, $s2 +/* 08DB24 8008CF24 AFA00010 */ sw $zero, 0x10($sp) +/* 08DB28 8008CF28 AFA00014 */ sw $zero, 0x14($sp) +/* 08DB2C 8008CF2C AFAB0018 */ sw $t3, 0x18($sp) +/* 08DB30 8008CF30 03282821 */ addu $a1, $t9, $t0 +/* 08DB34 8008CF34 0C02330A */ jal render_menu_image +/* 08DB38 8008CF38 012A3021 */ addu $a2, $t1, $t2 +/* 08DB3C 8008CF3C 0C01A142 */ jal func_80068508 +/* 08DB40 8008CF40 24040001 */ li $a0, 1 +/* 08DB44 8008CF44 962C0002 */ lhu $t4, 2($s1) +/* 08DB48 8008CF48 8E6E0000 */ lw $t6, ($s3) +/* 08DB4C 8008CF4C 0195001A */ div $zero, $t4, $s5 +/* 08DB50 8008CF50 24090080 */ li $t1, 128 +/* 08DB54 8008CF54 16A00002 */ bnez $s5, .L8008CF60 +/* 08DB58 8008CF58 00000000 */ nop +/* 08DB5C 8008CF5C 0007000D */ break 7 +.L8008CF60: +/* 08DB60 8008CF60 2401FFFF */ li $at, -1 +/* 08DB64 8008CF64 16A10004 */ bne $s5, $at, .L8008CF78 +/* 08DB68 8008CF68 3C018000 */ lui $at, 0x8000 +/* 08DB6C 8008CF6C 15810002 */ bne $t4, $at, .L8008CF78 +/* 08DB70 8008CF70 00000000 */ nop +/* 08DB74 8008CF74 0006000D */ break 6 +.L8008CF78: +/* 08DB78 8008CF78 00002025 */ move $a0, $zero +/* 08DB7C 8008CF7C 00003825 */ move $a3, $zero +/* 08DB80 8008CF80 00006812 */ mflo $t5 +/* 08DB84 8008CF84 A5CD0018 */ sh $t5, 0x18($t6) +/* 08DB88 8008CF88 86180000 */ lh $t8, ($s0) +/* 08DB8C 8008CF8C 868F000C */ lh $t7, 0xc($s4) +/* 08DB90 8008CF90 86080002 */ lh $t0, 2($s0) +/* 08DB94 8008CF94 8699000E */ lh $t9, 0xe($s4) +/* 08DB98 8008CF98 01F82821 */ addu $a1, $t7, $t8 +/* 08DB9C 8008CF9C 24A5FFFA */ addiu $a1, $a1, -6 +/* 08DBA0 8008CFA0 AFA90018 */ sw $t1, 0x18($sp) +/* 08DBA4 8008CFA4 AFA00014 */ sw $zero, 0x14($sp) +/* 08DBA8 8008CFA8 AFA00010 */ sw $zero, 0x10($sp) +/* 08DBAC 8008CFAC 0C02330A */ jal render_menu_image +/* 08DBB0 8008CFB0 03283021 */ addu $a2, $t9, $t0 +/* 08DBB4 8008CFB4 962A0002 */ lhu $t2, 2($s1) +/* 08DBB8 8008CFB8 8E6C0000 */ lw $t4, ($s3) +/* 08DBBC 8008CFBC 0155001A */ div $zero, $t2, $s5 +/* 08DBC0 8008CFC0 24190080 */ li $t9, 128 +/* 08DBC4 8008CFC4 16A00002 */ bnez $s5, .L8008CFD0 +/* 08DBC8 8008CFC8 00000000 */ nop +/* 08DBCC 8008CFCC 0007000D */ break 7 +.L8008CFD0: +/* 08DBD0 8008CFD0 2401FFFF */ li $at, -1 +/* 08DBD4 8008CFD4 16A10004 */ bne $s5, $at, .L8008CFE8 +/* 08DBD8 8008CFD8 3C018000 */ lui $at, 0x8000 +/* 08DBDC 8008CFDC 15410002 */ bne $t2, $at, .L8008CFE8 +/* 08DBE0 8008CFE0 00000000 */ nop +/* 08DBE4 8008CFE4 0006000D */ break 6 +.L8008CFE8: +/* 08DBE8 8008CFE8 00002025 */ move $a0, $zero +/* 08DBEC 8008CFEC 00003825 */ move $a3, $zero +/* 08DBF0 8008CFF0 00005810 */ mfhi $t3 +/* 08DBF4 8008CFF4 A58B0018 */ sh $t3, 0x18($t4) +/* 08DBF8 8008CFF8 860E0000 */ lh $t6, ($s0) +/* 08DBFC 8008CFFC 868D000C */ lh $t5, 0xc($s4) +/* 08DC00 8008D000 86180002 */ lh $t8, 2($s0) +/* 08DC04 8008D004 868F000E */ lh $t7, 0xe($s4) +/* 08DC08 8008D008 01AE2821 */ addu $a1, $t5, $t6 +/* 08DC0C 8008D00C 24A50006 */ addiu $a1, $a1, 6 +/* 08DC10 8008D010 AFB90018 */ sw $t9, 0x18($sp) +/* 08DC14 8008D014 AFA00014 */ sw $zero, 0x14($sp) +/* 08DC18 8008D018 AFA00010 */ sw $zero, 0x10($sp) +/* 08DC1C 8008D01C 0C02330A */ jal render_menu_image +/* 08DC20 8008D020 01F83021 */ addu $a2, $t7, $t8 +/* 08DC24 8008D024 0C01A142 */ jal func_80068508 +/* 08DC28 8008D028 00002025 */ move $a0, $zero +/* 08DC2C 8008D02C 24020040 */ li $v0, 64 +/* 08DC30 8008D030 3C01800E */ lui $at, %hi(sMenuGuiColourG) # $at, 0x800e +/* 08DC34 8008D034 A022F4A8 */ sb $v0, %lo(sMenuGuiColourG)($at) +/* 08DC38 8008D038 3C01800E */ lui $at, %hi(sMenuGuiColourB) # $at, 0x800e +/* 08DC3C 8008D03C A022F4AC */ sb $v0, %lo(sMenuGuiColourB)($at) +/* 08DC40 8008D040 860B0002 */ lh $t3, 2($s0) +/* 08DC44 8008D044 868A0012 */ lh $t2, 0x12($s4) +/* 08DC48 8008D048 86090000 */ lh $t1, ($s0) +/* 08DC4C 8008D04C 86880010 */ lh $t0, 0x10($s4) +/* 08DC50 8008D050 240C0080 */ li $t4, 128 +/* 08DC54 8008D054 AFAC0018 */ sw $t4, 0x18($sp) +/* 08DC58 8008D058 02A02025 */ move $a0, $s5 +/* 08DC5C 8008D05C 00003825 */ move $a3, $zero +/* 08DC60 8008D060 AFA00010 */ sw $zero, 0x10($sp) +/* 08DC64 8008D064 AFA00014 */ sw $zero, 0x14($sp) +/* 08DC68 8008D068 014B3021 */ addu $a2, $t2, $t3 +/* 08DC6C 8008D06C 0C02330A */ jal render_menu_image +/* 08DC70 8008D070 01092821 */ addu $a1, $t0, $t1 +/* 08DC74 8008D074 240200FF */ li $v0, 255 +/* 08DC78 8008D078 3C01800E */ lui $at, %hi(sMenuGuiColourG) # $at, 0x800e +/* 08DC7C 8008D07C A022F4A8 */ sb $v0, %lo(sMenuGuiColourG)($at) +/* 08DC80 8008D080 3C01800E */ lui $at, %hi(sMenuGuiColourB) # $at, 0x800e +/* 08DC84 8008D084 A022F4AC */ sb $v0, %lo(sMenuGuiColourB)($at) +/* 08DC88 8008D088 0C01EFC7 */ jal func_8007BF1C +/* 08DC8C 8008D08C 24040001 */ li $a0, 1 +/* 08DC90 8008D090 10000014 */ b .L8008D0E4 +/* 08DC94 8008D094 00000000 */ nop +.L8008D098: +/* 08DC98 8008D098 240D00FF */ li $t5, 255 +/* 08DC9C 8008D09C AFAD0010 */ sw $t5, 0x10($sp) +/* 08DCA0 8008D0A0 240600FF */ li $a2, 255 +/* 08DCA4 8008D0A4 0C0310E1 */ jal set_text_colour +/* 08DCA8 8008D0A8 24070040 */ li $a3, 64 +/* 08DCAC 8008D0AC 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e +/* 08DCB0 8008D0B0 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) +/* 08DCB4 8008D0B4 8698000A */ lh $t8, 0xa($s4) +/* 08DCB8 8008D0B8 86190002 */ lh $t9, 2($s0) +/* 08DCBC 8008D0BC 868E0008 */ lh $t6, 8($s4) +/* 08DCC0 8008D0C0 860F0000 */ lh $t7, ($s0) +/* 08DCC4 8008D0C4 240A000C */ li $t2, 12 +/* 08DCC8 8008D0C8 8D27012C */ lw $a3, 0x12c($t1) +/* 08DCCC 8008D0CC 03194021 */ addu $t0, $t8, $t9 +/* 08DCD0 8008D0D0 01163021 */ addu $a2, $t0, $s6 +/* 08DCD4 8008D0D4 AFAA0010 */ sw $t2, 0x10($sp) +/* 08DCD8 8008D0D8 02E02025 */ move $a0, $s7 +/* 08DCDC 8008D0DC 0C031110 */ jal draw_text +/* 08DCE0 8008D0E0 01CF2821 */ addu $a1, $t6, $t7 +.L8008D0E4: +/* 08DCE4 8008D0E4 3C0B800E */ lui $t3, %hi(D_800E03FC) # $t3, 0x800e +/* 08DCE8 8008D0E8 256B03FC */ addiu $t3, %lo(D_800E03FC) # addiu $t3, $t3, 0x3fc +/* 08DCEC 8008D0EC 26100010 */ addiu $s0, $s0, 0x10 +/* 08DCF0 8008D0F0 160BFF7B */ bne $s0, $t3, .L8008CEE0 +/* 08DCF4 8008D0F4 2631000C */ addiu $s1, $s1, 0xc +.L8008D0F8: +/* 08DCF8 8008D0F8 3C028012 */ lui $v0, %hi(gOptionBlinkTimer) # $v0, 0x8012 +/* 08DCFC 8008D0FC 8C4263BC */ lw $v0, %lo(gOptionBlinkTimer)($v0) +/* 08DD00 8008D100 3C14800E */ lui $s4, %hi(D_800E03FC) # $s4, 0x800e +/* 08DD04 8008D104 000260C0 */ sll $t4, $v0, 3 +/* 08DD08 8008D108 29810100 */ slti $at, $t4, 0x100 +/* 08DD0C 8008D10C 269403FC */ addiu $s4, %lo(D_800E03FC) # addiu $s4, $s4, 0x3fc +/* 08DD10 8008D110 14200003 */ bnez $at, .L8008D120 +/* 08DD14 8008D114 01801025 */ move $v0, $t4 +/* 08DD18 8008D118 240D01FF */ li $t5, 511 +/* 08DD1C 8008D11C 01AC1023 */ subu $v0, $t5, $t4 +.L8008D120: +/* 08DD20 8008D120 00002025 */ move $a0, $zero +/* 08DD24 8008D124 0C0310BB */ jal set_text_font +/* 08DD28 8008D128 AFA2007C */ sw $v0, 0x7c($sp) +/* 08DD2C 8008D12C 00002025 */ move $a0, $zero +/* 08DD30 8008D130 00002825 */ move $a1, $zero +/* 08DD34 8008D134 00003025 */ move $a2, $zero +/* 08DD38 8008D138 0C0310F3 */ jal set_text_background_colour +/* 08DD3C 8008D13C 00003825 */ move $a3, $zero +/* 08DD40 8008D140 240E00FF */ li $t6, 255 +/* 08DD44 8008D144 AFAE0010 */ sw $t6, 0x10($sp) +/* 08DD48 8008D148 240400FF */ li $a0, 255 +/* 08DD4C 8008D14C 240500FF */ li $a1, 255 +/* 08DD50 8008D150 240600FF */ li $a2, 255 +/* 08DD54 8008D154 0C0310E1 */ jal set_text_colour +/* 08DD58 8008D158 00003825 */ move $a3, $zero +/* 08DD5C 8008D15C 00009825 */ move $s3, $zero +/* 08DD60 8008D160 27B50064 */ addiu $s5, $sp, 0x64 +.L8008D164: +/* 08DD64 8008D164 3C0F8012 */ lui $t7, %hi(D_80126484) # $t7, 0x8012 +/* 08DD68 8008D168 8DEF6484 */ lw $t7, %lo(D_80126484)($t7) +/* 08DD6C 8008D16C 00009025 */ move $s2, $zero +/* 08DD70 8008D170 11E00014 */ beqz $t7, .L8008D1C4 +/* 08DD74 8008D174 3C088012 */ lui $t0, %hi(D_80126488) # $t0, 0x8012 +/* 08DD78 8008D178 3C028012 */ lui $v0, %hi(D_80126494) # $v0, 0x8012 +/* 08DD7C 8008D17C 8C426494 */ lw $v0, %lo(D_80126494)($v0) +/* 08DD80 8008D180 3C188012 */ lui $t8, %hi(D_8012648C) # $t8, 0x8012 +/* 08DD84 8008D184 14400007 */ bnez $v0, .L8008D1A4 +/* 08DD88 8008D188 00000000 */ nop +/* 08DD8C 8008D18C 8F18648C */ lw $t8, %lo(D_8012648C)($t8) +/* 08DD90 8008D190 00000000 */ nop +/* 08DD94 8008D194 16780003 */ bne $s3, $t8, .L8008D1A4 +/* 08DD98 8008D198 00000000 */ nop +/* 08DD9C 8008D19C 1000001C */ b .L8008D210 +/* 08DDA0 8008D1A0 24120001 */ li $s2, 1 +.L8008D1A4: +/* 08DDA4 8008D1A4 1840001A */ blez $v0, .L8008D210 +/* 08DDA8 8008D1A8 3C198012 */ lui $t9, %hi(D_80126490) # $t9, 0x8012 +/* 08DDAC 8008D1AC 8F396490 */ lw $t9, %lo(D_80126490)($t9) +/* 08DDB0 8008D1B0 00000000 */ nop +/* 08DDB4 8008D1B4 16790016 */ bne $s3, $t9, .L8008D210 +/* 08DDB8 8008D1B8 00000000 */ nop +/* 08DDBC 8008D1BC 10000014 */ b .L8008D210 +/* 08DDC0 8008D1C0 24120001 */ li $s2, 1 +.L8008D1C4: +/* 08DDC4 8008D1C4 8D086488 */ lw $t0, %lo(D_80126488)($t0) +/* 08DDC8 8008D1C8 3C098012 */ lui $t1, %hi(D_8012648C) # $t1, 0x8012 +/* 08DDCC 8008D1CC 11000007 */ beqz $t0, .L8008D1EC +/* 08DDD0 8008D1D0 3C0A8012 */ lui $t2, %hi(D_801263E0) # $t2, 0x8012 +/* 08DDD4 8008D1D4 8D29648C */ lw $t1, %lo(D_8012648C)($t1) +/* 08DDD8 8008D1D8 00000000 */ nop +/* 08DDDC 8008D1DC 1669000C */ bne $s3, $t1, .L8008D210 +/* 08DDE0 8008D1E0 00000000 */ nop +/* 08DDE4 8008D1E4 1000000A */ b .L8008D210 +/* 08DDE8 8008D1E8 24120001 */ li $s2, 1 +.L8008D1EC: +/* 08DDEC 8008D1EC 8D4A63E0 */ lw $t2, %lo(D_801263E0)($t2) +/* 08DDF0 8008D1F0 3C0B800E */ lui $t3, %hi(gSaveFileIndex) # $t3, 0x800e +/* 08DDF4 8008D1F4 15400006 */ bnez $t2, .L8008D210 +/* 08DDF8 8008D1F8 00000000 */ nop +/* 08DDFC 8008D1FC 8D6BF4CC */ lw $t3, %lo(gSaveFileIndex)($t3) +/* 08DE00 8008D200 00000000 */ nop +/* 08DE04 8008D204 166B0002 */ bne $s3, $t3, .L8008D210 +/* 08DE08 8008D208 00000000 */ nop +/* 08DE0C 8008D20C 24120001 */ li $s2, 1 +.L8008D210: +/* 08DE10 8008D210 12400018 */ beqz $s2, .L8008D274 +/* 08DE14 8008D214 02E02025 */ move $a0, $s7 +/* 08DE18 8008D218 3C0D800E */ lui $t5, %hi(gFileSelectButtons) # $t5, 0x800e +/* 08DE1C 8008D21C 25AD03CC */ addiu $t5, %lo(gFileSelectButtons) # addiu $t5, $t5, 0x3cc +/* 08DE20 8008D220 00136100 */ sll $t4, $s3, 4 +/* 08DE24 8008D224 018D8021 */ addu $s0, $t4, $t5 +/* 08DE28 8008D228 8FA2007C */ lw $v0, 0x7c($sp) +/* 08DE2C 8008D22C 2401FF00 */ li $at, -256 +/* 08DE30 8008D230 00414025 */ or $t0, $v0, $at +/* 08DE34 8008D234 860E0002 */ lh $t6, 2($s0) +/* 08DE38 8008D238 860F0006 */ lh $t7, 6($s0) +/* 08DE3C 8008D23C 86180008 */ lh $t8, 8($s0) +/* 08DE40 8008D240 8619000A */ lh $t9, 0xa($s0) +/* 08DE44 8008D244 86050000 */ lh $a1, ($s0) +/* 08DE48 8008D248 86070004 */ lh $a3, 4($s0) +/* 08DE4C 8008D24C 01001025 */ move $v0, $t0 +/* 08DE50 8008D250 AFA8001C */ sw $t0, 0x1c($sp) +/* 08DE54 8008D254 AFA80020 */ sw $t0, 0x20($sp) +/* 08DE58 8008D258 AFA80024 */ sw $t0, 0x24($sp) +/* 08DE5C 8008D25C AFA80028 */ sw $t0, 0x28($sp) +/* 08DE60 8008D260 01D63021 */ addu $a2, $t6, $s6 +/* 08DE64 8008D264 AFAF0010 */ sw $t7, 0x10($sp) +/* 08DE68 8008D268 AFB80014 */ sw $t8, 0x14($sp) +/* 08DE6C 8008D26C 0C0203A4 */ jal func_80080E90 +/* 08DE70 8008D270 AFB90018 */ sw $t9, 0x18($sp) +.L8008D274: +/* 08DE74 8008D274 3C098012 */ lui $t1, %hi(D_80126CC0) # $t1, 0x8012 +/* 08DE78 8008D278 8D296CC0 */ lw $t1, %lo(D_80126CC0)($t1) +/* 08DE7C 8008D27C 3C0A800E */ lui $t2, %hi(gSaveFileIndex) # $t2, 0x800e +/* 08DE80 8008D280 11200004 */ beqz $t1, .L8008D294 +/* 08DE84 8008D284 00135880 */ sll $t3, $s3, 2 +/* 08DE88 8008D288 8D4AF4CC */ lw $t2, %lo(gSaveFileIndex)($t2) +/* 08DE8C 8008D28C 00000000 */ nop +/* 08DE90 8008D290 126A0021 */ beq $s3, $t2, .L8008D318 +.L8008D294: +/* 08DE94 8008D294 01735823 */ subu $t3, $t3, $s3 +/* 08DE98 8008D298 3C0C8012 */ lui $t4, %hi(gSavefileInfo) # $t4, 0x8012 +/* 08DE9C 8008D29C 258C64A0 */ addiu $t4, %lo(gSavefileInfo) # addiu $t4, $t4, 0x64a0 +/* 08DEA0 8008D2A0 000B5880 */ sll $t3, $t3, 2 +/* 08DEA4 8008D2A4 016C8821 */ addu $s1, $t3, $t4 +/* 08DEA8 8008D2A8 26240004 */ addiu $a0, $s1, 4 +/* 08DEAC 8008D2AC 0C025DF4 */ jal trim_filename_string +/* 08DEB0 8008D2B0 02A02825 */ move $a1, $s5 +/* 08DEB4 8008D2B4 922D0001 */ lbu $t5, 1($s1) +/* 08DEB8 8008D2B8 00137080 */ sll $t6, $s3, 2 +/* 08DEBC 8008D2BC 15A00005 */ bnez $t5, .L8008D2D4 +/* 08DEC0 8008D2C0 3C04800E */ lui $a0, %hi(gFilenames) # $a0, 0x800e +/* 08DEC4 8008D2C4 008E2021 */ addu $a0, $a0, $t6 +/* 08DEC8 8008D2C8 8C8403B0 */ lw $a0, %lo(gFilenames)($a0) +/* 08DECC 8008D2CC 0C025DF4 */ jal trim_filename_string +/* 08DED0 8008D2D0 02A02825 */ move $a1, $s5 +.L8008D2D4: +/* 08DED4 8008D2D4 12A00010 */ beqz $s5, .L8008D318 +/* 08DED8 8008D2D8 02E02025 */ move $a0, $s7 +/* 08DEDC 8008D2DC 3C18800E */ lui $t8, %hi(gFileSelectButtons) # $t8, 0x800e +/* 08DEE0 8008D2E0 271803CC */ addiu $t8, %lo(gFileSelectButtons) # addiu $t8, $t8, 0x3cc +/* 08DEE4 8008D2E4 00137900 */ sll $t7, $s3, 4 +/* 08DEE8 8008D2E8 01F88021 */ addu $s0, $t7, $t8 +/* 08DEEC 8008D2EC 860A0002 */ lh $t2, 2($s0) +/* 08DEF0 8008D2F0 86890002 */ lh $t1, 2($s4) +/* 08DEF4 8008D2F4 86080000 */ lh $t0, ($s0) +/* 08DEF8 8008D2F8 86990000 */ lh $t9, ($s4) +/* 08DEFC 8008D2FC 240C000C */ li $t4, 12 +/* 08DF00 8008D300 012A5821 */ addu $t3, $t1, $t2 +/* 08DF04 8008D304 01763021 */ addu $a2, $t3, $s6 +/* 08DF08 8008D308 AFAC0010 */ sw $t4, 0x10($sp) +/* 08DF0C 8008D30C 02A03825 */ move $a3, $s5 +/* 08DF10 8008D310 0C031110 */ jal draw_text +/* 08DF14 8008D314 03282821 */ addu $a1, $t9, $t0 +.L8008D318: +/* 08DF18 8008D318 26730001 */ addiu $s3, $s3, 1 +/* 08DF1C 8008D31C 24010003 */ li $at, 3 +/* 08DF20 8008D320 1661FF90 */ bne $s3, $at, .L8008D164 +/* 08DF24 8008D324 00000000 */ nop +/* 08DF28 8008D328 0C0310BB */ jal set_text_font +/* 08DF2C 8008D32C 24040002 */ li $a0, 2 +/* 08DF30 8008D330 240D0080 */ li $t5, 128 +/* 08DF34 8008D334 AFAD0010 */ sw $t5, 0x10($sp) +/* 08DF38 8008D338 00002025 */ move $a0, $zero +/* 08DF3C 8008D33C 00002825 */ move $a1, $zero +/* 08DF40 8008D340 00003025 */ move $a2, $zero +/* 08DF44 8008D344 0C0310E1 */ jal set_text_colour +/* 08DF48 8008D348 240700FF */ li $a3, 255 +/* 08DF4C 8008D34C 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e +/* 08DF50 8008D350 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) +/* 08DF54 8008D354 240F0004 */ li $t7, 4 +/* 08DF58 8008D358 8DC70130 */ lw $a3, 0x130($t6) +/* 08DF5C 8008D35C AFAF0010 */ sw $t7, 0x10($sp) +/* 08DF60 8008D360 02E02025 */ move $a0, $s7 +/* 08DF64 8008D364 240500A1 */ li $a1, 161 +/* 08DF68 8008D368 0C031110 */ jal draw_text +/* 08DF6C 8008D36C 24060013 */ li $a2, 19 +/* 08DF70 8008D370 241800FF */ li $t8, 255 +/* 08DF74 8008D374 AFB80010 */ sw $t8, 0x10($sp) +/* 08DF78 8008D378 240400FF */ li $a0, 255 +/* 08DF7C 8008D37C 240500FF */ li $a1, 255 +/* 08DF80 8008D380 240600FF */ li $a2, 255 +/* 08DF84 8008D384 0C0310E1 */ jal set_text_colour +/* 08DF88 8008D388 00003825 */ move $a3, $zero +/* 08DF8C 8008D38C 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e +/* 08DF90 8008D390 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) +/* 08DF94 8008D394 24080004 */ li $t0, 4 +/* 08DF98 8008D398 8F270130 */ lw $a3, 0x130($t9) +/* 08DF9C 8008D39C AFA80010 */ sw $t0, 0x10($sp) +/* 08DFA0 8008D3A0 02E02025 */ move $a0, $s7 +/* 08DFA4 8008D3A4 240500A0 */ li $a1, 160 +/* 08DFA8 8008D3A8 0C031110 */ jal draw_text +/* 08DFAC 8008D3AC 24060010 */ li $a2, 16 +/* 08DFB0 8008D3B0 240900FF */ li $t1, 255 +/* 08DFB4 8008D3B4 AFA90010 */ sw $t1, 0x10($sp) +/* 08DFB8 8008D3B8 240400FF */ li $a0, 255 +/* 08DFBC 8008D3BC 240500FF */ li $a1, 255 +/* 08DFC0 8008D3C0 240600FF */ li $a2, 255 +/* 08DFC4 8008D3C4 0C0310E1 */ jal set_text_colour +/* 08DFC8 8008D3C8 00003825 */ move $a3, $zero +/* 08DFCC 8008D3CC 3C0A8012 */ lui $t2, %hi(D_80126484) # $t2, 0x8012 +/* 08DFD0 8008D3D0 8D4A6484 */ lw $t2, %lo(D_80126484)($t2) +/* 08DFD4 8008D3D4 26D600BB */ addiu $s6, $s6, 0xbb +/* 08DFD8 8008D3D8 1140002B */ beqz $t2, .L8008D488 +/* 08DFDC 8008D3DC 3C188012 */ lui $t8, %hi(D_80126488) # $t8, 0x8012 +/* 08DFE0 8008D3E0 3C028012 */ lui $v0, %hi(D_80126494) # $v0, 0x8012 +/* 08DFE4 8008D3E4 8C426494 */ lw $v0, %lo(D_80126494)($v0) +/* 08DFE8 8008D3E8 24010001 */ li $at, 1 +/* 08DFEC 8008D3EC 1440000E */ bnez $v0, .L8008D428 +/* 08DFF0 8008D3F0 00000000 */ nop +/* 08DFF4 8008D3F4 0C0310BB */ jal set_text_font +/* 08DFF8 8008D3F8 00002025 */ move $a0, $zero +/* 08DFFC 8008D3FC 3C0B800E */ lui $t3, %hi(gMenuText) # $t3, 0x800e +/* 08E000 8008D400 8D6BF4A0 */ lw $t3, %lo(gMenuText)($t3) +/* 08E004 8008D404 240C000C */ li $t4, 12 +/* 08E008 8008D408 8D670134 */ lw $a3, 0x134($t3) +/* 08E00C 8008D40C AFAC0010 */ sw $t4, 0x10($sp) +/* 08E010 8008D410 02E02025 */ move $a0, $s7 +/* 08E014 8008D414 240500A0 */ li $a1, 160 +/* 08E018 8008D418 0C031110 */ jal draw_text +/* 08E01C 8008D41C 02C03025 */ move $a2, $s6 +/* 08E020 8008D420 1000006B */ b .L8008D5D0 +/* 08E024 8008D424 8FBF0054 */ lw $ra, 0x54($sp) +.L8008D428: +/* 08E028 8008D428 1441000E */ bne $v0, $at, .L8008D464 +/* 08E02C 8008D42C 02E02025 */ move $a0, $s7 +/* 08E030 8008D430 0C0310BB */ jal set_text_font +/* 08E034 8008D434 00002025 */ move $a0, $zero +/* 08E038 8008D438 3C0D800E */ lui $t5, %hi(gMenuText) # $t5, 0x800e +/* 08E03C 8008D43C 8DADF4A0 */ lw $t5, %lo(gMenuText)($t5) +/* 08E040 8008D440 240E000C */ li $t6, 12 +/* 08E044 8008D444 8DA70138 */ lw $a3, 0x138($t5) +/* 08E048 8008D448 AFAE0010 */ sw $t6, 0x10($sp) +/* 08E04C 8008D44C 02E02025 */ move $a0, $s7 +/* 08E050 8008D450 240500A0 */ li $a1, 160 +/* 08E054 8008D454 0C031110 */ jal draw_text +/* 08E058 8008D458 02C03025 */ move $a2, $s6 +/* 08E05C 8008D45C 1000005C */ b .L8008D5D0 +/* 08E060 8008D460 8FBF0054 */ lw $ra, 0x54($sp) +.L8008D464: +/* 08E064 8008D464 3C07800F */ lui $a3, %hi(D_800E8234) # $a3, 0x800f +/* 08E068 8008D468 240F000C */ li $t7, 12 +/* 08E06C 8008D46C AFAF0010 */ sw $t7, 0x10($sp) +/* 08E070 8008D470 24E78234 */ addiu $a3, %lo(D_800E8234) # addiu $a3, $a3, -0x7dcc +/* 08E074 8008D474 240500A0 */ li $a1, 160 +/* 08E078 8008D478 0C031110 */ jal draw_text +/* 08E07C 8008D47C 02C03025 */ move $a2, $s6 +/* 08E080 8008D480 10000053 */ b .L8008D5D0 +/* 08E084 8008D484 8FBF0054 */ lw $ra, 0x54($sp) +.L8008D488: +/* 08E088 8008D488 8F186488 */ lw $t8, %lo(D_80126488)($t8) +/* 08E08C 8008D48C 3C198012 */ lui $t9, %hi(D_80126494) # $t9, 0x8012 +/* 08E090 8008D490 1300001A */ beqz $t8, .L8008D4FC +/* 08E094 8008D494 3C0B8012 */ lui $t3, %hi(D_80126CC0) # $t3, 0x8012 +/* 08E098 8008D498 8F396494 */ lw $t9, %lo(D_80126494)($t9) +/* 08E09C 8008D49C 02E02025 */ move $a0, $s7 +/* 08E0A0 8008D4A0 1720000E */ bnez $t9, .L8008D4DC +/* 08E0A4 8008D4A4 240500A0 */ li $a1, 160 +/* 08E0A8 8008D4A8 0C0310BB */ jal set_text_font +/* 08E0AC 8008D4AC 00002025 */ move $a0, $zero +/* 08E0B0 8008D4B0 3C08800E */ lui $t0, %hi(gMenuText) # $t0, 0x800e +/* 08E0B4 8008D4B4 8D08F4A0 */ lw $t0, %lo(gMenuText)($t0) +/* 08E0B8 8008D4B8 2409000C */ li $t1, 12 +/* 08E0BC 8008D4BC 8D07013C */ lw $a3, 0x13c($t0) +/* 08E0C0 8008D4C0 AFA90010 */ sw $t1, 0x10($sp) +/* 08E0C4 8008D4C4 02E02025 */ move $a0, $s7 +/* 08E0C8 8008D4C8 240500A0 */ li $a1, 160 +/* 08E0CC 8008D4CC 0C031110 */ jal draw_text +/* 08E0D0 8008D4D0 02C03025 */ move $a2, $s6 +/* 08E0D4 8008D4D4 1000003E */ b .L8008D5D0 +/* 08E0D8 8008D4D8 8FBF0054 */ lw $ra, 0x54($sp) +.L8008D4DC: +/* 08E0DC 8008D4DC 3C07800F */ lui $a3, %hi(D_800E8238) # $a3, 0x800f +/* 08E0E0 8008D4E0 240A000C */ li $t2, 12 +/* 08E0E4 8008D4E4 AFAA0010 */ sw $t2, 0x10($sp) +/* 08E0E8 8008D4E8 24E78238 */ addiu $a3, %lo(D_800E8238) # addiu $a3, $a3, -0x7dc8 +/* 08E0EC 8008D4EC 0C031110 */ jal draw_text +/* 08E0F0 8008D4F0 02C03025 */ move $a2, $s6 +/* 08E0F4 8008D4F4 10000036 */ b .L8008D5D0 +/* 08E0F8 8008D4F8 8FBF0054 */ lw $ra, 0x54($sp) +.L8008D4FC: +/* 08E0FC 8008D4FC 8D6B6CC0 */ lw $t3, %lo(D_80126CC0)($t3) +/* 08E100 8008D500 3C0C8012 */ lui $t4, %hi(D_801263E0) # $t4, 0x8012 +/* 08E104 8008D504 15600032 */ bnez $t3, .L8008D5D0 +/* 08E108 8008D508 8FBF0054 */ lw $ra, 0x54($sp) +/* 08E10C 8008D50C 8D8C63E0 */ lw $t4, %lo(D_801263E0)($t4) +/* 08E110 8008D510 24010001 */ li $at, 1 +/* 08E114 8008D514 15810007 */ bne $t4, $at, .L8008D534 +/* 08E118 8008D518 240400FF */ li $a0, 255 +/* 08E11C 8008D51C 8FA7007C */ lw $a3, 0x7c($sp) +/* 08E120 8008D520 240D00FF */ li $t5, 255 +/* 08E124 8008D524 AFAD0010 */ sw $t5, 0x10($sp) +/* 08E128 8008D528 240500FF */ li $a1, 255 +/* 08E12C 8008D52C 0C0310E1 */ jal set_text_colour +/* 08E130 8008D530 240600FF */ li $a2, 255 +.L8008D534: +/* 08E134 8008D534 3C0E800E */ lui $t6, %hi(gMenuText) # $t6, 0x800e +/* 08E138 8008D538 8DCEF4A0 */ lw $t6, %lo(gMenuText)($t6) +/* 08E13C 8008D53C 240F000C */ li $t7, 12 +/* 08E140 8008D540 8DC70140 */ lw $a3, 0x140($t6) +/* 08E144 8008D544 AFAF0010 */ sw $t7, 0x10($sp) +/* 08E148 8008D548 02E02025 */ move $a0, $s7 +/* 08E14C 8008D54C 2405005A */ li $a1, 90 +/* 08E150 8008D550 0C031110 */ jal draw_text +/* 08E154 8008D554 02C03025 */ move $a2, $s6 +/* 08E158 8008D558 3C188012 */ lui $t8, %hi(D_801263E0) # $t8, 0x8012 +/* 08E15C 8008D55C 8F1863E0 */ lw $t8, %lo(D_801263E0)($t8) +/* 08E160 8008D560 24010002 */ li $at, 2 +/* 08E164 8008D564 1701000A */ bne $t8, $at, .L8008D590 +/* 08E168 8008D568 240400FF */ li $a0, 255 +/* 08E16C 8008D56C 8FA7007C */ lw $a3, 0x7c($sp) +/* 08E170 8008D570 241900FF */ li $t9, 255 +/* 08E174 8008D574 AFB90010 */ sw $t9, 0x10($sp) +/* 08E178 8008D578 240400FF */ li $a0, 255 +/* 08E17C 8008D57C 240500FF */ li $a1, 255 +/* 08E180 8008D580 0C0310E1 */ jal set_text_colour +/* 08E184 8008D584 240600FF */ li $a2, 255 +/* 08E188 8008D588 10000007 */ b .L8008D5A8 +/* 08E18C 8008D58C 00000000 */ nop +.L8008D590: +/* 08E190 8008D590 240800FF */ li $t0, 255 +/* 08E194 8008D594 AFA80010 */ sw $t0, 0x10($sp) +/* 08E198 8008D598 240500FF */ li $a1, 255 +/* 08E19C 8008D59C 240600FF */ li $a2, 255 +/* 08E1A0 8008D5A0 0C0310E1 */ jal set_text_colour +/* 08E1A4 8008D5A4 00003825 */ move $a3, $zero +.L8008D5A8: +/* 08E1A8 8008D5A8 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e +/* 08E1AC 8008D5AC 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) +/* 08E1B0 8008D5B0 240A000C */ li $t2, 12 +/* 08E1B4 8008D5B4 8D270144 */ lw $a3, 0x144($t1) +/* 08E1B8 8008D5B8 AFAA0010 */ sw $t2, 0x10($sp) +/* 08E1BC 8008D5BC 02E02025 */ move $a0, $s7 +/* 08E1C0 8008D5C0 240500E6 */ li $a1, 230 +/* 08E1C4 8008D5C4 0C031110 */ jal draw_text +/* 08E1C8 8008D5C8 02C03025 */ move $a2, $s6 +/* 08E1CC 8008D5CC 8FBF0054 */ lw $ra, 0x54($sp) +.L8008D5D0: +/* 08E1D0 8008D5D0 8FB00034 */ lw $s0, 0x34($sp) +/* 08E1D4 8008D5D4 8FB10038 */ lw $s1, 0x38($sp) +/* 08E1D8 8008D5D8 8FB2003C */ lw $s2, 0x3c($sp) +/* 08E1DC 8008D5DC 8FB30040 */ lw $s3, 0x40($sp) +/* 08E1E0 8008D5E0 8FB40044 */ lw $s4, 0x44($sp) +/* 08E1E4 8008D5E4 8FB50048 */ lw $s5, 0x48($sp) +/* 08E1E8 8008D5E8 8FB6004C */ lw $s6, 0x4c($sp) +/* 08E1EC 8008D5EC 8FB70050 */ lw $s7, 0x50($sp) +/* 08E1F0 8008D5F0 03E00008 */ jr $ra +/* 08E1F4 8008D5F4 27BD0088 */ addiu $sp, $sp, 0x88 + diff --git a/asm/non_matchings/menu/render_magic_codes_list_menu_text.s b/asm/non_matchings/menu/render_magic_codes_list_menu_text.s index 1953b07a..93edcc52 100644 --- a/asm/non_matchings/menu/render_magic_codes_list_menu_text.s +++ b/asm/non_matchings/menu/render_magic_codes_list_menu_text.s @@ -1,242 +1,242 @@ -glabel render_magic_codes_list_menu_text -/* 08B16C 8008A56C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 08B170 8008A570 AFBF004C */ sw $ra, 0x4c($sp) -/* 08B174 8008A574 AFA40050 */ sw $a0, 0x50($sp) -/* 08B178 8008A578 AFBE0048 */ sw $fp, 0x48($sp) -/* 08B17C 8008A57C AFB70044 */ sw $s7, 0x44($sp) -/* 08B180 8008A580 AFB60040 */ sw $s6, 0x40($sp) -/* 08B184 8008A584 AFB5003C */ sw $s5, 0x3c($sp) -/* 08B188 8008A588 AFB40038 */ sw $s4, 0x38($sp) -/* 08B18C 8008A58C AFB30034 */ sw $s3, 0x34($sp) -/* 08B190 8008A590 AFB20030 */ sw $s2, 0x30($sp) -/* 08B194 8008A594 AFB1002C */ sw $s1, 0x2c($sp) -/* 08B198 8008A598 AFB00028 */ sw $s0, 0x28($sp) -/* 08B19C 8008A59C 00002025 */ move $a0, $zero -/* 08B1A0 8008A5A0 00002825 */ move $a1, $zero -/* 08B1A4 8008A5A4 00003025 */ move $a2, $zero -/* 08B1A8 8008A5A8 0C0310F3 */ jal set_text_background_colour -/* 08B1AC 8008A5AC 00003825 */ move $a3, $zero -/* 08B1B0 8008A5B0 0C0310BB */ jal set_text_font -/* 08B1B4 8008A5B4 24040002 */ li $a0, 2 -/* 08B1B8 8008A5B8 240E0080 */ li $t6, 128 -/* 08B1BC 8008A5BC AFAE0010 */ sw $t6, 0x10($sp) -/* 08B1C0 8008A5C0 00002025 */ move $a0, $zero -/* 08B1C4 8008A5C4 00002825 */ move $a1, $zero -/* 08B1C8 8008A5C8 00003025 */ move $a2, $zero -/* 08B1CC 8008A5CC 0C0310E1 */ jal set_text_colour -/* 08B1D0 8008A5D0 240700FF */ li $a3, 255 -/* 08B1D4 8008A5D4 3C17800E */ lui $s7, %hi(gMenuText) # $s7, 0x800e -/* 08B1D8 8008A5D8 26F7F4A0 */ addiu $s7, %lo(gMenuText) # addiu $s7, $s7, -0xb60 -/* 08B1DC 8008A5DC 8EEF0000 */ lw $t7, ($s7) -/* 08B1E0 8008A5E0 3C158012 */ lui $s5, %hi(sMenuCurrDisplayList) # $s5, 0x8012 -/* 08B1E4 8008A5E4 26B563A0 */ addiu $s5, %lo(sMenuCurrDisplayList) # addiu $s5, $s5, 0x63a0 -/* 08B1E8 8008A5E8 2418000C */ li $t8, 12 -/* 08B1EC 8008A5EC 8DE70050 */ lw $a3, 0x50($t7) -/* 08B1F0 8008A5F0 AFB80010 */ sw $t8, 0x10($sp) -/* 08B1F4 8008A5F4 02A02025 */ move $a0, $s5 -/* 08B1F8 8008A5F8 240500A1 */ li $a1, 161 -/* 08B1FC 8008A5FC 0C031110 */ jal draw_text -/* 08B200 8008A600 24060023 */ li $a2, 35 -/* 08B204 8008A604 241900FF */ li $t9, 255 -/* 08B208 8008A608 AFB90010 */ sw $t9, 0x10($sp) -/* 08B20C 8008A60C 240400FF */ li $a0, 255 -/* 08B210 8008A610 240500FF */ li $a1, 255 -/* 08B214 8008A614 240600FF */ li $a2, 255 -/* 08B218 8008A618 0C0310E1 */ jal set_text_colour -/* 08B21C 8008A61C 00003825 */ move $a3, $zero -/* 08B220 8008A620 8EE80000 */ lw $t0, ($s7) -/* 08B224 8008A624 2409000C */ li $t1, 12 -/* 08B228 8008A628 8D070050 */ lw $a3, 0x50($t0) -/* 08B22C 8008A62C AFA90010 */ sw $t1, 0x10($sp) -/* 08B230 8008A630 02A02025 */ move $a0, $s5 -/* 08B234 8008A634 240500A0 */ li $a1, 160 -/* 08B238 8008A638 0C031110 */ jal draw_text -/* 08B23C 8008A63C 24060020 */ li $a2, 32 -/* 08B240 8008A640 3C03800E */ lui $v1, %hi(gUnlockedMagicCodes) # $v1, 0x800e -/* 08B244 8008A644 3C048012 */ lui $a0, %hi(D_80126C80) # $a0, 0x8012 -/* 08B248 8008A648 8C63FD9C */ lw $v1, %lo(gUnlockedMagicCodes)($v1) -/* 08B24C 8008A64C 24846C80 */ addiu $a0, %lo(D_80126C80) # addiu $a0, $a0, 0x6c80 -/* 08B250 8008A650 00008025 */ move $s0, $zero -/* 08B254 8008A654 24020001 */ li $v0, 1 -/* 08B258 8008A658 00009825 */ move $s3, $zero -.L8008A65C: -/* 08B25C 8008A65C 00435024 */ and $t2, $v0, $v1 -/* 08B260 8008A660 11400005 */ beqz $t2, .L8008A678 -/* 08B264 8008A664 00026840 */ sll $t5, $v0, 1 -/* 08B268 8008A668 00135840 */ sll $t3, $s3, 1 -/* 08B26C 8008A66C 008B6021 */ addu $t4, $a0, $t3 -/* 08B270 8008A670 A5900000 */ sh $s0, ($t4) -/* 08B274 8008A674 26730001 */ addiu $s3, $s3, 1 -.L8008A678: -/* 08B278 8008A678 26100001 */ addiu $s0, $s0, 1 -/* 08B27C 8008A67C 2A010020 */ slti $at, $s0, 0x20 -/* 08B280 8008A680 1420FFF6 */ bnez $at, .L8008A65C -/* 08B284 8008A684 01A01025 */ move $v0, $t5 -/* 08B288 8008A688 3C1E8012 */ lui $fp, %hi(D_801263BC) # $fp, 0x8012 -/* 08B28C 8008A68C 8FDE63BC */ lw $fp, %lo(D_801263BC)($fp) -/* 08B290 8008A690 24120036 */ li $s2, 54 -/* 08B294 8008A694 001E70C0 */ sll $t6, $fp, 3 -/* 08B298 8008A698 29C10100 */ slti $at, $t6, 0x100 -/* 08B29C 8008A69C 14200003 */ bnez $at, .L8008A6AC -/* 08B2A0 8008A6A0 01C0F025 */ move $fp, $t6 -/* 08B2A4 8008A6A4 240F01FF */ li $t7, 511 -/* 08B2A8 8008A6A8 01EEF023 */ subu $fp, $t7, $t6 -.L8008A6AC: -/* 08B2AC 8008A6AC 0C0310BB */ jal set_text_font -/* 08B2B0 8008A6B0 00002025 */ move $a0, $zero -/* 08B2B4 8008A6B4 241800FF */ li $t8, 255 -/* 08B2B8 8008A6B8 AFB80010 */ sw $t8, 0x10($sp) -/* 08B2BC 8008A6BC 240400FF */ li $a0, 255 -/* 08B2C0 8008A6C0 240500FF */ li $a1, 255 -/* 08B2C4 8008A6C4 240600FF */ li $a2, 255 -/* 08B2C8 8008A6C8 0C0310E1 */ jal set_text_colour -/* 08B2CC 8008A6CC 00003825 */ move $a3, $zero -/* 08B2D0 8008A6D0 3C038012 */ lui $v1, %hi(D_801263E0) # $v1, 0x8012 -/* 08B2D4 8008A6D4 3C198012 */ lui $t9, %hi(D_80126C70) # $t9, 0x8012 -/* 08B2D8 8008A6D8 8F396C70 */ lw $t9, %lo(D_80126C70)($t9) -/* 08B2DC 8008A6DC 8C6363E0 */ lw $v1, %lo(D_801263E0)($v1) -/* 08B2E0 8008A6E0 3C168012 */ lui $s6, %hi(gCheatsAssetData) # $s6, 0x8012 -/* 08B2E4 8008A6E4 8ED66C30 */ lw $s6, %lo(gCheatsAssetData)($s6) -/* 08B2E8 8008A6E8 00791021 */ addu $v0, $v1, $t9 -/* 08B2EC 8008A6EC 0062082A */ slt $at, $v1, $v0 -/* 08B2F0 8008A6F0 00608025 */ move $s0, $v1 -/* 08B2F4 8008A6F4 1020004B */ beqz $at, .L8008A824 -/* 08B2F8 8008A6F8 26D60002 */ addiu $s6, $s6, 2 -/* 08B2FC 8008A6FC 0073082A */ slt $at, $v1, $s3 -/* 08B300 8008A700 10200048 */ beqz $at, .L8008A824 -/* 08B304 8008A704 00034040 */ sll $t0, $v1, 1 -/* 08B308 8008A708 3C098012 */ lui $t1, %hi(D_80126C80) # $t1, 0x8012 -/* 08B30C 8008A70C 25296C80 */ addiu $t1, %lo(D_80126C80) # addiu $t1, $t1, 0x6c80 -/* 08B310 8008A710 3C148012 */ lui $s4, %hi(gOptionsMenuItemIndex) # $s4, 0x8012 -/* 08B314 8008A714 26946C46 */ addiu $s4, %lo(gOptionsMenuItemIndex) # addiu $s4, $s4, 0x6c46 -/* 08B318 8008A718 01098821 */ addu $s1, $t0, $t1 -.L8008A71C: -/* 08B31C 8008A71C 868A0000 */ lh $t2, ($s4) -/* 08B320 8008A720 240400FF */ li $a0, 255 -/* 08B324 8008A724 160A0006 */ bne $s0, $t2, .L8008A740 -/* 08B328 8008A728 240500FF */ li $a1, 255 -/* 08B32C 8008A72C 240B00FF */ li $t3, 255 -/* 08B330 8008A730 AFAB0010 */ sw $t3, 0x10($sp) -/* 08B334 8008A734 240600FF */ li $a2, 255 -/* 08B338 8008A738 0C0310E1 */ jal set_text_colour -/* 08B33C 8008A73C 03C03825 */ move $a3, $fp -.L8008A740: -/* 08B340 8008A740 862D0000 */ lh $t5, ($s1) -/* 08B344 8008A744 3C198012 */ lui $t9, %hi(gCheatsAssetData) # $t9, 0x8012 -/* 08B348 8008A748 000D7080 */ sll $t6, $t5, 2 -/* 08B34C 8008A74C 02CE7821 */ addu $t7, $s6, $t6 -/* 08B350 8008A750 95F80002 */ lhu $t8, 2($t7) -/* 08B354 8008A754 8F396C30 */ lw $t9, %lo(gCheatsAssetData)($t9) -/* 08B358 8008A758 AFA00010 */ sw $zero, 0x10($sp) -/* 08B35C 8008A75C 02A02025 */ move $a0, $s5 -/* 08B360 8008A760 24050030 */ li $a1, 48 -/* 08B364 8008A764 02403025 */ move $a2, $s2 -/* 08B368 8008A768 0C031110 */ jal draw_text -/* 08B36C 8008A76C 03193821 */ addu $a3, $t8, $t9 -/* 08B370 8008A770 86280000 */ lh $t0, ($s1) -/* 08B374 8008A774 3C0B800E */ lui $t3, %hi(gActiveMagicCodes) # $t3, 0x800e -/* 08B378 8008A778 8D6BFD98 */ lw $t3, %lo(gActiveMagicCodes)($t3) -/* 08B37C 8008A77C 24090001 */ li $t1, 1 -/* 08B380 8008A780 01095004 */ sllv $t2, $t1, $t0 -/* 08B384 8008A784 014B6024 */ and $t4, $t2, $t3 -/* 08B388 8008A788 1180000A */ beqz $t4, .L8008A7B4 -/* 08B38C 8008A78C 02A02025 */ move $a0, $s5 -/* 08B390 8008A790 8EED0000 */ lw $t5, ($s7) -/* 08B394 8008A794 02A02025 */ move $a0, $s5 -/* 08B398 8008A798 8DA70054 */ lw $a3, 0x54($t5) -/* 08B39C 8008A79C AFA00010 */ sw $zero, 0x10($sp) -/* 08B3A0 8008A7A0 24050100 */ li $a1, 256 -/* 08B3A4 8008A7A4 0C031110 */ jal draw_text -/* 08B3A8 8008A7A8 02403025 */ move $a2, $s2 -/* 08B3AC 8008A7AC 10000008 */ b .L8008A7D0 -/* 08B3B0 8008A7B0 868F0000 */ lh $t7, ($s4) -.L8008A7B4: -/* 08B3B4 8008A7B4 8EEE0000 */ lw $t6, ($s7) -/* 08B3B8 8008A7B8 24050100 */ li $a1, 256 -/* 08B3BC 8008A7BC 8DC70058 */ lw $a3, 0x58($t6) -/* 08B3C0 8008A7C0 AFA00010 */ sw $zero, 0x10($sp) -/* 08B3C4 8008A7C4 0C031110 */ jal draw_text -/* 08B3C8 8008A7C8 02403025 */ move $a2, $s2 -/* 08B3CC 8008A7CC 868F0000 */ lh $t7, ($s4) -.L8008A7D0: -/* 08B3D0 8008A7D0 240400FF */ li $a0, 255 -/* 08B3D4 8008A7D4 160F0006 */ bne $s0, $t7, .L8008A7F0 -/* 08B3D8 8008A7D8 240500FF */ li $a1, 255 -/* 08B3DC 8008A7DC 241800FF */ li $t8, 255 -/* 08B3E0 8008A7E0 AFB80010 */ sw $t8, 0x10($sp) -/* 08B3E4 8008A7E4 240600FF */ li $a2, 255 -/* 08B3E8 8008A7E8 0C0310E1 */ jal set_text_colour -/* 08B3EC 8008A7EC 00003825 */ move $a3, $zero -.L8008A7F0: -/* 08B3F0 8008A7F0 3C198012 */ lui $t9, %hi(D_801263E0) # $t9, 0x8012 -/* 08B3F4 8008A7F4 3C098012 */ lui $t1, %hi(D_80126C70) # $t1, 0x8012 -/* 08B3F8 8008A7F8 8D296C70 */ lw $t1, %lo(D_80126C70)($t1) -/* 08B3FC 8008A7FC 8F3963E0 */ lw $t9, %lo(D_801263E0)($t9) -/* 08B400 8008A800 26100001 */ addiu $s0, $s0, 1 -/* 08B404 8008A804 03291021 */ addu $v0, $t9, $t1 -/* 08B408 8008A808 0202082A */ slt $at, $s0, $v0 -/* 08B40C 8008A80C 26310002 */ addiu $s1, $s1, 2 -/* 08B410 8008A810 10200004 */ beqz $at, .L8008A824 -/* 08B414 8008A814 26520010 */ addiu $s2, $s2, 0x10 -/* 08B418 8008A818 0213082A */ slt $at, $s0, $s3 -/* 08B41C 8008A81C 1420FFBF */ bnez $at, .L8008A71C -/* 08B420 8008A820 00000000 */ nop -.L8008A824: -/* 08B424 8008A824 3C148012 */ lui $s4, %hi(gOptionsMenuItemIndex) # $s4, 0x8012 -/* 08B428 8008A828 0202082A */ slt $at, $s0, $v0 -/* 08B42C 8008A82C 10200014 */ beqz $at, .L8008A880 -/* 08B430 8008A830 26946C46 */ addiu $s4, %lo(gOptionsMenuItemIndex) # addiu $s4, $s4, 0x6c46 -/* 08B434 8008A834 86880000 */ lh $t0, ($s4) -/* 08B438 8008A838 240400FF */ li $a0, 255 -/* 08B43C 8008A83C 16680006 */ bne $s3, $t0, .L8008A858 -/* 08B440 8008A840 240500FF */ li $a1, 255 -/* 08B444 8008A844 240A00FF */ li $t2, 255 -/* 08B448 8008A848 AFAA0010 */ sw $t2, 0x10($sp) -/* 08B44C 8008A84C 240600FF */ li $a2, 255 -/* 08B450 8008A850 0C0310E1 */ jal set_text_colour -/* 08B454 8008A854 03C03825 */ move $a3, $fp -.L8008A858: -/* 08B458 8008A858 8EEB0000 */ lw $t3, ($s7) -/* 08B45C 8008A85C 240C0004 */ li $t4, 4 -/* 08B460 8008A860 8D670014 */ lw $a3, 0x14($t3) -/* 08B464 8008A864 AFAC0010 */ sw $t4, 0x10($sp) -/* 08B468 8008A868 02A02025 */ move $a0, $s5 -/* 08B46C 8008A86C 24058000 */ li $a1, -32768 -/* 08B470 8008A870 0C031110 */ jal draw_text -/* 08B474 8008A874 02403025 */ move $a2, $s2 -/* 08B478 8008A878 10000014 */ b .L8008A8CC -/* 08B47C 8008A87C 8FBF004C */ lw $ra, 0x4c($sp) -.L8008A880: -/* 08B480 8008A880 3C0D8012 */ lui $t5, %hi(D_801263BC) # $t5, 0x8012 -/* 08B484 8008A884 8DAD63BC */ lw $t5, %lo(D_801263BC)($t5) -/* 08B488 8008A888 02A02025 */ move $a0, $s5 -/* 08B48C 8008A88C 31AE0008 */ andi $t6, $t5, 8 -/* 08B490 8008A890 11C0000D */ beqz $t6, .L8008A8C8 -/* 08B494 8008A894 3C05800E */ lui $a1, %hi(gMenuSelectionArrowDown) # $a1, 0x800e -/* 08B498 8008A898 240F00FF */ li $t7, 255 -/* 08B49C 8008A89C 241800FF */ li $t8, 255 -/* 08B4A0 8008A8A0 241900FF */ li $t9, 255 -/* 08B4A4 8008A8A4 240900FF */ li $t1, 255 -/* 08B4A8 8008A8A8 AFA9001C */ sw $t1, 0x1c($sp) -/* 08B4AC 8008A8AC AFB90018 */ sw $t9, 0x18($sp) -/* 08B4B0 8008A8B0 AFB80014 */ sw $t8, 0x14($sp) -/* 08B4B4 8008A8B4 AFAF0010 */ sw $t7, 0x10($sp) -/* 08B4B8 8008A8B8 24A5043C */ addiu $a1, %lo(gMenuSelectionArrowDown) # addiu $a1, $a1, 0x43c -/* 08B4BC 8008A8BC 240600A0 */ li $a2, 160 -/* 08B4C0 8008A8C0 0C01E2AE */ jal render_textured_rectangle -/* 08B4C4 8008A8C4 26470008 */ addiu $a3, $s2, 8 -.L8008A8C8: -/* 08B4C8 8008A8C8 8FBF004C */ lw $ra, 0x4c($sp) -.L8008A8CC: -/* 08B4CC 8008A8CC 8FB00028 */ lw $s0, 0x28($sp) -/* 08B4D0 8008A8D0 8FB1002C */ lw $s1, 0x2c($sp) -/* 08B4D4 8008A8D4 8FB20030 */ lw $s2, 0x30($sp) -/* 08B4D8 8008A8D8 8FB30034 */ lw $s3, 0x34($sp) -/* 08B4DC 8008A8DC 8FB40038 */ lw $s4, 0x38($sp) -/* 08B4E0 8008A8E0 8FB5003C */ lw $s5, 0x3c($sp) -/* 08B4E4 8008A8E4 8FB60040 */ lw $s6, 0x40($sp) -/* 08B4E8 8008A8E8 8FB70044 */ lw $s7, 0x44($sp) -/* 08B4EC 8008A8EC 8FBE0048 */ lw $fp, 0x48($sp) -/* 08B4F0 8008A8F0 03E00008 */ jr $ra -/* 08B4F4 8008A8F4 27BD0050 */ addiu $sp, $sp, 0x50 - +glabel render_magic_codes_list_menu_text +/* 08B16C 8008A56C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 08B170 8008A570 AFBF004C */ sw $ra, 0x4c($sp) +/* 08B174 8008A574 AFA40050 */ sw $a0, 0x50($sp) +/* 08B178 8008A578 AFBE0048 */ sw $fp, 0x48($sp) +/* 08B17C 8008A57C AFB70044 */ sw $s7, 0x44($sp) +/* 08B180 8008A580 AFB60040 */ sw $s6, 0x40($sp) +/* 08B184 8008A584 AFB5003C */ sw $s5, 0x3c($sp) +/* 08B188 8008A588 AFB40038 */ sw $s4, 0x38($sp) +/* 08B18C 8008A58C AFB30034 */ sw $s3, 0x34($sp) +/* 08B190 8008A590 AFB20030 */ sw $s2, 0x30($sp) +/* 08B194 8008A594 AFB1002C */ sw $s1, 0x2c($sp) +/* 08B198 8008A598 AFB00028 */ sw $s0, 0x28($sp) +/* 08B19C 8008A59C 00002025 */ move $a0, $zero +/* 08B1A0 8008A5A0 00002825 */ move $a1, $zero +/* 08B1A4 8008A5A4 00003025 */ move $a2, $zero +/* 08B1A8 8008A5A8 0C0310F3 */ jal set_text_background_colour +/* 08B1AC 8008A5AC 00003825 */ move $a3, $zero +/* 08B1B0 8008A5B0 0C0310BB */ jal set_text_font +/* 08B1B4 8008A5B4 24040002 */ li $a0, 2 +/* 08B1B8 8008A5B8 240E0080 */ li $t6, 128 +/* 08B1BC 8008A5BC AFAE0010 */ sw $t6, 0x10($sp) +/* 08B1C0 8008A5C0 00002025 */ move $a0, $zero +/* 08B1C4 8008A5C4 00002825 */ move $a1, $zero +/* 08B1C8 8008A5C8 00003025 */ move $a2, $zero +/* 08B1CC 8008A5CC 0C0310E1 */ jal set_text_colour +/* 08B1D0 8008A5D0 240700FF */ li $a3, 255 +/* 08B1D4 8008A5D4 3C17800E */ lui $s7, %hi(gMenuText) # $s7, 0x800e +/* 08B1D8 8008A5D8 26F7F4A0 */ addiu $s7, %lo(gMenuText) # addiu $s7, $s7, -0xb60 +/* 08B1DC 8008A5DC 8EEF0000 */ lw $t7, ($s7) +/* 08B1E0 8008A5E0 3C158012 */ lui $s5, %hi(sMenuCurrDisplayList) # $s5, 0x8012 +/* 08B1E4 8008A5E4 26B563A0 */ addiu $s5, %lo(sMenuCurrDisplayList) # addiu $s5, $s5, 0x63a0 +/* 08B1E8 8008A5E8 2418000C */ li $t8, 12 +/* 08B1EC 8008A5EC 8DE70050 */ lw $a3, 0x50($t7) +/* 08B1F0 8008A5F0 AFB80010 */ sw $t8, 0x10($sp) +/* 08B1F4 8008A5F4 02A02025 */ move $a0, $s5 +/* 08B1F8 8008A5F8 240500A1 */ li $a1, 161 +/* 08B1FC 8008A5FC 0C031110 */ jal draw_text +/* 08B200 8008A600 24060023 */ li $a2, 35 +/* 08B204 8008A604 241900FF */ li $t9, 255 +/* 08B208 8008A608 AFB90010 */ sw $t9, 0x10($sp) +/* 08B20C 8008A60C 240400FF */ li $a0, 255 +/* 08B210 8008A610 240500FF */ li $a1, 255 +/* 08B214 8008A614 240600FF */ li $a2, 255 +/* 08B218 8008A618 0C0310E1 */ jal set_text_colour +/* 08B21C 8008A61C 00003825 */ move $a3, $zero +/* 08B220 8008A620 8EE80000 */ lw $t0, ($s7) +/* 08B224 8008A624 2409000C */ li $t1, 12 +/* 08B228 8008A628 8D070050 */ lw $a3, 0x50($t0) +/* 08B22C 8008A62C AFA90010 */ sw $t1, 0x10($sp) +/* 08B230 8008A630 02A02025 */ move $a0, $s5 +/* 08B234 8008A634 240500A0 */ li $a1, 160 +/* 08B238 8008A638 0C031110 */ jal draw_text +/* 08B23C 8008A63C 24060020 */ li $a2, 32 +/* 08B240 8008A640 3C03800E */ lui $v1, %hi(gUnlockedMagicCodes) # $v1, 0x800e +/* 08B244 8008A644 3C048012 */ lui $a0, %hi(D_80126C80) # $a0, 0x8012 +/* 08B248 8008A648 8C63FD9C */ lw $v1, %lo(gUnlockedMagicCodes)($v1) +/* 08B24C 8008A64C 24846C80 */ addiu $a0, %lo(D_80126C80) # addiu $a0, $a0, 0x6c80 +/* 08B250 8008A650 00008025 */ move $s0, $zero +/* 08B254 8008A654 24020001 */ li $v0, 1 +/* 08B258 8008A658 00009825 */ move $s3, $zero +.L8008A65C: +/* 08B25C 8008A65C 00435024 */ and $t2, $v0, $v1 +/* 08B260 8008A660 11400005 */ beqz $t2, .L8008A678 +/* 08B264 8008A664 00026840 */ sll $t5, $v0, 1 +/* 08B268 8008A668 00135840 */ sll $t3, $s3, 1 +/* 08B26C 8008A66C 008B6021 */ addu $t4, $a0, $t3 +/* 08B270 8008A670 A5900000 */ sh $s0, ($t4) +/* 08B274 8008A674 26730001 */ addiu $s3, $s3, 1 +.L8008A678: +/* 08B278 8008A678 26100001 */ addiu $s0, $s0, 1 +/* 08B27C 8008A67C 2A010020 */ slti $at, $s0, 0x20 +/* 08B280 8008A680 1420FFF6 */ bnez $at, .L8008A65C +/* 08B284 8008A684 01A01025 */ move $v0, $t5 +/* 08B288 8008A688 3C1E8012 */ lui $fp, %hi(gOptionBlinkTimer) # $fp, 0x8012 +/* 08B28C 8008A68C 8FDE63BC */ lw $fp, %lo(gOptionBlinkTimer)($fp) +/* 08B290 8008A690 24120036 */ li $s2, 54 +/* 08B294 8008A694 001E70C0 */ sll $t6, $fp, 3 +/* 08B298 8008A698 29C10100 */ slti $at, $t6, 0x100 +/* 08B29C 8008A69C 14200003 */ bnez $at, .L8008A6AC +/* 08B2A0 8008A6A0 01C0F025 */ move $fp, $t6 +/* 08B2A4 8008A6A4 240F01FF */ li $t7, 511 +/* 08B2A8 8008A6A8 01EEF023 */ subu $fp, $t7, $t6 +.L8008A6AC: +/* 08B2AC 8008A6AC 0C0310BB */ jal set_text_font +/* 08B2B0 8008A6B0 00002025 */ move $a0, $zero +/* 08B2B4 8008A6B4 241800FF */ li $t8, 255 +/* 08B2B8 8008A6B8 AFB80010 */ sw $t8, 0x10($sp) +/* 08B2BC 8008A6BC 240400FF */ li $a0, 255 +/* 08B2C0 8008A6C0 240500FF */ li $a1, 255 +/* 08B2C4 8008A6C4 240600FF */ li $a2, 255 +/* 08B2C8 8008A6C8 0C0310E1 */ jal set_text_colour +/* 08B2CC 8008A6CC 00003825 */ move $a3, $zero +/* 08B2D0 8008A6D0 3C038012 */ lui $v1, %hi(D_801263E0) # $v1, 0x8012 +/* 08B2D4 8008A6D4 3C198012 */ lui $t9, %hi(D_80126C70) # $t9, 0x8012 +/* 08B2D8 8008A6D8 8F396C70 */ lw $t9, %lo(D_80126C70)($t9) +/* 08B2DC 8008A6DC 8C6363E0 */ lw $v1, %lo(D_801263E0)($v1) +/* 08B2E0 8008A6E0 3C168012 */ lui $s6, %hi(gCheatsAssetData) # $s6, 0x8012 +/* 08B2E4 8008A6E4 8ED66C30 */ lw $s6, %lo(gCheatsAssetData)($s6) +/* 08B2E8 8008A6E8 00791021 */ addu $v0, $v1, $t9 +/* 08B2EC 8008A6EC 0062082A */ slt $at, $v1, $v0 +/* 08B2F0 8008A6F0 00608025 */ move $s0, $v1 +/* 08B2F4 8008A6F4 1020004B */ beqz $at, .L8008A824 +/* 08B2F8 8008A6F8 26D60002 */ addiu $s6, $s6, 2 +/* 08B2FC 8008A6FC 0073082A */ slt $at, $v1, $s3 +/* 08B300 8008A700 10200048 */ beqz $at, .L8008A824 +/* 08B304 8008A704 00034040 */ sll $t0, $v1, 1 +/* 08B308 8008A708 3C098012 */ lui $t1, %hi(D_80126C80) # $t1, 0x8012 +/* 08B30C 8008A70C 25296C80 */ addiu $t1, %lo(D_80126C80) # addiu $t1, $t1, 0x6c80 +/* 08B310 8008A710 3C148012 */ lui $s4, %hi(gOptionsMenuItemIndex) # $s4, 0x8012 +/* 08B314 8008A714 26946C46 */ addiu $s4, %lo(gOptionsMenuItemIndex) # addiu $s4, $s4, 0x6c46 +/* 08B318 8008A718 01098821 */ addu $s1, $t0, $t1 +.L8008A71C: +/* 08B31C 8008A71C 868A0000 */ lh $t2, ($s4) +/* 08B320 8008A720 240400FF */ li $a0, 255 +/* 08B324 8008A724 160A0006 */ bne $s0, $t2, .L8008A740 +/* 08B328 8008A728 240500FF */ li $a1, 255 +/* 08B32C 8008A72C 240B00FF */ li $t3, 255 +/* 08B330 8008A730 AFAB0010 */ sw $t3, 0x10($sp) +/* 08B334 8008A734 240600FF */ li $a2, 255 +/* 08B338 8008A738 0C0310E1 */ jal set_text_colour +/* 08B33C 8008A73C 03C03825 */ move $a3, $fp +.L8008A740: +/* 08B340 8008A740 862D0000 */ lh $t5, ($s1) +/* 08B344 8008A744 3C198012 */ lui $t9, %hi(gCheatsAssetData) # $t9, 0x8012 +/* 08B348 8008A748 000D7080 */ sll $t6, $t5, 2 +/* 08B34C 8008A74C 02CE7821 */ addu $t7, $s6, $t6 +/* 08B350 8008A750 95F80002 */ lhu $t8, 2($t7) +/* 08B354 8008A754 8F396C30 */ lw $t9, %lo(gCheatsAssetData)($t9) +/* 08B358 8008A758 AFA00010 */ sw $zero, 0x10($sp) +/* 08B35C 8008A75C 02A02025 */ move $a0, $s5 +/* 08B360 8008A760 24050030 */ li $a1, 48 +/* 08B364 8008A764 02403025 */ move $a2, $s2 +/* 08B368 8008A768 0C031110 */ jal draw_text +/* 08B36C 8008A76C 03193821 */ addu $a3, $t8, $t9 +/* 08B370 8008A770 86280000 */ lh $t0, ($s1) +/* 08B374 8008A774 3C0B800E */ lui $t3, %hi(gActiveMagicCodes) # $t3, 0x800e +/* 08B378 8008A778 8D6BFD98 */ lw $t3, %lo(gActiveMagicCodes)($t3) +/* 08B37C 8008A77C 24090001 */ li $t1, 1 +/* 08B380 8008A780 01095004 */ sllv $t2, $t1, $t0 +/* 08B384 8008A784 014B6024 */ and $t4, $t2, $t3 +/* 08B388 8008A788 1180000A */ beqz $t4, .L8008A7B4 +/* 08B38C 8008A78C 02A02025 */ move $a0, $s5 +/* 08B390 8008A790 8EED0000 */ lw $t5, ($s7) +/* 08B394 8008A794 02A02025 */ move $a0, $s5 +/* 08B398 8008A798 8DA70054 */ lw $a3, 0x54($t5) +/* 08B39C 8008A79C AFA00010 */ sw $zero, 0x10($sp) +/* 08B3A0 8008A7A0 24050100 */ li $a1, 256 +/* 08B3A4 8008A7A4 0C031110 */ jal draw_text +/* 08B3A8 8008A7A8 02403025 */ move $a2, $s2 +/* 08B3AC 8008A7AC 10000008 */ b .L8008A7D0 +/* 08B3B0 8008A7B0 868F0000 */ lh $t7, ($s4) +.L8008A7B4: +/* 08B3B4 8008A7B4 8EEE0000 */ lw $t6, ($s7) +/* 08B3B8 8008A7B8 24050100 */ li $a1, 256 +/* 08B3BC 8008A7BC 8DC70058 */ lw $a3, 0x58($t6) +/* 08B3C0 8008A7C0 AFA00010 */ sw $zero, 0x10($sp) +/* 08B3C4 8008A7C4 0C031110 */ jal draw_text +/* 08B3C8 8008A7C8 02403025 */ move $a2, $s2 +/* 08B3CC 8008A7CC 868F0000 */ lh $t7, ($s4) +.L8008A7D0: +/* 08B3D0 8008A7D0 240400FF */ li $a0, 255 +/* 08B3D4 8008A7D4 160F0006 */ bne $s0, $t7, .L8008A7F0 +/* 08B3D8 8008A7D8 240500FF */ li $a1, 255 +/* 08B3DC 8008A7DC 241800FF */ li $t8, 255 +/* 08B3E0 8008A7E0 AFB80010 */ sw $t8, 0x10($sp) +/* 08B3E4 8008A7E4 240600FF */ li $a2, 255 +/* 08B3E8 8008A7E8 0C0310E1 */ jal set_text_colour +/* 08B3EC 8008A7EC 00003825 */ move $a3, $zero +.L8008A7F0: +/* 08B3F0 8008A7F0 3C198012 */ lui $t9, %hi(D_801263E0) # $t9, 0x8012 +/* 08B3F4 8008A7F4 3C098012 */ lui $t1, %hi(D_80126C70) # $t1, 0x8012 +/* 08B3F8 8008A7F8 8D296C70 */ lw $t1, %lo(D_80126C70)($t1) +/* 08B3FC 8008A7FC 8F3963E0 */ lw $t9, %lo(D_801263E0)($t9) +/* 08B400 8008A800 26100001 */ addiu $s0, $s0, 1 +/* 08B404 8008A804 03291021 */ addu $v0, $t9, $t1 +/* 08B408 8008A808 0202082A */ slt $at, $s0, $v0 +/* 08B40C 8008A80C 26310002 */ addiu $s1, $s1, 2 +/* 08B410 8008A810 10200004 */ beqz $at, .L8008A824 +/* 08B414 8008A814 26520010 */ addiu $s2, $s2, 0x10 +/* 08B418 8008A818 0213082A */ slt $at, $s0, $s3 +/* 08B41C 8008A81C 1420FFBF */ bnez $at, .L8008A71C +/* 08B420 8008A820 00000000 */ nop +.L8008A824: +/* 08B424 8008A824 3C148012 */ lui $s4, %hi(gOptionsMenuItemIndex) # $s4, 0x8012 +/* 08B428 8008A828 0202082A */ slt $at, $s0, $v0 +/* 08B42C 8008A82C 10200014 */ beqz $at, .L8008A880 +/* 08B430 8008A830 26946C46 */ addiu $s4, %lo(gOptionsMenuItemIndex) # addiu $s4, $s4, 0x6c46 +/* 08B434 8008A834 86880000 */ lh $t0, ($s4) +/* 08B438 8008A838 240400FF */ li $a0, 255 +/* 08B43C 8008A83C 16680006 */ bne $s3, $t0, .L8008A858 +/* 08B440 8008A840 240500FF */ li $a1, 255 +/* 08B444 8008A844 240A00FF */ li $t2, 255 +/* 08B448 8008A848 AFAA0010 */ sw $t2, 0x10($sp) +/* 08B44C 8008A84C 240600FF */ li $a2, 255 +/* 08B450 8008A850 0C0310E1 */ jal set_text_colour +/* 08B454 8008A854 03C03825 */ move $a3, $fp +.L8008A858: +/* 08B458 8008A858 8EEB0000 */ lw $t3, ($s7) +/* 08B45C 8008A85C 240C0004 */ li $t4, 4 +/* 08B460 8008A860 8D670014 */ lw $a3, 0x14($t3) +/* 08B464 8008A864 AFAC0010 */ sw $t4, 0x10($sp) +/* 08B468 8008A868 02A02025 */ move $a0, $s5 +/* 08B46C 8008A86C 24058000 */ li $a1, -32768 +/* 08B470 8008A870 0C031110 */ jal draw_text +/* 08B474 8008A874 02403025 */ move $a2, $s2 +/* 08B478 8008A878 10000014 */ b .L8008A8CC +/* 08B47C 8008A87C 8FBF004C */ lw $ra, 0x4c($sp) +.L8008A880: +/* 08B480 8008A880 3C0D8012 */ lui $t5, %hi(gOptionBlinkTimer) # $t5, 0x8012 +/* 08B484 8008A884 8DAD63BC */ lw $t5, %lo(gOptionBlinkTimer)($t5) +/* 08B488 8008A888 02A02025 */ move $a0, $s5 +/* 08B48C 8008A88C 31AE0008 */ andi $t6, $t5, 8 +/* 08B490 8008A890 11C0000D */ beqz $t6, .L8008A8C8 +/* 08B494 8008A894 3C05800E */ lui $a1, %hi(gMenuSelectionArrowDown) # $a1, 0x800e +/* 08B498 8008A898 240F00FF */ li $t7, 255 +/* 08B49C 8008A89C 241800FF */ li $t8, 255 +/* 08B4A0 8008A8A0 241900FF */ li $t9, 255 +/* 08B4A4 8008A8A4 240900FF */ li $t1, 255 +/* 08B4A8 8008A8A8 AFA9001C */ sw $t1, 0x1c($sp) +/* 08B4AC 8008A8AC AFB90018 */ sw $t9, 0x18($sp) +/* 08B4B0 8008A8B0 AFB80014 */ sw $t8, 0x14($sp) +/* 08B4B4 8008A8B4 AFAF0010 */ sw $t7, 0x10($sp) +/* 08B4B8 8008A8B8 24A5043C */ addiu $a1, %lo(gMenuSelectionArrowDown) # addiu $a1, $a1, 0x43c +/* 08B4BC 8008A8BC 240600A0 */ li $a2, 160 +/* 08B4C0 8008A8C0 0C01E2AE */ jal render_textured_rectangle +/* 08B4C4 8008A8C4 26470008 */ addiu $a3, $s2, 8 +.L8008A8C8: +/* 08B4C8 8008A8C8 8FBF004C */ lw $ra, 0x4c($sp) +.L8008A8CC: +/* 08B4CC 8008A8CC 8FB00028 */ lw $s0, 0x28($sp) +/* 08B4D0 8008A8D0 8FB1002C */ lw $s1, 0x2c($sp) +/* 08B4D4 8008A8D4 8FB20030 */ lw $s2, 0x30($sp) +/* 08B4D8 8008A8D8 8FB30034 */ lw $s3, 0x34($sp) +/* 08B4DC 8008A8DC 8FB40038 */ lw $s4, 0x38($sp) +/* 08B4E0 8008A8E0 8FB5003C */ lw $s5, 0x3c($sp) +/* 08B4E4 8008A8E4 8FB60040 */ lw $s6, 0x40($sp) +/* 08B4E8 8008A8E8 8FB70044 */ lw $s7, 0x44($sp) +/* 08B4EC 8008A8EC 8FBE0048 */ lw $fp, 0x48($sp) +/* 08B4F0 8008A8F0 03E00008 */ jr $ra +/* 08B4F4 8008A8F4 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/menu/render_magic_codes_ui.s b/asm/non_matchings/menu/render_magic_codes_ui.s index 7fe24d86..f49856b6 100644 --- a/asm/non_matchings/menu/render_magic_codes_ui.s +++ b/asm/non_matchings/menu/render_magic_codes_ui.s @@ -89,10 +89,10 @@ glabel render_magic_codes_ui /* 08A3F8 800897F8 160D0014 */ bne $s0, $t5, .L8008984C /* 08A3FC 800897FC 2A61005B */ slti $at, $s3, 0x5b /* 08A400 80089800 86CE0000 */ lh $t6, ($s6) -/* 08A404 80089804 3C128012 */ lui $s2, %hi(D_801263BC) # $s2, 0x8012 +/* 08A404 80089804 3C128012 */ lui $s2, %hi(gOptionBlinkTimer) # $s2, 0x8012 /* 08A408 80089808 17CE000F */ bne $fp, $t6, .L80089848 /* 08A40C 8008980C 24040080 */ li $a0, 128 -/* 08A410 80089810 8E5263BC */ lw $s2, %lo(D_801263BC)($s2) +/* 08A410 80089810 8E5263BC */ lw $s2, %lo(gOptionBlinkTimer)($s2) /* 08A414 80089814 240500FF */ li $a1, 255 /* 08A418 80089818 001278C0 */ sll $t7, $s2, 3 /* 08A41C 8008981C 29E10100 */ slti $at, $t7, 0x100 @@ -177,8 +177,8 @@ glabel render_magic_codes_ui /* 08A53C 8008993C 2BC10004 */ slti $at, $fp, 4 /* 08A540 80089940 1420FFA4 */ bnez $at, .L800897D4 /* 08A544 80089944 26940016 */ addiu $s4, $s4, 0x16 -/* 08A548 80089948 3C128012 */ lui $s2, %hi(D_801263BC) # $s2, 0x8012 -/* 08A54C 8008994C 8E5263BC */ lw $s2, %lo(D_801263BC)($s2) +/* 08A548 80089948 3C128012 */ lui $s2, %hi(gOptionBlinkTimer) # $s2, 0x8012 +/* 08A54C 8008994C 8E5263BC */ lw $s2, %lo(gOptionBlinkTimer)($s2) /* 08A550 80089950 00000000 */ nop /* 08A554 80089954 001248C0 */ sll $t1, $s2, 3 /* 08A558 80089958 29210100 */ slti $at, $t1, 0x100 diff --git a/asm/non_matchings/menu/render_track_select_setup_ui.s b/asm/non_matchings/menu/render_track_select_setup_ui.s index 85d79e85..2dd431ae 100644 --- a/asm/non_matchings/menu/render_track_select_setup_ui.s +++ b/asm/non_matchings/menu/render_track_select_setup_ui.s @@ -1,1253 +1,1253 @@ -.late_rodata -glabel D_800E84F0 -.float 1.2 - -.text -glabel render_track_select_setup_ui -/* 091B30 80090F30 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 091B34 80090F34 AFBF0054 */ sw $ra, 0x54($sp) -/* 091B38 80090F38 AFBE0050 */ sw $fp, 0x50($sp) -/* 091B3C 80090F3C AFB7004C */ sw $s7, 0x4c($sp) -/* 091B40 80090F40 AFB60048 */ sw $s6, 0x48($sp) -/* 091B44 80090F44 AFB50044 */ sw $s5, 0x44($sp) -/* 091B48 80090F48 AFB40040 */ sw $s4, 0x40($sp) -/* 091B4C 80090F4C AFB3003C */ sw $s3, 0x3c($sp) -/* 091B50 80090F50 AFB20038 */ sw $s2, 0x38($sp) -/* 091B54 80090F54 AFB10034 */ sw $s1, 0x34($sp) -/* 091B58 80090F58 AFB00030 */ sw $s0, 0x30($sp) -/* 091B5C 80090F5C AFA40098 */ sw $a0, 0x98($sp) -/* 091B60 80090F60 AFA00080 */ sw $zero, 0x80($sp) -/* 091B64 80090F64 AFA00078 */ sw $zero, 0x78($sp) -/* 091B68 80090F68 0C01BAA4 */ jal get_settings -/* 091B6C 80090F6C AFA00074 */ sw $zero, 0x74($sp) -/* 091B70 80090F70 3C108000 */ lui $s0, %hi(osTvType) # $s0, 0x8000 -/* 091B74 80090F74 26100300 */ addiu $s0, %lo(osTvType) # addiu $s0, $s0, 0x300 -/* 091B78 80090F78 8E0E0000 */ lw $t6, ($s0) -/* 091B7C 80090F7C AFA20070 */ sw $v0, 0x70($sp) -/* 091B80 80090F80 15C00003 */ bnez $t6, .L80090F90 -/* 091B84 80090F84 3C18800E */ lui $t8, %hi(gNumberOfActivePlayers) # $t8, 0x800e -/* 091B88 80090F88 240F000C */ li $t7, 12 -/* 091B8C 80090F8C AFAF0080 */ sw $t7, 0x80($sp) -.L80090F90: -/* 091B90 80090F90 8F18F4BC */ lw $t8, %lo(gNumberOfActivePlayers)($t8) -/* 091B94 80090F94 24010002 */ li $at, 2 -/* 091B98 80090F98 1701000D */ bne $t8, $at, .L80090FD0 -/* 091B9C 80090F9C 00002025 */ move $a0, $zero -/* 091BA0 80090FA0 3C198012 */ lui $t9, %hi(D_801269C8) # $t9, 0x8012 -/* 091BA4 80090FA4 8F3969C8 */ lw $t9, %lo(D_801269C8)($t9) -/* 091BA8 80090FA8 3C088012 */ lui $t0, %hi(D_801263E0) # $t0, 0x8012 -/* 091BAC 80090FAC 2B210004 */ slti $at, $t9, 4 -/* 091BB0 80090FB0 10200007 */ beqz $at, .L80090FD0 -/* 091BB4 80090FB4 00000000 */ nop -/* 091BB8 80090FB8 8D0863E0 */ lw $t0, %lo(D_801263E0)($t0) -/* 091BBC 80090FBC 24090001 */ li $t1, 1 -/* 091BC0 80090FC0 29010002 */ slti $at, $t0, 2 -/* 091BC4 80090FC4 14200002 */ bnez $at, .L80090FD0 -/* 091BC8 80090FC8 00000000 */ nop -/* 091BCC 80090FCC AFA90074 */ sw $t1, 0x74($sp) -.L80090FD0: -/* 091BD0 80090FD0 0C019A25 */ jal func_80066894 -/* 091BD4 80090FD4 24050001 */ li $a1, 1 -/* 091BD8 80090FD8 0C026F57 */ jal func_8009BD5C -/* 091BDC 80090FDC 00000000 */ nop -/* 091BE0 80090FE0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 091BE4 80090FE4 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 -/* 091BE8 80090FE8 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 -/* 091BEC 80090FEC 0C019FCB */ jal func_80067F2C -/* 091BF0 80090FF0 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 091BF4 80090FF4 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e -/* 091BF8 80090FF8 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) -/* 091BFC 80090FFC 3C03800E */ lui $v1, %hi(gMenuImageStack) # $v1, 0x800e -/* 091C00 80091000 04410029 */ bgez $v0, .L800910A8 -/* 091C04 80091004 2463F75C */ addiu $v1, %lo(gMenuImageStack) # addiu $v1, $v1, -0x8a4 -/* 091C08 80091008 3C028012 */ lui $v0, %hi(D_801269F4) # $v0, 0x8012 -/* 091C0C 8009100C 8C4269F4 */ lw $v0, %lo(D_801269F4)($v0) -/* 091C10 80091010 24010004 */ li $at, 4 -/* 091C14 80091014 14410004 */ bne $v0, $at, .L80091028 -/* 091C18 80091018 24010005 */ li $at, 5 -/* 091C1C 8009101C 1000000A */ b .L80091048 -/* 091C20 80091020 24040006 */ li $a0, 6 -/* 091C24 80091024 24010005 */ li $at, 5 -.L80091028: -/* 091C28 80091028 14410005 */ bne $v0, $at, .L80091040 -/* 091C2C 8009102C 240B0004 */ li $t3, 4 -/* 091C30 80091030 240A0005 */ li $t2, 5 -/* 091C34 80091034 AFAA0084 */ sw $t2, 0x84($sp) -/* 091C38 80091038 10000003 */ b .L80091048 -/* 091C3C 8009103C 24040005 */ li $a0, 5 -.L80091040: -/* 091C40 80091040 AFAB0084 */ sw $t3, 0x84($sp) -/* 091C44 80091044 24040004 */ li $a0, 4 -.L80091048: -/* 091C48 80091048 8C6C0000 */ lw $t4, ($v1) -/* 091C4C 8009104C 44800000 */ mtc1 $zero, $f0 -/* 091C50 80091050 00041140 */ sll $v0, $a0, 5 -/* 091C54 80091054 01826821 */ addu $t5, $t4, $v0 -/* 091C58 80091058 E5A0000C */ swc1 $f0, 0xc($t5) -/* 091C5C 8009105C 8C6E0000 */ lw $t6, ($v1) -/* 091C60 80091060 3C01800F */ lui $at, %hi(D_800E84F0) # $at, 0x800f -/* 091C64 80091064 01C27821 */ addu $t7, $t6, $v0 -/* 091C68 80091068 E5E00010 */ swc1 $f0, 0x10($t7) -/* 091C6C 8009106C 8E180000 */ lw $t8, ($s0) -/* 091C70 80091070 00000000 */ nop -/* 091C74 80091074 17000004 */ bnez $t8, .L80091088 -/* 091C78 80091078 00000000 */ nop -/* 091C7C 8009107C C42484F0 */ lwc1 $f4, %lo(D_800E84F0)($at) -/* 091C80 80091080 3C01800E */ lui $at, %hi(D_800DF454) # $at, 0x800e -/* 091C84 80091084 E424F454 */ swc1 $f4, %lo(D_800DF454)($at) -.L80091088: -/* 091C88 80091088 0C027298 */ jal func_8009CA60 -/* 091C8C 8009108C 00000000 */ nop -/* 091C90 80091090 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 091C94 80091094 44813000 */ mtc1 $at, $f6 -/* 091C98 80091098 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e -/* 091C9C 8009109C 3C01800E */ lui $at, %hi(D_800DF454) # $at, 0x800e -/* 091CA0 800910A0 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) -/* 091CA4 800910A4 E426F454 */ swc1 $f6, %lo(D_800DF454)($at) -.L800910A8: -/* 091CA8 800910A8 2841FFEA */ slti $at, $v0, -0x16 -/* 091CAC 800910AC 1420042A */ bnez $at, .L80092158 -/* 091CB0 800910B0 2841001F */ slti $at, $v0, 0x1f -/* 091CB4 800910B4 10200428 */ beqz $at, .L80092158 -/* 091CB8 800910B8 3C04800E */ lui $a0, %hi(gTrackIdForPreview) # $a0, 0x800e -/* 091CBC 800910BC 04410006 */ bgez $v0, .L800910D8 -/* 091CC0 800910C0 3C1E800E */ lui $fp, %hi(sMenuGuiOpacity) # $fp, 0x800e -/* 091CC4 800910C4 0002C900 */ sll $t9, $v0, 4 -/* 091CC8 800910C8 272800FF */ addiu $t0, $t9, 0xff -/* 091CCC 800910CC 27DEF764 */ addiu $fp, %lo(sMenuGuiOpacity) # addiu $fp, $fp, -0x89c -/* 091CD0 800910D0 10000005 */ b .L800910E8 -/* 091CD4 800910D4 AFC80000 */ sw $t0, ($fp) -.L800910D8: -/* 091CD8 800910D8 3C1E800E */ lui $fp, %hi(sMenuGuiOpacity) # $fp, 0x800e -/* 091CDC 800910DC 27DEF764 */ addiu $fp, %lo(sMenuGuiOpacity) # addiu $fp, $fp, -0x89c -/* 091CE0 800910E0 240900FF */ li $t1, 255 -/* 091CE4 800910E4 AFC90000 */ sw $t1, ($fp) -.L800910E8: -/* 091CE8 800910E8 8FCA0000 */ lw $t2, ($fp) -/* 091CEC 800910EC 00000000 */ nop -/* 091CF0 800910F0 05410002 */ bgez $t2, .L800910FC -/* 091CF4 800910F4 00000000 */ nop -/* 091CF8 800910F8 AFC00000 */ sw $zero, ($fp) -.L800910FC: -/* 091CFC 800910FC 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) -/* 091D00 80091100 0C01AC3E */ jal func_8006B0F8 -/* 091D04 80091104 00000000 */ nop -/* 091D08 80091108 3C04800E */ lui $a0, %hi(gTrackIdForPreview) # $a0, 0x800e -/* 091D0C 8009110C 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) -/* 091D10 80091110 0C01AF77 */ jal get_level_name -/* 091D14 80091114 AFA2007C */ sw $v0, 0x7c($sp) -/* 091D18 80091118 00408025 */ move $s0, $v0 -/* 091D1C 8009111C 0C0310BB */ jal set_text_font -/* 091D20 80091120 24040002 */ li $a0, 2 -/* 091D24 80091124 8FCB0000 */ lw $t3, ($fp) -/* 091D28 80091128 240400C0 */ li $a0, 192 -/* 091D2C 8009112C 240500C0 */ li $a1, 192 -/* 091D30 80091130 240600FF */ li $a2, 255 -/* 091D34 80091134 00003825 */ move $a3, $zero -/* 091D38 80091138 0C0310E1 */ jal set_text_colour -/* 091D3C 8009113C AFAB0010 */ sw $t3, 0x10($sp) -/* 091D40 80091140 00002025 */ move $a0, $zero -/* 091D44 80091144 00002825 */ move $a1, $zero -/* 091D48 80091148 00003025 */ move $a2, $zero -/* 091D4C 8009114C 0C0310F3 */ jal set_text_background_colour -/* 091D50 80091150 00003825 */ move $a3, $zero -/* 091D54 80091154 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 091D58 80091158 240C000C */ li $t4, 12 -/* 091D5C 8009115C AFAC0010 */ sw $t4, 0x10($sp) -/* 091D60 80091160 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 091D64 80091164 24058000 */ li $a1, -32768 -/* 091D68 80091168 2406002B */ li $a2, 43 -/* 091D6C 8009116C 0C031110 */ jal draw_text -/* 091D70 80091170 02003825 */ move $a3, $s0 -/* 091D74 80091174 3C068012 */ lui $a2, %hi(D_801263BC) # $a2, 0x8012 -/* 091D78 80091178 8CC663BC */ lw $a2, %lo(D_801263BC)($a2) -/* 091D7C 8009117C 24040007 */ li $a0, 7 -/* 091D80 80091180 000668C0 */ sll $t5, $a2, 3 -/* 091D84 80091184 29A10100 */ slti $at, $t5, 0x100 -/* 091D88 80091188 14200003 */ bnez $at, .L80091198 -/* 091D8C 8009118C 01A03025 */ move $a2, $t5 -/* 091D90 80091190 240E01FF */ li $t6, 511 -/* 091D94 80091194 01CD3023 */ subu $a2, $t6, $t5 -.L80091198: -/* 091D98 80091198 8FCF0000 */ lw $t7, ($fp) -/* 091D9C 8009119C 240500FF */ li $a1, 255 -/* 091DA0 800911A0 00003825 */ move $a3, $zero -/* 091DA4 800911A4 AFA60084 */ sw $a2, 0x84($sp) -/* 091DA8 800911A8 0C0313EF */ jal set_current_dialogue_background_colour -/* 091DAC 800911AC AFAF0010 */ sw $t7, 0x10($sp) -/* 091DB0 800911B0 3C028012 */ lui $v0, %hi(D_801263E0) # $v0, 0x8012 -/* 091DB4 800911B4 8C4263E0 */ lw $v0, %lo(D_801263E0)($v0) -/* 091DB8 800911B8 2401FFFF */ li $at, -1 -/* 091DBC 800911BC 1041000A */ beq $v0, $at, .L800911E8 -/* 091DC0 800911C0 24010002 */ li $at, 2 -/* 091DC4 800911C4 14410073 */ bne $v0, $at, .L80091394 -/* 091DC8 800911C8 3C188012 */ lui $t8, %hi(D_801269C8) # $t8, 0x8012 -/* 091DCC 800911CC 8F1869C8 */ lw $t8, %lo(D_801269C8)($t8) -/* 091DD0 800911D0 24010004 */ li $at, 4 -/* 091DD4 800911D4 1701006F */ bne $t8, $at, .L80091394 -/* 091DD8 800911D8 00000000 */ nop -/* 091DDC 800911DC 0C027B18 */ jal is_adventure_two_unlocked -/* 091DE0 800911E0 00000000 */ nop -/* 091DE4 800911E4 1040006B */ beqz $v0, .L80091394 -.L800911E8: -/* 091DE8 800911E8 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e -/* 091DEC 800911EC 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) -/* 091DF0 800911F0 00002825 */ move $a1, $zero -/* 091DF4 800911F4 8F240248 */ lw $a0, 0x248($t9) -/* 091DF8 800911F8 0C031368 */ jal func_800C4DA0 -/* 091DFC 800911FC 00003025 */ move $a2, $zero -/* 091E00 80091200 3C08800E */ lui $t0, %hi(gMenuText) # $t0, 0x800e -/* 091E04 80091204 8D08F4A0 */ lw $t0, %lo(gMenuText)($t0) -/* 091E08 80091208 0040A025 */ move $s4, $v0 -/* 091E0C 8009120C 8D04024C */ lw $a0, 0x24c($t0) -/* 091E10 80091210 00002825 */ move $a1, $zero -/* 091E14 80091214 0C031368 */ jal func_800C4DA0 -/* 091E18 80091218 00003025 */ move $a2, $zero -/* 091E1C 8009121C 0282082A */ slt $at, $s4, $v0 -/* 091E20 80091220 10200002 */ beqz $at, .L8009122C -/* 091E24 80091224 3C10800E */ lui $s0, %hi(D_800E0700) # $s0, 0x800e -/* 091E28 80091228 0040A025 */ move $s4, $v0 -.L8009122C: -/* 091E2C 8009122C 26100700 */ addiu $s0, %lo(D_800E0700) # addiu $s0, $s0, 0x700 -/* 091E30 80091230 86020004 */ lh $v0, 4($s0) -/* 091E34 80091234 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 091E38 80091238 0282082A */ slt $at, $s4, $v0 -/* 091E3C 8009123C 10200003 */ beqz $at, .L8009124C -/* 091E40 80091240 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 091E44 80091244 10000002 */ b .L80091250 -/* 091E48 80091248 0040A025 */ move $s4, $v0 -.L8009124C: -/* 091E4C 8009124C 2694000C */ addiu $s4, $s4, 0xc -.L80091250: -/* 091E50 80091250 8FCE0000 */ lw $t6, ($fp) -/* 091E54 80091254 3C01B0E0 */ lui $at, (0xB0E0C000 >> 16) # lui $at, 0xb0e0 -/* 091E58 80091258 3C188012 */ lui $t8, %hi(D_8012665C) # $t8, 0x8012 -/* 091E5C 8009125C 8F18665C */ lw $t8, %lo(D_8012665C)($t8) -/* 091E60 80091260 86090002 */ lh $t1, 2($s0) -/* 091E64 80091264 860B0006 */ lh $t3, 6($s0) -/* 091E68 80091268 860C0008 */ lh $t4, 8($s0) -/* 091E6C 8009126C 860D000A */ lh $t5, 0xa($s0) -/* 091E70 80091270 3421C000 */ ori $at, (0xB0E0C000 & 0xFFFF) # ori $at, $at, 0xc000 -/* 091E74 80091274 00142843 */ sra $a1, $s4, 1 -/* 091E78 80091278 240A0078 */ li $t2, 120 -/* 091E7C 8009127C 01C17821 */ addu $t7, $t6, $at -/* 091E80 80091280 AFAF001C */ sw $t7, 0x1c($sp) -/* 091E84 80091284 00052823 */ negu $a1, $a1 -/* 091E88 80091288 02803825 */ move $a3, $s4 -/* 091E8C 8009128C AFB80020 */ sw $t8, 0x20($sp) -/* 091E90 80091290 01493023 */ subu $a2, $t2, $t1 -/* 091E94 80091294 AFAB0010 */ sw $t3, 0x10($sp) -/* 091E98 80091298 AFAC0014 */ sw $t4, 0x14($sp) -/* 091E9C 8009129C 0C020160 */ jal func_80080580 -/* 091EA0 800912A0 AFAD0018 */ sw $t5, 0x18($sp) -/* 091EA4 800912A4 0C02039B */ jal func_80080E6C -/* 091EA8 800912A8 00000000 */ nop -/* 091EAC 800912AC 0C0310BB */ jal set_text_font -/* 091EB0 800912B0 00002025 */ move $a0, $zero -/* 091EB4 800912B4 8619000E */ lh $t9, 0xe($s0) -/* 091EB8 800912B8 86080002 */ lh $t0, 2($s0) -/* 091EBC 800912BC 8FA90080 */ lw $t1, 0x80($sp) -/* 091EC0 800912C0 03285021 */ addu $t2, $t9, $t0 -/* 091EC4 800912C4 3C16800E */ lui $s6, %hi(D_800E0418) # $s6, 0x800e -/* 091EC8 800912C8 0149B821 */ addu $s7, $t2, $t1 -/* 091ECC 800912CC 26F70001 */ addiu $s7, $s7, 1 -/* 091ED0 800912D0 26D60418 */ addiu $s6, %lo(D_800E0418) # addiu $s6, $s6, 0x418 -/* 091ED4 800912D4 0000A025 */ move $s4, $zero -/* 091ED8 800912D8 00008825 */ move $s1, $zero -/* 091EDC 800912DC 241200A1 */ li $s2, 161 -.L800912E0: -/* 091EE0 800912E0 00009825 */ move $s3, $zero -/* 091EE4 800912E4 02E08025 */ move $s0, $s7 -.L800912E8: -/* 091EE8 800912E8 1660000B */ bnez $s3, .L80091318 -/* 091EEC 800912EC 240400FF */ li $a0, 255 -/* 091EF0 800912F0 8FCB0000 */ lw $t3, ($fp) -/* 091EF4 800912F4 00002025 */ move $a0, $zero -/* 091EF8 800912F8 000B6043 */ sra $t4, $t3, 1 -/* 091EFC 800912FC AFAC0010 */ sw $t4, 0x10($sp) -/* 091F00 80091300 00002825 */ move $a1, $zero -/* 091F04 80091304 00003025 */ move $a2, $zero -/* 091F08 80091308 0C0310E1 */ jal set_text_colour -/* 091F0C 8009130C 240700FF */ li $a3, 255 -/* 091F10 80091310 1000000C */ b .L80091344 -/* 091F14 80091314 00000000 */ nop -.L80091318: -/* 091F18 80091318 8ECD0000 */ lw $t5, ($s6) -/* 091F1C 8009131C 0000A825 */ move $s5, $zero -/* 091F20 80091320 168D0003 */ bne $s4, $t5, .L80091330 -/* 091F24 80091324 240500FF */ li $a1, 255 -/* 091F28 80091328 8FB50084 */ lw $s5, 0x84($sp) -/* 091F2C 8009132C 00000000 */ nop -.L80091330: -/* 091F30 80091330 8FCE0000 */ lw $t6, ($fp) -/* 091F34 80091334 240600FF */ li $a2, 255 -/* 091F38 80091338 02A03825 */ move $a3, $s5 -/* 091F3C 8009133C 0C0310E1 */ jal set_text_colour -/* 091F40 80091340 AFAE0010 */ sw $t6, 0x10($sp) -.L80091344: -/* 091F44 80091344 3C0F800E */ lui $t7, %hi(gMenuText) # $t7, 0x800e -/* 091F48 80091348 8DEFF4A0 */ lw $t7, %lo(gMenuText)($t7) -/* 091F4C 8009134C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 091F50 80091350 01F1C021 */ addu $t8, $t7, $s1 -/* 091F54 80091354 8F070248 */ lw $a3, 0x248($t8) -/* 091F58 80091358 2419000C */ li $t9, 12 -/* 091F5C 8009135C AFB90010 */ sw $t9, 0x10($sp) -/* 091F60 80091360 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 091F64 80091364 02532823 */ subu $a1, $s2, $s3 -/* 091F68 80091368 0C031110 */ jal draw_text -/* 091F6C 8009136C 02003025 */ move $a2, $s0 -/* 091F70 80091370 26730002 */ addiu $s3, $s3, 2 -/* 091F74 80091374 24010004 */ li $at, 4 -/* 091F78 80091378 1661FFDB */ bne $s3, $at, .L800912E8 -/* 091F7C 8009137C 2610FFFE */ addiu $s0, $s0, -2 -/* 091F80 80091380 26940001 */ addiu $s4, $s4, 1 -/* 091F84 80091384 24010002 */ li $at, 2 -/* 091F88 80091388 26310004 */ addiu $s1, $s1, 4 -/* 091F8C 8009138C 1681FFD4 */ bne $s4, $at, .L800912E0 -/* 091F90 80091390 26F70010 */ addiu $s7, $s7, 0x10 -.L80091394: -/* 091F94 80091394 3C088012 */ lui $t0, %hi(D_801269C8) # $t0, 0x8012 -/* 091F98 80091398 8D0869C8 */ lw $t0, %lo(D_801269C8)($t0) -/* 091F9C 8009139C 00000000 */ nop -/* 091FA0 800913A0 29010004 */ slti $at, $t0, 4 -/* 091FA4 800913A4 102002D8 */ beqz $at, .L80091F08 -/* 091FA8 800913A8 00000000 */ nop -/* 091FAC 800913AC 0C0310BB */ jal set_text_font -/* 091FB0 800913B0 00002025 */ move $a0, $zero -/* 091FB4 800913B4 8FCA0000 */ lw $t2, ($fp) -/* 091FB8 800913B8 240400FF */ li $a0, 255 -/* 091FBC 800913BC 24050040 */ li $a1, 64 -/* 091FC0 800913C0 24060040 */ li $a2, 64 -/* 091FC4 800913C4 24070060 */ li $a3, 96 -/* 091FC8 800913C8 0C0310E1 */ jal set_text_colour -/* 091FCC 800913CC AFAA0010 */ sw $t2, 0x10($sp) -/* 091FD0 800913D0 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e -/* 091FD4 800913D4 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) -/* 091FD8 800913D8 8FB00080 */ lw $s0, 0x80($sp) -/* 091FDC 800913DC 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 091FE0 800913E0 240B0008 */ li $t3, 8 -/* 091FE4 800913E4 8D270024 */ lw $a3, 0x24($t1) -/* 091FE8 800913E8 26100048 */ addiu $s0, $s0, 0x48 -/* 091FEC 800913EC 02003025 */ move $a2, $s0 -/* 091FF0 800913F0 AFAB0010 */ sw $t3, 0x10($sp) -/* 091FF4 800913F4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 091FF8 800913F8 0C031110 */ jal draw_text -/* 091FFC 800913FC 24050038 */ li $a1, 56 -/* 092000 80091400 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e -/* 092004 80091404 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) -/* 092008 80091408 8FB20080 */ lw $s2, 0x80($sp) -/* 09200C 8009140C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092010 80091410 240D0008 */ li $t5, 8 -/* 092014 80091414 8D870028 */ lw $a3, 0x28($t4) -/* 092018 80091418 2652005C */ addiu $s2, $s2, 0x5c -/* 09201C 8009141C 02403025 */ move $a2, $s2 -/* 092020 80091420 AFAD0010 */ sw $t5, 0x10($sp) -/* 092024 80091424 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092028 80091428 0C031110 */ jal draw_text -/* 09202C 8009142C 24050038 */ li $a1, 56 -/* 092030 80091430 8FCE0000 */ lw $t6, ($fp) -/* 092034 80091434 240400FF */ li $a0, 255 -/* 092038 80091438 24050080 */ li $a1, 128 -/* 09203C 8009143C 240600FF */ li $a2, 255 -/* 092040 80091440 24070060 */ li $a3, 96 -/* 092044 80091444 0C0310E1 */ jal set_text_colour -/* 092048 80091448 AFAE0010 */ sw $t6, 0x10($sp) -/* 09204C 8009144C 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 -/* 092050 80091450 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) -/* 092054 80091454 8FAF0070 */ lw $t7, 0x70($sp) -/* 092058 80091458 3C09800E */ lui $t1, %hi(gTrackIdForPreview) # $t1, 0x800e -/* 09205C 8009145C 0018C880 */ sll $t9, $t8, 2 -/* 092060 80091460 8D29F4C4 */ lw $t1, %lo(gTrackIdForPreview)($t1) -/* 092064 80091464 01F94021 */ addu $t0, $t7, $t9 -/* 092068 80091468 8D0A0030 */ lw $t2, 0x30($t0) -/* 09206C 8009146C 00095840 */ sll $t3, $t1, 1 -/* 092070 80091470 014B6021 */ addu $t4, $t2, $t3 -/* 092074 80091474 27B10078 */ addiu $s1, $sp, 0x78 -/* 092078 80091478 95840000 */ lhu $a0, ($t4) -/* 09207C 8009147C 02202825 */ move $a1, $s1 -/* 092080 80091480 0C025DBE */ jal decompress_filename_string -/* 092084 80091484 24060003 */ li $a2, 3 -/* 092088 80091488 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 09208C 8009148C 240D000C */ li $t5, 12 -/* 092090 80091490 AFAD0010 */ sw $t5, 0x10($sp) -/* 092094 80091494 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092098 80091498 240500FA */ li $a1, 250 -/* 09209C 8009149C 02003025 */ move $a2, $s0 -/* 0920A0 800914A0 0C031110 */ jal draw_text -/* 0920A4 800914A4 02203825 */ move $a3, $s1 -/* 0920A8 800914A8 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 -/* 0920AC 800914AC 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) -/* 0920B0 800914B0 8FAE0070 */ lw $t6, 0x70($sp) -/* 0920B4 800914B4 3C09800E */ lui $t1, %hi(gTrackIdForPreview) # $t1, 0x800e -/* 0920B8 800914B8 00187880 */ sll $t7, $t8, 2 -/* 0920BC 800914BC 8D29F4C4 */ lw $t1, %lo(gTrackIdForPreview)($t1) -/* 0920C0 800914C0 01CFC821 */ addu $t9, $t6, $t7 -/* 0920C4 800914C4 8F280018 */ lw $t0, 0x18($t9) -/* 0920C8 800914C8 00095040 */ sll $t2, $t1, 1 -/* 0920CC 800914CC 010A5821 */ addu $t3, $t0, $t2 -/* 0920D0 800914D0 95640000 */ lhu $a0, ($t3) -/* 0920D4 800914D4 02202825 */ move $a1, $s1 -/* 0920D8 800914D8 0C025DBE */ jal decompress_filename_string -/* 0920DC 800914DC 24060003 */ li $a2, 3 -/* 0920E0 800914E0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0920E4 800914E4 240C000C */ li $t4, 12 -/* 0920E8 800914E8 AFAC0010 */ sw $t4, 0x10($sp) -/* 0920EC 800914EC 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0920F0 800914F0 240500FA */ li $a1, 250 -/* 0920F4 800914F4 02403025 */ move $a2, $s2 -/* 0920F8 800914F8 0C031110 */ jal draw_text -/* 0920FC 800914FC 02203825 */ move $a3, $s1 -/* 092100 80091500 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 -/* 092104 80091504 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) -/* 092108 80091508 8FAD0070 */ lw $t5, 0x70($sp) -/* 09210C 8009150C 3C09800E */ lui $t1, %hi(gTrackIdForPreview) # $t1, 0x800e -/* 092110 80091510 00187080 */ sll $t6, $t8, 2 -/* 092114 80091514 8D29F4C4 */ lw $t1, %lo(gTrackIdForPreview)($t1) -/* 092118 80091518 01AE7821 */ addu $t7, $t5, $t6 -/* 09211C 8009151C 8DF9003C */ lw $t9, 0x3c($t7) -/* 092120 80091520 00094040 */ sll $t0, $t1, 1 -/* 092124 80091524 03285021 */ addu $t2, $t9, $t0 -/* 092128 80091528 95440000 */ lhu $a0, ($t2) -/* 09212C 8009152C 240B00FF */ li $t3, 255 -/* 092130 80091530 240C00FF */ li $t4, 255 -/* 092134 80091534 AFAC0014 */ sw $t4, 0x14($sp) -/* 092138 80091538 AFAB0010 */ sw $t3, 0x10($sp) -/* 09213C 8009153C AFA00018 */ sw $zero, 0x18($sp) -/* 092140 80091540 24050016 */ li $a1, 22 -/* 092144 80091544 24060035 */ li $a2, 53 -/* 092148 80091548 0C020600 */ jal show_timestamp -/* 09214C 8009154C 24070080 */ li $a3, 128 -/* 092150 80091550 3C0D8012 */ lui $t5, %hi(gPlayerSelectVehicle) # $t5, 0x8012 -/* 092154 80091554 81AD69C0 */ lb $t5, %lo(gPlayerSelectVehicle)($t5) -/* 092158 80091558 8FB80070 */ lw $t8, 0x70($sp) -/* 09215C 8009155C 3C19800E */ lui $t9, %hi(gTrackIdForPreview) # $t9, 0x800e -/* 092160 80091560 000D7080 */ sll $t6, $t5, 2 -/* 092164 80091564 8F39F4C4 */ lw $t9, %lo(gTrackIdForPreview)($t9) -/* 092168 80091568 030E7821 */ addu $t7, $t8, $t6 -/* 09216C 8009156C 8DE90024 */ lw $t1, 0x24($t7) -/* 092170 80091570 00194040 */ sll $t0, $t9, 1 -/* 092174 80091574 01285021 */ addu $t2, $t1, $t0 -/* 092178 80091578 95440000 */ lhu $a0, ($t2) -/* 09217C 8009157C 240B00C0 */ li $t3, 192 -/* 092180 80091580 240C00FF */ li $t4, 255 -/* 092184 80091584 AFAC0014 */ sw $t4, 0x14($sp) -/* 092188 80091588 AFAB0010 */ sw $t3, 0x10($sp) -/* 09218C 8009158C AFA00018 */ sw $zero, 0x18($sp) -/* 092190 80091590 24050016 */ li $a1, 22 -/* 092194 80091594 24060021 */ li $a2, 33 -/* 092198 80091598 0C020600 */ jal show_timestamp -/* 09219C 8009159C 240700FF */ li $a3, 255 -/* 0921A0 800915A0 3C0D8012 */ lui $t5, %hi(D_801263E0) # $t5, 0x8012 -/* 0921A4 800915A4 8DAD63E0 */ lw $t5, %lo(D_801263E0)($t5) -/* 0921A8 800915A8 2401FFFF */ li $at, -1 -/* 0921AC 800915AC 11A10256 */ beq $t5, $at, .L80091F08 -/* 0921B0 800915B0 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e -/* 0921B4 800915B4 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) -/* 0921B8 800915B8 24010001 */ li $at, 1 -/* 0921BC 800915BC 14410062 */ bne $v0, $at, .L80091748 -/* 0921C0 800915C0 24040007 */ li $a0, 7 -/* 0921C4 800915C4 8FB80080 */ lw $t8, 0x80($sp) -/* 0921C8 800915C8 24050086 */ li $a1, 134 -/* 0921CC 800915CC 270E0089 */ addiu $t6, $t8, 0x89 -/* 0921D0 800915D0 AFAE0010 */ sw $t6, 0x10($sp) -/* 0921D4 800915D4 240700BA */ li $a3, 186 -/* 0921D8 800915D8 0C0313B7 */ jal set_current_dialogue_box_coords -/* 0921DC 800915DC 27060070 */ addiu $a2, $t8, 0x70 -/* 0921E0 800915E0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0921E4 800915E4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0921E8 800915E8 00002825 */ move $a1, $zero -/* 0921EC 800915EC 00003025 */ move $a2, $zero -/* 0921F0 800915F0 0C0316D6 */ jal render_dialogue_box -/* 0921F4 800915F4 24070007 */ li $a3, 7 -/* 0921F8 800915F8 3C0F8012 */ lui $t7, %hi(D_801263E0) # $t7, 0x8012 -/* 0921FC 800915FC 8DEF63E0 */ lw $t7, %lo(D_801263E0)($t7) -/* 092200 80091600 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092204 80091604 1DE00013 */ bgtz $t7, .L80091654 -/* 092208 80091608 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 09220C 8009160C 8FA70080 */ lw $a3, 0x80($sp) -/* 092210 80091610 8FCA0000 */ lw $t2, ($fp) -/* 092214 80091614 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092218 80091618 3C05800E */ lui $a1, %hi(gRaceSelectionVehicleTitleTexture) # $a1, 0x800e -/* 09221C 8009161C 241900FF */ li $t9, 255 -/* 092220 80091620 240900FF */ li $t1, 255 -/* 092224 80091624 240800FF */ li $t0, 255 -/* 092228 80091628 AFA80018 */ sw $t0, 0x18($sp) -/* 09222C 8009162C AFA90014 */ sw $t1, 0x14($sp) -/* 092230 80091630 AFB90010 */ sw $t9, 0x10($sp) -/* 092234 80091634 24A505B4 */ addiu $a1, %lo(gRaceSelectionVehicleTitleTexture) # addiu $a1, $a1, 0x5b4 -/* 092238 80091638 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 09223C 8009163C 24060088 */ li $a2, 136 -/* 092240 80091640 24E70072 */ addiu $a3, $a3, 0x72 -/* 092244 80091644 0C01E2AE */ jal render_textured_rectangle -/* 092248 80091648 AFAA001C */ sw $t2, 0x1c($sp) -/* 09224C 8009164C 1000003A */ b .L80091738 -/* 092250 80091650 00000000 */ nop -.L80091654: -/* 092254 80091654 8FA70080 */ lw $a3, 0x80($sp) -/* 092258 80091658 8FD80000 */ lw $t8, ($fp) -/* 09225C 8009165C 3C05800E */ lui $a1, %hi(gRaceSelectionTTTitleTexture) # $a1, 0x800e -/* 092260 80091660 240B00FF */ li $t3, 255 -/* 092264 80091664 240C00FF */ li $t4, 255 -/* 092268 80091668 240D00FF */ li $t5, 255 -/* 09226C 8009166C AFAD0018 */ sw $t5, 0x18($sp) -/* 092270 80091670 AFAC0014 */ sw $t4, 0x14($sp) -/* 092274 80091674 AFAB0010 */ sw $t3, 0x10($sp) -/* 092278 80091678 24A505C4 */ addiu $a1, %lo(gRaceSelectionTTTitleTexture) # addiu $a1, $a1, 0x5c4 -/* 09227C 8009167C 24060088 */ li $a2, 136 -/* 092280 80091680 0000A825 */ move $s5, $zero -/* 092284 80091684 24E70072 */ addiu $a3, $a3, 0x72 -/* 092288 80091688 0C01E2AE */ jal render_textured_rectangle -/* 09228C 8009168C AFB8001C */ sw $t8, 0x1c($sp) -/* 092290 80091690 8FB70080 */ lw $s7, 0x80($sp) -/* 092294 80091694 3C10800E */ lui $s0, %hi(D_800E0648) # $s0, 0x800e -/* 092298 80091698 26100648 */ addiu $s0, %lo(D_800E0648) # addiu $s0, $s0, 0x648 -/* 09229C 8009169C 26F70097 */ addiu $s7, $s7, 0x97 -.L800916A0: -/* 0922A0 800916A0 3C0E800E */ lui $t6, %hi(D_800E0414) # $t6, 0x800e -/* 0922A4 800916A4 8DCE0414 */ lw $t6, %lo(D_800E0414)($t6) -/* 0922A8 800916A8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0922AC 800916AC 16AE0011 */ bne $s5, $t6, .L800916F4 -/* 0922B0 800916B0 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0922B4 800916B4 8FC80000 */ lw $t0, ($fp) -/* 0922B8 800916B8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0922BC 800916BC 8E050004 */ lw $a1, 4($s0) -/* 0922C0 800916C0 240F00FF */ li $t7, 255 -/* 0922C4 800916C4 241900FF */ li $t9, 255 -/* 0922C8 800916C8 240900FF */ li $t1, 255 -/* 0922CC 800916CC AFA90018 */ sw $t1, 0x18($sp) -/* 0922D0 800916D0 AFB90014 */ sw $t9, 0x14($sp) -/* 0922D4 800916D4 AFAF0010 */ sw $t7, 0x10($sp) -/* 0922D8 800916D8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0922DC 800916DC 24060068 */ li $a2, 104 -/* 0922E0 800916E0 02E03825 */ move $a3, $s7 -/* 0922E4 800916E4 0C01E2AE */ jal render_textured_rectangle -/* 0922E8 800916E8 AFA8001C */ sw $t0, 0x1c($sp) -/* 0922EC 800916EC 1000000E */ b .L80091728 -/* 0922F0 800916F0 26B50001 */ addiu $s5, $s5, 1 -.L800916F4: -/* 0922F4 800916F4 8FCD0000 */ lw $t5, ($fp) -/* 0922F8 800916F8 8E050008 */ lw $a1, 8($s0) -/* 0922FC 800916FC 240A00FF */ li $t2, 255 -/* 092300 80091700 240B00FF */ li $t3, 255 -/* 092304 80091704 240C00FF */ li $t4, 255 -/* 092308 80091708 AFAC0018 */ sw $t4, 0x18($sp) -/* 09230C 8009170C AFAB0014 */ sw $t3, 0x14($sp) -/* 092310 80091710 AFAA0010 */ sw $t2, 0x10($sp) -/* 092314 80091714 24060068 */ li $a2, 104 -/* 092318 80091718 02E03825 */ move $a3, $s7 -/* 09231C 8009171C 0C01E2AE */ jal render_textured_rectangle -/* 092320 80091720 AFAD001C */ sw $t5, 0x1c($sp) -/* 092324 80091724 26B50001 */ addiu $s5, $s5, 1 -.L80091728: -/* 092328 80091728 24010002 */ li $at, 2 -/* 09232C 8009172C 2610000C */ addiu $s0, $s0, 0xc -/* 092330 80091730 16A1FFDB */ bne $s5, $at, .L800916A0 -/* 092334 80091734 26F70018 */ addiu $s7, $s7, 0x18 -.L80091738: -/* 092338 80091738 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e -/* 09233C 8009173C 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) -/* 092340 80091740 1000004B */ b .L80091870 -/* 092344 80091744 28410002 */ slti $at, $v0, 2 -.L80091748: -/* 092348 80091748 8FB80074 */ lw $t8, 0x74($sp) -/* 09234C 8009174C 244EFFFF */ addiu $t6, $v0, -1 -/* 092350 80091750 17000047 */ bnez $t8, .L80091870 -/* 092354 80091754 28410002 */ slti $at, $v0, 2 -/* 092358 80091758 01C20019 */ multu $t6, $v0 -/* 09235C 8009175C 3C19800E */ lui $t9, %hi(D_800E0688) # $t9, 0x800e -/* 092360 80091760 27390688 */ addiu $t9, %lo(D_800E0688) # addiu $t9, $t9, 0x688 -/* 092364 80091764 3C11800E */ lui $s1, %hi(D_800E0660) # $s1, 0x800e -/* 092368 80091768 3C128012 */ lui $s2, %hi(D_801269C4) # $s2, 0x8012 -/* 09236C 8009176C 0040B825 */ move $s7, $v0 -/* 092370 80091770 265269C4 */ addiu $s2, %lo(D_801269C4) # addiu $s2, $s2, 0x69c4 -/* 092374 80091774 26310660 */ addiu $s1, %lo(D_800E0660) # addiu $s1, $s1, 0x660 -/* 092378 80091778 0000A825 */ move $s5, $zero -/* 09237C 8009177C 00009812 */ mflo $s3 -/* 092380 80091780 00137840 */ sll $t7, $s3, 1 -/* 092384 80091784 18400039 */ blez $v0, .L8009186C -/* 092388 80091788 01F98021 */ addu $s0, $t7, $t9 -.L8009178C: -/* 09238C 8009178C 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e -/* 092390 80091790 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) -/* 092394 80091794 24010001 */ li $at, 1 -/* 092398 80091798 14410004 */ bne $v0, $at, .L800917AC -/* 09239C 8009179C 3C098012 */ lui $t1, %hi(D_801263E0) # $t1, 0x8012 -/* 0923A0 800917A0 8D2963E0 */ lw $t1, %lo(D_801263E0)($t1) -/* 0923A4 800917A4 00000000 */ nop -/* 0923A8 800917A8 12A90007 */ beq $s5, $t1, .L800917C8 -.L800917AC: -/* 0923AC 800917AC 28410002 */ slti $at, $v0, 2 -/* 0923B0 800917B0 14200016 */ bnez $at, .L8009180C -/* 0923B4 800917B4 02554021 */ addu $t0, $s2, $s5 -/* 0923B8 800917B8 810A0000 */ lb $t2, ($t0) -/* 0923BC 800917BC 00000000 */ nop -/* 0923C0 800917C0 15400012 */ bnez $t2, .L8009180C -/* 0923C4 800917C4 00000000 */ nop -.L800917C8: -/* 0923C8 800917C8 860B0002 */ lh $t3, 2($s0) -/* 0923CC 800917CC 8FAC0080 */ lw $t4, 0x80($sp) -/* 0923D0 800917D0 86020000 */ lh $v0, ($s0) -/* 0923D4 800917D4 016C1821 */ addu $v1, $t3, $t4 -/* 0923D8 800917D8 246D0017 */ addiu $t5, $v1, 0x17 -/* 0923DC 800917DC AFAD0010 */ sw $t5, 0x10($sp) -/* 0923E0 800917E0 2466FFFE */ addiu $a2, $v1, -2 -/* 0923E4 800917E4 24040007 */ li $a0, 7 -/* 0923E8 800917E8 2445FFFE */ addiu $a1, $v0, -2 -/* 0923EC 800917EC 0C0313B7 */ jal set_current_dialogue_box_coords -/* 0923F0 800917F0 24470032 */ addiu $a3, $v0, 0x32 -/* 0923F4 800917F4 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0923F8 800917F8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0923FC 800917FC 00002825 */ move $a1, $zero -/* 092400 80091800 00003025 */ move $a2, $zero -/* 092404 80091804 0C0316D6 */ jal render_dialogue_box -/* 092408 80091808 24070007 */ li $a3, 7 -.L8009180C: -/* 09240C 8009180C 86180002 */ lh $t8, 2($s0) -/* 092410 80091810 8FAE0080 */ lw $t6, 0x80($sp) -/* 092414 80091814 8FC80000 */ lw $t0, ($fp) -/* 092418 80091818 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 09241C 8009181C 8E250000 */ lw $a1, ($s1) -/* 092420 80091820 86060000 */ lh $a2, ($s0) -/* 092424 80091824 240F00FF */ li $t7, 255 -/* 092428 80091828 241900FF */ li $t9, 255 -/* 09242C 8009182C 240900FF */ li $t1, 255 -/* 092430 80091830 AFA90018 */ sw $t1, 0x18($sp) -/* 092434 80091834 AFB90014 */ sw $t9, 0x14($sp) -/* 092438 80091838 AFAF0010 */ sw $t7, 0x10($sp) -/* 09243C 8009183C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092440 80091840 030E3821 */ addu $a3, $t8, $t6 -/* 092444 80091844 0C01E2AE */ jal render_textured_rectangle -/* 092448 80091848 AFA8001C */ sw $t0, 0x1c($sp) -/* 09244C 8009184C 26B50001 */ addiu $s5, $s5, 1 -/* 092450 80091850 02B7082A */ slt $at, $s5, $s7 -/* 092454 80091854 26310004 */ addiu $s1, $s1, 4 -/* 092458 80091858 1420FFCC */ bnez $at, .L8009178C -/* 09245C 8009185C 26100004 */ addiu $s0, $s0, 4 -/* 092460 80091860 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e -/* 092464 80091864 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) -/* 092468 80091868 00000000 */ nop -.L8009186C: -/* 09246C 8009186C 28410002 */ slti $at, $v0, 2 -.L80091870: -/* 092470 80091870 10200005 */ beqz $at, .L80091888 -/* 092474 80091874 3C0A8012 */ lui $t2, %hi(D_801263E0) # $t2, 0x8012 -/* 092478 80091878 8D4A63E0 */ lw $t2, %lo(D_801263E0)($t2) -/* 09247C 8009187C 00000000 */ nop -/* 092480 80091880 1540006A */ bnez $t2, .L80091A2C -/* 092484 80091884 8FB00080 */ lw $s0, 0x80($sp) -.L80091888: -/* 092488 80091888 8FAB0074 */ lw $t3, 0x74($sp) -/* 09248C 8009188C 244CFFFF */ addiu $t4, $v0, -1 -/* 092490 80091890 15600066 */ bnez $t3, .L80091A2C -/* 092494 80091894 8FB00080 */ lw $s0, 0x80($sp) -/* 092498 80091898 01820019 */ multu $t4, $v0 -/* 09249C 8009189C 8FB70080 */ lw $s7, 0x80($sp) -/* 0924A0 800918A0 0000A825 */ move $s5, $zero -/* 0924A4 800918A4 24160003 */ li $s6, 3 -/* 0924A8 800918A8 26F7008B */ addiu $s7, $s7, 0x8b -/* 0924AC 800918AC 00009812 */ mflo $s3 -/* 0924B0 800918B0 00136843 */ sra $t5, $s3, 1 -/* 0924B4 800918B4 01A09825 */ move $s3, $t5 -/* 0924B8 800918B8 8FAF007C */ lw $t7, 0x7c($sp) -.L800918BC: -/* 0924BC 800918BC 24180001 */ li $t8, 1 -/* 0924C0 800918C0 02B87004 */ sllv $t6, $t8, $s5 -/* 0924C4 800918C4 01CFC824 */ and $t9, $t6, $t7 -/* 0924C8 800918C8 13200054 */ beqz $t9, .L80091A1C -/* 0924CC 800918CC 00000000 */ nop -/* 0924D0 800918D0 18400051 */ blez $v0, .L80091A18 -/* 0924D4 800918D4 0000A025 */ move $s4, $zero -/* 0924D8 800918D8 00154880 */ sll $t1, $s5, 2 -/* 0924DC 800918DC 01354823 */ subu $t1, $t1, $s5 -/* 0924E0 800918E0 3C0A800E */ lui $t2, %hi(gRaceSelectionImages) # $t2, 0x800e -/* 0924E4 800918E4 3C0C800E */ lui $t4, %hi(D_800E06B0) # $t4, 0x800e -/* 0924E8 800918E8 258C06B0 */ addiu $t4, %lo(D_800E06B0) # addiu $t4, $t4, 0x6b0 -/* 0924EC 800918EC 254A0624 */ addiu $t2, %lo(gRaceSelectionImages) # addiu $t2, $t2, 0x624 -/* 0924F0 800918F0 00094080 */ sll $t0, $t1, 2 -/* 0924F4 800918F4 3C118012 */ lui $s1, %hi(gPlayerSelectVehicle) # $s1, 0x8012 -/* 0924F8 800918F8 00135840 */ sll $t3, $s3, 1 -/* 0924FC 800918FC 016C8021 */ addu $s0, $t3, $t4 -/* 092500 80091900 263169C0 */ addiu $s1, %lo(gPlayerSelectVehicle) # addiu $s1, $s1, 0x69c0 -/* 092504 80091904 010A9021 */ addu $s2, $t0, $t2 -.L80091908: -/* 092508 80091908 822D0000 */ lb $t5, ($s1) -/* 09250C 8009190C 8FA90070 */ lw $t1, 0x70($sp) -/* 092510 80091910 16AD0011 */ bne $s5, $t5, .L80091958 -/* 092514 80091914 3C0A800E */ lui $t2, %hi(gTrackIdForPreview) # $t2, 0x800e -/* 092518 80091918 8FD90000 */ lw $t9, ($fp) -/* 09251C 8009191C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092520 80091920 8E450004 */ lw $a1, 4($s2) -/* 092524 80091924 86060000 */ lh $a2, ($s0) -/* 092528 80091928 241800FF */ li $t8, 255 -/* 09252C 8009192C 240E00FF */ li $t6, 255 -/* 092530 80091930 240F00FF */ li $t7, 255 -/* 092534 80091934 AFAF0018 */ sw $t7, 0x18($sp) -/* 092538 80091938 AFAE0014 */ sw $t6, 0x14($sp) -/* 09253C 8009193C AFB80010 */ sw $t8, 0x10($sp) -/* 092540 80091940 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092544 80091944 02E03825 */ move $a3, $s7 -/* 092548 80091948 0C01E2AE */ jal render_textured_rectangle -/* 09254C 8009194C AFB9001C */ sw $t9, 0x1c($sp) -/* 092550 80091950 1000002A */ b .L800919FC -/* 092554 80091954 00000000 */ nop -.L80091958: -/* 092558 80091958 8D4AF4C4 */ lw $t2, %lo(gTrackIdForPreview)($t2) -/* 09255C 8009195C 8D280004 */ lw $t0, 4($t1) -/* 092560 80091960 000A5880 */ sll $t3, $t2, 2 -/* 092564 80091964 010B6021 */ addu $t4, $t0, $t3 -/* 092568 80091968 8D8D0000 */ lw $t5, ($t4) -/* 09256C 8009196C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092570 80091970 31B80002 */ andi $t8, $t5, 2 -/* 092574 80091974 13000011 */ beqz $t8, .L800919BC -/* 092578 80091978 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 09257C 8009197C 8FC90000 */ lw $t1, ($fp) -/* 092580 80091980 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092584 80091984 8E450008 */ lw $a1, 8($s2) -/* 092588 80091988 86060000 */ lh $a2, ($s0) -/* 09258C 8009198C 240E00FF */ li $t6, 255 -/* 092590 80091990 240F00FF */ li $t7, 255 -/* 092594 80091994 241900FF */ li $t9, 255 -/* 092598 80091998 AFB90018 */ sw $t9, 0x18($sp) -/* 09259C 8009199C AFAF0014 */ sw $t7, 0x14($sp) -/* 0925A0 800919A0 AFAE0010 */ sw $t6, 0x10($sp) -/* 0925A4 800919A4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0925A8 800919A8 02E03825 */ move $a3, $s7 -/* 0925AC 800919AC 0C01E2AE */ jal render_textured_rectangle -/* 0925B0 800919B0 AFA9001C */ sw $t1, 0x1c($sp) -/* 0925B4 800919B4 10000011 */ b .L800919FC -/* 0925B8 800919B8 00000000 */ nop -.L800919BC: -/* 0925BC 800919BC 8FCC0000 */ lw $t4, ($fp) -/* 0925C0 800919C0 8E450008 */ lw $a1, 8($s2) -/* 0925C4 800919C4 86060000 */ lh $a2, ($s0) -/* 0925C8 800919C8 240A00FF */ li $t2, 255 -/* 0925CC 800919CC 240800FF */ li $t0, 255 -/* 0925D0 800919D0 240B00FF */ li $t3, 255 -/* 0925D4 800919D4 AFAB0018 */ sw $t3, 0x18($sp) -/* 0925D8 800919D8 AFA80014 */ sw $t0, 0x14($sp) -/* 0925DC 800919DC AFAA0010 */ sw $t2, 0x10($sp) -/* 0925E0 800919E0 02E03825 */ move $a3, $s7 -/* 0925E4 800919E4 05810003 */ bgez $t4, .L800919F4 -/* 0925E8 800919E8 000C6843 */ sra $t5, $t4, 1 -/* 0925EC 800919EC 25810001 */ addiu $at, $t4, 1 -/* 0925F0 800919F0 00016843 */ sra $t5, $at, 1 -.L800919F4: -/* 0925F4 800919F4 0C01E2AE */ jal render_textured_rectangle -/* 0925F8 800919F8 AFAD001C */ sw $t5, 0x1c($sp) -.L800919FC: -/* 0925FC 800919FC 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e -/* 092600 80091A00 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) -/* 092604 80091A04 26940001 */ addiu $s4, $s4, 1 -/* 092608 80091A08 0282082A */ slt $at, $s4, $v0 -/* 09260C 80091A0C 26310001 */ addiu $s1, $s1, 1 -/* 092610 80091A10 1420FFBD */ bnez $at, .L80091908 -/* 092614 80091A14 26100002 */ addiu $s0, $s0, 2 -.L80091A18: -/* 092618 80091A18 26F70018 */ addiu $s7, $s7, 0x18 -.L80091A1C: -/* 09261C 80091A1C 26B50001 */ addiu $s5, $s5, 1 -/* 092620 80091A20 16B6FFA6 */ bne $s5, $s6, .L800918BC -/* 092624 80091A24 8FAF007C */ lw $t7, 0x7c($sp) -/* 092628 80091A28 8FB00080 */ lw $s0, 0x80($sp) -.L80091A2C: -/* 09262C 80091A2C 3C038012 */ lui $v1, %hi(gPlayerSelectVehicle) # $v1, 0x8012 -/* 092630 80091A30 806369C0 */ lb $v1, %lo(gPlayerSelectVehicle)($v1) -/* 092634 80091A34 24010002 */ li $at, 2 -/* 092638 80091A38 2610008B */ addiu $s0, $s0, 0x8b -/* 09263C 80091A3C 24160003 */ li $s6, 3 -/* 092640 80091A40 14610002 */ bne $v1, $at, .L80091A4C -/* 092644 80091A44 0200B825 */ move $s7, $s0 -/* 092648 80091A48 26170002 */ addiu $s7, $s0, 2 -.L80091A4C: -/* 09264C 80091A4C 24010001 */ li $at, 1 -/* 092650 80091A50 14410035 */ bne $v0, $at, .L80091B28 -/* 092654 80091A54 3C188012 */ lui $t8, %hi(D_801263E0) # $t8, 0x8012 -/* 092658 80091A58 8F1863E0 */ lw $t8, %lo(D_801263E0)($t8) -/* 09265C 80091A5C 00000000 */ nop -/* 092660 80091A60 17000019 */ bnez $t8, .L80091AC8 -/* 092664 80091A64 00000000 */ nop -/* 092668 80091A68 00760019 */ multu $v1, $s6 -/* 09266C 80091A6C 3C11800E */ lui $s1, %hi(gRaceSelectionImages) # $s1, 0x800e -/* 092670 80091A70 26310624 */ addiu $s1, %lo(gRaceSelectionImages) # addiu $s1, $s1, 0x624 -/* 092674 80091A74 8FCB0000 */ lw $t3, ($fp) -/* 092678 80091A78 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 09267C 80091A7C 240900FF */ li $t1, 255 -/* 092680 80091A80 240A00FF */ li $t2, 255 -/* 092684 80091A84 240800FF */ li $t0, 255 -/* 092688 80091A88 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 09268C 80091A8C 24060095 */ li $a2, 149 -/* 092690 80091A90 02E03825 */ move $a3, $s7 -/* 092694 80091A94 00007012 */ mflo $t6 -/* 092698 80091A98 000E7880 */ sll $t7, $t6, 2 -/* 09269C 80091A9C 022FC821 */ addu $t9, $s1, $t7 -/* 0926A0 80091AA0 8F250000 */ lw $a1, ($t9) -/* 0926A4 80091AA4 AFA80018 */ sw $t0, 0x18($sp) -/* 0926A8 80091AA8 AFAA0014 */ sw $t2, 0x14($sp) -/* 0926AC 80091AAC AFA90010 */ sw $t1, 0x10($sp) -/* 0926B0 80091AB0 0C01E2AE */ jal render_textured_rectangle -/* 0926B4 80091AB4 AFAB001C */ sw $t3, 0x1c($sp) -/* 0926B8 80091AB8 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e -/* 0926BC 80091ABC 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) -/* 0926C0 80091AC0 10000019 */ b .L80091B28 -/* 0926C4 80091AC4 00000000 */ nop -.L80091AC8: -/* 0926C8 80091AC8 3C0C800E */ lui $t4, %hi(D_800E0414) # $t4, 0x800e -/* 0926CC 80091ACC 8D8C0414 */ lw $t4, %lo(D_800E0414)($t4) -/* 0926D0 80091AD0 3C05800E */ lui $a1, %hi(D_800E0648) # $a1, 0x800e -/* 0926D4 80091AD4 01960019 */ multu $t4, $s6 -/* 0926D8 80091AD8 8FC90000 */ lw $t1, ($fp) -/* 0926DC 80091ADC 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0926E0 80091AE0 240E00FF */ li $t6, 255 -/* 0926E4 80091AE4 240F00FF */ li $t7, 255 -/* 0926E8 80091AE8 241900FF */ li $t9, 255 -/* 0926EC 80091AEC AFB90018 */ sw $t9, 0x18($sp) -/* 0926F0 80091AF0 AFAF0014 */ sw $t7, 0x14($sp) -/* 0926F4 80091AF4 AFAE0010 */ sw $t6, 0x10($sp) -/* 0926F8 80091AF8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0926FC 80091AFC 24060095 */ li $a2, 149 -/* 092700 80091B00 02003825 */ move $a3, $s0 -/* 092704 80091B04 00006812 */ mflo $t5 -/* 092708 80091B08 000DC080 */ sll $t8, $t5, 2 -/* 09270C 80091B0C 00B82821 */ addu $a1, $a1, $t8 -/* 092710 80091B10 8CA50648 */ lw $a1, %lo(D_800E0648)($a1) -/* 092714 80091B14 0C01E2AE */ jal render_textured_rectangle -/* 092718 80091B18 AFA9001C */ sw $t1, 0x1c($sp) -/* 09271C 80091B1C 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e -/* 092720 80091B20 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) -/* 092724 80091B24 00000000 */ nop -.L80091B28: -/* 092728 80091B28 3C11800E */ lui $s1, %hi(gRaceSelectionImages) # $s1, 0x800e -/* 09272C 80091B2C 24010002 */ li $at, 2 -/* 092730 80091B30 14410031 */ bne $v0, $at, .L80091BF8 -/* 092734 80091B34 26310624 */ addiu $s1, %lo(gRaceSelectionImages) # addiu $s1, $s1, 0x624 -/* 092738 80091B38 8FAA0074 */ lw $t2, 0x74($sp) -/* 09273C 80091B3C 3C088012 */ lui $t0, %hi(gPlayerSelectVehicle) # $t0, 0x8012 -/* 092740 80091B40 1540002D */ bnez $t2, .L80091BF8 -/* 092744 80091B44 00000000 */ nop -/* 092748 80091B48 810869C0 */ lb $t0, %lo(gPlayerSelectVehicle)($t0) -/* 09274C 80091B4C 8FD90000 */ lw $t9, ($fp) -/* 092750 80091B50 01160019 */ multu $t0, $s6 -/* 092754 80091B54 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092758 80091B58 02E03825 */ move $a3, $s7 -/* 09275C 80091B5C 241800FF */ li $t8, 255 -/* 092760 80091B60 240E00FF */ li $t6, 255 -/* 092764 80091B64 240F00FF */ li $t7, 255 -/* 092768 80091B68 0200B825 */ move $s7, $s0 -/* 09276C 80091B6C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092770 80091B70 2406004F */ li $a2, 79 -/* 092774 80091B74 00005812 */ mflo $t3 -/* 092778 80091B78 000B6080 */ sll $t4, $t3, 2 -/* 09277C 80091B7C 022C6821 */ addu $t5, $s1, $t4 -/* 092780 80091B80 8DA50000 */ lw $a1, ($t5) -/* 092784 80091B84 AFAF0018 */ sw $t7, 0x18($sp) -/* 092788 80091B88 AFAE0014 */ sw $t6, 0x14($sp) -/* 09278C 80091B8C AFB80010 */ sw $t8, 0x10($sp) -/* 092790 80091B90 0C01E2AE */ jal render_textured_rectangle -/* 092794 80091B94 AFB9001C */ sw $t9, 0x1c($sp) -/* 092798 80091B98 3C028012 */ lui $v0, %hi(gPlayerSelectVehicle+1) # $v0, 0x8012 -/* 09279C 80091B9C 804269C1 */ lb $v0, %lo(gPlayerSelectVehicle+1)($v0) -/* 0927A0 80091BA0 24010002 */ li $at, 2 -/* 0927A4 80091BA4 14410002 */ bne $v0, $at, .L80091BB0 -/* 0927A8 80091BA8 00000000 */ nop -/* 0927AC 80091BAC 26170002 */ addiu $s7, $s0, 2 -.L80091BB0: -/* 0927B0 80091BB0 00560019 */ multu $v0, $s6 -/* 0927B4 80091BB4 8FD80000 */ lw $t8, ($fp) -/* 0927B8 80091BB8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0927BC 80091BBC 240B00FF */ li $t3, 255 -/* 0927C0 80091BC0 240C00FF */ li $t4, 255 -/* 0927C4 80091BC4 240D00FF */ li $t5, 255 -/* 0927C8 80091BC8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0927CC 80091BCC 240600B0 */ li $a2, 176 -/* 0927D0 80091BD0 02E03825 */ move $a3, $s7 -/* 0927D4 80091BD4 00004812 */ mflo $t1 -/* 0927D8 80091BD8 00095080 */ sll $t2, $t1, 2 -/* 0927DC 80091BDC 022A4021 */ addu $t0, $s1, $t2 -/* 0927E0 80091BE0 8D050000 */ lw $a1, ($t0) -/* 0927E4 80091BE4 AFAD0018 */ sw $t5, 0x18($sp) -/* 0927E8 80091BE8 AFAC0014 */ sw $t4, 0x14($sp) -/* 0927EC 80091BEC AFAB0010 */ sw $t3, 0x10($sp) -/* 0927F0 80091BF0 0C01E2AE */ jal render_textured_rectangle -/* 0927F4 80091BF4 AFB8001C */ sw $t8, 0x1c($sp) -.L80091BF8: -/* 0927F8 80091BF8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0927FC 80091BFC 0C01ECF4 */ jal func_8007B3D0 -/* 092800 80091C00 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092804 80091C04 3C0E800E */ lui $t6, %hi(gNumberOfActivePlayers) # $t6, 0x800e -/* 092808 80091C08 8DCEF4BC */ lw $t6, %lo(gNumberOfActivePlayers)($t6) -/* 09280C 80091C0C 8FAF0074 */ lw $t7, 0x74($sp) -/* 092810 80091C10 29C10003 */ slti $at, $t6, 3 -/* 092814 80091C14 10200022 */ beqz $at, .L80091CA0 -/* 092818 80091C18 8FAC0074 */ lw $t4, 0x74($sp) -/* 09281C 80091C1C 15E0001F */ bnez $t7, .L80091C9C -/* 092820 80091C20 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e -/* 092824 80091C24 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 -/* 092828 80091C28 3C01C250 */ li $at, 0xC2500000 # -52.000000 -/* 09282C 80091C2C 44814000 */ mtc1 $at, $f8 -/* 092830 80091C30 8C590000 */ lw $t9, ($v0) -/* 092834 80091C34 3C09800E */ lui $t1, %hi(gNumberOfActivePlayers) # $t1, 0x800e -/* 092838 80091C38 E72800F0 */ swc1 $f8, 0xf0($t9) -/* 09283C 80091C3C 8D29F4BC */ lw $t1, %lo(gNumberOfActivePlayers)($t1) -/* 092840 80091C40 24010001 */ li $at, 1 -/* 092844 80091C44 15210009 */ bne $t1, $at, .L80091C6C -/* 092848 80091C48 24040007 */ li $a0, 7 -/* 09284C 80091C4C 3C0141A8 */ li $at, 0x41A80000 # 21.000000 -/* 092850 80091C50 44815000 */ mtc1 $at, $f10 -/* 092854 80091C54 8C4A0000 */ lw $t2, ($v0) -/* 092858 80091C58 24040007 */ li $a0, 7 -/* 09285C 80091C5C 0C027298 */ jal func_8009CA60 -/* 092860 80091C60 E54A00EC */ swc1 $f10, 0xec($t2) -/* 092864 80091C64 1000000E */ b .L80091CA0 -/* 092868 80091C68 8FAC0074 */ lw $t4, 0x74($sp) -.L80091C6C: -/* 09286C 80091C6C 3C01C240 */ li $at, 0xC2400000 # -48.000000 -/* 092870 80091C70 44818000 */ mtc1 $at, $f16 -/* 092874 80091C74 8C480000 */ lw $t0, ($v0) -/* 092878 80091C78 0C027298 */ jal func_8009CA60 -/* 09287C 80091C7C E51000EC */ swc1 $f16, 0xec($t0) -/* 092880 80091C80 3C014240 */ li $at, 0x42400000 # 48.000000 -/* 092884 80091C84 3C0B800E */ lui $t3, %hi(gMenuImageStack) # $t3, 0x800e -/* 092888 80091C88 8D6BF75C */ lw $t3, %lo(gMenuImageStack)($t3) -/* 09288C 80091C8C 44819000 */ mtc1 $at, $f18 -/* 092890 80091C90 24040007 */ li $a0, 7 -/* 092894 80091C94 0C027298 */ jal func_8009CA60 -/* 092898 80091C98 E57200EC */ swc1 $f18, 0xec($t3) -.L80091C9C: -/* 09289C 80091C9C 8FAC0074 */ lw $t4, 0x74($sp) -.L80091CA0: -/* 0928A0 80091CA0 3C0D800E */ lui $t5, %hi(gMenuText) # $t5, 0x800e -/* 0928A4 80091CA4 11800098 */ beqz $t4, .L80091F08 -/* 0928A8 80091CA8 00000000 */ nop -/* 0928AC 80091CAC 8DADF4A0 */ lw $t5, %lo(gMenuText)($t5) -/* 0928B0 80091CB0 00002825 */ move $a1, $zero -/* 0928B4 80091CB4 8DA40220 */ lw $a0, 0x220($t5) -/* 0928B8 80091CB8 0C031368 */ jal func_800C4DA0 -/* 0928BC 80091CBC 00003025 */ move $a2, $zero -/* 0928C0 80091CC0 3C12800E */ lui $s2, %hi(gTwoPlayerRacerCountMenu) # $s2, 0x800e -/* 0928C4 80091CC4 265206E4 */ addiu $s2, %lo(gTwoPlayerRacerCountMenu) # addiu $s2, $s2, 0x6e4 -/* 0928C8 80091CC8 86430004 */ lh $v1, 4($s2) -/* 0928CC 80091CCC 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0928D0 80091CD0 2478FFF4 */ addiu $t8, $v1, -0xc -/* 0928D4 80091CD4 0302082A */ slt $at, $t8, $v0 -/* 0928D8 80091CD8 10200003 */ beqz $at, .L80091CE8 -/* 0928DC 80091CDC 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0928E0 80091CE0 10000002 */ b .L80091CEC -/* 0928E4 80091CE4 2454000C */ addiu $s4, $v0, 0xc -.L80091CE8: -/* 0928E8 80091CE8 0060A025 */ move $s4, $v1 -.L80091CEC: -/* 0928EC 80091CEC 3C0B8012 */ lui $t3, %hi(D_8012665C) # $t3, 0x8012 -/* 0928F0 80091CF0 8D6B665C */ lw $t3, %lo(D_8012665C)($t3) -/* 0928F4 80091CF4 864E0002 */ lh $t6, 2($s2) -/* 0928F8 80091CF8 86590006 */ lh $t9, 6($s2) -/* 0928FC 80091CFC 86490008 */ lh $t1, 8($s2) -/* 092900 80091D00 864A000A */ lh $t2, 0xa($s2) -/* 092904 80091D04 3C08B0E0 */ lui $t0, (0xB0E0C0FF >> 16) # lui $t0, 0xb0e0 -/* 092908 80091D08 3508C0FF */ ori $t0, (0xB0E0C0FF & 0xFFFF) # ori $t0, $t0, 0xc0ff -/* 09290C 80091D0C 00142843 */ sra $a1, $s4, 1 -/* 092910 80091D10 240F0078 */ li $t7, 120 -/* 092914 80091D14 00052823 */ negu $a1, $a1 -/* 092918 80091D18 AFA8001C */ sw $t0, 0x1c($sp) -/* 09291C 80091D1C 02803825 */ move $a3, $s4 -/* 092920 80091D20 AFAB0020 */ sw $t3, 0x20($sp) -/* 092924 80091D24 01EE3023 */ subu $a2, $t7, $t6 -/* 092928 80091D28 AFB90010 */ sw $t9, 0x10($sp) -/* 09292C 80091D2C AFA90014 */ sw $t1, 0x14($sp) -/* 092930 80091D30 0C020160 */ jal func_80080580 -/* 092934 80091D34 AFAA0018 */ sw $t2, 0x18($sp) -/* 092938 80091D38 0C02039B */ jal func_80080E6C -/* 09293C 80091D3C 00000000 */ nop -/* 092940 80091D40 0C0310BB */ jal set_text_font -/* 092944 80091D44 00002025 */ move $a0, $zero -/* 092948 80091D48 240C0080 */ li $t4, 128 -/* 09294C 80091D4C AFAC0010 */ sw $t4, 0x10($sp) -/* 092950 80091D50 00002025 */ move $a0, $zero -/* 092954 80091D54 00002825 */ move $a1, $zero -/* 092958 80091D58 00003025 */ move $a2, $zero -/* 09295C 80091D5C 0C0310E1 */ jal set_text_colour -/* 092960 80091D60 240700FF */ li $a3, 255 -/* 092964 80091D64 864F000E */ lh $t7, 0xe($s2) -/* 092968 80091D68 864E0002 */ lh $t6, 2($s2) -/* 09296C 80091D6C 3C0A800E */ lui $t2, %hi(gMenuText) # $t2, 0x800e -/* 092970 80091D70 8D4AF4A0 */ lw $t2, %lo(gMenuText)($t2) -/* 092974 80091D74 864D000C */ lh $t5, 0xc($s2) -/* 092978 80091D78 86580000 */ lh $t8, ($s2) -/* 09297C 80091D7C 8FA90080 */ lw $t1, 0x80($sp) -/* 092980 80091D80 01EEC821 */ addu $t9, $t7, $t6 -/* 092984 80091D84 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092988 80091D88 2408000C */ li $t0, 12 -/* 09298C 80091D8C 8D470220 */ lw $a3, 0x220($t2) -/* 092990 80091D90 01B82821 */ addu $a1, $t5, $t8 -/* 092994 80091D94 03293021 */ addu $a2, $t9, $t1 -/* 092998 80091D98 24C60001 */ addiu $a2, $a2, 1 -/* 09299C 80091D9C 24A50001 */ addiu $a1, $a1, 1 -/* 0929A0 80091DA0 AFA80010 */ sw $t0, 0x10($sp) -/* 0929A4 80091DA4 0C031110 */ jal draw_text -/* 0929A8 80091DA8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 0929AC 80091DAC 240B00FF */ li $t3, 255 -/* 0929B0 80091DB0 AFAB0010 */ sw $t3, 0x10($sp) -/* 0929B4 80091DB4 240400FF */ li $a0, 255 -/* 0929B8 80091DB8 240500FF */ li $a1, 255 -/* 0929BC 80091DBC 240600FF */ li $a2, 255 -/* 0929C0 80091DC0 0C0310E1 */ jal set_text_colour -/* 0929C4 80091DC4 00003825 */ move $a3, $zero -/* 0929C8 80091DC8 8658000E */ lh $t8, 0xe($s2) -/* 0929CC 80091DCC 864F0002 */ lh $t7, 2($s2) -/* 0929D0 80091DD0 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e -/* 0929D4 80091DD4 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) -/* 0929D8 80091DD8 864C000C */ lh $t4, 0xc($s2) -/* 0929DC 80091DDC 864D0000 */ lh $t5, ($s2) -/* 0929E0 80091DE0 8FB90080 */ lw $t9, 0x80($sp) -/* 0929E4 80091DE4 030F7021 */ addu $t6, $t8, $t7 -/* 0929E8 80091DE8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 0929EC 80091DEC 240A000C */ li $t2, 12 -/* 0929F0 80091DF0 8D270220 */ lw $a3, 0x220($t1) -/* 0929F4 80091DF4 018D2821 */ addu $a1, $t4, $t5 -/* 0929F8 80091DF8 01D93021 */ addu $a2, $t6, $t9 -/* 0929FC 80091DFC 24C6FFFF */ addiu $a2, $a2, -1 -/* 092A00 80091E00 24A5FFFF */ addiu $a1, $a1, -1 -/* 092A04 80091E04 AFAA0010 */ sw $t2, 0x10($sp) -/* 092A08 80091E08 0C031110 */ jal draw_text -/* 092A0C 80091E0C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092A10 80091E10 0C01A142 */ jal func_80068508 -/* 092A14 80091E14 24040001 */ li $a0, 1 -/* 092A18 80091E18 0C01EFC7 */ jal func_8007BF1C -/* 092A1C 80091E1C 00002025 */ move $a0, $zero -/* 092A20 80091E20 3C15800E */ lui $s5, %hi(gMultiplayerSelectedNumberOfRacers) # $s5, 0x800e -/* 092A24 80091E24 3C11800E */ lui $s1, %hi(sMenuGuiColourB) # $s1, 0x800e -/* 092A28 80091E28 3C10800E */ lui $s0, %hi(sMenuGuiColourG) # $s0, 0x800e -/* 092A2C 80091E2C 2610F4A8 */ addiu $s0, %lo(sMenuGuiColourG) # addiu $s0, $s0, -0xb58 -/* 092A30 80091E30 2631F4AC */ addiu $s1, %lo(sMenuGuiColourB) # addiu $s1, $s1, -0xb54 -/* 092A34 80091E34 26B50410 */ addiu $s5, %lo(gMultiplayerSelectedNumberOfRacers) # addiu $s5, $s5, 0x410 -/* 092A38 80091E38 0000A025 */ move $s4, $zero -/* 092A3C 80091E3C 241300FF */ li $s3, 255 -.L80091E40: -/* 092A40 80091E40 8EA80000 */ lw $t0, ($s5) -/* 092A44 80091E44 3C0B8012 */ lui $t3, %hi(D_801263E0) # $t3, 0x8012 -/* 092A48 80091E48 1688000D */ bne $s4, $t0, .L80091E80 -/* 092A4C 80091E4C 00141040 */ sll $v0, $s4, 1 -/* 092A50 80091E50 8D6B63E0 */ lw $t3, %lo(D_801263E0)($t3) -/* 092A54 80091E54 8FAC0084 */ lw $t4, 0x84($sp) -/* 092A58 80091E58 29610003 */ slti $at, $t3, 3 -/* 092A5C 80091E5C 10200005 */ beqz $at, .L80091E74 -/* 092A60 80091E60 240D00FF */ li $t5, 255 -/* 092A64 80091E64 01AC1023 */ subu $v0, $t5, $t4 -/* 092A68 80091E68 A2020000 */ sb $v0, ($s0) -/* 092A6C 80091E6C 10000003 */ b .L80091E7C -/* 092A70 80091E70 A2220000 */ sb $v0, ($s1) -.L80091E74: -/* 092A74 80091E74 A2000000 */ sb $zero, ($s0) -/* 092A78 80091E78 A2200000 */ sb $zero, ($s1) -.L80091E7C: -/* 092A7C 80091E7C 00141040 */ sll $v0, $s4, 1 -.L80091E80: -/* 092A80 80091E80 0002C040 */ sll $t8, $v0, 1 -/* 092A84 80091E84 02581821 */ addu $v1, $s2, $t8 -/* 092A88 80091E88 846F0010 */ lh $t7, 0x10($v1) -/* 092A8C 80091E8C 864E0000 */ lh $t6, ($s2) -/* 092A90 80091E90 3C05800E */ lui $a1, %hi(gMenuImageStack) # $a1, 0x800e -/* 092A94 80091E94 01EEC821 */ addu $t9, $t7, $t6 -/* 092A98 80091E98 2729FF60 */ addiu $t1, $t9, -0xa0 -/* 092A9C 80091E9C 44892000 */ mtc1 $t1, $f4 -/* 092AA0 80091EA0 24A5F75C */ addiu $a1, %lo(gMenuImageStack) # addiu $a1, $a1, -0x8a4 -/* 092AA4 80091EA4 468021A0 */ cvt.s.w $f6, $f4 -/* 092AA8 80091EA8 8CAA0000 */ lw $t2, ($a1) -/* 092AAC 80091EAC 244E0002 */ addiu $t6, $v0, 2 -/* 092AB0 80091EB0 E546000C */ swc1 $f6, 0xc($t2) -/* 092AB4 80091EB4 84680012 */ lh $t0, 0x12($v1) -/* 092AB8 80091EB8 864D0002 */ lh $t5, 2($s2) -/* 092ABC 80091EBC 00085823 */ negu $t3, $t0 -/* 092AC0 80091EC0 016D6023 */ subu $t4, $t3, $t5 -/* 092AC4 80091EC4 25980078 */ addiu $t8, $t4, 0x78 -/* 092AC8 80091EC8 44984000 */ mtc1 $t8, $f8 -/* 092ACC 80091ECC 8CAF0000 */ lw $t7, ($a1) -/* 092AD0 80091ED0 468042A0 */ cvt.s.w $f10, $f8 -/* 092AD4 80091ED4 00002025 */ move $a0, $zero -/* 092AD8 80091ED8 E5EA0010 */ swc1 $f10, 0x10($t7) -/* 092ADC 80091EDC 8CB90000 */ lw $t9, ($a1) -/* 092AE0 80091EE0 0C027298 */ jal func_8009CA60 -/* 092AE4 80091EE4 A72E0018 */ sh $t6, 0x18($t9) -/* 092AE8 80091EE8 26940001 */ addiu $s4, $s4, 1 -/* 092AEC 80091EEC A2130000 */ sb $s3, ($s0) -/* 092AF0 80091EF0 1696FFD3 */ bne $s4, $s6, .L80091E40 -/* 092AF4 80091EF4 A2330000 */ sb $s3, ($s1) -/* 092AF8 80091EF8 0C01EFC7 */ jal func_8007BF1C -/* 092AFC 80091EFC 24040001 */ li $a0, 1 -/* 092B00 80091F00 0C01A142 */ jal func_80068508 -/* 092B04 80091F04 00002025 */ move $a0, $zero -.L80091F08: -/* 092B08 80091F08 3C098012 */ lui $t1, %hi(D_801269C8) # $t1, 0x8012 -/* 092B0C 80091F0C 8D2969C8 */ lw $t1, %lo(D_801269C8)($t1) -/* 092B10 80091F10 24160003 */ li $s6, 3 -/* 092B14 80091F14 29210004 */ slti $at, $t1, 4 -/* 092B18 80091F18 1020003D */ beqz $at, .L80092010 -/* 092B1C 80091F1C 00000000 */ nop -/* 092B20 80091F20 0C01EFC7 */ jal func_8007BF1C -/* 092B24 80091F24 00002025 */ move $a0, $zero -/* 092B28 80091F28 3C0A800E */ lui $t2, %hi(gIsInAdventureTwo) # $t2, 0x800e -/* 092B2C 80091F2C 8D4AF494 */ lw $t2, %lo(gIsInAdventureTwo)($t2) -/* 092B30 80091F30 2415000B */ li $s5, 11 -/* 092B34 80091F34 11400002 */ beqz $t2, .L80091F40 -/* 092B38 80091F38 3C014228 */ li $at, 0x42280000 # 42.000000 -/* 092B3C 80091F3C 2415000C */ li $s5, 12 -.L80091F40: -/* 092B40 80091F40 3C08800E */ lui $t0, %hi(gMenuImageStack) # $t0, 0x800e -/* 092B44 80091F44 8D08F75C */ lw $t0, %lo(gMenuImageStack)($t0) -/* 092B48 80091F48 44818000 */ mtc1 $at, $f16 -/* 092B4C 80091F4C 00158140 */ sll $s0, $s5, 5 -/* 092B50 80091F50 01105821 */ addu $t3, $t0, $s0 -/* 092B54 80091F54 E5700010 */ swc1 $f16, 0x10($t3) -/* 092B58 80091F58 8FAD0070 */ lw $t5, 0x70($sp) -/* 092B5C 80091F5C 3C18800E */ lui $t8, %hi(gTrackIdForPreview) # $t8, 0x800e -/* 092B60 80091F60 8F18F4C4 */ lw $t8, %lo(gTrackIdForPreview)($t8) -/* 092B64 80091F64 8DAC0004 */ lw $t4, 4($t5) -/* 092B68 80091F68 00187880 */ sll $t7, $t8, 2 -/* 092B6C 80091F6C 018F7021 */ addu $t6, $t4, $t7 -/* 092B70 80091F70 8DD90000 */ lw $t9, ($t6) -/* 092B74 80091F74 00000000 */ nop -/* 092B78 80091F78 33290002 */ andi $t1, $t9, 2 -/* 092B7C 80091F7C 15200004 */ bnez $t1, .L80091F90 -/* 092B80 80091F80 00000000 */ nop -/* 092B84 80091F84 0C027B18 */ jal is_adventure_two_unlocked -/* 092B88 80091F88 00000000 */ nop -/* 092B8C 80091F8C 10400008 */ beqz $v0, .L80091FB0 -.L80091F90: -/* 092B90 80091F90 3C0A800E */ lui $t2, %hi(gMenuImageStack) # $t2, 0x800e -/* 092B94 80091F94 8D4AF75C */ lw $t2, %lo(gMenuImageStack)($t2) -/* 092B98 80091F98 3C01C300 */ li $at, 0xC3000000 # -128.000000 -/* 092B9C 80091F9C 44819000 */ mtc1 $at, $f18 -/* 092BA0 80091FA0 01504021 */ addu $t0, $t2, $s0 -/* 092BA4 80091FA4 02A02025 */ move $a0, $s5 -/* 092BA8 80091FA8 0C027298 */ jal func_8009CA60 -/* 092BAC 80091FAC E512000C */ swc1 $f18, 0xc($t0) -.L80091FB0: -/* 092BB0 80091FB0 8FAB0070 */ lw $t3, 0x70($sp) -/* 092BB4 80091FB4 3C18800E */ lui $t8, %hi(gTrackIdForPreview) # $t8, 0x800e -/* 092BB8 80091FB8 8F18F4C4 */ lw $t8, %lo(gTrackIdForPreview)($t8) -/* 092BBC 80091FBC 8D6D0004 */ lw $t5, 4($t3) -/* 092BC0 80091FC0 00186080 */ sll $t4, $t8, 2 -/* 092BC4 80091FC4 01AC7821 */ addu $t7, $t5, $t4 -/* 092BC8 80091FC8 8DEE0000 */ lw $t6, ($t7) -/* 092BCC 80091FCC 00000000 */ nop -/* 092BD0 80091FD0 31D90004 */ andi $t9, $t6, 4 -/* 092BD4 80091FD4 17200004 */ bnez $t9, .L80091FE8 -/* 092BD8 80091FD8 00000000 */ nop -/* 092BDC 80091FDC 0C027B18 */ jal is_adventure_two_unlocked -/* 092BE0 80091FE0 00000000 */ nop -/* 092BE4 80091FE4 10400008 */ beqz $v0, .L80092008 -.L80091FE8: -/* 092BE8 80091FE8 3C09800E */ lui $t1, %hi(gMenuImageStack) # $t1, 0x800e -/* 092BEC 80091FEC 8D29F75C */ lw $t1, %lo(gMenuImageStack)($t1) -/* 092BF0 80091FF0 3C0142F0 */ li $at, 0x42F00000 # 120.000000 -/* 092BF4 80091FF4 44812000 */ mtc1 $at, $f4 -/* 092BF8 80091FF8 01305021 */ addu $t2, $t1, $s0 -/* 092BFC 80091FFC 02A02025 */ move $a0, $s5 -/* 092C00 80092000 0C027298 */ jal func_8009CA60 -/* 092C04 80092004 E544000C */ swc1 $f4, 0xc($t2) -.L80092008: -/* 092C08 80092008 0C01EFC7 */ jal func_8007BF1C -/* 092C0C 8009200C 24040001 */ li $a0, 1 -.L80092010: -/* 092C10 80092010 3C08800E */ lui $t0, %hi(gNumberOfActivePlayers) # $t0, 0x800e -/* 092C14 80092014 8D08F4BC */ lw $t0, %lo(gNumberOfActivePlayers)($t0) -/* 092C18 80092018 24010001 */ li $at, 1 -/* 092C1C 8009201C 1501001C */ bne $t0, $at, .L80092090 -/* 092C20 80092020 3C0B8012 */ lui $t3, %hi(D_801263E0) # $t3, 0x8012 -/* 092C24 80092024 8D6B63E0 */ lw $t3, %lo(D_801263E0)($t3) -/* 092C28 80092028 3C04800E */ lui $a0, %hi(gTrackIdForPreview) # $a0, 0x800e -/* 092C2C 8009202C 05600018 */ bltz $t3, .L80092090 -/* 092C30 80092030 00000000 */ nop -/* 092C34 80092034 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) -/* 092C38 80092038 0C024AF8 */ jal func_80092BE0 -/* 092C3C 8009203C 00000000 */ nop -/* 092C40 80092040 04400013 */ bltz $v0, .L80092090 -/* 092C44 80092044 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092C48 80092048 8FA70080 */ lw $a3, 0x80($sp) -/* 092C4C 8009204C 8FCF0000 */ lw $t7, ($fp) -/* 092C50 80092050 3C05800E */ lui $a1, %hi(gRaceSelectionTTTexture) # $a1, 0x800e -/* 092C54 80092054 241800FF */ li $t8, 255 -/* 092C58 80092058 240D00FF */ li $t5, 255 -/* 092C5C 8009205C 240C00FF */ li $t4, 255 -/* 092C60 80092060 AFAC0018 */ sw $t4, 0x18($sp) -/* 092C64 80092064 AFAD0014 */ sw $t5, 0x14($sp) -/* 092C68 80092068 AFB80010 */ sw $t8, 0x10($sp) -/* 092C6C 8009206C 24A50614 */ addiu $a1, %lo(gRaceSelectionTTTexture) # addiu $a1, $a1, 0x614 -/* 092C70 80092070 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092C74 80092074 240600CC */ li $a2, 204 -/* 092C78 80092078 24E7007A */ addiu $a3, $a3, 0x7a -/* 092C7C 8009207C 0C01E2AE */ jal render_textured_rectangle -/* 092C80 80092080 AFAF001C */ sw $t7, 0x1c($sp) -/* 092C84 80092084 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092C88 80092088 0C01ECF4 */ jal func_8007B3D0 -/* 092C8C 8009208C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -.L80092090: -/* 092C90 80092090 3C0E8012 */ lui $t6, %hi(D_801269C8) # $t6, 0x8012 -/* 092C94 80092094 8DCE69C8 */ lw $t6, %lo(D_801269C8)($t6) -/* 092C98 80092098 24010005 */ li $at, 5 -/* 092C9C 8009209C 11C1002C */ beq $t6, $at, .L80092150 -/* 092CA0 800920A0 3C028012 */ lui $v0, %hi(D_801263E0) # $v0, 0x8012 -/* 092CA4 800920A4 8C4263E0 */ lw $v0, %lo(D_801263E0)($v0) -/* 092CA8 800920A8 24010002 */ li $at, 2 -/* 092CAC 800920AC 14410005 */ bne $v0, $at, .L800920C4 -/* 092CB0 800920B0 00000000 */ nop -/* 092CB4 800920B4 8FB90074 */ lw $t9, 0x74($sp) -/* 092CB8 800920B8 00000000 */ nop -/* 092CBC 800920BC 13200009 */ beqz $t9, .L800920E4 -/* 092CC0 800920C0 00000000 */ nop -.L800920C4: -/* 092CC4 800920C4 16C20005 */ bne $s6, $v0, .L800920DC -/* 092CC8 800920C8 24010004 */ li $at, 4 -/* 092CCC 800920CC 8FA90074 */ lw $t1, 0x74($sp) -/* 092CD0 800920D0 00000000 */ nop -/* 092CD4 800920D4 15200003 */ bnez $t1, .L800920E4 -/* 092CD8 800920D8 00000000 */ nop -.L800920DC: -/* 092CDC 800920DC 1441001D */ bne $v0, $at, .L80092154 -/* 092CE0 800920E0 240C00FF */ li $t4, 255 -.L800920E4: -/* 092CE4 800920E4 0C0310BB */ jal set_text_font -/* 092CE8 800920E8 24040002 */ li $a0, 2 -/* 092CEC 800920EC 8FCA0000 */ lw $t2, ($fp) -/* 092CF0 800920F0 240400FF */ li $a0, 255 -/* 092CF4 800920F4 240500FF */ li $a1, 255 -/* 092CF8 800920F8 240600FF */ li $a2, 255 -/* 092CFC 800920FC 00003825 */ move $a3, $zero -/* 092D00 80092100 0C0310E1 */ jal set_text_colour -/* 092D04 80092104 AFAA0010 */ sw $t2, 0x10($sp) -/* 092D08 80092108 3C088012 */ lui $t0, %hi(D_801269C8) # $t0, 0x8012 -/* 092D0C 8009210C 8D0869C8 */ lw $t0, %lo(D_801269C8)($t0) -/* 092D10 80092110 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 -/* 092D14 80092114 29010004 */ slti $at, $t0, 4 -/* 092D18 80092118 14200005 */ bnez $at, .L80092130 -/* 092D1C 8009211C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 -/* 092D20 80092120 8FAB0080 */ lw $t3, 0x80($sp) -/* 092D24 80092124 00000000 */ nop -/* 092D28 80092128 25780018 */ addiu $t8, $t3, 0x18 -/* 092D2C 8009212C AFB80080 */ sw $t8, 0x80($sp) -.L80092130: -/* 092D30 80092130 8FA60080 */ lw $a2, 0x80($sp) -/* 092D34 80092134 3C07800F */ lui $a3, %hi(D_800E823C) # $a3, 0x800f -/* 092D38 80092138 240D000C */ li $t5, 12 -/* 092D3C 8009213C AFAD0010 */ sw $t5, 0x10($sp) -/* 092D40 80092140 24E7823C */ addiu $a3, %lo(D_800E823C) # addiu $a3, $a3, -0x7dc4 -/* 092D44 80092144 240500A0 */ li $a1, 160 -/* 092D48 80092148 0C031110 */ jal draw_text -/* 092D4C 8009214C 24C600AC */ addiu $a2, $a2, 0xac -.L80092150: -/* 092D50 80092150 240C00FF */ li $t4, 255 -.L80092154: -/* 092D54 80092154 AFCC0000 */ sw $t4, ($fp) -.L80092158: -/* 092D58 80092158 8FBF0054 */ lw $ra, 0x54($sp) -/* 092D5C 8009215C 8FB00030 */ lw $s0, 0x30($sp) -/* 092D60 80092160 8FB10034 */ lw $s1, 0x34($sp) -/* 092D64 80092164 8FB20038 */ lw $s2, 0x38($sp) -/* 092D68 80092168 8FB3003C */ lw $s3, 0x3c($sp) -/* 092D6C 8009216C 8FB40040 */ lw $s4, 0x40($sp) -/* 092D70 80092170 8FB50044 */ lw $s5, 0x44($sp) -/* 092D74 80092174 8FB60048 */ lw $s6, 0x48($sp) -/* 092D78 80092178 8FB7004C */ lw $s7, 0x4c($sp) -/* 092D7C 8009217C 8FBE0050 */ lw $fp, 0x50($sp) -/* 092D80 80092180 03E00008 */ jr $ra -/* 092D84 80092184 27BD0098 */ addiu $sp, $sp, 0x98 - +.late_rodata +glabel D_800E84F0 +.float 1.2 + +.text +glabel render_track_select_setup_ui +/* 091B30 80090F30 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 091B34 80090F34 AFBF0054 */ sw $ra, 0x54($sp) +/* 091B38 80090F38 AFBE0050 */ sw $fp, 0x50($sp) +/* 091B3C 80090F3C AFB7004C */ sw $s7, 0x4c($sp) +/* 091B40 80090F40 AFB60048 */ sw $s6, 0x48($sp) +/* 091B44 80090F44 AFB50044 */ sw $s5, 0x44($sp) +/* 091B48 80090F48 AFB40040 */ sw $s4, 0x40($sp) +/* 091B4C 80090F4C AFB3003C */ sw $s3, 0x3c($sp) +/* 091B50 80090F50 AFB20038 */ sw $s2, 0x38($sp) +/* 091B54 80090F54 AFB10034 */ sw $s1, 0x34($sp) +/* 091B58 80090F58 AFB00030 */ sw $s0, 0x30($sp) +/* 091B5C 80090F5C AFA40098 */ sw $a0, 0x98($sp) +/* 091B60 80090F60 AFA00080 */ sw $zero, 0x80($sp) +/* 091B64 80090F64 AFA00078 */ sw $zero, 0x78($sp) +/* 091B68 80090F68 0C01BAA4 */ jal get_settings +/* 091B6C 80090F6C AFA00074 */ sw $zero, 0x74($sp) +/* 091B70 80090F70 3C108000 */ lui $s0, %hi(osTvType) # $s0, 0x8000 +/* 091B74 80090F74 26100300 */ addiu $s0, %lo(osTvType) # addiu $s0, $s0, 0x300 +/* 091B78 80090F78 8E0E0000 */ lw $t6, ($s0) +/* 091B7C 80090F7C AFA20070 */ sw $v0, 0x70($sp) +/* 091B80 80090F80 15C00003 */ bnez $t6, .L80090F90 +/* 091B84 80090F84 3C18800E */ lui $t8, %hi(gNumberOfActivePlayers) # $t8, 0x800e +/* 091B88 80090F88 240F000C */ li $t7, 12 +/* 091B8C 80090F8C AFAF0080 */ sw $t7, 0x80($sp) +.L80090F90: +/* 091B90 80090F90 8F18F4BC */ lw $t8, %lo(gNumberOfActivePlayers)($t8) +/* 091B94 80090F94 24010002 */ li $at, 2 +/* 091B98 80090F98 1701000D */ bne $t8, $at, .L80090FD0 +/* 091B9C 80090F9C 00002025 */ move $a0, $zero +/* 091BA0 80090FA0 3C198012 */ lui $t9, %hi(D_801269C8) # $t9, 0x8012 +/* 091BA4 80090FA4 8F3969C8 */ lw $t9, %lo(D_801269C8)($t9) +/* 091BA8 80090FA8 3C088012 */ lui $t0, %hi(D_801263E0) # $t0, 0x8012 +/* 091BAC 80090FAC 2B210004 */ slti $at, $t9, 4 +/* 091BB0 80090FB0 10200007 */ beqz $at, .L80090FD0 +/* 091BB4 80090FB4 00000000 */ nop +/* 091BB8 80090FB8 8D0863E0 */ lw $t0, %lo(D_801263E0)($t0) +/* 091BBC 80090FBC 24090001 */ li $t1, 1 +/* 091BC0 80090FC0 29010002 */ slti $at, $t0, 2 +/* 091BC4 80090FC4 14200002 */ bnez $at, .L80090FD0 +/* 091BC8 80090FC8 00000000 */ nop +/* 091BCC 80090FCC AFA90074 */ sw $t1, 0x74($sp) +.L80090FD0: +/* 091BD0 80090FD0 0C019A25 */ jal func_80066894 +/* 091BD4 80090FD4 24050001 */ li $a1, 1 +/* 091BD8 80090FD8 0C026F57 */ jal func_8009BD5C +/* 091BDC 80090FDC 00000000 */ nop +/* 091BE0 80090FE0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 091BE4 80090FE4 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012 +/* 091BE8 80090FE8 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8 +/* 091BEC 80090FEC 0C019FCB */ jal func_80067F2C +/* 091BF0 80090FF0 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 091BF4 80090FF4 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e +/* 091BF8 80090FF8 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) +/* 091BFC 80090FFC 3C03800E */ lui $v1, %hi(gMenuImageStack) # $v1, 0x800e +/* 091C00 80091000 04410029 */ bgez $v0, .L800910A8 +/* 091C04 80091004 2463F75C */ addiu $v1, %lo(gMenuImageStack) # addiu $v1, $v1, -0x8a4 +/* 091C08 80091008 3C028012 */ lui $v0, %hi(D_801269F4) # $v0, 0x8012 +/* 091C0C 8009100C 8C4269F4 */ lw $v0, %lo(D_801269F4)($v0) +/* 091C10 80091010 24010004 */ li $at, 4 +/* 091C14 80091014 14410004 */ bne $v0, $at, .L80091028 +/* 091C18 80091018 24010005 */ li $at, 5 +/* 091C1C 8009101C 1000000A */ b .L80091048 +/* 091C20 80091020 24040006 */ li $a0, 6 +/* 091C24 80091024 24010005 */ li $at, 5 +.L80091028: +/* 091C28 80091028 14410005 */ bne $v0, $at, .L80091040 +/* 091C2C 8009102C 240B0004 */ li $t3, 4 +/* 091C30 80091030 240A0005 */ li $t2, 5 +/* 091C34 80091034 AFAA0084 */ sw $t2, 0x84($sp) +/* 091C38 80091038 10000003 */ b .L80091048 +/* 091C3C 8009103C 24040005 */ li $a0, 5 +.L80091040: +/* 091C40 80091040 AFAB0084 */ sw $t3, 0x84($sp) +/* 091C44 80091044 24040004 */ li $a0, 4 +.L80091048: +/* 091C48 80091048 8C6C0000 */ lw $t4, ($v1) +/* 091C4C 8009104C 44800000 */ mtc1 $zero, $f0 +/* 091C50 80091050 00041140 */ sll $v0, $a0, 5 +/* 091C54 80091054 01826821 */ addu $t5, $t4, $v0 +/* 091C58 80091058 E5A0000C */ swc1 $f0, 0xc($t5) +/* 091C5C 8009105C 8C6E0000 */ lw $t6, ($v1) +/* 091C60 80091060 3C01800F */ lui $at, %hi(D_800E84F0) # $at, 0x800f +/* 091C64 80091064 01C27821 */ addu $t7, $t6, $v0 +/* 091C68 80091068 E5E00010 */ swc1 $f0, 0x10($t7) +/* 091C6C 8009106C 8E180000 */ lw $t8, ($s0) +/* 091C70 80091070 00000000 */ nop +/* 091C74 80091074 17000004 */ bnez $t8, .L80091088 +/* 091C78 80091078 00000000 */ nop +/* 091C7C 8009107C C42484F0 */ lwc1 $f4, %lo(D_800E84F0)($at) +/* 091C80 80091080 3C01800E */ lui $at, %hi(D_800DF454) # $at, 0x800e +/* 091C84 80091084 E424F454 */ swc1 $f4, %lo(D_800DF454)($at) +.L80091088: +/* 091C88 80091088 0C027298 */ jal func_8009CA60 +/* 091C8C 8009108C 00000000 */ nop +/* 091C90 80091090 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 091C94 80091094 44813000 */ mtc1 $at, $f6 +/* 091C98 80091098 3C02800E */ lui $v0, %hi(gMenuDelay) # $v0, 0x800e +/* 091C9C 8009109C 3C01800E */ lui $at, %hi(D_800DF454) # $at, 0x800e +/* 091CA0 800910A0 8C42F47C */ lw $v0, %lo(gMenuDelay)($v0) +/* 091CA4 800910A4 E426F454 */ swc1 $f6, %lo(D_800DF454)($at) +.L800910A8: +/* 091CA8 800910A8 2841FFEA */ slti $at, $v0, -0x16 +/* 091CAC 800910AC 1420042A */ bnez $at, .L80092158 +/* 091CB0 800910B0 2841001F */ slti $at, $v0, 0x1f +/* 091CB4 800910B4 10200428 */ beqz $at, .L80092158 +/* 091CB8 800910B8 3C04800E */ lui $a0, %hi(gTrackIdForPreview) # $a0, 0x800e +/* 091CBC 800910BC 04410006 */ bgez $v0, .L800910D8 +/* 091CC0 800910C0 3C1E800E */ lui $fp, %hi(sMenuGuiOpacity) # $fp, 0x800e +/* 091CC4 800910C4 0002C900 */ sll $t9, $v0, 4 +/* 091CC8 800910C8 272800FF */ addiu $t0, $t9, 0xff +/* 091CCC 800910CC 27DEF764 */ addiu $fp, %lo(sMenuGuiOpacity) # addiu $fp, $fp, -0x89c +/* 091CD0 800910D0 10000005 */ b .L800910E8 +/* 091CD4 800910D4 AFC80000 */ sw $t0, ($fp) +.L800910D8: +/* 091CD8 800910D8 3C1E800E */ lui $fp, %hi(sMenuGuiOpacity) # $fp, 0x800e +/* 091CDC 800910DC 27DEF764 */ addiu $fp, %lo(sMenuGuiOpacity) # addiu $fp, $fp, -0x89c +/* 091CE0 800910E0 240900FF */ li $t1, 255 +/* 091CE4 800910E4 AFC90000 */ sw $t1, ($fp) +.L800910E8: +/* 091CE8 800910E8 8FCA0000 */ lw $t2, ($fp) +/* 091CEC 800910EC 00000000 */ nop +/* 091CF0 800910F0 05410002 */ bgez $t2, .L800910FC +/* 091CF4 800910F4 00000000 */ nop +/* 091CF8 800910F8 AFC00000 */ sw $zero, ($fp) +.L800910FC: +/* 091CFC 800910FC 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) +/* 091D00 80091100 0C01AC3E */ jal func_8006B0F8 +/* 091D04 80091104 00000000 */ nop +/* 091D08 80091108 3C04800E */ lui $a0, %hi(gTrackIdForPreview) # $a0, 0x800e +/* 091D0C 8009110C 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) +/* 091D10 80091110 0C01AF77 */ jal get_level_name +/* 091D14 80091114 AFA2007C */ sw $v0, 0x7c($sp) +/* 091D18 80091118 00408025 */ move $s0, $v0 +/* 091D1C 8009111C 0C0310BB */ jal set_text_font +/* 091D20 80091120 24040002 */ li $a0, 2 +/* 091D24 80091124 8FCB0000 */ lw $t3, ($fp) +/* 091D28 80091128 240400C0 */ li $a0, 192 +/* 091D2C 8009112C 240500C0 */ li $a1, 192 +/* 091D30 80091130 240600FF */ li $a2, 255 +/* 091D34 80091134 00003825 */ move $a3, $zero +/* 091D38 80091138 0C0310E1 */ jal set_text_colour +/* 091D3C 8009113C AFAB0010 */ sw $t3, 0x10($sp) +/* 091D40 80091140 00002025 */ move $a0, $zero +/* 091D44 80091144 00002825 */ move $a1, $zero +/* 091D48 80091148 00003025 */ move $a2, $zero +/* 091D4C 8009114C 0C0310F3 */ jal set_text_background_colour +/* 091D50 80091150 00003825 */ move $a3, $zero +/* 091D54 80091154 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 091D58 80091158 240C000C */ li $t4, 12 +/* 091D5C 8009115C AFAC0010 */ sw $t4, 0x10($sp) +/* 091D60 80091160 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 091D64 80091164 24058000 */ li $a1, -32768 +/* 091D68 80091168 2406002B */ li $a2, 43 +/* 091D6C 8009116C 0C031110 */ jal draw_text +/* 091D70 80091170 02003825 */ move $a3, $s0 +/* 091D74 80091174 3C068012 */ lui $a2, %hi(gOptionBlinkTimer) # $a2, 0x8012 +/* 091D78 80091178 8CC663BC */ lw $a2, %lo(gOptionBlinkTimer)($a2) +/* 091D7C 8009117C 24040007 */ li $a0, 7 +/* 091D80 80091180 000668C0 */ sll $t5, $a2, 3 +/* 091D84 80091184 29A10100 */ slti $at, $t5, 0x100 +/* 091D88 80091188 14200003 */ bnez $at, .L80091198 +/* 091D8C 8009118C 01A03025 */ move $a2, $t5 +/* 091D90 80091190 240E01FF */ li $t6, 511 +/* 091D94 80091194 01CD3023 */ subu $a2, $t6, $t5 +.L80091198: +/* 091D98 80091198 8FCF0000 */ lw $t7, ($fp) +/* 091D9C 8009119C 240500FF */ li $a1, 255 +/* 091DA0 800911A0 00003825 */ move $a3, $zero +/* 091DA4 800911A4 AFA60084 */ sw $a2, 0x84($sp) +/* 091DA8 800911A8 0C0313EF */ jal set_current_dialogue_background_colour +/* 091DAC 800911AC AFAF0010 */ sw $t7, 0x10($sp) +/* 091DB0 800911B0 3C028012 */ lui $v0, %hi(D_801263E0) # $v0, 0x8012 +/* 091DB4 800911B4 8C4263E0 */ lw $v0, %lo(D_801263E0)($v0) +/* 091DB8 800911B8 2401FFFF */ li $at, -1 +/* 091DBC 800911BC 1041000A */ beq $v0, $at, .L800911E8 +/* 091DC0 800911C0 24010002 */ li $at, 2 +/* 091DC4 800911C4 14410073 */ bne $v0, $at, .L80091394 +/* 091DC8 800911C8 3C188012 */ lui $t8, %hi(D_801269C8) # $t8, 0x8012 +/* 091DCC 800911CC 8F1869C8 */ lw $t8, %lo(D_801269C8)($t8) +/* 091DD0 800911D0 24010004 */ li $at, 4 +/* 091DD4 800911D4 1701006F */ bne $t8, $at, .L80091394 +/* 091DD8 800911D8 00000000 */ nop +/* 091DDC 800911DC 0C027B18 */ jal is_adventure_two_unlocked +/* 091DE0 800911E0 00000000 */ nop +/* 091DE4 800911E4 1040006B */ beqz $v0, .L80091394 +.L800911E8: +/* 091DE8 800911E8 3C19800E */ lui $t9, %hi(gMenuText) # $t9, 0x800e +/* 091DEC 800911EC 8F39F4A0 */ lw $t9, %lo(gMenuText)($t9) +/* 091DF0 800911F0 00002825 */ move $a1, $zero +/* 091DF4 800911F4 8F240248 */ lw $a0, 0x248($t9) +/* 091DF8 800911F8 0C031368 */ jal func_800C4DA0 +/* 091DFC 800911FC 00003025 */ move $a2, $zero +/* 091E00 80091200 3C08800E */ lui $t0, %hi(gMenuText) # $t0, 0x800e +/* 091E04 80091204 8D08F4A0 */ lw $t0, %lo(gMenuText)($t0) +/* 091E08 80091208 0040A025 */ move $s4, $v0 +/* 091E0C 8009120C 8D04024C */ lw $a0, 0x24c($t0) +/* 091E10 80091210 00002825 */ move $a1, $zero +/* 091E14 80091214 0C031368 */ jal func_800C4DA0 +/* 091E18 80091218 00003025 */ move $a2, $zero +/* 091E1C 8009121C 0282082A */ slt $at, $s4, $v0 +/* 091E20 80091220 10200002 */ beqz $at, .L8009122C +/* 091E24 80091224 3C10800E */ lui $s0, %hi(D_800E0700) # $s0, 0x800e +/* 091E28 80091228 0040A025 */ move $s4, $v0 +.L8009122C: +/* 091E2C 8009122C 26100700 */ addiu $s0, %lo(D_800E0700) # addiu $s0, $s0, 0x700 +/* 091E30 80091230 86020004 */ lh $v0, 4($s0) +/* 091E34 80091234 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 091E38 80091238 0282082A */ slt $at, $s4, $v0 +/* 091E3C 8009123C 10200003 */ beqz $at, .L8009124C +/* 091E40 80091240 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 091E44 80091244 10000002 */ b .L80091250 +/* 091E48 80091248 0040A025 */ move $s4, $v0 +.L8009124C: +/* 091E4C 8009124C 2694000C */ addiu $s4, $s4, 0xc +.L80091250: +/* 091E50 80091250 8FCE0000 */ lw $t6, ($fp) +/* 091E54 80091254 3C01B0E0 */ lui $at, (0xB0E0C000 >> 16) # lui $at, 0xb0e0 +/* 091E58 80091258 3C188012 */ lui $t8, %hi(D_8012665C) # $t8, 0x8012 +/* 091E5C 8009125C 8F18665C */ lw $t8, %lo(D_8012665C)($t8) +/* 091E60 80091260 86090002 */ lh $t1, 2($s0) +/* 091E64 80091264 860B0006 */ lh $t3, 6($s0) +/* 091E68 80091268 860C0008 */ lh $t4, 8($s0) +/* 091E6C 8009126C 860D000A */ lh $t5, 0xa($s0) +/* 091E70 80091270 3421C000 */ ori $at, (0xB0E0C000 & 0xFFFF) # ori $at, $at, 0xc000 +/* 091E74 80091274 00142843 */ sra $a1, $s4, 1 +/* 091E78 80091278 240A0078 */ li $t2, 120 +/* 091E7C 8009127C 01C17821 */ addu $t7, $t6, $at +/* 091E80 80091280 AFAF001C */ sw $t7, 0x1c($sp) +/* 091E84 80091284 00052823 */ negu $a1, $a1 +/* 091E88 80091288 02803825 */ move $a3, $s4 +/* 091E8C 8009128C AFB80020 */ sw $t8, 0x20($sp) +/* 091E90 80091290 01493023 */ subu $a2, $t2, $t1 +/* 091E94 80091294 AFAB0010 */ sw $t3, 0x10($sp) +/* 091E98 80091298 AFAC0014 */ sw $t4, 0x14($sp) +/* 091E9C 8009129C 0C020160 */ jal func_80080580 +/* 091EA0 800912A0 AFAD0018 */ sw $t5, 0x18($sp) +/* 091EA4 800912A4 0C02039B */ jal func_80080E6C +/* 091EA8 800912A8 00000000 */ nop +/* 091EAC 800912AC 0C0310BB */ jal set_text_font +/* 091EB0 800912B0 00002025 */ move $a0, $zero +/* 091EB4 800912B4 8619000E */ lh $t9, 0xe($s0) +/* 091EB8 800912B8 86080002 */ lh $t0, 2($s0) +/* 091EBC 800912BC 8FA90080 */ lw $t1, 0x80($sp) +/* 091EC0 800912C0 03285021 */ addu $t2, $t9, $t0 +/* 091EC4 800912C4 3C16800E */ lui $s6, %hi(D_800E0418) # $s6, 0x800e +/* 091EC8 800912C8 0149B821 */ addu $s7, $t2, $t1 +/* 091ECC 800912CC 26F70001 */ addiu $s7, $s7, 1 +/* 091ED0 800912D0 26D60418 */ addiu $s6, %lo(D_800E0418) # addiu $s6, $s6, 0x418 +/* 091ED4 800912D4 0000A025 */ move $s4, $zero +/* 091ED8 800912D8 00008825 */ move $s1, $zero +/* 091EDC 800912DC 241200A1 */ li $s2, 161 +.L800912E0: +/* 091EE0 800912E0 00009825 */ move $s3, $zero +/* 091EE4 800912E4 02E08025 */ move $s0, $s7 +.L800912E8: +/* 091EE8 800912E8 1660000B */ bnez $s3, .L80091318 +/* 091EEC 800912EC 240400FF */ li $a0, 255 +/* 091EF0 800912F0 8FCB0000 */ lw $t3, ($fp) +/* 091EF4 800912F4 00002025 */ move $a0, $zero +/* 091EF8 800912F8 000B6043 */ sra $t4, $t3, 1 +/* 091EFC 800912FC AFAC0010 */ sw $t4, 0x10($sp) +/* 091F00 80091300 00002825 */ move $a1, $zero +/* 091F04 80091304 00003025 */ move $a2, $zero +/* 091F08 80091308 0C0310E1 */ jal set_text_colour +/* 091F0C 8009130C 240700FF */ li $a3, 255 +/* 091F10 80091310 1000000C */ b .L80091344 +/* 091F14 80091314 00000000 */ nop +.L80091318: +/* 091F18 80091318 8ECD0000 */ lw $t5, ($s6) +/* 091F1C 8009131C 0000A825 */ move $s5, $zero +/* 091F20 80091320 168D0003 */ bne $s4, $t5, .L80091330 +/* 091F24 80091324 240500FF */ li $a1, 255 +/* 091F28 80091328 8FB50084 */ lw $s5, 0x84($sp) +/* 091F2C 8009132C 00000000 */ nop +.L80091330: +/* 091F30 80091330 8FCE0000 */ lw $t6, ($fp) +/* 091F34 80091334 240600FF */ li $a2, 255 +/* 091F38 80091338 02A03825 */ move $a3, $s5 +/* 091F3C 8009133C 0C0310E1 */ jal set_text_colour +/* 091F40 80091340 AFAE0010 */ sw $t6, 0x10($sp) +.L80091344: +/* 091F44 80091344 3C0F800E */ lui $t7, %hi(gMenuText) # $t7, 0x800e +/* 091F48 80091348 8DEFF4A0 */ lw $t7, %lo(gMenuText)($t7) +/* 091F4C 8009134C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 091F50 80091350 01F1C021 */ addu $t8, $t7, $s1 +/* 091F54 80091354 8F070248 */ lw $a3, 0x248($t8) +/* 091F58 80091358 2419000C */ li $t9, 12 +/* 091F5C 8009135C AFB90010 */ sw $t9, 0x10($sp) +/* 091F60 80091360 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 091F64 80091364 02532823 */ subu $a1, $s2, $s3 +/* 091F68 80091368 0C031110 */ jal draw_text +/* 091F6C 8009136C 02003025 */ move $a2, $s0 +/* 091F70 80091370 26730002 */ addiu $s3, $s3, 2 +/* 091F74 80091374 24010004 */ li $at, 4 +/* 091F78 80091378 1661FFDB */ bne $s3, $at, .L800912E8 +/* 091F7C 8009137C 2610FFFE */ addiu $s0, $s0, -2 +/* 091F80 80091380 26940001 */ addiu $s4, $s4, 1 +/* 091F84 80091384 24010002 */ li $at, 2 +/* 091F88 80091388 26310004 */ addiu $s1, $s1, 4 +/* 091F8C 8009138C 1681FFD4 */ bne $s4, $at, .L800912E0 +/* 091F90 80091390 26F70010 */ addiu $s7, $s7, 0x10 +.L80091394: +/* 091F94 80091394 3C088012 */ lui $t0, %hi(D_801269C8) # $t0, 0x8012 +/* 091F98 80091398 8D0869C8 */ lw $t0, %lo(D_801269C8)($t0) +/* 091F9C 8009139C 00000000 */ nop +/* 091FA0 800913A0 29010004 */ slti $at, $t0, 4 +/* 091FA4 800913A4 102002D8 */ beqz $at, .L80091F08 +/* 091FA8 800913A8 00000000 */ nop +/* 091FAC 800913AC 0C0310BB */ jal set_text_font +/* 091FB0 800913B0 00002025 */ move $a0, $zero +/* 091FB4 800913B4 8FCA0000 */ lw $t2, ($fp) +/* 091FB8 800913B8 240400FF */ li $a0, 255 +/* 091FBC 800913BC 24050040 */ li $a1, 64 +/* 091FC0 800913C0 24060040 */ li $a2, 64 +/* 091FC4 800913C4 24070060 */ li $a3, 96 +/* 091FC8 800913C8 0C0310E1 */ jal set_text_colour +/* 091FCC 800913CC AFAA0010 */ sw $t2, 0x10($sp) +/* 091FD0 800913D0 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e +/* 091FD4 800913D4 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) +/* 091FD8 800913D8 8FB00080 */ lw $s0, 0x80($sp) +/* 091FDC 800913DC 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 091FE0 800913E0 240B0008 */ li $t3, 8 +/* 091FE4 800913E4 8D270024 */ lw $a3, 0x24($t1) +/* 091FE8 800913E8 26100048 */ addiu $s0, $s0, 0x48 +/* 091FEC 800913EC 02003025 */ move $a2, $s0 +/* 091FF0 800913F0 AFAB0010 */ sw $t3, 0x10($sp) +/* 091FF4 800913F4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 091FF8 800913F8 0C031110 */ jal draw_text +/* 091FFC 800913FC 24050038 */ li $a1, 56 +/* 092000 80091400 3C0C800E */ lui $t4, %hi(gMenuText) # $t4, 0x800e +/* 092004 80091404 8D8CF4A0 */ lw $t4, %lo(gMenuText)($t4) +/* 092008 80091408 8FB20080 */ lw $s2, 0x80($sp) +/* 09200C 8009140C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092010 80091410 240D0008 */ li $t5, 8 +/* 092014 80091414 8D870028 */ lw $a3, 0x28($t4) +/* 092018 80091418 2652005C */ addiu $s2, $s2, 0x5c +/* 09201C 8009141C 02403025 */ move $a2, $s2 +/* 092020 80091420 AFAD0010 */ sw $t5, 0x10($sp) +/* 092024 80091424 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092028 80091428 0C031110 */ jal draw_text +/* 09202C 8009142C 24050038 */ li $a1, 56 +/* 092030 80091430 8FCE0000 */ lw $t6, ($fp) +/* 092034 80091434 240400FF */ li $a0, 255 +/* 092038 80091438 24050080 */ li $a1, 128 +/* 09203C 8009143C 240600FF */ li $a2, 255 +/* 092040 80091440 24070060 */ li $a3, 96 +/* 092044 80091444 0C0310E1 */ jal set_text_colour +/* 092048 80091448 AFAE0010 */ sw $t6, 0x10($sp) +/* 09204C 8009144C 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 +/* 092050 80091450 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) +/* 092054 80091454 8FAF0070 */ lw $t7, 0x70($sp) +/* 092058 80091458 3C09800E */ lui $t1, %hi(gTrackIdForPreview) # $t1, 0x800e +/* 09205C 8009145C 0018C880 */ sll $t9, $t8, 2 +/* 092060 80091460 8D29F4C4 */ lw $t1, %lo(gTrackIdForPreview)($t1) +/* 092064 80091464 01F94021 */ addu $t0, $t7, $t9 +/* 092068 80091468 8D0A0030 */ lw $t2, 0x30($t0) +/* 09206C 8009146C 00095840 */ sll $t3, $t1, 1 +/* 092070 80091470 014B6021 */ addu $t4, $t2, $t3 +/* 092074 80091474 27B10078 */ addiu $s1, $sp, 0x78 +/* 092078 80091478 95840000 */ lhu $a0, ($t4) +/* 09207C 8009147C 02202825 */ move $a1, $s1 +/* 092080 80091480 0C025DBE */ jal decompress_filename_string +/* 092084 80091484 24060003 */ li $a2, 3 +/* 092088 80091488 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 09208C 8009148C 240D000C */ li $t5, 12 +/* 092090 80091490 AFAD0010 */ sw $t5, 0x10($sp) +/* 092094 80091494 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092098 80091498 240500FA */ li $a1, 250 +/* 09209C 8009149C 02003025 */ move $a2, $s0 +/* 0920A0 800914A0 0C031110 */ jal draw_text +/* 0920A4 800914A4 02203825 */ move $a3, $s1 +/* 0920A8 800914A8 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 +/* 0920AC 800914AC 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) +/* 0920B0 800914B0 8FAE0070 */ lw $t6, 0x70($sp) +/* 0920B4 800914B4 3C09800E */ lui $t1, %hi(gTrackIdForPreview) # $t1, 0x800e +/* 0920B8 800914B8 00187880 */ sll $t7, $t8, 2 +/* 0920BC 800914BC 8D29F4C4 */ lw $t1, %lo(gTrackIdForPreview)($t1) +/* 0920C0 800914C0 01CFC821 */ addu $t9, $t6, $t7 +/* 0920C4 800914C4 8F280018 */ lw $t0, 0x18($t9) +/* 0920C8 800914C8 00095040 */ sll $t2, $t1, 1 +/* 0920CC 800914CC 010A5821 */ addu $t3, $t0, $t2 +/* 0920D0 800914D0 95640000 */ lhu $a0, ($t3) +/* 0920D4 800914D4 02202825 */ move $a1, $s1 +/* 0920D8 800914D8 0C025DBE */ jal decompress_filename_string +/* 0920DC 800914DC 24060003 */ li $a2, 3 +/* 0920E0 800914E0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0920E4 800914E4 240C000C */ li $t4, 12 +/* 0920E8 800914E8 AFAC0010 */ sw $t4, 0x10($sp) +/* 0920EC 800914EC 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0920F0 800914F0 240500FA */ li $a1, 250 +/* 0920F4 800914F4 02403025 */ move $a2, $s2 +/* 0920F8 800914F8 0C031110 */ jal draw_text +/* 0920FC 800914FC 02203825 */ move $a3, $s1 +/* 092100 80091500 3C188012 */ lui $t8, %hi(gPlayerSelectVehicle) # $t8, 0x8012 +/* 092104 80091504 831869C0 */ lb $t8, %lo(gPlayerSelectVehicle)($t8) +/* 092108 80091508 8FAD0070 */ lw $t5, 0x70($sp) +/* 09210C 8009150C 3C09800E */ lui $t1, %hi(gTrackIdForPreview) # $t1, 0x800e +/* 092110 80091510 00187080 */ sll $t6, $t8, 2 +/* 092114 80091514 8D29F4C4 */ lw $t1, %lo(gTrackIdForPreview)($t1) +/* 092118 80091518 01AE7821 */ addu $t7, $t5, $t6 +/* 09211C 8009151C 8DF9003C */ lw $t9, 0x3c($t7) +/* 092120 80091520 00094040 */ sll $t0, $t1, 1 +/* 092124 80091524 03285021 */ addu $t2, $t9, $t0 +/* 092128 80091528 95440000 */ lhu $a0, ($t2) +/* 09212C 8009152C 240B00FF */ li $t3, 255 +/* 092130 80091530 240C00FF */ li $t4, 255 +/* 092134 80091534 AFAC0014 */ sw $t4, 0x14($sp) +/* 092138 80091538 AFAB0010 */ sw $t3, 0x10($sp) +/* 09213C 8009153C AFA00018 */ sw $zero, 0x18($sp) +/* 092140 80091540 24050016 */ li $a1, 22 +/* 092144 80091544 24060035 */ li $a2, 53 +/* 092148 80091548 0C020600 */ jal show_timestamp +/* 09214C 8009154C 24070080 */ li $a3, 128 +/* 092150 80091550 3C0D8012 */ lui $t5, %hi(gPlayerSelectVehicle) # $t5, 0x8012 +/* 092154 80091554 81AD69C0 */ lb $t5, %lo(gPlayerSelectVehicle)($t5) +/* 092158 80091558 8FB80070 */ lw $t8, 0x70($sp) +/* 09215C 8009155C 3C19800E */ lui $t9, %hi(gTrackIdForPreview) # $t9, 0x800e +/* 092160 80091560 000D7080 */ sll $t6, $t5, 2 +/* 092164 80091564 8F39F4C4 */ lw $t9, %lo(gTrackIdForPreview)($t9) +/* 092168 80091568 030E7821 */ addu $t7, $t8, $t6 +/* 09216C 8009156C 8DE90024 */ lw $t1, 0x24($t7) +/* 092170 80091570 00194040 */ sll $t0, $t9, 1 +/* 092174 80091574 01285021 */ addu $t2, $t1, $t0 +/* 092178 80091578 95440000 */ lhu $a0, ($t2) +/* 09217C 8009157C 240B00C0 */ li $t3, 192 +/* 092180 80091580 240C00FF */ li $t4, 255 +/* 092184 80091584 AFAC0014 */ sw $t4, 0x14($sp) +/* 092188 80091588 AFAB0010 */ sw $t3, 0x10($sp) +/* 09218C 8009158C AFA00018 */ sw $zero, 0x18($sp) +/* 092190 80091590 24050016 */ li $a1, 22 +/* 092194 80091594 24060021 */ li $a2, 33 +/* 092198 80091598 0C020600 */ jal show_timestamp +/* 09219C 8009159C 240700FF */ li $a3, 255 +/* 0921A0 800915A0 3C0D8012 */ lui $t5, %hi(D_801263E0) # $t5, 0x8012 +/* 0921A4 800915A4 8DAD63E0 */ lw $t5, %lo(D_801263E0)($t5) +/* 0921A8 800915A8 2401FFFF */ li $at, -1 +/* 0921AC 800915AC 11A10256 */ beq $t5, $at, .L80091F08 +/* 0921B0 800915B0 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e +/* 0921B4 800915B4 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) +/* 0921B8 800915B8 24010001 */ li $at, 1 +/* 0921BC 800915BC 14410062 */ bne $v0, $at, .L80091748 +/* 0921C0 800915C0 24040007 */ li $a0, 7 +/* 0921C4 800915C4 8FB80080 */ lw $t8, 0x80($sp) +/* 0921C8 800915C8 24050086 */ li $a1, 134 +/* 0921CC 800915CC 270E0089 */ addiu $t6, $t8, 0x89 +/* 0921D0 800915D0 AFAE0010 */ sw $t6, 0x10($sp) +/* 0921D4 800915D4 240700BA */ li $a3, 186 +/* 0921D8 800915D8 0C0313B7 */ jal set_current_dialogue_box_coords +/* 0921DC 800915DC 27060070 */ addiu $a2, $t8, 0x70 +/* 0921E0 800915E0 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0921E4 800915E4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0921E8 800915E8 00002825 */ move $a1, $zero +/* 0921EC 800915EC 00003025 */ move $a2, $zero +/* 0921F0 800915F0 0C0316D6 */ jal render_dialogue_box +/* 0921F4 800915F4 24070007 */ li $a3, 7 +/* 0921F8 800915F8 3C0F8012 */ lui $t7, %hi(D_801263E0) # $t7, 0x8012 +/* 0921FC 800915FC 8DEF63E0 */ lw $t7, %lo(D_801263E0)($t7) +/* 092200 80091600 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092204 80091604 1DE00013 */ bgtz $t7, .L80091654 +/* 092208 80091608 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 09220C 8009160C 8FA70080 */ lw $a3, 0x80($sp) +/* 092210 80091610 8FCA0000 */ lw $t2, ($fp) +/* 092214 80091614 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092218 80091618 3C05800E */ lui $a1, %hi(gRaceSelectionVehicleTitleTexture) # $a1, 0x800e +/* 09221C 8009161C 241900FF */ li $t9, 255 +/* 092220 80091620 240900FF */ li $t1, 255 +/* 092224 80091624 240800FF */ li $t0, 255 +/* 092228 80091628 AFA80018 */ sw $t0, 0x18($sp) +/* 09222C 8009162C AFA90014 */ sw $t1, 0x14($sp) +/* 092230 80091630 AFB90010 */ sw $t9, 0x10($sp) +/* 092234 80091634 24A505B4 */ addiu $a1, %lo(gRaceSelectionVehicleTitleTexture) # addiu $a1, $a1, 0x5b4 +/* 092238 80091638 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 09223C 8009163C 24060088 */ li $a2, 136 +/* 092240 80091640 24E70072 */ addiu $a3, $a3, 0x72 +/* 092244 80091644 0C01E2AE */ jal render_textured_rectangle +/* 092248 80091648 AFAA001C */ sw $t2, 0x1c($sp) +/* 09224C 8009164C 1000003A */ b .L80091738 +/* 092250 80091650 00000000 */ nop +.L80091654: +/* 092254 80091654 8FA70080 */ lw $a3, 0x80($sp) +/* 092258 80091658 8FD80000 */ lw $t8, ($fp) +/* 09225C 8009165C 3C05800E */ lui $a1, %hi(gRaceSelectionTTTitleTexture) # $a1, 0x800e +/* 092260 80091660 240B00FF */ li $t3, 255 +/* 092264 80091664 240C00FF */ li $t4, 255 +/* 092268 80091668 240D00FF */ li $t5, 255 +/* 09226C 8009166C AFAD0018 */ sw $t5, 0x18($sp) +/* 092270 80091670 AFAC0014 */ sw $t4, 0x14($sp) +/* 092274 80091674 AFAB0010 */ sw $t3, 0x10($sp) +/* 092278 80091678 24A505C4 */ addiu $a1, %lo(gRaceSelectionTTTitleTexture) # addiu $a1, $a1, 0x5c4 +/* 09227C 8009167C 24060088 */ li $a2, 136 +/* 092280 80091680 0000A825 */ move $s5, $zero +/* 092284 80091684 24E70072 */ addiu $a3, $a3, 0x72 +/* 092288 80091688 0C01E2AE */ jal render_textured_rectangle +/* 09228C 8009168C AFB8001C */ sw $t8, 0x1c($sp) +/* 092290 80091690 8FB70080 */ lw $s7, 0x80($sp) +/* 092294 80091694 3C10800E */ lui $s0, %hi(D_800E0648) # $s0, 0x800e +/* 092298 80091698 26100648 */ addiu $s0, %lo(D_800E0648) # addiu $s0, $s0, 0x648 +/* 09229C 8009169C 26F70097 */ addiu $s7, $s7, 0x97 +.L800916A0: +/* 0922A0 800916A0 3C0E800E */ lui $t6, %hi(D_800E0414) # $t6, 0x800e +/* 0922A4 800916A4 8DCE0414 */ lw $t6, %lo(D_800E0414)($t6) +/* 0922A8 800916A8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0922AC 800916AC 16AE0011 */ bne $s5, $t6, .L800916F4 +/* 0922B0 800916B0 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0922B4 800916B4 8FC80000 */ lw $t0, ($fp) +/* 0922B8 800916B8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0922BC 800916BC 8E050004 */ lw $a1, 4($s0) +/* 0922C0 800916C0 240F00FF */ li $t7, 255 +/* 0922C4 800916C4 241900FF */ li $t9, 255 +/* 0922C8 800916C8 240900FF */ li $t1, 255 +/* 0922CC 800916CC AFA90018 */ sw $t1, 0x18($sp) +/* 0922D0 800916D0 AFB90014 */ sw $t9, 0x14($sp) +/* 0922D4 800916D4 AFAF0010 */ sw $t7, 0x10($sp) +/* 0922D8 800916D8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0922DC 800916DC 24060068 */ li $a2, 104 +/* 0922E0 800916E0 02E03825 */ move $a3, $s7 +/* 0922E4 800916E4 0C01E2AE */ jal render_textured_rectangle +/* 0922E8 800916E8 AFA8001C */ sw $t0, 0x1c($sp) +/* 0922EC 800916EC 1000000E */ b .L80091728 +/* 0922F0 800916F0 26B50001 */ addiu $s5, $s5, 1 +.L800916F4: +/* 0922F4 800916F4 8FCD0000 */ lw $t5, ($fp) +/* 0922F8 800916F8 8E050008 */ lw $a1, 8($s0) +/* 0922FC 800916FC 240A00FF */ li $t2, 255 +/* 092300 80091700 240B00FF */ li $t3, 255 +/* 092304 80091704 240C00FF */ li $t4, 255 +/* 092308 80091708 AFAC0018 */ sw $t4, 0x18($sp) +/* 09230C 8009170C AFAB0014 */ sw $t3, 0x14($sp) +/* 092310 80091710 AFAA0010 */ sw $t2, 0x10($sp) +/* 092314 80091714 24060068 */ li $a2, 104 +/* 092318 80091718 02E03825 */ move $a3, $s7 +/* 09231C 8009171C 0C01E2AE */ jal render_textured_rectangle +/* 092320 80091720 AFAD001C */ sw $t5, 0x1c($sp) +/* 092324 80091724 26B50001 */ addiu $s5, $s5, 1 +.L80091728: +/* 092328 80091728 24010002 */ li $at, 2 +/* 09232C 8009172C 2610000C */ addiu $s0, $s0, 0xc +/* 092330 80091730 16A1FFDB */ bne $s5, $at, .L800916A0 +/* 092334 80091734 26F70018 */ addiu $s7, $s7, 0x18 +.L80091738: +/* 092338 80091738 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e +/* 09233C 8009173C 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) +/* 092340 80091740 1000004B */ b .L80091870 +/* 092344 80091744 28410002 */ slti $at, $v0, 2 +.L80091748: +/* 092348 80091748 8FB80074 */ lw $t8, 0x74($sp) +/* 09234C 8009174C 244EFFFF */ addiu $t6, $v0, -1 +/* 092350 80091750 17000047 */ bnez $t8, .L80091870 +/* 092354 80091754 28410002 */ slti $at, $v0, 2 +/* 092358 80091758 01C20019 */ multu $t6, $v0 +/* 09235C 8009175C 3C19800E */ lui $t9, %hi(D_800E0688) # $t9, 0x800e +/* 092360 80091760 27390688 */ addiu $t9, %lo(D_800E0688) # addiu $t9, $t9, 0x688 +/* 092364 80091764 3C11800E */ lui $s1, %hi(D_800E0660) # $s1, 0x800e +/* 092368 80091768 3C128012 */ lui $s2, %hi(D_801269C4) # $s2, 0x8012 +/* 09236C 8009176C 0040B825 */ move $s7, $v0 +/* 092370 80091770 265269C4 */ addiu $s2, %lo(D_801269C4) # addiu $s2, $s2, 0x69c4 +/* 092374 80091774 26310660 */ addiu $s1, %lo(D_800E0660) # addiu $s1, $s1, 0x660 +/* 092378 80091778 0000A825 */ move $s5, $zero +/* 09237C 8009177C 00009812 */ mflo $s3 +/* 092380 80091780 00137840 */ sll $t7, $s3, 1 +/* 092384 80091784 18400039 */ blez $v0, .L8009186C +/* 092388 80091788 01F98021 */ addu $s0, $t7, $t9 +.L8009178C: +/* 09238C 8009178C 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e +/* 092390 80091790 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) +/* 092394 80091794 24010001 */ li $at, 1 +/* 092398 80091798 14410004 */ bne $v0, $at, .L800917AC +/* 09239C 8009179C 3C098012 */ lui $t1, %hi(D_801263E0) # $t1, 0x8012 +/* 0923A0 800917A0 8D2963E0 */ lw $t1, %lo(D_801263E0)($t1) +/* 0923A4 800917A4 00000000 */ nop +/* 0923A8 800917A8 12A90007 */ beq $s5, $t1, .L800917C8 +.L800917AC: +/* 0923AC 800917AC 28410002 */ slti $at, $v0, 2 +/* 0923B0 800917B0 14200016 */ bnez $at, .L8009180C +/* 0923B4 800917B4 02554021 */ addu $t0, $s2, $s5 +/* 0923B8 800917B8 810A0000 */ lb $t2, ($t0) +/* 0923BC 800917BC 00000000 */ nop +/* 0923C0 800917C0 15400012 */ bnez $t2, .L8009180C +/* 0923C4 800917C4 00000000 */ nop +.L800917C8: +/* 0923C8 800917C8 860B0002 */ lh $t3, 2($s0) +/* 0923CC 800917CC 8FAC0080 */ lw $t4, 0x80($sp) +/* 0923D0 800917D0 86020000 */ lh $v0, ($s0) +/* 0923D4 800917D4 016C1821 */ addu $v1, $t3, $t4 +/* 0923D8 800917D8 246D0017 */ addiu $t5, $v1, 0x17 +/* 0923DC 800917DC AFAD0010 */ sw $t5, 0x10($sp) +/* 0923E0 800917E0 2466FFFE */ addiu $a2, $v1, -2 +/* 0923E4 800917E4 24040007 */ li $a0, 7 +/* 0923E8 800917E8 2445FFFE */ addiu $a1, $v0, -2 +/* 0923EC 800917EC 0C0313B7 */ jal set_current_dialogue_box_coords +/* 0923F0 800917F0 24470032 */ addiu $a3, $v0, 0x32 +/* 0923F4 800917F4 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0923F8 800917F8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0923FC 800917FC 00002825 */ move $a1, $zero +/* 092400 80091800 00003025 */ move $a2, $zero +/* 092404 80091804 0C0316D6 */ jal render_dialogue_box +/* 092408 80091808 24070007 */ li $a3, 7 +.L8009180C: +/* 09240C 8009180C 86180002 */ lh $t8, 2($s0) +/* 092410 80091810 8FAE0080 */ lw $t6, 0x80($sp) +/* 092414 80091814 8FC80000 */ lw $t0, ($fp) +/* 092418 80091818 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 09241C 8009181C 8E250000 */ lw $a1, ($s1) +/* 092420 80091820 86060000 */ lh $a2, ($s0) +/* 092424 80091824 240F00FF */ li $t7, 255 +/* 092428 80091828 241900FF */ li $t9, 255 +/* 09242C 8009182C 240900FF */ li $t1, 255 +/* 092430 80091830 AFA90018 */ sw $t1, 0x18($sp) +/* 092434 80091834 AFB90014 */ sw $t9, 0x14($sp) +/* 092438 80091838 AFAF0010 */ sw $t7, 0x10($sp) +/* 09243C 8009183C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092440 80091840 030E3821 */ addu $a3, $t8, $t6 +/* 092444 80091844 0C01E2AE */ jal render_textured_rectangle +/* 092448 80091848 AFA8001C */ sw $t0, 0x1c($sp) +/* 09244C 8009184C 26B50001 */ addiu $s5, $s5, 1 +/* 092450 80091850 02B7082A */ slt $at, $s5, $s7 +/* 092454 80091854 26310004 */ addiu $s1, $s1, 4 +/* 092458 80091858 1420FFCC */ bnez $at, .L8009178C +/* 09245C 8009185C 26100004 */ addiu $s0, $s0, 4 +/* 092460 80091860 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e +/* 092464 80091864 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) +/* 092468 80091868 00000000 */ nop +.L8009186C: +/* 09246C 8009186C 28410002 */ slti $at, $v0, 2 +.L80091870: +/* 092470 80091870 10200005 */ beqz $at, .L80091888 +/* 092474 80091874 3C0A8012 */ lui $t2, %hi(D_801263E0) # $t2, 0x8012 +/* 092478 80091878 8D4A63E0 */ lw $t2, %lo(D_801263E0)($t2) +/* 09247C 8009187C 00000000 */ nop +/* 092480 80091880 1540006A */ bnez $t2, .L80091A2C +/* 092484 80091884 8FB00080 */ lw $s0, 0x80($sp) +.L80091888: +/* 092488 80091888 8FAB0074 */ lw $t3, 0x74($sp) +/* 09248C 8009188C 244CFFFF */ addiu $t4, $v0, -1 +/* 092490 80091890 15600066 */ bnez $t3, .L80091A2C +/* 092494 80091894 8FB00080 */ lw $s0, 0x80($sp) +/* 092498 80091898 01820019 */ multu $t4, $v0 +/* 09249C 8009189C 8FB70080 */ lw $s7, 0x80($sp) +/* 0924A0 800918A0 0000A825 */ move $s5, $zero +/* 0924A4 800918A4 24160003 */ li $s6, 3 +/* 0924A8 800918A8 26F7008B */ addiu $s7, $s7, 0x8b +/* 0924AC 800918AC 00009812 */ mflo $s3 +/* 0924B0 800918B0 00136843 */ sra $t5, $s3, 1 +/* 0924B4 800918B4 01A09825 */ move $s3, $t5 +/* 0924B8 800918B8 8FAF007C */ lw $t7, 0x7c($sp) +.L800918BC: +/* 0924BC 800918BC 24180001 */ li $t8, 1 +/* 0924C0 800918C0 02B87004 */ sllv $t6, $t8, $s5 +/* 0924C4 800918C4 01CFC824 */ and $t9, $t6, $t7 +/* 0924C8 800918C8 13200054 */ beqz $t9, .L80091A1C +/* 0924CC 800918CC 00000000 */ nop +/* 0924D0 800918D0 18400051 */ blez $v0, .L80091A18 +/* 0924D4 800918D4 0000A025 */ move $s4, $zero +/* 0924D8 800918D8 00154880 */ sll $t1, $s5, 2 +/* 0924DC 800918DC 01354823 */ subu $t1, $t1, $s5 +/* 0924E0 800918E0 3C0A800E */ lui $t2, %hi(gRaceSelectionImages) # $t2, 0x800e +/* 0924E4 800918E4 3C0C800E */ lui $t4, %hi(D_800E06B0) # $t4, 0x800e +/* 0924E8 800918E8 258C06B0 */ addiu $t4, %lo(D_800E06B0) # addiu $t4, $t4, 0x6b0 +/* 0924EC 800918EC 254A0624 */ addiu $t2, %lo(gRaceSelectionImages) # addiu $t2, $t2, 0x624 +/* 0924F0 800918F0 00094080 */ sll $t0, $t1, 2 +/* 0924F4 800918F4 3C118012 */ lui $s1, %hi(gPlayerSelectVehicle) # $s1, 0x8012 +/* 0924F8 800918F8 00135840 */ sll $t3, $s3, 1 +/* 0924FC 800918FC 016C8021 */ addu $s0, $t3, $t4 +/* 092500 80091900 263169C0 */ addiu $s1, %lo(gPlayerSelectVehicle) # addiu $s1, $s1, 0x69c0 +/* 092504 80091904 010A9021 */ addu $s2, $t0, $t2 +.L80091908: +/* 092508 80091908 822D0000 */ lb $t5, ($s1) +/* 09250C 8009190C 8FA90070 */ lw $t1, 0x70($sp) +/* 092510 80091910 16AD0011 */ bne $s5, $t5, .L80091958 +/* 092514 80091914 3C0A800E */ lui $t2, %hi(gTrackIdForPreview) # $t2, 0x800e +/* 092518 80091918 8FD90000 */ lw $t9, ($fp) +/* 09251C 8009191C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092520 80091920 8E450004 */ lw $a1, 4($s2) +/* 092524 80091924 86060000 */ lh $a2, ($s0) +/* 092528 80091928 241800FF */ li $t8, 255 +/* 09252C 8009192C 240E00FF */ li $t6, 255 +/* 092530 80091930 240F00FF */ li $t7, 255 +/* 092534 80091934 AFAF0018 */ sw $t7, 0x18($sp) +/* 092538 80091938 AFAE0014 */ sw $t6, 0x14($sp) +/* 09253C 8009193C AFB80010 */ sw $t8, 0x10($sp) +/* 092540 80091940 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092544 80091944 02E03825 */ move $a3, $s7 +/* 092548 80091948 0C01E2AE */ jal render_textured_rectangle +/* 09254C 8009194C AFB9001C */ sw $t9, 0x1c($sp) +/* 092550 80091950 1000002A */ b .L800919FC +/* 092554 80091954 00000000 */ nop +.L80091958: +/* 092558 80091958 8D4AF4C4 */ lw $t2, %lo(gTrackIdForPreview)($t2) +/* 09255C 8009195C 8D280004 */ lw $t0, 4($t1) +/* 092560 80091960 000A5880 */ sll $t3, $t2, 2 +/* 092564 80091964 010B6021 */ addu $t4, $t0, $t3 +/* 092568 80091968 8D8D0000 */ lw $t5, ($t4) +/* 09256C 8009196C 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092570 80091970 31B80002 */ andi $t8, $t5, 2 +/* 092574 80091974 13000011 */ beqz $t8, .L800919BC +/* 092578 80091978 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 09257C 8009197C 8FC90000 */ lw $t1, ($fp) +/* 092580 80091980 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092584 80091984 8E450008 */ lw $a1, 8($s2) +/* 092588 80091988 86060000 */ lh $a2, ($s0) +/* 09258C 8009198C 240E00FF */ li $t6, 255 +/* 092590 80091990 240F00FF */ li $t7, 255 +/* 092594 80091994 241900FF */ li $t9, 255 +/* 092598 80091998 AFB90018 */ sw $t9, 0x18($sp) +/* 09259C 8009199C AFAF0014 */ sw $t7, 0x14($sp) +/* 0925A0 800919A0 AFAE0010 */ sw $t6, 0x10($sp) +/* 0925A4 800919A4 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0925A8 800919A8 02E03825 */ move $a3, $s7 +/* 0925AC 800919AC 0C01E2AE */ jal render_textured_rectangle +/* 0925B0 800919B0 AFA9001C */ sw $t1, 0x1c($sp) +/* 0925B4 800919B4 10000011 */ b .L800919FC +/* 0925B8 800919B8 00000000 */ nop +.L800919BC: +/* 0925BC 800919BC 8FCC0000 */ lw $t4, ($fp) +/* 0925C0 800919C0 8E450008 */ lw $a1, 8($s2) +/* 0925C4 800919C4 86060000 */ lh $a2, ($s0) +/* 0925C8 800919C8 240A00FF */ li $t2, 255 +/* 0925CC 800919CC 240800FF */ li $t0, 255 +/* 0925D0 800919D0 240B00FF */ li $t3, 255 +/* 0925D4 800919D4 AFAB0018 */ sw $t3, 0x18($sp) +/* 0925D8 800919D8 AFA80014 */ sw $t0, 0x14($sp) +/* 0925DC 800919DC AFAA0010 */ sw $t2, 0x10($sp) +/* 0925E0 800919E0 02E03825 */ move $a3, $s7 +/* 0925E4 800919E4 05810003 */ bgez $t4, .L800919F4 +/* 0925E8 800919E8 000C6843 */ sra $t5, $t4, 1 +/* 0925EC 800919EC 25810001 */ addiu $at, $t4, 1 +/* 0925F0 800919F0 00016843 */ sra $t5, $at, 1 +.L800919F4: +/* 0925F4 800919F4 0C01E2AE */ jal render_textured_rectangle +/* 0925F8 800919F8 AFAD001C */ sw $t5, 0x1c($sp) +.L800919FC: +/* 0925FC 800919FC 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e +/* 092600 80091A00 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) +/* 092604 80091A04 26940001 */ addiu $s4, $s4, 1 +/* 092608 80091A08 0282082A */ slt $at, $s4, $v0 +/* 09260C 80091A0C 26310001 */ addiu $s1, $s1, 1 +/* 092610 80091A10 1420FFBD */ bnez $at, .L80091908 +/* 092614 80091A14 26100002 */ addiu $s0, $s0, 2 +.L80091A18: +/* 092618 80091A18 26F70018 */ addiu $s7, $s7, 0x18 +.L80091A1C: +/* 09261C 80091A1C 26B50001 */ addiu $s5, $s5, 1 +/* 092620 80091A20 16B6FFA6 */ bne $s5, $s6, .L800918BC +/* 092624 80091A24 8FAF007C */ lw $t7, 0x7c($sp) +/* 092628 80091A28 8FB00080 */ lw $s0, 0x80($sp) +.L80091A2C: +/* 09262C 80091A2C 3C038012 */ lui $v1, %hi(gPlayerSelectVehicle) # $v1, 0x8012 +/* 092630 80091A30 806369C0 */ lb $v1, %lo(gPlayerSelectVehicle)($v1) +/* 092634 80091A34 24010002 */ li $at, 2 +/* 092638 80091A38 2610008B */ addiu $s0, $s0, 0x8b +/* 09263C 80091A3C 24160003 */ li $s6, 3 +/* 092640 80091A40 14610002 */ bne $v1, $at, .L80091A4C +/* 092644 80091A44 0200B825 */ move $s7, $s0 +/* 092648 80091A48 26170002 */ addiu $s7, $s0, 2 +.L80091A4C: +/* 09264C 80091A4C 24010001 */ li $at, 1 +/* 092650 80091A50 14410035 */ bne $v0, $at, .L80091B28 +/* 092654 80091A54 3C188012 */ lui $t8, %hi(D_801263E0) # $t8, 0x8012 +/* 092658 80091A58 8F1863E0 */ lw $t8, %lo(D_801263E0)($t8) +/* 09265C 80091A5C 00000000 */ nop +/* 092660 80091A60 17000019 */ bnez $t8, .L80091AC8 +/* 092664 80091A64 00000000 */ nop +/* 092668 80091A68 00760019 */ multu $v1, $s6 +/* 09266C 80091A6C 3C11800E */ lui $s1, %hi(gRaceSelectionImages) # $s1, 0x800e +/* 092670 80091A70 26310624 */ addiu $s1, %lo(gRaceSelectionImages) # addiu $s1, $s1, 0x624 +/* 092674 80091A74 8FCB0000 */ lw $t3, ($fp) +/* 092678 80091A78 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 09267C 80091A7C 240900FF */ li $t1, 255 +/* 092680 80091A80 240A00FF */ li $t2, 255 +/* 092684 80091A84 240800FF */ li $t0, 255 +/* 092688 80091A88 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 09268C 80091A8C 24060095 */ li $a2, 149 +/* 092690 80091A90 02E03825 */ move $a3, $s7 +/* 092694 80091A94 00007012 */ mflo $t6 +/* 092698 80091A98 000E7880 */ sll $t7, $t6, 2 +/* 09269C 80091A9C 022FC821 */ addu $t9, $s1, $t7 +/* 0926A0 80091AA0 8F250000 */ lw $a1, ($t9) +/* 0926A4 80091AA4 AFA80018 */ sw $t0, 0x18($sp) +/* 0926A8 80091AA8 AFAA0014 */ sw $t2, 0x14($sp) +/* 0926AC 80091AAC AFA90010 */ sw $t1, 0x10($sp) +/* 0926B0 80091AB0 0C01E2AE */ jal render_textured_rectangle +/* 0926B4 80091AB4 AFAB001C */ sw $t3, 0x1c($sp) +/* 0926B8 80091AB8 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e +/* 0926BC 80091ABC 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) +/* 0926C0 80091AC0 10000019 */ b .L80091B28 +/* 0926C4 80091AC4 00000000 */ nop +.L80091AC8: +/* 0926C8 80091AC8 3C0C800E */ lui $t4, %hi(D_800E0414) # $t4, 0x800e +/* 0926CC 80091ACC 8D8C0414 */ lw $t4, %lo(D_800E0414)($t4) +/* 0926D0 80091AD0 3C05800E */ lui $a1, %hi(D_800E0648) # $a1, 0x800e +/* 0926D4 80091AD4 01960019 */ multu $t4, $s6 +/* 0926D8 80091AD8 8FC90000 */ lw $t1, ($fp) +/* 0926DC 80091ADC 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0926E0 80091AE0 240E00FF */ li $t6, 255 +/* 0926E4 80091AE4 240F00FF */ li $t7, 255 +/* 0926E8 80091AE8 241900FF */ li $t9, 255 +/* 0926EC 80091AEC AFB90018 */ sw $t9, 0x18($sp) +/* 0926F0 80091AF0 AFAF0014 */ sw $t7, 0x14($sp) +/* 0926F4 80091AF4 AFAE0010 */ sw $t6, 0x10($sp) +/* 0926F8 80091AF8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0926FC 80091AFC 24060095 */ li $a2, 149 +/* 092700 80091B00 02003825 */ move $a3, $s0 +/* 092704 80091B04 00006812 */ mflo $t5 +/* 092708 80091B08 000DC080 */ sll $t8, $t5, 2 +/* 09270C 80091B0C 00B82821 */ addu $a1, $a1, $t8 +/* 092710 80091B10 8CA50648 */ lw $a1, %lo(D_800E0648)($a1) +/* 092714 80091B14 0C01E2AE */ jal render_textured_rectangle +/* 092718 80091B18 AFA9001C */ sw $t1, 0x1c($sp) +/* 09271C 80091B1C 3C02800E */ lui $v0, %hi(gNumberOfActivePlayers) # $v0, 0x800e +/* 092720 80091B20 8C42F4BC */ lw $v0, %lo(gNumberOfActivePlayers)($v0) +/* 092724 80091B24 00000000 */ nop +.L80091B28: +/* 092728 80091B28 3C11800E */ lui $s1, %hi(gRaceSelectionImages) # $s1, 0x800e +/* 09272C 80091B2C 24010002 */ li $at, 2 +/* 092730 80091B30 14410031 */ bne $v0, $at, .L80091BF8 +/* 092734 80091B34 26310624 */ addiu $s1, %lo(gRaceSelectionImages) # addiu $s1, $s1, 0x624 +/* 092738 80091B38 8FAA0074 */ lw $t2, 0x74($sp) +/* 09273C 80091B3C 3C088012 */ lui $t0, %hi(gPlayerSelectVehicle) # $t0, 0x8012 +/* 092740 80091B40 1540002D */ bnez $t2, .L80091BF8 +/* 092744 80091B44 00000000 */ nop +/* 092748 80091B48 810869C0 */ lb $t0, %lo(gPlayerSelectVehicle)($t0) +/* 09274C 80091B4C 8FD90000 */ lw $t9, ($fp) +/* 092750 80091B50 01160019 */ multu $t0, $s6 +/* 092754 80091B54 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092758 80091B58 02E03825 */ move $a3, $s7 +/* 09275C 80091B5C 241800FF */ li $t8, 255 +/* 092760 80091B60 240E00FF */ li $t6, 255 +/* 092764 80091B64 240F00FF */ li $t7, 255 +/* 092768 80091B68 0200B825 */ move $s7, $s0 +/* 09276C 80091B6C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092770 80091B70 2406004F */ li $a2, 79 +/* 092774 80091B74 00005812 */ mflo $t3 +/* 092778 80091B78 000B6080 */ sll $t4, $t3, 2 +/* 09277C 80091B7C 022C6821 */ addu $t5, $s1, $t4 +/* 092780 80091B80 8DA50000 */ lw $a1, ($t5) +/* 092784 80091B84 AFAF0018 */ sw $t7, 0x18($sp) +/* 092788 80091B88 AFAE0014 */ sw $t6, 0x14($sp) +/* 09278C 80091B8C AFB80010 */ sw $t8, 0x10($sp) +/* 092790 80091B90 0C01E2AE */ jal render_textured_rectangle +/* 092794 80091B94 AFB9001C */ sw $t9, 0x1c($sp) +/* 092798 80091B98 3C028012 */ lui $v0, %hi(gPlayerSelectVehicle+1) # $v0, 0x8012 +/* 09279C 80091B9C 804269C1 */ lb $v0, %lo(gPlayerSelectVehicle+1)($v0) +/* 0927A0 80091BA0 24010002 */ li $at, 2 +/* 0927A4 80091BA4 14410002 */ bne $v0, $at, .L80091BB0 +/* 0927A8 80091BA8 00000000 */ nop +/* 0927AC 80091BAC 26170002 */ addiu $s7, $s0, 2 +.L80091BB0: +/* 0927B0 80091BB0 00560019 */ multu $v0, $s6 +/* 0927B4 80091BB4 8FD80000 */ lw $t8, ($fp) +/* 0927B8 80091BB8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0927BC 80091BBC 240B00FF */ li $t3, 255 +/* 0927C0 80091BC0 240C00FF */ li $t4, 255 +/* 0927C4 80091BC4 240D00FF */ li $t5, 255 +/* 0927C8 80091BC8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0927CC 80091BCC 240600B0 */ li $a2, 176 +/* 0927D0 80091BD0 02E03825 */ move $a3, $s7 +/* 0927D4 80091BD4 00004812 */ mflo $t1 +/* 0927D8 80091BD8 00095080 */ sll $t2, $t1, 2 +/* 0927DC 80091BDC 022A4021 */ addu $t0, $s1, $t2 +/* 0927E0 80091BE0 8D050000 */ lw $a1, ($t0) +/* 0927E4 80091BE4 AFAD0018 */ sw $t5, 0x18($sp) +/* 0927E8 80091BE8 AFAC0014 */ sw $t4, 0x14($sp) +/* 0927EC 80091BEC AFAB0010 */ sw $t3, 0x10($sp) +/* 0927F0 80091BF0 0C01E2AE */ jal render_textured_rectangle +/* 0927F4 80091BF4 AFB8001C */ sw $t8, 0x1c($sp) +.L80091BF8: +/* 0927F8 80091BF8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0927FC 80091BFC 0C01ECF4 */ jal func_8007B3D0 +/* 092800 80091C00 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092804 80091C04 3C0E800E */ lui $t6, %hi(gNumberOfActivePlayers) # $t6, 0x800e +/* 092808 80091C08 8DCEF4BC */ lw $t6, %lo(gNumberOfActivePlayers)($t6) +/* 09280C 80091C0C 8FAF0074 */ lw $t7, 0x74($sp) +/* 092810 80091C10 29C10003 */ slti $at, $t6, 3 +/* 092814 80091C14 10200022 */ beqz $at, .L80091CA0 +/* 092818 80091C18 8FAC0074 */ lw $t4, 0x74($sp) +/* 09281C 80091C1C 15E0001F */ bnez $t7, .L80091C9C +/* 092820 80091C20 3C02800E */ lui $v0, %hi(gMenuImageStack) # $v0, 0x800e +/* 092824 80091C24 2442F75C */ addiu $v0, %lo(gMenuImageStack) # addiu $v0, $v0, -0x8a4 +/* 092828 80091C28 3C01C250 */ li $at, 0xC2500000 # -52.000000 +/* 09282C 80091C2C 44814000 */ mtc1 $at, $f8 +/* 092830 80091C30 8C590000 */ lw $t9, ($v0) +/* 092834 80091C34 3C09800E */ lui $t1, %hi(gNumberOfActivePlayers) # $t1, 0x800e +/* 092838 80091C38 E72800F0 */ swc1 $f8, 0xf0($t9) +/* 09283C 80091C3C 8D29F4BC */ lw $t1, %lo(gNumberOfActivePlayers)($t1) +/* 092840 80091C40 24010001 */ li $at, 1 +/* 092844 80091C44 15210009 */ bne $t1, $at, .L80091C6C +/* 092848 80091C48 24040007 */ li $a0, 7 +/* 09284C 80091C4C 3C0141A8 */ li $at, 0x41A80000 # 21.000000 +/* 092850 80091C50 44815000 */ mtc1 $at, $f10 +/* 092854 80091C54 8C4A0000 */ lw $t2, ($v0) +/* 092858 80091C58 24040007 */ li $a0, 7 +/* 09285C 80091C5C 0C027298 */ jal func_8009CA60 +/* 092860 80091C60 E54A00EC */ swc1 $f10, 0xec($t2) +/* 092864 80091C64 1000000E */ b .L80091CA0 +/* 092868 80091C68 8FAC0074 */ lw $t4, 0x74($sp) +.L80091C6C: +/* 09286C 80091C6C 3C01C240 */ li $at, 0xC2400000 # -48.000000 +/* 092870 80091C70 44818000 */ mtc1 $at, $f16 +/* 092874 80091C74 8C480000 */ lw $t0, ($v0) +/* 092878 80091C78 0C027298 */ jal func_8009CA60 +/* 09287C 80091C7C E51000EC */ swc1 $f16, 0xec($t0) +/* 092880 80091C80 3C014240 */ li $at, 0x42400000 # 48.000000 +/* 092884 80091C84 3C0B800E */ lui $t3, %hi(gMenuImageStack) # $t3, 0x800e +/* 092888 80091C88 8D6BF75C */ lw $t3, %lo(gMenuImageStack)($t3) +/* 09288C 80091C8C 44819000 */ mtc1 $at, $f18 +/* 092890 80091C90 24040007 */ li $a0, 7 +/* 092894 80091C94 0C027298 */ jal func_8009CA60 +/* 092898 80091C98 E57200EC */ swc1 $f18, 0xec($t3) +.L80091C9C: +/* 09289C 80091C9C 8FAC0074 */ lw $t4, 0x74($sp) +.L80091CA0: +/* 0928A0 80091CA0 3C0D800E */ lui $t5, %hi(gMenuText) # $t5, 0x800e +/* 0928A4 80091CA4 11800098 */ beqz $t4, .L80091F08 +/* 0928A8 80091CA8 00000000 */ nop +/* 0928AC 80091CAC 8DADF4A0 */ lw $t5, %lo(gMenuText)($t5) +/* 0928B0 80091CB0 00002825 */ move $a1, $zero +/* 0928B4 80091CB4 8DA40220 */ lw $a0, 0x220($t5) +/* 0928B8 80091CB8 0C031368 */ jal func_800C4DA0 +/* 0928BC 80091CBC 00003025 */ move $a2, $zero +/* 0928C0 80091CC0 3C12800E */ lui $s2, %hi(gTwoPlayerRacerCountMenu) # $s2, 0x800e +/* 0928C4 80091CC4 265206E4 */ addiu $s2, %lo(gTwoPlayerRacerCountMenu) # addiu $s2, $s2, 0x6e4 +/* 0928C8 80091CC8 86430004 */ lh $v1, 4($s2) +/* 0928CC 80091CCC 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0928D0 80091CD0 2478FFF4 */ addiu $t8, $v1, -0xc +/* 0928D4 80091CD4 0302082A */ slt $at, $t8, $v0 +/* 0928D8 80091CD8 10200003 */ beqz $at, .L80091CE8 +/* 0928DC 80091CDC 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0928E0 80091CE0 10000002 */ b .L80091CEC +/* 0928E4 80091CE4 2454000C */ addiu $s4, $v0, 0xc +.L80091CE8: +/* 0928E8 80091CE8 0060A025 */ move $s4, $v1 +.L80091CEC: +/* 0928EC 80091CEC 3C0B8012 */ lui $t3, %hi(D_8012665C) # $t3, 0x8012 +/* 0928F0 80091CF0 8D6B665C */ lw $t3, %lo(D_8012665C)($t3) +/* 0928F4 80091CF4 864E0002 */ lh $t6, 2($s2) +/* 0928F8 80091CF8 86590006 */ lh $t9, 6($s2) +/* 0928FC 80091CFC 86490008 */ lh $t1, 8($s2) +/* 092900 80091D00 864A000A */ lh $t2, 0xa($s2) +/* 092904 80091D04 3C08B0E0 */ lui $t0, (0xB0E0C0FF >> 16) # lui $t0, 0xb0e0 +/* 092908 80091D08 3508C0FF */ ori $t0, (0xB0E0C0FF & 0xFFFF) # ori $t0, $t0, 0xc0ff +/* 09290C 80091D0C 00142843 */ sra $a1, $s4, 1 +/* 092910 80091D10 240F0078 */ li $t7, 120 +/* 092914 80091D14 00052823 */ negu $a1, $a1 +/* 092918 80091D18 AFA8001C */ sw $t0, 0x1c($sp) +/* 09291C 80091D1C 02803825 */ move $a3, $s4 +/* 092920 80091D20 AFAB0020 */ sw $t3, 0x20($sp) +/* 092924 80091D24 01EE3023 */ subu $a2, $t7, $t6 +/* 092928 80091D28 AFB90010 */ sw $t9, 0x10($sp) +/* 09292C 80091D2C AFA90014 */ sw $t1, 0x14($sp) +/* 092930 80091D30 0C020160 */ jal func_80080580 +/* 092934 80091D34 AFAA0018 */ sw $t2, 0x18($sp) +/* 092938 80091D38 0C02039B */ jal func_80080E6C +/* 09293C 80091D3C 00000000 */ nop +/* 092940 80091D40 0C0310BB */ jal set_text_font +/* 092944 80091D44 00002025 */ move $a0, $zero +/* 092948 80091D48 240C0080 */ li $t4, 128 +/* 09294C 80091D4C AFAC0010 */ sw $t4, 0x10($sp) +/* 092950 80091D50 00002025 */ move $a0, $zero +/* 092954 80091D54 00002825 */ move $a1, $zero +/* 092958 80091D58 00003025 */ move $a2, $zero +/* 09295C 80091D5C 0C0310E1 */ jal set_text_colour +/* 092960 80091D60 240700FF */ li $a3, 255 +/* 092964 80091D64 864F000E */ lh $t7, 0xe($s2) +/* 092968 80091D68 864E0002 */ lh $t6, 2($s2) +/* 09296C 80091D6C 3C0A800E */ lui $t2, %hi(gMenuText) # $t2, 0x800e +/* 092970 80091D70 8D4AF4A0 */ lw $t2, %lo(gMenuText)($t2) +/* 092974 80091D74 864D000C */ lh $t5, 0xc($s2) +/* 092978 80091D78 86580000 */ lh $t8, ($s2) +/* 09297C 80091D7C 8FA90080 */ lw $t1, 0x80($sp) +/* 092980 80091D80 01EEC821 */ addu $t9, $t7, $t6 +/* 092984 80091D84 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092988 80091D88 2408000C */ li $t0, 12 +/* 09298C 80091D8C 8D470220 */ lw $a3, 0x220($t2) +/* 092990 80091D90 01B82821 */ addu $a1, $t5, $t8 +/* 092994 80091D94 03293021 */ addu $a2, $t9, $t1 +/* 092998 80091D98 24C60001 */ addiu $a2, $a2, 1 +/* 09299C 80091D9C 24A50001 */ addiu $a1, $a1, 1 +/* 0929A0 80091DA0 AFA80010 */ sw $t0, 0x10($sp) +/* 0929A4 80091DA4 0C031110 */ jal draw_text +/* 0929A8 80091DA8 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 0929AC 80091DAC 240B00FF */ li $t3, 255 +/* 0929B0 80091DB0 AFAB0010 */ sw $t3, 0x10($sp) +/* 0929B4 80091DB4 240400FF */ li $a0, 255 +/* 0929B8 80091DB8 240500FF */ li $a1, 255 +/* 0929BC 80091DBC 240600FF */ li $a2, 255 +/* 0929C0 80091DC0 0C0310E1 */ jal set_text_colour +/* 0929C4 80091DC4 00003825 */ move $a3, $zero +/* 0929C8 80091DC8 8658000E */ lh $t8, 0xe($s2) +/* 0929CC 80091DCC 864F0002 */ lh $t7, 2($s2) +/* 0929D0 80091DD0 3C09800E */ lui $t1, %hi(gMenuText) # $t1, 0x800e +/* 0929D4 80091DD4 8D29F4A0 */ lw $t1, %lo(gMenuText)($t1) +/* 0929D8 80091DD8 864C000C */ lh $t4, 0xc($s2) +/* 0929DC 80091DDC 864D0000 */ lh $t5, ($s2) +/* 0929E0 80091DE0 8FB90080 */ lw $t9, 0x80($sp) +/* 0929E4 80091DE4 030F7021 */ addu $t6, $t8, $t7 +/* 0929E8 80091DE8 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 0929EC 80091DEC 240A000C */ li $t2, 12 +/* 0929F0 80091DF0 8D270220 */ lw $a3, 0x220($t1) +/* 0929F4 80091DF4 018D2821 */ addu $a1, $t4, $t5 +/* 0929F8 80091DF8 01D93021 */ addu $a2, $t6, $t9 +/* 0929FC 80091DFC 24C6FFFF */ addiu $a2, $a2, -1 +/* 092A00 80091E00 24A5FFFF */ addiu $a1, $a1, -1 +/* 092A04 80091E04 AFAA0010 */ sw $t2, 0x10($sp) +/* 092A08 80091E08 0C031110 */ jal draw_text +/* 092A0C 80091E0C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092A10 80091E10 0C01A142 */ jal func_80068508 +/* 092A14 80091E14 24040001 */ li $a0, 1 +/* 092A18 80091E18 0C01EFC7 */ jal func_8007BF1C +/* 092A1C 80091E1C 00002025 */ move $a0, $zero +/* 092A20 80091E20 3C15800E */ lui $s5, %hi(gMultiplayerSelectedNumberOfRacers) # $s5, 0x800e +/* 092A24 80091E24 3C11800E */ lui $s1, %hi(sMenuGuiColourB) # $s1, 0x800e +/* 092A28 80091E28 3C10800E */ lui $s0, %hi(sMenuGuiColourG) # $s0, 0x800e +/* 092A2C 80091E2C 2610F4A8 */ addiu $s0, %lo(sMenuGuiColourG) # addiu $s0, $s0, -0xb58 +/* 092A30 80091E30 2631F4AC */ addiu $s1, %lo(sMenuGuiColourB) # addiu $s1, $s1, -0xb54 +/* 092A34 80091E34 26B50410 */ addiu $s5, %lo(gMultiplayerSelectedNumberOfRacers) # addiu $s5, $s5, 0x410 +/* 092A38 80091E38 0000A025 */ move $s4, $zero +/* 092A3C 80091E3C 241300FF */ li $s3, 255 +.L80091E40: +/* 092A40 80091E40 8EA80000 */ lw $t0, ($s5) +/* 092A44 80091E44 3C0B8012 */ lui $t3, %hi(D_801263E0) # $t3, 0x8012 +/* 092A48 80091E48 1688000D */ bne $s4, $t0, .L80091E80 +/* 092A4C 80091E4C 00141040 */ sll $v0, $s4, 1 +/* 092A50 80091E50 8D6B63E0 */ lw $t3, %lo(D_801263E0)($t3) +/* 092A54 80091E54 8FAC0084 */ lw $t4, 0x84($sp) +/* 092A58 80091E58 29610003 */ slti $at, $t3, 3 +/* 092A5C 80091E5C 10200005 */ beqz $at, .L80091E74 +/* 092A60 80091E60 240D00FF */ li $t5, 255 +/* 092A64 80091E64 01AC1023 */ subu $v0, $t5, $t4 +/* 092A68 80091E68 A2020000 */ sb $v0, ($s0) +/* 092A6C 80091E6C 10000003 */ b .L80091E7C +/* 092A70 80091E70 A2220000 */ sb $v0, ($s1) +.L80091E74: +/* 092A74 80091E74 A2000000 */ sb $zero, ($s0) +/* 092A78 80091E78 A2200000 */ sb $zero, ($s1) +.L80091E7C: +/* 092A7C 80091E7C 00141040 */ sll $v0, $s4, 1 +.L80091E80: +/* 092A80 80091E80 0002C040 */ sll $t8, $v0, 1 +/* 092A84 80091E84 02581821 */ addu $v1, $s2, $t8 +/* 092A88 80091E88 846F0010 */ lh $t7, 0x10($v1) +/* 092A8C 80091E8C 864E0000 */ lh $t6, ($s2) +/* 092A90 80091E90 3C05800E */ lui $a1, %hi(gMenuImageStack) # $a1, 0x800e +/* 092A94 80091E94 01EEC821 */ addu $t9, $t7, $t6 +/* 092A98 80091E98 2729FF60 */ addiu $t1, $t9, -0xa0 +/* 092A9C 80091E9C 44892000 */ mtc1 $t1, $f4 +/* 092AA0 80091EA0 24A5F75C */ addiu $a1, %lo(gMenuImageStack) # addiu $a1, $a1, -0x8a4 +/* 092AA4 80091EA4 468021A0 */ cvt.s.w $f6, $f4 +/* 092AA8 80091EA8 8CAA0000 */ lw $t2, ($a1) +/* 092AAC 80091EAC 244E0002 */ addiu $t6, $v0, 2 +/* 092AB0 80091EB0 E546000C */ swc1 $f6, 0xc($t2) +/* 092AB4 80091EB4 84680012 */ lh $t0, 0x12($v1) +/* 092AB8 80091EB8 864D0002 */ lh $t5, 2($s2) +/* 092ABC 80091EBC 00085823 */ negu $t3, $t0 +/* 092AC0 80091EC0 016D6023 */ subu $t4, $t3, $t5 +/* 092AC4 80091EC4 25980078 */ addiu $t8, $t4, 0x78 +/* 092AC8 80091EC8 44984000 */ mtc1 $t8, $f8 +/* 092ACC 80091ECC 8CAF0000 */ lw $t7, ($a1) +/* 092AD0 80091ED0 468042A0 */ cvt.s.w $f10, $f8 +/* 092AD4 80091ED4 00002025 */ move $a0, $zero +/* 092AD8 80091ED8 E5EA0010 */ swc1 $f10, 0x10($t7) +/* 092ADC 80091EDC 8CB90000 */ lw $t9, ($a1) +/* 092AE0 80091EE0 0C027298 */ jal func_8009CA60 +/* 092AE4 80091EE4 A72E0018 */ sh $t6, 0x18($t9) +/* 092AE8 80091EE8 26940001 */ addiu $s4, $s4, 1 +/* 092AEC 80091EEC A2130000 */ sb $s3, ($s0) +/* 092AF0 80091EF0 1696FFD3 */ bne $s4, $s6, .L80091E40 +/* 092AF4 80091EF4 A2330000 */ sb $s3, ($s1) +/* 092AF8 80091EF8 0C01EFC7 */ jal func_8007BF1C +/* 092AFC 80091EFC 24040001 */ li $a0, 1 +/* 092B00 80091F00 0C01A142 */ jal func_80068508 +/* 092B04 80091F04 00002025 */ move $a0, $zero +.L80091F08: +/* 092B08 80091F08 3C098012 */ lui $t1, %hi(D_801269C8) # $t1, 0x8012 +/* 092B0C 80091F0C 8D2969C8 */ lw $t1, %lo(D_801269C8)($t1) +/* 092B10 80091F10 24160003 */ li $s6, 3 +/* 092B14 80091F14 29210004 */ slti $at, $t1, 4 +/* 092B18 80091F18 1020003D */ beqz $at, .L80092010 +/* 092B1C 80091F1C 00000000 */ nop +/* 092B20 80091F20 0C01EFC7 */ jal func_8007BF1C +/* 092B24 80091F24 00002025 */ move $a0, $zero +/* 092B28 80091F28 3C0A800E */ lui $t2, %hi(gIsInAdventureTwo) # $t2, 0x800e +/* 092B2C 80091F2C 8D4AF494 */ lw $t2, %lo(gIsInAdventureTwo)($t2) +/* 092B30 80091F30 2415000B */ li $s5, 11 +/* 092B34 80091F34 11400002 */ beqz $t2, .L80091F40 +/* 092B38 80091F38 3C014228 */ li $at, 0x42280000 # 42.000000 +/* 092B3C 80091F3C 2415000C */ li $s5, 12 +.L80091F40: +/* 092B40 80091F40 3C08800E */ lui $t0, %hi(gMenuImageStack) # $t0, 0x800e +/* 092B44 80091F44 8D08F75C */ lw $t0, %lo(gMenuImageStack)($t0) +/* 092B48 80091F48 44818000 */ mtc1 $at, $f16 +/* 092B4C 80091F4C 00158140 */ sll $s0, $s5, 5 +/* 092B50 80091F50 01105821 */ addu $t3, $t0, $s0 +/* 092B54 80091F54 E5700010 */ swc1 $f16, 0x10($t3) +/* 092B58 80091F58 8FAD0070 */ lw $t5, 0x70($sp) +/* 092B5C 80091F5C 3C18800E */ lui $t8, %hi(gTrackIdForPreview) # $t8, 0x800e +/* 092B60 80091F60 8F18F4C4 */ lw $t8, %lo(gTrackIdForPreview)($t8) +/* 092B64 80091F64 8DAC0004 */ lw $t4, 4($t5) +/* 092B68 80091F68 00187880 */ sll $t7, $t8, 2 +/* 092B6C 80091F6C 018F7021 */ addu $t6, $t4, $t7 +/* 092B70 80091F70 8DD90000 */ lw $t9, ($t6) +/* 092B74 80091F74 00000000 */ nop +/* 092B78 80091F78 33290002 */ andi $t1, $t9, 2 +/* 092B7C 80091F7C 15200004 */ bnez $t1, .L80091F90 +/* 092B80 80091F80 00000000 */ nop +/* 092B84 80091F84 0C027B18 */ jal is_adventure_two_unlocked +/* 092B88 80091F88 00000000 */ nop +/* 092B8C 80091F8C 10400008 */ beqz $v0, .L80091FB0 +.L80091F90: +/* 092B90 80091F90 3C0A800E */ lui $t2, %hi(gMenuImageStack) # $t2, 0x800e +/* 092B94 80091F94 8D4AF75C */ lw $t2, %lo(gMenuImageStack)($t2) +/* 092B98 80091F98 3C01C300 */ li $at, 0xC3000000 # -128.000000 +/* 092B9C 80091F9C 44819000 */ mtc1 $at, $f18 +/* 092BA0 80091FA0 01504021 */ addu $t0, $t2, $s0 +/* 092BA4 80091FA4 02A02025 */ move $a0, $s5 +/* 092BA8 80091FA8 0C027298 */ jal func_8009CA60 +/* 092BAC 80091FAC E512000C */ swc1 $f18, 0xc($t0) +.L80091FB0: +/* 092BB0 80091FB0 8FAB0070 */ lw $t3, 0x70($sp) +/* 092BB4 80091FB4 3C18800E */ lui $t8, %hi(gTrackIdForPreview) # $t8, 0x800e +/* 092BB8 80091FB8 8F18F4C4 */ lw $t8, %lo(gTrackIdForPreview)($t8) +/* 092BBC 80091FBC 8D6D0004 */ lw $t5, 4($t3) +/* 092BC0 80091FC0 00186080 */ sll $t4, $t8, 2 +/* 092BC4 80091FC4 01AC7821 */ addu $t7, $t5, $t4 +/* 092BC8 80091FC8 8DEE0000 */ lw $t6, ($t7) +/* 092BCC 80091FCC 00000000 */ nop +/* 092BD0 80091FD0 31D90004 */ andi $t9, $t6, 4 +/* 092BD4 80091FD4 17200004 */ bnez $t9, .L80091FE8 +/* 092BD8 80091FD8 00000000 */ nop +/* 092BDC 80091FDC 0C027B18 */ jal is_adventure_two_unlocked +/* 092BE0 80091FE0 00000000 */ nop +/* 092BE4 80091FE4 10400008 */ beqz $v0, .L80092008 +.L80091FE8: +/* 092BE8 80091FE8 3C09800E */ lui $t1, %hi(gMenuImageStack) # $t1, 0x800e +/* 092BEC 80091FEC 8D29F75C */ lw $t1, %lo(gMenuImageStack)($t1) +/* 092BF0 80091FF0 3C0142F0 */ li $at, 0x42F00000 # 120.000000 +/* 092BF4 80091FF4 44812000 */ mtc1 $at, $f4 +/* 092BF8 80091FF8 01305021 */ addu $t2, $t1, $s0 +/* 092BFC 80091FFC 02A02025 */ move $a0, $s5 +/* 092C00 80092000 0C027298 */ jal func_8009CA60 +/* 092C04 80092004 E544000C */ swc1 $f4, 0xc($t2) +.L80092008: +/* 092C08 80092008 0C01EFC7 */ jal func_8007BF1C +/* 092C0C 8009200C 24040001 */ li $a0, 1 +.L80092010: +/* 092C10 80092010 3C08800E */ lui $t0, %hi(gNumberOfActivePlayers) # $t0, 0x800e +/* 092C14 80092014 8D08F4BC */ lw $t0, %lo(gNumberOfActivePlayers)($t0) +/* 092C18 80092018 24010001 */ li $at, 1 +/* 092C1C 8009201C 1501001C */ bne $t0, $at, .L80092090 +/* 092C20 80092020 3C0B8012 */ lui $t3, %hi(D_801263E0) # $t3, 0x8012 +/* 092C24 80092024 8D6B63E0 */ lw $t3, %lo(D_801263E0)($t3) +/* 092C28 80092028 3C04800E */ lui $a0, %hi(gTrackIdForPreview) # $a0, 0x800e +/* 092C2C 8009202C 05600018 */ bltz $t3, .L80092090 +/* 092C30 80092030 00000000 */ nop +/* 092C34 80092034 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) +/* 092C38 80092038 0C024AF8 */ jal func_80092BE0 +/* 092C3C 8009203C 00000000 */ nop +/* 092C40 80092040 04400013 */ bltz $v0, .L80092090 +/* 092C44 80092044 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092C48 80092048 8FA70080 */ lw $a3, 0x80($sp) +/* 092C4C 8009204C 8FCF0000 */ lw $t7, ($fp) +/* 092C50 80092050 3C05800E */ lui $a1, %hi(gRaceSelectionTTTexture) # $a1, 0x800e +/* 092C54 80092054 241800FF */ li $t8, 255 +/* 092C58 80092058 240D00FF */ li $t5, 255 +/* 092C5C 8009205C 240C00FF */ li $t4, 255 +/* 092C60 80092060 AFAC0018 */ sw $t4, 0x18($sp) +/* 092C64 80092064 AFAD0014 */ sw $t5, 0x14($sp) +/* 092C68 80092068 AFB80010 */ sw $t8, 0x10($sp) +/* 092C6C 8009206C 24A50614 */ addiu $a1, %lo(gRaceSelectionTTTexture) # addiu $a1, $a1, 0x614 +/* 092C70 80092070 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092C74 80092074 240600CC */ li $a2, 204 +/* 092C78 80092078 24E7007A */ addiu $a3, $a3, 0x7a +/* 092C7C 8009207C 0C01E2AE */ jal render_textured_rectangle +/* 092C80 80092080 AFAF001C */ sw $t7, 0x1c($sp) +/* 092C84 80092084 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092C88 80092088 0C01ECF4 */ jal func_8007B3D0 +/* 092C8C 8009208C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +.L80092090: +/* 092C90 80092090 3C0E8012 */ lui $t6, %hi(D_801269C8) # $t6, 0x8012 +/* 092C94 80092094 8DCE69C8 */ lw $t6, %lo(D_801269C8)($t6) +/* 092C98 80092098 24010005 */ li $at, 5 +/* 092C9C 8009209C 11C1002C */ beq $t6, $at, .L80092150 +/* 092CA0 800920A0 3C028012 */ lui $v0, %hi(D_801263E0) # $v0, 0x8012 +/* 092CA4 800920A4 8C4263E0 */ lw $v0, %lo(D_801263E0)($v0) +/* 092CA8 800920A8 24010002 */ li $at, 2 +/* 092CAC 800920AC 14410005 */ bne $v0, $at, .L800920C4 +/* 092CB0 800920B0 00000000 */ nop +/* 092CB4 800920B4 8FB90074 */ lw $t9, 0x74($sp) +/* 092CB8 800920B8 00000000 */ nop +/* 092CBC 800920BC 13200009 */ beqz $t9, .L800920E4 +/* 092CC0 800920C0 00000000 */ nop +.L800920C4: +/* 092CC4 800920C4 16C20005 */ bne $s6, $v0, .L800920DC +/* 092CC8 800920C8 24010004 */ li $at, 4 +/* 092CCC 800920CC 8FA90074 */ lw $t1, 0x74($sp) +/* 092CD0 800920D0 00000000 */ nop +/* 092CD4 800920D4 15200003 */ bnez $t1, .L800920E4 +/* 092CD8 800920D8 00000000 */ nop +.L800920DC: +/* 092CDC 800920DC 1441001D */ bne $v0, $at, .L80092154 +/* 092CE0 800920E0 240C00FF */ li $t4, 255 +.L800920E4: +/* 092CE4 800920E4 0C0310BB */ jal set_text_font +/* 092CE8 800920E8 24040002 */ li $a0, 2 +/* 092CEC 800920EC 8FCA0000 */ lw $t2, ($fp) +/* 092CF0 800920F0 240400FF */ li $a0, 255 +/* 092CF4 800920F4 240500FF */ li $a1, 255 +/* 092CF8 800920F8 240600FF */ li $a2, 255 +/* 092CFC 800920FC 00003825 */ move $a3, $zero +/* 092D00 80092100 0C0310E1 */ jal set_text_colour +/* 092D04 80092104 AFAA0010 */ sw $t2, 0x10($sp) +/* 092D08 80092108 3C088012 */ lui $t0, %hi(D_801269C8) # $t0, 0x8012 +/* 092D0C 8009210C 8D0869C8 */ lw $t0, %lo(D_801269C8)($t0) +/* 092D10 80092110 3C048012 */ lui $a0, %hi(sMenuCurrDisplayList) # $a0, 0x8012 +/* 092D14 80092114 29010004 */ slti $at, $t0, 4 +/* 092D18 80092118 14200005 */ bnez $at, .L80092130 +/* 092D1C 8009211C 248463A0 */ addiu $a0, %lo(sMenuCurrDisplayList) # addiu $a0, $a0, 0x63a0 +/* 092D20 80092120 8FAB0080 */ lw $t3, 0x80($sp) +/* 092D24 80092124 00000000 */ nop +/* 092D28 80092128 25780018 */ addiu $t8, $t3, 0x18 +/* 092D2C 8009212C AFB80080 */ sw $t8, 0x80($sp) +.L80092130: +/* 092D30 80092130 8FA60080 */ lw $a2, 0x80($sp) +/* 092D34 80092134 3C07800F */ lui $a3, %hi(D_800E823C) # $a3, 0x800f +/* 092D38 80092138 240D000C */ li $t5, 12 +/* 092D3C 8009213C AFAD0010 */ sw $t5, 0x10($sp) +/* 092D40 80092140 24E7823C */ addiu $a3, %lo(D_800E823C) # addiu $a3, $a3, -0x7dc4 +/* 092D44 80092144 240500A0 */ li $a1, 160 +/* 092D48 80092148 0C031110 */ jal draw_text +/* 092D4C 8009214C 24C600AC */ addiu $a2, $a2, 0xac +.L80092150: +/* 092D50 80092150 240C00FF */ li $t4, 255 +.L80092154: +/* 092D54 80092154 AFCC0000 */ sw $t4, ($fp) +.L80092158: +/* 092D58 80092158 8FBF0054 */ lw $ra, 0x54($sp) +/* 092D5C 8009215C 8FB00030 */ lw $s0, 0x30($sp) +/* 092D60 80092160 8FB10034 */ lw $s1, 0x34($sp) +/* 092D64 80092164 8FB20038 */ lw $s2, 0x38($sp) +/* 092D68 80092168 8FB3003C */ lw $s3, 0x3c($sp) +/* 092D6C 8009216C 8FB40040 */ lw $s4, 0x40($sp) +/* 092D70 80092170 8FB50044 */ lw $s5, 0x44($sp) +/* 092D74 80092174 8FB60048 */ lw $s6, 0x48($sp) +/* 092D78 80092178 8FB7004C */ lw $s7, 0x4c($sp) +/* 092D7C 8009217C 8FBE0050 */ lw $fp, 0x50($sp) +/* 092D80 80092180 03E00008 */ jr $ra +/* 092D84 80092184 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/objects/func_8000B290.s b/asm/non_matchings/objects/func_8000B290.s deleted file mode 100644 index 55e0f95b..00000000 --- a/asm/non_matchings/objects/func_8000B290.s +++ /dev/null @@ -1,71 +0,0 @@ -glabel func_8000B290 -/* 00BE90 8000B290 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 00BE94 8000B294 AFB00018 */ sw $s0, 0x18($sp) -/* 00BE98 8000B298 3C10800E */ lui $s0, %hi(D_800DC754) # $s0, 0x800e -/* 00BE9C 8000B29C 2610C754 */ addiu $s0, %lo(D_800DC754) # addiu $s0, $s0, -0x38ac -/* 00BEA0 8000B2A0 8E040000 */ lw $a0, ($s0) -/* 00BEA4 8000B2A4 AFBF0024 */ sw $ra, 0x24($sp) -/* 00BEA8 8000B2A8 AFB20020 */ sw $s2, 0x20($sp) -/* 00BEAC 8000B2AC 10800009 */ beqz $a0, .L8000B2D4 -/* 00BEB0 8000B2B0 AFB1001C */ sw $s1, 0x1c($sp) -/* 00BEB4 8000B2B4 0C01C450 */ jal free_from_memory_pool -/* 00BEB8 8000B2B8 00000000 */ nop -/* 00BEBC 8000B2BC 3C02800E */ lui $v0, %hi(D_800DC74C) # $v0, 0x800e -/* 00BEC0 8000B2C0 2442C74C */ addiu $v0, %lo(D_800DC74C) # addiu $v0, $v0, -0x38b4 -/* 00BEC4 8000B2C4 AE000000 */ sw $zero, ($s0) -/* 00BEC8 8000B2C8 AE000004 */ sw $zero, 4($s0) -/* 00BECC 8000B2CC AC400000 */ sw $zero, ($v0) -/* 00BED0 8000B2D0 AC400004 */ sw $zero, 4($v0) -.L8000B2D4: -/* 00BED4 8000B2D4 0C0078A7 */ jal get_misc_asset -/* 00BED8 8000B2D8 24040014 */ li $a0, 20 -/* 00BEDC 8000B2DC 00008825 */ move $s1, $zero -/* 00BEE0 8000B2E0 00408025 */ move $s0, $v0 -/* 00BEE4 8000B2E4 24120500 */ li $s2, 1280 -.L8000B2E8: -/* 00BEE8 8000B2E8 8E040078 */ lw $a0, 0x78($s0) -/* 00BEEC 8000B2EC 00000000 */ nop -/* 00BEF0 8000B2F0 10800004 */ beqz $a0, .L8000B304 -/* 00BEF4 8000B2F4 00000000 */ nop -/* 00BEF8 8000B2F8 0C01F32C */ jal free_sprite -/* 00BEFC 8000B2FC 00000000 */ nop -/* 00BF00 8000B300 AE000078 */ sw $zero, 0x78($s0) -.L8000B304: -/* 00BF04 8000B304 8E04007C */ lw $a0, 0x7c($s0) -/* 00BF08 8000B308 00000000 */ nop -/* 00BF0C 8000B30C 10800004 */ beqz $a0, .L8000B320 -/* 00BF10 8000B310 00000000 */ nop -/* 00BF14 8000B314 0C01ECAF */ jal free_texture -/* 00BF18 8000B318 00000000 */ nop -/* 00BF1C 8000B31C AE00007C */ sw $zero, 0x7c($s0) -.L8000B320: -/* 00BF20 8000B320 26310080 */ addiu $s1, $s1, 0x80 -/* 00BF24 8000B324 1632FFF0 */ bne $s1, $s2, .L8000B2E8 -/* 00BF28 8000B328 26100080 */ addiu $s0, $s0, 0x80 -/* 00BF2C 8000B32C 3C10800E */ lui $s0, %hi(D_800DC75C) # $s0, 0x800e -/* 00BF30 8000B330 2610C75C */ addiu $s0, %lo(D_800DC75C) # addiu $s0, $s0, -0x38a4 -/* 00BF34 8000B334 8E040000 */ lw $a0, ($s0) -/* 00BF38 8000B338 00000000 */ nop -/* 00BF3C 8000B33C 10800003 */ beqz $a0, .L8000B34C -/* 00BF40 8000B340 00000000 */ nop -/* 00BF44 8000B344 0C003FEE */ jal gParticlePtrList_addObject -/* 00BF48 8000B348 00000000 */ nop -.L8000B34C: -/* 00BF4C 8000B34C 3C11800E */ lui $s1, %hi(D_800DC764) # $s1, 0x800e -/* 00BF50 8000B350 2631C764 */ addiu $s1, %lo(D_800DC764) # addiu $s1, $s1, -0x389c -/* 00BF54 8000B354 8E240000 */ lw $a0, ($s1) -/* 00BF58 8000B358 AE000000 */ sw $zero, ($s0) -/* 00BF5C 8000B35C 10800003 */ beqz $a0, .L8000B36C -/* 00BF60 8000B360 00000000 */ nop -/* 00BF64 8000B364 0C003FEE */ jal gParticlePtrList_addObject -/* 00BF68 8000B368 00000000 */ nop -.L8000B36C: -/* 00BF6C 8000B36C 0C004013 */ jal gParticlePtrList_flush -/* 00BF70 8000B370 AE200000 */ sw $zero, ($s1) -/* 00BF74 8000B374 8FBF0024 */ lw $ra, 0x24($sp) -/* 00BF78 8000B378 8FB00018 */ lw $s0, 0x18($sp) -/* 00BF7C 8000B37C 8FB1001C */ lw $s1, 0x1c($sp) -/* 00BF80 8000B380 8FB20020 */ lw $s2, 0x20($sp) -/* 00BF84 8000B384 03E00008 */ jr $ra -/* 00BF88 8000B388 27BD0028 */ addiu $sp, $sp, 0x28 - diff --git a/asm/non_matchings/objects/func_8000E2B4.s b/asm/non_matchings/objects/func_8000E2B4.s deleted file mode 100644 index 1281f7d4..00000000 --- a/asm/non_matchings/objects/func_8000E2B4.s +++ /dev/null @@ -1,146 +0,0 @@ -.late_rodata -glabel D_800E51AC -.float 1.4 -glabel D_800E51B0 -.float 0.714 - -.text -glabel func_8000E2B4 -/* 00EEB4 8000E2B4 3C038012 */ lui $v1, %hi(D_8011AD44) # $v1, 0x8012 -/* 00EEB8 8000E2B8 2463AD44 */ addiu $v1, %lo(D_8011AD44) # addiu $v1, $v1, -0x52bc -/* 00EEBC 8000E2BC 80620000 */ lb $v0, ($v1) -/* 00EEC0 8000E2C0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 00EEC4 8000E2C4 10400079 */ beqz $v0, .L8000E4AC -/* 00EEC8 8000E2C8 AFBF0014 */ sw $ra, 0x14($sp) -/* 00EECC 8000E2CC 244EFFFF */ addiu $t6, $v0, -1 -/* 00EED0 8000E2D0 A06E0000 */ sb $t6, ($v1) -/* 00EED4 8000E2D4 806F0000 */ lb $t7, ($v1) -/* 00EED8 8000E2D8 00000000 */ nop -/* 00EEDC 8000E2DC 15E00074 */ bnez $t7, .L8000E4B0 -/* 00EEE0 8000E2E0 8FBF0014 */ lw $ra, 0x14($sp) -/* 00EEE4 8000E2E4 0C01BAA4 */ jal get_settings -/* 00EEE8 8000E2E8 00000000 */ nop -/* 00EEEC 8000E2EC 3C048012 */ lui $a0, %hi(D_8011AD45) # $a0, 0x8012 -/* 00EEF0 8000E2F0 8084AD45 */ lb $a0, %lo(D_8011AD45)($a0) -/* 00EEF4 8000E2F4 24180010 */ li $t8, 16 -/* 00EEF8 8000E2F8 28810005 */ slti $at, $a0, 5 -/* 00EEFC 8000E2FC AFA20028 */ sw $v0, 0x28($sp) -/* 00EF00 8000E300 A7A0003A */ sh $zero, 0x3a($sp) -/* 00EF04 8000E304 1020000C */ beqz $at, .L8000E338 -/* 00EF08 8000E308 A3B8002D */ sb $t8, 0x2d($sp) -/* 00EF0C 8000E30C 80590059 */ lb $t9, 0x59($v0) -/* 00EF10 8000E310 00044880 */ sll $t1, $a0, 2 -/* 00EF14 8000E314 01244821 */ addu $t1, $t1, $a0 -/* 00EF18 8000E318 00095080 */ sll $t2, $t1, 2 -/* 00EF1C 8000E31C 00194040 */ sll $t0, $t9, 1 -/* 00EF20 8000E320 010A5821 */ addu $t3, $t0, $t2 -/* 00EF24 8000E324 3C03800E */ lui $v1, %hi(D_800DC7A8) # $v1, 0x800e -/* 00EF28 8000E328 006B1821 */ addu $v1, $v1, $t3 -/* 00EF2C 8000E32C 8463C7A8 */ lh $v1, %lo(D_800DC7A8)($v1) -/* 00EF30 8000E330 10000006 */ b .L8000E34C -/* 00EF34 8000E334 00000000 */ nop -.L8000E338: -/* 00EF38 8000E338 00046040 */ sll $t4, $a0, 1 -# Indexing into D_800DC7B8 starting at index 37? -/* 00EF3C 8000E33C 3C03800E */ lui $v1, %hi(D_800DC7B8) # $v1, 0x800e -/* 00EF40 8000E340 006C1821 */ addu $v1, $v1, $t4 -/* 00EF44 8000E344 8463C802 */ lh $v1, %lo(D_800DC7B8+0x4A)/*-0x37fe*/($v1) -/* 00EF48 8000E348 00000000 */ nop -.L8000E34C: -/* 00EF4C 8000E34C 0C01B6C5 */ jal set_level_default_vehicle -/* 00EF50 8000E350 A7A30022 */ sh $v1, 0x22($sp) -/* 00EF54 8000E354 87A30022 */ lh $v1, 0x22($sp) -/* 00EF58 8000E358 93AD002D */ lbu $t5, 0x2d($sp) -/* 00EF5C 8000E35C 3C198012 */ lui $t9, %hi(D_8011AD46) # $t9, 0x8012 -/* 00EF60 8000E360 3C098012 */ lui $t1, %hi(D_8011AD48) # $t1, 0x8012 -/* 00EF64 8000E364 3C088012 */ lui $t0, %hi(D_8011AD4A) # $t0, 0x8012 -/* 00EF68 8000E368 3C0A8012 */ lui $t2, %hi(D_8011AD4C) # $t2, 0x8012 -/* 00EF6C 8000E36C 306E0100 */ andi $t6, $v1, 0x100 -/* 00EF70 8000E370 8739AD46 */ lh $t9, %lo(D_8011AD46)($t9) -/* 00EF74 8000E374 8529AD48 */ lh $t1, %lo(D_8011AD48)($t1) -/* 00EF78 8000E378 8508AD4A */ lh $t0, %lo(D_8011AD4A)($t0) -/* 00EF7C 8000E37C 854AAD4C */ lh $t2, %lo(D_8011AD4C)($t2) -/* 00EF80 8000E380 000E7843 */ sra $t7, $t6, 1 -/* 00EF84 8000E384 01AFC025 */ or $t8, $t5, $t7 -/* 00EF88 8000E388 A3B8002D */ sb $t8, 0x2d($sp) -/* 00EF8C 8000E38C A7A00036 */ sh $zero, 0x36($sp) -/* 00EF90 8000E390 A7A00034 */ sh $zero, 0x34($sp) -/* 00EF94 8000E394 24040001 */ li $a0, 1 -/* 00EF98 8000E398 A3A3002C */ sb $v1, 0x2c($sp) -/* 00EF9C 8000E39C A7B9002E */ sh $t9, 0x2e($sp) -/* 00EFA0 8000E3A0 A7A90030 */ sh $t1, 0x30($sp) -/* 00EFA4 8000E3A4 A7A80032 */ sh $t0, 0x32($sp) -/* 00EFA8 8000E3A8 0C01486E */ jal func_800521B8 -/* 00EFAC 8000E3AC A7AA0038 */ sh $t2, 0x38($sp) -/* 00EFB0 8000E3B0 27A4002C */ addiu $a0, $sp, 0x2c -/* 00EFB4 8000E3B4 0C003A95 */ jal spawn_object -/* 00EFB8 8000E3B8 24050011 */ li $a1, 17 -/* 00EFBC 8000E3BC 3C0C8012 */ lui $t4, %hi(gObjectStructArrayPtr) # $t4, 0x8012 -/* 00EFC0 8000E3C0 8D8CAEE4 */ lw $t4, %lo(gObjectStructArrayPtr)($t4) -/* 00EFC4 8000E3C4 240B0001 */ li $t3, 1 -/* 00EFC8 8000E3C8 3C018012 */ lui $at, %hi(gObjectCount) # $at, 0x8012 -/* 00EFCC 8000E3CC AC2BAEF0 */ sw $t3, %lo(gObjectCount)($at) -/* 00EFD0 8000E3D0 3C0E8012 */ lui $t6, %hi(D_8011AEEC) # $t6, 0x8012 -/* 00EFD4 8000E3D4 AD820000 */ sw $v0, ($t4) -/* 00EFD8 8000E3D8 8DCEAEEC */ lw $t6, %lo(D_8011AEEC)($t6) -/* 00EFDC 8000E3DC 3C0D8012 */ lui $t5, %hi(D_8011AEE8) # $t5, 0x8012 -/* 00EFE0 8000E3E0 ADC20000 */ sw $v0, ($t6) -/* 00EFE4 8000E3E4 8DADAEE8 */ lw $t5, %lo(D_8011AEE8)($t5) -/* 00EFE8 8000E3E8 3C058012 */ lui $a1, %hi(D_8011AD45) # $a1, 0x8012 -/* 00EFEC 8000E3EC ADA20000 */ sw $v0, ($t5) -/* 00EFF0 8000E3F0 24A5AD45 */ addiu $a1, %lo(D_8011AD45) # addiu $a1, $a1, -0x52bb -/* 00EFF4 8000E3F4 8C430064 */ lw $v1, 0x64($v0) -/* 00EFF8 8000E3F8 80AF0000 */ lb $t7, ($a1) -/* 00EFFC 8000E3FC 00000000 */ nop -/* 00F000 8000E400 A06F01D6 */ sb $t7, 0x1d6($v1) -/* 00F004 8000E404 80B80000 */ lb $t8, ($a1) -/* 00F008 8000E408 A0600002 */ sb $zero, 2($v1) -/* 00F00C 8000E40C A07801D7 */ sb $t8, 0x1d7($v1) -/* 00F010 8000E410 8FB90028 */ lw $t9, 0x28($sp) -/* 00F014 8000E414 00000000 */ nop -/* 00F018 8000E418 83290059 */ lb $t1, 0x59($t9) -/* 00F01C 8000E41C A4600000 */ sh $zero, ($v1) -/* 00F020 8000E420 AC600118 */ sw $zero, 0x118($v1) -/* 00F024 8000E424 A0690003 */ sb $t1, 3($v1) -/* 00F028 8000E428 0C0270C3 */ jal get_filtered_cheats -/* 00F02C 8000E42C AFA2003C */ sw $v0, 0x3c($sp) -/* 00F030 8000E430 8FA4003C */ lw $a0, 0x3c($sp) -/* 00F034 8000E434 30480010 */ andi $t0, $v0, 0x10 -/* 00F038 8000E438 11000006 */ beqz $t0, .L8000E454 -/* 00F03C 8000E43C 3C01800E */ lui $at, %hi(D_800E51AC) # $at, 0x800e -/* 00F040 8000E440 C4840008 */ lwc1 $f4, 8($a0) -/* 00F044 8000E444 C42651AC */ lwc1 $f6, %lo(D_800E51AC)($at) -/* 00F048 8000E448 00000000 */ nop -/* 00F04C 8000E44C 46062202 */ mul.s $f8, $f4, $f6 -/* 00F050 8000E450 E4880008 */ swc1 $f8, 8($a0) -.L8000E454: -/* 00F054 8000E454 0C0270C3 */ jal get_filtered_cheats -/* 00F058 8000E458 AFA4003C */ sw $a0, 0x3c($sp) -/* 00F05C 8000E45C 8FA4003C */ lw $a0, 0x3c($sp) -/* 00F060 8000E460 304A0020 */ andi $t2, $v0, 0x20 -/* 00F064 8000E464 11400007 */ beqz $t2, .L8000E484 -/* 00F068 8000E468 3C0B8012 */ lui $t3, %hi(D_8011AD4C) # $t3, 0x8012 -/* 00F06C 8000E46C 3C01800E */ lui $at, %hi(D_800E51B0) # $at, 0x800e -/* 00F070 8000E470 C43051B0 */ lwc1 $f16, %lo(D_800E51B0)($at) -/* 00F074 8000E474 C48A0008 */ lwc1 $f10, 8($a0) -/* 00F078 8000E478 00000000 */ nop -/* 00F07C 8000E47C 46105482 */ mul.s $f18, $f10, $f16 -/* 00F080 8000E480 E4920008 */ swc1 $f18, 8($a0) -.L8000E484: -/* 00F084 8000E484 AC80003C */ sw $zero, 0x3c($a0) -/* 00F088 8000E488 856BAD4C */ lh $t3, %lo(D_8011AD4C)($t3) -/* 00F08C 8000E48C 3C0C8012 */ lui $t4, %hi(D_8011AD48) # $t4, 0x8012 -/* 00F090 8000E490 A48B0000 */ sh $t3, ($a0) -/* 00F094 8000E494 858CAD48 */ lh $t4, %lo(D_8011AD48)($t4) -/* 00F098 8000E498 00000000 */ nop -/* 00F09C 8000E49C 448C2000 */ mtc1 $t4, $f4 -/* 00F0A0 8000E4A0 00000000 */ nop -/* 00F0A4 8000E4A4 468021A0 */ cvt.s.w $f6, $f4 -/* 00F0A8 8000E4A8 E4860010 */ swc1 $f6, 0x10($a0) -.L8000E4AC: -/* 00F0AC 8000E4AC 8FBF0014 */ lw $ra, 0x14($sp) -.L8000E4B0: -/* 00F0B0 8000E4B0 27BD0040 */ addiu $sp, $sp, 0x40 -/* 00F0B4 8000E4B4 03E00008 */ jr $ra -/* 00F0B8 8000E4B8 00000000 */ nop - diff --git a/asm/non_matchings/objects/gParticlePtrList_flush.s b/asm/non_matchings/objects/gParticlePtrList_flush.s deleted file mode 100644 index 40ba4c2d..00000000 --- a/asm/non_matchings/objects/gParticlePtrList_flush.s +++ /dev/null @@ -1,98 +0,0 @@ -glabel gParticlePtrList_flush -/* 010C4C 8001004C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 010C50 80010050 AFB70030 */ sw $s7, 0x30($sp) -/* 010C54 80010054 3C178012 */ lui $s7, %hi(gParticleCount) # $s7, 0x8012 -/* 010C58 80010058 3C018012 */ lui $at, %hi(D_8011AE88) # $at, 0x8012 -/* 010C5C 8001005C 26F7AEC8 */ addiu $s7, %lo(gParticleCount) # addiu $s7, $s7, -0x5138 -/* 010C60 80010060 AC20AE88 */ sw $zero, %lo(D_8011AE88)($at) -/* 010C64 80010064 8EEE0000 */ lw $t6, ($s7) -/* 010C68 80010068 AFB30020 */ sw $s3, 0x20($sp) -/* 010C6C 8001006C AFBF0034 */ sw $ra, 0x34($sp) -/* 010C70 80010070 AFB6002C */ sw $s6, 0x2c($sp) -/* 010C74 80010074 AFB50028 */ sw $s5, 0x28($sp) -/* 010C78 80010078 AFB40024 */ sw $s4, 0x24($sp) -/* 010C7C 8001007C AFB2001C */ sw $s2, 0x1c($sp) -/* 010C80 80010080 AFB10018 */ sw $s1, 0x18($sp) -/* 010C84 80010084 AFB00014 */ sw $s0, 0x14($sp) -/* 010C88 80010088 19C0003C */ blez $t6, .L8001017C -/* 010C8C 8001008C 00009825 */ move $s3, $zero -/* 010C90 80010090 3C158012 */ lui $s5, %hi(gParticlePtrList) # $s5, 0x8012 -/* 010C94 80010094 3C148012 */ lui $s4, %hi(D_8011AE7C) # $s4, 0x8012 -/* 010C98 80010098 3C118012 */ lui $s1, %hi(gObjPtrList) # $s1, 0x8012 -/* 010C9C 8001009C 3C108012 */ lui $s0, %hi(objCount) # $s0, 0x8012 -/* 010CA0 800100A0 2610AE5C */ addiu $s0, %lo(objCount) # addiu $s0, $s0, -0x51a4 -/* 010CA4 800100A4 2631AE58 */ addiu $s1, %lo(gObjPtrList) # addiu $s1, $s1, -0x51a8 -/* 010CA8 800100A8 2694AE7C */ addiu $s4, %lo(D_8011AE7C) # addiu $s4, $s4, -0x5184 -/* 010CAC 800100AC 26B5AEC4 */ addiu $s5, %lo(gParticlePtrList) # addiu $s5, $s5, -0x513c -/* 010CB0 800100B0 00009025 */ move $s2, $zero -/* 010CB4 800100B4 2416FFFF */ li $s6, -1 -.L800100B8: -/* 010CB8 800100B8 8EAF0000 */ lw $t7, ($s5) -/* 010CBC 800100BC 8E050000 */ lw $a1, ($s0) -/* 010CC0 800100C0 01F2C021 */ addu $t8, $t7, $s2 -/* 010CC4 800100C4 8F060000 */ lw $a2, ($t8) -/* 010CC8 800100C8 02C02025 */ move $a0, $s6 -/* 010CCC 800100CC 18A0000C */ blez $a1, .L80010100 -/* 010CD0 800100D0 00001825 */ move $v1, $zero -/* 010CD4 800100D4 8E220000 */ lw $v0, ($s1) -/* 010CD8 800100D8 00000000 */ nop -.L800100DC: -/* 010CDC 800100DC 8C590000 */ lw $t9, ($v0) -/* 010CE0 800100E0 00000000 */ nop -/* 010CE4 800100E4 14D90002 */ bne $a2, $t9, .L800100F0 -/* 010CE8 800100E8 00000000 */ nop -/* 010CEC 800100EC 00602025 */ move $a0, $v1 -.L800100F0: -/* 010CF0 800100F0 24630001 */ addiu $v1, $v1, 1 -/* 010CF4 800100F4 0065082A */ slt $at, $v1, $a1 -/* 010CF8 800100F8 1420FFF8 */ bnez $at, .L800100DC -/* 010CFC 800100FC 24420004 */ addiu $v0, $v0, 4 -.L80010100: -/* 010D00 80010100 10960016 */ beq $a0, $s6, .L8001015C -/* 010D04 80010104 24A9FFFF */ addiu $t1, $a1, -1 -/* 010D08 80010108 86820000 */ lh $v0, ($s4) -/* 010D0C 8001010C 00801825 */ move $v1, $a0 -/* 010D10 80010110 0082082A */ slt $at, $a0, $v0 -/* 010D14 80010114 10200002 */ beqz $at, .L80010120 -/* 010D18 80010118 2448FFFF */ addiu $t0, $v0, -1 -/* 010D1C 8001011C A6880000 */ sh $t0, ($s4) -.L80010120: -/* 010D20 80010120 0089082A */ slt $at, $a0, $t1 -/* 010D24 80010124 1020000D */ beqz $at, .L8001015C -/* 010D28 80010128 AE090000 */ sw $t1, ($s0) -/* 010D2C 8001012C 00042080 */ sll $a0, $a0, 2 -.L80010130: -/* 010D30 80010130 8E2B0000 */ lw $t3, ($s1) -/* 010D34 80010134 24630001 */ addiu $v1, $v1, 1 -/* 010D38 80010138 01641021 */ addu $v0, $t3, $a0 -/* 010D3C 8001013C 8C4C0004 */ lw $t4, 4($v0) -/* 010D40 80010140 24840004 */ addiu $a0, $a0, 4 -/* 010D44 80010144 AC4C0000 */ sw $t4, ($v0) -/* 010D48 80010148 8E0D0000 */ lw $t5, ($s0) -/* 010D4C 8001014C 00000000 */ nop -/* 010D50 80010150 006D082A */ slt $at, $v1, $t5 -/* 010D54 80010154 1420FFF6 */ bnez $at, .L80010130 -/* 010D58 80010158 00000000 */ nop -.L8001015C: -/* 010D5C 8001015C 00C02025 */ move $a0, $a2 -/* 010D60 80010160 0C00406B */ jal func_800101AC -/* 010D64 80010164 00002825 */ move $a1, $zero -/* 010D68 80010168 8EEE0000 */ lw $t6, ($s7) -/* 010D6C 8001016C 26730001 */ addiu $s3, $s3, 1 -/* 010D70 80010170 026E082A */ slt $at, $s3, $t6 -/* 010D74 80010174 1420FFD0 */ bnez $at, .L800100B8 -/* 010D78 80010178 26520004 */ addiu $s2, $s2, 4 -.L8001017C: -/* 010D7C 8001017C 8FBF0034 */ lw $ra, 0x34($sp) -/* 010D80 80010180 AEE00000 */ sw $zero, ($s7) -/* 010D84 80010184 8FB70030 */ lw $s7, 0x30($sp) -/* 010D88 80010188 8FB00014 */ lw $s0, 0x14($sp) -/* 010D8C 8001018C 8FB10018 */ lw $s1, 0x18($sp) -/* 010D90 80010190 8FB2001C */ lw $s2, 0x1c($sp) -/* 010D94 80010194 8FB30020 */ lw $s3, 0x20($sp) -/* 010D98 80010198 8FB40024 */ lw $s4, 0x24($sp) -/* 010D9C 8001019C 8FB50028 */ lw $s5, 0x28($sp) -/* 010DA0 800101A0 8FB6002C */ lw $s6, 0x2c($sp) -/* 010DA4 800101A4 03E00008 */ jr $ra -/* 010DA8 800101A8 27BD0038 */ addiu $sp, $sp, 0x38 - diff --git a/asm/non_matchings/textures_sprites/func_8007B4E8.s b/asm/non_matchings/textures_sprites/func_8007B4E8.s deleted file mode 100644 index 37fff52d..00000000 --- a/asm/non_matchings/textures_sprites/func_8007B4E8.s +++ /dev/null @@ -1,388 +0,0 @@ -glabel func_8007B4E8 -/* 07C0E8 8007B4E8 3C0B8012 */ lui $t3, %hi(D_80126382) # $t3, 0x8012 -/* 07C0EC 8007B4EC 256B6382 */ addiu $t3, %lo(D_80126382) # addiu $t3, $t3, 0x6382 -/* 07C0F0 8007B4F0 85630000 */ lh $v1, ($t3) -/* 07C0F4 8007B4F4 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 07C0F8 8007B4F8 10A00030 */ beqz $a1, .L8007B5BC -/* 07C0FC 8007B4FC 24080001 */ li $t0, 1 -/* 07C100 8007B500 10E0000D */ beqz $a3, .L8007B538 -/* 07C104 8007B504 3C0C8012 */ lui $t4, %hi(D_8012637C) # $t4, 0x8012 -/* 07C108 8007B508 94AE0012 */ lhu $t6, 0x12($a1) -/* 07C10C 8007B50C 00000000 */ nop -/* 07C110 8007B510 000E7A00 */ sll $t7, $t6, 8 -/* 07C114 8007B514 00EF082A */ slt $at, $a3, $t7 -/* 07C118 8007B518 10200007 */ beqz $at, .L8007B538 -/* 07C11C 8007B51C 00000000 */ nop -/* 07C120 8007B520 84B90016 */ lh $t9, 0x16($a1) -/* 07C124 8007B524 0007C403 */ sra $t8, $a3, 0x10 -/* 07C128 8007B528 03190019 */ multu $t8, $t9 -/* 07C12C 8007B52C 00007012 */ mflo $t6 -/* 07C130 8007B530 00AE2821 */ addu $a1, $a1, $t6 -/* 07C134 8007B534 00000000 */ nop -.L8007B538: -/* 07C138 8007B538 258C637C */ addiu $t4, %lo(D_8012637C) # addiu $t4, $t4, 0x637c -/* 07C13C 8007B53C 84AF0006 */ lh $t7, 6($a1) -/* 07C140 8007B540 8D980000 */ lw $t8, ($t4) -/* 07C144 8007B544 00CF3025 */ or $a2, $a2, $t7 -/* 07C148 8007B548 10B80013 */ beq $a1, $t8, .L8007B598 -/* 07C14C 8007B54C 00000000 */ nop -/* 07C150 8007B550 8C820000 */ lw $v0, ($a0) -/* 07C154 8007B554 3C010700 */ lui $at, 0x700 -/* 07C158 8007B558 24590008 */ addiu $t9, $v0, 8 -/* 07C15C 8007B55C AC990000 */ sw $t9, ($a0) -/* 07C160 8007B560 84AA000A */ lh $t2, 0xa($a1) -/* 07C164 8007B564 3C098000 */ lui $t1, 0x8000 -/* 07C168 8007B568 314E00FF */ andi $t6, $t2, 0xff -/* 07C16C 8007B56C 000E7C00 */ sll $t7, $t6, 0x10 -/* 07C170 8007B570 000AC8C0 */ sll $t9, $t2, 3 -/* 07C174 8007B574 332EFFFF */ andi $t6, $t9, 0xffff -/* 07C178 8007B578 01E1C025 */ or $t8, $t7, $at -/* 07C17C 8007B57C 030E7825 */ or $t7, $t8, $t6 -/* 07C180 8007B580 AC4F0000 */ sw $t7, ($v0) -/* 07C184 8007B584 8CB9000C */ lw $t9, 0xc($a1) -/* 07C188 8007B588 00004025 */ move $t0, $zero -/* 07C18C 8007B58C 0329C021 */ addu $t8, $t9, $t1 -/* 07C190 8007B590 AC580004 */ sw $t8, 4($v0) -/* 07C194 8007B594 AD850000 */ sw $a1, ($t4) -.L8007B598: -/* 07C198 8007B598 3C0A8012 */ lui $t2, %hi(D_80126380) # $t2, 0x8012 -/* 07C19C 8007B59C 254A6380 */ addiu $t2, %lo(D_80126380) # addiu $t2, $t2, 0x6380 -/* 07C1A0 8007B5A0 854E0000 */ lh $t6, ($t2) -/* 07C1A4 8007B5A4 240F0001 */ li $t7, 1 -/* 07C1A8 8007B5A8 15C0000C */ bnez $t6, .L8007B5DC -/* 07C1AC 8007B5AC 00000000 */ nop -/* 07C1B0 8007B5B0 24030001 */ li $v1, 1 -/* 07C1B4 8007B5B4 10000009 */ b .L8007B5DC -/* 07C1B8 8007B5B8 A54F0000 */ sh $t7, ($t2) -.L8007B5BC: -/* 07C1BC 8007B5BC 3C0A8012 */ lui $t2, %hi(D_80126380) # $t2, 0x8012 -/* 07C1C0 8007B5C0 254A6380 */ addiu $t2, %lo(D_80126380) # addiu $t2, $t2, 0x6380 -/* 07C1C4 8007B5C4 85590000 */ lh $t9, ($t2) -/* 07C1C8 8007B5C8 00000000 */ nop -/* 07C1CC 8007B5CC 13200003 */ beqz $t9, .L8007B5DC -/* 07C1D0 8007B5D0 00000000 */ nop -/* 07C1D4 8007B5D4 24030001 */ li $v1, 1 -/* 07C1D8 8007B5D8 A5400000 */ sh $zero, ($t2) -.L8007B5DC: -/* 07C1DC 8007B5DC 3C0C8012 */ lui $t4, %hi(D_80126384) # $t4, 0x8012 -/* 07C1E0 8007B5E0 258C6384 */ addiu $t4, %lo(D_80126384) # addiu $t4, $t4, 0x6384 -/* 07C1E4 8007B5E4 85980000 */ lh $t8, ($t4) -/* 07C1E8 8007B5E8 3C098000 */ lui $t1, 0x8000 -/* 07C1EC 8007B5EC 13000004 */ beqz $t8, .L8007B600 -/* 07C1F0 8007B5F0 3C198012 */ lui $t9, %hi(D_80126378) # $t9, 0x8012 -/* 07C1F4 8007B5F4 30CE0827 */ andi $t6, $a2, 0x827 -/* 07C1F8 8007B5F8 10000005 */ b .L8007B610 -/* 07C1FC 8007B5FC 01C03025 */ move $a2, $t6 -.L8007B600: -/* 07C200 8007B600 3C010800 */ lui $at, (0x0800093F >> 16) # lui $at, 0x800 -/* 07C204 8007B604 3421093F */ ori $at, (0x0800093F & 0xFFFF) # ori $at, $at, 0x93f -/* 07C208 8007B608 00C17824 */ and $t7, $a2, $at -/* 07C20C 8007B60C 01E03025 */ move $a2, $t7 -.L8007B610: -/* 07C210 8007B610 8F396378 */ lw $t9, %lo(D_80126378)($t9) -/* 07C214 8007B614 3C050800 */ lui $a1, 0x800 -/* 07C218 8007B618 0320C027 */ not $t8, $t9 -/* 07C21C 8007B61C 00D83024 */ and $a2, $a2, $t8 -/* 07C220 8007B620 00067100 */ sll $t6, $a2, 4 -/* 07C224 8007B624 05C10005 */ bgez $t6, .L8007B63C -/* 07C228 8007B628 3C078012 */ lui $a3, %hi(D_80126374) # $a3, 0x8012 -/* 07C22C 8007B62C 2401FFF7 */ li $at, -9 -/* 07C230 8007B630 00C17824 */ and $t7, $a2, $at -/* 07C234 8007B634 10000004 */ b .L8007B648 -/* 07C238 8007B638 01E03025 */ move $a2, $t7 -.L8007B63C: -/* 07C23C 8007B63C 2401FEFF */ li $at, -257 -/* 07C240 8007B640 00C1C824 */ and $t9, $a2, $at -/* 07C244 8007B644 03203025 */ move $a2, $t9 -.L8007B648: -/* 07C248 8007B648 24E76374 */ addiu $a3, %lo(D_80126374) # addiu $a3, $a3, 0x6374 -/* 07C24C 8007B64C 8CED0000 */ lw $t5, ($a3) -/* 07C250 8007B650 00000000 */ nop -/* 07C254 8007B654 14CD0003 */ bne $a2, $t5, .L8007B664 -/* 07C258 8007B658 00000000 */ nop -/* 07C25C 8007B65C 106000FD */ beqz $v1, .L8007BA54 -/* 07C260 8007B660 00000000 */ nop -.L8007B664: -/* 07C264 8007B664 1100000A */ beqz $t0, .L8007B690 -/* 07C268 8007B668 00C54024 */ and $t0, $a2, $a1 -/* 07C26C 8007B66C 8C820000 */ lw $v0, ($a0) -/* 07C270 8007B670 3C0EE700 */ lui $t6, 0xe700 -/* 07C274 8007B674 24580008 */ addiu $t8, $v0, 8 -/* 07C278 8007B678 AC980000 */ sw $t8, ($a0) -/* 07C27C 8007B67C AC400004 */ sw $zero, 4($v0) -/* 07C280 8007B680 AC4E0000 */ sw $t6, ($v0) -/* 07C284 8007B684 8CED0000 */ lw $t5, ($a3) -/* 07C288 8007B688 00000000 */ nop -/* 07C28C 8007B68C 00C54024 */ and $t0, $a2, $a1 -.L8007B690: -/* 07C290 8007B690 01A57824 */ and $t7, $t5, $a1 -/* 07C294 8007B694 15E80005 */ bne $t7, $t0, .L8007B6AC -/* 07C298 8007B698 00000000 */ nop -/* 07C29C 8007B69C 85790000 */ lh $t9, ($t3) -/* 07C2A0 8007B6A0 00000000 */ nop -/* 07C2A4 8007B6A4 1320001C */ beqz $t9, .L8007B718 -/* 07C2A8 8007B6A8 30D90002 */ andi $t9, $a2, 2 -.L8007B6AC: -/* 07C2AC 8007B6AC 15000005 */ bnez $t0, .L8007B6C4 -/* 07C2B0 8007B6B0 3C0FB600 */ lui $t7, 0xb600 -/* 07C2B4 8007B6B4 85980000 */ lh $t8, ($t4) -/* 07C2B8 8007B6B8 00000000 */ nop -/* 07C2BC 8007B6BC 1300000A */ beqz $t8, .L8007B6E8 -/* 07C2C0 8007B6C0 00000000 */ nop -.L8007B6C4: -/* 07C2C4 8007B6C4 8C820000 */ lw $v0, ($a0) -/* 07C2C8 8007B6C8 3C190001 */ lui $t9, 1 -/* 07C2CC 8007B6CC 244E0008 */ addiu $t6, $v0, 8 -/* 07C2D0 8007B6D0 AC8E0000 */ sw $t6, ($a0) -/* 07C2D4 8007B6D4 AC590004 */ sw $t9, 4($v0) -/* 07C2D8 8007B6D8 AC4F0000 */ sw $t7, ($v0) -/* 07C2DC 8007B6DC 8CED0000 */ lw $t5, ($a3) -/* 07C2E0 8007B6E0 1000000D */ b .L8007B718 -/* 07C2E4 8007B6E4 30D90002 */ andi $t9, $a2, 2 -.L8007B6E8: -/* 07C2E8 8007B6E8 8C820000 */ lw $v0, ($a0) -/* 07C2EC 8007B6EC 3C03B700 */ lui $v1, 0xb700 -/* 07C2F0 8007B6F0 AFA2003C */ sw $v0, 0x3c($sp) -/* 07C2F4 8007B6F4 24580008 */ addiu $t8, $v0, 8 -/* 07C2F8 8007B6F8 AC980000 */ sw $t8, ($a0) -/* 07C2FC 8007B6FC 8FAE003C */ lw $t6, 0x3c($sp) -/* 07C300 8007B700 3C0F0001 */ lui $t7, 1 -/* 07C304 8007B704 ADCF0004 */ sw $t7, 4($t6) -/* 07C308 8007B708 ADC30000 */ sw $v1, ($t6) -/* 07C30C 8007B70C 8CED0000 */ lw $t5, ($a3) -/* 07C310 8007B710 00000000 */ nop -/* 07C314 8007B714 30D90002 */ andi $t9, $a2, 2 -.L8007B718: -/* 07C318 8007B718 31B80002 */ andi $t8, $t5, 2 -/* 07C31C 8007B71C 3C03B700 */ lui $v1, 0xb700 -/* 07C320 8007B720 17190005 */ bne $t8, $t9, .L8007B738 -/* 07C324 8007B724 AFB90004 */ sw $t9, 4($sp) -/* 07C328 8007B728 856E0000 */ lh $t6, ($t3) -/* 07C32C 8007B72C 00000000 */ nop -/* 07C330 8007B730 11C00012 */ beqz $t6, .L8007B77C -/* 07C334 8007B734 00000000 */ nop -.L8007B738: -/* 07C338 8007B738 8FB90004 */ lw $t9, 4($sp) -/* 07C33C 8007B73C 24180001 */ li $t8, 1 -/* 07C340 8007B740 13200008 */ beqz $t9, .L8007B764 -/* 07C344 8007B744 00000000 */ nop -/* 07C348 8007B748 8C820000 */ lw $v0, ($a0) -/* 07C34C 8007B74C 240F0001 */ li $t7, 1 -/* 07C350 8007B750 24580008 */ addiu $t8, $v0, 8 -/* 07C354 8007B754 AC980000 */ sw $t8, ($a0) -/* 07C358 8007B758 AC4F0004 */ sw $t7, 4($v0) -/* 07C35C 8007B75C 10000007 */ b .L8007B77C -/* 07C360 8007B760 AC430000 */ sw $v1, ($v0) -.L8007B764: -/* 07C364 8007B764 8C820000 */ lw $v0, ($a0) -/* 07C368 8007B768 3C19B600 */ lui $t9, 0xb600 -/* 07C36C 8007B76C 244E0008 */ addiu $t6, $v0, 8 -/* 07C370 8007B770 AC8E0000 */ sw $t6, ($a0) -/* 07C374 8007B774 AC580004 */ sw $t8, 4($v0) -/* 07C378 8007B778 AC590000 */ sw $t9, ($v0) -.L8007B77C: -/* 07C37C 8007B77C 854F0000 */ lh $t7, ($t2) -/* 07C380 8007B780 A5600000 */ sh $zero, ($t3) -/* 07C384 8007B784 15E0001E */ bnez $t7, .L8007B800 -/* 07C388 8007B788 ACE60000 */ sw $a2, ($a3) -/* 07C38C 8007B78C 1100000F */ beqz $t0, .L8007B7CC -/* 07C390 8007B790 3C0E0702 */ lui $t6, 0x702 -/* 07C394 8007B794 8C820000 */ lw $v0, ($a0) -/* 07C398 8007B798 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 -/* 07C39C 8007B79C 244E0008 */ addiu $t6, $v0, 8 -/* 07C3A0 8007B7A0 AC8E0000 */ sw $t6, ($a0) -/* 07C3A4 8007B7A4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 -/* 07C3A8 8007B7A8 30D80003 */ andi $t8, $a2, 3 -/* 07C3AC 8007B7AC AC590000 */ sw $t9, ($v0) -/* 07C3B0 8007B7B0 3C19800E */ lui $t9, %hi(D_800DEEE8) # $t9, 0x800e -/* 07C3B4 8007B7B4 00187900 */ sll $t7, $t8, 4 -/* 07C3B8 8007B7B8 01E97021 */ addu $t6, $t7, $t1 -/* 07C3BC 8007B7BC 2739EEE8 */ addiu $t9, %lo(D_800DEEE8) # addiu $t9, $t9, -0x1118 -/* 07C3C0 8007B7C0 01D9C021 */ addu $t8, $t6, $t9 -/* 07C3C4 8007B7C4 100000A3 */ b .L8007BA54 -/* 07C3C8 8007B7C8 AC580004 */ sw $t8, 4($v0) -.L8007B7CC: -/* 07C3CC 8007B7CC 8C820000 */ lw $v0, ($a0) -/* 07C3D0 8007B7D0 35CE0010 */ ori $t6, $t6, 0x10 -/* 07C3D4 8007B7D4 244F0008 */ addiu $t7, $v0, 8 -/* 07C3D8 8007B7D8 AC8F0000 */ sw $t7, ($a0) -/* 07C3DC 8007B7DC 30D9000F */ andi $t9, $a2, 0xf -/* 07C3E0 8007B7E0 AC4E0000 */ sw $t6, ($v0) -/* 07C3E4 8007B7E4 3C0E800E */ lui $t6, %hi(D_800DEF28) # $t6, 0x800e -/* 07C3E8 8007B7E8 0019C100 */ sll $t8, $t9, 4 -/* 07C3EC 8007B7EC 03097821 */ addu $t7, $t8, $t1 -/* 07C3F0 8007B7F0 25CEEF28 */ addiu $t6, %lo(D_800DEF28) # addiu $t6, $t6, -0x10d8 -/* 07C3F4 8007B7F4 01EEC821 */ addu $t9, $t7, $t6 -/* 07C3F8 8007B7F8 10000096 */ b .L8007BA54 -/* 07C3FC 8007B7FC AC590004 */ sw $t9, 4($v0) -.L8007B800: -/* 07C400 8007B800 85980000 */ lh $t8, ($t4) -/* 07C404 8007B804 30CF0800 */ andi $t7, $a2, 0x800 -/* 07C408 8007B808 1300002F */ beqz $t8, .L8007B8C8 -/* 07C40C 8007B80C 30D90800 */ andi $t9, $a2, 0x800 -/* 07C410 8007B810 11E0001D */ beqz $t7, .L8007B888 -/* 07C414 8007B814 30CE0020 */ andi $t6, $a2, 0x20 -/* 07C418 8007B818 8FAE0004 */ lw $t6, 4($sp) -/* 07C41C 8007B81C 30D90001 */ andi $t9, $a2, 1 -/* 07C420 8007B820 11C00018 */ beqz $t6, .L8007B884 -/* 07C424 8007B824 30D80004 */ andi $t8, $a2, 4 -/* 07C428 8007B828 13200002 */ beqz $t9, .L8007B834 -/* 07C42C 8007B82C 00002825 */ move $a1, $zero -/* 07C430 8007B830 24050001 */ li $a1, 1 -.L8007B834: -/* 07C434 8007B834 13000003 */ beqz $t8, .L8007B844 -/* 07C438 8007B838 30CE0020 */ andi $t6, $a2, 0x20 -/* 07C43C 8007B83C 34AF0002 */ ori $t7, $a1, 2 -/* 07C440 8007B840 01E02825 */ move $a1, $t7 -.L8007B844: -/* 07C444 8007B844 11C00003 */ beqz $t6, .L8007B854 -/* 07C448 8007B848 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 07C44C 8007B84C 34B90004 */ ori $t9, $a1, 4 -/* 07C450 8007B850 03202825 */ move $a1, $t9 -.L8007B854: -/* 07C454 8007B854 8C820000 */ lw $v0, ($a0) -/* 07C458 8007B858 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 07C45C 8007B85C 24580008 */ addiu $t8, $v0, 8 -/* 07C460 8007B860 AC980000 */ sw $t8, ($a0) -/* 07C464 8007B864 3C18800E */ lui $t8, %hi(D_800DF028) # $t8, 0x800e -/* 07C468 8007B868 00057100 */ sll $t6, $a1, 4 -/* 07C46C 8007B86C 01C9C821 */ addu $t9, $t6, $t1 -/* 07C470 8007B870 2718F028 */ addiu $t8, %lo(D_800DF028) # addiu $t8, $t8, -0xfd8 -/* 07C474 8007B874 AC4F0000 */ sw $t7, ($v0) -/* 07C478 8007B878 03387821 */ addu $t7, $t9, $t8 -/* 07C47C 8007B87C 10000075 */ b .L8007BA54 -/* 07C480 8007B880 AC4F0004 */ sw $t7, 4($v0) -.L8007B884: -/* 07C484 8007B884 30CE0020 */ andi $t6, $a2, 0x20 -.L8007B888: -/* 07C488 8007B888 11C00002 */ beqz $t6, .L8007B894 -/* 07C48C 8007B88C 38D90020 */ xori $t9, $a2, 0x20 -/* 07C490 8007B890 37260008 */ ori $a2, $t9, 8 -.L8007B894: -/* 07C494 8007B894 8C820000 */ lw $v0, ($a0) -/* 07C498 8007B898 3C0E0702 */ lui $t6, (0x07020010 >> 16) # lui $t6, 0x702 -/* 07C49C 8007B89C 244F0008 */ addiu $t7, $v0, 8 -/* 07C4A0 8007B8A0 AC8F0000 */ sw $t7, ($a0) -/* 07C4A4 8007B8A4 3C0F800E */ lui $t7, %hi(D_800DF0A8) # $t7, 0x800e -/* 07C4A8 8007B8A8 35CE0010 */ ori $t6, (0x07020010 & 0xFFFF) # ori $t6, $t6, 0x10 -/* 07C4AC 8007B8AC 0006C900 */ sll $t9, $a2, 4 -/* 07C4B0 8007B8B0 0329C021 */ addu $t8, $t9, $t1 -/* 07C4B4 8007B8B4 25EFF0A8 */ addiu $t7, %lo(D_800DF0A8) # addiu $t7, $t7, -0xf58 -/* 07C4B8 8007B8B8 AC4E0000 */ sw $t6, ($v0) -/* 07C4BC 8007B8BC 030F7021 */ addu $t6, $t8, $t7 -/* 07C4C0 8007B8C0 10000064 */ b .L8007BA54 -/* 07C4C4 8007B8C4 AC4E0004 */ sw $t6, 4($v0) -.L8007B8C8: -/* 07C4C8 8007B8C8 13200021 */ beqz $t9, .L8007B950 -/* 07C4CC 8007B8CC 30CE0010 */ andi $t6, $a2, 0x10 -/* 07C4D0 8007B8D0 8FB80004 */ lw $t8, 4($sp) -/* 07C4D4 8007B8D4 30CF0001 */ andi $t7, $a2, 1 -/* 07C4D8 8007B8D8 1300001D */ beqz $t8, .L8007B950 -/* 07C4DC 8007B8DC 00000000 */ nop -/* 07C4E0 8007B8E0 11E00002 */ beqz $t7, .L8007B8EC -/* 07C4E4 8007B8E4 00002825 */ move $a1, $zero -/* 07C4E8 8007B8E8 24050001 */ li $a1, 1 -.L8007B8EC: -/* 07C4EC 8007B8EC 30CE0004 */ andi $t6, $a2, 4 -/* 07C4F0 8007B8F0 11C00003 */ beqz $t6, .L8007B900 -/* 07C4F4 8007B8F4 30D80008 */ andi $t8, $a2, 8 -/* 07C4F8 8007B8F8 34B90002 */ ori $t9, $a1, 2 -/* 07C4FC 8007B8FC 03202825 */ move $a1, $t9 -.L8007B900: -/* 07C500 8007B900 13000003 */ beqz $t8, .L8007B910 -/* 07C504 8007B904 30CE0020 */ andi $t6, $a2, 0x20 -/* 07C508 8007B908 34AF0004 */ ori $t7, $a1, 4 -/* 07C50C 8007B90C 01E02825 */ move $a1, $t7 -.L8007B910: -/* 07C510 8007B910 11C00003 */ beqz $t6, .L8007B920 -/* 07C514 8007B914 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 07C518 8007B918 34B90008 */ ori $t9, $a1, 8 -/* 07C51C 8007B91C 03202825 */ move $a1, $t9 -.L8007B920: -/* 07C520 8007B920 8C820000 */ lw $v0, ($a0) -/* 07C524 8007B924 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 07C528 8007B928 24580008 */ addiu $t8, $v0, 8 -/* 07C52C 8007B92C AC980000 */ sw $t8, ($a0) -/* 07C530 8007B930 3C18800E */ lui $t8, %hi(D_800DEDE8) # $t8, 0x800e -/* 07C534 8007B934 00057100 */ sll $t6, $a1, 4 -/* 07C538 8007B938 01C9C821 */ addu $t9, $t6, $t1 -/* 07C53C 8007B93C 2718EDE8 */ addiu $t8, %lo(D_800DEDE8) # addiu $t8, $t8, -0x1218 -/* 07C540 8007B940 AC4F0000 */ sw $t7, ($v0) -/* 07C544 8007B944 03387821 */ addu $t7, $t9, $t8 -/* 07C548 8007B948 10000042 */ b .L8007BA54 -/* 07C54C 8007B94C AC4F0004 */ sw $t7, 4($v0) -.L8007B950: -/* 07C550 8007B950 11C00013 */ beqz $t6, .L8007B9A0 -/* 07C554 8007B954 2401F7FF */ li $at, -2049 -/* 07C558 8007B958 30C20007 */ andi $v0, $a2, 7 -/* 07C55C 8007B95C 30D90008 */ andi $t9, $a2, 8 -/* 07C560 8007B960 13200002 */ beqz $t9, .L8007B96C -/* 07C564 8007B964 00402825 */ move $a1, $v0 -/* 07C568 8007B968 34450008 */ ori $a1, $v0, 8 -.L8007B96C: -/* 07C56C 8007B96C 8C820000 */ lw $v0, ($a0) -/* 07C570 8007B970 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 07C574 8007B974 24580008 */ addiu $t8, $v0, 8 -/* 07C578 8007B978 AC980000 */ sw $t8, ($a0) -/* 07C57C 8007B97C 3C18800E */ lui $t8, %hi(D_800DECE8) # $t8, 0x800e -/* 07C580 8007B980 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 07C584 8007B984 00057100 */ sll $t6, $a1, 4 -/* 07C588 8007B988 01C9C821 */ addu $t9, $t6, $t1 -/* 07C58C 8007B98C 2718ECE8 */ addiu $t8, %lo(D_800DECE8) # addiu $t8, $t8, -0x1318 -/* 07C590 8007B990 AC4F0000 */ sw $t7, ($v0) -/* 07C594 8007B994 03387821 */ addu $t7, $t9, $t8 -/* 07C598 8007B998 1000002E */ b .L8007BA54 -/* 07C59C 8007B99C AC4F0004 */ sw $t7, 4($v0) -.L8007B9A0: -/* 07C5A0 8007B9A0 00C17024 */ and $t6, $a2, $at -/* 07C5A4 8007B9A4 01C5C824 */ and $t9, $t6, $a1 -/* 07C5A8 8007B9A8 1320001E */ beqz $t9, .L8007BA24 -/* 07C5AC 8007B9AC 01C03025 */ move $a2, $t6 -/* 07C5B0 8007B9B0 31C20003 */ andi $v0, $t6, 3 -/* 07C5B4 8007B9B4 31D80100 */ andi $t8, $t6, 0x100 -/* 07C5B8 8007B9B8 13000003 */ beqz $t8, .L8007B9C8 -/* 07C5BC 8007B9BC 00402825 */ move $a1, $v0 -/* 07C5C0 8007B9C0 1000000B */ b .L8007B9F0 -/* 07C5C4 8007B9C4 34450004 */ ori $a1, $v0, 4 -.L8007B9C8: -/* 07C5C8 8007B9C8 8C820000 */ lw $v0, ($a0) -/* 07C5CC 8007B9CC 240E0001 */ li $t6, 1 -/* 07C5D0 8007B9D0 244F0008 */ addiu $t7, $v0, 8 -/* 07C5D4 8007B9D4 AC8F0000 */ sw $t7, ($a0) -/* 07C5D8 8007B9D8 AC4E0004 */ sw $t6, 4($v0) -/* 07C5DC 8007B9DC AC430000 */ sw $v1, ($v0) -/* 07C5E0 8007B9E0 8CF90000 */ lw $t9, ($a3) -/* 07C5E4 8007B9E4 00000000 */ nop -/* 07C5E8 8007B9E8 37380002 */ ori $t8, $t9, 2 -/* 07C5EC 8007B9EC ACF80000 */ sw $t8, ($a3) -.L8007B9F0: -/* 07C5F0 8007B9F0 8C820000 */ lw $v0, ($a0) -/* 07C5F4 8007B9F4 3C0E0702 */ lui $t6, (0x07020010 >> 16) # lui $t6, 0x702 -/* 07C5F8 8007B9F8 244F0008 */ addiu $t7, $v0, 8 -/* 07C5FC 8007B9FC AC8F0000 */ sw $t7, ($a0) -/* 07C600 8007BA00 3C0F800E */ lui $t7, %hi(D_800DE7C8) # $t7, 0x800e -/* 07C604 8007BA04 35CE0010 */ ori $t6, (0x07020010 & 0xFFFF) # ori $t6, $t6, 0x10 -/* 07C608 8007BA08 0005C900 */ sll $t9, $a1, 4 -/* 07C60C 8007BA0C 0329C021 */ addu $t8, $t9, $t1 -/* 07C610 8007BA10 25EFE7C8 */ addiu $t7, %lo(D_800DE7C8) # addiu $t7, $t7, -0x1838 -/* 07C614 8007BA14 AC4E0000 */ sw $t6, ($v0) -/* 07C618 8007BA18 030F7021 */ addu $t6, $t8, $t7 -/* 07C61C 8007BA1C 1000000D */ b .L8007BA54 -/* 07C620 8007BA20 AC4E0004 */ sw $t6, 4($v0) -.L8007BA24: -/* 07C624 8007BA24 8C820000 */ lw $v0, ($a0) -/* 07C628 8007BA28 3C180702 */ lui $t8, (0x07020010 >> 16) # lui $t8, 0x702 -/* 07C62C 8007BA2C 24590008 */ addiu $t9, $v0, 8 -/* 07C630 8007BA30 AC990000 */ sw $t9, ($a0) -/* 07C634 8007BA34 3C19800E */ lui $t9, %hi(D_800DE8E8) # $t9, 0x800e -/* 07C638 8007BA38 37180010 */ ori $t8, (0x07020010 & 0xFFFF) # ori $t8, $t8, 0x10 -/* 07C63C 8007BA3C 00067900 */ sll $t7, $a2, 4 -/* 07C640 8007BA40 01E97021 */ addu $t6, $t7, $t1 -/* 07C644 8007BA44 2739E8E8 */ addiu $t9, %lo(D_800DE8E8) # addiu $t9, $t9, -0x1718 -/* 07C648 8007BA48 AC580000 */ sw $t8, ($v0) -/* 07C64C 8007BA4C 01D9C021 */ addu $t8, $t6, $t9 -/* 07C650 8007BA50 AC580004 */ sw $t8, 4($v0) -.L8007BA54: -/* 07C654 8007BA54 03E00008 */ jr $ra -/* 07C658 8007BA58 27BD0058 */ addiu $sp, $sp, 0x58 - diff --git a/asm/non_matchings/textures_sprites/func_8007BA5C.s b/asm/non_matchings/textures_sprites/func_8007BA5C.s deleted file mode 100644 index a0add459..00000000 --- a/asm/non_matchings/textures_sprites/func_8007BA5C.s +++ /dev/null @@ -1,311 +0,0 @@ -glabel func_8007BA5C -/* 07C65C 8007BA5C 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 07C660 8007BA60 10E0000D */ beqz $a3, .L8007BA98 -/* 07C664 8007BA64 AFA60078 */ sw $a2, 0x78($sp) -/* 07C668 8007BA68 94AE0012 */ lhu $t6, 0x12($a1) -/* 07C66C 8007BA6C 00000000 */ nop -/* 07C670 8007BA70 000E7A00 */ sll $t7, $t6, 8 -/* 07C674 8007BA74 00EF082A */ slt $at, $a3, $t7 -/* 07C678 8007BA78 10200007 */ beqz $at, .L8007BA98 -/* 07C67C 8007BA7C 00000000 */ nop -/* 07C680 8007BA80 84B90016 */ lh $t9, 0x16($a1) -/* 07C684 8007BA84 0007C403 */ sra $t8, $a3, 0x10 -/* 07C688 8007BA88 03190019 */ multu $t8, $t9 -/* 07C68C 8007BA8C 00007012 */ mflo $t6 -/* 07C690 8007BA90 00AE2821 */ addu $a1, $a1, $t6 -/* 07C694 8007BA94 00000000 */ nop -.L8007BA98: -/* 07C698 8007BA98 90AF0000 */ lbu $t7, ($a1) -/* 07C69C 8007BA9C 24010040 */ li $at, 64 -/* 07C6A0 8007BAA0 15E10073 */ bne $t7, $at, .L8007BC70 -/* 07C6A4 8007BAA4 3C06B700 */ lui $a2, 0xb700 -/* 07C6A8 8007BAA8 8C820000 */ lw $v0, ($a0) -/* 07C6AC 8007BAAC 3C098000 */ lui $t1, 0x8000 -/* 07C6B0 8007BAB0 24580008 */ addiu $t8, $v0, 8 -/* 07C6B4 8007BAB4 AC980000 */ sw $t8, ($a0) -/* 07C6B8 8007BAB8 00A9C821 */ addu $t9, $a1, $t1 -/* 07C6BC 8007BABC 3C07FD10 */ lui $a3, 0xfd10 -/* 07C6C0 8007BAC0 272E0020 */ addiu $t6, $t9, 0x20 -/* 07C6C4 8007BAC4 AC4E0004 */ sw $t6, 4($v0) -/* 07C6C8 8007BAC8 AC470000 */ sw $a3, ($v0) -/* 07C6CC 8007BACC 8C820000 */ lw $v0, ($a0) -/* 07C6D0 8007BAD0 3C190701 */ lui $t9, (0x07010060 >> 16) # lui $t9, 0x701 -/* 07C6D4 8007BAD4 244F0008 */ addiu $t7, $v0, 8 -/* 07C6D8 8007BAD8 AC8F0000 */ sw $t7, ($a0) -/* 07C6DC 8007BADC 3C18F510 */ lui $t8, (0xF5100100 >> 16) # lui $t8, 0xf510 -/* 07C6E0 8007BAE0 37180100 */ ori $t8, (0xF5100100 & 0xFFFF) # ori $t8, $t8, 0x100 -/* 07C6E4 8007BAE4 37390060 */ ori $t9, (0x07010060 & 0xFFFF) # ori $t9, $t9, 0x60 -/* 07C6E8 8007BAE8 AC590004 */ sw $t9, 4($v0) -/* 07C6EC 8007BAEC AC580000 */ sw $t8, ($v0) -/* 07C6F0 8007BAF0 8C820000 */ lw $v0, ($a0) -/* 07C6F4 8007BAF4 3C0AE600 */ lui $t2, 0xe600 -/* 07C6F8 8007BAF8 244E0008 */ addiu $t6, $v0, 8 -/* 07C6FC 8007BAFC AC8E0000 */ sw $t6, ($a0) -/* 07C700 8007BB00 AC400004 */ sw $zero, 4($v0) -/* 07C704 8007BB04 AC4A0000 */ sw $t2, ($v0) -/* 07C708 8007BB08 8C820000 */ lw $v0, ($a0) -/* 07C70C 8007BB0C 3C18073F */ lui $t8, (0x073FF080 >> 16) # lui $t8, 0x73f -/* 07C710 8007BB10 244F0008 */ addiu $t7, $v0, 8 -/* 07C714 8007BB14 AC8F0000 */ sw $t7, ($a0) -/* 07C718 8007BB18 3C0BF300 */ lui $t3, 0xf300 -/* 07C71C 8007BB1C 3718F080 */ ori $t8, (0x073FF080 & 0xFFFF) # ori $t8, $t8, 0xf080 -/* 07C720 8007BB20 AC580004 */ sw $t8, 4($v0) -/* 07C724 8007BB24 AC4B0000 */ sw $t3, ($v0) -/* 07C728 8007BB28 8C820000 */ lw $v0, ($a0) -/* 07C72C 8007BB2C 3C08E700 */ lui $t0, 0xe700 -/* 07C730 8007BB30 24590008 */ addiu $t9, $v0, 8 -/* 07C734 8007BB34 AC990000 */ sw $t9, ($a0) -/* 07C738 8007BB38 AC400004 */ sw $zero, 4($v0) -/* 07C73C 8007BB3C AC480000 */ sw $t0, ($v0) -/* 07C740 8007BB40 8C820000 */ lw $v0, ($a0) -/* 07C744 8007BB44 3C190101 */ lui $t9, (0x01010060 >> 16) # lui $t9, 0x101 -/* 07C748 8007BB48 AFA20050 */ sw $v0, 0x50($sp) -/* 07C74C 8007BB4C 244E0008 */ addiu $t6, $v0, 8 -/* 07C750 8007BB50 AC8E0000 */ sw $t6, ($a0) -/* 07C754 8007BB54 8FB80050 */ lw $t8, 0x50($sp) -/* 07C758 8007BB58 3C0FF510 */ lui $t7, (0xF5102100 >> 16) # lui $t7, 0xf510 -/* 07C75C 8007BB5C 35EF2100 */ ori $t7, (0xF5102100 & 0xFFFF) # ori $t7, $t7, 0x2100 -/* 07C760 8007BB60 37390060 */ ori $t9, (0x01010060 & 0xFFFF) # ori $t9, $t9, 0x60 -/* 07C764 8007BB64 AF190004 */ sw $t9, 4($t8) -/* 07C768 8007BB68 AF0F0000 */ sw $t7, ($t8) -/* 07C76C 8007BB6C 8C820000 */ lw $v0, ($a0) -/* 07C770 8007BB70 3C19010F */ lui $t9, (0x010FC03C >> 16) # lui $t9, 0x10f -/* 07C774 8007BB74 AFA2004C */ sw $v0, 0x4c($sp) -/* 07C778 8007BB78 244E0008 */ addiu $t6, $v0, 8 -/* 07C77C 8007BB7C AC8E0000 */ sw $t6, ($a0) -/* 07C780 8007BB80 8FAF004C */ lw $t7, 0x4c($sp) -/* 07C784 8007BB84 3739C03C */ ori $t9, (0x010FC03C & 0xFFFF) # ori $t9, $t9, 0xc03c -/* 07C788 8007BB88 3C0CF200 */ lui $t4, 0xf200 -/* 07C78C 8007BB8C ADEC0000 */ sw $t4, ($t7) -/* 07C790 8007BB90 ADF90004 */ sw $t9, 4($t7) -/* 07C794 8007BB94 8C820000 */ lw $v0, ($a0) -/* 07C798 8007BB98 00A97021 */ addu $t6, $a1, $t1 -/* 07C79C 8007BB9C 24580008 */ addiu $t8, $v0, 8 -/* 07C7A0 8007BBA0 AC980000 */ sw $t8, ($a0) -/* 07C7A4 8007BBA4 AC470000 */ sw $a3, ($v0) -/* 07C7A8 8007BBA8 8FAD0078 */ lw $t5, 0x78($sp) -/* 07C7AC 8007BBAC 25D90820 */ addiu $t9, $t6, 0x820 -/* 07C7B0 8007BBB0 AC590004 */ sw $t9, 4($v0) -/* 07C7B4 8007BBB4 8C820000 */ lw $v0, ($a0) -/* 07C7B8 8007BBB8 3C0E0701 */ lui $t6, (0x07010060 >> 16) # lui $t6, 0x701 -/* 07C7BC 8007BBBC 244F0008 */ addiu $t7, $v0, 8 -/* 07C7C0 8007BBC0 AC8F0000 */ sw $t7, ($a0) -/* 07C7C4 8007BBC4 35CE0060 */ ori $t6, (0x07010060 & 0xFFFF) # ori $t6, $t6, 0x60 -/* 07C7C8 8007BBC8 3C18F510 */ lui $t8, 0xf510 -/* 07C7CC 8007BBCC AC580000 */ sw $t8, ($v0) -/* 07C7D0 8007BBD0 AC4E0004 */ sw $t6, 4($v0) -/* 07C7D4 8007BBD4 8C820000 */ lw $v0, ($a0) -/* 07C7D8 8007BBD8 3C0E073F */ lui $t6, (0x073FF080 >> 16) # lui $t6, 0x73f -/* 07C7DC 8007BBDC 24590008 */ addiu $t9, $v0, 8 -/* 07C7E0 8007BBE0 AC990000 */ sw $t9, ($a0) -/* 07C7E4 8007BBE4 AC400004 */ sw $zero, 4($v0) -/* 07C7E8 8007BBE8 AC4A0000 */ sw $t2, ($v0) -/* 07C7EC 8007BBEC 8C820000 */ lw $v0, ($a0) -/* 07C7F0 8007BBF0 35CEF080 */ ori $t6, (0x073FF080 & 0xFFFF) # ori $t6, $t6, 0xf080 -/* 07C7F4 8007BBF4 AFA2003C */ sw $v0, 0x3c($sp) -/* 07C7F8 8007BBF8 244F0008 */ addiu $t7, $v0, 8 -/* 07C7FC 8007BBFC AC8F0000 */ sw $t7, ($a0) -/* 07C800 8007BC00 8FB8003C */ lw $t8, 0x3c($sp) -/* 07C804 8007BC04 00000000 */ nop -/* 07C808 8007BC08 AF0B0000 */ sw $t3, ($t8) -/* 07C80C 8007BC0C AF0E0004 */ sw $t6, 4($t8) -/* 07C810 8007BC10 8C820000 */ lw $v0, ($a0) -/* 07C814 8007BC14 3C18F510 */ lui $t8, (0xF5102000 >> 16) # lui $t8, 0xf510 -/* 07C818 8007BC18 AFA20038 */ sw $v0, 0x38($sp) -/* 07C81C 8007BC1C 24590008 */ addiu $t9, $v0, 8 -/* 07C820 8007BC20 AC990000 */ sw $t9, ($a0) -/* 07C824 8007BC24 8FAF0038 */ lw $t7, 0x38($sp) -/* 07C828 8007BC28 3C190001 */ lui $t9, (0x00010060 >> 16) # lui $t9, 1 -/* 07C82C 8007BC2C ADE80000 */ sw $t0, ($t7) -/* 07C830 8007BC30 ADE00004 */ sw $zero, 4($t7) -/* 07C834 8007BC34 8C820000 */ lw $v0, ($a0) -/* 07C838 8007BC38 37390060 */ ori $t9, (0x00010060 & 0xFFFF) # ori $t9, $t9, 0x60 -/* 07C83C 8007BC3C 244E0008 */ addiu $t6, $v0, 8 -/* 07C840 8007BC40 AC8E0000 */ sw $t6, ($a0) -/* 07C844 8007BC44 37182000 */ ori $t8, (0xF5102000 & 0xFFFF) # ori $t8, $t8, 0x2000 -/* 07C848 8007BC48 AC580000 */ sw $t8, ($v0) -/* 07C84C 8007BC4C AC590004 */ sw $t9, 4($v0) -/* 07C850 8007BC50 8C820000 */ lw $v0, ($a0) -/* 07C854 8007BC54 3C0E000F */ lui $t6, (0x000FC03C >> 16) # lui $t6, 0xf -/* 07C858 8007BC58 244F0008 */ addiu $t7, $v0, 8 -/* 07C85C 8007BC5C AC8F0000 */ sw $t7, ($a0) -/* 07C860 8007BC60 35CEC03C */ ori $t6, (0x000FC03C & 0xFFFF) # ori $t6, $t6, 0xc03c -/* 07C864 8007BC64 AC4E0004 */ sw $t6, 4($v0) -/* 07C868 8007BC68 10000079 */ b .L8007BE50 -/* 07C86C 8007BC6C AC4C0000 */ sw $t4, ($v0) -.L8007BC70: -/* 07C870 8007BC70 8C820000 */ lw $v0, ($a0) -/* 07C874 8007BC74 3C098000 */ lui $t1, 0x8000 -/* 07C878 8007BC78 24580008 */ addiu $t8, $v0, 8 -/* 07C87C 8007BC7C AC980000 */ sw $t8, ($a0) -/* 07C880 8007BC80 00A9C821 */ addu $t9, $a1, $t1 -/* 07C884 8007BC84 3C07FD10 */ lui $a3, 0xfd10 -/* 07C888 8007BC88 272F0020 */ addiu $t7, $t9, 0x20 -/* 07C88C 8007BC8C AC4F0004 */ sw $t7, 4($v0) -/* 07C890 8007BC90 AC470000 */ sw $a3, ($v0) -/* 07C894 8007BC94 8C820000 */ lw $v0, ($a0) -/* 07C898 8007BC98 3C190701 */ lui $t9, (0x07014050 >> 16) # lui $t9, 0x701 -/* 07C89C 8007BC9C 244E0008 */ addiu $t6, $v0, 8 -/* 07C8A0 8007BCA0 AC8E0000 */ sw $t6, ($a0) -/* 07C8A4 8007BCA4 3C18F510 */ lui $t8, (0xF5100100 >> 16) # lui $t8, 0xf510 -/* 07C8A8 8007BCA8 37180100 */ ori $t8, (0xF5100100 & 0xFFFF) # ori $t8, $t8, 0x100 -/* 07C8AC 8007BCAC 37394050 */ ori $t9, (0x07014050 & 0xFFFF) # ori $t9, $t9, 0x4050 -/* 07C8B0 8007BCB0 AC590004 */ sw $t9, 4($v0) -/* 07C8B4 8007BCB4 AC580000 */ sw $t8, ($v0) -/* 07C8B8 8007BCB8 8C820000 */ lw $v0, ($a0) -/* 07C8BC 8007BCBC 3C0AE600 */ lui $t2, 0xe600 -/* 07C8C0 8007BCC0 244F0008 */ addiu $t7, $v0, 8 -/* 07C8C4 8007BCC4 AC8F0000 */ sw $t7, ($a0) -/* 07C8C8 8007BCC8 AC400004 */ sw $zero, 4($v0) -/* 07C8CC 8007BCCC AC4A0000 */ sw $t2, ($v0) -/* 07C8D0 8007BCD0 8C820000 */ lw $v0, ($a0) -/* 07C8D4 8007BCD4 3C0BF300 */ lui $t3, 0xf300 -/* 07C8D8 8007BCD8 244E0008 */ addiu $t6, $v0, 8 -/* 07C8DC 8007BCDC AC8E0000 */ sw $t6, ($a0) -/* 07C8E0 8007BCE0 3C18073F */ lui $t8, (0x073FF100 >> 16) # lui $t8, 0x73f -/* 07C8E4 8007BCE4 AC4B0000 */ sw $t3, ($v0) -/* 07C8E8 8007BCE8 8FAD0078 */ lw $t5, 0x78($sp) -/* 07C8EC 8007BCEC 3718F100 */ ori $t8, (0x073FF100 & 0xFFFF) # ori $t8, $t8, 0xf100 -/* 07C8F0 8007BCF0 AC580004 */ sw $t8, 4($v0) -/* 07C8F4 8007BCF4 8C820000 */ lw $v0, ($a0) -/* 07C8F8 8007BCF8 3C08E700 */ lui $t0, 0xe700 -/* 07C8FC 8007BCFC AFA2001C */ sw $v0, 0x1c($sp) -/* 07C900 8007BD00 24590008 */ addiu $t9, $v0, 8 -/* 07C904 8007BD04 AC990000 */ sw $t9, ($a0) -/* 07C908 8007BD08 8FAF001C */ lw $t7, 0x1c($sp) -/* 07C90C 8007BD0C 3C18F510 */ lui $t8, (0xF5101100 >> 16) # lui $t8, 0xf510 -/* 07C910 8007BD10 ADE80000 */ sw $t0, ($t7) -/* 07C914 8007BD14 ADE00004 */ sw $zero, 4($t7) -/* 07C918 8007BD18 8C820000 */ lw $v0, ($a0) -/* 07C91C 8007BD1C 3C0F0101 */ lui $t7, (0x01014050 >> 16) # lui $t7, 0x101 -/* 07C920 8007BD20 AFA20018 */ sw $v0, 0x18($sp) -/* 07C924 8007BD24 244E0008 */ addiu $t6, $v0, 8 -/* 07C928 8007BD28 AC8E0000 */ sw $t6, ($a0) -/* 07C92C 8007BD2C 8FB90018 */ lw $t9, 0x18($sp) -/* 07C930 8007BD30 35EF4050 */ ori $t7, (0x01014050 & 0xFFFF) # ori $t7, $t7, 0x4050 -/* 07C934 8007BD34 37181100 */ ori $t8, (0xF5101100 & 0xFFFF) # ori $t8, $t8, 0x1100 -/* 07C938 8007BD38 AF380000 */ sw $t8, ($t9) -/* 07C93C 8007BD3C AF2F0004 */ sw $t7, 4($t9) -/* 07C940 8007BD40 8C820000 */ lw $v0, ($a0) -/* 07C944 8007BD44 3C0CF200 */ lui $t4, 0xf200 -/* 07C948 8007BD48 AFA20014 */ sw $v0, 0x14($sp) -/* 07C94C 8007BD4C 244E0008 */ addiu $t6, $v0, 8 -/* 07C950 8007BD50 AC8E0000 */ sw $t6, ($a0) -/* 07C954 8007BD54 8FB80014 */ lw $t8, 0x14($sp) -/* 07C958 8007BD58 3C0F0107 */ lui $t7, (0x0107C07C >> 16) # lui $t7, 0x107 -/* 07C95C 8007BD5C AF0C0000 */ sw $t4, ($t8) -/* 07C960 8007BD60 8FB90014 */ lw $t9, 0x14($sp) -/* 07C964 8007BD64 35EFC07C */ ori $t7, (0x0107C07C & 0xFFFF) # ori $t7, $t7, 0xc07c -/* 07C968 8007BD68 AF2F0004 */ sw $t7, 4($t9) -/* 07C96C 8007BD6C 8C820000 */ lw $v0, ($a0) -/* 07C970 8007BD70 00A9C021 */ addu $t8, $a1, $t1 -/* 07C974 8007BD74 244E0008 */ addiu $t6, $v0, 8 -/* 07C978 8007BD78 AC8E0000 */ sw $t6, ($a0) -/* 07C97C 8007BD7C 270F0820 */ addiu $t7, $t8, 0x820 -/* 07C980 8007BD80 AC4F0004 */ sw $t7, 4($v0) -/* 07C984 8007BD84 AC470000 */ sw $a3, ($v0) -/* 07C988 8007BD88 8C820000 */ lw $v0, ($a0) -/* 07C98C 8007BD8C 3C180701 */ lui $t8, (0x07014050 >> 16) # lui $t8, 0x701 -/* 07C990 8007BD90 24590008 */ addiu $t9, $v0, 8 -/* 07C994 8007BD94 AC990000 */ sw $t9, ($a0) -/* 07C998 8007BD98 37184050 */ ori $t8, (0x07014050 & 0xFFFF) # ori $t8, $t8, 0x4050 -/* 07C99C 8007BD9C 3C0EF510 */ lui $t6, 0xf510 -/* 07C9A0 8007BDA0 AC4E0000 */ sw $t6, ($v0) -/* 07C9A4 8007BDA4 AC580004 */ sw $t8, 4($v0) -/* 07C9A8 8007BDA8 8C820000 */ lw $v0, ($a0) -/* 07C9AC 8007BDAC 3C18073F */ lui $t8, (0x073FF100 >> 16) # lui $t8, 0x73f -/* 07C9B0 8007BDB0 244F0008 */ addiu $t7, $v0, 8 -/* 07C9B4 8007BDB4 AC8F0000 */ sw $t7, ($a0) -/* 07C9B8 8007BDB8 AC400004 */ sw $zero, 4($v0) -/* 07C9BC 8007BDBC AC4A0000 */ sw $t2, ($v0) -/* 07C9C0 8007BDC0 8C820000 */ lw $v0, ($a0) -/* 07C9C4 8007BDC4 3718F100 */ ori $t8, (0x073FF100 & 0xFFFF) # ori $t8, $t8, 0xf100 -/* 07C9C8 8007BDC8 AFA20004 */ sw $v0, 4($sp) -/* 07C9CC 8007BDCC 24590008 */ addiu $t9, $v0, 8 -/* 07C9D0 8007BDD0 AC990000 */ sw $t9, ($a0) -/* 07C9D4 8007BDD4 8FAE0004 */ lw $t6, 4($sp) -/* 07C9D8 8007BDD8 00000000 */ nop -/* 07C9DC 8007BDDC ADCB0000 */ sw $t3, ($t6) -/* 07C9E0 8007BDE0 8FAF0004 */ lw $t7, 4($sp) -/* 07C9E4 8007BDE4 00000000 */ nop -/* 07C9E8 8007BDE8 ADF80004 */ sw $t8, 4($t7) -/* 07C9EC 8007BDEC 8C820000 */ lw $v0, ($a0) -/* 07C9F0 8007BDF0 00000000 */ nop -/* 07C9F4 8007BDF4 AFA20000 */ sw $v0, ($sp) -/* 07C9F8 8007BDF8 24590008 */ addiu $t9, $v0, 8 -/* 07C9FC 8007BDFC AC990000 */ sw $t9, ($a0) -/* 07CA00 8007BE00 8FAE0000 */ lw $t6, ($sp) -/* 07CA04 8007BE04 3C19F510 */ lui $t9, (0xF5101000 >> 16) # lui $t9, 0xf510 -/* 07CA08 8007BE08 ADC80000 */ sw $t0, ($t6) -/* 07CA0C 8007BE0C 8FB80000 */ lw $t8, ($sp) -/* 07CA10 8007BE10 3C0E0001 */ lui $t6, (0x00014050 >> 16) # lui $t6, 1 -/* 07CA14 8007BE14 AF000004 */ sw $zero, 4($t8) -/* 07CA18 8007BE18 8C820000 */ lw $v0, ($a0) -/* 07CA1C 8007BE1C 35CE4050 */ ori $t6, (0x00014050 & 0xFFFF) # ori $t6, $t6, 0x4050 -/* 07CA20 8007BE20 244F0008 */ addiu $t7, $v0, 8 -/* 07CA24 8007BE24 AC8F0000 */ sw $t7, ($a0) -/* 07CA28 8007BE28 37391000 */ ori $t9, (0xF5101000 & 0xFFFF) # ori $t9, $t9, 0x1000 -/* 07CA2C 8007BE2C AC590000 */ sw $t9, ($v0) -/* 07CA30 8007BE30 AC4E0004 */ sw $t6, 4($v0) -/* 07CA34 8007BE34 8C820000 */ lw $v0, ($a0) -/* 07CA38 8007BE38 3C0F0007 */ lui $t7, (0x0007C07C >> 16) # lui $t7, 7 -/* 07CA3C 8007BE3C 24580008 */ addiu $t8, $v0, 8 -/* 07CA40 8007BE40 AC980000 */ sw $t8, ($a0) -/* 07CA44 8007BE44 35EFC07C */ ori $t7, (0x0007C07C & 0xFFFF) # ori $t7, $t7, 0xc07c -/* 07CA48 8007BE48 AC4F0004 */ sw $t7, 4($v0) -/* 07CA4C 8007BE4C AC4C0000 */ sw $t4, ($v0) -.L8007BE50: -/* 07CA50 8007BE50 8C820000 */ lw $v0, ($a0) -/* 07CA54 8007BE54 3C018012 */ lui $at, %hi(D_8012637C) # $at, 0x8012 -/* 07CA58 8007BE58 24590008 */ addiu $t9, $v0, 8 -/* 07CA5C 8007BE5C AC990000 */ sw $t9, ($a0) -/* 07CA60 8007BE60 AC400004 */ sw $zero, 4($v0) -/* 07CA64 8007BE64 AC480000 */ sw $t0, ($v0) -/* 07CA68 8007BE68 AC20637C */ sw $zero, %lo(D_8012637C)($at) -/* 07CA6C 8007BE6C 8C820000 */ lw $v0, ($a0) -/* 07CA70 8007BE70 31AE001F */ andi $t6, $t5, 0x1f -/* 07CA74 8007BE74 24580008 */ addiu $t8, $v0, 8 -/* 07CA78 8007BE78 AC980000 */ sw $t8, ($a0) -/* 07CA7C 8007BE7C 3C0F0001 */ lui $t7, 1 -/* 07CA80 8007BE80 31D90002 */ andi $t9, $t6, 2 -/* 07CA84 8007BE84 01C06825 */ move $t5, $t6 -/* 07CA88 8007BE88 AC4F0004 */ sw $t7, 4($v0) -/* 07CA8C 8007BE8C 13200008 */ beqz $t9, .L8007BEB0 -/* 07CA90 8007BE90 AC460000 */ sw $a2, ($v0) -/* 07CA94 8007BE94 8C820000 */ lw $v0, ($a0) -/* 07CA98 8007BE98 24180001 */ li $t8, 1 -/* 07CA9C 8007BE9C 244E0008 */ addiu $t6, $v0, 8 -/* 07CAA0 8007BEA0 AC8E0000 */ sw $t6, ($a0) -/* 07CAA4 8007BEA4 AC580004 */ sw $t8, 4($v0) -/* 07CAA8 8007BEA8 10000008 */ b .L8007BECC -/* 07CAAC 8007BEAC AC460000 */ sw $a2, ($v0) -.L8007BEB0: -/* 07CAB0 8007BEB0 8C820000 */ lw $v0, ($a0) -/* 07CAB4 8007BEB4 3C19B600 */ lui $t9, 0xb600 -/* 07CAB8 8007BEB8 244F0008 */ addiu $t7, $v0, 8 -/* 07CABC 8007BEBC AC8F0000 */ sw $t7, ($a0) -/* 07CAC0 8007BEC0 240E0001 */ li $t6, 1 -/* 07CAC4 8007BEC4 AC4E0004 */ sw $t6, 4($v0) -/* 07CAC8 8007BEC8 AC590000 */ sw $t9, ($v0) -.L8007BECC: -/* 07CACC 8007BECC 24180001 */ li $t8, 1 -/* 07CAD0 8007BED0 3C018012 */ lui $at, %hi(D_80126382) # $at, 0x8012 -/* 07CAD4 8007BED4 A4386382 */ sh $t8, %lo(D_80126382)($at) -/* 07CAD8 8007BED8 3C018012 */ lui $at, %hi(D_80126374) # $at, 0x8012 -/* 07CADC 8007BEDC AC206374 */ sw $zero, %lo(D_80126374)($at) -/* 07CAE0 8007BEE0 8C820000 */ lw $v0, ($a0) -/* 07CAE4 8007BEE4 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 -/* 07CAE8 8007BEE8 244F0008 */ addiu $t7, $v0, 8 -/* 07CAEC 8007BEEC AC8F0000 */ sw $t7, ($a0) -/* 07CAF0 8007BEF0 3C0F800E */ lui $t7, %hi(D_800DF1A8) # $t7, 0x800e -/* 07CAF4 8007BEF4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 -/* 07CAF8 8007BEF8 3C018000 */ lui $at, 0x8000 -/* 07CAFC 8007BEFC 000D7100 */ sll $t6, $t5, 4 -/* 07CB00 8007BF00 01C1C021 */ addu $t8, $t6, $at -/* 07CB04 8007BF04 25EFF1A8 */ addiu $t7, %lo(D_800DF1A8) # addiu $t7, $t7, -0xe58 -/* 07CB08 8007BF08 AC590000 */ sw $t9, ($v0) -/* 07CB0C 8007BF0C 030FC821 */ addu $t9, $t8, $t7 -/* 07CB10 8007BF10 27BD0070 */ addiu $sp, $sp, 0x70 -/* 07CB14 8007BF14 03E00008 */ jr $ra -/* 07CB18 8007BF18 AC590004 */ sw $t9, 4($v0) - diff --git a/asm/non_matchings/unknown_005740/func_8000A414.s b/asm/non_matchings/unknown_005740/func_8000A414.s deleted file mode 100644 index 4b0154d2..00000000 --- a/asm/non_matchings/unknown_005740/func_8000A414.s +++ /dev/null @@ -1,193 +0,0 @@ -glabel func_8000A414 -/* 00B014 8000A414 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 00B018 8000A418 444EF800 */ cfc1 $t6, $31 -/* 00B01C 8000A41C AFBF0014 */ sw $ra, 0x14($sp) -/* 00B020 8000A420 35C10003 */ ori $at, $t6, 3 -/* 00B024 8000A424 AFA40038 */ sw $a0, 0x38($sp) -/* 00B028 8000A428 AFA5003C */ sw $a1, 0x3c($sp) -/* 00B02C 8000A42C AFA60040 */ sw $a2, 0x40($sp) -/* 00B030 8000A430 38210002 */ xori $at, $at, 2 -/* 00B034 8000A434 44C1F800 */ ctc1 $at, $31 -/* 00B038 8000A438 C4E40000 */ lwc1 $f4, ($a3) -/* 00B03C 8000A43C C4E80004 */ lwc1 $f8, 4($a3) -/* 00B040 8000A440 460021A4 */ cvt.w.s $f6, $f4 -/* 00B044 8000A444 C4F00008 */ lwc1 $f16, 8($a3) -/* 00B048 8000A448 44CEF800 */ ctc1 $t6, $31 -/* 00B04C 8000A44C C4E4000C */ lwc1 $f4, 0xc($a3) -/* 00B050 8000A450 44083000 */ mfc1 $t0, $f6 -/* 00B054 8000A454 4459F800 */ cfc1 $t9, $31 -/* 00B058 8000A458 00000000 */ nop -/* 00B05C 8000A45C 37210003 */ ori $at, $t9, 3 -/* 00B060 8000A460 38210002 */ xori $at, $at, 2 -/* 00B064 8000A464 44C1F800 */ ctc1 $at, $31 -/* 00B068 8000A468 00000000 */ nop -/* 00B06C 8000A46C 460042A4 */ cvt.w.s $f10, $f8 -/* 00B070 8000A470 C4E80010 */ lwc1 $f8, 0x10($a3) -/* 00B074 8000A474 44D9F800 */ ctc1 $t9, $31 -/* 00B078 8000A478 44095000 */ mfc1 $t1, $f10 -/* 00B07C 8000A47C 00000000 */ nop -/* 00B080 8000A480 4458F800 */ cfc1 $t8, $31 -/* 00B084 8000A484 00000000 */ nop -/* 00B088 8000A488 37010003 */ ori $at, $t8, 3 -/* 00B08C 8000A48C 38210002 */ xori $at, $at, 2 -/* 00B090 8000A490 44C1F800 */ ctc1 $at, $31 -/* 00B094 8000A494 00000000 */ nop -/* 00B098 8000A498 460084A4 */ cvt.w.s $f18, $f16 -/* 00B09C 8000A49C C4F00014 */ lwc1 $f16, 0x14($a3) -/* 00B0A0 8000A4A0 44D8F800 */ ctc1 $t8, $31 -/* 00B0A4 8000A4A4 440A9000 */ mfc1 $t2, $f18 -/* 00B0A8 8000A4A8 00000000 */ nop -/* 00B0AC 8000A4AC 444FF800 */ cfc1 $t7, $31 -/* 00B0B0 8000A4B0 00000000 */ nop -/* 00B0B4 8000A4B4 35E10003 */ ori $at, $t7, 3 -/* 00B0B8 8000A4B8 38210002 */ xori $at, $at, 2 -/* 00B0BC 8000A4BC 44C1F800 */ ctc1 $at, $31 -/* 00B0C0 8000A4C0 00000000 */ nop -/* 00B0C4 8000A4C4 460021A4 */ cvt.w.s $f6, $f4 -/* 00B0C8 8000A4C8 44CFF800 */ ctc1 $t7, $31 -/* 00B0CC 8000A4CC 440B3000 */ mfc1 $t3, $f6 -/* 00B0D0 8000A4D0 00000000 */ nop -/* 00B0D4 8000A4D4 444EF800 */ cfc1 $t6, $31 -/* 00B0D8 8000A4D8 00000000 */ nop -/* 00B0DC 8000A4DC 35C10003 */ ori $at, $t6, 3 -/* 00B0E0 8000A4E0 38210002 */ xori $at, $at, 2 -/* 00B0E4 8000A4E4 44C1F800 */ ctc1 $at, $31 -/* 00B0E8 8000A4E8 00000000 */ nop -/* 00B0EC 8000A4EC 460042A4 */ cvt.w.s $f10, $f8 -/* 00B0F0 8000A4F0 44CEF800 */ ctc1 $t6, $31 -/* 00B0F4 8000A4F4 440C5000 */ mfc1 $t4, $f10 -/* 00B0F8 8000A4F8 00000000 */ nop -/* 00B0FC 8000A4FC 4459F800 */ cfc1 $t9, $31 -/* 00B100 8000A500 00000000 */ nop -/* 00B104 8000A504 37210003 */ ori $at, $t9, 3 -/* 00B108 8000A508 38210002 */ xori $at, $at, 2 -/* 00B10C 8000A50C 44C1F800 */ ctc1 $at, $31 -/* 00B110 8000A510 00000000 */ nop -/* 00B114 8000A514 460084A4 */ cvt.w.s $f18, $f16 -/* 00B118 8000A518 44D9F800 */ ctc1 $t9, $31 -/* 00B11C 8000A51C 8C990000 */ lw $t9, ($a0) -/* 00B120 8000A520 440D9000 */ mfc1 $t5, $f18 -/* 00B124 8000A524 AFB90034 */ sw $t9, 0x34($sp) -/* 00B128 8000A528 8CA20000 */ lw $v0, ($a1) -/* 00B12C 8000A52C 8CC30000 */ lw $v1, ($a2) -/* 00B130 8000A530 00003025 */ move $a2, $zero -/* 00B134 8000A534 00002825 */ move $a1, $zero -/* 00B138 8000A538 27A40034 */ addiu $a0, $sp, 0x34 -/* 00B13C 8000A53C A7A8002A */ sh $t0, 0x2a($sp) -/* 00B140 8000A540 A7A90028 */ sh $t1, 0x28($sp) -/* 00B144 8000A544 A7AA0026 */ sh $t2, 0x26($sp) -/* 00B148 8000A548 A7AB0024 */ sh $t3, 0x24($sp) -/* 00B14C 8000A54C A7AC0022 */ sh $t4, 0x22($sp) -/* 00B150 8000A550 A7AD0020 */ sh $t5, 0x20($sp) -/* 00B154 8000A554 AFA20030 */ sw $v0, 0x30($sp) -/* 00B158 8000A558 0C01ED32 */ jal func_8007B4C8 -/* 00B15C 8000A55C AFA3002C */ sw $v1, 0x2c($sp) -/* 00B160 8000A560 8FA20030 */ lw $v0, 0x30($sp) -/* 00B164 8000A564 3C078000 */ lui $a3, 0x8000 -/* 00B168 8000A568 8FA40034 */ lw $a0, 0x34($sp) -/* 00B16C 8000A56C 00472821 */ addu $a1, $v0, $a3 -/* 00B170 8000A570 30AE0006 */ andi $t6, $a1, 6 -/* 00B174 8000A574 35CF0018 */ ori $t7, $t6, 0x18 -/* 00B178 8000A578 24990008 */ addiu $t9, $a0, 8 -/* 00B17C 8000A57C AFB90034 */ sw $t9, 0x34($sp) -/* 00B180 8000A580 31F800FF */ andi $t8, $t7, 0xff -/* 00B184 8000A584 0018CC00 */ sll $t9, $t8, 0x10 -/* 00B188 8000A588 3C010400 */ lui $at, 0x400 -/* 00B18C 8000A58C 8FA3002C */ lw $v1, 0x2c($sp) -/* 00B190 8000A590 87A8002A */ lh $t0, 0x2a($sp) -/* 00B194 8000A594 87A90028 */ lh $t1, 0x28($sp) -/* 00B198 8000A598 87AA0026 */ lh $t2, 0x26($sp) -/* 00B19C 8000A59C 87AB0024 */ lh $t3, 0x24($sp) -/* 00B1A0 8000A5A0 87AC0022 */ lh $t4, 0x22($sp) -/* 00B1A4 8000A5A4 87AD0020 */ lh $t5, 0x20($sp) -/* 00B1A8 8000A5A8 93BF004B */ lbu $ra, 0x4b($sp) -/* 00B1AC 8000A5AC 03217025 */ or $t6, $t9, $at -/* 00B1B0 8000A5B0 35CF0050 */ ori $t7, $t6, 0x50 -/* 00B1B4 8000A5B4 AC8F0000 */ sw $t7, ($a0) -/* 00B1B8 8000A5B8 AC850004 */ sw $a1, 4($a0) -/* 00B1BC 8000A5BC 8FB80034 */ lw $t8, 0x34($sp) -/* 00B1C0 8000A5C0 3C0E0510 */ lui $t6, (0x05100020 >> 16) # lui $t6, 0x510 -/* 00B1C4 8000A5C4 27190008 */ addiu $t9, $t8, 8 -/* 00B1C8 8000A5C8 AFB90034 */ sw $t9, 0x34($sp) -/* 00B1CC 8000A5CC 35CE0020 */ ori $t6, (0x05100020 & 0xFFFF) # ori $t6, $t6, 0x20 -/* 00B1D0 8000A5D0 00677821 */ addu $t7, $v1, $a3 -/* 00B1D4 8000A5D4 AF0F0004 */ sw $t7, 4($t8) -/* 00B1D8 8000A5D8 AF0E0000 */ sw $t6, ($t8) -/* 00B1DC 8000A5DC 25380005 */ addiu $t8, $t1, 5 -/* 00B1E0 8000A5E0 A4580002 */ sh $t8, 2($v0) -/* 00B1E4 8000A5E4 A4480000 */ sh $t0, ($v0) -/* 00B1E8 8000A5E8 A44A0004 */ sh $t2, 4($v0) -/* 00B1EC 8000A5EC A05F0006 */ sb $ra, 6($v0) -/* 00B1F0 8000A5F0 93B9004F */ lbu $t9, 0x4f($sp) -/* 00B1F4 8000A5F4 240400FF */ li $a0, 255 -/* 00B1F8 8000A5F8 A0590007 */ sb $t9, 7($v0) -/* 00B1FC 8000A5FC 93A50053 */ lbu $a1, 0x53($sp) -/* 00B200 8000A600 252EFFFB */ addiu $t6, $t1, -5 -/* 00B204 8000A604 A0440009 */ sb $a0, 9($v0) -/* 00B208 8000A608 A44E000C */ sh $t6, 0xc($v0) -/* 00B20C 8000A60C A448000A */ sh $t0, 0xa($v0) -/* 00B210 8000A610 A44A000E */ sh $t2, 0xe($v0) -/* 00B214 8000A614 A05F0010 */ sb $ra, 0x10($v0) -/* 00B218 8000A618 A0450008 */ sb $a1, 8($v0) -/* 00B21C 8000A61C 93AF004F */ lbu $t7, 0x4f($sp) -/* 00B220 8000A620 A0440013 */ sb $a0, 0x13($v0) -/* 00B224 8000A624 A044001A */ sb $a0, 0x1a($v0) -/* 00B228 8000A628 A044001B */ sb $a0, 0x1b($v0) -/* 00B22C 8000A62C A044001C */ sb $a0, 0x1c($v0) -/* 00B230 8000A630 A044001D */ sb $a0, 0x1d($v0) -/* 00B234 8000A634 A0440024 */ sb $a0, 0x24($v0) -/* 00B238 8000A638 A0440025 */ sb $a0, 0x25($v0) -/* 00B23C 8000A63C A0440026 */ sb $a0, 0x26($v0) -/* 00B240 8000A640 A0440027 */ sb $a0, 0x27($v0) -/* 00B244 8000A644 25980005 */ addiu $t8, $t4, 5 -/* 00B248 8000A648 2599FFFB */ addiu $t9, $t4, -5 -/* 00B24C 8000A64C A0450012 */ sb $a1, 0x12($v0) -/* 00B250 8000A650 A4580016 */ sh $t8, 0x16($v0) -/* 00B254 8000A654 A4590020 */ sh $t9, 0x20($v0) -/* 00B258 8000A658 A44B0014 */ sh $t3, 0x14($v0) -/* 00B25C 8000A65C A44B001E */ sh $t3, 0x1e($v0) -/* 00B260 8000A660 A44D0018 */ sh $t5, 0x18($v0) -/* 00B264 8000A664 A44D0022 */ sh $t5, 0x22($v0) -/* 00B268 8000A668 A04F0011 */ sb $t7, 0x11($v0) -/* 00B26C 8000A66C 240403E0 */ li $a0, 992 -/* 00B270 8000A670 24050001 */ li $a1, 1 -/* 00B274 8000A674 24080001 */ li $t0, 1 -/* 00B278 8000A678 24070002 */ li $a3, 2 -/* 00B27C 8000A67C 24060040 */ li $a2, 64 -/* 00B280 8000A680 240E0003 */ li $t6, 3 -/* 00B284 8000A684 A0660000 */ sb $a2, ($v1) -/* 00B288 8000A688 A0670001 */ sb $a3, 1($v1) -/* 00B28C 8000A68C A0680002 */ sb $t0, 2($v1) -/* 00B290 8000A690 A0600003 */ sb $zero, 3($v1) -/* 00B294 8000A694 A4640004 */ sh $a0, 4($v1) -/* 00B298 8000A698 A4640006 */ sh $a0, 6($v1) -/* 00B29C 8000A69C A4640008 */ sh $a0, 8($v1) -/* 00B2A0 8000A6A0 A460000A */ sh $zero, 0xa($v1) -/* 00B2A4 8000A6A4 A465000C */ sh $a1, 0xc($v1) -/* 00B2A8 8000A6A8 A460000E */ sh $zero, 0xe($v1) -/* 00B2AC 8000A6AC A0660010 */ sb $a2, 0x10($v1) -/* 00B2B0 8000A6B0 A06E0011 */ sb $t6, 0x11($v1) -/* 00B2B4 8000A6B4 A0670012 */ sb $a3, 0x12($v1) -/* 00B2B8 8000A6B8 A0680013 */ sb $t0, 0x13($v1) -/* 00B2BC 8000A6BC A4650014 */ sh $a1, 0x14($v1) -/* 00B2C0 8000A6C0 A4640016 */ sh $a0, 0x16($v1) -/* 00B2C4 8000A6C4 A4640018 */ sh $a0, 0x18($v1) -/* 00B2C8 8000A6C8 A464001A */ sh $a0, 0x1a($v1) -/* 00B2CC 8000A6CC A465001C */ sh $a1, 0x1c($v1) -/* 00B2D0 8000A6D0 A460001E */ sh $zero, 0x1e($v1) -/* 00B2D4 8000A6D4 8FB80038 */ lw $t8, 0x38($sp) -/* 00B2D8 8000A6D8 8FAF0034 */ lw $t7, 0x34($sp) -/* 00B2DC 8000A6DC 24420028 */ addiu $v0, $v0, 0x28 -/* 00B2E0 8000A6E0 AF0F0000 */ sw $t7, ($t8) -/* 00B2E4 8000A6E4 8FB9003C */ lw $t9, 0x3c($sp) -/* 00B2E8 8000A6E8 24630020 */ addiu $v1, $v1, 0x20 -/* 00B2EC 8000A6EC AF220000 */ sw $v0, ($t9) -/* 00B2F0 8000A6F0 8FAE0040 */ lw $t6, 0x40($sp) -/* 00B2F4 8000A6F4 00000000 */ nop -/* 00B2F8 8000A6F8 ADC30000 */ sw $v1, ($t6) -/* 00B2FC 8000A6FC 8FBF0014 */ lw $ra, 0x14($sp) -/* 00B300 8000A700 27BD0038 */ addiu $sp, $sp, 0x38 -/* 00B304 8000A704 03E00008 */ jr $ra -/* 00B308 8000A708 00000000 */ nop -/* 00B30C 8000A70C 00000000 */ nop - diff --git a/asm/non_matchings/unknown_078050/func_800787FC.s b/asm/non_matchings/unknown_078050/func_800787FC.s deleted file mode 100644 index a68e152b..00000000 --- a/asm/non_matchings/unknown_078050/func_800787FC.s +++ /dev/null @@ -1,182 +0,0 @@ -glabel func_800787FC -/* 0793FC 800787FC 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 079400 80078800 AFBF001C */ sw $ra, 0x1c($sp) -/* 079404 80078804 AFB00018 */ sw $s0, 0x18($sp) -/* 079408 80078808 0C01E948 */ jal get_video_width_and_height_as_s32 -/* 07940C 8007880C 00808025 */ move $s0, $a0 -/* 079410 80078810 00027403 */ sra $t6, $v0, 0x10 -/* 079414 80078814 31DFFFFF */ andi $ra, $t6, 0xffff -/* 079418 80078818 AFBF0020 */ sw $ra, 0x20($sp) -/* 07941C 8007881C 8E030000 */ lw $v1, ($s0) -/* 079420 80078820 3C0E800E */ lui $t6, %hi(D_800DE5E0) # $t6, 0x800e -/* 079424 80078824 24780008 */ addiu $t8, $v1, 8 -/* 079428 80078828 AE180000 */ sw $t8, ($s0) -/* 07942C 8007882C 25CEE5E0 */ addiu $t6, %lo(D_800DE5E0) # addiu $t6, $t6, -0x1a20 -/* 079430 80078830 3C190600 */ lui $t9, 0x600 -/* 079434 80078834 AC790000 */ sw $t9, ($v1) -/* 079438 80078838 AC6E0004 */ sw $t6, 4($v1) -/* 07943C 8007883C 8E030000 */ lw $v1, ($s0) -/* 079440 80078840 3C18FA00 */ lui $t8, 0xfa00 -/* 079444 80078844 246F0008 */ addiu $t7, $v1, 8 -/* 079448 80078848 AE0F0000 */ sw $t7, ($s0) -/* 07944C 8007884C 3C198012 */ lui $t9, %hi(D_80125F30) # $t9, 0x8012 -/* 079450 80078850 AC780000 */ sw $t8, ($v1) -/* 079454 80078854 932E5F30 */ lbu $t6, %lo(D_80125F30)($t9) -/* 079458 80078858 3C188012 */ lui $t8, %hi(D_80125F31) # $t8, 0x8012 -/* 07945C 8007885C 93195F31 */ lbu $t9, %lo(D_80125F31)($t8) -/* 079460 80078860 000E7E00 */ sll $t7, $t6, 0x18 -/* 079464 80078864 00197400 */ sll $t6, $t9, 0x10 -/* 079468 80078868 01EEC025 */ or $t8, $t7, $t6 -/* 07946C 8007886C 3C198012 */ lui $t9, %hi(D_80125F32) # $t9, 0x8012 -/* 079470 80078870 932F5F32 */ lbu $t7, %lo(D_80125F32)($t9) -/* 079474 80078874 304DFFFF */ andi $t5, $v0, 0xffff -/* 079478 80078878 000F7200 */ sll $t6, $t7, 8 -/* 07947C 8007887C 030EC825 */ or $t9, $t8, $t6 -/* 079480 80078880 3C0F8012 */ lui $t7, %hi(D_80125F33) # $t7, 0x8012 -/* 079484 80078884 91F85F33 */ lbu $t8, %lo(D_80125F33)($t7) -/* 079488 80078888 01A05825 */ move $t3, $t5 -/* 07948C 8007888C 03387025 */ or $t6, $t9, $t8 -/* 079490 80078890 AC6E0004 */ sw $t6, 4($v1) -/* 079494 80078894 8FAF0020 */ lw $t7, 0x20($sp) -/* 079498 80078898 00004025 */ move $t0, $zero -/* 07949C 8007889C 19E00032 */ blez $t7, .L80078968 -/* 0794A0 800788A0 00006025 */ move $t4, $zero -/* 0794A4 800788A4 3C068012 */ lui $a2, %hi(D_80125F38) # $a2, 0x8012 -/* 0794A8 800788A8 3C098012 */ lui $t1, %hi(D_80125F3C) # $t1, 0x8012 -/* 0794AC 800788AC 3C078012 */ lui $a3, %hi(D_80125F38) # $a3, 0x8012 -/* 0794B0 800788B0 8CC65F38 */ lw $a2, %lo(D_80125F38)($a2) -/* 0794B4 800788B4 24E75F38 */ addiu $a3, %lo(D_80125F38) # addiu $a3, $a3, 0x5f38 -/* 0794B8 800788B8 25295F3C */ addiu $t1, %lo(D_80125F3C) # addiu $t1, $t1, 0x5f3c -/* 0794BC 800788BC 3C0AF600 */ lui $t2, 0xf600 -.L800788C0: -/* 0794C0 800788C0 01860019 */ multu $t4, $a2 -/* 0794C4 800788C4 310503FF */ andi $a1, $t0, 0x3ff -/* 0794C8 800788C8 0005C880 */ sll $t9, $a1, 2 -/* 0794CC 800788CC 03202825 */ move $a1, $t9 -/* 0794D0 800788D0 00001012 */ mflo $v0 -/* 0794D4 800788D4 004D082A */ slt $at, $v0, $t5 -/* 0794D8 800788D8 1020001C */ beqz $at, .L8007894C -/* 0794DC 800788DC 00000000 */ nop -.L800788E0: -/* 0794E0 800788E0 8E030000 */ lw $v1, ($s0) -/* 0794E4 800788E4 00000000 */ nop -/* 0794E8 800788E8 24780008 */ addiu $t8, $v1, 8 -/* 0794EC 800788EC AE180000 */ sw $t8, ($s0) -/* 0794F0 800788F0 8CEE0000 */ lw $t6, ($a3) -/* 0794F4 800788F4 00000000 */ nop -/* 0794F8 800788F8 004E7821 */ addu $t7, $v0, $t6 -/* 0794FC 800788FC 31F903FF */ andi $t9, $t7, 0x3ff -/* 079500 80078900 8D2F0000 */ lw $t7, ($t1) -/* 079504 80078904 0019C380 */ sll $t8, $t9, 0xe -/* 079508 80078908 030A7025 */ or $t6, $t8, $t2 -/* 07950C 8007890C 010FC821 */ addu $t9, $t0, $t7 -/* 079510 80078910 333803FF */ andi $t8, $t9, 0x3ff -/* 079514 80078914 00187880 */ sll $t7, $t8, 2 -/* 079518 80078918 01CFC825 */ or $t9, $t6, $t7 -/* 07951C 8007891C 305803FF */ andi $t8, $v0, 0x3ff -/* 079520 80078920 00187380 */ sll $t6, $t8, 0xe -/* 079524 80078924 01C57825 */ or $t7, $t6, $a1 -/* 079528 80078928 AC6F0004 */ sw $t7, 4($v1) -/* 07952C 8007892C AC790000 */ sw $t9, ($v1) -/* 079530 80078930 8CE60000 */ lw $a2, ($a3) -/* 079534 80078934 00000000 */ nop -/* 079538 80078938 0006C840 */ sll $t9, $a2, 1 -/* 07953C 8007893C 00591021 */ addu $v0, $v0, $t9 -/* 079540 80078940 004B082A */ slt $at, $v0, $t3 -/* 079544 80078944 1420FFE6 */ bnez $at, .L800788E0 -/* 079548 80078948 00000000 */ nop -.L8007894C: -/* 07954C 8007894C 8D380000 */ lw $t8, ($t1) -/* 079550 80078950 398E0001 */ xori $t6, $t4, 1 -/* 079554 80078954 01184021 */ addu $t0, $t0, $t8 -/* 079558 80078958 011F082A */ slt $at, $t0, $ra -/* 07955C 8007895C 1420FFD8 */ bnez $at, .L800788C0 -/* 079560 80078960 01C06025 */ move $t4, $t6 -/* 079564 80078964 00004025 */ move $t0, $zero -.L80078968: -/* 079568 80078968 8E030000 */ lw $v1, ($s0) -/* 07956C 8007896C 3C19FA00 */ lui $t9, 0xfa00 -/* 079570 80078970 246F0008 */ addiu $t7, $v1, 8 -/* 079574 80078974 AE0F0000 */ sw $t7, ($s0) -/* 079578 80078978 3C188012 */ lui $t8, %hi(D_80125F34) # $t8, 0x8012 -/* 07957C 8007897C AC790000 */ sw $t9, ($v1) -/* 079580 80078980 930E5F34 */ lbu $t6, %lo(D_80125F34)($t8) -/* 079584 80078984 3C198012 */ lui $t9, %hi(D_80125F35) # $t9, 0x8012 -/* 079588 80078988 93385F35 */ lbu $t8, %lo(D_80125F35)($t9) -/* 07958C 8007898C 000E7E00 */ sll $t7, $t6, 0x18 -/* 079590 80078990 00187400 */ sll $t6, $t8, 0x10 -/* 079594 80078994 01EEC825 */ or $t9, $t7, $t6 -/* 079598 80078998 3C188012 */ lui $t8, %hi(D_80125F36) # $t8, 0x8012 -/* 07959C 8007899C 930F5F36 */ lbu $t7, %lo(D_80125F36)($t8) -/* 0795A0 800789A0 3C078012 */ lui $a3, %hi(D_80125F38) # $a3, 0x8012 -/* 0795A4 800789A4 000F7200 */ sll $t6, $t7, 8 -/* 0795A8 800789A8 032EC025 */ or $t8, $t9, $t6 -/* 0795AC 800789AC 3C0F8012 */ lui $t7, %hi(D_80125F37) # $t7, 0x8012 -/* 0795B0 800789B0 91F95F37 */ lbu $t9, %lo(D_80125F37)($t7) -/* 0795B4 800789B4 3C098012 */ lui $t1, %hi(D_80125F3C) # $t1, 0x8012 -/* 0795B8 800789B8 03197025 */ or $t6, $t8, $t9 -/* 0795BC 800789BC AC6E0004 */ sw $t6, 4($v1) -/* 0795C0 800789C0 8FAF0020 */ lw $t7, 0x20($sp) -/* 0795C4 800789C4 25295F3C */ addiu $t1, %lo(D_80125F3C) # addiu $t1, $t1, 0x5f3c -/* 0795C8 800789C8 24E75F38 */ addiu $a3, %lo(D_80125F38) # addiu $a3, $a3, 0x5f38 -/* 0795CC 800789CC 3C0AF600 */ lui $t2, 0xf600 -/* 0795D0 800789D0 19E0002C */ blez $t7, .L80078A84 -/* 0795D4 800789D4 240C0001 */ li $t4, 1 -/* 0795D8 800789D8 8CE60000 */ lw $a2, ($a3) -/* 0795DC 800789DC 00000000 */ nop -.L800789E0: -/* 0795E0 800789E0 01860019 */ multu $t4, $a2 -/* 0795E4 800789E4 310503FF */ andi $a1, $t0, 0x3ff -/* 0795E8 800789E8 0005C080 */ sll $t8, $a1, 2 -/* 0795EC 800789EC 03002825 */ move $a1, $t8 -/* 0795F0 800789F0 00001012 */ mflo $v0 -/* 0795F4 800789F4 004D082A */ slt $at, $v0, $t5 -/* 0795F8 800789F8 1020001C */ beqz $at, .L80078A6C -/* 0795FC 800789FC 00000000 */ nop -.L80078A00: -/* 079600 80078A00 8E030000 */ lw $v1, ($s0) -/* 079604 80078A04 00000000 */ nop -/* 079608 80078A08 24790008 */ addiu $t9, $v1, 8 -/* 07960C 80078A0C AE190000 */ sw $t9, ($s0) -/* 079610 80078A10 8CEE0000 */ lw $t6, ($a3) -/* 079614 80078A14 00000000 */ nop -/* 079618 80078A18 004E7821 */ addu $t7, $v0, $t6 -/* 07961C 80078A1C 31F803FF */ andi $t8, $t7, 0x3ff -/* 079620 80078A20 8D2F0000 */ lw $t7, ($t1) -/* 079624 80078A24 0018CB80 */ sll $t9, $t8, 0xe -/* 079628 80078A28 032A7025 */ or $t6, $t9, $t2 -/* 07962C 80078A2C 010FC021 */ addu $t8, $t0, $t7 -/* 079630 80078A30 331903FF */ andi $t9, $t8, 0x3ff -/* 079634 80078A34 00197880 */ sll $t7, $t9, 2 -/* 079638 80078A38 01CFC025 */ or $t8, $t6, $t7 -/* 07963C 80078A3C 305903FF */ andi $t9, $v0, 0x3ff -/* 079640 80078A40 00197380 */ sll $t6, $t9, 0xe -/* 079644 80078A44 01C57825 */ or $t7, $t6, $a1 -/* 079648 80078A48 AC6F0004 */ sw $t7, 4($v1) -/* 07964C 80078A4C AC780000 */ sw $t8, ($v1) -/* 079650 80078A50 8CE60000 */ lw $a2, ($a3) -/* 079654 80078A54 00000000 */ nop -/* 079658 80078A58 0006C040 */ sll $t8, $a2, 1 -/* 07965C 80078A5C 00581021 */ addu $v0, $v0, $t8 -/* 079660 80078A60 004B082A */ slt $at, $v0, $t3 -/* 079664 80078A64 1420FFE6 */ bnez $at, .L80078A00 -/* 079668 80078A68 00000000 */ nop -.L80078A6C: -/* 07966C 80078A6C 8D390000 */ lw $t9, ($t1) -/* 079670 80078A70 398E0001 */ xori $t6, $t4, 1 -/* 079674 80078A74 01194021 */ addu $t0, $t0, $t9 -/* 079678 80078A78 011F082A */ slt $at, $t0, $ra -/* 07967C 80078A7C 1420FFD8 */ bnez $at, .L800789E0 -/* 079680 80078A80 01C06025 */ move $t4, $t6 -.L80078A84: -/* 079684 80078A84 8E030000 */ lw $v1, ($s0) -/* 079688 80078A88 3C18E700 */ lui $t8, 0xe700 -/* 07968C 80078A8C 246F0008 */ addiu $t7, $v1, 8 -/* 079690 80078A90 AE0F0000 */ sw $t7, ($s0) -/* 079694 80078A94 AC600004 */ sw $zero, 4($v1) -/* 079698 80078A98 AC780000 */ sw $t8, ($v1) -/* 07969C 80078A9C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0796A0 80078AA0 8FB00018 */ lw $s0, 0x18($sp) -/* 0796A4 80078AA4 03E00008 */ jr $ra -/* 0796A8 80078AA8 27BD0050 */ addiu $sp, $sp, 0x50 - diff --git a/asm/non_matchings/unknown_078050/render_textured_rectangle.s b/asm/non_matchings/unknown_078050/render_textured_rectangle.s deleted file mode 100644 index 19081e13..00000000 --- a/asm/non_matchings/unknown_078050/render_textured_rectangle.s +++ /dev/null @@ -1,153 +0,0 @@ -glabel render_textured_rectangle -/* 0796B8 80078AB8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0796BC 80078ABC AFBF002C */ sw $ra, 0x2c($sp) -/* 0796C0 80078AC0 AFBE0028 */ sw $fp, 0x28($sp) -/* 0796C4 80078AC4 AFB70024 */ sw $s7, 0x24($sp) -/* 0796C8 80078AC8 AFB60020 */ sw $s6, 0x20($sp) -/* 0796CC 80078ACC AFB5001C */ sw $s5, 0x1c($sp) -/* 0796D0 80078AD0 AFB40018 */ sw $s4, 0x18($sp) -/* 0796D4 80078AD4 AFB30014 */ sw $s3, 0x14($sp) -/* 0796D8 80078AD8 AFB20010 */ sw $s2, 0x10($sp) -/* 0796DC 80078ADC AFB1000C */ sw $s1, 0xc($sp) -/* 0796E0 80078AE0 AFB00008 */ sw $s0, 8($sp) -/* 0796E4 80078AE4 8C820000 */ lw $v0, ($a0) -/* 0796E8 80078AE8 3C18800E */ lui $t8, %hi(D_800DE628) # $t8, 0x800e -/* 0796EC 80078AEC 244E0008 */ addiu $t6, $v0, 8 -/* 0796F0 80078AF0 AC8E0000 */ sw $t6, ($a0) -/* 0796F4 80078AF4 2718E628 */ addiu $t8, %lo(D_800DE628) # addiu $t8, $t8, -0x19d8 -/* 0796F8 80078AF8 3C0F0600 */ lui $t7, 0x600 -/* 0796FC 80078AFC AC4F0000 */ sw $t7, ($v0) -/* 079700 80078B00 AC580004 */ sw $t8, 4($v0) -/* 079704 80078B04 8C820000 */ lw $v0, ($a0) -/* 079708 80078B08 3C0EFA00 */ lui $t6, 0xfa00 -/* 07970C 80078B0C 24590008 */ addiu $t9, $v0, 8 -/* 079710 80078B10 AC990000 */ sw $t9, ($a0) -/* 079714 80078B14 AC4E0000 */ sw $t6, ($v0) -/* 079718 80078B18 93B80043 */ lbu $t8, 0x43($sp) -/* 07971C 80078B1C 93AF0047 */ lbu $t7, 0x47($sp) -/* 079720 80078B20 0018CE00 */ sll $t9, $t8, 0x18 -/* 079724 80078B24 000FC400 */ sll $t8, $t7, 0x10 -/* 079728 80078B28 03387025 */ or $t6, $t9, $t8 -/* 07972C 80078B2C 93B9004B */ lbu $t9, 0x4b($sp) -/* 079730 80078B30 00808025 */ move $s0, $a0 -/* 079734 80078B34 0019C200 */ sll $t8, $t9, 8 -/* 079738 80078B38 01D87825 */ or $t7, $t6, $t8 -/* 07973C 80078B3C 93AE004F */ lbu $t6, 0x4f($sp) -/* 079740 80078B40 0006F080 */ sll $fp, $a2, 2 -/* 079744 80078B44 01EEC025 */ or $t8, $t7, $t6 -/* 079748 80078B48 AC580004 */ sw $t8, 4($v0) -/* 07974C 80078B4C 8CA80000 */ lw $t0, ($a1) -/* 079750 80078B50 0007F880 */ sll $ra, $a3, 2 -/* 079754 80078B54 11000051 */ beqz $t0, .L80078C9C -/* 079758 80078B58 00A05025 */ move $t2, $a1 -/* 07975C 80078B5C 3C170400 */ lui $s7, (0x04000400 >> 16) # lui $s7, 0x400 -/* 079760 80078B60 36F70400 */ ori $s7, (0x04000400 & 0xFFFF) # ori $s7, $s7, 0x400 -/* 079764 80078B64 3C16B200 */ lui $s6, 0xb200 -/* 079768 80078B68 3C15B300 */ lui $s5, 0xb300 -/* 07976C 80078B6C 3C14E400 */ lui $s4, 0xe400 -/* 079770 80078B70 3C138000 */ lui $s3, 0x8000 -/* 079774 80078B74 3C120700 */ lui $s2, 0x700 -.L80078B78: -/* 079778 80078B78 854E0004 */ lh $t6, 4($t2) -/* 07977C 80078B7C 85590006 */ lh $t9, 6($t2) -/* 079780 80078B80 000EC080 */ sll $t8, $t6, 2 -/* 079784 80078B84 910E0000 */ lbu $t6, ($t0) -/* 079788 80078B88 00197880 */ sll $t7, $t9, 2 -/* 07978C 80078B8C 91190001 */ lbu $t9, 1($t0) -/* 079790 80078B90 031E3021 */ addu $a2, $t8, $fp -/* 079794 80078B94 01FF3821 */ addu $a3, $t7, $ra -/* 079798 80078B98 000EC080 */ sll $t8, $t6, 2 -/* 07979C 80078B9C 03065821 */ addu $t3, $t8, $a2 -/* 0797A0 80078BA0 00197880 */ sll $t7, $t9, 2 -/* 0797A4 80078BA4 19600039 */ blez $t3, .L80078C8C -/* 0797A8 80078BA8 01E76021 */ addu $t4, $t7, $a3 -/* 0797AC 80078BAC 19800037 */ blez $t4, .L80078C8C -/* 0797B0 80078BB0 00006825 */ move $t5, $zero -/* 0797B4 80078BB4 04C10004 */ bgez $a2, .L80078BC8 -/* 0797B8 80078BB8 00008825 */ move $s1, $zero -/* 0797BC 80078BBC 000668C0 */ sll $t5, $a2, 3 -/* 0797C0 80078BC0 000D6823 */ negu $t5, $t5 -/* 0797C4 80078BC4 00003025 */ move $a2, $zero -.L80078BC8: -/* 0797C8 80078BC8 04E10004 */ bgez $a3, .L80078BDC -/* 0797CC 80078BCC 00000000 */ nop -/* 0797D0 80078BD0 000788C0 */ sll $s1, $a3, 3 -/* 0797D4 80078BD4 00118823 */ negu $s1, $s1 -/* 0797D8 80078BD8 00003825 */ move $a3, $zero -.L80078BDC: -/* 0797DC 80078BDC 8E020000 */ lw $v0, ($s0) -/* 0797E0 80078BE0 00000000 */ nop -/* 0797E4 80078BE4 244E0008 */ addiu $t6, $v0, 8 -/* 0797E8 80078BE8 AE0E0000 */ sw $t6, ($s0) -/* 0797EC 80078BEC 8504000A */ lh $a0, 0xa($t0) -/* 0797F0 80078BF0 00000000 */ nop -/* 0797F4 80078BF4 309800FF */ andi $t8, $a0, 0xff -/* 0797F8 80078BF8 0018CC00 */ sll $t9, $t8, 0x10 -/* 0797FC 80078BFC 000470C0 */ sll $t6, $a0, 3 -/* 079800 80078C00 31D8FFFF */ andi $t8, $t6, 0xffff -/* 079804 80078C04 03327825 */ or $t7, $t9, $s2 -/* 079808 80078C08 01F8C825 */ or $t9, $t7, $t8 -/* 07980C 80078C0C AC590000 */ sw $t9, ($v0) -/* 079810 80078C10 8D0E000C */ lw $t6, 0xc($t0) -/* 079814 80078C14 31790FFF */ andi $t9, $t3, 0xfff -/* 079818 80078C18 01D37821 */ addu $t7, $t6, $s3 -/* 07981C 80078C1C AC4F0004 */ sw $t7, 4($v0) -/* 079820 80078C20 8E020000 */ lw $v0, ($s0) -/* 079824 80078C24 00197300 */ sll $t6, $t9, 0xc -/* 079828 80078C28 24580008 */ addiu $t8, $v0, 8 -/* 07982C 80078C2C AE180000 */ sw $t8, ($s0) -/* 079830 80078C30 31980FFF */ andi $t8, $t4, 0xfff -/* 079834 80078C34 01D47825 */ or $t7, $t6, $s4 -/* 079838 80078C38 01F8C825 */ or $t9, $t7, $t8 -/* 07983C 80078C3C 30CE0FFF */ andi $t6, $a2, 0xfff -/* 079840 80078C40 000E7B00 */ sll $t7, $t6, 0xc -/* 079844 80078C44 30F80FFF */ andi $t8, $a3, 0xfff -/* 079848 80078C48 AC590000 */ sw $t9, ($v0) -/* 07984C 80078C4C 01F8C825 */ or $t9, $t7, $t8 -/* 079850 80078C50 AC590004 */ sw $t9, 4($v0) -/* 079854 80078C54 8E020000 */ lw $v0, ($s0) -/* 079858 80078C58 3239FFFF */ andi $t9, $s1, 0xffff -/* 07985C 80078C5C 244E0008 */ addiu $t6, $v0, 8 -/* 079860 80078C60 AE0E0000 */ sw $t6, ($s0) -/* 079864 80078C64 000DC400 */ sll $t8, $t5, 0x10 -/* 079868 80078C68 03197025 */ or $t6, $t8, $t9 -/* 07986C 80078C6C AC4E0004 */ sw $t6, 4($v0) -/* 079870 80078C70 AC550000 */ sw $s5, ($v0) -/* 079874 80078C74 8E020000 */ lw $v0, ($s0) -/* 079878 80078C78 00000000 */ nop -/* 07987C 80078C7C 244F0008 */ addiu $t7, $v0, 8 -/* 079880 80078C80 AE0F0000 */ sw $t7, ($s0) -/* 079884 80078C84 AC570004 */ sw $s7, 4($v0) -/* 079888 80078C88 AC560000 */ sw $s6, ($v0) -.L80078C8C: -/* 07988C 80078C8C 8D480008 */ lw $t0, 8($t2) -/* 079890 80078C90 254A0008 */ addiu $t2, $t2, 8 -/* 079894 80078C94 1500FFB8 */ bnez $t0, .L80078B78 -/* 079898 80078C98 00000000 */ nop -.L80078C9C: -/* 07989C 80078C9C 8E020000 */ lw $v0, ($s0) -/* 0798A0 80078CA0 3C19E700 */ lui $t9, 0xe700 -/* 0798A4 80078CA4 24580008 */ addiu $t8, $v0, 8 -/* 0798A8 80078CA8 AE180000 */ sw $t8, ($s0) -/* 0798AC 80078CAC AC400004 */ sw $zero, 4($v0) -/* 0798B0 80078CB0 AC590000 */ sw $t9, ($v0) -/* 0798B4 80078CB4 8E020000 */ lw $v0, ($s0) -/* 0798B8 80078CB8 2418FFFF */ li $t8, -1 -/* 0798BC 80078CBC 244E0008 */ addiu $t6, $v0, 8 -/* 0798C0 80078CC0 AE0E0000 */ sw $t6, ($s0) -/* 0798C4 80078CC4 3C0FFA00 */ lui $t7, 0xfa00 -/* 0798C8 80078CC8 AC4F0000 */ sw $t7, ($v0) -/* 0798CC 80078CCC AC580004 */ sw $t8, 4($v0) -/* 0798D0 80078CD0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0798D4 80078CD4 8FBE0028 */ lw $fp, 0x28($sp) -/* 0798D8 80078CD8 8FB70024 */ lw $s7, 0x24($sp) -/* 0798DC 80078CDC 8FB60020 */ lw $s6, 0x20($sp) -/* 0798E0 80078CE0 8FB5001C */ lw $s5, 0x1c($sp) -/* 0798E4 80078CE4 8FB40018 */ lw $s4, 0x18($sp) -/* 0798E8 80078CE8 8FB30014 */ lw $s3, 0x14($sp) -/* 0798EC 80078CEC 8FB20010 */ lw $s2, 0x10($sp) -/* 0798F0 80078CF0 8FB1000C */ lw $s1, 0xc($sp) -/* 0798F4 80078CF4 8FB00008 */ lw $s0, 8($sp) -/* 0798F8 80078CF8 03E00008 */ jr $ra -/* 0798FC 80078CFC 27BD0030 */ addiu $sp, $sp, 0x30 - diff --git a/asm/non_matchings/video/func_8007A98C.s b/asm/non_matchings/video/func_8007A98C.s deleted file mode 100644 index 9980dd48..00000000 --- a/asm/non_matchings/video/func_8007A98C.s +++ /dev/null @@ -1,114 +0,0 @@ -glabel func_8007A98C -/* 07B58C 8007A98C 3C038012 */ lui $v1, %hi(D_801262D0) # $v1, 0x8012 -/* 07B590 8007A990 246362D0 */ addiu $v1, %lo(D_801262D0) # addiu $v1, $v1, 0x62d0 -/* 07B594 8007A994 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 07B598 8007A998 8C620000 */ lw $v0, ($v1) -/* 07B59C 8007A99C AFB1001C */ sw $s1, 0x1c($sp) -/* 07B5A0 8007A9A0 AFB00018 */ sw $s0, 0x18($sp) -/* 07B5A4 8007A9A4 00808825 */ move $s1, $a0 -/* 07B5A8 8007A9A8 AFBF0024 */ sw $ra, 0x24($sp) -/* 07B5AC 8007A9AC AFB20020 */ sw $s2, 0x20($sp) -/* 07B5B0 8007A9B0 10400006 */ beqz $v0, .L8007A9CC -/* 07B5B4 8007A9B4 24100001 */ li $s0, 1 -/* 07B5B8 8007A9B8 244EFFFF */ addiu $t6, $v0, -1 -/* 07B5BC 8007A9BC 15C00003 */ bnez $t6, .L8007A9CC -/* 07B5C0 8007A9C0 AC6E0000 */ sw $t6, ($v1) -/* 07B5C4 8007A9C4 0C034744 */ jal osViBlack -/* 07B5C8 8007A9C8 00002025 */ move $a0, $zero -.L8007A9CC: -/* 07B5CC 8007A9CC 24010008 */ li $at, 8 -/* 07B5D0 8007A9D0 12210003 */ beq $s1, $at, .L8007A9E0 -/* 07B5D4 8007A9D4 00000000 */ nop -/* 07B5D8 8007A9D8 0C01EAE7 */ jal swap_framebuffers -/* 07B5DC 8007A9DC 00000000 */ nop -.L8007A9E0: -/* 07B5E0 8007A9E0 3C128012 */ lui $s2, %hi(gVideoMesgQueue) # $s2, 0x8012 -/* 07B5E4 8007A9E4 265261A0 */ addiu $s2, %lo(gVideoMesgQueue) # addiu $s2, $s2, 0x61a0 -/* 07B5E8 8007A9E8 02402025 */ move $a0, $s2 -/* 07B5EC 8007A9EC 00002825 */ move $a1, $zero -/* 07B5F0 8007A9F0 0C0322EC */ jal osRecvMesg -/* 07B5F4 8007A9F4 00003025 */ move $a2, $zero -/* 07B5F8 8007A9F8 2411FFFF */ li $s1, -1 -/* 07B5FC 8007A9FC 1051000A */ beq $v0, $s1, .L8007AA28 -/* 07B600 8007AA00 00000000 */ nop -.L8007AA04: -/* 07B604 8007AA04 26100001 */ addiu $s0, $s0, 1 -/* 07B608 8007AA08 321800FF */ andi $t8, $s0, 0xff -/* 07B60C 8007AA0C 03008025 */ move $s0, $t8 -/* 07B610 8007AA10 02402025 */ move $a0, $s2 -/* 07B614 8007AA14 00002825 */ move $a1, $zero -/* 07B618 8007AA18 0C0322EC */ jal osRecvMesg -/* 07B61C 8007AA1C 00003025 */ move $a2, $zero -/* 07B620 8007AA20 1451FFF8 */ bne $v0, $s1, .L8007AA04 -/* 07B624 8007AA24 00000000 */ nop -.L8007AA28: -/* 07B628 8007AA28 3C118012 */ lui $s1, %hi(D_80126309) # $s1, 0x8012 -/* 07B62C 8007AA2C 26316309 */ addiu $s1, %lo(D_80126309) # addiu $s1, $s1, 0x6309 -/* 07B630 8007AA30 92240000 */ lbu $a0, ($s1) -/* 07B634 8007AA34 02001825 */ move $v1, $s0 -/* 07B638 8007AA38 0204082A */ slt $at, $s0, $a0 -/* 07B63C 8007AA3C 10200012 */ beqz $at, .L8007AA88 -/* 07B640 8007AA40 3C068012 */ lui $a2, %hi(D_80126308) # $a2, 0x8012 -/* 07B644 8007AA44 3C068012 */ lui $a2, %hi(D_80126308) # $a2, 0x8012 -/* 07B648 8007AA48 24C66308 */ addiu $a2, %lo(D_80126308) # addiu $a2, $a2, 0x6308 -/* 07B64C 8007AA4C 90C50000 */ lbu $a1, ($a2) -/* 07B650 8007AA50 00000000 */ nop -/* 07B654 8007AA54 28A10014 */ slti $at, $a1, 0x14 -/* 07B658 8007AA58 10200004 */ beqz $at, .L8007AA6C -/* 07B65C 8007AA5C 00A01025 */ move $v0, $a1 -/* 07B660 8007AA60 24B90001 */ addiu $t9, $a1, 1 -/* 07B664 8007AA64 A0D90000 */ sb $t9, ($a2) -/* 07B668 8007AA68 332200FF */ andi $v0, $t9, 0xff -.L8007AA6C: -/* 07B66C 8007AA6C 24010014 */ li $at, 20 -/* 07B670 8007AA70 14410012 */ bne $v0, $at, .L8007AABC -/* 07B674 8007AA74 0064082A */ slt $at, $v1, $a0 -/* 07B678 8007AA78 A2300000 */ sb $s0, ($s1) -/* 07B67C 8007AA7C A0C00000 */ sb $zero, ($a2) -/* 07B680 8007AA80 1000000D */ b .L8007AAB8 -/* 07B684 8007AA84 320400FF */ andi $a0, $s0, 0xff -.L8007AA88: -/* 07B688 8007AA88 24C66308 */ addiu $a2, %lo(D_80126308) # addiu $a2, $a2, 0x6308 -/* 07B68C 8007AA8C 0083082A */ slt $at, $a0, $v1 -/* 07B690 8007AA90 10200009 */ beqz $at, .L8007AAB8 -/* 07B694 8007AA94 A0C00000 */ sb $zero, ($a2) -/* 07B698 8007AA98 3C088012 */ lui $t0, %hi(D_801262E4) # $t0, 0x8012 -/* 07B69C 8007AA9C 910862E4 */ lbu $t0, %lo(D_801262E4)($t0) -/* 07B6A0 8007AAA0 00000000 */ nop -/* 07B6A4 8007AAA4 0103082A */ slt $at, $t0, $v1 -/* 07B6A8 8007AAA8 14200004 */ bnez $at, .L8007AABC -/* 07B6AC 8007AAAC 0064082A */ slt $at, $v1, $a0 -/* 07B6B0 8007AAB0 A2300000 */ sb $s0, ($s1) -/* 07B6B4 8007AAB4 320400FF */ andi $a0, $s0, 0xff -.L8007AAB8: -/* 07B6B8 8007AAB8 0064082A */ slt $at, $v1, $a0 -.L8007AABC: -/* 07B6BC 8007AABC 1020000A */ beqz $at, .L8007AAE8 -.L8007AAC0: -/* 07B6C0 8007AAC0 02402025 */ move $a0, $s2 -/* 07B6C4 8007AAC4 00002825 */ move $a1, $zero -/* 07B6C8 8007AAC8 0C0322EC */ jal osRecvMesg -/* 07B6CC 8007AACC 24060001 */ li $a2, 1 -/* 07B6D0 8007AAD0 922A0000 */ lbu $t2, ($s1) -/* 07B6D4 8007AAD4 26100001 */ addiu $s0, $s0, 1 -/* 07B6D8 8007AAD8 320300FF */ andi $v1, $s0, 0xff -/* 07B6DC 8007AADC 006A082A */ slt $at, $v1, $t2 -/* 07B6E0 8007AAE0 1420FFF7 */ bnez $at, .L8007AAC0 -/* 07B6E4 8007AAE4 00608025 */ move $s0, $v1 -.L8007AAE8: -/* 07B6E8 8007AAE8 3C048012 */ lui $a0, %hi(gVideoLastFramebuffer) # $a0, 0x8012 -/* 07B6EC 8007AAEC 8C8462D8 */ lw $a0, %lo(gVideoLastFramebuffer)($a0) -/* 07B6F0 8007AAF0 0C034908 */ jal osViSwapBuffer -/* 07B6F4 8007AAF4 AFA30028 */ sw $v1, 0x28($sp) -/* 07B6F8 8007AAF8 02402025 */ move $a0, $s2 -/* 07B6FC 8007AAFC 00002825 */ move $a1, $zero -/* 07B700 8007AB00 0C0322EC */ jal osRecvMesg -/* 07B704 8007AB04 24060001 */ li $a2, 1 -/* 07B708 8007AB08 8FBF0024 */ lw $ra, 0x24($sp) -/* 07B70C 8007AB0C 8FA20028 */ lw $v0, 0x28($sp) -/* 07B710 8007AB10 8FB00018 */ lw $s0, 0x18($sp) -/* 07B714 8007AB14 8FB1001C */ lw $s1, 0x1c($sp) -/* 07B718 8007AB18 8FB20020 */ lw $s2, 0x20($sp) -/* 07B71C 8007AB1C 03E00008 */ jr $ra -/* 07B720 8007AB20 27BD0030 */ addiu $sp, $sp, 0x30 - diff --git a/include/level_object_entries.h b/include/level_object_entries.h index c0d5831b..0d344e87 100644 --- a/include/level_object_entries.h +++ b/include/level_object_entries.h @@ -535,4 +535,12 @@ typedef struct LevelObjectEntry_Midichset { /* 0x0B */ u8 unkB; } LevelObjectEntry_Midichset; +typedef struct LevelObjectEntry8000E2B4 { + LevelObjectEntryCommon common; + s16 unk8; + s16 unkA; + s16 unkC; + s16 unkE; +} LevelObjectEntry8000E2B4; + #endif diff --git a/include/sched.h b/include/sched.h index 917d8a6a..799a6aca 100644 --- a/include/sched.h +++ b/include/sched.h @@ -16,6 +16,9 @@ #define OS_SC_ID_VIDEO 2 #define OS_SC_ID_PRENMI 3 +#define OSMESG_SWAP_BUFFER 0 +#define MESG_SKIP_BUFFER_SWAP 8 + /* * OSScTask state */ diff --git a/lib/src/mips1/sc/sched.c b/lib/src/mips1/sc/sched.c index fa132262..f5c6b5bc 100644 --- a/lib/src/mips1/sc/sched.c +++ b/lib/src/mips1/sc/sched.c @@ -20,9 +20,8 @@ /************ .data ************/ -// Unsure about if this is an array or struct. s32 D_800DE730[] = { 0, 0 }; -s32 D_800DE738[] = { 0, 8 }; +s32 gBootBlackoutMesg[] = { OSMESG_SWAP_BUFFER, MESG_SKIP_BUFFER_SWAP }; f32 D_800DE740 = 0; f32 D_800DE744 = 0; @@ -147,8 +146,7 @@ OSMesgQueue *osScGetInterruptQ(OSSched *sc) { return &sc->interruptQ; } -// Unused. -void func_80079584(f32 *arg0, f32 *arg1, f32 *arg2) { +UNUSED void func_80079584(f32 *arg0, f32 *arg1, f32 *arg2) { *arg0 = D_800DE740; *arg1 = D_800DE748; *arg2 = D_800DE74C; @@ -255,7 +253,7 @@ void __scHandleRetrace(OSSched *sc) { if ((gCurRDPTaskCounter > 10) && (sc->curRDPTask)) { if (sc->curRDPTask->unk68 == 0) { - osSendMesg(sc->curRDPTask->msgQ, &D_800DE738, OS_MESG_BLOCK); + osSendMesg(sc->curRDPTask->msgQ, &gBootBlackoutMesg, OS_MESG_BLOCK); } set_curRDPTask_NULL = TRUE; @@ -380,7 +378,7 @@ void __scHandleRDP(OSSched *sc) { t = sc->curRDPTask; sc->curRDPTask = 0; - t->state &= -2; + t->state &= ~OS_SC_NEEDS_RDP; __scTaskComplete(sc, t); diff --git a/src/game.c b/src/game.c index 12109e4b..f87a939d 100644 --- a/src/game.c +++ b/src/game.c @@ -595,7 +595,7 @@ void load_level(s32 levelId, s32 numberOfPlayers, s32 entranceId, s32 vehicleId, } update_camera_fov(gCurrentLevelHeader->cameraFOV); set_background_prim_colour(gCurrentLevelHeader->bgColorRed, gCurrentLevelHeader->bgColorGreen, gCurrentLevelHeader->bgColorBlue); - func_8007A974(); + reset_video_delta_time(); func_8007AB24(gCurrentLevelHeader->unk4[numberOfPlayers]); } #else @@ -697,7 +697,8 @@ void func_8006BEFC(void) { } void func_8006BFC8(s8 *arg0) { - s32 temp, temp2; + s32 temp; + UNUSED s32 temp2; s16 phi_v1; s8 phi_s0; Settings *settings; @@ -734,9 +735,9 @@ void func_8006BFC8(s8 *arg0) { if (get_render_context() == DRAW_MENU) { phi_s0 = 5; } - gTempAssetTable = load_asset_section_from_rom(ASSET_UNKNOWN_0_TABLE); + gTempAssetTable = (s32 *) load_asset_section_from_rom(ASSET_UNKNOWN_0_TABLE); phi_v1 = 0; - while (-1U != gTempAssetTable[phi_v1]) { + while (-1 != (s32) gTempAssetTable[phi_v1]) { phi_v1++; } phi_v1--; @@ -746,7 +747,7 @@ void func_8006BFC8(s8 *arg0) { temp2 = gTempAssetTable[phi_s0]; temp = gTempAssetTable[phi_s0 + 1] - temp2; D_801211C0 = allocate_from_main_pool_safe(temp, COLOUR_TAG_YELLOW); - load_asset_to_address(ASSET_UNKNOWN_0, D_801211C0, temp2, temp); + load_asset_to_address(ASSET_UNKNOWN_0, (u32) D_801211C0, temp2, temp); free_from_memory_pool(gTempAssetTable); } @@ -881,7 +882,7 @@ void init_game(void) { func_80081218(); create_and_start_thread30(); osCreateMesgQueue(&gNMIMesgQueue, &gNMIMesgBuf, 1); - osScAddClient(&gMainSched, gNMISched, &gNMIMesgQueue, OS_SC_ID_PRENMI); + osScAddClient(&gMainSched, (OSScClient*) gNMISched, &gNMIMesgQueue, OS_SC_ID_PRENMI); D_80123560[0] = 0; D_80123504 = 0; D_80123508 = 0; @@ -917,7 +918,7 @@ void main_game_loop(void) { gSPTaskNum += 1; gSPTaskNum &= 1; } - if (D_800DD3F0 != 0) { + if (D_800DD3F0) { D_800DD3F0 -= 1; } @@ -932,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, &gCurrHudMat, 1); + render_background(&gCurrDisplayList, (Mtx *) &gCurrHudMat, 1); D_800DD37C = func_8006A1C4(D_800DD37C, sLogicUpdateRate); if (get_lockup_status()) { render_epc_lock_up_display(); @@ -956,7 +957,7 @@ void main_game_loop(void) { func_8006DCF8(sLogicUpdateRate); break; case DRAW_GAME: // In game (Controlling a character) - func_8006CCF0(sLogicUpdateRate); + ingame_logic_loop(sLogicUpdateRate); break; case DRAW_CRASH_SCREEN: // EPC (lockup display) lockup_screen_loop(sLogicUpdateRate); @@ -1006,7 +1007,7 @@ void main_game_loop(void) { // the mul factor is hardcapped at 6, which happens at 10FPS. The mul factor // affects frameskipping, to maintain consistent game speed, through the (many) // dropped frames in DKR. - tempLogicUpdateRate = func_8007A98C(D_800DD380); + tempLogicUpdateRate = swap_framebuffer_when_ready(D_800DD380); sLogicUpdateRate = tempLogicUpdateRate; tempLogicUpdateRateMax = LOGIC_10FPS; if (tempLogicUpdateRate > tempLogicUpdateRateMax) { @@ -1063,20 +1064,27 @@ void func_8006CC14(void) { set_free_queue_state(2); } -void func_8006CCF0(s32 updateRate) { +/** + * The main behaviour function involving all of the ingame stuff. + * Involves the updating of all objects and setting up the render scene. +*/ +void ingame_logic_loop(s32 updateRate) { s32 buttonPressedInputs, buttonHeldInputs, i, sp40, sp3C; sp40 = 0; buttonHeldInputs = 0; buttonPressedInputs = 0; + // Get input data for all 4 players. for (i = 0; i < get_active_player_count(); i++) { buttonHeldInputs |= get_buttons_held_from_player(i); buttonPressedInputs |= get_buttons_pressed_from_player(i); } + // Spam the start button, making the game unplayable because it's constantly paused. if (sAntiPiracyTriggered) { buttonPressedInputs |= START_BUTTON; } + // Update all objects if (!gIsPaused) { func_80010994(updateRate); if (func_80066510() == 0 || func_8001139C()) { @@ -1104,46 +1112,46 @@ void func_8006CCF0(s32 updateRate) { // Ignore the user's L/R/Z buttons. buttonHeldInputs &= ~(L_TRIG | R_TRIG | Z_TRIG); } - if (D_80123516 != 0) { - i = func_80095728(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts, updateRate); - switch (i - 1) { - case 1: + if (D_80123516) { + i = func_80095728(&gCurrDisplayList, &gCurrHudMat, &gCurrHudVerts, updateRate); + switch (i) { + case 2: buttonHeldInputs |= (L_TRIG | Z_TRIG); break; - case 0: + case 1: D_80123516 = 0; func_8006D8F0(-1); break; - case 3: - func_8006C2E4(); + case 4: + func_8006C2E4(); D_800DD390 = 0; buttonHeldInputs |= (L_TRIG | R_TRIG); break; - case 4: + case 5: buttonHeldInputs |= L_TRIG, sp40 = 1; break; - case 7: + case 8: buttonHeldInputs |= L_TRIG, sp40 = 2; break; - case 8: + case 9: buttonHeldInputs |= L_TRIG, sp40 = 3; break; - case 9: + case 10: buttonHeldInputs |= L_TRIG, sp40 = 4; break; - case 10: + case 11: buttonHeldInputs |= L_TRIG, sp40 = 5; break; - case 11: + case 12: buttonHeldInputs |= L_TRIG, sp40 = 6; break; - case 12: + case 13: buttonHeldInputs |= L_TRIG, sp40 = 7; break; @@ -1161,7 +1169,7 @@ void func_8006CCF0(s32 updateRate) { } } if (gIsPaused) { - i = func_80094170(&gCurrDisplayList, updateRate); + i = render_pause_menu(&gCurrDisplayList, updateRate); switch (i - 1) { case 0: gIsPaused = FALSE; @@ -1710,7 +1718,7 @@ void calc_and_alloc_heap_for_settings(void) { gSettingsPtr->courseTimesPtr[0] = (u16 *)((u8 *)gSettingsPtr + sizes[11]); gSettingsPtr->courseTimesPtr[1] = (u16 *)((u8 *)gSettingsPtr + sizes[12]); gSettingsPtr->courseTimesPtr[2] = (u16 *)((u8 *)gSettingsPtr + sizes[13]); - gSettingsPtr->unk4C = &D_80121250; + gSettingsPtr->unk4C = (Settings4C *) &D_80121250; D_800DD37C = 263; } diff --git a/src/game.h b/src/game.h index 79ff21b5..5a7e7d57 100644 --- a/src/game.h +++ b/src/game.h @@ -162,7 +162,7 @@ void func_8006F42C(void); void pre_intro_loop(void); s32 is_controller_missing(void); s32 check_imem_validity(void); -void func_8006CCF0(s32 updateRate); +void ingame_logic_loop(s32 updateRate); //Non Matching void func_8006ECFC(s32 numberOfPlayers); diff --git a/src/game_ui.c b/src/game_ui.c index 8430bbd7..c6c68ee9 100644 --- a/src/game_ui.c +++ b/src/game_ui.c @@ -242,7 +242,7 @@ s32 D_80127194; s32 D_80127198[6]; // ???? -s32 D_801271B0[640]; +u8 gGfxTaskYieldData[0xA00]; /******************************/ diff --git a/src/game_ui.h b/src/game_ui.h index 3373d1c9..c803c9a6 100644 --- a/src/game_ui.h +++ b/src/game_ui.h @@ -49,7 +49,7 @@ extern u32 D_80126D00; extern u32 D_80126D04; extern u8 D_80126D37; -extern s32 D_801271B0[640]; +extern u8 gGfxTaskYieldData[0xA00]; u8 func_800A0190(void); void func_800A0B74(void); @@ -84,5 +84,6 @@ void func_800A718C(Object_64 *); void func_800AA600(Gfx **arg0, u32 *arg1, u32 *arg2, unk80126CDC *arg3); void func_8009ECF0(s32 viewPortCount); void func_800A003C(void); +void func_800A8474(Gfx **gfx, Mtx **mtx, VertexList **vtx, s32 updateRate); #endif diff --git a/src/menu.c b/src/menu.c index 39e76fcd..e505b410 100644 --- a/src/menu.c +++ b/src/menu.c @@ -48,7 +48,7 @@ VertexList *sMenuCurrHudVerts; TriangleList *sMenuCurrHudTris; unk801263C0 D_801263B4; unk801263C0 D_801263B8; -s32 D_801263BC; +s32 gOptionBlinkTimer; unk801263C0 D_801263C0; s32 gIgnorePlayerInput; @@ -219,10 +219,10 @@ u8 sControllerPakIssueNotFound[MAXCONTROLLERS]; //Flag to see if there's no know u8 sControllerPakFatalErrorFound[MAXCONTROLLERS]; //Flag to see if there's a fatal error for the given controller pak u8 sControllerPakNoFreeSpace[MAXCONTROLLERS]; //Flag to see if there's no free space for the given controller pak u8 sControllerPakBadData[MAXCONTROLLERS]; //Flag to see if there's bad data for the given controller pak -char *D_80126A40[8]; //Menu Text +char *gMenuOptionText[8]; //Menu Text u8 sControllerPakDataPresent[MAXCONTROLLERS]; //Flag to see if there's data present for the given controller pak? Not sure u8 *D_80126A64; -s32 D_80126A68; //sCurrentControllerIndex? +s32 gMenuOption; //sCurrentControllerIndex? s32 D_80126A6C; s32 D_80126A70; s32 D_80126A74; @@ -910,8 +910,8 @@ const f32 D_800E7D04[1] = { 0.5f }; // .rodata f32 *D_800E0978 = D_800E7D04; // .data s32 D_800E097C = 0; s32 D_800E0980 = 0; -s32 D_800E0984 = 0; -s32 D_800E0988 = 0; +s32 gMenuOptionCap = 0; +s32 gMenuSubOption = 0; s32 D_800E098C = 0; //Player ID or controllerIndex maybe? ColourRGBA D_800E0990[4] = { @@ -1772,7 +1772,7 @@ void menu_init(u32 menuId) { gCurrentMenuId = menuId; reset_controller_sticks(); gIgnorePlayerInput = 1; - D_801263BC = 0; + gOptionBlinkTimer = 0; sUnused_801263C8 = 0; sUnused_80126828 = 0; @@ -2409,7 +2409,7 @@ void menu_title_screen_init(void) { UNUSED s8 *tempArr; D_800DF488 = 1; - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; reset_character_id_slots(); gSaveFileIndex = 0; @@ -2477,7 +2477,7 @@ void func_8008377C(UNUSED s32 arg0, f32 arg1) { set_text_background_colour(0, 0, 0, 0); while(gTitleMenuStrings[i] != NULL) { if (i == gTitleScreenCurrentOption) { - alpha = (D_801263BC & 0x1F) * 16; + alpha = (gOptionBlinkTimer & 0x1F) * 16; if (alpha > 255) { alpha = 511 - alpha; } @@ -2507,7 +2507,7 @@ s32 menu_title_screen_loop(s32 updateRate) { s8 var_a1; sp18 = func_80069D20(); - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; func_8008E4EC(); if (osTvType == 0) { sp1C = (f32) updateRate / 50.0f; @@ -2657,7 +2657,7 @@ void func_80084118(void) { } void menu_options_init(void) { - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; func_800C01D8(&sMenuTransitionFadeOut); load_font(ASSET_FONTS_BIGFONT); @@ -2687,8 +2687,8 @@ void render_options_menu_ui(UNUSED s32 updateRate) { while (gOptionMenuStrings[optionMenuTextIndex] != NULL) { if (optionMenuTextIndex == D_800DF460) { - alpha = D_801263BC * 8; - if (D_801263BC >= 32) { + alpha = gOptionBlinkTimer * 8; + if (gOptionBlinkTimer >= 32) { alpha = 511 - alpha; } } else { @@ -2708,7 +2708,7 @@ s32 menu_options_loop(s32 updateRate) { s32 analogX; s32 analogY; - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; if (gMenuDelay != 0) { if (gMenuDelay > 0) { @@ -2827,7 +2827,7 @@ void unload_big_font_1(void) { void menu_audio_options_init(void) { gOptionsMenuItemIndex = 0; - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; D_801269FC = NULL; D_801263D8 = -1; @@ -2865,7 +2865,7 @@ s32 menu_audio_options_loop(s32 arg0) { s32 i; sp30 = 0; - D_801263BC = (s32)((D_801263BC + arg0) & 0x3F); + gOptionBlinkTimer = (s32)((gOptionBlinkTimer + arg0) & 0x3F); if (gMenuDelay != 0) { if (gMenuDelay > 0) { gMenuDelay += arg0; @@ -3022,7 +3022,7 @@ void menu_save_options_init(void) { D_80126A18 = 1; D_80126A1C = 1; gOptionsMenuItemIndex = 0; - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; D_801263E0 = 1; D_801263D8 = 0; @@ -3110,7 +3110,7 @@ void func_80085B9C(UNUSED s32 updateRate) { draw_text(&sMenuCurrDisplayList, SCREEN_WIDTH_HALF, 32, gMenuText[ASSET_MENU_TEXT_SAVEOPTIONS], ALIGN_MIDDLE_CENTER); if (drawTexturedRectangle) { yPos = (osTvType == TV_TYPE_PAL) ? SCREEN_HEIGHT_HALF_PAL : SCREEN_HEIGHT_HALF; - yPos += ((s32) (D_801263BC & 0x1F) >> 1); + yPos += ((s32) (gOptionBlinkTimer & 0x1F) >> 1); var_s2 = 0; tempTex = &gMenuSelectionArrowDown[var_s2]; do { @@ -3617,10 +3617,10 @@ void func_800887E8(void) { D_80126C10 = 0; D_801263E0 = 0; - D_801263BC = 0; - D_80126A68 = -1; + gOptionBlinkTimer = 0; + gMenuOption = -1; load_menu_text(get_language()); - if (func_80087F14(&D_80126A68, 0) == CONTROLLER_PAK_GOOD) { + if (func_80087F14(&gMenuOption, 0) == CONTROLLER_PAK_GOOD) { gMenuDelay = 0; } else if (check_for_controller_pak_errors() == PAK_ERROR_NONE) { gMenuDelay = 20; @@ -3651,7 +3651,7 @@ void render_controller_pak_ui(UNUSED s32 updateRate) { s32 yPos = 0; set_text_background_colour(0, 0, 0, 0); - alpha = D_801263BC << 3; + alpha = gOptionBlinkTimer << 3; if (alpha >= 256) { alpha = 511 - alpha; } @@ -3678,7 +3678,7 @@ void render_controller_pak_ui(UNUSED s32 updateRate) { set_dialogue_font(6, ASSET_FONTS_FUNFONT); set_current_text_colour(6, 255, 255, 255, 0, 255); set_current_text_background_colour(6, 0, 0, 0, 0); - render_dialogue_text(6, POS_CENTRED, 2, gMenuText[86 + D_80126A68], 1, 4); //ASSET_MENU_TEXT_CONTPAK1 - CONTROLLER PAK 1 / 2 / 3 / 4 + render_dialogue_text(6, POS_CENTRED, 2, gMenuText[86 + gMenuOption], 1, 4); //ASSET_MENU_TEXT_CONTPAK1 - CONTROLLER PAK 1 / 2 / 3 / 4 render_dialogue_text(6, POS_CENTRED, 16, gMenuText[ASSET_MENU_TEXT_FREEPAGESX], sCurrentControllerPakFreeSpace, 4); //FREE PAGES: ~ render_dialogue_box(&sMenuCurrDisplayList, NULL, NULL, 6); @@ -3718,7 +3718,7 @@ void render_controller_pak_ui(UNUSED s32 updateRate) { yPos += 16; } if (D_801263D8 < (16 - sControllerPakMenuNumberOfRows)) { - if ((D_801263BC & 8) != 0) { + if ((gOptionBlinkTimer & 8) != 0) { render_textured_rectangle(&sMenuCurrDisplayList, gMenuSelectionArrowDown, SCREEN_WIDTH_HALF, yPos + 8, 255, 255, 255, 255); func_8007B3D0(&sMenuCurrDisplayList); } @@ -3786,7 +3786,7 @@ s32 menu_controller_pak_loop(s32 updateRate) { UNUSED s32 pad; s32 temp_v1_2; - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; if (gMenuDelay < 20) { render_controller_pak_ui(updateRate); } @@ -3802,7 +3802,7 @@ s32 menu_controller_pak_loop(s32 updateRate) { if (sControllerPakError != PAK_ERROR_NONE) { if ((sControllerPakError != PAK_ERROR_FATAL) && (pressedButtons & (A_BUTTON | START_BUTTON))) { play_sound_global(SOUND_SELECT2, NULL); - if (func_80087F14(&D_80126A68, 0) == CONTROLLER_PAK_GOOD) { + if (func_80087F14(&gMenuOption, 0) == CONTROLLER_PAK_GOOD) { sControllerPakError = PAK_ERROR_NONE; } else if (check_for_controller_pak_errors() == PAK_ERROR_NONE) { gShowControllerPakMenu = 0; @@ -3818,7 +3818,7 @@ s32 menu_controller_pak_loop(s32 updateRate) { if (D_80126C10 != 0) { D_80126C10--; if (D_80126C10 == 0) { - if (delete_file(D_80126A68, D_800DF460) != CONTROLLER_PAK_GOOD) { + if (delete_file(gMenuOption, D_800DF460) != CONTROLLER_PAK_GOOD) { //Failed to delete the file playCancelSound = TRUE; gMenuDelay = 1; @@ -3826,7 +3826,7 @@ s32 menu_controller_pak_loop(s32 updateRate) { } else { //File deleted successfully playSelectedSound = TRUE; - if (func_80087F14(&D_80126A68, xStick) != CONTROLLER_PAK_GOOD) { + if (func_80087F14(&gMenuOption, xStick) != CONTROLLER_PAK_GOOD) { playCancelSound = TRUE; gMenuDelay = 1; func_800C01D8(&sMenuTransitionFadeIn); @@ -3948,7 +3948,7 @@ void menu_magic_codes_init(void) { sUnused_80126470 = 0; D_80126C4C = -1; D_80126C58[0] = 0; - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; D_801263D8 = 0; D_801263E0 = 0; @@ -3986,7 +3986,7 @@ void render_magic_codes_ui(s32 arg0) { for (j = 0; j < 7; j++) { xPos = 64 + (j * 32); if (gOptionsMenuItemIndex == 5 && j == gCheatInputCurrentColumn && i == gCheatInputCurrentRow) { - temp = D_801263BC * 8; + temp = gOptionBlinkTimer * 8; if (temp >= 256) { temp = 511 - temp; } @@ -4008,7 +4008,7 @@ void render_magic_codes_ui(s32 arg0) { yPos += 0x16; } - temp = D_801263BC * 8; + temp = gOptionBlinkTimer * 8; if (temp >= 256) { temp = 511 - temp; } @@ -4095,7 +4095,7 @@ void unload_big_font_2(void) { } void menu_magic_codes_list_init(void) { - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; D_801263E0 = 0; gOptionsMenuItemIndex = (u16)0; @@ -4136,7 +4136,7 @@ void render_magic_codes_list_menu_text(s32 arg0) { phi_v0 <<= 1; } yPos = 54; - alpha = D_801263BC; + alpha = gOptionBlinkTimer; alpha *= 8; if (alpha >= 256) { alpha = 511 - alpha; @@ -4165,7 +4165,7 @@ void render_magic_codes_list_menu_text(s32 arg0) { draw_text(&sMenuCurrDisplayList, POS_CENTRED, yPos, gMenuText[ASSET_MENU_TEXT_RETURN], ALIGN_TOP_CENTER); // RETURN return; } - if (D_801263BC & 8) { + if (gOptionBlinkTimer & 8) { render_textured_rectangle(&sMenuCurrDisplayList, &gMenuSelectionArrowDown, SCREEN_WIDTH_HALF, yPos + 8, 255, 255, 255, 255); } } @@ -4199,7 +4199,7 @@ s32 menu_magic_codes_list_loop(s32 arg0) { gMenuDelay -= arg0; } } - D_801263BC = (D_801263BC + arg0) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + arg0) & 0x3F; if (gMenuDelay >= -0x13 && gMenuDelay < 0x14) { render_magic_codes_list_menu_text(arg0); } @@ -4393,7 +4393,7 @@ void menu_character_select_init(void) { } gNumberOfReadyPlayers = 0; gMenuDelay = 0; - D_801263BC = 0; + gOptionBlinkTimer = 0; D_800DF484 = 0; for (i = 0; (i < 4) && (!breakTheLoop); i++) { if (gActivePlayersArray[i] != 0) { @@ -4712,7 +4712,7 @@ void menu_game_select_init(void) { s32 i; gMenuDelay = 0; - D_801263BC = 0; + gOptionBlinkTimer = 0; D_800DF460 = 0; D_801263E0 = 2; func_800C01D8(&sMenuTransitionFadeOut); @@ -4753,7 +4753,7 @@ void func_8008C698(UNUSED s32 updateRate) { s32 fade; if (gMenuDelay >= -21 && gMenuDelay < 22) { - fade = D_801263BC * 8; + fade = gOptionBlinkTimer * 8; fade = fade; if (fade >= 0x100) { fade = 0x1FF - fade; @@ -4789,7 +4789,7 @@ s32 menu_game_select_loop(s32 updateRate) { func_8008C168(updateRate); - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; if (D_801263D8 != 0) { D_801263D8++; @@ -4894,7 +4894,7 @@ void menu_file_select_init(void) { gSaveFileIndex = 0; gMenuDelay = 0; D_801263E0 = 0; - D_801263BC = 0; + gOptionBlinkTimer = 0; D_80126484 = FALSE; D_80126488 = FALSE; D_80126CC0 = 0; @@ -4997,7 +4997,7 @@ void render_file_select_menu(UNUSED s32 updateRate) { } } } - phi_v0_2 = D_801263BC * 8; + phi_v0_2 = gOptionBlinkTimer * 8; if (phi_v0_2 >= 0x100) { phi_v0_2 = 0x1FF - phi_v0_2; } @@ -5362,7 +5362,7 @@ s32 menu_file_select_loop(s32 updateRate) { D_801263D8 = 0; } } - D_801263BC = (D_801263BC + updateRate) & 0x3f; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3f; if (gMenuDelay != 0) { if (gMenuDelay > 0) { gMenuDelay += updateRate; @@ -5506,7 +5506,7 @@ s32 menu_track_select_loop(s32 updateRate) { Settings *settings; settings = get_settings(); - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; if (get_thread30_level_id_to_load() == 0 && gMenuDelay != 0) { if (gMenuDelay < 0) { gMenuDelay -= updateRate; @@ -5676,7 +5676,7 @@ void render_track_select_setup_ui(s32 updateRate) { set_text_colour(192, 192, 255, 0, sMenuGuiOpacity); set_text_background_colour(0, 0, 0, 0); draw_text(&sMenuCurrDisplayList, POS_CENTRED, 43, get_level_name(gTrackIdForPreview), ALIGN_MIDDLE_CENTER); // Draw track name? - sp84 = D_801263BC * 8; + sp84 = gOptionBlinkTimer * 8; if (sp84 >= 256) { sp84 = 511 - sp84; } @@ -5955,7 +5955,7 @@ void menu_5_init(void) { settings = get_settings(); gTrackIdForPreview = 0; - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; s0 = settings->unk4C->unk2; gPlayerSelectVehicle[PLAYER_ONE] = func_8006B0AC(s0); @@ -5988,7 +5988,7 @@ void menu_5_init(void) { gRaceSelectionTTTexture[0].texture = D_80126550[TEXTURE_ICON_TT_HEAD]; func_800C01D8(&sMenuTransitionFadeOut); - D_801263BC = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; D_800E0980 = 30; load_font(ASSET_FONTS_BIGFONT); @@ -6036,7 +6036,7 @@ s32 menu_5_loop(s32 updateRate) { } } } - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; func_80092E94(updateRate, sp1C, sp20); if (sp1C < 2) { gPlayerSelectVehicle[PLAYER_ONE] = func_8006B0AC(sp24); @@ -6136,40 +6136,40 @@ void func_80093A40(void) { if (D_800E098C < 0) { D_800E098C = 0; } - D_80126A40[0] = gMenuText[ASSET_MENU_TEXT_CONTINUE]; - D_800E0984 = 1; + gMenuOptionText[0] = gMenuText[ASSET_MENU_TEXT_CONTINUE]; + gMenuOptionCap = 1; if (gTrophyRaceWorldId == 0) { raceType = func_8006B14C(settings->courseId); if ((settings->worldId == WORLD_CENTRAL_AREA) && (func_8002341C() != 0)) { - D_80126A40[1] = gMenuText[ASSET_MENU_TEXT_ABANDONCHALLENGE]; - D_800E0984 = 2; + gMenuOptionText[1] = gMenuText[ASSET_MENU_TEXT_ABANDONCHALLENGE]; + gMenuOptionCap = 2; } else if ((settings->worldId > WORLD_CENTRAL_AREA) && (raceType != RACETYPE_BOSS)) { if (raceType & RACETYPE_CHALLENGE) { - D_80126A40[1] = gMenuText[ASSET_MENU_TEXT_RESTARTCHALLENGE]; - D_80126A40[2] = (!gIsInTracksMode) ? gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY] : gMenuText[ASSET_MENU_TEXT_SELECTTRACK]; - D_800E0984 = 3; + gMenuOptionText[1] = gMenuText[ASSET_MENU_TEXT_RESTARTCHALLENGE]; + gMenuOptionText[2] = (!gIsInTracksMode) ? gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY] : gMenuText[ASSET_MENU_TEXT_SELECTTRACK]; + gMenuOptionCap = 3; } else if (raceType == RACETYPE_DEFAULT) { - D_80126A40[1] = gMenuText[ASSET_MENU_TEXT_RESTARTRACE]; - D_80126A40[2] = (!gIsInTracksMode) ? gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY] : gMenuText[ASSET_MENU_TEXT_SELECTTRACK]; - D_800E0984 = 3; + gMenuOptionText[1] = gMenuText[ASSET_MENU_TEXT_RESTARTRACE]; + gMenuOptionText[2] = (!gIsInTracksMode) ? gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY] : gMenuText[ASSET_MENU_TEXT_SELECTTRACK]; + gMenuOptionCap = 3; } } else if ((!gIsInTracksMode) && (raceType == RACETYPE_BOSS)) { - D_80126A40[1] = gMenuText[ASSET_MENU_TEXT_RESTARTRACE]; - D_80126A40[2] = gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY]; - D_800E0984 = 3; + gMenuOptionText[1] = gMenuText[ASSET_MENU_TEXT_RESTARTRACE]; + gMenuOptionText[2] = gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY]; + gMenuOptionCap = 3; } if ((gIsInTracksMode == TRUE) && (gNumberOfActivePlayers == 1)) { - D_80126A40[D_800E0984++] = gMenuText[ASSET_MENU_TEXT_SELECTCHARACTER]; + gMenuOptionText[gMenuOptionCap++] = gMenuText[ASSET_MENU_TEXT_SELECTCHARACTER]; } - D_80126A40[D_800E0984++] = gMenuText[ASSET_MENU_TEXT_QUITGAME]; + gMenuOptionText[gMenuOptionCap++] = gMenuText[ASSET_MENU_TEXT_QUITGAME]; } else { - D_80126A40[D_800E0984++] = gMenuText[ASSET_MENU_TEXT_QUITTROPHYRACE]; + gMenuOptionText[gMenuOptionCap++] = gMenuText[ASSET_MENU_TEXT_QUITTROPHYRACE]; } - D_80126A68 = 0; - D_801263BC = 0; + gMenuOption = 0; + gOptionBlinkTimer = 0; gMenuDelay = 0; gIgnorePlayerInput = 1; - D_800E0988 = 0; + gMenuSubOption = 0; reset_controller_sticks(); } @@ -6185,8 +6185,8 @@ void func_80093D40(UNUSED s32 updateRate) { s32 xPos; s32 alpha; - for (i = 0, xPos = SCREEN_WIDTH_HALF; i < D_800E0984; i++) { - x = func_800C4DA0(D_80126A40[i], 0, 0) + 8; + for (i = 0, xPos = SCREEN_WIDTH_HALF; i < gMenuOptionCap; i++) { + x = func_800C4DA0(gMenuOptionText[i], 0, 0) + 8; if (xPos < x) { xPos = x; } @@ -6194,7 +6194,7 @@ void func_80093D40(UNUSED s32 updateRate) { baseYPos = (osTvType == TV_TYPE_PAL) ? SCREEN_HEIGHT_HALF_PAL : SCREEN_HEIGHT_HALF; - yOffset = ((D_800E0984 * 16) + 28); + yOffset = ((gMenuOptionCap * 16) + 28); func_800C56D0(7); assign_dialogue_box_id(7); @@ -6209,11 +6209,11 @@ void func_80093D40(UNUSED s32 updateRate) { set_current_text_background_colour(7, 128, 128, 255, 0); colours = &D_800E09A0[get_player_id(D_800E098C)]; set_current_text_colour(7, colours->r, colours->g, colours->b, colours->a, 255); - alpha = D_801263BC * 8; + alpha = gOptionBlinkTimer * 8; if (alpha >= 256) { alpha = 511 - alpha; } - if (D_800E0988 != 0) { + if (gMenuSubOption != 0) { if (gTrophyRaceWorldId != 0) { yOffset -= 26; render_dialogue_text(7, POS_CENTRED, yOffset + 8, gMenuText[ASSET_MENU_TEXT_QUITTROPHYRACETITLE], 1, 12); @@ -6221,13 +6221,13 @@ void func_80093D40(UNUSED s32 updateRate) { yOffset -= 26; render_dialogue_text(7, POS_CENTRED, yOffset + 8, gMenuText[ASSET_MENU_TEXT_QUITGAMETITLE], 1, 12); } - if (D_800E0988 == 1) { + if (gMenuSubOption == 1) { set_current_text_colour(7, 255, 255, 255, alpha, 255); } else { set_current_text_colour(7, 255, 255, 255, 0, 255); } render_dialogue_text(7, POS_CENTRED, yOffset + 28, gMenuText[ASSET_MENU_TEXT_OK], 1, 12); // OK - if (D_800E0988 == 2) { + if (gMenuSubOption == 2) { set_current_text_colour(7, 255, 255, 255, alpha, 255); } else { set_current_text_colour(7, 255, 255, 255, 0, 255); @@ -6235,13 +6235,13 @@ void func_80093D40(UNUSED s32 updateRate) { render_dialogue_text(7, POS_CENTRED, yOffset + 44, gMenuText[ASSET_MENU_TEXT_CANCEL], 1, 12); } else { render_dialogue_text(7, POS_CENTRED, 12, gMenuText[ASSET_MENU_TEXT_PAUSEOPTIONS], D_800E098C + 1, 12); - for (i = 0, yOffset = 32; i < D_800E0984; i++, yOffset += 16) { - if (i == D_80126A68) { + for (i = 0, yOffset = 32; i < gMenuOptionCap; i++, yOffset += 16) { + if (i == gMenuOption) { set_current_text_colour(7, 255, 255, 255, alpha, 255); } else { set_current_text_colour(7, 255, 255, 255, 0, 255); } - render_dialogue_text(7, POS_CENTRED, yOffset, D_80126A40[i], 1, 12); + render_dialogue_text(7, POS_CENTRED, yOffset, gMenuOptionText[i], 1, 12); } } open_dialogue_box(7); @@ -6250,19 +6250,23 @@ void func_80093D40(UNUSED s32 updateRate) { GLOBAL_ASM("asm/non_matchings/menu/func_80093D40.s") #endif -//Pause menu -s32 func_80094170(UNUSED Gfx **dl, s32 updateRate) { +/** + * Show the available options when the player pauses the game. + * Returns a different behaviour value depending on what's selected, + * making the main game loop do different things. + */ +s32 render_pause_menu(UNUSED Gfx **dl, s32 updateRate) { s8 temp; s32 playerId; s32 buttonsPressed; - if (D_800E0984 == 0) { + if (gMenuOptionCap == 0) { func_80000968(0); return 0; } func_80000968(1); - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; update_controller_sticks(); buttonsPressed = 0; @@ -6271,52 +6275,52 @@ s32 func_80094170(UNUSED Gfx **dl, s32 updateRate) { } if (gMenuDelay == 0) { - if (D_800E0988 != 0) { + if (gMenuSubOption != 0) { if (buttonsPressed & (A_BUTTON | START_BUTTON)) { play_sound_global(SOUND_SELECT2, NULL); - if (D_800E0988 == 1) { + if (gMenuSubOption == 1) { gMenuDelay = 1; } else { - D_800E0988 = 0; + gMenuSubOption = 0; } } else if (buttonsPressed & B_BUTTON) { play_sound_global(SOUND_SELECT2, NULL); - D_800E0988 = 0; + gMenuSubOption = 0; } else { - temp = D_800E0988; + temp = gMenuSubOption; playerId = D_800E098C; if (gControllersYAxisDirection[playerId] != 0) { - D_800E0988 = 3 - D_800E0988; + gMenuSubOption = 3 - gMenuSubOption; } - if (temp != D_800E0988) { + if (temp != gMenuSubOption) { play_sound_global(SOUND_MENU_PICK2, NULL); } } } else if (buttonsPressed & (A_BUTTON | START_BUTTON)) { play_sound_global(SOUND_SELECT2, NULL); - if ((D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_QUITGAME]) || - ((gTrophyRaceWorldId != 0) && (D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_QUITTROPHYRACE]))) { - D_800E0988 = 2; + if ((gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_QUITGAME]) || + ((gTrophyRaceWorldId != 0) && (gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_QUITTROPHYRACE]))) { + gMenuSubOption = 2; } else { gMenuDelay = 1; } } else { - temp = D_80126A68; + temp = gMenuOption; playerId = D_800E098C; buttonsPressed = gControllersYAxisDirection[playerId]; if (buttonsPressed < 0) { - D_80126A68++; + gMenuOption++; } if (buttonsPressed > 0) { - D_80126A68--; + gMenuOption--; } - if (D_80126A68 < 0) { - D_80126A68 = D_800E0984 - 1; + if (gMenuOption < 0) { + gMenuOption = gMenuOptionCap - 1; } - if (D_80126A68 >= D_800E0984) { - D_80126A68 = 0; + if (gMenuOption >= gMenuOptionCap) { + gMenuOption = 0; } - if (temp != D_80126A68) { + if (temp != gMenuOption) { play_sound_global(SOUND_MENU_PICK2, NULL); } } @@ -6324,7 +6328,7 @@ s32 func_80094170(UNUSED Gfx **dl, s32 updateRate) { gMenuDelay++; if (gMenuDelay >= 4) { n_alSynRemovePlayer(); - if (D_800E0988 == 1) { + if (gMenuSubOption == 1) { if (gTrophyRaceWorldId != 0) { gTrophyRaceWorldId = 0; if (gIsInTracksMode == 0) { @@ -6334,26 +6338,26 @@ s32 func_80094170(UNUSED Gfx **dl, s32 updateRate) { } return 4; } - if (D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_CONTINUE]) { + if (gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_CONTINUE]) { func_80000968(0); return 1; } - if ((D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_RESTARTRACE]) || (D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_RESTARTCHALLENGE])) { + if ((gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_RESTARTRACE]) || (gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_RESTARTCHALLENGE])) { if ((gIsInTracksMode == 0) && (D_800E0758[func_8006EB14()] != -1)) { func_80000FDC(D_800E0758[func_8006EB14()], 0, 1.0f); } return 2; } - if (D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY]) { + if (gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_RETURNTOLOBBY]) { return 3; } - if (D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_SELECTTRACK]) { + if (gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_SELECTTRACK]) { return 5; } - if (D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_SELECTCHARACTER]) { + if (gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_SELECTCHARACTER]) { return 12; } - if (D_80126A40[D_80126A68] == gMenuText[ASSET_MENU_TEXT_ABANDONCHALLENGE]) { + if (gMenuOptionText[gMenuOption] == gMenuText[ASSET_MENU_TEXT_ABANDONCHALLENGE]) { func_80000968(0); return 7; } @@ -6370,7 +6374,7 @@ void n_alSynRemovePlayer(void) { func_80072298(1); close_dialogue_box(7); assign_dialogue_box_id(7); - D_800E0984 = 0; + gMenuOptionCap = 0; } void n_alSeqpDelete(void) { @@ -6394,7 +6398,7 @@ GLOBAL_ASM("asm/non_matchings/menu/func_80094688.s") GLOBAL_ASM("asm/non_matchings/menu/func_80094A5C.s") void func_80094C14(s32 arg0) { - D_801263BC = (D_801263BC + arg0) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + arg0) & 0x3F; D_80126A94 += arg0; if (D_801263D8 >= 0) { D_801263D8 += arg0; @@ -6498,12 +6502,12 @@ void menu_11_init(void) { } D_801263E0 = -1; - D_801263BC = 0; + gOptionBlinkTimer = 0; D_801263D8 = 0; gMenuDelay = 0; - D_80126A68 = 0; + gMenuOption = 0; gIgnorePlayerInput = 1; - D_800E0988 = 0; + gMenuSubOption = 0; func_8009C674(D_800E0A24); allocate_menu_images(D_800E0A40); assign_racer_portrait_textures(); @@ -6990,9 +6994,9 @@ void func_80098EBC(s32 arg0) { s32 fade; s32 i; - D_801263BC = (D_801263BC + arg0) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + arg0) & 0x3F; - test = D_801263BC * 8; + test = gOptionBlinkTimer * 8; if (test >= 0x100) { test = 0x1FF - test; } @@ -7081,7 +7085,7 @@ void menu_ghost_data_init(void) { assign_vehicle_icon_textures(); assign_racer_portrait_textures(); func_8008E4B0(); - D_801263BC = 0; + gOptionBlinkTimer = 0; D_801263E0 = 0; D_801263D8 = 0; gMenuDelay = 0; @@ -7106,7 +7110,7 @@ s32 menu_ghost_data_loop(s32 updateRate) { s32 temp; UNUSED s32 unused; - D_801263BC = (D_801263BC + updateRate) & 0x3F; + gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; if ((gMenuDelay >= -19) && (gMenuDelay < 20)) { func_80099E8C(updateRate); diff --git a/src/menu.h b/src/menu.h index 671fed6d..1bff7e2b 100644 --- a/src/menu.h +++ b/src/menu.h @@ -476,8 +476,8 @@ extern s32 D_800E0974; extern f32* D_800E0978; extern s32 D_800E097C; extern s32 D_800E0980; -extern s32 D_800E0984; -extern s32 D_800E0988; +extern s32 gMenuOptionCap; +extern s32 gMenuSubOption; extern s32 D_800E098C; extern s16 D_800E0A24[14]; @@ -661,7 +661,7 @@ extern TextureHeader *D_80126664; extern Gfx *sMenuCurrDisplayList; extern Mtx *sMenuCurrHudMat; extern const char D_800E8208[]; -extern s32 D_801263BC; +extern s32 gOptionBlinkTimer; extern s32 D_801263E0; extern s32 D_80126A00; extern unk800861C8 *D_80126A04; @@ -818,7 +818,7 @@ s32 menu_trophy_race_round_loop(s32 updateRate); void render_controller_pak_ui(UNUSED s32 updateRate); PakError check_for_controller_pak_errors(void); void func_80093A40(void); -s32 func_80094170(UNUSED Gfx **dl, s32 updateRate); +s32 render_pause_menu(UNUSED Gfx **dl, s32 updateRate); s32 menu_track_select_loop(s32 updateRate); s32 func_800867D4(void); s32 menu_enter_filename_loop(s32 updateRate); @@ -878,6 +878,7 @@ void func_80080580(Gfx **arg0, s16 arg1, s16 arg2, s32 arg3, s32 arg4, s32 arg5, void func_800853D0(unk800861C8 *arg0, s32 arg1, s32 arg2); void render_enter_filename_ui(UNUSED s32 unused); void func_8008D8BC(s32 updateRate); +s32 func_80095728(Gfx **gfx, Mtx **mtx, VertexList **vtx, s32 updateRate); typedef enum MenuTextures { /* 0x00 */ TEXTURE_UNK_00, diff --git a/src/objects.c b/src/objects.c index d2cf023b..61cdf3e3 100644 --- a/src/objects.c +++ b/src/objects.c @@ -43,10 +43,8 @@ s8 D_800DC73C = 0; s8 D_800DC740 = 0; s8 D_800DC744 = 0; s8 D_800DC748 = 0; -s32 D_800DC74C = 0; // Currently unknown, might be a different type. -s32 D_800DC750 = 0; // Currently unknown, might be a different type. -s32 D_800DC754 = 0; // Currently unknown, might be a different type. -s32 D_800DC758 = 0; // Currently unknown, might be a different type. +s32 D_800DC74C[2] = {0, 0}; // Have a feeling these are both the same array. +s32 D_800DC754[2] = {0, 0}; Object *D_800DC75C = NULL; // Currently unknown, might be a different type. s32 D_800DC760 = 9; // Currently unknown, might be a different type. Object *D_800DC764 = NULL; // Currently unknown, might be a different type. @@ -272,30 +270,40 @@ extern s16 D_8011D5AC; GLOBAL_ASM("asm/non_matchings/objects/func_8000B020.s") -#ifdef NON_EQUIVALENT -extern s32 D_800DC754; -extern Object *D_800DC75C; -extern Object *D_800DC764; +struct TempStruct9 { + u8 pad[0x78]; + Sprite* unk78; + TextureHeader* unk7C; +}; -s32 *get_misc_asset(s32 arg0); +void func_8000B290(void) { + Sprite *temp_a0_2; + TextureHeader *temp_a0_3; + s32 temp_a0; + struct TempStruct9 *var_s0; + u32 i; -// Not positive about the data argument. -// It just made sense since there seemed to be nothing else to pass to free_from_memory_pool -void func_8000B290(void *data) { - - if (D_800DC754) { - free_from_memory_pool(data); + temp_a0 = D_800DC754[0]; + if (temp_a0 != 0) { + free_from_memory_pool((void* ) temp_a0); + D_800DC754[0] = 0; + D_800DC754[1] = 0; + D_800DC74C[0] = 0; + D_800DC74C[1] = 0; + } + var_s0 = (struct TempStruct9 *) get_misc_asset(0x14); + for (i = 0; i < 10; i++) { + temp_a0_2 = var_s0[i].unk78; + if (temp_a0_2 != 0) { + free_sprite(temp_a0_2); + var_s0[i].unk78 = 0; + } + temp_a0_3 = var_s0[i].unk7C; + if (temp_a0_3 != 0) { + free_texture(temp_a0_3); + var_s0[i].unk7C = 0; + } } - get_misc_asset(MISC_ASSET_UNK14); - /*{ - if(D_800DC754->unk7a) - free_sprite(); - D_800DC754->unk7a = 0; - - if(D_800DC754->unk7C) - free_texture(); - D_800DC754->unk7C = 0; - }*/ if (D_800DC75C) gParticlePtrList_addObject(D_800DC75C); D_800DC75C = NULL; @@ -303,12 +311,8 @@ void func_8000B290(void *data) { if (D_800DC764) gParticlePtrList_addObject(D_800DC764); D_800DC764 = NULL; - gParticlePtrList_flush(); } -#else -GLOBAL_ASM("asm/non_matchings/objects/func_8000B290.s") -#endif GLOBAL_ASM("asm/non_matchings/objects/func_8000B38C.s") GLOBAL_ASM("asm/non_matchings/objects/func_8000B750.s") @@ -619,34 +623,25 @@ void func_8000E1EC(Object *object, s32 arg1) { gObjectCount = 0; } -#ifdef NON_EQUIVALENT -typedef struct LevelObjectEntry8000E2B4 { - LevelObjectEntryCommon common; - s16 unk8; - s16 unkA; - s16 unkC; - s16 unkE; -} LevelObjectEntry8000E2B4; - void func_8000E2B4(void) { + Object *player; LevelObjectEntry8000E2B4 sp2C; Settings *settings; - Object *player; Object_Racer *player_64; s16 object_id; - if (D_8011AD44 == 0) { + if (!D_8011AD44) { return; } - D_8011AD44 = (s8) (D_8011AD44 - 1); - if (D_8011AD44 != 0) { + D_8011AD44--; + if (D_8011AD44) { return; } settings = get_settings(); sp2C.unkE = 0; sp2C.common.size = 0x10; if (D_8011AD45 < 5) { - object_id = ((s16*)D_800DC7A8)[settings->racers[0].character + D_8011AD45 * 10]; + object_id = ((s16*) D_800DC7A8)[settings->racers[0].character + D_8011AD45 * 10]; } else { object_id = D_800DC7B8[D_8011AD45 + 37]; } @@ -654,7 +649,7 @@ void func_8000E2B4(void) { sp2C.common.size = sp2C.common.size | ((s32) (object_id & 0x100) >> 1); sp2C.unkA = 0; sp2C.unk8 = 0; - sp2C.common.objectID = (s8) object_id; + sp2C.common.objectID = object_id; sp2C.common.x = D_8011AD46; sp2C.common.y = D_8011AD48; sp2C.common.z = D_8011AD4A; @@ -662,16 +657,16 @@ void func_8000E2B4(void) { func_800521B8(1); player = spawn_object(&sp2C, 0x11); gObjectCount = 1; - (*gObjectStructArrayPtr)[0] = (s32) player; - *D_8011AEEC = (s32) player; + (*gObjectStructArrayPtr)[0] = player; + *D_8011AEEC = player; *D_8011AEE8 = player; player_64 = &player->unk64->racer; - player_64->unk1D6 = (s8) D_8011AD45; - player_64->unk2 = (u8)0; - player_64->unk1D7 = (s8) D_8011AD45; - player_64->playerIndex = (u16)0; - player_64->unk118 = 0; + player_64->unk1D6 = D_8011AD45; + player_64->unk1D7 = D_8011AD45; + player_64->unk2 = 0; player_64->characterId = (s8) settings->racers[0].character; + player_64->playerIndex = 0; + player_64->unk118 = 0; if (get_filtered_cheats() & CHEAT_BIG_CHARACTERS) { player->segment.trans.scale *= 1.4f; } @@ -682,9 +677,6 @@ void func_8000E2B4(void) { player->segment.trans.y_rotation = D_8011AD4C; player->segment.trans.y_position = D_8011AD48; } -#else -GLOBAL_ASM("asm/non_matchings/objects/func_8000E2B4.s") -#endif /** * Enables or Disables time trial mode. @@ -826,11 +818,11 @@ s32 func_80010028(s32 arg0) { return (gAssetsLvlObjTranslationTable[arg0] < gAssetsObjectHeadersTableLength); } -#ifdef NON_EQUIVALENT -//bad regalloc; swap s2 = s3 -/*removes objects in particleList from gObjPtrList and frees*/ +/* + * Clears all existing particles from the object list + */ void gParticlePtrList_flush(void) { - s32 j, i, search_indx, tmp; + s32 j, i, search_indx; Object *searchObj; D_8011AE88 = 0; @@ -845,11 +837,11 @@ void gParticlePtrList_flush(void) { //if object found if (search_indx != -1) { - tmp = D_8011AE7C; - if (search_indx < D_8011AE7C) - D_8011AE7C = tmp - 1; - + if (search_indx < D_8011AE7C) { + D_8011AE7C--; + } objCount--; + if (0); for (j = search_indx; j < objCount; j++) { gObjPtrList[j] = gObjPtrList[j + 1]; } @@ -858,9 +850,6 @@ void gParticlePtrList_flush(void) { } gParticleCount = 0; } -#else -GLOBAL_ASM("asm/non_matchings/objects/gParticlePtrList_flush.s") -#endif GLOBAL_ASM("asm/non_matchings/objects/func_800101AC.s") GLOBAL_ASM("asm/non_matchings/objects/func_80010994.s") @@ -1832,261 +1821,261 @@ GLOBAL_ASM("asm/non_matchings/objects/func_800235DC.s") void run_object_init_func(Object *obj, void *entry, s32 arg2) { obj->behaviorId = obj->segment.header->behaviorId; - switch (obj->behaviorId - 1) { // Why the minus 1? - case 0: + switch (obj->behaviorId) { + case BHV_RACER: obj_init_racer(obj, (LevelObjectEntry_Racer *)entry); break; - case 1: + case BHV_SCENERY: obj_init_scenery(obj, (LevelObjectEntry_Scenery*)entry); break; - case 2: + case BHV_FISH: obj_init_fish(obj, (LevelObjectEntry_Fish *)entry); break; - case 3: + case BHV_ANIMATOR: obj_init_animator(obj, (LevelObjectEntry_Animator *)entry, arg2); break; - case 5: + case BHV_SMOKE: obj_init_smoke(obj, (LevelObjectEntry_Smoke *)entry); break; - case 24: + case BHV_UNK_19: obj_init_unknown25(obj, (LevelObjectEntry_Unknown25 *)entry); break; - case 21: + case BHV_BOMB_EXPLOSION: obj_init_bombexplosion(obj, (LevelObjectEntry_BombExplosion *)entry); break; - case 6: + case BHV_EXIT: obj_init_exit(obj, (LevelObjectEntry_Exit *)entry); break; - case 7: + case BHV_AUDIO: obj_init_audio(obj, (LevelObjectEntry_Audio *)entry); break; - case 8: - case 18: + case BHV_AUDIO_LINE: + case BHV_AUDIO_LINE_2: obj_init_audioline(obj, (LevelObjectEntry_AudioLine *)entry); break; - case 26: + case BHV_AUDIO_REVERB: obj_init_audioreverb(obj, (LevelObjectEntry_AudioReverb *)entry); break; - case 9: + case BHV_CAMERA_CONTROL: obj_init_cameracontrol(obj, (LevelObjectEntry_CameraControl *)entry); break; - case 10: + case BHV_SETUP_POINT: obj_init_setuppoint(obj, (LevelObjectEntry_SetupPoint *)entry); break; - case 11: + case BHV_DINO_WHALE: obj_init_dino_whale(obj, (LevelObjectEntry_Dino_Whale *)entry); break; - case 12: + case BHV_CHECKPOINT: obj_init_checkpoint(obj, (LevelObjectEntry_Checkpoint *)entry, arg2); break; - case 29: + case BHV_MODECHANGE: obj_init_modechange(obj, (LevelObjectEntry_ModeChange *)entry); break; - case 40: + case BHV_BONUS: obj_init_bonus(obj, (LevelObjectEntry_Bonus *)entry); break; - case 13: + case BHV_DOOR: obj_init_door(obj, (LevelObjectEntry_Door *)entry); break; - case 110: + case BHV_TT_DOOR: obj_init_ttdoor(obj, (LevelObjectEntry_TTDoor *)entry); break; - case 14: + case BHV_FOG_CHANGER: obj_init_fogchanger(obj, (LevelObjectEntry_FogChanger *)entry); break; - case 15: + case BHV_AINODE: obj_init_ainode(obj, (LevelObjectEntry_AiNode *)entry); break; - case 16: + case BHV_WEAPON_BALLOON: obj_init_weaponballoon(obj, (LevelObjectEntry_WeaponBalloon *)entry); break; - case 22: + case BHV_BALLOON_POP: obj_init_wballoonpop(obj, (LevelObjectEntry_WBalloonPop *)entry); break; - case 4: - case 17: + case BHV_WEAPON: + case BHV_WEAPON_2: obj_init_weapon(obj, (LevelObjectEntry_Weapon *)entry); break; - case 25: + case BHV_SKY_CONTROL: obj_init_skycontrol(obj, (LevelObjectEntry_SkyControl *)entry); break; - case 27: + case BHV_TORCH_MIST: obj_init_torch_mist(obj, (LevelObjectEntry_Torch_Mist *)entry); break; - case 28: + case BHV_TEXTURE_SCROLL: obj_init_texscroll(obj, (LevelObjectEntry_TexScroll *)entry, arg2); break; - case 30: + case BHV_STOPWATCH_MAN: obj_init_stopwatchman(obj, (LevelObjectEntry_StopWatchMan *)entry); break; - case 31: + case BHV_BANANA: obj_init_banana(obj, (LevelObjectEntry_Banana *)entry); break; - case 32: + case BHV_LIGHT_RGBA: obj_init_rgbalight(obj, (LevelObjectEntry_RgbaLight *)entry, arg2); break; - case 35: + case BHV_BUOY_PIRATE_SHIP: obj_init_buoy_pirateship(obj, (LevelObjectEntry_Buoy_PirateShip *)entry, arg2); break; - case 66: + case BHV_LOG: obj_init_log(obj, (LevelObjectEntry_Log *)entry, arg2); break; - case 36: + case BHV_WEATHER: obj_init_weather(obj, (LevelObjectEntry_Weather *)entry); break; - case 37: + case BHV_BRIDGE_WHALE_RAMP: obj_init_bridge_whaleramp(obj, (LevelObjectEntry_Bridge_WhaleRamp *)entry); break; - case 38: + case BHV_RAMP_SWITCH: obj_init_rampswitch(obj, (LevelObjectEntry_RampSwitch *)entry); break; - case 39: + case BHV_SEA_MONSTER: obj_init_seamonster(obj, (LevelObjectEntry_SeaMonster *)entry); break; - case 42: + case BHV_LENS_FLARE: obj_init_lensflare(obj, (LevelObjectEntry_LensFlare *)entry); break; - case 43: + case BHV_LENS_FLARE_SWITCH: obj_init_lensflareswitch(obj, (LevelObjectEntry_LensFlareSwitch *)entry); break; - case 44: + case BHV_COLLECT_EGG: obj_init_collectegg(obj, (LevelObjectEntry_CollectEgg *)entry); break; - case 45: + case BHV_EGG_CREATOR: obj_init_eggcreator(obj, (LevelObjectEntry_EggCreator *)entry); break; - case 46: + case BHV_CHARACTER_FLAG: obj_init_characterflag(obj, (LevelObjectEntry_CharacterFlag *)entry); break; - case 48: + case BHV_ANIMATION: obj_init_animation(obj, (LevelObjectEntry_Animation *)entry); break; - case 51: + case BHV_INFO_POINT: obj_init_infopoint(obj, (LevelObjectEntry_InfoPoint *)entry); break; - case 54: + case BHV_TRIGGER: obj_init_trigger(obj, (LevelObjectEntry_Trigger *)entry); break; - case 56: - case 92: + case BHV_ZIPPER_WATER: + case BHV_ZIPPER_AIR: obj_init_airzippers_waterzippers(obj, (LevelObjectEntry_AirZippers_WaterZippers *)entry); break; - case 57: + case BHV_UNK_3A: obj_init_unknown58(obj, (LevelObjectEntry_Unknown58 *)entry); break; - case 58: + case BHV_WAVE_GENERATOR: obj_init_wavegenerator(obj, (LevelObjectEntry_WaveGenerator *)entry, arg2); break; - case 60: + case BHV_BUTTERFLY: obj_init_butterfly(obj, (LevelObjectEntry_Butterfly *)entry); break; - case 61: + case BHV_PARK_WARDEN: obj_init_parkwarden(obj, (LevelObjectEntry_Parkwarden *)entry); break; - case 63: + case BHV_WORLD_KEY: obj_init_worldkey(obj, (LevelObjectEntry_WorldKey *)entry); break; - case 64: + case BHV_BANANA_SPAWNER: obj_init_bananacreator(obj, (LevelObjectEntry_BananaCreator *)entry); break; - case 65: + case BHV_TREASURE_SUCKER: obj_init_treasuresucker(obj, (LevelObjectEntry_TreasureSucker *)entry); break; - case 67: + case BHV_LAVA_SPURT: obj_init_lavaspurt(obj, (LevelObjectEntry_LavaSpurt *)entry); break; - case 68: + case BHV_POS_ARROW: obj_init_posarrow(obj, (LevelObjectEntry_PosArrow *)entry); break; - case 69: - case 102: + case BHV_HIT_TESTER: + case BHV_HIT_TESTER_3: obj_init_hittester(obj, (LevelObjectEntry_HitTester *)entry); break; - case 71: - case 94: - case 103: + case BHV_HIT_TESTER_2: + case BHV_DYNAMIC_LIGHT_OBJECT_2: + case BHV_HIT_TESTER_4: obj_init_dynamic_lighting_object(obj, (LevelObjectEntry_DynamicLightingObject *)entry); break; - case 95: - case 100: + case BHV_SNOWBALL: + case BHV_SNOWBALL_3: obj_init_unknown96(obj, (LevelObjectEntry_Unknown96 *)entry); break; - case 96: - case 101: + case BHV_SNOWBALL_2: + case BHV_SNOWBALL_4: obj_init_snowball(obj, (LevelObjectEntry_Snowball *)entry); break; - case 70: + case BHV_MIDI_FADE: obj_init_midifade(obj, (LevelObjectEntry_MidiFade *)entry); break; - case 111: + case BHV_MIDI_FADE_POINT: obj_init_midifadepoint(obj, (LevelObjectEntry_MidiFadePoint *)entry); break; - case 117: + case BHV_MIDI_CHANNEL_SET: obj_init_midichset(obj, (LevelObjectEntry_Midichset *)entry); break; - case 72: + case BHV_EFFECT_BOX: obj_init_effectbox(obj, (LevelObjectEntry_EffectBox *)entry); break; - case 73: + case BHV_TROPHY_CABINET: obj_init_trophycab(obj, (LevelObjectEntry_TrophyCab *)entry); break; - case 74: + case BHV_BUBBLER: obj_init_bubbler(obj, (LevelObjectEntry_Bubbler *)entry); break; - case 75: + case BHV_FLY_COIN: obj_init_flycoin(obj, (LevelObjectEntry_FlyCoin *)entry); break; - case 76: + case BHV_GOLDEN_BALLOON: obj_init_goldenballoon(obj, (LevelObjectEntry_GoldenBalloon *)entry); break; - case 77: + case BHV_LASER_BOLT: obj_init_laserbolt(obj, (LevelObjectEntry_Laserbolt *)entry); break; - case 78: + case BHV_LASER_GUN: obj_init_lasergun(obj, (LevelObjectEntry_Lasergun *)entry); break; - case 81: + case BHV_ZIPPER_GROUND: obj_init_groundzipper(obj, (LevelObjectEntry_GroundZipper *)entry); break; - case 82: + case BHV_OVERRIDE_POS: obj_init_overridepos(obj, (LevelObjectEntry_OverridePos *)entry); break; - case 83: + case BHV_WIZPIG_SHIP: obj_init_wizpigship(obj, (LevelObjectEntry_WizpigShip *)entry); break; - case 88: + case BHV_BOOST: obj_init_boost(obj, (LevelObjectEntry_Boost *)entry); break; - case 87: + case BHV_SILVER_COIN: obj_init_silvercoin(obj, (LevelObjectEntry_SilverCoin *)entry); break; - case 89: + case BHV_WARDEN_SMOKE: obj_init_wardensmoke(obj, (LevelObjectEntry_WardenSmoke *)entry); break; - case 93: + case BHV_UNK_5E: obj_init_unknown94(obj, (LevelObjectEntry_Unknown94 *)entry, arg2); break; - case 97: + case BHV_TELEPORT: obj_init_teleport(obj, (LevelObjectEntry_Teleport *)entry); break; - case 98: - case 99: + case BHV_ROCKET_SIGNPOST: + case BHV_ROCKET_SIGNPOST_2: obj_init_lighthouse_rocketsignpost(obj, (LevelObjectEntry_Lighthouse_RocketSignpost *)entry); break; - case 104: + case BHV_RANGE_TRIGGER: obj_init_rangetrigger(obj, (LevelObjectEntry_RangeTrigger *)entry); break; - case 107: - case 115: + case BHV_FIREBALL_OCTOWEAPON: + case BHV_FIREBALL_OCTOWEAPON_2: obj_init_fireball_octoweapon(obj, (LevelObjectEntry_Fireball_Octoweapon *)entry); break; - case 108: + case BHV_FROG: obj_init_frog(obj, (LevelObjectEntry_Frog *)entry); break; - case 109: + case BHV_SILVER_COIN_2: obj_init_silvercoin_adv2(obj, (LevelObjectEntry_SilverCoinAdv2 *)entry); break; - case 116: + case BHV_LEVEL_NAME: obj_init_levelname(obj, (LevelObjectEntry_LevelName *)entry); break; } @@ -2226,242 +2215,242 @@ s32 func_80023E30(s32 arg0) { void run_object_loop_func(Object *obj, s32 arg1) { func_800B76B8(1, obj->unk4A); switch (obj->behaviorId) { - case 2: + case BHV_SCENERY: obj_loop_scenery(obj, arg1); break; - case 3: + case BHV_FISH: obj_loop_fish(obj, arg1); break; - case 4: + case BHV_ANIMATOR: obj_loop_animator(obj, arg1); break; - case 6: + case BHV_SMOKE: obj_loop_smoke(obj, arg1); break; - case 25: + case BHV_UNK_19: obj_loop_unknown25(obj, arg1); break; - case 22: + case BHV_BOMB_EXPLOSION: obj_loop_bombexplosion(obj, arg1); break; - case 7: + case BHV_EXIT: obj_loop_exit(obj, arg1); break; - case 10: + case BHV_CAMERA_CONTROL: obj_loop_cameracontrol(obj, arg1); break; - case 11: + case BHV_SETUP_POINT: obj_loop_setuppoint(obj, arg1); break; - case 12: + case BHV_DINO_WHALE: obj_loop_dino_whale(obj, arg1); break; - case 13: + case BHV_CHECKPOINT: obj_loop_checkpoint(obj, arg1); break; - case 30: + case BHV_MODECHANGE: obj_loop_modechange(obj, arg1); break; - case 41: + case BHV_BONUS: obj_loop_bonus(obj, arg1); break; - case 14: + case BHV_DOOR: obj_loop_door(obj, arg1); break; - case 15: + case BHV_FOG_CHANGER: obj_loop_fogchanger(obj); break; - case 16: + case BHV_AINODE: obj_loop_ainode(obj, arg1); break; - case 17: + case BHV_WEAPON_BALLOON: obj_loop_weaponballoon(obj, arg1); break; - case 23: + case BHV_BALLOON_POP: obj_loop_wballoonpop(obj, arg1); break; - case 5: - case 18: + case BHV_WEAPON: + case BHV_WEAPON_2: obj_loop_weapon(obj, arg1); break; - case 26: + case BHV_SKY_CONTROL: obj_loop_skycontrol(obj, arg1); break; - case 28: + case BHV_TORCH_MIST: obj_loop_torch_mist(obj, arg1); break; - case 29: + case BHV_TEXTURE_SCROLL: obj_loop_texscroll(obj, arg1); break; - case 31: + case BHV_STOPWATCH_MAN: obj_loop_stopwatchman(obj, arg1); break; - case 32: + case BHV_BANANA: obj_loop_banana(obj, arg1); break; - case 36: + case BHV_BUOY_PIRATE_SHIP: obj_loop_buoy_pirateship(obj, arg1); break; - case 67: + case BHV_LOG: obj_loop_log(obj, arg1); break; - case 37: + case BHV_WEATHER: obj_loop_weather(obj, arg1); break; - case 38: + case BHV_BRIDGE_WHALE_RAMP: obj_loop_bridge_whaleramp(obj, arg1); break; - case 39: + case BHV_RAMP_SWITCH: obj_loop_rampswitch(obj, arg1); break; - case 40: + case BHV_SEA_MONSTER: obj_loop_seamonster(obj, arg1); break; - case 45: + case BHV_COLLECT_EGG: obj_loop_collectegg(obj, arg1); break; - case 46: + case BHV_EGG_CREATOR: obj_loop_eggcreator(obj, arg1); break; - case 47: + case BHV_CHARACTER_FLAG: obj_loop_characterflag(obj, arg1); break; - case 50: - case 81: - case 85: - case 86: + case BHV_ANIMATED_OBJECT: + case BHV_ANIMATED_OBJECT_2: + case BHV_ANIMATED_OBJECT_3: + case BHV_ANIMATED_OBJECT_4: obj_loop_animobject(obj, arg1); break; - case 119: + case BHV_WIZPIG_GHOSTS: obj_loop_wizghosts(obj, arg1); break; - case 51: + case BHV_CAMERA_ANIMATION: obj_loop_animcamera(obj, arg1); break; - case 52: + case BHV_INFO_POINT: obj_loop_infopoint(obj, arg1); break; - case 53: + case BHV_CAR_ANIMATION: obj_loop_animcar(obj, arg1); break; - case 54: + case BHV_CHARACTER_SELECT: obj_loop_char_select(obj, arg1); break; - case 55: + case BHV_TRIGGER: obj_loop_trigger(obj, arg1); break; - case 56: + case BHV_VEHICLE_ANIMATION: obj_loop_vehicleanim(obj, arg1); break; - case 57: - case 93: + case BHV_ZIPPER_WATER: + case BHV_ZIPPER_AIR: obj_loop_airzippers_waterzippers(obj, arg1); break; - case 58: + case BHV_UNK_3A: obj_loop_unknown58(obj, arg1); break; - case 60: + case BHV_WAVE_POWER: obj_loop_wavepower(obj); break; - case 61: + case BHV_BUTTERFLY: obj_loop_butterfly(obj, arg1); break; - case 62: + case BHV_PARK_WARDEN: obj_loop_parkwarden(obj, arg1); break; - case 64: + case BHV_WORLD_KEY: obj_loop_worldkey(obj, arg1); //arg1=speed break; - case 65: + case BHV_BANANA_SPAWNER: obj_loop_bananacreator(obj, arg1); break; - case 66: + case BHV_TREASURE_SUCKER: obj_loop_treasuresucker(obj, arg1); break; - case 68: + case BHV_LAVA_SPURT: obj_loop_lavaspurt(obj, arg1); break; - case 69: + case BHV_POS_ARROW: obj_loop_posarrow(obj, arg1); break; - case 70: - case 72: - case 103: - case 104: + case BHV_HIT_TESTER: + case BHV_HIT_TESTER_2: + case BHV_HIT_TESTER_3: + case BHV_HIT_TESTER_4: obj_loop_hittester(obj, arg1); break; - case 96: - case 97: - case 101: - case 102: + case BHV_SNOWBALL: + case BHV_SNOWBALL_2: + case BHV_SNOWBALL_3: + case BHV_SNOWBALL_4: obj_loop_snowball(obj, arg1); break; - case 73: + case BHV_EFFECT_BOX: obj_loop_effectbox(obj, arg1); break; - case 74: + case BHV_TROPHY_CABINET: obj_loop_trophycab(obj, arg1); break; - case 75: + case BHV_BUBBLER: obj_loop_bubbler(obj, arg1); break; - case 76: + case BHV_FLY_COIN: obj_loop_flycoin(obj, arg1); break; - case 77: + case BHV_GOLDEN_BALLOON: obj_loop_goldenballoon(obj, arg1); break; - case 78: + case BHV_LASER_BOLT: obj_loop_laserbolt(obj, arg1); break; - case 79: + case BHV_LASER_GUN: obj_loop_lasergun(obj, arg1); break; - case 80: + case BHV_PARK_WARDEN_2: obj_loop_gbparkwarden(obj, arg1); break; - case 82: + case BHV_ZIPPER_GROUND: obj_loop_groundzipper(obj, arg1); break; - case 84: + case BHV_WIZPIG_SHIP: obj_loop_wizpigship(obj, arg1); break; - case 88: - case 110: + case BHV_SILVER_COIN: + case BHV_SILVER_COIN_2: obj_loop_silvercoin(obj, arg1); break; - case 90: + case BHV_WARDEN_SMOKE: obj_loop_wardensmoke(obj, arg1); break; - case 94: + case BHV_UNK_5E: obj_loop_unknown94(obj, arg1); break; - case 98: + case BHV_TELEPORT: obj_loop_teleport(obj, arg1); break; - case 105: + case BHV_RANGE_TRIGGER: obj_loop_rangetrigger(obj, arg1); break; - case 100: + case BHV_ROCKET_SIGNPOST_2: obj_loop_rocketsignpost(obj, arg1); break; - case 108: - case 116: + case BHV_FIREBALL_OCTOWEAPON: + case BHV_FIREBALL_OCTOWEAPON_2: obj_loop_fireball_octoweapon(obj, arg1); break; - case 109: + case BHV_FROG: obj_loop_frog(obj, arg1); break; - case 111: + case BHV_TT_DOOR: obj_loop_ttdoor(obj, arg1); break; - case 113: + case BHV_DOOR_OPENER: obj_loop_dooropener(obj, arg1); break; - case 115: + case BHV_PIG_ROCKETEER: obj_loop_pigrocketeer(obj, arg1); break; - case 117: + case BHV_LEVEL_NAME: obj_loop_levelname(obj, arg1); break; } diff --git a/src/objects.h b/src/objects.h index 55a331a9..16009d2f 100644 --- a/src/objects.h +++ b/src/objects.h @@ -7,6 +7,137 @@ #include "object_functions.h" #include "libc/math.h" +enum ObjectBehaviours { + BHV_NONE, + BHV_RACER, + BHV_SCENERY, + BHV_FISH, + BHV_ANIMATOR, + BHV_WEAPON, + BHV_SMOKE, + BHV_EXIT, + BHV_AUDIO, + BHV_AUDIO_LINE, + BHV_CAMERA_CONTROL, + BHV_SETUP_POINT, + BHV_DINO_WHALE, + BHV_CHECKPOINT, + BHV_DOOR, + BHV_FOG_CHANGER, + BHV_AINODE, + BHV_WEAPON_BALLOON, + BHV_WEAPON_2, + BHV_AUDIO_LINE_2, + BHV_UNK_14, + BHV_UNK_15, + BHV_BOMB_EXPLOSION, + BHV_BALLOON_POP, + BHV_UNK_18, + BHV_UNK_19, + BHV_SKY_CONTROL, + BHV_AUDIO_REVERB, + BHV_TORCH_MIST, + BHV_TEXTURE_SCROLL, + BHV_MODECHANGE, + BHV_STOPWATCH_MAN, + BHV_BANANA, + BHV_LIGHT_RGBA, + BHV_UNK_22, + BHV_UNK_23, + BHV_BUOY_PIRATE_SHIP, + BHV_WEATHER, + BHV_BRIDGE_WHALE_RAMP, + BHV_RAMP_SWITCH, + BHV_SEA_MONSTER, + BHV_BONUS, + BHV_UNK_2A, + BHV_LENS_FLARE, + BHV_LENS_FLARE_SWITCH, + BHV_COLLECT_EGG, + BHV_EGG_CREATOR, + BHV_CHARACTER_FLAG, + BHV_UNK_2F, + BHV_ANIMATION, + BHV_ANIMATED_OBJECT, + BHV_CAMERA_ANIMATION, + BHV_INFO_POINT, + BHV_CAR_ANIMATION, + BHV_CHARACTER_SELECT, + BHV_TRIGGER, + BHV_VEHICLE_ANIMATION, + BHV_ZIPPER_WATER, + BHV_UNK_3A, + BHV_WAVE_GENERATOR, + BHV_WAVE_POWER, + BHV_BUTTERFLY, + BHV_PARK_WARDEN, + BHV_UNK_3F, + BHV_WORLD_KEY, + BHV_BANANA_SPAWNER, + BHV_TREASURE_SUCKER, + BHV_LOG, + BHV_LAVA_SPURT, + BHV_POS_ARROW, + BHV_HIT_TESTER, + BHV_MIDI_FADE, + BHV_HIT_TESTER_2, + BHV_EFFECT_BOX, + BHV_TROPHY_CABINET, + BHV_BUBBLER, + BHV_FLY_COIN, + BHV_GOLDEN_BALLOON, + BHV_LASER_BOLT, + BHV_LASER_GUN, + BHV_PARK_WARDEN_2, + BHV_ANIMATED_OBJECT_2, + BHV_ZIPPER_GROUND, + BHV_OVERRIDE_POS, + BHV_WIZPIG_SHIP, + BHV_ANIMATED_OBJECT_3, + BHV_ANIMATED_OBJECT_4, + BHV_UNK_57, + BHV_SILVER_COIN, + BHV_BOOST, + BHV_WARDEN_SMOKE, + BHV_UNK_5B, + BHV_UNK_5C, + BHV_ZIPPER_AIR, + BHV_UNK_5E, + BHV_DYNAMIC_LIGHT_OBJECT_2, + BHV_SNOWBALL, + BHV_SNOWBALL_2, + BHV_TELEPORT, + BHV_ROCKET_SIGNPOST, + BHV_ROCKET_SIGNPOST_2, + BHV_SNOWBALL_3, + BHV_SNOWBALL_4, + BHV_HIT_TESTER_3, + BHV_HIT_TESTER_4, + BHV_RANGE_TRIGGER, + BHV_UNK_6A, + BHV_UNK_6B, + BHV_FIREBALL_OCTOWEAPON, + BHV_FROG, + BHV_SILVER_COIN_2, + BHV_TT_DOOR, + BHV_MIDI_FADE_POINT, + BHV_DOOR_OPENER, + BHV_UNK_72, + BHV_PIG_ROCKETEER, + BHV_FIREBALL_OCTOWEAPON_2, + BHV_LEVEL_NAME, + BHV_MIDI_CHANNEL_SET, + BHV_WIZPIG_GHOSTS, + BHV_UNK_78, + BHV_UNK_79, + BHV_UNK_7A, + BHV_UNK_7B, + BHV_UNK_7C, + BHV_UNK_7D, + BHV_UNK_7E, + BHV_UNK_7F, +}; + /* Size: 0x8 bytes */ typedef struct unknown800DC6F0 { union { @@ -105,10 +236,8 @@ extern s8 D_800DC73C; extern s8 D_800DC740; extern s8 D_800DC744; extern s8 D_800DC748; -extern s32 D_800DC74C; -extern s32 D_800DC750; -extern s32 D_800DC754; -extern s32 D_800DC758; +extern s32 D_800DC74C[2]; +extern s32 D_800DC754[2]; extern s32 D_800DC760; extern s32 D_800DC768; diff --git a/src/racer.c b/src/racer.c index b6bf8ba9..20ef222e 100644 --- a/src/racer.c +++ b/src/racer.c @@ -3117,7 +3117,7 @@ void func_800580B4(Object *obj, Object_Racer *racer, s32 mode, f32 arg3) { } } -#ifdef NON_MATCHING +#ifdef NON_EQUIVALENT void update_camera_car(f32 updateRate, Object *obj, Object_Racer *racer) { s64 pad; s32 segmentIndex; diff --git a/src/textures_sprites.c b/src/textures_sprites.c index 27385476..7f1c73d7 100644 --- a/src/textures_sprites.c +++ b/src/textures_sprites.c @@ -1118,12 +1118,11 @@ void func_8007B4C8(Gfx **dlist, TextureHeader *arg1, u32 flags) { func_8007B4E8(dlist, arg1, flags, 0); } -#ifdef NON_EQUIVALENT -void func_8007B4E8(Gfx **dlist, TextureHeader *texhead, u32 flags, s32 arg3) { - s32 bitfield; - s16 temp_D_80126382; + + +void func_8007B4E8(Gfx **dlist, TextureHeader *texhead, s32 flags, s32 arg3) { + s32 temp_D_80126382; s32 doPipeSync; - s32 temp_bitfield; s32 dlIndex; temp_D_80126382 = D_80126382; @@ -1131,7 +1130,7 @@ void func_8007B4E8(Gfx **dlist, TextureHeader *texhead, u32 flags, s32 arg3) { if (texhead != NULL) { if ((arg3 != 0) && (arg3 < (texhead->numOfTextures << 8))) { - texhead += ((arg3 >> 16) * texhead->textureSize); + texhead = (s8*)texhead + ((arg3 >> 16) * texhead->textureSize); } flags |= texhead->flags; @@ -1141,48 +1140,33 @@ void func_8007B4E8(Gfx **dlist, TextureHeader *texhead, u32 flags, s32 arg3) { doPipeSync = FALSE; } if (D_80126380 == 0) { - D_80126380 = 1; temp_D_80126382 = 1; + D_80126380 = 1; } } else if (D_80126380 != 0) { - D_80126380 = 0; temp_D_80126382 = 1; + D_80126380 = 0; } - //This version produces a better score, but I'm not sure it's actually better. - //bitfield = flags & (D_80126384 ? 0x827 : 0x0800093F); - if (D_80126384 != 0) { - bitfield = flags & 0x827; - } else { - bitfield = flags & 0x0800093F; - } + flags = (D_80126384) ? (flags & 0x827) : (flags & 0x0800093F); + flags &= ~D_80126378; + flags = (flags & 0x8000000) ? flags & ~8 : flags & ~0x100; - if (((bitfield & ~D_80126378) * 16) < 0) { - bitfield &= ~D_80126378 & ~8; - } else { - bitfield &= ~D_80126378 & ~0x100; - } - - // Ugly version of the two if statements here that matches the same - // bitfield = D_80126384 ? flags & 0x827 : flags & 0x0800093F; - // bitfield = ((bitfield & ~D_80126378) * 16) < 0 ? bitfield & ~D_80126378 & ~8 : bitfield & ~D_80126378 & ~0x100; - - temp_bitfield = bitfield; - if ((bitfield != D_80126374) || (temp_D_80126382 != 0)) { + if ((flags != D_80126374) || (temp_D_80126382)) { if (doPipeSync) { gDPPipeSync((*dlist)++); } - if (((D_80126374 & 0x08000000) != (bitfield & 0x08000000)) || ((D_80126382 != 0))) { - if ((bitfield & 0x08000000) || (D_80126384 != 0)) { + if (((flags & 0x08000000) != (D_80126374 & 0x08000000)) || ((D_80126382))) { + if ((flags & 0x08000000) || (D_80126384)) { gSPClearGeometryMode((*dlist)++, G_FOG); } else { gSPSetGeometryMode((*dlist)++, G_FOG); } } - if (((D_80126374 & 2) != (bitfield & 2)) || (D_80126382 != 0)) { - if (bitfield & 2) { + if (((flags & 2) != (D_80126374 & 2)) || (D_80126382)) { + if (flags & 2) { gSPSetGeometryMode((*dlist)++, G_ZBUFFER); } else { gSPClearGeometryMode((*dlist)++, G_ZBUFFER); @@ -1190,68 +1174,69 @@ void func_8007B4E8(Gfx **dlist, TextureHeader *texhead, u32 flags, s32 arg3) { } D_80126382 = 0; - D_80126374 = bitfield; - if (D_80126380 == 0) { - if (bitfield & 0x08000000) { - gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DEEE8[bitfield & 3]), numberOfGfxCommands(D_800DEEE8[0])); + D_80126374 = flags; + if (!D_80126380) { + if (flags & 0x08000000) { + gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DEEE8[flags & 3]), numberOfGfxCommands(D_800DEEE8[0])); + return; } - gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DEF28[bitfield & 0xF]), numberOfGfxCommands(D_800DEF28[0])); + gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DEF28[flags & 0xF]), numberOfGfxCommands(D_800DEF28[0])); return; } - if (D_80126384 != 0) { - if ((bitfield & 0x800) && (bitfield & 2)) { + if (D_80126384) { + if ((flags & 0x800) && (flags & 2)) { dlIndex = 0; - if (bitfield & 1) { + if (flags & 1) { dlIndex |= 1; } - if (bitfield & 4) { + if (flags & 4) { dlIndex |= 2; } - if (bitfield & 0x20) { + if (flags & 0x20) { dlIndex |= 4; } gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DF028[dlIndex]), numberOfGfxCommands(D_800DF028[0])); return; } - if (bitfield & 0x20) { - temp_bitfield = (bitfield ^ 0x20) | 8; + if (flags & 0x20) { + flags = (flags ^ 0x20) | 8; } - gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DF0A8[temp_bitfield]), numberOfGfxCommands(D_800DF0A8[0])); + gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DF0A8[flags]), numberOfGfxCommands(D_800DF0A8[0])); return; } - if ((bitfield & 0x800) && (bitfield & 2)) { + if ((flags & 0x800) && (flags & 2)) { dlIndex = 0; - if (bitfield & 1) { + if (flags & 1) { dlIndex |= 1; } - if (bitfield & 4) { + if (flags & 4) { dlIndex |= 2; } - if (bitfield & 8) { + if (flags & 8) { dlIndex |= 4; } - if (bitfield & 0x20) { + if (flags & 0x20) { dlIndex |= 8; } gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DEDE8[dlIndex]), numberOfGfxCommands(D_800DEDE8[0])); return; } - if (bitfield & 0x10) { - dlIndex = bitfield & 7; - if (bitfield & 8) { + if (flags & 0x10) { + dlIndex = flags & 7; + if (flags & 8) { dlIndex |= 8; } gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DECE8[dlIndex]), numberOfGfxCommands(D_800DECE8[0])); return; } - bitfield &= ~0x800; - if (bitfield & 0x08000000) { - dlIndex = bitfield & 3; - if (bitfield & 0x100) { + flags &= ~0x800; + if (flags & 0x08000000) { + dlIndex = flags & 3; + if (flags & 0x100) { dlIndex |= 4; } else { gSPSetGeometryMode((*dlist)++, G_ZBUFFER); @@ -1261,54 +1246,49 @@ void func_8007B4E8(Gfx **dlist, TextureHeader *texhead, u32 flags, s32 arg3) { return; } - gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DE8E8[bitfield]), numberOfGfxCommands(D_800DE8E8[0])); + gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DE8E8[flags]), numberOfGfxCommands(D_800DE8E8[0])); return; } } -#else -GLOBAL_ASM("asm/non_matchings/textures_sprites/func_8007B4E8.s") -#endif -#ifdef NON_EQUIVALENT -//Reasonaby certain I have the macros correct, but I'm less certain about the arg1 stuff -//arg1 could be a multidimensional array maybe? -void func_8007BA5C(Gfx **dlist, TextureHeader *arg1, u32 flags, s32 arg3) { - s32 index = flags & 0x1F; - - if ((arg3 != 0) && (arg3 < (arg1->numOfTextures * 256))) { - arg1 += ((arg3 >> 16) * arg1->textureSize); +void func_8007BA5C(Gfx **dlist, TextureHeader *texture_list, u32 flags, s32 texture_index) { + u16 *mblock; + u16 *tblock; + if ((texture_index != 0) && (texture_index < (texture_list->numOfTextures * 256))) { + texture_list = (s32)texture_list + ((texture_index >> 16) * texture_list->textureSize); } - if (arg1->width == 64) { - gDPLoadMultiBlock((*dlist)++, (u32)OS_PHYSICAL_TO_K0(arg1)+sizeof(TextureHeader), 0x100, 1, + mblock = (u16*)(texture_list + 1); + tblock = mblock + 0x400; + if (texture_list->width == 64) { + gDPLoadMultiBlock((*dlist)++, OS_K0_TO_PHYSICAL(mblock), 256, 1, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 16, 0, 0, 0, 6, 4, 0, 0); - - gDPLoadTextureBlock((*dlist)++, (u32)OS_PHYSICAL_TO_K0(arg1)+(sizeof(TextureHeader)*65), + gDPLoadTextureBlock((*dlist)++, OS_K0_TO_PHYSICAL(tblock), G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 16, 0, 0, 0, 6, 4, 0, 0); } else { - gDPLoadMultiBlock((*dlist)++, (u32)OS_PHYSICAL_TO_K0(arg1)+sizeof(TextureHeader), 0x100, 1, + gDPLoadMultiBlock((*dlist)++, OS_K0_TO_PHYSICAL(mblock), 256, 1, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 0, 0, 5, 5, 0, 0); - - gDPLoadTextureBlock((*dlist)++, (u32)OS_PHYSICAL_TO_K0(arg1)+(sizeof(TextureHeader)*65), + gDPLoadTextureBlock((*dlist)++, OS_K0_TO_PHYSICAL(tblock), G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 0, 0, 5, 5, 0, 0); } - + + // gSPSetGeometryMode((*dlist)++, 0); gDPPipeSync((*dlist)++); - - D_8012637C = NULL; + D_8012637C = 0; + flags &= 0x1F; gSPSetGeometryMode((*dlist)++, G_FOG); - if (index & G_TEXTURE_ENABLE) { + + + + if (flags & G_TEXTURE_ENABLE) { gSPSetGeometryMode((*dlist)++, G_ZBUFFER); } else { gSPClearGeometryMode((*dlist)++, G_ZBUFFER); } D_80126382 = 1; D_80126374 = 0; - gDkrDmaDisplayList((*dlist)++, (u32) OS_PHYSICAL_TO_K0(D_800DF1A8[index]), numberOfGfxCommands(D_800DF1A8[0])); + gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(D_800DF1A8[flags]), numberOfGfxCommands(D_800DF1A8[0])); } -#else -GLOBAL_ASM("asm/non_matchings/textures_sprites/func_8007BA5C.s") -#endif void func_8007BF1C(s32 arg0) { diff --git a/src/textures_sprites.h b/src/textures_sprites.h index cb02c986..4b125162 100644 --- a/src/textures_sprites.h +++ b/src/textures_sprites.h @@ -20,7 +20,7 @@ extern LevelHeader *gCurrentLevelHeader2; extern s32 D_80126374; extern TextureHeader *D_8012637C; extern s16 D_80126382; -extern Gfx D_800DE628[9]; +extern Gfx dTextureRectangleModes[]; extern Gfx D_800DE848[2][2]; extern Gfx D_800DE868[8][2]; extern Gfx D_800DE8E8[64][2]; @@ -104,6 +104,7 @@ void func_8007B454(void); void func_8007B4C8(Gfx **dlist, TextureHeader *arg1, u32 flags); void func_8007BF1C(s32 arg0); s32 func_8007EF64(s16 arg0); +void func_8007B4E8(Gfx **dlist, TextureHeader *texhead, s32 flags, s32 arg3); // There might be a file boundary here. void func_8007EF80(TextureHeader *texture, u32 *triangleBatchInfoFlags, s32 *arg2, s32 arg3); @@ -114,7 +115,6 @@ void update_pulsating_light_data(PulsatingLightData *data, s32 timeDelta); TextureHeader *load_texture(s32 arg0); // Non Matching void free_texture(TextureHeader *tex); // Non Matching TextureHeader *func_8007B380(s32 arg0); // Non Matching -void func_8007B4E8(Gfx **dlist, TextureHeader *arg1, u32 flags, s32 arg3); // Non Matching s32 get_texture_size_from_id(s32 arg0); // Non Matching s32 func_8007C860(s32 spriteIndex); // Non Matching s32 load_sprite_info(s32 spriteIndex, s32 *numOfInstancesOut, s32 *unkOut, diff --git a/src/unknown_008C40.c b/src/unknown_008C40.c index 11501ab7..3ebf0be6 100644 --- a/src/unknown_008C40.c +++ b/src/unknown_008C40.c @@ -195,4 +195,94 @@ GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80009B7C.s") GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80009D6C.s") GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A184.s") GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A2E8.s") -GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A414.s") + +typedef struct unk800A414_arg3 { + f32 unk0; + f32 unk4; + f32 unk8; + f32 unkC; + f32 unk10; + f32 unk14; +} unk800A414_arg3; + +void func_8000A414(Gfx **arg0, Vertex **arg1, Triangle **arg2, unk800A414_arg3 *arg3, u8 arg4, u8 arg5, u8 arg6) { + Gfx *sp34; + Vertex *sp30; + Triangle *sp2C; + s16 sp2A; + s16 sp28; + s16 sp26; + s16 sp24; + s16 sp22; + s16 sp20; + + + sp2A = arg3->unk0; + sp28 = arg3->unk4; + sp26 = arg3->unk8; + sp24 = arg3->unkC; + sp22 = arg3->unk10; + sp20 = arg3->unk14; + sp34 = *arg0; + + sp30 = *arg1; + sp2C = *arg2; + func_8007B4C8(&sp34, NULL, 0U); + gDkrVertices(sp34++, OS_PHYSICAL_TO_K0(sp30), (((s32)OS_PHYSICAL_TO_K0(sp30)) & 6) | 0x18, 0x28); + gDkrTriangles(sp34++, OS_PHYSICAL_TO_K0(sp2C), 2, 0); + sp30[0].x = sp2A; + sp30[0].y = (s16) (sp28 + 5); + sp30[0].z = sp26; + sp30[0].r = arg4; + sp30[0].g = arg5; + sp30[0].b = arg6; + sp30[0].a = 255; + sp30[1].x = sp2A; + sp30[1].y = (s16) (sp28 - 5); + sp30[1].z = sp26; + sp30[1].r = arg4; + sp30[1].g = arg5; + sp30[1].b = arg6; + sp30[1].a = 255; + sp30[2].x = sp24; + sp30[2].y = (s16) (sp22 + 5); + sp30[2].z = sp20; + sp30[2].r = 255; + sp30[2].g = 255; + sp30[2].b = 255; + sp30[2].a = 255; + sp30[3].x = sp24; + sp30[3].y = (s16) (sp22 - 5); + sp30[3].z = sp20; + sp30[3].r = 255; + sp30[3].g = 255; + sp30[3].b = 255; + sp30[3].a = 255; + sp30 += 4; + + sp2C[0].drawBackface = 0x40; // 0x40 = Draw backface. + sp2C[0].vi0 = 2; + sp2C[0].vi1 = 1; + sp2C[0].vi2 = 0; + sp2C[0].uv0.u = 0x3E0; + sp2C[0].uv0.v = 0x3E0; + sp2C[0].uv1.u = 0x3E0; + sp2C[0].uv1.v = 0; + sp2C[0].uv2.u = 1; + sp2C[0].uv2.v = 0; + sp2C[1].drawBackface = 0x40; + sp2C[1].vi0 = 3; + sp2C[1].vi1 = 2; + sp2C[1].vi2 = 1; + sp2C[1].uv0.u = 1; + sp2C[1].uv0.v = 0x3E0; + sp2C[1].uv1.u = 0x3E0; + sp2C[1].uv1.v = 0x3E0; + sp2C[1].uv2.u = 1; + sp2C[1].uv2.v = 0; + sp2C += 2; + + *arg0 = sp34; + *arg1 = sp30; + *arg2 = sp2C; +} diff --git a/src/unknown_078050.c b/src/unknown_078050.c index b71255ed..42df9dba 100644 --- a/src/unknown_078050.c +++ b/src/unknown_078050.c @@ -11,7 +11,7 @@ /************ .data ************/ -s16 D_800DE490[16] = { +s16 gGfxTaskMesgNums[16] = { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; @@ -19,7 +19,7 @@ s16 D_800DE490[16] = { u8 sBackgroundPrimColourR = 0; u8 sBackgroundPrimColourG = 0; u8 sBackgroundPrimColourB = 0; -s32 sBackgroundFillColour = 0x00010001; +s32 sBackgroundFillColour = GPACK_RGBA5551(0, 0, 0, 1) | (GPACK_RGBA5551(0, 0, 0, 1) << 16); u32 D_800DE4C0 = 0x40; u32 D_800DE4C4 = 0; @@ -83,7 +83,7 @@ Gfx D_800DE5E0[] = { gsSPEndDisplayList(), }; -Gfx D_800DE628[] = { +Gfx dTextureRectangleModes[] = { gsDPPipeSync(), gsDPSetTextureLOD(G_TL_TILE), gsDPSetTextureLUT(G_TT_NONE), @@ -154,9 +154,9 @@ u8 gGfxSPTaskYieldBuffer[YIELD_BUFFER_SIZE]; OSMesgQueue D_80125EA0; OSMesg D_80125EB8; OSMesgQueue D_80125EC0; -OSMesgQueue D_80125ED8; +OSMesgQueue gGfxTaskMesgQueue; OSMesg D_80125EF0[8]; -OSMesg D_80125F10[8]; +OSMesg gGfxTaskMesgBuf[8]; u8 D_80125F30; u8 D_80125F31; u8 D_80125F32; @@ -188,31 +188,31 @@ s32 setup_ostask_xbus(Gfx* dlBegin, Gfx* dlEnd, UNUSED s32 recvMesg) { if (gfxBufCounter == 2) { gfxBufCounter = 0; } - dkrtask->unk8 = 0x23; - dkrtask->mesgQueue = &D_80125ED8; - dkrtask->unk58 = 0xFF0000FF; - dkrtask->unk5C = 0xFF0000FF; - dkrtask->task.data_ptr = dlBegin; + dkrtask->flags = OS_SC_LAST_TASK | OS_SC_NEEDS_RDP | OS_SC_NEEDS_RSP; + dkrtask->mesgQueue = &gGfxTaskMesgQueue; + dkrtask->unused58 = COLOUR_TAG_RED; + dkrtask->unused5C = COLOUR_TAG_RED; + dkrtask->task.data_ptr = (u64 *) dlBegin; dkrtask->task.data_size = ((s32) dlEnd - (s32) dlBegin) >> 3; // Shifted by 3, repsenting the size of the Gfx type. dkrtask->task.type = 1; dkrtask->task.flags = 2; - dkrtask->task.ucode_boot = rspF3DDKRBootStart; + dkrtask->task.ucode_boot = (u64 *) rspF3DDKRBootStart; dkrtask->task.ucode_boot_size = (s32) (rspF3DDKRDramStart - rspF3DDKRBootStart); - dkrtask->task.ucode = rspF3DDKRXbusStart; - dkrtask->task.ucode_data = rspF3DDKRDataXbusStart; + dkrtask->task.ucode = (u64 *) rspF3DDKRXbusStart; + dkrtask->task.ucode_data = (u64 *) rspF3DDKRDataXbusStart; dkrtask->task.ucode_data_size = 0x800; - dkrtask->task.dram_stack = gDramStack; + dkrtask->task.dram_stack = (u64 *) gDramStack; dkrtask->task.dram_stack_size = 0x400; - dkrtask->task.output_buff = gGfxSPTaskYieldBuffer; - dkrtask->task.output_buff_size = &D_80125EA0; - dkrtask->task.yield_data_ptr = D_801271B0; - dkrtask->task.yield_data_size = 0xA00; + dkrtask->task.output_buff = (u64 *) gGfxSPTaskYieldBuffer; + dkrtask->task.output_buff_size = (u64 *) &D_80125EA0; + dkrtask->task.yield_data_ptr = (u64 *) gGfxTaskYieldData; + dkrtask->task.yield_data_size = sizeof(gGfxTaskYieldData); dkrtask->task.output_buff = NULL; dkrtask->task.output_buff_size = NULL; - dkrtask->unk0 = 0; - dkrtask->frameBuffer = (s32) gVideoCurrFramebuffer; - dkrtask->unk60 = 0xFF; - dkrtask->unk64 = 0xFF; + dkrtask->next = NULL; + dkrtask->frameBuffer = gVideoCurrFramebuffer; + dkrtask->unused60 = 0xFF; + dkrtask->unused64 = 0xFF; osWritebackDCacheAll(); osSendMesg(osScInterruptQ, dkrtask, 1); return 0; @@ -228,30 +228,30 @@ UNUSED void setup_ostask_xbus_2(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg) { if (gfxBufCounter2 == 2) { gfxBufCounter2 = 0; } - dkrtask->task.data_ptr = dlBegin; + dkrtask->task.data_ptr = (u64 *) dlBegin; dkrtask->task.data_size = (s32) (dlEnd - dlBegin) * sizeof(Gfx); dkrtask->task.type = 1; dkrtask->task.flags = 2; - dkrtask->task.ucode_boot = rspF3DDKRBootStart; + dkrtask->task.ucode_boot = (u64 *) rspF3DDKRBootStart; dkrtask->task.ucode_boot_size = (s32) (rspF3DDKRDramStart - rspF3DDKRBootStart); - dkrtask->task.ucode = rspF3DDKRXbusStart; - dkrtask->task.ucode_data = rspF3DDKRDataXbusStart; + dkrtask->task.ucode = (u64 *) rspF3DDKRXbusStart; + dkrtask->task.ucode_data = (u64 *) rspF3DDKRDataXbusStart; dkrtask->task.ucode_data_size = 0x800; - dkrtask->task.dram_stack = gDramStack; + dkrtask->task.dram_stack = (u64 *) gDramStack; dkrtask->task.dram_stack_size = 0x400; - dkrtask->task.yield_data_ptr = D_801271B0; - dkrtask->task.yield_data_size = 0xA00; + dkrtask->task.yield_data_ptr = (u64 *) gGfxTaskYieldData; + dkrtask->task.yield_data_size = sizeof(gGfxTaskYieldData); dkrtask->task.output_buff = NULL; dkrtask->task.output_buff_size = 0; - dkrtask->unk0 = 0; - dkrtask->unk8 = 3; - dkrtask->mesgQueue = &D_80125ED8; - dkrtask->unk54 = D_800DE490; - dkrtask->frameBuffer = (s32) gVideoCurrFramebuffer; - dkrtask->unk58 = 0xFF0000FF; - dkrtask->unk5C = 0xFF0000FF; - dkrtask->unk60 = 0xFF; - dkrtask->unk64 = 0xFF; + dkrtask->next = NULL; + dkrtask->flags = OS_SC_NEEDS_RDP | OS_SC_NEEDS_RSP; + dkrtask->mesgQueue = &gGfxTaskMesgQueue; + dkrtask->mesg = gGfxTaskMesgNums; + dkrtask->frameBuffer = gVideoCurrFramebuffer; + dkrtask->unused58 = COLOUR_TAG_RED; + dkrtask->unused5C = COLOUR_TAG_RED; + dkrtask->unused60 = 0xFF; + dkrtask->unused64 = 0xFF; dkrtask->unk68 = 0; if (recvMesg) { @@ -260,7 +260,7 @@ UNUSED void setup_ostask_xbus_2(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg) { osWritebackDCacheAll(); osSendMesg(osScInterruptQ, dkrtask, 1); if (recvMesg) { - osRecvMesg(&D_80125EA0, &mesgBuf, 1); + osRecvMesg(&D_80125EA0, (OSMesg) &mesgBuf, 1); } } @@ -281,30 +281,30 @@ UNUSED void setup_ostask_fifo(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg) { gfxBufCounter2 = 0; } - dkrtask->task.data_ptr = dlBegin; - dkrtask->task.ucode_boot = rspF3DDKRBootStart; + dkrtask->task.data_ptr = (u64 *) dlBegin; + dkrtask->task.ucode_boot = (u64 *) rspF3DDKRBootStart; dkrtask->task.data_size = (s32) (dlEnd - dlBegin) * sizeof(Gfx); dkrtask->task.type = 1; dkrtask->task.flags = 2; dkrtask->task.ucode_boot_size = (s32) (rspF3DDKRDramStart - rspF3DDKRBootStart); - dkrtask->task.ucode = rspF3DDKRFifoStart; - dkrtask->task.ucode_data = rspF3DDKRDataFifoStart; + dkrtask->task.ucode = (u64 *) rspF3DDKRFifoStart; + dkrtask->task.ucode_data = (u64 *) rspF3DDKRDataFifoStart; dkrtask->task.ucode_data_size = 0x800; - dkrtask->task.dram_stack = gDramStack; + dkrtask->task.dram_stack = (u64 *) gDramStack; dkrtask->task.dram_stack_size = 0x400; - dkrtask->task.output_buff = gGfxSPTaskYieldBuffer; - dkrtask->task.output_buff_size = gGfxSPTaskYieldBuffer + YIELD_BUFFER_SIZE; - dkrtask->task.yield_data_ptr = D_801271B0; - dkrtask->task.yield_data_size = 0xA00; - dkrtask->unk0 = 0; - dkrtask->unk8 = 7; - dkrtask->mesgQueue = &D_80125ED8; - dkrtask->unk54 = D_800DE490; - dkrtask->frameBuffer = (s32) gVideoCurrFramebuffer; - dkrtask->unk58 = 0xFF0000FF; - dkrtask->unk5C = 0xFF0000FF; - dkrtask->unk60 = 0xFF; - dkrtask->unk64 = 0xFF; + dkrtask->task.output_buff = (u64 *) gGfxSPTaskYieldBuffer; + dkrtask->task.output_buff_size = (u64 *) (gGfxSPTaskYieldBuffer + YIELD_BUFFER_SIZE); + dkrtask->task.yield_data_ptr = (u64 *) gGfxTaskYieldData; + dkrtask->task.yield_data_size = sizeof(gGfxTaskYieldData); + dkrtask->next = NULL; + dkrtask->flags = OS_SC_NEEDS_RDP | OS_SC_NEEDS_RSP | OS_SC_DRAM_DLIST; + dkrtask->mesgQueue = &gGfxTaskMesgQueue; + dkrtask->mesg = gGfxTaskMesgNums; + dkrtask->frameBuffer = gVideoCurrFramebuffer; + dkrtask->unused58 = COLOUR_TAG_RED; + dkrtask->unused5C = COLOUR_TAG_RED; + dkrtask->unused60 = 0xFF; + dkrtask->unused64 = 0xFF; dkrtask->unk68 = 0; if (recvMesg) { @@ -314,7 +314,7 @@ UNUSED void setup_ostask_fifo(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg) { osSendMesg(osScInterruptQ, dkrtask, 1); if (recvMesg) { - osRecvMesg(&D_80125EA0, &mesgBuf, 1); + osRecvMesg(&D_80125EA0, (OSMesg) &mesgBuf, 1); } } @@ -331,36 +331,36 @@ UNUSED void setup_ostask_fifo_2(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg) { } dkrtask->task.data_size = (s32) (dlEnd - dlBegin) * sizeof(Gfx); - dkrtask->task.data_ptr = dlBegin; + dkrtask->task.data_ptr = (u64 *) dlBegin; dkrtask->task.type = 1; dkrtask->task.flags = 2; - dkrtask->task.ucode_boot = rspF3DDKRBootStart; + dkrtask->task.ucode_boot = (u64 *) rspF3DDKRBootStart; dkrtask->task.ucode_boot_size = (s32) (rspF3DDKRDramStart - rspF3DDKRBootStart); - dkrtask->task.ucode = rspF3DDKRFifoStart; - dkrtask->task.ucode_data = rspF3DDKRDataFifoStart; + dkrtask->task.ucode = (u64 *) rspF3DDKRFifoStart; + dkrtask->task.ucode_data = (u64 *) rspF3DDKRDataFifoStart; dkrtask->task.ucode_data_size = 0x800; - dkrtask->task.dram_stack = gDramStack; + dkrtask->task.dram_stack = (u64 *) gDramStack; dkrtask->task.dram_stack_size = 0x400; - dkrtask->task.output_buff = gGfxSPTaskYieldBuffer; - dkrtask->task.output_buff_size = &D_80125EA0; - dkrtask->task.yield_data_ptr = &D_801271B0; - dkrtask->task.yield_data_size = 0xA00; - dkrtask->unk0 = 0; - dkrtask->unk8 = 7; - dkrtask->mesgQueue = &D_80125ED8; - dkrtask->unk54 = D_800DE490; - dkrtask->frameBuffer = (s32) gVideoCurrFramebuffer; - dkrtask->unk58 = 0xFF0000FF; - dkrtask->unk5C = 0xFF0000FF; + dkrtask->task.output_buff = (u64 *) gGfxSPTaskYieldBuffer; + dkrtask->task.output_buff_size = (u64 *) &D_80125EA0; + dkrtask->task.yield_data_ptr = (u64 *) gGfxTaskYieldData; + dkrtask->task.yield_data_size = sizeof(gGfxTaskYieldData); + dkrtask->next = NULL; + dkrtask->flags = OS_SC_NEEDS_RDP | OS_SC_NEEDS_RSP | OS_SC_DRAM_DLIST; + dkrtask->mesgQueue = &gGfxTaskMesgQueue; + dkrtask->mesg = gGfxTaskMesgNums; + dkrtask->frameBuffer = gVideoCurrFramebuffer; + dkrtask->unused58 = COLOUR_TAG_RED; + dkrtask->unused5C = COLOUR_TAG_RED; if (recvMesg) { - dkrtask->unk60 = 0xFF; - dkrtask->unk64 = 0xFF; + dkrtask->unused60 = 0xFF; + dkrtask->unused64 = 0xFF; } dkrtask->unk68 = 0; osWritebackDCacheAll(); osSendMesg(osScInterruptQ, dkrtask, 1); if (recvMesg) { - osRecvMesg(&D_80125ED8, &mesgBuf, 1); + osRecvMesg(&gGfxTaskMesgQueue, (OSMesg) &mesgBuf, 1); } } @@ -371,12 +371,12 @@ UNUSED void setup_ostask_fifo_2(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg) { */ s32 wait_for_gfx_task(void) { OSMesg *mesg = NULL; - if (gGfxTaskIsRunning == FALSE) { + if (gGfxTaskIsRunning == FALSE) { return 0; } - osRecvMesg(&D_80125ED8, &mesg, OS_MESG_BLOCK); + osRecvMesg(&gGfxTaskMesgQueue, (OSMesg) &mesg, OS_MESG_BLOCK); gGfxTaskIsRunning = FALSE; - return mesg[1]; + return (s32) mesg[1]; } UNUSED void func_80077AAC(void *bufPtr, s32 bufSize, UNUSED s32 unused) { @@ -406,7 +406,7 @@ void set_background_fill_colour(s32 red, s32 green, s32 blue) { #ifdef NON_EQUIVALENT // Stack issues -void render_background(Gfx **dlist, s32 *arg1, s32 arg2) { +void render_background(Gfx **dlist, Mtx *arg1, s32 arg2) { s32 x1; s32 y1; s32 x2; @@ -494,7 +494,7 @@ void setup_gfx_mesg_queues(OSSched *sc) { osScInterruptQ = osScGetInterruptQ(sc); osCreateMesgQueue(&D_80125EA0, &D_80125EB8, 1); osCreateMesgQueue(&D_80125EC0, D_80125EF0, 8); - osCreateMesgQueue(&D_80125ED8, D_80125F10, 8); + osCreateMesgQueue(&gGfxTaskMesgQueue, gGfxTaskMesgBuf, 8); } void func_80078170(u32 arg0, u32 arg1, u32 arg2) { @@ -525,51 +525,82 @@ void func_800787F0(void) { D_800DE4CC = 0; } -GLOBAL_ASM("asm/non_matchings/unknown_078050/func_800787FC.s") +void func_800787FC(Gfx **arg0) { + s32 height; + s32 width; + s32 var_t4; // Flips between 0 and 1 + s32 y; + s32 x; + + var_t4 = get_video_width_and_height_as_s32(); + height = GET_VIDEO_HEIGHT(var_t4) & 0xFFFF; + width = GET_VIDEO_WIDTH(var_t4); + + gSPDisplayList((*arg0)++, D_800DE5E0); + gDPSetPrimColor((*arg0)++, 0, 0, D_80125F30, D_80125F31, D_80125F32, D_80125F33); + + for (y = 0, var_t4 = 0; y < height; y += D_80125F3C, var_t4 ^= 1) { + for (x = var_t4 * D_80125F38; x < width; x += D_80125F38 * 2) { + gDPFillRectangle((*arg0)++, x, y, x + D_80125F38, y + D_80125F3C); + } + } + + gDPSetPrimColor((*arg0)++, 0, 0, D_80125F34, D_80125F35, D_80125F36, D_80125F37); + + for (y = 0, var_t4 = 1; y < height; y += D_80125F3C, var_t4 ^= 1) { + for (x = var_t4 * D_80125F38; x < width; x += D_80125F38 * 2) { + gDPFillRectangle((*arg0)++, x, y, x + D_80125F38, y + D_80125F3C); + } + } + + gDPPipeSync((*arg0)++); +} void func_80078AAC(void *arg0) { D_800DE4D0.ptr = arg0; } -#ifdef NON_MATCHING - -// Regalloc issues. -void render_textured_rectangle(Gfx **dlist, DrawTexture *arg1, s32 xPos, s32 yPos, u8 red, u8 green, u8 blue, u8 alpha) { +/** + * Renders one or more textures directly on screen resulting from the passed image properties. + * Texture rectangle coordinates use 10.2 precision and texture coords use 10.5 precision. + * Typically, you do these shifts in the draw call itself, but Rare decided to do it beforehand. +*/ +void render_textured_rectangle(Gfx **dlist, DrawTexture *element, s32 xPos, s32 yPos, u8 red, u8 green, u8 blue, u8 alpha) { TextureHeader *tex; - s32 ulx, uly; - s32 lrx, lry; - s32 s, t; s32 i; + s32 uly; + s32 ulx; + s32 lry; + s32 lrx; + s32 t; + s32 s; - gSPDisplayList((*dlist)++, D_800DE628); - gDPSetPrimColor((*dlist)++, 0, 0, red, green, blue, alpha); - for (i = 0; (tex = arg1[i].texture); i++) { - ulx = (arg1[i].xOffset * 4) + (xPos * 4); - uly = (arg1[i].yOffset * 4) + (yPos * 4); - lrx = (tex->width * 4) + ulx; - lry = (tex->height * 4) + uly; - if (lrx > 0) { - if (lry > 0) { - s = 0; - t = 0; - if (ulx < 0) { - s = -(ulx * 8); - ulx = 0; - } - if (uly < 0) { - t = -(uly * 8); - uly = 0; - } - gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(tex->cmd), tex->numberOfCommands); - gSPTextureRectangle((*dlist)++, ulx, uly, lrx, lry, G_TX_RENDERTILE, s, t, 1024, 1024); + gSPDisplayList((*dlist)++, dTextureRectangleModes); + gDPSetPrimColor((*dlist)++, 0, 0, red, green, blue, alpha); + xPos <<= 2; + yPos <<= 2; + for (i = 0; (tex = element[i].texture); i++) { + ulx = (element[i].xOffset << 2) + xPos; + uly = (element[i].yOffset << 2) + yPos; + lrx = (tex->width << 2) + ulx; + lry = (tex->height << 2) + uly; + if (lrx > 0 && lry > 0) { + s = 0; + t = 0; + if (ulx < 0) { + s = -(ulx << 3); + ulx = 0; } + if (uly < 0) { + t = -(uly << 3); + uly = 0; + } + gDkrDmaDisplayList((*dlist)++, OS_PHYSICAL_TO_K0(tex->cmd), tex->numberOfCommands); + gSPTextureRectangle((*dlist)++, ulx, uly, lrx, lry, G_TX_RENDERTILE, s, t, 1024, 1024); } } gDPPipeSync((*dlist)++); gDPSetPrimColor((*dlist)++, 0, 0, 255, 255, 255, 255); } -#else -GLOBAL_ASM("asm/non_matchings/unknown_078050/render_textured_rectangle.s") -#endif GLOBAL_ASM("asm/non_matchings/unknown_078050/render_texture_rectangle_scaled.s") diff --git a/src/unknown_078050.h b/src/unknown_078050.h index 3d9979fe..5354ee40 100644 --- a/src/unknown_078050.h +++ b/src/unknown_078050.h @@ -16,22 +16,22 @@ typedef union { } unk800DE4D0; typedef struct DKR_OSTask { - s32 unk0; - s32 unk4; - s32 unk8; - s32 frameBuffer; + struct DKR_OSTask *next; + u32 state; + u32 flags; + void *frameBuffer; OSTask_t task; // Size: 0x40 bytes OSMesgQueue *mesgQueue; - s32 unk54; - s32 unk58; - s32 unk5C; - s32 unk60; - s32 unk64; - s32 unk68; - s32 unk6C; + OSMesg mesg; + s32 unused58; + s32 unused5C; + s32 unused60; + s32 unused64; + u32 unk68; + s32 unused6C; } DKR_OSTask; -extern s16 D_800DE490[16]; +extern s16 gGfxTaskMesgNums[16]; extern u8 sBackgroundPrimColourR; extern u8 sBackgroundPrimColourG; @@ -63,13 +63,13 @@ void init_rdp_and_framebuffer(Gfx **dlist); void init_rsp(Gfx **dlist); void setup_gfx_mesg_queues(OSSched *sc); void func_80078170(u32 arg0, u32 arg1, u32 arg2); -void func_80078778(s32 arg0, s32 arg1, s32 arg2, s32 arg3); -void func_800787F0(void); +s32 setup_ostask_xbus(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg); +void setup_ostask_fifo(Gfx* dlBegin, Gfx* dlEnd, s32 recvMesg); +void render_textured_rectangle(Gfx **dlist, DrawTexture *img, s32 xPos, s32 yPos, u8 red, u8 green, u8 blue, u8 alpha); +void func_800787FC(Gfx** arg0); //Non Matching -void render_background(Gfx **dlist, s32 *arg1, s32 arg2); -void render_textured_rectangle(Gfx **dlist, DrawTexture *arg1, s32 xPos, s32 yPos, u8 red, u8 green, u8 blue, u8 alpha); +void render_background(Gfx **dlist, Mtx *mtx, s32 arg2); void render_texture_rectangle_scaled(Gfx **dlist, DrawTexture *element, f32 x, f32 y, f32 x_scale, f32 y_scale, u32 color, s32 flip); -s32 setup_ostask_xbus(Gfx *, Gfx *, s32 arg2); // Not 100% sure about these types, but it matches what main_game_loop is sending. #endif diff --git a/src/video.c b/src/video.c index 73f12c42..c81afd26 100644 --- a/src/video.c +++ b/src/video.c @@ -7,8 +7,8 @@ /************ .data ************/ u16 *gVideoDepthBuffer = NULL; -s32 D_800DE774 = 0; // Currently unknown, might be a different type. -s8 D_800DE778 = 2; +UNUSED s32 D_800DE774 = 0; // Currently unknown, might be a different type. +UNUSED s8 D_800DE778 = 2; VideoModeResolution gVideoModeResolutions[] = { { SCREEN_WIDTH, SCREEN_HEIGHT }, // 320x240 @@ -21,7 +21,10 @@ VideoModeResolution gVideoModeResolutions[] = { { HIGH_RES_SCREEN_WIDTH, HIGH_RES_SCREEN_HEIGHT }, // 640x480 }; -s32 D_800DE7BC = 0; // Currently unknown, might be a different type. +// This value exists in order to make sure there are no out of bounds accesses of gVideoModeResolutions +#define NUM_RESOLUTION_MODES ((sizeof(gVideoModeResolutions) / sizeof(VideoModeResolution)) - 1) + +UNUSED s32 D_800DE7BC = 0; /*******************************/ @@ -30,7 +33,7 @@ s32 D_800DE7BC = 0; // Currently unknown, might be a different type. s32 gVideoRefreshRate; f32 gVideoAspectRatio; f32 gVideoHeightRatio; -s32 D_8012617C; +UNUSED s32 D_8012617C; OSMesg gVideoMesgBuf[8]; OSMesgQueue gVideoMesgQueue[8]; OSViMode gTvViMode; @@ -39,16 +42,16 @@ s32 gVideoFbHeights[2]; u16 *gVideoFramebuffers[2]; s32 gVideoCurrFbIndex; s32 gVideoModeIndex; -s32 D_801262D0; +s32 sBlackScreenTimer; u16 *gVideoCurrFramebuffer; u16 *gVideoLastFramebuffer; u16 *gVideoCurrDepthBuffer; u16 *gVideoLastDepthBuffer; u8 D_801262E4; -s32 D_801262E8[8]; -u8 D_80126308; -u8 D_80126309; -s32 D_8012630C; +UNUSED OSMesg D_801262E8[8]; +u8 gVideoDeltaCounter; +u8 gVideoDeltaTime; +UNUSED s32 D_8012630C; OSScClient gVideoSched; /******************************/ @@ -79,10 +82,10 @@ void init_video(s32 videoModeIndex, OSSched *sc) { } } - func_8007A974(); + reset_video_delta_time(); set_video_mode_index(videoModeIndex); - gVideoFramebuffers[0] = 0; - gVideoFramebuffers[1] = 0; + gVideoFramebuffers[0] = NULL; + gVideoFramebuffers[1] = NULL; init_framebuffer(0); init_framebuffer(1); gVideoCurrFbIndex = 1; @@ -90,9 +93,9 @@ void init_video(s32 videoModeIndex, OSSched *sc) { osCreateMesgQueue((OSMesgQueue *)&gVideoMesgQueue, gVideoMesgBuf, ARRAY_COUNT(gVideoMesgBuf)); osScAddClient(sc, &gVideoSched, (OSMesgQueue *)&gVideoMesgQueue, OS_SC_ID_VIDEO); init_vi_settings(); - D_801262D0 = 12; + sBlackScreenTimer = 12; osViBlack(TRUE); - D_80126308 = 0; + gVideoDeltaCounter = 0; D_801262E4 = 3; } @@ -115,8 +118,8 @@ UNUSED s32 get_video_mode_index(void) { * Since only one kind of video mode is ever used, this function is never called. */ UNUSED void set_video_width_and_height_from_index(s32 fbIndex) { - gVideoFbWidths[fbIndex] = gVideoModeResolutions[gVideoModeIndex & 7].width; - gVideoFbHeights[fbIndex] = gVideoModeResolutions[gVideoModeIndex & 7].height; + gVideoFbWidths[fbIndex] = gVideoModeResolutions[gVideoModeIndex & NUM_RESOLUTION_MODES].width; + gVideoFbHeights[fbIndex] = gVideoModeResolutions[gVideoModeIndex & NUM_RESOLUTION_MODES].height; } /** @@ -144,7 +147,7 @@ void init_vi_settings(void) { viModeTableIndex = OS_VI_MPAL_LPN1; } - switch (gVideoModeIndex & 7) { + switch (gVideoModeIndex & NUM_RESOLUTION_MODES) { case VIDEO_MODE_LOWRES_LAN: stubbed_printf("320 by 240 Point sampled, Non interlaced.\n"); osViSetMode(&osViModeTable[viModeTableIndex]); @@ -233,8 +236,8 @@ void init_framebuffer(s32 index) { func_80071538((u8 *)gVideoFramebuffers[index]); free_from_memory_pool(gVideoFramebuffers[index]); } - gVideoFbWidths[index] = gVideoModeResolutions[gVideoModeIndex & 7].width; - gVideoFbHeights[index] = gVideoModeResolutions[gVideoModeIndex & 7].height; + gVideoFbWidths[index] = gVideoModeResolutions[gVideoModeIndex & NUM_RESOLUTION_MODES].width; + gVideoFbHeights[index] = gVideoModeResolutions[gVideoModeIndex & NUM_RESOLUTION_MODES].height; if (gVideoModeIndex >= VIDEO_MODE_MIDRES_MASK) { gVideoFramebuffers[index] = allocate_from_main_pool_safe((HIGH_RES_SCREEN_WIDTH * HIGH_RES_SCREEN_HEIGHT * 2) + 0x30, COLOUR_TAG_WHITE); gVideoFramebuffers[index] = (u16 *)(((s32)gVideoFramebuffers[index] + 0x3F) & ~0x3F); @@ -252,57 +255,62 @@ void init_framebuffer(s32 index) { } } -void func_8007A974(void) { - D_80126308 = 0; - D_80126309 = 2; +/** + * Sets the video counters to their default values. + * Another renmant from an unused system. + */ +void reset_video_delta_time(void) { + gVideoDeltaCounter = 0; + gVideoDeltaTime = 2; } -#ifdef NON_EQUIVALENT -// regalloc & stack issues -s32 func_8007A98C(s32 arg0) { - s32 tempUpdateRate; +/** + * Wait for the finished message from the scheduler while counting up a timer, + * then update the current framebuffer index. + * This function also has a section where it counts a timer that goes no higher + * than an update magnitude of 2. It's only purpose is to be used as a divisor + * in the unused function, get_video_refresh_speed. + */ +s32 swap_framebuffer_when_ready(s32 mesg) { + u8 tempUpdateRate; tempUpdateRate = LOGIC_60FPS; - if (D_801262D0 != 0) { - D_801262D0--; - if (D_801262D0 == 0) { + if (sBlackScreenTimer) { + sBlackScreenTimer--; + if (sBlackScreenTimer == 0) { osViBlack(FALSE); } } - if (arg0 != 8) { + if (mesg != MESG_SKIP_BUFFER_SWAP) { swap_framebuffers(); } - while (osRecvMesg(&gVideoMesgQueue, NULL, OS_MESG_NOBLOCK) != -1) { - tempUpdateRate += 1; - tempUpdateRate &= 0xFF; + while (osRecvMesg(gVideoMesgQueue, NULL, OS_MESG_NOBLOCK) != -1) { + tempUpdateRate++; } - if (tempUpdateRate < D_80126309) { - if (D_80126308 < 0x14) { - D_80126308++; + if (tempUpdateRate < gVideoDeltaTime) { + if (gVideoDeltaCounter < 20) { + gVideoDeltaCounter++; } - if (D_80126308 == 0x14) { - D_80126309 = tempUpdateRate; - D_80126308 = 0; + if (gVideoDeltaCounter == 20) { + gVideoDeltaTime = tempUpdateRate; + gVideoDeltaCounter = 0; } } else { - D_80126308 = 0; - if ((D_80126309 >= tempUpdateRate) || (D_801262E4 > tempUpdateRate)) { - D_80126309 = tempUpdateRate; + gVideoDeltaCounter = 0; + if ((gVideoDeltaTime < tempUpdateRate) && (D_801262E4 >= tempUpdateRate)) { + gVideoDeltaTime = tempUpdateRate; } } - while (tempUpdateRate < D_80126309) { - osRecvMesg(&gVideoMesgQueue, NULL, OS_MESG_BLOCK); - tempUpdateRate += 1; - tempUpdateRate &= 0xFF; + while (tempUpdateRate < gVideoDeltaTime) { + osRecvMesg(gVideoMesgQueue, NULL, OS_MESG_BLOCK); + tempUpdateRate++; } + osViSwapBuffer(gVideoLastFramebuffer); - osRecvMesg(&gVideoMesgQueue, NULL, OS_MESG_BLOCK); + osRecvMesg(gVideoMesgQueue, NULL, OS_MESG_BLOCK); return tempUpdateRate; } -#else -GLOBAL_ASM("asm/non_matchings/video/func_8007A98C.s") -#endif void func_8007AB24(s8 arg0) { D_801262E4 = arg0; @@ -314,7 +322,7 @@ void func_8007AB24(s8 arg0) { * Perhaps may have been used originally to calculate the factor in which to handle frameskipping with. */ UNUSED s32 get_video_refresh_speed(void) { - return (s32)((f32)gVideoRefreshRate / (f32)D_80126309); + return (s32)((f32)gVideoRefreshRate / (f32)gVideoDeltaTime); } /** diff --git a/src/video.h b/src/video.h index 9d92d093..2f724a79 100644 --- a/src/video.h +++ b/src/video.h @@ -75,8 +75,6 @@ extern s32 gVideoRefreshRate; extern u16 *gVideoCurrFramebuffer; extern u16 *gVideoDepthBuffer; -extern s32 D_800DE774; -extern s8 D_800DE778; extern OSViMode osViModeNtscLpn1, osViModePalLpn1, osViModeMpalLpn1, osViModePalLan1, osViModeNtscLan1, osViModeMpalLan1; @@ -88,8 +86,6 @@ typedef struct VideoModeResolution { extern VideoModeResolution gVideoModeResolutions[8]; -extern s32 D_800DE7BC; - void init_video(s32 videoModeIndex, OSSched *sc); void set_video_mode_index(s32 videoModeIndex); UNUSED s32 get_video_mode_index(void); @@ -97,13 +93,13 @@ UNUSED void set_video_width_and_height_from_index(s32 fbIndex); s32 get_video_width_and_height_as_s32(void); void init_vi_settings(void); void init_framebuffer(s32 index); -void func_8007A974(void); +void reset_video_delta_time(void); void func_8007AB24(s8 arg0); s32 get_video_refresh_speed(void); void swap_framebuffers(void); void memory_copy(u8 *src, u8 *dest, s32 len); //Non Matching -s32 func_8007A98C(s32 arg0); +s32 swap_framebuffer_when_ready(s32 arg0); #endif