diff --git a/include/common_structs.h b/include/common_structs.h index d028e5981a..4dd64c8565 100644 --- a/include/common_structs.h +++ b/include/common_structs.h @@ -777,8 +777,8 @@ typedef struct Camera { /* 0x084 */ Vec3f trueRotation; /* 0x090 */ f32 currentBlendedYawNegated; /* 0x094 */ f32 currentPitch; - /* 0x098 */ s32 unk_98; - /* 0x09C */ s32 unk_9C; + /* 0x098 */ f32 unk_98; + /* 0x09C */ f32 unk_9C; /* 0x0A0 */ Vp vp; /* 0x0B0 */ Vp vpAlt; /* 0x0C0 */ s32 unk_C0; diff --git a/src/9d10_len_1080.c b/src/9d10_len_1080.c index 3b466156d0..8d95652c04 100644 --- a/src/9d10_len_1080.c +++ b/src/9d10_len_1080.c @@ -1,7 +1,108 @@ #include "common.h" #include "camera.h" -INCLUDE_ASM(void, "9d10_len_1080", update_camera_mode_4, Camera* camera); +void update_camera_mode_4(Camera* camera) { + f32 sinBoom; + f32 cosBoom; + f32 deltaX; + f32 deltaY; + f32 deltaZ; + f32 deltaX2; + f32 deltaY2; + f32 deltaZ2; + f32 boomYaw; + f32 boomLength; + f32 f0; + f32 f4; + f32 new_var; + + f0 = camera->targetPos.x; + deltaX = camera->auxPitch; + if (f0 > deltaX) { + f0 = deltaX; + } + if (f0 < -deltaX) { + f0 = -deltaX; + } + camera->lookAt_obj_target.x = f0; + f4 = camera->targetPos.z; + deltaZ = camera->auxBoomLength; + if (f4 > deltaZ) { + f4 = deltaZ; + } + if (f4 < -deltaZ) { + f4 = -deltaZ; + } + camera->lookAt_obj_target.z = f4; + camera->unk_70 = 0.0f; + camera->currentBoomYaw = 0.0f; + camera->trueRotation.x = camera->unk_70; + camera->currentBoomLength = camera->lookAt_dist * D_8009A5EC; + camera->currentYOffset = camera->auxBoomPitch * D_8009A5EC; + if (camera->unk_06 != 0) { + camera->unk_06 = 0; + camera->unk_98 = 0.0f; + camera->unk_9C = 0.0f; + camera->lookAt_obj.x = camera->lookAt_obj_target.x; + camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->currentYOffset; + camera->lookAt_obj.z = camera->lookAt_obj_target.z; + boomYaw = DEG_TO_RAD(camera->currentBoomYaw); + sinBoom = sin_rad(boomYaw); + cosBoom = cos_rad(boomYaw); + deltaX = 0.0f; + deltaY = 0.0f; + deltaZ = camera->currentBoomLength; + deltaX2 = deltaX; + deltaY2 = deltaY; + boomYaw = deltaX = -deltaY2; + deltaZ2 = deltaZ; + new_var = boomYaw; + deltaX = deltaX2; + deltaY = cosBoom * deltaY2 + deltaZ2 * sinBoom; + deltaZ = sinBoom * new_var + deltaZ2 * cosBoom; + boomYaw = DEG_TO_RAD(camera->unk_70); + sinBoom = sin_rad(boomYaw); + cosBoom = cos_rad(boomYaw); + deltaX2 = cosBoom * deltaX - deltaZ * sinBoom; + deltaY2 = deltaY; + deltaZ2 = sinBoom * deltaX + deltaZ * cosBoom; + camera->lookAt_eye.x = camera->lookAt_obj.x + deltaX2; + camera->lookAt_eye.y = camera->lookAt_obj.y + deltaY2; + camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ2; + } + camera->lookAt_obj.x = camera->lookAt_obj_target.x; + camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->currentYOffset; + camera->lookAt_obj.z = camera->lookAt_obj_target.z; + boomYaw = DEG_TO_RAD(camera->currentBoomYaw); + sinBoom = sin_rad(boomYaw); + cosBoom = cos_rad(boomYaw); + deltaX = 0.0f; + deltaY = 0.0f; + deltaZ = camera->currentBoomLength; + deltaX2 = deltaX; + deltaY2 = deltaY; + boomYaw = deltaX = -deltaY2; + deltaZ2 = deltaZ; + new_var = boomYaw; + deltaX = deltaX2; + deltaY = cosBoom * deltaY2 + deltaZ2 * sinBoom; + deltaZ = sinBoom * new_var + deltaZ2 * cosBoom; + boomYaw = DEG_TO_RAD(camera->unk_70); + sinBoom = sin_rad(boomYaw); + cosBoom = cos_rad(boomYaw); + deltaX2 = cosBoom * deltaX - deltaZ * sinBoom; + deltaY2 = deltaY; + deltaZ2 = sinBoom * deltaX + deltaZ * cosBoom; + camera->lookAt_eye.x = camera->lookAt_obj.x + deltaX2; + camera->lookAt_eye.y = camera->lookAt_obj.y + deltaY2; + camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ2; + camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z); + deltaX = camera->lookAt_obj.x - camera->lookAt_eye.x; + deltaY = camera->lookAt_obj.y - camera->lookAt_eye.y; + deltaZ = camera->lookAt_obj.z - camera->lookAt_eye.z; + camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ); + camera->currentPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ))); +} INCLUDE_ASM(void, "9d10_len_1080", update_camera_mode_2, Camera* camera); diff --git a/src/ad90_len_2880.c b/src/ad90_len_2880.c index 5b0012b725..b0dae11485 100644 --- a/src/ad90_len_2880.c +++ b/src/ad90_len_2880.c @@ -1,23 +1,21 @@ #include "common.h" void update_camera_mode_6(Camera* camera); -// types, floats, and other shtuff -#ifdef NON_EQUIVALENT void update_camera_mode_6(Camera* camera) { - f32 xDiff, yDiff, zDiff; + f32 sinBoom; + f32 cosBoom; + f32 deltaX; + f32 deltaY; + f32 deltaZ; + f32 deltaX2; + f32 deltaY2; + f32 deltaZ2; f32 boomYaw; - f32 sinBoomYaw; - f32 cosBoomYaw; - f32 trueRotX; - f32 sinRotX; - f32 cosRotX; - f32 temp_f24_2; - f32 temp_f30; - s32 var_v1; + f32 new_var; - if (camera->unk_06 != 0 || camera->changingMap) { + if (camera->unk_06 != 0 || camera->isChangingMap) { camera->unk_06 = 0; - camera->changingMap = 0; + camera->isChangingMap = FALSE; camera->auxPitch = 0; camera->auxBoomLength = 100; camera->lookAt_dist = 100; @@ -31,41 +29,46 @@ void update_camera_mode_6(Camera* camera) { camera->lookAt_obj.y = camera->lookAt_obj_target.y; camera->lookAt_obj.z = camera->lookAt_obj_target.z; } - - if (camera->auxPitch == 0) { - var_v1 = 10000 / camera->lookAt_dist; + if (camera->auxPitch == 0) { + camera->lookAt_obj.x = camera->lookAt_obj_target.x + camera->targetPos.x; + camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->targetPos.y + camera->auxBoomZOffset * 0.00390625; + camera->lookAt_obj.z = camera->lookAt_obj_target.z + camera->targetPos.z; camera->trueRotation.x = camera->auxBoomYaw; camera->currentBoomYaw = camera->auxBoomPitch; camera->currentBoomLength = camera->auxBoomLength; - camera->lookAt_obj.x = camera->lookAt_obj_target.x + camera->targetPos.x; - camera->lookAt_obj.y = (camera->lookAt_obj_target.y + camera->targetPos.y) + (camera->auxBoomZOffset * 0.00390625); - camera->lookAt_obj.z = camera->lookAt_obj_target.z + camera->targetPos.z; - if (var_v1 < 0) { - var_v1 += 3; - } - camera->vfov = (var_v1 >> 2); + camera->vfov = (10000 / camera->lookAt_dist) / 4; boomYaw = DEG_TO_RAD(camera->currentBoomYaw); - sinBoomYaw = sin_rad(boomYaw); - cosBoomYaw = cos_rad(boomYaw); - temp_f30 = (cosBoomYaw * 0.0f) + (camera->currentBoomLength * sinBoomYaw); - temp_f24_2 = (sinBoomYaw * -0.0f) + (camera->currentBoomLength * cosBoomYaw); - trueRotX = DEG_TO_RAD(camera->trueRotation.x); - sinRotX = sin_rad(trueRotX); - cosRotX = cos_rad(trueRotX); - camera->lookAt_eye.x = camera->lookAt_obj.x + ((cosRotX * 0.0f) - (temp_f24_2 * sinRotX)); - camera->lookAt_eye.y = camera->lookAt_obj.y + temp_f30; - camera->lookAt_eye.z = camera->lookAt_obj.z + ((sinRotX * 0.0f) + (temp_f24_2 * cosRotX)); + sinBoom = sin_rad(boomYaw); + cosBoom = cos_rad(boomYaw); + deltaX = 0.0f; + deltaY = 0.0f; + deltaZ = camera->currentBoomLength; + deltaX2 = deltaX; + deltaY2 = deltaY; + boomYaw = deltaX = -deltaY2; + deltaZ2 = deltaZ; + new_var = boomYaw; + deltaX = deltaX2; + deltaY = cosBoom * deltaY2 + deltaZ2 * sinBoom; + deltaZ = sinBoom * new_var + deltaZ2 * cosBoom; + boomYaw = DEG_TO_RAD(camera->trueRotation.x); + sinBoom = sin_rad(boomYaw); + cosBoom = cos_rad(boomYaw); + deltaZ2 = cosBoom * deltaX - deltaZ * sinBoom; + deltaX2 = cosBoom * deltaX - deltaZ * sinBoom; + deltaY2 = deltaY; + deltaZ2 = sinBoom * deltaX + deltaZ * cosBoom; + camera->lookAt_eye.x = camera->lookAt_obj.x + deltaX2; + camera->lookAt_eye.y = camera->lookAt_obj.y + deltaY2; + camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ2; } camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z); - xDiff = camera->lookAt_obj.x - camera->lookAt_eye.x; - yDiff = camera->lookAt_obj.y - camera->lookAt_eye.y; - zDiff = camera->lookAt_obj.z - camera->lookAt_eye.z; - camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, xDiff, zDiff); - camera->currentPitch = atan2(0.0f, 0.0f, yDiff, -sqrtf((xDiff * xDiff) + (zDiff * zDiff))); + deltaX = camera->lookAt_obj.x - camera->lookAt_eye.x; + deltaY = camera->lookAt_obj.y - camera->lookAt_eye.y; + deltaZ = camera->lookAt_obj.z - camera->lookAt_eye.z; + camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ); + camera->currentPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ))); gBattleStatus.camLookatObjPos.x = camera->lookAt_obj.x; gBattleStatus.camLookatObjPos.y = camera->lookAt_obj.y; gBattleStatus.camLookatObjPos.z = camera->lookAt_obj.z; } -#else -INCLUDE_ASM(void, "ad90_len_2880", update_camera_mode_6, Camera* camera); -#endif diff --git a/ver/us/asm/nonmatchings/9d10_len_1080/update_camera_mode_4.s b/ver/us/asm/nonmatchings/9d10_len_1080/update_camera_mode_4.s deleted file mode 100644 index 824bc85222..0000000000 --- a/ver/us/asm/nonmatchings/9d10_len_1080/update_camera_mode_4.s +++ /dev/null @@ -1,260 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel update_camera_mode_4 -/* 9D10 8002E910 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 9D14 8002E914 AFB00010 */ sw $s0, 0x10($sp) -/* 9D18 8002E918 0080802D */ daddu $s0, $a0, $zero -/* 9D1C 8002E91C AFBF0014 */ sw $ra, 0x14($sp) -/* 9D20 8002E920 F7BE0040 */ sdc1 $f30, 0x40($sp) -/* 9D24 8002E924 F7BC0038 */ sdc1 $f28, 0x38($sp) -/* 9D28 8002E928 F7BA0030 */ sdc1 $f26, 0x30($sp) -/* 9D2C 8002E92C F7B80028 */ sdc1 $f24, 0x28($sp) -/* 9D30 8002E930 F7B60020 */ sdc1 $f22, 0x20($sp) -/* 9D34 8002E934 F7B40018 */ sdc1 $f20, 0x18($sp) -/* 9D38 8002E938 8602001C */ lh $v0, 0x1c($s0) -/* 9D3C 8002E93C C6000060 */ lwc1 $f0, 0x60($s0) -/* 9D40 8002E940 4482B000 */ mtc1 $v0, $f22 -/* 9D44 8002E944 00000000 */ nop -/* 9D48 8002E948 4680B5A0 */ cvt.s.w $f22, $f22 -/* 9D4C 8002E94C 4600B03C */ c.lt.s $f22, $f0 -/* 9D50 8002E950 00000000 */ nop -/* 9D54 8002E954 45030001 */ bc1tl .L8002E95C -/* 9D58 8002E958 4600B006 */ mov.s $f0, $f22 -.L8002E95C: -/* 9D5C 8002E95C 4600B107 */ neg.s $f4, $f22 -/* 9D60 8002E960 4604003C */ c.lt.s $f0, $f4 -/* 9D64 8002E964 00000000 */ nop -/* 9D68 8002E968 45030001 */ bc1tl .L8002E970 -/* 9D6C 8002E96C 46002006 */ mov.s $f0, $f4 -.L8002E970: -/* 9D70 8002E970 C6080068 */ lwc1 $f8, 0x68($s0) -/* 9D74 8002E974 8602001E */ lh $v0, 0x1e($s0) -/* 9D78 8002E978 4482C000 */ mtc1 $v0, $f24 -/* 9D7C 8002E97C 00000000 */ nop -/* 9D80 8002E980 4680C620 */ cvt.s.w $f24, $f24 -/* 9D84 8002E984 4608C03C */ c.lt.s $f24, $f8 -/* 9D88 8002E988 00000000 */ nop -/* 9D8C 8002E98C 45000002 */ bc1f .L8002E998 -/* 9D90 8002E990 E6000054 */ swc1 $f0, 0x54($s0) -/* 9D94 8002E994 4600C206 */ mov.s $f8, $f24 -.L8002E998: -/* 9D98 8002E998 4600C007 */ neg.s $f0, $f24 -/* 9D9C 8002E99C 4600403C */ c.lt.s $f8, $f0 -/* 9DA0 8002E9A0 00000000 */ nop -/* 9DA4 8002E9A4 45030001 */ bc1tl .L8002E9AC -/* 9DA8 8002E9A8 46000206 */ mov.s $f8, $f0 -.L8002E9AC: -/* 9DAC 8002E9AC 86020020 */ lh $v0, 0x20($s0) -/* 9DB0 8002E9B0 3C01800A */ lui $at, %hi(D_8009A5EC) -/* 9DB4 8002E9B4 C424A5EC */ lwc1 $f4, %lo(D_8009A5EC)($at) -/* 9DB8 8002E9B8 AE000070 */ sw $zero, 0x70($s0) -/* 9DBC 8002E9BC 44821000 */ mtc1 $v0, $f2 -/* 9DC0 8002E9C0 00000000 */ nop -/* 9DC4 8002E9C4 468010A0 */ cvt.s.w $f2, $f2 -/* 9DC8 8002E9C8 46041082 */ mul.s $f2, $f2, $f4 -/* 9DCC 8002E9CC 00000000 */ nop -/* 9DD0 8002E9D0 86020022 */ lh $v0, 0x22($s0) -/* 9DD4 8002E9D4 C6060070 */ lwc1 $f6, 0x70($s0) -/* 9DD8 8002E9D8 44820000 */ mtc1 $v0, $f0 -/* 9DDC 8002E9DC 00000000 */ nop -/* 9DE0 8002E9E0 46800020 */ cvt.s.w $f0, $f0 -/* 9DE4 8002E9E4 86020006 */ lh $v0, 6($s0) -/* 9DE8 8002E9E8 46040002 */ mul.s $f0, $f0, $f4 -/* 9DEC 8002E9EC 00000000 */ nop -/* 9DF0 8002E9F0 E608005C */ swc1 $f8, 0x5c($s0) -/* 9DF4 8002E9F4 AE000074 */ sw $zero, 0x74($s0) -/* 9DF8 8002E9F8 E6060084 */ swc1 $f6, 0x84($s0) -/* 9DFC 8002E9FC E6020078 */ swc1 $f2, 0x78($s0) -/* 9E00 8002EA00 10400047 */ beqz $v0, .L8002EB20 -/* 9E04 8002EA04 E600007C */ swc1 $f0, 0x7c($s0) -/* 9E08 8002EA08 4480F000 */ mtc1 $zero, $f30 -/* 9E0C 8002EA0C C6020074 */ lwc1 $f2, 0x74($s0) -/* 9E10 8002EA10 3C0140C9 */ lui $at, 0x40c9 -/* 9E14 8002EA14 34210FD0 */ ori $at, $at, 0xfd0 -/* 9E18 8002EA18 4481B000 */ mtc1 $at, $f22 -/* 9E1C 8002EA1C C6080054 */ lwc1 $f8, 0x54($s0) -/* 9E20 8002EA20 C6000058 */ lwc1 $f0, 0x58($s0) -/* 9E24 8002EA24 C604007C */ lwc1 $f4, 0x7c($s0) -/* 9E28 8002EA28 C606005C */ lwc1 $f6, 0x5c($s0) -/* 9E2C 8002EA2C 3C0143B4 */ lui $at, 0x43b4 -/* 9E30 8002EA30 4481A000 */ mtc1 $at, $f20 -/* 9E34 8002EA34 46161082 */ mul.s $f2, $f2, $f22 -/* 9E38 8002EA38 00000000 */ nop -/* 9E3C 8002EA3C A6000006 */ sh $zero, 6($s0) -/* 9E40 8002EA40 E61E0098 */ swc1 $f30, 0x98($s0) -/* 9E44 8002EA44 E61E009C */ swc1 $f30, 0x9c($s0) -/* 9E48 8002EA48 46040000 */ add.s $f0, $f0, $f4 -/* 9E4C 8002EA4C E6080048 */ swc1 $f8, 0x48($s0) -/* 9E50 8002EA50 E6060050 */ swc1 $f6, 0x50($s0) -/* 9E54 8002EA54 E600004C */ swc1 $f0, 0x4c($s0) -/* 9E58 8002EA58 46141683 */ div.s $f26, $f2, $f20 -/* 9E5C 8002EA5C 0C00A85B */ jal sin_rad -/* 9E60 8002EA60 4600D306 */ mov.s $f12, $f26 -/* 9E64 8002EA64 46000706 */ mov.s $f28, $f0 -/* 9E68 8002EA68 0C00A874 */ jal cos_rad -/* 9E6C 8002EA6C 4600D306 */ mov.s $f12, $f26 -/* 9E70 8002EA70 46000286 */ mov.s $f10, $f0 -/* 9E74 8002EA74 461E5202 */ mul.s $f8, $f10, $f30 -/* 9E78 8002EA78 00000000 */ nop -/* 9E7C 8002EA7C 4600F087 */ neg.s $f2, $f30 -/* 9E80 8002EA80 4602E082 */ mul.s $f2, $f28, $f2 -/* 9E84 8002EA84 00000000 */ nop -/* 9E88 8002EA88 C6180078 */ lwc1 $f24, 0x78($s0) -/* 9E8C 8002EA8C 461CC102 */ mul.s $f4, $f24, $f28 -/* 9E90 8002EA90 00000000 */ nop -/* 9E94 8002EA94 460AC182 */ mul.s $f6, $f24, $f10 -/* 9E98 8002EA98 00000000 */ nop -/* 9E9C 8002EA9C C6000070 */ lwc1 $f0, 0x70($s0) -/* 9EA0 8002EAA0 46160002 */ mul.s $f0, $f0, $f22 -/* 9EA4 8002EAA4 00000000 */ nop -/* 9EA8 8002EAA8 4600F286 */ mov.s $f10, $f30 -/* 9EAC 8002EAAC 46005586 */ mov.s $f22, $f10 -/* 9EB0 8002EAB0 46044780 */ add.s $f30, $f8, $f4 -/* 9EB4 8002EAB4 46140683 */ div.s $f26, $f0, $f20 -/* 9EB8 8002EAB8 4600D306 */ mov.s $f12, $f26 -/* 9EBC 8002EABC 0C00A85B */ jal sin_rad -/* 9EC0 8002EAC0 46061600 */ add.s $f24, $f2, $f6 -/* 9EC4 8002EAC4 46000706 */ mov.s $f28, $f0 -/* 9EC8 8002EAC8 0C00A874 */ jal cos_rad -/* 9ECC 8002EACC 4600D306 */ mov.s $f12, $f26 -/* 9ED0 8002EAD0 46000286 */ mov.s $f10, $f0 -/* 9ED4 8002EAD4 46165182 */ mul.s $f6, $f10, $f22 -/* 9ED8 8002EAD8 00000000 */ nop -/* 9EDC 8002EADC 4616E102 */ mul.s $f4, $f28, $f22 -/* 9EE0 8002EAE0 00000000 */ nop -/* 9EE4 8002EAE4 461CC082 */ mul.s $f2, $f24, $f28 -/* 9EE8 8002EAE8 00000000 */ nop -/* 9EEC 8002EAEC 460AC002 */ mul.s $f0, $f24, $f10 -/* 9EF0 8002EAF0 00000000 */ nop -/* 9EF4 8002EAF4 46023281 */ sub.s $f10, $f6, $f2 -/* 9EF8 8002EAF8 46002180 */ add.s $f6, $f4, $f0 -/* 9EFC 8002EAFC C600004C */ lwc1 $f0, 0x4c($s0) -/* 9F00 8002EB00 461E0000 */ add.s $f0, $f0, $f30 -/* 9F04 8002EB04 C6040048 */ lwc1 $f4, 0x48($s0) -/* 9F08 8002EB08 460A2100 */ add.s $f4, $f4, $f10 -/* 9F0C 8002EB0C C6020050 */ lwc1 $f2, 0x50($s0) -/* 9F10 8002EB10 46061080 */ add.s $f2, $f2, $f6 -/* 9F14 8002EB14 E6000040 */ swc1 $f0, 0x40($s0) -/* 9F18 8002EB18 E604003C */ swc1 $f4, 0x3c($s0) -/* 9F1C 8002EB1C E6020044 */ swc1 $f2, 0x44($s0) -.L8002EB20: -/* 9F20 8002EB20 4480F000 */ mtc1 $zero, $f30 -/* 9F24 8002EB24 C6020074 */ lwc1 $f2, 0x74($s0) -/* 9F28 8002EB28 3C0140C9 */ lui $at, 0x40c9 -/* 9F2C 8002EB2C 34210FD0 */ ori $at, $at, 0xfd0 -/* 9F30 8002EB30 4481B000 */ mtc1 $at, $f22 -/* 9F34 8002EB34 C6080054 */ lwc1 $f8, 0x54($s0) -/* 9F38 8002EB38 46161082 */ mul.s $f2, $f2, $f22 -/* 9F3C 8002EB3C 00000000 */ nop -/* 9F40 8002EB40 C6000058 */ lwc1 $f0, 0x58($s0) -/* 9F44 8002EB44 C604007C */ lwc1 $f4, 0x7c($s0) -/* 9F48 8002EB48 C606005C */ lwc1 $f6, 0x5c($s0) -/* 9F4C 8002EB4C 3C0143B4 */ lui $at, 0x43b4 -/* 9F50 8002EB50 4481A000 */ mtc1 $at, $f20 -/* 9F54 8002EB54 46040000 */ add.s $f0, $f0, $f4 -/* 9F58 8002EB58 E6080048 */ swc1 $f8, 0x48($s0) -/* 9F5C 8002EB5C E6060050 */ swc1 $f6, 0x50($s0) -/* 9F60 8002EB60 E600004C */ swc1 $f0, 0x4c($s0) -/* 9F64 8002EB64 46141683 */ div.s $f26, $f2, $f20 -/* 9F68 8002EB68 0C00A85B */ jal sin_rad -/* 9F6C 8002EB6C 4600D306 */ mov.s $f12, $f26 -/* 9F70 8002EB70 46000706 */ mov.s $f28, $f0 -/* 9F74 8002EB74 0C00A874 */ jal cos_rad -/* 9F78 8002EB78 4600D306 */ mov.s $f12, $f26 -/* 9F7C 8002EB7C 46000286 */ mov.s $f10, $f0 -/* 9F80 8002EB80 461E5202 */ mul.s $f8, $f10, $f30 -/* 9F84 8002EB84 00000000 */ nop -/* 9F88 8002EB88 4600F087 */ neg.s $f2, $f30 -/* 9F8C 8002EB8C 4602E082 */ mul.s $f2, $f28, $f2 -/* 9F90 8002EB90 00000000 */ nop -/* 9F94 8002EB94 C6180078 */ lwc1 $f24, 0x78($s0) -/* 9F98 8002EB98 461CC102 */ mul.s $f4, $f24, $f28 -/* 9F9C 8002EB9C 00000000 */ nop -/* 9FA0 8002EBA0 460AC182 */ mul.s $f6, $f24, $f10 -/* 9FA4 8002EBA4 00000000 */ nop -/* 9FA8 8002EBA8 C6000070 */ lwc1 $f0, 0x70($s0) -/* 9FAC 8002EBAC 46160002 */ mul.s $f0, $f0, $f22 -/* 9FB0 8002EBB0 00000000 */ nop -/* 9FB4 8002EBB4 4600F286 */ mov.s $f10, $f30 -/* 9FB8 8002EBB8 46005586 */ mov.s $f22, $f10 -/* 9FBC 8002EBBC 46044780 */ add.s $f30, $f8, $f4 -/* 9FC0 8002EBC0 46140683 */ div.s $f26, $f0, $f20 -/* 9FC4 8002EBC4 4600D306 */ mov.s $f12, $f26 -/* 9FC8 8002EBC8 0C00A85B */ jal sin_rad -/* 9FCC 8002EBCC 46061600 */ add.s $f24, $f2, $f6 -/* 9FD0 8002EBD0 46000706 */ mov.s $f28, $f0 -/* 9FD4 8002EBD4 0C00A874 */ jal cos_rad -/* 9FD8 8002EBD8 4600D306 */ mov.s $f12, $f26 -/* 9FDC 8002EBDC 46000286 */ mov.s $f10, $f0 -/* 9FE0 8002EBE0 46165102 */ mul.s $f4, $f10, $f22 -/* 9FE4 8002EBE4 00000000 */ nop -/* 9FE8 8002EBE8 4616E182 */ mul.s $f6, $f28, $f22 -/* 9FEC 8002EBEC 00000000 */ nop -/* 9FF0 8002EBF0 461CC002 */ mul.s $f0, $f24, $f28 -/* 9FF4 8002EBF4 00000000 */ nop -/* 9FF8 8002EBF8 460AC082 */ mul.s $f2, $f24, $f10 -/* 9FFC 8002EBFC 00000000 */ nop -/* A000 8002EC00 46002281 */ sub.s $f10, $f4, $f0 -/* A004 8002EC04 46023180 */ add.s $f6, $f6, $f2 -/* A008 8002EC08 C602004C */ lwc1 $f2, 0x4c($s0) -/* A00C 8002EC0C 461E1080 */ add.s $f2, $f2, $f30 -/* A010 8002EC10 C6000048 */ lwc1 $f0, 0x48($s0) -/* A014 8002EC14 8E060048 */ lw $a2, 0x48($s0) -/* A018 8002EC18 460A0000 */ add.s $f0, $f0, $f10 -/* A01C 8002EC1C C60E0050 */ lwc1 $f14, 0x50($s0) -/* A020 8002EC20 8E070050 */ lw $a3, 0x50($s0) -/* A024 8002EC24 46067380 */ add.s $f14, $f14, $f6 -/* A028 8002EC28 E6020040 */ swc1 $f2, 0x40($s0) -/* A02C 8002EC2C E600003C */ swc1 $f0, 0x3c($s0) -/* A030 8002EC30 46000306 */ mov.s $f12, $f0 -/* A034 8002EC34 0C00A720 */ jal atan2 -/* A038 8002EC38 E60E0044 */ swc1 $f14, 0x44($s0) -/* A03C 8002EC3C 4600B506 */ mov.s $f20, $f22 -/* A040 8002EC40 C6040048 */ lwc1 $f4, 0x48($s0) -/* A044 8002EC44 C602003C */ lwc1 $f2, 0x3c($s0) -/* A048 8002EC48 4600A306 */ mov.s $f12, $f20 -/* A04C 8002EC4C 46022581 */ sub.s $f22, $f4, $f2 -/* A050 8002EC50 C6040050 */ lwc1 $f4, 0x50($s0) -/* A054 8002EC54 C6020044 */ lwc1 $f2, 0x44($s0) -/* A058 8002EC58 4600A386 */ mov.s $f14, $f20 -/* A05C 8002EC5C 46022601 */ sub.s $f24, $f4, $f2 -/* A060 8002EC60 C604004C */ lwc1 $f4, 0x4c($s0) -/* A064 8002EC64 C6020040 */ lwc1 $f2, 0x40($s0) -/* A068 8002EC68 4406B000 */ mfc1 $a2, $f22 -/* A06C 8002EC6C 4407C000 */ mfc1 $a3, $f24 -/* A070 8002EC70 46022781 */ sub.s $f30, $f4, $f2 -/* A074 8002EC74 0C00A720 */ jal atan2 -/* A078 8002EC78 E600006C */ swc1 $f0, 0x6c($s0) -/* A07C 8002EC7C 4616B102 */ mul.s $f4, $f22, $f22 -/* A080 8002EC80 00000000 */ nop -/* A084 8002EC84 4618C082 */ mul.s $f2, $f24, $f24 -/* A088 8002EC88 00000000 */ nop -/* A08C 8002EC8C 46022300 */ add.s $f12, $f4, $f2 -/* A090 8002EC90 46000007 */ neg.s $f0, $f0 -/* A094 8002EC94 E6000090 */ swc1 $f0, 0x90($s0) -/* A098 8002EC98 46006004 */ sqrt.s $f0, $f12 -/* A09C 8002EC9C 46000032 */ c.eq.s $f0, $f0 -/* A0A0 8002ECA0 00000000 */ nop -/* A0A4 8002ECA4 45030004 */ bc1tl .L8002ECB8 -/* A0A8 8002ECA8 4600A306 */ mov.s $f12, $f20 -/* A0AC 8002ECAC 0C0187BC */ jal sqrtf -/* A0B0 8002ECB0 00000000 */ nop -/* A0B4 8002ECB4 4600A306 */ mov.s $f12, $f20 -.L8002ECB8: -/* A0B8 8002ECB8 46000007 */ neg.s $f0, $f0 -/* A0BC 8002ECBC 4406F000 */ mfc1 $a2, $f30 -/* A0C0 8002ECC0 44070000 */ mfc1 $a3, $f0 -/* A0C4 8002ECC4 0C00A720 */ jal atan2 -/* A0C8 8002ECC8 46006386 */ mov.s $f14, $f12 -/* A0CC 8002ECCC E6000094 */ swc1 $f0, 0x94($s0) -/* A0D0 8002ECD0 8FBF0014 */ lw $ra, 0x14($sp) -/* A0D4 8002ECD4 8FB00010 */ lw $s0, 0x10($sp) -/* A0D8 8002ECD8 D7BE0040 */ ldc1 $f30, 0x40($sp) -/* A0DC 8002ECDC D7BC0038 */ ldc1 $f28, 0x38($sp) -/* A0E0 8002ECE0 D7BA0030 */ ldc1 $f26, 0x30($sp) -/* A0E4 8002ECE4 D7B80028 */ ldc1 $f24, 0x28($sp) -/* A0E8 8002ECE8 D7B60020 */ ldc1 $f22, 0x20($sp) -/* A0EC 8002ECEC D7B40018 */ ldc1 $f20, 0x18($sp) -/* A0F0 8002ECF0 03E00008 */ jr $ra -/* A0F4 8002ECF4 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/ver/us/asm/nonmatchings/ad90_len_2880/update_camera_mode_6.s b/ver/us/asm/nonmatchings/ad90_len_2880/update_camera_mode_6.s deleted file mode 100644 index 678dd380d2..0000000000 --- a/ver/us/asm/nonmatchings/ad90_len_2880/update_camera_mode_6.s +++ /dev/null @@ -1,223 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel update_camera_mode_6 -/* AD90 8002F990 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* AD94 8002F994 AFB00010 */ sw $s0, 0x10($sp) -/* AD98 8002F998 0080802D */ daddu $s0, $a0, $zero -/* AD9C 8002F99C AFBF0014 */ sw $ra, 0x14($sp) -/* ADA0 8002F9A0 F7BE0040 */ sdc1 $f30, 0x40($sp) -/* ADA4 8002F9A4 F7BC0038 */ sdc1 $f28, 0x38($sp) -/* ADA8 8002F9A8 F7BA0030 */ sdc1 $f26, 0x30($sp) -/* ADAC 8002F9AC F7B80028 */ sdc1 $f24, 0x28($sp) -/* ADB0 8002F9B0 F7B60020 */ sdc1 $f22, 0x20($sp) -/* ADB4 8002F9B4 F7B40018 */ sdc1 $f20, 0x18($sp) -/* ADB8 8002F9B8 86020006 */ lh $v0, 6($s0) -/* ADBC 8002F9BC 14400004 */ bnez $v0, .L8002F9D0 -/* ADC0 8002F9C0 00000000 */ nop -/* ADC4 8002F9C4 86020008 */ lh $v0, 8($s0) -/* ADC8 8002F9C8 10400013 */ beqz $v0, .L8002FA18 -/* ADCC 8002F9CC 00000000 */ nop -.L8002F9D0: -/* ADD0 8002F9D0 C6000054 */ lwc1 $f0, 0x54($s0) -/* ADD4 8002F9D4 C6020058 */ lwc1 $f2, 0x58($s0) -/* ADD8 8002F9D8 C604005C */ lwc1 $f4, 0x5c($s0) -/* ADDC 8002F9DC 24020064 */ addiu $v0, $zero, 0x64 -/* ADE0 8002F9E0 A6000006 */ sh $zero, 6($s0) -/* ADE4 8002F9E4 A6000008 */ sh $zero, 8($s0) -/* ADE8 8002F9E8 A600001C */ sh $zero, 0x1c($s0) -/* ADEC 8002F9EC A602001E */ sh $v0, 0x1e($s0) -/* ADF0 8002F9F0 A6020020 */ sh $v0, 0x20($s0) -/* ADF4 8002F9F4 A6000022 */ sh $zero, 0x22($s0) -/* ADF8 8002F9F8 A6000024 */ sh $zero, 0x24($s0) -/* ADFC 8002F9FC A6000026 */ sh $zero, 0x26($s0) -/* AE00 8002FA00 AE000060 */ sw $zero, 0x60($s0) -/* AE04 8002FA04 AE000064 */ sw $zero, 0x64($s0) -/* AE08 8002FA08 AE000068 */ sw $zero, 0x68($s0) -/* AE0C 8002FA0C E6000048 */ swc1 $f0, 0x48($s0) -/* AE10 8002FA10 E602004C */ swc1 $f2, 0x4c($s0) -/* AE14 8002FA14 E6040050 */ swc1 $f4, 0x50($s0) -.L8002FA18: -/* AE18 8002FA18 8602001C */ lh $v0, 0x1c($s0) -/* AE1C 8002FA1C 14400073 */ bnez $v0, .L8002FBEC -/* AE20 8002FA20 24022710 */ addiu $v0, $zero, 0x2710 -/* AE24 8002FA24 86030020 */ lh $v1, 0x20($s0) -/* AE28 8002FA28 14600002 */ bnez $v1, .L8002FA34 -/* AE2C 8002FA2C 0043001A */ div $zero, $v0, $v1 -/* AE30 8002FA30 0007000D */ break 7 -.L8002FA34: -/* AE34 8002FA34 2401FFFF */ addiu $at, $zero, -1 -/* AE38 8002FA38 14610004 */ bne $v1, $at, .L8002FA4C -/* AE3C 8002FA3C 3C018000 */ lui $at, 0x8000 -/* AE40 8002FA40 14410002 */ bne $v0, $at, .L8002FA4C -/* AE44 8002FA44 00000000 */ nop -/* AE48 8002FA48 0006000D */ break 6 -.L8002FA4C: -/* AE4C 8002FA4C 00001812 */ mflo $v1 -/* AE50 8002FA50 3C013F70 */ lui $at, 0x3f70 -/* AE54 8002FA54 44810800 */ mtc1 $at, $f1 -/* AE58 8002FA58 44800000 */ mtc1 $zero, $f0 -/* AE5C 8002FA5C C60A0054 */ lwc1 $f10, 0x54($s0) -/* AE60 8002FA60 C6020060 */ lwc1 $f2, 0x60($s0) -/* AE64 8002FA64 C6040064 */ lwc1 $f4, 0x64($s0) -/* AE68 8002FA68 C606005C */ lwc1 $f6, 0x5c($s0) -/* AE6C 8002FA6C 86020026 */ lh $v0, 0x26($s0) -/* AE70 8002FA70 46025280 */ add.s $f10, $f10, $f2 -/* AE74 8002FA74 44824000 */ mtc1 $v0, $f8 -/* AE78 8002FA78 00000000 */ nop -/* AE7C 8002FA7C 46804221 */ cvt.d.w $f8, $f8 -/* AE80 8002FA80 86020024 */ lh $v0, 0x24($s0) -/* AE84 8002FA84 46204202 */ mul.d $f8, $f8, $f0 -/* AE88 8002FA88 00000000 */ nop -/* AE8C 8002FA8C 44820000 */ mtc1 $v0, $f0 -/* AE90 8002FA90 00000000 */ nop -/* AE94 8002FA94 46800020 */ cvt.s.w $f0, $f0 -/* AE98 8002FA98 E6000084 */ swc1 $f0, 0x84($s0) -/* AE9C 8002FA9C C6000058 */ lwc1 $f0, 0x58($s0) -/* AEA0 8002FAA0 86020022 */ lh $v0, 0x22($s0) -/* AEA4 8002FAA4 E60A0048 */ swc1 $f10, 0x48($s0) -/* AEA8 8002FAA8 44821000 */ mtc1 $v0, $f2 -/* AEAC 8002FAAC 00000000 */ nop -/* AEB0 8002FAB0 468010A0 */ cvt.s.w $f2, $f2 -/* AEB4 8002FAB4 46040000 */ add.s $f0, $f0, $f4 -/* AEB8 8002FAB8 E6020074 */ swc1 $f2, 0x74($s0) -/* AEBC 8002FABC C6020068 */ lwc1 $f2, 0x68($s0) -/* AEC0 8002FAC0 8602001E */ lh $v0, 0x1e($s0) -/* AEC4 8002FAC4 46023180 */ add.s $f6, $f6, $f2 -/* AEC8 8002FAC8 44822000 */ mtc1 $v0, $f4 -/* AECC 8002FACC 00000000 */ nop -/* AED0 8002FAD0 46802120 */ cvt.s.w $f4, $f4 -/* AED4 8002FAD4 46000021 */ cvt.d.s $f0, $f0 -/* AED8 8002FAD8 46280000 */ add.d $f0, $f0, $f8 -/* AEDC 8002FADC E6040078 */ swc1 $f4, 0x78($s0) -/* AEE0 8002FAE0 E6060050 */ swc1 $f6, 0x50($s0) -/* AEE4 8002FAE4 46200020 */ cvt.s.d $f0, $f0 -/* AEE8 8002FAE8 04610002 */ bgez $v1, .L8002FAF4 -/* AEEC 8002FAEC E600004C */ swc1 $f0, 0x4c($s0) -/* AEF0 8002FAF0 24630003 */ addiu $v1, $v1, 3 -.L8002FAF4: -/* AEF4 8002FAF4 C6020074 */ lwc1 $f2, 0x74($s0) -/* AEF8 8002FAF8 3C0140C9 */ lui $at, 0x40c9 -/* AEFC 8002FAFC 34210FD0 */ ori $at, $at, 0xfd0 -/* AF00 8002FB00 4481A000 */ mtc1 $at, $f20 -/* AF04 8002FB04 00031083 */ sra $v0, $v1, 2 -/* AF08 8002FB08 46141082 */ mul.s $f2, $f2, $f20 -/* AF0C 8002FB0C 00000000 */ nop -/* AF10 8002FB10 4480F000 */ mtc1 $zero, $f30 -/* AF14 8002FB14 3C0143B4 */ lui $at, 0x43b4 -/* AF18 8002FB18 4481B000 */ mtc1 $at, $f22 -/* AF1C 8002FB1C 44820000 */ mtc1 $v0, $f0 -/* AF20 8002FB20 00000000 */ nop -/* AF24 8002FB24 46800020 */ cvt.s.w $f0, $f0 -/* AF28 8002FB28 E6000018 */ swc1 $f0, 0x18($s0) -/* AF2C 8002FB2C 46161683 */ div.s $f26, $f2, $f22 -/* AF30 8002FB30 0C00A85B */ jal sin_rad -/* AF34 8002FB34 4600D306 */ mov.s $f12, $f26 -/* AF38 8002FB38 46000706 */ mov.s $f28, $f0 -/* AF3C 8002FB3C 0C00A874 */ jal cos_rad -/* AF40 8002FB40 4600D306 */ mov.s $f12, $f26 -/* AF44 8002FB44 461E0202 */ mul.s $f8, $f0, $f30 -/* AF48 8002FB48 00000000 */ nop -/* AF4C 8002FB4C 4600F087 */ neg.s $f2, $f30 -/* AF50 8002FB50 4602E082 */ mul.s $f2, $f28, $f2 -/* AF54 8002FB54 00000000 */ nop -/* AF58 8002FB58 C6180078 */ lwc1 $f24, 0x78($s0) -/* AF5C 8002FB5C 461CC102 */ mul.s $f4, $f24, $f28 -/* AF60 8002FB60 00000000 */ nop -/* AF64 8002FB64 4600C182 */ mul.s $f6, $f24, $f0 -/* AF68 8002FB68 00000000 */ nop -/* AF6C 8002FB6C C6000084 */ lwc1 $f0, 0x84($s0) -/* AF70 8002FB70 46140002 */ mul.s $f0, $f0, $f20 -/* AF74 8002FB74 00000000 */ nop -/* AF78 8002FB78 4600F286 */ mov.s $f10, $f30 -/* AF7C 8002FB7C 46005506 */ mov.s $f20, $f10 -/* AF80 8002FB80 46044780 */ add.s $f30, $f8, $f4 -/* AF84 8002FB84 46061600 */ add.s $f24, $f2, $f6 -/* AF88 8002FB88 46160683 */ div.s $f26, $f0, $f22 -/* AF8C 8002FB8C 0C00A85B */ jal sin_rad -/* AF90 8002FB90 4600D306 */ mov.s $f12, $f26 -/* AF94 8002FB94 46000706 */ mov.s $f28, $f0 -/* AF98 8002FB98 0C00A874 */ jal cos_rad -/* AF9C 8002FB9C 4600D306 */ mov.s $f12, $f26 -/* AFA0 8002FBA0 46140182 */ mul.s $f6, $f0, $f20 -/* AFA4 8002FBA4 00000000 */ nop -/* AFA8 8002FBA8 4614E102 */ mul.s $f4, $f28, $f20 -/* AFAC 8002FBAC 00000000 */ nop -/* AFB0 8002FBB0 461CC082 */ mul.s $f2, $f24, $f28 -/* AFB4 8002FBB4 00000000 */ nop -/* AFB8 8002FBB8 4600C002 */ mul.s $f0, $f24, $f0 -/* AFBC 8002FBBC 00000000 */ nop -/* AFC0 8002FBC0 46023281 */ sub.s $f10, $f6, $f2 -/* AFC4 8002FBC4 46002100 */ add.s $f4, $f4, $f0 -/* AFC8 8002FBC8 C600004C */ lwc1 $f0, 0x4c($s0) -/* AFCC 8002FBCC 461E0000 */ add.s $f0, $f0, $f30 -/* AFD0 8002FBD0 C6060048 */ lwc1 $f6, 0x48($s0) -/* AFD4 8002FBD4 460A3180 */ add.s $f6, $f6, $f10 -/* AFD8 8002FBD8 C6020050 */ lwc1 $f2, 0x50($s0) -/* AFDC 8002FBDC 46041080 */ add.s $f2, $f2, $f4 -/* AFE0 8002FBE0 E6000040 */ swc1 $f0, 0x40($s0) -/* AFE4 8002FBE4 E606003C */ swc1 $f6, 0x3c($s0) -/* AFE8 8002FBE8 E6020044 */ swc1 $f2, 0x44($s0) -.L8002FBEC: -/* AFEC 8002FBEC C60C003C */ lwc1 $f12, 0x3c($s0) -/* AFF0 8002FBF0 C60E0044 */ lwc1 $f14, 0x44($s0) -/* AFF4 8002FBF4 8E060048 */ lw $a2, 0x48($s0) -/* AFF8 8002FBF8 0C00A720 */ jal atan2 -/* AFFC 8002FBFC 8E070050 */ lw $a3, 0x50($s0) -/* B000 8002FC00 C6040048 */ lwc1 $f4, 0x48($s0) -/* B004 8002FC04 4480B000 */ mtc1 $zero, $f22 -/* B008 8002FC08 C602003C */ lwc1 $f2, 0x3c($s0) -/* B00C 8002FC0C E600006C */ swc1 $f0, 0x6c($s0) -/* B010 8002FC10 46022501 */ sub.s $f20, $f4, $f2 -/* B014 8002FC14 C6040050 */ lwc1 $f4, 0x50($s0) -/* B018 8002FC18 C6020044 */ lwc1 $f2, 0x44($s0) -/* B01C 8002FC1C 4600B306 */ mov.s $f12, $f22 -/* B020 8002FC20 46022601 */ sub.s $f24, $f4, $f2 -/* B024 8002FC24 C604004C */ lwc1 $f4, 0x4c($s0) -/* B028 8002FC28 C6020040 */ lwc1 $f2, 0x40($s0) -/* B02C 8002FC2C 4406A000 */ mfc1 $a2, $f20 -/* B030 8002FC30 46022781 */ sub.s $f30, $f4, $f2 -/* B034 8002FC34 4407C000 */ mfc1 $a3, $f24 -/* B038 8002FC38 0C00A720 */ jal atan2 -/* B03C 8002FC3C 4600B386 */ mov.s $f14, $f22 -/* B040 8002FC40 4614A102 */ mul.s $f4, $f20, $f20 -/* B044 8002FC44 00000000 */ nop -/* B048 8002FC48 4618C082 */ mul.s $f2, $f24, $f24 -/* B04C 8002FC4C 00000000 */ nop -/* B050 8002FC50 46022300 */ add.s $f12, $f4, $f2 -/* B054 8002FC54 46000007 */ neg.s $f0, $f0 -/* B058 8002FC58 E6000090 */ swc1 $f0, 0x90($s0) -/* B05C 8002FC5C 46006004 */ sqrt.s $f0, $f12 -/* B060 8002FC60 46000032 */ c.eq.s $f0, $f0 -/* B064 8002FC64 00000000 */ nop -/* B068 8002FC68 45030004 */ bc1tl .L8002FC7C -/* B06C 8002FC6C 4600B306 */ mov.s $f12, $f22 -/* B070 8002FC70 0C0187BC */ jal sqrtf -/* B074 8002FC74 00000000 */ nop -/* B078 8002FC78 4600B306 */ mov.s $f12, $f22 -.L8002FC7C: -/* B07C 8002FC7C 46000007 */ neg.s $f0, $f0 -/* B080 8002FC80 4406F000 */ mfc1 $a2, $f30 -/* B084 8002FC84 44070000 */ mfc1 $a3, $f0 -/* B088 8002FC88 0C00A720 */ jal atan2 -/* B08C 8002FC8C 46006386 */ mov.s $f14, $f12 -/* B090 8002FC90 E6000094 */ swc1 $f0, 0x94($s0) -/* B094 8002FC94 C6000048 */ lwc1 $f0, 0x48($s0) -/* B098 8002FC98 3C02800E */ lui $v0, %hi(gBattleStatus) -/* B09C 8002FC9C 2442C070 */ addiu $v0, $v0, %lo(gBattleStatus) -/* B0A0 8002FCA0 E44000CC */ swc1 $f0, 0xcc($v0) -/* B0A4 8002FCA4 C600004C */ lwc1 $f0, 0x4c($s0) -/* B0A8 8002FCA8 E44000D0 */ swc1 $f0, 0xd0($v0) -/* B0AC 8002FCAC C6000050 */ lwc1 $f0, 0x50($s0) -/* B0B0 8002FCB0 E44000D4 */ swc1 $f0, 0xd4($v0) -/* B0B4 8002FCB4 8FBF0014 */ lw $ra, 0x14($sp) -/* B0B8 8002FCB8 8FB00010 */ lw $s0, 0x10($sp) -/* B0BC 8002FCBC D7BE0040 */ ldc1 $f30, 0x40($sp) -/* B0C0 8002FCC0 D7BC0038 */ ldc1 $f28, 0x38($sp) -/* B0C4 8002FCC4 D7BA0030 */ ldc1 $f26, 0x30($sp) -/* B0C8 8002FCC8 D7B80028 */ ldc1 $f24, 0x28($sp) -/* B0CC 8002FCCC D7B60020 */ ldc1 $f22, 0x20($sp) -/* B0D0 8002FCD0 D7B40018 */ ldc1 $f20, 0x18($sp) -/* B0D4 8002FCD4 03E00008 */ jr $ra -/* B0D8 8002FCD8 27BD0048 */ addiu $sp, $sp, 0x48 -/* B0DC 8002FCDC 00000000 */ nop