diff --git a/src/game/propobj.c b/src/game/propobj.c index 614a86748..d492b3658 100644 --- a/src/game/propobj.c +++ b/src/game/propobj.c @@ -15457,4221 +15457,327 @@ void chopperTickCombat(struct prop *chopperprop) } } -#if VERSION >= VERSION_JPN_FINAL -GLOBAL_ASM( -glabel hovercarTick -.late_rodata -glabel var7f1aa6ac -.word 0x471c4000 -glabel var7f1aa6b0 -.word 0x47148900 -glabel var7f1aa6b4 -.word 0x3d2aaaab -glabel var7f1aa6b8 -.word 0x3dcccccd -glabel var7f1aa6bc -.word 0x3d2aaaab -glabel var7f1aa6c0 -.word 0x3e555555 -glabel var7f1aa6c4 -.word 0x3964ba35 -glabel var7f1aa6c8 -.word 0x3c566e92 -glabel var7f1aa6cc -.word 0x3964ba35 -glabel var7f1aa6d0 -.word 0x3c566e92 -glabel var7f1aa6d4 -.word 0x3964ba35 -glabel var7f1aa6d8 -.word 0x3dcccccd -glabel var7f1aa6dc -.word 0x40c907a9 -glabel var7f1aa6e0 -.word 0x40c907a9 -glabel var7f1aa6e4 -.word 0xc7c35000 -.text -/* f07e29c: 27bdfd88 */ addiu $sp,$sp,-632 -/* f07e2a0: afbf004c */ sw $ra,0x4c($sp) -/* f07e2a4: afb00048 */ sw $s0,0x48($sp) -/* f07e2a8: afa40278 */ sw $a0,0x278($sp) -/* f07e2ac: 8c900004 */ lw $s0,0x4($a0) -/* f07e2b0: 3c018000 */ lui $at,0x8000 -/* f07e2b4: c604007c */ lwc1 $f4,0x7c($s0) -/* f07e2b8: e7a40200 */ swc1 $f4,0x200($sp) -/* f07e2bc: c6060080 */ lwc1 $f6,0x80($s0) -/* f07e2c0: e7a601fc */ swc1 $f6,0x1fc($sp) -/* f07e2c4: 8e020008 */ lw $v0,0x8($s0) -/* f07e2c8: 00417824 */ and $t7,$v0,$at -/* f07e2cc: 11e00005 */ beqz $t7,.JF0f07e2e4 -/* f07e2d0: 01e01025 */ move $v0,$t7 -/* f07e2d4: 3c0140a0 */ lui $at,0x40a0 -/* f07e2d8: 44814000 */ mtc1 $at,$f8 -/* f07e2dc: 10000005 */ b .JF0f07e2f4 -/* f07e2e0: e7a801f4 */ swc1 $f8,0x1f4($sp) -.JF0f07e2e4: -/* f07e2e4: 3c014120 */ lui $at,0x4120 -/* f07e2e8: 44815000 */ mtc1 $at,$f10 -/* f07e2ec: 00000000 */ nop -/* f07e2f0: e7aa01f4 */ swc1 $f10,0x1f4($sp) -.JF0f07e2f4: -/* f07e2f4: 10400038 */ beqz $v0,.JF0f07e3d8 -/* f07e2f8: afa001f0 */ sw $zero,0x1f0($sp) -/* f07e2fc: 86180094 */ lh $t8,0x94($s0) -/* f07e300: 07030036 */ bgezl $t8,.JF0f07e3dc -/* f07e304: 860f0092 */ lh $t7,0x92($s0) -/* f07e308: 0fc1a6f2 */ jal modelFindBboxRodata -/* f07e30c: 8e040018 */ lw $a0,0x18($s0) -/* f07e310: 0fc19e37 */ jal objGetLocalYMin -/* f07e314: 00402025 */ move $a0,$v0 -/* f07e318: 8fa40278 */ lw $a0,0x278($sp) -/* f07e31c: 24050001 */ li $a1,0x1 -/* f07e320: 3406ffff */ li $a2,0xffff -/* f07e324: 84990028 */ lh $t9,0x28($a0) -/* f07e328: a7b901d6 */ sh $t9,0x1d6($sp) -/* f07e32c: c6040028 */ lwc1 $f4,0x28($s0) -/* f07e330: e7a401d8 */ swc1 $f4,0x1d8($sp) -/* f07e334: c606002c */ lwc1 $f6,0x2c($s0) -/* f07e338: e7a601dc */ swc1 $f6,0x1dc($sp) -/* f07e33c: c6080030 */ lwc1 $f8,0x30($s0) -/* f07e340: e7a801e0 */ swc1 $f8,0x1e0($sp) -/* f07e344: c60a0028 */ lwc1 $f10,0x28($s0) -/* f07e348: c4860008 */ lwc1 $f6,0x8($a0) -/* f07e34c: 46005102 */ mul.s $f4,$f10,$f0 -/* f07e350: 46062200 */ add.s $f8,$f4,$f6 -/* f07e354: e7a801e4 */ swc1 $f8,0x1e4($sp) -/* f07e358: c60a002c */ lwc1 $f10,0x2c($s0) -/* f07e35c: c486000c */ lwc1 $f6,0xc($a0) -/* f07e360: 46005102 */ mul.s $f4,$f10,$f0 -/* f07e364: 46062200 */ add.s $f8,$f4,$f6 -/* f07e368: e7a801e8 */ swc1 $f8,0x1e8($sp) -/* f07e36c: c60a0030 */ lwc1 $f10,0x30($s0) -/* f07e370: c4860010 */ lwc1 $f6,0x10($a0) -/* f07e374: 46005102 */ mul.s $f4,$f10,$f0 -/* f07e378: 46062200 */ add.s $f8,$f4,$f6 -/* f07e37c: 0fc24d13 */ jal func0f0926bc -/* f07e380: e7a801ec */ swc1 $f8,0x1ec($sp) -/* f07e384: 8fa20278 */ lw $v0,0x278($sp) -/* f07e388: 3c08800a */ lui $t0,0x800a -/* f07e38c: 8d08a8bc */ lw $t0,-0x5744($t0) -/* f07e390: 87ab01d6 */ lh $t3,0x1d6($sp) -/* f07e394: 24090001 */ li $t1,0x1 -/* f07e398: 27aa01e4 */ addiu $t2,$sp,0x1e4 -/* f07e39c: 27ac01d8 */ addiu $t4,$sp,0x1d8 -/* f07e3a0: afac0020 */ sw $t4,0x20($sp) -/* f07e3a4: afaa0018 */ sw $t2,0x18($sp) -/* f07e3a8: afa90014 */ sw $t1,0x14($sp) -/* f07e3ac: 00002025 */ move $a0,$zero -/* f07e3b0: 24070007 */ li $a3,0x7 -/* f07e3b4: 24450008 */ addiu $a1,$v0,0x8 -/* f07e3b8: 24460028 */ addiu $a2,$v0,0x28 -/* f07e3bc: afa80010 */ sw $t0,0x10($sp) -/* f07e3c0: 0fc4a8d5 */ jal explosionCreate -/* f07e3c4: afab001c */ sw $t3,0x1c($sp) -/* f07e3c8: 8e0d0040 */ lw $t5,0x40($s0) -/* f07e3cc: 35ae0004 */ ori $t6,$t5,0x4 -/* f07e3d0: 10000311 */ b .JF0f07f018 -/* f07e3d4: ae0e0040 */ sw $t6,0x40($s0) -.JF0f07e3d8: -/* f07e3d8: 860f0092 */ lh $t7,0x92($s0) -.JF0f07e3dc: -/* f07e3dc: 02002025 */ move $a0,$s0 -/* f07e3e0: 24050001 */ li $a1,0x1 -/* f07e3e4: 11e00063 */ beqz $t7,.JF0f07e574 -/* f07e3e8: 00000000 */ nop -/* f07e3ec: 1040002c */ beqz $v0,.JF0f07e4a0 -/* f07e3f0: 3c02800a */ lui $v0,0x800a -/* f07e3f4: 2442a630 */ addiu $v0,$v0,-22992 -/* f07e3f8: 8c590038 */ lw $t9,0x38($v0) -/* f07e3fc: 86180094 */ lh $t8,0x94($s0) -/* f07e400: 86090096 */ lh $t1,0x96($s0) -/* f07e404: 3c01bf80 */ lui $at,0xbf80 -/* f07e408: 03194023 */ subu $t0,$t8,$t9 -/* f07e40c: a6080094 */ sh $t0,0x94($s0) -/* f07e410: 8c4a0038 */ lw $t2,0x38($v0) -/* f07e414: 240d0032 */ li $t5,0x32 -/* f07e418: 00002025 */ move $a0,$zero -/* f07e41c: 012a5823 */ subu $t3,$t1,$t2 -/* f07e420: a60b0096 */ sh $t3,0x96($s0) -/* f07e424: 860c0096 */ lh $t4,0x96($s0) -/* f07e428: 24060064 */ li $a2,0x64 -/* f07e42c: 2407ffff */ li $a3,-1 -/* f07e430: 058102f9 */ bgez $t4,.JF0f07f018 -/* f07e434: 240effff */ li $t6,-1 -/* f07e438: a60d0096 */ sh $t5,0x96($s0) -/* f07e43c: 44810000 */ mtc1 $at,$f0 -/* f07e440: 240f0400 */ li $t7,0x400 -/* f07e444: 2418ffff */ li $t8,-1 -/* f07e448: afb8002c */ sw $t8,0x2c($sp) -/* f07e44c: afaf0014 */ sw $t7,0x14($sp) -/* f07e450: afa00028 */ sw $zero,0x28($sp) -/* f07e454: afa00020 */ sw $zero,0x20($sp) -/* f07e458: afa0001c */ sw $zero,0x1c($sp) -/* f07e45c: afa00018 */ sw $zero,0x18($sp) -/* f07e460: afae0010 */ sw $t6,0x10($sp) -/* f07e464: 8fa50278 */ lw $a1,0x278($sp) -/* f07e468: e7a00024 */ swc1 $f0,0x24($sp) -/* f07e46c: e7a00030 */ swc1 $f0,0x30($sp) -/* f07e470: e7a00034 */ swc1 $f0,0x34($sp) -/* f07e474: 0fc251de */ jal propsnd0f0939f8 -/* f07e478: e7a00038 */ swc1 $f0,0x38($sp) -/* f07e47c: 8fa50278 */ lw $a1,0x278($sp) -/* f07e480: 00003825 */ move $a3,$zero -/* f07e484: 84a40028 */ lh $a0,0x28($a1) -/* f07e488: afa00014 */ sw $zero,0x14($sp) -/* f07e48c: afa00010 */ sw $zero,0x10($sp) -/* f07e490: 0fc4bf7c */ jal sparksCreate -/* f07e494: 24a60008 */ addiu $a2,$a1,0x8 -/* f07e498: 100002e0 */ b .JF0f07f01c -/* f07e49c: 8fbf004c */ lw $ra,0x4c($sp) -.JF0f07e4a0: -/* f07e4a0: 44805000 */ mtc1 $zero,$f10 -/* f07e4a4: c604006c */ lwc1 $f4,0x6c($s0) -/* f07e4a8: 3c0140c0 */ lui $at,0x40c0 -/* f07e4ac: 46045032 */ c.eq.s $f10,$f4 -/* f07e4b0: 00000000 */ nop -/* f07e4b4: 450202d9 */ bc1fl .JF0f07f01c -/* f07e4b8: 8fbf004c */ lw $ra,0x4c($sp) -/* f07e4bc: c6060064 */ lwc1 $f6,0x64($s0) -/* f07e4c0: 44814000 */ mtc1 $at,$f8 -/* f07e4c4: 3c013f80 */ lui $at,0x3f80 -/* f07e4c8: 46083280 */ add.s $f10,$f6,$f8 -/* f07e4cc: e60a0064 */ swc1 $f10,0x64($s0) -/* f07e4d0: 8fb90278 */ lw $t9,0x278($sp) -/* f07e4d4: c7240008 */ lwc1 $f4,0x8($t9) -/* f07e4d8: e7a401c0 */ swc1 $f4,0x1c0($sp) -/* f07e4dc: c6080064 */ lwc1 $f8,0x64($s0) -/* f07e4e0: c726000c */ lwc1 $f6,0xc($t9) -/* f07e4e4: 46083281 */ sub.s $f10,$f6,$f8 -/* f07e4e8: e7aa01c4 */ swc1 $f10,0x1c4($sp) -/* f07e4ec: c7240010 */ lwc1 $f4,0x10($t9) -/* f07e4f0: e7a401c8 */ swc1 $f4,0x1c8($sp) -/* f07e4f4: c6020068 */ lwc1 $f2,0x68($s0) -/* f07e4f8: 4602503c */ c.lt.s $f10,$f2 -/* f07e4fc: 00000000 */ nop -/* f07e500: 45020005 */ bc1fl .JF0f07e518 -/* f07e504: 8fa80278 */ lw $t0,0x278($sp) -/* f07e508: 44813000 */ mtc1 $at,$f6 -/* f07e50c: e7a201c4 */ swc1 $f2,0x1c4($sp) -/* f07e510: e606006c */ swc1 $f6,0x6c($s0) -/* f07e514: 8fa80278 */ lw $t0,0x278($sp) -.JF0f07e518: -/* f07e518: 27a601c0 */ addiu $a2,$sp,0x1c0 -/* f07e51c: 27a701b0 */ addiu $a3,$sp,0x1b0 -/* f07e520: 25050028 */ addiu $a1,$t0,0x28 -/* f07e524: afa50054 */ sw $a1,0x54($sp) -/* f07e528: 0fc19be5 */ jal func0f065e74 -/* f07e52c: 25040008 */ addiu $a0,$t0,0x8 -/* f07e530: 8fa40278 */ lw $a0,0x278($sp) -/* f07e534: c7a801c0 */ lwc1 $f8,0x1c0($sp) -/* f07e538: e4880008 */ swc1 $f8,0x8($a0) -/* f07e53c: c7a401c4 */ lwc1 $f4,0x1c4($sp) -/* f07e540: e484000c */ swc1 $f4,0xc($a0) -/* f07e544: c7aa01c8 */ lwc1 $f10,0x1c8($sp) -/* f07e548: 0fc19b59 */ jal propDeregisterRooms -/* f07e54c: e48a0010 */ swc1 $f10,0x10($a0) -/* f07e550: 27a401b0 */ addiu $a0,$sp,0x1b0 -/* f07e554: 0fc19a31 */ jal roomsCopy -/* f07e558: 8fa50054 */ lw $a1,0x54($sp) -/* f07e55c: 02002025 */ move $a0,$s0 -/* f07e560: 00002825 */ move $a1,$zero -/* f07e564: 0fc1ab62 */ jal func0f069c70 -/* f07e568: 24060001 */ li $a2,0x1 -/* f07e56c: 100002ab */ b .JF0f07f01c -/* f07e570: 8fbf004c */ lw $ra,0x4c($sp) -.JF0f07e574: -/* f07e574: 0fc139d5 */ jal chraiExecute -/* f07e578: afa201f8 */ sw $v0,0x1f8($sp) -/* f07e57c: afa00274 */ sw $zero,0x274($sp) -/* f07e580: 8e020088 */ lw $v0,0x88($s0) -/* f07e584: 24050042 */ li $a1,0x42 -/* f07e588: 5040009f */ beqzl $v0,.JF0f07e808 -/* f07e58c: 8e090008 */ lw $t1,0x8($s0) -/* f07e590: 8e0a008c */ lw $t2,0x8c($s0) -/* f07e594: 8c490000 */ lw $t1,0x0($v0) -/* f07e598: 27a60220 */ addiu $a2,$sp,0x220 -/* f07e59c: 000a5880 */ sll $t3,$t2,0x2 -/* f07e5a0: 012b1821 */ addu $v1,$t1,$t3 -/* f07e5a4: 0fc45798 */ jal padUnpack -/* f07e5a8: 8c640000 */ lw $a0,0x0($v1) -/* f07e5ac: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07e5b0: c7a60220 */ lwc1 $f6,0x220($sp) -/* f07e5b4: c7aa0224 */ lwc1 $f10,0x224($sp) -/* f07e5b8: 11800011 */ beqz $t4,.JF0f07e600 -/* f07e5bc: e7a60214 */ swc1 $f6,0x214($sp) -/* f07e5c0: 8fad0268 */ lw $t5,0x268($sp) -/* f07e5c4: 240effff */ li $t6,-1 -/* f07e5c8: a7ae0212 */ sh $t6,0x212($sp) -/* f07e5cc: 27a40220 */ addiu $a0,$sp,0x220 -/* f07e5d0: 3c0540a0 */ lui $a1,0x40a0 -/* f07e5d4: 27a60210 */ addiu $a2,$sp,0x210 -/* f07e5d8: 00003825 */ move $a3,$zero -/* f07e5dc: afa00010 */ sw $zero,0x10($sp) -/* f07e5e0: 0c00a790 */ jal cdFindGroundYSimple -/* f07e5e4: a7ad0210 */ sh $t5,0x210($sp) -/* f07e5e8: 3c01420c */ lui $at,0x420c -/* f07e5ec: 44814000 */ mtc1 $at,$f8 -/* f07e5f0: 00000000 */ nop -/* f07e5f4: 46080100 */ add.s $f4,$f0,$f8 -/* f07e5f8: 10000002 */ b .JF0f07e604 -/* f07e5fc: e7a40218 */ swc1 $f4,0x218($sp) -.JF0f07e600: -/* f07e600: e7aa0218 */ swc1 $f10,0x218($sp) -.JF0f07e604: -/* f07e604: c7a60228 */ lwc1 $f6,0x228($sp) -/* f07e608: 8fa40278 */ lw $a0,0x278($sp) -/* f07e60c: 27a60214 */ addiu $a2,$sp,0x214 -/* f07e610: e7a6021c */ swc1 $f6,0x21c($sp) -/* f07e614: 8e0f0008 */ lw $t7,0x8($s0) -/* f07e618: 24840008 */ addiu $a0,$a0,0x8 -/* f07e61c: 00802825 */ move $a1,$a0 -/* f07e620: 000fc080 */ sll $t8,$t7,0x2 -/* f07e624: 07030011 */ bgezl $t8,.JF0f07e66c -/* f07e628: 8fa20278 */ lw $v0,0x278($sp) -/* f07e62c: 0fc11645 */ jal posIsArrivingLaterallyAtPos -/* f07e630: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07e634: 5040000d */ beqzl $v0,.JF0f07e66c -/* f07e638: 8fa20278 */ lw $v0,0x278($sp) -/* f07e63c: 0fc1ce23 */ jal hovercarIncrementStep -/* f07e640: 02002025 */ move $a0,$s0 -/* f07e644: 8e190088 */ lw $t9,0x88($s0) -/* f07e648: 8e0a008c */ lw $t2,0x8c($s0) -/* f07e64c: 24050002 */ li $a1,0x2 -/* f07e650: 8f280000 */ lw $t0,0x0($t9) -/* f07e654: 000a4880 */ sll $t1,$t2,0x2 -/* f07e658: 27a60220 */ addiu $a2,$sp,0x220 -/* f07e65c: 01091821 */ addu $v1,$t0,$t1 -/* f07e660: 0fc45798 */ jal padUnpack -/* f07e664: 8c640000 */ lw $a0,0x0($v1) -/* f07e668: 8fa20278 */ lw $v0,0x278($sp) -.JF0f07e66c: -/* f07e66c: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07e670: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07e674: c4440008 */ lwc1 $f4,0x8($v0) -/* f07e678: c4460010 */ lwc1 $f6,0x10($v0) -/* f07e67c: 46044301 */ sub.s $f12,$f8,$f4 -/* f07e680: 0fc25d3c */ jal atan2f -/* f07e684: 46065381 */ sub.s $f14,$f10,$f6 -/* f07e688: 8fa20278 */ lw $v0,0x278($sp) -/* f07e68c: e7a00200 */ swc1 $f0,0x200($sp) -/* f07e690: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07e694: c4440008 */ lwc1 $f4,0x8($v0) -/* f07e698: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07e69c: c4460010 */ lwc1 $f6,0x10($v0) -/* f07e6a0: 46044081 */ sub.s $f2,$f8,$f4 -/* f07e6a4: 46065381 */ sub.s $f14,$f10,$f6 -/* f07e6a8: 46021202 */ mul.s $f8,$f2,$f2 -/* f07e6ac: 00000000 */ nop -/* f07e6b0: 460e7102 */ mul.s $f4,$f14,$f14 -/* f07e6b4: 0c012838 */ jal sqrtf -/* f07e6b8: 46044300 */ add.s $f12,$f8,$f4 -/* f07e6bc: 8fab0278 */ lw $t3,0x278($sp) -/* f07e6c0: c7aa0218 */ lwc1 $f10,0x218($sp) -/* f07e6c4: 46000386 */ mov.s $f14,$f0 -/* f07e6c8: c566000c */ lwc1 $f6,0xc($t3) -/* f07e6cc: 0fc25d3c */ jal atan2f -/* f07e6d0: 46065301 */ sub.s $f12,$f10,$f6 -/* f07e6d4: e7a001fc */ swc1 $f0,0x1fc($sp) -/* f07e6d8: 8e0c0008 */ lw $t4,0x8($s0) -/* f07e6dc: 3c01dfff */ lui $at,0xdfff -/* f07e6e0: c7a80200 */ lwc1 $f8,0x200($sp) -/* f07e6e4: 000c6880 */ sll $t5,$t4,0x2 -/* f07e6e8: 05a1000c */ bgez $t5,.JF0f07e71c -/* f07e6ec: 3421ffff */ ori $at,$at,0xffff -/* f07e6f0: 8e0e0008 */ lw $t6,0x8($s0) -/* f07e6f4: e608007c */ swc1 $f8,0x7c($s0) -/* f07e6f8: e6000080 */ swc1 $f0,0x80($s0) -/* f07e6fc: 01c17824 */ and $t7,$t6,$at -/* f07e700: ae0f0008 */ sw $t7,0x8($s0) -/* f07e704: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07e708: 8fa30278 */ lw $v1,0x278($sp) -/* f07e70c: c7a40218 */ lwc1 $f4,0x218($sp) -/* f07e710: 53000003 */ beqzl $t8,.JF0f07e720 -/* f07e714: 8fb901f8 */ lw $t9,0x1f8($sp) -/* f07e718: e464000c */ swc1 $f4,0xc($v1) -.JF0f07e71c: -/* f07e71c: 8fb901f8 */ lw $t9,0x1f8($sp) -.JF0f07e720: -/* f07e720: 8fa30278 */ lw $v1,0x278($sp) -/* f07e724: 27a60214 */ addiu $a2,$sp,0x214 -/* f07e728: 13200034 */ beqz $t9,.JF0f07e7fc -/* f07e72c: 24640008 */ addiu $a0,$v1,0x8 -/* f07e730: 44800000 */ mtc1 $zero,$f0 -/* f07e734: 24650028 */ addiu $a1,$v1,0x28 -/* f07e738: 24075000 */ li $a3,0x5000 -/* f07e73c: afa00010 */ sw $zero,0x10($sp) -/* f07e740: e7a00014 */ swc1 $f0,0x14($sp) -/* f07e744: 0c00b4b4 */ jal cd0002d7c0 -/* f07e748: e7a00018 */ swc1 $f0,0x18($sp) -/* f07e74c: 54400005 */ bnezl $v0,.JF0f07e764 -/* f07e750: 8fa301f0 */ lw $v1,0x1f0($sp) -/* f07e754: 0c009270 */ jal cdGetObstacle -/* f07e758: 00000000 */ nop -/* f07e75c: afa201f0 */ sw $v0,0x1f0($sp) -/* f07e760: 8fa301f0 */ lw $v1,0x1f0($sp) -.JF0f07e764: -/* f07e764: 10600025 */ beqz $v1,.JF0f07e7fc -/* f07e768: 00000000 */ nop -/* f07e76c: 8c6a0004 */ lw $t2,0x4($v1) -/* f07e770: 8fa60278 */ lw $a2,0x278($sp) -/* f07e774: 3c017f1b */ lui $at,0x7f1b -/* f07e778: afaa01a0 */ sw $t2,0x1a0($sp) -/* f07e77c: c46a0008 */ lwc1 $f10,0x8($v1) -/* f07e780: c4c60008 */ lwc1 $f6,0x8($a2) -/* f07e784: c4680010 */ lwc1 $f8,0x10($v1) -/* f07e788: c4c40010 */ lwc1 $f4,0x10($a2) -/* f07e78c: 46065001 */ sub.s $f0,$f10,$f6 -/* f07e790: 01402825 */ move $a1,$t2 -/* f07e794: 00c02025 */ move $a0,$a2 -/* f07e798: 46044081 */ sub.s $f2,$f8,$f4 -/* f07e79c: 46000282 */ mul.s $f10,$f0,$f0 -/* f07e7a0: c428b3e8 */ lwc1 $f8,-0x4c18($at) -/* f07e7a4: 46021182 */ mul.s $f6,$f2,$f2 -/* f07e7a8: 46065300 */ add.s $f12,$f10,$f6 -/* f07e7ac: 4608603c */ c.lt.s $f12,$f8 -/* f07e7b0: 00000000 */ nop -/* f07e7b4: 45000007 */ bc1f .JF0f07e7d4 -/* f07e7b8: 00000000 */ nop -/* f07e7bc: 0fc24391 */ jal doorsChooseSwingDirection -/* f07e7c0: e7ac0058 */ swc1 $f12,0x58($sp) -/* f07e7c4: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07e7c8: 0fc23c83 */ jal doorsRequestMode -/* f07e7cc: 24050001 */ li $a1,0x1 -/* f07e7d0: c7ac0058 */ lwc1 $f12,0x58($sp) -.JF0f07e7d4: -/* f07e7d4: 3c017f1b */ lui $at,0x7f1b -/* f07e7d8: c424b3ec */ lwc1 $f4,-0x4c14($at) -/* f07e7dc: 4604603c */ c.lt.s $f12,$f4 -/* f07e7e0: 00000000 */ nop -/* f07e7e4: 45000005 */ bc1f .JF0f07e7fc -/* f07e7e8: 00000000 */ nop -/* f07e7ec: 0fc23cba */ jal doorIsOpen -/* f07e7f0: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07e7f4: 2c480001 */ sltiu $t0,$v0,0x1 -/* f07e7f8: afa80274 */ sw $t0,0x274($sp) -.JF0f07e7fc: -/* f07e7fc: 1000001a */ b .JF0f07e868 -/* f07e800: 44807000 */ mtc1 $zero,$f14 -/* f07e804: 8e090008 */ lw $t1,0x8($s0) -.JF0f07e808: -/* f07e808: 00095880 */ sll $t3,$t1,0x2 -/* f07e80c: 05630016 */ bgezl $t3,.JF0f07e868 -/* f07e810: 44807000 */ mtc1 $zero,$f14 -/* f07e814: c60c0034 */ lwc1 $f12,0x34($s0) -/* f07e818: 0fc25d3c */ jal atan2f -/* f07e81c: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07e820: c6020034 */ lwc1 $f2,0x34($s0) -/* f07e824: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07e828: e600007c */ swc1 $f0,0x7c($s0) -/* f07e82c: 46021282 */ mul.s $f10,$f2,$f2 -/* f07e830: 00000000 */ nop -/* f07e834: 460e7182 */ mul.s $f6,$f14,$f14 -/* f07e838: 0c012838 */ jal sqrtf -/* f07e83c: 46065300 */ add.s $f12,$f10,$f6 -/* f07e840: c60c0038 */ lwc1 $f12,0x38($s0) -/* f07e844: 0fc25d3c */ jal atan2f -/* f07e848: 46000386 */ mov.s $f14,$f0 -/* f07e84c: 8e0c0008 */ lw $t4,0x8($s0) -/* f07e850: 3c01dfff */ lui $at,0xdfff -/* f07e854: 3421ffff */ ori $at,$at,0xffff -/* f07e858: 01816824 */ and $t5,$t4,$at -/* f07e85c: e6000080 */ swc1 $f0,0x80($s0) -/* f07e860: ae0d0008 */ sw $t5,0x8($s0) -/* f07e864: 44807000 */ mtc1 $zero,$f14 -.JF0f07e868: -/* f07e868: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07e86c: 3c02800a */ lui $v0,0x800a -/* f07e870: 8fa30278 */ lw $v1,0x278($sp) -/* f07e874: 460c703e */ c.le.s $f14,$f12 -/* f07e878: 2442a630 */ addiu $v0,$v0,-22992 -/* f07e87c: 45020015 */ bc1fl .JF0f07e8d4 -/* f07e880: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07e884: c442004c */ lwc1 $f2,0x4c($v0) -/* f07e888: 4602603e */ c.le.s $f12,$f2 -/* f07e88c: 00000000 */ nop -/* f07e890: 45020006 */ bc1fl .JF0f07e8ac -/* f07e894: c6000064 */ lwc1 $f0,0x64($s0) -/* f07e898: c6080068 */ lwc1 $f8,0x68($s0) -/* f07e89c: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07e8a0: 10000008 */ b .JF0f07e8c4 -/* f07e8a4: e6080064 */ swc1 $f8,0x64($s0) -/* f07e8a8: c6000064 */ lwc1 $f0,0x64($s0) -.JF0f07e8ac: -/* f07e8ac: c6040068 */ lwc1 $f4,0x68($s0) -/* f07e8b0: 46002281 */ sub.s $f10,$f4,$f0 -/* f07e8b4: 46025182 */ mul.s $f6,$f10,$f2 -/* f07e8b8: 460c3203 */ div.s $f8,$f6,$f12 -/* f07e8bc: 46080100 */ add.s $f4,$f0,$f8 -/* f07e8c0: e6040064 */ swc1 $f4,0x64($s0) -.JF0f07e8c4: -/* f07e8c4: c44a004c */ lwc1 $f10,0x4c($v0) -/* f07e8c8: 460a6181 */ sub.s $f6,$f12,$f10 -/* f07e8cc: e606006c */ swc1 $f6,0x6c($s0) -/* f07e8d0: 8fae01f8 */ lw $t6,0x1f8($sp) -.JF0f07e8d4: -/* f07e8d4: 3c02800a */ lui $v0,0x800a -/* f07e8d8: 2442a630 */ addiu $v0,$v0,-22992 -/* f07e8dc: 51c00037 */ beqzl $t6,.JF0f07e9bc -/* f07e8e0: c6040064 */ lwc1 $f4,0x64($s0) -/* f07e8e4: c6080070 */ lwc1 $f8,0x70($s0) -/* f07e8e8: 3c017f1b */ lui $at,0x7f1b -/* f07e8ec: 4608703c */ c.lt.s $f14,$f8 -/* f07e8f0: 00000000 */ nop -/* f07e8f4: 45020013 */ bc1fl .JF0f07e944 -/* f07e8f8: c6000064 */ lwc1 $f0,0x64($s0) -/* f07e8fc: c6040068 */ lwc1 $f4,0x68($s0) -/* f07e900: c42ab3f0 */ lwc1 $f10,-0x4c10($at) -/* f07e904: c448004c */ lwc1 $f8,0x4c($v0) -/* f07e908: 3c017f1b */ lui $at,0x7f1b -/* f07e90c: 460a2182 */ mul.s $f6,$f4,$f10 -/* f07e910: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07e914: 46083102 */ mul.s $f4,$f6,$f8 -/* f07e918: 46045181 */ sub.s $f6,$f10,$f4 -/* f07e91c: e6060064 */ swc1 $f6,0x64($s0) -/* f07e920: c6080064 */ lwc1 $f8,0x64($s0) -/* f07e924: 460e403c */ c.lt.s $f8,$f14 -/* f07e928: 00000000 */ nop -/* f07e92c: 45020013 */ bc1fl .JF0f07e97c -/* f07e930: 8faf0274 */ lw $t7,0x274($sp) -/* f07e934: c42ab3f4 */ lwc1 $f10,-0x4c0c($at) -/* f07e938: 1000000f */ b .JF0f07e978 -/* f07e93c: e60a0064 */ swc1 $f10,0x64($s0) -/* f07e940: c6000064 */ lwc1 $f0,0x64($s0) -.JF0f07e944: -/* f07e944: c6020068 */ lwc1 $f2,0x68($s0) -/* f07e948: 3c017f1b */ lui $at,0x7f1b -/* f07e94c: 4602003c */ c.lt.s $f0,$f2 -/* f07e950: 00000000 */ nop -/* f07e954: 45020009 */ bc1fl .JF0f07e97c -/* f07e958: 8faf0274 */ lw $t7,0x274($sp) -/* f07e95c: c424b3f8 */ lwc1 $f4,-0x4c08($at) -/* f07e960: c448004c */ lwc1 $f8,0x4c($v0) -/* f07e964: 46041182 */ mul.s $f6,$f2,$f4 -/* f07e968: 00000000 */ nop -/* f07e96c: 46083282 */ mul.s $f10,$f6,$f8 -/* f07e970: 460a0100 */ add.s $f4,$f0,$f10 -/* f07e974: e6040064 */ swc1 $f4,0x64($s0) -.JF0f07e978: -/* f07e978: 8faf0274 */ lw $t7,0x274($sp) -.JF0f07e97c: -/* f07e97c: 3c017f1b */ lui $at,0x7f1b -/* f07e980: 51e0000e */ beqzl $t7,.JF0f07e9bc -/* f07e984: c6040064 */ lwc1 $f4,0x64($s0) -/* f07e988: c426b3fc */ lwc1 $f6,-0x4c04($at) -/* f07e98c: c448004c */ lwc1 $f8,0x4c($v0) -/* f07e990: c6040064 */ lwc1 $f4,0x64($s0) -/* f07e994: 46083282 */ mul.s $f10,$f6,$f8 -/* f07e998: 460a2181 */ sub.s $f6,$f4,$f10 -/* f07e99c: e6060064 */ swc1 $f6,0x64($s0) -/* f07e9a0: c6080064 */ lwc1 $f8,0x64($s0) -/* f07e9a4: 460e403c */ c.lt.s $f8,$f14 -/* f07e9a8: 00000000 */ nop -/* f07e9ac: 45020003 */ bc1fl .JF0f07e9bc -/* f07e9b0: c6040064 */ lwc1 $f4,0x64($s0) -/* f07e9b4: e60e0064 */ swc1 $f14,0x64($s0) -/* f07e9b8: c6040064 */ lwc1 $f4,0x64($s0) -.JF0f07e9bc: -/* f07e9bc: 4604703c */ c.lt.s $f14,$f4 -/* f07e9c0: 00000000 */ nop -/* f07e9c4: 45020195 */ bc1fl .JF0f07f01c -/* f07e9c8: 8fbf004c */ lw $ra,0x4c($sp) -/* f07e9cc: c60a007c */ lwc1 $f10,0x7c($s0) -/* f07e9d0: 24780008 */ addiu $t8,$v1,0x8 -/* f07e9d4: 24790028 */ addiu $t9,$v1,0x28 -/* f07e9d8: e7aa0190 */ swc1 $f10,0x190($sp) -/* f07e9dc: c6060080 */ lwc1 $f6,0x80($s0) -/* f07e9e0: e7a6018c */ swc1 $f6,0x18c($sp) -/* f07e9e4: c6080084 */ lwc1 $f8,0x84($s0) -/* f07e9e8: e7a80188 */ swc1 $f8,0x188($sp) -/* f07e9ec: c6040070 */ lwc1 $f4,0x70($s0) -/* f07e9f0: e7a40184 */ swc1 $f4,0x184($sp) -/* f07e9f4: c60a0074 */ lwc1 $f10,0x74($s0) -/* f07e9f8: e7aa0180 */ swc1 $f10,0x180($sp) -/* f07e9fc: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07ea00: afb90054 */ sw $t9,0x54($sp) -/* f07ea04: 0c0068df */ jal sinf -/* f07ea08: afb80058 */ sw $t8,0x58($sp) -/* f07ea0c: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07ea10: 0c0068dc */ jal cosf -/* f07ea14: e7a00068 */ swc1 $f0,0x68($sp) -/* f07ea18: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07ea1c: 46020182 */ mul.s $f6,$f0,$f2 -/* f07ea20: e7a60194 */ swc1 $f6,0x194($sp) -/* f07ea24: 0c0068df */ jal sinf -/* f07ea28: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07ea2c: e7a00198 */ swc1 $f0,0x198($sp) -/* f07ea30: 0c0068dc */ jal cosf -/* f07ea34: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07ea38: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07ea3c: 0c0068dc */ jal cosf -/* f07ea40: e7a00068 */ swc1 $f0,0x68($sp) -/* f07ea44: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07ea48: 8fa40058 */ lw $a0,0x58($sp) -/* f07ea4c: 27a50194 */ addiu $a1,$sp,0x194 -/* f07ea50: 46020202 */ mul.s $f8,$f0,$f2 -/* f07ea54: 27a60214 */ addiu $a2,$sp,0x214 -/* f07ea58: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07ea5c: 0fc115fe */ jal posIsMovingTowardsPosOrStoppedInRange -/* f07ea60: e7a8019c */ swc1 $f8,0x19c($sp) -/* f07ea64: 50400006 */ beqzl $v0,.JF0f07ea80 -/* f07ea68: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07ea6c: c604007c */ lwc1 $f4,0x7c($s0) -/* f07ea70: e7a40200 */ swc1 $f4,0x200($sp) -/* f07ea74: c60a0080 */ lwc1 $f10,0x80($s0) -/* f07ea78: e7aa01fc */ swc1 $f10,0x1fc($sp) -/* f07ea7c: 8fa201f8 */ lw $v0,0x1f8($sp) -.JF0f07ea80: -/* f07ea80: 10400004 */ beqz $v0,.JF0f07ea94 -/* f07ea84: 3c014170 */ lui $at,0x4170 -/* f07ea88: 44818000 */ mtc1 $at,$f16 -/* f07ea8c: 10000006 */ b .JF0f07eaa8 -/* f07ea90: 46008386 */ mov.s $f14,$f16 -.JF0f07ea94: -/* f07ea94: 3c0140a0 */ lui $at,0x40a0 -/* f07ea98: 44817000 */ mtc1 $at,$f14 -/* f07ea9c: 3c014170 */ lui $at,0x4170 -/* f07eaa0: 44818000 */ mtc1 $at,$f16 -/* f07eaa4: 00000000 */ nop -.JF0f07eaa8: -/* f07eaa8: 50400004 */ beqzl $v0,.JF0f07eabc -/* f07eaac: 3c0140a0 */ lui $at,0x40a0 -/* f07eab0: 10000004 */ b .JF0f07eac4 -/* f07eab4: 46008306 */ mov.s $f12,$f16 -/* f07eab8: 3c0140a0 */ lui $at,0x40a0 -.JF0f07eabc: -/* f07eabc: 44816000 */ mtc1 $at,$f12 -/* f07eac0: 00000000 */ nop -.JF0f07eac4: -/* f07eac4: 50400004 */ beqzl $v0,.JF0f07ead8 -/* f07eac8: 3c0140a0 */ lui $at,0x40a0 -/* f07eacc: 10000004 */ b .JF0f07eae0 -/* f07ead0: 46008086 */ mov.s $f2,$f16 -/* f07ead4: 3c0140a0 */ lui $at,0x40a0 -.JF0f07ead8: -/* f07ead8: 44811000 */ mtc1 $at,$f2 -/* f07eadc: 00000000 */ nop -.JF0f07eae0: -/* f07eae0: 3c017f1b */ lui $at,0x7f1b -/* f07eae4: c432b400 */ lwc1 $f18,-0x4c00($at) -/* f07eae8: 3c017f1b */ lui $at,0x7f1b -/* f07eaec: c424b404 */ lwc1 $f4,-0x4bfc($at) -/* f07eaf0: 46127182 */ mul.s $f6,$f14,$f18 -/* f07eaf4: 27a40190 */ addiu $a0,$sp,0x190 -/* f07eaf8: 8fa50200 */ lw $a1,0x200($sp) -/* f07eafc: 46126002 */ mul.s $f0,$f12,$f18 -/* f07eb00: 27a60184 */ addiu $a2,$sp,0x184 -/* f07eb04: 46041282 */ mul.s $f10,$f2,$f4 -/* f07eb08: 44073000 */ mfc1 $a3,$f6 -/* f07eb0c: 46000200 */ add.s $f8,$f0,$f0 -/* f07eb10: e7aa0014 */ swc1 $f10,0x14($sp) -/* f07eb14: 0fc1bb06 */ jal applyRotation -/* f07eb18: e7a80010 */ swc1 $f8,0x10($sp) -/* f07eb1c: c7a60190 */ lwc1 $f6,0x190($sp) -/* f07eb20: c7a80200 */ lwc1 $f8,0x200($sp) -/* f07eb24: 3c014170 */ lui $at,0x4170 -/* f07eb28: 44818000 */ mtc1 $at,$f16 -/* f07eb2c: 46083032 */ c.eq.s $f6,$f8 -/* f07eb30: 3c017f1b */ lui $at,0x7f1b -/* f07eb34: c432b408 */ lwc1 $f18,-0x4bf8($at) -/* f07eb38: 45020021 */ bc1fl .JF0f07ebc0 -/* f07eb3c: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07eb40: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07eb44: 3c0140a0 */ lui $at,0x40a0 -/* f07eb48: 50400004 */ beqzl $v0,.JF0f07eb5c -/* f07eb4c: 44811000 */ mtc1 $at,$f2 -/* f07eb50: 10000003 */ b .JF0f07eb60 -/* f07eb54: 46008086 */ mov.s $f2,$f16 -/* f07eb58: 44811000 */ mtc1 $at,$f2 -.JF0f07eb5c: -/* f07eb5c: 00000000 */ nop -.JF0f07eb60: -/* f07eb60: 46121002 */ mul.s $f0,$f2,$f18 -/* f07eb64: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07eb68: 46000100 */ add.s $f4,$f0,$f0 -/* f07eb6c: 4604703e */ c.le.s $f14,$f4 -/* f07eb70: 00000000 */ nop -/* f07eb74: 45020012 */ bc1fl .JF0f07ebc0 -/* f07eb78: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07eb7c: 10400003 */ beqz $v0,.JF0f07eb8c -/* f07eb80: 3c0140a0 */ lui $at,0x40a0 -/* f07eb84: 10000003 */ b .JF0f07eb94 -/* f07eb88: 46008306 */ mov.s $f12,$f16 -.JF0f07eb8c: -/* f07eb8c: 44816000 */ mtc1 $at,$f12 -/* f07eb90: 00000000 */ nop -.JF0f07eb94: -/* f07eb94: 46126002 */ mul.s $f0,$f12,$f18 -/* f07eb98: 46000007 */ neg.s $f0,$f0 -/* f07eb9c: 46000280 */ add.s $f10,$f0,$f0 -/* f07eba0: 460e503e */ c.le.s $f10,$f14 -/* f07eba4: 00000000 */ nop -/* f07eba8: 45020005 */ bc1fl .JF0f07ebc0 -/* f07ebac: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07ebb0: 44807000 */ mtc1 $zero,$f14 -/* f07ebb4: 00000000 */ nop -/* f07ebb8: e7ae0184 */ swc1 $f14,0x184($sp) -/* f07ebbc: 8fa201f8 */ lw $v0,0x1f8($sp) -.JF0f07ebc0: -/* f07ebc0: 50400004 */ beqzl $v0,.JF0f07ebd4 -/* f07ebc4: 3c0140a0 */ lui $at,0x40a0 -/* f07ebc8: 10000004 */ b .JF0f07ebdc -/* f07ebcc: 46008386 */ mov.s $f14,$f16 -/* f07ebd0: 3c0140a0 */ lui $at,0x40a0 -.JF0f07ebd4: -/* f07ebd4: 44817000 */ mtc1 $at,$f14 -/* f07ebd8: 00000000 */ nop -.JF0f07ebdc: -/* f07ebdc: 46127182 */ mul.s $f6,$f14,$f18 -/* f07ebe0: 50400004 */ beqzl $v0,.JF0f07ebf4 -/* f07ebe4: 3c0140a0 */ lui $at,0x40a0 -/* f07ebe8: 10000004 */ b .JF0f07ebfc -/* f07ebec: 46008306 */ mov.s $f12,$f16 -/* f07ebf0: 3c0140a0 */ lui $at,0x40a0 -.JF0f07ebf4: -/* f07ebf4: 44816000 */ mtc1 $at,$f12 -/* f07ebf8: 00000000 */ nop -.JF0f07ebfc: -/* f07ebfc: 46126002 */ mul.s $f0,$f12,$f18 -/* f07ec00: 50400004 */ beqzl $v0,.JF0f07ec14 -/* f07ec04: 3c0140a0 */ lui $at,0x40a0 -/* f07ec08: 10000004 */ b .JF0f07ec1c -/* f07ec0c: 46008086 */ mov.s $f2,$f16 -/* f07ec10: 3c0140a0 */ lui $at,0x40a0 -.JF0f07ec14: -/* f07ec14: 44811000 */ mtc1 $at,$f2 -/* f07ec18: 00000000 */ nop -.JF0f07ec1c: -/* f07ec1c: 3c017f1b */ lui $at,0x7f1b -/* f07ec20: c424b40c */ lwc1 $f4,-0x4bf4($at) -/* f07ec24: 46000200 */ add.s $f8,$f0,$f0 -/* f07ec28: 44073000 */ mfc1 $a3,$f6 -/* f07ec2c: 46041282 */ mul.s $f10,$f2,$f4 -/* f07ec30: 27a4018c */ addiu $a0,$sp,0x18c -/* f07ec34: e7a80010 */ swc1 $f8,0x10($sp) -/* f07ec38: 8fa501fc */ lw $a1,0x1fc($sp) -/* f07ec3c: 27a60180 */ addiu $a2,$sp,0x180 -/* f07ec40: 0fc1bb06 */ jal applyRotation -/* f07ec44: e7aa0014 */ swc1 $f10,0x14($sp) -/* f07ec48: c7a6018c */ lwc1 $f6,0x18c($sp) -/* f07ec4c: c7a801fc */ lwc1 $f8,0x1fc($sp) -/* f07ec50: 3c014170 */ lui $at,0x4170 -/* f07ec54: 44818000 */ mtc1 $at,$f16 -/* f07ec58: 46083032 */ c.eq.s $f6,$f8 -/* f07ec5c: 3c017f1b */ lui $at,0x7f1b -/* f07ec60: c432b410 */ lwc1 $f18,-0x4bf0($at) -/* f07ec64: 45020022 */ bc1fl .JF0f07ecf0 -/* f07ec68: 8e090008 */ lw $t1,0x8($s0) -/* f07ec6c: 8faa01f8 */ lw $t2,0x1f8($sp) -/* f07ec70: 3c0140a0 */ lui $at,0x40a0 -/* f07ec74: 8fa801f8 */ lw $t0,0x1f8($sp) -/* f07ec78: 51400004 */ beqzl $t2,.JF0f07ec8c -/* f07ec7c: 44811000 */ mtc1 $at,$f2 -/* f07ec80: 10000003 */ b .JF0f07ec90 -/* f07ec84: 46008086 */ mov.s $f2,$f16 -/* f07ec88: 44811000 */ mtc1 $at,$f2 -.JF0f07ec8c: -/* f07ec8c: 00000000 */ nop -.JF0f07ec90: -/* f07ec90: 46121002 */ mul.s $f0,$f2,$f18 -/* f07ec94: c7ae0180 */ lwc1 $f14,0x180($sp) -/* f07ec98: 46000100 */ add.s $f4,$f0,$f0 -/* f07ec9c: 4604703e */ c.le.s $f14,$f4 -/* f07eca0: 00000000 */ nop -/* f07eca4: 45020012 */ bc1fl .JF0f07ecf0 -/* f07eca8: 8e090008 */ lw $t1,0x8($s0) -/* f07ecac: 11000003 */ beqz $t0,.JF0f07ecbc -/* f07ecb0: 3c0140a0 */ lui $at,0x40a0 -/* f07ecb4: 10000003 */ b .JF0f07ecc4 -/* f07ecb8: 46008306 */ mov.s $f12,$f16 -.JF0f07ecbc: -/* f07ecbc: 44816000 */ mtc1 $at,$f12 -/* f07ecc0: 00000000 */ nop -.JF0f07ecc4: -/* f07ecc4: 46126002 */ mul.s $f0,$f12,$f18 -/* f07ecc8: 46000007 */ neg.s $f0,$f0 -/* f07eccc: 46000280 */ add.s $f10,$f0,$f0 -/* f07ecd0: 460e503e */ c.le.s $f10,$f14 -/* f07ecd4: 00000000 */ nop -/* f07ecd8: 45020005 */ bc1fl .JF0f07ecf0 -/* f07ecdc: 8e090008 */ lw $t1,0x8($s0) -/* f07ece0: 44807000 */ mtc1 $zero,$f14 -/* f07ece4: 00000000 */ nop -/* f07ece8: e7ae0180 */ swc1 $f14,0x180($sp) -/* f07ecec: 8e090008 */ lw $t1,0x8($s0) -.JF0f07ecf0: -/* f07ecf0: 44800000 */ mtc1 $zero,$f0 -/* f07ecf4: 00095800 */ sll $t3,$t1,0x0 -/* f07ecf8: 05630004 */ bgezl $t3,.JF0f07ed0c -/* f07ecfc: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07ed00: 1000000d */ b .JF0f07ed38 -/* f07ed04: e7a00188 */ swc1 $f0,0x188($sp) -/* f07ed08: c7ae0184 */ lwc1 $f14,0x184($sp) -.JF0f07ed0c: -/* f07ed0c: 3c0142f0 */ lui $at,0x42f0 -/* f07ed10: 44814000 */ mtc1 $at,$f8 -/* f07ed14: 46007187 */ neg.s $f6,$f14 -/* f07ed18: c7aa0188 */ lwc1 $f10,0x188($sp) -/* f07ed1c: 46083102 */ mul.s $f4,$f6,$f8 -/* f07ed20: 3c017f1b */ lui $at,0x7f1b -/* f07ed24: c428b414 */ lwc1 $f8,-0x4bec($at) -/* f07ed28: 460a2181 */ sub.s $f6,$f4,$f10 -/* f07ed2c: 46083102 */ mul.s $f4,$f6,$f8 -/* f07ed30: 46045180 */ add.s $f6,$f10,$f4 -/* f07ed34: e7a60188 */ swc1 $f6,0x188($sp) -.JF0f07ed38: -/* f07ed38: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07ed3c: 11800006 */ beqz $t4,.JF0f07ed58 -/* f07ed40: 3c017f1b */ lui $at,0x7f1b -/* f07ed44: c428b418 */ lwc1 $f8,-0x4be8($at) -/* f07ed48: c7aa018c */ lwc1 $f10,0x18c($sp) -/* f07ed4c: 460a4101 */ sub.s $f4,$f8,$f10 -/* f07ed50: 10000002 */ b .JF0f07ed5c -/* f07ed54: e7a4012c */ swc1 $f4,0x12c($sp) -.JF0f07ed58: -/* f07ed58: e7a0012c */ swc1 $f0,0x12c($sp) -.JF0f07ed5c: -/* f07ed5c: c7a80188 */ lwc1 $f8,0x188($sp) -/* f07ed60: c7a60190 */ lwc1 $f6,0x190($sp) -/* f07ed64: e7a00134 */ swc1 $f0,0x134($sp) -/* f07ed68: 4608003e */ c.le.s $f0,$f8 -/* f07ed6c: e7a60130 */ swc1 $f6,0x130($sp) -/* f07ed70: 45000006 */ bc1f .JF0f07ed8c -/* f07ed74: 00000000 */ nop -/* f07ed78: 46004306 */ mov.s $f12,$f8 -/* f07ed7c: 0c0058e8 */ jal mtx4LoadZRotation -/* f07ed80: 27a5006c */ addiu $a1,$sp,0x6c -/* f07ed84: 10000008 */ b .JF0f07eda8 -/* f07ed88: 27a4012c */ addiu $a0,$sp,0x12c -.JF0f07ed8c: -/* f07ed8c: 3c017f1b */ lui $at,0x7f1b -/* f07ed90: c424b41c */ lwc1 $f4,-0x4be4($at) -/* f07ed94: c7aa0188 */ lwc1 $f10,0x188($sp) -/* f07ed98: 27a5006c */ addiu $a1,$sp,0x6c -/* f07ed9c: 0c0058e8 */ jal mtx4LoadZRotation -/* f07eda0: 46045300 */ add.s $f12,$f10,$f4 -/* f07eda4: 27a4012c */ addiu $a0,$sp,0x12c -.JF0f07eda8: -/* f07eda8: 0c00590b */ jal mtx4LoadRotation -/* f07edac: 27a500ac */ addiu $a1,$sp,0xac -/* f07edb0: 8e0d0018 */ lw $t5,0x18($s0) -/* f07edb4: 27a500ac */ addiu $a1,$sp,0xac -/* f07edb8: 0c0057a9 */ jal mtx00015f04 -/* f07edbc: c5ac0014 */ lwc1 $f12,0x14($t5) -/* f07edc0: 27a400ac */ addiu $a0,$sp,0xac -/* f07edc4: 27a5006c */ addiu $a1,$sp,0x6c -/* f07edc8: 0c005668 */ jal mtx4MultMtx4 -/* f07edcc: 27a600ec */ addiu $a2,$sp,0xec -/* f07edd0: 27a400ec */ addiu $a0,$sp,0xec -/* f07edd4: 0c005750 */ jal mtx4ToMtx3 -/* f07edd8: 27a5015c */ addiu $a1,$sp,0x15c -/* f07eddc: 27a4015c */ addiu $a0,$sp,0x15c -/* f07ede0: 0c00571e */ jal mtx3Copy -/* f07ede4: 2605001c */ addiu $a1,$s0,0x1c -/* f07ede8: 0c0068dc */ jal cosf -/* f07edec: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07edf0: e7a00138 */ swc1 $f0,0x138($sp) -/* f07edf4: 0c0068df */ jal sinf -/* f07edf8: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07edfc: c7a60138 */ lwc1 $f6,0x138($sp) -/* f07ee00: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07ee04: 46060202 */ mul.s $f8,$f0,$f6 -/* f07ee08: 11c00005 */ beqz $t6,.JF0f07ee20 -/* f07ee0c: e7a80194 */ swc1 $f8,0x194($sp) -/* f07ee10: 0c0068df */ jal sinf -/* f07ee14: c7ac01fc */ lwc1 $f12,0x1fc($sp) -/* f07ee18: 10000004 */ b .JF0f07ee2c -/* f07ee1c: e7a00198 */ swc1 $f0,0x198($sp) -.JF0f07ee20: -/* f07ee20: 0c0068df */ jal sinf -/* f07ee24: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07ee28: e7a00198 */ swc1 $f0,0x198($sp) -.JF0f07ee2c: -/* f07ee2c: 0c0068dc */ jal cosf -/* f07ee30: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07ee34: c7aa0138 */ lwc1 $f10,0x138($sp) -/* f07ee38: 3c01800a */ lui $at,0x800a -/* f07ee3c: c422a67c */ lwc1 $f2,-0x5984($at) -/* f07ee40: 460a0102 */ mul.s $f4,$f0,$f10 -/* f07ee44: c7a60194 */ lwc1 $f6,0x194($sp) -/* f07ee48: 8faf0278 */ lw $t7,0x278($sp) -/* f07ee4c: 8fa40058 */ lw $a0,0x58($sp) -/* f07ee50: 8fa50054 */ lw $a1,0x54($sp) -/* f07ee54: 27a60150 */ addiu $a2,$sp,0x150 -/* f07ee58: 27a70140 */ addiu $a3,$sp,0x140 -/* f07ee5c: e7a4019c */ swc1 $f4,0x19c($sp) -/* f07ee60: c6080064 */ lwc1 $f8,0x64($s0) -/* f07ee64: 46024282 */ mul.s $f10,$f8,$f2 -/* f07ee68: c5e80008 */ lwc1 $f8,0x8($t7) -/* f07ee6c: 460a3102 */ mul.s $f4,$f6,$f10 -/* f07ee70: c7aa0198 */ lwc1 $f10,0x198($sp) -/* f07ee74: 46082180 */ add.s $f6,$f4,$f8 -/* f07ee78: e7a60150 */ swc1 $f6,0x150($sp) -/* f07ee7c: c6040064 */ lwc1 $f4,0x64($s0) -/* f07ee80: 46022202 */ mul.s $f8,$f4,$f2 -/* f07ee84: c5e4000c */ lwc1 $f4,0xc($t7) -/* f07ee88: 46085182 */ mul.s $f6,$f10,$f8 -/* f07ee8c: c7a8019c */ lwc1 $f8,0x19c($sp) -/* f07ee90: 46043280 */ add.s $f10,$f6,$f4 -/* f07ee94: e7aa0154 */ swc1 $f10,0x154($sp) -/* f07ee98: c6060064 */ lwc1 $f6,0x64($s0) -/* f07ee9c: 46023102 */ mul.s $f4,$f6,$f2 -/* f07eea0: c5e60010 */ lwc1 $f6,0x10($t7) -/* f07eea4: 46044282 */ mul.s $f10,$f8,$f4 -/* f07eea8: 46065200 */ add.s $f8,$f10,$f6 -/* f07eeac: 0fc19be5 */ jal func0f065e74 -/* f07eeb0: e7a80158 */ swc1 $f8,0x158($sp) -/* f07eeb4: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07eeb8: 27a40150 */ addiu $a0,$sp,0x150 -/* f07eebc: 3c0540a0 */ lui $a1,0x40a0 -/* f07eec0: 13000017 */ beqz $t8,.JF0f07ef20 -/* f07eec4: 27a60140 */ addiu $a2,$sp,0x140 -/* f07eec8: 00003825 */ move $a3,$zero -/* f07eecc: 0c00a790 */ jal cdFindGroundYSimple -/* f07eed0: afa00010 */ sw $zero,0x10($sp) -/* f07eed4: 3c01420c */ lui $at,0x420c -/* f07eed8: 44812000 */ mtc1 $at,$f4 -/* f07eedc: 3c017f1b */ lui $at,0x7f1b -/* f07eee0: c42ab420 */ lwc1 $f10,-0x4be0($at) -/* f07eee4: 46040080 */ add.s $f2,$f0,$f4 -/* f07eee8: 3c01800a */ lui $at,0x800a -/* f07eeec: 460a103c */ c.lt.s $f2,$f10 -/* f07eef0: e7a20154 */ swc1 $f2,0x154($sp) -/* f07eef4: 4502000b */ bc1fl .JF0f07ef24 -/* f07eef8: c7a40150 */ lwc1 $f4,0x150($sp) -/* f07eefc: c6060064 */ lwc1 $f6,0x64($s0) -/* f07ef00: c428a67c */ lwc1 $f8,-0x5984($at) -/* f07ef04: c7aa0198 */ lwc1 $f10,0x198($sp) -/* f07ef08: 8fb90278 */ lw $t9,0x278($sp) -/* f07ef0c: 46083102 */ mul.s $f4,$f6,$f8 -/* f07ef10: c728000c */ lwc1 $f8,0xc($t9) -/* f07ef14: 46045182 */ mul.s $f6,$f10,$f4 -/* f07ef18: 46083280 */ add.s $f10,$f6,$f8 -/* f07ef1c: e7aa0154 */ swc1 $f10,0x154($sp) -.JF0f07ef20: -/* f07ef20: c7a40150 */ lwc1 $f4,0x150($sp) -.JF0f07ef24: -/* f07ef24: 8fa40278 */ lw $a0,0x278($sp) -/* f07ef28: e4840008 */ swc1 $f4,0x8($a0) -/* f07ef2c: c7a60154 */ lwc1 $f6,0x154($sp) -/* f07ef30: e486000c */ swc1 $f6,0xc($a0) -/* f07ef34: c7a80158 */ lwc1 $f8,0x158($sp) -/* f07ef38: 0fc19b59 */ jal propDeregisterRooms -/* f07ef3c: e4880010 */ swc1 $f8,0x10($a0) -/* f07ef40: 27a40140 */ addiu $a0,$sp,0x140 -/* f07ef44: 0fc19a31 */ jal roomsCopy -/* f07ef48: 8fa50054 */ lw $a1,0x54($sp) -/* f07ef4c: c7aa0190 */ lwc1 $f10,0x190($sp) -/* f07ef50: 8e020088 */ lw $v0,0x88($s0) -/* f07ef54: e60a007c */ swc1 $f10,0x7c($s0) -/* f07ef58: c7a4018c */ lwc1 $f4,0x18c($sp) -/* f07ef5c: e6040080 */ swc1 $f4,0x80($s0) -/* f07ef60: c7a60188 */ lwc1 $f6,0x188($sp) -/* f07ef64: e6060084 */ swc1 $f6,0x84($s0) -/* f07ef68: c7a80184 */ lwc1 $f8,0x184($sp) -/* f07ef6c: e6080070 */ swc1 $f8,0x70($s0) -/* f07ef70: c7aa0180 */ lwc1 $f10,0x180($sp) -/* f07ef74: 10400024 */ beqz $v0,.JF0f07f008 -/* f07ef78: e60a0074 */ swc1 $f10,0x74($s0) -/* f07ef7c: 8e09008c */ lw $t1,0x8c($s0) -/* f07ef80: 8c480000 */ lw $t0,0x0($v0) -/* f07ef84: c7a601f4 */ lwc1 $f6,0x1f4($sp) -/* f07ef88: 00095880 */ sll $t3,$t1,0x2 -/* f07ef8c: 010b6021 */ addu $t4,$t0,$t3 -/* f07ef90: 8d8d0004 */ lw $t5,0x4($t4) -/* f07ef94: c7a401f4 */ lwc1 $f4,0x1f4($sp) -/* f07ef98: 05a20010 */ bltzl $t5,.JF0f07efdc -/* f07ef9c: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07efa0: c6040064 */ lwc1 $f4,0x64($s0) -/* f07efa4: 8fa40058 */ lw $a0,0x58($sp) -/* f07efa8: 27a50150 */ addiu $a1,$sp,0x150 -/* f07efac: 46062202 */ mul.s $f8,$f4,$f6 -/* f07efb0: 27a60214 */ addiu $a2,$sp,0x214 -/* f07efb4: 44074000 */ mfc1 $a3,$f8 -/* f07efb8: 0fc11645 */ jal posIsArrivingLaterallyAtPos -/* f07efbc: 00000000 */ nop -/* f07efc0: 50400012 */ beqzl $v0,.JF0f07f00c -/* f07efc4: 02002025 */ move $a0,$s0 -/* f07efc8: 0fc1ce23 */ jal hovercarIncrementStep -/* f07efcc: 02002025 */ move $a0,$s0 -/* f07efd0: 1000000e */ b .JF0f07f00c -/* f07efd4: 02002025 */ move $a0,$s0 -/* f07efd8: c60a0064 */ lwc1 $f10,0x64($s0) -.JF0f07efdc: -/* f07efdc: 8fa40058 */ lw $a0,0x58($sp) -/* f07efe0: 27a50150 */ addiu $a1,$sp,0x150 -/* f07efe4: 46045182 */ mul.s $f6,$f10,$f4 -/* f07efe8: 27a60214 */ addiu $a2,$sp,0x214 -/* f07efec: 44073000 */ mfc1 $a3,$f6 -/* f07eff0: 0fc11645 */ jal posIsArrivingLaterallyAtPos -/* f07eff4: 00000000 */ nop -/* f07eff8: 50400004 */ beqzl $v0,.JF0f07f00c -/* f07effc: 02002025 */ move $a0,$s0 -/* f07f000: 0fc1ce23 */ jal hovercarIncrementStep -/* f07f004: 02002025 */ move $a0,$s0 -.JF0f07f008: -/* f07f008: 02002025 */ move $a0,$s0 -.JF0f07f00c: -/* f07f00c: 00002825 */ move $a1,$zero -/* f07f010: 0fc1ab62 */ jal func0f069c70 -/* f07f014: 24060001 */ li $a2,0x1 -.JF0f07f018: -/* f07f018: 8fbf004c */ lw $ra,0x4c($sp) -.JF0f07f01c: -/* f07f01c: 8fb00048 */ lw $s0,0x48($sp) -/* f07f020: 27bd0278 */ addiu $sp,$sp,0x278 -/* f07f024: 03e00008 */ jr $ra -/* f07f028: 00000000 */ nop -); -#elif PAL -GLOBAL_ASM( -glabel hovercarTick -.late_rodata -glabel var7f1aa6ac -.word 0x471c4000 -glabel var7f1aa6b0 -.word 0x47148900 -glabel var7f1aa6b4 -.word 0x3d2aaaab -glabel var7f1aa6b8 -.word 0x3dcccccd -glabel var7f1aa6bc -.word 0x3d2aaaab -glabel var7f1aa6c0 -.word 0x3e555555 -glabel var7f1aa6c4 -.word 0x39893c87 -glabel var7f1aa6c8 -.word 0x3c80a8be -glabel var7f1aa6cc -.word 0x39893c87 -glabel var7f1aa6d0 -.word 0x3c80a8be -glabel var7f1aa6d4 -.word 0x39893c87 -glabel var7f1aa6d8 -.word 0x3dcccccd -glabel var7f1aa6dc -.word 0x40c907a9 -glabel var7f1aa6e0 -.word 0x40c907a9 -glabel var7f1aa6e4 -.word 0xc7c35000 -.text -/* f07d1e4: 27bdfd88 */ addiu $sp,$sp,-632 -/* f07d1e8: afbf004c */ sw $ra,0x4c($sp) -/* f07d1ec: afb00048 */ sw $s0,0x48($sp) -/* f07d1f0: afa40278 */ sw $a0,0x278($sp) -/* f07d1f4: 8c900004 */ lw $s0,0x4($a0) -/* f07d1f8: 3c018000 */ lui $at,0x8000 -/* f07d1fc: c604007c */ lwc1 $f4,0x7c($s0) -/* f07d200: e7a40200 */ swc1 $f4,0x200($sp) -/* f07d204: c6060080 */ lwc1 $f6,0x80($s0) -/* f07d208: e7a601fc */ swc1 $f6,0x1fc($sp) -/* f07d20c: 8e020008 */ lw $v0,0x8($s0) -/* f07d210: 00417824 */ and $t7,$v0,$at -/* f07d214: 11e00005 */ beqz $t7,.L0f07d22c -/* f07d218: 01e01025 */ or $v0,$t7,$zero -/* f07d21c: 3c0140a0 */ lui $at,0x40a0 -/* f07d220: 44814000 */ mtc1 $at,$f8 -/* f07d224: 10000005 */ b .L0f07d23c -/* f07d228: e7a801f4 */ swc1 $f8,0x1f4($sp) -.L0f07d22c: -/* f07d22c: 3c014120 */ lui $at,0x4120 -/* f07d230: 44815000 */ mtc1 $at,$f10 -/* f07d234: 00000000 */ nop -/* f07d238: e7aa01f4 */ swc1 $f10,0x1f4($sp) -.L0f07d23c: -/* f07d23c: 10400038 */ beqz $v0,.L0f07d320 -/* f07d240: afa001f0 */ sw $zero,0x1f0($sp) -/* f07d244: 86180094 */ lh $t8,0x94($s0) -/* f07d248: 07030036 */ bgezl $t8,.L0f07d324 -/* f07d24c: 860f0092 */ lh $t7,0x92($s0) -/* f07d250: 0fc1a2aa */ jal modelFindBboxRodata -/* f07d254: 8e040018 */ lw $a0,0x18($s0) -/* f07d258: 0fc199ef */ jal objGetLocalYMin -/* f07d25c: 00402025 */ or $a0,$v0,$zero -/* f07d260: 8fa40278 */ lw $a0,0x278($sp) -/* f07d264: 24050001 */ addiu $a1,$zero,0x1 -/* f07d268: 3406ffff */ dli $a2,0xffff -/* f07d26c: 84990028 */ lh $t9,0x28($a0) -/* f07d270: a7b901d6 */ sh $t9,0x1d6($sp) -/* f07d274: c6040028 */ lwc1 $f4,0x28($s0) -/* f07d278: e7a401d8 */ swc1 $f4,0x1d8($sp) -/* f07d27c: c606002c */ lwc1 $f6,0x2c($s0) -/* f07d280: e7a601dc */ swc1 $f6,0x1dc($sp) -/* f07d284: c6080030 */ lwc1 $f8,0x30($s0) -/* f07d288: e7a801e0 */ swc1 $f8,0x1e0($sp) -/* f07d28c: c60a0028 */ lwc1 $f10,0x28($s0) -/* f07d290: c4860008 */ lwc1 $f6,0x8($a0) -/* f07d294: 46005102 */ mul.s $f4,$f10,$f0 -/* f07d298: 46062200 */ add.s $f8,$f4,$f6 -/* f07d29c: e7a801e4 */ swc1 $f8,0x1e4($sp) -/* f07d2a0: c60a002c */ lwc1 $f10,0x2c($s0) -/* f07d2a4: c486000c */ lwc1 $f6,0xc($a0) -/* f07d2a8: 46005102 */ mul.s $f4,$f10,$f0 -/* f07d2ac: 46062200 */ add.s $f8,$f4,$f6 -/* f07d2b0: e7a801e8 */ swc1 $f8,0x1e8($sp) -/* f07d2b4: c60a0030 */ lwc1 $f10,0x30($s0) -/* f07d2b8: c4860010 */ lwc1 $f6,0x10($a0) -/* f07d2bc: 46005102 */ mul.s $f4,$f10,$f0 -/* f07d2c0: 46062200 */ add.s $f8,$f4,$f6 -/* f07d2c4: 0fc249af */ jal func0f0926bc -/* f07d2c8: e7a801ec */ swc1 $f8,0x1ec($sp) -/* f07d2cc: 8fa20278 */ lw $v0,0x278($sp) -/* f07d2d0: 3c08800a */ lui $t0,%hi(g_Vars+0x28c) -/* f07d2d4: 8d08a24c */ lw $t0,%lo(g_Vars+0x28c)($t0) -/* f07d2d8: 87ab01d6 */ lh $t3,0x1d6($sp) -/* f07d2dc: 24090001 */ addiu $t1,$zero,0x1 -/* f07d2e0: 27aa01e4 */ addiu $t2,$sp,0x1e4 -/* f07d2e4: 27ac01d8 */ addiu $t4,$sp,0x1d8 -/* f07d2e8: afac0020 */ sw $t4,0x20($sp) -/* f07d2ec: afaa0018 */ sw $t2,0x18($sp) -/* f07d2f0: afa90014 */ sw $t1,0x14($sp) -/* f07d2f4: 00002025 */ or $a0,$zero,$zero -/* f07d2f8: 24070007 */ addiu $a3,$zero,0x7 -/* f07d2fc: 24450008 */ addiu $a1,$v0,0x8 -/* f07d300: 24460028 */ addiu $a2,$v0,0x28 -/* f07d304: afa80010 */ sw $t0,0x10($sp) -/* f07d308: 0fc4a7d5 */ jal explosionCreate -/* f07d30c: afab001c */ sw $t3,0x1c($sp) -/* f07d310: 8e0d0040 */ lw $t5,0x40($s0) -/* f07d314: 35ae0004 */ ori $t6,$t5,0x4 -/* f07d318: 10000311 */ b .L0f07df60 -/* f07d31c: ae0e0040 */ sw $t6,0x40($s0) -.L0f07d320: -/* f07d320: 860f0092 */ lh $t7,0x92($s0) -.L0f07d324: -/* f07d324: 02002025 */ or $a0,$s0,$zero -/* f07d328: 24050001 */ addiu $a1,$zero,0x1 -/* f07d32c: 11e00063 */ beqz $t7,.L0f07d4bc -/* f07d330: 00000000 */ nop -/* f07d334: 1040002c */ beqz $v0,.L0f07d3e8 -/* f07d338: 3c02800a */ lui $v0,%hi(g_Vars) -/* f07d33c: 24429fc0 */ addiu $v0,$v0,%lo(g_Vars) -/* f07d340: 8c590038 */ lw $t9,0x38($v0) -/* f07d344: 86180094 */ lh $t8,0x94($s0) -/* f07d348: 86090096 */ lh $t1,0x96($s0) -/* f07d34c: 3c01bf80 */ lui $at,0xbf80 -/* f07d350: 03194023 */ subu $t0,$t8,$t9 -/* f07d354: a6080094 */ sh $t0,0x94($s0) -/* f07d358: 8c4a0038 */ lw $t2,0x38($v0) -/* f07d35c: 240d0032 */ addiu $t5,$zero,0x29 -/* f07d360: 00002025 */ or $a0,$zero,$zero -/* f07d364: 012a5823 */ subu $t3,$t1,$t2 -/* f07d368: a60b0096 */ sh $t3,0x96($s0) -/* f07d36c: 860c0096 */ lh $t4,0x96($s0) -/* f07d370: 24060064 */ addiu $a2,$zero,0x64 -/* f07d374: 2407ffff */ addiu $a3,$zero,-1 -/* f07d378: 058102f9 */ bgez $t4,.L0f07df60 -/* f07d37c: 240effff */ addiu $t6,$zero,-1 -/* f07d380: a60d0096 */ sh $t5,0x96($s0) -/* f07d384: 44810000 */ mtc1 $at,$f0 -/* f07d388: 240f0400 */ addiu $t7,$zero,0x400 -/* f07d38c: 2418ffff */ addiu $t8,$zero,-1 -/* f07d390: afb8002c */ sw $t8,0x2c($sp) -/* f07d394: afaf0014 */ sw $t7,0x14($sp) -/* f07d398: afa00028 */ sw $zero,0x28($sp) -/* f07d39c: afa00020 */ sw $zero,0x20($sp) -/* f07d3a0: afa0001c */ sw $zero,0x1c($sp) -/* f07d3a4: afa00018 */ sw $zero,0x18($sp) -/* f07d3a8: afae0010 */ sw $t6,0x10($sp) -/* f07d3ac: 8fa50278 */ lw $a1,0x278($sp) -/* f07d3b0: e7a00024 */ swc1 $f0,0x24($sp) -/* f07d3b4: e7a00030 */ swc1 $f0,0x30($sp) -/* f07d3b8: e7a00034 */ swc1 $f0,0x34($sp) -/* f07d3bc: 0fc24e7e */ jal propsnd0f0939f8 -/* f07d3c0: e7a00038 */ swc1 $f0,0x38($sp) -/* f07d3c4: 8fa50278 */ lw $a1,0x278($sp) -/* f07d3c8: 00003825 */ or $a3,$zero,$zero -/* f07d3cc: 84a40028 */ lh $a0,0x28($a1) -/* f07d3d0: afa00014 */ sw $zero,0x14($sp) -/* f07d3d4: afa00010 */ sw $zero,0x10($sp) -/* f07d3d8: 0fc4be7c */ jal sparksCreate -/* f07d3dc: 24a60008 */ addiu $a2,$a1,0x8 -/* f07d3e0: 100002e0 */ b .L0f07df64 -/* f07d3e4: 8fbf004c */ lw $ra,0x4c($sp) -.L0f07d3e8: -/* f07d3e8: 44805000 */ mtc1 $zero,$f10 -/* f07d3ec: c604006c */ lwc1 $f4,0x6c($s0) -/* f07d3f0: 3c0140c0 */ lui $at,0x40c0 -/* f07d3f4: 46045032 */ c.eq.s $f10,$f4 -/* f07d3f8: 00000000 */ nop -/* f07d3fc: 450202d9 */ bc1fl .L0f07df64 -/* f07d400: 8fbf004c */ lw $ra,0x4c($sp) -/* f07d404: c6060064 */ lwc1 $f6,0x64($s0) -/* f07d408: 44814000 */ mtc1 $at,$f8 -/* f07d40c: 3c013f80 */ lui $at,0x3f80 -/* f07d410: 46083280 */ add.s $f10,$f6,$f8 -/* f07d414: e60a0064 */ swc1 $f10,0x64($s0) -/* f07d418: 8fb90278 */ lw $t9,0x278($sp) -/* f07d41c: c7240008 */ lwc1 $f4,0x8($t9) -/* f07d420: e7a401c0 */ swc1 $f4,0x1c0($sp) -/* f07d424: c6080064 */ lwc1 $f8,0x64($s0) -/* f07d428: c726000c */ lwc1 $f6,0xc($t9) -/* f07d42c: 46083281 */ sub.s $f10,$f6,$f8 -/* f07d430: e7aa01c4 */ swc1 $f10,0x1c4($sp) -/* f07d434: c7240010 */ lwc1 $f4,0x10($t9) -/* f07d438: e7a401c8 */ swc1 $f4,0x1c8($sp) -/* f07d43c: c6020068 */ lwc1 $f2,0x68($s0) -/* f07d440: 4602503c */ c.lt.s $f10,$f2 -/* f07d444: 00000000 */ nop -/* f07d448: 45020005 */ bc1fl .L0f07d460 -/* f07d44c: 8fa80278 */ lw $t0,0x278($sp) -/* f07d450: 44813000 */ mtc1 $at,$f6 -/* f07d454: e7a201c4 */ swc1 $f2,0x1c4($sp) -/* f07d458: e606006c */ swc1 $f6,0x6c($s0) -/* f07d45c: 8fa80278 */ lw $t0,0x278($sp) -.L0f07d460: -/* f07d460: 27a601c0 */ addiu $a2,$sp,0x1c0 -/* f07d464: 27a701b0 */ addiu $a3,$sp,0x1b0 -/* f07d468: 25050028 */ addiu $a1,$t0,0x28 -/* f07d46c: afa50054 */ sw $a1,0x54($sp) -/* f07d470: 0fc1979d */ jal func0f065e74 -/* f07d474: 25040008 */ addiu $a0,$t0,0x8 -/* f07d478: 8fa40278 */ lw $a0,0x278($sp) -/* f07d47c: c7a801c0 */ lwc1 $f8,0x1c0($sp) -/* f07d480: e4880008 */ swc1 $f8,0x8($a0) -/* f07d484: c7a401c4 */ lwc1 $f4,0x1c4($sp) -/* f07d488: e484000c */ swc1 $f4,0xc($a0) -/* f07d48c: c7aa01c8 */ lwc1 $f10,0x1c8($sp) -/* f07d490: 0fc19711 */ jal propDeregisterRooms -/* f07d494: e48a0010 */ swc1 $f10,0x10($a0) -/* f07d498: 27a401b0 */ addiu $a0,$sp,0x1b0 -/* f07d49c: 0fc195e9 */ jal roomsCopy -/* f07d4a0: 8fa50054 */ lw $a1,0x54($sp) -/* f07d4a4: 02002025 */ or $a0,$s0,$zero -/* f07d4a8: 00002825 */ or $a1,$zero,$zero -/* f07d4ac: 0fc1a71c */ jal func0f069c70 -/* f07d4b0: 24060001 */ addiu $a2,$zero,0x1 -/* f07d4b4: 100002ab */ b .L0f07df64 -/* f07d4b8: 8fbf004c */ lw $ra,0x4c($sp) -.L0f07d4bc: -/* f07d4bc: 0fc135ad */ jal chraiExecute -/* f07d4c0: afa201f8 */ sw $v0,0x1f8($sp) -/* f07d4c4: afa00274 */ sw $zero,0x274($sp) -/* f07d4c8: 8e020088 */ lw $v0,0x88($s0) -/* f07d4cc: 24050042 */ addiu $a1,$zero,0x42 -/* f07d4d0: 5040009f */ beqzl $v0,.L0f07d750 -/* f07d4d4: 8e090008 */ lw $t1,0x8($s0) -/* f07d4d8: 8e0a008c */ lw $t2,0x8c($s0) -/* f07d4dc: 8c490000 */ lw $t1,0x0($v0) -/* f07d4e0: 27a60220 */ addiu $a2,$sp,0x220 -/* f07d4e4: 000a5880 */ sll $t3,$t2,0x2 -/* f07d4e8: 012b1821 */ addu $v1,$t1,$t3 -/* f07d4ec: 0fc456ac */ jal padUnpack -/* f07d4f0: 8c640000 */ lw $a0,0x0($v1) -/* f07d4f4: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07d4f8: c7a60220 */ lwc1 $f6,0x220($sp) -/* f07d4fc: c7aa0224 */ lwc1 $f10,0x224($sp) -/* f07d500: 11800011 */ beqz $t4,.L0f07d548 -/* f07d504: e7a60214 */ swc1 $f6,0x214($sp) -/* f07d508: 8fad0268 */ lw $t5,0x268($sp) -/* f07d50c: 240effff */ addiu $t6,$zero,-1 -/* f07d510: a7ae0212 */ sh $t6,0x212($sp) -/* f07d514: 27a40220 */ addiu $a0,$sp,0x220 -/* f07d518: 3c0540a0 */ lui $a1,0x40a0 -/* f07d51c: 27a60210 */ addiu $a2,$sp,0x210 -/* f07d520: 00003825 */ or $a3,$zero,$zero -/* f07d524: afa00010 */ sw $zero,0x10($sp) -/* f07d528: 0c00a8cc */ jal cdFindGroundYSimple -/* f07d52c: a7ad0210 */ sh $t5,0x210($sp) -/* f07d530: 3c01420c */ lui $at,0x420c -/* f07d534: 44814000 */ mtc1 $at,$f8 -/* f07d538: 00000000 */ nop -/* f07d53c: 46080100 */ add.s $f4,$f0,$f8 -/* f07d540: 10000002 */ b .L0f07d54c -/* f07d544: e7a40218 */ swc1 $f4,0x218($sp) -.L0f07d548: -/* f07d548: e7aa0218 */ swc1 $f10,0x218($sp) -.L0f07d54c: -/* f07d54c: c7a60228 */ lwc1 $f6,0x228($sp) -/* f07d550: 8fa40278 */ lw $a0,0x278($sp) -/* f07d554: 27a60214 */ addiu $a2,$sp,0x214 -/* f07d558: e7a6021c */ swc1 $f6,0x21c($sp) -/* f07d55c: 8e0f0008 */ lw $t7,0x8($s0) -/* f07d560: 24840008 */ addiu $a0,$a0,0x8 -/* f07d564: 00802825 */ or $a1,$a0,$zero -/* f07d568: 000fc080 */ sll $t8,$t7,0x2 -/* f07d56c: 07030011 */ bgezl $t8,.L0f07d5b4 -/* f07d570: 8fa20278 */ lw $v0,0x278($sp) -/* f07d574: 0fc111b8 */ jal posIsArrivingLaterallyAtPos -/* f07d578: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07d57c: 5040000d */ beqzl $v0,.L0f07d5b4 -/* f07d580: 8fa20278 */ lw $v0,0x278($sp) -/* f07d584: 0fc1c9dd */ jal hovercarIncrementStep -/* f07d588: 02002025 */ or $a0,$s0,$zero -/* f07d58c: 8e190088 */ lw $t9,0x88($s0) -/* f07d590: 8e0a008c */ lw $t2,0x8c($s0) -/* f07d594: 24050002 */ addiu $a1,$zero,0x2 -/* f07d598: 8f280000 */ lw $t0,0x0($t9) -/* f07d59c: 000a4880 */ sll $t1,$t2,0x2 -/* f07d5a0: 27a60220 */ addiu $a2,$sp,0x220 -/* f07d5a4: 01091821 */ addu $v1,$t0,$t1 -/* f07d5a8: 0fc456ac */ jal padUnpack -/* f07d5ac: 8c640000 */ lw $a0,0x0($v1) -/* f07d5b0: 8fa20278 */ lw $v0,0x278($sp) -.L0f07d5b4: -/* f07d5b4: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07d5b8: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07d5bc: c4440008 */ lwc1 $f4,0x8($v0) -/* f07d5c0: c4460010 */ lwc1 $f6,0x10($v0) -/* f07d5c4: 46044301 */ sub.s $f12,$f8,$f4 -/* f07d5c8: 0fc259d4 */ jal atan2f -/* f07d5cc: 46065381 */ sub.s $f14,$f10,$f6 -/* f07d5d0: 8fa20278 */ lw $v0,0x278($sp) -/* f07d5d4: e7a00200 */ swc1 $f0,0x200($sp) -/* f07d5d8: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07d5dc: c4440008 */ lwc1 $f4,0x8($v0) -/* f07d5e0: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07d5e4: c4460010 */ lwc1 $f6,0x10($v0) -/* f07d5e8: 46044081 */ sub.s $f2,$f8,$f4 -/* f07d5ec: 46065381 */ sub.s $f14,$f10,$f6 -/* f07d5f0: 46021202 */ mul.s $f8,$f2,$f2 -/* f07d5f4: 00000000 */ nop -/* f07d5f8: 460e7102 */ mul.s $f4,$f14,$f14 -/* f07d5fc: 0c012974 */ jal sqrtf -/* f07d600: 46044300 */ add.s $f12,$f8,$f4 -/* f07d604: 8fab0278 */ lw $t3,0x278($sp) -/* f07d608: c7aa0218 */ lwc1 $f10,0x218($sp) -/* f07d60c: 46000386 */ mov.s $f14,$f0 -/* f07d610: c566000c */ lwc1 $f6,0xc($t3) -/* f07d614: 0fc259d4 */ jal atan2f -/* f07d618: 46065301 */ sub.s $f12,$f10,$f6 -/* f07d61c: e7a001fc */ swc1 $f0,0x1fc($sp) -/* f07d620: 8e0c0008 */ lw $t4,0x8($s0) -/* f07d624: 3c01dfff */ lui $at,0xdfff -/* f07d628: c7a80200 */ lwc1 $f8,0x200($sp) -/* f07d62c: 000c6880 */ sll $t5,$t4,0x2 -/* f07d630: 05a1000c */ bgez $t5,.L0f07d664 -/* f07d634: 3421ffff */ ori $at,$at,0xffff -/* f07d638: 8e0e0008 */ lw $t6,0x8($s0) -/* f07d63c: e608007c */ swc1 $f8,0x7c($s0) -/* f07d640: e6000080 */ swc1 $f0,0x80($s0) -/* f07d644: 01c17824 */ and $t7,$t6,$at -/* f07d648: ae0f0008 */ sw $t7,0x8($s0) -/* f07d64c: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07d650: 8fa30278 */ lw $v1,0x278($sp) -/* f07d654: c7a40218 */ lwc1 $f4,0x218($sp) -/* f07d658: 53000003 */ beqzl $t8,.L0f07d668 -/* f07d65c: 8fb901f8 */ lw $t9,0x1f8($sp) -/* f07d660: e464000c */ swc1 $f4,0xc($v1) -.L0f07d664: -/* f07d664: 8fb901f8 */ lw $t9,0x1f8($sp) -.L0f07d668: -/* f07d668: 8fa30278 */ lw $v1,0x278($sp) -/* f07d66c: 27a60214 */ addiu $a2,$sp,0x214 -/* f07d670: 13200034 */ beqz $t9,.L0f07d744 -/* f07d674: 24640008 */ addiu $a0,$v1,0x8 -/* f07d678: 44800000 */ mtc1 $zero,$f0 -/* f07d67c: 24650028 */ addiu $a1,$v1,0x28 -/* f07d680: 24075000 */ addiu $a3,$zero,0x5000 -/* f07d684: afa00010 */ sw $zero,0x10($sp) -/* f07d688: e7a00014 */ swc1 $f0,0x14($sp) -/* f07d68c: 0c00b5f0 */ jal cd0002d7c0 -/* f07d690: e7a00018 */ swc1 $f0,0x18($sp) -/* f07d694: 54400005 */ bnezl $v0,.L0f07d6ac -/* f07d698: 8fa301f0 */ lw $v1,0x1f0($sp) -/* f07d69c: 0c0093ac */ jal cdGetObstacle -/* f07d6a0: 00000000 */ nop -/* f07d6a4: afa201f0 */ sw $v0,0x1f0($sp) -/* f07d6a8: 8fa301f0 */ lw $v1,0x1f0($sp) -.L0f07d6ac: -/* f07d6ac: 10600025 */ beqz $v1,.L0f07d744 -/* f07d6b0: 00000000 */ nop -/* f07d6b4: 8c6a0004 */ lw $t2,0x4($v1) -/* f07d6b8: 8fa60278 */ lw $a2,0x278($sp) -/* f07d6bc: 3c017f1b */ lui $at,%hi(var7f1aa6ac) -/* f07d6c0: afaa01a0 */ sw $t2,0x1a0($sp) -/* f07d6c4: c46a0008 */ lwc1 $f10,0x8($v1) -/* f07d6c8: c4c60008 */ lwc1 $f6,0x8($a2) -/* f07d6cc: c4680010 */ lwc1 $f8,0x10($v1) -/* f07d6d0: c4c40010 */ lwc1 $f4,0x10($a2) -/* f07d6d4: 46065001 */ sub.s $f0,$f10,$f6 -/* f07d6d8: 01402825 */ or $a1,$t2,$zero -/* f07d6dc: 00c02025 */ or $a0,$a2,$zero -/* f07d6e0: 46044081 */ sub.s $f2,$f8,$f4 -/* f07d6e4: 46000282 */ mul.s $f10,$f0,$f0 -/* f07d6e8: c428a6ac */ lwc1 $f8,%lo(var7f1aa6ac)($at) -/* f07d6ec: 46021182 */ mul.s $f6,$f2,$f2 -/* f07d6f0: 46065300 */ add.s $f12,$f10,$f6 -/* f07d6f4: 4608603c */ c.lt.s $f12,$f8 -/* f07d6f8: 00000000 */ nop -/* f07d6fc: 45000007 */ bc1f .L0f07d71c -/* f07d700: 00000000 */ nop -/* f07d704: 0fc24030 */ jal doorsChooseSwingDirection -/* f07d708: e7ac0058 */ swc1 $f12,0x58($sp) -/* f07d70c: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07d710: 0fc23922 */ jal doorsRequestMode -/* f07d714: 24050001 */ addiu $a1,$zero,0x1 -/* f07d718: c7ac0058 */ lwc1 $f12,0x58($sp) -.L0f07d71c: -/* f07d71c: 3c017f1b */ lui $at,%hi(var7f1aa6b0) -/* f07d720: c424a6b0 */ lwc1 $f4,%lo(var7f1aa6b0)($at) -/* f07d724: 4604603c */ c.lt.s $f12,$f4 -/* f07d728: 00000000 */ nop -/* f07d72c: 45000005 */ bc1f .L0f07d744 -/* f07d730: 00000000 */ nop -/* f07d734: 0fc23959 */ jal doorIsOpen -/* f07d738: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07d73c: 2c480001 */ sltiu $t0,$v0,0x1 -/* f07d740: afa80274 */ sw $t0,0x274($sp) -.L0f07d744: -/* f07d744: 1000001a */ b .L0f07d7b0 -/* f07d748: 44807000 */ mtc1 $zero,$f14 -/* f07d74c: 8e090008 */ lw $t1,0x8($s0) -.L0f07d750: -/* f07d750: 00095880 */ sll $t3,$t1,0x2 -/* f07d754: 05630016 */ bgezl $t3,.L0f07d7b0 -/* f07d758: 44807000 */ mtc1 $zero,$f14 -/* f07d75c: c60c0034 */ lwc1 $f12,0x34($s0) -/* f07d760: 0fc259d4 */ jal atan2f -/* f07d764: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07d768: c6020034 */ lwc1 $f2,0x34($s0) -/* f07d76c: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07d770: e600007c */ swc1 $f0,0x7c($s0) -/* f07d774: 46021282 */ mul.s $f10,$f2,$f2 -/* f07d778: 00000000 */ nop -/* f07d77c: 460e7182 */ mul.s $f6,$f14,$f14 -/* f07d780: 0c012974 */ jal sqrtf -/* f07d784: 46065300 */ add.s $f12,$f10,$f6 -/* f07d788: c60c0038 */ lwc1 $f12,0x38($s0) -/* f07d78c: 0fc259d4 */ jal atan2f -/* f07d790: 46000386 */ mov.s $f14,$f0 -/* f07d794: 8e0c0008 */ lw $t4,0x8($s0) -/* f07d798: 3c01dfff */ lui $at,0xdfff -/* f07d79c: 3421ffff */ ori $at,$at,0xffff -/* f07d7a0: 01816824 */ and $t5,$t4,$at -/* f07d7a4: e6000080 */ swc1 $f0,0x80($s0) -/* f07d7a8: ae0d0008 */ sw $t5,0x8($s0) -/* f07d7ac: 44807000 */ mtc1 $zero,$f14 -.L0f07d7b0: -/* f07d7b0: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07d7b4: 3c02800a */ lui $v0,%hi(g_Vars) -/* f07d7b8: 8fa30278 */ lw $v1,0x278($sp) -/* f07d7bc: 460c703e */ c.le.s $f14,$f12 -/* f07d7c0: 24429fc0 */ addiu $v0,$v0,%lo(g_Vars) -/* f07d7c4: 45020015 */ bc1fl .L0f07d81c -/* f07d7c8: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07d7cc: c442004c */ lwc1 $f2,0x4c($v0) -/* f07d7d0: 4602603e */ c.le.s $f12,$f2 -/* f07d7d4: 00000000 */ nop -/* f07d7d8: 45020006 */ bc1fl .L0f07d7f4 -/* f07d7dc: c6000064 */ lwc1 $f0,0x64($s0) -/* f07d7e0: c6080068 */ lwc1 $f8,0x68($s0) -/* f07d7e4: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07d7e8: 10000008 */ b .L0f07d80c -/* f07d7ec: e6080064 */ swc1 $f8,0x64($s0) -/* f07d7f0: c6000064 */ lwc1 $f0,0x64($s0) -.L0f07d7f4: -/* f07d7f4: c6040068 */ lwc1 $f4,0x68($s0) -/* f07d7f8: 46002281 */ sub.s $f10,$f4,$f0 -/* f07d7fc: 46025182 */ mul.s $f6,$f10,$f2 -/* f07d800: 460c3203 */ div.s $f8,$f6,$f12 -/* f07d804: 46080100 */ add.s $f4,$f0,$f8 -/* f07d808: e6040064 */ swc1 $f4,0x64($s0) -.L0f07d80c: -/* f07d80c: c44a004c */ lwc1 $f10,0x4c($v0) -/* f07d810: 460a6181 */ sub.s $f6,$f12,$f10 -/* f07d814: e606006c */ swc1 $f6,0x6c($s0) -/* f07d818: 8fae01f8 */ lw $t6,0x1f8($sp) -.L0f07d81c: -/* f07d81c: 3c02800a */ lui $v0,%hi(g_Vars) -/* f07d820: 24429fc0 */ addiu $v0,$v0,%lo(g_Vars) -/* f07d824: 51c00037 */ beqzl $t6,.L0f07d904 -/* f07d828: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d82c: c6080070 */ lwc1 $f8,0x70($s0) -/* f07d830: 3c017f1b */ lui $at,%hi(var7f1aa6b4) -/* f07d834: 4608703c */ c.lt.s $f14,$f8 -/* f07d838: 00000000 */ nop -/* f07d83c: 45020013 */ bc1fl .L0f07d88c -/* f07d840: c6000064 */ lwc1 $f0,0x64($s0) -/* f07d844: c6040068 */ lwc1 $f4,0x68($s0) -/* f07d848: c42aa6b4 */ lwc1 $f10,%lo(var7f1aa6b4)($at) -/* f07d84c: c4480044 */ lwc1 $f8,0x4c($v0) -/* f07d850: 3c017f1b */ lui $at,%hi(var7f1aa6b8) -/* f07d854: 460a2182 */ mul.s $f6,$f4,$f10 -/* f07d858: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07d85c: 46083102 */ mul.s $f4,$f6,$f8 -/* f07d860: 46045181 */ sub.s $f6,$f10,$f4 -/* f07d864: e6060064 */ swc1 $f6,0x64($s0) -/* f07d868: c6080064 */ lwc1 $f8,0x64($s0) -/* f07d86c: 460e403c */ c.lt.s $f8,$f14 -/* f07d870: 00000000 */ nop -/* f07d874: 45020013 */ bc1fl .L0f07d8c4 -/* f07d878: 8faf0274 */ lw $t7,0x274($sp) -/* f07d87c: c42aa6b8 */ lwc1 $f10,%lo(var7f1aa6b8)($at) -/* f07d880: 1000000f */ b .L0f07d8c0 -/* f07d884: e60a0064 */ swc1 $f10,0x64($s0) -/* f07d888: c6000064 */ lwc1 $f0,0x64($s0) -.L0f07d88c: -/* f07d88c: c6020068 */ lwc1 $f2,0x68($s0) -/* f07d890: 3c017f1b */ lui $at,%hi(var7f1aa6bc) -/* f07d894: 4602003c */ c.lt.s $f0,$f2 -/* f07d898: 00000000 */ nop -/* f07d89c: 45020009 */ bc1fl .L0f07d8c4 -/* f07d8a0: 8faf0274 */ lw $t7,0x274($sp) -/* f07d8a4: c424a6bc */ lwc1 $f4,%lo(var7f1aa6bc)($at) -/* f07d8a8: c4480044 */ lwc1 $f8,0x4c($v0) -/* f07d8ac: 46041182 */ mul.s $f6,$f2,$f4 -/* f07d8b0: 00000000 */ nop -/* f07d8b4: 46083282 */ mul.s $f10,$f6,$f8 -/* f07d8b8: 460a0100 */ add.s $f4,$f0,$f10 -/* f07d8bc: e6040064 */ swc1 $f4,0x64($s0) -.L0f07d8c0: -/* f07d8c0: 8faf0274 */ lw $t7,0x274($sp) -.L0f07d8c4: -/* f07d8c4: 3c017f1b */ lui $at,%hi(var7f1aa6c0) -/* f07d8c8: 51e0000e */ beqzl $t7,.L0f07d904 -/* f07d8cc: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d8d0: c426a6c0 */ lwc1 $f6,%lo(var7f1aa6c0)($at) -/* f07d8d4: c4480044 */ lwc1 $f8,0x4c($v0) -/* f07d8d8: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d8dc: 46083282 */ mul.s $f10,$f6,$f8 -/* f07d8e0: 460a2181 */ sub.s $f6,$f4,$f10 -/* f07d8e4: e6060064 */ swc1 $f6,0x64($s0) -/* f07d8e8: c6080064 */ lwc1 $f8,0x64($s0) -/* f07d8ec: 460e403c */ c.lt.s $f8,$f14 -/* f07d8f0: 00000000 */ nop -/* f07d8f4: 45020003 */ bc1fl .L0f07d904 -/* f07d8f8: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d8fc: e60e0064 */ swc1 $f14,0x64($s0) -/* f07d900: c6040064 */ lwc1 $f4,0x64($s0) -.L0f07d904: -/* f07d904: 4604703c */ c.lt.s $f14,$f4 -/* f07d908: 00000000 */ nop -/* f07d90c: 45020195 */ bc1fl .L0f07df64 -/* f07d910: 8fbf004c */ lw $ra,0x4c($sp) -/* f07d914: c60a007c */ lwc1 $f10,0x7c($s0) -/* f07d918: 24780008 */ addiu $t8,$v1,0x8 -/* f07d91c: 24790028 */ addiu $t9,$v1,0x28 -/* f07d920: e7aa0190 */ swc1 $f10,0x190($sp) -/* f07d924: c6060080 */ lwc1 $f6,0x80($s0) -/* f07d928: e7a6018c */ swc1 $f6,0x18c($sp) -/* f07d92c: c6080084 */ lwc1 $f8,0x84($s0) -/* f07d930: e7a80188 */ swc1 $f8,0x188($sp) -/* f07d934: c6040070 */ lwc1 $f4,0x70($s0) -/* f07d938: e7a40184 */ swc1 $f4,0x184($sp) -/* f07d93c: c60a0074 */ lwc1 $f10,0x74($s0) -/* f07d940: e7aa0180 */ swc1 $f10,0x180($sp) -/* f07d944: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07d948: afb90054 */ sw $t9,0x54($sp) -/* f07d94c: 0c0068f7 */ jal sinf -/* f07d950: afb80058 */ sw $t8,0x58($sp) -/* f07d954: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07d958: 0c0068f4 */ jal cosf -/* f07d95c: e7a00068 */ swc1 $f0,0x68($sp) -/* f07d960: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07d964: 46020182 */ mul.s $f6,$f0,$f2 -/* f07d968: e7a60194 */ swc1 $f6,0x194($sp) -/* f07d96c: 0c0068f7 */ jal sinf -/* f07d970: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07d974: e7a00198 */ swc1 $f0,0x198($sp) -/* f07d978: 0c0068f4 */ jal cosf -/* f07d97c: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07d980: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07d984: 0c0068f4 */ jal cosf -/* f07d988: e7a00068 */ swc1 $f0,0x68($sp) -/* f07d98c: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07d990: 8fa40058 */ lw $a0,0x58($sp) -/* f07d994: 27a50194 */ addiu $a1,$sp,0x194 -/* f07d998: 46020202 */ mul.s $f8,$f0,$f2 -/* f07d99c: 27a60214 */ addiu $a2,$sp,0x214 -/* f07d9a0: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07d9a4: 0fc11171 */ jal posIsMovingTowardsPosOrStoppedInRange -/* f07d9a8: e7a8019c */ swc1 $f8,0x19c($sp) -/* f07d9ac: 50400006 */ beqzl $v0,.L0f07d9c8 -/* f07d9b0: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07d9b4: c604007c */ lwc1 $f4,0x7c($s0) -/* f07d9b8: e7a40200 */ swc1 $f4,0x200($sp) -/* f07d9bc: c60a0080 */ lwc1 $f10,0x80($s0) -/* f07d9c0: e7aa01fc */ swc1 $f10,0x1fc($sp) -/* f07d9c4: 8fa201f8 */ lw $v0,0x1f8($sp) -.L0f07d9c8: -/* f07d9c8: 10400004 */ beqz $v0,.L0f07d9dc -/* f07d9cc: 3c014170 */ lui $at,0x4170 -/* f07d9d0: 44818000 */ mtc1 $at,$f16 -/* f07d9d4: 10000006 */ b .L0f07d9f0 -/* f07d9d8: 46008386 */ mov.s $f14,$f16 -.L0f07d9dc: -/* f07d9dc: 3c0140a0 */ lui $at,0x40a0 -/* f07d9e0: 44817000 */ mtc1 $at,$f14 -/* f07d9e4: 3c014170 */ lui $at,0x4170 -/* f07d9e8: 44818000 */ mtc1 $at,$f16 -/* f07d9ec: 00000000 */ nop -.L0f07d9f0: -/* f07d9f0: 50400004 */ beqzl $v0,.L0f07da04 -/* f07d9f4: 3c0140a0 */ lui $at,0x40a0 -/* f07d9f8: 10000004 */ b .L0f07da0c -/* f07d9fc: 46008306 */ mov.s $f12,$f16 -/* f07da00: 3c0140a0 */ lui $at,0x40a0 -.L0f07da04: -/* f07da04: 44816000 */ mtc1 $at,$f12 -/* f07da08: 00000000 */ nop -.L0f07da0c: -/* f07da0c: 50400004 */ beqzl $v0,.L0f07da20 -/* f07da10: 3c0140a0 */ lui $at,0x40a0 -/* f07da14: 10000004 */ b .L0f07da28 -/* f07da18: 46008086 */ mov.s $f2,$f16 -/* f07da1c: 3c0140a0 */ lui $at,0x40a0 -.L0f07da20: -/* f07da20: 44811000 */ mtc1 $at,$f2 -/* f07da24: 00000000 */ nop -.L0f07da28: -/* f07da28: 3c017f1b */ lui $at,%hi(var7f1aa6c4) -/* f07da2c: c432a6c4 */ lwc1 $f18,%lo(var7f1aa6c4)($at) -/* f07da30: 3c017f1b */ lui $at,%hi(var7f1aa6c8) -/* f07da34: c424a6c8 */ lwc1 $f4,%lo(var7f1aa6c8)($at) -/* f07da38: 46127182 */ mul.s $f6,$f14,$f18 -/* f07da3c: 27a40190 */ addiu $a0,$sp,0x190 -/* f07da40: 8fa50200 */ lw $a1,0x200($sp) -/* f07da44: 46126002 */ mul.s $f0,$f12,$f18 -/* f07da48: 27a60184 */ addiu $a2,$sp,0x184 -/* f07da4c: 46041282 */ mul.s $f10,$f2,$f4 -/* f07da50: 44073000 */ mfc1 $a3,$f6 -/* f07da54: 46000200 */ add.s $f8,$f0,$f0 -/* f07da58: e7aa0014 */ swc1 $f10,0x14($sp) -/* f07da5c: 0fc1b6c0 */ jal applyRotation -/* f07da60: e7a80010 */ swc1 $f8,0x10($sp) -/* f07da64: c7a60190 */ lwc1 $f6,0x190($sp) -/* f07da68: c7a80200 */ lwc1 $f8,0x200($sp) -/* f07da6c: 3c014170 */ lui $at,0x4170 -/* f07da70: 44818000 */ mtc1 $at,$f16 -/* f07da74: 46083032 */ c.eq.s $f6,$f8 -/* f07da78: 3c017f1b */ lui $at,%hi(var7f1aa6cc) -/* f07da7c: c432a6cc */ lwc1 $f18,%lo(var7f1aa6cc)($at) -/* f07da80: 45020021 */ bc1fl .L0f07db08 -/* f07da84: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07da88: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07da8c: 3c0140a0 */ lui $at,0x40a0 -/* f07da90: 50400004 */ beqzl $v0,.L0f07daa4 -/* f07da94: 44811000 */ mtc1 $at,$f2 -/* f07da98: 10000003 */ b .L0f07daa8 -/* f07da9c: 46008086 */ mov.s $f2,$f16 -/* f07daa0: 44811000 */ mtc1 $at,$f2 -.L0f07daa4: -/* f07daa4: 00000000 */ nop -.L0f07daa8: -/* f07daa8: 46121002 */ mul.s $f0,$f2,$f18 -/* f07daac: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07dab0: 46000100 */ add.s $f4,$f0,$f0 -/* f07dab4: 4604703e */ c.le.s $f14,$f4 -/* f07dab8: 00000000 */ nop -/* f07dabc: 45020012 */ bc1fl .L0f07db08 -/* f07dac0: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07dac4: 10400003 */ beqz $v0,.L0f07dad4 -/* f07dac8: 3c0140a0 */ lui $at,0x40a0 -/* f07dacc: 10000003 */ b .L0f07dadc -/* f07dad0: 46008306 */ mov.s $f12,$f16 -.L0f07dad4: -/* f07dad4: 44816000 */ mtc1 $at,$f12 -/* f07dad8: 00000000 */ nop -.L0f07dadc: -/* f07dadc: 46126002 */ mul.s $f0,$f12,$f18 -/* f07dae0: 46000007 */ neg.s $f0,$f0 -/* f07dae4: 46000280 */ add.s $f10,$f0,$f0 -/* f07dae8: 460e503e */ c.le.s $f10,$f14 -/* f07daec: 00000000 */ nop -/* f07daf0: 45020005 */ bc1fl .L0f07db08 -/* f07daf4: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07daf8: 44807000 */ mtc1 $zero,$f14 -/* f07dafc: 00000000 */ nop -/* f07db00: e7ae0184 */ swc1 $f14,0x184($sp) -/* f07db04: 8fa201f8 */ lw $v0,0x1f8($sp) -.L0f07db08: -/* f07db08: 50400004 */ beqzl $v0,.L0f07db1c -/* f07db0c: 3c0140a0 */ lui $at,0x40a0 -/* f07db10: 10000004 */ b .L0f07db24 -/* f07db14: 46008386 */ mov.s $f14,$f16 -/* f07db18: 3c0140a0 */ lui $at,0x40a0 -.L0f07db1c: -/* f07db1c: 44817000 */ mtc1 $at,$f14 -/* f07db20: 00000000 */ nop -.L0f07db24: -/* f07db24: 46127182 */ mul.s $f6,$f14,$f18 -/* f07db28: 50400004 */ beqzl $v0,.L0f07db3c -/* f07db2c: 3c0140a0 */ lui $at,0x40a0 -/* f07db30: 10000004 */ b .L0f07db44 -/* f07db34: 46008306 */ mov.s $f12,$f16 -/* f07db38: 3c0140a0 */ lui $at,0x40a0 -.L0f07db3c: -/* f07db3c: 44816000 */ mtc1 $at,$f12 -/* f07db40: 00000000 */ nop -.L0f07db44: -/* f07db44: 46126002 */ mul.s $f0,$f12,$f18 -/* f07db48: 50400004 */ beqzl $v0,.L0f07db5c -/* f07db4c: 3c0140a0 */ lui $at,0x40a0 -/* f07db50: 10000004 */ b .L0f07db64 -/* f07db54: 46008086 */ mov.s $f2,$f16 -/* f07db58: 3c0140a0 */ lui $at,0x40a0 -.L0f07db5c: -/* f07db5c: 44811000 */ mtc1 $at,$f2 -/* f07db60: 00000000 */ nop -.L0f07db64: -/* f07db64: 3c017f1b */ lui $at,%hi(var7f1aa6d0) -/* f07db68: c424a6d0 */ lwc1 $f4,%lo(var7f1aa6d0)($at) -/* f07db6c: 46000200 */ add.s $f8,$f0,$f0 -/* f07db70: 44073000 */ mfc1 $a3,$f6 -/* f07db74: 46041282 */ mul.s $f10,$f2,$f4 -/* f07db78: 27a4018c */ addiu $a0,$sp,0x18c -/* f07db7c: e7a80010 */ swc1 $f8,0x10($sp) -/* f07db80: 8fa501fc */ lw $a1,0x1fc($sp) -/* f07db84: 27a60180 */ addiu $a2,$sp,0x180 -/* f07db88: 0fc1b6c0 */ jal applyRotation -/* f07db8c: e7aa0014 */ swc1 $f10,0x14($sp) -/* f07db90: c7a6018c */ lwc1 $f6,0x18c($sp) -/* f07db94: c7a801fc */ lwc1 $f8,0x1fc($sp) -/* f07db98: 3c014170 */ lui $at,0x4170 -/* f07db9c: 44818000 */ mtc1 $at,$f16 -/* f07dba0: 46083032 */ c.eq.s $f6,$f8 -/* f07dba4: 3c017f1b */ lui $at,%hi(var7f1aa6d4) -/* f07dba8: c432a6d4 */ lwc1 $f18,%lo(var7f1aa6d4)($at) -/* f07dbac: 45020022 */ bc1fl .L0f07dc38 -/* f07dbb0: 8e090008 */ lw $t1,0x8($s0) -/* f07dbb4: 8faa01f8 */ lw $t2,0x1f8($sp) -/* f07dbb8: 3c0140a0 */ lui $at,0x40a0 -/* f07dbbc: 8fa801f8 */ lw $t0,0x1f8($sp) -/* f07dbc0: 51400004 */ beqzl $t2,.L0f07dbd4 -/* f07dbc4: 44811000 */ mtc1 $at,$f2 -/* f07dbc8: 10000003 */ b .L0f07dbd8 -/* f07dbcc: 46008086 */ mov.s $f2,$f16 -/* f07dbd0: 44811000 */ mtc1 $at,$f2 -.L0f07dbd4: -/* f07dbd4: 00000000 */ nop -.L0f07dbd8: -/* f07dbd8: 46121002 */ mul.s $f0,$f2,$f18 -/* f07dbdc: c7ae0180 */ lwc1 $f14,0x180($sp) -/* f07dbe0: 46000100 */ add.s $f4,$f0,$f0 -/* f07dbe4: 4604703e */ c.le.s $f14,$f4 -/* f07dbe8: 00000000 */ nop -/* f07dbec: 45020012 */ bc1fl .L0f07dc38 -/* f07dbf0: 8e090008 */ lw $t1,0x8($s0) -/* f07dbf4: 11000003 */ beqz $t0,.L0f07dc04 -/* f07dbf8: 3c0140a0 */ lui $at,0x40a0 -/* f07dbfc: 10000003 */ b .L0f07dc0c -/* f07dc00: 46008306 */ mov.s $f12,$f16 -.L0f07dc04: -/* f07dc04: 44816000 */ mtc1 $at,$f12 -/* f07dc08: 00000000 */ nop -.L0f07dc0c: -/* f07dc0c: 46126002 */ mul.s $f0,$f12,$f18 -/* f07dc10: 46000007 */ neg.s $f0,$f0 -/* f07dc14: 46000280 */ add.s $f10,$f0,$f0 -/* f07dc18: 460e503e */ c.le.s $f10,$f14 -/* f07dc1c: 00000000 */ nop -/* f07dc20: 45020005 */ bc1fl .L0f07dc38 -/* f07dc24: 8e090008 */ lw $t1,0x8($s0) -/* f07dc28: 44807000 */ mtc1 $zero,$f14 -/* f07dc2c: 00000000 */ nop -/* f07dc30: e7ae0180 */ swc1 $f14,0x180($sp) -/* f07dc34: 8e090008 */ lw $t1,0x8($s0) -.L0f07dc38: -/* f07dc38: 44800000 */ mtc1 $zero,$f0 -/* f07dc3c: 00095800 */ sll $t3,$t1,0x0 -/* f07dc40: 05630004 */ bgezl $t3,.L0f07dc54 -/* f07dc44: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07dc48: 1000000d */ b .L0f07dc80 -/* f07dc4c: e7a00188 */ swc1 $f0,0x188($sp) -/* f07dc50: c7ae0184 */ lwc1 $f14,0x184($sp) -.L0f07dc54: -/* f07dc54: 3c0142f0 */ lui $at,0x42f0 -/* f07dc58: 44814000 */ mtc1 $at,$f8 -/* f07dc5c: 46007187 */ neg.s $f6,$f14 -/* f07dc60: c7aa0188 */ lwc1 $f10,0x188($sp) -/* f07dc64: 46083102 */ mul.s $f4,$f6,$f8 -/* f07dc68: 3c017f1b */ lui $at,%hi(var7f1aa6d8) -/* f07dc6c: c428a6d8 */ lwc1 $f8,%lo(var7f1aa6d8)($at) -/* f07dc70: 460a2181 */ sub.s $f6,$f4,$f10 -/* f07dc74: 46083102 */ mul.s $f4,$f6,$f8 -/* f07dc78: 46045180 */ add.s $f6,$f10,$f4 -/* f07dc7c: e7a60188 */ swc1 $f6,0x188($sp) -.L0f07dc80: -/* f07dc80: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07dc84: 11800006 */ beqz $t4,.L0f07dca0 -/* f07dc88: 3c017f1b */ lui $at,%hi(var7f1aa6dc) -/* f07dc8c: c428a6dc */ lwc1 $f8,%lo(var7f1aa6dc)($at) -/* f07dc90: c7aa018c */ lwc1 $f10,0x18c($sp) -/* f07dc94: 460a4101 */ sub.s $f4,$f8,$f10 -/* f07dc98: 10000002 */ b .L0f07dca4 -/* f07dc9c: e7a4012c */ swc1 $f4,0x12c($sp) -.L0f07dca0: -/* f07dca0: e7a0012c */ swc1 $f0,0x12c($sp) -.L0f07dca4: -/* f07dca4: c7a80188 */ lwc1 $f8,0x188($sp) -/* f07dca8: c7a60190 */ lwc1 $f6,0x190($sp) -/* f07dcac: e7a00134 */ swc1 $f0,0x134($sp) -/* f07dcb0: 4608003e */ c.le.s $f0,$f8 -/* f07dcb4: e7a60130 */ swc1 $f6,0x130($sp) -/* f07dcb8: 45000006 */ bc1f .L0f07dcd4 -/* f07dcbc: 00000000 */ nop -/* f07dcc0: 46004306 */ mov.s $f12,$f8 -/* f07dcc4: 0c005900 */ jal mtx4LoadZRotation -/* f07dcc8: 27a5006c */ addiu $a1,$sp,0x6c -/* f07dccc: 10000008 */ b .L0f07dcf0 -/* f07dcd0: 27a4012c */ addiu $a0,$sp,0x12c -.L0f07dcd4: -/* f07dcd4: 3c017f1b */ lui $at,%hi(var7f1aa6e0) -/* f07dcd8: c424a6e0 */ lwc1 $f4,%lo(var7f1aa6e0)($at) -/* f07dcdc: c7aa0188 */ lwc1 $f10,0x188($sp) -/* f07dce0: 27a5006c */ addiu $a1,$sp,0x6c -/* f07dce4: 0c005900 */ jal mtx4LoadZRotation -/* f07dce8: 46045300 */ add.s $f12,$f10,$f4 -/* f07dcec: 27a4012c */ addiu $a0,$sp,0x12c -.L0f07dcf0: -/* f07dcf0: 0c005923 */ jal mtx4LoadRotation -/* f07dcf4: 27a500ac */ addiu $a1,$sp,0xac -/* f07dcf8: 8e0d0018 */ lw $t5,0x18($s0) -/* f07dcfc: 27a500ac */ addiu $a1,$sp,0xac -/* f07dd00: 0c0057c1 */ jal mtx00015f04 -/* f07dd04: c5ac0014 */ lwc1 $f12,0x14($t5) -/* f07dd08: 27a400ac */ addiu $a0,$sp,0xac -/* f07dd0c: 27a5006c */ addiu $a1,$sp,0x6c -/* f07dd10: 0c005680 */ jal mtx4MultMtx4 -/* f07dd14: 27a600ec */ addiu $a2,$sp,0xec -/* f07dd18: 27a400ec */ addiu $a0,$sp,0xec -/* f07dd1c: 0c005768 */ jal mtx4ToMtx3 -/* f07dd20: 27a5015c */ addiu $a1,$sp,0x15c -/* f07dd24: 27a4015c */ addiu $a0,$sp,0x15c -/* f07dd28: 0c005736 */ jal mtx3Copy -/* f07dd2c: 2605001c */ addiu $a1,$s0,0x1c -/* f07dd30: 0c0068f4 */ jal cosf -/* f07dd34: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07dd38: e7a00138 */ swc1 $f0,0x138($sp) -/* f07dd3c: 0c0068f7 */ jal sinf -/* f07dd40: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07dd44: c7a60138 */ lwc1 $f6,0x138($sp) -/* f07dd48: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07dd4c: 46060202 */ mul.s $f8,$f0,$f6 -/* f07dd50: 11c00005 */ beqz $t6,.L0f07dd68 -/* f07dd54: e7a80194 */ swc1 $f8,0x194($sp) -/* f07dd58: 0c0068f7 */ jal sinf -/* f07dd5c: c7ac01fc */ lwc1 $f12,0x1fc($sp) -/* f07dd60: 10000004 */ b .L0f07dd74 -/* f07dd64: e7a00198 */ swc1 $f0,0x198($sp) -.L0f07dd68: -/* f07dd68: 0c0068f7 */ jal sinf -/* f07dd6c: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07dd70: e7a00198 */ swc1 $f0,0x198($sp) -.L0f07dd74: -/* f07dd74: 0c0068f4 */ jal cosf -/* f07dd78: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07dd7c: c7aa0138 */ lwc1 $f10,0x138($sp) -/* f07dd80: 3c01800a */ lui $at,%hi(g_Vars+0x4c) -/* f07dd84: c422a00c */ lwc1 $f2,%lo(g_Vars+0x4c)($at) -/* f07dd88: 460a0102 */ mul.s $f4,$f0,$f10 -/* f07dd8c: c7a60194 */ lwc1 $f6,0x194($sp) -/* f07dd90: 8faf0278 */ lw $t7,0x278($sp) -/* f07dd94: 8fa40058 */ lw $a0,0x58($sp) -/* f07dd98: 8fa50054 */ lw $a1,0x54($sp) -/* f07dd9c: 27a60150 */ addiu $a2,$sp,0x150 -/* f07dda0: 27a70140 */ addiu $a3,$sp,0x140 -/* f07dda4: e7a4019c */ swc1 $f4,0x19c($sp) -/* f07dda8: c6080064 */ lwc1 $f8,0x64($s0) -/* f07ddac: 46024282 */ mul.s $f10,$f8,$f2 -/* f07ddb0: c5e80008 */ lwc1 $f8,0x8($t7) -/* f07ddb4: 460a3102 */ mul.s $f4,$f6,$f10 -/* f07ddb8: c7aa0198 */ lwc1 $f10,0x198($sp) -/* f07ddbc: 46082180 */ add.s $f6,$f4,$f8 -/* f07ddc0: e7a60150 */ swc1 $f6,0x150($sp) -/* f07ddc4: c6040064 */ lwc1 $f4,0x64($s0) -/* f07ddc8: 46022202 */ mul.s $f8,$f4,$f2 -/* f07ddcc: c5e4000c */ lwc1 $f4,0xc($t7) -/* f07ddd0: 46085182 */ mul.s $f6,$f10,$f8 -/* f07ddd4: c7a8019c */ lwc1 $f8,0x19c($sp) -/* f07ddd8: 46043280 */ add.s $f10,$f6,$f4 -/* f07dddc: e7aa0154 */ swc1 $f10,0x154($sp) -/* f07dde0: c6060064 */ lwc1 $f6,0x64($s0) -/* f07dde4: 46023102 */ mul.s $f4,$f6,$f2 -/* f07dde8: c5e60010 */ lwc1 $f6,0x10($t7) -/* f07ddec: 46044282 */ mul.s $f10,$f8,$f4 -/* f07ddf0: 46065200 */ add.s $f8,$f10,$f6 -/* f07ddf4: 0fc1979d */ jal func0f065e74 -/* f07ddf8: e7a80158 */ swc1 $f8,0x158($sp) -/* f07ddfc: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07de00: 27a40150 */ addiu $a0,$sp,0x150 -/* f07de04: 3c0540a0 */ lui $a1,0x40a0 -/* f07de08: 13000017 */ beqz $t8,.L0f07de68 -/* f07de0c: 27a60140 */ addiu $a2,$sp,0x140 -/* f07de10: 00003825 */ or $a3,$zero,$zero -/* f07de14: 0c00a8cc */ jal cdFindGroundYSimple -/* f07de18: afa00010 */ sw $zero,0x10($sp) -/* f07de1c: 3c01420c */ lui $at,0x420c -/* f07de20: 44812000 */ mtc1 $at,$f4 -/* f07de24: 3c017f1b */ lui $at,%hi(var7f1aa6e4) -/* f07de28: c42aa6e4 */ lwc1 $f10,%lo(var7f1aa6e4)($at) -/* f07de2c: 46040080 */ add.s $f2,$f0,$f4 -/* f07de30: 3c01800a */ lui $at,%hi(g_Vars+0x4c) -/* f07de34: 460a103c */ c.lt.s $f2,$f10 -/* f07de38: e7a20154 */ swc1 $f2,0x154($sp) -/* f07de3c: 4502000b */ bc1fl .L0f07de6c -/* f07de40: c7a40150 */ lwc1 $f4,0x150($sp) -/* f07de44: c6060064 */ lwc1 $f6,0x64($s0) -/* f07de48: c428a00c */ lwc1 $f8,%lo(g_Vars+0x4c)($at) -/* f07de4c: c7aa0198 */ lwc1 $f10,0x198($sp) -/* f07de50: 8fb90278 */ lw $t9,0x278($sp) -/* f07de54: 46083102 */ mul.s $f4,$f6,$f8 -/* f07de58: c728000c */ lwc1 $f8,0xc($t9) -/* f07de5c: 46045182 */ mul.s $f6,$f10,$f4 -/* f07de60: 46083280 */ add.s $f10,$f6,$f8 -/* f07de64: e7aa0154 */ swc1 $f10,0x154($sp) -.L0f07de68: -/* f07de68: c7a40150 */ lwc1 $f4,0x150($sp) -.L0f07de6c: -/* f07de6c: 8fa40278 */ lw $a0,0x278($sp) -/* f07de70: e4840008 */ swc1 $f4,0x8($a0) -/* f07de74: c7a60154 */ lwc1 $f6,0x154($sp) -/* f07de78: e486000c */ swc1 $f6,0xc($a0) -/* f07de7c: c7a80158 */ lwc1 $f8,0x158($sp) -/* f07de80: 0fc19711 */ jal propDeregisterRooms -/* f07de84: e4880010 */ swc1 $f8,0x10($a0) -/* f07de88: 27a40140 */ addiu $a0,$sp,0x140 -/* f07de8c: 0fc195e9 */ jal roomsCopy -/* f07de90: 8fa50054 */ lw $a1,0x54($sp) -/* f07de94: c7aa0190 */ lwc1 $f10,0x190($sp) -/* f07de98: 8e020088 */ lw $v0,0x88($s0) -/* f07de9c: e60a007c */ swc1 $f10,0x7c($s0) -/* f07dea0: c7a4018c */ lwc1 $f4,0x18c($sp) -/* f07dea4: e6040080 */ swc1 $f4,0x80($s0) -/* f07dea8: c7a60188 */ lwc1 $f6,0x188($sp) -/* f07deac: e6060084 */ swc1 $f6,0x84($s0) -/* f07deb0: c7a80184 */ lwc1 $f8,0x184($sp) -/* f07deb4: e6080070 */ swc1 $f8,0x70($s0) -/* f07deb8: c7aa0180 */ lwc1 $f10,0x180($sp) -/* f07debc: 10400024 */ beqz $v0,.L0f07df50 -/* f07dec0: e60a0074 */ swc1 $f10,0x74($s0) -/* f07dec4: 8e09008c */ lw $t1,0x8c($s0) -/* f07dec8: 8c480000 */ lw $t0,0x0($v0) -/* f07decc: c7a601f4 */ lwc1 $f6,0x1f4($sp) -/* f07ded0: 00095880 */ sll $t3,$t1,0x2 -/* f07ded4: 010b6021 */ addu $t4,$t0,$t3 -/* f07ded8: 8d8d0004 */ lw $t5,0x4($t4) -/* f07dedc: c7a401f4 */ lwc1 $f4,0x1f4($sp) -/* f07dee0: 05a20010 */ bltzl $t5,.L0f07df24 -/* f07dee4: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07dee8: c6040064 */ lwc1 $f4,0x64($s0) -/* f07deec: 8fa40058 */ lw $a0,0x58($sp) -/* f07def0: 27a50150 */ addiu $a1,$sp,0x150 -/* f07def4: 46062202 */ mul.s $f8,$f4,$f6 -/* f07def8: 27a60214 */ addiu $a2,$sp,0x214 -/* f07defc: 44074000 */ mfc1 $a3,$f8 -/* f07df00: 0fc111b8 */ jal posIsArrivingLaterallyAtPos -/* f07df04: 00000000 */ nop -/* f07df08: 50400012 */ beqzl $v0,.L0f07df54 -/* f07df0c: 02002025 */ or $a0,$s0,$zero -/* f07df10: 0fc1c9dd */ jal hovercarIncrementStep -/* f07df14: 02002025 */ or $a0,$s0,$zero -/* f07df18: 1000000e */ b .L0f07df54 -/* f07df1c: 02002025 */ or $a0,$s0,$zero -/* f07df20: c60a0064 */ lwc1 $f10,0x64($s0) -.L0f07df24: -/* f07df24: 8fa40058 */ lw $a0,0x58($sp) -/* f07df28: 27a50150 */ addiu $a1,$sp,0x150 -/* f07df2c: 46045182 */ mul.s $f6,$f10,$f4 -/* f07df30: 27a60214 */ addiu $a2,$sp,0x214 -/* f07df34: 44073000 */ mfc1 $a3,$f6 -/* f07df38: 0fc111b8 */ jal posIsArrivingLaterallyAtPos -/* f07df3c: 00000000 */ nop -/* f07df40: 50400004 */ beqzl $v0,.L0f07df54 -/* f07df44: 02002025 */ or $a0,$s0,$zero -/* f07df48: 0fc1c9dd */ jal hovercarIncrementStep -/* f07df4c: 02002025 */ or $a0,$s0,$zero -.L0f07df50: -/* f07df50: 02002025 */ or $a0,$s0,$zero -.L0f07df54: -/* f07df54: 00002825 */ or $a1,$zero,$zero -/* f07df58: 0fc1a71c */ jal func0f069c70 -/* f07df5c: 24060001 */ addiu $a2,$zero,0x1 -.L0f07df60: -/* f07df60: 8fbf004c */ lw $ra,0x4c($sp) -.L0f07df64: -/* f07df64: 8fb00048 */ lw $s0,0x48($sp) -/* f07df68: 27bd0278 */ addiu $sp,$sp,0x278 -/* f07df6c: 03e00008 */ jr $ra -/* f07df70: 00000000 */ nop -); -#elif VERSION >= VERSION_NTSC_1_0 -GLOBAL_ASM( -glabel hovercarTick -.late_rodata -glabel var7f1aa6ac -.word 0x471c4000 -glabel var7f1aa6b0 -.word 0x47148900 -glabel var7f1aa6b4 -.word 0x3d2aaaab -glabel var7f1aa6b8 -.word 0x3dcccccd -glabel var7f1aa6bc -.word 0x3d2aaaab -glabel var7f1aa6c0 -.word 0x3e555555 -glabel var7f1aa6c4 -.word 0x3964ba35 -glabel var7f1aa6c8 -.word 0x3c566e92 -glabel var7f1aa6cc -.word 0x3964ba35 -glabel var7f1aa6d0 -.word 0x3c566e92 -glabel var7f1aa6d4 -.word 0x3964ba35 -glabel var7f1aa6d8 -.word 0x3dcccccd -glabel var7f1aa6dc -.word 0x40c907a9 -glabel var7f1aa6e0 -.word 0x40c907a9 -glabel var7f1aa6e4 -.word 0xc7c35000 -.text -/* f07d1e4: 27bdfd88 */ addiu $sp,$sp,-632 -/* f07d1e8: afbf004c */ sw $ra,0x4c($sp) -/* f07d1ec: afb00048 */ sw $s0,0x48($sp) -/* f07d1f0: afa40278 */ sw $a0,0x278($sp) -/* f07d1f4: 8c900004 */ lw $s0,0x4($a0) -/* f07d1f8: 3c018000 */ lui $at,0x8000 -/* f07d1fc: c604007c */ lwc1 $f4,0x7c($s0) -/* f07d200: e7a40200 */ swc1 $f4,0x200($sp) -/* f07d204: c6060080 */ lwc1 $f6,0x80($s0) -/* f07d208: e7a601fc */ swc1 $f6,0x1fc($sp) -/* f07d20c: 8e020008 */ lw $v0,0x8($s0) -/* f07d210: 00417824 */ and $t7,$v0,$at -/* f07d214: 11e00005 */ beqz $t7,.L0f07d22c -/* f07d218: 01e01025 */ or $v0,$t7,$zero -/* f07d21c: 3c0140a0 */ lui $at,0x40a0 -/* f07d220: 44814000 */ mtc1 $at,$f8 -/* f07d224: 10000005 */ b .L0f07d23c -/* f07d228: e7a801f4 */ swc1 $f8,0x1f4($sp) -.L0f07d22c: -/* f07d22c: 3c014120 */ lui $at,0x4120 -/* f07d230: 44815000 */ mtc1 $at,$f10 -/* f07d234: 00000000 */ nop -/* f07d238: e7aa01f4 */ swc1 $f10,0x1f4($sp) -.L0f07d23c: -/* f07d23c: 10400038 */ beqz $v0,.L0f07d320 -/* f07d240: afa001f0 */ sw $zero,0x1f0($sp) -/* f07d244: 86180094 */ lh $t8,0x94($s0) -/* f07d248: 07030036 */ bgezl $t8,.L0f07d324 -/* f07d24c: 860f0092 */ lh $t7,0x92($s0) -/* f07d250: 0fc1a2aa */ jal modelFindBboxRodata -/* f07d254: 8e040018 */ lw $a0,0x18($s0) -/* f07d258: 0fc199ef */ jal objGetLocalYMin -/* f07d25c: 00402025 */ or $a0,$v0,$zero -/* f07d260: 8fa40278 */ lw $a0,0x278($sp) -/* f07d264: 24050001 */ addiu $a1,$zero,0x1 -/* f07d268: 3406ffff */ dli $a2,0xffff -/* f07d26c: 84990028 */ lh $t9,0x28($a0) -/* f07d270: a7b901d6 */ sh $t9,0x1d6($sp) -/* f07d274: c6040028 */ lwc1 $f4,0x28($s0) -/* f07d278: e7a401d8 */ swc1 $f4,0x1d8($sp) -/* f07d27c: c606002c */ lwc1 $f6,0x2c($s0) -/* f07d280: e7a601dc */ swc1 $f6,0x1dc($sp) -/* f07d284: c6080030 */ lwc1 $f8,0x30($s0) -/* f07d288: e7a801e0 */ swc1 $f8,0x1e0($sp) -/* f07d28c: c60a0028 */ lwc1 $f10,0x28($s0) -/* f07d290: c4860008 */ lwc1 $f6,0x8($a0) -/* f07d294: 46005102 */ mul.s $f4,$f10,$f0 -/* f07d298: 46062200 */ add.s $f8,$f4,$f6 -/* f07d29c: e7a801e4 */ swc1 $f8,0x1e4($sp) -/* f07d2a0: c60a002c */ lwc1 $f10,0x2c($s0) -/* f07d2a4: c486000c */ lwc1 $f6,0xc($a0) -/* f07d2a8: 46005102 */ mul.s $f4,$f10,$f0 -/* f07d2ac: 46062200 */ add.s $f8,$f4,$f6 -/* f07d2b0: e7a801e8 */ swc1 $f8,0x1e8($sp) -/* f07d2b4: c60a0030 */ lwc1 $f10,0x30($s0) -/* f07d2b8: c4860010 */ lwc1 $f6,0x10($a0) -/* f07d2bc: 46005102 */ mul.s $f4,$f10,$f0 -/* f07d2c0: 46062200 */ add.s $f8,$f4,$f6 -/* f07d2c4: 0fc249af */ jal func0f0926bc -/* f07d2c8: e7a801ec */ swc1 $f8,0x1ec($sp) -/* f07d2cc: 8fa20278 */ lw $v0,0x278($sp) -/* f07d2d0: 3c08800a */ lui $t0,%hi(g_Vars+0x28c) -/* f07d2d4: 8d08a24c */ lw $t0,%lo(g_Vars+0x28c)($t0) -/* f07d2d8: 87ab01d6 */ lh $t3,0x1d6($sp) -/* f07d2dc: 24090001 */ addiu $t1,$zero,0x1 -/* f07d2e0: 27aa01e4 */ addiu $t2,$sp,0x1e4 -/* f07d2e4: 27ac01d8 */ addiu $t4,$sp,0x1d8 -/* f07d2e8: afac0020 */ sw $t4,0x20($sp) -/* f07d2ec: afaa0018 */ sw $t2,0x18($sp) -/* f07d2f0: afa90014 */ sw $t1,0x14($sp) -/* f07d2f4: 00002025 */ or $a0,$zero,$zero -/* f07d2f8: 24070007 */ addiu $a3,$zero,0x7 -/* f07d2fc: 24450008 */ addiu $a1,$v0,0x8 -/* f07d300: 24460028 */ addiu $a2,$v0,0x28 -/* f07d304: afa80010 */ sw $t0,0x10($sp) -/* f07d308: 0fc4a7d5 */ jal explosionCreate -/* f07d30c: afab001c */ sw $t3,0x1c($sp) -/* f07d310: 8e0d0040 */ lw $t5,0x40($s0) -/* f07d314: 35ae0004 */ ori $t6,$t5,0x4 -/* f07d318: 10000311 */ b .L0f07df60 -/* f07d31c: ae0e0040 */ sw $t6,0x40($s0) -.L0f07d320: -/* f07d320: 860f0092 */ lh $t7,0x92($s0) -.L0f07d324: -/* f07d324: 02002025 */ or $a0,$s0,$zero -/* f07d328: 24050001 */ addiu $a1,$zero,0x1 -/* f07d32c: 11e00063 */ beqz $t7,.L0f07d4bc -/* f07d330: 00000000 */ nop -/* f07d334: 1040002c */ beqz $v0,.L0f07d3e8 -/* f07d338: 3c02800a */ lui $v0,%hi(g_Vars) -/* f07d33c: 24429fc0 */ addiu $v0,$v0,%lo(g_Vars) -/* f07d340: 8c590038 */ lw $t9,0x38($v0) -/* f07d344: 86180094 */ lh $t8,0x94($s0) -/* f07d348: 86090096 */ lh $t1,0x96($s0) -/* f07d34c: 3c01bf80 */ lui $at,0xbf80 -/* f07d350: 03194023 */ subu $t0,$t8,$t9 -/* f07d354: a6080094 */ sh $t0,0x94($s0) -/* f07d358: 8c4a0038 */ lw $t2,0x38($v0) -/* f07d35c: 240d0032 */ addiu $t5,$zero,0x32 -/* f07d360: 00002025 */ or $a0,$zero,$zero -/* f07d364: 012a5823 */ subu $t3,$t1,$t2 -/* f07d368: a60b0096 */ sh $t3,0x96($s0) -/* f07d36c: 860c0096 */ lh $t4,0x96($s0) -/* f07d370: 24060064 */ addiu $a2,$zero,0x64 -/* f07d374: 2407ffff */ addiu $a3,$zero,-1 -/* f07d378: 058102f9 */ bgez $t4,.L0f07df60 -/* f07d37c: 240effff */ addiu $t6,$zero,-1 -/* f07d380: a60d0096 */ sh $t5,0x96($s0) -/* f07d384: 44810000 */ mtc1 $at,$f0 -/* f07d388: 240f0400 */ addiu $t7,$zero,0x400 -/* f07d38c: 2418ffff */ addiu $t8,$zero,-1 -/* f07d390: afb8002c */ sw $t8,0x2c($sp) -/* f07d394: afaf0014 */ sw $t7,0x14($sp) -/* f07d398: afa00028 */ sw $zero,0x28($sp) -/* f07d39c: afa00020 */ sw $zero,0x20($sp) -/* f07d3a0: afa0001c */ sw $zero,0x1c($sp) -/* f07d3a4: afa00018 */ sw $zero,0x18($sp) -/* f07d3a8: afae0010 */ sw $t6,0x10($sp) -/* f07d3ac: 8fa50278 */ lw $a1,0x278($sp) -/* f07d3b0: e7a00024 */ swc1 $f0,0x24($sp) -/* f07d3b4: e7a00030 */ swc1 $f0,0x30($sp) -/* f07d3b8: e7a00034 */ swc1 $f0,0x34($sp) -/* f07d3bc: 0fc24e7e */ jal propsnd0f0939f8 -/* f07d3c0: e7a00038 */ swc1 $f0,0x38($sp) -/* f07d3c4: 8fa50278 */ lw $a1,0x278($sp) -/* f07d3c8: 00003825 */ or $a3,$zero,$zero -/* f07d3cc: 84a40028 */ lh $a0,0x28($a1) -/* f07d3d0: afa00014 */ sw $zero,0x14($sp) -/* f07d3d4: afa00010 */ sw $zero,0x10($sp) -/* f07d3d8: 0fc4be7c */ jal sparksCreate -/* f07d3dc: 24a60008 */ addiu $a2,$a1,0x8 -/* f07d3e0: 100002e0 */ b .L0f07df64 -/* f07d3e4: 8fbf004c */ lw $ra,0x4c($sp) -.L0f07d3e8: -/* f07d3e8: 44805000 */ mtc1 $zero,$f10 -/* f07d3ec: c604006c */ lwc1 $f4,0x6c($s0) -/* f07d3f0: 3c0140c0 */ lui $at,0x40c0 -/* f07d3f4: 46045032 */ c.eq.s $f10,$f4 -/* f07d3f8: 00000000 */ nop -/* f07d3fc: 450202d9 */ bc1fl .L0f07df64 -/* f07d400: 8fbf004c */ lw $ra,0x4c($sp) -/* f07d404: c6060064 */ lwc1 $f6,0x64($s0) -/* f07d408: 44814000 */ mtc1 $at,$f8 -/* f07d40c: 3c013f80 */ lui $at,0x3f80 -/* f07d410: 46083280 */ add.s $f10,$f6,$f8 -/* f07d414: e60a0064 */ swc1 $f10,0x64($s0) -/* f07d418: 8fb90278 */ lw $t9,0x278($sp) -/* f07d41c: c7240008 */ lwc1 $f4,0x8($t9) -/* f07d420: e7a401c0 */ swc1 $f4,0x1c0($sp) -/* f07d424: c6080064 */ lwc1 $f8,0x64($s0) -/* f07d428: c726000c */ lwc1 $f6,0xc($t9) -/* f07d42c: 46083281 */ sub.s $f10,$f6,$f8 -/* f07d430: e7aa01c4 */ swc1 $f10,0x1c4($sp) -/* f07d434: c7240010 */ lwc1 $f4,0x10($t9) -/* f07d438: e7a401c8 */ swc1 $f4,0x1c8($sp) -/* f07d43c: c6020068 */ lwc1 $f2,0x68($s0) -/* f07d440: 4602503c */ c.lt.s $f10,$f2 -/* f07d444: 00000000 */ nop -/* f07d448: 45020005 */ bc1fl .L0f07d460 -/* f07d44c: 8fa80278 */ lw $t0,0x278($sp) -/* f07d450: 44813000 */ mtc1 $at,$f6 -/* f07d454: e7a201c4 */ swc1 $f2,0x1c4($sp) -/* f07d458: e606006c */ swc1 $f6,0x6c($s0) -/* f07d45c: 8fa80278 */ lw $t0,0x278($sp) -.L0f07d460: -/* f07d460: 27a601c0 */ addiu $a2,$sp,0x1c0 -/* f07d464: 27a701b0 */ addiu $a3,$sp,0x1b0 -/* f07d468: 25050028 */ addiu $a1,$t0,0x28 -/* f07d46c: afa50054 */ sw $a1,0x54($sp) -/* f07d470: 0fc1979d */ jal func0f065e74 -/* f07d474: 25040008 */ addiu $a0,$t0,0x8 -/* f07d478: 8fa40278 */ lw $a0,0x278($sp) -/* f07d47c: c7a801c0 */ lwc1 $f8,0x1c0($sp) -/* f07d480: e4880008 */ swc1 $f8,0x8($a0) -/* f07d484: c7a401c4 */ lwc1 $f4,0x1c4($sp) -/* f07d488: e484000c */ swc1 $f4,0xc($a0) -/* f07d48c: c7aa01c8 */ lwc1 $f10,0x1c8($sp) -/* f07d490: 0fc19711 */ jal propDeregisterRooms -/* f07d494: e48a0010 */ swc1 $f10,0x10($a0) -/* f07d498: 27a401b0 */ addiu $a0,$sp,0x1b0 -/* f07d49c: 0fc195e9 */ jal roomsCopy -/* f07d4a0: 8fa50054 */ lw $a1,0x54($sp) -/* f07d4a4: 02002025 */ or $a0,$s0,$zero -/* f07d4a8: 00002825 */ or $a1,$zero,$zero -/* f07d4ac: 0fc1a71c */ jal func0f069c70 -/* f07d4b0: 24060001 */ addiu $a2,$zero,0x1 -/* f07d4b4: 100002ab */ b .L0f07df64 -/* f07d4b8: 8fbf004c */ lw $ra,0x4c($sp) -.L0f07d4bc: -/* f07d4bc: 0fc135ad */ jal chraiExecute -/* f07d4c0: afa201f8 */ sw $v0,0x1f8($sp) -/* f07d4c4: afa00274 */ sw $zero,0x274($sp) -/* f07d4c8: 8e020088 */ lw $v0,0x88($s0) -/* f07d4cc: 24050042 */ addiu $a1,$zero,0x42 -/* f07d4d0: 5040009f */ beqzl $v0,.L0f07d750 -/* f07d4d4: 8e090008 */ lw $t1,0x8($s0) -/* f07d4d8: 8e0a008c */ lw $t2,0x8c($s0) -/* f07d4dc: 8c490000 */ lw $t1,0x0($v0) -/* f07d4e0: 27a60220 */ addiu $a2,$sp,0x220 -/* f07d4e4: 000a5880 */ sll $t3,$t2,0x2 -/* f07d4e8: 012b1821 */ addu $v1,$t1,$t3 -/* f07d4ec: 0fc456ac */ jal padUnpack -/* f07d4f0: 8c640000 */ lw $a0,0x0($v1) -/* f07d4f4: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07d4f8: c7a60220 */ lwc1 $f6,0x220($sp) -/* f07d4fc: c7aa0224 */ lwc1 $f10,0x224($sp) -/* f07d500: 11800011 */ beqz $t4,.L0f07d548 -/* f07d504: e7a60214 */ swc1 $f6,0x214($sp) -/* f07d508: 8fad0268 */ lw $t5,0x268($sp) -/* f07d50c: 240effff */ addiu $t6,$zero,-1 -/* f07d510: a7ae0212 */ sh $t6,0x212($sp) -/* f07d514: 27a40220 */ addiu $a0,$sp,0x220 -/* f07d518: 3c0540a0 */ lui $a1,0x40a0 -/* f07d51c: 27a60210 */ addiu $a2,$sp,0x210 -/* f07d520: 00003825 */ or $a3,$zero,$zero -/* f07d524: afa00010 */ sw $zero,0x10($sp) -/* f07d528: 0c00a8cc */ jal cdFindGroundYSimple -/* f07d52c: a7ad0210 */ sh $t5,0x210($sp) -/* f07d530: 3c01420c */ lui $at,0x420c -/* f07d534: 44814000 */ mtc1 $at,$f8 -/* f07d538: 00000000 */ nop -/* f07d53c: 46080100 */ add.s $f4,$f0,$f8 -/* f07d540: 10000002 */ b .L0f07d54c -/* f07d544: e7a40218 */ swc1 $f4,0x218($sp) -.L0f07d548: -/* f07d548: e7aa0218 */ swc1 $f10,0x218($sp) -.L0f07d54c: -/* f07d54c: c7a60228 */ lwc1 $f6,0x228($sp) -/* f07d550: 8fa40278 */ lw $a0,0x278($sp) -/* f07d554: 27a60214 */ addiu $a2,$sp,0x214 -/* f07d558: e7a6021c */ swc1 $f6,0x21c($sp) -/* f07d55c: 8e0f0008 */ lw $t7,0x8($s0) -/* f07d560: 24840008 */ addiu $a0,$a0,0x8 -/* f07d564: 00802825 */ or $a1,$a0,$zero -/* f07d568: 000fc080 */ sll $t8,$t7,0x2 -/* f07d56c: 07030011 */ bgezl $t8,.L0f07d5b4 -/* f07d570: 8fa20278 */ lw $v0,0x278($sp) -/* f07d574: 0fc111b8 */ jal posIsArrivingLaterallyAtPos -/* f07d578: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07d57c: 5040000d */ beqzl $v0,.L0f07d5b4 -/* f07d580: 8fa20278 */ lw $v0,0x278($sp) -/* f07d584: 0fc1c9dd */ jal hovercarIncrementStep -/* f07d588: 02002025 */ or $a0,$s0,$zero -/* f07d58c: 8e190088 */ lw $t9,0x88($s0) -/* f07d590: 8e0a008c */ lw $t2,0x8c($s0) -/* f07d594: 24050002 */ addiu $a1,$zero,0x2 -/* f07d598: 8f280000 */ lw $t0,0x0($t9) -/* f07d59c: 000a4880 */ sll $t1,$t2,0x2 -/* f07d5a0: 27a60220 */ addiu $a2,$sp,0x220 -/* f07d5a4: 01091821 */ addu $v1,$t0,$t1 -/* f07d5a8: 0fc456ac */ jal padUnpack -/* f07d5ac: 8c640000 */ lw $a0,0x0($v1) -/* f07d5b0: 8fa20278 */ lw $v0,0x278($sp) -.L0f07d5b4: -/* f07d5b4: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07d5b8: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07d5bc: c4440008 */ lwc1 $f4,0x8($v0) -/* f07d5c0: c4460010 */ lwc1 $f6,0x10($v0) -/* f07d5c4: 46044301 */ sub.s $f12,$f8,$f4 -/* f07d5c8: 0fc259d4 */ jal atan2f -/* f07d5cc: 46065381 */ sub.s $f14,$f10,$f6 -/* f07d5d0: 8fa20278 */ lw $v0,0x278($sp) -/* f07d5d4: e7a00200 */ swc1 $f0,0x200($sp) -/* f07d5d8: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07d5dc: c4440008 */ lwc1 $f4,0x8($v0) -/* f07d5e0: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07d5e4: c4460010 */ lwc1 $f6,0x10($v0) -/* f07d5e8: 46044081 */ sub.s $f2,$f8,$f4 -/* f07d5ec: 46065381 */ sub.s $f14,$f10,$f6 -/* f07d5f0: 46021202 */ mul.s $f8,$f2,$f2 -/* f07d5f4: 00000000 */ nop -/* f07d5f8: 460e7102 */ mul.s $f4,$f14,$f14 -/* f07d5fc: 0c012974 */ jal sqrtf -/* f07d600: 46044300 */ add.s $f12,$f8,$f4 -/* f07d604: 8fab0278 */ lw $t3,0x278($sp) -/* f07d608: c7aa0218 */ lwc1 $f10,0x218($sp) -/* f07d60c: 46000386 */ mov.s $f14,$f0 -/* f07d610: c566000c */ lwc1 $f6,0xc($t3) -/* f07d614: 0fc259d4 */ jal atan2f -/* f07d618: 46065301 */ sub.s $f12,$f10,$f6 -/* f07d61c: e7a001fc */ swc1 $f0,0x1fc($sp) -/* f07d620: 8e0c0008 */ lw $t4,0x8($s0) -/* f07d624: 3c01dfff */ lui $at,0xdfff -/* f07d628: c7a80200 */ lwc1 $f8,0x200($sp) -/* f07d62c: 000c6880 */ sll $t5,$t4,0x2 -/* f07d630: 05a1000c */ bgez $t5,.L0f07d664 -/* f07d634: 3421ffff */ ori $at,$at,0xffff -/* f07d638: 8e0e0008 */ lw $t6,0x8($s0) -/* f07d63c: e608007c */ swc1 $f8,0x7c($s0) -/* f07d640: e6000080 */ swc1 $f0,0x80($s0) -/* f07d644: 01c17824 */ and $t7,$t6,$at -/* f07d648: ae0f0008 */ sw $t7,0x8($s0) -/* f07d64c: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07d650: 8fa30278 */ lw $v1,0x278($sp) -/* f07d654: c7a40218 */ lwc1 $f4,0x218($sp) -/* f07d658: 53000003 */ beqzl $t8,.L0f07d668 -/* f07d65c: 8fb901f8 */ lw $t9,0x1f8($sp) -/* f07d660: e464000c */ swc1 $f4,0xc($v1) -.L0f07d664: -/* f07d664: 8fb901f8 */ lw $t9,0x1f8($sp) -.L0f07d668: -/* f07d668: 8fa30278 */ lw $v1,0x278($sp) -/* f07d66c: 27a60214 */ addiu $a2,$sp,0x214 -/* f07d670: 13200034 */ beqz $t9,.L0f07d744 -/* f07d674: 24640008 */ addiu $a0,$v1,0x8 -/* f07d678: 44800000 */ mtc1 $zero,$f0 -/* f07d67c: 24650028 */ addiu $a1,$v1,0x28 -/* f07d680: 24075000 */ addiu $a3,$zero,0x5000 -/* f07d684: afa00010 */ sw $zero,0x10($sp) -/* f07d688: e7a00014 */ swc1 $f0,0x14($sp) -/* f07d68c: 0c00b5f0 */ jal cd0002d7c0 -/* f07d690: e7a00018 */ swc1 $f0,0x18($sp) -/* f07d694: 54400005 */ bnezl $v0,.L0f07d6ac -/* f07d698: 8fa301f0 */ lw $v1,0x1f0($sp) -/* f07d69c: 0c0093ac */ jal cdGetObstacle -/* f07d6a0: 00000000 */ nop -/* f07d6a4: afa201f0 */ sw $v0,0x1f0($sp) -/* f07d6a8: 8fa301f0 */ lw $v1,0x1f0($sp) -.L0f07d6ac: -/* f07d6ac: 10600025 */ beqz $v1,.L0f07d744 -/* f07d6b0: 00000000 */ nop -/* f07d6b4: 8c6a0004 */ lw $t2,0x4($v1) -/* f07d6b8: 8fa60278 */ lw $a2,0x278($sp) -/* f07d6bc: 3c017f1b */ lui $at,%hi(var7f1aa6ac) -/* f07d6c0: afaa01a0 */ sw $t2,0x1a0($sp) -/* f07d6c4: c46a0008 */ lwc1 $f10,0x8($v1) -/* f07d6c8: c4c60008 */ lwc1 $f6,0x8($a2) -/* f07d6cc: c4680010 */ lwc1 $f8,0x10($v1) -/* f07d6d0: c4c40010 */ lwc1 $f4,0x10($a2) -/* f07d6d4: 46065001 */ sub.s $f0,$f10,$f6 -/* f07d6d8: 01402825 */ or $a1,$t2,$zero -/* f07d6dc: 00c02025 */ or $a0,$a2,$zero -/* f07d6e0: 46044081 */ sub.s $f2,$f8,$f4 -/* f07d6e4: 46000282 */ mul.s $f10,$f0,$f0 -/* f07d6e8: c428a6ac */ lwc1 $f8,%lo(var7f1aa6ac)($at) -/* f07d6ec: 46021182 */ mul.s $f6,$f2,$f2 -/* f07d6f0: 46065300 */ add.s $f12,$f10,$f6 -/* f07d6f4: 4608603c */ c.lt.s $f12,$f8 -/* f07d6f8: 00000000 */ nop -/* f07d6fc: 45000007 */ bc1f .L0f07d71c -/* f07d700: 00000000 */ nop -/* f07d704: 0fc24030 */ jal doorsChooseSwingDirection -/* f07d708: e7ac0058 */ swc1 $f12,0x58($sp) -/* f07d70c: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07d710: 0fc23922 */ jal doorsRequestMode -/* f07d714: 24050001 */ addiu $a1,$zero,0x1 -/* f07d718: c7ac0058 */ lwc1 $f12,0x58($sp) -.L0f07d71c: -/* f07d71c: 3c017f1b */ lui $at,%hi(var7f1aa6b0) -/* f07d720: c424a6b0 */ lwc1 $f4,%lo(var7f1aa6b0)($at) -/* f07d724: 4604603c */ c.lt.s $f12,$f4 -/* f07d728: 00000000 */ nop -/* f07d72c: 45000005 */ bc1f .L0f07d744 -/* f07d730: 00000000 */ nop -/* f07d734: 0fc23959 */ jal doorIsOpen -/* f07d738: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07d73c: 2c480001 */ sltiu $t0,$v0,0x1 -/* f07d740: afa80274 */ sw $t0,0x274($sp) -.L0f07d744: -/* f07d744: 1000001a */ b .L0f07d7b0 -/* f07d748: 44807000 */ mtc1 $zero,$f14 -/* f07d74c: 8e090008 */ lw $t1,0x8($s0) -.L0f07d750: -/* f07d750: 00095880 */ sll $t3,$t1,0x2 -/* f07d754: 05630016 */ bgezl $t3,.L0f07d7b0 -/* f07d758: 44807000 */ mtc1 $zero,$f14 -/* f07d75c: c60c0034 */ lwc1 $f12,0x34($s0) -/* f07d760: 0fc259d4 */ jal atan2f -/* f07d764: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07d768: c6020034 */ lwc1 $f2,0x34($s0) -/* f07d76c: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07d770: e600007c */ swc1 $f0,0x7c($s0) -/* f07d774: 46021282 */ mul.s $f10,$f2,$f2 -/* f07d778: 00000000 */ nop -/* f07d77c: 460e7182 */ mul.s $f6,$f14,$f14 -/* f07d780: 0c012974 */ jal sqrtf -/* f07d784: 46065300 */ add.s $f12,$f10,$f6 -/* f07d788: c60c0038 */ lwc1 $f12,0x38($s0) -/* f07d78c: 0fc259d4 */ jal atan2f -/* f07d790: 46000386 */ mov.s $f14,$f0 -/* f07d794: 8e0c0008 */ lw $t4,0x8($s0) -/* f07d798: 3c01dfff */ lui $at,0xdfff -/* f07d79c: 3421ffff */ ori $at,$at,0xffff -/* f07d7a0: 01816824 */ and $t5,$t4,$at -/* f07d7a4: e6000080 */ swc1 $f0,0x80($s0) -/* f07d7a8: ae0d0008 */ sw $t5,0x8($s0) -/* f07d7ac: 44807000 */ mtc1 $zero,$f14 -.L0f07d7b0: -/* f07d7b0: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07d7b4: 3c02800a */ lui $v0,%hi(g_Vars) -/* f07d7b8: 8fa30278 */ lw $v1,0x278($sp) -/* f07d7bc: 460c703e */ c.le.s $f14,$f12 -/* f07d7c0: 24429fc0 */ addiu $v0,$v0,%lo(g_Vars) -/* f07d7c4: 45020015 */ bc1fl .L0f07d81c -/* f07d7c8: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07d7cc: c442004c */ lwc1 $f2,0x4c($v0) -/* f07d7d0: 4602603e */ c.le.s $f12,$f2 -/* f07d7d4: 00000000 */ nop -/* f07d7d8: 45020006 */ bc1fl .L0f07d7f4 -/* f07d7dc: c6000064 */ lwc1 $f0,0x64($s0) -/* f07d7e0: c6080068 */ lwc1 $f8,0x68($s0) -/* f07d7e4: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07d7e8: 10000008 */ b .L0f07d80c -/* f07d7ec: e6080064 */ swc1 $f8,0x64($s0) -/* f07d7f0: c6000064 */ lwc1 $f0,0x64($s0) -.L0f07d7f4: -/* f07d7f4: c6040068 */ lwc1 $f4,0x68($s0) -/* f07d7f8: 46002281 */ sub.s $f10,$f4,$f0 -/* f07d7fc: 46025182 */ mul.s $f6,$f10,$f2 -/* f07d800: 460c3203 */ div.s $f8,$f6,$f12 -/* f07d804: 46080100 */ add.s $f4,$f0,$f8 -/* f07d808: e6040064 */ swc1 $f4,0x64($s0) -.L0f07d80c: -/* f07d80c: c44a004c */ lwc1 $f10,0x4c($v0) -/* f07d810: 460a6181 */ sub.s $f6,$f12,$f10 -/* f07d814: e606006c */ swc1 $f6,0x6c($s0) -/* f07d818: 8fae01f8 */ lw $t6,0x1f8($sp) -.L0f07d81c: -/* f07d81c: 3c02800a */ lui $v0,%hi(g_Vars) -/* f07d820: 24429fc0 */ addiu $v0,$v0,%lo(g_Vars) -/* f07d824: 51c00037 */ beqzl $t6,.L0f07d904 -/* f07d828: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d82c: c6080070 */ lwc1 $f8,0x70($s0) -/* f07d830: 3c017f1b */ lui $at,%hi(var7f1aa6b4) -/* f07d834: 4608703c */ c.lt.s $f14,$f8 -/* f07d838: 00000000 */ nop -/* f07d83c: 45020013 */ bc1fl .L0f07d88c -/* f07d840: c6000064 */ lwc1 $f0,0x64($s0) -/* f07d844: c6040068 */ lwc1 $f4,0x68($s0) -/* f07d848: c42aa6b4 */ lwc1 $f10,%lo(var7f1aa6b4)($at) -/* f07d84c: c4480044 */ lwc1 $f8,0x44($v0) -/* f07d850: 3c017f1b */ lui $at,%hi(var7f1aa6b8) -/* f07d854: 460a2182 */ mul.s $f6,$f4,$f10 -/* f07d858: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07d85c: 46083102 */ mul.s $f4,$f6,$f8 -/* f07d860: 46045181 */ sub.s $f6,$f10,$f4 -/* f07d864: e6060064 */ swc1 $f6,0x64($s0) -/* f07d868: c6080064 */ lwc1 $f8,0x64($s0) -/* f07d86c: 460e403c */ c.lt.s $f8,$f14 -/* f07d870: 00000000 */ nop -/* f07d874: 45020013 */ bc1fl .L0f07d8c4 -/* f07d878: 8faf0274 */ lw $t7,0x274($sp) -/* f07d87c: c42aa6b8 */ lwc1 $f10,%lo(var7f1aa6b8)($at) -/* f07d880: 1000000f */ b .L0f07d8c0 -/* f07d884: e60a0064 */ swc1 $f10,0x64($s0) -/* f07d888: c6000064 */ lwc1 $f0,0x64($s0) -.L0f07d88c: -/* f07d88c: c6020068 */ lwc1 $f2,0x68($s0) -/* f07d890: 3c017f1b */ lui $at,%hi(var7f1aa6bc) -/* f07d894: 4602003c */ c.lt.s $f0,$f2 -/* f07d898: 00000000 */ nop -/* f07d89c: 45020009 */ bc1fl .L0f07d8c4 -/* f07d8a0: 8faf0274 */ lw $t7,0x274($sp) -/* f07d8a4: c424a6bc */ lwc1 $f4,%lo(var7f1aa6bc)($at) -/* f07d8a8: c4480044 */ lwc1 $f8,0x44($v0) -/* f07d8ac: 46041182 */ mul.s $f6,$f2,$f4 -/* f07d8b0: 00000000 */ nop -/* f07d8b4: 46083282 */ mul.s $f10,$f6,$f8 -/* f07d8b8: 460a0100 */ add.s $f4,$f0,$f10 -/* f07d8bc: e6040064 */ swc1 $f4,0x64($s0) -.L0f07d8c0: -/* f07d8c0: 8faf0274 */ lw $t7,0x274($sp) -.L0f07d8c4: -/* f07d8c4: 3c017f1b */ lui $at,%hi(var7f1aa6c0) -/* f07d8c8: 51e0000e */ beqzl $t7,.L0f07d904 -/* f07d8cc: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d8d0: c426a6c0 */ lwc1 $f6,%lo(var7f1aa6c0)($at) -/* f07d8d4: c4480044 */ lwc1 $f8,0x44($v0) -/* f07d8d8: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d8dc: 46083282 */ mul.s $f10,$f6,$f8 -/* f07d8e0: 460a2181 */ sub.s $f6,$f4,$f10 -/* f07d8e4: e6060064 */ swc1 $f6,0x64($s0) -/* f07d8e8: c6080064 */ lwc1 $f8,0x64($s0) -/* f07d8ec: 460e403c */ c.lt.s $f8,$f14 -/* f07d8f0: 00000000 */ nop -/* f07d8f4: 45020003 */ bc1fl .L0f07d904 -/* f07d8f8: c6040064 */ lwc1 $f4,0x64($s0) -/* f07d8fc: e60e0064 */ swc1 $f14,0x64($s0) -/* f07d900: c6040064 */ lwc1 $f4,0x64($s0) -.L0f07d904: -/* f07d904: 4604703c */ c.lt.s $f14,$f4 -/* f07d908: 00000000 */ nop -/* f07d90c: 45020195 */ bc1fl .L0f07df64 -/* f07d910: 8fbf004c */ lw $ra,0x4c($sp) -/* f07d914: c60a007c */ lwc1 $f10,0x7c($s0) -/* f07d918: 24780008 */ addiu $t8,$v1,0x8 -/* f07d91c: 24790028 */ addiu $t9,$v1,0x28 -/* f07d920: e7aa0190 */ swc1 $f10,0x190($sp) -/* f07d924: c6060080 */ lwc1 $f6,0x80($s0) -/* f07d928: e7a6018c */ swc1 $f6,0x18c($sp) -/* f07d92c: c6080084 */ lwc1 $f8,0x84($s0) -/* f07d930: e7a80188 */ swc1 $f8,0x188($sp) -/* f07d934: c6040070 */ lwc1 $f4,0x70($s0) -/* f07d938: e7a40184 */ swc1 $f4,0x184($sp) -/* f07d93c: c60a0074 */ lwc1 $f10,0x74($s0) -/* f07d940: e7aa0180 */ swc1 $f10,0x180($sp) -/* f07d944: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07d948: afb90054 */ sw $t9,0x54($sp) -/* f07d94c: 0c0068f7 */ jal sinf -/* f07d950: afb80058 */ sw $t8,0x58($sp) -/* f07d954: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07d958: 0c0068f4 */ jal cosf -/* f07d95c: e7a00068 */ swc1 $f0,0x68($sp) -/* f07d960: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07d964: 46020182 */ mul.s $f6,$f0,$f2 -/* f07d968: e7a60194 */ swc1 $f6,0x194($sp) -/* f07d96c: 0c0068f7 */ jal sinf -/* f07d970: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07d974: e7a00198 */ swc1 $f0,0x198($sp) -/* f07d978: 0c0068f4 */ jal cosf -/* f07d97c: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07d980: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07d984: 0c0068f4 */ jal cosf -/* f07d988: e7a00068 */ swc1 $f0,0x68($sp) -/* f07d98c: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07d990: 8fa40058 */ lw $a0,0x58($sp) -/* f07d994: 27a50194 */ addiu $a1,$sp,0x194 -/* f07d998: 46020202 */ mul.s $f8,$f0,$f2 -/* f07d99c: 27a60214 */ addiu $a2,$sp,0x214 -/* f07d9a0: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07d9a4: 0fc11171 */ jal posIsMovingTowardsPosOrStoppedInRange -/* f07d9a8: e7a8019c */ swc1 $f8,0x19c($sp) -/* f07d9ac: 50400006 */ beqzl $v0,.L0f07d9c8 -/* f07d9b0: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07d9b4: c604007c */ lwc1 $f4,0x7c($s0) -/* f07d9b8: e7a40200 */ swc1 $f4,0x200($sp) -/* f07d9bc: c60a0080 */ lwc1 $f10,0x80($s0) -/* f07d9c0: e7aa01fc */ swc1 $f10,0x1fc($sp) -/* f07d9c4: 8fa201f8 */ lw $v0,0x1f8($sp) -.L0f07d9c8: -/* f07d9c8: 10400004 */ beqz $v0,.L0f07d9dc -/* f07d9cc: 3c014170 */ lui $at,0x4170 -/* f07d9d0: 44818000 */ mtc1 $at,$f16 -/* f07d9d4: 10000006 */ b .L0f07d9f0 -/* f07d9d8: 46008386 */ mov.s $f14,$f16 -.L0f07d9dc: -/* f07d9dc: 3c0140a0 */ lui $at,0x40a0 -/* f07d9e0: 44817000 */ mtc1 $at,$f14 -/* f07d9e4: 3c014170 */ lui $at,0x4170 -/* f07d9e8: 44818000 */ mtc1 $at,$f16 -/* f07d9ec: 00000000 */ nop -.L0f07d9f0: -/* f07d9f0: 50400004 */ beqzl $v0,.L0f07da04 -/* f07d9f4: 3c0140a0 */ lui $at,0x40a0 -/* f07d9f8: 10000004 */ b .L0f07da0c -/* f07d9fc: 46008306 */ mov.s $f12,$f16 -/* f07da00: 3c0140a0 */ lui $at,0x40a0 -.L0f07da04: -/* f07da04: 44816000 */ mtc1 $at,$f12 -/* f07da08: 00000000 */ nop -.L0f07da0c: -/* f07da0c: 50400004 */ beqzl $v0,.L0f07da20 -/* f07da10: 3c0140a0 */ lui $at,0x40a0 -/* f07da14: 10000004 */ b .L0f07da28 -/* f07da18: 46008086 */ mov.s $f2,$f16 -/* f07da1c: 3c0140a0 */ lui $at,0x40a0 -.L0f07da20: -/* f07da20: 44811000 */ mtc1 $at,$f2 -/* f07da24: 00000000 */ nop -.L0f07da28: -/* f07da28: 3c017f1b */ lui $at,%hi(var7f1aa6c4) -/* f07da2c: c432a6c4 */ lwc1 $f18,%lo(var7f1aa6c4)($at) -/* f07da30: 3c017f1b */ lui $at,%hi(var7f1aa6c8) -/* f07da34: c424a6c8 */ lwc1 $f4,%lo(var7f1aa6c8)($at) -/* f07da38: 46127182 */ mul.s $f6,$f14,$f18 -/* f07da3c: 27a40190 */ addiu $a0,$sp,0x190 -/* f07da40: 8fa50200 */ lw $a1,0x200($sp) -/* f07da44: 46126002 */ mul.s $f0,$f12,$f18 -/* f07da48: 27a60184 */ addiu $a2,$sp,0x184 -/* f07da4c: 46041282 */ mul.s $f10,$f2,$f4 -/* f07da50: 44073000 */ mfc1 $a3,$f6 -/* f07da54: 46000200 */ add.s $f8,$f0,$f0 -/* f07da58: e7aa0014 */ swc1 $f10,0x14($sp) -/* f07da5c: 0fc1b6c0 */ jal applyRotation -/* f07da60: e7a80010 */ swc1 $f8,0x10($sp) -/* f07da64: c7a60190 */ lwc1 $f6,0x190($sp) -/* f07da68: c7a80200 */ lwc1 $f8,0x200($sp) -/* f07da6c: 3c014170 */ lui $at,0x4170 -/* f07da70: 44818000 */ mtc1 $at,$f16 -/* f07da74: 46083032 */ c.eq.s $f6,$f8 -/* f07da78: 3c017f1b */ lui $at,%hi(var7f1aa6cc) -/* f07da7c: c432a6cc */ lwc1 $f18,%lo(var7f1aa6cc)($at) -/* f07da80: 45020021 */ bc1fl .L0f07db08 -/* f07da84: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07da88: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07da8c: 3c0140a0 */ lui $at,0x40a0 -/* f07da90: 50400004 */ beqzl $v0,.L0f07daa4 -/* f07da94: 44811000 */ mtc1 $at,$f2 -/* f07da98: 10000003 */ b .L0f07daa8 -/* f07da9c: 46008086 */ mov.s $f2,$f16 -/* f07daa0: 44811000 */ mtc1 $at,$f2 -.L0f07daa4: -/* f07daa4: 00000000 */ nop -.L0f07daa8: -/* f07daa8: 46121002 */ mul.s $f0,$f2,$f18 -/* f07daac: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07dab0: 46000100 */ add.s $f4,$f0,$f0 -/* f07dab4: 4604703e */ c.le.s $f14,$f4 -/* f07dab8: 00000000 */ nop -/* f07dabc: 45020012 */ bc1fl .L0f07db08 -/* f07dac0: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07dac4: 10400003 */ beqz $v0,.L0f07dad4 -/* f07dac8: 3c0140a0 */ lui $at,0x40a0 -/* f07dacc: 10000003 */ b .L0f07dadc -/* f07dad0: 46008306 */ mov.s $f12,$f16 -.L0f07dad4: -/* f07dad4: 44816000 */ mtc1 $at,$f12 -/* f07dad8: 00000000 */ nop -.L0f07dadc: -/* f07dadc: 46126002 */ mul.s $f0,$f12,$f18 -/* f07dae0: 46000007 */ neg.s $f0,$f0 -/* f07dae4: 46000280 */ add.s $f10,$f0,$f0 -/* f07dae8: 460e503e */ c.le.s $f10,$f14 -/* f07daec: 00000000 */ nop -/* f07daf0: 45020005 */ bc1fl .L0f07db08 -/* f07daf4: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07daf8: 44807000 */ mtc1 $zero,$f14 -/* f07dafc: 00000000 */ nop -/* f07db00: e7ae0184 */ swc1 $f14,0x184($sp) -/* f07db04: 8fa201f8 */ lw $v0,0x1f8($sp) -.L0f07db08: -/* f07db08: 50400004 */ beqzl $v0,.L0f07db1c -/* f07db0c: 3c0140a0 */ lui $at,0x40a0 -/* f07db10: 10000004 */ b .L0f07db24 -/* f07db14: 46008386 */ mov.s $f14,$f16 -/* f07db18: 3c0140a0 */ lui $at,0x40a0 -.L0f07db1c: -/* f07db1c: 44817000 */ mtc1 $at,$f14 -/* f07db20: 00000000 */ nop -.L0f07db24: -/* f07db24: 46127182 */ mul.s $f6,$f14,$f18 -/* f07db28: 50400004 */ beqzl $v0,.L0f07db3c -/* f07db2c: 3c0140a0 */ lui $at,0x40a0 -/* f07db30: 10000004 */ b .L0f07db44 -/* f07db34: 46008306 */ mov.s $f12,$f16 -/* f07db38: 3c0140a0 */ lui $at,0x40a0 -.L0f07db3c: -/* f07db3c: 44816000 */ mtc1 $at,$f12 -/* f07db40: 00000000 */ nop -.L0f07db44: -/* f07db44: 46126002 */ mul.s $f0,$f12,$f18 -/* f07db48: 50400004 */ beqzl $v0,.L0f07db5c -/* f07db4c: 3c0140a0 */ lui $at,0x40a0 -/* f07db50: 10000004 */ b .L0f07db64 -/* f07db54: 46008086 */ mov.s $f2,$f16 -/* f07db58: 3c0140a0 */ lui $at,0x40a0 -.L0f07db5c: -/* f07db5c: 44811000 */ mtc1 $at,$f2 -/* f07db60: 00000000 */ nop -.L0f07db64: -/* f07db64: 3c017f1b */ lui $at,%hi(var7f1aa6d0) -/* f07db68: c424a6d0 */ lwc1 $f4,%lo(var7f1aa6d0)($at) -/* f07db6c: 46000200 */ add.s $f8,$f0,$f0 -/* f07db70: 44073000 */ mfc1 $a3,$f6 -/* f07db74: 46041282 */ mul.s $f10,$f2,$f4 -/* f07db78: 27a4018c */ addiu $a0,$sp,0x18c -/* f07db7c: e7a80010 */ swc1 $f8,0x10($sp) -/* f07db80: 8fa501fc */ lw $a1,0x1fc($sp) -/* f07db84: 27a60180 */ addiu $a2,$sp,0x180 -/* f07db88: 0fc1b6c0 */ jal applyRotation -/* f07db8c: e7aa0014 */ swc1 $f10,0x14($sp) -/* f07db90: c7a6018c */ lwc1 $f6,0x18c($sp) -/* f07db94: c7a801fc */ lwc1 $f8,0x1fc($sp) -/* f07db98: 3c014170 */ lui $at,0x4170 -/* f07db9c: 44818000 */ mtc1 $at,$f16 -/* f07dba0: 46083032 */ c.eq.s $f6,$f8 -/* f07dba4: 3c017f1b */ lui $at,%hi(var7f1aa6d4) -/* f07dba8: c432a6d4 */ lwc1 $f18,%lo(var7f1aa6d4)($at) -/* f07dbac: 45020022 */ bc1fl .L0f07dc38 -/* f07dbb0: 8e090008 */ lw $t1,0x8($s0) -/* f07dbb4: 8faa01f8 */ lw $t2,0x1f8($sp) -/* f07dbb8: 3c0140a0 */ lui $at,0x40a0 -/* f07dbbc: 8fa801f8 */ lw $t0,0x1f8($sp) -/* f07dbc0: 51400004 */ beqzl $t2,.L0f07dbd4 -/* f07dbc4: 44811000 */ mtc1 $at,$f2 -/* f07dbc8: 10000003 */ b .L0f07dbd8 -/* f07dbcc: 46008086 */ mov.s $f2,$f16 -/* f07dbd0: 44811000 */ mtc1 $at,$f2 -.L0f07dbd4: -/* f07dbd4: 00000000 */ nop -.L0f07dbd8: -/* f07dbd8: 46121002 */ mul.s $f0,$f2,$f18 -/* f07dbdc: c7ae0180 */ lwc1 $f14,0x180($sp) -/* f07dbe0: 46000100 */ add.s $f4,$f0,$f0 -/* f07dbe4: 4604703e */ c.le.s $f14,$f4 -/* f07dbe8: 00000000 */ nop -/* f07dbec: 45020012 */ bc1fl .L0f07dc38 -/* f07dbf0: 8e090008 */ lw $t1,0x8($s0) -/* f07dbf4: 11000003 */ beqz $t0,.L0f07dc04 -/* f07dbf8: 3c0140a0 */ lui $at,0x40a0 -/* f07dbfc: 10000003 */ b .L0f07dc0c -/* f07dc00: 46008306 */ mov.s $f12,$f16 -.L0f07dc04: -/* f07dc04: 44816000 */ mtc1 $at,$f12 -/* f07dc08: 00000000 */ nop -.L0f07dc0c: -/* f07dc0c: 46126002 */ mul.s $f0,$f12,$f18 -/* f07dc10: 46000007 */ neg.s $f0,$f0 -/* f07dc14: 46000280 */ add.s $f10,$f0,$f0 -/* f07dc18: 460e503e */ c.le.s $f10,$f14 -/* f07dc1c: 00000000 */ nop -/* f07dc20: 45020005 */ bc1fl .L0f07dc38 -/* f07dc24: 8e090008 */ lw $t1,0x8($s0) -/* f07dc28: 44807000 */ mtc1 $zero,$f14 -/* f07dc2c: 00000000 */ nop -/* f07dc30: e7ae0180 */ swc1 $f14,0x180($sp) -/* f07dc34: 8e090008 */ lw $t1,0x8($s0) -.L0f07dc38: -/* f07dc38: 44800000 */ mtc1 $zero,$f0 -/* f07dc3c: 00095800 */ sll $t3,$t1,0x0 -/* f07dc40: 05630004 */ bgezl $t3,.L0f07dc54 -/* f07dc44: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07dc48: 1000000d */ b .L0f07dc80 -/* f07dc4c: e7a00188 */ swc1 $f0,0x188($sp) -/* f07dc50: c7ae0184 */ lwc1 $f14,0x184($sp) -.L0f07dc54: -/* f07dc54: 3c0142f0 */ lui $at,0x42f0 -/* f07dc58: 44814000 */ mtc1 $at,$f8 -/* f07dc5c: 46007187 */ neg.s $f6,$f14 -/* f07dc60: c7aa0188 */ lwc1 $f10,0x188($sp) -/* f07dc64: 46083102 */ mul.s $f4,$f6,$f8 -/* f07dc68: 3c017f1b */ lui $at,%hi(var7f1aa6d8) -/* f07dc6c: c428a6d8 */ lwc1 $f8,%lo(var7f1aa6d8)($at) -/* f07dc70: 460a2181 */ sub.s $f6,$f4,$f10 -/* f07dc74: 46083102 */ mul.s $f4,$f6,$f8 -/* f07dc78: 46045180 */ add.s $f6,$f10,$f4 -/* f07dc7c: e7a60188 */ swc1 $f6,0x188($sp) -.L0f07dc80: -/* f07dc80: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07dc84: 11800006 */ beqz $t4,.L0f07dca0 -/* f07dc88: 3c017f1b */ lui $at,%hi(var7f1aa6dc) -/* f07dc8c: c428a6dc */ lwc1 $f8,%lo(var7f1aa6dc)($at) -/* f07dc90: c7aa018c */ lwc1 $f10,0x18c($sp) -/* f07dc94: 460a4101 */ sub.s $f4,$f8,$f10 -/* f07dc98: 10000002 */ b .L0f07dca4 -/* f07dc9c: e7a4012c */ swc1 $f4,0x12c($sp) -.L0f07dca0: -/* f07dca0: e7a0012c */ swc1 $f0,0x12c($sp) -.L0f07dca4: -/* f07dca4: c7a80188 */ lwc1 $f8,0x188($sp) -/* f07dca8: c7a60190 */ lwc1 $f6,0x190($sp) -/* f07dcac: e7a00134 */ swc1 $f0,0x134($sp) -/* f07dcb0: 4608003e */ c.le.s $f0,$f8 -/* f07dcb4: e7a60130 */ swc1 $f6,0x130($sp) -/* f07dcb8: 45000006 */ bc1f .L0f07dcd4 -/* f07dcbc: 00000000 */ nop -/* f07dcc0: 46004306 */ mov.s $f12,$f8 -/* f07dcc4: 0c005900 */ jal mtx4LoadZRotation -/* f07dcc8: 27a5006c */ addiu $a1,$sp,0x6c -/* f07dccc: 10000008 */ b .L0f07dcf0 -/* f07dcd0: 27a4012c */ addiu $a0,$sp,0x12c -.L0f07dcd4: -/* f07dcd4: 3c017f1b */ lui $at,%hi(var7f1aa6e0) -/* f07dcd8: c424a6e0 */ lwc1 $f4,%lo(var7f1aa6e0)($at) -/* f07dcdc: c7aa0188 */ lwc1 $f10,0x188($sp) -/* f07dce0: 27a5006c */ addiu $a1,$sp,0x6c -/* f07dce4: 0c005900 */ jal mtx4LoadZRotation -/* f07dce8: 46045300 */ add.s $f12,$f10,$f4 -/* f07dcec: 27a4012c */ addiu $a0,$sp,0x12c -.L0f07dcf0: -/* f07dcf0: 0c005923 */ jal mtx4LoadRotation -/* f07dcf4: 27a500ac */ addiu $a1,$sp,0xac -/* f07dcf8: 8e0d0018 */ lw $t5,0x18($s0) -/* f07dcfc: 27a500ac */ addiu $a1,$sp,0xac -/* f07dd00: 0c0057c1 */ jal mtx00015f04 -/* f07dd04: c5ac0014 */ lwc1 $f12,0x14($t5) -/* f07dd08: 27a400ac */ addiu $a0,$sp,0xac -/* f07dd0c: 27a5006c */ addiu $a1,$sp,0x6c -/* f07dd10: 0c005680 */ jal mtx4MultMtx4 -/* f07dd14: 27a600ec */ addiu $a2,$sp,0xec -/* f07dd18: 27a400ec */ addiu $a0,$sp,0xec -/* f07dd1c: 0c005768 */ jal mtx4ToMtx3 -/* f07dd20: 27a5015c */ addiu $a1,$sp,0x15c -/* f07dd24: 27a4015c */ addiu $a0,$sp,0x15c -/* f07dd28: 0c005736 */ jal mtx3Copy -/* f07dd2c: 2605001c */ addiu $a1,$s0,0x1c -/* f07dd30: 0c0068f4 */ jal cosf -/* f07dd34: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07dd38: e7a00138 */ swc1 $f0,0x138($sp) -/* f07dd3c: 0c0068f7 */ jal sinf -/* f07dd40: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07dd44: c7a60138 */ lwc1 $f6,0x138($sp) -/* f07dd48: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07dd4c: 46060202 */ mul.s $f8,$f0,$f6 -/* f07dd50: 11c00005 */ beqz $t6,.L0f07dd68 -/* f07dd54: e7a80194 */ swc1 $f8,0x194($sp) -/* f07dd58: 0c0068f7 */ jal sinf -/* f07dd5c: c7ac01fc */ lwc1 $f12,0x1fc($sp) -/* f07dd60: 10000004 */ b .L0f07dd74 -/* f07dd64: e7a00198 */ swc1 $f0,0x198($sp) -.L0f07dd68: -/* f07dd68: 0c0068f7 */ jal sinf -/* f07dd6c: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07dd70: e7a00198 */ swc1 $f0,0x198($sp) -.L0f07dd74: -/* f07dd74: 0c0068f4 */ jal cosf -/* f07dd78: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07dd7c: c7aa0138 */ lwc1 $f10,0x138($sp) -/* f07dd80: 3c01800a */ lui $at,%hi(g_Vars+0x4c) -/* f07dd84: c422a00c */ lwc1 $f2,%lo(g_Vars+0x4c)($at) -/* f07dd88: 460a0102 */ mul.s $f4,$f0,$f10 -/* f07dd8c: c7a60194 */ lwc1 $f6,0x194($sp) -/* f07dd90: 8faf0278 */ lw $t7,0x278($sp) -/* f07dd94: 8fa40058 */ lw $a0,0x58($sp) -/* f07dd98: 8fa50054 */ lw $a1,0x54($sp) -/* f07dd9c: 27a60150 */ addiu $a2,$sp,0x150 -/* f07dda0: 27a70140 */ addiu $a3,$sp,0x140 -/* f07dda4: e7a4019c */ swc1 $f4,0x19c($sp) -/* f07dda8: c6080064 */ lwc1 $f8,0x64($s0) -/* f07ddac: 46024282 */ mul.s $f10,$f8,$f2 -/* f07ddb0: c5e80008 */ lwc1 $f8,0x8($t7) -/* f07ddb4: 460a3102 */ mul.s $f4,$f6,$f10 -/* f07ddb8: c7aa0198 */ lwc1 $f10,0x198($sp) -/* f07ddbc: 46082180 */ add.s $f6,$f4,$f8 -/* f07ddc0: e7a60150 */ swc1 $f6,0x150($sp) -/* f07ddc4: c6040064 */ lwc1 $f4,0x64($s0) -/* f07ddc8: 46022202 */ mul.s $f8,$f4,$f2 -/* f07ddcc: c5e4000c */ lwc1 $f4,0xc($t7) -/* f07ddd0: 46085182 */ mul.s $f6,$f10,$f8 -/* f07ddd4: c7a8019c */ lwc1 $f8,0x19c($sp) -/* f07ddd8: 46043280 */ add.s $f10,$f6,$f4 -/* f07dddc: e7aa0154 */ swc1 $f10,0x154($sp) -/* f07dde0: c6060064 */ lwc1 $f6,0x64($s0) -/* f07dde4: 46023102 */ mul.s $f4,$f6,$f2 -/* f07dde8: c5e60010 */ lwc1 $f6,0x10($t7) -/* f07ddec: 46044282 */ mul.s $f10,$f8,$f4 -/* f07ddf0: 46065200 */ add.s $f8,$f10,$f6 -/* f07ddf4: 0fc1979d */ jal func0f065e74 -/* f07ddf8: e7a80158 */ swc1 $f8,0x158($sp) -/* f07ddfc: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07de00: 27a40150 */ addiu $a0,$sp,0x150 -/* f07de04: 3c0540a0 */ lui $a1,0x40a0 -/* f07de08: 13000017 */ beqz $t8,.L0f07de68 -/* f07de0c: 27a60140 */ addiu $a2,$sp,0x140 -/* f07de10: 00003825 */ or $a3,$zero,$zero -/* f07de14: 0c00a8cc */ jal cdFindGroundYSimple -/* f07de18: afa00010 */ sw $zero,0x10($sp) -/* f07de1c: 3c01420c */ lui $at,0x420c -/* f07de20: 44812000 */ mtc1 $at,$f4 -/* f07de24: 3c017f1b */ lui $at,%hi(var7f1aa6e4) -/* f07de28: c42aa6e4 */ lwc1 $f10,%lo(var7f1aa6e4)($at) -/* f07de2c: 46040080 */ add.s $f2,$f0,$f4 -/* f07de30: 3c01800a */ lui $at,%hi(g_Vars+0x4c) -/* f07de34: 460a103c */ c.lt.s $f2,$f10 -/* f07de38: e7a20154 */ swc1 $f2,0x154($sp) -/* f07de3c: 4502000b */ bc1fl .L0f07de6c -/* f07de40: c7a40150 */ lwc1 $f4,0x150($sp) -/* f07de44: c6060064 */ lwc1 $f6,0x64($s0) -/* f07de48: c428a00c */ lwc1 $f8,%lo(g_Vars+0x4c)($at) -/* f07de4c: c7aa0198 */ lwc1 $f10,0x198($sp) -/* f07de50: 8fb90278 */ lw $t9,0x278($sp) -/* f07de54: 46083102 */ mul.s $f4,$f6,$f8 -/* f07de58: c728000c */ lwc1 $f8,0xc($t9) -/* f07de5c: 46045182 */ mul.s $f6,$f10,$f4 -/* f07de60: 46083280 */ add.s $f10,$f6,$f8 -/* f07de64: e7aa0154 */ swc1 $f10,0x154($sp) -.L0f07de68: -/* f07de68: c7a40150 */ lwc1 $f4,0x150($sp) -.L0f07de6c: -/* f07de6c: 8fa40278 */ lw $a0,0x278($sp) -/* f07de70: e4840008 */ swc1 $f4,0x8($a0) -/* f07de74: c7a60154 */ lwc1 $f6,0x154($sp) -/* f07de78: e486000c */ swc1 $f6,0xc($a0) -/* f07de7c: c7a80158 */ lwc1 $f8,0x158($sp) -/* f07de80: 0fc19711 */ jal propDeregisterRooms -/* f07de84: e4880010 */ swc1 $f8,0x10($a0) -/* f07de88: 27a40140 */ addiu $a0,$sp,0x140 -/* f07de8c: 0fc195e9 */ jal roomsCopy -/* f07de90: 8fa50054 */ lw $a1,0x54($sp) -/* f07de94: c7aa0190 */ lwc1 $f10,0x190($sp) -/* f07de98: 8e020088 */ lw $v0,0x88($s0) -/* f07de9c: e60a007c */ swc1 $f10,0x7c($s0) -/* f07dea0: c7a4018c */ lwc1 $f4,0x18c($sp) -/* f07dea4: e6040080 */ swc1 $f4,0x80($s0) -/* f07dea8: c7a60188 */ lwc1 $f6,0x188($sp) -/* f07deac: e6060084 */ swc1 $f6,0x84($s0) -/* f07deb0: c7a80184 */ lwc1 $f8,0x184($sp) -/* f07deb4: e6080070 */ swc1 $f8,0x70($s0) -/* f07deb8: c7aa0180 */ lwc1 $f10,0x180($sp) -/* f07debc: 10400024 */ beqz $v0,.L0f07df50 -/* f07dec0: e60a0074 */ swc1 $f10,0x74($s0) -/* f07dec4: 8e09008c */ lw $t1,0x8c($s0) -/* f07dec8: 8c480000 */ lw $t0,0x0($v0) -/* f07decc: c7a601f4 */ lwc1 $f6,0x1f4($sp) -/* f07ded0: 00095880 */ sll $t3,$t1,0x2 -/* f07ded4: 010b6021 */ addu $t4,$t0,$t3 -/* f07ded8: 8d8d0004 */ lw $t5,0x4($t4) -/* f07dedc: c7a401f4 */ lwc1 $f4,0x1f4($sp) -/* f07dee0: 05a20010 */ bltzl $t5,.L0f07df24 -/* f07dee4: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07dee8: c6040064 */ lwc1 $f4,0x64($s0) -/* f07deec: 8fa40058 */ lw $a0,0x58($sp) -/* f07def0: 27a50150 */ addiu $a1,$sp,0x150 -/* f07def4: 46062202 */ mul.s $f8,$f4,$f6 -/* f07def8: 27a60214 */ addiu $a2,$sp,0x214 -/* f07defc: 44074000 */ mfc1 $a3,$f8 -/* f07df00: 0fc111b8 */ jal posIsArrivingLaterallyAtPos -/* f07df04: 00000000 */ nop -/* f07df08: 50400012 */ beqzl $v0,.L0f07df54 -/* f07df0c: 02002025 */ or $a0,$s0,$zero -/* f07df10: 0fc1c9dd */ jal hovercarIncrementStep -/* f07df14: 02002025 */ or $a0,$s0,$zero -/* f07df18: 1000000e */ b .L0f07df54 -/* f07df1c: 02002025 */ or $a0,$s0,$zero -/* f07df20: c60a0064 */ lwc1 $f10,0x64($s0) -.L0f07df24: -/* f07df24: 8fa40058 */ lw $a0,0x58($sp) -/* f07df28: 27a50150 */ addiu $a1,$sp,0x150 -/* f07df2c: 46045182 */ mul.s $f6,$f10,$f4 -/* f07df30: 27a60214 */ addiu $a2,$sp,0x214 -/* f07df34: 44073000 */ mfc1 $a3,$f6 -/* f07df38: 0fc111b8 */ jal posIsArrivingLaterallyAtPos -/* f07df3c: 00000000 */ nop -/* f07df40: 50400004 */ beqzl $v0,.L0f07df54 -/* f07df44: 02002025 */ or $a0,$s0,$zero -/* f07df48: 0fc1c9dd */ jal hovercarIncrementStep -/* f07df4c: 02002025 */ or $a0,$s0,$zero -.L0f07df50: -/* f07df50: 02002025 */ or $a0,$s0,$zero -.L0f07df54: -/* f07df54: 00002825 */ or $a1,$zero,$zero -/* f07df58: 0fc1a71c */ jal func0f069c70 -/* f07df5c: 24060001 */ addiu $a2,$zero,0x1 -.L0f07df60: -/* f07df60: 8fbf004c */ lw $ra,0x4c($sp) -.L0f07df64: -/* f07df64: 8fb00048 */ lw $s0,0x48($sp) -/* f07df68: 27bd0278 */ addiu $sp,$sp,0x278 -/* f07df6c: 03e00008 */ jr $ra -/* f07df70: 00000000 */ nop -); +#define HOVVALUE1() ((active ? 15.0f : 5.0f) * PALUPF(0.00021813141938765f)) +#define HOVVALUE2() ((active ? 15.0f : 5.0f) * PALUPF(0.013087885454297f)) + +void hovercarTick(struct prop *prop) +{ + bool stopping; + struct pad pad; + struct coord sp214; + s16 sp210[2]; + struct hovercarobj *hovercar = (struct hovercarobj *) prop->obj; + struct defaultobj *obj = &hovercar->base; + u32 stack; + f32 sp200 = hovercar->roty; + f32 sp1fc = hovercar->rotx; + u32 active = obj->flags & OBJFLAG_80000000; + f32 sp1f4 = active ? 5 : 10; + struct prop *doorprop; + struct coord sp1e4; + struct coord sp1d8; + s16 sp1d6; + f32 x; + f32 z; + struct coord sp1c0; + s16 sp1b0[8]; + struct modelrodata_bbox *bbox; + f32 ymin; + s32 *padnum; + struct doorobj *door; + struct coord sp194; + f32 sp190; + f32 sp18c; + f32 sp188; + f32 sp184; + f32 sp180; + f32 sp15c[3][3]; + struct coord sp150; + s16 sp140[8]; + f32 tmp2; + f32 sp138; + struct coord sp12c; + Mtxf spec; + Mtxf spac; + Mtxf sp6c; + + doorprop = NULL; + + if (active && hovercar->deadtimer60 < 0) { + // Exploding + bbox = modelFindBboxRodata(hovercar->base.model); + ymin = objGetLocalYMin(bbox); + sp1d6 = prop->rooms[0]; + + sp1d8.x = hovercar->base.realrot[1][0]; + sp1d8.y = hovercar->base.realrot[1][1]; + sp1d8.z = hovercar->base.realrot[1][2]; + + sp1e4.x = hovercar->base.realrot[1][0] * ymin + prop->pos.x; + sp1e4.y = hovercar->base.realrot[1][1] * ymin + prop->pos.y; + sp1e4.z = hovercar->base.realrot[1][2] * ymin + prop->pos.z; + + func0f0926bc(prop, 1, 0xffff); + explosionCreate(NULL, &prop->pos, prop->rooms, EXPLOSIONTYPE_7, g_Vars.currentplayernum, true, &sp1e4, sp1d6, &sp1d8); + hovercar->base.hidden |= OBJHFLAG_REAPABLE; + return; + } + + if (hovercar->dead) { + if (active) { + hovercar->deadtimer60 -= g_Vars.lvupdate240_60; + hovercar->sparkstimer60 -= g_Vars.lvupdate240_60; + + if (hovercar->sparkstimer60 < 0) { + hovercar->sparkstimer60 = TICKS(50); + + propsnd0f0939f8(NULL, prop, SFX_SHIELD_DAMAGE, -1, -1, 1024, 0, 0, 0, -1, 0, -1, -1, -1, -1); + + sparksCreate(prop->rooms[0], prop, &prop->pos, NULL, 0, SPARKTYPE_DEFAULT); + } + } else { + if (hovercar->speedtime60 == 0) { + hovercar->speed += 6; + + sp1c0.x = prop->pos.x; + sp1c0.y = prop->pos.y - hovercar->speed; + sp1c0.z = prop->pos.z; + + if (sp1c0.y < hovercar->speedaim) { + sp1c0.y = hovercar->speedaim; + hovercar->speedtime60 = 1; + } + + func0f065e74(&prop->pos, prop->rooms, &sp1c0, sp1b0); + + prop->pos.x = sp1c0.x; + prop->pos.y = sp1c0.y; + prop->pos.z = sp1c0.z; + + propDeregisterRooms(prop); + roomsCopy(sp1b0, prop->rooms); + func0f069c70(&hovercar->base, false, true); + } + } + + return; + } + + chraiExecute(obj, PROPTYPE_OBJ); + + stopping = false; + + if (hovercar->path) { + padnum = &hovercar->path->pads[hovercar->nextstep]; + padUnpack(*padnum, PADFIELD_POS | PADFIELD_ROOM, &pad); + + sp214.x = pad.pos.x; + + if (active) { + sp210[0] = pad.room; + sp210[1] = -1; + + sp214.y = cdFindGroundYSimple(&pad.pos, 5, sp210, NULL, NULL) + 35; + } else { + sp214.y = pad.pos.y; + } + + sp214.z = pad.pos.z; + + if ((hovercar->base.flags & OBJFLAG_20000000) + && posIsArrivingLaterallyAtPos(&prop->pos, &prop->pos, &sp214, (0, sp1f4))) { + hovercarIncrementStep(hovercar); + padnum = &hovercar->path->pads[hovercar->nextstep]; + padUnpack(*padnum, PADFIELD_POS, &pad); + } + + sp200 = atan2f(sp214.x - prop->pos.x, sp214.z - prop->pos.z); + tmp2 = sqrtf((sp214.x - prop->pos.x) * (sp214.x - prop->pos.x) + (sp214.z - prop->pos.z) * (sp214.z - prop->pos.z)); + sp1fc = atan2f(sp214.y - prop->pos.y, tmp2); + + if (hovercar->base.flags & OBJFLAG_20000000) { + hovercar->roty = sp200; + hovercar->rotx = sp1fc; + obj->flags &= ~OBJFLAG_20000000; + + if (active) { + prop->pos.y = sp214.y; + } + } + + if (active) { + if (cd0002d7c0(&prop->pos, prop->rooms, &sp214, 0x5000, 0, 0, 0) == 0) { + doorprop = cdGetObstacle(); + } + + if (doorprop) { + door = (struct doorobj *) doorprop->obj; + x = doorprop->pos.x - prop->pos.x; + z = doorprop->pos.z - prop->pos.z; + + if (x * x + z * z < 200 * 200) { + doorsChooseSwingDirection(prop, door); + doorsRequestMode(door, DOORMODE_OPENING); + } + + if (x * x + z * z < 195 * 195) { + stopping = !doorIsOpen(door); + } + } + } + } else { + if (hovercar->base.flags & OBJFLAG_20000000) { + hovercar->roty = atan2f(hovercar->base.realrot[2][0], hovercar->base.realrot[2][2]); + tmp2 = sqrtf(hovercar->base.realrot[2][2] * hovercar->base.realrot[2][2] + hovercar->base.realrot[2][0] * hovercar->base.realrot[2][0]); + hovercar->rotx = atan2f(hovercar->base.realrot[2][1], tmp2); + hovercar->base.flags &= ~OBJFLAG_20000000; + } + } + + // @bug: To calculate the speed correctly, the code needs to iterate the + // lvupdate multiplier, then adjust the speed and test for reaching the + // speedaim within each iteration. Or at least test for exceeding the + // speedaim after updating it. With the below implementation, a lag frame + // during acceleration can cause the hovercar to exceed its max speed. + if (hovercar->speedtime60 >= 0) { + if (1); + if (hovercar->speedtime60 <= g_Vars.lvupdate240freal) { + hovercar->speed = hovercar->speedaim; + } else { + hovercar->speed += (hovercar->speedaim - hovercar->speed) * g_Vars.lvupdate240freal / hovercar->speedtime60; + } + + hovercar->speedtime60 -= g_Vars.lvupdate240freal; + } + + if (active) { + if (hovercar->turnyspeed60 > 0) { + hovercar->speed -= hovercar->speedaim * (1.0f / 24.0f) * LVUPDATE240FREAL(); + + if (hovercar->speed < 0) { + hovercar->speed = 0.1f; + } + } else { + if (hovercar->speed < hovercar->speedaim) { + hovercar->speed += hovercar->speedaim * (1.0f / 24.0f) * LVUPDATE240FREAL(); + } + } + + if (stopping) { + hovercar->speed -= 50.0f / 240.f * LVUPDATE240FREAL(); + + if (hovercar->speed < 0) { + hovercar->speed = 0; + } + } + } + +#if VERSION >= VERSION_NTSC_1_0 + if (hovercar->speed > 0) #else -GLOBAL_ASM( -glabel hovercarTick -.late_rodata -glabel var7f1aa6ac -.word 0x471c4000 -glabel var7f1aa6b0 -.word 0x47148900 -glabel var7f1aa6b4 -.word 0x3d2aaaab -glabel var7f1aa6b8 -.word 0x3dcccccd -glabel var7f1aa6bc -.word 0x3d2aaaab -glabel var7f1aa6c0 -.word 0x3e555555 -glabel var7f1aa6c4 -.word 0x3964ba35 -glabel var7f1aa6c8 -.word 0x3c566e92 -glabel var7f1aa6cc -.word 0x3964ba35 -glabel var7f1aa6d0 -.word 0x3c566e92 -glabel var7f1aa6d4 -.word 0x3964ba35 -glabel var7f1aa6d8 -.word 0x3dcccccd -glabel var7f1aa6dc -.word 0x40c907a9 -glabel var7f1aa6e0 -.word 0x40c907a9 -.text -/* f07bc90: 27bdfd88 */ addiu $sp,$sp,-632 -/* f07bc94: afbf004c */ sw $ra,0x4c($sp) -/* f07bc98: afb00048 */ sw $s0,0x48($sp) -/* f07bc9c: afa40278 */ sw $a0,0x278($sp) -/* f07bca0: 8c900004 */ lw $s0,0x4($a0) -/* f07bca4: 3c018000 */ lui $at,0x8000 -/* f07bca8: c604007c */ lwc1 $f4,0x7c($s0) -/* f07bcac: e7a40200 */ swc1 $f4,0x200($sp) -/* f07bcb0: c6060080 */ lwc1 $f6,0x80($s0) -/* f07bcb4: e7a601fc */ swc1 $f6,0x1fc($sp) -/* f07bcb8: 8e020008 */ lw $v0,0x8($s0) -/* f07bcbc: 00417824 */ and $t7,$v0,$at -/* f07bcc0: 11e00005 */ beqz $t7,.NB0f07bcd8 -/* f07bcc4: 01e01025 */ or $v0,$t7,$zero -/* f07bcc8: 3c0140a0 */ lui $at,0x40a0 -/* f07bccc: 44814000 */ mtc1 $at,$f8 -/* f07bcd0: 10000005 */ beqz $zero,.NB0f07bce8 -/* f07bcd4: e7a801f4 */ swc1 $f8,0x1f4($sp) -.NB0f07bcd8: -/* f07bcd8: 3c014120 */ lui $at,0x4120 -/* f07bcdc: 44815000 */ mtc1 $at,$f10 -/* f07bce0: 00000000 */ sll $zero,$zero,0x0 -/* f07bce4: e7aa01f4 */ swc1 $f10,0x1f4($sp) -.NB0f07bce8: -/* f07bce8: 10400038 */ beqz $v0,.NB0f07bdcc -/* f07bcec: afa001f0 */ sw $zero,0x1f0($sp) -/* f07bcf0: 86180094 */ lh $t8,0x94($s0) -/* f07bcf4: 07030036 */ bgezl $t8,.NB0f07bdd0 -/* f07bcf8: 860f0092 */ lh $t7,0x92($s0) -/* f07bcfc: 0fc19f4a */ jal modelFindBboxRodata -/* f07bd00: 8e040018 */ lw $a0,0x18($s0) -/* f07bd04: 0fc1968f */ jal objGetLocalYMin -/* f07bd08: 00402025 */ or $a0,$v0,$zero -/* f07bd0c: 8fa40278 */ lw $a0,0x278($sp) -/* f07bd10: 24050001 */ addiu $a1,$zero,0x1 -/* f07bd14: 3406ffff */ dli $a2,0xffff -/* f07bd18: 84990028 */ lh $t9,0x28($a0) -/* f07bd1c: a7b901d6 */ sh $t9,0x1d6($sp) -/* f07bd20: c6040028 */ lwc1 $f4,0x28($s0) -/* f07bd24: e7a401d8 */ swc1 $f4,0x1d8($sp) -/* f07bd28: c606002c */ lwc1 $f6,0x2c($s0) -/* f07bd2c: e7a601dc */ swc1 $f6,0x1dc($sp) -/* f07bd30: c6080030 */ lwc1 $f8,0x30($s0) -/* f07bd34: e7a801e0 */ swc1 $f8,0x1e0($sp) -/* f07bd38: c60a0028 */ lwc1 $f10,0x28($s0) -/* f07bd3c: c4860008 */ lwc1 $f6,0x8($a0) -/* f07bd40: 46005102 */ mul.s $f4,$f10,$f0 -/* f07bd44: 46062200 */ add.s $f8,$f4,$f6 -/* f07bd48: e7a801e4 */ swc1 $f8,0x1e4($sp) -/* f07bd4c: c60a002c */ lwc1 $f10,0x2c($s0) -/* f07bd50: c486000c */ lwc1 $f6,0xc($a0) -/* f07bd54: 46005102 */ mul.s $f4,$f10,$f0 -/* f07bd58: 46062200 */ add.s $f8,$f4,$f6 -/* f07bd5c: e7a801e8 */ swc1 $f8,0x1e8($sp) -/* f07bd60: c60a0030 */ lwc1 $f10,0x30($s0) -/* f07bd64: c4860010 */ lwc1 $f6,0x10($a0) -/* f07bd68: 46005102 */ mul.s $f4,$f10,$f0 -/* f07bd6c: 46062200 */ add.s $f8,$f4,$f6 -/* f07bd70: 0fc2433d */ jal func0f0926bc -/* f07bd74: e7a801ec */ swc1 $f8,0x1ec($sp) -/* f07bd78: 8fa20278 */ lw $v0,0x278($sp) -/* f07bd7c: 3c08800a */ lui $t0,0x800a -/* f07bd80: 8d08e94c */ lw $t0,-0x16b4($t0) -/* f07bd84: 87ab01d6 */ lh $t3,0x1d6($sp) -/* f07bd88: 24090001 */ addiu $t1,$zero,0x1 -/* f07bd8c: 27aa01e4 */ addiu $t2,$sp,0x1e4 -/* f07bd90: 27ac01d8 */ addiu $t4,$sp,0x1d8 -/* f07bd94: afac0020 */ sw $t4,0x20($sp) -/* f07bd98: afaa0018 */ sw $t2,0x18($sp) -/* f07bd9c: afa90014 */ sw $t1,0x14($sp) -/* f07bda0: 00002025 */ or $a0,$zero,$zero -/* f07bda4: 24070007 */ addiu $a3,$zero,0x7 -/* f07bda8: 24450008 */ addiu $a1,$v0,0x8 -/* f07bdac: 24460028 */ addiu $a2,$v0,0x28 -/* f07bdb0: afa80010 */ sw $t0,0x10($sp) -/* f07bdb4: 0fc492bc */ jal explosionCreate -/* f07bdb8: afab001c */ sw $t3,0x1c($sp) -/* f07bdbc: 8e0d0040 */ lw $t5,0x40($s0) -/* f07bdc0: 35ae0004 */ ori $t6,$t5,0x4 -/* f07bdc4: 10000304 */ beqz $zero,.NB0f07c9d8 -/* f07bdc8: ae0e0040 */ sw $t6,0x40($s0) -.NB0f07bdcc: -/* f07bdcc: 860f0092 */ lh $t7,0x92($s0) -.NB0f07bdd0: -/* f07bdd0: 02002025 */ or $a0,$s0,$zero -/* f07bdd4: 24050001 */ addiu $a1,$zero,0x1 -/* f07bdd8: 11e00063 */ beqz $t7,.NB0f07bf68 -/* f07bddc: 00000000 */ sll $zero,$zero,0x0 -/* f07bde0: 1040002c */ beqz $v0,.NB0f07be94 -/* f07bde4: 3c02800a */ lui $v0,0x800a -/* f07bde8: 2442e6c0 */ addiu $v0,$v0,-6464 -/* f07bdec: 8c590038 */ lw $t9,0x38($v0) -/* f07bdf0: 86180094 */ lh $t8,0x94($s0) -/* f07bdf4: 86090096 */ lh $t1,0x96($s0) -/* f07bdf8: 3c01bf80 */ lui $at,0xbf80 -/* f07bdfc: 03194023 */ subu $t0,$t8,$t9 -/* f07be00: a6080094 */ sh $t0,0x94($s0) -/* f07be04: 8c4a0038 */ lw $t2,0x38($v0) -/* f07be08: 240d0032 */ addiu $t5,$zero,0x32 -/* f07be0c: 00002025 */ or $a0,$zero,$zero -/* f07be10: 012a5823 */ subu $t3,$t1,$t2 -/* f07be14: a60b0096 */ sh $t3,0x96($s0) -/* f07be18: 860c0096 */ lh $t4,0x96($s0) -/* f07be1c: 24060064 */ addiu $a2,$zero,0x64 -/* f07be20: 2407ffff */ addiu $a3,$zero,-1 -/* f07be24: 058102ec */ bgez $t4,.NB0f07c9d8 -/* f07be28: 240effff */ addiu $t6,$zero,-1 -/* f07be2c: a60d0096 */ sh $t5,0x96($s0) -/* f07be30: 44810000 */ mtc1 $at,$f0 -/* f07be34: 240f0400 */ addiu $t7,$zero,0x400 -/* f07be38: 2418ffff */ addiu $t8,$zero,-1 -/* f07be3c: afb8002c */ sw $t8,0x2c($sp) -/* f07be40: afaf0014 */ sw $t7,0x14($sp) -/* f07be44: afa00028 */ sw $zero,0x28($sp) -/* f07be48: afa00020 */ sw $zero,0x20($sp) -/* f07be4c: afa0001c */ sw $zero,0x1c($sp) -/* f07be50: afa00018 */ sw $zero,0x18($sp) -/* f07be54: afae0010 */ sw $t6,0x10($sp) -/* f07be58: 8fa50278 */ lw $a1,0x278($sp) -/* f07be5c: e7a00024 */ swc1 $f0,0x24($sp) -/* f07be60: e7a00030 */ swc1 $f0,0x30($sp) -/* f07be64: e7a00034 */ swc1 $f0,0x34($sp) -/* f07be68: 0fc24762 */ jal propsnd0f0939f8 -/* f07be6c: e7a00038 */ swc1 $f0,0x38($sp) -/* f07be70: 8fa50278 */ lw $a1,0x278($sp) -/* f07be74: 00003825 */ or $a3,$zero,$zero -/* f07be78: 84a40028 */ lh $a0,0x28($a1) -/* f07be7c: afa00014 */ sw $zero,0x14($sp) -/* f07be80: afa00010 */ sw $zero,0x10($sp) -/* f07be84: 0fc4a960 */ jal sparksCreate -/* f07be88: 24a60008 */ addiu $a2,$a1,0x8 -/* f07be8c: 100002d3 */ beqz $zero,.NB0f07c9dc -/* f07be90: 8fbf004c */ lw $ra,0x4c($sp) -.NB0f07be94: -/* f07be94: 44805000 */ mtc1 $zero,$f10 -/* f07be98: c604006c */ lwc1 $f4,0x6c($s0) -/* f07be9c: 3c0140c0 */ lui $at,0x40c0 -/* f07bea0: 46045032 */ c.eq.s $f10,$f4 -/* f07bea4: 00000000 */ sll $zero,$zero,0x0 -/* f07bea8: 450202cc */ bc1fl .NB0f07c9dc -/* f07beac: 8fbf004c */ lw $ra,0x4c($sp) -/* f07beb0: c6060064 */ lwc1 $f6,0x64($s0) -/* f07beb4: 44814000 */ mtc1 $at,$f8 -/* f07beb8: 3c013f80 */ lui $at,0x3f80 -/* f07bebc: 46083280 */ add.s $f10,$f6,$f8 -/* f07bec0: e60a0064 */ swc1 $f10,0x64($s0) -/* f07bec4: 8fb90278 */ lw $t9,0x278($sp) -/* f07bec8: c7240008 */ lwc1 $f4,0x8($t9) -/* f07becc: e7a401c0 */ swc1 $f4,0x1c0($sp) -/* f07bed0: c6080064 */ lwc1 $f8,0x64($s0) -/* f07bed4: c726000c */ lwc1 $f6,0xc($t9) -/* f07bed8: 46083281 */ sub.s $f10,$f6,$f8 -/* f07bedc: e7aa01c4 */ swc1 $f10,0x1c4($sp) -/* f07bee0: c7240010 */ lwc1 $f4,0x10($t9) -/* f07bee4: e7a401c8 */ swc1 $f4,0x1c8($sp) -/* f07bee8: c6020068 */ lwc1 $f2,0x68($s0) -/* f07beec: 4602503c */ c.lt.s $f10,$f2 -/* f07bef0: 00000000 */ sll $zero,$zero,0x0 -/* f07bef4: 45020005 */ bc1fl .NB0f07bf0c -/* f07bef8: 8fa80278 */ lw $t0,0x278($sp) -/* f07befc: 44813000 */ mtc1 $at,$f6 -/* f07bf00: e7a201c4 */ swc1 $f2,0x1c4($sp) -/* f07bf04: e606006c */ swc1 $f6,0x6c($s0) -/* f07bf08: 8fa80278 */ lw $t0,0x278($sp) -.NB0f07bf0c: -/* f07bf0c: 27a601c0 */ addiu $a2,$sp,0x1c0 -/* f07bf10: 27a701b0 */ addiu $a3,$sp,0x1b0 -/* f07bf14: 25050028 */ addiu $a1,$t0,0x28 -/* f07bf18: afa50054 */ sw $a1,0x54($sp) -/* f07bf1c: 0fc19437 */ jal func0f065e74 -/* f07bf20: 25040008 */ addiu $a0,$t0,0x8 -/* f07bf24: 8fa40278 */ lw $a0,0x278($sp) -/* f07bf28: c7a801c0 */ lwc1 $f8,0x1c0($sp) -/* f07bf2c: e4880008 */ swc1 $f8,0x8($a0) -/* f07bf30: c7a401c4 */ lwc1 $f4,0x1c4($sp) -/* f07bf34: e484000c */ swc1 $f4,0xc($a0) -/* f07bf38: c7aa01c8 */ lwc1 $f10,0x1c8($sp) -/* f07bf3c: 0fc193ab */ jal propDeregisterRooms -/* f07bf40: e48a0010 */ swc1 $f10,0x10($a0) -/* f07bf44: 27a401b0 */ addiu $a0,$sp,0x1b0 -/* f07bf48: 0fc19283 */ jal roomsCopy -/* f07bf4c: 8fa50054 */ lw $a1,0x54($sp) -/* f07bf50: 02002025 */ or $a0,$s0,$zero -/* f07bf54: 00002825 */ or $a1,$zero,$zero -/* f07bf58: 0fc1a3b7 */ jal func0f069c70 -/* f07bf5c: 24060001 */ addiu $a2,$zero,0x1 -/* f07bf60: 1000029e */ beqz $zero,.NB0f07c9dc -/* f07bf64: 8fbf004c */ lw $ra,0x4c($sp) -.NB0f07bf68: -/* f07bf68: 0fc13321 */ jal chraiExecute -/* f07bf6c: afa201f8 */ sw $v0,0x1f8($sp) -/* f07bf70: afa00274 */ sw $zero,0x274($sp) -/* f07bf74: 8e020088 */ lw $v0,0x88($s0) -/* f07bf78: 24050042 */ addiu $a1,$zero,0x42 -/* f07bf7c: 5040009f */ beqzl $v0,.NB0f07c1fc -/* f07bf80: 8e090008 */ lw $t1,0x8($s0) -/* f07bf84: 8e0a008c */ lw $t2,0x8c($s0) -/* f07bf88: 8c490000 */ lw $t1,0x0($v0) -/* f07bf8c: 27a60220 */ addiu $a2,$sp,0x220 -/* f07bf90: 000a5880 */ sll $t3,$t2,0x2 -/* f07bf94: 012b1821 */ addu $v1,$t1,$t3 -/* f07bf98: 0fc43fc4 */ jal padUnpack -/* f07bf9c: 8c640000 */ lw $a0,0x0($v1) -/* f07bfa0: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07bfa4: c7a60220 */ lwc1 $f6,0x220($sp) -/* f07bfa8: c7aa0224 */ lwc1 $f10,0x224($sp) -/* f07bfac: 11800011 */ beqz $t4,.NB0f07bff4 -/* f07bfb0: e7a60214 */ swc1 $f6,0x214($sp) -/* f07bfb4: 8fad0268 */ lw $t5,0x268($sp) -/* f07bfb8: 240effff */ addiu $t6,$zero,-1 -/* f07bfbc: a7ae0212 */ sh $t6,0x212($sp) -/* f07bfc0: 27a40220 */ addiu $a0,$sp,0x220 -/* f07bfc4: 3c0540a0 */ lui $a1,0x40a0 -/* f07bfc8: 27a60210 */ addiu $a2,$sp,0x210 -/* f07bfcc: 00003825 */ or $a3,$zero,$zero -/* f07bfd0: afa00010 */ sw $zero,0x10($sp) -/* f07bfd4: 0c00adde */ jal cdFindGroundYSimple -/* f07bfd8: a7ad0210 */ sh $t5,0x210($sp) -/* f07bfdc: 3c01420c */ lui $at,0x420c -/* f07bfe0: 44814000 */ mtc1 $at,$f8 -/* f07bfe4: 00000000 */ sll $zero,$zero,0x0 -/* f07bfe8: 46080100 */ add.s $f4,$f0,$f8 -/* f07bfec: 10000002 */ beqz $zero,.NB0f07bff8 -/* f07bff0: e7a40218 */ swc1 $f4,0x218($sp) -.NB0f07bff4: -/* f07bff4: e7aa0218 */ swc1 $f10,0x218($sp) -.NB0f07bff8: -/* f07bff8: c7a60228 */ lwc1 $f6,0x228($sp) -/* f07bffc: 8fa40278 */ lw $a0,0x278($sp) -/* f07c000: 27a60214 */ addiu $a2,$sp,0x214 -/* f07c004: e7a6021c */ swc1 $f6,0x21c($sp) -/* f07c008: 8e0f0008 */ lw $t7,0x8($s0) -/* f07c00c: 24840008 */ addiu $a0,$a0,0x8 -/* f07c010: 00802825 */ or $a1,$a0,$zero -/* f07c014: 000fc080 */ sll $t8,$t7,0x2 -/* f07c018: 07030011 */ bgezl $t8,.NB0f07c060 -/* f07c01c: 8fa20278 */ lw $v0,0x278($sp) -/* f07c020: 0fc10fab */ jal posIsArrivingLaterallyAtPos -/* f07c024: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07c028: 5040000d */ beqzl $v0,.NB0f07c060 -/* f07c02c: 8fa20278 */ lw $v0,0x278($sp) -/* f07c030: 0fc1c542 */ jal hovercarIncrementStep -/* f07c034: 02002025 */ or $a0,$s0,$zero -/* f07c038: 8e190088 */ lw $t9,0x88($s0) -/* f07c03c: 8e0a008c */ lw $t2,0x8c($s0) -/* f07c040: 24050002 */ addiu $a1,$zero,0x2 -/* f07c044: 8f280000 */ lw $t0,0x0($t9) -/* f07c048: 000a4880 */ sll $t1,$t2,0x2 -/* f07c04c: 27a60220 */ addiu $a2,$sp,0x220 -/* f07c050: 01091821 */ addu $v1,$t0,$t1 -/* f07c054: 0fc43fc4 */ jal padUnpack -/* f07c058: 8c640000 */ lw $a0,0x0($v1) -/* f07c05c: 8fa20278 */ lw $v0,0x278($sp) -.NB0f07c060: -/* f07c060: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07c064: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07c068: c4440008 */ lwc1 $f4,0x8($v0) -/* f07c06c: c4460010 */ lwc1 $f6,0x10($v0) -/* f07c070: 46044301 */ sub.s $f12,$f8,$f4 -/* f07c074: 0fc251b8 */ jal atan2f -/* f07c078: 46065381 */ sub.s $f14,$f10,$f6 -/* f07c07c: 8fa20278 */ lw $v0,0x278($sp) -/* f07c080: e7a00200 */ swc1 $f0,0x200($sp) -/* f07c084: c7a80214 */ lwc1 $f8,0x214($sp) -/* f07c088: c4440008 */ lwc1 $f4,0x8($v0) -/* f07c08c: c7aa021c */ lwc1 $f10,0x21c($sp) -/* f07c090: c4460010 */ lwc1 $f6,0x10($v0) -/* f07c094: 46044081 */ sub.s $f2,$f8,$f4 -/* f07c098: 46065381 */ sub.s $f14,$f10,$f6 -/* f07c09c: 46021202 */ mul.s $f8,$f2,$f2 -/* f07c0a0: 00000000 */ sll $zero,$zero,0x0 -/* f07c0a4: 460e7102 */ mul.s $f4,$f14,$f14 -/* f07c0a8: 0c012e84 */ jal sqrtf -/* f07c0ac: 46044300 */ add.s $f12,$f8,$f4 -/* f07c0b0: 8fab0278 */ lw $t3,0x278($sp) -/* f07c0b4: c7aa0218 */ lwc1 $f10,0x218($sp) -/* f07c0b8: 46000386 */ mov.s $f14,$f0 -/* f07c0bc: c566000c */ lwc1 $f6,0xc($t3) -/* f07c0c0: 0fc251b8 */ jal atan2f -/* f07c0c4: 46065301 */ sub.s $f12,$f10,$f6 -/* f07c0c8: e7a001fc */ swc1 $f0,0x1fc($sp) -/* f07c0cc: 8e0c0008 */ lw $t4,0x8($s0) -/* f07c0d0: 3c01dfff */ lui $at,0xdfff -/* f07c0d4: c7a80200 */ lwc1 $f8,0x200($sp) -/* f07c0d8: 000c6880 */ sll $t5,$t4,0x2 -/* f07c0dc: 05a1000c */ bgez $t5,.NB0f07c110 -/* f07c0e0: 3421ffff */ ori $at,$at,0xffff -/* f07c0e4: 8e0e0008 */ lw $t6,0x8($s0) -/* f07c0e8: e608007c */ swc1 $f8,0x7c($s0) -/* f07c0ec: e6000080 */ swc1 $f0,0x80($s0) -/* f07c0f0: 01c17824 */ and $t7,$t6,$at -/* f07c0f4: ae0f0008 */ sw $t7,0x8($s0) -/* f07c0f8: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07c0fc: 8fa30278 */ lw $v1,0x278($sp) -/* f07c100: c7a40218 */ lwc1 $f4,0x218($sp) -/* f07c104: 53000003 */ beqzl $t8,.NB0f07c114 -/* f07c108: 8fb901f8 */ lw $t9,0x1f8($sp) -/* f07c10c: e464000c */ swc1 $f4,0xc($v1) -.NB0f07c110: -/* f07c110: 8fb901f8 */ lw $t9,0x1f8($sp) -.NB0f07c114: -/* f07c114: 8fa30278 */ lw $v1,0x278($sp) -/* f07c118: 27a60214 */ addiu $a2,$sp,0x214 -/* f07c11c: 13200034 */ beqz $t9,.NB0f07c1f0 -/* f07c120: 24640008 */ addiu $a0,$v1,0x8 -/* f07c124: 44800000 */ mtc1 $zero,$f0 -/* f07c128: 24650028 */ addiu $a1,$v1,0x28 -/* f07c12c: 24075000 */ addiu $a3,$zero,0x5000 -/* f07c130: afa00010 */ sw $zero,0x10($sp) -/* f07c134: e7a00014 */ swc1 $f0,0x14($sp) -/* f07c138: 0c00baf2 */ jal cd0002d7c0 -/* f07c13c: e7a00018 */ swc1 $f0,0x18($sp) -/* f07c140: 54400005 */ bnezl $v0,.NB0f07c158 -/* f07c144: 8fa301f0 */ lw $v1,0x1f0($sp) -/* f07c148: 0c0098a4 */ jal cdGetObstacle -/* f07c14c: 00000000 */ sll $zero,$zero,0x0 -/* f07c150: afa201f0 */ sw $v0,0x1f0($sp) -/* f07c154: 8fa301f0 */ lw $v1,0x1f0($sp) -.NB0f07c158: -/* f07c158: 10600025 */ beqz $v1,.NB0f07c1f0 -/* f07c15c: 00000000 */ sll $zero,$zero,0x0 -/* f07c160: 8c6a0004 */ lw $t2,0x4($v1) -/* f07c164: 8fa60278 */ lw $a2,0x278($sp) -/* f07c168: 3c017f1a */ lui $at,0x7f1a -/* f07c16c: afaa01a0 */ sw $t2,0x1a0($sp) -/* f07c170: c46a0008 */ lwc1 $f10,0x8($v1) -/* f07c174: c4c60008 */ lwc1 $f6,0x8($a2) -/* f07c178: c4680010 */ lwc1 $f8,0x10($v1) -/* f07c17c: c4c40010 */ lwc1 $f4,0x10($a2) -/* f07c180: 46065001 */ sub.s $f0,$f10,$f6 -/* f07c184: 01402825 */ or $a1,$t2,$zero -/* f07c188: 00c02025 */ or $a0,$a2,$zero -/* f07c18c: 46044081 */ sub.s $f2,$f8,$f4 -/* f07c190: 46000282 */ mul.s $f10,$f0,$f0 -/* f07c194: c42849cc */ lwc1 $f8,0x49cc($at) -/* f07c198: 46021182 */ mul.s $f6,$f2,$f2 -/* f07c19c: 46065300 */ add.s $f12,$f10,$f6 -/* f07c1a0: 4608603c */ c.lt.s $f12,$f8 -/* f07c1a4: 00000000 */ sll $zero,$zero,0x0 -/* f07c1a8: 45000007 */ bc1f .NB0f07c1c8 -/* f07c1ac: 00000000 */ sll $zero,$zero,0x0 -/* f07c1b0: 0fc239d6 */ jal doorsChooseSwingDirection -/* f07c1b4: e7ac0058 */ swc1 $f12,0x58($sp) -/* f07c1b8: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07c1bc: 0fc23312 */ jal doorsRequestMode -/* f07c1c0: 24050001 */ addiu $a1,$zero,0x1 -/* f07c1c4: c7ac0058 */ lwc1 $f12,0x58($sp) -.NB0f07c1c8: -/* f07c1c8: 3c017f1a */ lui $at,0x7f1a -/* f07c1cc: c42449d0 */ lwc1 $f4,0x49d0($at) -/* f07c1d0: 4604603c */ c.lt.s $f12,$f4 -/* f07c1d4: 00000000 */ sll $zero,$zero,0x0 -/* f07c1d8: 45000005 */ bc1f .NB0f07c1f0 -/* f07c1dc: 00000000 */ sll $zero,$zero,0x0 -/* f07c1e0: 0fc23349 */ jal doorIsOpen -/* f07c1e4: 8fa401a0 */ lw $a0,0x1a0($sp) -/* f07c1e8: 2c480001 */ sltiu $t0,$v0,0x1 -/* f07c1ec: afa80274 */ sw $t0,0x274($sp) -.NB0f07c1f0: -/* f07c1f0: 1000001a */ beqz $zero,.NB0f07c25c -/* f07c1f4: 44807000 */ mtc1 $zero,$f14 -/* f07c1f8: 8e090008 */ lw $t1,0x8($s0) -.NB0f07c1fc: -/* f07c1fc: 00095880 */ sll $t3,$t1,0x2 -/* f07c200: 05630016 */ bgezl $t3,.NB0f07c25c -/* f07c204: 44807000 */ mtc1 $zero,$f14 -/* f07c208: c60c0034 */ lwc1 $f12,0x34($s0) -/* f07c20c: 0fc251b8 */ jal atan2f -/* f07c210: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07c214: c6020034 */ lwc1 $f2,0x34($s0) -/* f07c218: c60e003c */ lwc1 $f14,0x3c($s0) -/* f07c21c: e600007c */ swc1 $f0,0x7c($s0) -/* f07c220: 46021282 */ mul.s $f10,$f2,$f2 -/* f07c224: 00000000 */ sll $zero,$zero,0x0 -/* f07c228: 460e7182 */ mul.s $f6,$f14,$f14 -/* f07c22c: 0c012e84 */ jal sqrtf -/* f07c230: 46065300 */ add.s $f12,$f10,$f6 -/* f07c234: c60c0038 */ lwc1 $f12,0x38($s0) -/* f07c238: 0fc251b8 */ jal atan2f -/* f07c23c: 46000386 */ mov.s $f14,$f0 -/* f07c240: 8e0c0008 */ lw $t4,0x8($s0) -/* f07c244: 3c01dfff */ lui $at,0xdfff -/* f07c248: 3421ffff */ ori $at,$at,0xffff -/* f07c24c: 01816824 */ and $t5,$t4,$at -/* f07c250: e6000080 */ swc1 $f0,0x80($s0) -/* f07c254: ae0d0008 */ sw $t5,0x8($s0) -/* f07c258: 44807000 */ mtc1 $zero,$f14 -.NB0f07c25c: -/* f07c25c: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07c260: 3c02800a */ lui $v0,0x800a -/* f07c264: 8fa30278 */ lw $v1,0x278($sp) -/* f07c268: 460c703e */ c.le.s $f14,$f12 -/* f07c26c: 2442e6c0 */ addiu $v0,$v0,-6464 -/* f07c270: 45020015 */ bc1fl .NB0f07c2c8 -/* f07c274: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07c278: c442004c */ lwc1 $f2,0x4c($v0) -/* f07c27c: 4602603e */ c.le.s $f12,$f2 -/* f07c280: 00000000 */ sll $zero,$zero,0x0 -/* f07c284: 45020006 */ bc1fl .NB0f07c2a0 -/* f07c288: c6000064 */ lwc1 $f0,0x64($s0) -/* f07c28c: c6080068 */ lwc1 $f8,0x68($s0) -/* f07c290: c60c006c */ lwc1 $f12,0x6c($s0) -/* f07c294: 10000008 */ beqz $zero,.NB0f07c2b8 -/* f07c298: e6080064 */ swc1 $f8,0x64($s0) -/* f07c29c: c6000064 */ lwc1 $f0,0x64($s0) -.NB0f07c2a0: -/* f07c2a0: c6040068 */ lwc1 $f4,0x68($s0) -/* f07c2a4: 46002281 */ sub.s $f10,$f4,$f0 -/* f07c2a8: 46025182 */ mul.s $f6,$f10,$f2 -/* f07c2ac: 460c3203 */ div.s $f8,$f6,$f12 -/* f07c2b0: 46080100 */ add.s $f4,$f0,$f8 -/* f07c2b4: e6040064 */ swc1 $f4,0x64($s0) -.NB0f07c2b8: -/* f07c2b8: c44a004c */ lwc1 $f10,0x4c($v0) -/* f07c2bc: 460a6181 */ sub.s $f6,$f12,$f10 -/* f07c2c0: e606006c */ swc1 $f6,0x6c($s0) -/* f07c2c4: 8fae01f8 */ lw $t6,0x1f8($sp) -.NB0f07c2c8: -/* f07c2c8: 3c02800a */ lui $v0,0x800a -/* f07c2cc: 2442e6c0 */ addiu $v0,$v0,-6464 -/* f07c2d0: 51c00037 */ beqzl $t6,.NB0f07c3b0 -/* f07c2d4: 44802000 */ mtc1 $zero,$f4 -/* f07c2d8: c6080070 */ lwc1 $f8,0x70($s0) -/* f07c2dc: 3c017f1a */ lui $at,0x7f1a -/* f07c2e0: 4608703c */ c.lt.s $f14,$f8 -/* f07c2e4: 00000000 */ sll $zero,$zero,0x0 -/* f07c2e8: 45020013 */ bc1fl .NB0f07c338 -/* f07c2ec: c6000064 */ lwc1 $f0,0x64($s0) -/* f07c2f0: c6040068 */ lwc1 $f4,0x68($s0) -/* f07c2f4: c42a49d4 */ lwc1 $f10,0x49d4($at) -/* f07c2f8: c4480044 */ lwc1 $f8,0x44($v0) -/* f07c2fc: 3c017f1a */ lui $at,0x7f1a -/* f07c300: 460a2182 */ mul.s $f6,$f4,$f10 -/* f07c304: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07c308: 46083102 */ mul.s $f4,$f6,$f8 -/* f07c30c: 46045181 */ sub.s $f6,$f10,$f4 -/* f07c310: e6060064 */ swc1 $f6,0x64($s0) -/* f07c314: c6080064 */ lwc1 $f8,0x64($s0) -/* f07c318: 460e403c */ c.lt.s $f8,$f14 -/* f07c31c: 00000000 */ sll $zero,$zero,0x0 -/* f07c320: 45020013 */ bc1fl .NB0f07c370 -/* f07c324: 8faf0274 */ lw $t7,0x274($sp) -/* f07c328: c42a49d8 */ lwc1 $f10,0x49d8($at) -/* f07c32c: 1000000f */ beqz $zero,.NB0f07c36c -/* f07c330: e60a0064 */ swc1 $f10,0x64($s0) -/* f07c334: c6000064 */ lwc1 $f0,0x64($s0) -.NB0f07c338: -/* f07c338: c6020068 */ lwc1 $f2,0x68($s0) -/* f07c33c: 3c017f1a */ lui $at,0x7f1a -/* f07c340: 4602003c */ c.lt.s $f0,$f2 -/* f07c344: 00000000 */ sll $zero,$zero,0x0 -/* f07c348: 45020009 */ bc1fl .NB0f07c370 -/* f07c34c: 8faf0274 */ lw $t7,0x274($sp) -/* f07c350: c42449dc */ lwc1 $f4,0x49dc($at) -/* f07c354: c4480044 */ lwc1 $f8,0x44($v0) -/* f07c358: 46041182 */ mul.s $f6,$f2,$f4 -/* f07c35c: 00000000 */ sll $zero,$zero,0x0 -/* f07c360: 46083282 */ mul.s $f10,$f6,$f8 -/* f07c364: 460a0100 */ add.s $f4,$f0,$f10 -/* f07c368: e6040064 */ swc1 $f4,0x64($s0) -.NB0f07c36c: -/* f07c36c: 8faf0274 */ lw $t7,0x274($sp) -.NB0f07c370: -/* f07c370: 3c017f1a */ lui $at,0x7f1a -/* f07c374: 51e0000e */ beqzl $t7,.NB0f07c3b0 -/* f07c378: 44802000 */ mtc1 $zero,$f4 -/* f07c37c: c42649e0 */ lwc1 $f6,0x49e0($at) -/* f07c380: c4480044 */ lwc1 $f8,0x44($v0) -/* f07c384: c6040064 */ lwc1 $f4,0x64($s0) -/* f07c388: 46083282 */ mul.s $f10,$f6,$f8 -/* f07c38c: 460a2181 */ sub.s $f6,$f4,$f10 -/* f07c390: e6060064 */ swc1 $f6,0x64($s0) -/* f07c394: c6080064 */ lwc1 $f8,0x64($s0) -/* f07c398: 460e403c */ c.lt.s $f8,$f14 -/* f07c39c: 00000000 */ sll $zero,$zero,0x0 -/* f07c3a0: 45020003 */ bc1fl .NB0f07c3b0 -/* f07c3a4: 44802000 */ mtc1 $zero,$f4 -/* f07c3a8: e60e0064 */ swc1 $f14,0x64($s0) -/* f07c3ac: 44802000 */ mtc1 $zero,$f4 -.NB0f07c3b0: -/* f07c3b0: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07c3b4: 460a2032 */ c.eq.s $f4,$f10 -/* f07c3b8: 00000000 */ sll $zero,$zero,0x0 -/* f07c3bc: 45030187 */ bc1tl .NB0f07c9dc -/* f07c3c0: 8fbf004c */ lw $ra,0x4c($sp) -/* f07c3c4: c606007c */ lwc1 $f6,0x7c($s0) -/* f07c3c8: 24780008 */ addiu $t8,$v1,0x8 -/* f07c3cc: 24790028 */ addiu $t9,$v1,0x28 -/* f07c3d0: e7a60190 */ swc1 $f6,0x190($sp) -/* f07c3d4: c6080080 */ lwc1 $f8,0x80($s0) -/* f07c3d8: e7a8018c */ swc1 $f8,0x18c($sp) -/* f07c3dc: c6040084 */ lwc1 $f4,0x84($s0) -/* f07c3e0: e7a40188 */ swc1 $f4,0x188($sp) -/* f07c3e4: c60a0070 */ lwc1 $f10,0x70($s0) -/* f07c3e8: e7aa0184 */ swc1 $f10,0x184($sp) -/* f07c3ec: c6060074 */ lwc1 $f6,0x74($s0) -/* f07c3f0: e7a60180 */ swc1 $f6,0x180($sp) -/* f07c3f4: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07c3f8: afb90054 */ sw $t9,0x54($sp) -/* f07c3fc: 0c006d55 */ jal sinf -/* f07c400: afb80058 */ sw $t8,0x58($sp) -/* f07c404: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07c408: 0c006d52 */ jal cosf -/* f07c40c: e7a00068 */ swc1 $f0,0x68($sp) -/* f07c410: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07c414: 46020202 */ mul.s $f8,$f0,$f2 -/* f07c418: e7a80194 */ swc1 $f8,0x194($sp) -/* f07c41c: 0c006d55 */ jal sinf -/* f07c420: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07c424: e7a00198 */ swc1 $f0,0x198($sp) -/* f07c428: 0c006d52 */ jal cosf -/* f07c42c: c60c007c */ lwc1 $f12,0x7c($s0) -/* f07c430: c60c0080 */ lwc1 $f12,0x80($s0) -/* f07c434: 0c006d52 */ jal cosf -/* f07c438: e7a00068 */ swc1 $f0,0x68($sp) -/* f07c43c: c7a20068 */ lwc1 $f2,0x68($sp) -/* f07c440: 8fa40058 */ lw $a0,0x58($sp) -/* f07c444: 27a50194 */ addiu $a1,$sp,0x194 -/* f07c448: 46020102 */ mul.s $f4,$f0,$f2 -/* f07c44c: 27a60214 */ addiu $a2,$sp,0x214 -/* f07c450: 8fa701f4 */ lw $a3,0x1f4($sp) -/* f07c454: 0fc10f64 */ jal posIsMovingTowardsPosOrStoppedInRange -/* f07c458: e7a4019c */ swc1 $f4,0x19c($sp) -/* f07c45c: 50400006 */ beqzl $v0,.NB0f07c478 -/* f07c460: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07c464: c60a007c */ lwc1 $f10,0x7c($s0) -/* f07c468: e7aa0200 */ swc1 $f10,0x200($sp) -/* f07c46c: c6060080 */ lwc1 $f6,0x80($s0) -/* f07c470: e7a601fc */ swc1 $f6,0x1fc($sp) -/* f07c474: 8fa201f8 */ lw $v0,0x1f8($sp) -.NB0f07c478: -/* f07c478: 10400004 */ beqz $v0,.NB0f07c48c -/* f07c47c: 3c014170 */ lui $at,0x4170 -/* f07c480: 44818000 */ mtc1 $at,$f16 -/* f07c484: 10000006 */ beqz $zero,.NB0f07c4a0 -/* f07c488: 46008386 */ mov.s $f14,$f16 -.NB0f07c48c: -/* f07c48c: 3c0140a0 */ lui $at,0x40a0 -/* f07c490: 44817000 */ mtc1 $at,$f14 -/* f07c494: 3c014170 */ lui $at,0x4170 -/* f07c498: 44818000 */ mtc1 $at,$f16 -/* f07c49c: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c4a0: -/* f07c4a0: 50400004 */ beqzl $v0,.NB0f07c4b4 -/* f07c4a4: 3c0140a0 */ lui $at,0x40a0 -/* f07c4a8: 10000004 */ beqz $zero,.NB0f07c4bc -/* f07c4ac: 46008306 */ mov.s $f12,$f16 -/* f07c4b0: 3c0140a0 */ lui $at,0x40a0 -.NB0f07c4b4: -/* f07c4b4: 44816000 */ mtc1 $at,$f12 -/* f07c4b8: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c4bc: -/* f07c4bc: 50400004 */ beqzl $v0,.NB0f07c4d0 -/* f07c4c0: 3c0140a0 */ lui $at,0x40a0 -/* f07c4c4: 10000004 */ beqz $zero,.NB0f07c4d8 -/* f07c4c8: 46008086 */ mov.s $f2,$f16 -/* f07c4cc: 3c0140a0 */ lui $at,0x40a0 -.NB0f07c4d0: -/* f07c4d0: 44811000 */ mtc1 $at,$f2 -/* f07c4d4: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c4d8: -/* f07c4d8: 3c017f1a */ lui $at,0x7f1a -/* f07c4dc: c43249e4 */ lwc1 $f18,0x49e4($at) -/* f07c4e0: 3c017f1a */ lui $at,0x7f1a -/* f07c4e4: c42a49e8 */ lwc1 $f10,0x49e8($at) -/* f07c4e8: 46127202 */ mul.s $f8,$f14,$f18 -/* f07c4ec: 27a40190 */ addiu $a0,$sp,0x190 -/* f07c4f0: 8fa50200 */ lw $a1,0x200($sp) -/* f07c4f4: 46126002 */ mul.s $f0,$f12,$f18 -/* f07c4f8: 27a60184 */ addiu $a2,$sp,0x184 -/* f07c4fc: 460a1182 */ mul.s $f6,$f2,$f10 -/* f07c500: 44074000 */ mfc1 $a3,$f8 -/* f07c504: 46000100 */ add.s $f4,$f0,$f0 -/* f07c508: e7a60014 */ swc1 $f6,0x14($sp) -/* f07c50c: 0fc1b359 */ jal applyRotation -/* f07c510: e7a40010 */ swc1 $f4,0x10($sp) -/* f07c514: c7a80190 */ lwc1 $f8,0x190($sp) -/* f07c518: c7a40200 */ lwc1 $f4,0x200($sp) -/* f07c51c: 3c014170 */ lui $at,0x4170 -/* f07c520: 44818000 */ mtc1 $at,$f16 -/* f07c524: 46044032 */ c.eq.s $f8,$f4 -/* f07c528: 3c017f1a */ lui $at,0x7f1a -/* f07c52c: c43249ec */ lwc1 $f18,0x49ec($at) -/* f07c530: 45020021 */ bc1fl .NB0f07c5b8 -/* f07c534: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07c538: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07c53c: 3c0140a0 */ lui $at,0x40a0 -/* f07c540: 50400004 */ beqzl $v0,.NB0f07c554 -/* f07c544: 44811000 */ mtc1 $at,$f2 -/* f07c548: 10000003 */ beqz $zero,.NB0f07c558 -/* f07c54c: 46008086 */ mov.s $f2,$f16 -/* f07c550: 44811000 */ mtc1 $at,$f2 -.NB0f07c554: -/* f07c554: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c558: -/* f07c558: 46121002 */ mul.s $f0,$f2,$f18 -/* f07c55c: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07c560: 46000280 */ add.s $f10,$f0,$f0 -/* f07c564: 460a703e */ c.le.s $f14,$f10 -/* f07c568: 00000000 */ sll $zero,$zero,0x0 -/* f07c56c: 45020012 */ bc1fl .NB0f07c5b8 -/* f07c570: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07c574: 10400003 */ beqz $v0,.NB0f07c584 -/* f07c578: 3c0140a0 */ lui $at,0x40a0 -/* f07c57c: 10000003 */ beqz $zero,.NB0f07c58c -/* f07c580: 46008306 */ mov.s $f12,$f16 -.NB0f07c584: -/* f07c584: 44816000 */ mtc1 $at,$f12 -/* f07c588: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c58c: -/* f07c58c: 46126002 */ mul.s $f0,$f12,$f18 -/* f07c590: 46000007 */ neg.s $f0,$f0 -/* f07c594: 46000180 */ add.s $f6,$f0,$f0 -/* f07c598: 460e303e */ c.le.s $f6,$f14 -/* f07c59c: 00000000 */ sll $zero,$zero,0x0 -/* f07c5a0: 45020005 */ bc1fl .NB0f07c5b8 -/* f07c5a4: 8fa201f8 */ lw $v0,0x1f8($sp) -/* f07c5a8: 44807000 */ mtc1 $zero,$f14 -/* f07c5ac: 00000000 */ sll $zero,$zero,0x0 -/* f07c5b0: e7ae0184 */ swc1 $f14,0x184($sp) -/* f07c5b4: 8fa201f8 */ lw $v0,0x1f8($sp) -.NB0f07c5b8: -/* f07c5b8: 50400004 */ beqzl $v0,.NB0f07c5cc -/* f07c5bc: 3c0140a0 */ lui $at,0x40a0 -/* f07c5c0: 10000004 */ beqz $zero,.NB0f07c5d4 -/* f07c5c4: 46008386 */ mov.s $f14,$f16 -/* f07c5c8: 3c0140a0 */ lui $at,0x40a0 -.NB0f07c5cc: -/* f07c5cc: 44817000 */ mtc1 $at,$f14 -/* f07c5d0: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c5d4: -/* f07c5d4: 46127202 */ mul.s $f8,$f14,$f18 -/* f07c5d8: 50400004 */ beqzl $v0,.NB0f07c5ec -/* f07c5dc: 3c0140a0 */ lui $at,0x40a0 -/* f07c5e0: 10000004 */ beqz $zero,.NB0f07c5f4 -/* f07c5e4: 46008306 */ mov.s $f12,$f16 -/* f07c5e8: 3c0140a0 */ lui $at,0x40a0 -.NB0f07c5ec: -/* f07c5ec: 44816000 */ mtc1 $at,$f12 -/* f07c5f0: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c5f4: -/* f07c5f4: 46126002 */ mul.s $f0,$f12,$f18 -/* f07c5f8: 50400004 */ beqzl $v0,.NB0f07c60c -/* f07c5fc: 3c0140a0 */ lui $at,0x40a0 -/* f07c600: 10000004 */ beqz $zero,.NB0f07c614 -/* f07c604: 46008086 */ mov.s $f2,$f16 -/* f07c608: 3c0140a0 */ lui $at,0x40a0 -.NB0f07c60c: -/* f07c60c: 44811000 */ mtc1 $at,$f2 -/* f07c610: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c614: -/* f07c614: 3c017f1a */ lui $at,0x7f1a -/* f07c618: c42a49f0 */ lwc1 $f10,0x49f0($at) -/* f07c61c: 46000100 */ add.s $f4,$f0,$f0 -/* f07c620: 44074000 */ mfc1 $a3,$f8 -/* f07c624: 460a1182 */ mul.s $f6,$f2,$f10 -/* f07c628: 27a4018c */ addiu $a0,$sp,0x18c -/* f07c62c: e7a40010 */ swc1 $f4,0x10($sp) -/* f07c630: 8fa501fc */ lw $a1,0x1fc($sp) -/* f07c634: 27a60180 */ addiu $a2,$sp,0x180 -/* f07c638: 0fc1b359 */ jal applyRotation -/* f07c63c: e7a60014 */ swc1 $f6,0x14($sp) -/* f07c640: c7a8018c */ lwc1 $f8,0x18c($sp) -/* f07c644: c7a401fc */ lwc1 $f4,0x1fc($sp) -/* f07c648: 3c014170 */ lui $at,0x4170 -/* f07c64c: 44818000 */ mtc1 $at,$f16 -/* f07c650: 46044032 */ c.eq.s $f8,$f4 -/* f07c654: 3c017f1a */ lui $at,0x7f1a -/* f07c658: c43249f4 */ lwc1 $f18,0x49f4($at) -/* f07c65c: 45020022 */ bc1fl .NB0f07c6e8 -/* f07c660: 8e090008 */ lw $t1,0x8($s0) -/* f07c664: 8faa01f8 */ lw $t2,0x1f8($sp) -/* f07c668: 3c0140a0 */ lui $at,0x40a0 -/* f07c66c: 8fa801f8 */ lw $t0,0x1f8($sp) -/* f07c670: 51400004 */ beqzl $t2,.NB0f07c684 -/* f07c674: 44811000 */ mtc1 $at,$f2 -/* f07c678: 10000003 */ beqz $zero,.NB0f07c688 -/* f07c67c: 46008086 */ mov.s $f2,$f16 -/* f07c680: 44811000 */ mtc1 $at,$f2 -.NB0f07c684: -/* f07c684: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c688: -/* f07c688: 46121002 */ mul.s $f0,$f2,$f18 -/* f07c68c: c7ae0180 */ lwc1 $f14,0x180($sp) -/* f07c690: 46000280 */ add.s $f10,$f0,$f0 -/* f07c694: 460a703e */ c.le.s $f14,$f10 -/* f07c698: 00000000 */ sll $zero,$zero,0x0 -/* f07c69c: 45020012 */ bc1fl .NB0f07c6e8 -/* f07c6a0: 8e090008 */ lw $t1,0x8($s0) -/* f07c6a4: 11000003 */ beqz $t0,.NB0f07c6b4 -/* f07c6a8: 3c0140a0 */ lui $at,0x40a0 -/* f07c6ac: 10000003 */ beqz $zero,.NB0f07c6bc -/* f07c6b0: 46008306 */ mov.s $f12,$f16 -.NB0f07c6b4: -/* f07c6b4: 44816000 */ mtc1 $at,$f12 -/* f07c6b8: 00000000 */ sll $zero,$zero,0x0 -.NB0f07c6bc: -/* f07c6bc: 46126002 */ mul.s $f0,$f12,$f18 -/* f07c6c0: 46000007 */ neg.s $f0,$f0 -/* f07c6c4: 46000180 */ add.s $f6,$f0,$f0 -/* f07c6c8: 460e303e */ c.le.s $f6,$f14 -/* f07c6cc: 00000000 */ sll $zero,$zero,0x0 -/* f07c6d0: 45020005 */ bc1fl .NB0f07c6e8 -/* f07c6d4: 8e090008 */ lw $t1,0x8($s0) -/* f07c6d8: 44807000 */ mtc1 $zero,$f14 -/* f07c6dc: 00000000 */ sll $zero,$zero,0x0 -/* f07c6e0: e7ae0180 */ swc1 $f14,0x180($sp) -/* f07c6e4: 8e090008 */ lw $t1,0x8($s0) -.NB0f07c6e8: -/* f07c6e8: 44800000 */ mtc1 $zero,$f0 -/* f07c6ec: 00095800 */ sll $t3,$t1,0x0 -/* f07c6f0: 05630004 */ bgezl $t3,.NB0f07c704 -/* f07c6f4: c7ae0184 */ lwc1 $f14,0x184($sp) -/* f07c6f8: 1000000d */ beqz $zero,.NB0f07c730 -/* f07c6fc: e7a00188 */ swc1 $f0,0x188($sp) -/* f07c700: c7ae0184 */ lwc1 $f14,0x184($sp) -.NB0f07c704: -/* f07c704: 3c0142f0 */ lui $at,0x42f0 -/* f07c708: 44812000 */ mtc1 $at,$f4 -/* f07c70c: 46007207 */ neg.s $f8,$f14 -/* f07c710: c7a60188 */ lwc1 $f6,0x188($sp) -/* f07c714: 46044282 */ mul.s $f10,$f8,$f4 -/* f07c718: 3c017f1a */ lui $at,0x7f1a -/* f07c71c: c42449f8 */ lwc1 $f4,0x49f8($at) -/* f07c720: 46065201 */ sub.s $f8,$f10,$f6 -/* f07c724: 46044282 */ mul.s $f10,$f8,$f4 -/* f07c728: 460a3200 */ add.s $f8,$f6,$f10 -/* f07c72c: e7a80188 */ swc1 $f8,0x188($sp) -.NB0f07c730: -/* f07c730: 8fac01f8 */ lw $t4,0x1f8($sp) -/* f07c734: 11800006 */ beqz $t4,.NB0f07c750 -/* f07c738: 3c017f1a */ lui $at,0x7f1a -/* f07c73c: c42449fc */ lwc1 $f4,0x49fc($at) -/* f07c740: c7a6018c */ lwc1 $f6,0x18c($sp) -/* f07c744: 46062281 */ sub.s $f10,$f4,$f6 -/* f07c748: 10000002 */ beqz $zero,.NB0f07c754 -/* f07c74c: e7aa012c */ swc1 $f10,0x12c($sp) -.NB0f07c750: -/* f07c750: e7a0012c */ swc1 $f0,0x12c($sp) -.NB0f07c754: -/* f07c754: c7a40188 */ lwc1 $f4,0x188($sp) -/* f07c758: c7a80190 */ lwc1 $f8,0x190($sp) -/* f07c75c: e7a00134 */ swc1 $f0,0x134($sp) -/* f07c760: 4604003e */ c.le.s $f0,$f4 -/* f07c764: e7a80130 */ swc1 $f8,0x130($sp) -/* f07c768: 45000006 */ bc1f .NB0f07c784 -/* f07c76c: 00000000 */ sll $zero,$zero,0x0 -/* f07c770: 46002306 */ mov.s $f12,$f4 -/* f07c774: 0c005ce4 */ jal mtx4LoadZRotation -/* f07c778: 27a5006c */ addiu $a1,$sp,0x6c -/* f07c77c: 10000008 */ beqz $zero,.NB0f07c7a0 -/* f07c780: 27a4012c */ addiu $a0,$sp,0x12c -.NB0f07c784: -/* f07c784: 3c017f1a */ lui $at,0x7f1a -/* f07c788: c42a4a00 */ lwc1 $f10,0x4a00($at) -/* f07c78c: c7a60188 */ lwc1 $f6,0x188($sp) -/* f07c790: 27a5006c */ addiu $a1,$sp,0x6c -/* f07c794: 0c005ce4 */ jal mtx4LoadZRotation -/* f07c798: 460a3300 */ add.s $f12,$f6,$f10 -/* f07c79c: 27a4012c */ addiu $a0,$sp,0x12c -.NB0f07c7a0: -/* f07c7a0: 0c005d07 */ jal mtx4LoadRotation -/* f07c7a4: 27a500ac */ addiu $a1,$sp,0xac -/* f07c7a8: 8e0d0018 */ lw $t5,0x18($s0) -/* f07c7ac: 27a500ac */ addiu $a1,$sp,0xac -/* f07c7b0: 0c005b7d */ jal mtx00015f04 -/* f07c7b4: c5ac0014 */ lwc1 $f12,0x14($t5) -/* f07c7b8: 27a400ac */ addiu $a0,$sp,0xac -/* f07c7bc: 27a5006c */ addiu $a1,$sp,0x6c -/* f07c7c0: 0c005a3c */ jal mtx4MultMtx4 -/* f07c7c4: 27a600ec */ addiu $a2,$sp,0xec -/* f07c7c8: 27a400ec */ addiu $a0,$sp,0xec -/* f07c7cc: 0c005b24 */ jal mtx4ToMtx3 -/* f07c7d0: 27a5015c */ addiu $a1,$sp,0x15c -/* f07c7d4: 27a4015c */ addiu $a0,$sp,0x15c -/* f07c7d8: 0c005af2 */ jal mtx3Copy -/* f07c7dc: 2605001c */ addiu $a1,$s0,0x1c -/* f07c7e0: 0c006d52 */ jal cosf -/* f07c7e4: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07c7e8: e7a00138 */ swc1 $f0,0x138($sp) -/* f07c7ec: 0c006d55 */ jal sinf -/* f07c7f0: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07c7f4: c7a80138 */ lwc1 $f8,0x138($sp) -/* f07c7f8: 8fae01f8 */ lw $t6,0x1f8($sp) -/* f07c7fc: 46080102 */ mul.s $f4,$f0,$f8 -/* f07c800: 11c00005 */ beqz $t6,.NB0f07c818 -/* f07c804: e7a40194 */ swc1 $f4,0x194($sp) -/* f07c808: 0c006d55 */ jal sinf -/* f07c80c: c7ac01fc */ lwc1 $f12,0x1fc($sp) -/* f07c810: 10000004 */ beqz $zero,.NB0f07c824 -/* f07c814: e7a00198 */ swc1 $f0,0x198($sp) -.NB0f07c818: -/* f07c818: 0c006d55 */ jal sinf -/* f07c81c: c7ac018c */ lwc1 $f12,0x18c($sp) -/* f07c820: e7a00198 */ swc1 $f0,0x198($sp) -.NB0f07c824: -/* f07c824: 0c006d52 */ jal cosf -/* f07c828: c7ac0190 */ lwc1 $f12,0x190($sp) -/* f07c82c: c7a60138 */ lwc1 $f6,0x138($sp) -/* f07c830: 3c01800a */ lui $at,0x800a -/* f07c834: c422e70c */ lwc1 $f2,-0x18f4($at) -/* f07c838: 46060282 */ mul.s $f10,$f0,$f6 -/* f07c83c: c7a80194 */ lwc1 $f8,0x194($sp) -/* f07c840: 8faf0278 */ lw $t7,0x278($sp) -/* f07c844: 8fa40058 */ lw $a0,0x58($sp) -/* f07c848: 8fa50054 */ lw $a1,0x54($sp) -/* f07c84c: 27a60150 */ addiu $a2,$sp,0x150 -/* f07c850: 27a70140 */ addiu $a3,$sp,0x140 -/* f07c854: e7aa019c */ swc1 $f10,0x19c($sp) -/* f07c858: c6040064 */ lwc1 $f4,0x64($s0) -/* f07c85c: 46022182 */ mul.s $f6,$f4,$f2 -/* f07c860: c5e40008 */ lwc1 $f4,0x8($t7) -/* f07c864: 46064282 */ mul.s $f10,$f8,$f6 -/* f07c868: c7a60198 */ lwc1 $f6,0x198($sp) -/* f07c86c: 46045200 */ add.s $f8,$f10,$f4 -/* f07c870: e7a80150 */ swc1 $f8,0x150($sp) -/* f07c874: c60a0064 */ lwc1 $f10,0x64($s0) -/* f07c878: 46025102 */ mul.s $f4,$f10,$f2 -/* f07c87c: c5ea000c */ lwc1 $f10,0xc($t7) -/* f07c880: 46043202 */ mul.s $f8,$f6,$f4 -/* f07c884: c7a4019c */ lwc1 $f4,0x19c($sp) -/* f07c888: 460a4180 */ add.s $f6,$f8,$f10 -/* f07c88c: e7a60154 */ swc1 $f6,0x154($sp) -/* f07c890: c6080064 */ lwc1 $f8,0x64($s0) -/* f07c894: 46024282 */ mul.s $f10,$f8,$f2 -/* f07c898: c5e80010 */ lwc1 $f8,0x10($t7) -/* f07c89c: 460a2182 */ mul.s $f6,$f4,$f10 -/* f07c8a0: 46083100 */ add.s $f4,$f6,$f8 -/* f07c8a4: 0fc19437 */ jal func0f065e74 -/* f07c8a8: e7a40158 */ swc1 $f4,0x158($sp) -/* f07c8ac: 8fb801f8 */ lw $t8,0x1f8($sp) -/* f07c8b0: 27a40150 */ addiu $a0,$sp,0x150 -/* f07c8b4: 3c0540a0 */ lui $a1,0x40a0 -/* f07c8b8: 13000009 */ beqz $t8,.NB0f07c8e0 -/* f07c8bc: 27a60140 */ addiu $a2,$sp,0x140 -/* f07c8c0: 00003825 */ or $a3,$zero,$zero -/* f07c8c4: 0c00adde */ jal cdFindGroundYSimple -/* f07c8c8: afa00010 */ sw $zero,0x10($sp) -/* f07c8cc: 3c01420c */ lui $at,0x420c -/* f07c8d0: 44815000 */ mtc1 $at,$f10 -/* f07c8d4: 00000000 */ sll $zero,$zero,0x0 -/* f07c8d8: 460a0180 */ add.s $f6,$f0,$f10 -/* f07c8dc: e7a60154 */ swc1 $f6,0x154($sp) -.NB0f07c8e0: -/* f07c8e0: c7a80150 */ lwc1 $f8,0x150($sp) -/* f07c8e4: 8fa40278 */ lw $a0,0x278($sp) -/* f07c8e8: e4880008 */ swc1 $f8,0x8($a0) -/* f07c8ec: c7a40154 */ lwc1 $f4,0x154($sp) -/* f07c8f0: e484000c */ swc1 $f4,0xc($a0) -/* f07c8f4: c7aa0158 */ lwc1 $f10,0x158($sp) -/* f07c8f8: 0fc193ab */ jal propDeregisterRooms -/* f07c8fc: e48a0010 */ swc1 $f10,0x10($a0) -/* f07c900: 27a40140 */ addiu $a0,$sp,0x140 -/* f07c904: 0fc19283 */ jal roomsCopy -/* f07c908: 8fa50054 */ lw $a1,0x54($sp) -/* f07c90c: c7a60190 */ lwc1 $f6,0x190($sp) -/* f07c910: 8e020088 */ lw $v0,0x88($s0) -/* f07c914: e606007c */ swc1 $f6,0x7c($s0) -/* f07c918: c7a8018c */ lwc1 $f8,0x18c($sp) -/* f07c91c: e6080080 */ swc1 $f8,0x80($s0) -/* f07c920: c7a40188 */ lwc1 $f4,0x188($sp) -/* f07c924: e6040084 */ swc1 $f4,0x84($s0) -/* f07c928: c7aa0184 */ lwc1 $f10,0x184($sp) -/* f07c92c: e60a0070 */ swc1 $f10,0x70($s0) -/* f07c930: c7a60180 */ lwc1 $f6,0x180($sp) -/* f07c934: 10400024 */ beqz $v0,.NB0f07c9c8 -/* f07c938: e6060074 */ swc1 $f6,0x74($s0) -/* f07c93c: 8e08008c */ lw $t0,0x8c($s0) -/* f07c940: 8c4a0000 */ lw $t2,0x0($v0) -/* f07c944: c7a401f4 */ lwc1 $f4,0x1f4($sp) -/* f07c948: 00084880 */ sll $t1,$t0,0x2 -/* f07c94c: 01495821 */ addu $t3,$t2,$t1 -/* f07c950: 8d6c0004 */ lw $t4,0x4($t3) -/* f07c954: c7a801f4 */ lwc1 $f8,0x1f4($sp) -/* f07c958: 05820010 */ bltzl $t4,.NB0f07c99c -/* f07c95c: c6060064 */ lwc1 $f6,0x64($s0) -/* f07c960: c6080064 */ lwc1 $f8,0x64($s0) -/* f07c964: 8fa40058 */ lw $a0,0x58($sp) -/* f07c968: 27a50150 */ addiu $a1,$sp,0x150 -/* f07c96c: 46044282 */ mul.s $f10,$f8,$f4 -/* f07c970: 27a60214 */ addiu $a2,$sp,0x214 -/* f07c974: 44075000 */ mfc1 $a3,$f10 -/* f07c978: 0fc10fab */ jal posIsArrivingLaterallyAtPos -/* f07c97c: 00000000 */ sll $zero,$zero,0x0 -/* f07c980: 50400012 */ beqzl $v0,.NB0f07c9cc -/* f07c984: 02002025 */ or $a0,$s0,$zero -/* f07c988: 0fc1c542 */ jal hovercarIncrementStep -/* f07c98c: 02002025 */ or $a0,$s0,$zero -/* f07c990: 1000000e */ beqz $zero,.NB0f07c9cc -/* f07c994: 02002025 */ or $a0,$s0,$zero -/* f07c998: c6060064 */ lwc1 $f6,0x64($s0) -.NB0f07c99c: -/* f07c99c: 8fa40058 */ lw $a0,0x58($sp) -/* f07c9a0: 27a50150 */ addiu $a1,$sp,0x150 -/* f07c9a4: 46083102 */ mul.s $f4,$f6,$f8 -/* f07c9a8: 27a60214 */ addiu $a2,$sp,0x214 -/* f07c9ac: 44072000 */ mfc1 $a3,$f4 -/* f07c9b0: 0fc10fab */ jal posIsArrivingLaterallyAtPos -/* f07c9b4: 00000000 */ sll $zero,$zero,0x0 -/* f07c9b8: 50400004 */ beqzl $v0,.NB0f07c9cc -/* f07c9bc: 02002025 */ or $a0,$s0,$zero -/* f07c9c0: 0fc1c542 */ jal hovercarIncrementStep -/* f07c9c4: 02002025 */ or $a0,$s0,$zero -.NB0f07c9c8: -/* f07c9c8: 02002025 */ or $a0,$s0,$zero -.NB0f07c9cc: -/* f07c9cc: 00002825 */ or $a1,$zero,$zero -/* f07c9d0: 0fc1a3b7 */ jal func0f069c70 -/* f07c9d4: 24060001 */ addiu $a2,$zero,0x1 -.NB0f07c9d8: -/* f07c9d8: 8fbf004c */ lw $ra,0x4c($sp) -.NB0f07c9dc: -/* f07c9dc: 8fb00048 */ lw $s0,0x48($sp) -/* f07c9e0: 27bd0278 */ addiu $sp,$sp,0x278 -/* f07c9e4: 03e00008 */ jr $ra -/* f07c9e8: 00000000 */ sll $zero,$zero,0x0 -); + if (hovercar->speed != 0.0f) #endif + { + sp190 = hovercar->roty; + sp18c = hovercar->rotx; + sp188 = hovercar->rotz; -//#define HOVVALUE() (active ? 15.0f : 5.0f) + sp184 = hovercar->turnyspeed60; + sp180 = hovercar->turnxspeed60; -// Mismatch: float regalloc -//void hovercarTick(struct prop *prop) -//{ -// s32 stopping; // 274 -// struct pad pad; // 220 -// struct coord sp214; -// s16 sp210[2]; -// struct hovercarobj *hovercar = (struct hovercarobj *)prop->obj; -// struct defaultobj *obj = &hovercar->base; -// u32 stack; -// f32 sp200 = hovercar->roty; -// f32 sp1fc = hovercar->rotx; -// u32 active = obj->flags & OBJFLAG_80000000; // 1f8 -// f32 sp1f4 = active ? 5 : 10; -// struct prop *doorprop; // 1f0 -// struct coord sp1e4; -// struct coord sp1d8; -// s16 sp1d6; -// u32 stack2; -// u32 stack3; -// struct coord sp1c0; // 1c0 -// s16 sp1b0[8]; // 1b0 -// f32 tmp2; -// f32 tmp3; -// f32 tmp4; -// struct doorobj *door; // 1a0 -// struct coord sp194; -// f32 sp190; -// f32 sp18c; -// f32 sp188; -// f32 sp184; -// f32 sp180; -// f32 sp15c[9]; -// struct coord sp150; -// s16 sp140[8]; -// f32 tmp; -// f32 sp138; -// struct coord sp12c; -// Mtxf spec; -// Mtxf spac; -// Mtxf sp6c; -// f32 dist; -// s32 *padnum; -// -// doorprop = NULL; -// -// // 23c -// if (active && hovercar->deadtimer60 < 0) { -// // Exploding -// tmp = objGetLocalYMin(modelFindBboxRodata(hovercar->base.model)); -// sp1d6 = prop->rooms[0]; -// -// sp1d8.x = hovercar->base.realrot[3]; -// sp1d8.y = hovercar->base.realrot[4]; -// sp1d8.z = hovercar->base.realrot[5]; -// -// sp1e4.x = hovercar->base.realrot[3] * tmp + prop->pos.x; -// sp1e4.y = hovercar->base.realrot[4] * tmp + prop->pos.y; -// sp1e4.z = hovercar->base.realrot[5] * tmp + prop->pos.z; -// -// func0f0926bc(prop, 1, 0xffff); -// explosionCreate(NULL, &prop->pos, prop->rooms, EXPLOSIONTYPE_7, g_Vars.currentplayernum, true, &sp1e4, sp1d6, &sp1d8); -// hovercar->base.hidden |= OBJHFLAG_REAPABLE; -// return; -// } -// -// // 320 -// if (hovercar->dead) { -// // 334 -// if (active) { -// hovercar->deadtimer60 -= g_Vars.lvupdate240_60; -// hovercar->sparkstimer60 -= g_Vars.lvupdate240_60; -// -// if (hovercar->sparkstimer60 < 0) { -// hovercar->sparkstimer60 = 50; -// -// // Play damage sound -// propsnd0f0939f8(NULL, prop, SFX_SHIELD_DAMAGE, -1, -// -1, 1024, 0, 0, 0, -1, 0, -1, -1, -1, -1); -// -// // Create sparks -// sparksCreate(prop->rooms[0], prop, &prop->pos, NULL, 0, SPARKTYPE_DEFAULT); -// } -// } else { -// // 3e8 -// if (hovercar->speedtime60 == 0) { -// // 404 -// hovercar->speed += 6; -// -// sp1c0.x = prop->pos.x; -// sp1c0.y = prop->pos.y - hovercar->speed; -// sp1c0.z = prop->pos.z; -// -// if (sp1c0.y < hovercar->speedaim) { -// sp1c0.y = hovercar->speedaim; -// hovercar->speedtime60 = 1; -// } -// -// func0f065e74(&prop->pos, prop->rooms, &sp1c0, sp1b0); -// -// prop->pos.x = sp1c0.x; -// prop->pos.y = sp1c0.y; -// prop->pos.z = sp1c0.z; -// -// propDeregisterRooms(prop); -// roomsCopy(sp1b0, prop->rooms); -// func0f069c70(&hovercar->base, false, true); -// } -// } -// -// return; -// } -// -// // 4bc -// chraiExecute(obj, PROPTYPE_OBJ); -// stopping = false; -// -// if (hovercar->path) { -// padnum = &hovercar->path->pads[hovercar->nextstep]; -// padUnpack(*padnum, PADFIELD_POS | PADFIELD_ROOM, &pad); -// -// sp214.x = pad.pos.x; -// -// if (active) { -// sp210[0] = pad.room; -// sp210[1] = -1; -// -// sp214.y = cdFindGroundYSimple(&pad.pos, 5, sp210, NULL, NULL) + 35; -// } else { -// sp214.y = pad.pos.y; -// } -// -// sp214.z = pad.pos.z; -// -// if ((hovercar->base.flags & OBJFLAG_20000000) -// && posIsArrivingLaterallyAtPos(&prop->pos, &prop->pos, &sp214, sp1f4)) { -// hovercarIncrementStep(hovercar); -// padnum = &hovercar->path->pads[hovercar->nextstep]; -// padUnpack(*padnum, PADFIELD_POS, &pad); -// } -// -// sp200 = atan2f(sp214.x - prop->pos.x, sp214.z - prop->pos.z); -// sp1fc = atan2f(sp214.y - prop->pos.y, -// sqrtf((sp214.x - prop->pos.x) * (sp214.x - prop->pos.x) + (sp214.z - prop->pos.z) * (sp214.z - prop->pos.z))); -// -// // 630 -// if (hovercar->base.flags & OBJFLAG_20000000) { -// hovercar->roty = sp200; -// hovercar->rotx = sp1fc; -// obj->flags &= ~OBJFLAG_20000000; -// -// if (active) { -// prop->pos.y = sp214.y; -// } -// } -// -// if (active) { -// if (cd0002d7c0(&prop->pos, prop->rooms, &sp214, 0x5000, 0, 0, 0) == 0) { -// doorprop = cdGetObstacle(); -// } -// -// if (doorprop) { -// door = (struct doorobj *)doorprop->obj; -// dist = (doorprop->pos.x - prop->pos.x) * (doorprop->pos.x - prop->pos.x) -// + (doorprop->pos.z - prop->pos.z) * (doorprop->pos.z - prop->pos.z); -// -// if (dist < 200 * 200) { -// doorsChooseSwingDirection(prop, door); -// doorsRequestMode(door, DOORMODE_OPENING); -// } -// -// if (dist < 195 * 195) { -// stopping = !doorIsOpen(door); -// } -// } -// } -// } else { -// // 750 -// if (hovercar->base.flags & OBJFLAG_20000000) { -// hovercar->roty = atan2f(hovercar->base.realrot[6], hovercar->base.realrot[8]); -// hovercar->rotx = atan2f(hovercar->base.realrot[7], sqrtf(hovercar->base.realrot[8] * hovercar->base.realrot[8] + hovercar->base.realrot[6] * hovercar->base.realrot[6])); -// hovercar->base.flags &= ~OBJFLAG_20000000; -// } -// } -// -// // 7ac -// // @bug: To calculate the speed correctly, the code needs to iterate the -// // lvupdate multiplier, then adjust the speed and test for reaching the -// // speedaim within each iteration. Or at least test for exceeding the -// // speedaim after updating it. With the below implementation, a lag frame -// // during acceleration can cause the hovercar to exceed its max speed. -// if (hovercar->speedtime60 >= 0) { -// if (hovercar->speedtime60 <= g_Vars.lvupdate240freal) { -// hovercar->speed = hovercar->speedaim; -// } else { -// hovercar->speed += (hovercar->speedaim - hovercar->speed) * g_Vars.lvupdate240freal / hovercar->speedtime60; -// } -// -// hovercar->speedtime60 -= g_Vars.lvupdate240freal; -// } -// -// // 818 -// if (active) { -// if (hovercar->turnyspeed60 > 0) { -// hovercar->speed -= hovercar->speedaim * (1.0f / 24.0f) * g_Vars.lvupdate240f; -// -// if (hovercar->speed < 0) { -// hovercar->speed = 0.1f; -// } -// } else { -// if (hovercar->speed < hovercar->speedaim) { -// hovercar->speed += hovercar->speedaim * (1.0f / 24.0f) * g_Vars.lvupdate240f; -// } -// } -// -// if (stopping) { -// hovercar->speed -= 50.0f / 240.f * g_Vars.lvupdate240f; -// -// if (hovercar->speed < 0) { -// hovercar->speed = 0; -// } -// } -// } -// -// // 900 -// if (hovercar->speed > 0) { -// sp190 = hovercar->roty; -// sp18c = hovercar->rotx; -// sp188 = hovercar->rotz; -// -// sp184 = hovercar->turnyspeed60; -// sp180 = hovercar->turnxspeed60; -// -// // 94c -// sp194.x = sinf(hovercar->roty) * cosf(hovercar->rotx); -// sp194.y = sinf(hovercar->rotx); -// sp194.z = cosf(hovercar->rotx) * cosf(hovercar->roty); -// -// if (posIsMovingTowardsPosOrStoppedInRange(&prop->pos, &sp194, &sp214, sp1f4)) { -// sp200 = hovercar->roty; -// sp1fc = hovercar->rotx; -// } -// -// // 9c8 -// // The multipliers below: -// // val * 0.013087885454297f = val * M_BADPI / 240 -// // val * 0.00021813141938765f = val * M_BADPI / 240 / 60 -// tmp2 = HOVVALUE(); -// tmp3 = HOVVALUE(); -// tmp4 = HOVVALUE(); -// applyRotation(&sp190, sp200, &sp184, -// tmp2 * 0.00021813141938765f, -// tmp3 * 0.00021813141938765f + tmp3 * 0.00021813141938765f, -// tmp4 * 0.013087885454297f); -// -// // a64 -// if (sp190 == sp200) { -// tmp2 = HOVVALUE() * 0.00021813141938765f; -// if (tmp2 + tmp2 >= sp184) { -// tmp2 = -(HOVVALUE() * 0.00021813141938765f); -// if (tmp2 + tmp2 <= sp184) { -// sp184 = 0; -// } -// } -// } -// -// // b04 -// tmp2 = HOVVALUE(); -// tmp3 = HOVVALUE(); -// tmp4 = HOVVALUE(); -// applyRotation(&sp18c, sp1fc, &sp180, -// tmp2 * 0.00021813141938765f, -// tmp3 * 0.00021813141938765f + tmp3 * 0.00021813141938765f, -// tmp4 * 0.013087885454297f); -// -// // b90 -// if (sp18c == sp1fc) { -// tmp2 = HOVVALUE() * 0.00021813141938765f; -// if (tmp2 + tmp2 >= sp180) { -// tmp2 = -(HOVVALUE() * 0.00021813141938765f); -// if (tmp2 + tmp2 <= sp180) { -// sp180 = 0; -// } -// } -// } -// -// // c34 -// if (hovercar->base.flags & OBJFLAG_80000000) { -// sp188 = 0; -// } else { -// sp188 += (-sp184 * 120 - sp188) * 0.1f; -// } -// -// // c84 -// sp12c.x = active ? M_BADTAU - sp18c : 0; -// sp12c.y = sp190; -// sp12c.z = 0; -// -// // cb4 -// if (sp188 >= 0) { -// mtx4LoadZRotation(sp188, &sp6c); -// } else { -// mtx4LoadZRotation(sp188 + M_BADTAU, &sp6c); -// } -// -// // cf0 -// mtx4LoadRotation(&sp12c, &spac); -// mtx00015f04(hovercar->base.model->scale, &spac); -// mtx4MultMtx4(&spac, &sp6c, &spec); -// mtx4ToMtx3(&spec, sp15c); -// mtx3Copy(sp15c, hovercar->base.realrot); -// -// sp138 = cosf(sp18c); -// -// // d50 -// sp194.x = sinf(sp190) * sp138; -// sp194.y = active ? sinf(sp1fc) : sinf(sp18c); -// sp194.z = cosf(sp190) * sp138; -// -// sp150.x = prop->pos.f[0] + sp194.f[0] * (hovercar->speed * g_Vars.lvupdate240freal); -// sp150.y = prop->pos.f[1] + sp194.f[1] * (hovercar->speed * g_Vars.lvupdate240freal); -// sp150.z = prop->pos.f[2] + sp194.f[2] * (hovercar->speed * g_Vars.lvupdate240freal); -// -// func0f065e74(&prop->pos, prop->rooms, &sp150, sp140); -// -// // e08 -// if (active) { -// sp150.y = cdFindGroundYSimple(&sp150, 5, sp140, NULL, NULL) + 35; -// -// if (sp150.y < -100000) { -// sp150.y = prop->pos.f[1] + sp194.f[1] * (hovercar->speed * g_Vars.lvupdate240freal); -// } -// } -// -// // e68 -// prop->pos.x = sp150.x; -// prop->pos.y = sp150.y; -// prop->pos.z = sp150.z; -// -// propDeregisterRooms(prop); -// roomsCopy(sp140, prop->rooms); -// -// hovercar->roty = sp190; -// hovercar->rotx = sp18c; -// hovercar->rotz = sp188; -// hovercar->turnyspeed60 = sp184; -// hovercar->turnxspeed60 = sp180; -// -// if (hovercar->path) { -// if (hovercar->path->pads[hovercar->nextstep + 1] >= 0) { -// if (posIsArrivingLaterallyAtPos(&prop->pos, &sp150, &sp214, hovercar->speed * sp1f4)) { -// hovercarIncrementStep(hovercar); -// } -// } else { -// if (posIsArrivingLaterallyAtPos(&prop->pos, &sp150, &sp214, hovercar->speed * sp1f4)) { -// hovercarIncrementStep(hovercar); -// } -// } -// } -// -// func0f069c70(&hovercar->base, false, true); -// } -//} + sp194.x = sinf(hovercar->roty) * cosf(hovercar->rotx); + sp194.y = sinf(hovercar->rotx); + sp194.z = cosf(hovercar->roty) * cosf(hovercar->rotx); + + if (posIsMovingTowardsPosOrStoppedInRange(&prop->pos, &sp194, &sp214, sp1f4)) { + sp200 = hovercar->roty; + sp1fc = hovercar->rotx; + } + + applyRotation(&sp190, sp200, &sp184, HOVVALUE1(), HOVVALUE1() * 2.0f, HOVVALUE2()); + + if (sp190 == sp200 && HOVVALUE1() * 2.0f >= sp184 && -HOVVALUE1() * 2.0f <= sp184) { + sp184 = 0; + } + + applyRotation(&sp18c, sp1fc, &sp180, HOVVALUE1(), HOVVALUE1() * 2.0f, HOVVALUE2()); + + if (sp18c == sp1fc && HOVVALUE1() * 2.0f >= sp180 && -HOVVALUE1() * 2.0f <= sp180) { + sp180 = 0; + } + + if (hovercar->base.flags & OBJFLAG_80000000) { + sp188 = 0; + } else { + sp188 += (-sp184 * 120 - sp188) * 0.1f; + } + + sp12c.x = active ? M_BADTAU - sp18c : 0; + sp12c.y = sp190; + sp12c.z = 0; + + if (sp188 >= 0) { + mtx4LoadZRotation(sp188, &sp6c); + } else { + mtx4LoadZRotation(sp188 + M_BADTAU, &sp6c); + } + + mtx4LoadRotation(&sp12c, &spac); + mtx00015f04(hovercar->base.model->scale, &spac); + mtx4MultMtx4(&spac, &sp6c, &spec); + mtx4ToMtx3(&spec, sp15c); + mtx3Copy(sp15c, hovercar->base.realrot); + + sp138 = cosf(sp18c); + + sp194.x = sinf(sp190) * sp138; + sp194.y = active ? sinf(sp1fc) : sinf(sp18c); + sp194.z = cosf(sp190) * sp138; + + sp150.x = prop->pos.x + sp194.f[0] * (hovercar->speed * g_Vars.lvupdate240freal); + sp150.y = prop->pos.y + sp194.f[1] * (hovercar->speed * g_Vars.lvupdate240freal); + sp150.z = prop->pos.z + sp194.f[2] * (hovercar->speed * g_Vars.lvupdate240freal); + + func0f065e74(&prop->pos, prop->rooms, &sp150, sp140); + + if (active) { + sp150.y = cdFindGroundYSimple(&sp150, 5, sp140, NULL, NULL) + 35; + +#if VERSION >= VERSION_NTSC_1_0 + if (sp150.y < -100000) { + sp150.y = prop->pos.y + sp194.f[1] * (hovercar->speed * g_Vars.lvupdate240freal); + } +#endif + } + + prop->pos.x = sp150.x; + prop->pos.y = sp150.y; + prop->pos.z = sp150.z; + + propDeregisterRooms(prop); + roomsCopy(sp140, prop->rooms); + + hovercar->roty = sp190; + hovercar->rotx = sp18c; + hovercar->rotz = sp188; + hovercar->turnyspeed60 = sp184; + hovercar->turnxspeed60 = sp180; + + if (hovercar->path) { + if (hovercar->path->pads[hovercar->nextstep + 1] >= 0) { + if (posIsArrivingLaterallyAtPos(&prop->pos, &sp150, &sp214, hovercar->speed * sp1f4)) { + hovercarIncrementStep(hovercar); + } + } else { + if (posIsArrivingLaterallyAtPos(&prop->pos, &sp150, &sp214, hovercar->speed * sp1f4)) { + hovercarIncrementStep(hovercar); + } + } + } + + func0f069c70(&hovercar->base, false, true); + } +} void hoverpropTick(struct prop *prop, bool arg1) {