mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
Match and label some track functions (#354)
* match render_scene and render_level_segment * improve accuracy of a name * labbie * disregard libultra in documentation score * Start on triangle batch flags * Q * more tracks.c stuff * Update src/unknown_0255E0.c Co-authored-by: Ryan Myers <ryan.p.myers@gmail.com> * Update unknown_0255E0.c Co-authored-by: Ryan Myers <ryan.p.myers@gmail.com>
This commit is contained in:
@@ -9,7 +9,7 @@ glabel func_8009ECF0
|
||||
/* 09F90C 8009ED0C 3C038012 */ lui $v1, %hi(gHUDNumPlayers) # $v1, 0x8012
|
||||
/* 09F910 8009ED10 24636D0C */ addiu $v1, %lo(gHUDNumPlayers) # addiu $v1, $v1, 0x6d0c
|
||||
/* 09F914 8009ED14 AC620000 */ sw $v0, ($v1)
|
||||
/* 09F918 8009ED18 0C01994B */ jal set_active_viewports_and_object_stack_cap
|
||||
/* 09F918 8009ED18 0C01994B */ jal set_active_viewports_and_max
|
||||
/* 09F91C 8009ED1C 00402025 */ move $a0, $v0
|
||||
/* 09F920 8009ED20 3C018012 */ lui $at, %hi(gNumActivePlayers) # $at, 0x8012
|
||||
/* 09F924 8009ED24 0C01BAA4 */ jal get_settings
|
||||
|
||||
+1117
-1117
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,159 +1,159 @@
|
||||
glabel func_80016500
|
||||
/* 017100 80016500 27BDFFC0 */ addiu $sp, $sp, -0x40
|
||||
/* 017104 80016504 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 017108 80016508 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 01710C 8001650C AFA40040 */ sw $a0, 0x40($sp)
|
||||
/* 017110 80016510 C4A4002C */ lwc1 $f4, 0x2c($a1)
|
||||
/* 017114 80016514 00A08025 */ move $s0, $a1
|
||||
/* 017118 80016518 E7A40030 */ swc1 $f4, 0x30($sp)
|
||||
/* 01711C 8001651C 80AE01D6 */ lb $t6, 0x1d6($a1)
|
||||
/* 017120 80016520 84A201A0 */ lh $v0, 0x1a0($a1)
|
||||
/* 017124 80016524 15C0000B */ bnez $t6, .L80016554
|
||||
/* 017128 80016528 00022023 */ negu $a0, $v0
|
||||
/* 01712C 8001652C 80AF01E6 */ lb $t7, 0x1e6($a1)
|
||||
/* 017130 80016530 00000000 */ nop
|
||||
/* 017134 80016534 11E00007 */ beqz $t7, .L80016554
|
||||
/* 017138 80016538 00022023 */ negu $a0, $v0
|
||||
/* 01713C 8001653C 8CB8010C */ lw $t8, 0x10c($a1)
|
||||
/* 017140 80016540 00000000 */ nop
|
||||
/* 017144 80016544 00581021 */ addu $v0, $v0, $t8
|
||||
/* 017148 80016548 0002CC00 */ sll $t9, $v0, 0x10
|
||||
/* 01714C 8001654C 00191403 */ sra $v0, $t9, 0x10
|
||||
/* 017150 80016550 00022023 */ negu $a0, $v0
|
||||
.L80016554:
|
||||
/* 017154 80016554 00044C00 */ sll $t1, $a0, 0x10
|
||||
/* 017158 80016558 00092403 */ sra $a0, $t1, 0x10
|
||||
/* 01715C 8001655C 0C01C1FE */ jal coss_f
|
||||
/* 017160 80016560 AFA40020 */ sw $a0, 0x20($sp)
|
||||
/* 017164 80016564 8FA40020 */ lw $a0, 0x20($sp)
|
||||
/* 017168 80016568 0C01C1F1 */ jal sins_f
|
||||
/* 01716C 8001656C E7A0002C */ swc1 $f0, 0x2c($sp)
|
||||
/* 017170 80016570 8FAB0040 */ lw $t3, 0x40($sp)
|
||||
/* 017174 80016574 C7A2002C */ lwc1 $f2, 0x2c($sp)
|
||||
/* 017178 80016578 C566001C */ lwc1 $f6, 0x1c($t3)
|
||||
/* 01717C 8001657C C56A0024 */ lwc1 $f10, 0x24($t3)
|
||||
/* 017180 80016580 46023202 */ mul.s $f8, $f6, $f2
|
||||
/* 017184 80016584 860D0000 */ lh $t5, ($s0)
|
||||
/* 017188 80016588 2401FFFF */ li $at, -1
|
||||
/* 01718C 8001658C 46005402 */ mul.s $f16, $f10, $f0
|
||||
/* 017190 80016590 46104480 */ add.s $f18, $f8, $f16
|
||||
/* 017194 80016594 E6120030 */ swc1 $f18, 0x30($s0)
|
||||
/* 017198 80016598 8FAC0040 */ lw $t4, 0x40($sp)
|
||||
/* 01719C 8001659C 00000000 */ nop
|
||||
/* 0171A0 800165A0 C584001C */ lwc1 $f4, 0x1c($t4)
|
||||
/* 0171A4 800165A4 C5880024 */ lwc1 $f8, 0x24($t4)
|
||||
/* 0171A8 800165A8 46002187 */ neg.s $f6, $f4
|
||||
/* 0171AC 800165AC 46003282 */ mul.s $f10, $f6, $f0
|
||||
/* 0171B0 800165B0 00000000 */ nop
|
||||
/* 0171B4 800165B4 46024402 */ mul.s $f16, $f8, $f2
|
||||
/* 0171B8 800165B8 46105480 */ add.s $f18, $f10, $f16
|
||||
/* 0171BC 800165BC 11A1005E */ beq $t5, $at, .L80016738
|
||||
/* 0171C0 800165C0 E612002C */ swc1 $f18, 0x2c($s0)
|
||||
/* 0171C4 800165C4 C7A40030 */ lwc1 $f4, 0x30($sp)
|
||||
/* 0171C8 800165C8 C606002C */ lwc1 $f6, 0x2c($s0)
|
||||
/* 0171CC 800165CC 3C014160 */ li $at, 0x41600000 # 14.000000
|
||||
/* 0171D0 800165D0 44815000 */ mtc1 $at, $f10
|
||||
/* 0171D4 800165D4 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 0171D8 800165D8 460A4402 */ mul.s $f16, $f8, $f10
|
||||
/* 0171DC 800165DC 444EF800 */ cfc1 $t6, $31
|
||||
/* 0171E0 800165E0 00000000 */ nop
|
||||
/* 0171E4 800165E4 35C10003 */ ori $at, $t6, 3
|
||||
/* 0171E8 800165E8 38210002 */ xori $at, $at, 2
|
||||
/* 0171EC 800165EC 44C1F800 */ ctc1 $at, $31
|
||||
/* 0171F0 800165F0 00000000 */ nop
|
||||
/* 0171F4 800165F4 460084A4 */ cvt.w.s $f18, $f16
|
||||
/* 0171F8 800165F8 44029000 */ mfc1 $v0, $f18
|
||||
/* 0171FC 800165FC 44CEF800 */ ctc1 $t6, $31
|
||||
/* 017200 80016600 04410002 */ bgez $v0, .L8001660C
|
||||
/* 017204 80016604 00000000 */ nop
|
||||
/* 017208 80016608 00021023 */ negu $v0, $v0
|
||||
.L8001660C:
|
||||
/* 01720C 8001660C 24420023 */ addiu $v0, $v0, 0x23
|
||||
/* 017210 80016610 28410080 */ slti $at, $v0, 0x80
|
||||
/* 017214 80016614 14200002 */ bnez $at, .L80016620
|
||||
/* 017218 80016618 2404000D */ li $a0, 13
|
||||
/* 01721C 8001661C 2402007F */ li $v0, 127
|
||||
.L80016620:
|
||||
/* 017220 80016620 820301F6 */ lb $v1, 0x1f6($s0)
|
||||
/* 017224 80016624 26050220 */ addiu $a1, $s0, 0x220
|
||||
/* 017228 80016628 1460000B */ bnez $v1, .L80016658
|
||||
/* 01722C 8001662C 00000000 */ nop
|
||||
/* 017230 80016630 0C000741 */ jal play_sound_global
|
||||
/* 017234 80016634 AFA20038 */ sw $v0, 0x38($sp)
|
||||
/* 017238 80016638 8FA20038 */ lw $v0, 0x38($sp)
|
||||
/* 01723C 8001663C 8E050220 */ lw $a1, 0x220($s0)
|
||||
/* 017240 80016640 2404000D */ li $a0, 13
|
||||
/* 017244 80016644 0C0007EE */ jal func_80001FB8
|
||||
/* 017248 80016648 304600FF */ andi $a2, $v0, 0xff
|
||||
/* 01724C 8001664C 8FA20038 */ lw $v0, 0x38($sp)
|
||||
/* 017250 80016650 820301F6 */ lb $v1, 0x1f6($s0)
|
||||
/* 017254 80016654 00000000 */ nop
|
||||
.L80016658:
|
||||
/* 017258 80016658 14600010 */ bnez $v1, .L8001669C
|
||||
/* 01725C 8001665C 28410038 */ slti $at, $v0, 0x38
|
||||
/* 017260 80016660 1420000F */ bnez $at, .L800166A0
|
||||
/* 017264 80016664 28410038 */ slti $at, $v0, 0x38
|
||||
/* 017268 80016668 820F01D8 */ lb $t7, 0x1d8($s0)
|
||||
/* 01726C 8001666C 24050012 */ li $a1, 18
|
||||
/* 017270 80016670 15E00006 */ bnez $t7, .L8001668C
|
||||
/* 017274 80016674 00000000 */ nop
|
||||
/* 017278 80016678 86040000 */ lh $a0, ($s0)
|
||||
/* 01727C 8001667C 0C01C8D2 */ jal func_80072348
|
||||
/* 017280 80016680 AFA20038 */ sw $v0, 0x38($sp)
|
||||
/* 017284 80016684 8FA20038 */ lw $v0, 0x38($sp)
|
||||
/* 017288 80016688 00000000 */ nop
|
||||
.L8001668C:
|
||||
/* 01728C 8001668C 921801F3 */ lbu $t8, 0x1f3($s0)
|
||||
/* 017290 80016690 00000000 */ nop
|
||||
/* 017294 80016694 37190008 */ ori $t9, $t8, 8
|
||||
/* 017298 80016698 A21901F3 */ sb $t9, 0x1f3($s0)
|
||||
.L8001669C:
|
||||
/* 01729C 8001669C 28410038 */ slti $at, $v0, 0x38
|
||||
.L800166A0:
|
||||
/* 0172A0 800166A0 14200005 */ bnez $at, .L800166B8
|
||||
/* 0172A4 800166A4 240501C2 */ li $a1, 450
|
||||
/* 0172A8 800166A8 8FA40040 */ lw $a0, 0x40($sp)
|
||||
/* 0172AC 800166AC 24060008 */ li $a2, 8
|
||||
/* 0172B0 800166B0 0C015C2E */ jal play_random_character_voice
|
||||
/* 0172B4 800166B4 24070001 */ li $a3, 1
|
||||
.L800166B8:
|
||||
/* 0172B8 800166B8 C7A40030 */ lwc1 $f4, 0x30($sp)
|
||||
/* 0172BC 800166BC C606002C */ lwc1 $f6, 0x2c($s0)
|
||||
/* 0172C0 800166C0 86040000 */ lh $a0, ($s0)
|
||||
/* 0172C4 800166C4 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 0172C8 800166C8 2409001E */ li $t1, 30
|
||||
/* 0172CC 800166CC 4448F800 */ cfc1 $t0, $31
|
||||
/* 0172D0 800166D0 00000000 */ nop
|
||||
/* 0172D4 800166D4 35010003 */ ori $at, $t0, 3
|
||||
/* 0172D8 800166D8 38210002 */ xori $at, $at, 2
|
||||
/* 0172DC 800166DC 44C1F800 */ ctc1 $at, $31
|
||||
/* 0172E0 800166E0 00000000 */ nop
|
||||
/* 0172E4 800166E4 460042A4 */ cvt.w.s $f10, $f8
|
||||
/* 0172E8 800166E8 44035000 */ mfc1 $v1, $f10
|
||||
/* 0172EC 800166EC 44C8F800 */ ctc1 $t0, $31
|
||||
/* 0172F0 800166F0 04610003 */ bgez $v1, .L80016700
|
||||
/* 0172F4 800166F4 28610004 */ slti $at, $v1, 4
|
||||
/* 0172F8 800166F8 00031823 */ negu $v1, $v1
|
||||
/* 0172FC 800166FC 28610004 */ slti $at, $v1, 4
|
||||
.L80016700:
|
||||
/* 017300 80016700 14200002 */ bnez $at, .L8001670C
|
||||
/* 017304 80016704 00000000 */ nop
|
||||
/* 017308 80016708 24030003 */ li $v1, 3
|
||||
.L8001670C:
|
||||
/* 01730C 8001670C A20901F6 */ sb $t1, 0x1f6($s0)
|
||||
/* 017310 80016710 0C01997A */ jal set_object_stack_pos
|
||||
/* 017314 80016714 AFA3003C */ sw $v1, 0x3c($sp)
|
||||
/* 017318 80016718 0C01A748 */ jal get_active_camera_segment
|
||||
/* 01731C 8001671C 00000000 */ nop
|
||||
/* 017320 80016720 8FA3003C */ lw $v1, 0x3c($sp)
|
||||
/* 017324 80016724 00000000 */ nop
|
||||
/* 017328 80016728 44838000 */ mtc1 $v1, $f16
|
||||
/* 01732C 8001672C 00000000 */ nop
|
||||
/* 017330 80016730 468084A0 */ cvt.s.w $f18, $f16
|
||||
/* 017334 80016734 E4520030 */ swc1 $f18, 0x30($v0)
|
||||
.L80016738:
|
||||
/* 017338 80016738 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 01733C 8001673C 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 017340 80016740 03E00008 */ jr $ra
|
||||
/* 017344 80016744 27BD0040 */ addiu $sp, $sp, 0x40
|
||||
|
||||
glabel func_80016500
|
||||
/* 017100 80016500 27BDFFC0 */ addiu $sp, $sp, -0x40
|
||||
/* 017104 80016504 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 017108 80016508 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 01710C 8001650C AFA40040 */ sw $a0, 0x40($sp)
|
||||
/* 017110 80016510 C4A4002C */ lwc1 $f4, 0x2c($a1)
|
||||
/* 017114 80016514 00A08025 */ move $s0, $a1
|
||||
/* 017118 80016518 E7A40030 */ swc1 $f4, 0x30($sp)
|
||||
/* 01711C 8001651C 80AE01D6 */ lb $t6, 0x1d6($a1)
|
||||
/* 017120 80016520 84A201A0 */ lh $v0, 0x1a0($a1)
|
||||
/* 017124 80016524 15C0000B */ bnez $t6, .L80016554
|
||||
/* 017128 80016528 00022023 */ negu $a0, $v0
|
||||
/* 01712C 8001652C 80AF01E6 */ lb $t7, 0x1e6($a1)
|
||||
/* 017130 80016530 00000000 */ nop
|
||||
/* 017134 80016534 11E00007 */ beqz $t7, .L80016554
|
||||
/* 017138 80016538 00022023 */ negu $a0, $v0
|
||||
/* 01713C 8001653C 8CB8010C */ lw $t8, 0x10c($a1)
|
||||
/* 017140 80016540 00000000 */ nop
|
||||
/* 017144 80016544 00581021 */ addu $v0, $v0, $t8
|
||||
/* 017148 80016548 0002CC00 */ sll $t9, $v0, 0x10
|
||||
/* 01714C 8001654C 00191403 */ sra $v0, $t9, 0x10
|
||||
/* 017150 80016550 00022023 */ negu $a0, $v0
|
||||
.L80016554:
|
||||
/* 017154 80016554 00044C00 */ sll $t1, $a0, 0x10
|
||||
/* 017158 80016558 00092403 */ sra $a0, $t1, 0x10
|
||||
/* 01715C 8001655C 0C01C1FE */ jal coss_f
|
||||
/* 017160 80016560 AFA40020 */ sw $a0, 0x20($sp)
|
||||
/* 017164 80016564 8FA40020 */ lw $a0, 0x20($sp)
|
||||
/* 017168 80016568 0C01C1F1 */ jal sins_f
|
||||
/* 01716C 8001656C E7A0002C */ swc1 $f0, 0x2c($sp)
|
||||
/* 017170 80016570 8FAB0040 */ lw $t3, 0x40($sp)
|
||||
/* 017174 80016574 C7A2002C */ lwc1 $f2, 0x2c($sp)
|
||||
/* 017178 80016578 C566001C */ lwc1 $f6, 0x1c($t3)
|
||||
/* 01717C 8001657C C56A0024 */ lwc1 $f10, 0x24($t3)
|
||||
/* 017180 80016580 46023202 */ mul.s $f8, $f6, $f2
|
||||
/* 017184 80016584 860D0000 */ lh $t5, ($s0)
|
||||
/* 017188 80016588 2401FFFF */ li $at, -1
|
||||
/* 01718C 8001658C 46005402 */ mul.s $f16, $f10, $f0
|
||||
/* 017190 80016590 46104480 */ add.s $f18, $f8, $f16
|
||||
/* 017194 80016594 E6120030 */ swc1 $f18, 0x30($s0)
|
||||
/* 017198 80016598 8FAC0040 */ lw $t4, 0x40($sp)
|
||||
/* 01719C 8001659C 00000000 */ nop
|
||||
/* 0171A0 800165A0 C584001C */ lwc1 $f4, 0x1c($t4)
|
||||
/* 0171A4 800165A4 C5880024 */ lwc1 $f8, 0x24($t4)
|
||||
/* 0171A8 800165A8 46002187 */ neg.s $f6, $f4
|
||||
/* 0171AC 800165AC 46003282 */ mul.s $f10, $f6, $f0
|
||||
/* 0171B0 800165B0 00000000 */ nop
|
||||
/* 0171B4 800165B4 46024402 */ mul.s $f16, $f8, $f2
|
||||
/* 0171B8 800165B8 46105480 */ add.s $f18, $f10, $f16
|
||||
/* 0171BC 800165BC 11A1005E */ beq $t5, $at, .L80016738
|
||||
/* 0171C0 800165C0 E612002C */ swc1 $f18, 0x2c($s0)
|
||||
/* 0171C4 800165C4 C7A40030 */ lwc1 $f4, 0x30($sp)
|
||||
/* 0171C8 800165C8 C606002C */ lwc1 $f6, 0x2c($s0)
|
||||
/* 0171CC 800165CC 3C014160 */ li $at, 0x41600000 # 14.000000
|
||||
/* 0171D0 800165D0 44815000 */ mtc1 $at, $f10
|
||||
/* 0171D4 800165D4 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 0171D8 800165D8 460A4402 */ mul.s $f16, $f8, $f10
|
||||
/* 0171DC 800165DC 444EF800 */ cfc1 $t6, $31
|
||||
/* 0171E0 800165E0 00000000 */ nop
|
||||
/* 0171E4 800165E4 35C10003 */ ori $at, $t6, 3
|
||||
/* 0171E8 800165E8 38210002 */ xori $at, $at, 2
|
||||
/* 0171EC 800165EC 44C1F800 */ ctc1 $at, $31
|
||||
/* 0171F0 800165F0 00000000 */ nop
|
||||
/* 0171F4 800165F4 460084A4 */ cvt.w.s $f18, $f16
|
||||
/* 0171F8 800165F8 44029000 */ mfc1 $v0, $f18
|
||||
/* 0171FC 800165FC 44CEF800 */ ctc1 $t6, $31
|
||||
/* 017200 80016600 04410002 */ bgez $v0, .L8001660C
|
||||
/* 017204 80016604 00000000 */ nop
|
||||
/* 017208 80016608 00021023 */ negu $v0, $v0
|
||||
.L8001660C:
|
||||
/* 01720C 8001660C 24420023 */ addiu $v0, $v0, 0x23
|
||||
/* 017210 80016610 28410080 */ slti $at, $v0, 0x80
|
||||
/* 017214 80016614 14200002 */ bnez $at, .L80016620
|
||||
/* 017218 80016618 2404000D */ li $a0, 13
|
||||
/* 01721C 8001661C 2402007F */ li $v0, 127
|
||||
.L80016620:
|
||||
/* 017220 80016620 820301F6 */ lb $v1, 0x1f6($s0)
|
||||
/* 017224 80016624 26050220 */ addiu $a1, $s0, 0x220
|
||||
/* 017228 80016628 1460000B */ bnez $v1, .L80016658
|
||||
/* 01722C 8001662C 00000000 */ nop
|
||||
/* 017230 80016630 0C000741 */ jal play_sound_global
|
||||
/* 017234 80016634 AFA20038 */ sw $v0, 0x38($sp)
|
||||
/* 017238 80016638 8FA20038 */ lw $v0, 0x38($sp)
|
||||
/* 01723C 8001663C 8E050220 */ lw $a1, 0x220($s0)
|
||||
/* 017240 80016640 2404000D */ li $a0, 13
|
||||
/* 017244 80016644 0C0007EE */ jal func_80001FB8
|
||||
/* 017248 80016648 304600FF */ andi $a2, $v0, 0xff
|
||||
/* 01724C 8001664C 8FA20038 */ lw $v0, 0x38($sp)
|
||||
/* 017250 80016650 820301F6 */ lb $v1, 0x1f6($s0)
|
||||
/* 017254 80016654 00000000 */ nop
|
||||
.L80016658:
|
||||
/* 017258 80016658 14600010 */ bnez $v1, .L8001669C
|
||||
/* 01725C 8001665C 28410038 */ slti $at, $v0, 0x38
|
||||
/* 017260 80016660 1420000F */ bnez $at, .L800166A0
|
||||
/* 017264 80016664 28410038 */ slti $at, $v0, 0x38
|
||||
/* 017268 80016668 820F01D8 */ lb $t7, 0x1d8($s0)
|
||||
/* 01726C 8001666C 24050012 */ li $a1, 18
|
||||
/* 017270 80016670 15E00006 */ bnez $t7, .L8001668C
|
||||
/* 017274 80016674 00000000 */ nop
|
||||
/* 017278 80016678 86040000 */ lh $a0, ($s0)
|
||||
/* 01727C 8001667C 0C01C8D2 */ jal func_80072348
|
||||
/* 017280 80016680 AFA20038 */ sw $v0, 0x38($sp)
|
||||
/* 017284 80016684 8FA20038 */ lw $v0, 0x38($sp)
|
||||
/* 017288 80016688 00000000 */ nop
|
||||
.L8001668C:
|
||||
/* 01728C 8001668C 921801F3 */ lbu $t8, 0x1f3($s0)
|
||||
/* 017290 80016690 00000000 */ nop
|
||||
/* 017294 80016694 37190008 */ ori $t9, $t8, 8
|
||||
/* 017298 80016698 A21901F3 */ sb $t9, 0x1f3($s0)
|
||||
.L8001669C:
|
||||
/* 01729C 8001669C 28410038 */ slti $at, $v0, 0x38
|
||||
.L800166A0:
|
||||
/* 0172A0 800166A0 14200005 */ bnez $at, .L800166B8
|
||||
/* 0172A4 800166A4 240501C2 */ li $a1, 450
|
||||
/* 0172A8 800166A8 8FA40040 */ lw $a0, 0x40($sp)
|
||||
/* 0172AC 800166AC 24060008 */ li $a2, 8
|
||||
/* 0172B0 800166B0 0C015C2E */ jal play_random_character_voice
|
||||
/* 0172B4 800166B4 24070001 */ li $a3, 1
|
||||
.L800166B8:
|
||||
/* 0172B8 800166B8 C7A40030 */ lwc1 $f4, 0x30($sp)
|
||||
/* 0172BC 800166BC C606002C */ lwc1 $f6, 0x2c($s0)
|
||||
/* 0172C0 800166C0 86040000 */ lh $a0, ($s0)
|
||||
/* 0172C4 800166C4 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 0172C8 800166C8 2409001E */ li $t1, 30
|
||||
/* 0172CC 800166CC 4448F800 */ cfc1 $t0, $31
|
||||
/* 0172D0 800166D0 00000000 */ nop
|
||||
/* 0172D4 800166D4 35010003 */ ori $at, $t0, 3
|
||||
/* 0172D8 800166D8 38210002 */ xori $at, $at, 2
|
||||
/* 0172DC 800166DC 44C1F800 */ ctc1 $at, $31
|
||||
/* 0172E0 800166E0 00000000 */ nop
|
||||
/* 0172E4 800166E4 460042A4 */ cvt.w.s $f10, $f8
|
||||
/* 0172E8 800166E8 44035000 */ mfc1 $v1, $f10
|
||||
/* 0172EC 800166EC 44C8F800 */ ctc1 $t0, $31
|
||||
/* 0172F0 800166F0 04610003 */ bgez $v1, .L80016700
|
||||
/* 0172F4 800166F4 28610004 */ slti $at, $v1, 4
|
||||
/* 0172F8 800166F8 00031823 */ negu $v1, $v1
|
||||
/* 0172FC 800166FC 28610004 */ slti $at, $v1, 4
|
||||
.L80016700:
|
||||
/* 017300 80016700 14200002 */ bnez $at, .L8001670C
|
||||
/* 017304 80016704 00000000 */ nop
|
||||
/* 017308 80016708 24030003 */ li $v1, 3
|
||||
.L8001670C:
|
||||
/* 01730C 8001670C A20901F6 */ sb $t1, 0x1f6($s0)
|
||||
/* 017310 80016710 0C01997A */ jal set_active_camera
|
||||
/* 017314 80016714 AFA3003C */ sw $v1, 0x3c($sp)
|
||||
/* 017318 80016718 0C01A748 */ jal get_active_camera_segment
|
||||
/* 01731C 8001671C 00000000 */ nop
|
||||
/* 017320 80016720 8FA3003C */ lw $v1, 0x3c($sp)
|
||||
/* 017324 80016724 00000000 */ nop
|
||||
/* 017328 80016728 44838000 */ mtc1 $v1, $f16
|
||||
/* 01732C 8001672C 00000000 */ nop
|
||||
/* 017330 80016730 468084A0 */ cvt.s.w $f18, $f16
|
||||
/* 017334 80016734 E4520030 */ swc1 $f18, 0x30($v0)
|
||||
.L80016738:
|
||||
/* 017338 80016738 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 01733C 8001673C 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 017340 80016740 03E00008 */ jr $ra
|
||||
/* 017344 80016744 27BD0040 */ addiu $sp, $sp, 0x40
|
||||
|
||||
|
||||
+1113
-1113
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+1952
-1952
File diff suppressed because it is too large
Load Diff
@@ -1,92 +1,92 @@
|
||||
glabel func_80021104
|
||||
/* 021D04 80021104 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 021D08 80021108 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 021D0C 8002110C AFA60028 */ sw $a2, 0x28($sp)
|
||||
/* 021D10 80021110 848E0048 */ lh $t6, 0x48($a0)
|
||||
/* 021D14 80021114 8CA3001C */ lw $v1, 0x1c($a1)
|
||||
/* 021D18 80021118 24010033 */ li $at, 51
|
||||
/* 021D1C 8002111C 15C10009 */ bne $t6, $at, .L80021144
|
||||
/* 021D20 80021120 3C028012 */ lui $v0, %hi(D_8011AD3E) # $v0, 0x8012
|
||||
/* 021D24 80021124 2442AD3E */ addiu $v0, %lo(D_8011AD3E) # addiu $v0, $v0, -0x52c2
|
||||
/* 021D28 80021128 804F0000 */ lb $t7, ($v0)
|
||||
/* 021D2C 8002112C 00000000 */ nop
|
||||
/* 021D30 80021130 A0AF0044 */ sb $t7, 0x44($a1)
|
||||
/* 021D34 80021134 80580000 */ lb $t8, ($v0)
|
||||
/* 021D38 80021138 00000000 */ nop
|
||||
/* 021D3C 8002113C 27190001 */ addiu $t9, $t8, 1
|
||||
/* 021D40 80021140 A0590000 */ sb $t9, ($v0)
|
||||
.L80021144:
|
||||
/* 021D44 80021144 8FA80028 */ lw $t0, 0x28($sp)
|
||||
/* 021D48 80021148 24010012 */ li $at, 18
|
||||
/* 021D4C 8002114C 81040022 */ lb $a0, 0x22($t0)
|
||||
/* 021D50 80021150 00000000 */ nop
|
||||
/* 021D54 80021154 14810020 */ bne $a0, $at, .L800211D8
|
||||
/* 021D58 80021158 2881000A */ slti $at, $a0, 0xa
|
||||
/* 021D5C 8002115C 80A40030 */ lb $a0, 0x30($a1)
|
||||
/* 021D60 80021160 0C01997A */ jal set_object_stack_pos
|
||||
/* 021D64 80021164 AFA30018 */ sw $v1, 0x18($sp)
|
||||
/* 021D68 80021168 0C01A73F */ jal get_active_camera_segment_no_cutscenes
|
||||
/* 021D6C 8002116C 00000000 */ nop
|
||||
/* 021D70 80021170 8FA30018 */ lw $v1, 0x18($sp)
|
||||
/* 021D74 80021174 C444000C */ lwc1 $f4, 0xc($v0)
|
||||
/* 021D78 80021178 340A8000 */ li $t2, 32768
|
||||
/* 021D7C 8002117C E464000C */ swc1 $f4, 0xc($v1)
|
||||
/* 021D80 80021180 C4460010 */ lwc1 $f6, 0x10($v0)
|
||||
/* 021D84 80021184 00000000 */ nop
|
||||
/* 021D88 80021188 E4660010 */ swc1 $f6, 0x10($v1)
|
||||
/* 021D8C 8002118C C4480014 */ lwc1 $f8, 0x14($v0)
|
||||
/* 021D90 80021190 00000000 */ nop
|
||||
/* 021D94 80021194 E4680014 */ swc1 $f8, 0x14($v1)
|
||||
/* 021D98 80021198 84490000 */ lh $t1, ($v0)
|
||||
/* 021D9C 8002119C 00000000 */ nop
|
||||
/* 021DA0 800211A0 01495823 */ subu $t3, $t2, $t1
|
||||
/* 021DA4 800211A4 A46B0000 */ sh $t3, ($v1)
|
||||
/* 021DA8 800211A8 844C0002 */ lh $t4, 2($v0)
|
||||
/* 021DAC 800211AC 00000000 */ nop
|
||||
/* 021DB0 800211B0 000C6823 */ negu $t5, $t4
|
||||
/* 021DB4 800211B4 A46D0002 */ sh $t5, 2($v1)
|
||||
/* 021DB8 800211B8 844E0004 */ lh $t6, 4($v0)
|
||||
/* 021DBC 800211BC 00000000 */ nop
|
||||
/* 021DC0 800211C0 A46E0004 */ sh $t6, 4($v1)
|
||||
/* 021DC4 800211C4 8FAF0028 */ lw $t7, 0x28($sp)
|
||||
/* 021DC8 800211C8 00000000 */ nop
|
||||
/* 021DCC 800211CC 81E40022 */ lb $a0, 0x22($t7)
|
||||
/* 021DD0 800211D0 00000000 */ nop
|
||||
/* 021DD4 800211D4 2881000A */ slti $at, $a0, 0xa
|
||||
.L800211D8:
|
||||
/* 021DD8 800211D8 1420001C */ bnez $at, .L8002124C
|
||||
/* 021DDC 800211DC 28810012 */ slti $at, $a0, 0x12
|
||||
/* 021DE0 800211E0 1020001A */ beqz $at, .L8002124C
|
||||
/* 021DE4 800211E4 3C188012 */ lui $t8, %hi(gRacers) # $t8, 0x8012
|
||||
/* 021DE8 800211E8 8F18AEE4 */ lw $t8, %lo(gRacers)($t8)
|
||||
/* 021DEC 800211EC 0004C880 */ sll $t9, $a0, 2
|
||||
/* 021DF0 800211F0 03194021 */ addu $t0, $t8, $t9
|
||||
/* 021DF4 800211F4 8D02FFD8 */ lw $v0, -0x28($t0)
|
||||
/* 021DF8 800211F8 00000000 */ nop
|
||||
/* 021DFC 800211FC 10400014 */ beqz $v0, .L80021250
|
||||
/* 021E00 80021200 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 021E04 80021204 C44A000C */ lwc1 $f10, 0xc($v0)
|
||||
/* 021E08 80021208 00000000 */ nop
|
||||
/* 021E0C 8002120C E46A000C */ swc1 $f10, 0xc($v1)
|
||||
/* 021E10 80021210 C4500010 */ lwc1 $f16, 0x10($v0)
|
||||
/* 021E14 80021214 00000000 */ nop
|
||||
/* 021E18 80021218 E4700010 */ swc1 $f16, 0x10($v1)
|
||||
/* 021E1C 8002121C C4520014 */ lwc1 $f18, 0x14($v0)
|
||||
/* 021E20 80021220 00000000 */ nop
|
||||
/* 021E24 80021224 E4720014 */ swc1 $f18, 0x14($v1)
|
||||
/* 021E28 80021228 844A0000 */ lh $t2, ($v0)
|
||||
/* 021E2C 8002122C 00000000 */ nop
|
||||
/* 021E30 80021230 A46A0000 */ sh $t2, ($v1)
|
||||
/* 021E34 80021234 84490002 */ lh $t1, 2($v0)
|
||||
/* 021E38 80021238 00000000 */ nop
|
||||
/* 021E3C 8002123C A4690002 */ sh $t1, 2($v1)
|
||||
/* 021E40 80021240 844B0004 */ lh $t3, 4($v0)
|
||||
/* 021E44 80021244 00000000 */ nop
|
||||
/* 021E48 80021248 A46B0004 */ sh $t3, 4($v1)
|
||||
.L8002124C:
|
||||
/* 021E4C 8002124C 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L80021250:
|
||||
/* 021E50 80021250 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* 021E54 80021254 03E00008 */ jr $ra
|
||||
/* 021E58 80021258 00000000 */ nop
|
||||
|
||||
glabel func_80021104
|
||||
/* 021D04 80021104 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 021D08 80021108 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 021D0C 8002110C AFA60028 */ sw $a2, 0x28($sp)
|
||||
/* 021D10 80021110 848E0048 */ lh $t6, 0x48($a0)
|
||||
/* 021D14 80021114 8CA3001C */ lw $v1, 0x1c($a1)
|
||||
/* 021D18 80021118 24010033 */ li $at, 51
|
||||
/* 021D1C 8002111C 15C10009 */ bne $t6, $at, .L80021144
|
||||
/* 021D20 80021120 3C028012 */ lui $v0, %hi(D_8011AD3E) # $v0, 0x8012
|
||||
/* 021D24 80021124 2442AD3E */ addiu $v0, %lo(D_8011AD3E) # addiu $v0, $v0, -0x52c2
|
||||
/* 021D28 80021128 804F0000 */ lb $t7, ($v0)
|
||||
/* 021D2C 8002112C 00000000 */ nop
|
||||
/* 021D30 80021130 A0AF0044 */ sb $t7, 0x44($a1)
|
||||
/* 021D34 80021134 80580000 */ lb $t8, ($v0)
|
||||
/* 021D38 80021138 00000000 */ nop
|
||||
/* 021D3C 8002113C 27190001 */ addiu $t9, $t8, 1
|
||||
/* 021D40 80021140 A0590000 */ sb $t9, ($v0)
|
||||
.L80021144:
|
||||
/* 021D44 80021144 8FA80028 */ lw $t0, 0x28($sp)
|
||||
/* 021D48 80021148 24010012 */ li $at, 18
|
||||
/* 021D4C 8002114C 81040022 */ lb $a0, 0x22($t0)
|
||||
/* 021D50 80021150 00000000 */ nop
|
||||
/* 021D54 80021154 14810020 */ bne $a0, $at, .L800211D8
|
||||
/* 021D58 80021158 2881000A */ slti $at, $a0, 0xa
|
||||
/* 021D5C 8002115C 80A40030 */ lb $a0, 0x30($a1)
|
||||
/* 021D60 80021160 0C01997A */ jal set_active_camera
|
||||
/* 021D64 80021164 AFA30018 */ sw $v1, 0x18($sp)
|
||||
/* 021D68 80021168 0C01A73F */ jal get_active_camera_segment_no_cutscenes
|
||||
/* 021D6C 8002116C 00000000 */ nop
|
||||
/* 021D70 80021170 8FA30018 */ lw $v1, 0x18($sp)
|
||||
/* 021D74 80021174 C444000C */ lwc1 $f4, 0xc($v0)
|
||||
/* 021D78 80021178 340A8000 */ li $t2, 32768
|
||||
/* 021D7C 8002117C E464000C */ swc1 $f4, 0xc($v1)
|
||||
/* 021D80 80021180 C4460010 */ lwc1 $f6, 0x10($v0)
|
||||
/* 021D84 80021184 00000000 */ nop
|
||||
/* 021D88 80021188 E4660010 */ swc1 $f6, 0x10($v1)
|
||||
/* 021D8C 8002118C C4480014 */ lwc1 $f8, 0x14($v0)
|
||||
/* 021D90 80021190 00000000 */ nop
|
||||
/* 021D94 80021194 E4680014 */ swc1 $f8, 0x14($v1)
|
||||
/* 021D98 80021198 84490000 */ lh $t1, ($v0)
|
||||
/* 021D9C 8002119C 00000000 */ nop
|
||||
/* 021DA0 800211A0 01495823 */ subu $t3, $t2, $t1
|
||||
/* 021DA4 800211A4 A46B0000 */ sh $t3, ($v1)
|
||||
/* 021DA8 800211A8 844C0002 */ lh $t4, 2($v0)
|
||||
/* 021DAC 800211AC 00000000 */ nop
|
||||
/* 021DB0 800211B0 000C6823 */ negu $t5, $t4
|
||||
/* 021DB4 800211B4 A46D0002 */ sh $t5, 2($v1)
|
||||
/* 021DB8 800211B8 844E0004 */ lh $t6, 4($v0)
|
||||
/* 021DBC 800211BC 00000000 */ nop
|
||||
/* 021DC0 800211C0 A46E0004 */ sh $t6, 4($v1)
|
||||
/* 021DC4 800211C4 8FAF0028 */ lw $t7, 0x28($sp)
|
||||
/* 021DC8 800211C8 00000000 */ nop
|
||||
/* 021DCC 800211CC 81E40022 */ lb $a0, 0x22($t7)
|
||||
/* 021DD0 800211D0 00000000 */ nop
|
||||
/* 021DD4 800211D4 2881000A */ slti $at, $a0, 0xa
|
||||
.L800211D8:
|
||||
/* 021DD8 800211D8 1420001C */ bnez $at, .L8002124C
|
||||
/* 021DDC 800211DC 28810012 */ slti $at, $a0, 0x12
|
||||
/* 021DE0 800211E0 1020001A */ beqz $at, .L8002124C
|
||||
/* 021DE4 800211E4 3C188012 */ lui $t8, %hi(gRacers) # $t8, 0x8012
|
||||
/* 021DE8 800211E8 8F18AEE4 */ lw $t8, %lo(gRacers)($t8)
|
||||
/* 021DEC 800211EC 0004C880 */ sll $t9, $a0, 2
|
||||
/* 021DF0 800211F0 03194021 */ addu $t0, $t8, $t9
|
||||
/* 021DF4 800211F4 8D02FFD8 */ lw $v0, -0x28($t0)
|
||||
/* 021DF8 800211F8 00000000 */ nop
|
||||
/* 021DFC 800211FC 10400014 */ beqz $v0, .L80021250
|
||||
/* 021E00 80021200 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 021E04 80021204 C44A000C */ lwc1 $f10, 0xc($v0)
|
||||
/* 021E08 80021208 00000000 */ nop
|
||||
/* 021E0C 8002120C E46A000C */ swc1 $f10, 0xc($v1)
|
||||
/* 021E10 80021210 C4500010 */ lwc1 $f16, 0x10($v0)
|
||||
/* 021E14 80021214 00000000 */ nop
|
||||
/* 021E18 80021218 E4700010 */ swc1 $f16, 0x10($v1)
|
||||
/* 021E1C 8002121C C4520014 */ lwc1 $f18, 0x14($v0)
|
||||
/* 021E20 80021220 00000000 */ nop
|
||||
/* 021E24 80021224 E4720014 */ swc1 $f18, 0x14($v1)
|
||||
/* 021E28 80021228 844A0000 */ lh $t2, ($v0)
|
||||
/* 021E2C 8002122C 00000000 */ nop
|
||||
/* 021E30 80021230 A46A0000 */ sh $t2, ($v1)
|
||||
/* 021E34 80021234 84490002 */ lh $t1, 2($v0)
|
||||
/* 021E38 80021238 00000000 */ nop
|
||||
/* 021E3C 8002123C A4690002 */ sh $t1, 2($v1)
|
||||
/* 021E40 80021240 844B0004 */ lh $t3, 4($v0)
|
||||
/* 021E44 80021244 00000000 */ nop
|
||||
/* 021E48 80021248 A46B0004 */ sh $t3, 4($v1)
|
||||
.L8002124C:
|
||||
/* 021E4C 8002124C 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L80021250:
|
||||
/* 021E50 80021250 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* 021E54 80021254 03E00008 */ jr $ra
|
||||
/* 021E58 80021258 00000000 */ nop
|
||||
|
||||
|
||||
+1031
-1031
File diff suppressed because it is too large
Load Diff
@@ -1,223 +1,223 @@
|
||||
glabel func_800230D0
|
||||
/* 023CD0 800230D0 27BDFFA0 */ addiu $sp, $sp, -0x60
|
||||
/* 023CD4 800230D4 3C028012 */ lui $v0, %hi(gNumberOfCheckpoints) # $v0, 0x8012
|
||||
/* 023CD8 800230D8 8C42AED0 */ lw $v0, %lo(gNumberOfCheckpoints)($v0)
|
||||
/* 023CDC 800230DC AFB10018 */ sw $s1, 0x18($sp)
|
||||
/* 023CE0 800230E0 AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 023CE4 800230E4 00808025 */ move $s0, $a0
|
||||
/* 023CE8 800230E8 00A08825 */ move $s1, $a1
|
||||
/* 023CEC 800230EC 14400032 */ bnez $v0, .L800231B8
|
||||
/* 023CF0 800230F0 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 023CF4 800230F4 3C078012 */ lui $a3, %hi(objCount) # $a3, 0x8012
|
||||
/* 023CF8 800230F8 24E7AE5C */ addiu $a3, %lo(objCount) # addiu $a3, $a3, -0x51a4
|
||||
/* 023CFC 800230FC 8CE40000 */ lw $a0, ($a3)
|
||||
/* 023D00 80023100 00004025 */ move $t0, $zero
|
||||
/* 023D04 80023104 1880002A */ blez $a0, .L800231B0
|
||||
/* 023D08 80023108 00001025 */ move $v0, $zero
|
||||
/* 023D0C 8002310C 3C058012 */ lui $a1, %hi(gObjPtrList) # $a1, 0x8012
|
||||
/* 023D10 80023110 24A5AE58 */ addiu $a1, %lo(gObjPtrList) # addiu $a1, $a1, -0x51a8
|
||||
/* 023D14 80023114 2406000B */ li $a2, 11
|
||||
.L80023118:
|
||||
/* 023D18 80023118 8CAE0000 */ lw $t6, ($a1)
|
||||
/* 023D1C 8002311C 00027880 */ sll $t7, $v0, 2
|
||||
/* 023D20 80023120 01CFC021 */ addu $t8, $t6, $t7
|
||||
/* 023D24 80023124 8F030000 */ lw $v1, ($t8)
|
||||
/* 023D28 80023128 00000000 */ nop
|
||||
/* 023D2C 8002312C 84790006 */ lh $t9, 6($v1)
|
||||
/* 023D30 80023130 00000000 */ nop
|
||||
/* 023D34 80023134 33298000 */ andi $t1, $t9, 0x8000
|
||||
/* 023D38 80023138 15200018 */ bnez $t1, .L8002319C
|
||||
/* 023D3C 8002313C 00000000 */ nop
|
||||
/* 023D40 80023140 846A0048 */ lh $t2, 0x48($v1)
|
||||
/* 023D44 80023144 00000000 */ nop
|
||||
/* 023D48 80023148 14CA0014 */ bne $a2, $t2, .L8002319C
|
||||
/* 023D4C 8002314C 00000000 */ nop
|
||||
/* 023D50 80023150 8C6B0078 */ lw $t3, 0x78($v1)
|
||||
/* 023D54 80023154 00000000 */ nop
|
||||
/* 023D58 80023158 15600011 */ bnez $t3, .L800231A0
|
||||
/* 023D5C 8002315C 24420001 */ addiu $v0, $v0, 1
|
||||
/* 023D60 80023160 C464000C */ lwc1 $f4, 0xc($v1)
|
||||
/* 023D64 80023164 00000000 */ nop
|
||||
/* 023D68 80023168 E604000C */ swc1 $f4, 0xc($s0)
|
||||
/* 023D6C 8002316C C4660010 */ lwc1 $f6, 0x10($v1)
|
||||
/* 023D70 80023170 00000000 */ nop
|
||||
/* 023D74 80023174 E6060010 */ swc1 $f6, 0x10($s0)
|
||||
/* 023D78 80023178 C4680014 */ lwc1 $f8, 0x14($v1)
|
||||
/* 023D7C 8002317C 00000000 */ nop
|
||||
/* 023D80 80023180 E6080014 */ swc1 $f8, 0x14($s0)
|
||||
/* 023D84 80023184 846C002E */ lh $t4, 0x2e($v1)
|
||||
/* 023D88 80023188 00000000 */ nop
|
||||
/* 023D8C 8002318C A60C002E */ sh $t4, 0x2e($s0)
|
||||
/* 023D90 80023190 8CE40000 */ lw $a0, ($a3)
|
||||
/* 023D94 80023194 00000000 */ nop
|
||||
/* 023D98 80023198 00801025 */ move $v0, $a0
|
||||
.L8002319C:
|
||||
/* 023D9C 8002319C 24420001 */ addiu $v0, $v0, 1
|
||||
.L800231A0:
|
||||
/* 023DA0 800231A0 0044082A */ slt $at, $v0, $a0
|
||||
/* 023DA4 800231A4 1420FFDC */ bnez $at, .L80023118
|
||||
/* 023DA8 800231A8 00000000 */ nop
|
||||
/* 023DAC 800231AC AFA3002C */ sw $v1, 0x2c($sp)
|
||||
.L800231B0:
|
||||
/* 023DB0 800231B0 1000001E */ b .L8002322C
|
||||
/* 023DB4 800231B4 8604002E */ lh $a0, 0x2e($s0)
|
||||
.L800231B8:
|
||||
/* 023DB8 800231B8 00026900 */ sll $t5, $v0, 4
|
||||
/* 023DBC 800231BC 3C0E8012 */ lui $t6, %hi(gTrackCheckpoints) # $t6, 0x8012
|
||||
/* 023DC0 800231C0 8DCEAECC */ lw $t6, %lo(gTrackCheckpoints)($t6)
|
||||
/* 023DC4 800231C4 01A26823 */ subu $t5, $t5, $v0
|
||||
/* 023DC8 800231C8 000D6880 */ sll $t5, $t5, 2
|
||||
/* 023DCC 800231CC 3C01420C */ li $at, 0x420C0000 # 35.000000
|
||||
/* 023DD0 800231D0 01AE4021 */ addu $t0, $t5, $t6
|
||||
/* 023DD4 800231D4 44810000 */ mtc1 $at, $f0
|
||||
/* 023DD8 800231D8 C510FFCC */ lwc1 $f16, -0x34($t0)
|
||||
/* 023DDC 800231DC C50AFFD4 */ lwc1 $f10, -0x2c($t0)
|
||||
/* 023DE0 800231E0 46008482 */ mul.s $f18, $f16, $f0
|
||||
/* 023DE4 800231E4 2508FFC4 */ addiu $t0, $t0, -0x3c
|
||||
/* 023DE8 800231E8 46125101 */ sub.s $f4, $f10, $f18
|
||||
/* 023DEC 800231EC E604000C */ swc1 $f4, 0xc($s0)
|
||||
/* 023DF0 800231F0 C5060014 */ lwc1 $f6, 0x14($t0)
|
||||
/* 023DF4 800231F4 C60C000C */ lwc1 $f12, 0xc($s0)
|
||||
/* 023DF8 800231F8 E6060010 */ swc1 $f6, 0x10($s0)
|
||||
/* 023DFC 800231FC C5100000 */ lwc1 $f16, ($t0)
|
||||
/* 023E00 80023200 C5080018 */ lwc1 $f8, 0x18($t0)
|
||||
/* 023E04 80023204 46008282 */ mul.s $f10, $f16, $f0
|
||||
/* 023E08 80023208 C60E0010 */ lwc1 $f14, 0x10($s0)
|
||||
/* 023E0C 8002320C 460A4480 */ add.s $f18, $f8, $f10
|
||||
/* 023E10 80023210 E6120014 */ swc1 $f18, 0x14($s0)
|
||||
/* 023E14 80023214 8E060014 */ lw $a2, 0x14($s0)
|
||||
/* 023E18 80023218 0C00A7C6 */ jal get_level_segment_index_from_position
|
||||
/* 023E1C 8002321C AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023E20 80023220 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023E24 80023224 A602002E */ sh $v0, 0x2e($s0)
|
||||
/* 023E28 80023228 8604002E */ lh $a0, 0x2e($s0)
|
||||
.L8002322C:
|
||||
/* 023E2C 8002322C 8E05000C */ lw $a1, 0xc($s0)
|
||||
/* 023E30 80023230 8E060014 */ lw $a2, 0x14($s0)
|
||||
/* 023E34 80023234 AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023E38 80023238 0C00AEAC */ jal func_8002BAB0
|
||||
/* 023E3C 8002323C 27A70030 */ addiu $a3, $sp, 0x30
|
||||
/* 023E40 80023240 8FA3002C */ lw $v1, 0x2c($sp)
|
||||
/* 023E44 80023244 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023E48 80023248 10400005 */ beqz $v0, .L80023260
|
||||
/* 023E4C 8002324C 00027880 */ sll $t7, $v0, 2
|
||||
/* 023E50 80023250 03AFC021 */ addu $t8, $sp, $t7
|
||||
/* 023E54 80023254 C704002C */ lwc1 $f4, 0x2c($t8)
|
||||
/* 023E58 80023258 00000000 */ nop
|
||||
/* 023E5C 8002325C E6040010 */ swc1 $f4, 0x10($s0)
|
||||
.L80023260:
|
||||
/* 023E60 80023260 C606000C */ lwc1 $f6, 0xc($s0)
|
||||
/* 023E64 80023264 00000000 */ nop
|
||||
/* 023E68 80023268 E626005C */ swc1 $f6, 0x5c($s1)
|
||||
/* 023E6C 8002326C C6100010 */ lwc1 $f16, 0x10($s0)
|
||||
/* 023E70 80023270 00000000 */ nop
|
||||
/* 023E74 80023274 E6300060 */ swc1 $f16, 0x60($s1)
|
||||
/* 023E78 80023278 C6080014 */ lwc1 $f8, 0x14($s0)
|
||||
/* 023E7C 8002327C 11000008 */ beqz $t0, .L800232A0
|
||||
/* 023E80 80023280 E6280064 */ swc1 $f8, 0x64($s1)
|
||||
/* 023E84 80023284 C50C0000 */ lwc1 $f12, ($t0)
|
||||
/* 023E88 80023288 C50E0008 */ lwc1 $f14, 8($t0)
|
||||
/* 023E8C 8002328C 0C01C1D4 */ jal arctan2_f
|
||||
/* 023E90 80023290 AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023E94 80023294 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023E98 80023298 10000004 */ b .L800232AC
|
||||
/* 023E9C 8002329C A62201A0 */ sh $v0, 0x1a0($s1)
|
||||
.L800232A0:
|
||||
/* 023EA0 800232A0 84790000 */ lh $t9, ($v1)
|
||||
/* 023EA4 800232A4 00000000 */ nop
|
||||
/* 023EA8 800232A8 A63901A0 */ sh $t9, 0x1a0($s1)
|
||||
.L800232AC:
|
||||
/* 023EAC 800232AC A2200192 */ sb $zero, 0x192($s1)
|
||||
/* 023EB0 800232B0 3C0A8012 */ lui $t2, %hi(gNumberOfCheckpoints) # $t2, 0x8012
|
||||
/* 023EB4 800232B4 8D4AAED0 */ lw $t2, %lo(gNumberOfCheckpoints)($t2)
|
||||
/* 023EB8 800232B8 82290193 */ lb $t1, 0x193($s1)
|
||||
/* 023EBC 800232BC 862C01A0 */ lh $t4, 0x1a0($s1)
|
||||
/* 023EC0 800232C0 012A0019 */ multu $t1, $t2
|
||||
/* 023EC4 800232C4 3C014170 */ li $at, 0x41700000 # 15.000000
|
||||
/* 023EC8 800232C8 44810000 */ mtc1 $at, $f0
|
||||
/* 023ECC 800232CC 2401FFFF */ li $at, -1
|
||||
/* 023ED0 800232D0 00005812 */ mflo $t3
|
||||
/* 023ED4 800232D4 A62B0190 */ sh $t3, 0x190($s1)
|
||||
/* 023ED8 800232D8 C60A000C */ lwc1 $f10, 0xc($s0)
|
||||
/* 023EDC 800232DC A60C0000 */ sh $t4, ($s0)
|
||||
/* 023EE0 800232E0 E62A00D8 */ swc1 $f10, 0xd8($s1)
|
||||
/* 023EE4 800232E4 C6120010 */ lwc1 $f18, 0x10($s0)
|
||||
/* 023EE8 800232E8 00000000 */ nop
|
||||
/* 023EEC 800232EC 46009100 */ add.s $f4, $f18, $f0
|
||||
/* 023EF0 800232F0 E62400DC */ swc1 $f4, 0xdc($s1)
|
||||
/* 023EF4 800232F4 C6060014 */ lwc1 $f6, 0x14($s0)
|
||||
/* 023EF8 800232F8 00000000 */ nop
|
||||
/* 023EFC 800232FC E62600E0 */ swc1 $f6, 0xe0($s1)
|
||||
/* 023F00 80023300 C610000C */ lwc1 $f16, 0xc($s0)
|
||||
/* 023F04 80023304 00000000 */ nop
|
||||
/* 023F08 80023308 E63000E4 */ swc1 $f16, 0xe4($s1)
|
||||
/* 023F0C 8002330C C6080010 */ lwc1 $f8, 0x10($s0)
|
||||
/* 023F10 80023310 00000000 */ nop
|
||||
/* 023F14 80023314 46004280 */ add.s $f10, $f8, $f0
|
||||
/* 023F18 80023318 E62A00E8 */ swc1 $f10, 0xe8($s1)
|
||||
/* 023F1C 8002331C C6120014 */ lwc1 $f18, 0x14($s0)
|
||||
/* 023F20 80023320 00000000 */ nop
|
||||
/* 023F24 80023324 E63200EC */ swc1 $f18, 0xec($s1)
|
||||
/* 023F28 80023328 C604000C */ lwc1 $f4, 0xc($s0)
|
||||
/* 023F2C 8002332C 00000000 */ nop
|
||||
/* 023F30 80023330 E62400F0 */ swc1 $f4, 0xf0($s1)
|
||||
/* 023F34 80023334 C6060010 */ lwc1 $f6, 0x10($s0)
|
||||
/* 023F38 80023338 00000000 */ nop
|
||||
/* 023F3C 8002333C 46003400 */ add.s $f16, $f6, $f0
|
||||
/* 023F40 80023340 E63000F4 */ swc1 $f16, 0xf4($s1)
|
||||
/* 023F44 80023344 C6080014 */ lwc1 $f8, 0x14($s0)
|
||||
/* 023F48 80023348 00000000 */ nop
|
||||
/* 023F4C 8002334C E62800F8 */ swc1 $f8, 0xf8($s1)
|
||||
/* 023F50 80023350 C60A000C */ lwc1 $f10, 0xc($s0)
|
||||
/* 023F54 80023354 00000000 */ nop
|
||||
/* 023F58 80023358 E62A00FC */ swc1 $f10, 0xfc($s1)
|
||||
/* 023F5C 8002335C C6120010 */ lwc1 $f18, 0x10($s0)
|
||||
/* 023F60 80023360 00000000 */ nop
|
||||
/* 023F64 80023364 46009100 */ add.s $f4, $f18, $f0
|
||||
/* 023F68 80023368 44800000 */ mtc1 $zero, $f0
|
||||
/* 023F6C 8002336C E6240100 */ swc1 $f4, 0x100($s1)
|
||||
/* 023F70 80023370 C6060014 */ lwc1 $f6, 0x14($s0)
|
||||
/* 023F74 80023374 00000000 */ nop
|
||||
/* 023F78 80023378 E6260104 */ swc1 $f6, 0x104($s1)
|
||||
/* 023F7C 8002337C 8E0D004C */ lw $t5, 0x4c($s0)
|
||||
/* 023F80 80023380 C610000C */ lwc1 $f16, 0xc($s0)
|
||||
/* 023F84 80023384 00000000 */ nop
|
||||
/* 023F88 80023388 E5B00004 */ swc1 $f16, 4($t5)
|
||||
/* 023F8C 8002338C 8E0E004C */ lw $t6, 0x4c($s0)
|
||||
/* 023F90 80023390 C6080010 */ lwc1 $f8, 0x10($s0)
|
||||
/* 023F94 80023394 00000000 */ nop
|
||||
/* 023F98 80023398 E5C80008 */ swc1 $f8, 8($t6)
|
||||
/* 023F9C 8002339C 8E0F004C */ lw $t7, 0x4c($s0)
|
||||
/* 023FA0 800233A0 C60A0014 */ lwc1 $f10, 0x14($s0)
|
||||
/* 023FA4 800233A4 00000000 */ nop
|
||||
/* 023FA8 800233A8 E5EA000C */ swc1 $f10, 0xc($t7)
|
||||
/* 023FAC 800233AC E620002C */ swc1 $f0, 0x2c($s1)
|
||||
/* 023FB0 800233B0 E6200030 */ swc1 $f0, 0x30($s1)
|
||||
/* 023FB4 800233B4 E600001C */ swc1 $f0, 0x1c($s0)
|
||||
/* 023FB8 800233B8 E6000024 */ swc1 $f0, 0x24($s0)
|
||||
/* 023FBC 800233BC 823801D7 */ lb $t8, 0x1d7($s1)
|
||||
/* 023FC0 800233C0 86240000 */ lh $a0, ($s1)
|
||||
/* 023FC4 800233C4 A23801D6 */ sb $t8, 0x1d6($s1)
|
||||
/* 023FC8 800233C8 1081000F */ beq $a0, $at, .L80023408
|
||||
/* 023FCC 800233CC 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 023FD0 800233D0 0C01997A */ jal set_object_stack_pos
|
||||
/* 023FD4 800233D4 AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023FD8 800233D8 0C01A73F */ jal get_active_camera_segment_no_cutscenes
|
||||
/* 023FDC 800233DC 00000000 */ nop
|
||||
/* 023FE0 800233E0 C612000C */ lwc1 $f18, 0xc($s0)
|
||||
/* 023FE4 800233E4 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023FE8 800233E8 E452000C */ swc1 $f18, 0xc($v0)
|
||||
/* 023FEC 800233EC C6040010 */ lwc1 $f4, 0x10($s0)
|
||||
/* 023FF0 800233F0 00000000 */ nop
|
||||
/* 023FF4 800233F4 E4440010 */ swc1 $f4, 0x10($v0)
|
||||
/* 023FF8 800233F8 C6060014 */ lwc1 $f6, 0x14($s0)
|
||||
/* 023FFC 800233FC 00000000 */ nop
|
||||
/* 024000 80023400 E4460014 */ swc1 $f6, 0x14($v0)
|
||||
/* 024004 80023404 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
.L80023408:
|
||||
/* 024008 80023408 8FB00014 */ lw $s0, 0x14($sp)
|
||||
/* 02400C 8002340C 8FB10018 */ lw $s1, 0x18($sp)
|
||||
/* 024010 80023410 27BD0060 */ addiu $sp, $sp, 0x60
|
||||
/* 024014 80023414 03E00008 */ jr $ra
|
||||
/* 024018 80023418 01001025 */ move $v0, $t0
|
||||
|
||||
glabel func_800230D0
|
||||
/* 023CD0 800230D0 27BDFFA0 */ addiu $sp, $sp, -0x60
|
||||
/* 023CD4 800230D4 3C028012 */ lui $v0, %hi(gNumberOfCheckpoints) # $v0, 0x8012
|
||||
/* 023CD8 800230D8 8C42AED0 */ lw $v0, %lo(gNumberOfCheckpoints)($v0)
|
||||
/* 023CDC 800230DC AFB10018 */ sw $s1, 0x18($sp)
|
||||
/* 023CE0 800230E0 AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 023CE4 800230E4 00808025 */ move $s0, $a0
|
||||
/* 023CE8 800230E8 00A08825 */ move $s1, $a1
|
||||
/* 023CEC 800230EC 14400032 */ bnez $v0, .L800231B8
|
||||
/* 023CF0 800230F0 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 023CF4 800230F4 3C078012 */ lui $a3, %hi(objCount) # $a3, 0x8012
|
||||
/* 023CF8 800230F8 24E7AE5C */ addiu $a3, %lo(objCount) # addiu $a3, $a3, -0x51a4
|
||||
/* 023CFC 800230FC 8CE40000 */ lw $a0, ($a3)
|
||||
/* 023D00 80023100 00004025 */ move $t0, $zero
|
||||
/* 023D04 80023104 1880002A */ blez $a0, .L800231B0
|
||||
/* 023D08 80023108 00001025 */ move $v0, $zero
|
||||
/* 023D0C 8002310C 3C058012 */ lui $a1, %hi(gObjPtrList) # $a1, 0x8012
|
||||
/* 023D10 80023110 24A5AE58 */ addiu $a1, %lo(gObjPtrList) # addiu $a1, $a1, -0x51a8
|
||||
/* 023D14 80023114 2406000B */ li $a2, 11
|
||||
.L80023118:
|
||||
/* 023D18 80023118 8CAE0000 */ lw $t6, ($a1)
|
||||
/* 023D1C 8002311C 00027880 */ sll $t7, $v0, 2
|
||||
/* 023D20 80023120 01CFC021 */ addu $t8, $t6, $t7
|
||||
/* 023D24 80023124 8F030000 */ lw $v1, ($t8)
|
||||
/* 023D28 80023128 00000000 */ nop
|
||||
/* 023D2C 8002312C 84790006 */ lh $t9, 6($v1)
|
||||
/* 023D30 80023130 00000000 */ nop
|
||||
/* 023D34 80023134 33298000 */ andi $t1, $t9, 0x8000
|
||||
/* 023D38 80023138 15200018 */ bnez $t1, .L8002319C
|
||||
/* 023D3C 8002313C 00000000 */ nop
|
||||
/* 023D40 80023140 846A0048 */ lh $t2, 0x48($v1)
|
||||
/* 023D44 80023144 00000000 */ nop
|
||||
/* 023D48 80023148 14CA0014 */ bne $a2, $t2, .L8002319C
|
||||
/* 023D4C 8002314C 00000000 */ nop
|
||||
/* 023D50 80023150 8C6B0078 */ lw $t3, 0x78($v1)
|
||||
/* 023D54 80023154 00000000 */ nop
|
||||
/* 023D58 80023158 15600011 */ bnez $t3, .L800231A0
|
||||
/* 023D5C 8002315C 24420001 */ addiu $v0, $v0, 1
|
||||
/* 023D60 80023160 C464000C */ lwc1 $f4, 0xc($v1)
|
||||
/* 023D64 80023164 00000000 */ nop
|
||||
/* 023D68 80023168 E604000C */ swc1 $f4, 0xc($s0)
|
||||
/* 023D6C 8002316C C4660010 */ lwc1 $f6, 0x10($v1)
|
||||
/* 023D70 80023170 00000000 */ nop
|
||||
/* 023D74 80023174 E6060010 */ swc1 $f6, 0x10($s0)
|
||||
/* 023D78 80023178 C4680014 */ lwc1 $f8, 0x14($v1)
|
||||
/* 023D7C 8002317C 00000000 */ nop
|
||||
/* 023D80 80023180 E6080014 */ swc1 $f8, 0x14($s0)
|
||||
/* 023D84 80023184 846C002E */ lh $t4, 0x2e($v1)
|
||||
/* 023D88 80023188 00000000 */ nop
|
||||
/* 023D8C 8002318C A60C002E */ sh $t4, 0x2e($s0)
|
||||
/* 023D90 80023190 8CE40000 */ lw $a0, ($a3)
|
||||
/* 023D94 80023194 00000000 */ nop
|
||||
/* 023D98 80023198 00801025 */ move $v0, $a0
|
||||
.L8002319C:
|
||||
/* 023D9C 8002319C 24420001 */ addiu $v0, $v0, 1
|
||||
.L800231A0:
|
||||
/* 023DA0 800231A0 0044082A */ slt $at, $v0, $a0
|
||||
/* 023DA4 800231A4 1420FFDC */ bnez $at, .L80023118
|
||||
/* 023DA8 800231A8 00000000 */ nop
|
||||
/* 023DAC 800231AC AFA3002C */ sw $v1, 0x2c($sp)
|
||||
.L800231B0:
|
||||
/* 023DB0 800231B0 1000001E */ b .L8002322C
|
||||
/* 023DB4 800231B4 8604002E */ lh $a0, 0x2e($s0)
|
||||
.L800231B8:
|
||||
/* 023DB8 800231B8 00026900 */ sll $t5, $v0, 4
|
||||
/* 023DBC 800231BC 3C0E8012 */ lui $t6, %hi(gTrackCheckpoints) # $t6, 0x8012
|
||||
/* 023DC0 800231C0 8DCEAECC */ lw $t6, %lo(gTrackCheckpoints)($t6)
|
||||
/* 023DC4 800231C4 01A26823 */ subu $t5, $t5, $v0
|
||||
/* 023DC8 800231C8 000D6880 */ sll $t5, $t5, 2
|
||||
/* 023DCC 800231CC 3C01420C */ li $at, 0x420C0000 # 35.000000
|
||||
/* 023DD0 800231D0 01AE4021 */ addu $t0, $t5, $t6
|
||||
/* 023DD4 800231D4 44810000 */ mtc1 $at, $f0
|
||||
/* 023DD8 800231D8 C510FFCC */ lwc1 $f16, -0x34($t0)
|
||||
/* 023DDC 800231DC C50AFFD4 */ lwc1 $f10, -0x2c($t0)
|
||||
/* 023DE0 800231E0 46008482 */ mul.s $f18, $f16, $f0
|
||||
/* 023DE4 800231E4 2508FFC4 */ addiu $t0, $t0, -0x3c
|
||||
/* 023DE8 800231E8 46125101 */ sub.s $f4, $f10, $f18
|
||||
/* 023DEC 800231EC E604000C */ swc1 $f4, 0xc($s0)
|
||||
/* 023DF0 800231F0 C5060014 */ lwc1 $f6, 0x14($t0)
|
||||
/* 023DF4 800231F4 C60C000C */ lwc1 $f12, 0xc($s0)
|
||||
/* 023DF8 800231F8 E6060010 */ swc1 $f6, 0x10($s0)
|
||||
/* 023DFC 800231FC C5100000 */ lwc1 $f16, ($t0)
|
||||
/* 023E00 80023200 C5080018 */ lwc1 $f8, 0x18($t0)
|
||||
/* 023E04 80023204 46008282 */ mul.s $f10, $f16, $f0
|
||||
/* 023E08 80023208 C60E0010 */ lwc1 $f14, 0x10($s0)
|
||||
/* 023E0C 8002320C 460A4480 */ add.s $f18, $f8, $f10
|
||||
/* 023E10 80023210 E6120014 */ swc1 $f18, 0x14($s0)
|
||||
/* 023E14 80023214 8E060014 */ lw $a2, 0x14($s0)
|
||||
/* 023E18 80023218 0C00A7C6 */ jal get_level_segment_index_from_position
|
||||
/* 023E1C 8002321C AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023E20 80023220 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023E24 80023224 A602002E */ sh $v0, 0x2e($s0)
|
||||
/* 023E28 80023228 8604002E */ lh $a0, 0x2e($s0)
|
||||
.L8002322C:
|
||||
/* 023E2C 8002322C 8E05000C */ lw $a1, 0xc($s0)
|
||||
/* 023E30 80023230 8E060014 */ lw $a2, 0x14($s0)
|
||||
/* 023E34 80023234 AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023E38 80023238 0C00AEAC */ jal func_8002BAB0
|
||||
/* 023E3C 8002323C 27A70030 */ addiu $a3, $sp, 0x30
|
||||
/* 023E40 80023240 8FA3002C */ lw $v1, 0x2c($sp)
|
||||
/* 023E44 80023244 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023E48 80023248 10400005 */ beqz $v0, .L80023260
|
||||
/* 023E4C 8002324C 00027880 */ sll $t7, $v0, 2
|
||||
/* 023E50 80023250 03AFC021 */ addu $t8, $sp, $t7
|
||||
/* 023E54 80023254 C704002C */ lwc1 $f4, 0x2c($t8)
|
||||
/* 023E58 80023258 00000000 */ nop
|
||||
/* 023E5C 8002325C E6040010 */ swc1 $f4, 0x10($s0)
|
||||
.L80023260:
|
||||
/* 023E60 80023260 C606000C */ lwc1 $f6, 0xc($s0)
|
||||
/* 023E64 80023264 00000000 */ nop
|
||||
/* 023E68 80023268 E626005C */ swc1 $f6, 0x5c($s1)
|
||||
/* 023E6C 8002326C C6100010 */ lwc1 $f16, 0x10($s0)
|
||||
/* 023E70 80023270 00000000 */ nop
|
||||
/* 023E74 80023274 E6300060 */ swc1 $f16, 0x60($s1)
|
||||
/* 023E78 80023278 C6080014 */ lwc1 $f8, 0x14($s0)
|
||||
/* 023E7C 8002327C 11000008 */ beqz $t0, .L800232A0
|
||||
/* 023E80 80023280 E6280064 */ swc1 $f8, 0x64($s1)
|
||||
/* 023E84 80023284 C50C0000 */ lwc1 $f12, ($t0)
|
||||
/* 023E88 80023288 C50E0008 */ lwc1 $f14, 8($t0)
|
||||
/* 023E8C 8002328C 0C01C1D4 */ jal arctan2_f
|
||||
/* 023E90 80023290 AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023E94 80023294 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023E98 80023298 10000004 */ b .L800232AC
|
||||
/* 023E9C 8002329C A62201A0 */ sh $v0, 0x1a0($s1)
|
||||
.L800232A0:
|
||||
/* 023EA0 800232A0 84790000 */ lh $t9, ($v1)
|
||||
/* 023EA4 800232A4 00000000 */ nop
|
||||
/* 023EA8 800232A8 A63901A0 */ sh $t9, 0x1a0($s1)
|
||||
.L800232AC:
|
||||
/* 023EAC 800232AC A2200192 */ sb $zero, 0x192($s1)
|
||||
/* 023EB0 800232B0 3C0A8012 */ lui $t2, %hi(gNumberOfCheckpoints) # $t2, 0x8012
|
||||
/* 023EB4 800232B4 8D4AAED0 */ lw $t2, %lo(gNumberOfCheckpoints)($t2)
|
||||
/* 023EB8 800232B8 82290193 */ lb $t1, 0x193($s1)
|
||||
/* 023EBC 800232BC 862C01A0 */ lh $t4, 0x1a0($s1)
|
||||
/* 023EC0 800232C0 012A0019 */ multu $t1, $t2
|
||||
/* 023EC4 800232C4 3C014170 */ li $at, 0x41700000 # 15.000000
|
||||
/* 023EC8 800232C8 44810000 */ mtc1 $at, $f0
|
||||
/* 023ECC 800232CC 2401FFFF */ li $at, -1
|
||||
/* 023ED0 800232D0 00005812 */ mflo $t3
|
||||
/* 023ED4 800232D4 A62B0190 */ sh $t3, 0x190($s1)
|
||||
/* 023ED8 800232D8 C60A000C */ lwc1 $f10, 0xc($s0)
|
||||
/* 023EDC 800232DC A60C0000 */ sh $t4, ($s0)
|
||||
/* 023EE0 800232E0 E62A00D8 */ swc1 $f10, 0xd8($s1)
|
||||
/* 023EE4 800232E4 C6120010 */ lwc1 $f18, 0x10($s0)
|
||||
/* 023EE8 800232E8 00000000 */ nop
|
||||
/* 023EEC 800232EC 46009100 */ add.s $f4, $f18, $f0
|
||||
/* 023EF0 800232F0 E62400DC */ swc1 $f4, 0xdc($s1)
|
||||
/* 023EF4 800232F4 C6060014 */ lwc1 $f6, 0x14($s0)
|
||||
/* 023EF8 800232F8 00000000 */ nop
|
||||
/* 023EFC 800232FC E62600E0 */ swc1 $f6, 0xe0($s1)
|
||||
/* 023F00 80023300 C610000C */ lwc1 $f16, 0xc($s0)
|
||||
/* 023F04 80023304 00000000 */ nop
|
||||
/* 023F08 80023308 E63000E4 */ swc1 $f16, 0xe4($s1)
|
||||
/* 023F0C 8002330C C6080010 */ lwc1 $f8, 0x10($s0)
|
||||
/* 023F10 80023310 00000000 */ nop
|
||||
/* 023F14 80023314 46004280 */ add.s $f10, $f8, $f0
|
||||
/* 023F18 80023318 E62A00E8 */ swc1 $f10, 0xe8($s1)
|
||||
/* 023F1C 8002331C C6120014 */ lwc1 $f18, 0x14($s0)
|
||||
/* 023F20 80023320 00000000 */ nop
|
||||
/* 023F24 80023324 E63200EC */ swc1 $f18, 0xec($s1)
|
||||
/* 023F28 80023328 C604000C */ lwc1 $f4, 0xc($s0)
|
||||
/* 023F2C 8002332C 00000000 */ nop
|
||||
/* 023F30 80023330 E62400F0 */ swc1 $f4, 0xf0($s1)
|
||||
/* 023F34 80023334 C6060010 */ lwc1 $f6, 0x10($s0)
|
||||
/* 023F38 80023338 00000000 */ nop
|
||||
/* 023F3C 8002333C 46003400 */ add.s $f16, $f6, $f0
|
||||
/* 023F40 80023340 E63000F4 */ swc1 $f16, 0xf4($s1)
|
||||
/* 023F44 80023344 C6080014 */ lwc1 $f8, 0x14($s0)
|
||||
/* 023F48 80023348 00000000 */ nop
|
||||
/* 023F4C 8002334C E62800F8 */ swc1 $f8, 0xf8($s1)
|
||||
/* 023F50 80023350 C60A000C */ lwc1 $f10, 0xc($s0)
|
||||
/* 023F54 80023354 00000000 */ nop
|
||||
/* 023F58 80023358 E62A00FC */ swc1 $f10, 0xfc($s1)
|
||||
/* 023F5C 8002335C C6120010 */ lwc1 $f18, 0x10($s0)
|
||||
/* 023F60 80023360 00000000 */ nop
|
||||
/* 023F64 80023364 46009100 */ add.s $f4, $f18, $f0
|
||||
/* 023F68 80023368 44800000 */ mtc1 $zero, $f0
|
||||
/* 023F6C 8002336C E6240100 */ swc1 $f4, 0x100($s1)
|
||||
/* 023F70 80023370 C6060014 */ lwc1 $f6, 0x14($s0)
|
||||
/* 023F74 80023374 00000000 */ nop
|
||||
/* 023F78 80023378 E6260104 */ swc1 $f6, 0x104($s1)
|
||||
/* 023F7C 8002337C 8E0D004C */ lw $t5, 0x4c($s0)
|
||||
/* 023F80 80023380 C610000C */ lwc1 $f16, 0xc($s0)
|
||||
/* 023F84 80023384 00000000 */ nop
|
||||
/* 023F88 80023388 E5B00004 */ swc1 $f16, 4($t5)
|
||||
/* 023F8C 8002338C 8E0E004C */ lw $t6, 0x4c($s0)
|
||||
/* 023F90 80023390 C6080010 */ lwc1 $f8, 0x10($s0)
|
||||
/* 023F94 80023394 00000000 */ nop
|
||||
/* 023F98 80023398 E5C80008 */ swc1 $f8, 8($t6)
|
||||
/* 023F9C 8002339C 8E0F004C */ lw $t7, 0x4c($s0)
|
||||
/* 023FA0 800233A0 C60A0014 */ lwc1 $f10, 0x14($s0)
|
||||
/* 023FA4 800233A4 00000000 */ nop
|
||||
/* 023FA8 800233A8 E5EA000C */ swc1 $f10, 0xc($t7)
|
||||
/* 023FAC 800233AC E620002C */ swc1 $f0, 0x2c($s1)
|
||||
/* 023FB0 800233B0 E6200030 */ swc1 $f0, 0x30($s1)
|
||||
/* 023FB4 800233B4 E600001C */ swc1 $f0, 0x1c($s0)
|
||||
/* 023FB8 800233B8 E6000024 */ swc1 $f0, 0x24($s0)
|
||||
/* 023FBC 800233BC 823801D7 */ lb $t8, 0x1d7($s1)
|
||||
/* 023FC0 800233C0 86240000 */ lh $a0, ($s1)
|
||||
/* 023FC4 800233C4 A23801D6 */ sb $t8, 0x1d6($s1)
|
||||
/* 023FC8 800233C8 1081000F */ beq $a0, $at, .L80023408
|
||||
/* 023FCC 800233CC 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 023FD0 800233D0 0C01997A */ jal set_active_camera
|
||||
/* 023FD4 800233D4 AFA8005C */ sw $t0, 0x5c($sp)
|
||||
/* 023FD8 800233D8 0C01A73F */ jal get_active_camera_segment_no_cutscenes
|
||||
/* 023FDC 800233DC 00000000 */ nop
|
||||
/* 023FE0 800233E0 C612000C */ lwc1 $f18, 0xc($s0)
|
||||
/* 023FE4 800233E4 8FA8005C */ lw $t0, 0x5c($sp)
|
||||
/* 023FE8 800233E8 E452000C */ swc1 $f18, 0xc($v0)
|
||||
/* 023FEC 800233EC C6040010 */ lwc1 $f4, 0x10($s0)
|
||||
/* 023FF0 800233F0 00000000 */ nop
|
||||
/* 023FF4 800233F4 E4440010 */ swc1 $f4, 0x10($v0)
|
||||
/* 023FF8 800233F8 C6060014 */ lwc1 $f6, 0x14($s0)
|
||||
/* 023FFC 800233FC 00000000 */ nop
|
||||
/* 024000 80023400 E4460014 */ swc1 $f6, 0x14($v0)
|
||||
/* 024004 80023404 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
.L80023408:
|
||||
/* 024008 80023408 8FB00014 */ lw $s0, 0x14($sp)
|
||||
/* 02400C 8002340C 8FB10018 */ lw $s1, 0x18($sp)
|
||||
/* 024010 80023410 27BD0060 */ addiu $sp, $sp, 0x60
|
||||
/* 024014 80023414 03E00008 */ jr $ra
|
||||
/* 024018 80023418 01001025 */ move $v0, $t0
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,233 +1,233 @@
|
||||
glabel func_800249F0
|
||||
/* 0255F0 800249F0 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 0255F4 800249F4 AFBF0024 */ sw $ra, 0x24($sp)
|
||||
/* 0255F8 800249F8 AFB2001C */ sw $s2, 0x1c($sp)
|
||||
/* 0255FC 800249FC AFB10018 */ sw $s1, 0x18($sp)
|
||||
/* 025600 80024A00 00808825 */ move $s1, $a0
|
||||
/* 025604 80024A04 00A09025 */ move $s2, $a1
|
||||
/* 025608 80024A08 AFB30020 */ sw $s3, 0x20($sp)
|
||||
/* 02560C 80024A0C AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 025610 80024A10 AFA60030 */ sw $a2, 0x30($sp)
|
||||
/* 025614 80024A14 0C01AF6C */ jal get_current_level_header
|
||||
/* 025618 80024A18 AFA70034 */ sw $a3, 0x34($sp)
|
||||
/* 02561C 80024A1C 3C048012 */ lui $a0, %hi(D_8011B0F8) # $a0, 0x8012
|
||||
/* 025620 80024A20 3C05800E */ lui $a1, %hi(gCurrentLevelHeader2) # $a1, 0x800e
|
||||
/* 025624 80024A24 24A5C91C */ addiu $a1, %lo(gCurrentLevelHeader2) # addiu $a1, $a1, -0x36e4
|
||||
/* 025628 80024A28 2484B0F8 */ addiu $a0, %lo(D_8011B0F8) # addiu $a0, $a0, -0x4f08
|
||||
/* 02562C 80024A2C ACA20000 */ sw $v0, ($a1)
|
||||
/* 025630 80024A30 AC800000 */ sw $zero, ($a0)
|
||||
/* 025634 80024A34 3C018012 */ lui $at, %hi(D_8011B100) # $at, 0x8012
|
||||
/* 025638 80024A38 AC20B100 */ sw $zero, %lo(D_8011B100)($at)
|
||||
/* 02563C 80024A3C 3C018012 */ lui $at, %hi(D_8011B104) # $at, 0x8012
|
||||
/* 025640 80024A40 AC20B104 */ sw $zero, %lo(D_8011B104)($at)
|
||||
/* 025644 80024A44 3C018012 */ lui $at, %hi(D_8011B108) # $at, 0x8012
|
||||
/* 025648 80024A48 AC20B108 */ sw $zero, %lo(D_8011B108)($at)
|
||||
/* 02564C 80024A4C 3C018012 */ lui $at, %hi(D_8011B10C) # $at, 0x8012
|
||||
/* 025650 80024A50 AC20B10C */ sw $zero, %lo(D_8011B10C)($at)
|
||||
/* 025654 80024A54 8CAE0000 */ lw $t6, ($a1)
|
||||
/* 025658 80024A58 24010006 */ li $at, 6
|
||||
/* 02565C 80024A5C 81C3004C */ lb $v1, 0x4c($t6)
|
||||
/* 025660 80024A60 00000000 */ nop
|
||||
/* 025664 80024A64 10610002 */ beq $v1, $at, .L80024A70
|
||||
/* 025668 80024A68 24010007 */ li $at, 7
|
||||
/* 02566C 80024A6C 14610002 */ bne $v1, $at, .L80024A78
|
||||
.L80024A70:
|
||||
/* 025670 80024A70 240F0001 */ li $t7, 1
|
||||
/* 025674 80024A74 AC8F0000 */ sw $t7, ($a0)
|
||||
.L80024A78:
|
||||
/* 025678 80024A78 0C00B031 */ jal func_8002C0C4
|
||||
/* 02567C 80024A7C 02202025 */ move $a0, $s1
|
||||
/* 025680 80024A80 8FB80030 */ lw $t8, 0x30($sp)
|
||||
/* 025684 80024A84 3C108012 */ lui $s0, %hi(D_8011D384) # $s0, 0x8012
|
||||
/* 025688 80024A88 2610D384 */ addiu $s0, %lo(D_8011D384) # addiu $s0, $s0, -0x2c7c
|
||||
/* 02568C 80024A8C 2B010002 */ slti $at, $t8, 2
|
||||
/* 025690 80024A90 1020001E */ beqz $at, .L80024B0C
|
||||
/* 025694 80024A94 AE000000 */ sw $zero, ($s0)
|
||||
/* 025698 80024A98 3C02800E */ lui $v0, %hi(gCurrentLevelModel) # $v0, 0x800e
|
||||
/* 02569C 80024A9C 8C42C918 */ lw $v0, %lo(gCurrentLevelModel)($v0)
|
||||
/* 0256A0 80024AA0 00003025 */ move $a2, $zero
|
||||
/* 0256A4 80024AA4 8444001A */ lh $a0, 0x1a($v0)
|
||||
/* 0256A8 80024AA8 00001825 */ move $v1, $zero
|
||||
/* 0256AC 80024AAC 18800017 */ blez $a0, .L80024B0C
|
||||
/* 0256B0 80024AB0 24050001 */ li $a1, 1
|
||||
.L80024AB4:
|
||||
/* 0256B4 80024AB4 8C590004 */ lw $t9, 4($v0)
|
||||
/* 0256B8 80024AB8 24C60001 */ addiu $a2, $a2, 1
|
||||
/* 0256BC 80024ABC 03234021 */ addu $t0, $t9, $v1
|
||||
/* 0256C0 80024AC0 8109002B */ lb $t1, 0x2b($t0)
|
||||
/* 0256C4 80024AC4 00000000 */ nop
|
||||
/* 0256C8 80024AC8 1120000E */ beqz $t1, .L80024B04
|
||||
/* 0256CC 80024ACC 00C4082A */ slt $at, $a2, $a0
|
||||
/* 0256D0 80024AD0 8E0A0000 */ lw $t2, ($s0)
|
||||
/* 0256D4 80024AD4 00000000 */ nop
|
||||
/* 0256D8 80024AD8 254B0001 */ addiu $t3, $t2, 1
|
||||
/* 0256DC 80024ADC AE0B0000 */ sw $t3, ($s0)
|
||||
/* 0256E0 80024AE0 8C4C0004 */ lw $t4, 4($v0)
|
||||
/* 0256E4 80024AE4 3C02800E */ lui $v0, %hi(gCurrentLevelModel) # $v0, 0x800e
|
||||
/* 0256E8 80024AE8 01836821 */ addu $t5, $t4, $v1
|
||||
/* 0256EC 80024AEC A1A5002B */ sb $a1, 0x2b($t5)
|
||||
/* 0256F0 80024AF0 8C42C918 */ lw $v0, %lo(gCurrentLevelModel)($v0)
|
||||
/* 0256F4 80024AF4 00000000 */ nop
|
||||
/* 0256F8 80024AF8 8444001A */ lh $a0, 0x1a($v0)
|
||||
/* 0256FC 80024AFC 00000000 */ nop
|
||||
/* 025700 80024B00 00C4082A */ slt $at, $a2, $a0
|
||||
.L80024B04:
|
||||
/* 025704 80024B04 1420FFEB */ bnez $at, .L80024AB4
|
||||
/* 025708 80024B08 24630044 */ addiu $v1, $v1, 0x44
|
||||
.L80024B0C:
|
||||
/* 02570C 80024B0C 0C027B20 */ jal is_in_two_player_adventure
|
||||
/* 025710 80024B10 00000000 */ nop
|
||||
/* 025714 80024B14 1040000B */ beqz $v0, .L80024B44
|
||||
/* 025718 80024B18 3C0E800E */ lui $t6, %hi(gCurrentLevelHeader2) # $t6, 0x800e
|
||||
/* 02571C 80024B1C 8DCEC91C */ lw $t6, %lo(gCurrentLevelHeader2)($t6)
|
||||
/* 025720 80024B20 00000000 */ nop
|
||||
/* 025724 80024B24 81C3004C */ lb $v1, 0x4c($t6)
|
||||
/* 025728 80024B28 00000000 */ nop
|
||||
/* 02572C 80024B2C 10600003 */ beqz $v1, .L80024B3C
|
||||
/* 025730 80024B30 306F0040 */ andi $t7, $v1, 0x40
|
||||
/* 025734 80024B34 11E00004 */ beqz $t7, .L80024B48
|
||||
/* 025738 80024B38 8FA60030 */ lw $a2, 0x30($sp)
|
||||
.L80024B3C:
|
||||
/* 02573C 80024B3C 10000004 */ b .L80024B50
|
||||
/* 025740 80024B40 24060002 */ li $a2, 2
|
||||
.L80024B44:
|
||||
/* 025744 80024B44 8FA60030 */ lw $a2, 0x30($sp)
|
||||
.L80024B48:
|
||||
/* 025748 80024B48 00000000 */ nop
|
||||
/* 02574C 80024B4C 24C60001 */ addiu $a2, $a2, 1
|
||||
.L80024B50:
|
||||
/* 025750 80024B50 8E180000 */ lw $t8, ($s0)
|
||||
/* 025754 80024B54 00000000 */ nop
|
||||
/* 025758 80024B58 13000006 */ beqz $t8, .L80024B74
|
||||
/* 02575C 80024B5C 3C04800E */ lui $a0, %hi(gCurrentLevelModel) # $a0, 0x800e
|
||||
/* 025760 80024B60 3C05800E */ lui $a1, %hi(gCurrentLevelHeader2) # $a1, 0x800e
|
||||
/* 025764 80024B64 8CA5C91C */ lw $a1, %lo(gCurrentLevelHeader2)($a1)
|
||||
/* 025768 80024B68 8C84C918 */ lw $a0, %lo(gCurrentLevelModel)($a0)
|
||||
/* 02576C 80024B6C 0C02E0AD */ jal func_800B82B4
|
||||
/* 025770 80024B70 00000000 */ nop
|
||||
.L80024B74:
|
||||
/* 025774 80024B74 8FA40030 */ lw $a0, 0x30($sp)
|
||||
/* 025778 80024B78 0C01994B */ jal set_active_viewports_and_object_stack_cap
|
||||
/* 02577C 80024B7C 00000000 */ nop
|
||||
/* 025780 80024B80 0C009FF1 */ jal func_80027FC4
|
||||
/* 025784 80024B84 02402025 */ move $a0, $s2
|
||||
/* 025788 80024B88 3C018012 */ lui $at, %hi(D_8011B110) # $at, 0x8012
|
||||
/* 02578C 80024B8C AC20B110 */ sw $zero, %lo(D_8011B110)($at)
|
||||
/* 025790 80024B90 3C018012 */ lui $at, %hi(D_8011B114) # $at, 0x8012
|
||||
/* 025794 80024B94 3C190001 */ lui $t9, 1
|
||||
/* 025798 80024B98 0C0044E4 */ jal func_80011390
|
||||
/* 02579C 80024B9C AC39B114 */ sw $t9, %lo(D_8011B114)($at)
|
||||
/* 0257A0 80024BA0 8FA40040 */ lw $a0, 0x40($sp)
|
||||
/* 0257A4 80024BA4 0C00323E */ jal func_8000C8F8
|
||||
/* 0257A8 80024BA8 00002825 */ move $a1, $zero
|
||||
/* 0257AC 80024BAC 8FA4003C */ lw $a0, 0x3c($sp)
|
||||
/* 0257B0 80024BB0 0C00323E */ jal func_8000C8F8
|
||||
/* 0257B4 80024BB4 24050001 */ li $a1, 1
|
||||
/* 0257B8 80024BB8 8FB00038 */ lw $s0, 0x38($sp)
|
||||
/* 0257BC 80024BBC 8FA80030 */ lw $t0, 0x30($sp)
|
||||
/* 0257C0 80024BC0 3C138012 */ lui $s3, %hi(D_8011D37C) # $s3, 0x8012
|
||||
/* 0257C4 80024BC4 2673D37C */ addiu $s3, %lo(D_8011D37C) # addiu $s3, $s3, -0x2c84
|
||||
/* 0257C8 80024BC8 8FA40034 */ lw $a0, 0x34($sp)
|
||||
/* 0257CC 80024BCC 8FA60030 */ lw $a2, 0x30($sp)
|
||||
/* 0257D0 80024BD0 02002825 */ move $a1, $s0
|
||||
/* 0257D4 80024BD4 0C00331F */ jal func_8000CC7C
|
||||
/* 0257D8 80024BD8 AE680000 */ sw $t0, ($s3)
|
||||
/* 0257DC 80024BDC 24040048 */ li $a0, 72
|
||||
/* 0257E0 80024BE0 0C002C08 */ jal func_8000B020
|
||||
/* 0257E4 80024BE4 24050040 */ li $a1, 64
|
||||
/* 0257E8 80024BE8 16200008 */ bnez $s1, .L80024C0C
|
||||
/* 0257EC 80024BEC 3C04800E */ lui $a0, %hi(D_800DC874) # $a0, 0x800e
|
||||
/* 0257F0 80024BF0 16000006 */ bnez $s0, .L80024C0C
|
||||
/* 0257F4 80024BF4 00000000 */ nop
|
||||
/* 0257F8 80024BF8 3C04800E */ lui $a0, %hi(D_800DC87C) # $a0, 0x800e
|
||||
/* 0257FC 80024BFC 0C030076 */ jal func_800C01D8
|
||||
/* 025800 80024C00 2484C87C */ addiu $a0, %lo(D_800DC87C) # addiu $a0, $a0, -0x3784
|
||||
/* 025804 80024C04 10000004 */ b .L80024C18
|
||||
/* 025808 80024C08 8E640000 */ lw $a0, ($s3)
|
||||
.L80024C0C:
|
||||
/* 02580C 80024C0C 0C030076 */ jal func_800C01D8
|
||||
/* 025810 80024C10 2484C874 */ addiu $a0, %lo(D_800DC874) # addiu $a0, $a0, -0x378c
|
||||
/* 025814 80024C14 8E640000 */ lw $a0, ($s3)
|
||||
.L80024C18:
|
||||
/* 025818 80024C18 0C01994B */ jal set_active_viewports_and_object_stack_cap
|
||||
/* 02581C 80024C1C 00000000 */ nop
|
||||
/* 025820 80024C20 8E690000 */ lw $t1, ($s3)
|
||||
/* 025824 80024C24 3C018012 */ lui $at, %hi(D_8011B0FC) # $at, 0x8012
|
||||
/* 025828 80024C28 3C13FFFF */ lui $s3, (0xFFFF00FF >> 16) # lui $s3, 0xffff
|
||||
/* 02582C 80024C2C 3C118012 */ lui $s1, %hi(D_8011D350) # $s1, 0x8012
|
||||
/* 025830 80024C30 3C128012 */ lui $s2, %hi(D_8011D320) # $s2, 0x8012
|
||||
/* 025834 80024C34 3C108012 */ lui $s0, %hi(D_8011D338) # $s0, 0x8012
|
||||
/* 025838 80024C38 AC20B0FC */ sw $zero, %lo(D_8011B0FC)($at)
|
||||
/* 02583C 80024C3C 2610D338 */ addiu $s0, %lo(D_8011D338) # addiu $s0, $s0, -0x2cc8
|
||||
/* 025840 80024C40 2652D320 */ addiu $s2, %lo(D_8011D320) # addiu $s2, $s2, -0x2ce0
|
||||
/* 025844 80024C44 2631D350 */ addiu $s1, %lo(D_8011D350) # addiu $s1, $s1, -0x2cb0
|
||||
/* 025848 80024C48 367300FF */ ori $s3, (0xFFFF00FF & 0xFFFF) # ori $s3, $s3, 0xff
|
||||
/* 02584C 80024C4C AFA90030 */ sw $t1, 0x30($sp)
|
||||
.L80024C50:
|
||||
/* 025850 80024C50 24040C80 */ li $a0, 3200
|
||||
/* 025854 80024C54 0C01C327 */ jal allocate_from_main_pool_safe
|
||||
/* 025858 80024C58 02602825 */ move $a1, $s3
|
||||
/* 02585C 80024C5C AE220000 */ sw $v0, ($s1)
|
||||
/* 025860 80024C60 24043200 */ li $a0, 12800
|
||||
/* 025864 80024C64 0C01C327 */ jal allocate_from_main_pool_safe
|
||||
/* 025868 80024C68 02602825 */ move $a1, $s3
|
||||
/* 02586C 80024C6C AE420000 */ sw $v0, ($s2)
|
||||
/* 025870 80024C70 24044E20 */ li $a0, 20000
|
||||
/* 025874 80024C74 0C01C327 */ jal allocate_from_main_pool_safe
|
||||
/* 025878 80024C78 02602825 */ move $a1, $s3
|
||||
/* 02587C 80024C7C 3C0A8012 */ lui $t2, %hi(D_8011D348) # $t2, 0x8012
|
||||
/* 025880 80024C80 254AD348 */ addiu $t2, %lo(D_8011D348) # addiu $t2, $t2, -0x2cb8
|
||||
/* 025884 80024C84 26100004 */ addiu $s0, $s0, 4
|
||||
/* 025888 80024C88 26310004 */ addiu $s1, $s1, 4
|
||||
/* 02588C 80024C8C 26520004 */ addiu $s2, $s2, 4
|
||||
/* 025890 80024C90 160AFFEF */ bne $s0, $t2, .L80024C50
|
||||
/* 025894 80024C94 AE02FFFC */ sw $v0, -4($s0)
|
||||
/* 025898 80024C98 3C108012 */ lui $s0, %hi(D_8011B0C8) # $s0, 0x8012
|
||||
/* 02589C 80024C9C 2610B0C8 */ addiu $s0, %lo(D_8011B0C8) # addiu $s0, $s0, -0x4f38
|
||||
/* 0258A0 80024CA0 AE000000 */ sw $zero, ($s0)
|
||||
/* 0258A4 80024CA4 24040001 */ li $a0, 1
|
||||
/* 0258A8 80024CA8 24050001 */ li $a1, 1
|
||||
/* 0258AC 80024CAC 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258B0 80024CB0 00003025 */ move $a2, $zero
|
||||
/* 0258B4 80024CB4 24040002 */ li $a0, 2
|
||||
/* 0258B8 80024CB8 24050002 */ li $a1, 2
|
||||
/* 0258BC 80024CBC 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258C0 80024CC0 00003025 */ move $a2, $zero
|
||||
/* 0258C4 80024CC4 240B0001 */ li $t3, 1
|
||||
/* 0258C8 80024CC8 AE0B0000 */ sw $t3, ($s0)
|
||||
/* 0258CC 80024CCC 24040001 */ li $a0, 1
|
||||
/* 0258D0 80024CD0 24050001 */ li $a1, 1
|
||||
/* 0258D4 80024CD4 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258D8 80024CD8 00003025 */ move $a2, $zero
|
||||
/* 0258DC 80024CDC 24040002 */ li $a0, 2
|
||||
/* 0258E0 80024CE0 24050002 */ li $a1, 2
|
||||
/* 0258E4 80024CE4 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258E8 80024CE8 00003025 */ move $a2, $zero
|
||||
/* 0258EC 80024CEC AE000000 */ sw $zero, ($s0)
|
||||
/* 0258F0 80024CF0 3C02800E */ lui $v0, %hi(gCurrentLevelHeader2) # $v0, 0x800e
|
||||
/* 0258F4 80024CF4 8C42C91C */ lw $v0, %lo(gCurrentLevelHeader2)($v0)
|
||||
/* 0258F8 80024CF8 3C018012 */ lui $at, %hi(D_8011B0E1) # $at, 0x8012
|
||||
/* 0258FC 80024CFC 904C00B7 */ lbu $t4, 0xb7($v0)
|
||||
/* 025900 80024D00 00000000 */ nop
|
||||
/* 025904 80024D04 1180000D */ beqz $t4, .L80024D3C
|
||||
/* 025908 80024D08 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
/* 02590C 80024D0C 904D00B4 */ lbu $t5, 0xb4($v0)
|
||||
/* 025910 80024D10 8FA40030 */ lw $a0, 0x30($sp)
|
||||
/* 025914 80024D14 A02DB0E1 */ sb $t5, %lo(D_8011B0E1)($at)
|
||||
/* 025918 80024D18 904E00B5 */ lbu $t6, 0xb5($v0)
|
||||
/* 02591C 80024D1C 3C018012 */ lui $at, %hi(D_8011B0E2) # $at, 0x8012
|
||||
/* 025920 80024D20 A02EB0E2 */ sb $t6, %lo(D_8011B0E2)($at)
|
||||
/* 025924 80024D24 904F00B6 */ lbu $t7, 0xb6($v0)
|
||||
/* 025928 80024D28 3C018012 */ lui $at, %hi(D_8011B0E3) # $at, 0x8012
|
||||
/* 02592C 80024D2C 24840001 */ addiu $a0, $a0, 1
|
||||
/* 025930 80024D30 0C009544 */ jal func_80025510
|
||||
/* 025934 80024D34 A02FB0E3 */ sb $t7, %lo(D_8011B0E3)($at)
|
||||
/* 025938 80024D38 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
.L80024D3C:
|
||||
/* 02593C 80024D3C 8FB00014 */ lw $s0, 0x14($sp)
|
||||
/* 025940 80024D40 8FB10018 */ lw $s1, 0x18($sp)
|
||||
/* 025944 80024D44 8FB2001C */ lw $s2, 0x1c($sp)
|
||||
/* 025948 80024D48 8FB30020 */ lw $s3, 0x20($sp)
|
||||
/* 02594C 80024D4C 03E00008 */ jr $ra
|
||||
/* 025950 80024D50 27BD0028 */ addiu $sp, $sp, 0x28
|
||||
|
||||
glabel func_800249F0
|
||||
/* 0255F0 800249F0 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 0255F4 800249F4 AFBF0024 */ sw $ra, 0x24($sp)
|
||||
/* 0255F8 800249F8 AFB2001C */ sw $s2, 0x1c($sp)
|
||||
/* 0255FC 800249FC AFB10018 */ sw $s1, 0x18($sp)
|
||||
/* 025600 80024A00 00808825 */ move $s1, $a0
|
||||
/* 025604 80024A04 00A09025 */ move $s2, $a1
|
||||
/* 025608 80024A08 AFB30020 */ sw $s3, 0x20($sp)
|
||||
/* 02560C 80024A0C AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 025610 80024A10 AFA60030 */ sw $a2, 0x30($sp)
|
||||
/* 025614 80024A14 0C01AF6C */ jal get_current_level_header
|
||||
/* 025618 80024A18 AFA70034 */ sw $a3, 0x34($sp)
|
||||
/* 02561C 80024A1C 3C048012 */ lui $a0, %hi(D_8011B0F8) # $a0, 0x8012
|
||||
/* 025620 80024A20 3C05800E */ lui $a1, %hi(gCurrentLevelHeader2) # $a1, 0x800e
|
||||
/* 025624 80024A24 24A5C91C */ addiu $a1, %lo(gCurrentLevelHeader2) # addiu $a1, $a1, -0x36e4
|
||||
/* 025628 80024A28 2484B0F8 */ addiu $a0, %lo(D_8011B0F8) # addiu $a0, $a0, -0x4f08
|
||||
/* 02562C 80024A2C ACA20000 */ sw $v0, ($a1)
|
||||
/* 025630 80024A30 AC800000 */ sw $zero, ($a0)
|
||||
/* 025634 80024A34 3C018012 */ lui $at, %hi(D_8011B100) # $at, 0x8012
|
||||
/* 025638 80024A38 AC20B100 */ sw $zero, %lo(D_8011B100)($at)
|
||||
/* 02563C 80024A3C 3C018012 */ lui $at, %hi(D_8011B104) # $at, 0x8012
|
||||
/* 025640 80024A40 AC20B104 */ sw $zero, %lo(D_8011B104)($at)
|
||||
/* 025644 80024A44 3C018012 */ lui $at, %hi(D_8011B108) # $at, 0x8012
|
||||
/* 025648 80024A48 AC20B108 */ sw $zero, %lo(D_8011B108)($at)
|
||||
/* 02564C 80024A4C 3C018012 */ lui $at, %hi(D_8011B10C) # $at, 0x8012
|
||||
/* 025650 80024A50 AC20B10C */ sw $zero, %lo(D_8011B10C)($at)
|
||||
/* 025654 80024A54 8CAE0000 */ lw $t6, ($a1)
|
||||
/* 025658 80024A58 24010006 */ li $at, 6
|
||||
/* 02565C 80024A5C 81C3004C */ lb $v1, 0x4c($t6)
|
||||
/* 025660 80024A60 00000000 */ nop
|
||||
/* 025664 80024A64 10610002 */ beq $v1, $at, .L80024A70
|
||||
/* 025668 80024A68 24010007 */ li $at, 7
|
||||
/* 02566C 80024A6C 14610002 */ bne $v1, $at, .L80024A78
|
||||
.L80024A70:
|
||||
/* 025670 80024A70 240F0001 */ li $t7, 1
|
||||
/* 025674 80024A74 AC8F0000 */ sw $t7, ($a0)
|
||||
.L80024A78:
|
||||
/* 025678 80024A78 0C00B031 */ jal func_8002C0C4
|
||||
/* 02567C 80024A7C 02202025 */ move $a0, $s1
|
||||
/* 025680 80024A80 8FB80030 */ lw $t8, 0x30($sp)
|
||||
/* 025684 80024A84 3C108012 */ lui $s0, %hi(D_8011D384) # $s0, 0x8012
|
||||
/* 025688 80024A88 2610D384 */ addiu $s0, %lo(D_8011D384) # addiu $s0, $s0, -0x2c7c
|
||||
/* 02568C 80024A8C 2B010002 */ slti $at, $t8, 2
|
||||
/* 025690 80024A90 1020001E */ beqz $at, .L80024B0C
|
||||
/* 025694 80024A94 AE000000 */ sw $zero, ($s0)
|
||||
/* 025698 80024A98 3C02800E */ lui $v0, %hi(gCurrentLevelModel) # $v0, 0x800e
|
||||
/* 02569C 80024A9C 8C42C918 */ lw $v0, %lo(gCurrentLevelModel)($v0)
|
||||
/* 0256A0 80024AA0 00003025 */ move $a2, $zero
|
||||
/* 0256A4 80024AA4 8444001A */ lh $a0, 0x1a($v0)
|
||||
/* 0256A8 80024AA8 00001825 */ move $v1, $zero
|
||||
/* 0256AC 80024AAC 18800017 */ blez $a0, .L80024B0C
|
||||
/* 0256B0 80024AB0 24050001 */ li $a1, 1
|
||||
.L80024AB4:
|
||||
/* 0256B4 80024AB4 8C590004 */ lw $t9, 4($v0)
|
||||
/* 0256B8 80024AB8 24C60001 */ addiu $a2, $a2, 1
|
||||
/* 0256BC 80024ABC 03234021 */ addu $t0, $t9, $v1
|
||||
/* 0256C0 80024AC0 8109002B */ lb $t1, 0x2b($t0)
|
||||
/* 0256C4 80024AC4 00000000 */ nop
|
||||
/* 0256C8 80024AC8 1120000E */ beqz $t1, .L80024B04
|
||||
/* 0256CC 80024ACC 00C4082A */ slt $at, $a2, $a0
|
||||
/* 0256D0 80024AD0 8E0A0000 */ lw $t2, ($s0)
|
||||
/* 0256D4 80024AD4 00000000 */ nop
|
||||
/* 0256D8 80024AD8 254B0001 */ addiu $t3, $t2, 1
|
||||
/* 0256DC 80024ADC AE0B0000 */ sw $t3, ($s0)
|
||||
/* 0256E0 80024AE0 8C4C0004 */ lw $t4, 4($v0)
|
||||
/* 0256E4 80024AE4 3C02800E */ lui $v0, %hi(gCurrentLevelModel) # $v0, 0x800e
|
||||
/* 0256E8 80024AE8 01836821 */ addu $t5, $t4, $v1
|
||||
/* 0256EC 80024AEC A1A5002B */ sb $a1, 0x2b($t5)
|
||||
/* 0256F0 80024AF0 8C42C918 */ lw $v0, %lo(gCurrentLevelModel)($v0)
|
||||
/* 0256F4 80024AF4 00000000 */ nop
|
||||
/* 0256F8 80024AF8 8444001A */ lh $a0, 0x1a($v0)
|
||||
/* 0256FC 80024AFC 00000000 */ nop
|
||||
/* 025700 80024B00 00C4082A */ slt $at, $a2, $a0
|
||||
.L80024B04:
|
||||
/* 025704 80024B04 1420FFEB */ bnez $at, .L80024AB4
|
||||
/* 025708 80024B08 24630044 */ addiu $v1, $v1, 0x44
|
||||
.L80024B0C:
|
||||
/* 02570C 80024B0C 0C027B20 */ jal is_in_two_player_adventure
|
||||
/* 025710 80024B10 00000000 */ nop
|
||||
/* 025714 80024B14 1040000B */ beqz $v0, .L80024B44
|
||||
/* 025718 80024B18 3C0E800E */ lui $t6, %hi(gCurrentLevelHeader2) # $t6, 0x800e
|
||||
/* 02571C 80024B1C 8DCEC91C */ lw $t6, %lo(gCurrentLevelHeader2)($t6)
|
||||
/* 025720 80024B20 00000000 */ nop
|
||||
/* 025724 80024B24 81C3004C */ lb $v1, 0x4c($t6)
|
||||
/* 025728 80024B28 00000000 */ nop
|
||||
/* 02572C 80024B2C 10600003 */ beqz $v1, .L80024B3C
|
||||
/* 025730 80024B30 306F0040 */ andi $t7, $v1, 0x40
|
||||
/* 025734 80024B34 11E00004 */ beqz $t7, .L80024B48
|
||||
/* 025738 80024B38 8FA60030 */ lw $a2, 0x30($sp)
|
||||
.L80024B3C:
|
||||
/* 02573C 80024B3C 10000004 */ b .L80024B50
|
||||
/* 025740 80024B40 24060002 */ li $a2, 2
|
||||
.L80024B44:
|
||||
/* 025744 80024B44 8FA60030 */ lw $a2, 0x30($sp)
|
||||
.L80024B48:
|
||||
/* 025748 80024B48 00000000 */ nop
|
||||
/* 02574C 80024B4C 24C60001 */ addiu $a2, $a2, 1
|
||||
.L80024B50:
|
||||
/* 025750 80024B50 8E180000 */ lw $t8, ($s0)
|
||||
/* 025754 80024B54 00000000 */ nop
|
||||
/* 025758 80024B58 13000006 */ beqz $t8, .L80024B74
|
||||
/* 02575C 80024B5C 3C04800E */ lui $a0, %hi(gCurrentLevelModel) # $a0, 0x800e
|
||||
/* 025760 80024B60 3C05800E */ lui $a1, %hi(gCurrentLevelHeader2) # $a1, 0x800e
|
||||
/* 025764 80024B64 8CA5C91C */ lw $a1, %lo(gCurrentLevelHeader2)($a1)
|
||||
/* 025768 80024B68 8C84C918 */ lw $a0, %lo(gCurrentLevelModel)($a0)
|
||||
/* 02576C 80024B6C 0C02E0AD */ jal func_800B82B4
|
||||
/* 025770 80024B70 00000000 */ nop
|
||||
.L80024B74:
|
||||
/* 025774 80024B74 8FA40030 */ lw $a0, 0x30($sp)
|
||||
/* 025778 80024B78 0C01994B */ jal set_active_viewports_and_max
|
||||
/* 02577C 80024B7C 00000000 */ nop
|
||||
/* 025780 80024B80 0C009FF1 */ jal func_80027FC4
|
||||
/* 025784 80024B84 02402025 */ move $a0, $s2
|
||||
/* 025788 80024B88 3C018012 */ lui $at, %hi(D_8011B110) # $at, 0x8012
|
||||
/* 02578C 80024B8C AC20B110 */ sw $zero, %lo(D_8011B110)($at)
|
||||
/* 025790 80024B90 3C018012 */ lui $at, %hi(D_8011B114) # $at, 0x8012
|
||||
/* 025794 80024B94 3C190001 */ lui $t9, 1
|
||||
/* 025798 80024B98 0C0044E4 */ jal func_80011390
|
||||
/* 02579C 80024B9C AC39B114 */ sw $t9, %lo(D_8011B114)($at)
|
||||
/* 0257A0 80024BA0 8FA40040 */ lw $a0, 0x40($sp)
|
||||
/* 0257A4 80024BA4 0C00323E */ jal func_8000C8F8
|
||||
/* 0257A8 80024BA8 00002825 */ move $a1, $zero
|
||||
/* 0257AC 80024BAC 8FA4003C */ lw $a0, 0x3c($sp)
|
||||
/* 0257B0 80024BB0 0C00323E */ jal func_8000C8F8
|
||||
/* 0257B4 80024BB4 24050001 */ li $a1, 1
|
||||
/* 0257B8 80024BB8 8FB00038 */ lw $s0, 0x38($sp)
|
||||
/* 0257BC 80024BBC 8FA80030 */ lw $t0, 0x30($sp)
|
||||
/* 0257C0 80024BC0 3C138012 */ lui $s3, %hi(D_8011D37C) # $s3, 0x8012
|
||||
/* 0257C4 80024BC4 2673D37C */ addiu $s3, %lo(D_8011D37C) # addiu $s3, $s3, -0x2c84
|
||||
/* 0257C8 80024BC8 8FA40034 */ lw $a0, 0x34($sp)
|
||||
/* 0257CC 80024BCC 8FA60030 */ lw $a2, 0x30($sp)
|
||||
/* 0257D0 80024BD0 02002825 */ move $a1, $s0
|
||||
/* 0257D4 80024BD4 0C00331F */ jal func_8000CC7C
|
||||
/* 0257D8 80024BD8 AE680000 */ sw $t0, ($s3)
|
||||
/* 0257DC 80024BDC 24040048 */ li $a0, 72
|
||||
/* 0257E0 80024BE0 0C002C08 */ jal func_8000B020
|
||||
/* 0257E4 80024BE4 24050040 */ li $a1, 64
|
||||
/* 0257E8 80024BE8 16200008 */ bnez $s1, .L80024C0C
|
||||
/* 0257EC 80024BEC 3C04800E */ lui $a0, %hi(D_800DC874) # $a0, 0x800e
|
||||
/* 0257F0 80024BF0 16000006 */ bnez $s0, .L80024C0C
|
||||
/* 0257F4 80024BF4 00000000 */ nop
|
||||
/* 0257F8 80024BF8 3C04800E */ lui $a0, %hi(D_800DC87C) # $a0, 0x800e
|
||||
/* 0257FC 80024BFC 0C030076 */ jal func_800C01D8
|
||||
/* 025800 80024C00 2484C87C */ addiu $a0, %lo(D_800DC87C) # addiu $a0, $a0, -0x3784
|
||||
/* 025804 80024C04 10000004 */ b .L80024C18
|
||||
/* 025808 80024C08 8E640000 */ lw $a0, ($s3)
|
||||
.L80024C0C:
|
||||
/* 02580C 80024C0C 0C030076 */ jal func_800C01D8
|
||||
/* 025810 80024C10 2484C874 */ addiu $a0, %lo(D_800DC874) # addiu $a0, $a0, -0x378c
|
||||
/* 025814 80024C14 8E640000 */ lw $a0, ($s3)
|
||||
.L80024C18:
|
||||
/* 025818 80024C18 0C01994B */ jal set_active_viewports_and_max
|
||||
/* 02581C 80024C1C 00000000 */ nop
|
||||
/* 025820 80024C20 8E690000 */ lw $t1, ($s3)
|
||||
/* 025824 80024C24 3C018012 */ lui $at, %hi(D_8011B0FC) # $at, 0x8012
|
||||
/* 025828 80024C28 3C13FFFF */ lui $s3, (0xFFFF00FF >> 16) # lui $s3, 0xffff
|
||||
/* 02582C 80024C2C 3C118012 */ lui $s1, %hi(D_8011D350) # $s1, 0x8012
|
||||
/* 025830 80024C30 3C128012 */ lui $s2, %hi(D_8011D320) # $s2, 0x8012
|
||||
/* 025834 80024C34 3C108012 */ lui $s0, %hi(D_8011D338) # $s0, 0x8012
|
||||
/* 025838 80024C38 AC20B0FC */ sw $zero, %lo(D_8011B0FC)($at)
|
||||
/* 02583C 80024C3C 2610D338 */ addiu $s0, %lo(D_8011D338) # addiu $s0, $s0, -0x2cc8
|
||||
/* 025840 80024C40 2652D320 */ addiu $s2, %lo(D_8011D320) # addiu $s2, $s2, -0x2ce0
|
||||
/* 025844 80024C44 2631D350 */ addiu $s1, %lo(D_8011D350) # addiu $s1, $s1, -0x2cb0
|
||||
/* 025848 80024C48 367300FF */ ori $s3, (0xFFFF00FF & 0xFFFF) # ori $s3, $s3, 0xff
|
||||
/* 02584C 80024C4C AFA90030 */ sw $t1, 0x30($sp)
|
||||
.L80024C50:
|
||||
/* 025850 80024C50 24040C80 */ li $a0, 3200
|
||||
/* 025854 80024C54 0C01C327 */ jal allocate_from_main_pool_safe
|
||||
/* 025858 80024C58 02602825 */ move $a1, $s3
|
||||
/* 02585C 80024C5C AE220000 */ sw $v0, ($s1)
|
||||
/* 025860 80024C60 24043200 */ li $a0, 12800
|
||||
/* 025864 80024C64 0C01C327 */ jal allocate_from_main_pool_safe
|
||||
/* 025868 80024C68 02602825 */ move $a1, $s3
|
||||
/* 02586C 80024C6C AE420000 */ sw $v0, ($s2)
|
||||
/* 025870 80024C70 24044E20 */ li $a0, 20000
|
||||
/* 025874 80024C74 0C01C327 */ jal allocate_from_main_pool_safe
|
||||
/* 025878 80024C78 02602825 */ move $a1, $s3
|
||||
/* 02587C 80024C7C 3C0A8012 */ lui $t2, %hi(D_8011D348) # $t2, 0x8012
|
||||
/* 025880 80024C80 254AD348 */ addiu $t2, %lo(D_8011D348) # addiu $t2, $t2, -0x2cb8
|
||||
/* 025884 80024C84 26100004 */ addiu $s0, $s0, 4
|
||||
/* 025888 80024C88 26310004 */ addiu $s1, $s1, 4
|
||||
/* 02588C 80024C8C 26520004 */ addiu $s2, $s2, 4
|
||||
/* 025890 80024C90 160AFFEF */ bne $s0, $t2, .L80024C50
|
||||
/* 025894 80024C94 AE02FFFC */ sw $v0, -4($s0)
|
||||
/* 025898 80024C98 3C108012 */ lui $s0, %hi(D_8011B0C8) # $s0, 0x8012
|
||||
/* 02589C 80024C9C 2610B0C8 */ addiu $s0, %lo(D_8011B0C8) # addiu $s0, $s0, -0x4f38
|
||||
/* 0258A0 80024CA0 AE000000 */ sw $zero, ($s0)
|
||||
/* 0258A4 80024CA4 24040001 */ li $a0, 1
|
||||
/* 0258A8 80024CA8 24050001 */ li $a1, 1
|
||||
/* 0258AC 80024CAC 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258B0 80024CB0 00003025 */ move $a2, $zero
|
||||
/* 0258B4 80024CB4 24040002 */ li $a0, 2
|
||||
/* 0258B8 80024CB8 24050002 */ li $a1, 2
|
||||
/* 0258BC 80024CBC 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258C0 80024CC0 00003025 */ move $a2, $zero
|
||||
/* 0258C4 80024CC4 240B0001 */ li $t3, 1
|
||||
/* 0258C8 80024CC8 AE0B0000 */ sw $t3, ($s0)
|
||||
/* 0258CC 80024CCC 24040001 */ li $a0, 1
|
||||
/* 0258D0 80024CD0 24050001 */ li $a1, 1
|
||||
/* 0258D4 80024CD4 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258D8 80024CD8 00003025 */ move $a2, $zero
|
||||
/* 0258DC 80024CDC 24040002 */ li $a0, 2
|
||||
/* 0258E0 80024CE0 24050002 */ li $a1, 2
|
||||
/* 0258E4 80024CE4 0C00B637 */ jal func_8002D8DC
|
||||
/* 0258E8 80024CE8 00003025 */ move $a2, $zero
|
||||
/* 0258EC 80024CEC AE000000 */ sw $zero, ($s0)
|
||||
/* 0258F0 80024CF0 3C02800E */ lui $v0, %hi(gCurrentLevelHeader2) # $v0, 0x800e
|
||||
/* 0258F4 80024CF4 8C42C91C */ lw $v0, %lo(gCurrentLevelHeader2)($v0)
|
||||
/* 0258F8 80024CF8 3C018012 */ lui $at, %hi(D_8011B0E1) # $at, 0x8012
|
||||
/* 0258FC 80024CFC 904C00B7 */ lbu $t4, 0xb7($v0)
|
||||
/* 025900 80024D00 00000000 */ nop
|
||||
/* 025904 80024D04 1180000D */ beqz $t4, .L80024D3C
|
||||
/* 025908 80024D08 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
/* 02590C 80024D0C 904D00B4 */ lbu $t5, 0xb4($v0)
|
||||
/* 025910 80024D10 8FA40030 */ lw $a0, 0x30($sp)
|
||||
/* 025914 80024D14 A02DB0E1 */ sb $t5, %lo(D_8011B0E1)($at)
|
||||
/* 025918 80024D18 904E00B5 */ lbu $t6, 0xb5($v0)
|
||||
/* 02591C 80024D1C 3C018012 */ lui $at, %hi(D_8011B0E2) # $at, 0x8012
|
||||
/* 025920 80024D20 A02EB0E2 */ sb $t6, %lo(D_8011B0E2)($at)
|
||||
/* 025924 80024D24 904F00B6 */ lbu $t7, 0xb6($v0)
|
||||
/* 025928 80024D28 3C018012 */ lui $at, %hi(D_8011B0E3) # $at, 0x8012
|
||||
/* 02592C 80024D2C 24840001 */ addiu $a0, $a0, 1
|
||||
/* 025930 80024D30 0C009544 */ jal func_80025510
|
||||
/* 025934 80024D34 A02FB0E3 */ sb $t7, %lo(D_8011B0E3)($at)
|
||||
/* 025938 80024D38 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
.L80024D3C:
|
||||
/* 02593C 80024D3C 8FB00014 */ lw $s0, 0x14($sp)
|
||||
/* 025940 80024D40 8FB10018 */ lw $s1, 0x18($sp)
|
||||
/* 025944 80024D44 8FB2001C */ lw $s2, 0x1c($sp)
|
||||
/* 025948 80024D48 8FB30020 */ lw $s3, 0x20($sp)
|
||||
/* 02594C 80024D4C 03E00008 */ jr $ra
|
||||
/* 025950 80024D50 27BD0028 */ addiu $sp, $sp, 0x28
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,318 +0,0 @@
|
||||
glabel render_level_segment
|
||||
/* 02A258 80029658 27BDFF50 */ addiu $sp, $sp, -0xb0
|
||||
/* 02A25C 8002965C 3C0E800E */ lui $t6, %hi(gCurrentLevelModel) # $t6, 0x800e
|
||||
/* 02A260 80029660 8DCEC918 */ lw $t6, %lo(gCurrentLevelModel)($t6)
|
||||
/* 02A264 80029664 AFBF003C */ sw $ra, 0x3c($sp)
|
||||
/* 02A268 80029668 AFBE0038 */ sw $fp, 0x38($sp)
|
||||
/* 02A26C 8002966C AFB70034 */ sw $s7, 0x34($sp)
|
||||
/* 02A270 80029670 AFB60030 */ sw $s6, 0x30($sp)
|
||||
/* 02A274 80029674 AFB5002C */ sw $s5, 0x2c($sp)
|
||||
/* 02A278 80029678 AFB40028 */ sw $s4, 0x28($sp)
|
||||
/* 02A27C 8002967C AFB30024 */ sw $s3, 0x24($sp)
|
||||
/* 02A280 80029680 AFB20020 */ sw $s2, 0x20($sp)
|
||||
/* 02A284 80029684 AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 02A288 80029688 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 02A28C 8002968C AFA500B4 */ sw $a1, 0xb4($sp)
|
||||
/* 02A290 80029690 0004C100 */ sll $t8, $a0, 4
|
||||
/* 02A294 80029694 8DCF0004 */ lw $t7, 4($t6)
|
||||
/* 02A298 80029698 0304C021 */ addu $t8, $t8, $a0
|
||||
/* 02A29C 8002969C 0018C080 */ sll $t8, $t8, 2
|
||||
/* 02A2A0 800296A0 01F8C821 */ addu $t9, $t7, $t8
|
||||
/* 02A2A4 800296A4 10A0000A */ beqz $a1, .L800296D0
|
||||
/* 02A2A8 800296A8 AFB900AC */ sw $t9, 0xac($sp)
|
||||
/* 02A2AC 800296AC 3C0C8012 */ lui $t4, %hi(D_8011D384) # $t4, 0x8012
|
||||
/* 02A2B0 800296B0 8D8CD384 */ lw $t4, %lo(D_8011D384)($t4)
|
||||
/* 02A2B4 800296B4 00000000 */ nop
|
||||
/* 02A2B8 800296B8 11800005 */ beqz $t4, .L800296D0
|
||||
/* 02A2BC 800296BC 00000000 */ nop
|
||||
/* 02A2C0 800296C0 0C02E48A */ jal func_800B9228
|
||||
/* 02A2C4 800296C4 03202025 */ move $a0, $t9
|
||||
/* 02A2C8 800296C8 10000002 */ b .L800296D4
|
||||
/* 02A2CC 800296CC AFA20078 */ sw $v0, 0x78($sp)
|
||||
.L800296D0:
|
||||
/* 02A2D0 800296D0 AFA00078 */ sw $zero, 0x78($sp)
|
||||
.L800296D4:
|
||||
/* 02A2D4 800296D4 8FAD00B4 */ lw $t5, 0xb4($sp)
|
||||
/* 02A2D8 800296D8 8FB800AC */ lw $t8, 0xac($sp)
|
||||
/* 02A2DC 800296DC 11A00007 */ beqz $t5, .L800296FC
|
||||
/* 02A2E0 800296E0 3C1E8000 */ lui $fp, 0x8000
|
||||
/* 02A2E4 800296E4 8FAE00AC */ lw $t6, 0xac($sp)
|
||||
/* 02A2E8 800296E8 00000000 */ nop
|
||||
/* 02A2EC 800296EC 85CF0020 */ lh $t7, 0x20($t6)
|
||||
/* 02A2F0 800296F0 91C20040 */ lbu $v0, 0x40($t6)
|
||||
/* 02A2F4 800296F4 10000004 */ b .L80029708
|
||||
/* 02A2F8 800296F8 AFAF0070 */ sw $t7, 0x70($sp)
|
||||
.L800296FC:
|
||||
/* 02A2FC 800296FC 930B0040 */ lbu $t3, 0x40($t8)
|
||||
/* 02A300 80029700 00001025 */ move $v0, $zero
|
||||
/* 02A304 80029704 AFAB0070 */ sw $t3, 0x70($sp)
|
||||
.L80029708:
|
||||
/* 02A308 80029708 8FAC0070 */ lw $t4, 0x70($sp)
|
||||
/* 02A30C 8002970C 00404825 */ move $t1, $v0
|
||||
/* 02A310 80029710 004C082A */ slt $at, $v0, $t4
|
||||
/* 02A314 80029714 102000EC */ beqz $at, .L80029AC8
|
||||
/* 02A318 80029718 00025080 */ sll $t2, $v0, 2
|
||||
/* 02A31C 8002971C 01425023 */ subu $t2, $t2, $v0
|
||||
/* 02A320 80029720 3C128012 */ lui $s2, %hi(gSceneCurrDisplayList) # $s2, 0x8012
|
||||
/* 02A324 80029724 2652B0A0 */ addiu $s2, %lo(gSceneCurrDisplayList) # addiu $s2, $s2, -0x4f60
|
||||
/* 02A328 80029728 000A5080 */ sll $t2, $t2, 2
|
||||
.L8002972C:
|
||||
/* 02A32C 8002972C 8FB900AC */ lw $t9, 0xac($sp)
|
||||
/* 02A330 80029730 00003025 */ move $a2, $zero
|
||||
/* 02A334 80029734 8F2D000C */ lw $t5, 0xc($t9)
|
||||
/* 02A338 80029738 00000000 */ nop
|
||||
/* 02A33C 8002973C 01AA2821 */ addu $a1, $t5, $t2
|
||||
/* 02A340 80029740 8CA30008 */ lw $v1, 8($a1)
|
||||
/* 02A344 80029744 00000000 */ nop
|
||||
/* 02A348 80029748 30620100 */ andi $v0, $v1, 0x100
|
||||
/* 02A34C 8002974C 144000DA */ bnez $v0, .L80029AB8
|
||||
/* 02A350 80029750 00608825 */ move $s1, $v1
|
||||
/* 02A354 80029754 90A20000 */ lbu $v0, ($a1)
|
||||
/* 02A358 80029758 240100FF */ li $at, 255
|
||||
/* 02A35C 8002975C 14410003 */ bne $v0, $at, .L8002976C
|
||||
/* 02A360 80029760 00002025 */ move $a0, $zero
|
||||
/* 02A364 80029764 1000000B */ b .L80029794
|
||||
/* 02A368 80029768 0000A825 */ move $s5, $zero
|
||||
.L8002976C:
|
||||
/* 02A36C 8002976C 3C0E800E */ lui $t6, %hi(gCurrentLevelModel) # $t6, 0x800e
|
||||
/* 02A370 80029770 8DCEC918 */ lw $t6, %lo(gCurrentLevelModel)($t6)
|
||||
/* 02A374 80029774 0002C0C0 */ sll $t8, $v0, 3
|
||||
/* 02A378 80029778 8DCF0000 */ lw $t7, ($t6)
|
||||
/* 02A37C 8002977C 00000000 */ nop
|
||||
/* 02A380 80029780 01F85821 */ addu $t3, $t7, $t8
|
||||
/* 02A384 80029784 8D750000 */ lw $s5, ($t3)
|
||||
/* 02A388 80029788 00000000 */ nop
|
||||
/* 02A38C 8002978C 86A60006 */ lh $a2, 6($s5)
|
||||
/* 02A390 80029790 00000000 */ nop
|
||||
.L80029794:
|
||||
/* 02A394 80029794 362C000A */ ori $t4, $s1, 0xa
|
||||
/* 02A398 80029798 31990010 */ andi $t9, $t4, 0x10
|
||||
/* 02A39C 8002979C 17200007 */ bnez $t9, .L800297BC
|
||||
/* 02A3A0 800297A0 01808825 */ move $s1, $t4
|
||||
/* 02A3A4 800297A4 318D0800 */ andi $t5, $t4, 0x800
|
||||
/* 02A3A8 800297A8 15A00004 */ bnez $t5, .L800297BC
|
||||
/* 02A3AC 800297AC 3C0E8012 */ lui $t6, %hi(D_8011B0FC) # $t6, 0x8012
|
||||
/* 02A3B0 800297B0 8DCEB0FC */ lw $t6, %lo(D_8011B0FC)($t6)
|
||||
/* 02A3B4 800297B4 00000000 */ nop
|
||||
/* 02A3B8 800297B8 018E8825 */ or $s1, $t4, $t6
|
||||
.L800297BC:
|
||||
/* 02A3BC 800297BC 30CF0004 */ andi $t7, $a2, 4
|
||||
/* 02A3C0 800297C0 8FAC00B4 */ lw $t4, 0xb4($sp)
|
||||
/* 02A3C4 800297C4 8FAD0078 */ lw $t5, 0x78($sp)
|
||||
/* 02A3C8 800297C8 15E00002 */ bnez $t7, .L800297D4
|
||||
/* 02A3CC 800297CC 32382000 */ andi $t8, $s1, 0x2000
|
||||
/* 02A3D0 800297D0 13000003 */ beqz $t8, .L800297E0
|
||||
.L800297D4:
|
||||
/* 02A3D4 800297D4 322B0800 */ andi $t3, $s1, 0x800
|
||||
/* 02A3D8 800297D8 11600002 */ beqz $t3, .L800297E4
|
||||
/* 02A3DC 800297DC 00000000 */ nop
|
||||
.L800297E0:
|
||||
/* 02A3E0 800297E0 24040001 */ li $a0, 1
|
||||
.L800297E4:
|
||||
/* 02A3E4 800297E4 11800004 */ beqz $t4, .L800297F8
|
||||
/* 02A3E8 800297E8 322E2000 */ andi $t6, $s1, 0x2000
|
||||
/* 02A3EC 800297EC 24840001 */ addiu $a0, $a0, 1
|
||||
/* 02A3F0 800297F0 30990001 */ andi $t9, $a0, 1
|
||||
/* 02A3F4 800297F4 03202025 */ move $a0, $t9
|
||||
.L800297F8:
|
||||
/* 02A3F8 800297F8 11A00004 */ beqz $t5, .L8002980C
|
||||
/* 02A3FC 800297FC 00000000 */ nop
|
||||
/* 02A400 80029800 11C00002 */ beqz $t6, .L8002980C
|
||||
/* 02A404 80029804 00000000 */ nop
|
||||
/* 02A408 80029808 00002025 */ move $a0, $zero
|
||||
.L8002980C:
|
||||
/* 02A40C 8002980C 108000AB */ beqz $a0, .L80029ABC
|
||||
/* 02A410 80029810 8FAF0070 */ lw $t7, 0x70($sp)
|
||||
/* 02A414 80029814 84A20002 */ lh $v0, 2($a1)
|
||||
/* 02A418 80029818 8FAB00AC */ lw $t3, 0xac($sp)
|
||||
/* 02A41C 8002981C 84A30004 */ lh $v1, 4($a1)
|
||||
/* 02A420 80029820 84AF000E */ lh $t7, 0xe($a1)
|
||||
/* 02A424 80029824 84B80010 */ lh $t8, 0x10($a1)
|
||||
/* 02A428 80029828 90A70007 */ lbu $a3, 7($a1)
|
||||
/* 02A42C 8002982C 0002C880 */ sll $t9, $v0, 2
|
||||
/* 02A430 80029830 8D6C0000 */ lw $t4, ($t3)
|
||||
/* 02A434 80029834 8D6D0004 */ lw $t5, 4($t3)
|
||||
/* 02A438 80029838 00112703 */ sra $a0, $s1, 0x1c
|
||||
/* 02A43C 8002983C 0322C821 */ addu $t9, $t9, $v0
|
||||
/* 02A440 80029840 01E29823 */ subu $s3, $t7, $v0
|
||||
/* 02A444 80029844 0303A023 */ subu $s4, $t8, $v1
|
||||
/* 02A448 80029848 0019C840 */ sll $t9, $t9, 1
|
||||
/* 02A44C 8002984C 30980007 */ andi $t8, $a0, 7
|
||||
/* 02A450 80029850 00037100 */ sll $t6, $v1, 4
|
||||
/* 02A454 80029854 00077B80 */ sll $t7, $a3, 0xe
|
||||
/* 02A458 80029858 01E03825 */ move $a3, $t7
|
||||
/* 02A45C 8002985C 0199B021 */ addu $s6, $t4, $t9
|
||||
/* 02A460 80029860 13000018 */ beqz $t8, .L800298C4
|
||||
/* 02A464 80029864 01AEB821 */ addu $s7, $t5, $t6
|
||||
/* 02A468 80029868 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A46C 8002986C 3C19FB00 */ lui $t9, 0xfb00
|
||||
/* 02A470 80029870 260C0008 */ addiu $t4, $s0, 8
|
||||
/* 02A474 80029874 AE4C0000 */ sw $t4, ($s2)
|
||||
/* 02A478 80029878 3C0B800E */ lui $t3, %hi(gCurrentLevelHeader2) # $t3, 0x800e
|
||||
/* 02A47C 8002987C AE190000 */ sw $t9, ($s0)
|
||||
/* 02A480 80029880 8D6BC91C */ lw $t3, %lo(gCurrentLevelHeader2)($t3)
|
||||
/* 02A484 80029884 00186880 */ sll $t5, $t8, 2
|
||||
/* 02A488 80029888 016D7021 */ addu $t6, $t3, $t5
|
||||
/* 02A48C 8002988C 8DC20070 */ lw $v0, 0x70($t6)
|
||||
/* 02A490 80029890 00000000 */ nop
|
||||
/* 02A494 80029894 90590010 */ lbu $t9, 0x10($v0)
|
||||
/* 02A498 80029898 90580013 */ lbu $t8, 0x13($v0)
|
||||
/* 02A49C 8002989C 00195E00 */ sll $t3, $t9, 0x18
|
||||
/* 02A4A0 800298A0 904F0011 */ lbu $t7, 0x11($v0)
|
||||
/* 02A4A4 800298A4 030B6825 */ or $t5, $t8, $t3
|
||||
/* 02A4A8 800298A8 904B0012 */ lbu $t3, 0x12($v0)
|
||||
/* 02A4AC 800298AC 000F6400 */ sll $t4, $t7, 0x10
|
||||
/* 02A4B0 800298B0 01ACC825 */ or $t9, $t5, $t4
|
||||
/* 02A4B4 800298B4 000B7200 */ sll $t6, $t3, 8
|
||||
/* 02A4B8 800298B8 032E7825 */ or $t7, $t9, $t6
|
||||
/* 02A4BC 800298BC 10000008 */ b .L800298E0
|
||||
/* 02A4C0 800298C0 AE0F0004 */ sw $t7, 4($s0)
|
||||
.L800298C4:
|
||||
/* 02A4C4 800298C4 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A4C8 800298C8 3C0CFB00 */ lui $t4, 0xfb00
|
||||
/* 02A4CC 800298CC 260D0008 */ addiu $t5, $s0, 8
|
||||
/* 02A4D0 800298D0 AE4D0000 */ sw $t5, ($s2)
|
||||
/* 02A4D4 800298D4 2418FF00 */ li $t8, -256
|
||||
/* 02A4D8 800298D8 AE180004 */ sw $t8, 4($s0)
|
||||
/* 02A4DC 800298DC AE0C0000 */ sw $t4, ($s0)
|
||||
.L800298E0:
|
||||
/* 02A4E0 800298E0 00115B40 */ sll $t3, $s1, 0xd
|
||||
/* 02A4E4 800298E4 05610046 */ bgez $t3, .L80029A00
|
||||
/* 02A4E8 800298E8 02402025 */ move $a0, $s2
|
||||
/* 02A4EC 800298EC 3C19800E */ lui $t9, %hi(gCurrentLevelHeader2) # $t9, 0x800e
|
||||
/* 02A4F0 800298F0 8F39C91C */ lw $t9, %lo(gCurrentLevelHeader2)($t9)
|
||||
/* 02A4F4 800298F4 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A4F8 800298F8 8F2E00AC */ lw $t6, 0xac($t9)
|
||||
/* 02A4FC 800298FC 260F0008 */ addiu $t7, $s0, 8
|
||||
/* 02A500 80029900 8DC80008 */ lw $t0, 8($t6)
|
||||
/* 02A504 80029904 AE4F0000 */ sw $t7, ($s2)
|
||||
/* 02A508 80029908 310200FF */ andi $v0, $t0, 0xff
|
||||
/* 02A50C 8002990C 00026600 */ sll $t4, $v0, 0x18
|
||||
/* 02A510 80029910 0002C400 */ sll $t8, $v0, 0x10
|
||||
/* 02A514 80029914 01985825 */ or $t3, $t4, $t8
|
||||
/* 02A518 80029918 0002CA00 */ sll $t9, $v0, 8
|
||||
/* 02A51C 8002991C 01797025 */ or $t6, $t3, $t9
|
||||
/* 02A520 80029920 01C27825 */ or $t7, $t6, $v0
|
||||
/* 02A524 80029924 3C0DFA00 */ lui $t5, 0xfa00
|
||||
/* 02A528 80029928 AE0D0000 */ sw $t5, ($s0)
|
||||
/* 02A52C 8002992C AE0F0004 */ sw $t7, 4($s0)
|
||||
/* 02A530 80029930 AFAA0040 */ sw $t2, 0x40($sp)
|
||||
/* 02A534 80029934 AFA900A8 */ sw $t1, 0xa8($sp)
|
||||
/* 02A538 80029938 02402025 */ move $a0, $s2
|
||||
/* 02A53C 8002993C 02A02825 */ move $a1, $s5
|
||||
/* 02A540 80029940 0C01EE97 */ jal func_8007BA5C
|
||||
/* 02A544 80029944 02203025 */ move $a2, $s1
|
||||
/* 02A548 80029948 02DE1821 */ addu $v1, $s6, $fp
|
||||
/* 02A54C 8002994C 266CFFFF */ addiu $t4, $s3, -1
|
||||
/* 02A550 80029950 000CC0C0 */ sll $t8, $t4, 3
|
||||
/* 02A554 80029954 306B0006 */ andi $t3, $v1, 6
|
||||
/* 02A558 80029958 030BC825 */ or $t9, $t8, $t3
|
||||
/* 02A55C 8002995C 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A560 80029960 001360C0 */ sll $t4, $s3, 3
|
||||
/* 02A564 80029964 0193C021 */ addu $t8, $t4, $s3
|
||||
/* 02A568 80029968 332E00FF */ andi $t6, $t9, 0xff
|
||||
/* 02A56C 8002996C 000E7C00 */ sll $t7, $t6, 0x10
|
||||
/* 02A570 80029970 00185840 */ sll $t3, $t8, 1
|
||||
/* 02A574 80029974 260D0008 */ addiu $t5, $s0, 8
|
||||
/* 02A578 80029978 AE4D0000 */ sw $t5, ($s2)
|
||||
/* 02A57C 8002997C 25790008 */ addiu $t9, $t3, 8
|
||||
/* 02A580 80029980 3C010400 */ lui $at, 0x400
|
||||
/* 02A584 80029984 8FA900A8 */ lw $t1, 0xa8($sp)
|
||||
/* 02A588 80029988 8FAA0040 */ lw $t2, 0x40($sp)
|
||||
/* 02A58C 8002998C 01E16825 */ or $t5, $t7, $at
|
||||
/* 02A590 80029990 332EFFFF */ andi $t6, $t9, 0xffff
|
||||
/* 02A594 80029994 01AE7825 */ or $t7, $t5, $t6
|
||||
/* 02A598 80029998 AE0F0000 */ sw $t7, ($s0)
|
||||
/* 02A59C 8002999C AE030004 */ sw $v1, 4($s0)
|
||||
/* 02A5A0 800299A0 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A5A4 800299A4 2698FFFF */ addiu $t8, $s4, -1
|
||||
/* 02A5A8 800299A8 00185900 */ sll $t3, $t8, 4
|
||||
/* 02A5AC 800299AC 35790001 */ ori $t9, $t3, 1
|
||||
/* 02A5B0 800299B0 260C0008 */ addiu $t4, $s0, 8
|
||||
/* 02A5B4 800299B4 AE4C0000 */ sw $t4, ($s2)
|
||||
/* 02A5B8 800299B8 332D00FF */ andi $t5, $t9, 0xff
|
||||
/* 02A5BC 800299BC 000D7400 */ sll $t6, $t5, 0x10
|
||||
/* 02A5C0 800299C0 00146100 */ sll $t4, $s4, 4
|
||||
/* 02A5C4 800299C4 3C010500 */ lui $at, 0x500
|
||||
/* 02A5C8 800299C8 01C17825 */ or $t7, $t6, $at
|
||||
/* 02A5CC 800299CC 3198FFFF */ andi $t8, $t4, 0xffff
|
||||
/* 02A5D0 800299D0 01F85825 */ or $t3, $t7, $t8
|
||||
/* 02A5D4 800299D4 02FEC821 */ addu $t9, $s7, $fp
|
||||
/* 02A5D8 800299D8 AE190004 */ sw $t9, 4($s0)
|
||||
/* 02A5DC 800299DC AE0B0000 */ sw $t3, ($s0)
|
||||
/* 02A5E0 800299E0 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A5E4 800299E4 240CFFFF */ li $t4, -1
|
||||
/* 02A5E8 800299E8 260D0008 */ addiu $t5, $s0, 8
|
||||
/* 02A5EC 800299EC AE4D0000 */ sw $t5, ($s2)
|
||||
/* 02A5F0 800299F0 3C0EFA00 */ lui $t6, 0xfa00
|
||||
/* 02A5F4 800299F4 AE0E0000 */ sw $t6, ($s0)
|
||||
/* 02A5F8 800299F8 1000002F */ b .L80029AB8
|
||||
/* 02A5FC 800299FC AE0C0004 */ sw $t4, 4($s0)
|
||||
.L80029A00:
|
||||
/* 02A600 80029A00 02A02825 */ move $a1, $s5
|
||||
/* 02A604 80029A04 02203025 */ move $a2, $s1
|
||||
/* 02A608 80029A08 AFA900A8 */ sw $t1, 0xa8($sp)
|
||||
/* 02A60C 80029A0C 0C01ED3A */ jal load_and_set_texture
|
||||
/* 02A610 80029A10 AFAA0040 */ sw $t2, 0x40($sp)
|
||||
/* 02A614 80029A14 8FA900A8 */ lw $t1, 0xa8($sp)
|
||||
/* 02A618 80029A18 8FAA0040 */ lw $t2, 0x40($sp)
|
||||
/* 02A61C 80029A1C 16A00002 */ bnez $s5, .L80029A28
|
||||
/* 02A620 80029A20 24110001 */ li $s1, 1
|
||||
/* 02A624 80029A24 00008825 */ move $s1, $zero
|
||||
.L80029A28:
|
||||
/* 02A628 80029A28 02DE1821 */ addu $v1, $s6, $fp
|
||||
/* 02A62C 80029A2C 2678FFFF */ addiu $t8, $s3, -1
|
||||
/* 02A630 80029A30 001858C0 */ sll $t3, $t8, 3
|
||||
/* 02A634 80029A34 30790006 */ andi $t9, $v1, 6
|
||||
/* 02A638 80029A38 01796825 */ or $t5, $t3, $t9
|
||||
/* 02A63C 80029A3C 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A640 80029A40 0013C0C0 */ sll $t8, $s3, 3
|
||||
/* 02A644 80029A44 03135821 */ addu $t3, $t8, $s3
|
||||
/* 02A648 80029A48 31AE00FF */ andi $t6, $t5, 0xff
|
||||
/* 02A64C 80029A4C 000E6400 */ sll $t4, $t6, 0x10
|
||||
/* 02A650 80029A50 000BC840 */ sll $t9, $t3, 1
|
||||
/* 02A654 80029A54 260F0008 */ addiu $t7, $s0, 8
|
||||
/* 02A658 80029A58 AE4F0000 */ sw $t7, ($s2)
|
||||
/* 02A65C 80029A5C 272D0008 */ addiu $t5, $t9, 8
|
||||
/* 02A660 80029A60 3C010400 */ lui $at, 0x400
|
||||
/* 02A664 80029A64 01817825 */ or $t7, $t4, $at
|
||||
/* 02A668 80029A68 31AEFFFF */ andi $t6, $t5, 0xffff
|
||||
/* 02A66C 80029A6C 01EE6025 */ or $t4, $t7, $t6
|
||||
/* 02A670 80029A70 AE0C0000 */ sw $t4, ($s0)
|
||||
/* 02A674 80029A74 AE030004 */ sw $v1, 4($s0)
|
||||
/* 02A678 80029A78 8E500000 */ lw $s0, ($s2)
|
||||
/* 02A67C 80029A7C 268BFFFF */ addiu $t3, $s4, -1
|
||||
/* 02A680 80029A80 000BC900 */ sll $t9, $t3, 4
|
||||
/* 02A684 80029A84 03316825 */ or $t5, $t9, $s1
|
||||
/* 02A688 80029A88 26180008 */ addiu $t8, $s0, 8
|
||||
/* 02A68C 80029A8C AE580000 */ sw $t8, ($s2)
|
||||
/* 02A690 80029A90 31AF00FF */ andi $t7, $t5, 0xff
|
||||
/* 02A694 80029A94 000F7400 */ sll $t6, $t7, 0x10
|
||||
/* 02A698 80029A98 0014C100 */ sll $t8, $s4, 4
|
||||
/* 02A69C 80029A9C 3C010500 */ lui $at, 0x500
|
||||
/* 02A6A0 80029AA0 01C16025 */ or $t4, $t6, $at
|
||||
/* 02A6A4 80029AA4 330BFFFF */ andi $t3, $t8, 0xffff
|
||||
/* 02A6A8 80029AA8 018BC825 */ or $t9, $t4, $t3
|
||||
/* 02A6AC 80029AAC 02FE6821 */ addu $t5, $s7, $fp
|
||||
/* 02A6B0 80029AB0 AE0D0004 */ sw $t5, 4($s0)
|
||||
/* 02A6B4 80029AB4 AE190000 */ sw $t9, ($s0)
|
||||
.L80029AB8:
|
||||
/* 02A6B8 80029AB8 8FAF0070 */ lw $t7, 0x70($sp)
|
||||
.L80029ABC:
|
||||
/* 02A6BC 80029ABC 25290001 */ addiu $t1, $t1, 1
|
||||
/* 02A6C0 80029AC0 152FFF1A */ bne $t1, $t7, .L8002972C
|
||||
/* 02A6C4 80029AC4 254A000C */ addiu $t2, $t2, 0xc
|
||||
.L80029AC8:
|
||||
/* 02A6C8 80029AC8 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 02A6CC 80029ACC 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 02A6D0 80029AD0 8FB1001C */ lw $s1, 0x1c($sp)
|
||||
/* 02A6D4 80029AD4 8FB20020 */ lw $s2, 0x20($sp)
|
||||
/* 02A6D8 80029AD8 8FB30024 */ lw $s3, 0x24($sp)
|
||||
/* 02A6DC 80029ADC 8FB40028 */ lw $s4, 0x28($sp)
|
||||
/* 02A6E0 80029AE0 8FB5002C */ lw $s5, 0x2c($sp)
|
||||
/* 02A6E4 80029AE4 8FB60030 */ lw $s6, 0x30($sp)
|
||||
/* 02A6E8 80029AE8 8FB70034 */ lw $s7, 0x34($sp)
|
||||
/* 02A6EC 80029AEC 8FBE0038 */ lw $fp, 0x38($sp)
|
||||
/* 02A6F0 80029AF0 03E00008 */ jr $ra
|
||||
/* 02A6F4 80029AF4 27BD00B0 */ addiu $sp, $sp, 0xb0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+15
-4
@@ -39,6 +39,17 @@ typedef struct Vec3s {
|
||||
};
|
||||
} Vec3s;
|
||||
|
||||
typedef struct Vec3i {
|
||||
union {
|
||||
struct {
|
||||
s32 x;
|
||||
s32 y;
|
||||
s32 z;
|
||||
};
|
||||
s32 i[3];
|
||||
};
|
||||
} Vec3i;
|
||||
|
||||
/* Size: 0x20 bytes */
|
||||
typedef struct TextureHeader {
|
||||
/* 0x00 */ u8 width;
|
||||
@@ -362,8 +373,8 @@ typedef struct LevelHeader {
|
||||
/* 0xA2 */ s8 unkA2;
|
||||
/* 0xA3 */ s8 unkA3;
|
||||
/* 0xA4 */ TextureHeader *unkA4;
|
||||
/* 0xA8 */ u16 unkA8;
|
||||
/* 0xAA */ u16 unkAA;
|
||||
/* 0xA8 */ s16 unkA8;
|
||||
/* 0xAA */ s16 unkAA;
|
||||
/* 0xAC */ PulsatingLightData *pulseLightData;
|
||||
|
||||
/* 0xB0 */ s16 unkB0;
|
||||
@@ -377,7 +388,7 @@ typedef struct LevelHeader {
|
||||
/* 0xB9 */ u8 unkB9;
|
||||
/* 0xBA */ s16 unkBA;
|
||||
/* 0xBC */ u8 unkBC;
|
||||
/* 0xBD */ u8 unkBD;
|
||||
/* 0xBD */ s8 unkBD;
|
||||
/* 0xBE */ u8 unkBE;
|
||||
/* 0xBF */ u8 unkBF;
|
||||
/* 0xC0 */ u8 unkC0;
|
||||
@@ -534,7 +545,7 @@ typedef struct LevelModelSegment {
|
||||
s16 *unk34;
|
||||
/* 0x38 */ s16 unk38;
|
||||
u8 pad3A[6];
|
||||
/* 0x40 */ u8 unk40;
|
||||
/* 0x40 */ u8 numberofOpaqueBatches;
|
||||
u8 pad41[0x3];
|
||||
} LevelModelSegment;
|
||||
|
||||
|
||||
+1
-1
@@ -39,7 +39,7 @@ void render_borders_for_multiplayer(Gfx **dlist) {
|
||||
case VIEWPORTS_COUNT_3_PLAYERS:
|
||||
levelHeader = get_current_level_header();
|
||||
// Draw black square in the bottom-right corner.
|
||||
if (get_multiplayer_hud_setting() || (levelHeader->race_type & RACETYPE_CHALLENGE)) {
|
||||
if (get_hud_setting() || (levelHeader->race_type & RACETYPE_CHALLENGE)) {
|
||||
gDPFillRectangle((*dlist)++, width >> 1, height >> 1, width, height);
|
||||
}
|
||||
// There is no break statement here. This is intentional.
|
||||
|
||||
+17
-14
@@ -106,7 +106,7 @@ s16 gButtonMask = 0xFFFF;
|
||||
ObjectSegment gActiveCameraStack[8];
|
||||
s32 gNumberOfViewports;
|
||||
s32 gActiveCameraID;
|
||||
s32 gOjbectRenderStackCap;
|
||||
s32 gViewportCap;
|
||||
UNUSED s32 D_80120CEC;
|
||||
ObjectTransform D_80120CF0;
|
||||
s32 D_80120D08;
|
||||
@@ -234,6 +234,9 @@ UNUSED Matrix *func_80066204(void) {
|
||||
return &D_801210A0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the number of active viewports.
|
||||
*/
|
||||
s32 get_viewport_count(void) {
|
||||
return gNumberOfViewports;
|
||||
}
|
||||
@@ -256,8 +259,8 @@ void func_80066230(Gfx **dlist, MatrixS **mats) {
|
||||
f32 sp1C;
|
||||
f32 sp18;
|
||||
|
||||
set_active_viewports_and_object_stack_cap(0);
|
||||
set_object_stack_pos(0);
|
||||
set_active_viewports_and_max(0);
|
||||
set_active_camera(0);
|
||||
someStruct = get_active_camera_segment();
|
||||
sp2A = someStruct->trans.y_rotation;
|
||||
sp28 = someStruct->trans.x_rotation;
|
||||
@@ -273,7 +276,7 @@ void func_80066230(Gfx **dlist, MatrixS **mats) {
|
||||
someStruct->trans.x_position = 0.0f;
|
||||
someStruct->trans.y_position = 0.0f;
|
||||
someStruct->trans.z_position = 0.0f;
|
||||
set_and_normalize_D_8011AFE8(0.0f, 0.0f, -1.0f);
|
||||
update_envmap_position(0.0f, 0.0f, -1.0f);
|
||||
func_80066CDC(dlist, mats);
|
||||
someStruct->unk38.half.unk38 = sp24;
|
||||
someStruct->trans.y_rotation = sp2A;
|
||||
@@ -352,11 +355,11 @@ void disable_cutscene_camera(void) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the cap for the object render stack.
|
||||
* Sets the cap for the viewports. Usually reflecting how many there are.
|
||||
* If the number passed is within 1-4, then the stack cap is set to
|
||||
* how many active viewports there are.
|
||||
*/
|
||||
s32 set_active_viewports_and_object_stack_cap(s32 num) {
|
||||
s32 set_active_viewports_and_max(s32 num) {
|
||||
if (num >= 0 && num < 4) {
|
||||
gNumberOfViewports = num;
|
||||
} else {
|
||||
@@ -364,29 +367,29 @@ s32 set_active_viewports_and_object_stack_cap(s32 num) {
|
||||
}
|
||||
switch (gNumberOfViewports) {
|
||||
case VIEWPORTS_COUNT_1_PLAYER:
|
||||
gOjbectRenderStackCap = 1;
|
||||
gViewportCap = 1;
|
||||
break;
|
||||
case VIEWPORTS_COUNT_2_PLAYERS:
|
||||
gOjbectRenderStackCap = 2;
|
||||
gViewportCap = 2;
|
||||
break;
|
||||
case VIEWPORTS_COUNT_3_PLAYERS:
|
||||
gOjbectRenderStackCap = 3;
|
||||
gViewportCap = 3;
|
||||
break;
|
||||
case VIEWPORTS_COUNT_4_PLAYERS:
|
||||
gOjbectRenderStackCap = 4;
|
||||
gViewportCap = 4;
|
||||
break;
|
||||
}
|
||||
if (gActiveCameraID >= gOjbectRenderStackCap) {
|
||||
if (gActiveCameraID >= gViewportCap) {
|
||||
gActiveCameraID = 0;
|
||||
}
|
||||
return gOjbectRenderStackCap;
|
||||
return gViewportCap;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the object stack pos to the passed number.
|
||||
* Sets the active viewport ID to the passed number.
|
||||
* If it's not within 1-4, then it's set to 0.
|
||||
*/
|
||||
void set_object_stack_pos(s32 num) {
|
||||
void set_active_camera(s32 num) {
|
||||
if (num >= 0 && num < 4) {
|
||||
gActiveCameraID = num;
|
||||
} else {
|
||||
|
||||
+2
-2
@@ -103,8 +103,8 @@ void func_800663DC(s32 xPos, s32 yPos, s32 zPos, s32 arg3, s32 arg4, s32 arg5);
|
||||
void write_to_object_render_stack(s32 arg0, f32 xPos, f32 yPos, f32 zPos, s16 arg4, s16 arg5, s16 arg6);
|
||||
void disable_cutscene_camera(void);
|
||||
s8 check_if_showing_cutscene_camera(void);
|
||||
s32 set_active_viewports_and_object_stack_cap(s32 arg0);
|
||||
void set_object_stack_pos(s32 arg0);
|
||||
s32 set_active_viewports_and_max(s32 arg0);
|
||||
void set_active_camera(s32 arg0);
|
||||
void func_80066818(s32 viewPortIndex, s32 arg1);
|
||||
void func_80066894(s32 viewPortIndex, s32 arg1);
|
||||
s32 func_80066910(s32 viewPortIndex);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user