1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

ovl_En_Goroiwa OK (#376)

* merge upstream

* Merge upstream

* Add block comment to c

* EnGoroiwa_Init

* Remove casts in EnGoroiwa_Init

* Matched named functions

* Add one prototype

* func_80A4BD04

* func_80A4BCA0

* func_80A4BD70 and fix incompatible pointer

* func_80A4BD8C and func_80A4BE54

* Remove forward declaration

* Order variable by address

* Cleanup warnings

* func_80A4C188

* Remove func_80A4C188 forward declaration

* Progress

* Rename unk_1CE to waypoint

* func_80A4C264

* func_80A4D5E0

* func_80A4C27C

* Separate necessary forward declarations from temporary

* func_80A4BE10

* func_80A4C080

* func_80A4C134 and func_80A4C164

* func_80A4D074

* Work on some (nonmatching)

* func_80A4D944

* func_80A4D9DC

* Progress

* func_80A4DB90 and func_80A4DC00

* func_80A4D8CC

* func_80A4CA50

* func_80A4C6C8

* work on func_80A4CED8

* Work on func_80A4CED8

* func_80A4CED8

* Use temp to avoid unused error

* Clarify comment

* Work on func_80A4C3A4

* func_80A4C3A4

* Clarify comment better

* func_80A4C594

* Angles

* Improve regalloc

* func_80A4BF28

* Cleanup point access

* Work on func_80A4C814

* func_80A4C814

* Use *=

* Work on func_80A4CB78

* Work on func_80A4D0FC

* Work on func_80A4CB78

* More on func_80A4CB78

* Implement dubious permuter suggestion

* Make janky hack less janky

* Update issue comment

* Move ptr func_80A4CB78

* func_80A4CB78

* Cleanup func_80A4CB78

* Various cleanup

* Add undefined sym

* Work on func_80A4D0FC

* Work more on func_80A4D0FC

* Work on func_80A4D624

* func_80A4D0FC

* Work on func_80A4D624

* Fix stack

* Wrap in NON_MATCHING ifdef to remember which function is not done

* Collapse goto

* Use -- for unk_1C4

* Collapse else if

* Add translation for 'Player ぶっ飛ばし'

* func_80A4D624

* Migrate data section

* Clang format

* Actually add unused note

* Name timers accordingly

* Remove & from sInitChain

* Give timer descriptive names

* Rename idleTimer to waitTimer

* Rename to sWaitDurations

* Name effect data

* Add s prefix (oops)

* Move some data into functions

* Rename params for func_80029E8C

* Unify whitespace for bool returns

* Name colliderHeightOffset

* Name duplicate of colliderHeightOffset and clang format everything

* Reorder vector assignments

* Rename params to pathIdx

* Rename temp to yawDiff

* Add 'f's because floating point

* Name a lot of stuff

* Name posDiff

* Nuke the bool

* Remove unnecessary return

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Remove useless forward declarations and use list[0]

* Clang format again

* Use switch statement

* Use hex for normalizing angle

* Use hex because angle

* Small fixes

* Small fixes

* Move function arrays out of function

* Correct colliderItems

* Don't separate static vars from others

* Clang format

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
This commit is contained in:
Sirius902 2020-09-28 03:03:39 -07:00 committed by GitHub
parent 83fc21fea6
commit 00fb26a441
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
44 changed files with 695 additions and 2546 deletions

View File

@ -1,11 +0,0 @@
glabel EnGoroiwa_Destroy
/* 01918 80A4D5B8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0191C 80A4D5BC 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 01920 80A4D5C0 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01924 80A4D5C4 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 01928 80A4D5C8 0C016F32 */ jal Collider_DestroyJntSph
/* 0192C 80A4D5CC 24E50150 */ addiu $a1, $a3, 0x0150 ## $a1 = 00000150
/* 01930 80A4D5D0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01934 80A4D5D4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01938 80A4D5D8 03E00008 */ jr $ra
/* 0193C 80A4D5DC 00000000 */ nop

View File

@ -1,16 +0,0 @@
glabel EnGoroiwa_Draw
/* 02188 80A4DE28 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0218C 80A4DE2C AFA40018 */ sw $a0, 0x0018($sp)
/* 02190 80A4DE30 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 02194 80A4DE34 AFBF0014 */ sw $ra, 0x0014($sp)
/* 02198 80A4DE38 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 0219C 80A4DE3C 0C00D498 */ jal Gfx_DrawDListOpa
/* 021A0 80A4DE40 24A506B0 */ addiu $a1, $a1, 0x06B0 ## $a1 = 060006B0
/* 021A4 80A4DE44 8FBF0014 */ lw $ra, 0x0014($sp)
/* 021A8 80A4DE48 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 021AC 80A4DE4C 03E00008 */ jr $ra
/* 021B0 80A4DE50 00000000 */ nop
/* 021B4 80A4DE54 00000000 */ nop
/* 021B8 80A4DE58 00000000 */ nop
/* 021BC 80A4DE5C 00000000 */ nop

View File

@ -1,137 +0,0 @@
.rdata
glabel D_80A4DF88
.asciz " : arg_data (%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_80A4DFC0
.asciz "../z_en_gr.c"
.balign 4
glabel D_80A4DFD0
.asciz " : (%s %d)\n"
.balign 4
glabel D_80A4DFFC
.asciz "../z_en_gr.c"
.balign 4
glabel D_80A4E00C
.asciz "()(arg 0x%04x)(rail %d)(end %d)(bgc %d)(hit %d)\n"
.balign 4
.text
glabel EnGoroiwa_Init
/* 01778 80A4D418 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 0177C 80A4D41C AFB20028 */ sw $s2, 0x0028($sp)
/* 01780 80A4D420 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
/* 01784 80A4D424 AFBF002C */ sw $ra, 0x002C($sp)
/* 01788 80A4D428 AFB10024 */ sw $s1, 0x0024($sp)
/* 0178C 80A4D42C 3C0580A5 */ lui $a1, %hi(D_80A4DEF8) ## $a1 = 80A50000
/* 01790 80A4D430 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 01794 80A4D434 AFB00020 */ sw $s0, 0x0020($sp)
/* 01798 80A4D438 0C01E037 */ jal Actor_ProcessInitChain
/* 0179C 80A4D43C 24A5DEF8 */ addiu $a1, $a1, %lo(D_80A4DEF8) ## $a1 = 80A4DEF8
/* 017A0 80A4D440 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 017A4 80A4D444 0C292F41 */ jal func_80A4BD04
/* 017A8 80A4D448 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 017AC 80A4D44C 8630001C */ lh $s0, 0x001C($s1) ## 0000001C
/* 017B0 80A4D450 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
/* 017B4 80A4D454 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 017B8 80A4D458 320200FF */ andi $v0, $s0, 0x00FF ## $v0 = 00000000
/* 017BC 80A4D45C 1441000C */ bne $v0, $at, .L80A4D490
/* 017C0 80A4D460 01D27021 */ addu $t6, $t6, $s2
/* 017C4 80A4D464 3C0480A5 */ lui $a0, %hi(D_80A4DF88) ## $a0 = 80A50000
/* 017C8 80A4D468 3C0580A5 */ lui $a1, %hi(D_80A4DFC0) ## $a1 = 80A50000
/* 017CC 80A4D46C 24A5DFC0 */ addiu $a1, $a1, %lo(D_80A4DFC0) ## $a1 = 80A4DFC0
/* 017D0 80A4D470 2484DF88 */ addiu $a0, $a0, %lo(D_80A4DF88) ## $a0 = 80A4DF88
/* 017D4 80A4D474 24060409 */ addiu $a2, $zero, 0x0409 ## $a2 = 00000409
/* 017D8 80A4D478 0C00084C */ jal osSyncPrintf
/* 017DC 80A4D47C 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
/* 017E0 80A4D480 0C00B55C */ jal Actor_Kill
/* 017E4 80A4D484 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 017E8 80A4D488 10000046 */ beq $zero, $zero, .L80A4D5A4
/* 017EC 80A4D48C 8FBF002C */ lw $ra, 0x002C($sp)
.L80A4D490:
/* 017F0 80A4D490 8DCE1E08 */ lw $t6, 0x1E08($t6) ## 00001E08
/* 017F4 80A4D494 000278C0 */ sll $t7, $v0, 3
/* 017F8 80A4D498 26240098 */ addiu $a0, $s1, 0x0098 ## $a0 = 00000098
/* 017FC 80A4D49C 01CFC021 */ addu $t8, $t6, $t7
/* 01800 80A4D4A0 93190000 */ lbu $t9, 0x0000($t8) ## 00000000
/* 01804 80A4D4A4 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01808 80A4D4A8 3C0680A5 */ lui $a2, %hi(D_80A4DEB4) ## $a2 = 80A50000
/* 0180C 80A4D4AC 2B210002 */ slti $at, $t9, 0x0002
/* 01810 80A4D4B0 1020000B */ beq $at, $zero, .L80A4D4E0
/* 01814 80A4D4B4 00000000 */ nop
/* 01818 80A4D4B8 3C0480A5 */ lui $a0, %hi(D_80A4DFD0) ## $a0 = 80A50000
/* 0181C 80A4D4BC 3C0580A5 */ lui $a1, %hi(D_80A4DFFC) ## $a1 = 80A50000
/* 01820 80A4D4C0 24A5DFFC */ addiu $a1, $a1, %lo(D_80A4DFFC) ## $a1 = 80A4DFFC
/* 01824 80A4D4C4 2484DFD0 */ addiu $a0, $a0, %lo(D_80A4DFD0) ## $a0 = 80A4DFD0
/* 01828 80A4D4C8 0C00084C */ jal osSyncPrintf
/* 0182C 80A4D4CC 24060413 */ addiu $a2, $zero, 0x0413 ## $a2 = 00000413
/* 01830 80A4D4D0 0C00B55C */ jal Actor_Kill
/* 01834 80A4D4D4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01838 80A4D4D8 10000032 */ beq $zero, $zero, .L80A4D5A4
/* 0183C 80A4D4DC 8FBF002C */ lw $ra, 0x002C($sp)
.L80A4D4E0:
/* 01840 80A4D4E0 0C0187B5 */ jal func_80061ED4
/* 01844 80A4D4E4 24C6DEB4 */ addiu $a2, $a2, %lo(D_80A4DEB4) ## $a2 = FFFFDEB4
/* 01848 80A4D4E8 8628001C */ lh $t0, 0x001C($s1) ## 0000001C
/* 0184C 80A4D4EC 3C0580A5 */ lui $a1, %hi(D_80A4DF10) ## $a1 = 80A50000
/* 01850 80A4D4F0 3C068003 */ lui $a2, %hi(ActorShadow_DrawFunc_Circle)
/* 01854 80A4D4F4 00084A83 */ sra $t1, $t0, 10
/* 01858 80A4D4F8 312A0001 */ andi $t2, $t1, 0x0001 ## $t2 = 00000000
/* 0185C 80A4D4FC 000A5880 */ sll $t3, $t2, 2
/* 01860 80A4D500 00AB2821 */ addu $a1, $a1, $t3
/* 01864 80A4D504 3C074116 */ lui $a3, 0x4116 ## $a3 = 41160000
/* 01868 80A4D508 34E76666 */ ori $a3, $a3, 0x6666 ## $a3 = 41166666
/* 0186C 80A4D50C 8CA5DF10 */ lw $a1, %lo(D_80A4DF10)($a1)
/* 01870 80A4D510 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawFunc_Circle)
/* 01874 80A4D514 0C00AC78 */ jal ActorShape_Init
/* 01878 80A4D518 262400B4 */ addiu $a0, $s1, 0x00B4 ## $a0 = 000000B4
/* 0187C 80A4D51C 240C00C8 */ addiu $t4, $zero, 0x00C8 ## $t4 = 000000C8
/* 01880 80A4D520 A22C00C8 */ sb $t4, 0x00C8($s1) ## 000000C8
/* 01884 80A4D524 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01888 80A4D528 0C292F84 */ jal func_80A4BE10
/* 0188C 80A4D52C 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 01890 80A4D530 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01894 80A4D534 0C293062 */ jal func_80A4C188
/* 01898 80A4D538 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 0189C 80A4D53C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 018A0 80A4D540 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 018A4 80A4D544 0C293071 */ jal func_80A4C1C4
/* 018A8 80A4D548 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 018AC 80A4D54C 0C293099 */ jal func_80A4C264
/* 018B0 80A4D550 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 018B4 80A4D554 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 018B8 80A4D558 0C292F95 */ jal func_80A4BE54
/* 018BC 80A4D55C 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 018C0 80A4D560 0C293578 */ jal func_80A4D5E0
/* 018C4 80A4D564 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 018C8 80A4D568 8630001C */ lh $s0, 0x001C($s1) ## 0000001C
/* 018CC 80A4D56C 3C0480A5 */ lui $a0, %hi(D_80A4E00C) ## $a0 = 80A50000
/* 018D0 80A4D570 2484E00C */ addiu $a0, $a0, %lo(D_80A4E00C) ## $a0 = 80A4E00C
/* 018D4 80A4D574 00106A83 */ sra $t5, $s0, 10
/* 018D8 80A4D578 31AE0001 */ andi $t6, $t5, 0x0001 ## $t6 = 00000000
/* 018DC 80A4D57C AFAE0010 */ sw $t6, 0x0010($sp)
/* 018E0 80A4D580 862F0018 */ lh $t7, 0x0018($s1) ## 00000018
/* 018E4 80A4D584 00103A03 */ sra $a3, $s0, 8
/* 018E8 80A4D588 30E70003 */ andi $a3, $a3, 0x0003 ## $a3 = 00000000
/* 018EC 80A4D58C 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000000
/* 018F0 80A4D590 AFB80014 */ sw $t8, 0x0014($sp)
/* 018F4 80A4D594 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 018F8 80A4D598 0C00084C */ jal osSyncPrintf
/* 018FC 80A4D59C 320600FF */ andi $a2, $s0, 0x00FF ## $a2 = 00000000
/* 01900 80A4D5A0 8FBF002C */ lw $ra, 0x002C($sp)
.L80A4D5A4:
/* 01904 80A4D5A4 8FB00020 */ lw $s0, 0x0020($sp)
/* 01908 80A4D5A8 8FB10024 */ lw $s1, 0x0024($sp)
/* 0190C 80A4D5AC 8FB20028 */ lw $s2, 0x0028($sp)
/* 01910 80A4D5B0 03E00008 */ jr $ra
/* 01914 80A4D5B4 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000

View File

@ -1,99 +0,0 @@
glabel EnGoroiwa_Update
/* 02028 80A4DCC8 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 0202C 80A4DCCC AFBF0024 */ sw $ra, 0x0024($sp)
/* 02030 80A4DCD0 AFB10020 */ sw $s1, 0x0020($sp)
/* 02034 80A4DCD4 AFB0001C */ sw $s0, 0x001C($sp)
/* 02038 80A4DCD8 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44
/* 0203C 80A4DCDC 3C013000 */ lui $at, 0x3000 ## $at = 30000000
/* 02040 80A4DCE0 342100C0 */ ori $at, $at, 0x00C0 ## $at = 300000C0
/* 02044 80A4DCE4 8C4E067C */ lw $t6, 0x067C($v0) ## 0000067C
/* 02048 80A4DCE8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0204C 80A4DCEC 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 02050 80A4DCF0 01C17824 */ and $t7, $t6, $at
/* 02054 80A4DCF4 55E00048 */ bnel $t7, $zero, .L80A4DE18
/* 02058 80A4DCF8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 0205C 80A4DCFC 848201C8 */ lh $v0, 0x01C8($a0) ## 000001C8
/* 02060 80A4DD00 18400002 */ blez $v0, .L80A4DD0C
/* 02064 80A4DD04 2458FFFF */ addiu $t8, $v0, 0xFFFF ## $t8 = FFFFFFFF
/* 02068 80A4DD08 A49801C8 */ sh $t8, 0x01C8($a0) ## 000001C8
.L80A4DD0C:
/* 0206C 80A4DD0C 8E19014C */ lw $t9, 0x014C($s0) ## 0000014C
/* 02070 80A4DD10 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02074 80A4DD14 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 02078 80A4DD18 0320F809 */ jalr $ra, $t9
/* 0207C 80A4DD1C 00000000 */ nop
/* 02080 80A4DD20 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 02084 80A4DD24 262407C0 */ addiu $a0, $s1, 0x07C0 ## $a0 = 000007C0
/* 02088 80A4DD28 26050078 */ addiu $a1, $s0, 0x0078 ## $a1 = 00000078
/* 0208C 80A4DD2C 00021283 */ sra $v0, $v0, 10
/* 02090 80A4DD30 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
/* 02094 80A4DD34 1040000E */ beq $v0, $zero, .L80A4DD70
/* 02098 80A4DD38 27A60030 */ addiu $a2, $sp, 0x0030 ## $a2 = FFFFFFF0
/* 0209C 80A4DD3C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 020A0 80A4DD40 14410010 */ bne $v0, $at, .L80A4DD84
/* 020A4 80A4DD44 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 020A8 80A4DD48 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 020AC 80A4DD4C 2408001C */ addiu $t0, $zero, 0x001C ## $t0 = 0000001C
/* 020B0 80A4DD50 AFA80014 */ sw $t0, 0x0014($sp)
/* 020B4 80A4DD54 44060000 */ mfc1 $a2, $f0
/* 020B8 80A4DD58 44070000 */ mfc1 $a3, $f0
/* 020BC 80A4DD5C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 020C0 80A4DD60 0C00B92D */ jal func_8002E4B4
/* 020C4 80A4DD64 E7A00010 */ swc1 $f0, 0x0010($sp)
/* 020C8 80A4DD68 10000007 */ beq $zero, $zero, .L80A4DD88
/* 020CC 80A4DD6C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4DD70:
/* 020D0 80A4DD70 26090024 */ addiu $t1, $s0, 0x0024 ## $t1 = 00000024
/* 020D4 80A4DD74 AFA90010 */ sw $t1, 0x0010($sp)
/* 020D8 80A4DD78 0C00F269 */ jal func_8003C9A4
/* 020DC 80A4DD7C 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
/* 020E0 80A4DD80 E6000080 */ swc1 $f0, 0x0080($s0) ## 00000080
.L80A4DD84:
/* 020E4 80A4DD84 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4DD88:
/* 020E8 80A4DD88 0C2933B6 */ jal func_80A4CED8
/* 020EC 80A4DD8C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 020F0 80A4DD90 3C014396 */ lui $at, 0x4396 ## $at = 43960000
/* 020F4 80A4DD94 44813000 */ mtc1 $at, $f6 ## $f6 = 300.00
/* 020F8 80A4DD98 C6040090 */ lwc1 $f4, 0x0090($s0) ## 00000090
/* 020FC 80A4DD9C 4606203C */ c.lt.s $f4, $f6
/* 02100 80A4DDA0 00000000 */ nop
/* 02104 80A4DDA4 4502001C */ bc1fl .L80A4DE18
/* 02108 80A4DDA8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 0210C 80A4DDAC 0C292F28 */ jal func_80A4BCA0
/* 02110 80A4DDB0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02114 80A4DDB4 920201D3 */ lbu $v0, 0x01D3($s0) ## 000001D3
/* 02118 80A4DDB8 304A0001 */ andi $t2, $v0, 0x0001 ## $t2 = 00000000
/* 0211C 80A4DDBC 5140000B */ beql $t2, $zero, .L80A4DDEC
/* 02120 80A4DDC0 304C0002 */ andi $t4, $v0, 0x0002 ## $t4 = 00000000
/* 02124 80A4DDC4 860B01C8 */ lh $t3, 0x01C8($s0) ## 000001C8
/* 02128 80A4DDC8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 0212C 80A4DDCC 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 02130 80A4DDD0 1D600005 */ bgtz $t3, .L80A4DDE8
/* 02134 80A4DDD4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 02138 80A4DDD8 02212821 */ addu $a1, $s1, $at
/* 0213C 80A4DDDC 0C0175E7 */ jal CollisionCheck_SetAT
## CollisionCheck_setAT
/* 02140 80A4DDE0 26060150 */ addiu $a2, $s0, 0x0150 ## $a2 = 00000150
/* 02144 80A4DDE4 920201D3 */ lbu $v0, 0x01D3($s0) ## 000001D3
.L80A4DDE8:
/* 02148 80A4DDE8 304C0002 */ andi $t4, $v0, 0x0002 ## $t4 = 00000000
.L80A4DDEC:
/* 0214C 80A4DDEC 5180000A */ beql $t4, $zero, .L80A4DE18
/* 02150 80A4DDF0 8FBF0024 */ lw $ra, 0x0024($sp)
/* 02154 80A4DDF4 860D01C8 */ lh $t5, 0x01C8($s0) ## 000001C8
/* 02158 80A4DDF8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 0215C 80A4DDFC 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 02160 80A4DE00 1DA00004 */ bgtz $t5, .L80A4DE14
/* 02164 80A4DE04 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 02168 80A4DE08 02212821 */ addu $a1, $s1, $at
/* 0216C 80A4DE0C 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOT
/* 02170 80A4DE10 26060150 */ addiu $a2, $s0, 0x0150 ## $a2 = 00000150
.L80A4DE14:
/* 02174 80A4DE14 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A4DE18:
/* 02178 80A4DE18 8FB0001C */ lw $s0, 0x001C($sp)
/* 0217C 80A4DE1C 8FB10020 */ lw $s1, 0x0020($sp)
/* 02180 80A4DE20 03E00008 */ jr $ra
/* 02184 80A4DE24 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000

View File

@ -1,26 +0,0 @@
glabel func_80A4BCA0
/* 00000 80A4BCA0 C4840024 */ lwc1 $f4, 0x0024($a0) ## 00000024
/* 00004 80A4BCA4 8C82016C */ lw $v0, 0x016C($a0) ## 0000016C
/* 00008 80A4BCA8 3C0180A5 */ lui $at, %hi(D_80A4DEC4) ## $at = 80A50000
/* 0000C 80A4BCAC 4600218D */ trunc.w.s $f6, $f4
/* 00010 80A4BCB0 24420030 */ addiu $v0, $v0, 0x0030 ## $v0 = 00000030
/* 00014 80A4BCB4 440F3000 */ mfc1 $t7, $f6
/* 00018 80A4BCB8 00000000 */ nop
/* 0001C 80A4BCBC A44F0000 */ sh $t7, 0x0000($v0) ## 00000030
/* 00020 80A4BCC0 8498001C */ lh $t8, 0x001C($a0) ## 0000001C
/* 00024 80A4BCC4 C48A0028 */ lwc1 $f10, 0x0028($a0) ## 00000028
/* 00028 80A4BCC8 0018CA83 */ sra $t9, $t8, 10
/* 0002C 80A4BCCC 33280001 */ andi $t0, $t9, 0x0001 ## $t0 = 00000000
/* 00030 80A4BCD0 00084880 */ sll $t1, $t0, 2
/* 00034 80A4BCD4 00290821 */ addu $at, $at, $t1
/* 00038 80A4BCD8 C428DEC4 */ lwc1 $f8, %lo(D_80A4DEC4)($at)
/* 0003C 80A4BCDC 460A4400 */ add.s $f16, $f8, $f10
/* 00040 80A4BCE0 4600848D */ trunc.w.s $f18, $f16
/* 00044 80A4BCE4 440B9000 */ mfc1 $t3, $f18
/* 00048 80A4BCE8 00000000 */ nop
/* 0004C 80A4BCEC A44B0002 */ sh $t3, 0x0002($v0) ## 00000032
/* 00050 80A4BCF0 C484002C */ lwc1 $f4, 0x002C($a0) ## 0000002C
/* 00054 80A4BCF4 4600218D */ trunc.w.s $f6, $f4
/* 00058 80A4BCF8 440D3000 */ mfc1 $t5, $f6
/* 0005C 80A4BCFC 03E00008 */ jr $ra
/* 00060 80A4BD00 A44D0004 */ sh $t5, 0x0004($v0) ## 00000034

View File

@ -1,28 +0,0 @@
glabel func_80A4BD04
/* 00064 80A4BD04 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00068 80A4BD08 AFB00020 */ sw $s0, 0x0020($sp)
/* 0006C 80A4BD0C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00070 80A4BD10 AFA50034 */ sw $a1, 0x0034($sp)
/* 00074 80A4BD14 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00078 80A4BD18 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0007C 80A4BD1C 26050150 */ addiu $a1, $s0, 0x0150 ## $a1 = 00000150
/* 00080 80A4BD20 0C016EFE */ jal Collider_InitJntSph
/* 00084 80A4BD24 AFA50028 */ sw $a1, 0x0028($sp)
/* 00088 80A4BD28 3C0780A5 */ lui $a3, %hi(D_80A4DEA4) ## $a3 = 80A50000
/* 0008C 80A4BD2C 260E0170 */ addiu $t6, $s0, 0x0170 ## $t6 = 00000170
/* 00090 80A4BD30 8FA50028 */ lw $a1, 0x0028($sp)
/* 00094 80A4BD34 AFAE0010 */ sw $t6, 0x0010($sp)
/* 00098 80A4BD38 24E7DEA4 */ addiu $a3, $a3, %lo(D_80A4DEA4) ## $a3 = 80A4DEA4
/* 0009C 80A4BD3C 8FA40034 */ lw $a0, 0x0034($sp)
/* 000A0 80A4BD40 0C017014 */ jal Collider_SetJntSph
/* 000A4 80A4BD44 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 000A8 80A4BD48 0C292F28 */ jal func_80A4BCA0
/* 000AC 80A4BD4C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000B0 80A4BD50 8E18016C */ lw $t8, 0x016C($s0) ## 0000016C
/* 000B4 80A4BD54 240F003A */ addiu $t7, $zero, 0x003A ## $t7 = 0000003A
/* 000B8 80A4BD58 A70F0036 */ sh $t7, 0x0036($t8) ## 00000036
/* 000BC 80A4BD5C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 000C0 80A4BD60 8FB00020 */ lw $s0, 0x0020($sp)
/* 000C4 80A4BD64 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 000C8 80A4BD68 03E00008 */ jr $ra
/* 000CC 80A4BD6C 00000000 */ nop

View File

@ -1,8 +0,0 @@
glabel func_80A4BD70
/* 000D0 80A4BD70 AFA50004 */ sw $a1, 0x0004($sp)
/* 000D4 80A4BD74 908E01D3 */ lbu $t6, 0x01D3($a0) ## 000001D3
/* 000D8 80A4BD78 31D8FFFC */ andi $t8, $t6, 0xFFFC ## $t8 = 00000000
/* 000DC 80A4BD7C A09801D3 */ sb $t8, 0x01D3($a0) ## 000001D3
/* 000E0 80A4BD80 0305C825 */ or $t9, $t8, $a1 ## $t9 = 00000000
/* 000E4 80A4BD84 03E00008 */ jr $ra
/* 000E8 80A4BD88 A09901D3 */ sb $t9, 0x01D3($a0) ## 000001D3

View File

@ -1,41 +0,0 @@
.late_rodata
glabel D_80A4E064
.float 0.001
.text
glabel func_80A4BD8C
/* 000EC 80A4BD8C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000F0 80A4BD90 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000F4 80A4BD94 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 000F8 80A4BD98 AFA60018 */ sw $a2, 0x0018($sp)
/* 000FC 80A4BD9C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00100 80A4BDA0 0C032D8A */ jal Math3D_Vec3fMagnitude
/* 00104 80A4BDA4 AFA5001C */ sw $a1, 0x001C($sp)
/* 00108 80A4BDA8 3C0180A5 */ lui $at, %hi(D_80A4E064) ## $at = 80A50000
/* 0010C 80A4BDAC C424E064 */ lwc1 $f4, %lo(D_80A4E064)($at)
/* 00110 80A4BDB0 8FA5001C */ lw $a1, 0x001C($sp)
/* 00114 80A4BDB4 8FA60018 */ lw $a2, 0x0018($sp)
/* 00118 80A4BDB8 4604003C */ c.lt.s $f0, $f4
/* 0011C 80A4BDBC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00120 80A4BDC0 45020004 */ bc1fl .L80A4BDD4
/* 00124 80A4BDC4 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
/* 00128 80A4BDC8 1000000D */ beq $zero, $zero, .L80A4BE00
/* 0012C 80A4BDCC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 00130 80A4BDD0 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
.L80A4BDD4:
/* 00134 80A4BDD4 C4A80000 */ lwc1 $f8, 0x0000($a1) ## 00000000
/* 00138 80A4BDD8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
/* 0013C 80A4BDDC 46003083 */ div.s $f2, $f6, $f0
/* 00140 80A4BDE0 46024282 */ mul.s $f10, $f8, $f2
/* 00144 80A4BDE4 E4CA0000 */ swc1 $f10, 0x0000($a2) ## 00000000
/* 00148 80A4BDE8 C4B00004 */ lwc1 $f16, 0x0004($a1) ## 00000004
/* 0014C 80A4BDEC 46028482 */ mul.s $f18, $f16, $f2
/* 00150 80A4BDF0 E4D20004 */ swc1 $f18, 0x0004($a2) ## 00000004
/* 00154 80A4BDF4 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
/* 00158 80A4BDF8 46022182 */ mul.s $f6, $f4, $f2
/* 0015C 80A4BDFC E4C60008 */ swc1 $f6, 0x0008($a2) ## 00000008
.L80A4BE00:
/* 00160 80A4BE00 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00164 80A4BE04 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00168 80A4BE08 03E00008 */ jr $ra
/* 0016C 80A4BE0C 00000000 */ nop

View File

@ -1,19 +0,0 @@
glabel func_80A4BE10
/* 00170 80A4BE10 84AE00A4 */ lh $t6, 0x00A4($a1) ## 000000A4
/* 00174 80A4BE14 24010055 */ addiu $at, $zero, 0x0055 ## $at = 00000055
/* 00178 80A4BE18 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
/* 0017C 80A4BE1C 15C10007 */ bne $t6, $at, .L80A4BE3C
/* 00180 80A4BE20 3C098016 */ lui $t1, %hi(gGameInfo)
/* 00184 80A4BE24 A08F01D2 */ sb $t7, 0x01D2($a0) ## 000001D2
/* 00188 80A4BE28 3C198016 */ lui $t9, %hi(gGameInfo)
/* 0018C 80A4BE2C 8F39FA90 */ lw $t9, %lo(gGameInfo)($t9)
/* 00190 80A4BE30 24180398 */ addiu $t8, $zero, 0x0398 ## $t8 = 00000398
/* 00194 80A4BE34 03E00008 */ jr $ra
/* 00198 80A4BE38 A738116C */ sh $t8, 0x116C($t9) ## 8016116C
.L80A4BE3C:
/* 0019C 80A4BE3C A08001D2 */ sb $zero, 0x01D2($a0) ## 000001D2
/* 001A0 80A4BE40 8D29FA90 */ lw $t1, %lo(gGameInfo)($t1)
/* 001A4 80A4BE44 240803E8 */ addiu $t0, $zero, 0x03E8 ## $t0 = 000003E8
/* 001A8 80A4BE48 A528116C */ sh $t0, 0x116C($t1) ## 8016116C
/* 001AC 80A4BE4C 03E00008 */ jr $ra
/* 001B0 80A4BE50 00000000 */ nop

View File

@ -1,55 +0,0 @@
glabel func_80A4BE54
/* 001B4 80A4BE54 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 001B8 80A4BE58 AFBF0014 */ sw $ra, 0x0014($sp)
/* 001BC 80A4BE5C AFA50034 */ sw $a1, 0x0034($sp)
/* 001C0 80A4BE60 8498001C */ lh $t8, 0x001C($a0) ## 0000001C
/* 001C4 80A4BE64 3C0F0001 */ lui $t7, 0x0001 ## $t7 = 00010000
/* 001C8 80A4BE68 01E57821 */ addu $t7, $t7, $a1
/* 001CC 80A4BE6C 8DEF1E08 */ lw $t7, 0x1E08($t7) ## 00011E08
/* 001D0 80A4BE70 331900FF */ andi $t9, $t8, 0x00FF ## $t9 = 00000000
/* 001D4 80A4BE74 001940C0 */ sll $t0, $t9, 3
/* 001D8 80A4BE78 01E83021 */ addu $a2, $t7, $t0
/* 001DC 80A4BE7C 8CC30004 */ lw $v1, 0x0004($a2) ## 00000004
/* 001E0 80A4BE80 849801CE */ lh $t8, 0x01CE($a0) ## 000001CE
/* 001E4 80A4BE84 3C0C8016 */ lui $t4, %hi(gSegments)
/* 001E8 80A4BE88 00034900 */ sll $t1, $v1, 4
/* 001EC 80A4BE8C 00095702 */ srl $t2, $t1, 28
/* 001F0 80A4BE90 000A5880 */ sll $t3, $t2, 2
/* 001F4 80A4BE94 018B6021 */ addu $t4, $t4, $t3
/* 001F8 80A4BE98 8D8C6FA8 */ lw $t4, %lo(gSegments)($t4)
/* 001FC 80A4BE9C 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 00200 80A4BEA0 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00204 80A4BEA4 0018C880 */ sll $t9, $t8, 2
/* 00208 80A4BEA8 00616824 */ and $t5, $v1, $at
/* 0020C 80A4BEAC 0338C823 */ subu $t9, $t9, $t8
/* 00210 80A4BEB0 0019C840 */ sll $t9, $t9, 1
/* 00214 80A4BEB4 018D7021 */ addu $t6, $t4, $t5
/* 00218 80A4BEB8 01D91021 */ addu $v0, $t6, $t9
/* 0021C 80A4BEBC 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00220 80A4BEC0 00411021 */ addu $v0, $v0, $at
/* 00224 80A4BEC4 844F0000 */ lh $t7, 0x0000($v0) ## 00000000
/* 00228 80A4BEC8 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 0022C 80A4BECC 24840024 */ addiu $a0, $a0, 0x0024 ## $a0 = 00000024
/* 00230 80A4BED0 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
/* 00234 80A4BED4 27A5001C */ addiu $a1, $sp, 0x001C ## $a1 = FFFFFFEC
/* 00238 80A4BED8 468021A0 */ cvt.s.w $f6, $f4
/* 0023C 80A4BEDC E7A6001C */ swc1 $f6, 0x001C($sp)
/* 00240 80A4BEE0 84480002 */ lh $t0, 0x0002($v0) ## 00000002
/* 00244 80A4BEE4 44884000 */ mtc1 $t0, $f8 ## $f8 = 0.00
/* 00248 80A4BEE8 00000000 */ nop
/* 0024C 80A4BEEC 468042A0 */ cvt.s.w $f10, $f8
/* 00250 80A4BEF0 E7AA0020 */ swc1 $f10, 0x0020($sp)
/* 00254 80A4BEF4 84490004 */ lh $t1, 0x0004($v0) ## 00000004
/* 00258 80A4BEF8 AFA70030 */ sw $a3, 0x0030($sp)
/* 0025C 80A4BEFC 44898000 */ mtc1 $t1, $f16 ## $f16 = 0.00
/* 00260 80A4BF00 00000000 */ nop
/* 00264 80A4BF04 468084A0 */ cvt.s.w $f18, $f16
/* 00268 80A4BF08 0C01E01A */ jal Math_Vec3f_Yaw
/* 0026C 80A4BF0C E7B20024 */ swc1 $f18, 0x0024($sp)
/* 00270 80A4BF10 8FA70030 */ lw $a3, 0x0030($sp)
/* 00274 80A4BF14 A4E20032 */ sh $v0, 0x0032($a3) ## 00000032
/* 00278 80A4BF18 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0027C 80A4BF1C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00280 80A4BF20 03E00008 */ jr $ra
/* 00284 80A4BF24 00000000 */ nop

View File

@ -1,94 +0,0 @@
glabel func_80A4BF28
/* 00288 80A4BF28 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
/* 0028C 80A4BF2C 848901CC */ lh $t1, 0x01CC($a0) ## 000001CC
/* 00290 80A4BF30 849901D0 */ lh $t9, 0x01D0($a0) ## 000001D0
/* 00294 80A4BF34 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 00298 80A4BF38 01C57021 */ addu $t6, $t6, $a1
/* 0029C 80A4BF3C 00031203 */ sra $v0, $v1, 8
/* 002A0 80A4BF40 01394023 */ subu $t0, $t1, $t9
/* 002A4 80A4BF44 8DCE1E08 */ lw $t6, 0x1E08($t6) ## 00011E08
/* 002A8 80A4BF48 30420003 */ andi $v0, $v0, 0x0003 ## $v0 = 00000000
/* 002AC 80A4BF4C 00084400 */ sll $t0, $t0, 16
/* 002B0 80A4BF50 306F00FF */ andi $t7, $v1, 0x00FF ## $t7 = 00000000
/* 002B4 80A4BF54 00021400 */ sll $v0, $v0, 16
/* 002B8 80A4BF58 000FC0C0 */ sll $t8, $t7, 3
/* 002BC 80A4BF5C 00084403 */ sra $t0, $t0, 16
/* 002C0 80A4BF60 00021403 */ sra $v0, $v0, 16
/* 002C4 80A4BF64 0501000C */ bgez $t0, .L80A4BF98
/* 002C8 80A4BF68 01D83821 */ addu $a3, $t6, $t8
/* 002CC 80A4BF6C 10400003 */ beq $v0, $zero, .L80A4BF7C
/* 002D0 80A4BF70 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 002D4 80A4BF74 54410004 */ bnel $v0, $at, .L80A4BF88
/* 002D8 80A4BF78 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A4BF7C:
/* 002DC 80A4BF7C 10000016 */ beq $zero, $zero, .L80A4BFD8
/* 002E0 80A4BF80 848801CA */ lh $t0, 0x01CA($a0) ## 000001CA
/* 002E4 80A4BF84 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A4BF88:
/* 002E8 80A4BF88 54410014 */ bnel $v0, $at, .L80A4BFDC
/* 002EC 80A4BF8C 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
/* 002F0 80A4BF90 10000011 */ beq $zero, $zero, .L80A4BFD8
/* 002F4 80A4BF94 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
.L80A4BF98:
/* 002F8 80A4BF98 848301CA */ lh $v1, 0x01CA($a0) ## 000001CA
/* 002FC 80A4BF9C 0068082A */ slt $at, $v1, $t0
/* 00300 80A4BFA0 5020000E */ beql $at, $zero, .L80A4BFDC
/* 00304 80A4BFA4 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
/* 00308 80A4BFA8 10400003 */ beq $v0, $zero, .L80A4BFB8
/* 0030C 80A4BFAC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00310 80A4BFB0 54410004 */ bnel $v0, $at, .L80A4BFC4
/* 00314 80A4BFB4 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A4BFB8:
/* 00318 80A4BFB8 10000007 */ beq $zero, $zero, .L80A4BFD8
/* 0031C 80A4BFBC 00004025 */ or $t0, $zero, $zero ## $t0 = 00000000
/* 00320 80A4BFC0 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A4BFC4:
/* 00324 80A4BFC4 54410005 */ bnel $v0, $at, .L80A4BFDC
/* 00328 80A4BFC8 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
/* 0032C 80A4BFCC 2468FFFF */ addiu $t0, $v1, 0xFFFF ## $t0 = FFFFFFFF
/* 00330 80A4BFD0 00084400 */ sll $t0, $t0, 16
/* 00334 80A4BFD4 00084403 */ sra $t0, $t0, 16
.L80A4BFD8:
/* 00338 80A4BFD8 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
.L80A4BFDC:
/* 0033C 80A4BFDC 012A0019 */ multu $t1, $t2
/* 00340 80A4BFE0 8CE30004 */ lw $v1, 0x0004($a3) ## 00000004
/* 00344 80A4BFE4 3C0F8016 */ lui $t7, %hi(gSegments)
/* 00348 80A4BFE8 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 0034C 80A4BFEC 00035900 */ sll $t3, $v1, 4
/* 00350 80A4BFF0 000B6702 */ srl $t4, $t3, 28
/* 00354 80A4BFF4 000C6880 */ sll $t5, $t4, 2
/* 00358 80A4BFF8 01ED7821 */ addu $t7, $t7, $t5
/* 0035C 80A4BFFC 8DEF6FA8 */ lw $t7, %lo(gSegments)($t7)
/* 00360 80A4C000 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00364 80A4C004 0000C012 */ mflo $t8
/* 00368 80A4C008 00617024 */ and $t6, $v1, $at
/* 0036C 80A4C00C 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00370 80A4C010 010A0019 */ multu $t0, $t2
/* 00374 80A4C014 01EE2021 */ addu $a0, $t7, $t6
/* 00378 80A4C018 00812021 */ addu $a0, $a0, $at
/* 0037C 80A4C01C 00981021 */ addu $v0, $a0, $t8
/* 00380 80A4C020 844B0000 */ lh $t3, 0x0000($v0) ## 00000000
/* 00384 80A4C024 0000C812 */ mflo $t9
/* 00388 80A4C028 00992821 */ addu $a1, $a0, $t9
/* 0038C 80A4C02C 84AC0000 */ lh $t4, 0x0000($a1) ## 00000000
/* 00390 80A4C030 016C6823 */ subu $t5, $t3, $t4
/* 00394 80A4C034 448D2000 */ mtc1 $t5, $f4 ## $f4 = 0.00
/* 00398 80A4C038 00000000 */ nop
/* 0039C 80A4C03C 468021A0 */ cvt.s.w $f6, $f4
/* 003A0 80A4C040 E4C60000 */ swc1 $f6, 0x0000($a2) ## 00000000
/* 003A4 80A4C044 844F0000 */ lh $t7, 0x0000($v0) ## 00000000
/* 003A8 80A4C048 84AE0002 */ lh $t6, 0x0002($a1) ## 00000002
/* 003AC 80A4C04C 01EEC023 */ subu $t8, $t7, $t6
/* 003B0 80A4C050 44984000 */ mtc1 $t8, $f8 ## $f8 = 0.00
/* 003B4 80A4C054 00000000 */ nop
/* 003B8 80A4C058 468042A0 */ cvt.s.w $f10, $f8
/* 003BC 80A4C05C E4CA0004 */ swc1 $f10, 0x0004($a2) ## 00000004
/* 003C0 80A4C060 84AB0004 */ lh $t3, 0x0004($a1) ## 00000004
/* 003C4 80A4C064 84590000 */ lh $t9, 0x0000($v0) ## 00000000
/* 003C8 80A4C068 032B6023 */ subu $t4, $t9, $t3
/* 003CC 80A4C06C 448C8000 */ mtc1 $t4, $f16 ## $f16 = 0.00
/* 003D0 80A4C070 00000000 */ nop
/* 003D4 80A4C074 468084A0 */ cvt.s.w $f18, $f16
/* 003D8 80A4C078 03E00008 */ jr $ra
/* 003DC 80A4C07C E4D20008 */ swc1 $f18, 0x0008($a2) ## 00000008

View File

@ -1,52 +0,0 @@
glabel func_80A4C080
/* 003E0 80A4C080 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
/* 003E4 80A4C084 848301CE */ lh $v1, 0x01CE($a0) ## 000001CE
/* 003E8 80A4C088 00021203 */ sra $v0, $v0, 8
/* 003EC 80A4C08C 30420003 */ andi $v0, $v0, 0x0003 ## $v0 = 00000000
/* 003F0 80A4C090 00021400 */ sll $v0, $v0, 16
/* 003F4 80A4C094 04610012 */ bgez $v1, .L80A4C0E0
/* 003F8 80A4C098 00021403 */ sra $v0, $v0, 16
/* 003FC 80A4C09C 10400003 */ beq $v0, $zero, .L80A4C0AC
/* 00400 80A4C0A0 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
/* 00404 80A4C0A4 14430008 */ bne $v0, $v1, .L80A4C0C8
/* 00408 80A4C0A8 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A4C0AC:
/* 0040C 80A4C0AC 848501CA */ lh $a1, 0x01CA($a0) ## 000001CA
/* 00410 80A4C0B0 240FFFFF */ addiu $t7, $zero, 0xFFFF ## $t7 = FFFFFFFF
/* 00414 80A4C0B4 A48F01D0 */ sh $t7, 0x01D0($a0) ## 000001D0
/* 00418 80A4C0B8 24AEFFFF */ addiu $t6, $a1, 0xFFFF ## $t6 = FFFFFFFF
/* 0041C 80A4C0BC A48E01CE */ sh $t6, 0x01CE($a0) ## 000001CE
/* 00420 80A4C0C0 03E00008 */ jr $ra
/* 00424 80A4C0C4 A48501CC */ sh $a1, 0x01CC($a0) ## 000001CC
.L80A4C0C8:
/* 00428 80A4C0C8 14410018 */ bne $v0, $at, .L80A4C12C
/* 0042C 80A4C0CC 00000000 */ nop
/* 00430 80A4C0D0 A48001CC */ sh $zero, 0x01CC($a0) ## 000001CC
/* 00434 80A4C0D4 A48301CE */ sh $v1, 0x01CE($a0) ## 000001CE
/* 00438 80A4C0D8 03E00008 */ jr $ra
/* 0043C 80A4C0DC A48301D0 */ sh $v1, 0x01D0($a0) ## 000001D0
.L80A4C0E0:
/* 00440 80A4C0E0 848501CA */ lh $a1, 0x01CA($a0) ## 000001CA
/* 00444 80A4C0E4 00A3082A */ slt $at, $a1, $v1
/* 00448 80A4C0E8 10200010 */ beq $at, $zero, .L80A4C12C
/* 0044C 80A4C0EC 00000000 */ nop
/* 00450 80A4C0F0 10400003 */ beq $v0, $zero, .L80A4C100
/* 00454 80A4C0F4 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
/* 00458 80A4C0F8 14430006 */ bne $v0, $v1, .L80A4C114
/* 0045C 80A4C0FC 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A4C100:
/* 00460 80A4C100 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
/* 00464 80A4C104 A48001CC */ sh $zero, 0x01CC($a0) ## 000001CC
/* 00468 80A4C108 A48301CE */ sh $v1, 0x01CE($a0) ## 000001CE
/* 0046C 80A4C10C 03E00008 */ jr $ra
/* 00470 80A4C110 A48301D0 */ sh $v1, 0x01D0($a0) ## 000001D0
.L80A4C114:
/* 00474 80A4C114 14410005 */ bne $v0, $at, .L80A4C12C
/* 00478 80A4C118 24B8FFFF */ addiu $t8, $a1, 0xFFFF ## $t8 = FFFFFFFF
/* 0047C 80A4C11C 2419FFFF */ addiu $t9, $zero, 0xFFFF ## $t9 = FFFFFFFF
/* 00480 80A4C120 A48501CC */ sh $a1, 0x01CC($a0) ## 000001CC
/* 00484 80A4C124 A49801CE */ sh $t8, 0x01CE($a0) ## 000001CE
/* 00488 80A4C128 A49901D0 */ sh $t9, 0x01D0($a0) ## 000001D0
.L80A4C12C:
/* 0048C 80A4C12C 03E00008 */ jr $ra
/* 00490 80A4C130 00000000 */ nop

View File

@ -1,13 +0,0 @@
glabel func_80A4C134
/* 00494 80A4C134 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00498 80A4C138 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0049C 80A4C13C 848201CE */ lh $v0, 0x01CE($a0) ## 000001CE
/* 004A0 80A4C140 848E01D0 */ lh $t6, 0x01D0($a0) ## 000001D0
/* 004A4 80A4C144 A48201CC */ sh $v0, 0x01CC($a0) ## 000001CC
/* 004A8 80A4C148 004E7821 */ addu $t7, $v0, $t6
/* 004AC 80A4C14C 0C293020 */ jal func_80A4C080
/* 004B0 80A4C150 A48F01CE */ sh $t7, 0x01CE($a0) ## 000001CE
/* 004B4 80A4C154 8FBF0014 */ lw $ra, 0x0014($sp)
/* 004B8 80A4C158 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 004BC 80A4C15C 03E00008 */ jr $ra
/* 004C0 80A4C160 00000000 */ nop

View File

@ -1,10 +0,0 @@
glabel func_80A4C164
/* 004C4 80A4C164 848E01D0 */ lh $t6, 0x01D0($a0) ## 000001D0
/* 004C8 80A4C168 848201CE */ lh $v0, 0x01CE($a0) ## 000001CE
/* 004CC 80A4C16C 000E7823 */ subu $t7, $zero, $t6
/* 004D0 80A4C170 A48F01D0 */ sh $t7, 0x01D0($a0) ## 000001D0
/* 004D4 80A4C174 849801D0 */ lh $t8, 0x01D0($a0) ## 000001D0
/* 004D8 80A4C178 A48201CC */ sh $v0, 0x01CC($a0) ## 000001CC
/* 004DC 80A4C17C 0058C821 */ addu $t9, $v0, $t8
/* 004E0 80A4C180 03E00008 */ jr $ra
/* 004E4 80A4C184 A49901CE */ sh $t9, 0x01CE($a0) ## 000001CE

View File

@ -1,16 +0,0 @@
glabel func_80A4C188
/* 004E8 80A4C188 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
/* 004EC 80A4C18C 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 004F0 80A4C190 01C57021 */ addu $t6, $t6, $a1
/* 004F4 80A4C194 8DCE1E08 */ lw $t6, 0x1E08($t6) ## 00011E08
/* 004F8 80A4C198 31F800FF */ andi $t8, $t7, 0x00FF ## $t8 = 00000000
/* 004FC 80A4C19C 0018C8C0 */ sll $t9, $t8, 3
/* 00500 80A4C1A0 01D94021 */ addu $t0, $t6, $t9
/* 00504 80A4C1A4 91090000 */ lbu $t1, 0x0000($t0) ## 00000000
/* 00508 80A4C1A8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
/* 0050C 80A4C1AC A48001CC */ sh $zero, 0x01CC($a0) ## 000001CC
/* 00510 80A4C1B0 252AFFFF */ addiu $t2, $t1, 0xFFFF ## $t2 = FFFFFFFF
/* 00514 80A4C1B4 A48A01CA */ sh $t2, 0x01CA($a0) ## 000001CA
/* 00518 80A4C1B8 A48201CE */ sh $v0, 0x01CE($a0) ## 000001CE
/* 0051C 80A4C1BC 03E00008 */ jr $ra
/* 00520 80A4C1C0 A48201D0 */ sh $v0, 0x01D0($a0) ## 000001D0

View File

@ -1,41 +0,0 @@
glabel func_80A4C1C4
/* 00524 80A4C1C4 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
/* 00528 80A4C1C8 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 0052C 80A4C1CC 01C57021 */ addu $t6, $t6, $a1
/* 00530 80A4C1D0 8DCE1E08 */ lw $t6, 0x1E08($t6) ## 00011E08
/* 00534 80A4C1D4 31F800FF */ andi $t8, $t7, 0x00FF ## $t8 = 00000000
/* 00538 80A4C1D8 0018C8C0 */ sll $t9, $t8, 3
/* 0053C 80A4C1DC 01D91021 */ addu $v0, $t6, $t9
/* 00540 80A4C1E0 8C470004 */ lw $a3, 0x0004($v0) ## 00000004
/* 00544 80A4C1E4 3C0B8016 */ lui $t3, %hi(gSegments)
/* 00548 80A4C1E8 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 0054C 80A4C1EC 00074100 */ sll $t0, $a3, 4
/* 00550 80A4C1F0 00084F02 */ srl $t1, $t0, 28
/* 00554 80A4C1F4 00095080 */ sll $t2, $t1, 2
/* 00558 80A4C1F8 016A5821 */ addu $t3, $t3, $t2
/* 0055C 80A4C1FC 8D6B6FA8 */ lw $t3, %lo(gSegments)($t3)
/* 00560 80A4C200 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00564 80A4C204 00067880 */ sll $t7, $a2, 2
/* 00568 80A4C208 01E67823 */ subu $t7, $t7, $a2
/* 0056C 80A4C20C 00E16024 */ and $t4, $a3, $at
/* 00570 80A4C210 000F7840 */ sll $t7, $t7, 1
/* 00574 80A4C214 016C6821 */ addu $t5, $t3, $t4
/* 00578 80A4C218 01AF1821 */ addu $v1, $t5, $t7
/* 0057C 80A4C21C 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00580 80A4C220 00611821 */ addu $v1, $v1, $at
/* 00584 80A4C224 84780000 */ lh $t8, 0x0000($v1) ## 00000000
/* 00588 80A4C228 44982000 */ mtc1 $t8, $f4 ## $f4 = 0.00
/* 0058C 80A4C22C 00000000 */ nop
/* 00590 80A4C230 468021A0 */ cvt.s.w $f6, $f4
/* 00594 80A4C234 E4860024 */ swc1 $f6, 0x0024($a0) ## 00000024
/* 00598 80A4C238 846E0002 */ lh $t6, 0x0002($v1) ## 00000002
/* 0059C 80A4C23C 448E4000 */ mtc1 $t6, $f8 ## $f8 = 0.00
/* 005A0 80A4C240 00000000 */ nop
/* 005A4 80A4C244 468042A0 */ cvt.s.w $f10, $f8
/* 005A8 80A4C248 E48A0028 */ swc1 $f10, 0x0028($a0) ## 00000028
/* 005AC 80A4C24C 84790004 */ lh $t9, 0x0004($v1) ## 00000004
/* 005B0 80A4C250 44998000 */ mtc1 $t9, $f16 ## $f16 = 0.00
/* 005B4 80A4C254 00000000 */ nop
/* 005B8 80A4C258 468084A0 */ cvt.s.w $f18, $f16
/* 005BC 80A4C25C 03E00008 */ jr $ra
/* 005C0 80A4C260 E492002C */ swc1 $f18, 0x002C($a0) ## 0000002C

View File

@ -1,7 +0,0 @@
glabel func_80A4C264
/* 005C4 80A4C264 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 005C8 80A4C268 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 005CC 80A4C26C 00000000 */ nop
/* 005D0 80A4C270 E48001B0 */ swc1 $f0, 0x01B0($a0) ## 000001B0
/* 005D4 80A4C274 03E00008 */ jr $ra
/* 005D8 80A4C278 E48001C0 */ swc1 $f0, 0x01C0($a0) ## 000001C0

View File

@ -1,94 +0,0 @@
.rdata
glabel D_80A4DF30
.asciz "Error : ()"
.balign 4
glabel D_80A4DF5C
.asciz "(%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_80A4DF78
.asciz "../z_en_gr.c"
.balign 4
.text
glabel func_80A4C27C
/* 005DC 80A4C27C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 005E0 80A4C280 AFBF0014 */ sw $ra, 0x0014($sp)
/* 005E4 80A4C284 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
/* 005E8 80A4C288 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 005EC 80A4C28C 01C57021 */ addu $t6, $t6, $a1
/* 005F0 80A4C290 8DCE1E08 */ lw $t6, 0x1E08($t6) ## 00011E08
/* 005F4 80A4C294 31F800FF */ andi $t8, $t7, 0x00FF ## $t8 = 00000000
/* 005F8 80A4C298 0018C8C0 */ sll $t9, $t8, 3
/* 005FC 80A4C29C 01D93021 */ addu $a2, $t6, $t9
/* 00600 80A4C2A0 848E01CE */ lh $t6, 0x01CE($a0) ## 000001CE
/* 00604 80A4C2A4 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
/* 00608 80A4C2A8 8CC20004 */ lw $v0, 0x0004($a2) ## 00000004
/* 0060C 80A4C2AC 01CA0019 */ multu $t6, $t2
/* 00610 80A4C2B0 3C0F8016 */ lui $t7, %hi(gSegments)
/* 00614 80A4C2B4 00025900 */ sll $t3, $v0, 4
/* 00618 80A4C2B8 000B6702 */ srl $t4, $t3, 28
/* 0061C 80A4C2BC 848B01CC */ lh $t3, 0x01CC($a0) ## 000001CC
/* 00620 80A4C2C0 000C6880 */ sll $t5, $t4, 2
/* 00624 80A4C2C4 01ED7821 */ addu $t7, $t7, $t5
/* 00628 80A4C2C8 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 0062C 80A4C2CC 8DEF6FA8 */ lw $t7, %lo(gSegments)($t7)
/* 00630 80A4C2D0 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00634 80A4C2D4 0000C812 */ mflo $t9
/* 00638 80A4C2D8 0041C024 */ and $t8, $v0, $at
/* 0063C 80A4C2DC 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00640 80A4C2E0 016A0019 */ multu $t3, $t2
/* 00644 80A4C2E4 01F81821 */ addu $v1, $t7, $t8
/* 00648 80A4C2E8 00611821 */ addu $v1, $v1, $at
/* 0064C 80A4C2EC 00794021 */ addu $t0, $v1, $t9
/* 00650 80A4C2F0 850F0000 */ lh $t7, 0x0000($t0) ## 00000000
/* 00654 80A4C2F4 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 00658 80A4C2F8 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 0065C 80A4C2FC 00006012 */ mflo $t4
/* 00660 80A4C300 006C4821 */ addu $t1, $v1, $t4
/* 00664 80A4C304 852D0000 */ lh $t5, 0x0000($t1) ## 00000000
/* 00668 80A4C308 15AF0022 */ bne $t5, $t7, .L80A4C394
/* 0066C 80A4C30C 00000000 */ nop
/* 00670 80A4C310 85380004 */ lh $t8, 0x0004($t1) ## 00000004
/* 00674 80A4C314 850E0004 */ lh $t6, 0x0004($t0) ## 00000004
/* 00678 80A4C318 170E001E */ bne $t8, $t6, .L80A4C394
/* 0067C 80A4C31C 00000000 */ nop
/* 00680 80A4C320 85220002 */ lh $v0, 0x0002($t1) ## 00000002
/* 00684 80A4C324 85030002 */ lh $v1, 0x0002($t0) ## 00000002
/* 00688 80A4C328 3C0480A5 */ lui $a0, %hi(D_80A4DF30) ## $a0 = 80A50000
/* 0068C 80A4C32C 2484DF30 */ addiu $a0, $a0, %lo(D_80A4DF30) ## $a0 = 80A4DF30
/* 00690 80A4C330 54430012 */ bnel $v0, $v1, .L80A4C37C
/* 00694 80A4C334 0043082A */ slt $at, $v0, $v1
/* 00698 80A4C338 AFA70028 */ sw $a3, 0x0028($sp)
/* 0069C 80A4C33C AFA8001C */ sw $t0, 0x001C($sp)
/* 006A0 80A4C340 0C00084C */ jal osSyncPrintf
/* 006A4 80A4C344 AFA90018 */ sw $t1, 0x0018($sp)
/* 006A8 80A4C348 8FB90028 */ lw $t9, 0x0028($sp)
/* 006AC 80A4C34C 3C0480A5 */ lui $a0, %hi(D_80A4DF5C) ## $a0 = 80A50000
/* 006B0 80A4C350 3C0580A5 */ lui $a1, %hi(D_80A4DF78) ## $a1 = 80A50000
/* 006B4 80A4C354 24A5DF78 */ addiu $a1, $a1, %lo(D_80A4DF78) ## $a1 = 80A4DF78
/* 006B8 80A4C358 2484DF5C */ addiu $a0, $a0, %lo(D_80A4DF5C) ## $a0 = 80A4DF5C
/* 006BC 80A4C35C 2406022F */ addiu $a2, $zero, 0x022F ## $a2 = 0000022F
/* 006C0 80A4C360 0C00084C */ jal osSyncPrintf
/* 006C4 80A4C364 8727001C */ lh $a3, 0x001C($t9) ## 0000001C
/* 006C8 80A4C368 8FA8001C */ lw $t0, 0x001C($sp)
/* 006CC 80A4C36C 8FA90018 */ lw $t1, 0x0018($sp)
/* 006D0 80A4C370 85030002 */ lh $v1, 0x0002($t0) ## 00000002
/* 006D4 80A4C374 85220002 */ lh $v0, 0x0002($t1) ## 00000002
/* 006D8 80A4C378 0043082A */ slt $at, $v0, $v1
.L80A4C37C:
/* 006DC 80A4C37C 10200003 */ beq $at, $zero, .L80A4C38C
/* 006E0 80A4C380 00000000 */ nop
/* 006E4 80A4C384 10000003 */ beq $zero, $zero, .L80A4C394
/* 006E8 80A4C388 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L80A4C38C:
/* 006EC 80A4C38C 10000001 */ beq $zero, $zero, .L80A4C394
/* 006F0 80A4C390 2402FFFF */ addiu $v0, $zero, 0xFFFF ## $v0 = FFFFFFFF
.L80A4C394:
/* 006F4 80A4C394 8FBF0014 */ lw $ra, 0x0014($sp)
/* 006F8 80A4C398 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 006FC 80A4C39C 03E00008 */ jr $ra
/* 00700 80A4C3A0 00000000 */ nop

View File

@ -1,133 +0,0 @@
glabel func_80A4C3A4
/* 00704 80A4C3A4 27BDFF78 */ addiu $sp, $sp, 0xFF78 ## $sp = FFFFFF78
/* 00708 80A4C3A8 F7BE0040 */ sdc1 $f30, 0x0040($sp)
/* 0070C 80A4C3AC 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 00710 80A4C3B0 4481F000 */ mtc1 $at, $f30 ## $f30 = 20.00
/* 00714 80A4C3B4 F7BC0038 */ sdc1 $f28, 0x0038($sp)
/* 00718 80A4C3B8 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
/* 0071C 80A4C3BC 4481E000 */ mtc1 $at, $f28 ## $f28 = 30.00
/* 00720 80A4C3C0 F7BA0030 */ sdc1 $f26, 0x0030($sp)
/* 00724 80A4C3C4 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 00728 80A4C3C8 4481D000 */ mtc1 $at, $f26 ## $f26 = 40.00
/* 0072C 80A4C3CC F7B80028 */ sdc1 $f24, 0x0028($sp)
/* 00730 80A4C3D0 3C01423C */ lui $at, 0x423C ## $at = 423C0000
/* 00734 80A4C3D4 4481C000 */ mtc1 $at, $f24 ## $f24 = 47.00
/* 00738 80A4C3D8 AFB60064 */ sw $s6, 0x0064($sp)
/* 0073C 80A4C3DC AFB50060 */ sw $s5, 0x0060($sp)
/* 00740 80A4C3E0 F7B60020 */ sdc1 $f22, 0x0020($sp)
/* 00744 80A4C3E4 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 00748 80A4C3E8 AFB70068 */ sw $s7, 0x0068($sp)
/* 0074C 80A4C3EC AFB4005C */ sw $s4, 0x005C($sp)
/* 00750 80A4C3F0 AFB30058 */ sw $s3, 0x0058($sp)
/* 00754 80A4C3F4 AFB20054 */ sw $s2, 0x0054($sp)
/* 00758 80A4C3F8 AFB10050 */ sw $s1, 0x0050($sp)
/* 0075C 80A4C3FC AFB0004C */ sw $s0, 0x004C($sp)
/* 00760 80A4C400 3C1580A5 */ lui $s5, %hi(D_80A4DECC) ## $s5 = 80A50000
/* 00764 80A4C404 3C1680A5 */ lui $s6, %hi(D_80A4DED8) ## $s6 = 80A50000
/* 00768 80A4C408 4481B000 */ mtc1 $at, $f22 ## $f22 = 0.50
/* 0076C 80A4C40C 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
/* 00770 80A4C410 00809825 */ or $s3, $a0, $zero ## $s3 = 00000000
/* 00774 80A4C414 AFBF006C */ sw $ra, 0x006C($sp)
/* 00778 80A4C418 F7B40018 */ sdc1 $f20, 0x0018($sp)
/* 0077C 80A4C41C 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 00780 80A4C420 26D6DED8 */ addiu $s6, $s6, %lo(D_80A4DED8) ## $s6 = 80A4DED8
/* 00784 80A4C424 26B5DECC */ addiu $s5, $s5, %lo(D_80A4DECC) ## $s5 = 80A4DECC
/* 00788 80A4C428 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 0078C 80A4C42C 27B4007C */ addiu $s4, $sp, 0x007C ## $s4 = FFFFFFF4
/* 00790 80A4C430 24170008 */ addiu $s7, $zero, 0x0008 ## $s7 = 00000008
/* 00794 80A4C434 26104E20 */ addiu $s0, $s0, 0x4E20 ## $s0 = 00004E20
.L80A4C438:
/* 00798 80A4C438 00108400 */ sll $s0, $s0, 16
/* 0079C 80A4C43C 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 007A0 80A4C440 00108403 */ sra $s0, $s0, 16
/* 007A4 80A4C444 00102400 */ sll $a0, $s0, 16
/* 007A8 80A4C448 00042403 */ sra $a0, $a0, 16
/* 007AC 80A4C44C 0C01DE1C */ jal Math_Sins
## sins?
/* 007B0 80A4C450 46000506 */ mov.s $f20, $f0
/* 007B4 80A4C454 4616A102 */ mul.s $f4, $f20, $f22
/* 007B8 80A4C458 C6500000 */ lwc1 $f16, 0x0000($s2) ## 00000000
/* 007BC 80A4C45C 46162180 */ add.s $f6, $f4, $f22
/* 007C0 80A4C460 4606C202 */ mul.s $f8, $f24, $f6
/* 007C4 80A4C464 00000000 */ nop
/* 007C8 80A4C468 46080282 */ mul.s $f10, $f0, $f8
/* 007CC 80A4C46C 46105480 */ add.s $f18, $f10, $f16
/* 007D0 80A4C470 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 007D4 80A4C474 E7B2007C */ swc1 $f18, 0x007C($sp)
/* 007D8 80A4C478 46160101 */ sub.s $f4, $f0, $f22
/* 007DC 80A4C47C C6480004 */ lwc1 $f8, 0x0004($s2) ## 00000004
/* 007E0 80A4C480 461A2182 */ mul.s $f6, $f4, $f26
/* 007E4 80A4C484 46083280 */ add.s $f10, $f6, $f8
/* 007E8 80A4C488 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 007EC 80A4C48C E7AA0080 */ swc1 $f10, 0x0080($sp)
/* 007F0 80A4C490 00102400 */ sll $a0, $s0, 16
/* 007F4 80A4C494 00042403 */ sra $a0, $a0, 16
/* 007F8 80A4C498 0C01DE0D */ jal Math_Coss
## coss?
/* 007FC 80A4C49C 46000506 */ mov.s $f20, $f0
/* 00800 80A4C4A0 4616A402 */ mul.s $f16, $f20, $f22
/* 00804 80A4C4A4 C6480008 */ lwc1 $f8, 0x0008($s2) ## 00000008
/* 00808 80A4C4A8 46168480 */ add.s $f18, $f16, $f22
/* 0080C 80A4C4AC 4612C102 */ mul.s $f4, $f24, $f18
/* 00810 80A4C4B0 00000000 */ nop
/* 00814 80A4C4B4 46040182 */ mul.s $f6, $f0, $f4
/* 00818 80A4C4B8 46083280 */ add.s $f10, $f6, $f8
/* 0081C 80A4C4BC 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00820 80A4C4C0 E7AA0084 */ swc1 $f10, 0x0084($sp)
/* 00824 80A4C4C4 461C0402 */ mul.s $f16, $f0, $f28
/* 00828 80A4C4C8 24090050 */ addiu $t1, $zero, 0x0050 ## $t1 = 00000050
/* 0082C 80A4C4CC AFA90014 */ sw $t1, 0x0014($sp)
/* 00830 80A4C4D0 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 00834 80A4C4D4 02802825 */ or $a1, $s4, $zero ## $a1 = FFFFFFF4
/* 00838 80A4C4D8 02A03025 */ or $a2, $s5, $zero ## $a2 = 80A4DECC
/* 0083C 80A4C4DC 02C03825 */ or $a3, $s6, $zero ## $a3 = 80A4DED8
/* 00840 80A4C4E0 4600848D */ trunc.w.s $f18, $f16
/* 00844 80A4C4E4 440F9000 */ mfc1 $t7, $f18
/* 00848 80A4C4E8 00000000 */ nop
/* 0084C 80A4C4EC 000FC400 */ sll $t8, $t7, 16
/* 00850 80A4C4F0 0018CC03 */ sra $t9, $t8, 16
/* 00854 80A4C4F4 27280064 */ addiu $t0, $t9, 0x0064 ## $t0 = 00000064
/* 00858 80A4C4F8 0C00A1B3 */ jal func_800286CC
/* 0085C 80A4C4FC AFA80010 */ sw $t0, 0x0010($sp)
/* 00860 80A4C500 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00864 80A4C504 00000000 */ nop
/* 00868 80A4C508 461E0102 */ mul.s $f4, $f0, $f30
/* 0086C 80A4C50C 240F0050 */ addiu $t7, $zero, 0x0050 ## $t7 = 00000050
/* 00870 80A4C510 AFAF0014 */ sw $t7, 0x0014($sp)
/* 00874 80A4C514 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 00878 80A4C518 02802825 */ or $a1, $s4, $zero ## $a1 = FFFFFFF4
/* 0087C 80A4C51C 02A03025 */ or $a2, $s5, $zero ## $a2 = 80A4DECC
/* 00880 80A4C520 02C03825 */ or $a3, $s6, $zero ## $a3 = 80A4DED8
/* 00884 80A4C524 4600218D */ trunc.w.s $f6, $f4
/* 00888 80A4C528 440B3000 */ mfc1 $t3, $f6
/* 0088C 80A4C52C 00000000 */ nop
/* 00890 80A4C530 000B6400 */ sll $t4, $t3, 16
/* 00894 80A4C534 000C6C03 */ sra $t5, $t4, 16
/* 00898 80A4C538 25AE0050 */ addiu $t6, $t5, 0x0050 ## $t6 = 00000050
/* 0089C 80A4C53C 0C00A1B3 */ jal func_800286CC
/* 008A0 80A4C540 AFAE0010 */ sw $t6, 0x0010($sp)
/* 008A4 80A4C544 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001
/* 008A8 80A4C548 5637FFBB */ bnel $s1, $s7, .L80A4C438
/* 008AC 80A4C54C 26104E20 */ addiu $s0, $s0, 0x4E20 ## $s0 = 00009C40
/* 008B0 80A4C550 8FBF006C */ lw $ra, 0x006C($sp)
/* 008B4 80A4C554 D7B40018 */ ldc1 $f20, 0x0018($sp)
/* 008B8 80A4C558 D7B60020 */ ldc1 $f22, 0x0020($sp)
/* 008BC 80A4C55C D7B80028 */ ldc1 $f24, 0x0028($sp)
/* 008C0 80A4C560 D7BA0030 */ ldc1 $f26, 0x0030($sp)
/* 008C4 80A4C564 D7BC0038 */ ldc1 $f28, 0x0038($sp)
/* 008C8 80A4C568 D7BE0040 */ ldc1 $f30, 0x0040($sp)
/* 008CC 80A4C56C 8FB0004C */ lw $s0, 0x004C($sp)
/* 008D0 80A4C570 8FB10050 */ lw $s1, 0x0050($sp)
/* 008D4 80A4C574 8FB20054 */ lw $s2, 0x0054($sp)
/* 008D8 80A4C578 8FB30058 */ lw $s3, 0x0058($sp)
/* 008DC 80A4C57C 8FB4005C */ lw $s4, 0x005C($sp)
/* 008E0 80A4C580 8FB50060 */ lw $s5, 0x0060($sp)
/* 008E4 80A4C584 8FB60064 */ lw $s6, 0x0064($sp)
/* 008E8 80A4C588 8FB70068 */ lw $s7, 0x0068($sp)
/* 008EC 80A4C58C 03E00008 */ jr $ra
/* 008F0 80A4C590 27BD0088 */ addiu $sp, $sp, 0x0088 ## $sp = 00000000

View File

@ -1,81 +0,0 @@
glabel func_80A4C594
/* 008F4 80A4C594 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
/* 008F8 80A4C598 F7B40018 */ sdc1 $f20, 0x0018($sp)
/* 008FC 80A4C59C 3C01425C */ lui $at, 0x425C ## $at = 425C0000
/* 00900 80A4C5A0 AFB50038 */ sw $s5, 0x0038($sp)
/* 00904 80A4C5A4 AFB40034 */ sw $s4, 0x0034($sp)
/* 00908 80A4C5A8 AFB30030 */ sw $s3, 0x0030($sp)
/* 0090C 80A4C5AC AFB2002C */ sw $s2, 0x002C($sp)
/* 00910 80A4C5B0 AFB10028 */ sw $s1, 0x0028($sp)
/* 00914 80A4C5B4 AFB00024 */ sw $s0, 0x0024($sp)
/* 00918 80A4C5B8 4481A000 */ mtc1 $at, $f20 ## $f20 = 55.00
/* 0091C 80A4C5BC 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
/* 00920 80A4C5C0 0080A825 */ or $s5, $a0, $zero ## $s5 = 00000000
/* 00924 80A4C5C4 AFBF003C */ sw $ra, 0x003C($sp)
/* 00928 80A4C5C8 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 0092C 80A4C5CC 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 00930 80A4C5D0 27B3004C */ addiu $s3, $sp, 0x004C ## $s3 = FFFFFFF4
/* 00934 80A4C5D4 2414000B */ addiu $s4, $zero, 0x000B ## $s4 = 0000000B
/* 00938 80A4C5D8 26101746 */ addiu $s0, $s0, 0x1746 ## $s0 = 00001746
.L80A4C5DC:
/* 0093C 80A4C5DC 00108400 */ sll $s0, $s0, 16
/* 00940 80A4C5E0 00108403 */ sra $s0, $s0, 16
/* 00944 80A4C5E4 00102400 */ sll $a0, $s0, 16
/* 00948 80A4C5E8 0C01DE1C */ jal Math_Sins
## sins?
/* 0094C 80A4C5EC 00042403 */ sra $a0, $a0, 16
/* 00950 80A4C5F0 46140102 */ mul.s $f4, $f0, $f20
/* 00954 80A4C5F4 C6460000 */ lwc1 $f6, 0x0000($s2) ## 00000000
/* 00958 80A4C5F8 00102400 */ sll $a0, $s0, 16
/* 0095C 80A4C5FC 00042403 */ sra $a0, $a0, 16
/* 00960 80A4C600 46062200 */ add.s $f8, $f4, $f6
/* 00964 80A4C604 E7A8004C */ swc1 $f8, 0x004C($sp)
/* 00968 80A4C608 C64A0004 */ lwc1 $f10, 0x0004($s2) ## 00000004
/* 0096C 80A4C60C 0C01DE0D */ jal Math_Coss
## coss?
/* 00970 80A4C610 E7AA0050 */ swc1 $f10, 0x0050($sp)
/* 00974 80A4C614 46140402 */ mul.s $f16, $f0, $f20
/* 00978 80A4C618 C6520008 */ lwc1 $f18, 0x0008($s2) ## 00000008
/* 0097C 80A4C61C 240E015E */ addiu $t6, $zero, 0x015E ## $t6 = 0000015E
/* 00980 80A4C620 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00984 80A4C624 AFA00010 */ sw $zero, 0x0010($sp)
/* 00988 80A4C628 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
/* 0098C 80A4C62C 02602825 */ or $a1, $s3, $zero ## $a1 = FFFFFFF4
/* 00990 80A4C630 46128100 */ add.s $f4, $f16, $f18
/* 00994 80A4C634 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00998 80A4C638 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 0099C 80A4C63C 0C00A527 */ jal func_8002949C
/* 009A0 80A4C640 E7A40054 */ swc1 $f4, 0x0054($sp)
/* 009A4 80A4C644 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001
/* 009A8 80A4C648 5634FFE4 */ bnel $s1, $s4, .L80A4C5DC
/* 009AC 80A4C64C 26101746 */ addiu $s0, $s0, 0x1746 ## $s0 = 00002E8C
/* 009B0 80A4C650 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
/* 009B4 80A4C654 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 009B8 80A4C658 2406012C */ addiu $a2, $zero, 0x012C ## $a2 = 0000012C
/* 009BC 80A4C65C 240702BC */ addiu $a3, $zero, 0x02BC ## $a3 = 000002BC
/* 009C0 80A4C660 0C00A511 */ jal func_80029444
/* 009C4 80A4C664 AFA00010 */ sw $zero, 0x0010($sp)
/* 009C8 80A4C668 240F0004 */ addiu $t7, $zero, 0x0004 ## $t7 = 00000004
/* 009CC 80A4C66C AFAF0010 */ sw $t7, 0x0010($sp)
/* 009D0 80A4C670 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
/* 009D4 80A4C674 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 009D8 80A4C678 240601F4 */ addiu $a2, $zero, 0x01F4 ## $a2 = 000001F4
/* 009DC 80A4C67C 0C00A511 */ jal func_80029444
/* 009E0 80A4C680 24070384 */ addiu $a3, $zero, 0x0384 ## $a3 = 00000384
/* 009E4 80A4C684 24180008 */ addiu $t8, $zero, 0x0008 ## $t8 = 00000008
/* 009E8 80A4C688 AFB80010 */ sw $t8, 0x0010($sp)
/* 009EC 80A4C68C 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
/* 009F0 80A4C690 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 009F4 80A4C694 240601F4 */ addiu $a2, $zero, 0x01F4 ## $a2 = 000001F4
/* 009F8 80A4C698 0C00A511 */ jal func_80029444
/* 009FC 80A4C69C 24070514 */ addiu $a3, $zero, 0x0514 ## $a3 = 00000514
/* 00A00 80A4C6A0 8FBF003C */ lw $ra, 0x003C($sp)
/* 00A04 80A4C6A4 D7B40018 */ ldc1 $f20, 0x0018($sp)
/* 00A08 80A4C6A8 8FB00024 */ lw $s0, 0x0024($sp)
/* 00A0C 80A4C6AC 8FB10028 */ lw $s1, 0x0028($sp)
/* 00A10 80A4C6B0 8FB2002C */ lw $s2, 0x002C($sp)
/* 00A14 80A4C6B4 8FB30030 */ lw $s3, 0x0030($sp)
/* 00A18 80A4C6B8 8FB40034 */ lw $s4, 0x0034($sp)
/* 00A1C 80A4C6BC 8FB50038 */ lw $s5, 0x0038($sp)
/* 00A20 80A4C6C0 03E00008 */ jr $ra
/* 00A24 80A4C6C4 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000

View File

@ -1,92 +0,0 @@
.late_rodata
glabel D_80A4E068
.float 0.01
.text
glabel func_80A4C6C8
/* 00A28 80A4C6C8 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00A2C 80A4C6CC 3C0E8016 */ lui $t6, %hi(gGameInfo)
/* 00A30 80A4C6D0 8DCEFA90 */ lw $t6, %lo(gGameInfo)($t6)
/* 00A34 80A4C6D4 AFBF001C */ sw $ra, 0x001C($sp)
/* 00A38 80A4C6D8 AFB00018 */ sw $s0, 0x0018($sp)
/* 00A3C 80A4C6DC AFA50034 */ sw $a1, 0x0034($sp)
/* 00A40 80A4C6E0 85CF116C */ lh $t7, 0x116C($t6) ## 8016116C
/* 00A44 80A4C6E4 3C0180A5 */ lui $at, %hi(D_80A4E068) ## $at = 80A50000
/* 00A48 80A4C6E8 C428E068 */ lwc1 $f8, %lo(D_80A4E068)($at)
/* 00A4C 80A4C6EC 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
/* 00A50 80A4C6F0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00A54 80A4C6F4 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
/* 00A58 80A4C6F8 468021A0 */ cvt.s.w $f6, $f4
/* 00A5C 80A4C6FC 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
/* 00A60 80A4C700 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068
/* 00A64 80A4C704 46083282 */ mul.s $f10, $f6, $f8
/* 00A68 80A4C708 44055000 */ mfc1 $a1, $f10
/* 00A6C 80A4C70C 0C01DE80 */ jal Math_ApproxF
/* 00A70 80A4C710 00000000 */ nop
/* 00A74 80A4C714 0C00B61A */ jal func_8002D868
/* 00A78 80A4C718 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A7C 80A4C71C 8FB80034 */ lw $t8, 0x0034($sp)
/* 00A80 80A4C720 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
/* 00A84 80A4C724 3C190001 */ lui $t9, 0x0001 ## $t9 = 00010000
/* 00A88 80A4C728 0338C821 */ addu $t9, $t9, $t8
/* 00A8C 80A4C72C 8F391E08 */ lw $t9, 0x1E08($t9) ## 00011E08
/* 00A90 80A4C730 310900FF */ andi $t1, $t0, 0x00FF ## $t1 = 00000000
/* 00A94 80A4C734 000950C0 */ sll $t2, $t1, 3
/* 00A98 80A4C738 032A1821 */ addu $v1, $t9, $t2
/* 00A9C 80A4C73C 8C620004 */ lw $v0, 0x0004($v1) ## 00000004
/* 00AA0 80A4C740 860801CE */ lh $t0, 0x01CE($s0) ## 000001CE
/* 00AA4 80A4C744 3C0E8016 */ lui $t6, %hi(gSegments)
/* 00AA8 80A4C748 00025900 */ sll $t3, $v0, 4
/* 00AAC 80A4C74C 000B6702 */ srl $t4, $t3, 28
/* 00AB0 80A4C750 000C6880 */ sll $t5, $t4, 2
/* 00AB4 80A4C754 01CD7021 */ addu $t6, $t6, $t5
/* 00AB8 80A4C758 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6)
/* 00ABC 80A4C75C 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 00AC0 80A4C760 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00AC4 80A4C764 00084880 */ sll $t1, $t0, 2
/* 00AC8 80A4C768 00417824 */ and $t7, $v0, $at
/* 00ACC 80A4C76C 01284823 */ subu $t1, $t1, $t0
/* 00AD0 80A4C770 00094840 */ sll $t1, $t1, 1
/* 00AD4 80A4C774 01CFC021 */ addu $t8, $t6, $t7
/* 00AD8 80A4C778 03093821 */ addu $a3, $t8, $t1
/* 00ADC 80A4C77C 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00AE0 80A4C780 00E13821 */ addu $a3, $a3, $at
/* 00AE4 80A4C784 84F90000 */ lh $t9, 0x0000($a3) ## 00000000
/* 00AE8 80A4C788 C600005C */ lwc1 $f0, 0x005C($s0) ## 0000005C
/* 00AEC 80A4C78C AFA70020 */ sw $a3, 0x0020($sp)
/* 00AF0 80A4C790 44998000 */ mtc1 $t9, $f16 ## $f16 = 0.00
/* 00AF4 80A4C794 46000005 */ abs.s $f0, $f0
/* 00AF8 80A4C798 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
/* 00AFC 80A4C79C 46808420 */ cvt.s.w $f16, $f16
/* 00B00 80A4C7A0 44060000 */ mfc1 $a2, $f0
/* 00B04 80A4C7A4 44058000 */ mfc1 $a1, $f16
/* 00B08 80A4C7A8 0C01DE80 */ jal Math_ApproxF
/* 00B0C 80A4C7AC 00000000 */ nop
/* 00B10 80A4C7B0 8FA70020 */ lw $a3, 0x0020($sp)
/* 00B14 80A4C7B4 C6000064 */ lwc1 $f0, 0x0064($s0) ## 00000064
/* 00B18 80A4C7B8 30430001 */ andi $v1, $v0, 0x0001 ## $v1 = 00000000
/* 00B1C 80A4C7BC 84EA0004 */ lh $t2, 0x0004($a3) ## 00000004
/* 00B20 80A4C7C0 46000005 */ abs.s $f0, $f0
/* 00B24 80A4C7C4 AFA30028 */ sw $v1, 0x0028($sp)
/* 00B28 80A4C7C8 448A9000 */ mtc1 $t2, $f18 ## $f18 = 0.00
/* 00B2C 80A4C7CC 44060000 */ mfc1 $a2, $f0
/* 00B30 80A4C7D0 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
/* 00B34 80A4C7D4 468094A0 */ cvt.s.w $f18, $f18
/* 00B38 80A4C7D8 44059000 */ mfc1 $a1, $f18
/* 00B3C 80A4C7DC 0C01DE80 */ jal Math_ApproxF
/* 00B40 80A4C7E0 00000000 */ nop
/* 00B44 80A4C7E4 C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028
/* 00B48 80A4C7E8 C6060060 */ lwc1 $f6, 0x0060($s0) ## 00000060
/* 00B4C 80A4C7EC 8FA30028 */ lw $v1, 0x0028($sp)
/* 00B50 80A4C7F0 46062200 */ add.s $f8, $f4, $f6
/* 00B54 80A4C7F4 00621824 */ and $v1, $v1, $v0
/* 00B58 80A4C7F8 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
/* 00B5C 80A4C7FC E6080028 */ swc1 $f8, 0x0028($s0) ## 00000028
/* 00B60 80A4C800 8FBF001C */ lw $ra, 0x001C($sp)
/* 00B64 80A4C804 8FB00018 */ lw $s0, 0x0018($sp)
/* 00B68 80A4C808 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00B6C 80A4C80C 03E00008 */ jr $ra
/* 00B70 80A4C810 00000000 */ nop

View File

@ -1,156 +0,0 @@
.late_rodata
glabel D_80A4E06C
.float 0.01
.text
glabel func_80A4C814
/* 00B74 80A4C814 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
/* 00B78 80A4C818 AFBF001C */ sw $ra, 0x001C($sp)
/* 00B7C 80A4C81C AFB00018 */ sw $s0, 0x0018($sp)
/* 00B80 80A4C820 AFA5005C */ sw $a1, 0x005C($sp)
/* 00B84 80A4C824 8498001C */ lh $t8, 0x001C($a0) ## 0000001C
/* 00B88 80A4C828 3C0F0001 */ lui $t7, 0x0001 ## $t7 = 00010000
/* 00B8C 80A4C82C 01E57821 */ addu $t7, $t7, $a1
/* 00B90 80A4C830 8DEF1E08 */ lw $t7, 0x1E08($t7) ## 00011E08
/* 00B94 80A4C834 331900FF */ andi $t9, $t8, 0x00FF ## $t9 = 00000000
/* 00B98 80A4C838 001958C0 */ sll $t3, $t9, 3
/* 00B9C 80A4C83C 01EB4021 */ addu $t0, $t7, $t3
/* 00BA0 80A4C840 848F01CE */ lh $t7, 0x01CE($a0) ## 000001CE
/* 00BA4 80A4C844 8D030004 */ lw $v1, 0x0004($t0) ## 00000004
/* 00BA8 80A4C848 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
/* 00BAC 80A4C84C 01EA0019 */ multu $t7, $t2
/* 00BB0 80A4C850 00036100 */ sll $t4, $v1, 4
/* 00BB4 80A4C854 000C6F02 */ srl $t5, $t4, 28
/* 00BB8 80A4C858 000D7080 */ sll $t6, $t5, 2
/* 00BBC 80A4C85C 3C188016 */ lui $t8, %hi(gSegments)
/* 00BC0 80A4C860 030EC021 */ addu $t8, $t8, $t6
/* 00BC4 80A4C864 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 00BC8 80A4C868 8F186FA8 */ lw $t8, %lo(gSegments)($t8)
/* 00BCC 80A4C86C 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00BD0 80A4C870 0061C824 */ and $t9, $v1, $at
/* 00BD4 80A4C874 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00BD8 80A4C878 03193821 */ addu $a3, $t8, $t9
/* 00BDC 80A4C87C 00005812 */ mflo $t3
/* 00BE0 80A4C880 00E13821 */ addu $a3, $a3, $at
/* 00BE4 80A4C884 00EB1021 */ addu $v0, $a3, $t3
/* 00BE8 80A4C888 844E0000 */ lh $t6, 0x0000($v0) ## 00000000
/* 00BEC 80A4C88C 848C01CC */ lh $t4, 0x01CC($a0) ## 000001CC
/* 00BF0 80A4C890 3C0F8016 */ lui $t7, %hi(gGameInfo)
/* 00BF4 80A4C894 448E2000 */ mtc1 $t6, $f4 ## $f4 = 0.00
/* 00BF8 80A4C898 8DEFFA90 */ lw $t7, %lo(gGameInfo)($t7)
/* 00BFC 80A4C89C 018A0019 */ multu $t4, $t2
/* 00C00 80A4C8A0 468021A0 */ cvt.s.w $f6, $f4
/* 00C04 80A4C8A4 3C0180A5 */ lui $at, %hi(D_80A4E06C) ## $at = 80A50000
/* 00C08 80A4C8A8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00C0C 80A4C8AC 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
/* 00C10 80A4C8B0 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
/* 00C14 80A4C8B4 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068
/* 00C18 80A4C8B8 E7A6002C */ swc1 $f6, 0x002C($sp)
/* 00C1C 80A4C8BC 84580002 */ lh $t8, 0x0002($v0) ## 00000002
/* 00C20 80A4C8C0 00006812 */ mflo $t5
/* 00C24 80A4C8C4 44984000 */ mtc1 $t8, $f8 ## $f8 = -0.00
/* 00C28 80A4C8C8 00ED4821 */ addu $t1, $a3, $t5
/* 00C2C 80A4C8CC 468042A0 */ cvt.s.w $f10, $f8
/* 00C30 80A4C8D0 C428E06C */ lwc1 $f8, %lo(D_80A4E06C)($at)
/* 00C34 80A4C8D4 E7AA0030 */ swc1 $f10, 0x0030($sp)
/* 00C38 80A4C8D8 84590004 */ lh $t9, 0x0004($v0) ## 00000004
/* 00C3C 80A4C8DC 44998000 */ mtc1 $t9, $f16 ## $f16 = 0.00
/* 00C40 80A4C8E0 00000000 */ nop
/* 00C44 80A4C8E4 468084A0 */ cvt.s.w $f18, $f16
/* 00C48 80A4C8E8 E7B20034 */ swc1 $f18, 0x0034($sp)
/* 00C4C 80A4C8EC 85EB116C */ lh $t3, 0x116C($t7) ## 8016116C
/* 00C50 80A4C8F0 AFA90048 */ sw $t1, 0x0048($sp)
/* 00C54 80A4C8F4 448B2000 */ mtc1 $t3, $f4 ## $f4 = 0.00
/* 00C58 80A4C8F8 00000000 */ nop
/* 00C5C 80A4C8FC 468021A0 */ cvt.s.w $f6, $f4
/* 00C60 80A4C900 46083282 */ mul.s $f10, $f6, $f8
/* 00C64 80A4C904 44055000 */ mfc1 $a1, $f10
/* 00C68 80A4C908 0C01DE80 */ jal Math_ApproxF
/* 00C6C 80A4C90C 00000000 */ nop
/* 00C70 80A4C910 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024
/* 00C74 80A4C914 AFA50020 */ sw $a1, 0x0020($sp)
/* 00C78 80A4C918 0C032D94 */ jal Math3D_Vec3fDistSq
/* 00C7C 80A4C91C 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFD4
/* 00C80 80A4C920 3C0141C8 */ lui $at, 0x41C8 ## $at = 41C80000
/* 00C84 80A4C924 44818000 */ mtc1 $at, $f16 ## $f16 = 25.00
/* 00C88 80A4C928 8FA90048 */ lw $t1, 0x0048($sp)
/* 00C8C 80A4C92C 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFD4
/* 00C90 80A4C930 4610003C */ c.lt.s $f0, $f16
/* 00C94 80A4C934 8FA50020 */ lw $a1, 0x0020($sp)
/* 00C98 80A4C938 45020006 */ bc1fl .L80A4C954
/* 00C9C 80A4C93C 852C0000 */ lh $t4, 0x0000($t1) ## 00000000
/* 00CA0 80A4C940 0C01DFB4 */ jal Math_Vec3f_Diff
## Vec3f_Sub
/* 00CA4 80A4C944 27A60038 */ addiu $a2, $sp, 0x0038 ## $a2 = FFFFFFE0
/* 00CA8 80A4C948 10000017 */ beq $zero, $zero, .L80A4C9A8
/* 00CAC 80A4C94C 2604005C */ addiu $a0, $s0, 0x005C ## $a0 = 0000005C
/* 00CB0 80A4C950 852C0000 */ lh $t4, 0x0000($t1) ## 00000000
.L80A4C954:
/* 00CB4 80A4C954 C7B2002C */ lwc1 $f18, 0x002C($sp)
/* 00CB8 80A4C958 C7AA0030 */ lwc1 $f10, 0x0030($sp)
/* 00CBC 80A4C95C 448C2000 */ mtc1 $t4, $f4 ## $f4 = 0.00
/* 00CC0 80A4C960 00000000 */ nop
/* 00CC4 80A4C964 468021A0 */ cvt.s.w $f6, $f4
/* 00CC8 80A4C968 46069201 */ sub.s $f8, $f18, $f6
/* 00CCC 80A4C96C C7A60034 */ lwc1 $f6, 0x0034($sp)
/* 00CD0 80A4C970 E7A80038 */ swc1 $f8, 0x0038($sp)
/* 00CD4 80A4C974 852D0002 */ lh $t5, 0x0002($t1) ## 00000002
/* 00CD8 80A4C978 448D8000 */ mtc1 $t5, $f16 ## $f16 = 0.00
/* 00CDC 80A4C97C 00000000 */ nop
/* 00CE0 80A4C980 46808120 */ cvt.s.w $f4, $f16
/* 00CE4 80A4C984 46045481 */ sub.s $f18, $f10, $f4
/* 00CE8 80A4C988 E7B2003C */ swc1 $f18, 0x003C($sp)
/* 00CEC 80A4C98C 852E0004 */ lh $t6, 0x0004($t1) ## 00000004
/* 00CF0 80A4C990 448E4000 */ mtc1 $t6, $f8 ## $f8 = 0.00
/* 00CF4 80A4C994 00000000 */ nop
/* 00CF8 80A4C998 46804420 */ cvt.s.w $f16, $f8
/* 00CFC 80A4C99C 46103281 */ sub.s $f10, $f6, $f16
/* 00D00 80A4C9A0 E7AA0040 */ swc1 $f10, 0x0040($sp)
/* 00D04 80A4C9A4 2604005C */ addiu $a0, $s0, 0x005C ## $a0 = 0000005C
.L80A4C9A8:
/* 00D08 80A4C9A8 0C292F63 */ jal func_80A4BD8C
/* 00D0C 80A4C9AC 27A50038 */ addiu $a1, $sp, 0x0038 ## $a1 = FFFFFFE0
/* 00D10 80A4C9B0 C6020068 */ lwc1 $f2, 0x0068($s0) ## 00000068
/* 00D14 80A4C9B4 C604005C */ lwc1 $f4, 0x005C($s0) ## 0000005C
/* 00D18 80A4C9B8 C6080060 */ lwc1 $f8, 0x0060($s0) ## 00000060
/* 00D1C 80A4C9BC C6100064 */ lwc1 $f16, 0x0064($s0) ## 00000064
/* 00D20 80A4C9C0 46022482 */ mul.s $f18, $f4, $f2
/* 00D24 80A4C9C4 E612005C */ swc1 $f18, 0x005C($s0) ## 0000005C
/* 00D28 80A4C9C8 46024182 */ mul.s $f6, $f8, $f2
/* 00D2C 80A4C9CC C600005C */ lwc1 $f0, 0x005C($s0) ## 0000005C
/* 00D30 80A4C9D0 46028282 */ mul.s $f10, $f16, $f2
/* 00D34 80A4C9D4 46000005 */ abs.s $f0, $f0
/* 00D38 80A4C9D8 44060000 */ mfc1 $a2, $f0
/* 00D3C 80A4C9DC E6060060 */ swc1 $f6, 0x0060($s0) ## 00000060
/* 00D40 80A4C9E0 E60A0064 */ swc1 $f10, 0x0064($s0) ## 00000064
/* 00D44 80A4C9E4 8FA5002C */ lw $a1, 0x002C($sp)
/* 00D48 80A4C9E8 0C01DE80 */ jal Math_ApproxF
/* 00D4C 80A4C9EC 8FA40020 */ lw $a0, 0x0020($sp)
/* 00D50 80A4C9F0 C6000060 */ lwc1 $f0, 0x0060($s0) ## 00000060
/* 00D54 80A4C9F4 30430001 */ andi $v1, $v0, 0x0001 ## $v1 = 00000000
/* 00D58 80A4C9F8 AFA30044 */ sw $v1, 0x0044($sp)
/* 00D5C 80A4C9FC 46000005 */ abs.s $f0, $f0
/* 00D60 80A4CA00 26040028 */ addiu $a0, $s0, 0x0028 ## $a0 = 00000028
/* 00D64 80A4CA04 44060000 */ mfc1 $a2, $f0
/* 00D68 80A4CA08 0C01DE80 */ jal Math_ApproxF
/* 00D6C 80A4CA0C 8FA50030 */ lw $a1, 0x0030($sp)
/* 00D70 80A4CA10 C6000064 */ lwc1 $f0, 0x0064($s0) ## 00000064
/* 00D74 80A4CA14 8FA30044 */ lw $v1, 0x0044($sp)
/* 00D78 80A4CA18 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
/* 00D7C 80A4CA1C 46000005 */ abs.s $f0, $f0
/* 00D80 80A4CA20 00621824 */ and $v1, $v1, $v0
/* 00D84 80A4CA24 44060000 */ mfc1 $a2, $f0
/* 00D88 80A4CA28 AFA30044 */ sw $v1, 0x0044($sp)
/* 00D8C 80A4CA2C 0C01DE80 */ jal Math_ApproxF
/* 00D90 80A4CA30 8FA50034 */ lw $a1, 0x0034($sp)
/* 00D94 80A4CA34 8FA30044 */ lw $v1, 0x0044($sp)
/* 00D98 80A4CA38 8FBF001C */ lw $ra, 0x001C($sp)
/* 00D9C 80A4CA3C 8FB00018 */ lw $s0, 0x0018($sp)
/* 00DA0 80A4CA40 00621824 */ and $v1, $v1, $v0
/* 00DA4 80A4CA44 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
/* 00DA8 80A4CA48 03E00008 */ jr $ra
/* 00DAC 80A4CA4C 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000

View File

@ -1,82 +0,0 @@
.late_rodata
glabel D_80A4E070
.float 0.01
.text
glabel func_80A4CA50
/* 00DB0 80A4CA50 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00DB4 80A4CA54 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00DB8 80A4CA58 AFA5002C */ sw $a1, 0x002C($sp)
/* 00DBC 80A4CA5C 8498001C */ lh $t8, 0x001C($a0) ## 0000001C
/* 00DC0 80A4CA60 3C0F0001 */ lui $t7, 0x0001 ## $t7 = 00010000
/* 00DC4 80A4CA64 01E57821 */ addu $t7, $t7, $a1
/* 00DC8 80A4CA68 8DEF1E08 */ lw $t7, 0x1E08($t7) ## 00011E08
/* 00DCC 80A4CA6C 331900FF */ andi $t9, $t8, 0x00FF ## $t9 = 00000000
/* 00DD0 80A4CA70 001948C0 */ sll $t1, $t9, 3
/* 00DD4 80A4CA74 01E91821 */ addu $v1, $t7, $t1
/* 00DD8 80A4CA78 8C620004 */ lw $v0, 0x0004($v1) ## 00000004
/* 00DDC 80A4CA7C 3C098016 */ lui $t1, %hi(gGameInfo)
/* 00DE0 80A4CA80 8D29FA90 */ lw $t1, %lo(gGameInfo)($t1)
/* 00DE4 80A4CA84 00025100 */ sll $t2, $v0, 4
/* 00DE8 80A4CA88 000A5F02 */ srl $t3, $t2, 28
/* 00DEC 80A4CA8C 849901CE */ lh $t9, 0x01CE($a0) ## 000001CE
/* 00DF0 80A4CA90 852A116C */ lh $t2, 0x116C($t1) ## 8016116C
/* 00DF4 80A4CA94 000B6080 */ sll $t4, $t3, 2
/* 00DF8 80A4CA98 3C0D8016 */ lui $t5, %hi(gSegments)
/* 00DFC 80A4CA9C 01AC6821 */ addu $t5, $t5, $t4
/* 00E00 80A4CAA0 8DAD6FA8 */ lw $t5, %lo(gSegments)($t5)
/* 00E04 80A4CAA4 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 00E08 80A4CAA8 448A2000 */ mtc1 $t2, $f4 ## $f4 = 0.00
/* 00E0C 80A4CAAC 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00E10 80A4CAB0 00197880 */ sll $t7, $t9, 2
/* 00E14 80A4CAB4 00417024 */ and $t6, $v0, $at
/* 00E18 80A4CAB8 01F97823 */ subu $t7, $t7, $t9
/* 00E1C 80A4CABC 000F7840 */ sll $t7, $t7, 1
/* 00E20 80A4CAC0 01AEC021 */ addu $t8, $t5, $t6
/* 00E24 80A4CAC4 468021A0 */ cvt.s.w $f6, $f4
/* 00E28 80A4CAC8 030F4021 */ addu $t0, $t8, $t7
/* 00E2C 80A4CACC 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00E30 80A4CAD0 01014021 */ addu $t0, $t0, $at
/* 00E34 80A4CAD4 3C0180A5 */ lui $at, %hi(D_80A4E070) ## $at = 80A50000
/* 00E38 80A4CAD8 C428E070 */ lwc1 $f8, %lo(D_80A4E070)($at)
/* 00E3C 80A4CADC 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 00E40 80A4CAE0 44818000 */ mtc1 $at, $f16 ## $f16 = 0.50
/* 00E44 80A4CAE4 46083282 */ mul.s $f10, $f6, $f8
/* 00E48 80A4CAE8 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 00E4C 80A4CAEC 3C063E38 */ lui $a2, 0x3E38 ## $a2 = 3E380000
/* 00E50 80A4CAF0 34C651EC */ ori $a2, $a2, 0x51EC ## $a2 = 3E3851EC
/* 00E54 80A4CAF4 AFA70028 */ sw $a3, 0x0028($sp)
/* 00E58 80A4CAF8 24840060 */ addiu $a0, $a0, 0x0060 ## $a0 = 00000060
/* 00E5C 80A4CAFC AFA8001C */ sw $t0, 0x001C($sp)
/* 00E60 80A4CB00 46105482 */ mul.s $f18, $f10, $f16
/* 00E64 80A4CB04 44059000 */ mfc1 $a1, $f18
/* 00E68 80A4CB08 0C01DE80 */ jal Math_ApproxF
/* 00E6C 80A4CB0C 00000000 */ nop
/* 00E70 80A4CB10 8FA8001C */ lw $t0, 0x001C($sp)
/* 00E74 80A4CB14 8FA70028 */ lw $a3, 0x0028($sp)
/* 00E78 80A4CB18 850B0000 */ lh $t3, 0x0000($t0) ## 00000000
/* 00E7C 80A4CB1C C4E00060 */ lwc1 $f0, 0x0060($a3) ## 00000060
/* 00E80 80A4CB20 24E40028 */ addiu $a0, $a3, 0x0028 ## $a0 = 00000028
/* 00E84 80A4CB24 448B2000 */ mtc1 $t3, $f4 ## $f4 = 0.00
/* 00E88 80A4CB28 46000005 */ abs.s $f0, $f0
/* 00E8C 80A4CB2C 468021A0 */ cvt.s.w $f6, $f4
/* 00E90 80A4CB30 44060000 */ mfc1 $a2, $f0
/* 00E94 80A4CB34 E4E60024 */ swc1 $f6, 0x0024($a3) ## 00000024
/* 00E98 80A4CB38 850C0004 */ lh $t4, 0x0004($t0) ## 00000004
/* 00E9C 80A4CB3C 448C4000 */ mtc1 $t4, $f8 ## $f8 = 0.00
/* 00EA0 80A4CB40 00000000 */ nop
/* 00EA4 80A4CB44 468042A0 */ cvt.s.w $f10, $f8
/* 00EA8 80A4CB48 E4EA002C */ swc1 $f10, 0x002C($a3) ## 0000002C
/* 00EAC 80A4CB4C 850D0002 */ lh $t5, 0x0002($t0) ## 00000002
/* 00EB0 80A4CB50 448D8000 */ mtc1 $t5, $f16 ## $f16 = 0.00
/* 00EB4 80A4CB54 00000000 */ nop
/* 00EB8 80A4CB58 46808420 */ cvt.s.w $f16, $f16
/* 00EBC 80A4CB5C 44058000 */ mfc1 $a1, $f16
/* 00EC0 80A4CB60 0C01DE80 */ jal Math_ApproxF
/* 00EC4 80A4CB64 00000000 */ nop
/* 00EC8 80A4CB68 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00ECC 80A4CB6C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00ED0 80A4CB70 03E00008 */ jr $ra
/* 00ED4 80A4CB74 00000000 */ nop

View File

@ -1,237 +0,0 @@
.late_rodata
glabel D_80A4E074
.word 0xBE99999A
glabel D_80A4E078
.float 0.3
glabel D_80A4E07C
.float 0.2
.text
glabel func_80A4CB78
/* 00ED8 80A4CB78 27BDFF78 */ addiu $sp, $sp, 0xFF78 ## $sp = FFFFFF78
/* 00EDC 80A4CB7C AFBF0024 */ sw $ra, 0x0024($sp)
/* 00EE0 80A4CB80 AFB10020 */ sw $s1, 0x0020($sp)
/* 00EE4 80A4CB84 AFB0001C */ sw $s0, 0x001C($sp)
/* 00EE8 80A4CB88 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
/* 00EEC 80A4CB8C 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 00EF0 80A4CB90 01C57021 */ addu $t6, $t6, $a1
/* 00EF4 80A4CB94 8DCE1E08 */ lw $t6, 0x1E08($t6) ## 00011E08
/* 00EF8 80A4CB98 31F800FF */ andi $t8, $t7, 0x00FF ## $t8 = 00000000
/* 00EFC 80A4CB9C 0018C8C0 */ sll $t9, $t8, 3
/* 00F00 80A4CBA0 01D91821 */ addu $v1, $t6, $t9
/* 00F04 80A4CBA4 8C620004 */ lw $v0, 0x0004($v1) ## 00000004
/* 00F08 80A4CBA8 848F01CE */ lh $t7, 0x01CE($a0) ## 000001CE
/* 00F0C 80A4CBAC 3C0B8016 */ lui $t3, %hi(gSegments)
/* 00F10 80A4CBB0 00024100 */ sll $t0, $v0, 4
/* 00F14 80A4CBB4 00084F02 */ srl $t1, $t0, 28
/* 00F18 80A4CBB8 00095080 */ sll $t2, $t1, 2
/* 00F1C 80A4CBBC 016A5821 */ addu $t3, $t3, $t2
/* 00F20 80A4CBC0 8D6B6FA8 */ lw $t3, %lo(gSegments)($t3)
/* 00F24 80A4CBC4 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 00F28 80A4CBC8 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00F2C 80A4CBCC 000FC080 */ sll $t8, $t7, 2
/* 00F30 80A4CBD0 00416024 */ and $t4, $v0, $at
/* 00F34 80A4CBD4 030FC023 */ subu $t8, $t8, $t7
/* 00F38 80A4CBD8 0018C040 */ sll $t8, $t8, 1
/* 00F3C 80A4CBDC 016C6821 */ addu $t5, $t3, $t4
/* 00F40 80A4CBE0 01B83821 */ addu $a3, $t5, $t8
/* 00F44 80A4CBE4 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00F48 80A4CBE8 00E13821 */ addu $a3, $a3, $at
/* 00F4C 80A4CBEC 84EE0002 */ lh $t6, 0x0002($a3) ## 00000002
/* 00F50 80A4CBF0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00F54 80A4CBF4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00F58 80A4CBF8 448E2000 */ mtc1 $t6, $f4 ## $f4 = 0.00
/* 00F5C 80A4CBFC 3C05C160 */ lui $a1, 0xC160 ## $a1 = C1600000
/* 00F60 80A4CC00 24840060 */ addiu $a0, $a0, 0x0060 ## $a0 = 00000060
/* 00F64 80A4CC04 468021A0 */ cvt.s.w $f6, $f4
/* 00F68 80A4CC08 AFA7007C */ sw $a3, 0x007C($sp)
/* 00F6C 80A4CC0C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00F70 80A4CC10 0C01DE80 */ jal Math_ApproxF
/* 00F74 80A4CC14 E7A60078 */ swc1 $f6, 0x0078($sp)
/* 00F78 80A4CC18 8FA7007C */ lw $a3, 0x007C($sp)
/* 00F7C 80A4CC1C C6020028 */ lwc1 $f2, 0x0028($s0) ## 00000028
/* 00F80 80A4CC20 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 00F84 80A4CC24 84F90000 */ lh $t9, 0x0000($a3) ## 00000000
/* 00F88 80A4CC28 44994000 */ mtc1 $t9, $f8 ## $f8 = 0.00
/* 00F8C 80A4CC2C 00000000 */ nop
/* 00F90 80A4CC30 468042A0 */ cvt.s.w $f10, $f8
/* 00F94 80A4CC34 E60A0024 */ swc1 $f10, 0x0024($s0) ## 00000024
/* 00F98 80A4CC38 84E80004 */ lh $t0, 0x0004($a3) ## 00000004
/* 00F9C 80A4CC3C 44888000 */ mtc1 $t0, $f16 ## $f16 = 0.00
/* 00FA0 80A4CC40 00000000 */ nop
/* 00FA4 80A4CC44 468084A0 */ cvt.s.w $f18, $f16
/* 00FA8 80A4CC48 E612002C */ swc1 $f18, 0x002C($s0) ## 0000002C
/* 00FAC 80A4CC4C E7A20074 */ swc1 $f2, 0x0074($sp)
/* 00FB0 80A4CC50 C6000060 */ lwc1 $f0, 0x0060($s0) ## 00000060
/* 00FB4 80A4CC54 4606003C */ c.lt.s $f0, $f6
/* 00FB8 80A4CC58 46001100 */ add.s $f4, $f2, $f0
/* 00FBC 80A4CC5C 45000068 */ bc1f .L80A4CE00
/* 00FC0 80A4CC60 E6040028 */ swc1 $f4, 0x0028($s0) ## 00000028
/* 00FC4 80A4CC64 C7A80078 */ lwc1 $f8, 0x0078($sp)
/* 00FC8 80A4CC68 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
/* 00FCC 80A4CC6C 4608503E */ c.le.s $f10, $f8
/* 00FD0 80A4CC70 00000000 */ nop
/* 00FD4 80A4CC74 45020063 */ bc1fl .L80A4CE04
/* 00FD8 80A4CC78 861901C6 */ lh $t9, 0x01C6($s0) ## 000001C6
/* 00FDC 80A4CC7C 860901C6 */ lh $t1, 0x01C6($s0) ## 000001C6
/* 00FE0 80A4CC80 3C014416 */ lui $at, 0x4416 ## $at = 44160000
/* 00FE4 80A4CC84 5520004C */ bnel $t1, $zero, .L80A4CDB8
/* 00FE8 80A4CC88 860201C6 */ lh $v0, 0x01C6($s0) ## 000001C6
/* 00FEC 80A4CC8C C6100090 */ lwc1 $f16, 0x0090($s0) ## 00000090
/* 00FF0 80A4CC90 44819000 */ mtc1 $at, $f18 ## $f18 = 600.00
/* 00FF4 80A4CC94 00000000 */ nop
/* 00FF8 80A4CC98 4612803C */ c.lt.s $f16, $f18
/* 00FFC 80A4CC9C 00000000 */ nop
/* 01000 80A4CCA0 45020017 */ bc1fl .L80A4CD00
/* 01004 80A4CCA4 920F01D3 */ lbu $t7, 0x01D3($s0) ## 000001D3
/* 01008 80A4CCA8 862A07A0 */ lh $t2, 0x07A0($s1) ## 000007A0
/* 0100C 80A4CCAC 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
/* 01010 80A4CCB0 000A5880 */ sll $t3, $t2, 2
/* 01014 80A4CCB4 022B6021 */ addu $t4, $s1, $t3
/* 01018 80A4CCB8 0C024BE2 */ jal Quake_Add
/* 0101C 80A4CCBC 8D840790 */ lw $a0, 0x0790($t4) ## 00000790
/* 01020 80A4CCC0 00022400 */ sll $a0, $v0, 16
/* 01024 80A4CCC4 AFA2006C */ sw $v0, 0x006C($sp)
/* 01028 80A4CCC8 00042403 */ sra $a0, $a0, 16
/* 0102C 80A4CCCC 0C024B6B */ jal Quake_SetSpeed
/* 01030 80A4CCD0 2405C350 */ addiu $a1, $zero, 0xC350 ## $a1 = FFFFC350
/* 01034 80A4CCD4 87A4006E */ lh $a0, 0x006E($sp)
/* 01038 80A4CCD8 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
/* 0103C 80A4CCDC 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 01040 80A4CCE0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01044 80A4CCE4 AFA00010 */ sw $zero, 0x0010($sp)
/* 01048 80A4CCE8 0C024B9C */ jal Quake_SetQuakeValues
/* 0104C 80A4CCEC AFA4002C */ sw $a0, 0x002C($sp)
/* 01050 80A4CCF0 8FA4002C */ lw $a0, 0x002C($sp)
/* 01054 80A4CCF4 0C024B7C */ jal Quake_SetCountdown
/* 01058 80A4CCF8 24050007 */ addiu $a1, $zero, 0x0007 ## $a1 = 00000007
/* 0105C 80A4CCFC 920F01D3 */ lbu $t7, 0x01D3($s0) ## 000001D3
.L80A4CD00:
/* 01060 80A4CD00 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01064 80A4CD04 31ED0010 */ andi $t5, $t7, 0x0010 ## $t5 = 00000000
/* 01068 80A4CD08 15A0002A */ bne $t5, $zero, .L80A4CDB4
/* 0106C 80A4CD0C E60401C0 */ swc1 $f4, 0x01C0($s0) ## 000001C0
/* 01070 80A4CD10 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024
/* 01074 80A4CD14 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 01078 80A4CD18 44815000 */ mtc1 $at, $f10 ## $f10 = 50.00
/* 0107C 80A4CD1C E7A6005C */ swc1 $f6, 0x005C($sp)
/* 01080 80A4CD20 C6080028 */ lwc1 $f8, 0x0028($s0) ## 00000028
/* 01084 80A4CD24 27B8005C */ addiu $t8, $sp, 0x005C ## $t8 = FFFFFFD4
/* 01088 80A4CD28 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 0108C 80A4CD2C 460A4400 */ add.s $f16, $f8, $f10
/* 01090 80A4CD30 262507C0 */ addiu $a1, $s1, 0x07C0 ## $a1 = 000007C0
/* 01094 80A4CD34 27A60068 */ addiu $a2, $sp, 0x0068 ## $a2 = FFFFFFE0
/* 01098 80A4CD38 27A70050 */ addiu $a3, $sp, 0x0050 ## $a3 = FFFFFFC8
/* 0109C 80A4CD3C E7B00060 */ swc1 $f16, 0x0060($sp)
/* 010A0 80A4CD40 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
/* 010A4 80A4CD44 AFB80014 */ sw $t8, 0x0014($sp)
/* 010A8 80A4CD48 AFB00010 */ sw $s0, 0x0010($sp)
/* 010AC 80A4CD4C 0C00F283 */ jal func_8003CA0C
/* 010B0 80A4CD50 E7B20064 */ swc1 $f18, 0x0064($sp)
/* 010B4 80A4CD54 3C01426E */ lui $at, 0x426E ## $at = 426E0000
/* 010B8 80A4CD58 44813000 */ mtc1 $at, $f6 ## $f6 = 59.50
/* 010BC 80A4CD5C C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028
/* 010C0 80A4CD60 3C014170 */ lui $at, 0x4170 ## $at = 41700000
/* 010C4 80A4CD64 44815000 */ mtc1 $at, $f10 ## $f10 = 15.00
/* 010C8 80A4CD68 46062201 */ sub.s $f8, $f4, $f6
/* 010CC 80A4CD6C 46000306 */ mov.s $f12, $f0
/* 010D0 80A4CD70 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 010D4 80A4CD74 46080081 */ sub.s $f2, $f0, $f8
/* 010D8 80A4CD78 46001005 */ abs.s $f0, $f2
/* 010DC 80A4CD7C 460A003C */ c.lt.s $f0, $f10
/* 010E0 80A4CD80 00000000 */ nop
/* 010E4 80A4CD84 4502000C */ bc1fl .L80A4CDB8
/* 010E8 80A4CD88 860201C6 */ lh $v0, 0x01C6($s0) ## 000001C6
/* 010EC 80A4CD8C 44819000 */ mtc1 $at, $f18 ## $f18 = 10.00
/* 010F0 80A4CD90 C6100024 */ lwc1 $f16, 0x0024($s0) ## 00000024
/* 010F4 80A4CD94 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 010F8 80A4CD98 46126100 */ add.s $f4, $f12, $f18
/* 010FC 80A4CD9C E7B00044 */ swc1 $f16, 0x0044($sp)
/* 01100 80A4CDA0 27A50044 */ addiu $a1, $sp, 0x0044 ## $a1 = FFFFFFBC
/* 01104 80A4CDA4 E7A40048 */ swc1 $f4, 0x0048($sp)
/* 01108 80A4CDA8 C606002C */ lwc1 $f6, 0x002C($s0) ## 0000002C
/* 0110C 80A4CDAC 0C2930E9 */ jal func_80A4C3A4
/* 01110 80A4CDB0 E7A6004C */ swc1 $f6, 0x004C($sp)
.L80A4CDB4:
/* 01114 80A4CDB4 860201C6 */ lh $v0, 0x01C6($s0) ## 000001C6
.L80A4CDB8:
/* 01118 80A4CDB8 3C0180A5 */ lui $at, %hi(D_80A4E074) ## $at = 80A50000
/* 0111C 80A4CDBC 18400003 */ blez $v0, .L80A4CDCC
/* 01120 80A4CDC0 244E0001 */ addiu $t6, $v0, 0x0001 ## $t6 = 00000001
/* 01124 80A4CDC4 1000003F */ beq $zero, $zero, .L80A4CEC4
/* 01128 80A4CDC8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L80A4CDCC:
/* 0112C 80A4CDCC A60E01C6 */ sh $t6, 0x01C6($s0) ## 000001C6
/* 01130 80A4CDD0 C42AE074 */ lwc1 $f10, %lo(D_80A4E074)($at)
/* 01134 80A4CDD4 C6080060 */ lwc1 $f8, 0x0060($s0) ## 00000060
/* 01138 80A4CDD8 C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028
/* 0113C 80A4CDDC 3C0180A5 */ lui $at, %hi(D_80A4E078) ## $at = 80A50000
/* 01140 80A4CDE0 460A4402 */ mul.s $f16, $f8, $f10
/* 01144 80A4CDE4 E6100060 */ swc1 $f16, 0x0060($s0) ## 00000060
/* 01148 80A4CDE8 C7A40078 */ lwc1 $f4, 0x0078($sp)
/* 0114C 80A4CDEC C428E078 */ lwc1 $f8, %lo(D_80A4E078)($at)
/* 01150 80A4CDF0 46049181 */ sub.s $f6, $f18, $f4
/* 01154 80A4CDF4 46083282 */ mul.s $f10, $f6, $f8
/* 01158 80A4CDF8 460A2401 */ sub.s $f16, $f4, $f10
/* 0115C 80A4CDFC E6100028 */ swc1 $f16, 0x0028($s0) ## 00000028
.L80A4CE00:
/* 01160 80A4CE00 861901C6 */ lh $t9, 0x01C6($s0) ## 000001C6
.L80A4CE04:
/* 01164 80A4CE04 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01168 80A4CE08 262507C0 */ addiu $a1, $s1, 0x07C0 ## $a1 = 000007C0
/* 0116C 80A4CE0C 1720002C */ bne $t9, $zero, .L80A4CEC0
/* 01170 80A4CE10 27A8003C */ addiu $t0, $sp, 0x003C ## $t0 = FFFFFFB4
/* 01174 80A4CE14 8E060024 */ lw $a2, 0x0024($s0) ## 00000024
/* 01178 80A4CE18 8E07002C */ lw $a3, 0x002C($s0) ## 0000002C
/* 0117C 80A4CE1C 27A90040 */ addiu $t1, $sp, 0x0040 ## $t1 = FFFFFFB8
/* 01180 80A4CE20 AFA90014 */ sw $t1, 0x0014($sp)
/* 01184 80A4CE24 0C010891 */ jal func_80042244
/* 01188 80A4CE28 AFA80010 */ sw $t0, 0x0010($sp)
/* 0118C 80A4CE2C 10400024 */ beq $v0, $zero, .L80A4CEC0
/* 01190 80A4CE30 C7B2003C */ lwc1 $f18, 0x003C($sp)
/* 01194 80A4CE34 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
/* 01198 80A4CE38 4612303E */ c.le.s $f6, $f18
/* 0119C 80A4CE3C 00000000 */ nop
/* 011A0 80A4CE40 45020020 */ bc1fl .L80A4CEC4
/* 011A4 80A4CE44 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 011A8 80A4CE48 920A01D3 */ lbu $t2, 0x01D3($s0) ## 000001D3
/* 011AC 80A4CE4C 354B0010 */ ori $t3, $t2, 0x0010 ## $t3 = 00000010
/* 011B0 80A4CE50 A20B01D3 */ sb $t3, 0x01D3($s0) ## 000001D3
/* 011B4 80A4CE54 C7A40074 */ lwc1 $f4, 0x0074($sp)
/* 011B8 80A4CE58 C7A8003C */ lwc1 $f8, 0x003C($sp)
/* 011BC 80A4CE5C 4604403C */ c.lt.s $f8, $f4
/* 011C0 80A4CE60 00000000 */ nop
/* 011C4 80A4CE64 4502000F */ bc1fl .L80A4CEA4
/* 011C8 80A4CE68 3C01C100 */ lui $at, 0xC100 ## $at = C1000000
/* 011CC 80A4CE6C C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024
/* 011D0 80A4CE70 E7A80034 */ swc1 $f8, 0x0034($sp)
/* 011D4 80A4CE74 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 011D8 80A4CE78 E7AA0030 */ swc1 $f10, 0x0030($sp)
/* 011DC 80A4CE7C C610002C */ lwc1 $f16, 0x002C($s0) ## 0000002C
/* 011E0 80A4CE80 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFA8
/* 011E4 80A4CE84 0C293165 */ jal func_80A4C594
/* 011E8 80A4CE88 E7B00038 */ swc1 $f16, 0x0038($sp)
/* 011EC 80A4CE8C 3C0180A5 */ lui $at, %hi(D_80A4E07C) ## $at = 80A50000
/* 011F0 80A4CE90 C426E07C */ lwc1 $f6, %lo(D_80A4E07C)($at)
/* 011F4 80A4CE94 C6120060 */ lwc1 $f18, 0x0060($s0) ## 00000060
/* 011F8 80A4CE98 46069102 */ mul.s $f4, $f18, $f6
/* 011FC 80A4CE9C E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
/* 01200 80A4CEA0 3C01C100 */ lui $at, 0xC100 ## $at = C1000000
.L80A4CEA4:
/* 01204 80A4CEA4 44810000 */ mtc1 $at, $f0 ## $f0 = -8.00
/* 01208 80A4CEA8 C60A0060 */ lwc1 $f10, 0x0060($s0) ## 00000060
/* 0120C 80A4CEAC 4600503C */ c.lt.s $f10, $f0
/* 01210 80A4CEB0 00000000 */ nop
/* 01214 80A4CEB4 45020003 */ bc1fl .L80A4CEC4
/* 01218 80A4CEB8 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 0121C 80A4CEBC E6000060 */ swc1 $f0, 0x0060($s0) ## 00000060
.L80A4CEC0:
/* 01220 80A4CEC0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80A4CEC4:
/* 01224 80A4CEC4 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01228 80A4CEC8 8FB0001C */ lw $s0, 0x001C($sp)
/* 0122C 80A4CECC 8FB10020 */ lw $s1, 0x0020($sp)
/* 01230 80A4CED0 03E00008 */ jr $ra
/* 01234 80A4CED4 27BD0088 */ addiu $sp, $sp, 0x0088 ## $sp = 00000000

View File

@ -1,123 +0,0 @@
.late_rodata
glabel D_80A4E080
.word 0x3C89AE41
glabel D_80A4E084
.float 9.58738019108e-05
glabel D_80A4E088
.float 9.58738019108e-05
glabel D_80A4E08C
.float 9.58738019108e-05
.text
glabel func_80A4CED8
/* 01238 80A4CED8 27BDFF68 */ addiu $sp, $sp, 0xFF68 ## $sp = FFFFFF68
/* 0123C 80A4CEDC AFBF001C */ sw $ra, 0x001C($sp)
/* 01240 80A4CEE0 AFB00018 */ sw $s0, 0x0018($sp)
/* 01244 80A4CEE4 AFA5009C */ sw $a1, 0x009C($sp)
/* 01248 80A4CEE8 908201D3 */ lbu $v0, 0x01D3($a0) ## 000001D3
/* 0124C 80A4CEEC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01250 80A4CEF0 26050100 */ addiu $a1, $s0, 0x0100 ## $a1 = 00000100
/* 01254 80A4CEF4 30420008 */ andi $v0, $v0, 0x0008 ## $v0 = 00000000
/* 01258 80A4CEF8 10400003 */ beq $v0, $zero, .L80A4CF08
/* 0125C 80A4CEFC 00000000 */ nop
/* 01260 80A4CF00 10000009 */ beq $zero, $zero, .L80A4CF28
/* 01264 80A4CF04 C48C01BC */ lwc1 $f12, 0x01BC($a0) ## 000001BC
.L80A4CF08:
/* 01268 80A4CF08 0C032D9E */ jal Math3D_Vec3f_DistXYZ
/* 0126C 80A4CF0C 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
/* 01270 80A4CF10 3C0180A5 */ lui $at, %hi(D_80A4E080) ## $at = 80A50000
/* 01274 80A4CF14 C424E080 */ lwc1 $f4, %lo(D_80A4E080)($at)
/* 01278 80A4CF18 920201D3 */ lbu $v0, 0x01D3($s0) ## 000001D3
/* 0127C 80A4CF1C 46040302 */ mul.s $f12, $f0, $f4
/* 01280 80A4CF20 30420008 */ andi $v0, $v0, 0x0008 ## $v0 = 00000000
/* 01284 80A4CF24 E60C01BC */ swc1 $f12, 0x01BC($s0) ## 000001BC
.L80A4CF28:
/* 01288 80A4CF28 C60601C0 */ lwc1 $f6, 0x01C0($s0) ## 000001C0
/* 0128C 80A4CF2C 3C0480A5 */ lui $a0, %hi(D_80A4DEE4) ## $a0 = 80A50000
/* 01290 80A4CF30 2484DEE4 */ addiu $a0, $a0, %lo(D_80A4DEE4) ## $a0 = 80A4DEE4
/* 01294 80A4CF34 46066302 */ mul.s $f12, $f12, $f6
/* 01298 80A4CF38 1040000D */ beq $v0, $zero, .L80A4CF70
/* 0129C 80A4CF3C 2605005C */ addiu $a1, $s0, 0x005C ## $a1 = 0000005C
/* 012A0 80A4CF40 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 012A4 80A4CF44 8FA5009C */ lw $a1, 0x009C($sp)
/* 012A8 80A4CF48 27A60028 */ addiu $a2, $sp, 0x0028 ## $a2 = FFFFFF90
/* 012AC 80A4CF4C 0C292FCA */ jal func_80A4BF28
/* 012B0 80A4CF50 E7AC008C */ swc1 $f12, 0x008C($sp)
/* 012B4 80A4CF54 3C0480A5 */ lui $a0, %hi(D_80A4DEE4) ## $a0 = 80A50000
/* 012B8 80A4CF58 2484DEE4 */ addiu $a0, $a0, %lo(D_80A4DEE4) ## $a0 = 80A4DEE4
/* 012BC 80A4CF5C 2605005C */ addiu $a1, $s0, 0x005C ## $a1 = 0000005C
/* 012C0 80A4CF60 0C032DED */ jal Math3D_Vec3f_Cross
/* 012C4 80A4CF64 27A60080 */ addiu $a2, $sp, 0x0080 ## $a2 = FFFFFFE8
/* 012C8 80A4CF68 10000005 */ beq $zero, $zero, .L80A4CF80
/* 012CC 80A4CF6C C7AC008C */ lwc1 $f12, 0x008C($sp)
.L80A4CF70:
/* 012D0 80A4CF70 27A60080 */ addiu $a2, $sp, 0x0080 ## $a2 = FFFFFFE8
/* 012D4 80A4CF74 0C032DED */ jal Math3D_Vec3f_Cross
/* 012D8 80A4CF78 E7AC008C */ swc1 $f12, 0x008C($sp)
/* 012DC 80A4CF7C C7AC008C */ lwc1 $f12, 0x008C($sp)
.L80A4CF80:
/* 012E0 80A4CF80 27A40074 */ addiu $a0, $sp, 0x0074 ## $a0 = FFFFFFDC
/* 012E4 80A4CF84 27A50080 */ addiu $a1, $sp, 0x0080 ## $a1 = FFFFFFE8
/* 012E8 80A4CF88 0C292F63 */ jal func_80A4BD8C
/* 012EC 80A4CF8C E7AC008C */ swc1 $f12, 0x008C($sp)
/* 012F0 80A4CF90 27A40074 */ addiu $a0, $sp, 0x0074 ## $a0 = FFFFFFDC
/* 012F4 80A4CF94 10400008 */ beq $v0, $zero, .L80A4CFB8
/* 012F8 80A4CF98 C7AC008C */ lwc1 $f12, 0x008C($sp)
/* 012FC 80A4CF9C 8C8F0000 */ lw $t7, 0x0000($a0) ## FFFFFFDC
/* 01300 80A4CFA0 AE0F01B0 */ sw $t7, 0x01B0($s0) ## 000001B0
/* 01304 80A4CFA4 8C8E0004 */ lw $t6, 0x0004($a0) ## FFFFFFE0
/* 01308 80A4CFA8 AE0E01B4 */ sw $t6, 0x01B4($s0) ## 000001B4
/* 0130C 80A4CFAC 8C8F0008 */ lw $t7, 0x0008($a0) ## FFFFFFE4
/* 01310 80A4CFB0 10000007 */ beq $zero, $zero, .L80A4CFD0
/* 01314 80A4CFB4 AE0F01B8 */ sw $t7, 0x01B8($s0) ## 000001B8
.L80A4CFB8:
/* 01318 80A4CFB8 8E1901B0 */ lw $t9, 0x01B0($s0) ## 000001B0
/* 0131C 80A4CFBC AC990000 */ sw $t9, 0x0000($a0) ## FFFFFFDC
/* 01320 80A4CFC0 8E1801B4 */ lw $t8, 0x01B4($s0) ## 000001B4
/* 01324 80A4CFC4 AC980004 */ sw $t8, 0x0004($a0) ## FFFFFFE0
/* 01328 80A4CFC8 8E1901B8 */ lw $t9, 0x01B8($s0) ## 000001B8
/* 0132C 80A4CFCC AC990008 */ sw $t9, 0x0008($a0) ## FFFFFFE4
.L80A4CFD0:
/* 01330 80A4CFD0 00802825 */ or $a1, $a0, $zero ## $a1 = FFFFFFDC
/* 01334 80A4CFD4 0C0348FF */ jal func_800D23FC
/* 01338 80A4CFD8 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 0133C 80A4CFDC 860800B6 */ lh $t0, 0x00B6($s0) ## 000000B6
/* 01340 80A4CFE0 3C0180A5 */ lui $at, %hi(D_80A4E084) ## $at = 80A50000
/* 01344 80A4CFE4 C430E084 */ lwc1 $f16, %lo(D_80A4E084)($at)
/* 01348 80A4CFE8 44884000 */ mtc1 $t0, $f8 ## $f8 = 0.00
/* 0134C 80A4CFEC 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 01350 80A4CFF0 468042A0 */ cvt.s.w $f10, $f8
/* 01354 80A4CFF4 46105302 */ mul.s $f12, $f10, $f16
/* 01358 80A4CFF8 0C034348 */ jal Matrix_RotateY
/* 0135C 80A4CFFC 00000000 */ nop
/* 01360 80A4D000 860900B4 */ lh $t1, 0x00B4($s0) ## 000000B4
/* 01364 80A4D004 3C0180A5 */ lui $at, %hi(D_80A4E088) ## $at = 80A50000
/* 01368 80A4D008 C426E088 */ lwc1 $f6, %lo(D_80A4E088)($at)
/* 0136C 80A4D00C 44899000 */ mtc1 $t1, $f18 ## $f18 = 0.00
/* 01370 80A4D010 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 01374 80A4D014 46809120 */ cvt.s.w $f4, $f18
/* 01378 80A4D018 46062302 */ mul.s $f12, $f4, $f6
/* 0137C 80A4D01C 0C0342DC */ jal Matrix_RotateX
/* 01380 80A4D020 00000000 */ nop
/* 01384 80A4D024 860A00B8 */ lh $t2, 0x00B8($s0) ## 000000B8
/* 01388 80A4D028 3C0180A5 */ lui $at, %hi(D_80A4E08C) ## $at = 80A50000
/* 0138C 80A4D02C C430E08C */ lwc1 $f16, %lo(D_80A4E08C)($at)
/* 01390 80A4D030 448A4000 */ mtc1 $t2, $f8 ## $f8 = 0.00
/* 01394 80A4D034 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 01398 80A4D038 468042A0 */ cvt.s.w $f10, $f8
/* 0139C 80A4D03C 46105302 */ mul.s $f12, $f10, $f16
/* 013A0 80A4D040 0C0343B5 */ jal Matrix_RotateZ
/* 013A4 80A4D044 00000000 */ nop
/* 013A8 80A4D048 0C034236 */ jal Matrix_Get
/* 013AC 80A4D04C 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFF9C
/* 013B0 80A4D050 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFF9C
/* 013B4 80A4D054 260500B4 */ addiu $a1, $s0, 0x00B4 ## $a1 = 000000B4
/* 013B8 80A4D058 0C034833 */ jal func_800D20CC
/* 013BC 80A4D05C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 013C0 80A4D060 8FBF001C */ lw $ra, 0x001C($sp)
/* 013C4 80A4D064 8FB00018 */ lw $s0, 0x0018($sp)
/* 013C8 80A4D068 27BD0098 */ addiu $sp, $sp, 0x0098 ## $sp = 00000000
/* 013CC 80A4D06C 03E00008 */ jr $ra
/* 013D0 80A4D070 00000000 */ nop

View File

@ -1,38 +0,0 @@
glabel func_80A4D074
/* 013D4 80A4D074 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 013D8 80A4D078 AFBF0014 */ sw $ra, 0x0014($sp)
/* 013DC 80A4D07C AFA50024 */ sw $a1, 0x0024($sp)
/* 013E0 80A4D080 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
/* 013E4 80A4D084 AFA40020 */ sw $a0, 0x0020($sp)
/* 013E8 80A4D088 00021203 */ sra $v0, $v0, 8
/* 013EC 80A4D08C 30420003 */ andi $v0, $v0, 0x0003 ## $v0 = 00000000
/* 013F0 80A4D090 00021400 */ sll $v0, $v0, 16
/* 013F4 80A4D094 00021403 */ sra $v0, $v0, 16
/* 013F8 80A4D098 0C29304D */ jal func_80A4C134
/* 013FC 80A4D09C A7A2001E */ sh $v0, 0x001E($sp)
/* 01400 80A4D0A0 87A2001E */ lh $v0, 0x001E($sp)
/* 01404 80A4D0A4 8FA40020 */ lw $a0, 0x0020($sp)
/* 01408 80A4D0A8 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 0140C 80A4D0AC 50400004 */ beql $v0, $zero, .L80A4D0C0
/* 01410 80A4D0B0 848601CC */ lh $a2, 0x01CC($a0) ## 000001CC
/* 01414 80A4D0B4 1441000B */ bne $v0, $at, .L80A4D0E4
/* 01418 80A4D0B8 00000000 */ nop
/* 0141C 80A4D0BC 848601CC */ lh $a2, 0x01CC($a0) ## 000001CC
.L80A4D0C0:
/* 01420 80A4D0C0 8FA50024 */ lw $a1, 0x0024($sp)
/* 01424 80A4D0C4 10C00004 */ beq $a2, $zero, .L80A4D0D8
/* 01428 80A4D0C8 00000000 */ nop
/* 0142C 80A4D0CC 848E01CA */ lh $t6, 0x01CA($a0) ## 000001CA
/* 01430 80A4D0D0 15C60004 */ bne $t6, $a2, .L80A4D0E4
/* 01434 80A4D0D4 00000000 */ nop
.L80A4D0D8:
/* 01438 80A4D0D8 0C293071 */ jal func_80A4C1C4
/* 0143C 80A4D0DC AFA40020 */ sw $a0, 0x0020($sp)
/* 01440 80A4D0E0 8FA40020 */ lw $a0, 0x0020($sp)
.L80A4D0E4:
/* 01444 80A4D0E4 0C292F95 */ jal func_80A4BE54
/* 01448 80A4D0E8 8FA50024 */ lw $a1, 0x0024($sp)
/* 0144C 80A4D0EC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01450 80A4D0F0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 01454 80A4D0F4 03E00008 */ jr $ra
/* 01458 80A4D0F8 00000000 */ nop

View File

@ -1,221 +0,0 @@
.late_rodata
glabel D_80A4E090
.word 0x477FFF00
glabel D_80A4E094
.float 0.2
.text
glabel func_80A4D0FC
/* 0145C 80A4D0FC 27BDFF18 */ addiu $sp, $sp, 0xFF18 ## $sp = FFFFFF18
/* 01460 80A4D100 AFBF009C */ sw $ra, 0x009C($sp)
/* 01464 80A4D104 AFBE0098 */ sw $s8, 0x0098($sp)
/* 01468 80A4D108 AFB70094 */ sw $s7, 0x0094($sp)
/* 0146C 80A4D10C AFB60090 */ sw $s6, 0x0090($sp)
/* 01470 80A4D110 AFB5008C */ sw $s5, 0x008C($sp)
/* 01474 80A4D114 AFB40088 */ sw $s4, 0x0088($sp)
/* 01478 80A4D118 AFB30084 */ sw $s3, 0x0084($sp)
/* 0147C 80A4D11C AFB20080 */ sw $s2, 0x0080($sp)
/* 01480 80A4D120 AFB1007C */ sw $s1, 0x007C($sp)
/* 01484 80A4D124 AFB00078 */ sw $s0, 0x0078($sp)
/* 01488 80A4D128 F7BE0070 */ sdc1 $f30, 0x0070($sp)
/* 0148C 80A4D12C F7BC0068 */ sdc1 $f28, 0x0068($sp)
/* 01490 80A4D130 F7BA0060 */ sdc1 $f26, 0x0060($sp)
/* 01494 80A4D134 F7B80058 */ sdc1 $f24, 0x0058($sp)
/* 01498 80A4D138 F7B60050 */ sdc1 $f22, 0x0050($sp)
/* 0149C 80A4D13C F7B40048 */ sdc1 $f20, 0x0048($sp)
/* 014A0 80A4D140 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
/* 014A4 80A4D144 3C0180A5 */ lui $at, %hi(D_80A4E090) ## $at = 80A50000
/* 014A8 80A4D148 C43EE090 */ lwc1 $f30, %lo(D_80A4E090)($at)
/* 014AC 80A4D14C 00021283 */ sra $v0, $v0, 10
/* 014B0 80A4D150 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
/* 014B4 80A4D154 3C0180A5 */ lui $at, %hi(D_80A4E094) ## $at = 80A50000
/* 014B8 80A4D158 00021400 */ sll $v0, $v0, 16
/* 014BC 80A4D15C C43CE094 */ lwc1 $f28, %lo(D_80A4E094)($at)
/* 014C0 80A4D160 00021403 */ sra $v0, $v0, 16
/* 014C4 80A4D164 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 014C8 80A4D168 3C0F80A5 */ lui $t7, %hi(D_80A4DEF0) ## $t7 = 80A50000
/* 014CC 80A4D16C 25EFDEF0 */ addiu $t7, $t7, %lo(D_80A4DEF0) ## $t7 = 80A4DEF0
/* 014D0 80A4D170 00027080 */ sll $t6, $v0, 2
/* 014D4 80A4D174 3C1E0401 */ lui $s8, 0x0401 ## $s8 = 04010000
/* 014D8 80A4D178 4481D000 */ mtc1 $at, $f26 ## $f26 = 50.00
/* 014DC 80A4D17C 00A0B025 */ or $s6, $a1, $zero ## $s6 = 00000000
/* 014E0 80A4D180 27DED340 */ addiu $s8, $s8, 0xD340 ## $s8 = 0400D340
/* 014E4 80A4D184 01CFA821 */ addu $s5, $t6, $t7
/* 014E8 80A4D188 27B100D0 */ addiu $s1, $sp, 0x00D0 ## $s1 = FFFFFFE8
/* 014EC 80A4D18C 00009025 */ or $s2, $zero, $zero ## $s2 = 00000000
/* 014F0 80A4D190 00009825 */ or $s3, $zero, $zero ## $s3 = 00000000
/* 014F4 80A4D194 24940024 */ addiu $s4, $a0, 0x0024 ## $s4 = 00000024
/* 014F8 80A4D198 27B700C4 */ addiu $s7, $sp, 0x00C4 ## $s7 = FFFFFFDC
.L80A4D19C:
/* 014FC 80A4D19C 00122400 */ sll $a0, $s2, 16
/* 01500 80A4D1A0 0C01DE1C */ jal Math_Sins
## sins?
/* 01504 80A4D1A4 00042403 */ sra $a0, $a0, 16
/* 01508 80A4D1A8 00122400 */ sll $a0, $s2, 16
/* 0150C 80A4D1AC 46000586 */ mov.s $f22, $f0
/* 01510 80A4D1B0 0C01DE0D */ jal Math_Coss
## coss?
/* 01514 80A4D1B4 00042403 */ sra $a0, $a0, 16
/* 01518 80A4D1B8 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 0151C 80A4D1BC 46000606 */ mov.s $f24, $f0
/* 01520 80A4D1C0 461E0102 */ mul.s $f4, $f0, $f30
/* 01524 80A4D1C4 4600218D */ trunc.w.s $f6, $f4
/* 01528 80A4D1C8 44103000 */ mfc1 $s0, $f6
/* 0152C 80A4D1CC 00000000 */ nop
/* 01530 80A4D1D0 00108400 */ sll $s0, $s0, 16
/* 01534 80A4D1D4 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 01538 80A4D1D8 00108403 */ sra $s0, $s0, 16
/* 0153C 80A4D1DC 00102400 */ sll $a0, $s0, 16
/* 01540 80A4D1E0 00042403 */ sra $a0, $a0, 16
/* 01544 80A4D1E4 0C01DE1C */ jal Math_Sins
## sins?
/* 01548 80A4D1E8 46000506 */ mov.s $f20, $f0
/* 0154C 80A4D1EC 461AA202 */ mul.s $f8, $f20, $f26
/* 01550 80A4D1F0 00102400 */ sll $a0, $s0, 16
/* 01554 80A4D1F4 00042403 */ sra $a0, $a0, 16
/* 01558 80A4D1F8 46164282 */ mul.s $f10, $f8, $f22
/* 0155C 80A4D1FC 00000000 */ nop
/* 01560 80A4D200 460A0402 */ mul.s $f16, $f0, $f10
/* 01564 80A4D204 0C01DE1C */ jal Math_Sins
## sins?
/* 01568 80A4D208 E7B000D0 */ swc1 $f16, 0x00D0($sp)
/* 0156C 80A4D20C 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 01570 80A4D210 46000506 */ mov.s $f20, $f0
/* 01574 80A4D214 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 01578 80A4D218 44819000 */ mtc1 $at, $f18 ## $f18 = 0.50
/* 0157C 80A4D21C 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 01580 80A4D220 44813000 */ mtc1 $at, $f6 ## $f6 = 100.00
/* 01584 80A4D224 46120101 */ sub.s $f4, $f0, $f18
/* 01588 80A4D228 C6B00000 */ lwc1 $f16, 0x0000($s5) ## 00000000
/* 0158C 80A4D22C 46062202 */ mul.s $f8, $f4, $f6
/* 01590 80A4D230 00000000 */ nop
/* 01594 80A4D234 46144282 */ mul.s $f10, $f8, $f20
/* 01598 80A4D238 460A8480 */ add.s $f18, $f16, $f10
/* 0159C 80A4D23C 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 015A0 80A4D240 E7B200D4 */ swc1 $f18, 0x00D4($sp)
/* 015A4 80A4D244 00102400 */ sll $a0, $s0, 16
/* 015A8 80A4D248 00042403 */ sra $a0, $a0, 16
/* 015AC 80A4D24C 0C01DE1C */ jal Math_Sins
## sins?
/* 015B0 80A4D250 46000506 */ mov.s $f20, $f0
/* 015B4 80A4D254 461AA102 */ mul.s $f4, $f20, $f26
/* 015B8 80A4D258 C7B000D0 */ lwc1 $f16, 0x00D0($sp)
/* 015BC 80A4D25C 46182182 */ mul.s $f6, $f4, $f24
/* 015C0 80A4D260 00000000 */ nop
/* 015C4 80A4D264 46060202 */ mul.s $f8, $f0, $f6
/* 015C8 80A4D268 00000000 */ nop
/* 015CC 80A4D26C 461C8282 */ mul.s $f10, $f16, $f28
/* 015D0 80A4D270 E7A800D8 */ swc1 $f8, 0x00D8($sp)
/* 015D4 80A4D274 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 015D8 80A4D278 E7AA00C4 */ swc1 $f10, 0x00C4($sp)
/* 015DC 80A4D27C 3C014170 */ lui $at, 0x4170 ## $at = 41700000
/* 015E0 80A4D280 44819000 */ mtc1 $at, $f18 ## $f18 = 15.00
/* 015E4 80A4D284 C7B000D8 */ lwc1 $f16, 0x00D8($sp)
/* 015E8 80A4D288 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 015EC 80A4D28C 46120102 */ mul.s $f4, $f0, $f18
/* 015F0 80A4D290 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00
/* 015F4 80A4D294 02202025 */ or $a0, $s1, $zero ## $a0 = FFFFFFE8
/* 015F8 80A4D298 461C8282 */ mul.s $f10, $f16, $f28
/* 015FC 80A4D29C 02802825 */ or $a1, $s4, $zero ## $a1 = 00000024
/* 01600 80A4D2A0 02203025 */ or $a2, $s1, $zero ## $a2 = FFFFFFE8
/* 01604 80A4D2A4 46062200 */ add.s $f8, $f4, $f6
/* 01608 80A4D2A8 E7AA00CC */ swc1 $f10, 0x00CC($sp)
/* 0160C 80A4D2AC 0C01DFA7 */ jal Math_Vec3f_Sum
## Vec3f_Add
/* 01610 80A4D2B0 E7A800C8 */ swc1 $f8, 0x00C8($sp)
/* 01614 80A4D2B4 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 01618 80A4D2B8 00000000 */ nop
/* 0161C 80A4D2BC 3C0140E0 */ lui $at, 0x40E0 ## $at = 40E00000
/* 01620 80A4D2C0 44819000 */ mtc1 $at, $f18 ## $f18 = 7.00
/* 01624 80A4D2C4 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 01628 80A4D2C8 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
/* 0162C 80A4D2CC 46120102 */ mul.s $f4, $f0, $f18
/* 01630 80A4D2D0 2419FEAC */ addiu $t9, $zero, 0xFEAC ## $t9 = FFFFFEAC
/* 01634 80A4D2D4 24080021 */ addiu $t0, $zero, 0x0021 ## $t0 = 00000021
/* 01638 80A4D2D8 2409001C */ addiu $t1, $zero, 0x001C ## $t1 = 0000001C
/* 0163C 80A4D2DC 240A0002 */ addiu $t2, $zero, 0x0002 ## $t2 = 00000002
/* 01640 80A4D2E0 240D0001 */ addiu $t5, $zero, 0x0001 ## $t5 = 00000001
/* 01644 80A4D2E4 240E0046 */ addiu $t6, $zero, 0x0046 ## $t6 = 00000046
/* 01648 80A4D2E8 46062200 */ add.s $f8, $f4, $f6
/* 0164C 80A4D2EC 240FFFFF */ addiu $t7, $zero, 0xFFFF ## $t7 = FFFFFFFF
/* 01650 80A4D2F0 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 01654 80A4D2F4 AFB80038 */ sw $t8, 0x0038($sp)
/* 01658 80A4D2F8 4600440D */ trunc.w.s $f16, $f8
/* 0165C 80A4D2FC AFAF0034 */ sw $t7, 0x0034($sp)
/* 01660 80A4D300 AFAE0030 */ sw $t6, 0x0030($sp)
/* 01664 80A4D304 AFAD0028 */ sw $t5, 0x0028($sp)
/* 01668 80A4D308 440C8000 */ mfc1 $t4, $f16
/* 0166C 80A4D30C AFAA001C */ sw $t2, 0x001C($sp)
/* 01670 80A4D310 AFA90018 */ sw $t1, 0x0018($sp)
/* 01674 80A4D314 AFA80014 */ sw $t0, 0x0014($sp)
/* 01678 80A4D318 AFB90010 */ sw $t9, 0x0010($sp)
/* 0167C 80A4D31C 02C02025 */ or $a0, $s6, $zero ## $a0 = 00000000
/* 01680 80A4D320 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFE8
/* 01684 80A4D324 02E03025 */ or $a2, $s7, $zero ## $a2 = FFFFFFDC
/* 01688 80A4D328 02203825 */ or $a3, $s1, $zero ## $a3 = FFFFFFE8
/* 0168C 80A4D32C AFA00020 */ sw $zero, 0x0020($sp)
/* 01690 80A4D330 AFA0002C */ sw $zero, 0x002C($sp)
/* 01694 80A4D334 AFBE003C */ sw $s8, 0x003C($sp)
/* 01698 80A4D338 0C00A7A3 */ jal func_80029E8C
/* 0169C 80A4D33C AFAC0024 */ sw $t4, 0x0024($sp)
/* 016A0 80A4D340 26524E20 */ addiu $s2, $s2, 0x4E20 ## $s2 = 00004E20
/* 016A4 80A4D344 00129400 */ sll $s2, $s2, 16
/* 016A8 80A4D348 26730001 */ addiu $s3, $s3, 0x0001 ## $s3 = 00000001
/* 016AC 80A4D34C 24010010 */ addiu $at, $zero, 0x0010 ## $at = 00000010
/* 016B0 80A4D350 1661FF92 */ bne $s3, $at, .L80A4D19C
/* 016B4 80A4D354 00129403 */ sra $s2, $s2, 16
/* 016B8 80A4D358 C68A0000 */ lwc1 $f10, 0x0000($s4) ## 00000024
/* 016BC 80A4D35C C6B20000 */ lwc1 $f18, 0x0000($s5) ## 00000000
/* 016C0 80A4D360 24190046 */ addiu $t9, $zero, 0x0046 ## $t9 = 00000046
/* 016C4 80A4D364 E7AA00D0 */ swc1 $f10, 0x00D0($sp)
/* 016C8 80A4D368 C6840004 */ lwc1 $f4, 0x0004($s4) ## 00000028
/* 016CC 80A4D36C 2408006E */ addiu $t0, $zero, 0x006E ## $t0 = 0000006E
/* 016D0 80A4D370 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
/* 016D4 80A4D374 46049180 */ add.s $f6, $f18, $f4
/* 016D8 80A4D378 02C02025 */ or $a0, $s6, $zero ## $a0 = 00000000
/* 016DC 80A4D37C 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFE8
/* 016E0 80A4D380 3C0642A0 */ lui $a2, 0x42A0 ## $a2 = 42A00000
/* 016E4 80A4D384 E7A600D4 */ swc1 $f6, 0x00D4($sp)
/* 016E8 80A4D388 C6880008 */ lwc1 $f8, 0x0008($s4) ## 0000002C
/* 016EC 80A4D38C AFA90018 */ sw $t1, 0x0018($sp)
/* 016F0 80A4D390 AFA80014 */ sw $t0, 0x0014($sp)
/* 016F4 80A4D394 AFB90010 */ sw $t9, 0x0010($sp)
/* 016F8 80A4D398 24070005 */ addiu $a3, $zero, 0x0005 ## $a3 = 00000005
/* 016FC 80A4D39C 0C00CD20 */ jal func_80033480
/* 01700 80A4D3A0 E7A800D8 */ swc1 $f8, 0x00D8($sp)
/* 01704 80A4D3A4 240A006E */ addiu $t2, $zero, 0x006E ## $t2 = 0000006E
/* 01708 80A4D3A8 240B00A0 */ addiu $t3, $zero, 0x00A0 ## $t3 = 000000A0
/* 0170C 80A4D3AC 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
/* 01710 80A4D3B0 AFAC0018 */ sw $t4, 0x0018($sp)
/* 01714 80A4D3B4 AFAB0014 */ sw $t3, 0x0014($sp)
/* 01718 80A4D3B8 AFAA0010 */ sw $t2, 0x0010($sp)
/* 0171C 80A4D3BC 02C02025 */ or $a0, $s6, $zero ## $a0 = 00000000
/* 01720 80A4D3C0 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFE8
/* 01724 80A4D3C4 3C0642B4 */ lui $a2, 0x42B4 ## $a2 = 42B40000
/* 01728 80A4D3C8 0C00CD20 */ jal func_80033480
/* 0172C 80A4D3CC 24070005 */ addiu $a3, $zero, 0x0005 ## $a3 = 00000005
/* 01730 80A4D3D0 8FBF009C */ lw $ra, 0x009C($sp)
/* 01734 80A4D3D4 D7B40048 */ ldc1 $f20, 0x0048($sp)
/* 01738 80A4D3D8 D7B60050 */ ldc1 $f22, 0x0050($sp)
/* 0173C 80A4D3DC D7B80058 */ ldc1 $f24, 0x0058($sp)
/* 01740 80A4D3E0 D7BA0060 */ ldc1 $f26, 0x0060($sp)
/* 01744 80A4D3E4 D7BC0068 */ ldc1 $f28, 0x0068($sp)
/* 01748 80A4D3E8 D7BE0070 */ ldc1 $f30, 0x0070($sp)
/* 0174C 80A4D3EC 8FB00078 */ lw $s0, 0x0078($sp)
/* 01750 80A4D3F0 8FB1007C */ lw $s1, 0x007C($sp)
/* 01754 80A4D3F4 8FB20080 */ lw $s2, 0x0080($sp)
/* 01758 80A4D3F8 8FB30084 */ lw $s3, 0x0084($sp)
/* 0175C 80A4D3FC 8FB40088 */ lw $s4, 0x0088($sp)
/* 01760 80A4D400 8FB5008C */ lw $s5, 0x008C($sp)
/* 01764 80A4D404 8FB60090 */ lw $s6, 0x0090($sp)
/* 01768 80A4D408 8FB70094 */ lw $s7, 0x0094($sp)
/* 0176C 80A4D40C 8FBE0098 */ lw $s8, 0x0098($sp)
/* 01770 80A4D410 03E00008 */ jr $ra
/* 01774 80A4D414 27BD00E8 */ addiu $sp, $sp, 0x00E8 ## $sp = 00000000

View File

@ -1,18 +0,0 @@
glabel func_80A4D5E0
/* 01940 80A4D5E0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01944 80A4D5E4 3C0E80A5 */ lui $t6, %hi(func_80A4D624) ## $t6 = 80A50000
/* 01948 80A4D5E8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0194C 80A4D5EC 25CED624 */ addiu $t6, $t6, %lo(func_80A4D624) ## $t6 = 80A4D624
/* 01950 80A4D5F0 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 01954 80A4D5F4 AFA40018 */ sw $a0, 0x0018($sp)
/* 01958 80A4D5F8 0C292F5C */ jal func_80A4BD70
/* 0195C 80A4D5FC 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
/* 01960 80A4D600 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 01964 80A4D604 8FA40018 */ lw $a0, 0x0018($sp)
/* 01968 80A4D608 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00
/* 0196C 80A4D60C 00000000 */ nop
/* 01970 80A4D610 E48401C0 */ swc1 $f4, 0x01C0($a0) ## 000001C0
/* 01974 80A4D614 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01978 80A4D618 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0197C 80A4D61C 03E00008 */ jr $ra
/* 01980 80A4D620 00000000 */ nop

View File

@ -1,202 +0,0 @@
.rdata
glabel D_80A4E044
.asciz "\x1b[36m"
.balign 4
glabel D_80A4E04C
.asciz "Player \n"
.balign 4
glabel D_80A4E060
.asciz "\x1b[m"
.balign 4
.text
glabel func_80A4D624
/* 01984 80A4D624 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 01988 80A4D628 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0198C 80A4D62C AFB00020 */ sw $s0, 0x0020($sp)
/* 01990 80A4D630 AFA50034 */ sw $a1, 0x0034($sp)
/* 01994 80A4D634 90820160 */ lbu $v0, 0x0160($a0) ## 00000160
/* 01998 80A4D638 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0199C 80A4D63C 2401FFFB */ addiu $at, $zero, 0xFFFB ## $at = FFFFFFFB
/* 019A0 80A4D640 304E0002 */ andi $t6, $v0, 0x0002 ## $t6 = 00000000
/* 019A4 80A4D644 11C00047 */ beq $t6, $zero, .L80A4D764
/* 019A8 80A4D648 304FFFFD */ andi $t7, $v0, 0xFFFD ## $t7 = 00000000
/* 019AC 80A4D64C 8488008A */ lh $t0, 0x008A($a0) ## 0000008A
/* 019B0 80A4D650 84890032 */ lh $t1, 0x0032($a0) ## 00000032
/* 019B4 80A4D654 909801D3 */ lbu $t8, 0x01D3($a0) ## 000001D3
/* 019B8 80A4D658 A08F0160 */ sb $t7, 0x0160($a0) ## 00000160
/* 019BC 80A4D65C 01091823 */ subu $v1, $t0, $t1
/* 019C0 80A4D660 00031C00 */ sll $v1, $v1, 16
/* 019C4 80A4D664 00031C03 */ sra $v1, $v1, 16
/* 019C8 80A4D668 0301C824 */ and $t9, $t8, $at
/* 019CC 80A4D66C 2861C001 */ slti $at, $v1, 0xC001
/* 019D0 80A4D670 14200015 */ bne $at, $zero, .L80A4D6C8
/* 019D4 80A4D674 A09901D3 */ sb $t9, 0x01D3($a0) ## 000001D3
/* 019D8 80A4D678 28614000 */ slti $at, $v1, 0x4000
/* 019DC 80A4D67C 50200013 */ beql $at, $zero, .L80A4D6CC
/* 019E0 80A4D680 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 019E4 80A4D684 848C001C */ lh $t4, 0x001C($a0) ## 0000001C
/* 019E8 80A4D688 372B0004 */ ori $t3, $t9, 0x0004 ## $t3 = 00000004
/* 019EC 80A4D68C A08B01D3 */ sb $t3, 0x01D3($a0) ## 000001D3
/* 019F0 80A4D690 000C6A83 */ sra $t5, $t4, 10
/* 019F4 80A4D694 31AE0001 */ andi $t6, $t5, 0x0001 ## $t6 = 00000000
/* 019F8 80A4D698 15C00006 */ bne $t6, $zero, .L80A4D6B4
/* 019FC 80A4D69C 00000000 */ nop
/* 01A00 80A4D6A0 848F0018 */ lh $t7, 0x0018($a0) ## 00000018
/* 01A04 80A4D6A4 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01A08 80A4D6A8 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000000
/* 01A0C 80A4D6AC 53010007 */ beql $t8, $at, .L80A4D6CC
/* 01A10 80A4D6B0 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
.L80A4D6B4:
/* 01A14 80A4D6B4 0C293059 */ jal func_80A4C164
/* 01A18 80A4D6B8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01A1C 80A4D6BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01A20 80A4D6C0 0C292F95 */ jal func_80A4BE54
/* 01A24 80A4D6C4 8FA50034 */ lw $a1, 0x0034($sp)
.L80A4D6C8:
/* 01A28 80A4D6C8 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
.L80A4D6CC:
/* 01A2C 80A4D6CC 8607008A */ lh $a3, 0x008A($s0) ## 0000008A
/* 01A30 80A4D6D0 AFA00014 */ sw $zero, 0x0014($sp)
/* 01A34 80A4D6D4 8FA40034 */ lw $a0, 0x0034($sp)
/* 01A38 80A4D6D8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01A3C 80A4D6DC 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 01A40 80A4D6E0 0C00BDB5 */ jal func_8002F6D4
/* 01A44 80A4D6E4 E7A40010 */ swc1 $f4, 0x0010($sp)
/* 01A48 80A4D6E8 3C0480A5 */ lui $a0, %hi(D_80A4E044) ## $a0 = 80A50000
/* 01A4C 80A4D6EC 0C00084C */ jal osSyncPrintf
/* 01A50 80A4D6F0 2484E044 */ addiu $a0, $a0, %lo(D_80A4E044) ## $a0 = 80A4E044
/* 01A54 80A4D6F4 3C0480A5 */ lui $a0, %hi(D_80A4E04C) ## $a0 = 80A50000
/* 01A58 80A4D6F8 0C00084C */ jal osSyncPrintf
/* 01A5C 80A4D6FC 2484E04C */ addiu $a0, $a0, %lo(D_80A4E04C) ## $a0 = 80A4E04C
/* 01A60 80A4D700 3C0480A5 */ lui $a0, %hi(D_80A4E060) ## $a0 = 80A50000
/* 01A64 80A4D704 0C00084C */ jal osSyncPrintf
/* 01A68 80A4D708 2484E060 */ addiu $a0, $a0, %lo(D_80A4E060) ## $a0 = 80A4E060
/* 01A6C 80A4D70C 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
/* 01A70 80A4D710 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01A74 80A4D714 00194283 */ sra $t0, $t9, 10
/* 01A78 80A4D718 31090001 */ andi $t1, $t0, 0x0001 ## $t1 = 00000000
/* 01A7C 80A4D71C 00095080 */ sll $t2, $t1, 2
/* 01A80 80A4D720 3C1980A5 */ lui $t9, %hi(D_80A4DF20) ## $t9 = 80A50000
/* 01A84 80A4D724 032AC821 */ addu $t9, $t9, $t2
/* 01A88 80A4D728 8F39DF20 */ lw $t9, %lo(D_80A4DF20)($t9)
/* 01A8C 80A4D72C 0320F809 */ jalr $ra, $t9
/* 01A90 80A4D730 00000000 */ nop
/* 01A94 80A4D734 8FAB0034 */ lw $t3, 0x0034($sp)
/* 01A98 80A4D738 2405083E */ addiu $a1, $zero, 0x083E ## $a1 = 0000083E
/* 01A9C 80A4D73C 0C00BDF7 */ jal func_8002F7DC
/* 01AA0 80A4D740 8D641C44 */ lw $a0, 0x1C44($t3) ## 00001C44
/* 01AA4 80A4D744 860C0018 */ lh $t4, 0x0018($s0) ## 00000018
/* 01AA8 80A4D748 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01AAC 80A4D74C 240E0032 */ addiu $t6, $zero, 0x0032 ## $t6 = 00000032
/* 01AB0 80A4D750 318D0001 */ andi $t5, $t4, 0x0001 ## $t5 = 00000000
/* 01AB4 80A4D754 55A10056 */ bnel $t5, $at, .L80A4D8B0
/* 01AB8 80A4D758 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01ABC 80A4D75C 10000053 */ beq $zero, $zero, .L80A4D8AC
/* 01AC0 80A4D760 A60E01C8 */ sh $t6, 0x01C8($s0) ## 000001C8
.L80A4D764:
/* 01AC4 80A4D764 860F001C */ lh $t7, 0x001C($s0) ## 0000001C
/* 01AC8 80A4D768 3C1980A5 */ lui $t9, %hi(D_80A4DF18) ## $t9 = 80A50000
/* 01ACC 80A4D76C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01AD0 80A4D770 000FC283 */ sra $t8, $t7, 10
/* 01AD4 80A4D774 33080001 */ andi $t0, $t8, 0x0001 ## $t0 = 00000000
/* 01AD8 80A4D778 00084880 */ sll $t1, $t0, 2
/* 01ADC 80A4D77C 0329C821 */ addu $t9, $t9, $t1
/* 01AE0 80A4D780 8F39DF18 */ lw $t9, %lo(D_80A4DF18)($t9)
/* 01AE4 80A4D784 8FA50034 */ lw $a1, 0x0034($sp)
/* 01AE8 80A4D788 0320F809 */ jalr $ra, $t9
/* 01AEC 80A4D78C 00000000 */ nop
/* 01AF0 80A4D790 50400047 */ beql $v0, $zero, .L80A4D8B0
/* 01AF4 80A4D794 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01AF8 80A4D798 8603001C */ lh $v1, 0x001C($s0) ## 0000001C
/* 01AFC 80A4D79C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01B00 80A4D7A0 00031A03 */ sra $v1, $v1, 8
/* 01B04 80A4D7A4 30630003 */ andi $v1, $v1, 0x0003 ## $v1 = 00000000
/* 01B08 80A4D7A8 00031C00 */ sll $v1, $v1, 16
/* 01B0C 80A4D7AC 00031C03 */ sra $v1, $v1, 16
/* 01B10 80A4D7B0 5461000D */ bnel $v1, $at, .L80A4D7E8
/* 01B14 80A4D7B4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01B18 80A4D7B8 860201CE */ lh $v0, 0x01CE($s0) ## 000001CE
/* 01B1C 80A4D7BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01B20 80A4D7C0 8FA50034 */ lw $a1, 0x0034($sp)
/* 01B24 80A4D7C4 10400004 */ beq $v0, $zero, .L80A4D7D8
/* 01B28 80A4D7C8 00000000 */ nop
/* 01B2C 80A4D7CC 860A01CA */ lh $t2, 0x01CA($s0) ## 000001CA
/* 01B30 80A4D7D0 55420005 */ bnel $t2, $v0, .L80A4D7E8
/* 01B34 80A4D7D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4D7D8:
/* 01B38 80A4D7D8 0C29343F */ jal func_80A4D0FC
/* 01B3C 80A4D7DC A7A30028 */ sh $v1, 0x0028($sp)
/* 01B40 80A4D7E0 87A30028 */ lh $v1, 0x0028($sp)
/* 01B44 80A4D7E4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4D7E8:
/* 01B48 80A4D7E8 8FA50034 */ lw $a1, 0x0034($sp)
/* 01B4C 80A4D7EC 0C29341D */ jal func_80A4D074
/* 01B50 80A4D7F0 A7A30028 */ sh $v1, 0x0028($sp)
/* 01B54 80A4D7F4 87A30028 */ lh $v1, 0x0028($sp)
/* 01B58 80A4D7F8 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 01B5C 80A4D7FC 5461000C */ bnel $v1, $at, .L80A4D830
/* 01B60 80A4D800 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
/* 01B64 80A4D804 860201CC */ lh $v0, 0x01CC($s0) ## 000001CC
/* 01B68 80A4D808 10400004 */ beq $v0, $zero, .L80A4D81C
/* 01B6C 80A4D80C 00000000 */ nop
/* 01B70 80A4D810 860B01CA */ lh $t3, 0x01CA($s0) ## 000001CA
/* 01B74 80A4D814 55620006 */ bnel $t3, $v0, .L80A4D830
/* 01B78 80A4D818 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
.L80A4D81C:
/* 01B7C 80A4D81C 0C293677 */ jal func_80A4D9DC
/* 01B80 80A4D820 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01B84 80A4D824 10000022 */ beq $zero, $zero, .L80A4D8B0
/* 01B88 80A4D828 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01B8C 80A4D82C 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
.L80A4D830:
/* 01B90 80A4D830 000C6A83 */ sra $t5, $t4, 10
/* 01B94 80A4D834 31AE0001 */ andi $t6, $t5, 0x0001 ## $t6 = 00000000
/* 01B98 80A4D838 15C0001A */ bne $t6, $zero, .L80A4D8A4
/* 01B9C 80A4D83C 00000000 */ nop
/* 01BA0 80A4D840 860201CC */ lh $v0, 0x01CC($s0) ## 000001CC
/* 01BA4 80A4D844 10400017 */ beq $v0, $zero, .L80A4D8A4
/* 01BA8 80A4D848 00000000 */ nop
/* 01BAC 80A4D84C 860F01CA */ lh $t7, 0x01CA($s0) ## 000001CA
/* 01BB0 80A4D850 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01BB4 80A4D854 11E20013 */ beq $t7, $v0, .L80A4D8A4
/* 01BB8 80A4D858 00000000 */ nop
/* 01BBC 80A4D85C 0C29309F */ jal func_80A4C27C
/* 01BC0 80A4D860 8FA50034 */ lw $a1, 0x0034($sp)
/* 01BC4 80A4D864 18400005 */ blez $v0, .L80A4D87C
/* 01BC8 80A4D868 00000000 */ nop
/* 01BCC 80A4D86C 0C29369F */ jal func_80A4DA7C
/* 01BD0 80A4D870 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01BD4 80A4D874 1000000E */ beq $zero, $zero, .L80A4D8B0
/* 01BD8 80A4D878 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4D87C:
/* 01BDC 80A4D87C 04410005 */ bgez $v0, .L80A4D894
/* 01BE0 80A4D880 00000000 */ nop
/* 01BE4 80A4D884 0C2936E4 */ jal func_80A4DB90
/* 01BE8 80A4D888 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01BEC 80A4D88C 10000008 */ beq $zero, $zero, .L80A4D8B0
/* 01BF0 80A4D890 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4D894:
/* 01BF4 80A4D894 0C293578 */ jal func_80A4D5E0
/* 01BF8 80A4D898 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01BFC 80A4D89C 10000004 */ beq $zero, $zero, .L80A4D8B0
/* 01C00 80A4D8A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4D8A4:
/* 01C04 80A4D8A4 0C293578 */ jal func_80A4D5E0
/* 01C08 80A4D8A8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4D8AC:
/* 01C0C 80A4D8AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4D8B0:
/* 01C10 80A4D8B0 0C00BE0A */ jal Audio_PlayActorSound2
/* 01C14 80A4D8B4 240520B8 */ addiu $a1, $zero, 0x20B8 ## $a1 = 000020B8
/* 01C18 80A4D8B8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01C1C 80A4D8BC 8FB00020 */ lw $s0, 0x0020($sp)
/* 01C20 80A4D8C0 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 01C24 80A4D8C4 03E00008 */ jr $ra
/* 01C28 80A4D8C8 00000000 */ nop

View File

@ -1,38 +0,0 @@
.late_rodata
glabel D_80A4E098
.word 0xBF5C28F6
glabel D_80A4E09C
.float 0.15
.text
glabel func_80A4D8CC
/* 01C2C 80A4D8CC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01C30 80A4D8D0 3C0E80A5 */ lui $t6, %hi(func_80A4D944) ## $t6 = 80A50000
/* 01C34 80A4D8D4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01C38 80A4D8D8 25CED944 */ addiu $t6, $t6, %lo(func_80A4D944) ## $t6 = 80A4D944
/* 01C3C 80A4D8DC AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 01C40 80A4D8E0 AFA40018 */ sw $a0, 0x0018($sp)
/* 01C44 80A4D8E4 0C292F5C */ jal func_80A4BD70
/* 01C48 80A4D8E8 24050002 */ addiu $a1, $zero, 0x0002 ## $a1 = 00000002
/* 01C4C 80A4D8EC 3C0180A5 */ lui $at, %hi(D_80A4E098) ## $at = 80A50000
/* 01C50 80A4D8F0 C424E098 */ lwc1 $f4, %lo(D_80A4E098)($at)
/* 01C54 80A4D8F4 8FA40018 */ lw $a0, 0x0018($sp)
/* 01C58 80A4D8F8 3C01C170 */ lui $at, 0xC170 ## $at = C1700000
/* 01C5C 80A4D8FC 44813000 */ mtc1 $at, $f6 ## $f6 = -15.00
/* 01C60 80A4D900 3C0180A5 */ lui $at, %hi(D_80A4E09C) ## $at = 80A50000
/* 01C64 80A4D904 E484006C */ swc1 $f4, 0x006C($a0) ## 0000006C
/* 01C68 80A4D908 E4860070 */ swc1 $f6, 0x0070($a0) ## 00000070
/* 01C6C 80A4D90C C42AE09C */ lwc1 $f10, %lo(D_80A4E09C)($at)
/* 01C70 80A4D910 C4880068 */ lwc1 $f8, 0x0068($a0) ## 00000068
/* 01C74 80A4D914 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 01C78 80A4D918 44819000 */ mtc1 $at, $f18 ## $f18 = 5.00
/* 01C7C 80A4D91C 460A4402 */ mul.s $f16, $f8, $f10
/* 01C80 80A4D920 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 01C84 80A4D924 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00
/* 01C88 80A4D928 E4920060 */ swc1 $f18, 0x0060($a0) ## 00000060
/* 01C8C 80A4D92C E48401C0 */ swc1 $f4, 0x01C0($a0) ## 000001C0
/* 01C90 80A4D930 E4900068 */ swc1 $f16, 0x0068($a0) ## 00000068
/* 01C94 80A4D934 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01C98 80A4D938 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01C9C 80A4D93C 03E00008 */ jr $ra
/* 01CA0 80A4D940 00000000 */ nop

View File

@ -1,41 +0,0 @@
glabel func_80A4D944
/* 01CA4 80A4D944 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 01CA8 80A4D948 AFBF001C */ sw $ra, 0x001C($sp)
/* 01CAC 80A4D94C AFB00018 */ sw $s0, 0x0018($sp)
/* 01CB0 80A4D950 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01CB4 80A4D954 0C2931B2 */ jal func_80A4C6C8
/* 01CB8 80A4D958 AFA50024 */ sw $a1, 0x0024($sp)
/* 01CBC 80A4D95C 960E0088 */ lhu $t6, 0x0088($s0) ## 00000088
/* 01CC0 80A4D960 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
/* 01CC4 80A4D964 51E00019 */ beql $t7, $zero, .L80A4D9CC
/* 01CC8 80A4D968 8FBF001C */ lw $ra, 0x001C($sp)
/* 01CCC 80A4D96C C6040060 */ lwc1 $f4, 0x0060($s0) ## 00000060
/* 01CD0 80A4D970 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 01CD4 80A4D974 00000000 */ nop
/* 01CD8 80A4D978 4606203C */ c.lt.s $f4, $f6
/* 01CDC 80A4D97C 00000000 */ nop
/* 01CE0 80A4D980 45020012 */ bc1fl .L80A4D9CC
/* 01CE4 80A4D984 8FBF001C */ lw $ra, 0x001C($sp)
/* 01CE8 80A4D988 921801D3 */ lbu $t8, 0x01D3($s0) ## 000001D3
/* 01CEC 80A4D98C 33190004 */ andi $t9, $t8, 0x0004 ## $t9 = 00000000
/* 01CF0 80A4D990 1320000B */ beq $t9, $zero, .L80A4D9C0
/* 01CF4 80A4D994 00000000 */ nop
/* 01CF8 80A4D998 86080018 */ lh $t0, 0x0018($s0) ## 00000018
/* 01CFC 80A4D99C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01D00 80A4D9A0 31090001 */ andi $t1, $t0, 0x0001 ## $t1 = 00000000
/* 01D04 80A4D9A4 15210006 */ bne $t1, $at, .L80A4D9C0
/* 01D08 80A4D9A8 00000000 */ nop
/* 01D0C 80A4D9AC 0C293059 */ jal func_80A4C164
/* 01D10 80A4D9B0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D14 80A4D9B4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D18 80A4D9B8 0C292F95 */ jal func_80A4BE54
/* 01D1C 80A4D9BC 8FA50024 */ lw $a1, 0x0024($sp)
.L80A4D9C0:
/* 01D20 80A4D9C0 0C293677 */ jal func_80A4D9DC
/* 01D24 80A4D9C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D28 80A4D9C8 8FBF001C */ lw $ra, 0x001C($sp)
.L80A4D9CC:
/* 01D2C 80A4D9CC 8FB00018 */ lw $s0, 0x0018($sp)
/* 01D30 80A4D9D0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 01D34 80A4D9D4 03E00008 */ jr $ra
/* 01D38 80A4D9D8 00000000 */ nop

View File

@ -1,25 +0,0 @@
glabel func_80A4D9DC
/* 01D3C 80A4D9DC 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01D40 80A4D9E0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01D44 80A4D9E4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01D48 80A4D9E8 3C0E80A5 */ lui $t6, %hi(func_80A4DA3C) ## $t6 = 80A50000
/* 01D4C 80A4D9EC 25CEDA3C */ addiu $t6, $t6, %lo(func_80A4DA3C) ## $t6 = 80A4DA3C
/* 01D50 80A4D9F0 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 01D54 80A4D9F4 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
/* 01D58 80A4D9F8 AFA40018 */ sw $a0, 0x0018($sp)
/* 01D5C 80A4D9FC 0C292F5C */ jal func_80A4BD70
/* 01D60 80A4DA00 24050002 */ addiu $a1, $zero, 0x0002 ## $a1 = 00000002
/* 01D64 80A4DA04 8FA40018 */ lw $a0, 0x0018($sp)
/* 01D68 80A4DA08 3C0880A5 */ lui $t0, %hi(D_80A4DF28) ## $t0 = 80A50000
/* 01D6C 80A4DA0C 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 01D70 80A4DA10 848F0018 */ lh $t7, 0x0018($a0) ## 00000018
/* 01D74 80A4DA14 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000000
/* 01D78 80A4DA18 0018C840 */ sll $t9, $t8, 1
/* 01D7C 80A4DA1C 01194021 */ addu $t0, $t0, $t9
/* 01D80 80A4DA20 8508DF28 */ lh $t0, %lo(D_80A4DF28)($t0)
/* 01D84 80A4DA24 E48601C0 */ swc1 $f6, 0x01C0($a0) ## 000001C0
/* 01D88 80A4DA28 A48801C4 */ sh $t0, 0x01C4($a0) ## 000001C4
/* 01D8C 80A4DA2C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01D90 80A4DA30 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01D94 80A4DA34 03E00008 */ jr $ra
/* 01D98 80A4DA38 00000000 */ nop

View File

@ -1,19 +0,0 @@
glabel func_80A4DA3C
/* 01D9C 80A4DA3C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01DA0 80A4DA40 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01DA4 80A4DA44 AFA5001C */ sw $a1, 0x001C($sp)
/* 01DA8 80A4DA48 848201C4 */ lh $v0, 0x01C4($a0) ## 000001C4
/* 01DAC 80A4DA4C 18400003 */ blez $v0, .L80A4DA5C
/* 01DB0 80A4DA50 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 01DB4 80A4DA54 10000005 */ beq $zero, $zero, .L80A4DA6C
/* 01DB8 80A4DA58 A48E01C4 */ sh $t6, 0x01C4($a0) ## 000001C4
.L80A4DA5C:
/* 01DBC 80A4DA5C 908F0160 */ lbu $t7, 0x0160($a0) ## 00000160
/* 01DC0 80A4DA60 31F8FFFD */ andi $t8, $t7, 0xFFFD ## $t8 = 00000000
/* 01DC4 80A4DA64 0C293578 */ jal func_80A4D5E0
/* 01DC8 80A4DA68 A0980160 */ sb $t8, 0x0160($a0) ## 00000160
.L80A4DA6C:
/* 01DCC 80A4DA6C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01DD0 80A4DA70 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01DD4 80A4DA74 03E00008 */ jr $ra
/* 01DD8 80A4DA78 00000000 */ nop

View File

@ -1,27 +0,0 @@
.late_rodata
glabel D_80A4E0A0
.float 0.1
.text
glabel func_80A4DA7C
/* 01DDC 80A4DA7C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01DE0 80A4DA80 3C0E80A5 */ lui $t6, %hi(func_80A4DAD0) ## $t6 = 80A50000
/* 01DE4 80A4DA84 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01DE8 80A4DA88 25CEDAD0 */ addiu $t6, $t6, %lo(func_80A4DAD0) ## $t6 = 80A4DAD0
/* 01DEC 80A4DA8C AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 01DF0 80A4DA90 AFA40018 */ sw $a0, 0x0018($sp)
/* 01DF4 80A4DA94 0C292F5C */ jal func_80A4BD70
/* 01DF8 80A4DA98 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
/* 01DFC 80A4DA9C 8FA40018 */ lw $a0, 0x0018($sp)
/* 01E00 80A4DAA0 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01E04 80A4DAA4 3C0180A5 */ lui $at, %hi(D_80A4E0A0) ## $at = 80A50000
/* 01E08 80A4DAA8 C4800068 */ lwc1 $f0, 0x0068($a0) ## 00000068
/* 01E0C 80A4DAAC E48401C0 */ swc1 $f4, 0x01C0($a0) ## 000001C0
/* 01E10 80A4DAB0 C426E0A0 */ lwc1 $f6, %lo(D_80A4E0A0)($at)
/* 01E14 80A4DAB4 46000005 */ abs.s $f0, $f0
/* 01E18 80A4DAB8 46060202 */ mul.s $f8, $f0, $f6
/* 01E1C 80A4DABC E4880060 */ swc1 $f8, 0x0060($a0) ## 00000060
/* 01E20 80A4DAC0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01E24 80A4DAC4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01E28 80A4DAC8 03E00008 */ jr $ra
/* 01E2C 80A4DACC 00000000 */ nop

View File

@ -1,52 +0,0 @@
glabel func_80A4DAD0
/* 01E30 80A4DAD0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 01E34 80A4DAD4 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01E38 80A4DAD8 AFB00020 */ sw $s0, 0x0020($sp)
/* 01E3C 80A4DADC AFA5002C */ sw $a1, 0x002C($sp)
/* 01E40 80A4DAE0 90820160 */ lbu $v0, 0x0160($a0) ## 00000160
/* 01E44 80A4DAE4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01E48 80A4DAE8 8FA5002C */ lw $a1, 0x002C($sp)
/* 01E4C 80A4DAEC 304E0002 */ andi $t6, $v0, 0x0002 ## $t6 = 00000000
/* 01E50 80A4DAF0 11C00017 */ beq $t6, $zero, .L80A4DB50
/* 01E54 80A4DAF4 304FFFFD */ andi $t7, $v0, 0xFFFD ## $t7 = 00000000
/* 01E58 80A4DAF8 A08F0160 */ sb $t7, 0x0160($a0) ## 00000160
/* 01E5C 80A4DAFC 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01E60 80A4DB00 8607008A */ lh $a3, 0x008A($s0) ## 0000008A
/* 01E64 80A4DB04 24180004 */ addiu $t8, $zero, 0x0004 ## $t8 = 00000004
/* 01E68 80A4DB08 AFB80014 */ sw $t8, 0x0014($sp)
/* 01E6C 80A4DB0C 8FA4002C */ lw $a0, 0x002C($sp)
/* 01E70 80A4DB10 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01E74 80A4DB14 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 01E78 80A4DB18 0C00BDB5 */ jal func_8002F6D4
/* 01E7C 80A4DB1C E7A40010 */ swc1 $f4, 0x0010($sp)
/* 01E80 80A4DB20 8FB9002C */ lw $t9, 0x002C($sp)
/* 01E84 80A4DB24 2405083E */ addiu $a1, $zero, 0x083E ## $a1 = 0000083E
/* 01E88 80A4DB28 0C00BDF7 */ jal func_8002F7DC
/* 01E8C 80A4DB2C 8F241C44 */ lw $a0, 0x1C44($t9) ## 00001C44
/* 01E90 80A4DB30 86080018 */ lh $t0, 0x0018($s0) ## 00000018
/* 01E94 80A4DB34 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01E98 80A4DB38 240A0032 */ addiu $t2, $zero, 0x0032 ## $t2 = 00000032
/* 01E9C 80A4DB3C 31090001 */ andi $t1, $t0, 0x0001 ## $t1 = 00000000
/* 01EA0 80A4DB40 5521000F */ bnel $t1, $at, .L80A4DB80
/* 01EA4 80A4DB44 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01EA8 80A4DB48 1000000C */ beq $zero, $zero, .L80A4DB7C
/* 01EAC 80A4DB4C A60A01C8 */ sh $t2, 0x01C8($s0) ## 000001C8
.L80A4DB50:
/* 01EB0 80A4DB50 0C293294 */ jal func_80A4CA50
/* 01EB4 80A4DB54 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01EB8 80A4DB58 10400008 */ beq $v0, $zero, .L80A4DB7C
/* 01EBC 80A4DB5C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01EC0 80A4DB60 0C29341D */ jal func_80A4D074
/* 01EC4 80A4DB64 8FA5002C */ lw $a1, 0x002C($sp)
/* 01EC8 80A4DB68 0C293578 */ jal func_80A4D5E0
/* 01ECC 80A4DB6C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01ED0 80A4DB70 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 01ED4 80A4DB74 00000000 */ nop
/* 01ED8 80A4DB78 E6060068 */ swc1 $f6, 0x0068($s0) ## 00000068
.L80A4DB7C:
/* 01EDC 80A4DB7C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A4DB80:
/* 01EE0 80A4DB80 8FB00020 */ lw $s0, 0x0020($sp)
/* 01EE4 80A4DB84 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 01EE8 80A4DB88 03E00008 */ jr $ra
/* 01EEC 80A4DB8C 00000000 */ nop

View File

@ -1,37 +0,0 @@
.late_rodata
glabel D_80A4E0A4
.float 0.3
glabel D_80A4E0A8
.word 0xBE99999A, 0x00000000
.text
glabel func_80A4DB90
/* 01EF0 80A4DB90 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01EF4 80A4DB94 3C0E80A5 */ lui $t6, %hi(func_80A4DC00) ## $t6 = 80A50000
/* 01EF8 80A4DB98 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01EFC 80A4DB9C 25CEDC00 */ addiu $t6, $t6, %lo(func_80A4DC00) ## $t6 = 80A4DC00
/* 01F00 80A4DBA0 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 01F04 80A4DBA4 AFA40018 */ sw $a0, 0x0018($sp)
/* 01F08 80A4DBA8 0C292F5C */ jal func_80A4BD70
/* 01F0C 80A4DBAC 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
/* 01F10 80A4DBB0 8FA40018 */ lw $a0, 0x0018($sp)
/* 01F14 80A4DBB4 3C0180A5 */ lui $at, %hi(D_80A4E0A4) ## $at = 80A50000
/* 01F18 80A4DBB8 C424E0A4 */ lwc1 $f4, %lo(D_80A4E0A4)($at)
/* 01F1C 80A4DBBC C4800068 */ lwc1 $f0, 0x0068($a0) ## 00000068
/* 01F20 80A4DBC0 3C0180A5 */ lui $at, %hi(D_80A4E0A8) ## $at = 80A50000
/* 01F24 80A4DBC4 A48001C6 */ sh $zero, 0x01C6($a0) ## 000001C6
/* 01F28 80A4DBC8 E48401C0 */ swc1 $f4, 0x01C0($a0) ## 000001C0
/* 01F2C 80A4DBCC C426E0A8 */ lwc1 $f6, %lo(D_80A4E0A8)($at)
/* 01F30 80A4DBD0 46000005 */ abs.s $f0, $f0
/* 01F34 80A4DBD4 908F01D3 */ lbu $t7, 0x01D3($a0) ## 000001D3
/* 01F38 80A4DBD8 46060202 */ mul.s $f8, $f0, $f6
/* 01F3C 80A4DBDC 35F90008 */ ori $t9, $t7, 0x0008 ## $t9 = 00000008
/* 01F40 80A4DBE0 3328FFEF */ andi $t0, $t9, 0xFFEF ## $t0 = 00000008
/* 01F44 80A4DBE4 A09901D3 */ sb $t9, 0x01D3($a0) ## 000001D3
/* 01F48 80A4DBE8 A08801D3 */ sb $t0, 0x01D3($a0) ## 000001D3
/* 01F4C 80A4DBEC E4880060 */ swc1 $f8, 0x0060($a0) ## 00000060
/* 01F50 80A4DBF0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01F54 80A4DBF4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01F58 80A4DBF8 03E00008 */ jr $ra
/* 01F5C 80A4DBFC 00000000 */ nop

View File

@ -1,54 +0,0 @@
glabel func_80A4DC00
/* 01F60 80A4DC00 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 01F64 80A4DC04 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01F68 80A4DC08 AFB00020 */ sw $s0, 0x0020($sp)
/* 01F6C 80A4DC0C AFA5002C */ sw $a1, 0x002C($sp)
/* 01F70 80A4DC10 90820160 */ lbu $v0, 0x0160($a0) ## 00000160
/* 01F74 80A4DC14 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01F78 80A4DC18 8FA5002C */ lw $a1, 0x002C($sp)
/* 01F7C 80A4DC1C 304E0002 */ andi $t6, $v0, 0x0002 ## $t6 = 00000000
/* 01F80 80A4DC20 11C00017 */ beq $t6, $zero, .L80A4DC80
/* 01F84 80A4DC24 304FFFFD */ andi $t7, $v0, 0xFFFD ## $t7 = 00000000
/* 01F88 80A4DC28 A08F0160 */ sb $t7, 0x0160($a0) ## 00000160
/* 01F8C 80A4DC2C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01F90 80A4DC30 8607008A */ lh $a3, 0x008A($s0) ## 0000008A
/* 01F94 80A4DC34 24180004 */ addiu $t8, $zero, 0x0004 ## $t8 = 00000004
/* 01F98 80A4DC38 AFB80014 */ sw $t8, 0x0014($sp)
/* 01F9C 80A4DC3C 8FA4002C */ lw $a0, 0x002C($sp)
/* 01FA0 80A4DC40 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01FA4 80A4DC44 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 01FA8 80A4DC48 0C00BDB5 */ jal func_8002F6D4
/* 01FAC 80A4DC4C E7A40010 */ swc1 $f4, 0x0010($sp)
/* 01FB0 80A4DC50 8FB9002C */ lw $t9, 0x002C($sp)
/* 01FB4 80A4DC54 2405083E */ addiu $a1, $zero, 0x083E ## $a1 = 0000083E
/* 01FB8 80A4DC58 0C00BDF7 */ jal func_8002F7DC
/* 01FBC 80A4DC5C 8F241C44 */ lw $a0, 0x1C44($t9) ## 00001C44
/* 01FC0 80A4DC60 86080018 */ lh $t0, 0x0018($s0) ## 00000018
/* 01FC4 80A4DC64 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01FC8 80A4DC68 240A0032 */ addiu $t2, $zero, 0x0032 ## $t2 = 00000032
/* 01FCC 80A4DC6C 31090001 */ andi $t1, $t0, 0x0001 ## $t1 = 00000000
/* 01FD0 80A4DC70 55210011 */ bnel $t1, $at, .L80A4DCB8
/* 01FD4 80A4DC74 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01FD8 80A4DC78 1000000E */ beq $zero, $zero, .L80A4DCB4
/* 01FDC 80A4DC7C A60A01C8 */ sh $t2, 0x01C8($s0) ## 000001C8
.L80A4DC80:
/* 01FE0 80A4DC80 0C2932DE */ jal func_80A4CB78
/* 01FE4 80A4DC84 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01FE8 80A4DC88 1040000A */ beq $v0, $zero, .L80A4DCB4
/* 01FEC 80A4DC8C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01FF0 80A4DC90 0C29341D */ jal func_80A4D074
/* 01FF4 80A4DC94 8FA5002C */ lw $a1, 0x002C($sp)
/* 01FF8 80A4DC98 0C293578 */ jal func_80A4D5E0
/* 01FFC 80A4DC9C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02000 80A4DCA0 920B01D3 */ lbu $t3, 0x01D3($s0) ## 000001D3
/* 02004 80A4DCA4 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 02008 80A4DCA8 316CFFF7 */ andi $t4, $t3, 0xFFF7 ## $t4 = 00000000
/* 0200C 80A4DCAC A20C01D3 */ sb $t4, 0x01D3($s0) ## 000001D3
/* 02010 80A4DCB0 E6060068 */ swc1 $f6, 0x0068($s0) ## 00000068
.L80A4DCB4:
/* 02014 80A4DCB4 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A4DCB8:
/* 02018 80A4DCB8 8FB00020 */ lw $s0, 0x0020($sp)
/* 0201C 80A4DCBC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 02020 80A4DCC0 03E00008 */ jr $ra
/* 02024 80A4DCC4 00000000 */ nop

View File

@ -1,47 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .data
.balign 16
glabel En_Goroiwa_InitVars
.word 0x01300600, 0x00000010, 0x011F0000, 0x000001D4
.word EnGoroiwa_Init
.word EnGoroiwa_Destroy
.word EnGoroiwa_Update
.word EnGoroiwa_Draw
glabel D_80A4DE80
.word 0x00000000, 0x20000000, 0x00040000, 0x00000000, 0x00000000, 0x01000100, 0x00000000, 0x00000000, 0x003A0064
glabel D_80A4DEA4
.word 0x0A110039, 0x20000000, 0x00000001
.word D_80A4DE80
glabel D_80A4DEB4
.word 0x0000000C, 0x003CFE00, 0x41200000, 0x41133333
glabel D_80A4DEC4
.word 0x00000000, 0x426E0000
glabel D_80A4DECC
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80A4DED8
.word 0x00000000, 0x3E99999A, 0x00000000
glabel D_80A4DEE4
.word 0x00000000, 0x3F800000, 0x00000000
glabel D_80A4DEF0
.word 0x00000000, 0x426E0000
glabel D_80A4DEF8
.word 0xB86CFCA4, 0xB870C568, 0xC8500064, 0xB0F405DC, 0xB0F80096, 0x30FC05DC
glabel D_80A4DF10
.word 0x00000000, 0x4414C000
glabel D_80A4DF18
.word func_80A4C814
.word func_80A4C6C8
glabel D_80A4DF20
.word func_80A4D9DC
.word func_80A4D8CC
glabel D_80A4DF28
.word 0x00140006, 0x00000000

View File

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_80A4E0B0
.incbin "baserom/ovl_En_Goroiwa", 0x2410, 0x00000270

View File

@ -601,7 +601,7 @@ s32 func_80041FA0(CollisionContext*, CollisionPoly*, u32);
// ? func_80042048(?);
// ? func_80042108(?);
s32 func_8004213C(GlobalContext*, CollisionContext*, f32, f32, f32*, UNK_PTR);
// ? func_80042244(?);
s32 func_80042244(GlobalContext* globalCtx, CollisionContext* colCtx, f32 x, f32 z, f32* ySurface, WaterBox** outWaterBox);
// ? func_80042538(?);
// ? func_80042548(?);
// ? func_8004259C(?);

3
spec
View File

@ -2481,8 +2481,7 @@ endseg
beginseg
name "ovl_En_Goroiwa"
include "build/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.o"
include "build/data/overlays/actors/z_en_goroiwa.data.o"
include "build/data/overlays/actors/z_en_goroiwa.reloc.o"
include "build/src/overlays/actors/ovl_En_Goroiwa/ovl_En_Goroiwa_reloc.o"
endseg
beginseg

View File

@ -1,15 +1,36 @@
/*
* File: z_en_goroiwa.c
* Overlay: ovl_En_Goroiwa
* Description: Rolling boulders
*/
#include "z_en_goroiwa.h"
#include <vt.h>
#define FLAGS 0x00000010
#define THIS ((EnGoroiwa*)thisx)
typedef s32 (*EnGoroiwaUnkFunc1)(EnGoroiwa* this, GlobalContext* globalCtx);
typedef void (*EnGoroiwaUnkFunc2)(EnGoroiwa* this);
void EnGoroiwa_Init(Actor* thisx, GlobalContext* globalCtx);
void EnGoroiwa_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnGoroiwa_Update(Actor* thisx, GlobalContext* globalCtx);
void EnGoroiwa_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
void func_80A4D5E0(EnGoroiwa* this);
void func_80A4D624(EnGoroiwa* this, GlobalContext* globalCtx);
void func_80A4D8CC(EnGoroiwa* this);
void func_80A4D944(EnGoroiwa* this, GlobalContext* globalCtx);
void func_80A4D9DC(EnGoroiwa* this);
void func_80A4DA3C(EnGoroiwa* this, GlobalContext* globalCtx);
void func_80A4DA7C(EnGoroiwa* this);
void func_80A4DAD0(EnGoroiwa* this, GlobalContext* globalCtx);
void func_80A4DB90(EnGoroiwa* this);
void func_80A4DC00(EnGoroiwa* this, GlobalContext* globalCtx);
const ActorInit En_Goroiwa_InitVars = {
ACTOR_EN_GOROIWA,
ACTORTYPE_PROP,
@ -21,77 +42,690 @@ const ActorInit En_Goroiwa_InitVars = {
(ActorFunc)EnGoroiwa_Update,
(ActorFunc)EnGoroiwa_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4BCA0.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4BD04.s")
static ColliderJntSphItemInit sJntSphItemsInit[] = {
{
{ 0x00, { 0x20000000, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, 0x01, 0x00, 0x01 },
{ 0, { { 0, 0, 0 }, 58 }, 100 },
},
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4BD70.s")
static ColliderJntSphInit sJntSphInit = {
{ COLTYPE_UNK10, 0x11, 0x00, 0x39, 0x20, COLSHAPE_JNTSPH },
1,
sJntSphItemsInit,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4BD8C.s")
static CollisionCheckInfoInit sColChkInfoInit = { 0, 12, 60, 254 };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4BE10.s")
// Unused
static f32 D_80A4DEBC[] = { 10.0f, 9.2f };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4BE54.s")
extern Gfx D_0400D340[];
extern Gfx D_060006B0[];
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4BF28.s")
void func_80A4BCA0(EnGoroiwa* this) {
static f32 colliderHeightOffset[] = { 0.0f, 59.5f };
Sphere16* worldSphere = &this->collider.list[0].dim.worldSphere;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C080.s")
worldSphere->center.x = this->actor.posRot.pos.x;
worldSphere->center.y = this->actor.posRot.pos.y + colliderHeightOffset[(this->actor.params >> 10) & 1];
worldSphere->center.z = this->actor.posRot.pos.z;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C134.s")
void func_80A4BD04(EnGoroiwa* this, GlobalContext* globalCtx) {
s32 pad;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C164.s")
Collider_InitJntSph(globalCtx, &this->collider);
Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, this->colliderItems);
func_80A4BCA0(this);
this->collider.list[0].dim.worldSphere.radius = 58;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C188.s")
void func_80A4BD70(EnGoroiwa* this, u8 arg1) {
this->unk_1D3 &= ~3;
this->unk_1D3 |= arg1;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C1C4.s")
s32 EnGoroiwa_Vec3fNormalize(Vec3f* ret, Vec3f* a) {
f32 magnitude = Math3D_Vec3fMagnitude(a);
f32 scale;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C264.s")
if (magnitude < 0.001f) {
return false;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C27C.s")
scale = 1.0f / magnitude;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C3A4.s")
ret->x = a->x * scale;
ret->y = a->y * scale;
ret->z = a->z * scale;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C594.s")
return true;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C6C8.s")
void EnGoroiwa_SetSpeed(EnGoroiwa* this, GlobalContext* globalCtx) {
if (globalCtx->sceneNum == SCENE_SPOT04) {
this->isInKokiri = true;
mREG(12) = 920;
} else {
this->isInKokiri = false;
mREG(12) = 1000;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4C814.s")
void func_80A4BE54(EnGoroiwa* this, GlobalContext* globalCtx) {
Path* path = &globalCtx->setupPathList[this->actor.params & 0xFF];
Vec3s* nextPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->nextWaypoint;
Vec3f nextPosF;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4CA50.s")
nextPosF.x = nextPos->x;
nextPosF.y = nextPos->y;
nextPosF.z = nextPos->z;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4CB78.s")
this->actor.posRot.rot.y = Math_Vec3f_Yaw(&this->actor.posRot.pos, &nextPosF);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4CED8.s")
void func_80A4BF28(EnGoroiwa* this, GlobalContext* globalCtx, Vec3f* arg2) {
s16 temp_v0 = (this->actor.params >> 8) & 3;
Path* path = &globalCtx->setupPathList[this->actor.params & 0xFF];
s16 temp_t0 = this->currentWaypoint - this->pathDirection;
Vec3s* pointPos;
Vec3s* currentPointPos;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4D074.s")
if (temp_t0 < 0) {
if (temp_v0 == 0 || temp_v0 == 1) {
temp_t0 = this->endWaypoint;
} else if (temp_v0 == 3) {
temp_t0 = 1;
}
} else if (this->endWaypoint < temp_t0) {
if (temp_v0 == 0 || temp_v0 == 1) {
temp_t0 = 0;
} else if (temp_v0 == 3) {
temp_t0 = this->endWaypoint - 1;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4D0FC.s")
currentPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->currentWaypoint;
pointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + temp_t0;
arg2->x = currentPointPos->x - pointPos->x;
arg2->y = currentPointPos->x - pointPos->y;
arg2->z = currentPointPos->x - pointPos->z;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/EnGoroiwa_Init.s")
void func_80A4C080(EnGoroiwa* this) {
s16 temp_v0 = (this->actor.params >> 8) & 3;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/EnGoroiwa_Destroy.s")
if (this->nextWaypoint < 0) {
if (temp_v0 == 0 || temp_v0 == 1) {
this->currentWaypoint = this->endWaypoint;
this->nextWaypoint = this->endWaypoint - 1;
this->pathDirection = -1;
} else if (temp_v0 == 3) {
this->currentWaypoint = 0;
this->nextWaypoint = 1;
this->pathDirection = 1;
}
} else if (this->nextWaypoint > this->endWaypoint) {
if (temp_v0 == 0 || temp_v0 == 1) {
this->currentWaypoint = 0;
this->nextWaypoint = 1;
this->pathDirection = 1;
} else if (temp_v0 == 3) {
this->currentWaypoint = this->endWaypoint;
this->nextWaypoint = this->endWaypoint - 1;
this->pathDirection = -1;
}
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4D5E0.s")
void func_80A4C134(EnGoroiwa* this) {
this->currentWaypoint = this->nextWaypoint;
this->nextWaypoint += this->pathDirection;
func_80A4C080(this);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4D624.s")
void func_80A4C164(EnGoroiwa* this) {
this->pathDirection *= -1;
this->currentWaypoint = this->nextWaypoint;
this->nextWaypoint += this->pathDirection;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4D8CC.s")
void func_80A4C188(EnGoroiwa* this, GlobalContext* globalCtx) {
this->endWaypoint = globalCtx->setupPathList[this->actor.params & 0xFF].count - 1;
this->currentWaypoint = 0;
this->nextWaypoint = 1;
this->pathDirection = 1;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4D944.s")
void func_80A4C1C4(EnGoroiwa* this, GlobalContext* globalCtx, s32 waypoint) {
Path* path = &globalCtx->setupPathList[this->actor.params & 0xFF];
Vec3s* pointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + waypoint;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4D9DC.s")
this->actor.posRot.pos.x = pointPos->x;
this->actor.posRot.pos.y = pointPos->y;
this->actor.posRot.pos.z = pointPos->z;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4DA3C.s")
void func_80A4C264(EnGoroiwa* this) {
this->unk_1B0.x = 1.0f;
this->unk_1C0 = 1.0f;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4DA7C.s")
s32 func_80A4C27C(EnGoroiwa* this, GlobalContext* globalCtx) {
s32 pad;
Path* path = &globalCtx->setupPathList[this->actor.params & 0xFF];
Vec3s* nextPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->nextWaypoint;
Vec3s* currentPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->currentWaypoint;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4DAD0.s")
if (nextPointPos->x == currentPointPos->x && nextPointPos->z == currentPointPos->z) {
if (nextPointPos->y == currentPointPos->y) {
// Translation: Error: Invalid path data (points overlap)
osSyncPrintf("Error : レールデータ不正(点が重なっている)");
osSyncPrintf("(%s %d)(arg_data 0x%04x)\n", "../z_en_gr.c", 559, this->actor.params);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4DB90.s")
if (nextPointPos->y > currentPointPos->y) {
return 1;
} else {
return -1;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/func_80A4DC00.s")
return 0;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/EnGoroiwa_Update.s")
void func_80A4C3A4(GlobalContext* globalCtx, Vec3f* arg1) {
static Vec3f effectVelocity = { 0.0f, 0.0f, 0.0f };
static Vec3f effectAccel = { 0.0f, 0.3f, 0.0f };
Vec3f effectPos;
s32 i;
s16 angle = 0;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goroiwa/EnGoroiwa_Draw.s")
for (i = 0; i < 8; i++) {
angle += 0x4E20;
effectPos.x = arg1->x + ((47.0f * ((Math_Rand_ZeroOne() * 0.5f) + 0.5f)) * Math_Sins(angle));
effectPos.y = arg1->y + ((Math_Rand_ZeroOne() - 0.5f) * 40.0f);
effectPos.z = arg1->z + ((47.0f * ((Math_Rand_ZeroOne() * 0.5f) + 0.5f))) * Math_Coss(angle);
func_800286CC(globalCtx, &effectPos, &effectVelocity, &effectAccel, (s16)(Math_Rand_ZeroOne() * 30.0f) + 100,
80);
func_800286CC(globalCtx, &effectPos, &effectVelocity, &effectAccel, (s16)(Math_Rand_ZeroOne() * 20.0f) + 80,
80);
}
}
void func_80A4C594(GlobalContext* globalCtx, Vec3f* arg1) {
Vec3f sp4C;
s32 i;
s16 angle = 0;
for (i = 0; i < 11; i++) {
angle += 0x1746;
sp4C.x = arg1->x + (Math_Sins(angle) * 55.0f);
sp4C.y = arg1->y;
sp4C.z = arg1->z + (Math_Coss(angle) * 55.0f);
func_8002949C(globalCtx, &sp4C, 0, 0, 0, 350);
}
func_80029444(globalCtx, arg1, 300, 700, 0);
func_80029444(globalCtx, arg1, 500, 900, 4);
func_80029444(globalCtx, arg1, 500, 1300, 8);
}
s32 func_80A4C6C8(EnGoroiwa* this, GlobalContext* globalCtx) {
Path* path;
s32 result;
s32 pad;
Vec3s* nextPointPos;
Math_ApproxF(&this->actor.speedXZ, mREG(12) * 0.01f, 0.3f);
func_8002D868(&this->actor);
path = &globalCtx->setupPathList[this->actor.params & 0xFF];
nextPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->nextWaypoint;
result = Math_ApproxF(&this->actor.posRot.pos.x, nextPointPos->x, fabsf(this->actor.velocity.x)) & 1;
result &= Math_ApproxF(&this->actor.posRot.pos.z, nextPointPos->z, fabsf(this->actor.velocity.z));
this->actor.posRot.pos.y += this->actor.velocity.y;
return result;
}
s32 func_80A4C814(EnGoroiwa* this, GlobalContext* globalCtx) {
Path* path = &globalCtx->setupPathList[this->actor.params & 0xFF];
s32 pad;
Vec3s* nextPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->nextWaypoint;
Vec3s* currentPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->currentWaypoint;
s32 result;
Vec3f posDiff;
Vec3f nextPointPosF;
nextPointPosF.x = nextPointPos->x;
nextPointPosF.y = nextPointPos->y;
nextPointPosF.z = nextPointPos->z;
Math_ApproxF(&this->actor.speedXZ, mREG(12) * 0.01f, 0.3f);
if (Math3D_Vec3fDistSq(&nextPointPosF, &this->actor.posRot.pos) < 25.0f) {
Math_Vec3f_Diff(&nextPointPosF, &this->actor.posRot.pos, &posDiff);
} else {
posDiff.x = nextPointPosF.x - currentPointPos->x;
posDiff.y = nextPointPosF.y - currentPointPos->y;
posDiff.z = nextPointPosF.z - currentPointPos->z;
}
EnGoroiwa_Vec3fNormalize(&this->actor.velocity, &posDiff);
this->actor.velocity.x *= this->actor.speedXZ;
this->actor.velocity.y *= this->actor.speedXZ;
this->actor.velocity.z *= this->actor.speedXZ;
result = Math_ApproxF(&this->actor.posRot.pos.x, nextPointPosF.x, fabsf(this->actor.velocity.x)) & 1;
result &= Math_ApproxF(&this->actor.posRot.pos.y, nextPointPosF.y, fabsf(this->actor.velocity.y));
result &= Math_ApproxF(&this->actor.posRot.pos.z, nextPointPosF.z, fabsf(this->actor.velocity.z));
return result;
}
s32 func_80A4CA50(EnGoroiwa* this, GlobalContext* globalCtx) {
s32 pad;
Path* path = &globalCtx->setupPathList[this->actor.params & 0xFF];
Vec3s* nextPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->nextWaypoint;
Math_ApproxF(&this->actor.velocity.y, (mREG(12) * 0.01f) * 0.5f, 0.18f);
this->actor.posRot.pos.x = nextPointPos->x;
this->actor.posRot.pos.z = nextPointPos->z;
return Math_ApproxF(&this->actor.posRot.pos.y, nextPointPos->y, fabsf(this->actor.velocity.y));
}
s32 func_80A4CB78(EnGoroiwa* this, GlobalContext* globalCtx) {
s32 pad;
Path* path = &globalCtx->setupPathList[this->actor.params & 0xFF];
Vec3s* nextPointPos = (Vec3s*)SEGMENTED_TO_VIRTUAL(path->points) + this->nextWaypoint;
f32 nextPointY;
f32 thisY;
f32 temp;
s32 quakeIdx;
CollisionPoly* sp68;
Vec3f sp5C;
f32 temp_f0_2;
s32 pad2;
u32 sp50;
Vec3f sp44;
WaterBox* waterBox;
f32 ySurface;
Vec3f sp30;
nextPointY = nextPointPos->y;
Math_ApproxF(&this->actor.velocity.y, -14.0f, 1.0f);
this->actor.posRot.pos.x = nextPointPos->x;
this->actor.posRot.pos.z = nextPointPos->z;
thisY = this->actor.posRot.pos.y;
if (1) {}
this->actor.posRot.pos.y += this->actor.velocity.y;
if (this->actor.velocity.y < 0.0f && this->actor.posRot.pos.y <= nextPointY) {
if (this->unk_1C6 == 0) {
if (this->actor.xzDistFromLink < 600.0f) {
quakeIdx = Quake_Add(ACTIVE_CAM, 3);
Quake_SetSpeed(quakeIdx, -0x3CB0);
Quake_SetQuakeValues(quakeIdx, 3, 0, 0, 0);
Quake_SetCountdown(quakeIdx, 7);
}
this->unk_1C0 = 0.0f;
if (!(this->unk_1D3 & 0x10)) {
sp5C.x = this->actor.posRot.pos.x;
sp5C.y = this->actor.posRot.pos.y + 50.0f;
sp5C.z = this->actor.posRot.pos.z;
temp_f0_2 = func_8003CA0C(globalCtx, &globalCtx->colCtx, &sp68, &sp50, &this->actor, &sp5C);
// temp needed to match
temp = temp_f0_2 - (this->actor.posRot.pos.y - 59.5f);
if (fabsf(temp) < 15.0f) {
sp44.x = this->actor.posRot.pos.x;
sp44.y = temp_f0_2 + 10.0f;
sp44.z = this->actor.posRot.pos.z;
func_80A4C3A4(globalCtx, &sp44);
}
}
}
if (this->unk_1C6 > 0) {
return true;
}
this->unk_1C6 += 1;
this->actor.velocity.y *= -0.3f;
this->actor.posRot.pos.y = nextPointY - ((this->actor.posRot.pos.y - nextPointY) * 0.3f);
}
if (this->unk_1C6 == 0 &&
func_80042244(globalCtx, &globalCtx->colCtx, this->actor.posRot.pos.x, this->actor.posRot.pos.z, &ySurface,
&waterBox) &&
this->actor.posRot.pos.y <= ySurface) {
this->unk_1D3 |= 0x10;
if (ySurface < thisY) {
sp30.x = this->actor.posRot.pos.x;
sp30.y = ySurface;
sp30.z = this->actor.posRot.pos.z;
func_80A4C594(globalCtx, &sp30);
this->actor.velocity.y *= 0.2f;
}
if (this->actor.velocity.y < -8.0f) {
this->actor.velocity.y = -8.0f;
}
}
return false;
}
void func_80A4CED8(EnGoroiwa* this, GlobalContext* globalCtx) {
static Vec3f unitY = { 0.0f, 1.0f, 0.0f };
s32 pad;
Vec3f* temp;
f32 sp8C;
Vec3f sp80;
Vec3f sp74;
MtxF mtx;
Vec3f sp28;
if (this->unk_1D3 & 8) {
sp8C = this->unk_1BC;
} else {
this->unk_1BC = Math3D_Vec3f_DistXYZ(&this->actor.posRot.pos, &this->actor.pos4) * 0.016806724f;
sp8C = this->unk_1BC;
}
sp8C *= this->unk_1C0;
// temp assignment needed to match
temp = &sp80;
if (this->unk_1D3 & 8) {
func_80A4BF28(this, globalCtx, &sp28);
Math3D_Vec3f_Cross(&unitY, &this->actor.velocity, temp);
} else {
Math3D_Vec3f_Cross(&unitY, &this->actor.velocity, temp);
}
if (EnGoroiwa_Vec3fNormalize(&sp74, temp)) {
this->unk_1B0 = sp74;
} else {
sp74 = this->unk_1B0;
}
func_800D23FC(sp8C, &sp74, 0);
Matrix_RotateY(this->actor.shape.rot.y * (2.0f * M_PI / 0x10000), 1);
Matrix_RotateX(this->actor.shape.rot.x * (2.0f * M_PI / 0x10000), 1);
Matrix_RotateZ(this->actor.shape.rot.z * (2.0f * M_PI / 0x10000), 1);
Matrix_Get(&mtx);
func_800D20CC(&mtx, &this->actor.shape.rot, 0);
}
void func_80A4D074(EnGoroiwa* this, GlobalContext* globalCtx) {
s16 temp_v0 = (this->actor.params >> 8) & 3;
func_80A4C134(this);
if (temp_v0 == 0 || temp_v0 == 1) {
if (this->currentWaypoint == 0 || this->currentWaypoint == this->endWaypoint) {
func_80A4C1C4(this, globalCtx, this->currentWaypoint);
}
}
func_80A4BE54(this, globalCtx);
}
void func_80A4D0FC(EnGoroiwa* this, GlobalContext* globalCtx) {
static f32 colliderHeightOffset[] = { 0.0f, 59.5f };
s16 angle1;
s16 angle2;
s32 pad;
Vec3f* thisPos = &this->actor.posRot.pos;
Vec3f effectPos;
Vec3f effectVelocity;
f32 temp_f24;
f32 temp_f22;
f32 temp_f20;
f32 temp_f20_2;
s16 temp_v0 = (this->actor.params >> 10) & 1;
s32 i;
for (i = 0, angle1 = 0; i < 16; i++, angle1 += 0x4E20) {
temp_f22 = Math_Sins(angle1);
temp_f24 = Math_Coss(angle1);
angle2 = Math_Rand_ZeroOne() * 0xFFFF;
effectPos.x = ((Math_Rand_ZeroOne() * 50.0f) * temp_f22) * Math_Sins(angle2);
temp_f20_2 = Math_Sins(angle2);
effectPos.y = (((Math_Rand_ZeroOne() - 0.5f) * 100.0f) * temp_f20_2) + colliderHeightOffset[temp_v0];
effectPos.z = ((Math_Rand_ZeroOne() * 50.0f) * temp_f24) * Math_Sins(angle2);
effectVelocity.x = effectPos.x * 0.2f;
effectVelocity.y = (Math_Rand_ZeroOne() * 15.0f) + 2.0f;
effectVelocity.z = effectPos.z * 0.2f;
Math_Vec3f_Sum(&effectPos, thisPos, &effectPos);
func_80029E8C(globalCtx, &effectPos, &effectVelocity, &effectPos, -340, 33, 28, 2, 0,
(Math_Rand_ZeroOne() * 7.0f) + 1.0f, 1, 0, 70, -1, 1, D_0400D340);
}
effectPos.x = thisPos->x;
effectPos.y = thisPos->y + colliderHeightOffset[temp_v0];
effectPos.z = thisPos->z;
func_80033480(globalCtx, &effectPos, 80.0f, 5, 70, 110, 1);
func_80033480(globalCtx, &effectPos, 90.0f, 5, 110, 160, 1);
}
static InitChainEntry sInitChain[] = {
ICHAIN_F32_DIV1000(gravity, -860, ICHAIN_CONTINUE), ICHAIN_F32_DIV1000(minVelocityY, -15000, ICHAIN_CONTINUE),
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), ICHAIN_F32(uncullZoneForward, 1500, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneScale, 150, ICHAIN_CONTINUE), ICHAIN_F32(uncullZoneDownward, 1500, ICHAIN_STOP),
};
void EnGoroiwa_Init(Actor* thisx, GlobalContext* globalCtx) {
static f32 D_80A4DF10[] = { 0.0f, 595.0f };
EnGoroiwa* this = THIS;
s32 pathIdx;
Actor_ProcessInitChain(&this->actor, sInitChain);
func_80A4BD04(this, globalCtx);
pathIdx = this->actor.params & 0xFF;
if (pathIdx == 0xFF) {
// Translation: Error: Invalid arg_data
osSyncPrintf(" : arg_data が不正(%s %d)(arg_data 0x%04x)\n", "../z_en_gr.c", 1033,
this->actor.params);
Actor_Kill(&this->actor);
return;
}
if (globalCtx->setupPathList[pathIdx].count < 2) {
// Translation: Error: Invalid Path Data
osSyncPrintf(" : レールデータ が不正(%s %d)\n", "../z_en_gr.c", 1043);
Actor_Kill(&this->actor);
return;
}
func_80061ED4(&this->actor.colChkInfo, NULL, &sColChkInfoInit);
ActorShape_Init(&this->actor.shape, D_80A4DF10[(this->actor.params >> 10) & 1], ActorShadow_DrawFunc_Circle, 9.4f);
this->actor.shape.unk_14 = 200;
EnGoroiwa_SetSpeed(this, globalCtx);
func_80A4C188(this, globalCtx);
func_80A4C1C4(this, globalCtx, 0);
func_80A4C264(this);
func_80A4BE54(this, globalCtx);
func_80A4D5E0(this);
// Translation: (Goroiwa)
osSyncPrintf("(ごろ岩)(arg 0x%04x)(rail %d)(end %d)(bgc %d)(hit %d)\n", this->actor.params,
this->actor.params & 0xFF, (this->actor.params >> 8) & 3, (this->actor.params >> 10) & 1,
this->actor.initPosRot.rot.z & 1);
}
void EnGoroiwa_Destroy(Actor* thisx, GlobalContext* globalCtx) {
Collider_DestroyJntSph(globalCtx, &THIS->collider);
}
void func_80A4D5E0(EnGoroiwa* this) {
this->actionFunc = func_80A4D624;
func_80A4BD70(this, 3);
this->unk_1C0 = 1.0f;
}
static EnGoroiwaUnkFunc1 D_80A4DF18[] = { func_80A4C814, func_80A4C6C8 };
static EnGoroiwaUnkFunc2 D_80A4DF20[] = { func_80A4D9DC, func_80A4D8CC };
void func_80A4D624(EnGoroiwa* this, GlobalContext* globalCtx) {
s32 temp_v0_5;
s16 yawDiff;
s16 temp_v1_2;
if (this->collider.base.atFlags & 2) {
this->collider.base.atFlags &= ~2;
this->unk_1D3 &= ~4;
yawDiff = this->actor.yawTowardsLink - this->actor.posRot.rot.y;
if (yawDiff > -0x4000 && yawDiff < 0x4000) {
this->unk_1D3 |= 4;
if ((this->actor.params >> 10) & 1 || (this->actor.initPosRot.rot.z & 1) != 1) {
func_80A4C164(this);
func_80A4BE54(this, globalCtx);
}
}
func_8002F6D4(globalCtx, &this->actor, 2.0f, this->actor.yawTowardsLink, 0.0f, 0);
osSyncPrintf(VT_FGCOL(CYAN));
// Translation: Player knocked down
osSyncPrintf("Player ぶっ飛ばし\n");
osSyncPrintf(VT_RST);
D_80A4DF20[(this->actor.params >> 10) & 1](this);
func_8002F7DC(&PLAYER->actor, NA_SE_PL_BODY_HIT);
if ((this->actor.initPosRot.rot.z & 1) == 1) {
this->collisionTimer = 50;
}
} else if (D_80A4DF18[(this->actor.params >> 10) & 1](this, globalCtx)) {
temp_v1_2 = (this->actor.params >> 8) & 3;
if (temp_v1_2 == 1) {
if (this->nextWaypoint == 0 || this->nextWaypoint == this->endWaypoint) {
func_80A4D0FC(this, globalCtx);
}
}
func_80A4D074(this, globalCtx);
if ((temp_v1_2 == 3) && (this->currentWaypoint == 0 || this->currentWaypoint == this->endWaypoint)) {
func_80A4D9DC(this);
} else if (!((this->actor.params >> 10) & 1) && this->currentWaypoint != 0 &&
this->currentWaypoint != this->endWaypoint) {
temp_v0_5 = func_80A4C27C(this, globalCtx);
if (temp_v0_5 > 0) {
func_80A4DA7C(this);
} else if (temp_v0_5 < 0) {
func_80A4DB90(this);
} else {
func_80A4D5E0(this);
}
} else {
func_80A4D5E0(this);
}
}
Audio_PlayActorSound2(&this->actor, NA_SE_EV_BIGBALL_ROLL - SFX_FLAG);
}
void func_80A4D8CC(EnGoroiwa* this) {
this->actionFunc = func_80A4D944;
func_80A4BD70(this, 2);
this->actor.gravity = -0.86f;
this->actor.minVelocityY = -15.0f;
this->actor.speedXZ *= 0.15f;
this->actor.velocity.y = 5.0f;
this->unk_1C0 = 1.0f;
}
void func_80A4D944(EnGoroiwa* this, GlobalContext* globalCtx) {
func_80A4C6C8(this, globalCtx);
if (this->actor.bgCheckFlags & 1 && this->actor.velocity.y < 0.0f) {
if (this->unk_1D3 & 4 && (this->actor.initPosRot.rot.z & 1) == 1) {
func_80A4C164(this);
func_80A4BE54(this, globalCtx);
}
func_80A4D9DC(this);
}
}
void func_80A4D9DC(EnGoroiwa* this) {
static s16 waitDurations[] = { 20, 6 };
this->actionFunc = func_80A4DA3C;
this->actor.speedXZ = 0.0f;
func_80A4BD70(this, 2);
this->waitTimer = waitDurations[this->actor.initPosRot.rot.z & 1];
this->unk_1C0 = 0.0f;
}
void func_80A4DA3C(EnGoroiwa* this, GlobalContext* globalCtx) {
if (this->waitTimer > 0) {
this->waitTimer--;
} else {
this->collider.base.atFlags &= ~2;
func_80A4D5E0(this);
}
}
void func_80A4DA7C(EnGoroiwa* this) {
this->actionFunc = func_80A4DAD0;
func_80A4BD70(this, 3);
this->unk_1C0 = 0.0f;
this->actor.velocity.y = fabsf(this->actor.speedXZ) * 0.1f;
}
void func_80A4DAD0(EnGoroiwa* this, GlobalContext* globalCtx) {
if (this->collider.base.atFlags & 2) {
this->collider.base.atFlags &= ~2;
func_8002F6D4(globalCtx, &this->actor, 2.0f, this->actor.yawTowardsLink, 0.0f, 4);
func_8002F7DC(&PLAYER->actor, NA_SE_PL_BODY_HIT);
if ((this->actor.initPosRot.rot.z & 1) == 1) {
this->collisionTimer = 50;
}
} else if (func_80A4CA50(this, globalCtx)) {
func_80A4D074(this, globalCtx);
func_80A4D5E0(this);
this->actor.speedXZ = 0.0f;
}
}
void func_80A4DB90(EnGoroiwa* this) {
this->actionFunc = func_80A4DC00;
func_80A4BD70(this, 3);
this->unk_1C0 = 0.3f;
this->unk_1C6 = 0;
this->actor.velocity.y = fabsf(this->actor.speedXZ) * -0.3f;
this->unk_1D3 |= 8;
this->unk_1D3 &= ~0x10;
}
void func_80A4DC00(EnGoroiwa* this, GlobalContext* globalCtx) {
if (this->collider.base.atFlags & 2) {
this->collider.base.atFlags &= ~2;
func_8002F6D4(globalCtx, &this->actor, 2.0f, this->actor.yawTowardsLink, 0.0f, 4);
func_8002F7DC(&PLAYER->actor, NA_SE_PL_BODY_HIT);
if ((this->actor.initPosRot.rot.z & 1) == 1) {
this->collisionTimer = 50;
}
} else if (func_80A4CB78(this, globalCtx)) {
func_80A4D074(this, globalCtx);
func_80A4D5E0(this);
this->unk_1D3 &= ~8;
this->actor.speedXZ = 0.0f;
}
}
void EnGoroiwa_Update(Actor* thisx, GlobalContext* globalCtx) {
EnGoroiwa* this = THIS;
Player* player = PLAYER;
s32 pad;
UNK_TYPE sp30;
if (!(player->stateFlags1 & 0x300000C0)) {
if (this->collisionTimer > 0) {
this->collisionTimer--;
}
this->actionFunc(this, globalCtx);
switch ((this->actor.params >> 10) & 1) {
case 1:
func_8002E4B4(globalCtx, &this->actor, 0.0f, 0.0f, 0.0f, 0x1C);
break;
case 0:
this->actor.groundY = func_8003C9A4(&globalCtx->colCtx, &this->actor.floorPoly, &sp30, &this->actor,
&this->actor.posRot.pos);
break;
}
func_80A4CED8(this, globalCtx);
if (this->actor.xzDistFromLink < 300.0f) {
func_80A4BCA0(this);
if (this->unk_1D3 & 1 && this->collisionTimer <= 0) {
CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
}
if (this->unk_1D3 & 2 && this->collisionTimer <= 0) {
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
}
}
}
}
void EnGoroiwa_Draw(Actor* thisx, GlobalContext* globalCtx) {
Gfx_DrawDListOpa(globalCtx, D_060006B0);
}

View File

@ -6,9 +6,25 @@
struct EnGoroiwa;
typedef void (*EnGoroiwaActionFunc)(struct EnGoroiwa*, GlobalContext*);
typedef struct EnGoroiwa {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x88];
/* 0x014C */ EnGoroiwaActionFunc actionFunc;
/* 0x0150 */ ColliderJntSph collider;
/* 0x0170 */ ColliderJntSphItem colliderItems[1];
/* 0x01B0 */ Vec3f unk_1B0;
/* 0x01BC */ f32 unk_1BC;
/* 0x01C0 */ f32 unk_1C0;
/* 0x01C4 */ s16 waitTimer;
/* 0x01C6 */ s16 unk_1C6;
/* 0x01C8 */ s16 collisionTimer;
/* 0x01CA */ s16 endWaypoint;
/* 0x01CC */ s16 currentWaypoint;
/* 0x01CE */ s16 nextWaypoint;
/* 0x01D0 */ s16 pathDirection;
/* 0x01D2 */ u8 isInKokiri;
/* 0x01D3 */ u8 unk_1D3;
} EnGoroiwa; // size = 0x01D4
extern const ActorInit En_Goroiwa_InitVars;

View File

@ -971,6 +971,9 @@ D_06003128 = 0x06003128;
D_060042AC = 0x060042AC;
D_060059B0 = 0x060059B0;
// z_en_goroiwa
D_0400D340 = 0x0400D340;
// z_en_heishi1
D_06005880 = 0x06005880;
D_06005C30 = 0x06005C30;