mirror of
https://github.com/n64decomp/mk64
synced 2026-07-08 12:56:13 -04:00
@@ -1,345 +0,0 @@
|
||||
.section .late_rodata
|
||||
|
||||
glabel D_800F2EA0
|
||||
.float 20.0304203
|
||||
|
||||
glabel D_800F2EA4
|
||||
.float 16.546
|
||||
|
||||
glabel D_800F2EA8
|
||||
.float 16.713
|
||||
|
||||
.section .text
|
||||
|
||||
glabel audio_init
|
||||
/* 0BCCDC 800BC0DC 27BDFF70 */ addiu $sp, $sp, -0x90
|
||||
/* 0BCCE0 800BC0E0 3C0E800F */ lui $t6, %hi(gAudioLoadLock) # $t6, 0x800f
|
||||
/* 0BCCE4 800BC0E4 AFBF002C */ sw $ra, 0x2c($sp)
|
||||
/* 0BCCE8 800BC0E8 AFB50028 */ sw $s5, 0x28($sp)
|
||||
/* 0BCCEC 800BC0EC AFB40024 */ sw $s4, 0x24($sp)
|
||||
/* 0BCCF0 800BC0F0 AFB30020 */ sw $s3, 0x20($sp)
|
||||
/* 0BCCF4 800BC0F4 AFB2001C */ sw $s2, 0x1c($sp)
|
||||
/* 0BCCF8 800BC0F8 AFB10018 */ sw $s1, 0x18($sp)
|
||||
/* 0BCCFC 800BC0FC AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 0BCD00 800BC100 25CEA5DC */ addiu $t6, %lo(gAudioLoadLock) # addiu $t6, $t6, -0x5a24
|
||||
/* 0BCD04 800BC104 ADC00000 */ sw $zero, ($t6)
|
||||
/* 0BCD08 800BC108 3C04800F */ lui $a0, %hi(gAudioHeapSize) # $a0, 0x800f
|
||||
/* 0BCD0C 800BC10C 8C84A5D0 */ lw $a0, %lo(gAudioHeapSize)($a0)
|
||||
/* 0BCD10 800BC110 00001825 */ move $v1, $zero
|
||||
/* 0BCD14 800BC114 3C0A803B */ lui $t2, %hi(gAudioGlobalsEndMarker) # $t2, 0x803b
|
||||
/* 0BCD18 800BC118 04810003 */ bgez $a0, .L800BC128
|
||||
/* 0BCD1C 800BC11C 000478C3 */ sra $t7, $a0, 3
|
||||
/* 0BCD20 800BC120 24810007 */ addiu $at, $a0, 7
|
||||
/* 0BCD24 800BC124 000178C3 */ sra $t7, $at, 3
|
||||
.L800BC128:
|
||||
/* 0BCD28 800BC128 19E0000C */ blez $t7, .L800BC15C
|
||||
/* 0BCD2C 800BC12C 3C04803B */ lui $a0, %hi(gGfxSPTaskOutputBufferSize) # 0x803b
|
||||
/* 0BCD30 800BC130 3C18803B */ lui $t8, %hi(gAudioHeap) # 0x803b
|
||||
/* 0BCD34 800BC134 270271B0 */ addiu $v0, $t8, %lo(gAudioHeap) # 0x71b0
|
||||
/* 0BCD38 800BC138 000FC8C0 */ sll $t9, $t7, 3
|
||||
/* 0BCD3C 800BC13C 03221821 */ addu $v1, $t9, $v0
|
||||
.L800BC140:
|
||||
/* 0BCD40 800BC140 24420008 */ addiu $v0, $v0, 8
|
||||
/* 0BCD44 800BC144 0043082B */ sltu $at, $v0, $v1
|
||||
/* 0BCD48 800BC148 24080000 */ li $t0, 0
|
||||
/* 0BCD4C 800BC14C 24090000 */ li $t1, 0
|
||||
/* 0BCD50 800BC150 AC49FFFC */ sw $t1, -4($v0)
|
||||
/* 0BCD54 800BC154 1420FFFA */ bnez $at, .L800BC140
|
||||
/* 0BCD58 800BC158 AC48FFF8 */ sw $t0, -8($v0)
|
||||
.L800BC15C:
|
||||
/* 0BCD5C 800BC15C 2482F780 */ addiu $v0, $a0, %lo(gGfxSPTaskOutputBufferSize) # -0x880
|
||||
/* 0BCD60 800BC160 254A71A0 */ addiu $t2, %lo(gAudioGlobalsEndMarker) # addiu $t2, $t2, 0x71a0
|
||||
/* 0BCD64 800BC164 01421823 */ subu $v1, $t2, $v0
|
||||
/* 0BCD68 800BC168 000380C2 */ srl $s0, $v1, 3
|
||||
/* 0BCD6C 800BC16C 06000007 */ bltz $s0, .L800BC18C
|
||||
.L800BC170:
|
||||
/* 0BCD70 800BC170 2610FFFF */ addiu $s0, $s0, -1
|
||||
/* 0BCD74 800BC174 240C0000 */ li $t4, 0
|
||||
/* 0BCD78 800BC178 240D0000 */ li $t5, 0
|
||||
/* 0BCD7C 800BC17C AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 0BCD80 800BC180 AC4C0000 */ sw $t4, ($v0)
|
||||
/* 0BCD84 800BC184 0601FFFA */ bgez $s0, .L800BC170
|
||||
/* 0BCD88 800BC188 24420008 */ addiu $v0, $v0, 8
|
||||
.L800BC18C:
|
||||
/* 0BCD8C 800BC18C 3C028000 */ lui $v0, %hi(osTvType) # $v0, 0x8000
|
||||
/* 0BCD90 800BC190 8C420300 */ lw $v0, %lo(osTvType)($v0)
|
||||
/* 0BCD94 800BC194 10400007 */ beqz $v0, .L800BC1B4
|
||||
/* 0BCD98 800BC198 24010001 */ li $at, 1
|
||||
/* 0BCD9C 800BC19C 10410015 */ beq $v0, $at, .L800BC1F4
|
||||
/* 0BCDA0 800BC1A0 24010002 */ li $at, 2
|
||||
/* 0BCDA4 800BC1A4 1041000B */ beq $v0, $at, .L800BC1D4
|
||||
/* 0BCDA8 800BC1A8 00000000 */ nop
|
||||
/* 0BCDAC 800BC1AC 10000011 */ b .L800BC1F4
|
||||
/* 0BCDB0 800BC1B0 00000000 */ nop
|
||||
.L800BC1B4:
|
||||
/* 0BCDB4 800BC1B4 3C01800F */ lui $at, %hi(D_800F2EA0) # $at, 0x800f
|
||||
/* 0BCDB8 800BC1B8 C4242EA0 */ lwc1 $f4, %lo(D_800F2EA0)($at)
|
||||
/* 0BCDBC 800BC1BC 3C01803B */ lui $at, %hi(D_803B7178) # $at, 0x803b
|
||||
/* 0BCDC0 800BC1C0 240E0032 */ li $t6, 50
|
||||
/* 0BCDC4 800BC1C4 E4247178 */ swc1 $f4, %lo(D_803B7178)($at)
|
||||
/* 0BCDC8 800BC1C8 3C01803B */ lui $at, %hi(gRefreshRate) # $at, 0x803b
|
||||
/* 0BCDCC 800BC1CC 10000010 */ b .L800BC210
|
||||
/* 0BCDD0 800BC1D0 AC2E717C */ sw $t6, %lo(gRefreshRate)($at)
|
||||
.L800BC1D4:
|
||||
/* 0BCDD4 800BC1D4 3C01800F */ lui $at, %hi(D_800F2EA4) # $at, 0x800f
|
||||
/* 0BCDD8 800BC1D8 C4262EA4 */ lwc1 $f6, %lo(D_800F2EA4)($at)
|
||||
/* 0BCDDC 800BC1DC 3C01803B */ lui $at, %hi(D_803B7178) # $at, 0x803b
|
||||
/* 0BCDE0 800BC1E0 240F003C */ li $t7, 60
|
||||
/* 0BCDE4 800BC1E4 E4267178 */ swc1 $f6, %lo(D_803B7178)($at)
|
||||
/* 0BCDE8 800BC1E8 3C01803B */ lui $at, %hi(gRefreshRate) # $at, 0x803b
|
||||
/* 0BCDEC 800BC1EC 10000008 */ b .L800BC210
|
||||
/* 0BCDF0 800BC1F0 AC2F717C */ sw $t7, %lo(gRefreshRate)($at)
|
||||
.L800BC1F4:
|
||||
/* 0BCDF4 800BC1F4 3C01800F */ lui $at, %hi(D_800F2EA8) # $at, 0x800f
|
||||
/* 0BCDF8 800BC1F8 C4282EA8 */ lwc1 $f8, %lo(D_800F2EA8)($at)
|
||||
/* 0BCDFC 800BC1FC 3C01803B */ lui $at, %hi(D_803B7178) # $at, 0x803b
|
||||
/* 0BCE00 800BC200 2419003C */ li $t9, 60
|
||||
/* 0BCE04 800BC204 E4287178 */ swc1 $f8, %lo(D_803B7178)($at)
|
||||
/* 0BCE08 800BC208 3C01803B */ lui $at, %hi(gRefreshRate) # $at, 0x803b
|
||||
/* 0BCE0C 800BC20C AC39717C */ sw $t9, %lo(gRefreshRate)($at)
|
||||
.L800BC210:
|
||||
/* 0BCE10 800BC210 0C032FD2 */ jal port_eu_init
|
||||
/* 0BCE14 800BC214 00000000 */ nop
|
||||
/* 0BCE18 800BC218 3C02803B */ lui $v0, %hi(gAiBufferLengths) # $v0, 0x803b
|
||||
/* 0BCE1C 800BC21C 3C04803B */ lui $a0, %hi(D_803B7192) # $a0, 0x803b
|
||||
/* 0BCE20 800BC220 24847192 */ addiu $a0, %lo(D_803B7192) # addiu $a0, $a0, 0x7192
|
||||
/* 0BCE24 800BC224 2442718C */ addiu $v0, %lo(gAiBufferLengths) # addiu $v0, $v0, 0x718c
|
||||
/* 0BCE28 800BC228 240300A0 */ li $v1, 160
|
||||
.L800BC22C:
|
||||
/* 0BCE2C 800BC22C 24420002 */ addiu $v0, $v0, 2
|
||||
/* 0BCE30 800BC230 0044082B */ sltu $at, $v0, $a0
|
||||
/* 0BCE34 800BC234 1420FFFD */ bnez $at, .L800BC22C
|
||||
/* 0BCE38 800BC238 A443FFFE */ sh $v1, -2($v0)
|
||||
/* 0BCE3C 800BC23C 3C18803B */ lui $t8, %hi(gAudioFrameCount) # $t8, 0x803b
|
||||
/* 0BCE40 800BC240 271870B8 */ addiu $t8, %lo(gAudioFrameCount) # addiu $t8, $t8, 0x70b8
|
||||
/* 0BCE44 800BC244 AF000000 */ sw $zero, ($t8)
|
||||
/* 0BCE48 800BC248 3C01803B */ lui $at, %hi(gAudioTaskIndex) # $at, 0x803b
|
||||
/* 0BCE4C 800BC24C AC2070C0 */ sw $zero, %lo(gAudioTaskIndex)($at)
|
||||
/* 0BCE50 800BC250 3C01803B */ lui $at, %hi(gCurrAiBufferIndex) # $at, 0x803b
|
||||
/* 0BCE54 800BC254 AC2070C4 */ sw $zero, %lo(gCurrAiBufferIndex)($at)
|
||||
/* 0BCE58 800BC258 3C01803B */ lui $at, %hi(gAudioLibSoundMode) # $at, 0x803b
|
||||
/* 0BCE5C 800BC25C A02070B6 */ sb $zero, %lo(gAudioLibSoundMode)($at)
|
||||
/* 0BCE60 800BC260 3C02803B */ lui $v0, %hi(gAudioTasks) # $v0, 0x803b
|
||||
/* 0BCE64 800BC264 3C01803B */ lui $at, %hi(gAudioTask) # $at, 0x803b
|
||||
/* 0BCE68 800BC268 244270D8 */ addiu $v0, %lo(gAudioTasks) # addiu $v0, $v0, 0x70d8
|
||||
/* 0BCE6C 800BC26C AC2070D4 */ sw $zero, %lo(gAudioTask)($at)
|
||||
/* 0BCE70 800BC270 3C04803B */ lui $a0, %hi(D_803B6720) # $a0, 0x803b
|
||||
/* 0BCE74 800BC274 3C05803B */ lui $a1, %hi(D_803B6738) # $a1, 0x803b
|
||||
/* 0BCE78 800BC278 AC400034 */ sw $zero, 0x34($v0)
|
||||
/* 0BCE7C 800BC27C AC400084 */ sw $zero, 0x84($v0)
|
||||
/* 0BCE80 800BC280 24A56738 */ addiu $a1, %lo(D_803B6738) # addiu $a1, $a1, 0x6738
|
||||
/* 0BCE84 800BC284 24846720 */ addiu $a0, %lo(D_803B6720) # addiu $a0, $a0, 0x6720
|
||||
/* 0BCE88 800BC288 0C033358 */ jal osCreateMesgQueue
|
||||
/* 0BCE8C 800BC28C 24060001 */ li $a2, 1
|
||||
/* 0BCE90 800BC290 3C04803B */ lui $a0, %hi(gCurrAudioFrameDmaQueue) # $a0, 0x803b
|
||||
/* 0BCE94 800BC294 3C05803B */ lui $a1, %hi(gCurrAudioFrameDmaMesgBufs) # $a1, 0x803b
|
||||
/* 0BCE98 800BC298 24A56020 */ addiu $a1, %lo(gCurrAudioFrameDmaMesgBufs) # addiu $a1, $a1, 0x6020
|
||||
/* 0BCE9C 800BC29C 24846008 */ addiu $a0, %lo(gCurrAudioFrameDmaQueue) # addiu $a0, $a0, 0x6008
|
||||
/* 0BCEA0 800BC2A0 0C033358 */ jal osCreateMesgQueue
|
||||
/* 0BCEA4 800BC2A4 24060040 */ li $a2, 64
|
||||
/* 0BCEA8 800BC2A8 3C01803B */ lui $at, %hi(gCurrAudioFrameDmaCount) # $at, 0x803b
|
||||
/* 0BCEAC 800BC2AC AC2070BC */ sw $zero, %lo(gCurrAudioFrameDmaCount)($at)
|
||||
/* 0BCEB0 800BC2B0 3C01803B */ lui $at, %hi(gSampleDmaNumListItems) # $at, 0x803b
|
||||
/* 0BCEB4 800BC2B4 3C04800F */ lui $a0, %hi(gAudioInitPoolSize) # $a0, 0x800f
|
||||
/* 0BCEB8 800BC2B8 AC206E58 */ sw $zero, %lo(gSampleDmaNumListItems)($at)
|
||||
/* 0BCEBC 800BC2BC 0C02E43C */ jal sound_init_main_pools
|
||||
/* 0BCEC0 800BC2C0 8C84A5D4 */ lw $a0, %lo(gAudioInitPoolSize)($a0)
|
||||
/* 0BCEC4 800BC2C4 3C06803B */ lui $a2, %hi(gAiBuffers) # $a2, 0x803b
|
||||
/* 0BCEC8 800BC2C8 3C14803B */ lui $s4, %hi(gAudioInitPool) # $s4, 0x803b
|
||||
/* 0BCECC 800BC2CC 3C11803B */ lui $s1, %hi(gAiBufferLengths) # $s1, 0x803b
|
||||
/* 0BCED0 800BC2D0 2631718C */ addiu $s1, %lo(gAiBufferLengths) # addiu $s1, $s1, 0x718c
|
||||
/* 0BCED4 800BC2D4 2694FBD8 */ addiu $s4, %lo(gAudioInitPool) # addiu $s4, $s4, -0x428
|
||||
/* 0BCED8 800BC2D8 24C67180 */ addiu $a2, %lo(gAiBuffers) # addiu $a2, $a2, 0x7180
|
||||
/* 0BCEDC 800BC2DC 24100A00 */ li $s0, 2560
|
||||
/* 0BCEE0 800BC2E0 02802025 */ move $a0, $s4
|
||||
.L800BC2E4:
|
||||
/* 0BCEE4 800BC2E4 24050A00 */ li $a1, 2560
|
||||
/* 0BCEE8 800BC2E8 0C02E3FF */ jal soundAlloc
|
||||
/* 0BCEEC 800BC2EC AFA6003C */ sw $a2, 0x3c($sp)
|
||||
/* 0BCEF0 800BC2F0 8FA6003C */ lw $a2, 0x3c($sp)
|
||||
/* 0BCEF4 800BC2F4 00001825 */ move $v1, $zero
|
||||
/* 0BCEF8 800BC2F8 ACC20000 */ sw $v0, ($a2)
|
||||
.L800BC2FC:
|
||||
/* 0BCEFC 800BC2FC 8CC80000 */ lw $t0, ($a2)
|
||||
/* 0BCF00 800BC300 01034821 */ addu $t1, $t0, $v1
|
||||
/* 0BCF04 800BC304 A5200000 */ sh $zero, ($t1)
|
||||
/* 0BCF08 800BC308 8CCA0000 */ lw $t2, ($a2)
|
||||
/* 0BCF0C 800BC30C 01435821 */ addu $t3, $t2, $v1
|
||||
/* 0BCF10 800BC310 A5600002 */ sh $zero, 2($t3)
|
||||
/* 0BCF14 800BC314 8CCC0000 */ lw $t4, ($a2)
|
||||
/* 0BCF18 800BC318 01836821 */ addu $t5, $t4, $v1
|
||||
/* 0BCF1C 800BC31C A5A00004 */ sh $zero, 4($t5)
|
||||
/* 0BCF20 800BC320 8CCE0000 */ lw $t6, ($a2)
|
||||
/* 0BCF24 800BC324 01C37821 */ addu $t7, $t6, $v1
|
||||
/* 0BCF28 800BC328 24630008 */ addiu $v1, $v1, 8
|
||||
/* 0BCF2C 800BC32C 1470FFF3 */ bne $v1, $s0, .L800BC2FC
|
||||
/* 0BCF30 800BC330 A5E00006 */ sh $zero, 6($t7)
|
||||
/* 0BCF34 800BC334 24C60004 */ addiu $a2, $a2, 4
|
||||
/* 0BCF38 800BC338 00D1082B */ sltu $at, $a2, $s1
|
||||
/* 0BCF3C 800BC33C 5420FFE9 */ bnel $at, $zero, .L800BC2E4
|
||||
/* 0BCF40 800BC340 02802025 */ move $a0, $s4
|
||||
/* 0BCF44 800BC344 3C01803B */ lui $at, %hi(gAudioResetPresetIdToLoad) # $at, 0x803b
|
||||
/* 0BCF48 800BC348 3C18803B */ lui $t8, %hi(gAudioResetStatus) # $t8, 0x803b
|
||||
/* 0BCF4C 800BC34C A0200501 */ sb $zero, %lo(gAudioResetPresetIdToLoad)($at)
|
||||
/* 0BCF50 800BC350 27180500 */ addiu $t8, %lo(gAudioResetStatus) # addiu $t8, $t8, 0x500
|
||||
/* 0BCF54 800BC354 24190001 */ li $t9, 1
|
||||
/* 0BCF58 800BC358 0C02E803 */ jal audio_shut_down_and_reset_step
|
||||
/* 0BCF5C 800BC35C A3190000 */ sb $t9, ($t8)
|
||||
/* 0BCF60 800BC360 3C11803B */ lui $s1, %hi(gSeqFileHeader) # $s1, 0x803b
|
||||
/* 0BCF64 800BC364 3C1200BC */ lui $s2, %hi(_sequencesSegmentRomStart) # $s2, 0xbc
|
||||
/* 0BCF68 800BC368 26525F60 */ addiu $s2, %lo(_sequencesSegmentRomStart) # addiu $s2, $s2, 0x5f60
|
||||
/* 0BCF6C 800BC36C 2631706C */ addiu $s1, %lo(gSeqFileHeader) # addiu $s1, $s1, 0x706c
|
||||
/* 0BCF70 800BC370 27B50060 */ addiu $s5, $sp, 0x60
|
||||
/* 0BCF74 800BC374 AE350000 */ sw $s5, ($s1)
|
||||
/* 0BCF78 800BC378 02A02825 */ move $a1, $s5
|
||||
/* 0BCF7C 800BC37C 02402025 */ move $a0, $s2
|
||||
/* 0BCF80 800BC380 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BCF84 800BC384 24060010 */ li $a2, 16
|
||||
/* 0BCF88 800BC388 8E280000 */ lw $t0, ($s1)
|
||||
/* 0BCF8C 800BC38C 3C02803B */ lui $v0, %hi(gSequenceCount) # $v0, 0x803b
|
||||
/* 0BCF90 800BC390 2401FFF0 */ li $at, -16
|
||||
/* 0BCF94 800BC394 85090002 */ lh $t1, 2($t0)
|
||||
/* 0BCF98 800BC398 2442707C */ addiu $v0, %lo(gSequenceCount) # addiu $v0, $v0, 0x707c
|
||||
/* 0BCF9C 800BC39C 02802025 */ move $a0, $s4
|
||||
/* 0BCFA0 800BC3A0 3130FFFF */ andi $s0, $t1, 0xffff
|
||||
/* 0BCFA4 800BC3A4 001050C0 */ sll $t2, $s0, 3
|
||||
/* 0BCFA8 800BC3A8 01408025 */ move $s0, $t2
|
||||
/* 0BCFAC 800BC3AC 26100013 */ addiu $s0, $s0, 0x13
|
||||
/* 0BCFB0 800BC3B0 02012824 */ and $a1, $s0, $at
|
||||
/* 0BCFB4 800BC3B4 00A08025 */ move $s0, $a1
|
||||
/* 0BCFB8 800BC3B8 0C02E3FF */ jal soundAlloc
|
||||
/* 0BCFBC 800BC3BC A4490000 */ sh $t1, ($v0)
|
||||
/* 0BCFC0 800BC3C0 AE220000 */ sw $v0, ($s1)
|
||||
/* 0BCFC4 800BC3C4 02402025 */ move $a0, $s2
|
||||
/* 0BCFC8 800BC3C8 00402825 */ move $a1, $v0
|
||||
/* 0BCFCC 800BC3CC 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BCFD0 800BC3D0 02003025 */ move $a2, $s0
|
||||
/* 0BCFD4 800BC3D4 8E240000 */ lw $a0, ($s1)
|
||||
/* 0BCFD8 800BC3D8 0C02ED0F */ jal func_800BB43C
|
||||
/* 0BCFDC 800BC3DC 02402825 */ move $a1, $s2
|
||||
/* 0BCFE0 800BC3E0 3C110096 */ lui $s1, %hi(_audio_banksSegmentRomStart) # $s1, 0x96
|
||||
/* 0BCFE4 800BC3E4 3C12803B */ lui $s2, %hi(gAlCtlHeader) # $s2, 0x803b
|
||||
/* 0BCFE8 800BC3E8 26527070 */ addiu $s2, %lo(gAlCtlHeader) # addiu $s2, $s2, 0x7070
|
||||
/* 0BCFEC 800BC3EC 26316260 */ addiu $s1, %lo(_audio_banksSegmentRomStart) # addiu $s1, $s1, 0x6260
|
||||
/* 0BCFF0 800BC3F0 AE550000 */ sw $s5, ($s2)
|
||||
/* 0BCFF4 800BC3F4 02202025 */ move $a0, $s1
|
||||
/* 0BCFF8 800BC3F8 02A02825 */ move $a1, $s5
|
||||
/* 0BCFFC 800BC3FC 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BD000 800BC400 24060010 */ li $a2, 16
|
||||
/* 0BD004 800BC404 8E4C0000 */ lw $t4, ($s2)
|
||||
/* 0BD008 800BC408 2401FFF0 */ li $at, -16
|
||||
/* 0BD00C 800BC40C 02802025 */ move $a0, $s4
|
||||
/* 0BD010 800BC410 85930002 */ lh $s3, 2($t4)
|
||||
/* 0BD014 800BC414 001380C0 */ sll $s0, $s3, 3
|
||||
/* 0BD018 800BC418 26100013 */ addiu $s0, $s0, 0x13
|
||||
/* 0BD01C 800BC41C 02012824 */ and $a1, $s0, $at
|
||||
/* 0BD020 800BC420 0C02E3FF */ jal soundAlloc
|
||||
/* 0BD024 800BC424 00A08025 */ move $s0, $a1
|
||||
/* 0BD028 800BC428 AE420000 */ sw $v0, ($s2)
|
||||
/* 0BD02C 800BC42C 02202025 */ move $a0, $s1
|
||||
/* 0BD030 800BC430 00402825 */ move $a1, $v0
|
||||
/* 0BD034 800BC434 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BD038 800BC438 02003025 */ move $a2, $s0
|
||||
/* 0BD03C 800BC43C 8E440000 */ lw $a0, ($s2)
|
||||
/* 0BD040 800BC440 0C02ED0F */ jal func_800BB43C
|
||||
/* 0BD044 800BC444 02202825 */ move $a1, $s1
|
||||
/* 0BD048 800BC448 00132880 */ sll $a1, $s3, 2
|
||||
/* 0BD04C 800BC44C 00B32823 */ subu $a1, $a1, $s3
|
||||
/* 0BD050 800BC450 00052880 */ sll $a1, $a1, 2
|
||||
/* 0BD054 800BC454 0C02E3FF */ jal soundAlloc
|
||||
/* 0BD058 800BC458 02802025 */ move $a0, $s4
|
||||
/* 0BD05C 800BC45C 3C07803B */ lui $a3, %hi(gCtlEntries) # $a3, 0x803b
|
||||
/* 0BD060 800BC460 24E77080 */ addiu $a3, %lo(gCtlEntries) # addiu $a3, $a3, 0x7080
|
||||
/* 0BD064 800BC464 ACE20000 */ sw $v0, ($a3)
|
||||
/* 0BD068 800BC468 1A600019 */ blez $s3, .L800BC4D0
|
||||
/* 0BD06C 800BC46C 00001825 */ move $v1, $zero
|
||||
/* 0BD070 800BC470 00008825 */ move $s1, $zero
|
||||
/* 0BD074 800BC474 00008025 */ move $s0, $zero
|
||||
.L800BC478:
|
||||
/* 0BD078 800BC478 8E4E0000 */ lw $t6, ($s2)
|
||||
/* 0BD07C 800BC47C 02A02825 */ move $a1, $s5
|
||||
/* 0BD080 800BC480 24060010 */ li $a2, 16
|
||||
/* 0BD084 800BC484 01D17821 */ addu $t7, $t6, $s1
|
||||
/* 0BD088 800BC488 8DE40004 */ lw $a0, 4($t7)
|
||||
/* 0BD08C 800BC48C 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BD090 800BC490 AFA3008C */ sw $v1, 0x8c($sp)
|
||||
/* 0BD094 800BC494 3C07803B */ lui $a3, %hi(gCtlEntries) # $a3, 0x803b
|
||||
/* 0BD098 800BC498 24E77080 */ addiu $a3, %lo(gCtlEntries) # addiu $a3, $a3, 0x7080
|
||||
/* 0BD09C 800BC49C 8CF80000 */ lw $t8, ($a3)
|
||||
/* 0BD0A0 800BC4A0 8FB90060 */ lw $t9, 0x60($sp)
|
||||
/* 0BD0A4 800BC4A4 8FA3008C */ lw $v1, 0x8c($sp)
|
||||
/* 0BD0A8 800BC4A8 03104021 */ addu $t0, $t8, $s0
|
||||
/* 0BD0AC 800BC4AC A1190001 */ sb $t9, 1($t0)
|
||||
/* 0BD0B0 800BC4B0 8CEA0000 */ lw $t2, ($a3)
|
||||
/* 0BD0B4 800BC4B4 8FA90064 */ lw $t1, 0x64($sp)
|
||||
/* 0BD0B8 800BC4B8 24630001 */ addiu $v1, $v1, 1
|
||||
/* 0BD0BC 800BC4BC 01505821 */ addu $t3, $t2, $s0
|
||||
/* 0BD0C0 800BC4C0 2610000C */ addiu $s0, $s0, 0xc
|
||||
/* 0BD0C4 800BC4C4 26310008 */ addiu $s1, $s1, 8
|
||||
/* 0BD0C8 800BC4C8 1473FFEB */ bne $v1, $s3, .L800BC478
|
||||
/* 0BD0CC 800BC4CC A1690002 */ sb $t1, 2($t3)
|
||||
.L800BC4D0:
|
||||
/* 0BD0D0 800BC4D0 3C11803B */ lui $s1, %hi(gAlTbl) # $s1, 0x803b
|
||||
/* 0BD0D4 800BC4D4 3C120098 */ lui $s2, %hi(_audio_tablesSegmentRomStart) # $s2, 0x98
|
||||
/* 0BD0D8 800BC4D8 26529AA0 */ addiu $s2, %lo(_audio_tablesSegmentRomStart) # addiu $s2, $s2, -0x6560
|
||||
/* 0BD0DC 800BC4DC 26317074 */ addiu $s1, %lo(gAlTbl) # addiu $s1, $s1, 0x7074
|
||||
/* 0BD0E0 800BC4E0 AE350000 */ sw $s5, ($s1)
|
||||
/* 0BD0E4 800BC4E4 02402025 */ move $a0, $s2
|
||||
/* 0BD0E8 800BC4E8 02A02825 */ move $a1, $s5
|
||||
/* 0BD0EC 800BC4EC 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BD0F0 800BC4F0 24060010 */ li $a2, 16
|
||||
/* 0BD0F4 800BC4F4 8E2C0000 */ lw $t4, ($s1)
|
||||
/* 0BD0F8 800BC4F8 2401FFF0 */ li $at, -16
|
||||
/* 0BD0FC 800BC4FC 02802025 */ move $a0, $s4
|
||||
/* 0BD100 800BC500 85900002 */ lh $s0, 2($t4)
|
||||
/* 0BD104 800BC504 001068C0 */ sll $t5, $s0, 3
|
||||
/* 0BD108 800BC508 01A08025 */ move $s0, $t5
|
||||
/* 0BD10C 800BC50C 26100013 */ addiu $s0, $s0, 0x13
|
||||
/* 0BD110 800BC510 02012824 */ and $a1, $s0, $at
|
||||
/* 0BD114 800BC514 0C02E3FF */ jal soundAlloc
|
||||
/* 0BD118 800BC518 00A08025 */ move $s0, $a1
|
||||
/* 0BD11C 800BC51C AE220000 */ sw $v0, ($s1)
|
||||
/* 0BD120 800BC520 02402025 */ move $a0, $s2
|
||||
/* 0BD124 800BC524 00402825 */ move $a1, $v0
|
||||
/* 0BD128 800BC528 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BD12C 800BC52C 02003025 */ move $a2, $s0
|
||||
/* 0BD130 800BC530 8E240000 */ lw $a0, ($s1)
|
||||
/* 0BD134 800BC534 0C02ED0F */ jal func_800BB43C
|
||||
/* 0BD138 800BC538 02402825 */ move $a1, $s2
|
||||
/* 0BD13C 800BC53C 02802025 */ move $a0, $s4
|
||||
/* 0BD140 800BC540 0C02E3FF */ jal soundAlloc
|
||||
/* 0BD144 800BC544 24050100 */ li $a1, 256
|
||||
/* 0BD148 800BC548 3C03803B */ lui $v1, %hi(gAlBankSets) # $v1, 0x803b
|
||||
/* 0BD14C 800BC54C 24637078 */ addiu $v1, %lo(gAlBankSets) # addiu $v1, $v1, 0x7078
|
||||
/* 0BD150 800BC550 3C0400BF */ lui $a0, %hi(_instrument_setsSegmentRomStart) # $a0, 0xbf
|
||||
/* 0BD154 800BC554 AC620000 */ sw $v0, ($v1)
|
||||
/* 0BD158 800BC558 248490E0 */ addiu $a0, %lo(_instrument_setsSegmentRomStart) # addiu $a0, $a0, -0x6f20
|
||||
/* 0BD15C 800BC55C 00402825 */ move $a1, $v0
|
||||
/* 0BD160 800BC560 0C02EAA0 */ jal audio_dma_copy_immediate
|
||||
/* 0BD164 800BC564 24060100 */ li $a2, 256
|
||||
/* 0BD168 800BC568 3C10800F */ lui $s0, %hi(D_800EA5D8) # $s0, 0x800f
|
||||
/* 0BD16C 800BC56C 2610A5D8 */ addiu $s0, %lo(D_800EA5D8) # addiu $s0, $s0, -0x5a28
|
||||
/* 0BD170 800BC570 8E050000 */ lw $a1, ($s0)
|
||||
/* 0BD174 800BC574 0C02E3FF */ jal soundAlloc
|
||||
/* 0BD178 800BC578 02802025 */ move $a0, $s4
|
||||
/* 0BD17C 800BC57C 3C04803B */ lui $a0, %hi(gUnkPool1) # $a0, 0x803b
|
||||
/* 0BD180 800BC580 248401B8 */ addiu $a0, %lo(gUnkPool1) # addiu $a0, $a0, 0x1b8
|
||||
/* 0BD184 800BC584 00402825 */ move $a1, $v0
|
||||
/* 0BD188 800BC588 0C02E41F */ jal sound_alloc_pool_init
|
||||
/* 0BD18C 800BC58C 8E060000 */ lw $a2, ($s0)
|
||||
/* 0BD190 800BC590 0C030497 */ jal init_sequence_players
|
||||
/* 0BD194 800BC594 00000000 */ nop
|
||||
/* 0BD198 800BC598 3C0F7655 */ lui $t7, (0x76557364 >> 16) # lui $t7, 0x7655
|
||||
/* 0BD19C 800BC59C 3C18800F */ lui $t8, %hi(gAudioLoadLock) # $t8, 0x800f
|
||||
/* 0BD1A0 800BC5A0 2718A5DC */ addiu $t8, %lo(gAudioLoadLock) # addiu $t8, $t8, -0x5a24
|
||||
/* 0BD1A4 800BC5A4 35EF7364 */ ori $t7, (0x76557364 & 0xFFFF) # ori $t7, $t7, 0x7364
|
||||
/* 0BD1A8 800BC5A8 AF0F0000 */ sw $t7, ($t8)
|
||||
/* 0BD1AC 800BC5AC 8FBF002C */ lw $ra, 0x2c($sp)
|
||||
/* 0BD1B0 800BC5B0 8FB50028 */ lw $s5, 0x28($sp)
|
||||
/* 0BD1B4 800BC5B4 8FB40024 */ lw $s4, 0x24($sp)
|
||||
/* 0BD1B8 800BC5B8 8FB30020 */ lw $s3, 0x20($sp)
|
||||
/* 0BD1BC 800BC5BC 8FB2001C */ lw $s2, 0x1c($sp)
|
||||
/* 0BD1C0 800BC5C0 8FB10018 */ lw $s1, 0x18($sp)
|
||||
/* 0BD1C4 800BC5C4 8FB00014 */ lw $s0, 0x14($sp)
|
||||
/* 0BD1C8 800BC5C8 03E00008 */ jr $ra
|
||||
/* 0BD1CC 800BC5CC 27BD0090 */ addiu $sp, $sp, 0x90
|
||||
@@ -1,447 +0,0 @@
|
||||
glabel func_8006FA94
|
||||
/* 070694 8006FA94 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 070698 8006FA98 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 07069C 8006FA9C 0C01BE33 */ jal func_8006F8CC
|
||||
/* 0706A0 8006FAA0 00000000 */ nop
|
||||
/* 0706A4 8006FAA4 0C01BC02 */ jal course_mini_map_settings
|
||||
/* 0706A8 8006FAA8 00000000 */ nop
|
||||
/* 0706AC 8006FAAC 24040000 */ li $a0, 0
|
||||
/* 0706B0 8006FAB0 0C0338C4 */ jal osSetTime
|
||||
/* 0706B4 8006FAB4 24050000 */ li $a1, 0
|
||||
/* 0706B8 8006FAB8 3C018019 */ lui $at, %hi(D_8018D170) # $at, 0x8019
|
||||
/* 0706BC 8006FABC AC20D170 */ sw $zero, %lo(D_8018D170)($at)
|
||||
/* 0706C0 8006FAC0 3C018019 */ lui $at, %hi(D_8018D190) # $at, 0x8019
|
||||
/* 0706C4 8006FAC4 AC20D190 */ sw $zero, %lo(D_8018D190)($at)
|
||||
/* 0706C8 8006FAC8 3C018019 */ lui $at, %hi(gIsHUDVisible) # $at, 0x8019
|
||||
/* 0706CC 8006FACC 3C048019 */ lui $a0, %hi(D_8018D178) # $a0, 0x8019
|
||||
/* 0706D0 8006FAD0 AC20D188 */ sw $zero, %lo(gIsHUDVisible)($at)
|
||||
/* 0706D4 8006FAD4 2484D178 */ addiu $a0, %lo(D_8018D178) # addiu $a0, $a0, -0x2e88
|
||||
/* 0706D8 8006FAD8 AC800000 */ sw $zero, ($a0)
|
||||
/* 0706DC 8006FADC 3C018019 */ lui $at, %hi(D_8018D1CC) # $at, 0x8019
|
||||
/* 0706E0 8006FAE0 AC20D1CC */ sw $zero, %lo(D_8018D1CC)($at)
|
||||
/* 0706E4 8006FAE4 3C018016 */ lui $at, %hi(D_801657E2) # $at, 0x8016
|
||||
/* 0706E8 8006FAE8 A02057E2 */ sb $zero, %lo(D_801657E2)($at)
|
||||
/* 0706EC 8006FAEC 3C018016 */ lui $at, %hi(D_80165730) # $at, 0x8016
|
||||
/* 0706F0 8006FAF0 A4205730 */ sh $zero, %lo(D_80165730)($at)
|
||||
/* 0706F4 8006FAF4 3C058016 */ lui $a1, %hi(D_801657E5) # $a1, 0x8016
|
||||
/* 0706F8 8006FAF8 3C018016 */ lui $at, %hi(D_801658FE) # $at, 0x8016
|
||||
/* 0706FC 8006FAFC 24A557E5 */ addiu $a1, %lo(D_801657E5) # addiu $a1, $a1, 0x57e5
|
||||
/* 070700 8006FB00 A02058FE */ sb $zero, %lo(D_801658FE)($at)
|
||||
/* 070704 8006FB04 A0A00000 */ sb $zero, ($a1)
|
||||
/* 070708 8006FB08 80AE0000 */ lb $t6, ($a1)
|
||||
/* 07070C 8006FB0C 3C068016 */ lui $a2, %hi(D_801657E3) # $a2, 0x8016
|
||||
/* 070710 8006FB10 24C657E3 */ addiu $a2, %lo(D_801657E3) # addiu $a2, $a2, 0x57e3
|
||||
/* 070714 8006FB14 A0CE0000 */ sb $t6, ($a2)
|
||||
/* 070718 8006FB18 80CF0000 */ lb $t7, ($a2)
|
||||
/* 07071C 8006FB1C 3C078016 */ lui $a3, %hi(D_801658D6) # $a3, 0x8016
|
||||
/* 070720 8006FB20 3C018016 */ lui $at, %hi(D_801657E1) # $at, 0x8016
|
||||
/* 070724 8006FB24 24E758D6 */ addiu $a3, %lo(D_801658D6) # addiu $a3, $a3, 0x58d6
|
||||
/* 070728 8006FB28 A02F57E1 */ sb $t7, %lo(D_801657E1)($at)
|
||||
/* 07072C 8006FB2C A0E00000 */ sb $zero, ($a3)
|
||||
/* 070730 8006FB30 80F80000 */ lb $t8, ($a3)
|
||||
/* 070734 8006FB34 3C088016 */ lui $t0, %hi(D_801658E4) # $t0, 0x8016
|
||||
/* 070738 8006FB38 250858E4 */ addiu $t0, %lo(D_801658E4) # addiu $t0, $t0, 0x58e4
|
||||
/* 07073C 8006FB3C A1180000 */ sb $t8, ($t0)
|
||||
/* 070740 8006FB40 81190000 */ lb $t9, ($t0)
|
||||
/* 070744 8006FB44 3C098016 */ lui $t1, %hi(D_801658F4) # $t1, 0x8016
|
||||
/* 070748 8006FB48 252958F4 */ addiu $t1, %lo(D_801658F4) # addiu $t1, $t1, 0x58f4
|
||||
/* 07074C 8006FB4C A1390000 */ sb $t9, ($t1)
|
||||
/* 070750 8006FB50 812E0000 */ lb $t6, ($t1)
|
||||
/* 070754 8006FB54 3C0A8016 */ lui $t2, %hi(D_801658EC) # $t2, 0x8016
|
||||
/* 070758 8006FB58 254A58EC */ addiu $t2, %lo(D_801658EC) # addiu $t2, $t2, 0x58ec
|
||||
/* 07075C 8006FB5C A14E0000 */ sb $t6, ($t2)
|
||||
/* 070760 8006FB60 814F0000 */ lb $t7, ($t2)
|
||||
/* 070764 8006FB64 3C0B8016 */ lui $t3, %hi(D_801658DC) # $t3, 0x8016
|
||||
/* 070768 8006FB68 256B58DC */ addiu $t3, %lo(D_801658DC) # addiu $t3, $t3, 0x58dc
|
||||
/* 07076C 8006FB6C A16F0000 */ sb $t7, ($t3)
|
||||
/* 070770 8006FB70 81780000 */ lb $t8, ($t3)
|
||||
/* 070774 8006FB74 3C0C8016 */ lui $t4, %hi(D_801658CE) # $t4, 0x8016
|
||||
/* 070778 8006FB78 258C58CE */ addiu $t4, %lo(D_801658CE) # addiu $t4, $t4, 0x58ce
|
||||
/* 07077C 8006FB7C A1980000 */ sb $t8, ($t4)
|
||||
/* 070780 8006FB80 81990000 */ lb $t9, ($t4)
|
||||
/* 070784 8006FB84 3C038016 */ lui $v1, %hi(D_80165658) # $v1, 0x8016
|
||||
/* 070788 8006FB88 3C0D8016 */ lui $t5, %hi(D_801658C6) # $t5, 0x8016
|
||||
/* 07078C 8006FB8C 25AD58C6 */ addiu $t5, %lo(D_801658C6) # addiu $t5, $t5, 0x58c6
|
||||
/* 070790 8006FB90 24635658 */ addiu $v1, %lo(D_80165658) # addiu $v1, $v1, 0x5658
|
||||
/* 070794 8006FB94 A1B90000 */ sb $t9, ($t5)
|
||||
/* 070798 8006FB98 81AE0000 */ lb $t6, ($t5)
|
||||
/* 07079C 8006FB9C AC600008 */ sw $zero, 8($v1)
|
||||
/* 0707A0 8006FBA0 AC600004 */ sw $zero, 4($v1)
|
||||
/* 0707A4 8006FBA4 AC600000 */ sw $zero, ($v1)
|
||||
/* 0707A8 8006FBA8 3C1F8019 */ lui $ra, %hi(gPlayerCount) # $ra, 0x8019
|
||||
/* 0707AC 8006FBAC 83FFEDF3 */ lb $ra, %lo(gPlayerCount)($ra)
|
||||
/* 0707B0 8006FBB0 3C018016 */ lui $at, %hi(D_801658BC) # $at, 0x8016
|
||||
/* 0707B4 8006FBB4 A02E58BC */ sb $t6, %lo(D_801658BC)($at)
|
||||
/* 0707B8 8006FBB8 24010001 */ li $at, 1
|
||||
/* 0707BC 8006FBBC 13E1000C */ beq $ra, $at, .L8006FBF0
|
||||
/* 0707C0 8006FBC0 03E01025 */ move $v0, $ra
|
||||
/* 0707C4 8006FBC4 24030002 */ li $v1, 2
|
||||
/* 0707C8 8006FBC8 1043001E */ beq $v0, $v1, .L8006FC44
|
||||
/* 0707CC 8006FBCC 3C0F800E */ lui $t7, %hi(gScreenModeSelection) # 0x800e
|
||||
/* 0707D0 8006FBD0 24010003 */ li $at, 3
|
||||
/* 0707D4 8006FBD4 1041005A */ beq $v0, $at, .L8006FD40
|
||||
/* 0707D8 8006FBD8 3C0E800E */ lui $t6, %hi(gModeSelection) # 0x800e
|
||||
/* 0707DC 8006FBDC 24010004 */ li $at, 4
|
||||
/* 0707E0 8006FBE0 10410072 */ beq $v0, $at, .L8006FDAC
|
||||
/* 0707E4 8006FBE4 3C0E800E */ lui $t6, %hi(gModeSelection) # $t6, 0x800e
|
||||
/* 0707E8 8006FBE8 10000087 */ b .L8006FE08
|
||||
/* 0707EC 8006FBEC 240C0008 */ li $t4, 8
|
||||
.L8006FBF0:
|
||||
/* 0707F0 8006FBF0 3C0F800E */ lui $t7, %hi(gModeSelection) # $t7, 0x800e
|
||||
/* 0707F4 8006FBF4 8DEFC53C */ lw $t7, %lo(gModeSelection)($t7)
|
||||
/* 0707F8 8006FBF8 2403000A */ li $v1, 10
|
||||
/* 0707FC 8006FBFC 240E0001 */ li $t6, 1
|
||||
/* 070800 8006FC00 15E0000A */ bnez $t7, .L8006FC2C
|
||||
/* 070804 8006FC04 3C018019 */ lui $at, %hi(D_8018D114) # 0x8019
|
||||
/* 070808 8006FC08 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 07080C 8006FC0C AC20D114 */ sw $zero, %lo(D_8018D114)($at)
|
||||
/* 070810 8006FC10 24180096 */ li $t8, 150
|
||||
/* 070814 8006FC14 AC980000 */ sw $t8, ($a0)
|
||||
/* 070818 8006FC18 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 07081C 8006FC1C 241900F0 */ li $t9, 240
|
||||
/* 070820 8006FC20 AC39D180 */ sw $t9, %lo(D_8018D180)($at)
|
||||
/* 070824 8006FC24 10000078 */ b .L8006FE08
|
||||
/* 070828 8006FC28 240C0008 */ li $t4, 8
|
||||
.L8006FC2C:
|
||||
/* 07082C 8006FC2C AC2ED114 */ sw $t6, %lo(D_8018D114)($at)
|
||||
/* 070830 8006FC30 AC830000 */ sw $v1, ($a0)
|
||||
/* 070834 8006FC34 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 070838 8006FC38 AC20D180 */ sw $zero, %lo(D_8018D180)($at)
|
||||
/* 07083C 8006FC3C 10000072 */ b .L8006FE08
|
||||
/* 070840 8006FC40 240C0008 */ li $t4, 8
|
||||
.L8006FC44:
|
||||
/* 070844 8006FC44 8DEFC530 */ lw $t7, %lo(gScreenModeSelection)($t7) # -0x3ad0($t7)
|
||||
/* 070848 8006FC48 24010001 */ li $at, 1
|
||||
/* 07084C 8006FC4C 3C02800E */ lui $v0, %hi(gModeSelection) # 0x800e
|
||||
/* 070850 8006FC50 15E10029 */ bne $t7, $at, .L8006FCF8
|
||||
/* 070854 8006FC54 00000000 */ nop
|
||||
/* 070858 8006FC58 3C02800E */ lui $v0, %hi(gModeSelection) # $v0, 0x800e
|
||||
/* 07085C 8006FC5C 8C42C53C */ lw $v0, %lo(gModeSelection)($v0)
|
||||
/* 070860 8006FC60 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 070864 8006FC64 24180096 */ li $t8, 150
|
||||
/* 070868 8006FC68 1440000A */ bnez $v0, .L8006FC94
|
||||
/* 07086C 8006FC6C 241900F0 */ li $t9, 240
|
||||
/* 070870 8006FC70 AC23D114 */ sw $v1, %lo(D_8018D114)($at)
|
||||
/* 070874 8006FC74 AC980000 */ sw $t8, ($a0)
|
||||
/* 070878 8006FC78 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 07087C 8006FC7C AC39D180 */ sw $t9, %lo(D_8018D180)($at)
|
||||
/* 070880 8006FC80 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 070884 8006FC84 240E003C */ li $t6, 60
|
||||
/* 070888 8006FC88 AC2ED2AC */ sw $t6, %lo(D_8018D2AC)($at)
|
||||
/* 07088C 8006FC8C 1000005E */ b .L8006FE08
|
||||
/* 070890 8006FC90 240C0008 */ li $t4, 8
|
||||
.L8006FC94:
|
||||
/* 070894 8006FC94 1462000D */ bne $v1, $v0, .L8006FCCC
|
||||
/* 070898 8006FC98 24190004 */ li $t9, 4
|
||||
/* 07089C 8006FC9C 240F0003 */ li $t7, 3
|
||||
/* 0708A0 8006FCA0 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 0708A4 8006FCA4 AC2FD114 */ sw $t7, %lo(D_8018D114)($at)
|
||||
/* 0708A8 8006FCA8 2402001E */ li $v0, 30
|
||||
/* 0708AC 8006FCAC AC820000 */ sw $v0, ($a0)
|
||||
/* 0708B0 8006FCB0 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 0708B4 8006FCB4 AC22D180 */ sw $v0, %lo(D_8018D180)($at)
|
||||
/* 0708B8 8006FCB8 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 0708BC 8006FCBC 2418003C */ li $t8, 60
|
||||
/* 0708C0 8006FCC0 AC38D2AC */ sw $t8, %lo(D_8018D2AC)($at)
|
||||
/* 0708C4 8006FCC4 10000050 */ b .L8006FE08
|
||||
/* 0708C8 8006FCC8 240C0008 */ li $t4, 8
|
||||
.L8006FCCC:
|
||||
/* 0708CC 8006FCCC 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 0708D0 8006FCD0 AC39D114 */ sw $t9, %lo(D_8018D114)($at)
|
||||
/* 0708D4 8006FCD4 24020028 */ li $v0, 40
|
||||
/* 0708D8 8006FCD8 AC820000 */ sw $v0, ($a0)
|
||||
/* 0708DC 8006FCDC 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 0708E0 8006FCE0 AC22D180 */ sw $v0, %lo(D_8018D180)($at)
|
||||
/* 0708E4 8006FCE4 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 0708E8 8006FCE8 240E003C */ li $t6, 60
|
||||
/* 0708EC 8006FCEC AC2ED2AC */ sw $t6, %lo(D_8018D2AC)($at)
|
||||
/* 0708F0 8006FCF0 10000045 */ b .L8006FE08
|
||||
/* 0708F4 8006FCF4 240C0008 */ li $t4, 8
|
||||
.L8006FCF8:
|
||||
/* 0708F8 8006FCF8 8C42C53C */ lw $v0, %lo(gModeSelection) ($v0) # -0x3ac4($v0)
|
||||
/* 0708FC 8006FCFC 240F0005 */ li $t7, 5
|
||||
/* 070900 8006FD00 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 070904 8006FD04 14400003 */ bnez $v0, .L8006FD14
|
||||
/* 070908 8006FD08 240C0008 */ li $t4, 8
|
||||
/* 07090C 8006FD0C 1000003E */ b .L8006FE08
|
||||
/* 070910 8006FD10 AC2FD114 */ sw $t7, %lo(D_8018D114)($at)
|
||||
.L8006FD14:
|
||||
/* 070914 8006FD14 14620006 */ bne $v1, $v0, .L8006FD30
|
||||
/* 070918 8006FD18 24190007 */ li $t9, 7
|
||||
/* 07091C 8006FD1C 24180006 */ li $t8, 6
|
||||
/* 070920 8006FD20 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 070924 8006FD24 AC38D114 */ sw $t8, %lo(D_8018D114)($at)
|
||||
/* 070928 8006FD28 10000037 */ b .L8006FE08
|
||||
/* 07092C 8006FD2C 240C0008 */ li $t4, 8
|
||||
.L8006FD30:
|
||||
/* 070930 8006FD30 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 070934 8006FD34 AC39D114 */ sw $t9, %lo(D_8018D114)($at)
|
||||
/* 070938 8006FD38 10000033 */ b .L8006FE08
|
||||
/* 07093C 8006FD3C 240C0008 */ li $t4, 8
|
||||
.L8006FD40:
|
||||
/* 070940 8006FD40 8DCEC53C */ lw $t6, %lo(gModeSelection)($t6)
|
||||
/* 070944 8006FD44 3C018019 */ lui $at, %hi(D_8018D180) # 0x8019
|
||||
/* 070948 8006FD48 240F0064 */ li $t7, 100
|
||||
/* 07094C 8006FD4C 146E000D */ bne $v1, $t6, .L8006FD84
|
||||
/* 070950 8006FD50 24180096 */ li $t8, 150
|
||||
/* 070954 8006FD54 240C0008 */ li $t4, 8
|
||||
/* 070958 8006FD58 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 07095C 8006FD5C AC2CD114 */ sw $t4, %lo(D_8018D114)($at)
|
||||
/* 070960 8006FD60 240F0064 */ li $t7, 100
|
||||
/* 070964 8006FD64 AC8F0000 */ sw $t7, ($a0)
|
||||
/* 070968 8006FD68 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 07096C 8006FD6C 24180096 */ li $t8, 150
|
||||
/* 070970 8006FD70 AC38D180 */ sw $t8, %lo(D_8018D180)($at)
|
||||
/* 070974 8006FD74 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 070978 8006FD78 2419003C */ li $t9, 60
|
||||
/* 07097C 8006FD7C 10000022 */ b .L8006FE08
|
||||
/* 070980 8006FD80 AC39D2AC */ sw $t9, %lo(D_8018D2AC)($at)
|
||||
.L8006FD84:
|
||||
/* 070984 8006FD84 240E0009 */ li $t6, 9
|
||||
/* 070988 8006FD88 AC2ED114 */ sw $t6, %lo(D_8018D114)($at)
|
||||
/* 07098C 8006FD8C AC8F0000 */ sw $t7, ($a0)
|
||||
/* 070990 8006FD90 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 070994 8006FD94 AC38D180 */ sw $t8, %lo(D_8018D180)($at)
|
||||
/* 070998 8006FD98 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 07099C 8006FD9C 2419003C */ li $t9, 60
|
||||
/* 0709A0 8006FDA0 AC39D2AC */ sw $t9, %lo(D_8018D2AC)($at)
|
||||
/* 0709A4 8006FDA4 10000018 */ b .L8006FE08
|
||||
/* 0709A8 8006FDA8 240C0008 */ li $t4, 8
|
||||
.L8006FDAC:
|
||||
/* 0709AC 8006FDAC 8DCEC53C */ lw $t6, %lo(gModeSelection)($t6) # -0x3ac4($t6)
|
||||
/* 0709B0 8006FDB0 2402001E */ li $v0, 30
|
||||
/* 0709B4 8006FDB4 240F000B */ li $t7, 11
|
||||
/* 0709B8 8006FDB8 146E000B */ bne $v1, $t6, .L8006FDE8
|
||||
/* 0709BC 8006FDBC 240C0008 */ li $t4, 8
|
||||
/* 0709C0 8006FDC0 2403000A */ li $v1, 10
|
||||
/* 0709C4 8006FDC4 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 0709C8 8006FDC8 AC23D114 */ sw $v1, %lo(D_8018D114)($at)
|
||||
/* 0709CC 8006FDCC 2402001E */ li $v0, 30
|
||||
/* 0709D0 8006FDD0 AC820000 */ sw $v0, ($a0)
|
||||
/* 0709D4 8006FDD4 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 0709D8 8006FDD8 AC22D180 */ sw $v0, %lo(D_8018D180)($at)
|
||||
/* 0709DC 8006FDDC 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 0709E0 8006FDE0 10000009 */ b .L8006FE08
|
||||
/* 0709E4 8006FDE4 AC23D2AC */ sw $v1, %lo(D_8018D2AC)($at)
|
||||
.L8006FDE8:
|
||||
/* 0709E8 8006FDE8 3C018019 */ lui $at, %hi(D_8018D114) # $at, 0x8019
|
||||
/* 0709EC 8006FDEC AC2FD114 */ sw $t7, %lo(D_8018D114)($at)
|
||||
/* 0709F0 8006FDF0 AC820000 */ sw $v0, ($a0)
|
||||
/* 0709F4 8006FDF4 3C018019 */ lui $at, %hi(D_8018D180) # $at, 0x8019
|
||||
/* 0709F8 8006FDF8 AC22D180 */ sw $v0, %lo(D_8018D180)($at)
|
||||
/* 0709FC 8006FDFC 2403000A */ li $v1, 10
|
||||
/* 070A00 8006FE00 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 070A04 8006FE04 AC23D2AC */ sw $v1, %lo(D_8018D2AC)($at)
|
||||
.L8006FE08:
|
||||
/* 070A08 8006FE08 3C18800E */ lui $t8, %hi(gEnableDebugMode) # $t8, 0x800e
|
||||
/* 070A0C 8006FE0C 9718C520 */ lhu $t8, %lo(gEnableDebugMode)($t8)
|
||||
/* 070A10 8006FE10 3C0B8019 */ lui $t3, %hi(D_8018D2C8) # $t3, 0x8019
|
||||
/* 070A14 8006FE14 256BD2C8 */ addiu $t3, %lo(D_8018D2C8) # addiu $t3, $t3, -0x2d38
|
||||
/* 070A18 8006FE18 17000005 */ bnez $t8, .L8006FE30
|
||||
/* 070A1C 8006FE1C 2409FFFF */ li $t1, -1
|
||||
/* 070A20 8006FE20 3C018016 */ lui $at, %hi(D_8016576A) # $at, 0x8016
|
||||
/* 070A24 8006FE24 A020576A */ sb $zero, %lo(D_8016576A)($at)
|
||||
/* 070A28 8006FE28 3C018016 */ lui $at, %hi(D_8016579C) # $at, 0x8016
|
||||
/* 070A2C 8006FE2C A020579C */ sb $zero, %lo(D_8016579C)($at)
|
||||
.L8006FE30:
|
||||
/* 070A30 8006FE30 1BE00015 */ blez $ra, .L8006FE88
|
||||
/* 070A34 8006FE34 00002025 */ move $a0, $zero
|
||||
/* 070A38 8006FE38 3C198019 */ lui $t9, %hi(D_8018CFB4) # 0x8019
|
||||
/* 070A3C 8006FE3C 2724CFB4 */ addiu $a0, $t9, %lo(D_8018CFB4) # -0x304c
|
||||
/* 070A40 8006FE40 3C038019 */ lui $v1, %hi(D_8018CFBC) # $v1, 0x8019
|
||||
/* 070A44 8006FE44 3C058019 */ lui $a1, %hi(D_8018CFAC) # $a1, 0x8019
|
||||
/* 070A48 8006FE48 3C068019 */ lui $a2, %hi(D_8018CFC4) # $a2, 0x8019
|
||||
/* 070A4C 8006FE4C 24C6CFC4 */ addiu $a2, %lo(D_8018CFC4) # addiu $a2, $a2, -0x303c
|
||||
/* 070A50 8006FE50 24A5CFAC */ addiu $a1, %lo(D_8018CFAC) # addiu $a1, $a1, -0x3054
|
||||
/* 070A54 8006FE54 2463CFBC */ addiu $v1, %lo(D_8018CFBC) # addiu $v1, $v1, -0x3044
|
||||
/* 070A58 8006FE58 03E43821 */ addu $a3, $ra, $a0
|
||||
.L8006FE5C:
|
||||
/* 070A5C 8006FE5C 24840001 */ addiu $a0, $a0, 1
|
||||
/* 070A60 8006FE60 0087082B */ sltu $at, $a0, $a3
|
||||
/* 070A64 8006FE64 24630001 */ addiu $v1, $v1, 1
|
||||
/* 070A68 8006FE68 24A50001 */ addiu $a1, $a1, 1
|
||||
/* 070A6C 8006FE6C 24C60001 */ addiu $a2, $a2, 1
|
||||
/* 070A70 8006FE70 A060FFFF */ sb $zero, -1($v1)
|
||||
/* 070A74 8006FE74 A0A0FFFF */ sb $zero, -1($a1)
|
||||
/* 070A78 8006FE78 A0C0FFFF */ sb $zero, -1($a2)
|
||||
/* 070A7C 8006FE7C 1420FFF7 */ bnez $at, .L8006FE5C
|
||||
/* 070A80 8006FE80 A080FFFF */ sb $zero, -1($a0)
|
||||
/* 070A84 8006FE84 00002025 */ move $a0, $zero
|
||||
.L8006FE88:
|
||||
/* 070A88 8006FE88 240E0001 */ li $t6, 1
|
||||
/* 070A8C 8006FE8C 3C018019 */ lui $at, %hi(D_8018D204) # $at, 0x8019
|
||||
/* 070A90 8006FE90 AC2ED204 */ sw $t6, %lo(D_8018D204)($at)
|
||||
/* 070A94 8006FE94 3C018019 */ lui $at, %hi(D_8018D1FC) # $at, 0x8019
|
||||
/* 070A98 8006FE98 AC20D1FC */ sw $zero, %lo(D_8018D1FC)($at)
|
||||
/* 070A9C 8006FE9C 3C018019 */ lui $at, %hi(D_8018D224) # $at, 0x8019
|
||||
/* 070AA0 8006FEA0 3C0D8019 */ lui $t5, %hi(D_8018D1F8) # $t5, 0x8019
|
||||
/* 070AA4 8006FEA4 AC20D224 */ sw $zero, %lo(D_8018D224)($at)
|
||||
/* 070AA8 8006FEA8 25ADD1F8 */ addiu $t5, %lo(D_8018D1F8) # addiu $t5, $t5, -0x2e08
|
||||
/* 070AAC 8006FEAC ADA00000 */ sw $zero, ($t5)
|
||||
/* 070AB0 8006FEB0 3C018019 */ lui $at, %hi(D_8018D1F0) # $at, 0x8019
|
||||
/* 070AB4 8006FEB4 AC20D1F0 */ sw $zero, %lo(D_8018D1F0)($at)
|
||||
/* 070AB8 8006FEB8 3C018019 */ lui $at, %hi(D_8018D228) # $at, 0x8019
|
||||
/* 070ABC 8006FEBC 241800FF */ li $t8, 255
|
||||
/* 070AC0 8006FEC0 3C1F8016 */ lui $ra, %hi(D_80165628) # $ra, 0x8016
|
||||
/* 070AC4 8006FEC4 A038D228 */ sb $t8, %lo(D_8018D228)($at)
|
||||
/* 070AC8 8006FEC8 27FF5628 */ addiu $ra, %lo(D_80165628) # addiu $ra, $ra, 0x5628
|
||||
/* 070ACC 8006FECC AFE00000 */ sw $zero, ($ra)
|
||||
/* 070AD0 8006FED0 3C018016 */ lui $at, %hi(D_80165618) # $at, 0x8016
|
||||
/* 070AD4 8006FED4 AC205618 */ sw $zero, %lo(D_80165618)($at)
|
||||
/* 070AD8 8006FED8 3C0E8016 */ lui $t6, %hi(D_80165618) # $t6, 0x8016
|
||||
/* 070ADC 8006FEDC 8DCE5618 */ lw $t6, %lo(D_80165618)($t6)
|
||||
/* 070AE0 8006FEE0 3C018016 */ lui $at, %hi(D_80165608) # $at, 0x8016
|
||||
/* 070AE4 8006FEE4 3C0F8016 */ lui $t7, %hi(D_801657B2) # $t7, 0x8016
|
||||
/* 070AE8 8006FEE8 AC2E5608 */ sw $t6, %lo(D_80165608)($at)
|
||||
/* 070AEC 8006FEEC 3C018016 */ lui $at, %hi(D_801655F8) # $at, 0x8016
|
||||
/* 070AF0 8006FEF0 AC2E55F8 */ sw $t6, %lo(D_801655F8)($at)
|
||||
/* 070AF4 8006FEF4 3C018016 */ lui $at, %hi(D_801655E8) # $at, 0x8016
|
||||
/* 070AF8 8006FEF8 AC2E55E8 */ sw $t6, %lo(D_801655E8)($at)
|
||||
/* 070AFC 8006FEFC 3C018016 */ lui $at, %hi(D_801655D8) # $at, 0x8016
|
||||
/* 070B00 8006FF00 AC2E55D8 */ sw $t6, %lo(D_801655D8)($at)
|
||||
/* 070B04 8006FF04 3C018019 */ lui $at, %hi(D_8018D160) # $at, 0x8019
|
||||
/* 070B08 8006FF08 AC20D160 */ sw $zero, %lo(D_8018D160)($at)
|
||||
/* 070B0C 8006FF0C 3C018019 */ lui $at, %hi(D_8018D1DC) # $at, 0x8019
|
||||
/* 070B10 8006FF10 AC20D1DC */ sw $zero, %lo(D_8018D1DC)($at)
|
||||
/* 070B14 8006FF14 3C018019 */ lui $at, %hi(D_8018D1C4) # $at, 0x8019
|
||||
/* 070B18 8006FF18 AC20D1C4 */ sw $zero, %lo(D_8018D1C4)($at)
|
||||
/* 070B1C 8006FF1C 3C018019 */ lui $at, %hi(D_8018D1B4) # $at, 0x8019
|
||||
/* 070B20 8006FF20 AC20D1B4 */ sw $zero, %lo(D_8018D1B4)($at)
|
||||
/* 070B24 8006FF24 3C018019 */ lui $at, %hi(D_8018D1A0) # $at, 0x8019
|
||||
/* 070B28 8006FF28 AC20D1A0 */ sw $zero, %lo(D_8018D1A0)($at)
|
||||
/* 070B2C 8006FF2C 3C018019 */ lui $at, %hi(D_8018D168) # $at, 0x8019
|
||||
/* 070B30 8006FF30 AC20D168 */ sw $zero, %lo(D_8018D168)($at)
|
||||
/* 070B34 8006FF34 3C018016 */ lui $at, %hi(D_801656F0) # $at, 0x8016
|
||||
/* 070B38 8006FF38 A42056F0 */ sh $zero, %lo(D_801656F0)($at)
|
||||
/* 070B3C 8006FF3C 3C018016 */ lui $at, %hi(D_801657B2) # $at, 0x8016
|
||||
/* 070B40 8006FF40 A02057B2 */ sb $zero, %lo(D_801657B2)($at)
|
||||
/* 070B44 8006FF44 81EF57B2 */ lb $t7, %lo(D_801657B2)($t7)
|
||||
/* 070B48 8006FF48 3C018016 */ lui $at, %hi(D_801657D8) # $at, 0x8016
|
||||
/* 070B4C 8006FF4C 3C188016 */ lui $t8, %hi(D_801657D8) # $t8, 0x8016
|
||||
/* 070B50 8006FF50 A02F57D8 */ sb $t7, %lo(D_801657D8)($at)
|
||||
/* 070B54 8006FF54 831857D8 */ lb $t8, %lo(D_801657D8)($t8)
|
||||
/* 070B58 8006FF58 3C018019 */ lui $at, %hi(D_8018D214) # $at, 0x8019
|
||||
/* 070B5C 8006FF5C 3C198019 */ lui $t9, %hi(D_8018D214) # $t9, 0x8019
|
||||
/* 070B60 8006FF60 AC38D214 */ sw $t8, %lo(D_8018D214)($at)
|
||||
/* 070B64 8006FF64 8F39D214 */ lw $t9, %lo(D_8018D214)($t9)
|
||||
/* 070B68 8006FF68 3C018016 */ lui $at, %hi(gHUDDisable) # $at, 0x8016
|
||||
/* 070B6C 8006FF6C 3C0E8016 */ lui $t6, %hi(gHUDDisable) # $t6, 0x8016
|
||||
/* 070B70 8006FF70 A03957B0 */ sb $t9, %lo(gHUDDisable)($at)
|
||||
/* 070B74 8006FF74 81CE57B0 */ lb $t6, %lo(gHUDDisable)($t6)
|
||||
/* 070B78 8006FF78 3C018016 */ lui $at, %hi(D_801657AE) # $at, 0x8016
|
||||
/* 070B7C 8006FF7C 3C0F8019 */ lui $t7, %hi(D_8018D2F8) # $t7, 0x8019
|
||||
/* 070B80 8006FF80 A02E57AE */ sb $t6, %lo(D_801657AE)($at)
|
||||
/* 070B84 8006FF84 3C018019 */ lui $at, %hi(D_8018D20C) # $at, 0x8019
|
||||
/* 070B88 8006FF88 AC20D20C */ sw $zero, %lo(D_8018D20C)($at)
|
||||
/* 070B8C 8006FF8C 3C018019 */ lui $at, %hi(D_8018D2F8) # $at, 0x8019
|
||||
/* 070B90 8006FF90 A420D2F8 */ sh $zero, %lo(D_8018D2F8)($at)
|
||||
/* 070B94 8006FF94 85EFD2F8 */ lh $t7, %lo(D_8018D2F8)($t7)
|
||||
/* 070B98 8006FF98 3C018019 */ lui $at, %hi(D_8018D2F0) # $at, 0x8019
|
||||
/* 070B9C 8006FF9C 24180003 */ li $t8, 3
|
||||
/* 070BA0 8006FFA0 A42FD2F0 */ sh $t7, %lo(D_8018D2F0)($at)
|
||||
/* 070BA4 8006FFA4 3C018019 */ lui $at, %hi(D_8018D320) # $at, 0x8019
|
||||
/* 070BA8 8006FFA8 AC38D320 */ sw $t8, %lo(D_8018D320)($at)
|
||||
/* 070BAC 8006FFAC 3C018019 */ lui $at, %hi(D_8018D2AC) # $at, 0x8019
|
||||
/* 070BB0 8006FFB0 AC20D2AC */ sw $zero, %lo(D_8018D2AC)($at)
|
||||
/* 070BB4 8006FFB4 3C018019 */ lui $at, %hi(D_8018D2BC) # $at, 0x8019
|
||||
/* 070BB8 8006FFB8 AC20D2BC */ sw $zero, %lo(D_8018D2BC)($at)
|
||||
/* 070BBC 8006FFBC 3C198019 */ lui $t9, %hi(D_8018D2BC) # $t9, 0x8019
|
||||
/* 070BC0 8006FFC0 8F39D2BC */ lw $t9, %lo(D_8018D2BC)($t9)
|
||||
/* 070BC4 8006FFC4 3C018019 */ lui $at, %hi(D_8018D2B4) # $at, 0x8019
|
||||
/* 070BC8 8006FFC8 3C0E8019 */ lui $t6, %hi(D_8018D2B4) # $t6, 0x8019
|
||||
/* 070BCC 8006FFCC AC39D2B4 */ sw $t9, %lo(D_8018D2B4)($at)
|
||||
/* 070BD0 8006FFD0 8DCED2B4 */ lw $t6, %lo(D_8018D2B4)($t6)
|
||||
/* 070BD4 8006FFD4 3C018019 */ lui $at, %hi(D_8018D2A4) # $at, 0x8019
|
||||
/* 070BD8 8006FFD8 3C0F8019 */ lui $t7, %hi(D_8018D18C) # $t7, 0x8019
|
||||
/* 070BDC 8006FFDC AC2ED2A4 */ sw $t6, %lo(D_8018D2A4)($at)
|
||||
/* 070BE0 8006FFE0 AD600000 */ sw $zero, ($t3)
|
||||
/* 070BE4 8006FFE4 AD600004 */ sw $zero, 4($t3)
|
||||
/* 070BE8 8006FFE8 AD600008 */ sw $zero, 8($t3)
|
||||
/* 070BEC 8006FFEC AD60000C */ sw $zero, 0xc($t3)
|
||||
/* 070BF0 8006FFF0 3C018016 */ lui $at, %hi(D_8016581C) # $at, 0x8016
|
||||
/* 070BF4 8006FFF4 AC20581C */ sw $zero, %lo(D_8016581C)($at)
|
||||
/* 070BF8 8006FFF8 3C018016 */ lui $at, %hi(D_8016580C) # $at, 0x8016
|
||||
/* 070BFC 8006FFFC AC20580C */ sw $zero, %lo(D_8016580C)($at)
|
||||
/* 070C00 80070000 3C018016 */ lui $at, %hi(D_80165814) # $at, 0x8016
|
||||
/* 070C04 80070004 AC205814 */ sw $zero, %lo(D_80165814)($at)
|
||||
/* 070C08 80070008 3C018016 */ lui $at, %hi(D_80165804) # $at, 0x8016
|
||||
/* 070C0C 8007000C AC205804 */ sw $zero, %lo(D_80165804)($at)
|
||||
/* 070C10 80070010 3C018016 */ lui $at, %hi(D_801657FC) # $at, 0x8016
|
||||
/* 070C14 80070014 AC2057FC */ sw $zero, %lo(D_801657FC)($at)
|
||||
/* 070C18 80070018 3C018019 */ lui $at, %hi(D_8018D18C) # $at, 0x8019
|
||||
/* 070C1C 8007001C A429D18C */ sh $t1, %lo(D_8018D18C)($at)
|
||||
/* 070C20 80070020 85EFD18C */ lh $t7, %lo(D_8018D18C)($t7)
|
||||
/* 070C24 80070024 3C018019 */ lui $at, %hi(D_8018D184) # $at, 0x8019
|
||||
/* 070C28 80070028 3C02800E */ lui $v0, %hi(gPlayerOne) # $v0, 0x800e
|
||||
/* 070C2C 8007002C A42FD184 */ sh $t7, %lo(D_8018D184)($at)
|
||||
/* 070C30 80070030 3C018019 */ lui $at, %hi(D_8018D16C) # $at, 0x8019
|
||||
/* 070C34 80070034 A42FD16C */ sh $t7, %lo(D_8018D16C)($at)
|
||||
/* 070C38 80070038 3C018019 */ lui $at, %hi(D_8018D17C) # $at, 0x8019
|
||||
/* 070C3C 8007003C A42FD17C */ sh $t7, %lo(D_8018D17C)($at)
|
||||
/* 070C40 80070040 3C018019 */ lui $at, %hi(D_8018D174) # $at, 0x8019
|
||||
/* 070C44 80070044 A42FD174 */ sh $t7, %lo(D_8018D174)($at)
|
||||
/* 070C48 80070048 3C01C200 */ li $at, 0xC2000000 # -32.000000
|
||||
/* 070C4C 8007004C 3C058019 */ lui $a1, %hi(D_8018D050) # $a1, 0x8019
|
||||
/* 070C50 80070050 3C068019 */ lui $a2, %hi(D_8018D0F0) # $a2, 0x8019
|
||||
/* 070C54 80070054 3C038019 */ lui $v1, %hi(D_8018CE10) # $v1, 0x8019
|
||||
/* 070C58 80070058 3C078019 */ lui $a3, %hi(D_8018CF50) # $a3, 0x8019
|
||||
/* 070C5C 8007005C 3C088019 */ lui $t0, %hi(D_8018CF28) # $t0, 0x8019
|
||||
/* 070C60 80070060 44811000 */ mtc1 $at, $f2
|
||||
/* 070C64 80070064 44800000 */ mtc1 $zero, $f0
|
||||
/* 070C68 80070068 8C42C4DC */ lw $v0, %lo(gPlayerOne)($v0)
|
||||
/* 070C6C 8007006C 2508CF28 */ addiu $t0, %lo(D_8018CF28) # addiu $t0, $t0, -0x30d8
|
||||
/* 070C70 80070070 24E7CF50 */ addiu $a3, %lo(D_8018CF50) # addiu $a3, $a3, -0x30b0
|
||||
/* 070C74 80070074 2463CE10 */ addiu $v1, %lo(D_8018CE10) # addiu $v1, $v1, -0x31f0
|
||||
/* 070C78 80070078 24C6D0F0 */ addiu $a2, %lo(D_8018D0F0) # addiu $a2, $a2, -0x2f10
|
||||
/* 070C7C 8007007C 24A5D050 */ addiu $a1, %lo(D_8018D050) # addiu $a1, $a1, -0x2fb0
|
||||
.L80070080:
|
||||
/* 070C80 80070080 E4A20000 */ swc1 $f2, ($a1)
|
||||
/* 070C84 80070084 E4C20000 */ swc1 $f2, ($a2)
|
||||
/* 070C88 80070088 E460000C */ swc1 $f0, 0xc($v1)
|
||||
/* 070C8C 8007008C E4600008 */ swc1 $f0, 8($v1)
|
||||
/* 070C90 80070090 E4600004 */ swc1 $f0, 4($v1)
|
||||
/* 070C94 80070094 A4E40000 */ sh $a0, ($a3)
|
||||
/* 070C98 80070098 AD020000 */ sw $v0, ($t0)
|
||||
/* 070C9C 8007009C A4490040 */ sh $t1, 0x40($v0)
|
||||
/* 070CA0 800700A0 24980001 */ addiu $t8, $a0, 1
|
||||
/* 070CA4 800700A4 24420DD8 */ addiu $v0, $v0, 0xdd8
|
||||
/* 070CA8 800700A8 AD020004 */ sw $v0, 4($t0)
|
||||
/* 070CAC 800700AC A4F80002 */ sh $t8, 2($a3)
|
||||
/* 070CB0 800700B0 E4600024 */ swc1 $f0, 0x24($v1)
|
||||
/* 070CB4 800700B4 E4600028 */ swc1 $f0, 0x28($v1)
|
||||
/* 070CB8 800700B8 E460002C */ swc1 $f0, 0x2c($v1)
|
||||
/* 070CBC 800700BC E4C20004 */ swc1 $f2, 4($a2)
|
||||
/* 070CC0 800700C0 E4A20004 */ swc1 $f2, 4($a1)
|
||||
/* 070CC4 800700C4 A4490040 */ sh $t1, 0x40($v0)
|
||||
/* 070CC8 800700C8 24420DD8 */ addiu $v0, $v0, 0xdd8
|
||||
/* 070CCC 800700CC 24990002 */ addiu $t9, $a0, 2
|
||||
/* 070CD0 800700D0 A4F90004 */ sh $t9, 4($a3)
|
||||
/* 070CD4 800700D4 AD020008 */ sw $v0, 8($t0)
|
||||
/* 070CD8 800700D8 E4600044 */ swc1 $f0, 0x44($v1)
|
||||
/* 070CDC 800700DC E4600048 */ swc1 $f0, 0x48($v1)
|
||||
/* 070CE0 800700E0 E460004C */ swc1 $f0, 0x4c($v1)
|
||||
/* 070CE4 800700E4 E4C20008 */ swc1 $f2, 8($a2)
|
||||
/* 070CE8 800700E8 E4A20008 */ swc1 $f2, 8($a1)
|
||||
/* 070CEC 800700EC A4490040 */ sh $t1, 0x40($v0)
|
||||
/* 070CF0 800700F0 248E0003 */ addiu $t6, $a0, 3
|
||||
/* 070CF4 800700F4 24420DD8 */ addiu $v0, $v0, 0xdd8
|
||||
/* 070CF8 800700F8 AD02000C */ sw $v0, 0xc($t0)
|
||||
/* 070CFC 800700FC A4EE0006 */ sh $t6, 6($a3)
|
||||
/* 070D00 80070100 24840004 */ addiu $a0, $a0, 4
|
||||
/* 070D04 80070104 E4600064 */ swc1 $f0, 0x64($v1)
|
||||
/* 070D08 80070108 E4600068 */ swc1 $f0, 0x68($v1)
|
||||
/* 070D0C 8007010C E460006C */ swc1 $f0, 0x6c($v1)
|
||||
/* 070D10 80070110 E4C2000C */ swc1 $f2, 0xc($a2)
|
||||
/* 070D14 80070114 E4A2000C */ swc1 $f2, 0xc($a1)
|
||||
/* 070D18 80070118 A4490040 */ sh $t1, 0x40($v0)
|
||||
/* 070D1C 8007011C 24420DD8 */ addiu $v0, $v0, 0xdd8
|
||||
/* 070D20 80070120 24A50010 */ addiu $a1, $a1, 0x10
|
||||
/* 070D24 80070124 24C60010 */ addiu $a2, $a2, 0x10
|
||||
/* 070D28 80070128 24630080 */ addiu $v1, $v1, 0x80
|
||||
/* 070D2C 8007012C 24E70008 */ addiu $a3, $a3, 8
|
||||
/* 070D30 80070130 148CFFD3 */ bne $a0, $t4, .L80070080
|
||||
/* 070D34 80070134 25080010 */ addiu $t0, $t0, 0x10
|
||||
/* 070D38 80070138 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 070D3C 8007013C 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* 070D40 80070140 03E00008 */ jr $ra
|
||||
/* 070D44 80070144 00000000 */ nop
|
||||
@@ -1,117 +0,0 @@
|
||||
.section .late_rodata
|
||||
glabel D_800F2B38
|
||||
.double 0.001
|
||||
|
||||
glabel D_800F2B40
|
||||
.float 0.001
|
||||
|
||||
.section .text
|
||||
glabel func_800AFC54
|
||||
/* 0B0854 800AFC54 27BDFFA8 */ addiu $sp, $sp, -0x58
|
||||
/* 0B0858 800AFC58 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 0B085C 800AFC5C 00057100 */ sll $t6, $a1, 4
|
||||
/* 0B0860 800AFC60 00067900 */ sll $t7, $a2, 4
|
||||
/* 0B0864 800AFC64 0007C100 */ sll $t8, $a3, 4
|
||||
/* 0B0868 800AFC68 01C41021 */ addu $v0, $t6, $a0
|
||||
/* 0B086C 800AFC6C 01E41821 */ addu $v1, $t7, $a0
|
||||
/* 0B0870 800AFC70 03044021 */ addu $t0, $t8, $a0
|
||||
/* 0B0874 800AFC74 85190000 */ lh $t9, ($t0)
|
||||
/* 0B0878 800AFC78 844C0000 */ lh $t4, ($v0)
|
||||
/* 0B087C 800AFC7C 844D0002 */ lh $t5, 2($v0)
|
||||
/* 0B0880 800AFC80 845F0004 */ lh $ra, 4($v0)
|
||||
/* 0B0884 800AFC84 84690000 */ lh $t1, ($v1)
|
||||
/* 0B0888 800AFC88 846A0002 */ lh $t2, 2($v1)
|
||||
/* 0B088C 800AFC8C 846B0004 */ lh $t3, 4($v1)
|
||||
/* 0B0890 800AFC90 AFB9003C */ sw $t9, 0x3c($sp)
|
||||
/* 0B0894 800AFC94 850E0002 */ lh $t6, 2($t0)
|
||||
/* 0B0898 800AFC98 014D1023 */ subu $v0, $t2, $t5
|
||||
/* 0B089C 800AFC9C 017F2023 */ subu $a0, $t3, $ra
|
||||
/* 0B08A0 800AFCA0 AFAE0038 */ sw $t6, 0x38($sp)
|
||||
/* 0B08A4 800AFCA4 850F0004 */ lh $t7, 4($t0)
|
||||
/* 0B08A8 800AFCA8 01CA2823 */ subu $a1, $t6, $t2
|
||||
/* 0B08AC 800AFCAC 8FB9003C */ lw $t9, 0x3c($sp)
|
||||
/* 0B08B0 800AFCB0 01EB1823 */ subu $v1, $t7, $t3
|
||||
/* 0B08B4 800AFCB4 00430019 */ multu $v0, $v1
|
||||
/* 0B08B8 800AFCB8 AFAF0034 */ sw $t7, 0x34($sp)
|
||||
/* 0B08BC 800AFCBC 03293023 */ subu $a2, $t9, $t1
|
||||
/* 0B08C0 800AFCC0 012C3823 */ subu $a3, $t1, $t4
|
||||
/* 0B08C4 800AFCC4 00007012 */ mflo $t6
|
||||
/* 0B08C8 800AFCC8 00000000 */ nop
|
||||
/* 0B08CC 800AFCCC 00000000 */ nop
|
||||
/* 0B08D0 800AFCD0 00850019 */ multu $a0, $a1
|
||||
/* 0B08D4 800AFCD4 00007812 */ mflo $t7
|
||||
/* 0B08D8 800AFCD8 01CFC023 */ subu $t8, $t6, $t7
|
||||
/* 0B08DC 800AFCDC 44982000 */ mtc1 $t8, $f4
|
||||
/* 0B08E0 800AFCE0 00860019 */ multu $a0, $a2
|
||||
/* 0B08E4 800AFCE4 468023A0 */ cvt.s.w $f14, $f4
|
||||
/* 0B08E8 800AFCE8 460E7282 */ mul.s $f10, $f14, $f14
|
||||
/* 0B08EC 800AFCEC E7AE0020 */ swc1 $f14, 0x20($sp)
|
||||
/* 0B08F0 800AFCF0 00007012 */ mflo $t6
|
||||
/* 0B08F4 800AFCF4 00000000 */ nop
|
||||
/* 0B08F8 800AFCF8 00000000 */ nop
|
||||
/* 0B08FC 800AFCFC 00E30019 */ multu $a3, $v1
|
||||
/* 0B0900 800AFD00 00007812 */ mflo $t7
|
||||
/* 0B0904 800AFD04 01CFC023 */ subu $t8, $t6, $t7
|
||||
/* 0B0908 800AFD08 44983000 */ mtc1 $t8, $f6
|
||||
/* 0B090C 800AFD0C 00E50019 */ multu $a3, $a1
|
||||
/* 0B0910 800AFD10 46803420 */ cvt.s.w $f16, $f6
|
||||
/* 0B0914 800AFD14 46108102 */ mul.s $f4, $f16, $f16
|
||||
/* 0B0918 800AFD18 E7B0001C */ swc1 $f16, 0x1c($sp)
|
||||
/* 0B091C 800AFD1C 0000C812 */ mflo $t9
|
||||
/* 0B0920 800AFD20 00000000 */ nop
|
||||
/* 0B0924 800AFD24 00000000 */ nop
|
||||
/* 0B0928 800AFD28 00460019 */ multu $v0, $a2
|
||||
/* 0B092C 800AFD2C 46045180 */ add.s $f6, $f10, $f4
|
||||
/* 0B0930 800AFD30 00007012 */ mflo $t6
|
||||
/* 0B0934 800AFD34 032E7823 */ subu $t7, $t9, $t6
|
||||
/* 0B0938 800AFD38 448F4000 */ mtc1 $t7, $f8
|
||||
/* 0B093C 800AFD3C 00000000 */ nop
|
||||
/* 0B0940 800AFD40 468044A0 */ cvt.s.w $f18, $f8
|
||||
/* 0B0944 800AFD44 46129202 */ mul.s $f8, $f18, $f18
|
||||
/* 0B0948 800AFD48 E7B20018 */ swc1 $f18, 0x18($sp)
|
||||
/* 0B094C 800AFD4C 0C033850 */ jal sqrtf
|
||||
/* 0B0950 800AFD50 46083300 */ add.s $f12, $f6, $f8
|
||||
/* 0B0954 800AFD54 3C01800F */ lui $at, %hi(D_800F2B38)
|
||||
/* 0B0958 800AFD58 D4242B38 */ ldc1 $f4, %lo(D_800F2B38)($at)
|
||||
/* 0B095C 800AFD5C 460002A1 */ cvt.d.s $f10, $f0
|
||||
/* 0B0960 800AFD60 44803000 */ mtc1 $zero, $f6
|
||||
/* 0B0964 800AFD64 4624503C */ c.lt.d $f10, $f4
|
||||
/* 0B0968 800AFD68 C7AE0020 */ lwc1 $f14, 0x20($sp)
|
||||
/* 0B096C 800AFD6C C7B0001C */ lwc1 $f16, 0x1c($sp)
|
||||
/* 0B0970 800AFD70 C7B20018 */ lwc1 $f18, 0x18($sp)
|
||||
/* 0B0974 800AFD74 45000003 */ bc1f .L800AFD84
|
||||
/* 0B0978 800AFD78 46000086 */ mov.s $f2, $f0
|
||||
/* 0B097C 800AFD7C 3C01800F */ lui $at, %hi(D_800F2B40) # $at, 0x800f
|
||||
/* 0B0980 800AFD80 C4222B40 */ lwc1 $f2, %lo(D_800F2B40)($at)
|
||||
.L800AFD84:
|
||||
/* 0B0984 800AFD84 3C0142F0 */ li $at, 0x42F00000 # 120.000000
|
||||
/* 0B0988 800AFD88 44810000 */ mtc1 $at, $f0
|
||||
/* 0B098C 800AFD8C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000
|
||||
/* 0B0990 800AFD90 44813800 */ mtc1 $at, $f7
|
||||
/* 0B0994 800AFD94 46001221 */ cvt.d.s $f8, $f2
|
||||
/* 0B0998 800AFD98 8FA20068 */ lw $v0, 0x68($sp)
|
||||
/* 0B099C 800AFD9C 46283283 */ div.d $f10, $f6, $f8
|
||||
/* 0B09A0 800AFDA0 462050A0 */ cvt.s.d $f2, $f10
|
||||
/* 0B09A4 800AFDA4 46027102 */ mul.s $f4, $f14, $f2
|
||||
/* 0B09A8 800AFDA8 00000000 */ nop
|
||||
/* 0B09AC 800AFDAC 46002182 */ mul.s $f6, $f4, $f0
|
||||
/* 0B09B0 800AFDB0 00000000 */ nop
|
||||
/* 0B09B4 800AFDB4 46028282 */ mul.s $f10, $f16, $f2
|
||||
/* 0B09B8 800AFDB8 4600320D */ trunc.w.s $f8, $f6
|
||||
/* 0B09BC 800AFDBC 46005102 */ mul.s $f4, $f10, $f0
|
||||
/* 0B09C0 800AFDC0 44194000 */ mfc1 $t9, $f8
|
||||
/* 0B09C4 800AFDC4 46029202 */ mul.s $f8, $f18, $f2
|
||||
/* 0B09C8 800AFDC8 A4590000 */ sh $t9, ($v0)
|
||||
/* 0B09CC 800AFDCC 4600218D */ trunc.w.s $f6, $f4
|
||||
/* 0B09D0 800AFDD0 46004282 */ mul.s $f10, $f8, $f0
|
||||
/* 0B09D4 800AFDD4 440F3000 */ mfc1 $t7, $f6
|
||||
/* 0B09D8 800AFDD8 00000000 */ nop
|
||||
/* 0B09DC 800AFDDC A44F0002 */ sh $t7, 2($v0)
|
||||
/* 0B09E0 800AFDE0 4600510D */ trunc.w.s $f4, $f10
|
||||
/* 0B09E4 800AFDE4 44192000 */ mfc1 $t9, $f4
|
||||
/* 0B09E8 800AFDE8 00000000 */ nop
|
||||
/* 0B09EC 800AFDEC A4590004 */ sh $t9, 4($v0)
|
||||
/* 0B09F0 800AFDF0 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 0B09F4 800AFDF4 27BD0058 */ addiu $sp, $sp, 0x58
|
||||
/* 0B09F8 800AFDF8 03E00008 */ jr $ra
|
||||
/* 0B09FC 800AFDFC 00000000 */ nop
|
||||
@@ -1,222 +0,0 @@
|
||||
.section .late_rodata
|
||||
glabel D_800F2B44
|
||||
.float 0.18
|
||||
|
||||
.section .text
|
||||
glabel func_800B0004
|
||||
/* 0B0C04 800B0004 27BDFF40 */ addiu $sp, $sp, -0xc0
|
||||
/* 0B0C08 800B0008 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 0B0C0C 800B000C 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 0B0C10 800B0010 8C640000 */ lw $a0, ($v1)
|
||||
/* 0B0C14 800B0014 AFBF005C */ sw $ra, 0x5c($sp)
|
||||
/* 0B0C18 800B0018 AFBE0058 */ sw $fp, 0x58($sp)
|
||||
/* 0B0C1C 800B001C 248E0008 */ addiu $t6, $a0, 8
|
||||
/* 0B0C20 800B0020 AFB70054 */ sw $s7, 0x54($sp)
|
||||
/* 0B0C24 800B0024 AFB60050 */ sw $s6, 0x50($sp)
|
||||
/* 0B0C28 800B0028 AFB5004C */ sw $s5, 0x4c($sp)
|
||||
/* 0B0C2C 800B002C AFB40048 */ sw $s4, 0x48($sp)
|
||||
/* 0B0C30 800B0030 AFB30044 */ sw $s3, 0x44($sp)
|
||||
/* 0B0C34 800B0034 AFB20040 */ sw $s2, 0x40($sp)
|
||||
/* 0B0C38 800B0038 AFB1003C */ sw $s1, 0x3c($sp)
|
||||
/* 0B0C3C 800B003C AFB00038 */ sw $s0, 0x38($sp)
|
||||
/* 0B0C40 800B0040 F7B60030 */ sdc1 $f22, 0x30($sp)
|
||||
/* 0B0C44 800B0044 F7B40028 */ sdc1 $f20, 0x28($sp)
|
||||
/* 0B0C48 800B0048 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 0B0C4C 800B004C 3C0F0386 */ lui $t7, (0x03860010 >> 16) # lui $t7, 0x386
|
||||
/* 0B0C50 800B0050 3C18000F */ lui $t8, %hi(D_800E8688-0x80000000) # $t8, 0xf
|
||||
/* 0B0C54 800B0054 27188688 */ addiu $t8, %lo(D_800E8688-0x80000000) # addiu $t8, $t8, -0x7978
|
||||
/* 0B0C58 800B0058 35EF0010 */ ori $t7, (0x03860010 & 0xFFFF) # ori $t7, $t7, 0x10
|
||||
/* 0B0C5C 800B005C AC8F0000 */ sw $t7, ($a0)
|
||||
/* 0B0C60 800B0060 AC980004 */ sw $t8, 4($a0)
|
||||
/* 0B0C64 800B0064 8C650000 */ lw $a1, ($v1)
|
||||
/* 0B0C68 800B0068 3C0C0388 */ lui $t4, (0x03880010 >> 16) # lui $t4, 0x388
|
||||
/* 0B0C6C 800B006C 3C0D000F */ lui $t5, %hi(D_800E8680-0x80000000) # $t5, 0xf
|
||||
/* 0B0C70 800B0070 24B90008 */ addiu $t9, $a1, 8
|
||||
/* 0B0C74 800B0074 AC790000 */ sw $t9, ($v1)
|
||||
/* 0B0C78 800B0078 25AD8680 */ addiu $t5, %lo(D_800E8680-0x80000000) # addiu $t5, $t5, -0x7980
|
||||
/* 0B0C7C 800B007C 358C0010 */ ori $t4, (0x03880010 & 0xFFFF) # ori $t4, $t4, 0x10
|
||||
/* 0B0C80 800B0080 ACAC0000 */ sw $t4, ($a1)
|
||||
/* 0B0C84 800B0084 ACAD0004 */ sw $t5, 4($a1)
|
||||
/* 0B0C88 800B0088 8C660000 */ lw $a2, ($v1)
|
||||
/* 0B0C8C 800B008C 3C188000 */ lui $t8, (0x80000040 >> 16) # lui $t8, 0x8000
|
||||
/* 0B0C90 800B0090 3C0FBC00 */ lui $t7, (0xBC000002 >> 16) # lui $t7, 0xbc00
|
||||
/* 0B0C94 800B0094 24CE0008 */ addiu $t6, $a2, 8
|
||||
/* 0B0C98 800B0098 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 0B0C9C 800B009C 35EF0002 */ ori $t7, (0xBC000002 & 0xFFFF) # ori $t7, $t7, 2
|
||||
/* 0B0CA0 800B00A0 37180040 */ ori $t8, (0x80000040 & 0xFFFF) # ori $t8, $t8, 0x40
|
||||
/* 0B0CA4 800B00A4 ACD80004 */ sw $t8, 4($a2)
|
||||
/* 0B0CA8 800B00A8 ACCF0000 */ sw $t7, ($a2)
|
||||
/* 0B0CAC 800B00AC 8C670000 */ lw $a3, ($v1)
|
||||
/* 0B0CB0 800B00B0 3C0BB700 */ lui $t3, 0xb700
|
||||
/* 0B0CB4 800B00B4 240C0204 */ li $t4, 516
|
||||
/* 0B0CB8 800B00B8 24F90008 */ addiu $t9, $a3, 8
|
||||
/* 0B0CBC 800B00BC AC790000 */ sw $t9, ($v1)
|
||||
/* 0B0CC0 800B00C0 ACEC0004 */ sw $t4, 4($a3)
|
||||
/* 0B0CC4 800B00C4 ACEB0000 */ sw $t3, ($a3)
|
||||
/* 0B0CC8 800B00C8 8C680000 */ lw $t0, ($v1)
|
||||
/* 0B0CCC 800B00CC 3C0EFC32 */ lui $t6, (0xFC327E64 >> 16) # lui $t6, 0xfc32
|
||||
/* 0B0CD0 800B00D0 35CE7E64 */ ori $t6, (0xFC327E64 & 0xFFFF) # ori $t6, $t6, 0x7e64
|
||||
/* 0B0CD4 800B00D4 250D0008 */ addiu $t5, $t0, 8
|
||||
/* 0B0CD8 800B00D8 AC6D0000 */ sw $t5, ($v1)
|
||||
/* 0B0CDC 800B00DC 240FF9FC */ li $t7, -1540
|
||||
/* 0B0CE0 800B00E0 AD0F0004 */ sw $t7, 4($t0)
|
||||
/* 0B0CE4 800B00E4 AD0E0000 */ sw $t6, ($t0)
|
||||
/* 0B0CE8 800B00E8 8C690000 */ lw $t1, ($v1)
|
||||
/* 0B0CEC 800B00EC 240C2000 */ li $t4, 8192
|
||||
/* 0B0CF0 800B00F0 3C19B600 */ lui $t9, 0xb600
|
||||
/* 0B0CF4 800B00F4 25380008 */ addiu $t8, $t1, 8
|
||||
/* 0B0CF8 800B00F8 AC780000 */ sw $t8, ($v1)
|
||||
/* 0B0CFC 800B00FC AD2C0004 */ sw $t4, 4($t1)
|
||||
/* 0B0D00 800B0100 AD390000 */ sw $t9, ($t1)
|
||||
/* 0B0D04 800B0104 8C620000 */ lw $v0, ($v1)
|
||||
/* 0B0D08 800B0108 3C0E0002 */ lui $t6, 2
|
||||
/* 0B0D0C 800B010C 3C0F8019 */ lui $t7, %hi(D_8018EDB4) # $t7, 0x8019
|
||||
/* 0B0D10 800B0110 244D0008 */ addiu $t5, $v0, 8
|
||||
/* 0B0D14 800B0114 AC6D0000 */ sw $t5, ($v1)
|
||||
/* 0B0D18 800B0118 AC4E0004 */ sw $t6, 4($v0)
|
||||
/* 0B0D1C 800B011C AC4B0000 */ sw $t3, ($v0)
|
||||
/* 0B0D20 800B0120 85EFEDB4 */ lh $t7, %lo(D_8018EDB4)($t7)
|
||||
/* 0B0D24 800B0124 3C178019 */ lui $s7, %hi(D_8018EDB2) # $s7, 0x8019
|
||||
/* 0B0D28 800B0128 00405025 */ move $t2, $v0
|
||||
/* 0B0D2C 800B012C 05E10004 */ bgez $t7, .L800B0140
|
||||
/* 0B0D30 800B0130 31F80001 */ andi $t8, $t7, 1
|
||||
/* 0B0D34 800B0134 13000002 */ beqz $t8, .L800B0140
|
||||
/* 0B0D38 800B0138 00000000 */ nop
|
||||
/* 0B0D3C 800B013C 2718FFFE */ addiu $t8, $t8, -2
|
||||
.L800B0140:
|
||||
/* 0B0D40 800B0140 13000004 */ beqz $t8, .L800B0154
|
||||
/* 0B0D44 800B0144 3C198019 */ lui $t9, %hi(D_8018EDB8) # $t9, 0x8019
|
||||
/* 0B0D48 800B0148 8F39EDB8 */ lw $t9, %lo(D_8018EDB8)($t9)
|
||||
/* 0B0D4C 800B014C 10000004 */ b .L800B0160
|
||||
/* 0B0D50 800B0150 AFB900BC */ sw $t9, 0xbc($sp)
|
||||
.L800B0154:
|
||||
/* 0B0D54 800B0154 3C0C8019 */ lui $t4, %hi(D_8018EDBC) # $t4, 0x8019
|
||||
/* 0B0D58 800B0158 8D8CEDBC */ lw $t4, %lo(D_8018EDBC)($t4)
|
||||
/* 0B0D5C 800B015C AFAC00BC */ sw $t4, 0xbc($sp)
|
||||
.L800B0160:
|
||||
/* 0B0D60 800B0160 26F7EDB2 */ addiu $s7, %lo(D_8018EDB2) # addiu $s7, $s7, -0x124e
|
||||
/* 0B0D64 800B0164 240D09C0 */ li $t5, 2496
|
||||
/* 0B0D68 800B0168 A6ED0000 */ sh $t5, ($s7)
|
||||
/* 0B0D6C 800B016C 3C01800F */ lui $at, %hi(D_800F2B44) # $at, 0x800f
|
||||
/* 0B0D70 800B0170 C4362B44 */ lwc1 $f22, %lo(D_800F2B44)($at)
|
||||
/* 0B0D74 800B0174 3C0142A8 */ li $at, 0x42A80000 # 84.000000
|
||||
/* 0B0D78 800B0178 3C168019 */ lui $s6, %hi(D_8018EDB0) # $s6, 0x8019
|
||||
/* 0B0D7C 800B017C 4481A000 */ mtc1 $at, $f20
|
||||
/* 0B0D80 800B0180 26D6EDB0 */ addiu $s6, %lo(D_8018EDB0) # addiu $s6, $s6, -0x1250
|
||||
/* 0B0D84 800B0184 0000F025 */ move $fp, $zero
|
||||
/* 0B0D88 800B0188 AFA00064 */ sw $zero, 0x64($sp)
|
||||
.L800B018C:
|
||||
/* 0B0D8C 800B018C 8FA20064 */ lw $v0, 0x64($sp)
|
||||
/* 0B0D90 800B0190 00009025 */ move $s2, $zero
|
||||
/* 0B0D94 800B0194 00008025 */ move $s0, $zero
|
||||
/* 0B0D98 800B0198 00009825 */ move $s3, $zero
|
||||
/* 0B0D9C 800B019C 0002A900 */ sll $s5, $v0, 4
|
||||
.L800B01A0:
|
||||
/* 0B0DA0 800B01A0 86EF0000 */ lh $t7, ($s7)
|
||||
/* 0B0DA4 800B01A4 86CE0000 */ lh $t6, ($s6)
|
||||
/* 0B0DA8 800B01A8 020F0019 */ multu $s0, $t7
|
||||
/* 0B0DAC 800B01AC 0000C012 */ mflo $t8
|
||||
/* 0B0DB0 800B01B0 01D82023 */ subu $a0, $t6, $t8
|
||||
/* 0B0DB4 800B01B4 3099FFFF */ andi $t9, $a0, 0xffff
|
||||
/* 0B0DB8 800B01B8 0C0AE006 */ jal sins
|
||||
/* 0B0DBC 800B01BC 03202025 */ move $a0, $t9
|
||||
/* 0B0DC0 800B01C0 44903000 */ mtc1 $s0, $f6
|
||||
/* 0B0DC4 800B01C4 46140102 */ mul.s $f4, $f0, $f20
|
||||
/* 0B0DC8 800B01C8 86EF0000 */ lh $t7, ($s7)
|
||||
/* 0B0DCC 800B01CC 26110001 */ addiu $s1, $s0, 1
|
||||
/* 0B0DD0 800B01D0 86CD0000 */ lh $t5, ($s6)
|
||||
/* 0B0DD4 800B01D4 022F0019 */ multu $s1, $t7
|
||||
/* 0B0DD8 800B01D8 46803220 */ cvt.s.w $f8, $f6
|
||||
/* 0B0DDC 800B01DC 46082282 */ mul.s $f10, $f4, $f8
|
||||
/* 0B0DE0 800B01E0 00007012 */ mflo $t6
|
||||
/* 0B0DE4 800B01E4 01AE2023 */ subu $a0, $t5, $t6
|
||||
/* 0B0DE8 800B01E8 3098FFFF */ andi $t8, $a0, 0xffff
|
||||
/* 0B0DEC 800B01EC 03002025 */ move $a0, $t8
|
||||
/* 0B0DF0 800B01F0 46165402 */ mul.s $f16, $f10, $f22
|
||||
/* 0B0DF4 800B01F4 4600848D */ trunc.w.s $f18, $f16
|
||||
/* 0B0DF8 800B01F8 44149000 */ mfc1 $s4, $f18
|
||||
/* 0B0DFC 800B01FC 0C0AE006 */ jal sins
|
||||
/* 0B0E00 800B0200 00000000 */ nop
|
||||
/* 0B0E04 800B0204 44912000 */ mtc1 $s1, $f4
|
||||
/* 0B0E08 800B0208 46140182 */ mul.s $f6, $f0, $f20
|
||||
/* 0B0E0C 800B020C 8FAC00BC */ lw $t4, 0xbc($sp)
|
||||
/* 0B0E10 800B0210 0013C900 */ sll $t9, $s3, 4
|
||||
/* 0B0E14 800B0214 24180054 */ li $t8, 84
|
||||
/* 0B0E18 800B0218 032C7821 */ addu $t7, $t9, $t4
|
||||
/* 0B0E1C 800B021C 01F52021 */ addu $a0, $t7, $s5
|
||||
/* 0B0E20 800B0220 46802220 */ cvt.s.w $f8, $f4
|
||||
/* 0B0E24 800B0224 AFB8001C */ sw $t8, 0x1c($sp)
|
||||
/* 0B0E28 800B0228 02002825 */ move $a1, $s0
|
||||
/* 0B0E2C 800B022C 03C03025 */ move $a2, $fp
|
||||
/* 0B0E30 800B0230 24070054 */ li $a3, 84
|
||||
/* 0B0E34 800B0234 AFB40010 */ sw $s4, 0x10($sp)
|
||||
/* 0B0E38 800B0238 46083282 */ mul.s $f10, $f6, $f8
|
||||
/* 0B0E3C 800B023C AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 0B0E40 800B0240 46165402 */ mul.s $f16, $f10, $f22
|
||||
/* 0B0E44 800B0244 4600848D */ trunc.w.s $f18, $f16
|
||||
/* 0B0E48 800B0248 440E9000 */ mfc1 $t6, $f18
|
||||
/* 0B0E4C 800B024C 0C02BE79 */ jal func_800AF9E4
|
||||
/* 0B0E50 800B0250 AFAE0014 */ sw $t6, 0x14($sp)
|
||||
/* 0B0E54 800B0254 2401000C */ li $at, 12
|
||||
/* 0B0E58 800B0258 02208025 */ move $s0, $s1
|
||||
/* 0B0E5C 800B025C 26730004 */ addiu $s3, $s3, 4
|
||||
/* 0B0E60 800B0260 1621FFCF */ bne $s1, $at, .L800B01A0
|
||||
/* 0B0E64 800B0264 26520054 */ addiu $s2, $s2, 0x54
|
||||
/* 0B0E68 800B0268 8FB90064 */ lw $t9, 0x64($sp)
|
||||
/* 0B0E6C 800B026C 27DE0001 */ addiu $fp, $fp, 1
|
||||
/* 0B0E70 800B0270 2401000A */ li $at, 10
|
||||
/* 0B0E74 800B0274 272C0030 */ addiu $t4, $t9, 0x30
|
||||
/* 0B0E78 800B0278 17C1FFC4 */ bne $fp, $at, .L800B018C
|
||||
/* 0B0E7C 800B027C AFAC0064 */ sw $t4, 0x64($sp)
|
||||
/* 0B0E80 800B0280 0C02BFD6 */ jal func_800AFF58
|
||||
/* 0B0E84 800B0284 8FA400BC */ lw $a0, 0xbc($sp)
|
||||
/* 0B0E88 800B0288 3C068019 */ lui $a2, %hi(D_8018EDB4) # $a2, 0x8019
|
||||
/* 0B0E8C 800B028C 24C6EDB4 */ addiu $a2, %lo(D_8018EDB4) # addiu $a2, $a2, -0x124c
|
||||
/* 0B0E90 800B0290 86CF0000 */ lh $t7, ($s6)
|
||||
/* 0B0E94 800B0294 86ED0000 */ lh $t5, ($s7)
|
||||
/* 0B0E98 800B0298 84D80000 */ lh $t8, ($a2)
|
||||
/* 0B0E9C 800B029C 3C028015 */ lui $v0, %hi(gDisplayListHead) # $v0, 0x8015
|
||||
/* 0B0EA0 800B02A0 01ED7021 */ addu $t6, $t7, $t5
|
||||
/* 0B0EA4 800B02A4 27190001 */ addiu $t9, $t8, 1
|
||||
/* 0B0EA8 800B02A8 A6CE0000 */ sh $t6, ($s6)
|
||||
/* 0B0EAC 800B02AC A4D90000 */ sh $t9, ($a2)
|
||||
/* 0B0EB0 800B02B0 8C420298 */ lw $v0, %lo(gDisplayListHead)($v0)
|
||||
/* 0B0EB4 800B02B4 3C018015 */ lui $at, %hi(gDisplayListHead) # $at, 0x8015
|
||||
/* 0B0EB8 800B02B8 240D2000 */ li $t5, 8192
|
||||
/* 0B0EBC 800B02BC 244C0008 */ addiu $t4, $v0, 8
|
||||
/* 0B0EC0 800B02C0 AC2C0298 */ sw $t4, %lo(gDisplayListHead)($at)
|
||||
/* 0B0EC4 800B02C4 3C0FB700 */ lui $t7, 0xb700
|
||||
/* 0B0EC8 800B02C8 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 0B0ECC 800B02CC AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 0B0ED0 800B02D0 3C028015 */ lui $v0, %hi(gDisplayListHead) # $v0, 0x8015
|
||||
/* 0B0ED4 800B02D4 8C420298 */ lw $v0, %lo(gDisplayListHead)($v0)
|
||||
/* 0B0ED8 800B02D8 3C198000 */ lui $t9, (0x80000040 >> 16) # lui $t9, 0x8000
|
||||
/* 0B0EDC 800B02DC 3C18BC00 */ lui $t8, (0xBC000002 >> 16) # lui $t8, 0xbc00
|
||||
/* 0B0EE0 800B02E0 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 0B0EE4 800B02E4 AC2E0298 */ sw $t6, %lo(gDisplayListHead)($at)
|
||||
/* 0B0EE8 800B02E8 37180002 */ ori $t8, (0xBC000002 & 0xFFFF) # ori $t8, $t8, 2
|
||||
/* 0B0EEC 800B02EC 37390040 */ ori $t9, (0x80000040 & 0xFFFF) # ori $t9, $t9, 0x40
|
||||
/* 0B0EF0 800B02F0 AC590004 */ sw $t9, 4($v0)
|
||||
/* 0B0EF4 800B02F4 AC580000 */ sw $t8, ($v0)
|
||||
/* 0B0EF8 800B02F8 3C028015 */ lui $v0, %hi(gDisplayListHead) # $v0, 0x8015
|
||||
/* 0B0EFC 800B02FC 8C420298 */ lw $v0, %lo(gDisplayListHead)($v0)
|
||||
/* 0B0F00 800B0300 3C0D0002 */ lui $t5, 2
|
||||
/* 0B0F04 800B0304 3C0FB600 */ lui $t7, 0xb600
|
||||
/* 0B0F08 800B0308 244C0008 */ addiu $t4, $v0, 8
|
||||
/* 0B0F0C 800B030C AC2C0298 */ sw $t4, %lo(gDisplayListHead)($at)
|
||||
/* 0B0F10 800B0310 AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 0B0F14 800B0314 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 0B0F18 800B0318 8FBF005C */ lw $ra, 0x5c($sp)
|
||||
/* 0B0F1C 800B031C 8FBE0058 */ lw $fp, 0x58($sp)
|
||||
/* 0B0F20 800B0320 8FB70054 */ lw $s7, 0x54($sp)
|
||||
/* 0B0F24 800B0324 8FB60050 */ lw $s6, 0x50($sp)
|
||||
/* 0B0F28 800B0328 8FB5004C */ lw $s5, 0x4c($sp)
|
||||
/* 0B0F2C 800B032C 8FB40048 */ lw $s4, 0x48($sp)
|
||||
/* 0B0F30 800B0330 8FB30044 */ lw $s3, 0x44($sp)
|
||||
/* 0B0F34 800B0334 8FB20040 */ lw $s2, 0x40($sp)
|
||||
/* 0B0F38 800B0338 8FB1003C */ lw $s1, 0x3c($sp)
|
||||
/* 0B0F3C 800B033C 8FB00038 */ lw $s0, 0x38($sp)
|
||||
/* 0B0F40 800B0340 D7B60030 */ ldc1 $f22, 0x30($sp)
|
||||
/* 0B0F44 800B0344 D7B40028 */ ldc1 $f20, 0x28($sp)
|
||||
/* 0B0F48 800B0348 03E00008 */ jr $ra
|
||||
/* 0B0F4C 800B034C 27BD00C0 */ addiu $sp, $sp, 0xc0
|
||||
@@ -1,469 +0,0 @@
|
||||
.section .late_rodata
|
||||
|
||||
glabel D_800ECFCC
|
||||
.float 0.2
|
||||
|
||||
glabel D_800ECFD0
|
||||
.float 0.2
|
||||
|
||||
glabel D_800ECFD4
|
||||
.float 0.2
|
||||
|
||||
.section .text
|
||||
|
||||
glabel func_8000B140
|
||||
/* 00BD40 8000B140 000478C0 */ sll $t7, $a0, 3
|
||||
/* 00BD44 8000B144 01E47823 */ subu $t7, $t7, $a0
|
||||
/* 00BD48 8000B148 000F7900 */ sll $t7, $t7, 4
|
||||
/* 00BD4C 8000B14C 01E47823 */ subu $t7, $t7, $a0
|
||||
/* 00BD50 8000B150 000F7880 */ sll $t7, $t7, 2
|
||||
/* 00BD54 8000B154 01E47823 */ subu $t7, $t7, $a0
|
||||
/* 00BD58 8000B158 3C18800F */ lui $t8, %hi(gPlayers) # $t8, 0x800f
|
||||
/* 00BD5C 8000B15C 27186990 */ addiu $t8, %lo(gPlayers) # addiu $t8, $t8, 0x6990
|
||||
/* 00BD60 8000B160 000F78C0 */ sll $t7, $t7, 3
|
||||
/* 00BD64 8000B164 27BDFF00 */ addiu $sp, $sp, -0x100
|
||||
/* 00BD68 8000B168 01F81821 */ addu $v1, $t7, $t8
|
||||
/* 00BD6C 8000B16C 8C6500BC */ lw $a1, 0xbc($v1)
|
||||
/* 00BD70 8000B170 AFBF003C */ sw $ra, 0x3c($sp)
|
||||
/* 00BD74 8000B174 F7BA0030 */ sdc1 $f26, 0x30($sp)
|
||||
/* 00BD78 8000B178 30B90010 */ andi $t9, $a1, 0x10
|
||||
/* 00BD7C 8000B17C F7B80028 */ sdc1 $f24, 0x28($sp)
|
||||
/* 00BD80 8000B180 F7B60020 */ sdc1 $f22, 0x20($sp)
|
||||
/* 00BD84 8000B184 F7B40018 */ sdc1 $f20, 0x18($sp)
|
||||
/* 00BD88 8000B188 1720018F */ bnez $t9, .L8000B7C8
|
||||
/* 00BD8C 8000B18C AFA40100 */ sw $a0, 0x100($sp)
|
||||
/* 00BD90 8000B190 00046840 */ sll $t5, $a0, 1
|
||||
/* 00BD94 8000B194 3C028016 */ lui $v0, %hi(D_801630E8) # 0x8016
|
||||
/* 00BD98 8000B198 004D1021 */ addu $v0, $v0, $t5
|
||||
/* 00BD9C 8000B19C 844230E8 */ lh $v0, %lo(D_801630E8)($v0) # 0x30e8($v0)
|
||||
/* 00BDA0 8000B1A0 24010001 */ li $at, 1
|
||||
/* 00BDA4 8000B1A4 AFAD005C */ sw $t5, 0x5c($sp)
|
||||
/* 00BDA8 8000B1A8 10410187 */ beq $v0, $at, .L8000B7C8
|
||||
/* 00BDAC 8000B1AC 2406FFFF */ li $a2, -1
|
||||
/* 00BDB0 8000B1B0 10C20185 */ beq $a2, $v0, .L8000B7C8
|
||||
/* 00BDB4 8000B1B4 3C0B8016 */ lui $t3, %hi(gTrackPositionFactor) # $t3, 0x8016
|
||||
/* 00BDB8 8000B1B8 256B3068 */ addiu $t3, %lo(gTrackPositionFactor) # addiu $t3, $t3, 0x3068
|
||||
/* 00BDBC 8000B1BC 00047880 */ sll $t7, $a0, 2
|
||||
/* 00BDC0 8000B1C0 016FC021 */ addu $t8, $t3, $t7
|
||||
/* 00BDC4 8000B1C4 3C01BF80 */ li $at, 0xBF800000 # -1.000000
|
||||
/* 00BDC8 8000B1C8 AFB80054 */ sw $t8, 0x54($sp)
|
||||
/* 00BDCC 8000B1CC AFAF0058 */ sw $t7, 0x58($sp)
|
||||
/* 00BDD0 8000B1D0 4481D000 */ mtc1 $at, $f26
|
||||
/* 00BDD4 8000B1D4 C7000000 */ lwc1 $f0, ($t8)
|
||||
/* 00BDD8 8000B1D8 3C013F80 */ li $at, 0x3F800000 # 1.000000
|
||||
/* 00BDDC 8000B1DC 461A003C */ c.lt.s $f0, $f26
|
||||
/* 00BDE0 8000B1E0 00000000 */ nop
|
||||
/* 00BDE4 8000B1E4 45030179 */ bc1tl .L8000B7CC
|
||||
/* 00BDE8 8000B1E8 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 00BDEC 8000B1EC 4481C000 */ mtc1 $at, $f24
|
||||
/* 00BDF0 8000B1F0 00000000 */ nop
|
||||
/* 00BDF4 8000B1F4 4600C03C */ c.lt.s $f24, $f0
|
||||
/* 00BDF8 8000B1F8 00000000 */ nop
|
||||
/* 00BDFC 8000B1FC 45030173 */ bc1tl .L8000B7CC
|
||||
/* 00BE00 8000B200 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 00BE04 8000B204 94620254 */ lhu $v0, 0x254($v1)
|
||||
/* 00BE08 8000B208 24010005 */ li $at, 5
|
||||
/* 00BE0C 8000B20C 1041016E */ beq $v0, $at, .L8000B7C8
|
||||
/* 00BE10 8000B210 24010007 */ li $at, 7
|
||||
/* 00BE14 8000B214 1041016C */ beq $v0, $at, .L8000B7C8
|
||||
/* 00BE18 8000B218 24010004 */ li $at, 4
|
||||
/* 00BE1C 8000B21C 1041016A */ beq $v0, $at, .L8000B7C8
|
||||
/* 00BE20 8000B220 30AC0200 */ andi $t4, $a1, 0x200
|
||||
/* 00BE24 8000B224 15800168 */ bnez $t4, .L8000B7C8
|
||||
/* 00BE28 8000B228 3C014190 */ li $at, 0x41900000 # 18.000000
|
||||
/* 00BE2C 8000B22C C4640094 */ lwc1 $f4, 0x94($v1)
|
||||
/* 00BE30 8000B230 44813000 */ mtc1 $at, $f6
|
||||
/* 00BE34 8000B234 3C014358 */ li $at, 0x43580000 # 216.000000
|
||||
/* 00BE38 8000B238 44815000 */ mtc1 $at, $f10
|
||||
/* 00BE3C 8000B23C 46062203 */ div.s $f8, $f4, $f6
|
||||
/* 00BE40 8000B240 3C098016 */ lui $t1, %hi(gNearestPathPointByPlayerId) # 0x8016
|
||||
/* 00BE44 8000B244 012D4821 */ addu $t1, $t1, $t5
|
||||
/* 00BE48 8000B248 85294438 */ lh $t1, %lo(gNearestPathPointByPlayerId)($t1) # 0x4438($t1)
|
||||
/* 00BE4C 8000B24C 240303E8 */ li $v1, 1000
|
||||
/* 00BE50 8000B250 27A5009C */ addiu $a1, $sp, 0x9c
|
||||
/* 00BE54 8000B254 27A200B0 */ addiu $v0, $sp, 0xb0
|
||||
/* 00BE58 8000B258 27A400C0 */ addiu $a0, $sp, 0xc0
|
||||
/* 00BE5C 8000B25C 00005025 */ move $t2, $zero
|
||||
/* 00BE60 8000B260 460A4582 */ mul.s $f22, $f8, $f10
|
||||
/* 00BE64 8000B264 00000000 */ nop
|
||||
.L8000B268:
|
||||
/* 00BE68 8000B268 24420002 */ addiu $v0, $v0, 2
|
||||
/* 00BE6C 8000B26C 0044082B */ sltu $at, $v0, $a0
|
||||
/* 00BE70 8000B270 24A50002 */ addiu $a1, $a1, 2
|
||||
/* 00BE74 8000B274 A4A6FFFE */ sh $a2, -2($a1)
|
||||
/* 00BE78 8000B278 1420FFFB */ bnez $at, .L8000B268
|
||||
/* 00BE7C 8000B27C A443FFFE */ sh $v1, -2($v0)
|
||||
/* 00BE80 8000B280 8FAE005C */ lw $t6, 0x5c($sp)
|
||||
/* 00BE84 8000B284 3C0F8016 */ lui $t7, %hi(D_80163010) # $t7, 0x8016
|
||||
/* 00BE88 8000B288 25EF3010 */ addiu $t7, %lo(D_80163010) # addiu $t7, $t7, 0x3010
|
||||
/* 00BE8C 8000B28C 01CFC021 */ addu $t8, $t6, $t7
|
||||
/* 00BE90 8000B290 AFB8004C */ sw $t8, 0x4c($sp)
|
||||
/* 00BE94 8000B294 87020000 */ lh $v0, ($t8)
|
||||
/* 00BE98 8000B298 18400006 */ blez $v0, .L8000B2B4
|
||||
/* 00BE9C 8000B29C 2459FFFF */ addiu $t9, $v0, -1
|
||||
/* 00BEA0 8000B2A0 1F200004 */ bgtz $t9, .L8000B2B4
|
||||
/* 00BEA4 8000B2A4 A7190000 */ sh $t9, ($t8)
|
||||
/* 00BEA8 8000B2A8 3C018016 */ lui $at, %hi(D_80162FF8) # 0x8016
|
||||
/* 00BEAC 8000B2AC 002E0821 */ addu $at, $at, $t6
|
||||
/* 00BEB0 8000B2B0 A4202FF8 */ sh $zero, %lo(D_80162FF8)($at) # 0x2ff8($at)
|
||||
.L8000B2B4:
|
||||
/* 00BEB4 8000B2B4 3C0140A0 */ li $at, 0x40A00000 # 5.000000
|
||||
/* 00BEB8 8000B2B8 4481A000 */ mtc1 $at, $f20
|
||||
/* 00BEBC 8000B2BC 00004025 */ move $t0, $zero
|
||||
/* 00BEC0 8000B2C0 8FAC0100 */ lw $t4, 0x100($sp)
|
||||
.L8000B2C4:
|
||||
/* 00BEC4 8000B2C4 000868C0 */ sll $t5, $t0, 3
|
||||
/* 00BEC8 8000B2C8 01A86823 */ subu $t5, $t5, $t0
|
||||
/* 00BECC 8000B2CC 110C0047 */ beq $t0, $t4, .L8000B3EC
|
||||
/* 00BED0 8000B2D0 000D6900 */ sll $t5, $t5, 4
|
||||
/* 00BED4 8000B2D4 01A86823 */ subu $t5, $t5, $t0
|
||||
/* 00BED8 8000B2D8 000D6880 */ sll $t5, $t5, 2
|
||||
/* 00BEDC 8000B2DC 01A86823 */ subu $t5, $t5, $t0
|
||||
/* 00BEE0 8000B2E0 3C0F800F */ lui $t7, %hi(gPlayers) # $t7, 0x800f
|
||||
/* 00BEE4 8000B2E4 25EF6990 */ addiu $t7, %lo(gPlayers) # addiu $t7, $t7, 0x6990
|
||||
/* 00BEE8 8000B2E8 000D68C0 */ sll $t5, $t5, 3
|
||||
/* 00BEEC 8000B2EC 01AF1021 */ addu $v0, $t5, $t7
|
||||
/* 00BEF0 8000B2F0 94580000 */ lhu $t8, ($v0)
|
||||
/* 00BEF4 8000B2F4 3C014190 */ li $at, 0x41900000 # 18.000000
|
||||
/* 00BEF8 8000B2F8 33198000 */ andi $t9, $t8, 0x8000
|
||||
/* 00BEFC 8000B2FC 5320003C */ beql $t9, $zero, .L8000B3F0
|
||||
/* 00BF00 8000B300 29410002 */ slti $at, $t2, 2
|
||||
/* 00BF04 8000B304 C4440094 */ lwc1 $f4, 0x94($v0)
|
||||
/* 00BF08 8000B308 44813000 */ mtc1 $at, $f6
|
||||
/* 00BF0C 8000B30C 3C014358 */ li $at, 0x43580000 # 216.000000
|
||||
/* 00BF10 8000B310 44815000 */ mtc1 $at, $f10
|
||||
/* 00BF14 8000B314 46062203 */ div.s $f8, $f4, $f6
|
||||
/* 00BF18 8000B318 00087040 */ sll $t6, $t0, 1
|
||||
/* 00BF1C 8000B31C 3C038016 */ lui $v1, %hi(gNearestPathPointByPlayerId) # 0x8016
|
||||
/* 00BF20 8000B320 006E1821 */ addu $v1, $v1, $t6
|
||||
/* 00BF24 8000B324 4614B081 */ sub.s $f2, $f22, $f20
|
||||
/* 00BF28 8000B328 84634438 */ lh $v1, %lo(gNearestPathPointByPlayerId)($v1) # 0x4438($v1)
|
||||
/* 00BF2C 8000B32C 3125FFFF */ andi $a1, $t1, 0xffff
|
||||
/* 00BF30 8000B330 00003025 */ move $a2, $zero
|
||||
/* 00BF34 8000B334 24070014 */ li $a3, 20
|
||||
/* 00BF38 8000B338 3C0C8016 */ lui $t4, %hi(gSelectedPathCount) # $t4, 0x8016
|
||||
/* 00BF3C 8000B33C 3064FFFF */ andi $a0, $v1, 0xffff
|
||||
/* 00BF40 8000B340 460A4002 */ mul.s $f0, $f8, $f10
|
||||
/* 00BF44 8000B344 4602003C */ c.lt.s $f0, $f2
|
||||
/* 00BF48 8000B348 00000000 */ nop
|
||||
/* 00BF4C 8000B34C 45020028 */ bc1fl .L8000B3F0
|
||||
/* 00BF50 8000B350 29410002 */ slti $at, $t2, 2
|
||||
/* 00BF54 8000B354 958C4430 */ lhu $t4, %lo(gSelectedPathCount)($t4)
|
||||
/* 00BF58 8000B358 A7A300E4 */ sh $v1, 0xe4($sp)
|
||||
/* 00BF5C 8000B35C AFA800FC */ sw $t0, 0xfc($sp)
|
||||
/* 00BF60 8000B360 A7A900E6 */ sh $t1, 0xe6($sp)
|
||||
/* 00BF64 8000B364 AFAA00F0 */ sw $t2, 0xf0($sp)
|
||||
/* 00BF68 8000B368 E7A000DC */ swc1 $f0, 0xdc($sp)
|
||||
/* 00BF6C 8000B36C E7A20060 */ swc1 $f2, 0x60($sp)
|
||||
/* 00BF70 8000B370 0C001EFE */ jal is_path_point_in_range
|
||||
/* 00BF74 8000B374 AFAC0010 */ sw $t4, 0x10($sp)
|
||||
/* 00BF78 8000B378 3C0B8016 */ lui $t3, %hi(gTrackPositionFactor) # $t3, 0x8016
|
||||
/* 00BF7C 8000B37C 256B3068 */ addiu $t3, %lo(gTrackPositionFactor) # addiu $t3, $t3, 0x3068
|
||||
/* 00BF80 8000B380 87A300E4 */ lh $v1, 0xe4($sp)
|
||||
/* 00BF84 8000B384 8FA800FC */ lw $t0, 0xfc($sp)
|
||||
/* 00BF88 8000B388 87A900E6 */ lh $t1, 0xe6($sp)
|
||||
/* 00BF8C 8000B38C 8FAA00F0 */ lw $t2, 0xf0($sp)
|
||||
/* 00BF90 8000B390 C7A000DC */ lwc1 $f0, 0xdc($sp)
|
||||
/* 00BF94 8000B394 18400015 */ blez $v0, .L8000B3EC
|
||||
/* 00BF98 8000B398 C7A20060 */ lwc1 $f2, 0x60($sp)
|
||||
/* 00BF9C 8000B39C 000A1040 */ sll $v0, $t2, 1
|
||||
/* 00BFA0 8000B3A0 03A26821 */ addu $t5, $sp, $v0
|
||||
/* 00BFA4 8000B3A4 00692823 */ subu $a1, $v1, $t1
|
||||
/* 00BFA8 8000B3A8 27AF00B0 */ addiu $t7, $sp, 0xb0
|
||||
/* 00BFAC 8000B3AC 000AC080 */ sll $t8, $t2, 2
|
||||
/* 00BFB0 8000B3B0 27B90074 */ addiu $t9, $sp, 0x74
|
||||
/* 00BFB4 8000B3B4 A5A8009C */ sh $t0, 0x9c($t5)
|
||||
/* 00BFB8 8000B3B8 03192021 */ addu $a0, $t8, $t9
|
||||
/* 00BFBC 8000B3BC 18A00003 */ blez $a1, .L8000B3CC
|
||||
/* 00BFC0 8000B3C0 004F3021 */ addu $a2, $v0, $t7
|
||||
/* 00BFC4 8000B3C4 10000006 */ b .L8000B3E0
|
||||
/* 00BFC8 8000B3C8 A4C50000 */ sh $a1, ($a2)
|
||||
.L8000B3CC:
|
||||
/* 00BFCC 8000B3CC 3C0E8016 */ lui $t6, %hi(gSelectedPathCount) # $t6, 0x8016
|
||||
/* 00BFD0 8000B3D0 95CE4430 */ lhu $t6, %lo(gSelectedPathCount)($t6)
|
||||
/* 00BFD4 8000B3D4 006E6021 */ addu $t4, $v1, $t6
|
||||
/* 00BFD8 8000B3D8 01896823 */ subu $t5, $t4, $t1
|
||||
/* 00BFDC 8000B3DC A4CD0000 */ sh $t5, ($a2)
|
||||
.L8000B3E0:
|
||||
/* 00BFE0 8000B3E0 46001101 */ sub.s $f4, $f2, $f0
|
||||
/* 00BFE4 8000B3E4 254A0001 */ addiu $t2, $t2, 1
|
||||
/* 00BFE8 8000B3E8 E4840000 */ swc1 $f4, ($a0)
|
||||
.L8000B3EC:
|
||||
/* 00BFEC 8000B3EC 29410002 */ slti $at, $t2, 2
|
||||
.L8000B3F0:
|
||||
/* 00BFF0 8000B3F0 10200004 */ beqz $at, .L8000B404
|
||||
/* 00BFF4 8000B3F4 25080001 */ addiu $t0, $t0, 1
|
||||
/* 00BFF8 8000B3F8 29010008 */ slti $at, $t0, 8
|
||||
/* 00BFFC 8000B3FC 5420FFB1 */ bnel $at, $zero, .L8000B2C4
|
||||
/* 00C000 8000B400 8FAC0100 */ lw $t4, 0x100($sp)
|
||||
.L8000B404:
|
||||
/* 00C004 8000B404 114000F0 */ beqz $t2, .L8000B7C8
|
||||
/* 00C008 8000B408 00004025 */ move $t0, $zero
|
||||
/* 00C00C 8000B40C 4600C486 */ mov.s $f18, $f24
|
||||
/* 00C010 8000B410 194000BD */ blez $t2, .L8000B708
|
||||
/* 00C014 8000B414 4600D506 */ mov.s $f20, $f26
|
||||
/* 00C018 8000B418 31420001 */ andi $v0, $t2, 1
|
||||
/* 00C01C 8000B41C 1040003B */ beqz $v0, .L8000B50C
|
||||
/* 00C020 8000B420 87A3009C */ lh $v1, 0x9c($sp)
|
||||
/* 00C024 8000B424 00037880 */ sll $t7, $v1, 2
|
||||
/* 00C028 8000B428 016FC021 */ addu $t8, $t3, $t7
|
||||
/* 00C02C 8000B42C C7020000 */ lwc1 $f2, ($t8)
|
||||
/* 00C030 8000B430 24080001 */ li $t0, 1
|
||||
/* 00C034 8000B434 4602D03C */ c.lt.s $f26, $f2
|
||||
/* 00C038 8000B438 00000000 */ nop
|
||||
/* 00C03C 8000B43C 45000032 */ bc1f .L8000B508
|
||||
/* 00C040 8000B440 00000000 */ nop
|
||||
/* 00C044 8000B444 4618103C */ c.lt.s $f2, $f24
|
||||
/* 00C048 8000B448 87A200B0 */ lh $v0, 0xb0($sp)
|
||||
/* 00C04C 8000B44C 4500002E */ bc1f .L8000B508
|
||||
/* 00C050 8000B450 00000000 */ nop
|
||||
/* 00C054 8000B454 44824000 */ mtc1 $v0, $f8
|
||||
/* 00C058 8000B458 3C0141A0 */ li $at, 0x41A00000 # 20.000000
|
||||
/* 00C05C 8000B45C 4481B000 */ mtc1 $at, $f22
|
||||
/* 00C060 8000B460 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 00C064 8000B464 3C01800F */ lui $at, %hi(D_800ECFCC) # $at, 0x800f
|
||||
/* 00C068 8000B468 C426CFCC */ lwc1 $f6, %lo(D_800ECFCC)($at)
|
||||
/* 00C06C 8000B46C 3C014120 */ li $at, 0x41200000 # 10.000000
|
||||
/* 00C070 8000B470 C7A00074 */ lwc1 $f0, 0x74($sp)
|
||||
/* 00C074 8000B474 4618C032 */ c.eq.s $f24, $f24
|
||||
/* 00C078 8000B478 46165100 */ add.s $f4, $f10, $f22
|
||||
/* 00C07C 8000B47C 4604B203 */ div.s $f8, $f22, $f4
|
||||
/* 00C080 8000B480 44812000 */ mtc1 $at, $f4
|
||||
/* 00C084 8000B484 46083282 */ mul.s $f10, $f6, $f8
|
||||
/* 00C088 8000B488 46040180 */ add.s $f6, $f0, $f4
|
||||
/* 00C08C 8000B48C 460A3202 */ mul.s $f8, $f6, $f10
|
||||
/* 00C090 8000B490 45000008 */ bc1f .L8000B4B4
|
||||
/* 00C094 8000B494 46164303 */ div.s $f12, $f8, $f22
|
||||
/* 00C098 8000B498 461AD032 */ c.eq.s $f26, $f26
|
||||
/* 00C09C 8000B49C 00000000 */ nop
|
||||
/* 00C0A0 8000B4A0 45020005 */ bc1fl .L8000B4B8
|
||||
/* 00C0A4 8000B4A4 460C1381 */ sub.s $f14, $f2, $f12
|
||||
/* 00C0A8 8000B4A8 460C1481 */ sub.s $f18, $f2, $f12
|
||||
/* 00C0AC 8000B4AC 10000016 */ b .L8000B508
|
||||
/* 00C0B0 8000B4B0 460C1500 */ add.s $f20, $f2, $f12
|
||||
.L8000B4B4:
|
||||
/* 00C0B4 8000B4B4 460C1381 */ sub.s $f14, $f2, $f12
|
||||
.L8000B4B8:
|
||||
/* 00C0B8 8000B4B8 460C1400 */ add.s $f16, $f2, $f12
|
||||
/* 00C0BC 8000B4BC 4618703C */ c.lt.s $f14, $f24
|
||||
/* 00C0C0 8000B4C0 00000000 */ nop
|
||||
/* 00C0C4 8000B4C4 45020008 */ bc1fl .L8000B4E8
|
||||
/* 00C0C8 8000B4C8 4610D03C */ c.lt.s $f26, $f16
|
||||
/* 00C0CC 8000B4CC 460C1100 */ add.s $f4, $f2, $f12
|
||||
/* 00C0D0 8000B4D0 4604C03C */ c.lt.s $f24, $f4
|
||||
/* 00C0D4 8000B4D4 00000000 */ nop
|
||||
/* 00C0D8 8000B4D8 45020003 */ bc1fl .L8000B4E8
|
||||
/* 00C0DC 8000B4DC 4610D03C */ c.lt.s $f26, $f16
|
||||
/* 00C0E0 8000B4E0 46007486 */ mov.s $f18, $f14
|
||||
/* 00C0E4 8000B4E4 4610D03C */ c.lt.s $f26, $f16
|
||||
.L8000B4E8:
|
||||
/* 00C0E8 8000B4E8 00000000 */ nop
|
||||
/* 00C0EC 8000B4EC 45000006 */ bc1f .L8000B508
|
||||
/* 00C0F0 8000B4F0 00000000 */ nop
|
||||
/* 00C0F4 8000B4F4 461A703C */ c.lt.s $f14, $f26
|
||||
/* 00C0F8 8000B4F8 00000000 */ nop
|
||||
/* 00C0FC 8000B4FC 45000002 */ bc1f .L8000B508
|
||||
/* 00C100 8000B500 00000000 */ nop
|
||||
/* 00C104 8000B504 46008506 */ mov.s $f20, $f16
|
||||
.L8000B508:
|
||||
/* 00C108 8000B508 110A007F */ beq $t0, $t2, .L8000B708
|
||||
.L8000B50C:
|
||||
/* 00C10C 8000B50C 3C0141A0 */ li $at, 0x41A00000 # 20.000000
|
||||
/* 00C110 8000B510 00081040 */ sll $v0, $t0, 1
|
||||
/* 00C114 8000B514 27B9009C */ addiu $t9, $sp, 0x9c
|
||||
/* 00C118 8000B518 4481B000 */ mtc1 $at, $f22
|
||||
/* 00C11C 8000B51C 00592821 */ addu $a1, $v0, $t9
|
||||
/* 00C120 8000B520 27A400B0 */ addiu $a0, $sp, 0xb0
|
||||
/* 00C124 8000B524 27A30074 */ addiu $v1, $sp, 0x74
|
||||
.L8000B528:
|
||||
/* 00C128 8000B528 84AE0000 */ lh $t6, ($a1)
|
||||
/* 00C12C 8000B52C 000E6080 */ sll $t4, $t6, 2
|
||||
/* 00C130 8000B530 016C6821 */ addu $t5, $t3, $t4
|
||||
/* 00C134 8000B534 C5A20000 */ lwc1 $f2, ($t5)
|
||||
/* 00C138 8000B538 4602D03C */ c.lt.s $f26, $f2
|
||||
/* 00C13C 8000B53C 00000000 */ nop
|
||||
/* 00C140 8000B540 45020034 */ bc1fl .L8000B614
|
||||
/* 00C144 8000B544 84AC0002 */ lh $t4, 2($a1)
|
||||
/* 00C148 8000B548 4618103C */ c.lt.s $f2, $f24
|
||||
/* 00C14C 8000B54C 00087880 */ sll $t7, $t0, 2
|
||||
/* 00C150 8000B550 006FC021 */ addu $t8, $v1, $t7
|
||||
/* 00C154 8000B554 3C014120 */ li $at, 0x41200000 # 10.000000
|
||||
/* 00C158 8000B558 4500002D */ bc1f .L8000B610
|
||||
/* 00C15C 8000B55C 0082C821 */ addu $t9, $a0, $v0
|
||||
/* 00C160 8000B560 C7060000 */ lwc1 $f6, ($t8)
|
||||
/* 00C164 8000B564 44815000 */ mtc1 $at, $f10
|
||||
/* 00C168 8000B568 872E0000 */ lh $t6, ($t9)
|
||||
/* 00C16C 8000B56C 3C01800F */ lui $at, %hi(D_800ECFD0) # $at, 0x800f
|
||||
/* 00C170 8000B570 460A3200 */ add.s $f8, $f6, $f10
|
||||
/* 00C174 8000B574 448E3000 */ mtc1 $t6, $f6
|
||||
/* 00C178 8000B578 C424CFD0 */ lwc1 $f4, %lo(D_800ECFD0)($at)
|
||||
/* 00C17C 8000B57C 46189032 */ c.eq.s $f18, $f24
|
||||
/* 00C180 8000B580 468032A0 */ cvt.s.w $f10, $f6
|
||||
/* 00C184 8000B584 46165180 */ add.s $f6, $f10, $f22
|
||||
/* 00C188 8000B588 4606B283 */ div.s $f10, $f22, $f6
|
||||
/* 00C18C 8000B58C 460A2182 */ mul.s $f6, $f4, $f10
|
||||
/* 00C190 8000B590 00000000 */ nop
|
||||
/* 00C194 8000B594 46064102 */ mul.s $f4, $f8, $f6
|
||||
/* 00C198 8000B598 45000008 */ bc1f .L8000B5BC
|
||||
/* 00C19C 8000B59C 46162003 */ div.s $f0, $f4, $f22
|
||||
/* 00C1A0 8000B5A0 461AA032 */ c.eq.s $f20, $f26
|
||||
/* 00C1A4 8000B5A4 00000000 */ nop
|
||||
/* 00C1A8 8000B5A8 45020005 */ bc1fl .L8000B5C0
|
||||
/* 00C1AC 8000B5AC 46001301 */ sub.s $f12, $f2, $f0
|
||||
/* 00C1B0 8000B5B0 46001481 */ sub.s $f18, $f2, $f0
|
||||
/* 00C1B4 8000B5B4 10000016 */ b .L8000B610
|
||||
/* 00C1B8 8000B5B8 46001500 */ add.s $f20, $f2, $f0
|
||||
.L8000B5BC:
|
||||
/* 00C1BC 8000B5BC 46001301 */ sub.s $f12, $f2, $f0
|
||||
.L8000B5C0:
|
||||
/* 00C1C0 8000B5C0 46001380 */ add.s $f14, $f2, $f0
|
||||
/* 00C1C4 8000B5C4 4612603C */ c.lt.s $f12, $f18
|
||||
/* 00C1C8 8000B5C8 00000000 */ nop
|
||||
/* 00C1CC 8000B5CC 45020008 */ bc1fl .L8000B5F0
|
||||
/* 00C1D0 8000B5D0 460EA03C */ c.lt.s $f20, $f14
|
||||
/* 00C1D4 8000B5D4 46001280 */ add.s $f10, $f2, $f0
|
||||
/* 00C1D8 8000B5D8 460A903C */ c.lt.s $f18, $f10
|
||||
/* 00C1DC 8000B5DC 00000000 */ nop
|
||||
/* 00C1E0 8000B5E0 45020003 */ bc1fl .L8000B5F0
|
||||
/* 00C1E4 8000B5E4 460EA03C */ c.lt.s $f20, $f14
|
||||
/* 00C1E8 8000B5E8 46006486 */ mov.s $f18, $f12
|
||||
/* 00C1EC 8000B5EC 460EA03C */ c.lt.s $f20, $f14
|
||||
.L8000B5F0:
|
||||
/* 00C1F0 8000B5F0 00000000 */ nop
|
||||
/* 00C1F4 8000B5F4 45020007 */ bc1fl .L8000B614
|
||||
/* 00C1F8 8000B5F8 84AC0002 */ lh $t4, 2($a1)
|
||||
/* 00C1FC 8000B5FC 4614603C */ c.lt.s $f12, $f20
|
||||
/* 00C200 8000B600 00000000 */ nop
|
||||
/* 00C204 8000B604 45020003 */ bc1fl .L8000B614
|
||||
/* 00C208 8000B608 84AC0002 */ lh $t4, 2($a1)
|
||||
/* 00C20C 8000B60C 46007506 */ mov.s $f20, $f14
|
||||
.L8000B610:
|
||||
/* 00C210 8000B610 84AC0002 */ lh $t4, 2($a1)
|
||||
.L8000B614:
|
||||
/* 00C214 8000B614 24A50004 */ addiu $a1, $a1, 4
|
||||
/* 00C218 8000B618 000C6880 */ sll $t5, $t4, 2
|
||||
/* 00C21C 8000B61C 016D7821 */ addu $t7, $t3, $t5
|
||||
/* 00C220 8000B620 C5E00000 */ lwc1 $f0, ($t7)
|
||||
/* 00C224 8000B624 4600D03C */ c.lt.s $f26, $f0
|
||||
/* 00C228 8000B628 00000000 */ nop
|
||||
/* 00C22C 8000B62C 45020034 */ bc1fl .L8000B700
|
||||
/* 00C230 8000B630 25080002 */ addiu $t0, $t0, 2
|
||||
/* 00C234 8000B634 4618003C */ c.lt.s $f0, $f24
|
||||
/* 00C238 8000B638 0008C080 */ sll $t8, $t0, 2
|
||||
/* 00C23C 8000B63C 0078C821 */ addu $t9, $v1, $t8
|
||||
/* 00C240 8000B640 3C014120 */ li $at, 0x41200000 # 10.000000
|
||||
/* 00C244 8000B644 4500002D */ bc1f .L8000B6FC
|
||||
/* 00C248 8000B648 00827021 */ addu $t6, $a0, $v0
|
||||
/* 00C24C 8000B64C C7280004 */ lwc1 $f8, 4($t9)
|
||||
/* 00C250 8000B650 44813000 */ mtc1 $at, $f6
|
||||
/* 00C254 8000B654 85CC0002 */ lh $t4, 2($t6)
|
||||
/* 00C258 8000B658 3C01800F */ lui $at, %hi(D_800ECFD4) # $at, 0x800f
|
||||
/* 00C25C 8000B65C 46064100 */ add.s $f4, $f8, $f6
|
||||
/* 00C260 8000B660 448C4000 */ mtc1 $t4, $f8
|
||||
/* 00C264 8000B664 C42ACFD4 */ lwc1 $f10, %lo(D_800ECFD4)($at)
|
||||
/* 00C268 8000B668 46189032 */ c.eq.s $f18, $f24
|
||||
/* 00C26C 8000B66C 468041A0 */ cvt.s.w $f6, $f8
|
||||
/* 00C270 8000B670 46163200 */ add.s $f8, $f6, $f22
|
||||
/* 00C274 8000B674 4608B183 */ div.s $f6, $f22, $f8
|
||||
/* 00C278 8000B678 46065202 */ mul.s $f8, $f10, $f6
|
||||
/* 00C27C 8000B67C 00000000 */ nop
|
||||
/* 00C280 8000B680 46082282 */ mul.s $f10, $f4, $f8
|
||||
/* 00C284 8000B684 45000008 */ bc1f .L8000B6A8
|
||||
/* 00C288 8000B688 46165083 */ div.s $f2, $f10, $f22
|
||||
/* 00C28C 8000B68C 461AA032 */ c.eq.s $f20, $f26
|
||||
/* 00C290 8000B690 00000000 */ nop
|
||||
/* 00C294 8000B694 45020005 */ bc1fl .L8000B6AC
|
||||
/* 00C298 8000B698 46020301 */ sub.s $f12, $f0, $f2
|
||||
/* 00C29C 8000B69C 46020481 */ sub.s $f18, $f0, $f2
|
||||
/* 00C2A0 8000B6A0 10000016 */ b .L8000B6FC
|
||||
/* 00C2A4 8000B6A4 46020500 */ add.s $f20, $f0, $f2
|
||||
.L8000B6A8:
|
||||
/* 00C2A8 8000B6A8 46020301 */ sub.s $f12, $f0, $f2
|
||||
.L8000B6AC:
|
||||
/* 00C2AC 8000B6AC 46020380 */ add.s $f14, $f0, $f2
|
||||
/* 00C2B0 8000B6B0 4612603C */ c.lt.s $f12, $f18
|
||||
/* 00C2B4 8000B6B4 00000000 */ nop
|
||||
/* 00C2B8 8000B6B8 45020008 */ bc1fl .L8000B6DC
|
||||
/* 00C2BC 8000B6BC 460EA03C */ c.lt.s $f20, $f14
|
||||
/* 00C2C0 8000B6C0 46020180 */ add.s $f6, $f0, $f2
|
||||
/* 00C2C4 8000B6C4 4606903C */ c.lt.s $f18, $f6
|
||||
/* 00C2C8 8000B6C8 00000000 */ nop
|
||||
/* 00C2CC 8000B6CC 45020003 */ bc1fl .L8000B6DC
|
||||
/* 00C2D0 8000B6D0 460EA03C */ c.lt.s $f20, $f14
|
||||
/* 00C2D4 8000B6D4 46006486 */ mov.s $f18, $f12
|
||||
/* 00C2D8 8000B6D8 460EA03C */ c.lt.s $f20, $f14
|
||||
.L8000B6DC:
|
||||
/* 00C2DC 8000B6DC 00000000 */ nop
|
||||
/* 00C2E0 8000B6E0 45020007 */ bc1fl .L8000B700
|
||||
/* 00C2E4 8000B6E4 25080002 */ addiu $t0, $t0, 2
|
||||
/* 00C2E8 8000B6E8 4614603C */ c.lt.s $f12, $f20
|
||||
/* 00C2EC 8000B6EC 00000000 */ nop
|
||||
/* 00C2F0 8000B6F0 45020003 */ bc1fl .L8000B700
|
||||
/* 00C2F4 8000B6F4 25080002 */ addiu $t0, $t0, 2
|
||||
/* 00C2F8 8000B6F8 46007506 */ mov.s $f20, $f14
|
||||
.L8000B6FC:
|
||||
/* 00C2FC 8000B6FC 25080002 */ addiu $t0, $t0, 2
|
||||
.L8000B700:
|
||||
/* 00C300 8000B700 150AFF89 */ bne $t0, $t2, .L8000B528
|
||||
/* 00C304 8000B704 24420004 */ addiu $v0, $v0, 4
|
||||
.L8000B708:
|
||||
/* 00C308 8000B708 4612A03C */ c.lt.s $f20, $f18
|
||||
/* 00C30C 8000B70C 8FAD0054 */ lw $t5, 0x54($sp)
|
||||
/* 00C310 8000B710 4503002E */ bc1tl .L8000B7CC
|
||||
/* 00C314 8000B714 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 00C318 8000B718 C5A00000 */ lwc1 $f0, ($t5)
|
||||
/* 00C31C 8000B71C 4612003C */ c.lt.s $f0, $f18
|
||||
/* 00C320 8000B720 00000000 */ nop
|
||||
/* 00C324 8000B724 45030029 */ bc1tl .L8000B7CC
|
||||
/* 00C328 8000B728 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 00C32C 8000B72C 4600A03C */ c.lt.s $f20, $f0
|
||||
/* 00C330 8000B730 00000000 */ nop
|
||||
/* 00C334 8000B734 45030025 */ bc1tl .L8000B7CC
|
||||
/* 00C338 8000B738 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
/* 00C33C 8000B73C 4614C03C */ c.lt.s $f24, $f20
|
||||
/* 00C340 8000B740 8FAF005C */ lw $t7, 0x5c($sp)
|
||||
/* 00C344 8000B744 3C188016 */ lui $t8, %hi(D_80162FF8) # $t8, 0x8016
|
||||
/* 00C348 8000B748 27182FF8 */ addiu $t8, %lo(D_80162FF8) # addiu $t8, $t8, 0x2ff8
|
||||
/* 00C34C 8000B74C 45000002 */ bc1f .L8000B758
|
||||
/* 00C350 8000B750 01F81021 */ addu $v0, $t7, $t8
|
||||
/* 00C354 8000B754 4600C506 */ mov.s $f20, $f24
|
||||
.L8000B758:
|
||||
/* 00C358 8000B758 461A903C */ c.lt.s $f18, $f26
|
||||
/* 00C35C 8000B75C 8FAE004C */ lw $t6, 0x4c($sp)
|
||||
/* 00C360 8000B760 4614C201 */ sub.s $f8, $f24, $f20
|
||||
/* 00C364 8000B764 8FB8004C */ lw $t8, 0x4c($sp)
|
||||
/* 00C368 8000B768 45000002 */ bc1f .L8000B774
|
||||
/* 00C36C 8000B76C 24190002 */ li $t9, 2
|
||||
/* 00C370 8000B770 4600D486 */ mov.s $f18, $f26
|
||||
.L8000B774:
|
||||
/* 00C374 8000B774 46189100 */ add.s $f4, $f18, $f24
|
||||
/* 00C378 8000B778 240C0001 */ li $t4, 1
|
||||
/* 00C37C 8000B77C 240F003C */ li $t7, 60
|
||||
/* 00C380 8000B780 4608203C */ c.lt.s $f4, $f8
|
||||
/* 00C384 8000B784 00000000 */ nop
|
||||
/* 00C388 8000B788 4502000A */ bc1fl .L8000B7B4
|
||||
/* 00C38C 8000B78C A70F0000 */ sh $t7, ($t8)
|
||||
/* 00C390 8000B790 2419003C */ li $t9, 60
|
||||
/* 00C394 8000B794 A5D90000 */ sh $t9, ($t6)
|
||||
/* 00C398 8000B798 8FAD0058 */ lw $t5, 0x58($sp)
|
||||
/* 00C39C 8000B79C 3C018016 */ lui $at, %hi(D_80163090)
|
||||
/* 00C3A0 8000B7A0 A44C0000 */ sh $t4, ($v0)
|
||||
/* 00C3A4 8000B7A4 002D0821 */ addu $at, $at, $t5
|
||||
/* 00C3A8 8000B7A8 10000007 */ b .L8000B7C8
|
||||
/* 00C3AC 8000B7AC E4343090 */ swc1 $f20, %lo(D_80163090)($at)
|
||||
/* 00C3B0 8000B7B0 A70F0000 */ sh $t7, ($t8)
|
||||
.L8000B7B4:
|
||||
/* 00C3B4 8000B7B4 8FAE0058 */ lw $t6, 0x58($sp)
|
||||
/* 00C3B8 8000B7B8 3C018016 */ lui $at, %hi(D_80163090)
|
||||
/* 00C3BC 8000B7BC A4590000 */ sh $t9, ($v0)
|
||||
/* 00C3C0 8000B7C0 002E0821 */ addu $at, $at, $t6
|
||||
/* 00C3C4 8000B7C4 E4323090 */ swc1 $f18, %lo(D_80163090)($at)
|
||||
.L8000B7C8:
|
||||
/* 00C3C8 8000B7C8 8FBF003C */ lw $ra, 0x3c($sp)
|
||||
.L8000B7CC:
|
||||
/* 00C3CC 8000B7CC D7B40018 */ ldc1 $f20, 0x18($sp)
|
||||
/* 00C3D0 8000B7D0 D7B60020 */ ldc1 $f22, 0x20($sp)
|
||||
/* 00C3D4 8000B7D4 D7B80028 */ ldc1 $f24, 0x28($sp)
|
||||
/* 00C3D8 8000B7D8 D7BA0030 */ ldc1 $f26, 0x30($sp)
|
||||
/* 00C3DC 8000B7DC 03E00008 */ jr $ra
|
||||
/* 00C3E0 8000B7E0 27BD0100 */ addiu $sp, $sp, 0x100
|
||||
@@ -1,126 +0,0 @@
|
||||
glabel render_texture_tile_rgba32_block
|
||||
/* 04D2FC 8004C6FC 27BDFFB8 */ addiu $sp, $sp, -0x48
|
||||
/* 04D300 8004C700 AFB10024 */ sw $s1, 0x24($sp)
|
||||
/* 04D304 8004C704 8FB10058 */ lw $s1, 0x58($sp)
|
||||
/* 04D308 8004C708 3C0C8015 */ lui $t4, %hi(gDisplayListHead) # $t4, 0x8015
|
||||
/* 04D30C 8004C70C 258C0298 */ addiu $t4, %lo(gDisplayListHead) # addiu $t4, $t4, 0x298
|
||||
/* 04D310 8004C710 00047400 */ sll $t6, $a0, 0x10
|
||||
/* 04D314 8004C714 00F10019 */ multu $a3, $s1
|
||||
/* 04D318 8004C718 8D820000 */ lw $v0, ($t4)
|
||||
/* 04D31C 8004C71C 000E7C03 */ sra $t7, $t6, 0x10
|
||||
/* 04D320 8004C720 0005C400 */ sll $t8, $a1, 0x10
|
||||
/* 04D324 8004C724 0018CC03 */ sra $t9, $t8, 0x10
|
||||
/* 04D328 8004C728 AFBE0040 */ sw $fp, 0x40($sp)
|
||||
/* 04D32C 8004C72C AFA40048 */ sw $a0, 0x48($sp)
|
||||
/* 04D330 8004C730 00076842 */ srl $t5, $a3, 1
|
||||
/* 04D334 8004C734 01E02025 */ move $a0, $t7
|
||||
/* 04D338 8004C738 AFB40030 */ sw $s4, 0x30($sp)
|
||||
/* 04D33C 8004C73C AFA5004C */ sw $a1, 0x4c($sp)
|
||||
/* 04D340 8004C740 01EDF023 */ subu $fp, $t7, $t5
|
||||
/* 04D344 8004C744 00117042 */ srl $t6, $s1, 1
|
||||
/* 04D348 8004C748 03202825 */ move $a1, $t9
|
||||
/* 04D34C 8004C74C 032EA023 */ subu $s4, $t9, $t6
|
||||
/* 04D350 8004C750 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 04D354 8004C754 AFBF0044 */ sw $ra, 0x44($sp)
|
||||
/* 04D358 8004C758 AFB7003C */ sw $s7, 0x3c($sp)
|
||||
/* 04D35C 8004C75C AFB60038 */ sw $s6, 0x38($sp)
|
||||
/* 04D360 8004C760 AFB50034 */ sw $s5, 0x34($sp)
|
||||
/* 04D364 8004C764 AFB3002C */ sw $s3, 0x2c($sp)
|
||||
/* 04D368 8004C768 AFB20028 */ sw $s2, 0x28($sp)
|
||||
/* 04D36C 8004C76C AFB00020 */ sw $s0, 0x20($sp)
|
||||
/* 04D370 8004C770 AD8F0000 */ sw $t7, ($t4)
|
||||
/* 04D374 8004C774 3C190D00 */ lui $t9, %hi(D_0D007EF8) # $t9, 0xd00
|
||||
/* 04D378 8004C778 27397EF8 */ addiu $t9, %lo(D_0D007EF8) # addiu $t9, $t9, 0x7ef8
|
||||
/* 04D37C 8004C77C 3C180600 */ lui $t8, 0x600
|
||||
/* 04D380 8004C780 AC580000 */ sw $t8, ($v0)
|
||||
/* 04D384 8004C784 AC590004 */ sw $t9, 4($v0)
|
||||
/* 04D388 8004C788 00404025 */ move $t0, $v0
|
||||
/* 04D38C 8004C78C 8D820000 */ lw $v0, ($t4)
|
||||
/* 04D390 8004C790 00001812 */ mflo $v1
|
||||
/* 04D394 8004C794 0003C080 */ sll $t8, $v1, 2
|
||||
/* 04D398 8004C798 3C0F0050 */ lui $t7, (0x00504240 >> 16) # lui $t7, 0x50
|
||||
/* 04D39C 8004C79C 3C0EB900 */ lui $t6, (0xB900031D >> 16) # lui $t6, 0xb900
|
||||
/* 04D3A0 8004C7A0 244D0008 */ addiu $t5, $v0, 8
|
||||
/* 04D3A4 8004C7A4 AD8D0000 */ sw $t5, ($t4)
|
||||
/* 04D3A8 8004C7A8 35CE031D */ ori $t6, (0xB900031D & 0xFFFF) # ori $t6, $t6, 0x31d
|
||||
/* 04D3AC 8004C7AC 35EF4240 */ ori $t7, (0x00504240 & 0xFFFF) # ori $t7, $t7, 0x4240
|
||||
/* 04D3B0 8004C7B0 00185B02 */ srl $t3, $t8, 0xc
|
||||
/* 04D3B4 8004C7B4 33190FFF */ andi $t9, $t8, 0xfff
|
||||
/* 04D3B8 8004C7B8 00E09025 */ move $s2, $a3
|
||||
/* 04D3BC 8004C7BC 00C0A825 */ move $s5, $a2
|
||||
/* 04D3C0 8004C7C0 03001825 */ move $v1, $t8
|
||||
/* 04D3C4 8004C7C4 0300B025 */ move $s6, $t8
|
||||
/* 04D3C8 8004C7C8 01605025 */ move $t2, $t3
|
||||
/* 04D3CC 8004C7CC AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 04D3D0 8004C7D0 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 04D3D4 8004C7D4 13200002 */ beqz $t9, .L8004C7E0
|
||||
/* 04D3D8 8004C7D8 00404825 */ move $t1, $v0
|
||||
/* 04D3DC 8004C7DC 256A0001 */ addiu $t2, $t3, 1
|
||||
.L8004C7E0:
|
||||
/* 04D3E0 8004C7E0 022A001B */ divu $zero, $s1, $t2
|
||||
/* 04D3E4 8004C7E4 00008012 */ mflo $s0
|
||||
/* 04D3E8 8004C7E8 0140B825 */ move $s7, $t2
|
||||
/* 04D3EC 8004C7EC 15400002 */ bnez $t2, .L8004C7F8
|
||||
/* 04D3F0 8004C7F0 00000000 */ nop
|
||||
/* 04D3F4 8004C7F4 0007000D */ break 7
|
||||
.L8004C7F8:
|
||||
/* 04D3F8 8004C7F8 00009825 */ move $s3, $zero
|
||||
/* 04D3FC 8004C7FC 1940001F */ blez $t2, .L8004C87C
|
||||
/* 04D400 8004C800 00000000 */ nop
|
||||
.L8004C804:
|
||||
/* 04D404 8004C804 02500019 */ multu $s2, $s0
|
||||
/* 04D408 8004C808 02A02025 */ move $a0, $s5
|
||||
/* 04D40C 8004C80C 02402825 */ move $a1, $s2
|
||||
/* 04D410 8004C810 02003025 */ move $a2, $s0
|
||||
/* 04D414 8004C814 00008812 */ mflo $s1
|
||||
/* 04D418 8004C818 00116880 */ sll $t5, $s1, 2
|
||||
/* 04D41C 8004C81C 0C010F0A */ jal load_texture_tile_rgba32_nomirror
|
||||
/* 04D420 8004C820 01A08825 */ move $s1, $t5
|
||||
/* 04D424 8004C824 240E0001 */ li $t6, 1
|
||||
/* 04D428 8004C828 AFAE0010 */ sw $t6, 0x10($sp)
|
||||
/* 04D42C 8004C82C 03C02025 */ move $a0, $fp
|
||||
/* 04D430 8004C830 02802825 */ move $a1, $s4
|
||||
/* 04D434 8004C834 02403025 */ move $a2, $s2
|
||||
/* 04D438 8004C838 0C012E54 */ jal render_texture_rectangle_wrap
|
||||
/* 04D43C 8004C83C 02003825 */ move $a3, $s0
|
||||
/* 04D440 8004C840 02D11023 */ subu $v0, $s6, $s1
|
||||
/* 04D444 8004C844 04410008 */ bgez $v0, .L8004C868
|
||||
/* 04D448 8004C848 02B1A821 */ addu $s5, $s5, $s1
|
||||
/* 04D44C 8004C84C 02D2001B */ divu $zero, $s6, $s2
|
||||
/* 04D450 8004C850 00008012 */ mflo $s0
|
||||
/* 04D454 8004C854 16400002 */ bnez $s2, .L8004C860
|
||||
/* 04D458 8004C858 00000000 */ nop
|
||||
/* 04D45C 8004C85C 0007000D */ break 7
|
||||
.L8004C860:
|
||||
/* 04D460 8004C860 10000003 */ b .L8004C870
|
||||
/* 04D464 8004C864 26730001 */ addiu $s3, $s3, 1
|
||||
.L8004C868:
|
||||
/* 04D468 8004C868 0040B025 */ move $s6, $v0
|
||||
/* 04D46C 8004C86C 26730001 */ addiu $s3, $s3, 1
|
||||
.L8004C870:
|
||||
/* 04D470 8004C870 0277082A */ slt $at, $s3, $s7
|
||||
/* 04D474 8004C874 1420FFE3 */ bnez $at, .L8004C804
|
||||
/* 04D478 8004C878 0290A021 */ addu $s4, $s4, $s0
|
||||
.L8004C87C:
|
||||
/* 04D47C 8004C87C 3C028015 */ lui $v0, %hi(gDisplayListHead) # $v0, 0x8015
|
||||
/* 04D480 8004C880 8C420298 */ lw $v0, %lo(gDisplayListHead)($v0)
|
||||
/* 04D484 8004C884 3C018015 */ lui $at, %hi(gDisplayListHead) # $at, 0x8015
|
||||
/* 04D488 8004C888 3C190D00 */ lui $t9, %hi(D_0D007EB8) # $t9, 0xd00
|
||||
/* 04D48C 8004C88C 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 04D490 8004C890 AC2F0298 */ sw $t7, %lo(gDisplayListHead)($at)
|
||||
/* 04D494 8004C894 27397EB8 */ addiu $t9, %lo(D_0D007EB8) # addiu $t9, $t9, 0x7eb8
|
||||
/* 04D498 8004C898 3C180600 */ lui $t8, 0x600
|
||||
/* 04D49C 8004C89C AC580000 */ sw $t8, ($v0)
|
||||
/* 04D4A0 8004C8A0 AC590004 */ sw $t9, 4($v0)
|
||||
/* 04D4A4 8004C8A4 8FBF0044 */ lw $ra, 0x44($sp)
|
||||
/* 04D4A8 8004C8A8 8FBE0040 */ lw $fp, 0x40($sp)
|
||||
/* 04D4AC 8004C8AC 8FB7003C */ lw $s7, 0x3c($sp)
|
||||
/* 04D4B0 8004C8B0 8FB60038 */ lw $s6, 0x38($sp)
|
||||
/* 04D4B4 8004C8B4 8FB50034 */ lw $s5, 0x34($sp)
|
||||
/* 04D4B8 8004C8B8 8FB40030 */ lw $s4, 0x30($sp)
|
||||
/* 04D4BC 8004C8BC 8FB3002C */ lw $s3, 0x2c($sp)
|
||||
/* 04D4C0 8004C8C0 8FB20028 */ lw $s2, 0x28($sp)
|
||||
/* 04D4C4 8004C8C4 8FB10024 */ lw $s1, 0x24($sp)
|
||||
/* 04D4C8 8004C8C8 8FB00020 */ lw $s0, 0x20($sp)
|
||||
/* 04D4CC 8004C8CC 03E00008 */ jr $ra
|
||||
/* 04D4D0 8004C8D0 27BD0048 */ addiu $sp, $sp, 0x48
|
||||
@@ -1,67 +0,0 @@
|
||||
glabel func_800B578C
|
||||
/* 0B638C 800B578C 000470C0 */ sll $t6, $a0, 3
|
||||
/* 0B6390 800B5790 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 0B6394 800B5794 000E70C0 */ sll $t6, $t6, 3
|
||||
/* 0B6398 800B5798 3C188019 */ lui $t8, %hi(gSaveData) # $t8, 0x8019
|
||||
/* 0B639C 800B579C 2718EB90 */ addiu $t8, %lo(gSaveData) # addiu $t8, $t8, -0x1470
|
||||
/* 0B63A0 800B57A0 25CF0188 */ addiu $t7, $t6, 0x188
|
||||
/* 0B63A4 800B57A4 01F83021 */ addu $a2, $t7, $t8
|
||||
/* 0B63A8 800B57A8 00001825 */ move $v1, $zero
|
||||
/* 0B63AC 800B57AC 00C04025 */ move $t0, $a2
|
||||
/* 0B63B0 800B57B0 00001025 */ move $v0, $zero
|
||||
/* 0B63B4 800B57B4 240A0003 */ li $t2, 3
|
||||
/* 0B63B8 800B57B8 24090011 */ li $t1, 17
|
||||
.L800B57BC:
|
||||
/* 0B63BC 800B57BC 91190000 */ lbu $t9, ($t0)
|
||||
/* 0B63C0 800B57C0 24450001 */ addiu $a1, $v0, 1
|
||||
/* 0B63C4 800B57C4 24C70001 */ addiu $a3, $a2, 1
|
||||
/* 0B63C8 800B57C8 272B0001 */ addiu $t3, $t9, 1
|
||||
/* 0B63CC 800B57CC 01650019 */ multu $t3, $a1
|
||||
/* 0B63D0 800B57D0 24C60011 */ addiu $a2, $a2, 0x11
|
||||
/* 0B63D4 800B57D4 00A01025 */ move $v0, $a1
|
||||
/* 0B63D8 800B57D8 24040001 */ li $a0, 1
|
||||
/* 0B63DC 800B57DC 00006012 */ mflo $t4
|
||||
/* 0B63E0 800B57E0 006C1821 */ addu $v1, $v1, $t4
|
||||
/* 0B63E4 800B57E4 00000000 */ nop
|
||||
.L800B57E8:
|
||||
/* 0B63E8 800B57E8 90ED0000 */ lbu $t5, ($a3)
|
||||
/* 0B63EC 800B57EC 90F90001 */ lbu $t9, 1($a3)
|
||||
/* 0B63F0 800B57F0 24E70004 */ addiu $a3, $a3, 4
|
||||
/* 0B63F4 800B57F4 25AE0001 */ addiu $t6, $t5, 1
|
||||
/* 0B63F8 800B57F8 01C50019 */ multu $t6, $a1
|
||||
/* 0B63FC 800B57FC 272B0001 */ addiu $t3, $t9, 1
|
||||
/* 0B6400 800B5800 90EEFFFE */ lbu $t6, -2($a3)
|
||||
/* 0B6404 800B5804 00007812 */ mflo $t7
|
||||
/* 0B6408 800B5808 006FC021 */ addu $t8, $v1, $t7
|
||||
/* 0B640C 800B580C 25CF0001 */ addiu $t7, $t6, 1
|
||||
/* 0B6410 800B5810 01650019 */ multu $t3, $a1
|
||||
/* 0B6414 800B5814 90EBFFFF */ lbu $t3, -1($a3)
|
||||
/* 0B6418 800B5818 03041821 */ addu $v1, $t8, $a0
|
||||
/* 0B641C 800B581C 00006012 */ mflo $t4
|
||||
/* 0B6420 800B5820 006C6821 */ addu $t5, $v1, $t4
|
||||
/* 0B6424 800B5824 256C0001 */ addiu $t4, $t3, 1
|
||||
/* 0B6428 800B5828 01E50019 */ multu $t7, $a1
|
||||
/* 0B642C 800B582C 01A41821 */ addu $v1, $t5, $a0
|
||||
/* 0B6430 800B5830 24630001 */ addiu $v1, $v1, 1
|
||||
/* 0B6434 800B5834 0000C012 */ mflo $t8
|
||||
/* 0B6438 800B5838 0078C821 */ addu $t9, $v1, $t8
|
||||
/* 0B643C 800B583C 03241821 */ addu $v1, $t9, $a0
|
||||
/* 0B6440 800B5840 01850019 */ multu $t4, $a1
|
||||
/* 0B6444 800B5844 24630002 */ addiu $v1, $v1, 2
|
||||
/* 0B6448 800B5848 00006812 */ mflo $t5
|
||||
/* 0B644C 800B584C 006D7021 */ addu $t6, $v1, $t5
|
||||
/* 0B6450 800B5850 01C41821 */ addu $v1, $t6, $a0
|
||||
/* 0B6454 800B5854 24840004 */ addiu $a0, $a0, 4
|
||||
/* 0B6458 800B5858 1489FFE3 */ bne $a0, $t1, .L800B57E8
|
||||
/* 0B645C 800B585C 24630003 */ addiu $v1, $v1, 3
|
||||
/* 0B6460 800B5860 14AAFFD6 */ bne $a1, $t2, .L800B57BC
|
||||
/* 0B6464 800B5864 25080011 */ addiu $t0, $t0, 0x11
|
||||
/* 0B6468 800B5868 04610004 */ bgez $v1, .L800B587C
|
||||
/* 0B646C 800B586C 306200FF */ andi $v0, $v1, 0xff
|
||||
/* 0B6470 800B5870 10400002 */ beqz $v0, .L800B587C
|
||||
/* 0B6474 800B5874 00000000 */ nop
|
||||
/* 0B6478 800B5878 2442FF00 */ addiu $v0, $v0, -0x100
|
||||
.L800B587C:
|
||||
/* 0B647C 800B587C 304F00FF */ andi $t7, $v0, 0xff
|
||||
/* 0B6480 800B5880 03E00008 */ jr $ra
|
||||
/* 0B6484 800B5884 01E01025 */ move $v0, $t7
|
||||
@@ -1,99 +0,0 @@
|
||||
.section .late_rodata
|
||||
|
||||
glabel D_800EF0B8
|
||||
.double 0.6
|
||||
|
||||
glabel D_800EF0C0
|
||||
.double 0.6
|
||||
|
||||
.section .text
|
||||
|
||||
glabel func_80080E8C
|
||||
/* 081A8C 80080E8C 27BDFFC0 */ addiu $sp, $sp, -0x40
|
||||
/* 081A90 80080E90 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 081A94 80080E94 AFA50044 */ sw $a1, 0x44($sp)
|
||||
/* 081A98 80080E98 AFB10018 */ sw $s1, 0x18($sp)
|
||||
/* 081A9C 80080E9C AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 081AA0 80080EA0 AFA40040 */ sw $a0, 0x40($sp)
|
||||
/* 081AA4 80080EA4 AFA60048 */ sw $a2, 0x48($sp)
|
||||
/* 081AA8 80080EA8 0C01C8E9 */ jal init_object
|
||||
/* 081AAC 80080EAC 00C02825 */ move $a1, $a2
|
||||
/* 081AB0 80080EB0 8FAE0040 */ lw $t6, 0x40($sp)
|
||||
/* 081AB4 80080EB4 240700E0 */ li $a3, 224
|
||||
/* 081AB8 80080EB8 8FB90044 */ lw $t9, 0x44($sp)
|
||||
/* 081ABC 80080EBC 01C70019 */ multu $t6, $a3
|
||||
/* 081AC0 80080EC0 8FA40048 */ lw $a0, 0x48($sp)
|
||||
/* 081AC4 80080EC4 3C058016 */ lui $a1, %hi(gObjectList) # $a1, 0x8016
|
||||
/* 081AC8 80080EC8 24A55C18 */ addiu $a1, %lo(gObjectList) # addiu $a1, $a1, 0x5c18
|
||||
/* 081ACC 80080ECC 24180002 */ li $t8, 2
|
||||
/* 081AD0 80080ED0 3C0B800E */ lui $t3, %hi(D_800E594C) # $t3, 0x800e
|
||||
/* 081AD4 80080ED4 00044840 */ sll $t1, $a0, 1
|
||||
/* 081AD8 80080ED8 00095080 */ sll $t2, $t1, 2
|
||||
/* 081ADC 80080EDC 256B594C */ addiu $t3, %lo(D_800E594C) # addiu $t3, $t3, 0x594c
|
||||
/* 081AE0 80080EE0 014B1821 */ addu $v1, $t2, $t3
|
||||
/* 081AE4 80080EE4 00007812 */ mflo $t7
|
||||
/* 081AE8 80080EE8 00AF8021 */ addu $s0, $a1, $t7
|
||||
/* 081AEC 80080EEC A21800D5 */ sb $t8, 0xd5($s0)
|
||||
/* 081AF0 80080EF0 03270019 */ multu $t9, $a3
|
||||
/* 081AF4 80080EF4 C46C0004 */ lwc1 $f12, 4($v1)
|
||||
/* 081AF8 80080EF8 C46E0000 */ lwc1 $f14, ($v1)
|
||||
/* 081AFC 80080EFC AFA30024 */ sw $v1, 0x24($sp)
|
||||
/* 081B00 80080F00 01202025 */ move $a0, $t1
|
||||
/* 081B04 80080F04 AFA90028 */ sw $t1, 0x28($sp)
|
||||
/* 081B08 80080F08 00004012 */ mflo $t0
|
||||
/* 081B0C 80080F0C 00A81021 */ addu $v0, $a1, $t0
|
||||
/* 081B10 80080F10 945100C0 */ lhu $s1, 0xc0($v0)
|
||||
/* 081B14 80080F14 AFA2002C */ sw $v0, 0x2c($sp)
|
||||
/* 081B18 80080F18 0C0105B6 */ jal func_800416D8
|
||||
/* 081B1C 80080F1C 02203025 */ move $a2, $s1
|
||||
/* 081B20 80080F20 8FA30024 */ lw $v1, 0x24($sp)
|
||||
/* 081B24 80080F24 E7A00038 */ swc1 $f0, 0x38($sp)
|
||||
/* 081B28 80080F28 3226FFFF */ andi $a2, $s1, 0xffff
|
||||
/* 081B2C 80080F2C C46C0004 */ lwc1 $f12, 4($v1)
|
||||
/* 081B30 80080F30 0C0105C9 */ jal func_80041724
|
||||
/* 081B34 80080F34 C46E0000 */ lwc1 $f14, ($v1)
|
||||
/* 081B38 80080F38 8FA2002C */ lw $v0, 0x2c($sp)
|
||||
/* 081B3C 80080F3C 3C014022 */ li $at, 0x40220000 # 2.531250
|
||||
/* 081B40 80080F40 44818800 */ mtc1 $at, $f17
|
||||
/* 081B44 80080F44 C4440004 */ lwc1 $f4, 4($v0)
|
||||
/* 081B48 80080F48 44808000 */ mtc1 $zero, $f16
|
||||
/* 081B4C 80080F4C 8FAC0028 */ lw $t4, 0x28($sp)
|
||||
/* 081B50 80080F50 46002180 */ add.s $f6, $f4, $f0
|
||||
/* 081B54 80080F54 3C0D800E */ lui $t5, %hi(D_800E597C) # 0x800e
|
||||
/* 081B58 80080F58 01AC6821 */ addu $t5, $t5, $t4
|
||||
/* 081B5C 80080F5C E6060010 */ swc1 $f6, 0x10($s0)
|
||||
/* 081B60 80080F60 C4480044 */ lwc1 $f8, 0x44($v0)
|
||||
/* 081B64 80080F64 460042A1 */ cvt.d.s $f10, $f8
|
||||
/* 081B68 80080F68 C7A80038 */ lwc1 $f8, 0x38($sp)
|
||||
/* 081B6C 80080F6C 46305481 */ sub.d $f18, $f10, $f16
|
||||
/* 081B70 80080F70 46209120 */ cvt.s.d $f4, $f18
|
||||
/* 081B74 80080F74 E6040014 */ swc1 $f4, 0x14($s0)
|
||||
/* 081B78 80080F78 C446000C */ lwc1 $f6, 0xc($v0)
|
||||
/* 081B7C 80080F7C 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 081B80 80080F80 E60A0018 */ swc1 $f10, 0x18($s0)
|
||||
/* 081B84 80080F84 85AD597C */ lh $t5, %lo(D_800E597C)($t5) # 0x597c($t5)
|
||||
/* 081B88 80080F88 944E00C0 */ lhu $t6, 0xc0($v0)
|
||||
/* 081B8C 80080F8C 01AE8821 */ addu $s1, $t5, $t6
|
||||
/* 081B90 80080F90 322FFFFF */ andi $t7, $s1, 0xffff
|
||||
/* 081B94 80080F94 01E08825 */ move $s1, $t7
|
||||
/* 081B98 80080F98 0C0AE006 */ jal sins
|
||||
/* 081B9C 80080F9C 31E4FFFF */ andi $a0, $t7, 0xffff
|
||||
/* 081BA0 80080FA0 3C01800F */ lui $at, %hi(D_800EF0B8)
|
||||
/* 081BA4 80080FA4 D432F0B8 */ ldc1 $f18, %lo(D_800EF0B8)($at)
|
||||
/* 081BA8 80080FA8 46000421 */ cvt.d.s $f16, $f0
|
||||
/* 081BAC 80080FAC 3224FFFF */ andi $a0, $s1, 0xffff
|
||||
/* 081BB0 80080FB0 46328102 */ mul.d $f4, $f16, $f18
|
||||
/* 081BB4 80080FB4 462021A0 */ cvt.s.d $f6, $f4
|
||||
/* 081BB8 80080FB8 0C0AE00E */ jal coss
|
||||
/* 081BBC 80080FBC E6060038 */ swc1 $f6, 0x38($s0)
|
||||
/* 081BC0 80080FC0 3C01800F */ lui $at, %hi(D_800EF0C0)
|
||||
/* 081BC4 80080FC4 D42AF0C0 */ ldc1 $f10, %lo(D_800EF0C0)($at)
|
||||
/* 081BC8 80080FC8 46000221 */ cvt.d.s $f8, $f0
|
||||
/* 081BCC 80080FCC 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 081BD0 80080FD0 462A4402 */ mul.d $f16, $f8, $f10
|
||||
/* 081BD4 80080FD4 8FB10018 */ lw $s1, 0x18($sp)
|
||||
/* 081BD8 80080FD8 462084A0 */ cvt.s.d $f18, $f16
|
||||
/* 081BDC 80080FDC E6120040 */ swc1 $f18, 0x40($s0)
|
||||
/* 081BE0 80080FE0 8FB00014 */ lw $s0, 0x14($sp)
|
||||
/* 081BE4 80080FE4 03E00008 */ jr $ra
|
||||
/* 081BE8 80080FE8 27BD0040 */ addiu $sp, $sp, 0x40
|
||||
@@ -1,71 +0,0 @@
|
||||
.section .late_rodata
|
||||
|
||||
glabel D_800EF1BC
|
||||
.float 0.027
|
||||
|
||||
.section .text
|
||||
|
||||
glabel func_80082F1C
|
||||
/* 083B1C 80082F1C 000470C0 */ sll $t6, $a0, 3
|
||||
/* 083B20 80082F20 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 083B24 80082F24 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 083B28 80082F28 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 083B2C 80082F2C 000E7140 */ sll $t6, $t6, 5
|
||||
/* 083B30 80082F30 01CF1021 */ addu $v0, $t6, $t7
|
||||
/* 083B34 80082F34 3C180601 */ lui $t8, %hi(d_course_yoshi_valley_unk5) # $t8, 0x601
|
||||
/* 083B38 80082F38 3C190601 */ lui $t9, %hi(d_course_yoshi_valley_unk4) # $t9, 0x601
|
||||
/* 083B3C 80082F3C 27184798 */ addiu $t8, %lo(d_course_yoshi_valley_unk5) # addiu $t8, $t8, 0x4798
|
||||
/* 083B40 80082F40 27394794 */ addiu $t9, %lo(d_course_yoshi_valley_unk4) # addiu $t9, $t9, 0x4794
|
||||
/* 083B44 80082F44 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 083B48 80082F48 AC580070 */ sw $t8, 0x70($v0)
|
||||
/* 083B4C 80082F4C AC590074 */ sw $t9, 0x74($v0)
|
||||
/* 083B50 80082F50 3C01800F */ lui $at, %hi(D_800EF1BC) # $at, 0x800f
|
||||
/* 083B54 80082F54 C424F1BC */ lwc1 $f4, %lo(D_800EF1BC)($at)
|
||||
/* 083B58 80082F58 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 083B5C 80082F5C AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 083B60 80082F60 00808025 */ move $s0, $a0
|
||||
/* 083B64 80082F64 AFA5002C */ sw $a1, 0x2c($sp)
|
||||
/* 083B68 80082F68 0C01C922 */ jal object_next_state
|
||||
/* 083B6C 80082F6C E4440000 */ swc1 $f4, ($v0)
|
||||
/* 083B70 80082F70 8FA9002C */ lw $t1, 0x2c($sp)
|
||||
/* 083B74 80082F74 3C0B800E */ lui $t3, %hi(D_800E5DF4) # $t3, 0x800e
|
||||
/* 083B78 80082F78 256B5DF4 */ addiu $t3, %lo(D_800E5DF4) # addiu $t3, $t3, 0x5df4
|
||||
/* 083B7C 80082F7C 000950C0 */ sll $t2, $t1, 3
|
||||
/* 083B80 80082F80 014B1021 */ addu $v0, $t2, $t3
|
||||
/* 083B84 80082F84 844C0000 */ lh $t4, ($v0)
|
||||
/* 083B88 80082F88 844D0002 */ lh $t5, 2($v0)
|
||||
/* 083B8C 80082F8C 844E0004 */ lh $t6, 4($v0)
|
||||
/* 083B90 80082F90 448C3000 */ mtc1 $t4, $f6
|
||||
/* 083B94 80082F94 3C018019 */ lui $at, %hi(xOrientation) # $at, 0x8019
|
||||
/* 083B98 80082F98 C42AD01C */ lwc1 $f10, %lo(xOrientation)($at)
|
||||
/* 083B9C 80082F9C 46803220 */ cvt.s.w $f8, $f6
|
||||
/* 083BA0 80082FA0 448D9000 */ mtc1 $t5, $f18
|
||||
/* 083BA4 80082FA4 448E2000 */ mtc1 $t6, $f4
|
||||
/* 083BA8 80082FA8 AFA20024 */ sw $v0, 0x24($sp)
|
||||
/* 083BAC 80082FAC 02002025 */ move $a0, $s0
|
||||
/* 083BB0 80082FB0 468094A0 */ cvt.s.w $f18, $f18
|
||||
/* 083BB4 80082FB4 460A4402 */ mul.s $f16, $f8, $f10
|
||||
/* 083BB8 80082FB8 44069000 */ mfc1 $a2, $f18
|
||||
/* 083BBC 80082FBC 46802120 */ cvt.s.w $f4, $f4
|
||||
/* 083BC0 80082FC0 44058000 */ mfc1 $a1, $f16
|
||||
/* 083BC4 80082FC4 44072000 */ mfc1 $a3, $f4
|
||||
/* 083BC8 80082FC8 0C022DF5 */ jal set_obj_origin_pos
|
||||
/* 083BCC 80082FCC 00000000 */ nop
|
||||
/* 083BD0 80082FD0 44800000 */ mtc1 $zero, $f0
|
||||
/* 083BD4 80082FD4 02002025 */ move $a0, $s0
|
||||
/* 083BD8 80082FD8 44050000 */ mfc1 $a1, $f0
|
||||
/* 083BDC 80082FDC 44060000 */ mfc1 $a2, $f0
|
||||
/* 083BE0 80082FE0 44070000 */ mfc1 $a3, $f0
|
||||
/* 083BE4 80082FE4 0C022E03 */ jal set_obj_origin_offset
|
||||
/* 083BE8 80082FE8 00000000 */ nop
|
||||
/* 083BEC 80082FEC 8FA20024 */ lw $v0, 0x24($sp)
|
||||
/* 083BF0 80082FF0 02002025 */ move $a0, $s0
|
||||
/* 083BF4 80082FF4 00002825 */ move $a1, $zero
|
||||
/* 083BF8 80082FF8 00003825 */ move $a3, $zero
|
||||
/* 083BFC 80082FFC 0C022E22 */ jal set_obj_direction_angle
|
||||
/* 083C00 80083000 94460006 */ lhu $a2, 6($v0)
|
||||
/* 083C04 80083004 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 083C08 80083008 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 083C0C 8008300C 27BD0028 */ addiu $sp, $sp, 0x28
|
||||
/* 083C10 80083010 03E00008 */ jr $ra
|
||||
/* 083C14 80083014 00000000 */ nop
|
||||
+3
-6
@@ -205,12 +205,8 @@ extern Collision D_8018C0B0[];
|
||||
|
||||
#define NUM_YV_FLAG_POLES 4
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ Vec3s pos;
|
||||
/* 0x6 */ u16 rot;
|
||||
} YVFlagPoleSpawn; // size = 0x8;
|
||||
|
||||
extern YVFlagPoleSpawn D_800E5DF4[];
|
||||
// pos, rot
|
||||
extern s16 D_800E5DF4[];
|
||||
|
||||
#define NUM_CRABS 0xA
|
||||
|
||||
@@ -227,6 +223,7 @@ extern CrabSpawn gCrabSpawns[];
|
||||
#define NUM_THWOMPS_100CC_EXTRA 11
|
||||
#define NUM_THWOMPS_150CC 12
|
||||
|
||||
// pos x,y,z
|
||||
extern Vec3f D_800E6734[];
|
||||
|
||||
typedef struct {
|
||||
|
||||
+19
-23
@@ -755,27 +755,31 @@ void load_sequence_internal(u32 player, u32 seqId, s32 loadAsync) {
|
||||
seqPlayer->scriptState.pc = sequenceData;
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// https://decomp.me/scratch/5FBUM
|
||||
// There is some wild bullshit going on in this function
|
||||
// It is an unholy cross between SM64's EU and Shindou
|
||||
// verions of this function, with the for loop towards
|
||||
// the bottom resembling stuff from bank_load_async
|
||||
|
||||
#ifdef VERSION_EU
|
||||
GLOBAL_ASM("asm/eu_nonmatchings/audio_init.s")
|
||||
#else
|
||||
|
||||
extern u8 _audio_banksSegmentRomStart;
|
||||
extern u8 _audio_tablesSegmentRomStart;
|
||||
extern u8 _instrument_setsSegmentRomStart;
|
||||
extern u8 _sequencesSegmentRomStart;
|
||||
|
||||
/**
|
||||
* There is some wild bullshit going on in this function
|
||||
* It is an unholy cross between SM64's EU and Shindou
|
||||
* verions of this function, with the for loop towards
|
||||
* the bottom resembling stuff from bank_load_async
|
||||
*/
|
||||
void audio_init(void) {
|
||||
s32 i;
|
||||
UNUSED s32 pad[2];
|
||||
s32 j;
|
||||
UNUSED s32 pad2[6];
|
||||
u32 sp60[2];
|
||||
UNUSED s32 pad1[2];
|
||||
UNUSED s32 pad[6];
|
||||
s32 j, k;
|
||||
s32 aaa;
|
||||
u32 sp60[2];
|
||||
UNUSED s32 lim2, lim3;
|
||||
s32 size;
|
||||
UNUSED u64* ptr64;
|
||||
u64* ptr64;
|
||||
UNUSED void *data;
|
||||
UNUSED s32 one = 1;
|
||||
u8* test;
|
||||
|
||||
@@ -788,10 +792,7 @@ void audio_init(void) {
|
||||
#ifdef TARGET_N64
|
||||
// It seems boot.s doesn't clear the .bss area for audio, so do it here.
|
||||
ptr64 = (u64*) ((u8*) gGfxSPTaskOutputBuffer + sizeof(gGfxSPTaskOutputBuffer));
|
||||
for (i = ((uintptr_t) &gAudioGlobalsEndMarker -
|
||||
(uintptr_t) ((u64*) ((u8*) gGfxSPTaskOutputBuffer + sizeof(gGfxSPTaskOutputBuffer)))) /
|
||||
8;
|
||||
i >= 0; i--) {
|
||||
for (k = ((uintptr_t) &gAudioGlobalsEndMarker - (uintptr_t) ((u64 *)((u8 *) gGfxSPTaskOutputBuffer + sizeof(gGfxSPTaskOutputBuffer))) ) / 8; k >= 0; k--) {
|
||||
*ptr64++ = 0;
|
||||
}
|
||||
#endif
|
||||
@@ -812,6 +813,7 @@ void audio_init(void) {
|
||||
break;
|
||||
}
|
||||
port_eu_init();
|
||||
if (k) {} // fake
|
||||
for (i = 0; i < NUMAIBUFFERS; i++) {
|
||||
gAiBufferLengths[i] = 0xa0;
|
||||
}
|
||||
@@ -878,10 +880,4 @@ void audio_init(void) {
|
||||
init_sequence_players();
|
||||
gAudioLoadLock = 0x76557364;
|
||||
}
|
||||
#else
|
||||
#ifdef VERSION_EU
|
||||
GLOBAL_ASM("asm/eu_nonmatchings/audio_init.s")
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/audio/load/audio_init.s")
|
||||
#endif
|
||||
#endif
|
||||
|
||||
+4
-4
@@ -364,13 +364,13 @@ s16 gGPCurrentRaceCharacterIdByRank[8];
|
||||
s16 D_8018CF90;
|
||||
s16 D_8018CF98[8];
|
||||
s16 D_8018CFA8;
|
||||
s8 D_8018CFAC[4];
|
||||
u8 D_8018CFAC[4];
|
||||
s16 D_8018CFB0;
|
||||
s8 D_8018CFB4[4];
|
||||
u8 D_8018CFB4[4];
|
||||
s16 D_8018CFB8;
|
||||
s8 D_8018CFBC[4];
|
||||
u8 D_8018CFBC[4];
|
||||
s16 D_8018CFC0;
|
||||
s8 D_8018CFC4[4];
|
||||
u8 D_8018CFC4[4];
|
||||
s16 D_8018CFC8;
|
||||
f32 D_8018CFCC;
|
||||
s16 D_8018CFD0;
|
||||
|
||||
+4
-4
@@ -454,10 +454,10 @@ extern s16 D_8018CFC0;
|
||||
extern s16 D_8018CFC8;
|
||||
extern s16 D_8018CFD0;
|
||||
extern s16 D_8018CFD8;
|
||||
extern s8 D_8018CFAC[];
|
||||
extern s8 D_8018CFB4[];
|
||||
extern s8 D_8018CFBC[];
|
||||
extern s8 D_8018CFC4[];
|
||||
extern u8 D_8018CFAC[];
|
||||
extern u8 D_8018CFB4[];
|
||||
extern u8 D_8018CFBC[];
|
||||
extern u8 D_8018CFC4[];
|
||||
extern s16 D_8018CFE0;
|
||||
extern f32 D_8018CFE4;
|
||||
extern s16 D_8018CFE8;
|
||||
|
||||
+79
-124
@@ -172,7 +172,7 @@ void func_8006EF60(void) {
|
||||
// clang-format on
|
||||
}
|
||||
|
||||
void course_mini_map_settings(void) {
|
||||
void track_minimap_settings(void) {
|
||||
D_801655C8 = 0;
|
||||
xOrientation = 1.0f;
|
||||
if (gIsMirrorMode != 0) {
|
||||
@@ -418,16 +418,12 @@ void func_8006F8CC(void) {
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// Major register allocation problems in the first for-loop
|
||||
// Smaller issues elsewhere, probably some one line, multiple variable assignment shenanigans going on
|
||||
// https://decomp.me/scratch/ohbAc
|
||||
void func_8006FA94(void) {
|
||||
s32 var_a0;
|
||||
Player* player;
|
||||
s32 i;
|
||||
Player *player;
|
||||
|
||||
func_8006F8CC();
|
||||
course_mini_map_settings();
|
||||
track_minimap_settings();
|
||||
osSetTime(0);
|
||||
D_8018D170 = 0;
|
||||
D_8018D190 = 0;
|
||||
@@ -437,117 +433,93 @@ void func_8006FA94(void) {
|
||||
D_801657E2 = 0;
|
||||
D_80165730 = 0;
|
||||
D_801658FE = 0;
|
||||
/*
|
||||
D_801657E5 = 0;
|
||||
D_801657E3 = D_801657E5;
|
||||
D_801657E1 = D_801657E3;
|
||||
*/
|
||||
|
||||
D_801657E1 = D_801657E3 = D_801657E5 = 0;
|
||||
/*
|
||||
D_80165658->unk8 = 0;
|
||||
D_80165658->unk4 = 0;
|
||||
D_80165658->unk0 = 0;
|
||||
*/
|
||||
|
||||
D_80165658[0] = D_80165658[1] = D_80165658[2] = 0;
|
||||
/*
|
||||
D_801658D6 = 0;
|
||||
D_801658E4 = D_801658D6;
|
||||
D_801658F4 = D_801658E4;
|
||||
D_801658EC = D_801658F4;
|
||||
D_801658DC = D_801658EC;
|
||||
D_801658CE = D_801658DC;
|
||||
D_801658C6 = D_801658CE;
|
||||
D_801658BC = D_801658C6;
|
||||
*/
|
||||
D_801658BC = D_801658C6 = D_801658CE = D_801658DC = D_801658EC = D_801658F4 = D_801658E4 = D_801658D6 = 0;
|
||||
switch (gPlayerCount) { /* irregular */
|
||||
case 1:
|
||||
|
||||
switch (gPlayerCount) {
|
||||
case 1:
|
||||
if (gModeSelection == 0) {
|
||||
D_8018D114 = 0;
|
||||
D_8018D178 = 150;
|
||||
D_8018D180 = 240;
|
||||
} else {
|
||||
D_8018D114 = 1;
|
||||
D_8018D178 = 10;
|
||||
D_8018D180 = 0;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (gScreenModeSelection == 1) {
|
||||
if (gModeSelection == 0) {
|
||||
D_8018D114 = 0;
|
||||
D_8018D114 = 2;
|
||||
D_8018D178 = 150;
|
||||
D_8018D180 = 240;
|
||||
} else {
|
||||
D_8018D114 = 1;
|
||||
D_8018D178 = 10;
|
||||
D_8018D180 = 0;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (gScreenModeSelection == 1) {
|
||||
if (gModeSelection == 0) {
|
||||
D_8018D114 = 2;
|
||||
D_8018D178 = 150;
|
||||
D_8018D180 = 240;
|
||||
D_8018D2AC = 60;
|
||||
} else if (gModeSelection == 2) {
|
||||
D_8018D114 = 3;
|
||||
D_8018D178 = 30;
|
||||
D_8018D180 = 30;
|
||||
D_8018D2AC = 60;
|
||||
} else {
|
||||
D_8018D114 = 4;
|
||||
D_8018D178 = 40;
|
||||
D_8018D180 = 40;
|
||||
D_8018D2AC = 60;
|
||||
}
|
||||
} else if (gModeSelection == 0) {
|
||||
D_8018D114 = 5;
|
||||
D_8018D2AC = 60;
|
||||
} else if (gModeSelection == 2) {
|
||||
D_8018D114 = 6;
|
||||
} else {
|
||||
D_8018D114 = 7;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (gModeSelection == 2) {
|
||||
D_8018D114 = 8;
|
||||
D_8018D178 = 100;
|
||||
D_8018D180 = 150;
|
||||
D_8018D2AC = 60;
|
||||
} else {
|
||||
D_8018D114 = 9;
|
||||
D_8018D178 = 100;
|
||||
D_8018D180 = 150;
|
||||
D_8018D2AC = 60;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (gModeSelection == 2) {
|
||||
D_8018D114 = 10;
|
||||
D_8018D114 = 3;
|
||||
D_8018D178 = 30;
|
||||
D_8018D180 = 30;
|
||||
D_8018D2AC = 10;
|
||||
D_8018D2AC = 60;
|
||||
} else {
|
||||
D_8018D114 = 11;
|
||||
D_8018D178 = 30;
|
||||
D_8018D180 = 30;
|
||||
D_8018D2AC = 10;
|
||||
D_8018D114 = 4;
|
||||
D_8018D178 = 40;
|
||||
D_8018D180 = 40;
|
||||
D_8018D2AC = 60;
|
||||
}
|
||||
break;
|
||||
} else if (gModeSelection == 0) {
|
||||
D_8018D114 = 5;
|
||||
} else if (gModeSelection == 2) {
|
||||
D_8018D114 = 6;
|
||||
} else {
|
||||
D_8018D114 = 7;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (gModeSelection == 2) {
|
||||
D_8018D114 = 8;
|
||||
D_8018D178 = 0x00000064;
|
||||
D_8018D180 = 0x00000096;
|
||||
D_8018D2AC = 0x0000003C;
|
||||
} else {
|
||||
D_8018D114 = 9;
|
||||
D_8018D178 = 0x00000064;
|
||||
D_8018D180 = 0x00000096;
|
||||
D_8018D2AC = 0x0000003C;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (gModeSelection == 2) {
|
||||
D_8018D114 = 0x0000000A;
|
||||
D_8018D178 = 0x0000001E;
|
||||
D_8018D180 = 0x0000001E;
|
||||
D_8018D2AC = 0x0000000A;
|
||||
} else {
|
||||
D_8018D114 = 0x0000000B;
|
||||
D_8018D178 = 0x0000001E;
|
||||
D_8018D180 = 0x0000001E;
|
||||
D_8018D2AC = 0x0000000A;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (gEnableDebugMode == 0) {
|
||||
D_8016576A = 0;
|
||||
D_8016579C = 0;
|
||||
}
|
||||
for (var_a0 = 0; var_a0 < gPlayerCount; var_a0++) {
|
||||
D_8018CFBC[var_a0] = 0;
|
||||
D_8018CFAC[var_a0] = 0;
|
||||
D_8018CFC4[var_a0] = 0;
|
||||
D_8018CFB4[var_a0] = 0;
|
||||
|
||||
for (i = 0; i < gPlayerCount; i++) {
|
||||
D_8018CFC4[i] = D_8018CFAC[i] = D_8018CFBC[i] = 0;
|
||||
D_8018CFB4[i] = 0;
|
||||
}
|
||||
|
||||
D_8018D204 = 1;
|
||||
D_8018D1FC = 0;
|
||||
D_8018D224 = 0;
|
||||
D_8018D1F0 = D_8018D1F8 = 0;
|
||||
D_8018D228 = 0xFF;
|
||||
/*
|
||||
D_80165628 = 0;
|
||||
D_80165618 = 0;
|
||||
D_80165608 = D_80165618;
|
||||
D_801655F8 = D_80165618;
|
||||
D_801655E8 = D_80165618;
|
||||
D_801655D8 = D_80165618;
|
||||
*/
|
||||
|
||||
D_801655D8 = D_801655E8 = D_801655F8 = D_80165608 = D_80165618 = D_80165628 = 0;
|
||||
D_8018D160 = 0;
|
||||
D_8018D1DC = 0;
|
||||
@@ -556,46 +528,29 @@ void func_8006FA94(void) {
|
||||
D_8018D1A0 = 0;
|
||||
D_8018D168 = 0;
|
||||
D_801656F0 = 0;
|
||||
D_801657B2 = 0;
|
||||
D_801657D8 = D_801657B2;
|
||||
D_8018D214 = D_801657D8;
|
||||
gHUDDisable = D_8018D214;
|
||||
D_801657AE = gHUDDisable;
|
||||
D_801657AE = gHUDDisable = D_8018D214 = D_801657D8 = D_801657B2 = 0;
|
||||
D_8018D20C = 0;
|
||||
D_8018D2F8 = 0;
|
||||
D_8018D2F0 = D_8018D2F8;
|
||||
D_8018D2F0 = D_8018D2F8 = 0;
|
||||
D_8018D320 = 3;
|
||||
D_8018D2AC = 0;
|
||||
D_8018D2BC = 0;
|
||||
D_8018D2B4 = D_8018D2BC;
|
||||
D_8018D2A4 = D_8018D2B4;
|
||||
D_8018D2C8[0] = 0;
|
||||
D_8018D2C8[1] = 0;
|
||||
D_8018D2C8[2] = 0;
|
||||
D_8018D2C8[3] = 0;
|
||||
D_8018D2A4 = D_8018D2B4 = D_8018D2BC = 0;
|
||||
D_8018D2C8[0] = D_8018D2C8[1] = D_8018D2C8[2] = D_8018D2C8[3] = 0;
|
||||
D_8016581C = 0;
|
||||
D_8016580C = 0;
|
||||
D_80165814 = 0;
|
||||
D_80165804 = 0;
|
||||
D_801657FC = 0;
|
||||
D_8018D18C = -1;
|
||||
D_8018D184 = D_8018D18C;
|
||||
D_8018D16C = D_8018D18C;
|
||||
D_8018D17C = D_8018D18C;
|
||||
D_8018D174 = D_8018D18C;
|
||||
D_8018D174 = D_8018D17C = D_8018D16C = D_8018D184 = D_8018D18C = -1;
|
||||
player = gPlayerOne;
|
||||
for (var_a0 = 0; var_a0 < NUM_PLAYERS; var_a0++) {
|
||||
D_8018D0F0[var_a0] = D_8018D050[var_a0] = -32.0f;
|
||||
D_8018CE10[var_a0].unk_04[0] = D_8018CE10[var_a0].unk_04[1] = D_8018CE10[var_a0].unk_04[2] = 0.0f;
|
||||
D_8018CF50[var_a0] = var_a0;
|
||||
D_8018CF28[var_a0] = player;
|
||||
for (i = 0; i < NUM_PLAYERS; i++) {
|
||||
D_8018D0F0[i] = D_8018D050[i] = -32.0f;
|
||||
D_8018CE10[i].unk_04[0] = D_8018CE10[i].unk_04[1] = D_8018CE10[i].unk_04[2] = 0.0f;
|
||||
D_8018CF50[i] = i;
|
||||
D_8018CF28[i] = player;
|
||||
player->unk_040 = -1;
|
||||
player++;
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_8006E9C0/func_8006FA94.s")
|
||||
#endif
|
||||
|
||||
void func_80070148(void) {
|
||||
s32 var_s0;
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ void load_mario_kart_64_logo(void);
|
||||
void init_item_window(s32);
|
||||
void func_8006EEE8(s32);
|
||||
void func_8006EF60(void);
|
||||
void course_mini_map_settings(void);
|
||||
void track_minimap_settings(void);
|
||||
void func_8006F824(s32);
|
||||
void func_8006F8CC(void);
|
||||
void func_8006FA94(void);
|
||||
|
||||
+50
-53
@@ -81,48 +81,47 @@ void func_800AF9E4(Vtx* arg0, s32 arg1, s32 arg2, s32 arg3, s16 arg4, s16 arg5,
|
||||
gSP1Triangle(gDisplayListHead++, 3, 2, 1, 0);
|
||||
}
|
||||
|
||||
void func_800AFC54(Vtx* arg0, s32 arg1, s32 arg2, s32 arg3, s16 arg4[3]);
|
||||
#ifdef NON_MATCHING
|
||||
// guess on Vtx type?
|
||||
void func_800AFC54(Vtx* arg0, s32 arg1, s32 arg2, s32 arg3, s16 arg4[3]) {
|
||||
Vtx *a1, *a2, *a3;
|
||||
s32 saved1, saved2, saved3;
|
||||
f32 res;
|
||||
s32 a, b, c, d, e, f;
|
||||
f32 f14, f16, f18;
|
||||
void func_800AFC54(Vtx* vtx, s32 a, s32 b, s32 c, Vec3s out) {
|
||||
s32 varA0;
|
||||
s32 varA2;
|
||||
s32 varA4;
|
||||
s32 varB0;
|
||||
s32 varB2;
|
||||
s32 varB4;
|
||||
s32 varC0;
|
||||
s32 varC2;
|
||||
s32 varC4;
|
||||
f32 dx;
|
||||
f32 dy;
|
||||
f32 dz;
|
||||
f32 length;
|
||||
|
||||
a1 = &arg0[arg1];
|
||||
a2 = &arg0[arg2];
|
||||
a3 = &arg0[arg3];
|
||||
varA0 = (vtx + a)->v.ob[0];
|
||||
varA2 = (vtx + a)->v.ob[1];
|
||||
varA4 = (vtx + a)->v.ob[2];
|
||||
|
||||
saved1 = a2->v.ob[0];
|
||||
saved2 = a2->v.ob[1];
|
||||
saved3 = a2->v.ob[2];
|
||||
varB0 = (vtx + b)->v.ob[0];
|
||||
varB2 = (vtx + b)->v.ob[1];
|
||||
varB4 = (vtx + b)->v.ob[2];
|
||||
|
||||
a = saved2 - a1->v.ob[1];
|
||||
e = saved3 - a1->v.ob[2];
|
||||
d = a3->v.ob[1] - saved2;
|
||||
b = a3->v.ob[2] - saved3;
|
||||
f = a3->v.ob[0] - saved1;
|
||||
c = saved1 - a1->v.ob[0];
|
||||
varC0 = (vtx + c)->v.ob[0];
|
||||
varC2 = (vtx + c)->v.ob[1];
|
||||
varC4 = (vtx + c)->v.ob[2];
|
||||
|
||||
f14 = ((a) * (b)) - ((e) * (d));
|
||||
f16 = ((e) * (f)) - ((c) * (b));
|
||||
f18 = ((c) * (d)) - ((a) * (f));
|
||||
dx = ((varB2 - varA2) * (varC4 - varB4)) - ((varB4 - varA4) * (varC2 - varB2));
|
||||
dy = ((varB4 - varA4) * (varC0 - varB0)) - ((varB0 - varA0) * (varC4 - varB4));
|
||||
dz = ((varB0 - varA0) * (varC2 - varB2)) - ((varB2 - varA2) * (varC0 - varB0));
|
||||
|
||||
length = sqrtf((dx * dx) + (dy * dy) + (dz * dz));
|
||||
|
||||
res = sqrtf(SQ(f14) + SQ(f16) + SQ(f18));
|
||||
|
||||
if (res < 0.001) {
|
||||
res = 0.001;
|
||||
if (length < 0.001) {
|
||||
length = 0.001;
|
||||
}
|
||||
|
||||
arg4[0] = f14 * (f32) (1.0 / res) * 120.0f;
|
||||
arg4[1] = f16 * (f32) (1.0 / res) * 120.0f;
|
||||
arg4[2] = f18 * (f32) (1.0 / res) * 120.0f;
|
||||
length = 1.0 / length;
|
||||
out[0] = (dx * length) * 120.0f;
|
||||
out[1] = (dy * length) * 120.0f;
|
||||
out[2] = (dz * length) * 120.0f;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800AFC54.s")
|
||||
#endif
|
||||
|
||||
void func_800AFE00(Vtx* arg0, Vec3s* arg1, s32 arg2, s32 arg3) {
|
||||
s32 idx1;
|
||||
@@ -163,32 +162,33 @@ void func_800AFF58(Vtx* arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// Credit to SpazzyLemon for the updated and better attempt
|
||||
void func_800B0004(void) {
|
||||
Vtx* vtxs;
|
||||
s32 res1, res2;
|
||||
UNUSED u32 pad[0x5];
|
||||
s32 i, j;
|
||||
|
||||
Vtx *vtxs;
|
||||
s32 res1;
|
||||
s32 res2;
|
||||
UNUSED u32 pad[0x4];
|
||||
s32 i;
|
||||
s32 j;
|
||||
s32 k;
|
||||
s16 idx;
|
||||
idx = 4;
|
||||
gSPLight(gDisplayListHead++, VIRTUAL_TO_PHYSICAL2(&D_800E8688), LIGHT_1);
|
||||
gSPLight(gDisplayListHead++, VIRTUAL_TO_PHYSICAL2(&D_800E8680), LIGHT_2);
|
||||
gSPNumLights(gDisplayListHead++, NUMLIGHTS_1);
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH);
|
||||
gDPSetCombineLERP(gDisplayListHead++, PRIMITIVE, 0, SHADE, 0, 0, 0, 0, SHADE, PRIMITIVE, 0, SHADE, 0, 0, 0, 0,
|
||||
SHADE);
|
||||
gDPSetCombineLERP(gDisplayListHead++, PRIMITIVE, 0, SHADE, 0, 0, 0, 0, SHADE, PRIMITIVE, 0, SHADE, 0, 0, 0, 0, SHADE);
|
||||
gSPClearGeometryMode(gDisplayListHead++, G_CULL_BACK);
|
||||
gSPSetGeometryMode(gDisplayListHead++, G_LIGHTING);
|
||||
|
||||
vtxs = D_8018EDB4 % 2 ? D_8018EDB8 : D_8018EDBC;
|
||||
vtxs = (D_8018EDB4 % 2) ? (D_8018EDB8) : (D_8018EDBC);
|
||||
D_8018EDB2 = 0x9C0;
|
||||
for (i = 0; i < 10; i++) {
|
||||
for (j = 0; j < 12; j++) {
|
||||
res1 = sins(D_8018EDB0 - (j * D_8018EDB2)) * 84.0f * j * 0.18f;
|
||||
res2 = sins(D_8018EDB0 - ((j + 1) * D_8018EDB2)) * 84.0f * (j + 1) * 0.18f;
|
||||
func_800AF9E4(&(&vtxs[j * 4])[i * 48], j, i, 84, res1, res2, (j * 84), 84);
|
||||
for (k = 0, j = 0; j < 12; j++, k += 84) {
|
||||
res1 = ((sins(D_8018EDB0 - (j * D_8018EDB2)) * 84.0f) * j) * 0.18f;
|
||||
res2 = ((sins(D_8018EDB0 - ((j + 1) * D_8018EDB2)) * 84.0f) * (j + 1)) * 0.18f;
|
||||
func_800AF9E4(&(&vtxs[j * idx])[i * 48], j, i, 84, res1, res2, k, 84);
|
||||
}
|
||||
}
|
||||
|
||||
func_800AFF58(vtxs);
|
||||
D_8018EDB0 += D_8018EDB2;
|
||||
++D_8018EDB4;
|
||||
@@ -196,6 +196,3 @@ void func_800B0004(void) {
|
||||
gSPNumLights(gDisplayListHead++, NUMLIGHTS_1);
|
||||
gSPClearGeometryMode(gDisplayListHead++, G_LIGHTING);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_800AF9B0/func_800B0004.s")
|
||||
#endif
|
||||
|
||||
@@ -6,5 +6,6 @@
|
||||
/* Function Prototypes */
|
||||
void func_800AF9B0(void);
|
||||
void func_800B0004(void);
|
||||
void func_800AFC54(Vtx* vtx, s32 a, s32 b, s32 c, Vec3s out);
|
||||
|
||||
#endif /* CODE_800AF9B0_H */
|
||||
|
||||
+116
-93
@@ -1817,61 +1817,67 @@ void update_player(s32 playerId) {
|
||||
GLOBAL_ASM("asm/non_matchings/cpu_vehicles_camera_path/update_player.s")
|
||||
#endif
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// Lots of work left to do, might be funtionally accurate?
|
||||
void func_8000B140(s32 playerId) {
|
||||
UNUSED f32 stackPadding0;
|
||||
UNUSED f32 stackPadding1;
|
||||
UNUSED f32 stackPadding2;
|
||||
UNUSED f32 stackPadding3;
|
||||
UNUSED f32 stackPadding4;
|
||||
UNUSED f32 stackPadding5;
|
||||
UNUSED f32 stackPadding6;
|
||||
UNUSED f32 stackPadding7;
|
||||
f32 temp_f0_2;
|
||||
s32 i;
|
||||
f32 temp_f12;
|
||||
f32 temp_f14;
|
||||
s32 j;
|
||||
f32 temp_f16;
|
||||
f32 temp_ft2;
|
||||
s16 currPathPoint;
|
||||
s16 temp_v1_2;
|
||||
f32 temp_f22;
|
||||
f32 temp_f2;
|
||||
f32 temp_f0_2;
|
||||
f32 var_f18;
|
||||
f32 var_f20;
|
||||
s32 pad[5];
|
||||
s16 spB0[8];
|
||||
UNUSED f32 stackPadding8;
|
||||
f32 stackPadding8;
|
||||
s16 sp9C[8];
|
||||
UNUSED f32 stackPadding9;
|
||||
f32 stackPadding9;
|
||||
f32 temp_f2;
|
||||
f32 sp74[8];
|
||||
s32 temp_a1_2;
|
||||
s16 temp_v1_2;
|
||||
s16 currPathPoint;
|
||||
s32 j;
|
||||
s32 i;
|
||||
Player* player;
|
||||
|
||||
player = &gPlayers[playerId];
|
||||
|
||||
if (player->effects & UNKNOWN_EFFECT_0x10)
|
||||
if (player->effects & UNKNOWN_EFFECT_0x10) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (D_801630E8[playerId] == 1)
|
||||
if (D_801630E8[playerId] == 1) {
|
||||
return;
|
||||
if (D_801630E8[playerId] == -1)
|
||||
}
|
||||
|
||||
if (D_801630E8[playerId] == -1) {
|
||||
return;
|
||||
if (gTrackPositionFactor[playerId] < -1.0f)
|
||||
}
|
||||
|
||||
if (gTrackPositionFactor[playerId] < -1.0f) {
|
||||
return;
|
||||
if (gTrackPositionFactor[playerId] > 1.0f)
|
||||
}
|
||||
|
||||
if (gTrackPositionFactor[playerId] > 1.0f) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Exclude heavyweights
|
||||
if (player->characterId == WARIO)
|
||||
if (player->characterId == WARIO) {
|
||||
return;
|
||||
if (player->characterId == BOWSER)
|
||||
}
|
||||
|
||||
if (player->characterId == BOWSER) {
|
||||
return;
|
||||
if (player->characterId == DK)
|
||||
}
|
||||
|
||||
if (player->characterId == DK) {
|
||||
return;
|
||||
// Skip if player has starman
|
||||
if (player->effects & STAR_EFFECT)
|
||||
}
|
||||
|
||||
// Skip if player has star
|
||||
if (player->effects & STAR_EFFECT) {
|
||||
return;
|
||||
}
|
||||
|
||||
currPathPoint = gNearestPathPointByPlayerId[playerId];
|
||||
temp_f22 = (player->speed / 18.0f) * 216.0f;
|
||||
@@ -1879,6 +1885,7 @@ void func_8000B140(s32 playerId) {
|
||||
sp9C[i] = -1;
|
||||
spB0[i] = 0x03E8;
|
||||
}
|
||||
|
||||
if (D_80163010[playerId] > 0) {
|
||||
D_80163010[playerId]--;
|
||||
if (D_80163010[playerId] <= 0) {
|
||||
@@ -1886,76 +1893,92 @@ void func_8000B140(s32 playerId) {
|
||||
}
|
||||
}
|
||||
j = 0;
|
||||
for (i = 0; (j < 2) && (i < 8); i++) {
|
||||
if (i == playerId)
|
||||
continue;
|
||||
player = &gPlayers[i];
|
||||
if (!(player->type & PLAYER_EXISTS))
|
||||
continue;
|
||||
temp_f2 = (temp_f22) -5.0f;
|
||||
temp_v1_2 = gNearestPathPointByPlayerId[i];
|
||||
temp_f0_2 = (player->speed / 18.0f) * 216.0f;
|
||||
if (temp_f0_2 < temp_f2) {
|
||||
if (is_path_point_in_range(temp_v1_2, currPathPoint, 0U, 0x0014U, gSelectedPathCount) > 0) {
|
||||
temp_a1_2 = temp_v1_2 - currPathPoint;
|
||||
sp9C[j] = i;
|
||||
if (temp_a1_2 > 0) {
|
||||
spB0[j] = temp_a1_2;
|
||||
} else {
|
||||
spB0[j] = (temp_v1_2 + gSelectedPathCount) - currPathPoint;
|
||||
i = 0;
|
||||
while (i < 8) {
|
||||
if (i != playerId) {
|
||||
player = &gPlayers[i];
|
||||
if ((player->type & PLAYER_EXISTS)) {
|
||||
temp_v1_2 = gNearestPathPointByPlayerId[i];
|
||||
temp_f0_2 = (player->speed / 18.0f) * 216.0f;
|
||||
temp_f2 = temp_f22 - 5.0f;
|
||||
if (temp_f0_2 < temp_f2) {
|
||||
if (is_path_point_in_range(temp_v1_2, currPathPoint, 0, 0x0014U, gSelectedPathCount) > 0) {
|
||||
temp_a1_2 = temp_v1_2 - currPathPoint;
|
||||
sp9C[j] = i;
|
||||
if (temp_a1_2 > 0) {
|
||||
spB0[j] = temp_a1_2;
|
||||
} else {
|
||||
spB0[j] = (temp_v1_2 + gSelectedPathCount) - currPathPoint;
|
||||
}
|
||||
sp74[j] = temp_f2 - temp_f0_2;
|
||||
j++;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
i++;
|
||||
if (j >= 2) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (j == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
var_f18 = 1.0f;
|
||||
var_f20 = -1.0f;
|
||||
for (i = 0; i < j; i++) {
|
||||
temp_f2 = gTrackPositionFactor[sp9C[i]];
|
||||
if ((temp_f2 > (-1.0f)) && (temp_f2 < 1.0f)) {
|
||||
|
||||
temp_f12 = temp_ft2 = ((0.2f * (20.0f / (spB0[i] + 20.0f))) * ((sp74[i]) + 10.0f)) / 20.0f;
|
||||
|
||||
if ((var_f18 == 1.0f) && (var_f20 == (-1.0f))) {
|
||||
var_f18 = temp_f2 - temp_f12;
|
||||
var_f20 = temp_f2 + temp_f12;
|
||||
} else {
|
||||
temp_f14 = temp_f2 - temp_f12;
|
||||
temp_f16 = temp_f2 + temp_f12;
|
||||
if ((temp_f14 < var_f18) && (temp_f16 > var_f18)) {
|
||||
var_f18 = temp_f14;
|
||||
}
|
||||
if ((temp_f16 > var_f20) && (temp_f14 < var_f20)) {
|
||||
var_f20 = temp_f16;
|
||||
}
|
||||
sp74[j] = temp_f2 - temp_f0_2;
|
||||
j += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (j != 0) {
|
||||
var_f18 = 1.0f;
|
||||
var_f20 = -1.0f;
|
||||
for (i = 0; i < j; i++) {
|
||||
temp_f2 = gTrackPositionFactor[sp9C[i]];
|
||||
if ((temp_f2 > -1.0f) && (temp_f2 < 1.0f)) {
|
||||
temp_f12 = sp74[i] + 10.0f;
|
||||
temp_f12 *= 0.2f * (20.0f / (spB0[i] + 20.0f));
|
||||
temp_f12 /= 20.0f;
|
||||
if ((var_f18 == 1.0f) && (var_f20 == -1.0f)) {
|
||||
var_f18 = temp_f2 - temp_f12;
|
||||
var_f20 = temp_f2 + temp_f12;
|
||||
} else {
|
||||
temp_f14 = temp_f2 - temp_f12;
|
||||
temp_f16 = temp_f2 + temp_f12;
|
||||
if ((temp_f14 < 1.0f) && (temp_f16 > 1.0f)) {
|
||||
var_f18 = temp_f14;
|
||||
}
|
||||
if ((temp_f16 > -1.0f) && (temp_f14 < -1.0f)) {
|
||||
var_f20 = temp_f16;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!(var_f20 < var_f18) && !(gTrackPositionFactor[playerId] < var_f18) &&
|
||||
!(var_f20 < gTrackPositionFactor[playerId])) {
|
||||
if (var_f20 > 1.0f) {
|
||||
var_f20 = 1.0f;
|
||||
}
|
||||
if (var_f18 < -1.0f) {
|
||||
var_f18 = -1.0f;
|
||||
}
|
||||
if ((var_f18 + 1.0f) < (1.0f - var_f20)) {
|
||||
D_80163010[playerId] = 0x003C;
|
||||
D_80162FF8[playerId] = 1;
|
||||
D_80163090[playerId] = var_f20;
|
||||
} else {
|
||||
D_80163010[playerId] = 0x003C;
|
||||
D_80162FF8[playerId] = 2;
|
||||
D_80163090[playerId] = var_f18;
|
||||
}
|
||||
}
|
||||
|
||||
if (var_f20 < var_f18) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (gTrackPositionFactor[playerId] < var_f18) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (var_f20 < gTrackPositionFactor[playerId]) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (var_f20 > 1.0f) {
|
||||
var_f20 = 1.0f;
|
||||
}
|
||||
if (var_f18 < (-1.0f)) {
|
||||
var_f18 = -1.0f;
|
||||
}
|
||||
if ((var_f18 + 1.0f) < (1.0f - var_f20)) {
|
||||
D_80163010[playerId] = 0x003C;
|
||||
D_80162FF8[playerId] = 1;
|
||||
D_80163090[playerId] = var_f20;
|
||||
} else {
|
||||
D_80163010[playerId] = 0x003C;
|
||||
D_80162FF8[playerId] = 2;
|
||||
D_80163090[playerId] = var_f18;
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/cpu_vehicles_camera_path/func_8000B140.s")
|
||||
#endif
|
||||
|
||||
// utils track position
|
||||
|
||||
|
||||
+12
-12
@@ -301,14 +301,14 @@ ThwompSpawn gThomwpSpawns150CC[] = {
|
||||
{ 0x0596, 0xf92f, 0x0006, 0x0000 }, { 0x082a, 0xf9f2, 0x0005, 0x0000 }, { 0x073a, 0xf9f2, 0x0005, 0x0001 },
|
||||
};
|
||||
|
||||
f32 D_800E594C[][2] = {
|
||||
{ -8.0, 8.0 },
|
||||
{ 8.0, 8.0 },
|
||||
{ 0.0, 0.0 },
|
||||
{ 8.0, -8.0 },
|
||||
{ -8.0, -8.0 },
|
||||
f32 D_800E594C[] = {
|
||||
-8.0, 8.0,
|
||||
8.0, 8.0,
|
||||
0.0, 0.0,
|
||||
8.0, -8.0,
|
||||
-8.0, -8.0,
|
||||
// This feels super fake, but it matches
|
||||
{ -0.0, 0.0 },
|
||||
-0.0, 0.0,
|
||||
};
|
||||
|
||||
s16 D_800E597C[] = { 0x0000, 0x0000, 0x4000, 0x8000, 0x8000, 0xc000 };
|
||||
@@ -445,11 +445,11 @@ s8 D_800E5DB4[] = {
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
YVFlagPoleSpawn D_800E5DF4[] = {
|
||||
{ { 0xfc7a, 0x0046, 0xfa82 }, 0x3800 },
|
||||
{ { 0xfc4c, 0x0046, 0xfa03 }, 0x3800 },
|
||||
{ { 0xf786, 0x0000, 0x02d3 }, 0x0400 },
|
||||
{ { 0xf76f, 0x0000, 0x02f9 }, 0x0400 },
|
||||
s16 D_800E5DF4[] = {
|
||||
0xfc7a, 0x0046, 0xfa82, 0x3800,
|
||||
0xfc4c, 0x0046, 0xfa03, 0x3800,
|
||||
0xf786, 0x0000, 0x02d3, 0x0400,
|
||||
0xf76f, 0x0000, 0x02f9, 0x0400,
|
||||
};
|
||||
|
||||
HegdehogSpawn gHedgehogSpawns[] = {
|
||||
|
||||
@@ -35,7 +35,7 @@ extern s16 D_800E57F8[];
|
||||
extern ThwompSpawn gThomwpSpawns50CC[];
|
||||
extern ThwompSpawn gThwompSpawns100CCExtra[];
|
||||
extern ThwompSpawn gThomwpSpawns150CC[];
|
||||
extern f32 D_800E594C[][2];
|
||||
extern f32 D_800E594C[];
|
||||
extern u64 D_800E5974;
|
||||
extern s16 D_800E597C[];
|
||||
extern SplineData D_800E5988;
|
||||
@@ -48,7 +48,7 @@ extern SplineData D_800E5D78;
|
||||
extern SplineData* D_800E5D9C[];
|
||||
extern SplineData* D_800E5DB0;
|
||||
extern s8 D_800E5DB4[];
|
||||
extern YVFlagPoleSpawn D_800E5DF4[];
|
||||
extern s16 D_800E5DF4[];
|
||||
extern HegdehogSpawn gHedgehogSpawns[];
|
||||
extern Vec3s gHedgehogPatrolPoints[];
|
||||
extern SnowmanSpawn gSnowmanSpawns[];
|
||||
|
||||
+21
-26
@@ -1764,54 +1764,49 @@ void func_8004C628(s32 arg0, s32 arg1, u32 arg2, u32 arg3, u8* texture) {
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EB8);
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// https://decomp.me/scratch/TqXqn
|
||||
// There's a weird fakematch concerning `xPos`, don't know that to make of. Can't quite get it over the finish line
|
||||
// though
|
||||
void render_texture_tile_rgba32_block(s16 x, s16 y, u8* texture, u32 width, u32 height) {
|
||||
s32 texSizeLess;
|
||||
s32 i;
|
||||
s32 yPos;
|
||||
s32 xPos;
|
||||
s32 texBlockCount;
|
||||
s32 centerY;
|
||||
s32 centerX;
|
||||
s32 numTextureBlocks;
|
||||
u32 texSize;
|
||||
s32 heightDiv;
|
||||
s32 realCount;
|
||||
s32 size;
|
||||
u8* textureCopy;
|
||||
|
||||
xPos = x - (width / 2);
|
||||
yPos = y - (height / 2);
|
||||
centerX = x - (width / 2);
|
||||
centerY = y - (height / 2);
|
||||
textureCopy = texture;
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EF8);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
texSize = width * height * 4;
|
||||
texBlockCount = texSize / 4096;
|
||||
numTextureBlocks = texSize / 4096;
|
||||
if (texSize % 4096) {
|
||||
texBlockCount++;
|
||||
numTextureBlocks++;
|
||||
}
|
||||
heightDiv = height / texBlockCount;
|
||||
realCount = texBlockCount;
|
||||
for (i = 0; i < realCount; i++) {
|
||||
heightDiv = height / numTextureBlocks;
|
||||
size = numTextureBlocks;
|
||||
for (i = 0; i < size; i++) {
|
||||
load_texture_tile_rgba32_nomirror(textureCopy, width, heightDiv);
|
||||
render_texture_rectangle_wrap(xPos, yPos, width, heightDiv, 1);
|
||||
texSizeLess = texSize - (width * heightDiv * 4);
|
||||
render_texture_rectangle_wrap(centerX, centerY, width, heightDiv, 1);
|
||||
textureCopy += (width * heightDiv * 4);
|
||||
texSizeLess = texSize - (width * heightDiv * 4);
|
||||
if (texSizeLess < 0) {
|
||||
heightDiv = texSize / width;
|
||||
} else {
|
||||
texSize = texSizeLess;
|
||||
texSize -= (width * heightDiv * 4);
|
||||
}
|
||||
// Weird fakematch that is a HUGE improvement
|
||||
xPos += yPos * 0;
|
||||
yPos += heightDiv;
|
||||
}
|
||||
|
||||
|
||||
centerY += heightDiv;
|
||||
}
|
||||
|
||||
gSPDisplayList(gDisplayListHead++, D_0D007EB8);
|
||||
// FAKE
|
||||
centerX++;
|
||||
centerX--;
|
||||
}
|
||||
#else
|
||||
void render_texture_tile_rgba32_block(s16 x, s16 y, u8* texture, u32 width, u32 height);
|
||||
GLOBAL_ASM("asm/non_matchings/render_objects/render_texture_tile_rgba32_block.s")
|
||||
#endif
|
||||
|
||||
void render_game_logo(s16 x, s16 y) {
|
||||
render_texture_tile_rgba32_block(x, y, gGameLogoAddress, 256, 128);
|
||||
|
||||
@@ -208,7 +208,7 @@ void func_8004BB34(void);
|
||||
void func_8004BB3C(s32, s32, s32, s32, f32);
|
||||
void func_8004BD14(s32, s32, u32, u32, s32, u8*, u8*);
|
||||
|
||||
void func_8004C6FC(s16, s16, u8*, u32, u32);
|
||||
void render_texture_tile_rgba32_block(s16 x, s16 y, u8* texture, u32 width, u32 height);
|
||||
|
||||
void func_8004C024(s16, s16, s16, u16, u16, u16, u16);
|
||||
void func_8004C148(s16, s16, s16, u16, u16, u16, u16);
|
||||
|
||||
+10
-18
@@ -472,7 +472,6 @@ void func_800B559C(s32 arg0) {
|
||||
bestRecord->bestThreelaps[0], 0x38);
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
/**
|
||||
* This one is weird. Its some type of checksum calculator, seemingly for the
|
||||
* best time trial records. But the number of bytes it operates over is
|
||||
@@ -482,26 +481,19 @@ void func_800B559C(s32 arg0) {
|
||||
*
|
||||
* But only unknown bytes 7 and 8 ever get set, so why the extra 3, and why in chunks of 17?
|
||||
**/
|
||||
s32 func_800B578C(s32 arg0) {
|
||||
u8* var_a2;
|
||||
s32 var_a0;
|
||||
s32 var_v0;
|
||||
s32 var_v1;
|
||||
var_a2 = &gSaveData.onlyBestTimeTrialRecords[arg0].bestThreelaps[0][0];
|
||||
var_v1 = 0;
|
||||
for (var_v0 = 0; var_v0 < 3;) {
|
||||
++var_v0;
|
||||
for (var_a0 = 0; var_a0 != 0x11; var_a0++) {
|
||||
if (var_a0) {}
|
||||
var_v1 += (((*var_a2++) + 1) * var_v0) + var_a0;
|
||||
u8 func_800B578C(s32 arg0) {
|
||||
u8* times = (u8*)&gSaveData.onlyBestTimeTrialRecords[arg0];
|
||||
s32 checksum = 0;
|
||||
s32 i;
|
||||
s32 j;
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
for (j = 0; j < 0x11; j++) {
|
||||
checksum += (times[i * 0x11 + j] + 1) * (i + 1) + j;
|
||||
}
|
||||
var_a2 += 0x11;
|
||||
}
|
||||
return (var_v1 % 256) & 0xFF;
|
||||
return (checksum % 256);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/save/func_800B578C.s")
|
||||
#endif
|
||||
|
||||
s32 func_800B5888(s32 arg0) {
|
||||
s32 tmp = gSaveData.onlyBestTimeTrialRecords[arg0].unknownBytes[6] + 90;
|
||||
|
||||
+1
-1
@@ -59,7 +59,7 @@ s32 is_cc_mode_complete(s32);
|
||||
s32 has_unlocked_extra_mode(void);
|
||||
s32 has_completed_extra_mode(void);
|
||||
void func_800B559C(s32);
|
||||
s32 func_800B578C(s32);
|
||||
u8 func_800B578C(s32);
|
||||
s32 func_800B5888(s32);
|
||||
s32 func_800B58C4(s32);
|
||||
void update_save_data_backup(void);
|
||||
|
||||
+8
-25
@@ -6035,31 +6035,23 @@ void func_80080DE4(s32 arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// https://decomp.me/scratch/YMJDJ
|
||||
// No idea what the problem is
|
||||
void func_80080E8C(s32 objectIndex1, s32 objectIndex2, s32 arg2) {
|
||||
u16 anAngle;
|
||||
f32 thing0;
|
||||
f32 thing1;
|
||||
f32* temp_v1;
|
||||
f32 thing0;
|
||||
|
||||
init_object(objectIndex1, arg2);
|
||||
temp_v1 = D_800E594C[arg2];
|
||||
gObjectList[objectIndex1].unk_0D5 = 2;
|
||||
anAngle = gObjectList[objectIndex2].direction_angle[1];
|
||||
thing1 = func_800416D8(temp_v1[1], temp_v1[0], anAngle);
|
||||
thing0 = func_80041724(temp_v1[1], temp_v1[0], anAngle);
|
||||
thing1 = func_800416D8(D_800E594C[arg2 * 2 + 1], D_800E594C[arg2 * 2 + 0], anAngle);
|
||||
thing0 = func_80041724(D_800E594C[arg2 * 2 + 1], D_800E594C[arg2 * 2 + 0], anAngle);
|
||||
gObjectList[objectIndex1].origin_pos[0] = gObjectList[objectIndex2].pos[0] + thing0;
|
||||
gObjectList[objectIndex1].origin_pos[1] = gObjectList[objectIndex2].surfaceHeight - 9.0;
|
||||
gObjectList[objectIndex1].origin_pos[2] = gObjectList[objectIndex2].pos[2] + thing1;
|
||||
anAngle = D_800E597C[arg2] + gObjectList[objectIndex2].direction_angle[1];
|
||||
anAngle = gObjectList[objectIndex2].direction_angle[1] + D_800E597C[arg2];
|
||||
gObjectList[objectIndex1].velocity[0] = sins(anAngle) * 0.6;
|
||||
gObjectList[objectIndex1].velocity[2] = coss(anAngle) * 0.6;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/update_objects/func_80080E8C.s")
|
||||
#endif
|
||||
|
||||
void func_80080FEC(s32 arg0) {
|
||||
s32 objectIndex;
|
||||
@@ -6752,24 +6744,15 @@ void update_crabs(void) {
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// https://decomp.me/scratch/PYAg4
|
||||
// Stack issue caused by the `test` variable, but removing it causes much, much larger differences
|
||||
void func_80082F1C(s32 objectIndex, s32 arg1) {
|
||||
YVFlagPoleSpawn* test;
|
||||
gObjectList[objectIndex].model = (Gfx*) d_course_yoshi_valley_unk5;
|
||||
gObjectList[objectIndex].vertex = (Vtx*) d_course_yoshi_valley_unk4;
|
||||
gObjectList[objectIndex].model = (Gfx*)d_course_yoshi_valley_unk5;
|
||||
gObjectList[objectIndex].vertex = (Vtx*)d_course_yoshi_valley_unk4;
|
||||
gObjectList[objectIndex].sizeScaling = 0.027f;
|
||||
if (test->rot && test->rot) {}
|
||||
test = &D_800E5DF4[arg1];
|
||||
object_next_state(objectIndex);
|
||||
set_obj_origin_pos(objectIndex, test->pos[0] * xOrientation, test->pos[1], test->pos[2]);
|
||||
set_obj_origin_pos(objectIndex, D_800E5DF4[arg1 * 4 + 0] * xOrientation, D_800E5DF4[arg1 * 4 + 1], D_800E5DF4[arg1 * 4 + 2]);
|
||||
set_obj_origin_offset(objectIndex, 0.0f, 0.0f, 0.0f);
|
||||
set_obj_direction_angle(objectIndex, 0U, test->rot, 0U);
|
||||
set_obj_direction_angle(objectIndex, 0U, D_800E5DF4[arg1 * 4 + 3], 0U);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/update_objects/func_80082F1C.s")
|
||||
#endif
|
||||
|
||||
void func_80083018(s32 objectIndex, s32 arg1) {
|
||||
switch (gObjectList[objectIndex].state) {
|
||||
|
||||
Reference in New Issue
Block a user