mirror of https://github.com/zeldaret/tp.git
161 lines
7.0 KiB
ArmAsm
161 lines
7.0 KiB
ArmAsm
lbl_80090230:
|
|
/* 80090230 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 80090234 7C 08 02 A6 */ mflr r0
|
|
/* 80090238 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8009023C 39 61 00 20 */ addi r11, r1, 0x20
|
|
/* 80090240 48 2D 1F 9D */ bl _savegpr_29
|
|
/* 80090244 7C 7E 1B 78 */ mr r30, r3
|
|
/* 80090248 80 03 01 74 */ lwz r0, 0x174(r3)
|
|
/* 8009024C 28 00 00 00 */ cmplwi r0, 0
|
|
/* 80090250 40 82 00 7C */ bne lbl_800902CC
|
|
/* 80090254 38 81 00 08 */ addi r4, r1, 8
|
|
/* 80090258 3C A0 80 38 */ lis r5, d_d_ev_camera__stringBase0@ha /* 0x8037AAF4@ha */
|
|
/* 8009025C 38 A5 AA F4 */ addi r5, r5, d_d_ev_camera__stringBase0@l /* 0x8037AAF4@l */
|
|
/* 80090260 38 A5 01 65 */ addi r5, r5, 0x165
|
|
/* 80090264 3C C0 80 40 */ lis r6, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
|
/* 80090268 38 C6 61 C0 */ addi r6, r6, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
|
/* 8009026C 88 C6 4F B3 */ lbz r6, 0x4fb3(r6)
|
|
/* 80090270 4B FF 8E 1D */ bl getEvIntData__9dCamera_cFPiPci
|
|
/* 80090274 38 00 00 00 */ li r0, 0
|
|
/* 80090278 90 1E 04 F0 */ stw r0, 0x4f0(r30)
|
|
/* 8009027C 90 1E 01 60 */ stw r0, 0x160(r30)
|
|
/* 80090280 90 1E 01 74 */ stw r0, 0x174(r30)
|
|
/* 80090284 80 01 00 08 */ lwz r0, 8(r1)
|
|
/* 80090288 54 03 06 3E */ clrlwi r3, r0, 0x18
|
|
/* 8009028C 4B FB 32 4D */ bl searchMapEventData__14dEvt_control_cFUc
|
|
/* 80090290 90 7E 05 D4 */ stw r3, 0x5d4(r30)
|
|
/* 80090294 38 C0 00 FF */ li r6, 0xff
|
|
/* 80090298 80 7E 05 D4 */ lwz r3, 0x5d4(r30)
|
|
/* 8009029C 28 03 00 00 */ cmplwi r3, 0
|
|
/* 800902A0 41 82 00 14 */ beq lbl_800902B4
|
|
/* 800902A4 88 03 00 00 */ lbz r0, 0(r3)
|
|
/* 800902A8 28 00 00 00 */ cmplwi r0, 0
|
|
/* 800902AC 40 82 00 08 */ bne lbl_800902B4
|
|
/* 800902B0 88 C3 00 16 */ lbz r6, 0x16(r3)
|
|
lbl_800902B4:
|
|
/* 800902B4 7F C3 F3 78 */ mr r3, r30
|
|
/* 800902B8 38 9E 05 0C */ addi r4, r30, 0x50c
|
|
/* 800902BC 3C A0 80 38 */ lis r5, d_d_ev_camera__stringBase0@ha /* 0x8037AAF4@ha */
|
|
/* 800902C0 38 A5 AA F4 */ addi r5, r5, d_d_ev_camera__stringBase0@l /* 0x8037AAF4@l */
|
|
/* 800902C4 38 A5 01 68 */ addi r5, r5, 0x168
|
|
/* 800902C8 4B FF 8D C5 */ bl getEvIntData__9dCamera_cFPiPci
|
|
lbl_800902CC:
|
|
/* 800902CC 83 FE 05 0C */ lwz r31, 0x50c(r30)
|
|
/* 800902D0 80 7E 05 D4 */ lwz r3, 0x5d4(r30)
|
|
/* 800902D4 28 03 00 00 */ cmplwi r3, 0
|
|
/* 800902D8 41 82 00 0C */ beq lbl_800902E4
|
|
/* 800902DC 2C 1F 00 FF */ cmpwi r31, 0xff
|
|
/* 800902E0 40 82 00 0C */ bne lbl_800902EC
|
|
lbl_800902E4:
|
|
/* 800902E4 38 60 00 01 */ li r3, 1
|
|
/* 800902E8 48 00 01 78 */ b lbl_80090460
|
|
lbl_800902EC:
|
|
/* 800902EC 8B AD 87 E4 */ lbz r29, struct_80450D64+0x0(r13)
|
|
/* 800902F0 7F BD 07 74 */ extsb r29, r29
|
|
/* 800902F4 88 63 00 04 */ lbz r3, 4(r3)
|
|
/* 800902F8 4B FF 87 01 */ bl func_800889F8
|
|
/* 800902FC 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 80090300 41 82 00 08 */ beq lbl_80090308
|
|
/* 80090304 3B A0 FF FF */ li r29, -1
|
|
lbl_80090308:
|
|
/* 80090308 80 7E 05 D4 */ lwz r3, 0x5d4(r30)
|
|
/* 8009030C 88 03 00 00 */ lbz r0, 0(r3)
|
|
/* 80090310 28 00 00 00 */ cmplwi r0, 0
|
|
/* 80090314 40 82 00 3C */ bne lbl_80090350
|
|
/* 80090318 88 03 00 0C */ lbz r0, 0xc(r3)
|
|
/* 8009031C 28 00 00 FF */ cmplwi r0, 0xff
|
|
/* 80090320 41 82 00 30 */ beq lbl_80090350
|
|
/* 80090324 54 00 07 FF */ clrlwi. r0, r0, 0x1f
|
|
/* 80090328 41 82 00 10 */ beq lbl_80090338
|
|
/* 8009032C 80 1E 06 0C */ lwz r0, 0x60c(r30)
|
|
/* 80090330 54 00 02 D2 */ rlwinm r0, r0, 0, 0xb, 9
|
|
/* 80090334 90 1E 06 0C */ stw r0, 0x60c(r30)
|
|
lbl_80090338:
|
|
/* 80090338 80 7E 05 D4 */ lwz r3, 0x5d4(r30)
|
|
/* 8009033C 88 03 00 0C */ lbz r0, 0xc(r3)
|
|
/* 80090340 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
|
|
/* 80090344 41 82 00 0C */ beq lbl_80090350
|
|
/* 80090348 38 00 00 00 */ li r0, 0
|
|
/* 8009034C 90 1E 00 88 */ stw r0, 0x88(r30)
|
|
lbl_80090350:
|
|
/* 80090350 7F C3 F3 78 */ mr r3, r30
|
|
/* 80090354 7F E4 FB 78 */ mr r4, r31
|
|
/* 80090358 7F A5 EB 78 */ mr r5, r29
|
|
/* 8009035C 48 0D 45 E9 */ bl GetCameraTypeFromMapToolID__9dCamera_cFll
|
|
/* 80090360 90 7E 04 F4 */ stw r3, 0x4f4(r30)
|
|
/* 80090364 3B E0 00 00 */ li r31, 0
|
|
/* 80090368 80 1E 04 F4 */ lwz r0, 0x4f4(r30)
|
|
/* 8009036C 2C 00 00 FF */ cmpwi r0, 0xff
|
|
/* 80090370 41 82 00 80 */ beq lbl_800903F0
|
|
/* 80090374 80 7E 06 84 */ lwz r3, 0x684(r30)
|
|
/* 80090378 1C 00 00 44 */ mulli r0, r0, 0x44
|
|
/* 8009037C 7C 63 02 14 */ add r3, r3, r0
|
|
/* 80090380 80 1E 01 90 */ lwz r0, 0x190(r30)
|
|
/* 80090384 1C 00 00 16 */ mulli r0, r0, 0x16
|
|
/* 80090388 7C 63 02 14 */ add r3, r3, r0
|
|
/* 8009038C A8 83 00 18 */ lha r4, 0x18(r3)
|
|
/* 80090390 7F C3 F3 78 */ mr r3, r30
|
|
/* 80090394 80 BE 0A F4 */ lwz r5, 0xaf4(r30)
|
|
/* 80090398 1C 04 00 78 */ mulli r0, r4, 0x78
|
|
/* 8009039C 7C A5 02 14 */ add r5, r5, r0
|
|
/* 800903A0 A0 05 00 04 */ lhz r0, 4(r5)
|
|
/* 800903A4 1C C0 00 0C */ mulli r6, r0, 0xc
|
|
/* 800903A8 3C A0 80 3C */ lis r5, engine_tbl__9dCamera_c@ha /* 0x803BA25C@ha */
|
|
/* 800903AC 38 05 A2 5C */ addi r0, r5, engine_tbl__9dCamera_c@l /* 0x803BA25C@l */
|
|
/* 800903B0 7D 80 32 14 */ add r12, r0, r6
|
|
/* 800903B4 48 2D 1C D1 */ bl __ptmf_scall
|
|
/* 800903B8 60 00 00 00 */ nop
|
|
/* 800903BC 80 9E 05 D4 */ lwz r4, 0x5d4(r30)
|
|
/* 800903C0 88 04 00 00 */ lbz r0, 0(r4)
|
|
/* 800903C4 28 00 00 00 */ cmplwi r0, 0
|
|
/* 800903C8 40 82 00 98 */ bne lbl_80090460
|
|
/* 800903CC A0 64 00 14 */ lhz r3, 0x14(r4)
|
|
/* 800903D0 28 03 00 FF */ cmplwi r3, 0xff
|
|
/* 800903D4 41 82 00 10 */ beq lbl_800903E4
|
|
/* 800903D8 80 1E 01 74 */ lwz r0, 0x174(r30)
|
|
/* 800903DC 7C 00 18 40 */ cmplw r0, r3
|
|
/* 800903E0 40 81 00 1C */ ble lbl_800903FC
|
|
lbl_800903E4:
|
|
/* 800903E4 3B E0 00 01 */ li r31, 1
|
|
/* 800903E8 48 00 00 14 */ b lbl_800903FC
|
|
/* 800903EC 48 00 00 74 */ b lbl_80090460
|
|
lbl_800903F0:
|
|
/* 800903F0 38 00 00 00 */ li r0, 0
|
|
/* 800903F4 90 1E 05 D4 */ stw r0, 0x5d4(r30)
|
|
/* 800903F8 3B E0 00 01 */ li r31, 1
|
|
lbl_800903FC:
|
|
/* 800903FC 57 E0 06 3F */ clrlwi. r0, r31, 0x18
|
|
/* 80090400 41 82 00 5C */ beq lbl_8009045C
|
|
/* 80090404 80 7E 05 D4 */ lwz r3, 0x5d4(r30)
|
|
/* 80090408 88 03 00 00 */ lbz r0, 0(r3)
|
|
/* 8009040C 28 00 00 00 */ cmplwi r0, 0
|
|
/* 80090410 40 82 00 44 */ bne lbl_80090454
|
|
/* 80090414 88 03 00 0C */ lbz r0, 0xc(r3)
|
|
/* 80090418 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a
|
|
/* 8009041C 41 82 00 38 */ beq lbl_80090454
|
|
/* 80090420 38 60 00 01 */ li r3, 1
|
|
/* 80090424 80 1E 01 7C */ lwz r0, 0x17c(r30)
|
|
/* 80090428 54 05 30 32 */ slwi r5, r0, 6
|
|
/* 8009042C 3C 80 80 3E */ lis r4, m_cpadInfo__8mDoCPd_c@ha /* 0x803DD2E8@ha */
|
|
/* 80090430 38 04 D2 E8 */ addi r0, r4, m_cpadInfo__8mDoCPd_c@l /* 0x803DD2E8@l */
|
|
/* 80090434 7C 80 2A 14 */ add r4, r0, r5
|
|
/* 80090438 80 84 00 30 */ lwz r4, 0x30(r4)
|
|
/* 8009043C 54 80 05 EF */ rlwinm. r0, r4, 0, 0x17, 0x17
|
|
/* 80090440 40 82 00 20 */ bne lbl_80090460
|
|
/* 80090444 54 80 05 AD */ rlwinm. r0, r4, 0, 0x16, 0x16
|
|
/* 80090448 40 82 00 18 */ bne lbl_80090460
|
|
/* 8009044C 38 60 00 00 */ li r3, 0
|
|
/* 80090450 48 00 00 10 */ b lbl_80090460
|
|
lbl_80090454:
|
|
/* 80090454 38 60 00 01 */ li r3, 1
|
|
/* 80090458 48 00 00 08 */ b lbl_80090460
|
|
lbl_8009045C:
|
|
/* 8009045C 38 60 00 00 */ li r3, 0
|
|
lbl_80090460:
|
|
/* 80090460 39 61 00 20 */ addi r11, r1, 0x20
|
|
/* 80090464 48 2D 1D C5 */ bl _restgpr_29
|
|
/* 80090468 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8009046C 7C 08 03 A6 */ mtlr r0
|
|
/* 80090470 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 80090474 4E 80 00 20 */ blr
|