mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
We are collecting silver coins in Treasure Caves. (1/8 silver coins) (#422)
* 3 new matches * Fix arrays * Get llcvt compiling finally * Finsh 2 more libultra files * Match func_80022E18 * Match func_8001BF20 * func_8001CD28 NON_MATCHING * Match func_80026C14 * Match func_8005FF40 * Match func_80061A00 * Match func_8005FCD0 * Update score * Fix NON_EQUIVALENT builds
This commit is contained in:
@@ -276,8 +276,12 @@ $(BUILD_DIR)/lib/src/os/osCreatePiManager.o: OPT_FLAGS := -O2 -Xfullwarn
|
||||
$(BUILD_DIR)/lib/src/os/osMotor.o: OPT_FLAGS := -O2 -Xfullwarn
|
||||
$(BUILD_DIR)/lib/src/libc/xprintf.o : OPT_FLAGS := -O3
|
||||
$(BUILD_DIR)/lib/src/al/env.o: OPT_FLAGS := -g
|
||||
#$(BUILD_DIR)/lib/src/libc/llcvt.o: OPT_FLAGS :=
|
||||
#$(BUILD_DIR)/lib/src/libc/llcvt.o: MIPSISET := -mips3 32
|
||||
$(BUILD_DIR)/lib/src/libc/llcvt.o: OPT_FLAGS := -O1
|
||||
$(BUILD_DIR)/lib/src/libc/llcvt.o: MIPSISET := -mips3 -32
|
||||
$(BUILD_DIR)/lib/src/libc/ll.o: OPT_FLAGS := -O1
|
||||
$(BUILD_DIR)/lib/src/libc/ll.o: MIPSISET := -mips3 -32
|
||||
$(BUILD_DIR)/lib/src/libc/ldiv.o: OPT_FLAGS := -O3
|
||||
$(BUILD_DIR)/lib/src/libc/ldiv.o: MIPSISET := -mips2
|
||||
|
||||
$(BUILD_DIR)/lib/%.o: MIPSISET := -mips2
|
||||
$(BUILD_DIR)/lib/src/mips1/%.o: MIPSISET := -mips1
|
||||
@@ -377,6 +381,16 @@ $(BUILD_DIR)/%.o: %.c | $(ALL_ASSETS_BUILT)
|
||||
$(call print,Compiling:,$<,$@)
|
||||
@$(CC_CHECK) $(CC_CHECK_CFLAGS) -MMD -MP -MT $@ -MF $(BUILD_DIR)/$*.d $<
|
||||
$(V)$(CC) $(CFLAGS) -o $@ $<
|
||||
|
||||
$(BUILD_DIR)/lib/src/libc/llcvt.o: lib/src/libc/llcvt.c | $(ALL_ASSETS_BUILT)
|
||||
$(call print,Compiling mips3:,$<,$@)
|
||||
$(V)$(CC) $(CFLAGS) -o $@ $<
|
||||
$(V)python3 tools/python/patchmips3.py $@ || rm $@
|
||||
|
||||
$(BUILD_DIR)/lib/src/libc/ll.o: lib/src/libc/ll.c | $(ALL_ASSETS_BUILT)
|
||||
$(call print,Compiling mips3:,$<,$@)
|
||||
$(V)$(CC) $(CFLAGS) -o $@ $<
|
||||
$(V)python3 tools/python/patchmips3.py $@ || rm $@
|
||||
|
||||
$(BUILD_DIR)/%.o: $(BUILD_DIR)/%.c | $(ALL_ASSETS_BUILT)
|
||||
$(call print,Compiling:,$<,$@)
|
||||
|
||||
@@ -5,11 +5,11 @@ This repo contains a work-in-progress decompilation of Diddy Kong Racing for the
|
||||
Currently, only the US 1.0 version of the game is supported. US 1.1, EU 1.0, EU 1.1, and JP are not supported at this time.
|
||||
|
||||
<!-- README_SCORE_SUMMARY_BEGIN -->
|
||||
As of October 11, 2023, this is our current score:
|
||||
As of October 15, 2023, this is our current score:
|
||||
|
||||
    Decomp progress: 58.51%
|
||||
    Decomp progress: 59.35%
|
||||
|
||||
    Documentation progress: 33.35%
|
||||
    Documentation progress: 33.38%
|
||||
<!-- README_SCORE_SUMMARY_END -->
|
||||
|
||||
---
|
||||
@@ -128,31 +128,31 @@ s32 is_drumstick_unlocked(void) {
|
||||
```
|
||||
|
||||
<!-- README_SCORE_BEGIN -->
|
||||
As of October 11th, 2023, this is our current score:
|
||||
As of October 15th, 2023, this is our current score:
|
||||
```
|
||||
===================================================================
|
||||
ADVENTURE ONE (ASM -> C Decompilation)
|
||||
------------------------- 58.51% Complete -------------------------
|
||||
# Decompiled functions: 1613
|
||||
# GLOBAL_ASM remaining: 225
|
||||
# NON_MATCHING functions: 10
|
||||
# NON_EQUIVALENT WIP functions: 58
|
||||
--------------------------- Game Status ---------------------------
|
||||
Balloons: 28/47, Keys: 3/4, Trophies: 2/5
|
||||
T.T. Amulets: 3/4, Wizpig Amulets: 2/4
|
||||
-------------------------------------------------------------------
|
||||
We are collecting silver coins in Pirate Lagoon. (5/8 silver coins)
|
||||
===================================================================
|
||||
====================================================================
|
||||
ADVENTURE ONE (ASM -> C Decompilation)
|
||||
------------------------- 59.35% Complete --------------------------
|
||||
# Decompiled functions: 1630
|
||||
# GLOBAL_ASM remaining: 212
|
||||
# NON_MATCHING functions: 10
|
||||
# NON_EQUIVALENT WIP functions: 57
|
||||
--------------------------- Game Status ----------------------------
|
||||
Balloons: 29/47, Keys: 3/4, Trophies: 2/5
|
||||
T.T. Amulets: 3/4, Wizpig Amulets: 2/4
|
||||
--------------------------------------------------------------------
|
||||
We are collecting silver coins in Treasure Caves. (1/8 silver coins)
|
||||
====================================================================
|
||||
ADVENTURE TWO (Cleanup & Documentation)
|
||||
------------------------- 33.35% Complete -------------------------
|
||||
------------------------- 33.38% Complete --------------------------
|
||||
# Documented functions: 740
|
||||
# Undocumented remaining: 830
|
||||
--------------------------- Game Status ---------------------------
|
||||
# Undocumented remaining: 827
|
||||
--------------------------- Game Status ----------------------------
|
||||
Balloons: 17/47, Keys: 2/4, Trophies: 1/5
|
||||
T.T. Amulets: 1/4, Wizpig Amulets: 1/4
|
||||
-------------------------------------------------------------------
|
||||
T.T. Amulets: 1/4, Wizpig Amulets: 1/4
|
||||
--------------------------------------------------------------------
|
||||
We are battling in Icicle Pyramid. (3 opponents remain)
|
||||
===================================================================
|
||||
====================================================================
|
||||
```
|
||||
<!-- README_SCORE_END -->
|
||||
|
||||
|
||||
@@ -1,165 +0,0 @@
|
||||
glabel func_80081C04
|
||||
/* 082804 80081C04 27BDFFA0 */ addiu $sp, $sp, -0x60
|
||||
/* 082808 80081C08 AFB40028 */ sw $s4, 0x28($sp)
|
||||
/* 08280C 80081C0C AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 082810 80081C10 00A0A025 */ move $s4, $a1
|
||||
/* 082814 80081C14 AFB30024 */ sw $s3, 0x24($sp)
|
||||
/* 082818 80081C18 AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 08281C 80081C1C 3C103B9A */ lui $s0, (0x3B9ACA00 >> 16)
|
||||
/* 082820 80081C20 00808825 */ move $s1, $a0
|
||||
/* 082824 80081C24 AFBF002C */ sw $ra, 0x2c($sp)
|
||||
/* 082828 80081C28 AFB20020 */ sw $s2, 0x20($sp)
|
||||
/* 08282C 80081C2C 00009825 */ move $s3, $zero
|
||||
/* 082830 80081C30 3610CA00 */ ori $s0, $s0, (0x3B9ACA00 & 0xFFFF)
|
||||
/* 082834 80081C34 00004025 */ move $t0, $zero
|
||||
/* 082838 80081C38 2405000A */ li $a1, 10
|
||||
/* 08283C 80081C3C 27A30038 */ addiu $v1, $sp, 0x38
|
||||
/* 082840 80081C40 0230082A */ slt $at, $s1, $s0
|
||||
.L80081C44:
|
||||
/* 082844 80081C44 14200016 */ bnez $at, .L80081CA0
|
||||
/* 082848 80081C48 00000000 */ nop
|
||||
/* 08284C 80081C4C 0230001A */ div $zero, $s1, $s0
|
||||
/* 082850 80081C50 26730001 */ addiu $s3, $s3, 1
|
||||
/* 082854 80081C54 16000002 */ bnez $s0, .L80081C60
|
||||
/* 082858 80081C58 00000000 */ nop
|
||||
/* 08285C 80081C5C 0007000D */ break 7
|
||||
.L80081C60:
|
||||
/* 082860 80081C60 2401FFFF */ li $at, -1
|
||||
/* 082864 80081C64 16010004 */ bne $s0, $at, .L80081C78
|
||||
/* 082868 80081C68 3C018000 */ lui $at, 0x8000
|
||||
/* 08286C 80081C6C 16210002 */ bne $s1, $at, .L80081C78
|
||||
/* 082870 80081C70 00000000 */ nop
|
||||
/* 082874 80081C74 0006000D */ break 6
|
||||
.L80081C78:
|
||||
/* 082878 80081C78 24630001 */ addiu $v1, $v1, 1
|
||||
/* 08287C 80081C7C 24080001 */ li $t0, 1
|
||||
/* 082880 80081C80 00001012 */ mflo $v0
|
||||
/* 082884 80081C84 00402025 */ move $a0, $v0
|
||||
/* 082888 80081C88 A062FFFF */ sb $v0, -1($v1)
|
||||
/* 08288C 80081C8C 00500019 */ multu $v0, $s0
|
||||
/* 082890 80081C90 00007012 */ mflo $t6
|
||||
/* 082894 80081C94 022E8823 */ subu $s1, $s1, $t6
|
||||
/* 082898 80081C98 10000006 */ b .L80081CB4
|
||||
/* 08289C 80081C9C 00000000 */ nop
|
||||
.L80081CA0:
|
||||
/* 0828A0 80081CA0 11000004 */ beqz $t0, .L80081CB4
|
||||
/* 0828A4 80081CA4 00000000 */ nop
|
||||
/* 0828A8 80081CA8 A0600000 */ sb $zero, ($v1)
|
||||
/* 0828AC 80081CAC 26730001 */ addiu $s3, $s3, 1
|
||||
/* 0828B0 80081CB0 24630001 */ addiu $v1, $v1, 1
|
||||
.L80081CB4:
|
||||
/* 0828B4 80081CB4 0205001A */ div $zero, $s0, $a1
|
||||
/* 0828B8 80081CB8 14A00002 */ bnez $a1, .L80081CC4
|
||||
/* 0828BC 80081CBC 00000000 */ nop
|
||||
/* 0828C0 80081CC0 0007000D */ break 7
|
||||
.L80081CC4:
|
||||
/* 0828C4 80081CC4 2401FFFF */ li $at, -1
|
||||
/* 0828C8 80081CC8 14A10004 */ bne $a1, $at, .L80081CDC
|
||||
/* 0828CC 80081CCC 3C018000 */ lui $at, 0x8000
|
||||
/* 0828D0 80081CD0 16010002 */ bne $s0, $at, .L80081CDC
|
||||
/* 0828D4 80081CD4 00000000 */ nop
|
||||
/* 0828D8 80081CD8 0006000D */ break 6
|
||||
.L80081CDC:
|
||||
/* 0828DC 80081CDC 00008012 */ mflo $s0
|
||||
/* 0828E0 80081CE0 2A01000A */ slti $at, $s0, 0xa
|
||||
/* 0828E4 80081CE4 1020FFD7 */ beqz $at, .L80081C44
|
||||
/* 0828E8 80081CE8 0230082A */ slt $at, $s1, $s0
|
||||
/* 0828EC 80081CEC 8FA20080 */ lw $v0, 0x80($sp)
|
||||
/* 0828F0 80081CF0 A0710000 */ sb $s1, ($v1)
|
||||
/* 0828F4 80081CF4 304F0004 */ andi $t7, $v0, 4
|
||||
/* 0828F8 80081CF8 11E00007 */ beqz $t7, .L80081D18
|
||||
/* 0828FC 80081CFC 26730001 */ addiu $s3, $s3, 1
|
||||
/* 082900 80081D00 0013C080 */ sll $t8, $s3, 2
|
||||
/* 082904 80081D04 0313C023 */ subu $t8, $t8, $s3
|
||||
/* 082908 80081D08 0018C080 */ sll $t8, $t8, 2
|
||||
/* 08290C 80081D0C 0298A023 */ subu $s4, $s4, $t8
|
||||
/* 082910 80081D10 1000000B */ b .L80081D40
|
||||
/* 082914 80081D14 26940006 */ addiu $s4, $s4, 6
|
||||
.L80081D18:
|
||||
/* 082918 80081D18 30590001 */ andi $t9, $v0, 1
|
||||
/* 08291C 80081D1C 13200007 */ beqz $t9, .L80081D3C
|
||||
/* 082920 80081D20 00134880 */ sll $t1, $s3, 2
|
||||
/* 082924 80081D24 01334823 */ subu $t1, $t1, $s3
|
||||
/* 082928 80081D28 00094880 */ sll $t1, $t1, 2
|
||||
/* 08292C 80081D2C 01334823 */ subu $t1, $t1, $s3
|
||||
/* 082930 80081D30 00095043 */ sra $t2, $t1, 1
|
||||
/* 082934 80081D34 10000002 */ b .L80081D40
|
||||
/* 082938 80081D38 028AA023 */ subu $s4, $s4, $t2
|
||||
.L80081D3C:
|
||||
/* 08293C 80081D3C 26940006 */ addiu $s4, $s4, 6
|
||||
.L80081D40:
|
||||
/* 082940 80081D40 304B0008 */ andi $t3, $v0, 8
|
||||
/* 082944 80081D44 11600003 */ beqz $t3, .L80081D54
|
||||
/* 082948 80081D48 3C01800E */ lui $at, %hi(sMenuGuiColourR) # $at, 0x800e
|
||||
/* 08294C 80081D4C 10000005 */ b .L80081D64
|
||||
/* 082950 80081D50 24C60007 */ addiu $a2, $a2, 7
|
||||
.L80081D54:
|
||||
/* 082954 80081D54 304C0010 */ andi $t4, $v0, 0x10
|
||||
/* 082958 80081D58 11800003 */ beqz $t4, .L80081D68
|
||||
/* 08295C 80081D5C 8FAD0070 */ lw $t5, 0x70($sp)
|
||||
/* 082960 80081D60 24C6FFF9 */ addiu $a2, $a2, -7
|
||||
.L80081D64:
|
||||
/* 082964 80081D64 8FAD0070 */ lw $t5, 0x70($sp)
|
||||
.L80081D68:
|
||||
/* 082968 80081D68 A027F4A4 */ sb $a3, %lo(sMenuGuiColourR)($at)
|
||||
/* 08296C 80081D6C 3C01800E */ lui $at, %hi(sMenuGuiColourG) # $at, 0x800e
|
||||
/* 082970 80081D70 8FAE0074 */ lw $t6, 0x74($sp)
|
||||
/* 082974 80081D74 A02DF4A8 */ sb $t5, %lo(sMenuGuiColourG)($at)
|
||||
/* 082978 80081D78 3C01800E */ lui $at, %hi(sMenuGuiColourB) # $at, 0x800e
|
||||
/* 08297C 80081D7C 8FAF0078 */ lw $t7, 0x78($sp)
|
||||
/* 082980 80081D80 A02EF4AC */ sb $t6, %lo(sMenuGuiColourB)($at)
|
||||
/* 082984 80081D84 3C01800E */ lui $at, %hi(sMenuGuiOpacity) # $at, 0x800e
|
||||
/* 082988 80081D88 00002025 */ move $a0, $zero
|
||||
/* 08298C 80081D8C AFA60068 */ sw $a2, 0x68($sp)
|
||||
/* 082990 80081D90 0C01EFC7 */ jal sprite_opaque
|
||||
/* 082994 80081D94 AC2FF764 */ sw $t7, %lo(sMenuGuiOpacity)($at)
|
||||
/* 082998 80081D98 0C01A142 */ jal func_80068508
|
||||
/* 08299C 80081D9C 24040001 */ li $a0, 1
|
||||
/* 0829A0 80081DA0 8FA60068 */ lw $a2, 0x68($sp)
|
||||
/* 0829A4 80081DA4 3C12800E */ lui $s2, %hi(gMenuImageStack) # $s2, 0x800e
|
||||
/* 0829A8 80081DA8 44862000 */ mtc1 $a2, $f4
|
||||
/* 0829AC 80081DAC 2652F75C */ addiu $s2, %lo(gMenuImageStack) # addiu $s2, $s2, -0x8a4
|
||||
/* 0829B0 80081DB0 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 0829B4 80081DB4 8E580000 */ lw $t8, ($s2)
|
||||
/* 0829B8 80081DB8 00008025 */ move $s0, $zero
|
||||
/* 0829BC 80081DBC 1A60000F */ blez $s3, .L80081DFC
|
||||
/* 0829C0 80081DC0 E7060010 */ swc1 $f6, 0x10($t8)
|
||||
/* 0829C4 80081DC4 27B10038 */ addiu $s1, $sp, 0x38
|
||||
.L80081DC8:
|
||||
/* 0829C8 80081DC8 44944000 */ mtc1 $s4, $f8
|
||||
/* 0829CC 80081DCC 8E590000 */ lw $t9, ($s2)
|
||||
/* 0829D0 80081DD0 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 0829D4 80081DD4 00002025 */ move $a0, $zero
|
||||
/* 0829D8 80081DD8 E72A000C */ swc1 $f10, 0xc($t9)
|
||||
/* 0829DC 80081DDC 8E4A0000 */ lw $t2, ($s2)
|
||||
/* 0829E0 80081DE0 92290000 */ lbu $t1, ($s1)
|
||||
/* 0829E4 80081DE4 0C027298 */ jal func_8009CA60
|
||||
/* 0829E8 80081DE8 A5490018 */ sh $t1, 0x18($t2)
|
||||
/* 0829EC 80081DEC 26100001 */ addiu $s0, $s0, 0x1
|
||||
/* 0829F0 80081DF0 26310001 */ addiu $s1, $s1, 1
|
||||
/* 0829F4 80081DF4 1613FFF4 */ bne $s0, $s3, .L80081DC8
|
||||
/* 0829F8 80081DF8 2694000C */ addiu $s4, $s4, 0xc
|
||||
.L80081DFC:
|
||||
/* 0829FC 80081DFC 0C01EFC7 */ jal sprite_opaque
|
||||
/* 082A00 80081E00 24040001 */ li $a0, 1
|
||||
/* 082A04 80081E04 0C01A142 */ jal func_80068508
|
||||
/* 082A08 80081E08 00002025 */ move $a0, $zero
|
||||
/* 082A0C 80081E0C 240200FF */ li $v0, 255
|
||||
/* 082A10 80081E10 3C01800E */ lui $at, %hi(sMenuGuiColourR) # $at, 0x800e
|
||||
/* 082A14 80081E14 A022F4A4 */ sb $v0, %lo(sMenuGuiColourR)($at)
|
||||
/* 082A18 80081E18 3C01800E */ lui $at, %hi(sMenuGuiColourG) # $at, 0x800e
|
||||
/* 082A1C 80081E1C A022F4A8 */ sb $v0, %lo(sMenuGuiColourG)($at)
|
||||
/* 082A20 80081E20 3C01800E */ lui $at, %hi(sMenuGuiColourB) # $at, 0x800e
|
||||
/* 082A24 80081E24 8FBF002C */ lw $ra, 0x2c($sp)
|
||||
/* 082A28 80081E28 A022F4AC */ sb $v0, %lo(sMenuGuiColourB)($at)
|
||||
/* 082A2C 80081E2C 3C01800E */ lui $at, %hi(sMenuGuiOpacity) # $at, 0x800e
|
||||
/* 082A30 80081E30 240B00FF */ li $t3, 255
|
||||
/* 082A34 80081E34 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 082A38 80081E38 8FB1001C */ lw $s1, 0x1c($sp)
|
||||
/* 082A3C 80081E3C 8FB20020 */ lw $s2, 0x20($sp)
|
||||
/* 082A40 80081E40 8FB30024 */ lw $s3, 0x24($sp)
|
||||
/* 082A44 80081E44 8FB40028 */ lw $s4, 0x28($sp)
|
||||
/* 082A48 80081E48 AC2BF764 */ sw $t3, %lo(sMenuGuiOpacity)($at)
|
||||
/* 082A4C 80081E4C 03E00008 */ jr $ra
|
||||
/* 082A50 80081E50 27BD0060 */ addiu $sp, $sp, 0x60
|
||||
|
||||
@@ -1,176 +0,0 @@
|
||||
glabel func_8008E4EC
|
||||
/* 08F0EC 8008E4EC 27BDFF88 */ addiu $sp, $sp, -0x78
|
||||
/* 08F0F0 8008E4F0 3C0E8012 */ lui $t6, %hi(gIgnorePlayerInputTime) # $t6, 0x8012
|
||||
/* 08F0F4 8008E4F4 8DCE63C4 */ lw $t6, %lo(gIgnorePlayerInputTime)($t6)
|
||||
/* 08F0F8 8008E4F8 AFBF003C */ sw $ra, 0x3c($sp)
|
||||
/* 08F0FC 8008E4FC AFBE0038 */ sw $fp, 0x38($sp)
|
||||
/* 08F100 8008E500 AFB70034 */ sw $s7, 0x34($sp)
|
||||
/* 08F104 8008E504 AFB60030 */ sw $s6, 0x30($sp)
|
||||
/* 08F108 8008E508 AFB5002C */ sw $s5, 0x2c($sp)
|
||||
/* 08F10C 8008E50C AFB40028 */ sw $s4, 0x28($sp)
|
||||
/* 08F110 8008E510 AFB30024 */ sw $s3, 0x24($sp)
|
||||
/* 08F114 8008E514 AFB20020 */ sw $s2, 0x20($sp)
|
||||
/* 08F118 8008E518 AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 08F11C 8008E51C 15C00067 */ bnez $t6, .L8008E6BC
|
||||
/* 08F120 8008E520 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 08F124 8008E524 3C128012 */ lui $s2, %hi(D_80126818) # $s2, 0x8012
|
||||
/* 08F128 8008E528 3C118012 */ lui $s1, %hi(D_80126830) # $s1, 0x8012
|
||||
/* 08F12C 8008E52C 3C028012 */ lui $v0, %hi(D_8012683A) # $v0, 0x8012
|
||||
/* 08F130 8008E530 2442683A */ addiu $v0, %lo(D_8012683A) # addiu $v0, $v0, 0x683a
|
||||
/* 08F134 8008E534 26316830 */ addiu $s1, %lo(D_80126830) # addiu $s1, $s1, 0x6830
|
||||
/* 08F138 8008E538 26526818 */ addiu $s2, %lo(D_80126818) # addiu $s2, $s2, 0x6818
|
||||
/* 08F13C 8008E53C 27B00060 */ addiu $s0, $sp, 0x60
|
||||
.L8008E540:
|
||||
/* 08F140 8008E540 26310002 */ addiu $s1, $s1, 2
|
||||
/* 08F144 8008E544 0222082B */ sltu $at, $s1, $v0
|
||||
/* 08F148 8008E548 26100004 */ addiu $s0, $s0, 4
|
||||
/* 08F14C 8008E54C 26520002 */ addiu $s2, $s2, 2
|
||||
/* 08F150 8008E550 AE00FFFC */ sw $zero, -4($s0)
|
||||
/* 08F154 8008E554 A640FFFE */ sh $zero, -2($s2)
|
||||
/* 08F158 8008E558 1420FFF9 */ bnez $at, .L8008E540
|
||||
/* 08F15C 8008E55C A620FFFE */ sh $zero, -2($s1)
|
||||
/* 08F160 8008E560 3C128012 */ lui $s2, %hi(D_80126818) # $s2, 0x8012
|
||||
/* 08F164 8008E564 3C118012 */ lui $s1, %hi(D_80126830) # $s1, 0x8012
|
||||
/* 08F168 8008E568 3C148012 */ lui $s4, %hi(gControllersXAxisDirection) # $s4, 0x8012
|
||||
/* 08F16C 8008E56C 3C158012 */ lui $s5, %hi(gControllersYAxisDirection) # $s5, 0x8012
|
||||
/* 08F170 8008E570 3C1E800E */ lui $fp, %hi(gNumberOfActivePlayers) # $fp, 0x800e
|
||||
/* 08F174 8008E574 3C178012 */ lui $s7, %hi(D_80126830) # $s7, 0x8012
|
||||
/* 08F178 8008E578 3C168012 */ lui $s6, %hi(D_80126818) # $s6, 0x8012
|
||||
/* 08F17C 8008E57C 26D66818 */ addiu $s6, %lo(D_80126818) # addiu $s6, $s6, 0x6818
|
||||
/* 08F180 8008E580 26F76830 */ addiu $s7, %lo(D_80126830) # addiu $s7, $s7, 0x6830
|
||||
/* 08F184 8008E584 27DEF4BC */ addiu $fp, %lo(gNumberOfActivePlayers) # addiu $fp, $fp, -0xb44
|
||||
/* 08F188 8008E588 26B56464 */ addiu $s5, %lo(gControllersYAxisDirection) # addiu $s5, $s5, 0x6464
|
||||
/* 08F18C 8008E58C 2694645C */ addiu $s4, %lo(gControllersXAxisDirection) # addiu $s4, $s4, 0x645c
|
||||
/* 08F190 8008E590 26316830 */ addiu $s1, %lo(D_80126830) # addiu $s1, $s1, 0x6830
|
||||
/* 08F194 8008E594 26526818 */ addiu $s2, %lo(D_80126818) # addiu $s2, $s2, 0x6818
|
||||
/* 08F198 8008E598 00009825 */ move $s3, $zero
|
||||
/* 08F19C 8008E59C 27B00060 */ addiu $s0, $sp, 0x60
|
||||
.L8008E5A0:
|
||||
/* 08F1A0 8008E5A0 0C01A94A */ jal get_buttons_held_from_player
|
||||
/* 08F1A4 8008E5A4 02602025 */ move $a0, $s3
|
||||
/* 08F1A8 8008E5A8 8FCF0000 */ lw $t7, ($fp)
|
||||
/* 08F1AC 8008E5AC 82830000 */ lb $v1, ($s4)
|
||||
/* 08F1B0 8008E5B0 82A40000 */ lb $a0, ($s5)
|
||||
/* 08F1B4 8008E5B4 026F082A */ slt $at, $s3, $t7
|
||||
/* 08F1B8 8008E5B8 AE020000 */ sw $v0, ($s0)
|
||||
/* 08F1BC 8008E5BC A6430000 */ sh $v1, ($s2)
|
||||
/* 08F1C0 8008E5C0 1020000A */ beqz $at, .L8008E5EC
|
||||
/* 08F1C4 8008E5C4 A6240000 */ sh $a0, ($s1)
|
||||
/* 08F1C8 8008E5C8 8FB80070 */ lw $t8, 0x70($sp)
|
||||
/* 08F1CC 8008E5CC 86CA0008 */ lh $t2, 8($s6)
|
||||
/* 08F1D0 8008E5D0 86EC0008 */ lh $t4, 8($s7)
|
||||
/* 08F1D4 8008E5D4 03024825 */ or $t1, $t8, $v0
|
||||
/* 08F1D8 8008E5D8 01435821 */ addu $t3, $t2, $v1
|
||||
/* 08F1DC 8008E5DC 01846821 */ addu $t5, $t4, $a0
|
||||
/* 08F1E0 8008E5E0 AFA90070 */ sw $t1, 0x70($sp)
|
||||
/* 08F1E4 8008E5E4 A6CB0008 */ sh $t3, 8($s6)
|
||||
/* 08F1E8 8008E5E8 A6ED0008 */ sh $t5, 8($s7)
|
||||
.L8008E5EC:
|
||||
/* 08F1EC 8008E5EC 26730001 */ addiu $s3, $s3, 1
|
||||
/* 08F1F0 8008E5F0 2A610004 */ slti $at, $s3, 4
|
||||
/* 08F1F4 8008E5F4 26100004 */ addiu $s0, $s0, 4
|
||||
/* 08F1F8 8008E5F8 26520002 */ addiu $s2, $s2, 2
|
||||
/* 08F1FC 8008E5FC 26310002 */ addiu $s1, $s1, 2
|
||||
/* 08F200 8008E600 26940001 */ addiu $s4, $s4, 1
|
||||
/* 08F204 8008E604 1420FFE6 */ bnez $at, .L8008E5A0
|
||||
/* 08F208 8008E608 26B50001 */ addiu $s5, $s5, 1
|
||||
/* 08F20C 8008E60C 3C0E8012 */ lui $t6, %hi(D_801267F0) # $t6, 0x8012
|
||||
/* 08F210 8008E610 8DCE67F0 */ lw $t6, %lo(D_801267F0)($t6)
|
||||
/* 08F214 8008E614 8FA20060 */ lw $v0, 0x60($sp)
|
||||
/* 08F218 8008E618 01C07827 */ not $t7, $t6
|
||||
/* 08F21C 8008E61C 3C018012 */ lui $at, %hi(D_801267D8) # $at, 0x8012
|
||||
/* 08F220 8008E620 01E2C024 */ and $t8, $t7, $v0
|
||||
/* 08F224 8008E624 AC3867D8 */ sw $t8, %lo(D_801267D8)($at)
|
||||
/* 08F228 8008E628 3C018012 */ lui $at, %hi(D_801267F0) # $at, 0x8012
|
||||
/* 08F22C 8008E62C AC2267F0 */ sw $v0, %lo(D_801267F0)($at)
|
||||
/* 08F230 8008E630 24130001 */ li $s3, 1
|
||||
/* 08F234 8008E634 3C098012 */ lui $t1, %hi(D_801267F0) # $t1, 0x8012
|
||||
/* 08F238 8008E638 252967F0 */ addiu $t1, %lo(D_801267F0) # addiu $t1, $t1, 0x67f0
|
||||
/* 08F23C 8008E63C 00132080 */ sll $a0, $s3, 2
|
||||
/* 08F240 8008E640 00891021 */ addu $v0, $a0, $t1
|
||||
/* 08F244 8008E644 8C4B0000 */ lw $t3, ($v0)
|
||||
/* 08F248 8008E648 27AA0060 */ addiu $t2, $sp, 0x60
|
||||
/* 08F24C 8008E64C 008A8021 */ addu $s0, $a0, $t2
|
||||
/* 08F250 8008E650 3C198012 */ lui $t9, %hi(D_801267D8) # $t9, 0x8012
|
||||
/* 08F254 8008E654 8E050000 */ lw $a1, ($s0)
|
||||
/* 08F258 8008E658 273967D8 */ addiu $t9, %lo(D_801267D8) # addiu $t9, $t9, 0x67d8
|
||||
/* 08F25C 8008E65C 01606027 */ not $t4, $t3
|
||||
/* 08F260 8008E660 00991821 */ addu $v1, $a0, $t9
|
||||
/* 08F264 8008E664 8C590008 */ lw $t9, 8($v0)
|
||||
/* 08F268 8008E668 8C4B000C */ lw $t3, 0xc($v0)
|
||||
/* 08F26C 8008E66C 8C4E0004 */ lw $t6, 4($v0)
|
||||
/* 08F270 8008E670 01856824 */ and $t5, $t4, $a1
|
||||
/* 08F274 8008E674 8E060004 */ lw $a2, 4($s0)
|
||||
/* 08F278 8008E678 8E070008 */ lw $a3, 8($s0)
|
||||
/* 08F27C 8008E67C 8E08000C */ lw $t0, 0xc($s0)
|
||||
/* 08F280 8008E680 AC6D0000 */ sw $t5, ($v1)
|
||||
/* 08F284 8008E684 03204827 */ not $t1, $t9
|
||||
/* 08F288 8008E688 01606027 */ not $t4, $t3
|
||||
/* 08F28C 8008E68C 01C07827 */ not $t7, $t6
|
||||
/* 08F290 8008E690 01E6C024 */ and $t8, $t7, $a2
|
||||
/* 08F294 8008E694 01275024 */ and $t2, $t1, $a3
|
||||
/* 08F298 8008E698 01886824 */ and $t5, $t4, $t0
|
||||
/* 08F29C 8008E69C AC6D000C */ sw $t5, 0xc($v1)
|
||||
/* 08F2A0 8008E6A0 AC6A0008 */ sw $t2, 8($v1)
|
||||
/* 08F2A4 8008E6A4 AC780004 */ sw $t8, 4($v1)
|
||||
/* 08F2A8 8008E6A8 AC450000 */ sw $a1, ($v0)
|
||||
/* 08F2AC 8008E6AC AC460004 */ sw $a2, 4($v0)
|
||||
/* 08F2B0 8008E6B0 AC470008 */ sw $a3, 8($v0)
|
||||
/* 08F2B4 8008E6B4 1000002A */ b .L8008E760
|
||||
/* 08F2B8 8008E6B8 AC48000C */ sw $t0, 0xc($v0)
|
||||
.L8008E6BC:
|
||||
/* 08F2BC 8008E6BC 340ED000 */ li $t6, 53248
|
||||
/* 08F2C0 8008E6C0 3C018012 */ lui $at, %hi(D_801267F0) # $at, 0x8012
|
||||
/* 08F2C4 8008E6C4 AC2E67F0 */ sw $t6, %lo(D_801267F0)($at)
|
||||
/* 08F2C8 8008E6C8 3C018012 */ lui $at, %hi(D_801267D8) # $at, 0x8012
|
||||
/* 08F2CC 8008E6CC AC2067D8 */ sw $zero, %lo(D_801267D8)($at)
|
||||
/* 08F2D0 8008E6D0 3C018012 */ lui $at, %hi(D_80126818) # $at, 0x8012
|
||||
/* 08F2D4 8008E6D4 A4206818 */ sh $zero, %lo(D_80126818)($at)
|
||||
/* 08F2D8 8008E6D8 3C018012 */ lui $at, %hi(D_80126830) # $at, 0x8012
|
||||
/* 08F2DC 8008E6DC A4206830 */ sh $zero, %lo(D_80126830)($at)
|
||||
/* 08F2E0 8008E6E0 24130001 */ li $s3, 1
|
||||
/* 08F2E4 8008E6E4 3C168012 */ lui $s6, %hi(D_80126818) # $s6, 0x8012
|
||||
/* 08F2E8 8008E6E8 3C178012 */ lui $s7, %hi(D_80126830) # $s7, 0x8012
|
||||
/* 08F2EC 8008E6EC 00132080 */ sll $a0, $s3, 2
|
||||
/* 08F2F0 8008E6F0 3C0F8012 */ lui $t7, %hi(D_801267F0) # $t7, 0x8012
|
||||
/* 08F2F4 8008E6F4 3C188012 */ lui $t8, %hi(D_801267D8) # $t8, 0x8012
|
||||
/* 08F2F8 8008E6F8 00132840 */ sll $a1, $s3, 1
|
||||
/* 08F2FC 8008E6FC 26F76830 */ addiu $s7, %lo(D_80126830) # addiu $s7, $s7, 0x6830
|
||||
/* 08F300 8008E700 26D66818 */ addiu $s6, %lo(D_80126818) # addiu $s6, $s6, 0x6818
|
||||
/* 08F304 8008E704 25EF67F0 */ addiu $t7, %lo(D_801267F0) # addiu $t7, $t7, 0x67f0
|
||||
/* 08F308 8008E708 271867D8 */ addiu $t8, %lo(D_801267D8) # addiu $t8, $t8, 0x67d8
|
||||
/* 08F30C 8008E70C 3406D000 */ li $a2, 53248
|
||||
/* 08F310 8008E710 008F1021 */ addu $v0, $a0, $t7
|
||||
/* 08F314 8008E714 00981821 */ addu $v1, $a0, $t8
|
||||
/* 08F318 8008E718 02C59021 */ addu $s2, $s6, $a1
|
||||
/* 08F31C 8008E71C 02E58821 */ addu $s1, $s7, $a1
|
||||
/* 08F320 8008E720 A6200002 */ sh $zero, 2($s1)
|
||||
/* 08F324 8008E724 A6200004 */ sh $zero, 4($s1)
|
||||
/* 08F328 8008E728 A6200006 */ sh $zero, 6($s1)
|
||||
/* 08F32C 8008E72C A6400002 */ sh $zero, 2($s2)
|
||||
/* 08F330 8008E730 A6400004 */ sh $zero, 4($s2)
|
||||
/* 08F334 8008E734 A6400006 */ sh $zero, 6($s2)
|
||||
/* 08F338 8008E738 AC600004 */ sw $zero, 4($v1)
|
||||
/* 08F33C 8008E73C AC600008 */ sw $zero, 8($v1)
|
||||
/* 08F340 8008E740 AC60000C */ sw $zero, 0xc($v1)
|
||||
/* 08F344 8008E744 AC460004 */ sw $a2, 4($v0)
|
||||
/* 08F348 8008E748 AC460008 */ sw $a2, 8($v0)
|
||||
/* 08F34C 8008E74C AC46000C */ sw $a2, 0xc($v0)
|
||||
/* 08F350 8008E750 AC460000 */ sw $a2, ($v0)
|
||||
/* 08F354 8008E754 AC600000 */ sw $zero, ($v1)
|
||||
/* 08F358 8008E758 A6400000 */ sh $zero, ($s2)
|
||||
/* 08F35C 8008E75C A6200000 */ sh $zero, ($s1)
|
||||
.L8008E760:
|
||||
/* 08F360 8008E760 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 08F364 8008E764 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 08F368 8008E768 8FB1001C */ lw $s1, 0x1c($sp)
|
||||
/* 08F36C 8008E76C 8FB20020 */ lw $s2, 0x20($sp)
|
||||
/* 08F370 8008E770 8FB30024 */ lw $s3, 0x24($sp)
|
||||
/* 08F374 8008E774 8FB40028 */ lw $s4, 0x28($sp)
|
||||
/* 08F378 8008E778 8FB5002C */ lw $s5, 0x2c($sp)
|
||||
/* 08F37C 8008E77C 8FB60030 */ lw $s6, 0x30($sp)
|
||||
/* 08F380 8008E780 8FB70034 */ lw $s7, 0x34($sp)
|
||||
/* 08F384 8008E784 8FBE0038 */ lw $fp, 0x38($sp)
|
||||
/* 08F388 8008E788 03E00008 */ jr $ra
|
||||
/* 08F38C 8008E78C 27BD0078 */ addiu $sp, $sp, 0x78
|
||||
|
||||
@@ -222,14 +222,14 @@ glabel L8009246C
|
||||
.L800924AC:
|
||||
/* 0930AC 800924AC 30784000 */ andi $t8, $v1, 0x4000
|
||||
/* 0930B0 800924B0 13000006 */ beqz $t8, .L800924CC
|
||||
/* 0930B4 800924B4 3C028012 */ lui $v0, %hi(D_80126838) # $v0, 0x8012
|
||||
/* 0930B4 800924B4 3C028012 */ lui $v0, %hi(D_80126830 + 8) # $v0, 0x8012
|
||||
/* 0930B8 800924B8 3C01800E */ lui $at, %hi(gMenuDelay) # $at, 0x800e
|
||||
/* 0930BC 800924BC 240E0001 */ li $t6, 1
|
||||
/* 0930C0 800924C0 AC2DF47C */ sw $t5, %lo(gMenuDelay)($at)
|
||||
/* 0930C4 800924C4 10000194 */ b .L80092B18
|
||||
/* 0930C8 800924C8 AFAE003C */ sw $t6, 0x3c($sp)
|
||||
.L800924CC:
|
||||
/* 0930CC 800924CC 84426838 */ lh $v0, %lo(D_80126838)($v0)
|
||||
/* 0930CC 800924CC 84426838 */ lh $v0, %lo(D_80126830 + 8)($v0)
|
||||
/* 0930D0 800924D0 3C19800E */ lui $t9, %hi(D_800E0418) # $t9, 0x800e
|
||||
/* 0930D4 800924D4 18400008 */ blez $v0, .L800924F8
|
||||
/* 0930D8 800924D8 00000000 */ nop
|
||||
@@ -516,7 +516,7 @@ glabel L8009287C
|
||||
/* 0934CC 800928CC AFB90038 */ sw $t9, 0x38($sp)
|
||||
.L800928D0:
|
||||
/* 0934D0 800928D0 13000014 */ beqz $t8, .L80092924
|
||||
/* 0934D4 800928D4 3C038012 */ lui $v1, %hi(D_80126820) # $v1, 0x8012
|
||||
/* 0934D4 800928D4 3C038012 */ lui $v1, %hi(D_80126818 + 8) # $v1, 0x8012
|
||||
/* 0934D8 800928D8 3C09800E */ lui $t1, %hi(gNumberOfReadyPlayers) # $t1, 0x800e
|
||||
/* 0934DC 800928DC 2529F480 */ addiu $t1, %lo(gNumberOfReadyPlayers) # addiu $t1, $t1, -0xb80
|
||||
/* 0934E0 800928E0 8D2E0000 */ lw $t6, ($t1)
|
||||
@@ -539,7 +539,7 @@ glabel L8009287C
|
||||
/* 09351C 8009291C 1000007E */ b .L80092B18
|
||||
/* 093520 80092920 AFAE003C */ sw $t6, 0x3c($sp)
|
||||
.L80092924:
|
||||
/* 093524 80092924 84636820 */ lh $v1, %lo(D_80126820)($v1)
|
||||
/* 093524 80092924 84636820 */ lh $v1, %lo(D_80126818 + 8)($v1)
|
||||
/* 093528 80092928 3C04800E */ lui $a0, %hi(gMultiplayerSelectedNumberOfRacers) # $a0, 0x800e
|
||||
/* 09352C 8009292C 04610008 */ bgez $v1, .L80092950
|
||||
/* 093530 80092930 24840410 */ addiu $a0, %lo(gMultiplayerSelectedNumberOfRacers) # addiu $a0, $a0, 0x410
|
||||
|
||||
@@ -1,208 +0,0 @@
|
||||
glabel func_8009CA60
|
||||
/* 09D660 8009CA60 3C0B800E */ lui $t3, %hi(gMenuImageStack) # $t3, 0x800e
|
||||
/* 09D664 8009CA64 256BF75C */ addiu $t3, %lo(gMenuImageStack) # addiu $t3, $t3, -0x8a4
|
||||
/* 09D668 8009CA68 27BDFFA0 */ addiu $sp, $sp, -0x60
|
||||
/* 09D66C 8009CA6C 8D630000 */ lw $v1, ($t3)
|
||||
/* 09D670 8009CA70 00044140 */ sll $t0, $a0, 5
|
||||
/* 09D674 8009CA74 AFBF0024 */ sw $ra, 0x24($sp)
|
||||
/* 09D678 8009CA78 AFB00020 */ sw $s0, 0x20($sp)
|
||||
/* 09D67C 8009CA7C AFA40060 */ sw $a0, 0x60($sp)
|
||||
/* 09D680 8009CA80 00687821 */ addu $t7, $v1, $t0
|
||||
/* 09D684 8009CA84 85E50006 */ lh $a1, 6($t7)
|
||||
/* 09D688 8009CA88 3C0A8012 */ lui $t2, %hi(gMenuTextures) # $t2, 0x8012
|
||||
/* 09D68C 8009CA8C 0005C080 */ sll $t8, $a1, 2
|
||||
/* 09D690 8009CA90 01585021 */ addu $t2, $t2, $t8
|
||||
/* 09D694 8009CA94 8D4A6550 */ lw $t2, %lo(gMenuTextures)($t2)
|
||||
/* 09D698 8009CA98 3C19800E */ lui $t9, %hi(gAssetsMenuElementIds) # $t9, 0x800e
|
||||
/* 09D69C 8009CA9C 114000B4 */ beqz $t2, .L8009CD70
|
||||
/* 09D6A0 8009CAA0 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
/* 09D6A4 8009CAA4 8F39F750 */ lw $t9, %lo(gAssetsMenuElementIds)($t9)
|
||||
/* 09D6A8 8009CAA8 00056040 */ sll $t4, $a1, 1
|
||||
/* 09D6AC 8009CAAC 032C6821 */ addu $t5, $t9, $t4
|
||||
/* 09D6B0 8009CAB0 85A20000 */ lh $v0, ($t5)
|
||||
/* 09D6B4 8009CAB4 3401C000 */ li $at, 49152
|
||||
/* 09D6B8 8009CAB8 304EC000 */ andi $t6, $v0, 0xc000
|
||||
/* 09D6BC 8009CABC 11C100AB */ beq $t6, $at, .L8009CD6C
|
||||
/* 09D6C0 8009CAC0 304F4000 */ andi $t7, $v0, 0x4000
|
||||
/* 09D6C4 8009CAC4 11E00027 */ beqz $t7, .L8009CB64
|
||||
/* 09D6C8 8009CAC8 304D8000 */ andi $t5, $v0, 0x8000
|
||||
/* 09D6CC 8009CACC 0004C940 */ sll $t9, $a0, 5
|
||||
/* 09D6D0 8009CAD0 03231021 */ addu $v0, $t9, $v1
|
||||
/* 09D6D4 8009CAD4 844C0000 */ lh $t4, ($v0)
|
||||
/* 09D6D8 8009CAD8 3C0F800E */ lui $t7, %hi(D_800DF468) # $t7, 0x800e
|
||||
/* 09D6DC 8009CADC A54C0000 */ sh $t4, ($t2)
|
||||
/* 09D6E0 8009CAE0 844D0002 */ lh $t5, 2($v0)
|
||||
/* 09D6E4 8009CAE4 3C108012 */ lui $s0, %hi(sMenuCurrDisplayList) # $s0, 0x8012
|
||||
/* 09D6E8 8009CAE8 A54D0002 */ sh $t5, 2($t2)
|
||||
/* 09D6EC 8009CAEC 844E0004 */ lh $t6, 4($v0)
|
||||
/* 09D6F0 8009CAF0 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012
|
||||
/* 09D6F4 8009CAF4 A54E0004 */ sh $t6, 4($t2)
|
||||
/* 09D6F8 8009CAF8 C444000C */ lwc1 $f4, 0xc($v0)
|
||||
/* 09D6FC 8009CAFC 3C068012 */ lui $a2, %hi(sMenuCurrHudVerts) # $a2, 0x8012
|
||||
/* 09D700 8009CB00 E544000C */ swc1 $f4, 0xc($t2)
|
||||
/* 09D704 8009CB04 C4460010 */ lwc1 $f6, 0x10($v0)
|
||||
/* 09D708 8009CB08 01403825 */ move $a3, $t2
|
||||
/* 09D70C 8009CB0C E5460010 */ swc1 $f6, 0x10($t2)
|
||||
/* 09D710 8009CB10 C4480014 */ lwc1 $f8, 0x14($v0)
|
||||
/* 09D714 8009CB14 260463A0 */ addiu $a0, $s0, %lo(sMenuCurrDisplayList)
|
||||
/* 09D718 8009CB18 E5480014 */ swc1 $f8, 0x14($t2)
|
||||
/* 09D71C 8009CB1C C44A0008 */ lwc1 $f10, 8($v0)
|
||||
/* 09D720 8009CB20 3C0C800E */ lui $t4, %hi(sMenuGuiOpacity) # $t4, 0x800e
|
||||
/* 09D724 8009CB24 E54A0008 */ swc1 $f10, 8($t2)
|
||||
/* 09D728 8009CB28 8DEFF468 */ lw $t7, %lo(D_800DF468)($t7)
|
||||
/* 09D72C 8009CB2C 24C663AC */ addiu $a2, %lo(sMenuCurrHudVerts) # addiu $a2, $a2, 0x63ac
|
||||
/* 09D730 8009CB30 15E00007 */ bnez $t7, .L8009CB50
|
||||
/* 09D734 8009CB34 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8
|
||||
/* 09D738 8009CB38 8058001D */ lb $t8, 0x1d($v0)
|
||||
/* 09D73C 8009CB3C 00000000 */ nop
|
||||
/* 09D740 8009CB40 A5580018 */ sh $t8, 0x18($t2)
|
||||
/* 09D744 8009CB44 84590018 */ lh $t9, 0x18($v0)
|
||||
/* 09D748 8009CB48 00000000 */ nop
|
||||
/* 09D74C 8009CB4C A159003A */ sb $t9, 0x3a($t2)
|
||||
.L8009CB50:
|
||||
/* 09D750 8009CB50 8D8CF764 */ lw $t4, %lo(sMenuGuiOpacity)($t4)
|
||||
/* 09D754 8009CB54 0C004B57 */ jal render_object
|
||||
/* 09D758 8009CB58 A0EC0039 */ sb $t4, 0x39($a3)
|
||||
/* 09D75C 8009CB5C 10000084 */ b .L8009CD70
|
||||
/* 09D760 8009CB60 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
.L8009CB64:
|
||||
/* 09D764 8009CB64 11A00034 */ beqz $t5, .L8009CC38
|
||||
/* 09D768 8009CB68 3C108012 */ lui $s0, %hi(sMenuCurrDisplayList) # $s0, 0x8012
|
||||
/* 09D76C 8009CB6C 261063A0 */ addiu $s0, %lo(sMenuCurrDisplayList) # addiu $s0, $s0, 0x63a0
|
||||
/* 09D770 8009CB70 8E020000 */ lw $v0, ($s0)
|
||||
/* 09D774 8009CB74 3C0FFA00 */ lui $t7, 0xfa00
|
||||
/* 09D778 8009CB78 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 09D77C 8009CB7C AE0E0000 */ sw $t6, ($s0)
|
||||
/* 09D780 8009CB80 3C18800E */ lui $t8, %hi(sMenuGuiColourR) # $t8, 0x800e
|
||||
/* 09D784 8009CB84 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 09D788 8009CB88 9319F4A4 */ lbu $t9, %lo(sMenuGuiColourR)($t8)
|
||||
/* 09D78C 8009CB8C 3C0D800E */ lui $t5, %hi(sMenuGuiColourG) # $t5, 0x800e
|
||||
/* 09D790 8009CB90 91AEF4A8 */ lbu $t6, %lo(sMenuGuiColourG)($t5)
|
||||
/* 09D794 8009CB94 00196600 */ sll $t4, $t9, 0x18
|
||||
/* 09D798 8009CB98 000E7C00 */ sll $t7, $t6, 0x10
|
||||
/* 09D79C 8009CB9C 018FC025 */ or $t8, $t4, $t7
|
||||
/* 09D7A0 8009CBA0 3C19800E */ lui $t9, %hi(sMenuGuiColourB) # $t9, 0x800e
|
||||
/* 09D7A4 8009CBA4 932DF4AC */ lbu $t5, %lo(sMenuGuiColourB)($t9)
|
||||
/* 09D7A8 8009CBA8 3C0F800E */ lui $t7, %hi(sMenuGuiOpacity) # $t7, 0x800e
|
||||
/* 09D7AC 8009CBAC 8DEFF764 */ lw $t7, %lo(sMenuGuiOpacity)($t7)
|
||||
/* 09D7B0 8009CBB0 000D7200 */ sll $t6, $t5, 8
|
||||
/* 09D7B4 8009CBB4 030E6025 */ or $t4, $t8, $t6
|
||||
/* 09D7B8 8009CBB8 31F900FF */ andi $t9, $t7, 0xff
|
||||
/* 09D7BC 8009CBBC 01996825 */ or $t5, $t4, $t9
|
||||
/* 09D7C0 8009CBC0 AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 09D7C4 8009CBC4 8E020000 */ lw $v0, ($s0)
|
||||
/* 09D7C8 8009CBC8 240FFF00 */ li $t7, -256
|
||||
/* 09D7CC 8009CBCC 24580008 */ addiu $t8, $v0, 8
|
||||
/* 09D7D0 8009CBD0 AE180000 */ sw $t8, ($s0)
|
||||
/* 09D7D4 8009CBD4 3C0EFB00 */ lui $t6, 0xfb00
|
||||
/* 09D7D8 8009CBD8 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 09D7DC 8009CBDC AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 09D7E0 8009CBE0 8FAC0060 */ lw $t4, 0x60($sp)
|
||||
/* 09D7E4 8009CBE4 3C18800E */ lui $t8, %hi(D_800DF4B4) # $t8, 0x800e
|
||||
/* 09D7E8 8009CBE8 8F18F4B4 */ lw $t8, %lo(D_800DF4B4)($t8)
|
||||
/* 09D7EC 8009CBEC 8D6D0000 */ lw $t5, ($t3)
|
||||
/* 09D7F0 8009CBF0 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012
|
||||
/* 09D7F4 8009CBF4 3C068012 */ lui $a2, %hi(sMenuCurrHudVerts) # $a2, 0x8012
|
||||
/* 09D7F8 8009CBF8 000CC940 */ sll $t9, $t4, 5
|
||||
/* 09D7FC 8009CBFC 24C663AC */ addiu $a2, %lo(sMenuCurrHudVerts) # addiu $a2, $a2, 0x63ac
|
||||
/* 09D800 8009CC00 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8
|
||||
/* 09D804 8009CC04 AFAA0010 */ sw $t2, 0x10($sp)
|
||||
/* 09D808 8009CC08 02002025 */ move $a0, $s0
|
||||
/* 09D80C 8009CC0C AFB80014 */ sw $t8, 0x14($sp)
|
||||
/* 09D810 8009CC10 0C01A2FD */ jal render_ortho_triangle_image
|
||||
/* 09D814 8009CC14 032D3821 */ addu $a3, $t9, $t5
|
||||
/* 09D818 8009CC18 8E020000 */ lw $v0, ($s0)
|
||||
/* 09D81C 8009CC1C 3C0FFA00 */ lui $t7, 0xfa00
|
||||
/* 09D820 8009CC20 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 09D824 8009CC24 AE0E0000 */ sw $t6, ($s0)
|
||||
/* 09D828 8009CC28 240CFFFF */ li $t4, -1
|
||||
/* 09D82C 8009CC2C AC4C0004 */ sw $t4, 4($v0)
|
||||
/* 09D830 8009CC30 1000004E */ b .L8009CD6C
|
||||
/* 09D834 8009CC34 AC4F0000 */ sw $t7, ($v0)
|
||||
.L8009CC38:
|
||||
/* 09D838 8009CC38 3C09800E */ lui $t1, %hi(sMenuGuiOpacity) # $t1, 0x800e
|
||||
/* 09D83C 8009CC3C 2529F764 */ addiu $t1, %lo(sMenuGuiOpacity) # addiu $t1, $t1, -0x89c
|
||||
/* 09D840 8009CC40 8D390000 */ lw $t9, ($t1)
|
||||
/* 09D844 8009CC44 3C058012 */ lui $a1, %hi(sMenuCurrHudMat) # $a1, 0x8012
|
||||
/* 09D848 8009CC48 2B2100FF */ slti $at, $t9, 0xff
|
||||
/* 09D84C 8009CC4C 1020000E */ beqz $at, .L8009CC88
|
||||
/* 09D850 8009CC50 24A563A8 */ addiu $a1, %lo(sMenuCurrHudMat) # addiu $a1, $a1, 0x63a8
|
||||
/* 09D854 8009CC54 3C108012 */ lui $s0, %hi(sMenuCurrDisplayList) # $s0, 0x8012
|
||||
/* 09D858 8009CC58 261063A0 */ addiu $s0, %lo(sMenuCurrDisplayList) # addiu $s0, $s0, 0x63a0
|
||||
/* 09D85C 8009CC5C 8E020000 */ lw $v0, ($s0)
|
||||
/* 09D860 8009CC60 3C18FA00 */ lui $t8, 0xfa00
|
||||
/* 09D864 8009CC64 244D0008 */ addiu $t5, $v0, 8
|
||||
/* 09D868 8009CC68 AE0D0000 */ sw $t5, ($s0)
|
||||
/* 09D86C 8009CC6C AC580000 */ sw $t8, ($v0)
|
||||
/* 09D870 8009CC70 8D2E0000 */ lw $t6, ($t1)
|
||||
/* 09D874 8009CC74 2401FF00 */ li $at, -256
|
||||
/* 09D878 8009CC78 31CF00FF */ andi $t7, $t6, 0xff
|
||||
/* 09D87C 8009CC7C 01E16025 */ or $t4, $t7, $at
|
||||
/* 09D880 8009CC80 1000000A */ b .L8009CCAC
|
||||
/* 09D884 8009CC84 AC4C0004 */ sw $t4, 4($v0)
|
||||
.L8009CC88:
|
||||
/* 09D888 8009CC88 3C108012 */ lui $s0, %hi(sMenuCurrDisplayList) # $s0, 0x8012
|
||||
/* 09D88C 8009CC8C 261063A0 */ addiu $s0, %lo(sMenuCurrDisplayList) # addiu $s0, $s0, 0x63a0
|
||||
/* 09D890 8009CC90 8E020000 */ lw $v0, ($s0)
|
||||
/* 09D894 8009CC94 3C0DFA00 */ lui $t5, 0xfa00
|
||||
/* 09D898 8009CC98 24590008 */ addiu $t9, $v0, 8
|
||||
/* 09D89C 8009CC9C AE190000 */ sw $t9, ($s0)
|
||||
/* 09D8A0 8009CCA0 2418FFFF */ li $t8, -1
|
||||
/* 09D8A4 8009CCA4 AC580004 */ sw $t8, 4($v0)
|
||||
/* 09D8A8 8009CCA8 AC4D0000 */ sw $t5, ($v0)
|
||||
.L8009CCAC:
|
||||
/* 09D8AC 8009CCAC 8E020000 */ lw $v0, ($s0)
|
||||
/* 09D8B0 8009CCB0 3C0FFB00 */ lui $t7, 0xfb00
|
||||
/* 09D8B4 8009CCB4 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 09D8B8 8009CCB8 AE0E0000 */ sw $t6, ($s0)
|
||||
/* 09D8BC 8009CCBC 240CFF00 */ li $t4, -256
|
||||
/* 09D8C0 8009CCC0 AC4C0004 */ sw $t4, 4($v0)
|
||||
/* 09D8C4 8009CCC4 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 09D8C8 8009CCC8 8FB90060 */ lw $t9, 0x60($sp)
|
||||
/* 09D8CC 8009CCCC 8D780000 */ lw $t8, ($t3)
|
||||
/* 09D8D0 8009CCD0 44808000 */ mtc1 $zero, $f16
|
||||
/* 09D8D4 8009CCD4 3C07800E */ lui $a3, %hi(D_800DF454) # $a3, 0x800e
|
||||
/* 09D8D8 8009CCD8 8CE7F454 */ lw $a3, %lo(D_800DF454)($a3)
|
||||
/* 09D8DC 8009CCDC 00196940 */ sll $t5, $t9, 5
|
||||
/* 09D8E0 8009CCE0 AFA8002C */ sw $t0, 0x2c($sp)
|
||||
/* 09D8E4 8009CCE4 02002025 */ move $a0, $s0
|
||||
/* 09D8E8 8009CCE8 01B83021 */ addu $a2, $t5, $t8
|
||||
/* 09D8EC 8009CCEC 0C01A521 */ jal camera_push_model_mtx
|
||||
/* 09D8F0 8009CCF0 E7B00010 */ swc1 $f16, 0x10($sp)
|
||||
/* 09D8F4 8009CCF4 3C0B800E */ lui $t3, %hi(gMenuImageStack) # $t3, 0x800e
|
||||
/* 09D8F8 8009CCF8 256BF75C */ addiu $t3, %lo(gMenuImageStack) # addiu $t3, $t3, -0x8a4
|
||||
/* 09D8FC 8009CCFC 8FA8002C */ lw $t0, 0x2c($sp)
|
||||
/* 09D900 8009CD00 8D6E0000 */ lw $t6, ($t3)
|
||||
/* 09D904 8009CD04 3C028012 */ lui $v0, %hi(gMenuTextures) # $v0, 0x8012
|
||||
/* 09D908 8009CD08 01C87821 */ addu $t7, $t6, $t0
|
||||
/* 09D90C 8009CD0C 85EC0006 */ lh $t4, 6($t7)
|
||||
/* 09D910 8009CD10 00000000 */ nop
|
||||
/* 09D914 8009CD14 000CC880 */ sll $t9, $t4, 2
|
||||
/* 09D918 8009CD18 00591021 */ addu $v0, $v0, $t9
|
||||
/* 09D91C 8009CD1C 8C426550 */ lw $v0, %lo(gMenuTextures)($v0)
|
||||
/* 09D920 8009CD20 00000000 */ nop
|
||||
/* 09D924 8009CD24 8C440000 */ lw $a0, ($v0)
|
||||
/* 09D928 8009CD28 0C02735F */ jal render_track_selection_viewport_border
|
||||
/* 09D92C 8009CD2C 00000000 */ nop
|
||||
/* 09D930 8009CD30 0C01A690 */ jal apply_matrix_from_stack
|
||||
/* 09D934 8009CD34 02002025 */ move $a0, $s0
|
||||
/* 09D938 8009CD38 3C0D800E */ lui $t5, %hi(sMenuGuiOpacity) # $t5, 0x800e
|
||||
/* 09D93C 8009CD3C 8DADF764 */ lw $t5, %lo(sMenuGuiOpacity)($t5)
|
||||
/* 09D940 8009CD40 00000000 */ nop
|
||||
/* 09D944 8009CD44 29A100FF */ slti $at, $t5, 0xff
|
||||
/* 09D948 8009CD48 10200009 */ beqz $at, .L8009CD70
|
||||
/* 09D94C 8009CD4C 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
/* 09D950 8009CD50 8E020000 */ lw $v0, ($s0)
|
||||
/* 09D954 8009CD54 3C0EFA00 */ lui $t6, 0xfa00
|
||||
/* 09D958 8009CD58 24580008 */ addiu $t8, $v0, 8
|
||||
/* 09D95C 8009CD5C AE180000 */ sw $t8, ($s0)
|
||||
/* 09D960 8009CD60 240FFFFF */ li $t7, -1
|
||||
/* 09D964 8009CD64 AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 09D968 8009CD68 AC4E0000 */ sw $t6, ($v0)
|
||||
.L8009CD6C:
|
||||
/* 09D96C 8009CD6C 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
.L8009CD70:
|
||||
/* 09D970 8009CD70 8FB00020 */ lw $s0, 0x20($sp)
|
||||
/* 09D974 8009CD74 03E00008 */ jr $ra
|
||||
/* 09D978 8009CD78 27BD0060 */ addiu $sp, $sp, 0x60
|
||||
|
||||
@@ -1,168 +0,0 @@
|
||||
glabel func_8005FCD0
|
||||
/* 0608D0 8005FCD0 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0608D4 8005FCD4 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 0608D8 8005FCD8 848E0048 */ lh $t6, 0x48($a0)
|
||||
/* 0608DC 8005FCDC 00803825 */ move $a3, $a0
|
||||
/* 0608E0 8005FCE0 11C00026 */ beqz $t6, .L8005FD7C
|
||||
/* 0608E4 8005FCE4 30AF0008 */ andi $t7, $a1, 8
|
||||
/* 0608E8 8005FCE8 11E00024 */ beqz $t7, .L8005FD7C
|
||||
/* 0608EC 8005FCEC 00000000 */ nop
|
||||
/* 0608F0 8005FCF0 84860024 */ lh $a2, 0x24($a0)
|
||||
/* 0608F4 8005FCF4 8488004A */ lh $t0, 0x4a($a0)
|
||||
/* 0608F8 8005FCF8 0006C040 */ sll $t8, $a2, 1
|
||||
/* 0608FC 8005FCFC 0018C880 */ sll $t9, $t8, 2
|
||||
/* 060900 8005FD00 0338C821 */ addu $t9, $t9, $t8
|
||||
/* 060904 8005FD04 00084880 */ sll $t1, $t0, 2
|
||||
/* 060908 8005FD08 0019C840 */ sll $t9, $t9, 1
|
||||
/* 06090C 8005FD0C 01284823 */ subu $t1, $t1, $t0
|
||||
/* 060910 8005FD10 27260024 */ addiu $a2, $t9, 0x24
|
||||
/* 060914 8005FD14 00094840 */ sll $t1, $t1, 1
|
||||
/* 060918 8005FD18 01262021 */ addu $a0, $t1, $a2
|
||||
/* 06091C 8005FD1C AFA6001C */ sw $a2, 0x1c($sp)
|
||||
/* 060920 8005FD20 AFA70020 */ sw $a3, 0x20($sp)
|
||||
/* 060924 8005FD24 0C01C344 */ jal allocate_from_main_pool
|
||||
/* 060928 8005FD28 3405FFFF */ li $a1, 65535
|
||||
/* 06092C 8005FD2C 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
/* 060930 8005FD30 8FA70020 */ lw $a3, 0x20($sp)
|
||||
/* 060934 8005FD34 14400003 */ bnez $v0, .L8005FD44
|
||||
/* 060938 8005FD38 00402825 */ move $a1, $v0
|
||||
/* 06093C 8005FD3C 1000007C */ b .L8005FF30
|
||||
/* 060940 8005FD40 00001025 */ move $v0, $zero
|
||||
.L8005FD44:
|
||||
/* 060944 8005FD44 244A0024 */ addiu $t2, $v0, 0x24
|
||||
/* 060948 8005FD48 AC4A0004 */ sw $t2, 4($v0)
|
||||
/* 06094C 8005FD4C 84EB0024 */ lh $t3, 0x24($a3)
|
||||
/* 060950 8005FD50 00467821 */ addu $t7, $v0, $a2
|
||||
/* 060954 8005FD54 000B6080 */ sll $t4, $t3, 2
|
||||
/* 060958 8005FD58 018B6021 */ addu $t4, $t4, $t3
|
||||
/* 06095C 8005FD5C 000C6040 */ sll $t4, $t4, 1
|
||||
/* 060960 8005FD60 004C6821 */ addu $t5, $v0, $t4
|
||||
/* 060964 8005FD64 25AE0024 */ addiu $t6, $t5, 0x24
|
||||
/* 060968 8005FD68 24180002 */ li $t8, 2
|
||||
/* 06096C 8005FD6C AC4E0008 */ sw $t6, 8($v0)
|
||||
/* 060970 8005FD70 AC4F000C */ sw $t7, 0xc($v0)
|
||||
/* 060974 8005FD74 10000029 */ b .L8005FE1C
|
||||
/* 060978 8005FD78 A058001E */ sb $t8, 0x1e($v0)
|
||||
.L8005FD7C:
|
||||
/* 06097C 8005FD7C 8CF90040 */ lw $t9, 0x40($a3)
|
||||
/* 060980 8005FD80 30A80001 */ andi $t0, $a1, 1
|
||||
/* 060984 8005FD84 13200016 */ beqz $t9, .L8005FDE0
|
||||
/* 060988 8005FD88 24040024 */ li $a0, 36
|
||||
/* 06098C 8005FD8C 11000014 */ beqz $t0, .L8005FDE0
|
||||
/* 060990 8005FD90 3405FFFF */ li $a1, 65535
|
||||
/* 060994 8005FD94 84E60024 */ lh $a2, 0x24($a3)
|
||||
/* 060998 8005FD98 AFA70020 */ sw $a3, 0x20($sp)
|
||||
/* 06099C 8005FD9C 00064880 */ sll $t1, $a2, 2
|
||||
/* 0609A0 8005FDA0 01264821 */ addu $t1, $t1, $a2
|
||||
/* 0609A4 8005FDA4 00094840 */ sll $t1, $t1, 1
|
||||
/* 0609A8 8005FDA8 0C01C344 */ jal allocate_from_main_pool
|
||||
/* 0609AC 8005FDAC 25240024 */ addiu $a0, $t1, 0x24
|
||||
/* 0609B0 8005FDB0 8FA70020 */ lw $a3, 0x20($sp)
|
||||
/* 0609B4 8005FDB4 14400003 */ bnez $v0, .L8005FDC4
|
||||
/* 0609B8 8005FDB8 00402825 */ move $a1, $v0
|
||||
/* 0609BC 8005FDBC 1000005C */ b .L8005FF30
|
||||
/* 0609C0 8005FDC0 00001025 */ move $v0, $zero
|
||||
.L8005FDC4:
|
||||
/* 0609C4 8005FDC4 24430024 */ addiu $v1, $v0, 0x24
|
||||
/* 0609C8 8005FDC8 240A0001 */ li $t2, 1
|
||||
/* 0609CC 8005FDCC AC430004 */ sw $v1, 4($v0)
|
||||
/* 0609D0 8005FDD0 AC430008 */ sw $v1, 8($v0)
|
||||
/* 0609D4 8005FDD4 AC40000C */ sw $zero, 0xc($v0)
|
||||
/* 0609D8 8005FDD8 10000010 */ b .L8005FE1C
|
||||
/* 0609DC 8005FDDC A04A001E */ sb $t2, 0x1e($v0)
|
||||
.L8005FDE0:
|
||||
/* 0609E0 8005FDE0 3405FFFF */ li $a1, 65535
|
||||
/* 0609E4 8005FDE4 0C01C344 */ jal allocate_from_main_pool
|
||||
/* 0609E8 8005FDE8 AFA70020 */ sw $a3, 0x20($sp)
|
||||
/* 0609EC 8005FDEC 8FA70020 */ lw $a3, 0x20($sp)
|
||||
/* 0609F0 8005FDF0 14400003 */ bnez $v0, .L8005FE00
|
||||
/* 0609F4 8005FDF4 00402825 */ move $a1, $v0
|
||||
/* 0609F8 8005FDF8 1000004D */ b .L8005FF30
|
||||
/* 0609FC 8005FDFC 00001025 */ move $v0, $zero
|
||||
.L8005FE00:
|
||||
/* 060A00 8005FE00 8CEB0004 */ lw $t3, 4($a3)
|
||||
/* 060A04 8005FE04 00000000 */ nop
|
||||
/* 060A08 8005FE08 AC4B0004 */ sw $t3, 4($v0)
|
||||
/* 060A0C 8005FE0C 8CEC0004 */ lw $t4, 4($a3)
|
||||
/* 060A10 8005FE10 AC40000C */ sw $zero, 0xc($v0)
|
||||
/* 060A14 8005FE14 A040001E */ sb $zero, 0x1e($v0)
|
||||
/* 060A18 8005FE18 AC4C0008 */ sw $t4, 8($v0)
|
||||
.L8005FE1C:
|
||||
/* 060A1C 8005FE1C 804D001E */ lb $t5, 0x1e($v0)
|
||||
/* 060A20 8005FE20 2403FFFF */ li $v1, -1
|
||||
/* 060A24 8005FE24 A4400016 */ sh $zero, 0x16($v0)
|
||||
/* 060A28 8005FE28 A4400018 */ sh $zero, 0x18($v0)
|
||||
/* 060A2C 8005FE2C A440001A */ sh $zero, 0x1a($v0)
|
||||
/* 060A30 8005FE30 AC470000 */ sw $a3, ($v0)
|
||||
/* 060A34 8005FE34 A4430010 */ sh $v1, 0x10($v0)
|
||||
/* 060A38 8005FE38 A4430012 */ sh $v1, 0x12($v0)
|
||||
/* 060A3C 8005FE3C 11A0003B */ beqz $t5, .L8005FF2C
|
||||
/* 060A40 8005FE40 A040001F */ sb $zero, 0x1f($v0)
|
||||
/* 060A44 8005FE44 8C430004 */ lw $v1, 4($v0)
|
||||
/* 060A48 8005FE48 8CE40004 */ lw $a0, 4($a3)
|
||||
/* 060A4C 8005FE4C 00003025 */ move $a2, $zero
|
||||
.L8005FE50:
|
||||
/* 060A50 8005FE50 848E0000 */ lh $t6, ($a0)
|
||||
/* 060A54 8005FE54 24C60001 */ addiu $a2, $a2, 1
|
||||
/* 060A58 8005FE58 A46E0000 */ sh $t6, ($v1)
|
||||
/* 060A5C 8005FE5C 848F0002 */ lh $t7, 2($a0)
|
||||
/* 060A60 8005FE60 2463000A */ addiu $v1, $v1, 0xa
|
||||
/* 060A64 8005FE64 A46FFFF8 */ sh $t7, -8($v1)
|
||||
/* 060A68 8005FE68 84980004 */ lh $t8, 4($a0)
|
||||
/* 060A6C 8005FE6C 2484000A */ addiu $a0, $a0, 0xa
|
||||
/* 060A70 8005FE70 A478FFFA */ sh $t8, -6($v1)
|
||||
/* 060A74 8005FE74 9099FFFC */ lbu $t9, -4($a0)
|
||||
/* 060A78 8005FE78 00000000 */ nop
|
||||
/* 060A7C 8005FE7C A079FFFC */ sb $t9, -4($v1)
|
||||
/* 060A80 8005FE80 9088FFFD */ lbu $t0, -3($a0)
|
||||
/* 060A84 8005FE84 00000000 */ nop
|
||||
/* 060A88 8005FE88 A068FFFD */ sb $t0, -3($v1)
|
||||
/* 060A8C 8005FE8C 9089FFFE */ lbu $t1, -2($a0)
|
||||
/* 060A90 8005FE90 00000000 */ nop
|
||||
/* 060A94 8005FE94 A069FFFE */ sb $t1, -2($v1)
|
||||
/* 060A98 8005FE98 908AFFFF */ lbu $t2, -1($a0)
|
||||
/* 060A9C 8005FE9C 00000000 */ nop
|
||||
/* 060AA0 8005FEA0 A06AFFFF */ sb $t2, -1($v1)
|
||||
/* 060AA4 8005FEA4 84EB0024 */ lh $t3, 0x24($a3)
|
||||
/* 060AA8 8005FEA8 00000000 */ nop
|
||||
/* 060AAC 8005FEAC 00CB082A */ slt $at, $a2, $t3
|
||||
/* 060AB0 8005FEB0 1420FFE7 */ bnez $at, .L8005FE50
|
||||
/* 060AB4 8005FEB4 00000000 */ nop
|
||||
/* 060AB8 8005FEB8 8C430008 */ lw $v1, 8($v0)
|
||||
/* 060ABC 8005FEBC 8CE40004 */ lw $a0, 4($a3)
|
||||
/* 060AC0 8005FEC0 00003025 */ move $a2, $zero
|
||||
.L8005FEC4:
|
||||
/* 060AC4 8005FEC4 848C0000 */ lh $t4, ($a0)
|
||||
/* 060AC8 8005FEC8 24C60001 */ addiu $a2, $a2, 1
|
||||
/* 060ACC 8005FECC A46C0000 */ sh $t4, ($v1)
|
||||
/* 060AD0 8005FED0 848D0002 */ lh $t5, 2($a0)
|
||||
/* 060AD4 8005FED4 2463000A */ addiu $v1, $v1, 0xa
|
||||
/* 060AD8 8005FED8 A46DFFF8 */ sh $t5, -8($v1)
|
||||
/* 060ADC 8005FEDC 848E0004 */ lh $t6, 4($a0)
|
||||
/* 060AE0 8005FEE0 2484000A */ addiu $a0, $a0, 0xa
|
||||
/* 060AE4 8005FEE4 A46EFFFA */ sh $t6, -6($v1)
|
||||
/* 060AE8 8005FEE8 908FFFFC */ lbu $t7, -4($a0)
|
||||
/* 060AEC 8005FEEC 00000000 */ nop
|
||||
/* 060AF0 8005FEF0 A06FFFFC */ sb $t7, -4($v1)
|
||||
/* 060AF4 8005FEF4 9098FFFD */ lbu $t8, -3($a0)
|
||||
/* 060AF8 8005FEF8 00000000 */ nop
|
||||
/* 060AFC 8005FEFC A078FFFD */ sb $t8, -3($v1)
|
||||
/* 060B00 8005FF00 9099FFFE */ lbu $t9, -2($a0)
|
||||
/* 060B04 8005FF04 00000000 */ nop
|
||||
/* 060B08 8005FF08 A079FFFE */ sb $t9, -2($v1)
|
||||
/* 060B0C 8005FF0C 9088FFFF */ lbu $t0, -1($a0)
|
||||
/* 060B10 8005FF10 00000000 */ nop
|
||||
/* 060B14 8005FF14 A068FFFF */ sb $t0, -1($v1)
|
||||
/* 060B18 8005FF18 84E90024 */ lh $t1, 0x24($a3)
|
||||
/* 060B1C 8005FF1C 00000000 */ nop
|
||||
/* 060B20 8005FF20 00C9082A */ slt $at, $a2, $t1
|
||||
/* 060B24 8005FF24 1420FFE7 */ bnez $at, .L8005FEC4
|
||||
/* 060B28 8005FF28 00000000 */ nop
|
||||
.L8005FF2C:
|
||||
/* 060B2C 8005FF2C 00A01025 */ move $v0, $a1
|
||||
.L8005FF30:
|
||||
/* 060B30 8005FF30 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 060B34 8005FF34 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* 060B38 8005FF38 03E00008 */ jr $ra
|
||||
/* 060B3C 8005FF3C 00000000 */ nop
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
glabel func_8005FF40
|
||||
/* 060B40 8005FF40 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 060B44 8005FF44 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 060B48 8005FF48 1080003F */ beqz $a0, .L80060048
|
||||
/* 060B4C 8005FF4C 00803825 */ move $a3, $a0
|
||||
/* 060B50 8005FF50 8C850000 */ lw $a1, ($a0)
|
||||
/* 060B54 8005FF54 3C038012 */ lui $v1, %hi(D_8011D62C) # $v1, 0x8012
|
||||
/* 060B58 8005FF58 84AE0030 */ lh $t6, 0x30($a1)
|
||||
/* 060B5C 8005FF5C 2408FFFF */ li $t0, -1
|
||||
/* 060B60 8005FF60 25CFFFFF */ addiu $t7, $t6, -1
|
||||
/* 060B64 8005FF64 A4AF0030 */ sh $t7, 0x30($a1)
|
||||
/* 060B68 8005FF68 84B80030 */ lh $t8, 0x30($a1)
|
||||
/* 060B6C 8005FF6C 00000000 */ nop
|
||||
/* 060B70 8005FF70 1B000005 */ blez $t8, .L8005FF88
|
||||
/* 060B74 8005FF74 00000000 */ nop
|
||||
/* 060B78 8005FF78 0C01C450 */ jal free_from_memory_pool
|
||||
/* 060B7C 8005FF7C 00000000 */ nop
|
||||
/* 060B80 8005FF80 10000032 */ b .L8006004C
|
||||
/* 060B84 8005FF84 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L8005FF88:
|
||||
/* 060B88 8005FF88 8C63D62C */ lw $v1, %lo(D_8011D62C)($v1)
|
||||
/* 060B8C 8005FF8C 2406FFFF */ li $a2, -1
|
||||
/* 060B90 8005FF90 1860000F */ blez $v1, .L8005FFD0
|
||||
/* 060B94 8005FF94 00001025 */ move $v0, $zero
|
||||
/* 060B98 8005FF98 3C048012 */ lui $a0, %hi(D_8011D624) # $a0, 0x8012
|
||||
/* 060B9C 8005FF9C 8C84D624 */ lw $a0, %lo(D_8011D624)($a0)
|
||||
/* 060BA0 8005FFA0 00000000 */ nop
|
||||
/* 060BA4 8005FFA4 000248C0 */ sll $t1, $v0, 3
|
||||
.L8005FFA8:
|
||||
/* 060BA8 8005FFA8 00895021 */ addu $t2, $a0, $t1
|
||||
/* 060BAC 8005FFAC 8D4B0004 */ lw $t3, 4($t2)
|
||||
/* 060BB0 8005FFB0 00000000 */ nop
|
||||
/* 060BB4 8005FFB4 14AB0002 */ bne $a1, $t3, .L8005FFC0
|
||||
/* 060BB8 8005FFB8 00000000 */ nop
|
||||
/* 060BBC 8005FFBC 00403025 */ move $a2, $v0
|
||||
.L8005FFC0:
|
||||
/* 060BC0 8005FFC0 24420001 */ addiu $v0, $v0, 1
|
||||
/* 060BC4 8005FFC4 0043082A */ slt $at, $v0, $v1
|
||||
/* 060BC8 8005FFC8 1420FFF7 */ bnez $at, .L8005FFA8
|
||||
/* 060BCC 8005FFCC 000248C0 */ sll $t1, $v0, 3
|
||||
.L8005FFD0:
|
||||
/* 060BD0 8005FFD0 10C8001D */ beq $a2, $t0, .L80060048
|
||||
/* 060BD4 8005FFD4 00A02025 */ move $a0, $a1
|
||||
/* 060BD8 8005FFD8 AFA60018 */ sw $a2, 0x18($sp)
|
||||
/* 060BDC 8005FFDC 0C018016 */ jal free_object_model
|
||||
/* 060BE0 8005FFE0 AFA70020 */ sw $a3, 0x20($sp)
|
||||
/* 060BE4 8005FFE4 3C038012 */ lui $v1, %hi(D_8011D634) # $v1, 0x8012
|
||||
/* 060BE8 8005FFE8 2463D634 */ addiu $v1, %lo(D_8011D634) # addiu $v1, $v1, -0x29cc
|
||||
/* 060BEC 8005FFEC 8C6D0000 */ lw $t5, ($v1)
|
||||
/* 060BF0 8005FFF0 3C0C8012 */ lui $t4, %hi(D_8011D628) # $t4, 0x8012
|
||||
/* 060BF4 8005FFF4 8D8CD628 */ lw $t4, %lo(D_8011D628)($t4)
|
||||
/* 060BF8 8005FFF8 8FA20018 */ lw $v0, 0x18($sp)
|
||||
/* 060BFC 8005FFFC 000D7080 */ sll $t6, $t5, 2
|
||||
/* 060C00 80060000 8FA40020 */ lw $a0, 0x20($sp)
|
||||
/* 060C04 80060004 018E7821 */ addu $t7, $t4, $t6
|
||||
/* 060C08 80060008 3C058012 */ lui $a1, %hi(D_8011D624) # $a1, 0x8012
|
||||
/* 060C0C 8006000C ADE20000 */ sw $v0, ($t7)
|
||||
/* 060C10 80060010 8C780000 */ lw $t8, ($v1)
|
||||
/* 060C14 80060014 24A5D624 */ addiu $a1, %lo(D_8011D624) # addiu $a1, $a1, -0x29dc
|
||||
/* 060C18 80060018 8CAA0000 */ lw $t2, ($a1)
|
||||
/* 060C1C 8006001C 000248C0 */ sll $t1, $v0, 3
|
||||
/* 060C20 80060020 27190001 */ addiu $t9, $t8, 1
|
||||
/* 060C24 80060024 2408FFFF */ li $t0, -1
|
||||
/* 060C28 80060028 AC790000 */ sw $t9, ($v1)
|
||||
/* 060C2C 8006002C 01495821 */ addu $t3, $t2, $t1
|
||||
/* 060C30 80060030 AD680000 */ sw $t0, ($t3)
|
||||
/* 060C34 80060034 8CAD0000 */ lw $t5, ($a1)
|
||||
/* 060C38 80060038 00000000 */ nop
|
||||
/* 060C3C 8006003C 01A96021 */ addu $t4, $t5, $t1
|
||||
/* 060C40 80060040 0C01C450 */ jal free_from_memory_pool
|
||||
/* 060C44 80060044 AD880004 */ sw $t0, 4($t4)
|
||||
.L80060048:
|
||||
/* 060C48 80060048 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L8006004C:
|
||||
/* 060C4C 8006004C 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* 060C50 80060050 03E00008 */ jr $ra
|
||||
/* 060C54 80060054 00000000 */ nop
|
||||
|
||||
@@ -1,142 +0,0 @@
|
||||
glabel func_80061A00
|
||||
/* 062600 80061A00 27BDFFB8 */ addiu $sp, $sp, -0x48
|
||||
/* 062604 80061A04 3C0E8012 */ lui $t6, %hi(gAnimationTable) # $t6, 0x8012
|
||||
/* 062608 80061A08 8DCED638 */ lw $t6, %lo(gAnimationTable)($t6)
|
||||
/* 06260C 80061A0C 00057840 */ sll $t7, $a1, 1
|
||||
/* 062610 80061A10 AFBF003C */ sw $ra, 0x3c($sp)
|
||||
/* 062614 80061A14 AFBE0038 */ sw $fp, 0x38($sp)
|
||||
/* 062618 80061A18 AFB70034 */ sw $s7, 0x34($sp)
|
||||
/* 06261C 80061A1C AFB60030 */ sw $s6, 0x30($sp)
|
||||
/* 062620 80061A20 AFB5002C */ sw $s5, 0x2c($sp)
|
||||
/* 062624 80061A24 AFB40028 */ sw $s4, 0x28($sp)
|
||||
/* 062628 80061A28 AFB30024 */ sw $s3, 0x24($sp)
|
||||
/* 06262C 80061A2C AFB20020 */ sw $s2, 0x20($sp)
|
||||
/* 062630 80061A30 AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 062634 80061A34 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 062638 80061A38 01CF1021 */ addu $v0, $t6, $t7
|
||||
/* 06263C 80061A3C 84500000 */ lh $s0, ($v0)
|
||||
/* 062640 80061A40 84430002 */ lh $v1, 2($v0)
|
||||
/* 062644 80061A44 0080A825 */ move $s5, $a0
|
||||
/* 062648 80061A48 16030004 */ bne $s0, $v1, .L80061A5C
|
||||
/* 06264C 80061A4C 3C028012 */ lui $v0, %hi(D_8011D640) # $v0, 0x8012
|
||||
/* 062650 80061A50 A4800048 */ sh $zero, 0x48($a0)
|
||||
/* 062654 80061A54 10000061 */ b .L80061BDC
|
||||
/* 062658 80061A58 00001025 */ move $v0, $zero
|
||||
.L80061A5C:
|
||||
/* 06265C 80061A5C 8C42D640 */ lw $v0, %lo(D_8011D640)($v0)
|
||||
/* 062660 80061A60 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00
|
||||
/* 062664 80061A64 10400006 */ beqz $v0, .L80061A80
|
||||
/* 062668 80061A68 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff
|
||||
/* 06266C 80061A6C 02022021 */ addu $a0, $s0, $v0
|
||||
/* 062670 80061A70 0083082A */ slt $at, $a0, $v1
|
||||
/* 062674 80061A74 10200003 */ beqz $at, .L80061A84
|
||||
/* 062678 80061A78 0070C023 */ subu $t8, $v1, $s0
|
||||
/* 06267C 80061A7C 00801825 */ move $v1, $a0
|
||||
.L80061A80:
|
||||
/* 062680 80061A80 0070C023 */ subu $t8, $v1, $s0
|
||||
.L80061A84:
|
||||
/* 062684 80061A84 A6B80048 */ sh $t8, 0x48($s5)
|
||||
/* 062688 80061A88 86A40048 */ lh $a0, 0x48($s5)
|
||||
/* 06268C 80061A8C AFA30040 */ sw $v1, 0x40($sp)
|
||||
/* 062690 80061A90 0004C8C0 */ sll $t9, $a0, 3
|
||||
/* 062694 80061A94 0C01C344 */ jal allocate_from_main_pool
|
||||
/* 062698 80061A98 03202025 */ move $a0, $t9
|
||||
/* 06269C 80061A9C 14400003 */ bnez $v0, .L80061AAC
|
||||
/* 0626A0 80061AA0 AEA20044 */ sw $v0, 0x44($s5)
|
||||
/* 0626A4 80061AA4 1000004D */ b .L80061BDC
|
||||
/* 0626A8 80061AA8 24020001 */ li $v0, 1
|
||||
.L80061AAC:
|
||||
/* 0626AC 80061AAC 0000F025 */ move $fp, $zero
|
||||
/* 0626B0 80061AB0 0010A080 */ sll $s4, $s0, 2
|
||||
/* 0626B4 80061AB4 00008825 */ move $s1, $zero
|
||||
.L80061AB8:
|
||||
/* 0626B8 80061AB8 3C088012 */ lui $t0, %hi(gObjectAnimationTable) # $t0, 0x8012
|
||||
/* 0626BC 80061ABC 8D08D63C */ lw $t0, %lo(gObjectAnimationTable)($t0)
|
||||
/* 0626C0 80061AC0 24040020 */ li $a0, 32
|
||||
/* 0626C4 80061AC4 01141021 */ addu $v0, $t0, $s4
|
||||
/* 0626C8 80061AC8 8C520000 */ lw $s2, ($v0)
|
||||
/* 0626CC 80061ACC 8C490004 */ lw $t1, 4($v0)
|
||||
/* 0626D0 80061AD0 02402825 */ move $a1, $s2
|
||||
/* 0626D4 80061AD4 0C031877 */ jal get_asset_uncompressed_size
|
||||
/* 0626D8 80061AD8 01329823 */ subu $s3, $t1, $s2
|
||||
/* 0626DC 80061ADC 24440080 */ addiu $a0, $v0, 0x80
|
||||
/* 0626E0 80061AE0 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00
|
||||
/* 0626E4 80061AE4 0080B025 */ move $s6, $a0
|
||||
/* 0626E8 80061AE8 0C01C344 */ jal allocate_from_main_pool
|
||||
/* 0626EC 80061AEC 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff
|
||||
/* 0626F0 80061AF0 8EAA0044 */ lw $t2, 0x44($s5)
|
||||
/* 0626F4 80061AF4 02403025 */ move $a2, $s2
|
||||
/* 0626F8 80061AF8 01515821 */ addu $t3, $t2, $s1
|
||||
/* 0626FC 80061AFC AD620000 */ sw $v0, ($t3)
|
||||
/* 062700 80061B00 8EA40044 */ lw $a0, 0x44($s5)
|
||||
/* 062704 80061B04 8FB70040 */ lw $s7, 0x40($sp)
|
||||
/* 062708 80061B08 00916021 */ addu $t4, $a0, $s1
|
||||
/* 06270C 80061B0C 8D830000 */ lw $v1, ($t4)
|
||||
/* 062710 80061B10 02603825 */ move $a3, $s3
|
||||
/* 062714 80061B14 14600014 */ bnez $v1, .L80061B68
|
||||
/* 062718 80061B18 00767821 */ addu $t7, $v1, $s6
|
||||
/* 06271C 80061B1C 1BC0000D */ blez $fp, .L80061B54
|
||||
/* 062720 80061B20 00008025 */ move $s0, $zero
|
||||
/* 062724 80061B24 00008825 */ move $s1, $zero
|
||||
.L80061B28:
|
||||
/* 062728 80061B28 8EAD0044 */ lw $t5, 0x44($s5)
|
||||
/* 06272C 80061B2C 00000000 */ nop
|
||||
/* 062730 80061B30 01B17021 */ addu $t6, $t5, $s1
|
||||
/* 062734 80061B34 8DC40000 */ lw $a0, ($t6)
|
||||
/* 062738 80061B38 0C01C450 */ jal free_from_memory_pool
|
||||
/* 06273C 80061B3C 00000000 */ nop
|
||||
/* 062740 80061B40 26100001 */ addiu $s0, $s0, 1
|
||||
/* 062744 80061B44 161EFFF8 */ bne $s0, $fp, .L80061B28
|
||||
/* 062748 80061B48 26310008 */ addiu $s1, $s1, 8
|
||||
/* 06274C 80061B4C 8EA40044 */ lw $a0, 0x44($s5)
|
||||
/* 062750 80061B50 00000000 */ nop
|
||||
.L80061B54:
|
||||
/* 062754 80061B54 0C01C450 */ jal free_from_memory_pool
|
||||
/* 062758 80061B58 00000000 */ nop
|
||||
/* 06275C 80061B5C AEA00044 */ sw $zero, 0x44($s5)
|
||||
/* 062760 80061B60 1000001E */ b .L80061BDC
|
||||
/* 062764 80061B64 24020001 */ li $v0, 1
|
||||
.L80061B68:
|
||||
/* 062768 80061B68 01F38023 */ subu $s0, $t7, $s3
|
||||
/* 06276C 80061B6C 0017C080 */ sll $t8, $s7, 2
|
||||
/* 062770 80061B70 0300B825 */ move $s7, $t8
|
||||
/* 062774 80061B74 02002825 */ move $a1, $s0
|
||||
/* 062778 80061B78 0C01DB9A */ jal load_asset_to_address
|
||||
/* 06277C 80061B7C 24040020 */ li $a0, 32
|
||||
/* 062780 80061B80 8EB90044 */ lw $t9, 0x44($s5)
|
||||
/* 062784 80061B84 02002025 */ move $a0, $s0
|
||||
/* 062788 80061B88 03314021 */ addu $t0, $t9, $s1
|
||||
/* 06278C 80061B8C 8D050000 */ lw $a1, ($t0)
|
||||
/* 062790 80061B90 0C031886 */ jal gzip_inflate
|
||||
/* 062794 80061B94 00000000 */ nop
|
||||
/* 062798 80061B98 8EA90044 */ lw $t1, 0x44($s5)
|
||||
/* 06279C 80061B9C 26940004 */ addiu $s4, $s4, 4
|
||||
/* 0627A0 80061BA0 01311821 */ addu $v1, $t1, $s1
|
||||
/* 0627A4 80061BA4 8C640000 */ lw $a0, ($v1)
|
||||
/* 0627A8 80061BA8 0297082A */ slt $at, $s4, $s7
|
||||
/* 0627AC 80061BAC 8C8A0000 */ lw $t2, ($a0)
|
||||
/* 0627B0 80061BB0 27DE0001 */ addiu $fp, $fp, 1
|
||||
/* 0627B4 80061BB4 AC6A0004 */ sw $t2, 4($v1)
|
||||
/* 0627B8 80061BB8 8EAB0044 */ lw $t3, 0x44($s5)
|
||||
/* 0627BC 80061BBC 00000000 */ nop
|
||||
/* 0627C0 80061BC0 01711821 */ addu $v1, $t3, $s1
|
||||
/* 0627C4 80061BC4 8C6C0000 */ lw $t4, ($v1)
|
||||
/* 0627C8 80061BC8 26310008 */ addiu $s1, $s1, 8
|
||||
/* 0627CC 80061BCC 258D0004 */ addiu $t5, $t4, 4
|
||||
/* 0627D0 80061BD0 1420FFB9 */ bnez $at, .L80061AB8
|
||||
/* 0627D4 80061BD4 AC6D0000 */ sw $t5, ($v1)
|
||||
/* 0627D8 80061BD8 00001025 */ move $v0, $zero
|
||||
.L80061BDC:
|
||||
/* 0627DC 80061BDC 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 0627E0 80061BE0 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 0627E4 80061BE4 8FB1001C */ lw $s1, 0x1c($sp)
|
||||
/* 0627E8 80061BE8 8FB20020 */ lw $s2, 0x20($sp)
|
||||
/* 0627EC 80061BEC 8FB30024 */ lw $s3, 0x24($sp)
|
||||
/* 0627F0 80061BF0 8FB40028 */ lw $s4, 0x28($sp)
|
||||
/* 0627F4 80061BF4 8FB5002C */ lw $s5, 0x2c($sp)
|
||||
/* 0627F8 80061BF8 8FB60030 */ lw $s6, 0x30($sp)
|
||||
/* 0627FC 80061BFC 8FB70034 */ lw $s7, 0x34($sp)
|
||||
/* 062800 80061C00 8FBE0038 */ lw $fp, 0x38($sp)
|
||||
/* 062804 80061C04 03E00008 */ jr $ra
|
||||
/* 062808 80061C08 27BD0048 */ addiu $sp, $sp, 0x48
|
||||
|
||||
@@ -1,353 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_800E5638
|
||||
.float -20000.0
|
||||
glabel D_800E563C
|
||||
.float -10000.0
|
||||
|
||||
.text
|
||||
glabel func_8001BF20
|
||||
/* 01CB20 8001BF20 27BDFE70 */ addiu $sp, $sp, -0x190
|
||||
/* 01CB24 8001BF24 3C028012 */ lui $v0, %hi(D_8011AF10) # $v0, 0x8012
|
||||
/* 01CB28 8001BF28 2442AF10 */ addiu $v0, %lo(D_8011AF10) # addiu $v0, $v0, -0x50f0
|
||||
/* 01CB2C 8001BF2C 8C4E0000 */ lw $t6, ($v0)
|
||||
/* 01CB30 8001BF30 AFBF003C */ sw $ra, 0x3c($sp)
|
||||
/* 01CB34 8001BF34 AFBE0038 */ sw $fp, 0x38($sp)
|
||||
/* 01CB38 8001BF38 AFB70034 */ sw $s7, 0x34($sp)
|
||||
/* 01CB3C 8001BF3C AFB60030 */ sw $s6, 0x30($sp)
|
||||
/* 01CB40 8001BF40 AFB5002C */ sw $s5, 0x2c($sp)
|
||||
/* 01CB44 8001BF44 AFB40028 */ sw $s4, 0x28($sp)
|
||||
/* 01CB48 8001BF48 AFB30024 */ sw $s3, 0x24($sp)
|
||||
/* 01CB4C 8001BF4C AFB20020 */ sw $s2, 0x20($sp)
|
||||
/* 01CB50 8001BF50 AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 01CB54 8001BF54 11C00124 */ beqz $t6, .L8001C3E8
|
||||
/* 01CB58 8001BF58 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 01CB5C 8001BF5C 3C0A8012 */ lui $t2, %hi(D_8011AF04) # $t2, 0x8012
|
||||
/* 01CB60 8001BF60 AC400000 */ sw $zero, ($v0)
|
||||
/* 01CB64 8001BF64 254AAF04 */ addiu $t2, %lo(D_8011AF04) # addiu $t2, $t2, -0x50fc
|
||||
/* 01CB68 8001BF68 0000F025 */ move $fp, $zero
|
||||
.L8001BF6C:
|
||||
/* 01CB6C 8001BF6C 8D4F0000 */ lw $t7, ($t2)
|
||||
/* 01CB70 8001BF70 00000000 */ nop
|
||||
/* 01CB74 8001BF74 01FEC021 */ addu $t8, $t7, $fp
|
||||
/* 01CB78 8001BF78 27DE0004 */ addiu $fp, $fp, 4
|
||||
/* 01CB7C 8001BF7C 2BC10200 */ slti $at, $fp, 0x200
|
||||
/* 01CB80 8001BF80 1420FFFA */ bnez $at, .L8001BF6C
|
||||
/* 01CB84 8001BF84 AF000000 */ sw $zero, ($t8)
|
||||
/* 01CB88 8001BF88 3C048012 */ lui $a0, %hi(gObjectCount) # $a0, 0x8012
|
||||
/* 01CB8C 8001BF8C 8C84AE5C */ lw $a0, %lo(gObjectCount)($a0)
|
||||
/* 01CB90 8001BF90 A7A00186 */ sh $zero, 0x186($sp)
|
||||
/* 01CB94 8001BF94 1880002D */ blez $a0, .L8001C04C
|
||||
/* 01CB98 8001BF98 00003825 */ move $a3, $zero
|
||||
/* 01CB9C 8001BF9C 3C058012 */ lui $a1, %hi(gObjPtrList) # $a1, 0x8012
|
||||
/* 01CBA0 8001BFA0 24A5AE58 */ addiu $a1, %lo(gObjPtrList) # addiu $a1, $a1, -0x51a8
|
||||
/* 01CBA4 8001BFA4 0000F025 */ move $fp, $zero
|
||||
/* 01CBA8 8001BFA8 27B70064 */ addiu $s7, $sp, 0x64
|
||||
/* 01CBAC 8001BFAC 24060010 */ li $a2, 16
|
||||
.L8001BFB0:
|
||||
/* 01CBB0 8001BFB0 8CB90000 */ lw $t9, ($a1)
|
||||
/* 01CBB4 8001BFB4 24E70001 */ addiu $a3, $a3, 1
|
||||
/* 01CBB8 8001BFB8 033E5821 */ addu $t3, $t9, $fp
|
||||
/* 01CBBC 8001BFBC 8D730000 */ lw $s3, ($t3)
|
||||
/* 01CBC0 8001BFC0 00000000 */ nop
|
||||
/* 01CBC4 8001BFC4 866C0006 */ lh $t4, 6($s3)
|
||||
/* 01CBC8 8001BFC8 00000000 */ nop
|
||||
/* 01CBCC 8001BFCC 318D8000 */ andi $t5, $t4, 0x8000
|
||||
/* 01CBD0 8001BFD0 15A0001C */ bnez $t5, .L8001C044
|
||||
/* 01CBD4 8001BFD4 00E4082A */ slt $at, $a3, $a0
|
||||
/* 01CBD8 8001BFD8 866E0048 */ lh $t6, 0x48($s3)
|
||||
/* 01CBDC 8001BFDC 00000000 */ nop
|
||||
/* 01CBE0 8001BFE0 14CE0018 */ bne $a2, $t6, .L8001C044
|
||||
/* 01CBE4 8001BFE4 00E4082A */ slt $at, $a3, $a0
|
||||
/* 01CBE8 8001BFE8 8E62003C */ lw $v0, 0x3c($s3)
|
||||
/* 01CBEC 8001BFEC 00000000 */ nop
|
||||
/* 01CBF0 8001BFF0 90430009 */ lbu $v1, 9($v0)
|
||||
/* 01CBF4 8001BFF4 00000000 */ nop
|
||||
/* 01CBF8 8001BFF8 306F0080 */ andi $t7, $v1, 0x80
|
||||
/* 01CBFC 8001BFFC 15E00010 */ bnez $t7, .L8001C040
|
||||
/* 01CC00 8001C000 0003C880 */ sll $t9, $v1, 2
|
||||
/* 01CC04 8001C004 8D580000 */ lw $t8, ($t2)
|
||||
/* 01CC08 8001C008 3C048012 */ lui $a0, %hi(gObjectCount) # $a0, 0x8012
|
||||
/* 01CC0C 8001C00C 03195821 */ addu $t3, $t8, $t9
|
||||
/* 01CC10 8001C010 AD730000 */ sw $s3, ($t3)
|
||||
/* 01CC14 8001C014 87AD0186 */ lh $t5, 0x186($sp)
|
||||
/* 01CC18 8001C018 904C0009 */ lbu $t4, 9($v0)
|
||||
/* 01CC1C 8001C01C 03AD7021 */ addu $t6, $sp, $t5
|
||||
/* 01CC20 8001C020 A1CC00E4 */ sb $t4, 0xe4($t6)
|
||||
/* 01CC24 8001C024 804F000E */ lb $t7, 0xe($v0)
|
||||
/* 01CC28 8001C028 02EDC821 */ addu $t9, $s7, $t5
|
||||
/* 01CC2C 8001C02C 31F80003 */ andi $t8, $t7, 3
|
||||
/* 01CC30 8001C030 A3380000 */ sb $t8, ($t9)
|
||||
/* 01CC34 8001C034 25AB0001 */ addiu $t3, $t5, 1
|
||||
/* 01CC38 8001C038 8C84AE5C */ lw $a0, %lo(gObjectCount)($a0)
|
||||
/* 01CC3C 8001C03C A7AB0186 */ sh $t3, 0x186($sp)
|
||||
.L8001C040:
|
||||
/* 01CC40 8001C040 00E4082A */ slt $at, $a3, $a0
|
||||
.L8001C044:
|
||||
/* 01CC44 8001C044 1420FFDA */ bnez $at, .L8001BFB0
|
||||
/* 01CC48 8001C048 27DE0004 */ addiu $fp, $fp, 4
|
||||
.L8001C04C:
|
||||
/* 01CC4C 8001C04C 87AC0186 */ lh $t4, 0x186($sp)
|
||||
/* 01CC50 8001C050 27B70064 */ addiu $s7, $sp, 0x64
|
||||
/* 01CC54 8001C054 118000E4 */ beqz $t4, .L8001C3E8
|
||||
/* 01CC58 8001C058 0000F025 */ move $fp, $zero
|
||||
/* 01CC5C 8001C05C 24160004 */ li $s6, 4
|
||||
/* 01CC60 8001C060 241500FF */ li $s5, 255
|
||||
.L8001C064:
|
||||
/* 01CC64 8001C064 8D4E0000 */ lw $t6, ($t2)
|
||||
/* 01CC68 8001C068 00000000 */ nop
|
||||
/* 01CC6C 8001C06C 01DE7821 */ addu $t7, $t6, $fp
|
||||
/* 01CC70 8001C070 8DF30000 */ lw $s3, ($t7)
|
||||
/* 01CC74 8001C074 00000000 */ nop
|
||||
/* 01CC78 8001C078 12600031 */ beqz $s3, .L8001C140
|
||||
/* 01CC7C 8001C07C 00000000 */ nop
|
||||
/* 01CC80 8001C080 8E740064 */ lw $s4, 0x64($s3)
|
||||
/* 01CC84 8001C084 8E70003C */ lw $s0, 0x3c($s3)
|
||||
/* 01CC88 8001C088 00008825 */ move $s1, $zero
|
||||
.L8001C08C:
|
||||
/* 01CC8C 8001C08C 9203000A */ lbu $v1, 0xa($s0)
|
||||
/* 01CC90 8001C090 00000000 */ nop
|
||||
/* 01CC94 8001C094 30780080 */ andi $t8, $v1, 0x80
|
||||
/* 01CC98 8001C098 17000026 */ bnez $t8, .L8001C134
|
||||
/* 01CC9C 8001C09C 00036880 */ sll $t5, $v1, 2
|
||||
/* 01CCA0 8001C0A0 8D590000 */ lw $t9, ($t2)
|
||||
/* 01CCA4 8001C0A4 00116080 */ sll $t4, $s1, 2
|
||||
/* 01CCA8 8001C0A8 032D5821 */ addu $t3, $t9, $t5
|
||||
/* 01CCAC 8001C0AC 8D620000 */ lw $v0, ($t3)
|
||||
/* 01CCB0 8001C0B0 028C7021 */ addu $t6, $s4, $t4
|
||||
/* 01CCB4 8001C0B4 14400003 */ bnez $v0, .L8001C0C4
|
||||
/* 01CCB8 8001C0B8 ADC20000 */ sw $v0, ($t6)
|
||||
/* 01CCBC 8001C0BC 1000001D */ b .L8001C134
|
||||
/* 01CCC0 8001C0C0 A215000A */ sb $s5, 0xa($s0)
|
||||
.L8001C0C4:
|
||||
/* 01CCC4 8001C0C4 C664000C */ lwc1 $f4, 0xc($s3)
|
||||
/* 01CCC8 8001C0C8 C446000C */ lwc1 $f6, 0xc($v0)
|
||||
/* 01CCCC 8001C0CC C6680010 */ lwc1 $f8, 0x10($s3)
|
||||
/* 01CCD0 8001C0D0 46062001 */ sub.s $f0, $f4, $f6
|
||||
/* 01CCD4 8001C0D4 C44A0010 */ lwc1 $f10, 0x10($v0)
|
||||
/* 01CCD8 8001C0D8 46000102 */ mul.s $f4, $f0, $f0
|
||||
/* 01CCDC 8001C0DC 460A4081 */ sub.s $f2, $f8, $f10
|
||||
/* 01CCE0 8001C0E0 C6700014 */ lwc1 $f16, 0x14($s3)
|
||||
/* 01CCE4 8001C0E4 C4520014 */ lwc1 $f18, 0x14($v0)
|
||||
/* 01CCE8 8001C0E8 46021182 */ mul.s $f6, $f2, $f2
|
||||
/* 01CCEC 8001C0EC 46128381 */ sub.s $f14, $f16, $f18
|
||||
/* 01CCF0 8001C0F0 00117840 */ sll $t7, $s1, 1
|
||||
/* 01CCF4 8001C0F4 028F9021 */ addu $s2, $s4, $t7
|
||||
/* 01CCF8 8001C0F8 460E7282 */ mul.s $f10, $f14, $f14
|
||||
/* 01CCFC 8001C0FC 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 01CD00 8001C100 0C0326B4 */ jal sqrtf
|
||||
/* 01CD04 8001C104 460A4300 */ add.s $f12, $f8, $f10
|
||||
/* 01CD08 8001C108 4458F800 */ cfc1 $t8, $31
|
||||
/* 01CD0C 8001C10C 3C0A8012 */ lui $t2, %hi(D_8011AF04) # $t2, 0x8012
|
||||
/* 01CD10 8001C110 37010003 */ ori $at, $t8, 3
|
||||
/* 01CD14 8001C114 38210002 */ xori $at, $at, 2
|
||||
/* 01CD18 8001C118 44C1F800 */ ctc1 $at, $31
|
||||
/* 01CD1C 8001C11C 254AAF04 */ addiu $t2, %lo(D_8011AF04) # addiu $t2, $t2, -0x50fc
|
||||
/* 01CD20 8001C120 46000424 */ cvt.w.s $f16, $f0
|
||||
/* 01CD24 8001C124 44198000 */ mfc1 $t9, $f16
|
||||
/* 01CD28 8001C128 44D8F800 */ ctc1 $t8, $31
|
||||
/* 01CD2C 8001C12C A6590010 */ sh $t9, 0x10($s2)
|
||||
/* 01CD30 8001C130 00000000 */ nop
|
||||
.L8001C134:
|
||||
/* 01CD34 8001C134 26310001 */ addiu $s1, $s1, 1
|
||||
/* 01CD38 8001C138 1636FFD4 */ bne $s1, $s6, .L8001C08C
|
||||
/* 01CD3C 8001C13C 26100001 */ addiu $s0, $s0, 1
|
||||
.L8001C140:
|
||||
/* 01CD40 8001C140 27DE0004 */ addiu $fp, $fp, 4
|
||||
/* 01CD44 8001C144 24010200 */ li $at, 512
|
||||
/* 01CD48 8001C148 17C1FFC6 */ bne $fp, $at, .L8001C064
|
||||
/* 01CD4C 8001C14C 00000000 */ nop
|
||||
/* 01CD50 8001C150 87A90186 */ lh $t1, 0x186($sp)
|
||||
/* 01CD54 8001C154 00003825 */ move $a3, $zero
|
||||
/* 01CD58 8001C158 2529FFFF */ addiu $t1, $t1, -1
|
||||
.L8001C15C:
|
||||
/* 01CD5C 8001C15C 19200053 */ blez $t1, .L8001C2AC
|
||||
/* 01CD60 8001C160 24110001 */ li $s1, 1
|
||||
/* 01CD64 8001C164 87A20186 */ lh $v0, 0x186($sp)
|
||||
/* 01CD68 8001C168 8D480000 */ lw $t0, ($t2)
|
||||
/* 01CD6C 8001C16C 2442FFFF */ addiu $v0, $v0, -1
|
||||
/* 01CD70 8001C170 304D0001 */ andi $t5, $v0, 1
|
||||
/* 01CD74 8001C174 11A00019 */ beqz $t5, .L8001C1DC
|
||||
/* 01CD78 8001C178 27AF00E4 */ addiu $t7, $sp, 0xe4
|
||||
/* 01CD7C 8001C17C 83AB00E5 */ lb $t3, 0xe5($sp)
|
||||
/* 01CD80 8001C180 83B800E4 */ lb $t8, 0xe4($sp)
|
||||
/* 01CD84 8001C184 000B6080 */ sll $t4, $t3, 2
|
||||
/* 01CD88 8001C188 010C7021 */ addu $t6, $t0, $t4
|
||||
/* 01CD8C 8001C18C 0018C880 */ sll $t9, $t8, 2
|
||||
/* 01CD90 8001C190 01196821 */ addu $t5, $t0, $t9
|
||||
/* 01CD94 8001C194 8DAC0000 */ lw $t4, ($t5)
|
||||
/* 01CD98 8001C198 8DCF0000 */ lw $t7, ($t6)
|
||||
/* 01CD9C 8001C19C C5820010 */ lwc1 $f2, 0x10($t4)
|
||||
/* 01CDA0 8001C1A0 C5E00010 */ lwc1 $f0, 0x10($t7)
|
||||
/* 01CDA4 8001C1A4 24070001 */ li $a3, 1
|
||||
/* 01CDA8 8001C1A8 4602003C */ c.lt.s $f0, $f2
|
||||
/* 01CDAC 8001C1AC 00000000 */ nop
|
||||
/* 01CDB0 8001C1B0 45000008 */ bc1f .L8001C1D4
|
||||
/* 01CDB4 8001C1B4 00000000 */ nop
|
||||
/* 01CDB8 8001C1B8 83A20064 */ lb $v0, 0x64($sp)
|
||||
/* 01CDBC 8001C1BC 83AE0065 */ lb $t6, 0x65($sp)
|
||||
/* 01CDC0 8001C1C0 A3AB00E4 */ sb $t3, 0xe4($sp)
|
||||
/* 01CDC4 8001C1C4 A3B800E5 */ sb $t8, 0xe5($sp)
|
||||
/* 01CDC8 8001C1C8 00008825 */ move $s1, $zero
|
||||
/* 01CDCC 8001C1CC A3A20065 */ sb $v0, 0x65($sp)
|
||||
/* 01CDD0 8001C1D0 A3AE0064 */ sb $t6, 0x64($sp)
|
||||
.L8001C1D4:
|
||||
/* 01CDD4 8001C1D4 10E90034 */ beq $a3, $t1, .L8001C2A8
|
||||
/* 01CDD8 8001C1D8 27AF00E4 */ addiu $t7, $sp, 0xe4
|
||||
.L8001C1DC:
|
||||
/* 01CDDC 8001C1DC 00EF2021 */ addu $a0, $a3, $t7
|
||||
.L8001C1E0:
|
||||
/* 01CDE0 8001C1E0 80850001 */ lb $a1, 1($a0)
|
||||
/* 01CDE4 8001C1E4 80860000 */ lb $a2, ($a0)
|
||||
/* 01CDE8 8001C1E8 0005C880 */ sll $t9, $a1, 2
|
||||
/* 01CDEC 8001C1EC 0006C080 */ sll $t8, $a2, 2
|
||||
/* 01CDF0 8001C1F0 01185821 */ addu $t3, $t0, $t8
|
||||
/* 01CDF4 8001C1F4 01196821 */ addu $t5, $t0, $t9
|
||||
/* 01CDF8 8001C1F8 8DAC0000 */ lw $t4, ($t5)
|
||||
/* 01CDFC 8001C1FC 8D6E0000 */ lw $t6, ($t3)
|
||||
/* 01CE00 8001C200 C5800010 */ lwc1 $f0, 0x10($t4)
|
||||
/* 01CE04 8001C204 C5D20010 */ lwc1 $f18, 0x10($t6)
|
||||
/* 01CE08 8001C208 02E71821 */ addu $v1, $s7, $a3
|
||||
/* 01CE0C 8001C20C 4612003C */ c.lt.s $f0, $f18
|
||||
/* 01CE10 8001C210 00000000 */ nop
|
||||
/* 01CE14 8001C214 4500000E */ bc1f .L8001C250
|
||||
/* 01CE18 8001C218 00000000 */ nop
|
||||
/* 01CE1C 8001C21C A0850000 */ sb $a1, ($a0)
|
||||
/* 01CE20 8001C220 A0860001 */ sb $a2, 1($a0)
|
||||
/* 01CE24 8001C224 80850001 */ lb $a1, 1($a0)
|
||||
/* 01CE28 8001C228 80620000 */ lb $v0, ($v1)
|
||||
/* 01CE2C 8001C22C 80790001 */ lb $t9, 1($v1)
|
||||
/* 01CE30 8001C230 00056880 */ sll $t5, $a1, 2
|
||||
/* 01CE34 8001C234 010D6021 */ addu $t4, $t0, $t5
|
||||
/* 01CE38 8001C238 A0620001 */ sb $v0, 1($v1)
|
||||
/* 01CE3C 8001C23C A0790000 */ sb $t9, ($v1)
|
||||
/* 01CE40 8001C240 8D980000 */ lw $t8, ($t4)
|
||||
/* 01CE44 8001C244 00008825 */ move $s1, $zero
|
||||
/* 01CE48 8001C248 C7000010 */ lwc1 $f0, 0x10($t8)
|
||||
/* 01CE4C 8001C24C 00000000 */ nop
|
||||
.L8001C250:
|
||||
/* 01CE50 8001C250 80860002 */ lb $a2, 2($a0)
|
||||
/* 01CE54 8001C254 02E71821 */ addu $v1, $s7, $a3
|
||||
/* 01CE58 8001C258 00065880 */ sll $t3, $a2, 2
|
||||
/* 01CE5C 8001C25C 010B7021 */ addu $t6, $t0, $t3
|
||||
/* 01CE60 8001C260 8DCF0000 */ lw $t7, ($t6)
|
||||
/* 01CE64 8001C264 00000000 */ nop
|
||||
/* 01CE68 8001C268 C5E40010 */ lwc1 $f4, 0x10($t7)
|
||||
/* 01CE6C 8001C26C 00000000 */ nop
|
||||
/* 01CE70 8001C270 4600203C */ c.lt.s $f4, $f0
|
||||
/* 01CE74 8001C274 00000000 */ nop
|
||||
/* 01CE78 8001C278 45000008 */ bc1f .L8001C29C
|
||||
/* 01CE7C 8001C27C 00000000 */ nop
|
||||
/* 01CE80 8001C280 80620001 */ lb $v0, 1($v1)
|
||||
/* 01CE84 8001C284 806D0002 */ lb $t5, 2($v1)
|
||||
/* 01CE88 8001C288 A0860001 */ sb $a2, 1($a0)
|
||||
/* 01CE8C 8001C28C A0850002 */ sb $a1, 2($a0)
|
||||
/* 01CE90 8001C290 00008825 */ move $s1, $zero
|
||||
/* 01CE94 8001C294 A0620002 */ sb $v0, 2($v1)
|
||||
/* 01CE98 8001C298 A06D0001 */ sb $t5, 1($v1)
|
||||
.L8001C29C:
|
||||
/* 01CE9C 8001C29C 24E70002 */ addiu $a3, $a3, 2
|
||||
/* 01CEA0 8001C2A0 14E9FFCF */ bne $a3, $t1, .L8001C1E0
|
||||
/* 01CEA4 8001C2A4 24840002 */ addiu $a0, $a0, 2
|
||||
.L8001C2A8:
|
||||
/* 01CEA8 8001C2A8 00003825 */ move $a3, $zero
|
||||
.L8001C2AC:
|
||||
/* 01CEAC 8001C2AC 1220FFAB */ beqz $s1, .L8001C15C
|
||||
/* 01CEB0 8001C2B0 00000000 */ nop
|
||||
/* 01CEB4 8001C2B4 3C01800E */ lui $at, %hi(D_800E5638) # $at, 0x800e
|
||||
/* 01CEB8 8001C2B8 3C028012 */ lui $v0, %hi(D_8011AF18) # $v0, 0x8012
|
||||
/* 01CEBC 8001C2BC 3C038012 */ lui $v1, %hi(D_8011AF2C) # $v1, 0x8012
|
||||
/* 01CEC0 8001C2C0 C4205638 */ lwc1 $f0, %lo(D_800E5638)($at)
|
||||
/* 01CEC4 8001C2C4 2463AF2C */ addiu $v1, %lo(D_8011AF2C) # addiu $v1, $v1, -0x50d4
|
||||
/* 01CEC8 8001C2C8 2442AF18 */ addiu $v0, %lo(D_8011AF18) # addiu $v0, $v0, -0x50e8
|
||||
.L8001C2CC:
|
||||
/* 01CECC 8001C2CC 24420004 */ addiu $v0, $v0, 4
|
||||
/* 01CED0 8001C2D0 0043082B */ sltu $at, $v0, $v1
|
||||
/* 01CED4 8001C2D4 1420FFFD */ bnez $at, .L8001C2CC
|
||||
/* 01CED8 8001C2D8 E440FFFC */ swc1 $f0, -4($v0)
|
||||
/* 01CEDC 8001C2DC 83A20064 */ lb $v0, 0x64($sp)
|
||||
/* 01CEE0 8001C2E0 19200038 */ blez $t1, .L8001C3C4
|
||||
/* 01CEE4 8001C2E4 00003825 */ move $a3, $zero
|
||||
/* 01CEE8 8001C2E8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000
|
||||
/* 01CEEC 8001C2EC 3C068012 */ lui $a2, %hi(D_8011AF18) # $a2, 0x8012
|
||||
/* 01CEF0 8001C2F0 44810800 */ mtc1 $at, $f1
|
||||
/* 01CEF4 8001C2F4 44800000 */ mtc1 $zero, $f0
|
||||
/* 01CEF8 8001C2F8 24C6AF18 */ addiu $a2, %lo(D_8011AF18) # addiu $a2, $a2, -0x50e8
|
||||
/* 01CEFC 8001C2FC 27AC0064 */ addiu $t4, $sp, 0x64
|
||||
.L8001C300:
|
||||
/* 01CF00 8001C300 00E9082A */ slt $at, $a3, $t1
|
||||
/* 01CF04 8001C304 1020000F */ beqz $at, .L8001C344
|
||||
/* 01CF08 8001C308 00EC1821 */ addu $v1, $a3, $t4
|
||||
/* 01CF0C 8001C30C 80780000 */ lb $t8, ($v1)
|
||||
/* 01CF10 8001C310 00000000 */ nop
|
||||
/* 01CF14 8001C314 0058082A */ slt $at, $v0, $t8
|
||||
/* 01CF18 8001C318 1420000A */ bnez $at, .L8001C344
|
||||
/* 01CF1C 8001C31C 00000000 */ nop
|
||||
.L8001C320:
|
||||
/* 01CF20 8001C320 24E70001 */ addiu $a3, $a3, 1
|
||||
/* 01CF24 8001C324 00E9082A */ slt $at, $a3, $t1
|
||||
/* 01CF28 8001C328 10200006 */ beqz $at, .L8001C344
|
||||
/* 01CF2C 8001C32C 24630001 */ addiu $v1, $v1, 1
|
||||
/* 01CF30 8001C330 806B0000 */ lb $t3, ($v1)
|
||||
/* 01CF34 8001C334 00000000 */ nop
|
||||
/* 01CF38 8001C338 004B082A */ slt $at, $v0, $t3
|
||||
/* 01CF3C 8001C33C 1020FFF8 */ beqz $at, .L8001C320
|
||||
/* 01CF40 8001C340 00000000 */ nop
|
||||
.L8001C344:
|
||||
/* 01CF44 8001C344 80650000 */ lb $a1, ($v1)
|
||||
/* 01CF48 8001C348 27AF00E4 */ addiu $t7, $sp, 0xe4
|
||||
/* 01CF4C 8001C34C 0045082A */ slt $at, $v0, $a1
|
||||
/* 01CF50 8001C350 10200017 */ beqz $at, .L8001C3B0
|
||||
/* 01CF54 8001C354 00EF2021 */ addu $a0, $a3, $t7
|
||||
/* 01CF58 8001C358 00051600 */ sll $v0, $a1, 0x18
|
||||
/* 01CF5C 8001C35C 8D480000 */ lw $t0, ($t2)
|
||||
/* 01CF60 8001C360 8099FFFF */ lb $t9, -1($a0)
|
||||
/* 01CF64 8001C364 808B0000 */ lb $t3, ($a0)
|
||||
/* 01CF68 8001C368 00027603 */ sra $t6, $v0, 0x18
|
||||
/* 01CF6C 8001C36C 01C01025 */ move $v0, $t6
|
||||
/* 01CF70 8001C370 00196880 */ sll $t5, $t9, 2
|
||||
/* 01CF74 8001C374 000B7080 */ sll $t6, $t3, 2
|
||||
/* 01CF78 8001C378 010E7821 */ addu $t7, $t0, $t6
|
||||
/* 01CF7C 8001C37C 010D6021 */ addu $t4, $t0, $t5
|
||||
/* 01CF80 8001C380 8D980000 */ lw $t8, ($t4)
|
||||
/* 01CF84 8001C384 8DF90000 */ lw $t9, ($t7)
|
||||
/* 01CF88 8001C388 C7060010 */ lwc1 $f6, 0x10($t8)
|
||||
/* 01CF8C 8001C38C C7280010 */ lwc1 $f8, 0x10($t9)
|
||||
/* 01CF90 8001C390 00026880 */ sll $t5, $v0, 2
|
||||
/* 01CF94 8001C394 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 01CF98 8001C398 00CD6021 */ addu $t4, $a2, $t5
|
||||
/* 01CF9C 8001C39C 46005421 */ cvt.d.s $f16, $f10
|
||||
/* 01CFA0 8001C3A0 46208482 */ mul.d $f18, $f16, $f0
|
||||
/* 01CFA4 8001C3A4 46209120 */ cvt.s.d $f4, $f18
|
||||
/* 01CFA8 8001C3A8 10000003 */ b .L8001C3B8
|
||||
/* 01CFAC 8001C3AC E5840000 */ swc1 $f4, ($t4)
|
||||
.L8001C3B0:
|
||||
/* 01CFB0 8001C3B0 87A70186 */ lh $a3, 0x186($sp)
|
||||
/* 01CFB4 8001C3B4 00000000 */ nop
|
||||
.L8001C3B8:
|
||||
/* 01CFB8 8001C3B8 00E9082A */ slt $at, $a3, $t1
|
||||
/* 01CFBC 8001C3BC 1420FFD0 */ bnez $at, .L8001C300
|
||||
/* 01CFC0 8001C3C0 27AC0064 */ addiu $t4, $sp, 0x64
|
||||
.L8001C3C4:
|
||||
/* 01CFC4 8001C3C4 3C01800E */ lui $at, %hi(D_800E563C) # $at, 0x800e
|
||||
/* 01CFC8 8001C3C8 C426563C */ lwc1 $f6, %lo(D_800E563C)($at)
|
||||
/* 01CFCC 8001C3CC 3C068012 */ lui $a2, %hi(D_8011AF18) # $a2, 0x8012
|
||||
/* 01CFD0 8001C3D0 24C6AF18 */ addiu $a2, %lo(D_8011AF18) # addiu $a2, $a2, -0x50e8
|
||||
/* 01CFD4 8001C3D4 E4C60000 */ swc1 $f6, ($a2)
|
||||
/* 01CFD8 8001C3D8 C4C80000 */ lwc1 $f8, ($a2)
|
||||
/* 01CFDC 8001C3DC 00000000 */ nop
|
||||
/* 01CFE0 8001C3E0 46004287 */ neg.s $f10, $f8
|
||||
/* 01CFE4 8001C3E4 E4CA0010 */ swc1 $f10, 0x10($a2)
|
||||
.L8001C3E8:
|
||||
/* 01CFE8 8001C3E8 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 01CFEC 8001C3EC 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 01CFF0 8001C3F0 8FB1001C */ lw $s1, 0x1c($sp)
|
||||
/* 01CFF4 8001C3F4 8FB20020 */ lw $s2, 0x20($sp)
|
||||
/* 01CFF8 8001C3F8 8FB30024 */ lw $s3, 0x24($sp)
|
||||
/* 01CFFC 8001C3FC 8FB40028 */ lw $s4, 0x28($sp)
|
||||
/* 01D000 8001C400 8FB5002C */ lw $s5, 0x2c($sp)
|
||||
/* 01D004 8001C404 8FB60030 */ lw $s6, 0x30($sp)
|
||||
/* 01D008 8001C408 8FB70034 */ lw $s7, 0x34($sp)
|
||||
/* 01D00C 8001C40C 8FBE0038 */ lw $fp, 0x38($sp)
|
||||
/* 01D010 8001C410 03E00008 */ jr $ra
|
||||
/* 01D014 8001C414 27BD0190 */ addiu $sp, $sp, 0x190
|
||||
|
||||
@@ -1,187 +0,0 @@
|
||||
glabel func_80022E18
|
||||
/* 023A18 80022E18 27BDFFD0 */ addiu $sp, $sp, -0x30
|
||||
/* 023A1C 80022E1C AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 023A20 80022E20 0C01AF6C */ jal get_current_level_header
|
||||
/* 023A24 80022E24 AFA40030 */ sw $a0, 0x30($sp)
|
||||
/* 023A28 80022E28 240E0005 */ li $t6, 5
|
||||
/* 023A2C 80022E2C A04E004C */ sb $t6, 0x4c($v0)
|
||||
/* 023A30 80022E30 3C0F8012 */ lui $t7, %hi(D_8011AEF8) # $t7, 0x8012
|
||||
/* 023A34 80022E34 81EFAEF8 */ lb $t7, %lo(D_8011AEF8)($t7)
|
||||
/* 023A38 80022E38 3C188012 */ lui $t8, %hi(D_8011AEFC) # $t8, 0x8012
|
||||
/* 023A3C 80022E3C A04F0052 */ sb $t7, 0x52($v0)
|
||||
/* 023A40 80022E40 8F18AEFC */ lw $t8, %lo(D_8011AEFC)($t8)
|
||||
/* 023A44 80022E44 24040001 */ li $a0, 1
|
||||
/* 023A48 80022E48 0C02AC6B */ jal func_800AB1AC
|
||||
/* 023A4C 80022E4C A4580054 */ sh $t8, 0x54($v0)
|
||||
/* 023A50 80022E50 3C078012 */ lui $a3, %hi(gRacers) # $a3, 0x8012
|
||||
/* 023A54 80022E54 3C068012 */ lui $a2, %hi(gNumRacers) # $a2, 0x8012
|
||||
/* 023A58 80022E58 00002825 */ move $a1, $zero
|
||||
/* 023A5C 80022E5C 24C6AEF0 */ addiu $a2, %lo(gNumRacers) # addiu $a2, $a2, -0x5110
|
||||
/* 023A60 80022E60 24E7AEE4 */ addiu $a3, %lo(gRacers) # addiu $a3, $a3, -0x511c
|
||||
/* 023A64 80022E64 00001025 */ move $v0, $zero
|
||||
.L80022E68:
|
||||
/* 023A68 80022E68 8CF90000 */ lw $t9, ($a3)
|
||||
/* 023A6C 80022E6C 24A50001 */ addiu $a1, $a1, 1
|
||||
/* 023A70 80022E70 03224021 */ addu $t0, $t9, $v0
|
||||
/* 023A74 80022E74 8D090000 */ lw $t1, ($t0)
|
||||
/* 023A78 80022E78 24420004 */ addiu $v0, $v0, 4
|
||||
/* 023A7C 80022E7C 8D230064 */ lw $v1, 0x64($t1)
|
||||
/* 023A80 80022E80 00000000 */ nop
|
||||
/* 023A84 80022E84 A06001D8 */ sb $zero, 0x1d8($v1)
|
||||
/* 023A88 80022E88 A0600193 */ sb $zero, 0x193($v1)
|
||||
/* 023A8C 80022E8C A0600192 */ sb $zero, 0x192($v1)
|
||||
/* 023A90 80022E90 A4600190 */ sh $zero, 0x190($v1)
|
||||
/* 023A94 80022E94 8CCA0000 */ lw $t2, ($a2)
|
||||
/* 023A98 80022E98 00000000 */ nop
|
||||
/* 023A9C 80022E9C 00AA082A */ slt $at, $a1, $t2
|
||||
/* 023AA0 80022EA0 1420FFF1 */ bnez $at, .L80022E68
|
||||
/* 023AA4 80022EA4 00000000 */ nop
|
||||
/* 023AA8 80022EA8 8CEB0000 */ lw $t3, ($a3)
|
||||
/* 023AAC 80022EAC 00000000 */ nop
|
||||
/* 023AB0 80022EB0 8D640004 */ lw $a0, 4($t3)
|
||||
/* 023AB4 80022EB4 0C003FEE */ jal free_object
|
||||
/* 023AB8 80022EB8 00000000 */ nop
|
||||
/* 023ABC 80022EBC 3C078012 */ lui $a3, %hi(gRacers) # $a3, 0x8012
|
||||
/* 023AC0 80022EC0 24E7AEE4 */ addiu $a3, %lo(gRacers) # addiu $a3, $a3, -0x511c
|
||||
/* 023AC4 80022EC4 8CEC0000 */ lw $t4, ($a3)
|
||||
/* 023AC8 80022EC8 3C0E8012 */ lui $t6, %hi(gRacersByPosition) # $t6, 0x8012
|
||||
/* 023ACC 80022ECC 8DCEAEE8 */ lw $t6, %lo(gRacersByPosition)($t6)
|
||||
/* 023AD0 80022ED0 8D8D0000 */ lw $t5, ($t4)
|
||||
/* 023AD4 80022ED4 3C068012 */ lui $a2, %hi(gNumRacers) # $a2, 0x8012
|
||||
/* 023AD8 80022ED8 24C6AEF0 */ addiu $a2, %lo(gNumRacers) # addiu $a2, $a2, -0x5110
|
||||
/* 023ADC 80022EDC 240F0001 */ li $t7, 1
|
||||
/* 023AE0 80022EE0 ADCD0000 */ sw $t5, ($t6)
|
||||
/* 023AE4 80022EE4 ACCF0000 */ sw $t7, ($a2)
|
||||
/* 023AE8 80022EE8 3C058012 */ lui $a1, %hi(gObjectListStart) # $a1, 0x8012
|
||||
/* 023AEC 80022EEC 3C038012 */ lui $v1, %hi(gObjectCount) # $v1, 0x8012
|
||||
/* 023AF0 80022EF0 8C63AE5C */ lw $v1, %lo(gObjectCount)($v1)
|
||||
/* 023AF4 80022EF4 8CA5AE60 */ lw $a1, %lo(gObjectListStart)($a1)
|
||||
/* 023AF8 80022EF8 3C188012 */ lui $t8, %hi(gObjPtrList) # $t8, 0x8012
|
||||
/* 023AFC 80022EFC 00A3082A */ slt $at, $a1, $v1
|
||||
/* 023B00 80022F00 10200013 */ beqz $at, .L80022F50
|
||||
/* 023B04 80022F04 00051080 */ sll $v0, $a1, 2
|
||||
/* 023B08 80022F08 8F18AE58 */ lw $t8, %lo(gObjPtrList)($t8)
|
||||
/* 023B0C 80022F0C 00033080 */ sll $a2, $v1, 2
|
||||
/* 023B10 80022F10 2405003E */ li $a1, 62
|
||||
/* 023B14 80022F14 03022021 */ addu $a0, $t8, $v0
|
||||
.L80022F18:
|
||||
/* 023B18 80022F18 8C830000 */ lw $v1, ($a0)
|
||||
/* 023B1C 80022F1C 24420004 */ addiu $v0, $v0, 4
|
||||
/* 023B20 80022F20 84790006 */ lh $t9, 6($v1)
|
||||
/* 023B24 80022F24 0046082A */ slt $at, $v0, $a2
|
||||
/* 023B28 80022F28 33288000 */ andi $t0, $t9, 0x8000
|
||||
/* 023B2C 80022F2C 15000006 */ bnez $t0, .L80022F48
|
||||
/* 023B30 80022F30 00000000 */ nop
|
||||
/* 023B34 80022F34 84690048 */ lh $t1, 0x48($v1)
|
||||
/* 023B38 80022F38 00000000 */ nop
|
||||
/* 023B3C 80022F3C 14A90002 */ bne $a1, $t1, .L80022F48
|
||||
/* 023B40 80022F40 00000000 */ nop
|
||||
/* 023B44 80022F44 AFA3001C */ sw $v1, 0x1c($sp)
|
||||
.L80022F48:
|
||||
/* 023B48 80022F48 1420FFF3 */ bnez $at, .L80022F18
|
||||
/* 023B4C 80022F4C 24840004 */ addiu $a0, $a0, 4
|
||||
.L80022F50:
|
||||
/* 023B50 80022F50 8CEA0000 */ lw $t2, ($a3)
|
||||
/* 023B54 80022F54 00000000 */ nop
|
||||
/* 023B58 80022F58 8D4B0000 */ lw $t3, ($t2)
|
||||
/* 023B5C 80022F5C 00000000 */ nop
|
||||
/* 023B60 80022F60 8D630064 */ lw $v1, 0x64($t3)
|
||||
/* 023B64 80022F64 00000000 */ nop
|
||||
/* 023B68 80022F68 8C64015C */ lw $a0, 0x15c($v1)
|
||||
/* 023B6C 80022F6C 00000000 */ nop
|
||||
/* 023B70 80022F70 10800007 */ beqz $a0, .L80022F90
|
||||
/* 023B74 80022F74 8FAC0030 */ lw $t4, 0x30($sp)
|
||||
/* 023B78 80022F78 0C003FEE */ jal free_object
|
||||
/* 023B7C 80022F7C AFA30024 */ sw $v1, 0x24($sp)
|
||||
/* 023B80 80022F80 8FA30024 */ lw $v1, 0x24($sp)
|
||||
/* 023B84 80022F84 00000000 */ nop
|
||||
/* 023B88 80022F88 AC60015C */ sw $zero, 0x15c($v1)
|
||||
/* 023B8C 80022F8C 8FAC0030 */ lw $t4, 0x30($sp)
|
||||
.L80022F90:
|
||||
/* 023B90 80022F90 00000000 */ nop
|
||||
/* 023B94 80022F94 1580002C */ bnez $t4, .L80023048
|
||||
/* 023B98 80022F98 00000000 */ nop
|
||||
/* 023B9C 80022F9C 846D01AC */ lh $t5, 0x1ac($v1)
|
||||
/* 023BA0 80022FA0 24010001 */ li $at, 1
|
||||
/* 023BA4 80022FA4 15A1001F */ bne $t5, $at, .L80023024
|
||||
/* 023BA8 80022FA8 00000000 */ nop
|
||||
/* 023BAC 80022FAC 0C01BAA4 */ jal get_settings
|
||||
/* 023BB0 80022FB0 AFA30024 */ sw $v1, 0x24($sp)
|
||||
/* 023BB4 80022FB4 8FA30024 */ lw $v1, 0x24($sp)
|
||||
/* 023BB8 80022FB8 94580014 */ lhu $t8, 0x14($v0)
|
||||
/* 023BBC 80022FBC 806701D6 */ lb $a3, 0x1d6($v1)
|
||||
/* 023BC0 80022FC0 240F0001 */ li $t7, 1
|
||||
/* 023BC4 80022FC4 24EE0003 */ addiu $t6, $a3, 3
|
||||
/* 023BC8 80022FC8 01CF2804 */ sllv $a1, $t7, $t6
|
||||
/* 023BCC 80022FCC 0305C824 */ and $t9, $t8, $a1
|
||||
/* 023BD0 80022FD0 13200005 */ beqz $t9, .L80022FE8
|
||||
/* 023BD4 80022FD4 00403025 */ move $a2, $v0
|
||||
/* 023BD8 80022FD8 0C0274CC */ jal set_next_taj_challenge_menu
|
||||
/* 023BDC 80022FDC 24040005 */ li $a0, 5
|
||||
/* 023BE0 80022FE0 10000013 */ b .L80023030
|
||||
/* 023BE4 80022FE4 8FAB001C */ lw $t3, 0x1c($sp)
|
||||
.L80022FE8:
|
||||
/* 023BE8 80022FE8 24E40006 */ addiu $a0, $a3, 6
|
||||
/* 023BEC 80022FEC AFA5002C */ sw $a1, 0x2c($sp)
|
||||
/* 023BF0 80022FF0 0C0274CC */ jal set_next_taj_challenge_menu
|
||||
/* 023BF4 80022FF4 AFA60020 */ sw $a2, 0x20($sp)
|
||||
/* 023BF8 80022FF8 8FA60020 */ lw $a2, 0x20($sp)
|
||||
/* 023BFC 80022FFC 8FA5002C */ lw $a1, 0x2c($sp)
|
||||
/* 023C00 80023000 94C80014 */ lhu $t0, 0x14($a2)
|
||||
/* 023C04 80023004 00000000 */ nop
|
||||
/* 023C08 80023008 01054825 */ or $t1, $t0, $a1
|
||||
/* 023C0C 8002300C 0C027068 */ jal get_save_file_index
|
||||
/* 023C10 80023010 A4C90014 */ sh $t1, 0x14($a2)
|
||||
/* 023C14 80023014 0C01BB12 */ jal safe_mark_write_save_file
|
||||
/* 023C18 80023018 00402025 */ move $a0, $v0
|
||||
/* 023C1C 8002301C 10000004 */ b .L80023030
|
||||
/* 023C20 80023020 8FAB001C */ lw $t3, 0x1c($sp)
|
||||
.L80023024:
|
||||
/* 023C24 80023024 0C0274CC */ jal set_next_taj_challenge_menu
|
||||
/* 023C28 80023028 24040004 */ li $a0, 4
|
||||
/* 023C2C 8002302C 8FAB001C */ lw $t3, 0x1c($sp)
|
||||
.L80023030:
|
||||
/* 023C30 80023030 240A001F */ li $t2, 31
|
||||
/* 023C34 80023034 24040002 */ li $a0, 2
|
||||
/* 023C38 80023038 0C01486E */ jal set_taj_status
|
||||
/* 023C3C 8002303C AD6A0078 */ sw $t2, 0x78($t3)
|
||||
/* 023C40 80023040 10000016 */ b .L8002309C
|
||||
/* 023C44 80023044 00000000 */ nop
|
||||
.L80023048:
|
||||
/* 023C48 80023048 0C0002CA */ jal func_80000B28
|
||||
/* 023C4C 8002304C 00000000 */ nop
|
||||
/* 023C50 80023050 0C000611 */ jal func_80001844
|
||||
/* 023C54 80023054 00000000 */ nop
|
||||
/* 023C58 80023058 0C0274CC */ jal set_next_taj_challenge_menu
|
||||
/* 023C5C 8002305C 00002025 */ move $a0, $zero
|
||||
/* 023C60 80023060 0C00205A */ jal func_80008168
|
||||
/* 023C64 80023064 00000000 */ nop
|
||||
/* 023C68 80023068 8FAC0030 */ lw $t4, 0x30($sp)
|
||||
/* 023C6C 8002306C 24010002 */ li $at, 2
|
||||
/* 023C70 80023070 15810003 */ bne $t4, $at, .L80023080
|
||||
/* 023C74 80023074 00000000 */ nop
|
||||
/* 023C78 80023078 0C030C7B */ jal set_current_text
|
||||
/* 023C7C 8002307C 00002025 */ move $a0, $zero
|
||||
.L80023080:
|
||||
/* 023C80 80023080 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012
|
||||
/* 023C84 80023084 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at)
|
||||
/* 023C88 80023088 8FAF001C */ lw $t7, 0x1c($sp)
|
||||
/* 023C8C 8002308C 3C018012 */ lui $at, %hi(gRaceStartCountdown) # $at, 0x8012
|
||||
/* 023C90 80023090 AC20ADB8 */ sw $zero, %lo(gRaceStartCountdown)($at)
|
||||
/* 023C94 80023094 240D0014 */ li $t5, 20
|
||||
/* 023C98 80023098 ADED0078 */ sw $t5, 0x78($t7)
|
||||
.L8002309C:
|
||||
/* 023C9C 8002309C 0C0002CA */ jal func_80000B28
|
||||
/* 023CA0 800230A0 00000000 */ nop
|
||||
/* 023CA4 800230A4 0C0282DD */ jal func_800A0B74
|
||||
/* 023CA8 800230A8 00000000 */ nop
|
||||
/* 023CAC 800230AC 3C013F80 */ li $at, 0x3F800000 # 1.000000
|
||||
/* 023CB0 800230B0 44816000 */ mtc1 $at, $f12
|
||||
/* 023CB4 800230B4 0C01AF44 */ jal start_level_music
|
||||
/* 023CB8 800230B8 00000000 */ nop
|
||||
/* 023CBC 800230BC 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 023CC0 800230C0 3C018012 */ lui $at, %hi(gIsTajChallenge) # $at, 0x8012
|
||||
/* 023CC4 800230C4 A020AEF6 */ sb $zero, %lo(gIsTajChallenge)($at)
|
||||
/* 023CC8 800230C8 03E00008 */ jr $ra
|
||||
/* 023CCC 800230CC 27BD0030 */ addiu $sp, $sp, 0x30
|
||||
|
||||
@@ -1,155 +0,0 @@
|
||||
glabel func_80026C14
|
||||
/* 027814 80026C14 3C088012 */ lui $t0, %hi(D_8011D49E) # $t0, 0x8012
|
||||
/* 027818 80026C18 2508D49E */ addiu $t0, %lo(D_8011D49E) # addiu $t0, $t0, -0x2b62
|
||||
/* 02781C 80026C1C 27BDFFF8 */ addiu $sp, $sp, -8
|
||||
/* 027820 80026C20 3C188012 */ lui $t8, %hi(D_8011D4BA) # $t8, 0x8012
|
||||
/* 027824 80026C24 8718D4BA */ lh $t8, %lo(D_8011D4BA)($t8)
|
||||
/* 027828 80026C28 85020000 */ lh $v0, ($t0)
|
||||
/* 02782C 80026C2C AFB00004 */ sw $s0, 4($sp)
|
||||
/* 027830 80026C30 00058400 */ sll $s0, $a1, 0x10
|
||||
/* 027834 80026C34 00043C00 */ sll $a3, $a0, 0x10
|
||||
/* 027838 80026C38 00077403 */ sra $t6, $a3, 0x10
|
||||
/* 02783C 80026C3C 00107C03 */ sra $t7, $s0, 0x10
|
||||
/* 027840 80026C40 0058082A */ slt $at, $v0, $t8
|
||||
/* 027844 80026C44 01E08025 */ move $s0, $t7
|
||||
/* 027848 80026C48 01C03825 */ move $a3, $t6
|
||||
/* 02784C 80026C4C AFA40008 */ sw $a0, 8($sp)
|
||||
/* 027850 80026C50 AFA5000C */ sw $a1, 0xc($sp)
|
||||
/* 027854 80026C54 1020007C */ beqz $at, .L80026E48
|
||||
/* 027858 80026C58 AFA60010 */ sw $a2, 0x10($sp)
|
||||
/* 02785C 80026C5C 18400017 */ blez $v0, .L80026CBC
|
||||
/* 027860 80026C60 00001825 */ move $v1, $zero
|
||||
/* 027864 80026C64 3C098012 */ lui $t1, %hi(D_8011D478) # $t1, 0x8012
|
||||
/* 027868 80026C68 2529D478 */ addiu $t1, %lo(D_8011D478) # addiu $t1, $t1, -0x2b88
|
||||
/* 02786C 80026C6C 8D240000 */ lw $a0, ($t1)
|
||||
/* 027870 80026C70 00000000 */ nop
|
||||
/* 027874 80026C74 84990000 */ lh $t9, ($a0)
|
||||
/* 027878 80026C78 00000000 */ nop
|
||||
/* 02787C 80026C7C 032E082A */ slt $at, $t9, $t6
|
||||
/* 027880 80026C80 1020000E */ beqz $at, .L80026CBC
|
||||
/* 027884 80026C84 00000000 */ nop
|
||||
.L80026C88:
|
||||
/* 027888 80026C88 24630001 */ addiu $v1, $v1, 1
|
||||
/* 02788C 80026C8C 00035400 */ sll $t2, $v1, 0x10
|
||||
/* 027890 80026C90 000A5C03 */ sra $t3, $t2, 0x10
|
||||
/* 027894 80026C94 0162082A */ slt $at, $t3, $v0
|
||||
/* 027898 80026C98 10200008 */ beqz $at, .L80026CBC
|
||||
/* 02789C 80026C9C 01601825 */ move $v1, $t3
|
||||
/* 0278A0 80026CA0 000B60C0 */ sll $t4, $t3, 3
|
||||
/* 0278A4 80026CA4 008C6821 */ addu $t5, $a0, $t4
|
||||
/* 0278A8 80026CA8 85AE0000 */ lh $t6, ($t5)
|
||||
/* 0278AC 80026CAC 00000000 */ nop
|
||||
/* 0278B0 80026CB0 01C7082A */ slt $at, $t6, $a3
|
||||
/* 0278B4 80026CB4 1420FFF4 */ bnez $at, .L80026C88
|
||||
/* 0278B8 80026CB8 00000000 */ nop
|
||||
.L80026CBC:
|
||||
/* 0278BC 80026CBC 3C098012 */ lui $t1, %hi(D_8011D478) # $t1, 0x8012
|
||||
/* 0278C0 80026CC0 0062082A */ slt $at, $v1, $v0
|
||||
/* 0278C4 80026CC4 1020001E */ beqz $at, .L80026D40
|
||||
/* 0278C8 80026CC8 2529D478 */ addiu $t1, %lo(D_8011D478) # addiu $t1, $t1, -0x2b88
|
||||
/* 0278CC 80026CCC 8D240000 */ lw $a0, ($t1)
|
||||
/* 0278D0 80026CD0 000378C0 */ sll $t7, $v1, 3
|
||||
/* 0278D4 80026CD4 008F2821 */ addu $a1, $a0, $t7
|
||||
/* 0278D8 80026CD8 84B80000 */ lh $t8, ($a1)
|
||||
/* 0278DC 80026CDC 00000000 */ nop
|
||||
/* 0278E0 80026CE0 14F80017 */ bne $a3, $t8, .L80026D40
|
||||
/* 0278E4 80026CE4 00000000 */ nop
|
||||
/* 0278E8 80026CE8 84B90002 */ lh $t9, 2($a1)
|
||||
/* 0278EC 80026CEC 00000000 */ nop
|
||||
/* 0278F0 80026CF0 0330082A */ slt $at, $t9, $s0
|
||||
/* 0278F4 80026CF4 10200013 */ beqz $at, .L80026D44
|
||||
/* 0278F8 80026CF8 00022C00 */ sll $a1, $v0, 0x10
|
||||
.L80026CFC:
|
||||
/* 0278FC 80026CFC 24630001 */ addiu $v1, $v1, 1
|
||||
/* 027900 80026D00 00035400 */ sll $t2, $v1, 0x10
|
||||
/* 027904 80026D04 000A5C03 */ sra $t3, $t2, 0x10
|
||||
/* 027908 80026D08 0162082A */ slt $at, $t3, $v0
|
||||
/* 02790C 80026D0C 1020000C */ beqz $at, .L80026D40
|
||||
/* 027910 80026D10 01601825 */ move $v1, $t3
|
||||
/* 027914 80026D14 000B60C0 */ sll $t4, $t3, 3
|
||||
/* 027918 80026D18 008C2821 */ addu $a1, $a0, $t4
|
||||
/* 02791C 80026D1C 84AD0000 */ lh $t5, ($a1)
|
||||
/* 027920 80026D20 00000000 */ nop
|
||||
/* 027924 80026D24 14ED0006 */ bne $a3, $t5, .L80026D40
|
||||
/* 027928 80026D28 00000000 */ nop
|
||||
/* 02792C 80026D2C 84AE0002 */ lh $t6, 2($a1)
|
||||
/* 027930 80026D30 00000000 */ nop
|
||||
/* 027934 80026D34 01D0082A */ slt $at, $t6, $s0
|
||||
/* 027938 80026D38 1420FFF0 */ bnez $at, .L80026CFC
|
||||
/* 02793C 80026D3C 00000000 */ nop
|
||||
.L80026D40:
|
||||
/* 027940 80026D40 00022C00 */ sll $a1, $v0, 0x10
|
||||
.L80026D44:
|
||||
/* 027944 80026D44 00057C03 */ sra $t7, $a1, 0x10
|
||||
/* 027948 80026D48 006F082A */ slt $at, $v1, $t7
|
||||
/* 02794C 80026D4C 01E02825 */ move $a1, $t7
|
||||
/* 027950 80026D50 10200019 */ beqz $at, .L80026DB8
|
||||
/* 027954 80026D54 000320C0 */ sll $a0, $v1, 3
|
||||
.L80026D58:
|
||||
/* 027958 80026D58 8D380000 */ lw $t8, ($t1)
|
||||
/* 02795C 80026D5C 000510C0 */ sll $v0, $a1, 3
|
||||
/* 027960 80026D60 03023021 */ addu $a2, $t8, $v0
|
||||
/* 027964 80026D64 84D9FFF8 */ lh $t9, -8($a2)
|
||||
/* 027968 80026D68 24A5FFFF */ addiu $a1, $a1, -1
|
||||
/* 02796C 80026D6C A4D90000 */ sh $t9, ($a2)
|
||||
/* 027970 80026D70 8D2A0000 */ lw $t2, ($t1)
|
||||
/* 027974 80026D74 0005C400 */ sll $t8, $a1, 0x10
|
||||
/* 027978 80026D78 01423021 */ addu $a2, $t2, $v0
|
||||
/* 02797C 80026D7C 84CBFFFA */ lh $t3, -6($a2)
|
||||
/* 027980 80026D80 00182C03 */ sra $a1, $t8, 0x10
|
||||
/* 027984 80026D84 A4CB0002 */ sh $t3, 2($a2)
|
||||
/* 027988 80026D88 8D2C0000 */ lw $t4, ($t1)
|
||||
/* 02798C 80026D8C 0065082A */ slt $at, $v1, $a1
|
||||
/* 027990 80026D90 01823021 */ addu $a2, $t4, $v0
|
||||
/* 027994 80026D94 80CDFFFF */ lb $t5, -1($a2)
|
||||
/* 027998 80026D98 00000000 */ nop
|
||||
/* 02799C 80026D9C A0CD0007 */ sb $t5, 7($a2)
|
||||
/* 0279A0 80026DA0 8D2E0000 */ lw $t6, ($t1)
|
||||
/* 0279A4 80026DA4 00000000 */ nop
|
||||
/* 0279A8 80026DA8 01C23021 */ addu $a2, $t6, $v0
|
||||
/* 0279AC 80026DAC 80CFFFFE */ lb $t7, -2($a2)
|
||||
/* 0279B0 80026DB0 1420FFE9 */ bnez $at, .L80026D58
|
||||
/* 0279B4 80026DB4 A0CF0006 */ sb $t7, 6($a2)
|
||||
.L80026DB8:
|
||||
/* 0279B8 80026DB8 8D2A0000 */ lw $t2, ($t1)
|
||||
/* 0279BC 80026DBC 3C038012 */ lui $v1, %hi(D_8011D49C) # $v1, 0x8012
|
||||
/* 0279C0 80026DC0 01445821 */ addu $t3, $t2, $a0
|
||||
/* 0279C4 80026DC4 A5670000 */ sh $a3, ($t3)
|
||||
/* 0279C8 80026DC8 8D2C0000 */ lw $t4, ($t1)
|
||||
/* 0279CC 80026DCC 2463D49C */ addiu $v1, %lo(D_8011D49C) # addiu $v1, $v1, -0x2b64
|
||||
/* 0279D0 80026DD0 01846821 */ addu $t5, $t4, $a0
|
||||
/* 0279D4 80026DD4 A5B00002 */ sh $s0, 2($t5)
|
||||
/* 0279D8 80026DD8 8D2E0000 */ lw $t6, ($t1)
|
||||
/* 0279DC 80026DDC 00000000 */ nop
|
||||
/* 0279E0 80026DE0 01C47821 */ addu $t7, $t6, $a0
|
||||
/* 0279E4 80026DE4 A5E00004 */ sh $zero, 4($t7)
|
||||
/* 0279E8 80026DE8 8D390000 */ lw $t9, ($t1)
|
||||
/* 0279EC 80026DEC 84780000 */ lh $t8, ($v1)
|
||||
/* 0279F0 80026DF0 03245021 */ addu $t2, $t9, $a0
|
||||
/* 0279F4 80026DF4 A1580007 */ sb $t8, 7($t2)
|
||||
/* 0279F8 80026DF8 8D2C0000 */ lw $t4, ($t1)
|
||||
/* 0279FC 80026DFC 8FAB0010 */ lw $t3, 0x10($sp)
|
||||
/* 027A00 80026E00 01846821 */ addu $t5, $t4, $a0
|
||||
/* 027A04 80026E04 A1AB0006 */ sb $t3, 6($t5)
|
||||
/* 027A08 80026E08 3C0F8012 */ lui $t7, %hi(D_8011D47C) # $t7, 0x8012
|
||||
/* 027A0C 80026E0C 8DEFD47C */ lw $t7, %lo(D_8011D47C)($t7)
|
||||
/* 027A10 80026E10 85190000 */ lh $t9, ($t0)
|
||||
/* 027A14 80026E14 240EFFFF */ li $t6, -1
|
||||
/* 027A18 80026E18 01F9C021 */ addu $t8, $t7, $t9
|
||||
/* 027A1C 80026E1C A30E0000 */ sb $t6, ($t8)
|
||||
/* 027A20 80026E20 85020000 */ lh $v0, ($t0)
|
||||
/* 027A24 80026E24 00000000 */ nop
|
||||
/* 027A28 80026E28 304A0001 */ andi $t2, $v0, 1
|
||||
/* 027A2C 80026E2C 11400005 */ beqz $t2, .L80026E44
|
||||
/* 027A30 80026E30 244D0001 */ addiu $t5, $v0, 1
|
||||
/* 027A34 80026E34 846C0000 */ lh $t4, ($v1)
|
||||
/* 027A38 80026E38 00000000 */ nop
|
||||
/* 027A3C 80026E3C 258B0001 */ addiu $t3, $t4, 1
|
||||
/* 027A40 80026E40 A46B0000 */ sh $t3, ($v1)
|
||||
.L80026E44:
|
||||
/* 027A44 80026E44 A50D0000 */ sh $t5, ($t0)
|
||||
.L80026E48:
|
||||
/* 027A48 80026E48 8FB00004 */ lw $s0, 4($sp)
|
||||
/* 027A4C 80026E4C 03E00008 */ jr $ra
|
||||
/* 027A50 80026E50 27BD0008 */ addiu $sp, $sp, 8
|
||||
|
||||
@@ -174,6 +174,8 @@ typedef struct LevelObjectEntry_AiNode {
|
||||
/* 0x00 */ LevelObjectEntryCommon common;
|
||||
/* 0x08 */ u8 unk8;
|
||||
/* 0x09 */ u8 unk9;
|
||||
/* 0x0A */ u8 unkA[4];
|
||||
/* 0x0E */ s8 unkE;
|
||||
} LevelObjectEntry_AiNode;
|
||||
|
||||
#define BALLOON_TYPE_BOOST 0
|
||||
|
||||
+13
-1
@@ -562,7 +562,10 @@ typedef struct TriangleBatchInfo {
|
||||
|
||||
/* Size: 8 bytes */
|
||||
typedef struct ObjectModel_44 {
|
||||
union {
|
||||
/* 0x00 */ s32 *anim;
|
||||
/* 0x00 */ u8 *animData;
|
||||
};
|
||||
/* 0x04 */ s32 unk4; // Number of frames in animation?
|
||||
} ObjectModel_44;
|
||||
|
||||
@@ -594,7 +597,8 @@ typedef struct ObjectModel {
|
||||
/* 0x40 */ s32* unk40;
|
||||
/* 0x44 */ ObjectModel_44* animations;
|
||||
/* 0x48 */ s16 numberOfAnimations;
|
||||
/* 0x4A */ u8 pad4A[6];
|
||||
/* 0x4A */ s16 unk4A;
|
||||
/* 0x4C */ u8 pad4C[4];
|
||||
/* 0x50 */ s16 unk50;
|
||||
/* 0x52 */ s16 unk52;
|
||||
} ObjectModel;
|
||||
@@ -1151,6 +1155,13 @@ typedef struct Object_Exit {
|
||||
/* 0x10 */ s32 radius; // Activation radius.
|
||||
/* 0x14 */ s8 bossFlag; // Dictates boss level version. 0 is first encounter, 1 is rematch. -1 means no boss.
|
||||
} Object_Exit;
|
||||
|
||||
typedef struct Object_AiNode {
|
||||
/* 0x00 */ struct Object *nodeObj[4];
|
||||
/* 0x10 */ s16 distToNode[4];
|
||||
/* 0x18 */ u8 unk18[4];
|
||||
} Object_AiNode;
|
||||
|
||||
/* Size: 0x224 - 548 bytes */
|
||||
typedef struct Object_Racer {
|
||||
/* 0x000 */ s16 playerIndex; // -1 = AI Controlled, 0 to 3 = Object controlled
|
||||
@@ -1627,6 +1638,7 @@ typedef struct Object_64 {
|
||||
Object_WizpigRocket wizpigRocket;
|
||||
Object_8001E89C_64 obj8001E89C_64;
|
||||
Object_CharacterSelect characterSelect;
|
||||
Object_AiNode ai_node;
|
||||
};
|
||||
} Object_64;
|
||||
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
/* The comment below is needed for this file to be picked up by generate_ld */
|
||||
/* RAM_POS: 0x800C9AF0 */
|
||||
|
||||
.include "macros.inc"
|
||||
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # dont insert nops after branches
|
||||
.set gp=64 # 64-bit instructions are used
|
||||
|
||||
/* Hacky workaround. This is required because after alSynSetPriority, the linker seems to have added a bunch of nops. */
|
||||
glabel __NOPS_NEEDED
|
||||
/* 0CA6F0 800C9AF0 00000000 */ nop
|
||||
/* 0CA6F4 800C9AF4 00000000 */ nop
|
||||
/* 0CA6F8 800C9AF8 00000000 */ nop
|
||||
/* 0CA6FC 800C9AFC 00000000 */ nop
|
||||
/* 0CA700 800C9B00 00000000 */ nop
|
||||
/* 0CA704 800C9B04 00000000 */ nop
|
||||
/* 0CA708 800C9B08 00000000 */ nop
|
||||
/* 0CA70C 800C9B0C 00000000 */ nop
|
||||
/* 0CA710 800C9B10 00000000 */ nop
|
||||
/* 0CA714 800C9B14 00000000 */ nop
|
||||
/* 0CA718 800C9B18 00000000 */ nop
|
||||
/* 0CA71C 800C9B1C 00000000 */ nop
|
||||
/* 0CA720 800C9B20 00000000 */ nop
|
||||
/* 0CA724 800C9B24 00000000 */ nop
|
||||
/* 0CA728 800C9B28 00000000 */ nop
|
||||
/* 0CA72C 800C9B2C 00000000 */ nop
|
||||
@@ -1,27 +0,0 @@
|
||||
/* Hacky workaround. This is required because after alSynSetPriority, the linker seems to have added a bunch of nops. */
|
||||
glabel __NOPS_NEEDED
|
||||
/* 0CA6F0 800C9AF0 00000000 */ nop
|
||||
/* 0CA6F4 800C9AF4 00000000 */ nop
|
||||
/* 0CA6F8 800C9AF8 00000000 */ nop
|
||||
/* 0CA6FC 800C9AFC 00000000 */ nop
|
||||
/* 0CA700 800C9B00 00000000 */ nop
|
||||
/* 0CA704 800C9B04 00000000 */ nop
|
||||
/* 0CA708 800C9B08 00000000 */ nop
|
||||
/* 0CA70C 800C9B0C 00000000 */ nop
|
||||
/* 0CA710 800C9B10 00000000 */ nop
|
||||
/* 0CA714 800C9B14 00000000 */ nop
|
||||
/* 0CA718 800C9B18 00000000 */ nop
|
||||
/* 0CA71C 800C9B1C 00000000 */ nop
|
||||
/* 0CA720 800C9B20 00000000 */ nop
|
||||
/* 0CA724 800C9B24 00000000 */ nop
|
||||
/* 0CA728 800C9B28 00000000 */ nop
|
||||
/* 0CA72C 800C9B2C 00000000 */ nop
|
||||
|
||||
glabel __d_to_ll
|
||||
/* 0CA730 800C9B30 46206109 */ trunc.l.d $f4, $f12
|
||||
/* 0CA734 800C9B34 44222000 */ dmfc1 $v0, $f4
|
||||
/* 0CA738 800C9B38 00000000 */ nop
|
||||
/* 0CA73C 800C9B3C 0002183C */ dsll32 $v1, $v0, 0
|
||||
/* 0CA740 800C9B40 0003183F */ dsra32 $v1, $v1, 0
|
||||
/* 0CA744 800C9B44 03E00008 */ jr $ra
|
||||
/* 0CA748 800C9B48 0002103F */ dsra32 $v0, $v0, 0
|
||||
@@ -1,113 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_800E9550
|
||||
.double -0.0
|
||||
glabel D_800E9558
|
||||
.double -0.0
|
||||
|
||||
.text
|
||||
glabel __f_to_ll
|
||||
/* 0CA74C 800C9B4C 46006109 */ trunc.l.s $f4, $f12
|
||||
/* 0CA750 800C9B50 44222000 */ dmfc1 $v0, $f4
|
||||
/* 0CA754 800C9B54 00000000 */ nop
|
||||
/* 0CA758 800C9B58 0002183C */ dsll32 $v1, $v0, 0
|
||||
/* 0CA75C 800C9B5C 0003183F */ dsra32 $v1, $v1, 0
|
||||
/* 0CA760 800C9B60 03E00008 */ jr $ra
|
||||
/* 0CA764 800C9B64 0002103F */ dsra32 $v0, $v0, 0
|
||||
|
||||
glabel __d_to_ull
|
||||
/* 0CA768 800C9B68 444EF800 */ cfc1 $t6, $31
|
||||
/* 0CA76C 800C9B6C 24020001 */ li $v0, 1
|
||||
/* 0CA770 800C9B70 44C2F800 */ ctc1 $v0, $31
|
||||
/* 0CA774 800C9B74 00000000 */ nop
|
||||
/* 0CA778 800C9B78 46206125 */ cvt.l.d $f4, $f12
|
||||
/* 0CA77C 800C9B7C 4442F800 */ cfc1 $v0, $31
|
||||
/* 0CA780 800C9B80 00000000 */ nop
|
||||
/* 0CA784 800C9B84 30410004 */ andi $at, $v0, 4
|
||||
/* 0CA788 800C9B88 30420078 */ andi $v0, $v0, 0x78
|
||||
/* 0CA78C 800C9B8C 10400015 */ beqz $v0, .L800C9BE4
|
||||
/* 0CA790 800C9B90 3C0143E0 */ li $at, 0x43E00000 # 448.000000
|
||||
/* 0CA794 800C9B94 44812800 */ mtc1 $at, $f5
|
||||
/* 0CA798 800C9B98 44802000 */ mtc1 $zero, $f4
|
||||
/* 0CA79C 800C9B9C 24020001 */ li $v0, 1
|
||||
/* 0CA7A0 800C9BA0 46246101 */ sub.d $f4, $f12, $f4
|
||||
/* 0CA7A4 800C9BA4 44C2F800 */ ctc1 $v0, $31
|
||||
/* 0CA7A8 800C9BA8 00000000 */ nop
|
||||
/* 0CA7AC 800C9BAC 46202125 */ cvt.l.d $f4, $f4
|
||||
/* 0CA7B0 800C9BB0 4442F800 */ cfc1 $v0, $31
|
||||
/* 0CA7B4 800C9BB4 00000000 */ nop
|
||||
/* 0CA7B8 800C9BB8 30410004 */ andi $at, $v0, 4
|
||||
/* 0CA7BC 800C9BBC 30420078 */ andi $v0, $v0, 0x78
|
||||
/* 0CA7C0 800C9BC0 14400006 */ bnez $v0, .L800C9BDC
|
||||
/* 0CA7C4 800C9BC4 00000000 */ nop
|
||||
/* 0CA7C8 800C9BC8 3C0F800F */ lui $t7, %hi(D_800E9550) # $t7, 0x800f
|
||||
/* 0CA7CC 800C9BCC DDEF9550 */ ld $t7, %lo(D_800E9550)($t7)
|
||||
/* 0CA7D0 800C9BD0 44222000 */ dmfc1 $v0, $f4
|
||||
/* 0CA7D4 800C9BD4 10000007 */ b .L800C9BF4
|
||||
/* 0CA7D8 800C9BD8 004F1025 */ or $v0, $v0, $t7
|
||||
.L800C9BDC:
|
||||
/* 0CA7DC 800C9BDC 10000005 */ b .L800C9BF4
|
||||
/* 0CA7E0 800C9BE0 2402FFFF */ li $v0, -1
|
||||
.L800C9BE4:
|
||||
/* 0CA7E4 800C9BE4 44222000 */ dmfc1 $v0, $f4
|
||||
/* 0CA7E8 800C9BE8 00000000 */ nop
|
||||
/* 0CA7EC 800C9BEC 0440FFFB */ bltz $v0, .L800C9BDC
|
||||
/* 0CA7F0 800C9BF0 00000000 */ nop
|
||||
.L800C9BF4:
|
||||
/* 0CA7F4 800C9BF4 44CEF800 */ ctc1 $t6, $31
|
||||
/* 0CA7F8 800C9BF8 0002183C */ dsll32 $v1, $v0, 0
|
||||
/* 0CA7FC 800C9BFC 0003183F */ dsra32 $v1, $v1, 0
|
||||
/* 0CA800 800C9C00 03E00008 */ jr $ra
|
||||
/* 0CA804 800C9C04 0002103F */ dsra32 $v0, $v0, 0
|
||||
|
||||
glabel __f_to_ull
|
||||
/* 0CA808 800C9C08 444EF800 */ cfc1 $t6, $31
|
||||
/* 0CA80C 800C9C0C 24020001 */ li $v0, 1
|
||||
/* 0CA810 800C9C10 44C2F800 */ ctc1 $v0, $31
|
||||
/* 0CA814 800C9C14 00000000 */ nop
|
||||
/* 0CA818 800C9C18 46006125 */ cvt.l.s $f4, $f12
|
||||
/* 0CA81C 800C9C1C 4442F800 */ cfc1 $v0, $31
|
||||
/* 0CA820 800C9C20 00000000 */ nop
|
||||
/* 0CA824 800C9C24 30410004 */ andi $at, $v0, 4
|
||||
/* 0CA828 800C9C28 30420078 */ andi $v0, $v0, 0x78
|
||||
/* 0CA82C 800C9C2C 10400014 */ beqz $v0, .L800C9C80
|
||||
/* 0CA830 800C9C30 3C015F00 */ li $at, 0x5F000000 # 9223372036854775808.000000
|
||||
/* 0CA834 800C9C34 44812000 */ mtc1 $at, $f4
|
||||
/* 0CA838 800C9C38 24020001 */ li $v0, 1
|
||||
/* 0CA83C 800C9C3C 46046101 */ sub.s $f4, $f12, $f4
|
||||
/* 0CA840 800C9C40 44C2F800 */ ctc1 $v0, $31
|
||||
/* 0CA844 800C9C44 00000000 */ nop
|
||||
/* 0CA848 800C9C48 46002125 */ cvt.l.s $f4, $f4
|
||||
/* 0CA84C 800C9C4C 4442F800 */ cfc1 $v0, $31
|
||||
/* 0CA850 800C9C50 00000000 */ nop
|
||||
/* 0CA854 800C9C54 30410004 */ andi $at, $v0, 4
|
||||
/* 0CA858 800C9C58 30420078 */ andi $v0, $v0, 0x78
|
||||
/* 0CA85C 800C9C5C 14400006 */ bnez $v0, .L800C9C78
|
||||
/* 0CA860 800C9C60 00000000 */ nop
|
||||
/* 0CA864 800C9C64 3C0F800F */ lui $t7, %hi(D_800E9558) # $t7, 0x800f
|
||||
/* 0CA868 800C9C68 DDEF9558 */ ld $t7, %lo(D_800E9558)($t7)
|
||||
/* 0CA86C 800C9C6C 44222000 */ dmfc1 $v0, $f4
|
||||
/* 0CA870 800C9C70 10000007 */ b .L800C9C90
|
||||
/* 0CA874 800C9C74 004F1025 */ or $v0, $v0, $t7
|
||||
.L800C9C78:
|
||||
/* 0CA878 800C9C78 10000005 */ b .L800C9C90
|
||||
/* 0CA87C 800C9C7C 2402FFFF */ li $v0, -1
|
||||
.L800C9C80:
|
||||
/* 0CA880 800C9C80 44222000 */ dmfc1 $v0, $f4
|
||||
/* 0CA884 800C9C84 00000000 */ nop
|
||||
/* 0CA888 800C9C88 0440FFFB */ bltz $v0, .L800C9C78
|
||||
/* 0CA88C 800C9C8C 00000000 */ nop
|
||||
.L800C9C90:
|
||||
/* 0CA890 800C9C90 44CEF800 */ ctc1 $t6, $31
|
||||
/* 0CA894 800C9C94 0002183C */ dsll32 $v1, $v0, 0
|
||||
/* 0CA898 800C9C98 0003183F */ dsra32 $v1, $v1, 0
|
||||
/* 0CA89C 800C9C9C 03E00008 */ jr $ra
|
||||
/* 0CA8A0 800C9CA0 0002103F */ dsra32 $v0, $v0, 0
|
||||
|
||||
glabel __ll_to_d
|
||||
/* 0CA8A4 800C9CA4 AFA40000 */ sw $a0, ($sp)
|
||||
/* 0CA8A8 800C9CA8 AFA50004 */ sw $a1, 4($sp)
|
||||
/* 0CA8AC 800C9CAC DFAE0000 */ ld $t6, ($sp)
|
||||
/* 0CA8B0 800C9CB0 44AE2000 */ dmtc1 $t6, $f4
|
||||
/* 0CA8B4 800C9CB4 03E00008 */ jr $ra
|
||||
/* 0CA8B8 800C9CB8 46A02021 */ cvt.d.l $f0, $f4
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
glabel __ll_to_f
|
||||
/* 0CA8BC 800C9CBC AFA40000 */ sw $a0, ($sp)
|
||||
/* 0CA8C0 800C9CC0 AFA50004 */ sw $a1, 4($sp)
|
||||
/* 0CA8C4 800C9CC4 DFAE0000 */ ld $t6, ($sp)
|
||||
/* 0CA8C8 800C9CC8 44AE2000 */ dmtc1 $t6, $f4
|
||||
/* 0CA8CC 800C9CCC 03E00008 */ jr $ra
|
||||
/* 0CA8D0 800C9CD0 46A02020 */ cvt.s.l $f0, $f4
|
||||
|
||||
glabel __ull_to_d
|
||||
/* 0CA8D4 800C9CD4 AFA40000 */ sw $a0, ($sp)
|
||||
/* 0CA8D8 800C9CD8 AFA50004 */ sw $a1, 4($sp)
|
||||
/* 0CA8DC 800C9CDC DFAE0000 */ ld $t6, ($sp)
|
||||
/* 0CA8E0 800C9CE0 44AE2000 */ dmtc1 $t6, $f4
|
||||
/* 0CA8E4 800C9CE4 05C10006 */ bgez $t6, .L800C9D00
|
||||
/* 0CA8E8 800C9CE8 46A02021 */ cvt.d.l $f0, $f4
|
||||
/* 0CA8EC 800C9CEC 3C0141F0 */ li $at, 0x41F00000 # 30.000000
|
||||
/* 0CA8F0 800C9CF0 44813800 */ mtc1 $at, $f7
|
||||
/* 0CA8F4 800C9CF4 44803000 */ mtc1 $zero, $f6
|
||||
/* 0CA8F8 800C9CF8 00000000 */ nop
|
||||
/* 0CA8FC 800C9CFC 46260000 */ add.d $f0, $f0, $f6
|
||||
.L800C9D00:
|
||||
/* 0CA900 800C9D00 03E00008 */ jr $ra
|
||||
/* 0CA904 800C9D04 00000000 */ nop
|
||||
|
||||
glabel __ull_to_f
|
||||
/* 0CA908 800C9D08 AFA40000 */ sw $a0, ($sp)
|
||||
/* 0CA90C 800C9D0C AFA50004 */ sw $a1, 4($sp)
|
||||
/* 0CA910 800C9D10 DFAE0000 */ ld $t6, ($sp)
|
||||
/* 0CA914 800C9D14 44AE2000 */ dmtc1 $t6, $f4
|
||||
/* 0CA918 800C9D18 05C10005 */ bgez $t6, .L800C9D30
|
||||
/* 0CA91C 800C9D1C 46A02020 */ cvt.s.l $f0, $f4
|
||||
/* 0CA920 800C9D20 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
|
||||
/* 0CA924 800C9D24 44813000 */ mtc1 $at, $f6
|
||||
/* 0CA928 800C9D28 00000000 */ nop
|
||||
/* 0CA92C 800C9D2C 46060000 */ add.s $f0, $f0, $f6
|
||||
.L800C9D30:
|
||||
/* 0CA930 800C9D30 03E00008 */ jr $ra
|
||||
/* 0CA934 800C9D34 00000000 */ nop
|
||||
|
||||
/* 0CA938 800C9D38 00000000 */ nop
|
||||
/* 0CA93C 800C9D3C 00000000 */ nop
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
glabel __ll_div
|
||||
/* 0CF76C 800CEB6C AFA40000 */ sw $a0, ($sp)
|
||||
/* 0CF770 800CEB70 AFA50004 */ sw $a1, 4($sp)
|
||||
/* 0CF774 800CEB74 AFA60008 */ sw $a2, 8($sp)
|
||||
/* 0CF778 800CEB78 AFA7000C */ sw $a3, 0xc($sp)
|
||||
/* 0CF77C 800CEB7C DFAF0008 */ ld $t7, 8($sp)
|
||||
/* 0CF780 800CEB80 DFAE0000 */ ld $t6, ($sp)
|
||||
/* 0CF784 800CEB84 01CF001E */ ddiv $zero, $t6, $t7
|
||||
/* 0CF788 800CEB88 00000000 */ nop
|
||||
/* 0CF78C 800CEB8C 15E00002 */ bnez $t7, .L800CEB98
|
||||
/* 0CF790 800CEB90 00000000 */ nop
|
||||
/* 0CF794 800CEB94 0007000D */ break 7
|
||||
.L800CEB98:
|
||||
/* 0CF798 800CEB98 6401FFFF */ daddiu $at, $zero, -1
|
||||
/* 0CF79C 800CEB9C 15E10005 */ bne $t7, $at, .L800CEBB4
|
||||
/* 0CF7A0 800CEBA0 64010001 */ daddiu $at, $zero, 1
|
||||
/* 0CF7A4 800CEBA4 00010FFC */ dsll32 $at, $at, 0x1f
|
||||
/* 0CF7A8 800CEBA8 15C10002 */ bne $t6, $at, .L800CEBB4
|
||||
/* 0CF7AC 800CEBAC 00000000 */ nop
|
||||
/* 0CF7B0 800CEBB0 0006000D */ break 6
|
||||
.L800CEBB4:
|
||||
/* 0CF7B4 800CEBB4 00001012 */ mflo $v0
|
||||
/* 0CF7B8 800CEBB8 0002183C */ dsll32 $v1, $v0, 0
|
||||
/* 0CF7BC 800CEBBC 0003183F */ dsra32 $v1, $v1, 0
|
||||
/* 0CF7C0 800CEBC0 03E00008 */ jr $ra
|
||||
/* 0CF7C4 800CEBC4 0002103F */ dsra32 $v0, $v0, 0
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
glabel __ll_lshift
|
||||
/* 0CF704 800CEB04 AFA40000 */ sw $a0, ($sp)
|
||||
/* 0CF708 800CEB08 AFA50004 */ sw $a1, 4($sp)
|
||||
/* 0CF70C 800CEB0C AFA60008 */ sw $a2, 8($sp)
|
||||
/* 0CF710 800CEB10 AFA7000C */ sw $a3, 0xc($sp)
|
||||
/* 0CF714 800CEB14 DFAF0008 */ ld $t7, 8($sp)
|
||||
/* 0CF718 800CEB18 DFAE0000 */ ld $t6, ($sp)
|
||||
/* 0CF71C 800CEB1C 01EE1014 */ dsllv $v0, $t6, $t7
|
||||
/* 0CF720 800CEB20 0002183C */ dsll32 $v1, $v0, 0
|
||||
/* 0CF724 800CEB24 0003183F */ dsra32 $v1, $v1, 0
|
||||
/* 0CF728 800CEB28 03E00008 */ jr $ra
|
||||
/* 0CF72C 800CEB2C 0002103F */ dsra32 $v0, $v0, 0
|
||||
|
||||
glabel func_800CEB30
|
||||
/* 0CF730 800CEB30 AFA40000 */ sw $a0, ($sp)
|
||||
/* 0CF734 800CEB34 AFA50004 */ sw $a1, 4($sp)
|
||||
/* 0CF738 800CEB38 AFA60008 */ sw $a2, 8($sp)
|
||||
/* 0CF73C 800CEB3C AFA7000C */ sw $a3, 0xc($sp)
|
||||
/* 0CF740 800CEB40 DFAF0008 */ ld $t7, 8($sp)
|
||||
/* 0CF744 800CEB44 DFAE0000 */ ld $t6, ($sp)
|
||||
/* 0CF748 800CEB48 01CF001F */ ddivu $zero, $t6, $t7
|
||||
/* 0CF74C 800CEB4C 15E00002 */ bnez $t7, .L800CEB58
|
||||
/* 0CF750 800CEB50 00000000 */ nop
|
||||
/* 0CF754 800CEB54 0007000D */ break 7
|
||||
.L800CEB58:
|
||||
/* 0CF758 800CEB58 00001010 */ mfhi $v0
|
||||
/* 0CF75C 800CEB5C 0002183C */ dsll32 $v1, $v0, 0
|
||||
/* 0CF760 800CEB60 0003183F */ dsra32 $v1, $v1, 0
|
||||
/* 0CF764 800CEB64 03E00008 */ jr $ra
|
||||
/* 0CF768 800CEB68 0002103F */ dsra32 $v0, $v0, 0
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user