tp/include/d/d_camera/asm/func_80182260.s

130 lines
6.7 KiB
ArmAsm

/* 80182260 0017F1A0 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 80182264 0017F1A4 7C 08 02 A6 */ mflr r0
/* 80182268 0017F1A8 90 01 00 94 */ stw r0, 0x94(r1)
/* 8018226C 0017F1AC DB E1 00 80 */ stfd f31, 0x80(r1)
/* 80182270 0017F1B0 F3 E1 00 88 */ psq_st f31, 136(r1), 0, 0
/* 80182274 0017F1B4 39 61 00 80 */ addi r11, r1, 0x80
/* 80182278 0017F1B8 48 1D FF 61 */ bl _savegpr_28
/* 8018227C 0017F1BC 7C 7F 1B 78 */ mr r31, r3
/* 80182280 0017F1C0 3B DF 02 48 */ addi r30, r31, 0x248
/* 80182284 0017F1C4 4B E9 C0 85 */ bl fopCamM_GetParam
/* 80182288 0017F1C8 80 7F 02 38 */ lwz r3, 0x238(r31)
/* 8018228C 0017F1CC 38 03 00 01 */ addi r0, r3, 1
/* 80182290 0017F1D0 90 1F 02 38 */ stw r0, 0x238(r31)
/* 80182294 0017F1D4 7F E3 FB 78 */ mr r3, r31
/* 80182298 0017F1D8 4B E9 C0 71 */ bl fopCamM_GetParam
/* 8018229C 0017F1DC 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 801822A0 0017F1E0 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
/* 801822A4 0017F1E4 1C 03 00 38 */ mulli r0, r3, 0x38
/* 801822A8 0017F1E8 7C 64 02 14 */ add r3, r4, r0
/* 801822AC 0017F1EC 88 03 5D 79 */ lbz r0, 0x5d79(r3)
/* 801822B0 0017F1F0 7C 00 07 74 */ extsb r0, r0
/* 801822B4 0017F1F4 54 00 18 38 */ slwi r0, r0, 3
/* 801822B8 0017F1F8 7C 64 02 14 */ add r3, r4, r0
/* 801822BC 0017F1FC 80 03 5D AC */ lwz r0, 0x5dac(r3)
/* 801822C0 0017F200 7C 1C 03 78 */ mr r28, r0
/* 801822C4 0017F204 28 00 00 00 */ cmplwi r0, 0
/* 801822C8 0017F208 40 82 00 0C */ bne lbl_801822D4
/* 801822CC 0017F20C 38 60 00 00 */ li r3, 0
/* 801822D0 0017F210 48 00 01 64 */ b lbl_80182434
lbl_801822D4:
/* 801822D4 0017F214 38 61 00 14 */ addi r3, r1, 0x14
/* 801822D8 0017F218 4B EF 52 A5 */ bl dBgS_GndChk
/* 801822DC 0017F21C C0 1C 04 D0 */ lfs f0, 0x4d0(r28)
/* 801822E0 0017F220 D0 01 00 08 */ stfs f0, 8(r1)
/* 801822E4 0017F224 C0 3C 04 D4 */ lfs f1, 0x4d4(r28)
/* 801822E8 0017F228 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 801822EC 0017F22C C0 1C 04 D8 */ lfs f0, 0x4d8(r28)
/* 801822F0 0017F230 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 801822F4 0017F234 C0 02 9D 88 */ lfs f0, lbl_80453788-_SDA2_BASE_(r2)
/* 801822F8 0017F238 EC 01 00 2A */ fadds f0, f1, f0
/* 801822FC 0017F23C D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80182300 0017F240 38 61 00 14 */ addi r3, r1, 0x14
/* 80182304 0017F244 38 81 00 08 */ addi r4, r1, 8
/* 80182308 0017F248 48 0E 5A 21 */ bl SetPos__11cBgS_GndChkFPC4cXyz
/* 8018230C 0017F24C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 80182310 0017F250 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 80182314 0017F254 3B A3 0F 38 */ addi r29, r3, 0xf38
/* 80182318 0017F258 7F A3 EB 78 */ mr r3, r29
/* 8018231C 0017F25C 38 81 00 14 */ addi r4, r1, 0x14
/* 80182320 0017F260 4B EF 21 81 */ bl cBgS_NS_GroundCross
/* 80182324 0017F264 C0 02 9C AC */ lfs f0, lbl_804536AC-_SDA2_BASE_(r2)
/* 80182328 0017F268 FC 00 08 00 */ fcmpu cr0, f0, f1
/* 8018232C 0017F26C 40 82 00 18 */ bne lbl_80182344
/* 80182330 0017F270 38 61 00 14 */ addi r3, r1, 0x14
/* 80182334 0017F274 38 80 FF FF */ li r4, -1
/* 80182338 0017F278 4B EF 52 B9 */ bl dBgS_GndChk_NS_dtor
/* 8018233C 0017F27C 38 60 00 00 */ li r3, 0
/* 80182340 0017F280 48 00 00 F4 */ b lbl_80182434
lbl_80182344:
/* 80182344 0017F284 7F 83 E3 78 */ mr r3, r28
/* 80182348 0017F288 4B E9 75 7D */ bl fopAcM_setStageLayer
/* 8018234C 0017F28C 38 00 00 01 */ li r0, 1
/* 80182350 0017F290 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 80182354 0017F294 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 80182358 0017F298 98 03 5D 44 */ stb r0, 0x5d44(r3)
/* 8018235C 0017F29C 28 1E 00 00 */ cmplwi r30, 0
/* 80182360 0017F2A0 41 82 00 10 */ beq lbl_80182370
/* 80182364 0017F2A4 7F C3 F3 78 */ mr r3, r30
/* 80182368 0017F2A8 7F E4 FB 78 */ mr r4, r31
/* 8018236C 0017F2AC 4B FD DD 21 */ bl dCamera_c
lbl_80182370:
/* 80182370 0017F2B0 C3 E2 9F 20 */ lfs f31, lbl_80453920-_SDA2_BASE_(r2)
/* 80182374 0017F2B4 3B DD 3E E8 */ addi r30, r29, 0x3ee8
/* 80182378 0017F2B8 7F C3 F3 78 */ mr r3, r30
/* 8018237C 0017F2BC 81 9E 00 00 */ lwz r12, 0(r30)
/* 80182380 0017F2C0 81 8C 00 BC */ lwz r12, 0xbc(r12)
/* 80182384 0017F2C4 7D 89 03 A6 */ mtctr r12
/* 80182388 0017F2C8 4E 80 04 21 */ bctrl
/* 8018238C 0017F2CC 28 03 00 00 */ cmplwi r3, 0
/* 80182390 0017F2D0 41 82 00 30 */ beq lbl_801823C0
/* 80182394 0017F2D4 7F C3 F3 78 */ mr r3, r30
/* 80182398 0017F2D8 81 9E 00 00 */ lwz r12, 0(r30)
/* 8018239C 0017F2DC 81 8C 00 BC */ lwz r12, 0xbc(r12)
/* 801823A0 0017F2E0 7D 89 03 A6 */ mtctr r12
/* 801823A4 0017F2E4 4E 80 04 21 */ bctrl
/* 801823A8 0017F2E8 7F C3 F3 78 */ mr r3, r30
/* 801823AC 0017F2EC 81 9E 00 00 */ lwz r12, 0(r30)
/* 801823B0 0017F2F0 81 8C 00 BC */ lwz r12, 0xbc(r12)
/* 801823B4 0017F2F4 7D 89 03 A6 */ mtctr r12
/* 801823B8 0017F2F8 4E 80 04 21 */ bctrl
/* 801823BC 0017F2FC C3 E3 00 04 */ lfs f31, 4(r3)
lbl_801823C0:
/* 801823C0 0017F300 C0 02 9C A8 */ lfs f0, lbl_804536A8-_SDA2_BASE_(r2)
/* 801823C4 0017F304 D0 1F 00 C8 */ stfs f0, 0xc8(r31)
/* 801823C8 0017F308 D3 FF 00 CC */ stfs f31, 0xcc(r31)
/* 801823CC 0017F30C C0 02 9D 18 */ lfs f0, lbl_80453718-_SDA2_BASE_(r2)
/* 801823D0 0017F310 D0 1F 00 D0 */ stfs f0, 0xd0(r31)
/* 801823D4 0017F314 C0 02 9F 1C */ lfs f0, lbl_8045391C-_SDA2_BASE_(r2)
/* 801823D8 0017F318 D0 1F 00 D4 */ stfs f0, 0xd4(r31)
/* 801823DC 0017F31C C0 5C 04 D8 */ lfs f2, 0x4d8(r28)
/* 801823E0 0017F320 C0 3C 04 D4 */ lfs f1, 0x4d4(r28)
/* 801823E4 0017F324 C0 1C 04 D0 */ lfs f0, 0x4d0(r28)
/* 801823E8 0017F328 D0 1F 00 E4 */ stfs f0, 0xe4(r31)
/* 801823EC 0017F32C D0 3F 00 E8 */ stfs f1, 0xe8(r31)
/* 801823F0 0017F330 D0 5F 00 EC */ stfs f2, 0xec(r31)
/* 801823F4 0017F334 38 00 00 00 */ li r0, 0
/* 801823F8 0017F338 B0 1F 00 FC */ sth r0, 0xfc(r31)
/* 801823FC 0017F33C 7F E3 FB 78 */ mr r3, r31
/* 80182400 0017F340 4B FF F4 05 */ bl store
/* 80182404 0017F344 7F E3 FB 78 */ mr r3, r31
/* 80182408 0017F348 4B FF F3 01 */ bl view_setup
/* 8018240C 0017F34C 38 00 00 01 */ li r0, 1
/* 80182410 0017F350 98 1F 0D 54 */ stb r0, 0xd54(r31)
/* 80182414 0017F354 38 00 00 00 */ li r0, 0
/* 80182418 0017F358 90 1F 02 38 */ stw r0, 0x238(r31)
/* 8018241C 0017F35C 93 9D 47 80 */ stw r28, 0x4780(r29)
/* 80182420 0017F360 90 1D 47 8C */ stw r0, 0x478c(r29)
/* 80182424 0017F364 38 61 00 14 */ addi r3, r1, 0x14
/* 80182428 0017F368 38 80 FF FF */ li r4, -1
/* 8018242C 0017F36C 4B EF 51 C5 */ bl dBgS_GndChk_NS_dtor
/* 80182430 0017F370 38 60 00 02 */ li r3, 2
lbl_80182434:
/* 80182434 0017F374 E3 E1 00 88 */ psq_l f31, 136(r1), 0, 0
/* 80182438 0017F378 CB E1 00 80 */ lfd f31, 0x80(r1)
/* 8018243C 0017F37C 39 61 00 80 */ addi r11, r1, 0x80
/* 80182440 0017F380 48 1D FD E5 */ bl _restgpr_28
/* 80182444 0017F384 80 01 00 94 */ lwz r0, 0x94(r1)
/* 80182448 0017F388 7C 08 03 A6 */ mtlr r0
/* 8018244C 0017F38C 38 21 00 90 */ addi r1, r1, 0x90
/* 80182450 0017F390 4E 80 00 20 */ blr