mirror of https://github.com/zeldaret/tp.git
186 lines
7.4 KiB
ArmAsm
186 lines
7.4 KiB
ArmAsm
lbl_8003219C:
|
|
/* 8003219C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 800321A0 7C 08 02 A6 */ mflr r0
|
|
/* 800321A4 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 800321A8 DB E1 00 10 */ stfd f31, 0x10(r1)
|
|
/* 800321AC F3 E1 00 18 */ psq_st f31, 24(r1), 0, 0 /* qr0 */
|
|
/* 800321B0 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 800321B4 7C 7F 1B 78 */ mr r31, r3
|
|
/* 800321B8 88 03 00 0C */ lbz r0, 0xc(r3)
|
|
/* 800321BC 98 03 00 0D */ stb r0, 0xd(r3)
|
|
/* 800321C0 81 83 00 00 */ lwz r12, 0(r3)
|
|
/* 800321C4 81 8C 00 08 */ lwz r12, 8(r12)
|
|
/* 800321C8 7D 89 03 A6 */ mtctr r12
|
|
/* 800321CC 4E 80 04 21 */ bctrl
|
|
/* 800321D0 FF E0 08 90 */ fmr f31, f1
|
|
/* 800321D4 7F E3 FB 78 */ mr r3, r31
|
|
/* 800321D8 81 9F 00 00 */ lwz r12, 0(r31)
|
|
/* 800321DC 81 8C 00 0C */ lwz r12, 0xc(r12)
|
|
/* 800321E0 7D 89 03 A6 */ mtctr r12
|
|
/* 800321E4 4E 80 04 21 */ bctrl
|
|
/* 800321E8 38 C0 00 00 */ li r6, 0
|
|
/* 800321EC A8 1F 00 26 */ lha r0, 0x26(r31)
|
|
/* 800321F0 20 00 20 00 */ subfic r0, r0, 0x2000
|
|
/* 800321F4 7C 00 0E 70 */ srawi r0, r0, 1
|
|
/* 800321F8 7C 07 07 34 */ extsh r7, r0
|
|
/* 800321FC FC 00 FA 10 */ fabs f0, f31
|
|
/* 80032200 FC 20 00 18 */ frsp f1, f0
|
|
/* 80032204 C0 0D 8C 00 */ lfs f0, G_CM3D_F_ABS_MIN(r13)
|
|
/* 80032208 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8003220C 41 80 01 98 */ blt lbl_800323A4
|
|
/* 80032210 7C 65 07 34 */ extsh r5, r3
|
|
/* 80032214 A8 9F 00 22 */ lha r4, 0x22(r31)
|
|
/* 80032218 7C 64 3A 14 */ add r3, r4, r7
|
|
/* 8003221C 38 03 90 00 */ addi r0, r3, -28672
|
|
/* 80032220 7C 05 00 00 */ cmpw r5, r0
|
|
/* 80032224 40 80 00 10 */ bge lbl_80032234
|
|
/* 80032228 60 C0 00 04 */ ori r0, r6, 4
|
|
/* 8003222C 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 80032230 48 00 00 C4 */ b lbl_800322F4
|
|
lbl_80032234:
|
|
/* 80032234 38 04 B0 00 */ addi r0, r4, -20480
|
|
/* 80032238 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 8003223C 7C 05 00 00 */ cmpw r5, r0
|
|
/* 80032240 40 80 00 10 */ bge lbl_80032250
|
|
/* 80032244 60 C0 00 05 */ ori r0, r6, 5
|
|
/* 80032248 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 8003224C 48 00 00 A8 */ b lbl_800322F4
|
|
lbl_80032250:
|
|
/* 80032250 38 03 D0 00 */ addi r0, r3, -12288
|
|
/* 80032254 7C 05 00 00 */ cmpw r5, r0
|
|
/* 80032258 40 80 00 10 */ bge lbl_80032268
|
|
/* 8003225C 60 C0 00 01 */ ori r0, r6, 1
|
|
/* 80032260 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 80032264 48 00 00 90 */ b lbl_800322F4
|
|
lbl_80032268:
|
|
/* 80032268 38 04 F0 00 */ addi r0, r4, -4096
|
|
/* 8003226C 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 80032270 7C 05 00 00 */ cmpw r5, r0
|
|
/* 80032274 40 80 00 10 */ bge lbl_80032284
|
|
/* 80032278 60 C0 00 09 */ ori r0, r6, 9
|
|
/* 8003227C 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 80032280 48 00 00 74 */ b lbl_800322F4
|
|
lbl_80032284:
|
|
/* 80032284 38 03 10 00 */ addi r0, r3, 0x1000
|
|
/* 80032288 7C 05 00 00 */ cmpw r5, r0
|
|
/* 8003228C 40 80 00 10 */ bge lbl_8003229C
|
|
/* 80032290 60 C0 00 08 */ ori r0, r6, 8
|
|
/* 80032294 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 80032298 48 00 00 5C */ b lbl_800322F4
|
|
lbl_8003229C:
|
|
/* 8003229C 38 04 30 00 */ addi r0, r4, 0x3000
|
|
/* 800322A0 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 800322A4 7C 05 00 00 */ cmpw r5, r0
|
|
/* 800322A8 40 80 00 10 */ bge lbl_800322B8
|
|
/* 800322AC 60 C0 00 0A */ ori r0, r6, 0xa
|
|
/* 800322B0 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 800322B4 48 00 00 40 */ b lbl_800322F4
|
|
lbl_800322B8:
|
|
/* 800322B8 38 03 50 00 */ addi r0, r3, 0x5000
|
|
/* 800322BC 7C 05 00 00 */ cmpw r5, r0
|
|
/* 800322C0 40 80 00 10 */ bge lbl_800322D0
|
|
/* 800322C4 60 C0 00 02 */ ori r0, r6, 2
|
|
/* 800322C8 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 800322CC 48 00 00 28 */ b lbl_800322F4
|
|
lbl_800322D0:
|
|
/* 800322D0 38 04 70 00 */ addi r0, r4, 0x7000
|
|
/* 800322D4 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 800322D8 7C 05 00 00 */ cmpw r5, r0
|
|
/* 800322DC 40 80 00 10 */ bge lbl_800322EC
|
|
/* 800322E0 60 C0 00 06 */ ori r0, r6, 6
|
|
/* 800322E4 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
/* 800322E8 48 00 00 0C */ b lbl_800322F4
|
|
lbl_800322EC:
|
|
/* 800322EC 60 C0 00 04 */ ori r0, r6, 4
|
|
/* 800322F0 54 06 06 3E */ clrlwi r6, r0, 0x18
|
|
lbl_800322F4:
|
|
/* 800322F4 C0 1F 00 04 */ lfs f0, 4(r31)
|
|
/* 800322F8 FC 1F 00 40 */ fcmpo cr0, f31, f0
|
|
/* 800322FC 4C 41 13 82 */ cror 2, 1, 2
|
|
/* 80032300 40 82 00 0C */ bne lbl_8003230C
|
|
/* 80032304 98 DF 00 0C */ stb r6, 0xc(r31)
|
|
/* 80032308 48 00 00 28 */ b lbl_80032330
|
|
lbl_8003230C:
|
|
/* 8003230C C0 1F 00 08 */ lfs f0, 8(r31)
|
|
/* 80032310 FC 1F 00 40 */ fcmpo cr0, f31, f0
|
|
/* 80032314 40 80 00 10 */ bge lbl_80032324
|
|
/* 80032318 38 00 00 00 */ li r0, 0
|
|
/* 8003231C 98 1F 00 0C */ stb r0, 0xc(r31)
|
|
/* 80032320 48 00 00 10 */ b lbl_80032330
|
|
lbl_80032324:
|
|
/* 80032324 88 1F 00 0C */ lbz r0, 0xc(r31)
|
|
/* 80032328 7C 00 30 78 */ andc r0, r0, r6
|
|
/* 8003232C 98 1F 00 0C */ stb r0, 0xc(r31)
|
|
lbl_80032330:
|
|
/* 80032330 88 7F 00 0C */ lbz r3, 0xc(r31)
|
|
/* 80032334 88 1F 00 0D */ lbz r0, 0xd(r31)
|
|
/* 80032338 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8003233C 41 82 00 3C */ beq lbl_80032378
|
|
/* 80032340 28 03 00 00 */ cmplwi r3, 0
|
|
/* 80032344 40 82 00 10 */ bne lbl_80032354
|
|
/* 80032348 38 00 00 00 */ li r0, 0
|
|
/* 8003234C B0 1F 00 22 */ sth r0, 0x22(r31)
|
|
/* 80032350 48 00 00 28 */ b lbl_80032378
|
|
lbl_80032354:
|
|
/* 80032354 54 A0 04 FE */ clrlwi r0, r5, 0x13
|
|
/* 80032358 2C 00 10 00 */ cmpwi r0, 0x1000
|
|
/* 8003235C 40 81 00 10 */ ble lbl_8003236C
|
|
/* 80032360 A8 1F 00 24 */ lha r0, 0x24(r31)
|
|
/* 80032364 B0 1F 00 22 */ sth r0, 0x22(r31)
|
|
/* 80032368 48 00 00 10 */ b lbl_80032378
|
|
lbl_8003236C:
|
|
/* 8003236C A8 1F 00 24 */ lha r0, 0x24(r31)
|
|
/* 80032370 7C 00 00 D0 */ neg r0, r0
|
|
/* 80032374 B0 1F 00 22 */ sth r0, 0x22(r31)
|
|
lbl_80032378:
|
|
/* 80032378 88 1F 00 0C */ lbz r0, 0xc(r31)
|
|
/* 8003237C 54 00 07 BF */ clrlwi. r0, r0, 0x1e
|
|
/* 80032380 40 82 00 0C */ bne lbl_8003238C
|
|
/* 80032384 7F E3 FB 78 */ mr r3, r31
|
|
/* 80032388 4B FF FD 75 */ bl Xinit__9STControlFv
|
|
lbl_8003238C:
|
|
/* 8003238C 88 1F 00 0C */ lbz r0, 0xc(r31)
|
|
/* 80032390 54 00 07 3B */ rlwinm. r0, r0, 0, 0x1c, 0x1d
|
|
/* 80032394 40 82 00 28 */ bne lbl_800323BC
|
|
/* 80032398 7F E3 FB 78 */ mr r3, r31
|
|
/* 8003239C 4B FF FD 91 */ bl Yinit__9STControlFv
|
|
/* 800323A0 48 00 00 1C */ b lbl_800323BC
|
|
lbl_800323A4:
|
|
/* 800323A4 38 00 00 00 */ li r0, 0
|
|
/* 800323A8 98 1F 00 0C */ stb r0, 0xc(r31)
|
|
/* 800323AC 7F E3 FB 78 */ mr r3, r31
|
|
/* 800323B0 4B FF FD 4D */ bl Xinit__9STControlFv
|
|
/* 800323B4 7F E3 FB 78 */ mr r3, r31
|
|
/* 800323B8 4B FF FD 75 */ bl Yinit__9STControlFv
|
|
lbl_800323BC:
|
|
/* 800323BC 88 7F 00 0D */ lbz r3, 0xd(r31)
|
|
/* 800323C0 88 1F 00 0C */ lbz r0, 0xc(r31)
|
|
/* 800323C4 7C 60 00 38 */ and r0, r3, r0
|
|
/* 800323C8 54 00 07 BF */ clrlwi. r0, r0, 0x1e
|
|
/* 800323CC 41 82 00 18 */ beq lbl_800323E4
|
|
/* 800323D0 A8 7F 00 0E */ lha r3, 0xe(r31)
|
|
/* 800323D4 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 800323D8 40 81 00 0C */ ble lbl_800323E4
|
|
/* 800323DC 38 03 FF FF */ addi r0, r3, -1
|
|
/* 800323E0 B0 1F 00 0E */ sth r0, 0xe(r31)
|
|
lbl_800323E4:
|
|
/* 800323E4 88 7F 00 0D */ lbz r3, 0xd(r31)
|
|
/* 800323E8 88 1F 00 0C */ lbz r0, 0xc(r31)
|
|
/* 800323EC 7C 60 00 38 */ and r0, r3, r0
|
|
/* 800323F0 54 00 07 3B */ rlwinm. r0, r0, 0, 0x1c, 0x1d
|
|
/* 800323F4 41 82 00 18 */ beq lbl_8003240C
|
|
/* 800323F8 A8 7F 00 10 */ lha r3, 0x10(r31)
|
|
/* 800323FC 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 80032400 40 81 00 0C */ ble lbl_8003240C
|
|
/* 80032404 38 03 FF FF */ addi r0, r3, -1
|
|
/* 80032408 B0 1F 00 10 */ sth r0, 0x10(r31)
|
|
lbl_8003240C:
|
|
/* 8003240C 88 7F 00 0C */ lbz r3, 0xc(r31)
|
|
/* 80032410 E3 E1 00 18 */ psq_l f31, 24(r1), 0, 0 /* qr0 */
|
|
/* 80032414 CB E1 00 10 */ lfd f31, 0x10(r1)
|
|
/* 80032418 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8003241C 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 80032420 7C 08 03 A6 */ mtlr r0
|
|
/* 80032424 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 80032428 4E 80 00 20 */ blr
|