mirror of https://github.com/zeldaret/tp.git
Various matches (#378)
* Maybe improve JMAEulerToQuat * JKRFileLoader OK * JUTCacheFont work * Match J3DModel::prepareShapePackets * JUTDirectFile OK * JUTDirectPrint OK * Work on JUTProcBar * Work on JUTResFont
This commit is contained in:
parent
aba19d36a5
commit
2e17762012
|
|
@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes)
|
|||
.init | 97.972973% | 9280 | 9472
|
||||
.extab | 100.000000% | 96 | 96
|
||||
.extabindex | 100.000000% | 96 | 96
|
||||
.text | 29.144201% | 1048184 | 3596544
|
||||
.text | 29.223610% | 1051040 | 3596544
|
||||
.ctors | 100.000000% | 448 | 448
|
||||
.dtors | 100.000000% | 32 | 32
|
||||
.rodata | 100.000000% | 193856 | 193856
|
||||
.data | 100.000000% | 197632 | 197632
|
||||
.sdata | 100.000000% | 1408 | 1408
|
||||
.sdata2 | 100.000000% | 20832 | 20832
|
||||
Total | 36.613780% | 1472120 | 4020672
|
||||
Total | 36.684813% | 1474976 | 4020672
|
||||
|
||||
## Total
|
||||
|
||||
Section | Percentage | Decompiled (bytes) | Total (bytes)
|
||||
---|---|---|---
|
||||
main.dol | 36.613780% | 1472120 | 4020672
|
||||
main.dol | 36.684813% | 1474976 | 4020672
|
||||
RELs | 33.883741% | 3896740 | 11500324
|
||||
Total | 34.590950% | 5368860 | 15520996
|
||||
Total | 34.609351% | 5371716 | 15520996
|
||||
|
||||
## RELs
|
||||
|
||||
|
|
|
|||
|
|
@ -1,30 +0,0 @@
|
|||
lbl_803282EC:
|
||||
/* 803282EC 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 803282F0 A0 04 00 7C */ lhz r0, 0x7c(r4)
|
||||
/* 803282F4 39 00 00 00 */ li r8, 0
|
||||
/* 803282F8 38 C3 00 54 */ addi r6, r3, 0x54
|
||||
/* 803282FC 3C 80 80 43 */ lis r4, j3dSys@ha /* 0x80434AC8@ha */
|
||||
/* 80328300 38 A4 4A C8 */ addi r5, r4, j3dSys@l /* 0x80434AC8@l */
|
||||
/* 80328304 48 00 00 3C */ b lbl_80328340
|
||||
lbl_80328308:
|
||||
/* 80328308 55 04 04 3E */ clrlwi r4, r8, 0x10
|
||||
/* 8032830C 80 E3 00 C4 */ lwz r7, 0xc4(r3)
|
||||
/* 80328310 1C 84 00 3C */ mulli r4, r4, 0x3c
|
||||
/* 80328314 7C E7 22 14 */ add r7, r7, r4
|
||||
/* 80328318 80 83 00 84 */ lwz r4, 0x84(r3)
|
||||
/* 8032831C 90 87 00 2C */ stw r4, 0x2c(r7)
|
||||
/* 80328320 80 83 00 08 */ lwz r4, 8(r3)
|
||||
/* 80328324 54 84 07 BE */ clrlwi r4, r4, 0x1e
|
||||
/* 80328328 28 04 00 02 */ cmplwi r4, 2
|
||||
/* 8032832C 40 82 00 0C */ bne lbl_80328338
|
||||
/* 80328330 90 C7 00 30 */ stw r6, 0x30(r7)
|
||||
/* 80328334 48 00 00 08 */ b lbl_8032833C
|
||||
lbl_80328338:
|
||||
/* 80328338 90 A7 00 30 */ stw r5, 0x30(r7)
|
||||
lbl_8032833C:
|
||||
/* 8032833C 39 08 00 01 */ addi r8, r8, 1
|
||||
lbl_80328340:
|
||||
/* 80328340 55 04 04 3E */ clrlwi r4, r8, 0x10
|
||||
/* 80328344 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 80328348 41 80 FF C0 */ blt lbl_80328308
|
||||
/* 8032834C 4E 80 00 20 */ blr
|
||||
|
|
@ -3,7 +3,7 @@ lbl_8032CF44:
|
|||
/* 8032CF48 7C 08 02 A6 */ mflr r0
|
||||
/* 8032CF4C 90 01 00 74 */ stw r0, 0x74(r1)
|
||||
/* 8032CF50 39 61 00 70 */ addi r11, r1, 0x70
|
||||
/* 8032CF54 48 03 52 4D */ bl __save_gpr
|
||||
/* 8032CF54 48 03 52 4D */ bl _savegpr_14
|
||||
/* 8032CF58 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8032CF5C 7C 90 23 78 */ mr r16, r4
|
||||
/* 8032CF60 80 03 00 04 */ lwz r0, 4(r3)
|
||||
|
|
@ -300,7 +300,7 @@ lbl_8032D350:
|
|||
/* 8032D35C 38 60 00 00 */ li r3, 0
|
||||
lbl_8032D360:
|
||||
/* 8032D360 39 61 00 70 */ addi r11, r1, 0x70
|
||||
/* 8032D364 48 03 4E 89 */ bl __restore_gpr
|
||||
/* 8032D364 48 03 4E 89 */ bl _restgpr_14
|
||||
/* 8032D368 80 01 00 74 */ lwz r0, 0x74(r1)
|
||||
/* 8032D36C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8032D370 38 21 00 70 */ addi r1, r1, 0x70
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_8030DB04:
|
|||
/* 8030DB08 7C 08 02 A6 */ mflr r0
|
||||
/* 8030DB0C 90 01 00 A4 */ stw r0, 0xa4(r1)
|
||||
/* 8030DB10 39 61 00 A0 */ addi r11, r1, 0xa0
|
||||
/* 8030DB14 48 05 46 8D */ bl __save_gpr
|
||||
/* 8030DB14 48 05 46 8D */ bl _savegpr_14
|
||||
/* 8030DB18 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8030DB1C 38 00 00 01 */ li r0, 1
|
||||
/* 8030DB20 90 01 00 48 */ stw r0, 0x48(r1)
|
||||
|
|
@ -344,7 +344,7 @@ lbl_8030DD5C:
|
|||
/* 8030E044 90 04 00 08 */ stw r0, 8(r4)
|
||||
/* 8030E048 98 C3 00 00 */ stb r6, 0(r3)
|
||||
/* 8030E04C 39 61 00 A0 */ addi r11, r1, 0xa0
|
||||
/* 8030E050 48 05 41 9D */ bl __restore_gpr
|
||||
/* 8030E050 48 05 41 9D */ bl _restgpr_14
|
||||
/* 8030E054 80 01 00 A4 */ lwz r0, 0xa4(r1)
|
||||
/* 8030E058 7C 08 03 A6 */ mtlr r0
|
||||
/* 8030E05C 38 21 00 A0 */ addi r1, r1, 0xa0
|
||||
|
|
|
|||
|
|
@ -1,65 +0,0 @@
|
|||
lbl_802D44C4:
|
||||
/* 802D44C4 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802D44C8 7C 08 02 A6 */ mflr r0
|
||||
/* 802D44CC 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802D44D0 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802D44D4 48 08 DD 09 */ bl _savegpr_29
|
||||
/* 802D44D8 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 802D44DC 7C 9E 23 78 */ mr r30, r4
|
||||
/* 802D44E0 7C BF 2B 78 */ mr r31, r5
|
||||
/* 802D44E4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802D44E8 3C 80 80 3A */ lis r4, JKRFileLoader__stringBase0@ha /* 0x8039D150@ha */
|
||||
/* 802D44EC 38 84 D1 50 */ addi r4, r4, JKRFileLoader__stringBase0@l /* 0x8039D150@l */
|
||||
/* 802D44F0 48 09 44 A5 */ bl strcmp
|
||||
/* 802D44F4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 802D44F8 40 82 00 18 */ bne lbl_802D4510
|
||||
/* 802D44FC 7F A3 EB 78 */ mr r3, r29
|
||||
/* 802D4500 38 8D 83 40 */ la r4, rootPath(r13) /* 804508C0-_SDA_BASE_ */
|
||||
/* 802D4504 48 09 46 29 */ bl strcpy
|
||||
/* 802D4508 38 6D 83 40 */ la r3, rootPath(r13) /* 804508C0-_SDA_BASE_ */
|
||||
/* 802D450C 48 00 00 7C */ b lbl_802D4588
|
||||
lbl_802D4510:
|
||||
/* 802D4510 3C 60 80 3D */ lis r3, __lower_map@ha /* 0x803D2D18@ha */
|
||||
/* 802D4514 38 63 2D 18 */ addi r3, r3, __lower_map@l /* 0x803D2D18@l */
|
||||
/* 802D4518 3B FF 00 01 */ addi r31, r31, 1
|
||||
/* 802D451C 48 00 00 38 */ b lbl_802D4554
|
||||
lbl_802D4520:
|
||||
/* 802D4520 2C 1E 00 01 */ cmpwi r30, 1
|
||||
/* 802D4524 40 81 00 2C */ ble lbl_802D4550
|
||||
/* 802D4528 7C 80 07 74 */ extsb r0, r4
|
||||
/* 802D452C 2C 00 FF FF */ cmpwi r0, -1
|
||||
/* 802D4530 40 82 00 0C */ bne lbl_802D453C
|
||||
/* 802D4534 38 00 FF FF */ li r0, -1
|
||||
/* 802D4538 48 00 00 0C */ b lbl_802D4544
|
||||
lbl_802D453C:
|
||||
/* 802D453C 54 00 06 3E */ clrlwi r0, r0, 0x18
|
||||
/* 802D4540 7C 03 00 AE */ lbzx r0, r3, r0
|
||||
lbl_802D4544:
|
||||
/* 802D4544 98 1D 00 00 */ stb r0, 0(r29)
|
||||
/* 802D4548 3B BD 00 01 */ addi r29, r29, 1
|
||||
/* 802D454C 3B DE FF FF */ addi r30, r30, -1
|
||||
lbl_802D4550:
|
||||
/* 802D4550 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_802D4554:
|
||||
/* 802D4554 88 9F 00 00 */ lbz r4, 0(r31)
|
||||
/* 802D4558 7C 80 07 75 */ extsb. r0, r4
|
||||
/* 802D455C 41 82 00 10 */ beq lbl_802D456C
|
||||
/* 802D4560 7C 80 07 74 */ extsb r0, r4
|
||||
/* 802D4564 2C 00 00 2F */ cmpwi r0, 0x2f
|
||||
/* 802D4568 40 82 FF B8 */ bne lbl_802D4520
|
||||
lbl_802D456C:
|
||||
/* 802D456C 38 00 00 00 */ li r0, 0
|
||||
/* 802D4570 98 1D 00 00 */ stb r0, 0(r29)
|
||||
/* 802D4574 88 1F 00 00 */ lbz r0, 0(r31)
|
||||
/* 802D4578 7C 00 07 75 */ extsb. r0, r0
|
||||
/* 802D457C 40 82 00 08 */ bne lbl_802D4584
|
||||
/* 802D4580 3B ED 83 40 */ la r31, rootPath(r13) /* 804508C0-_SDA_BASE_ */
|
||||
lbl_802D4584:
|
||||
/* 802D4584 7F E3 FB 78 */ mr r3, r31
|
||||
lbl_802D4588:
|
||||
/* 802D4588 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802D458C 48 08 DC 9D */ bl _restgpr_29
|
||||
/* 802D4590 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802D4594 7C 08 03 A6 */ mtlr r0
|
||||
/* 802D4598 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802D459C 4E 80 00 20 */ blr
|
||||
|
|
@ -3,7 +3,7 @@ lbl_80274080:
|
|||
/* 80274084 7C 08 02 A6 */ mflr r0
|
||||
/* 80274088 90 01 00 64 */ stw r0, 0x64(r1)
|
||||
/* 8027408C 39 61 00 60 */ addi r11, r1, 0x60
|
||||
/* 80274090 48 0E E1 11 */ bl __save_gpr
|
||||
/* 80274090 48 0E E1 11 */ bl _savegpr_14
|
||||
/* 80274094 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 80274098 7C 90 23 78 */ mr r16, r4
|
||||
/* 8027409C 80 63 00 1C */ lwz r3, 0x1c(r3)
|
||||
|
|
@ -1532,7 +1532,7 @@ lbl_802755BC:
|
|||
/* 802755CC 7C A4 01 2E */ stwx r5, r4, r0
|
||||
lbl_802755D0:
|
||||
/* 802755D0 39 61 00 60 */ addi r11, r1, 0x60
|
||||
/* 802755D4 48 0E CC 19 */ bl __restore_gpr
|
||||
/* 802755D4 48 0E CC 19 */ bl _restgpr_14
|
||||
/* 802755D8 80 01 00 64 */ lwz r0, 0x64(r1)
|
||||
/* 802755DC 7C 08 03 A6 */ mtlr r0
|
||||
/* 802755E0 38 21 00 60 */ addi r1, r1, 0x60
|
||||
|
|
|
|||
|
|
@ -1,66 +0,0 @@
|
|||
lbl_802DD804:
|
||||
/* 802DD804 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802DD808 7C 08 02 A6 */ mflr r0
|
||||
/* 802DD80C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802DD810 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802DD814 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802DD818 A0 A3 00 64 */ lhz r5, 0x64(r3)
|
||||
/* 802DD81C A0 63 00 60 */ lhz r3, 0x60(r3)
|
||||
/* 802DD820 A0 1F 00 62 */ lhz r0, 0x62(r31)
|
||||
/* 802DD824 7C 00 2A 14 */ add r0, r0, r5
|
||||
/* 802DD828 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 802DD82C 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 802DD830 38 A0 00 00 */ li r5, 0
|
||||
/* 802DD834 4B FF 14 DD */ bl __nwa__FUlP7JKRHeapi
|
||||
/* 802DD838 90 7F 00 50 */ stw r3, 0x50(r31)
|
||||
/* 802DD83C 80 7F 00 50 */ lwz r3, 0x50(r31)
|
||||
/* 802DD840 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802DD844 40 82 00 0C */ bne lbl_802DD850
|
||||
/* 802DD848 38 60 00 00 */ li r3, 0
|
||||
/* 802DD84C 48 00 00 8C */ b lbl_802DD8D8
|
||||
lbl_802DD850:
|
||||
/* 802DD850 7C 65 1B 78 */ mr r5, r3
|
||||
/* 802DD854 A0 1F 00 60 */ lhz r0, 0x60(r31)
|
||||
/* 802DD858 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802DD85C 41 82 00 14 */ beq lbl_802DD870
|
||||
/* 802DD860 90 7F 00 54 */ stw r3, 0x54(r31)
|
||||
/* 802DD864 A0 1F 00 60 */ lhz r0, 0x60(r31)
|
||||
/* 802DD868 54 00 10 3A */ slwi r0, r0, 2
|
||||
/* 802DD86C 7C A3 02 14 */ add r5, r3, r0
|
||||
lbl_802DD870:
|
||||
/* 802DD870 A0 1F 00 62 */ lhz r0, 0x62(r31)
|
||||
/* 802DD874 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802DD878 41 82 00 4C */ beq lbl_802DD8C4
|
||||
/* 802DD87C 90 BF 00 58 */ stw r5, 0x58(r31)
|
||||
/* 802DD880 A0 1F 00 62 */ lhz r0, 0x62(r31)
|
||||
/* 802DD884 54 00 10 3A */ slwi r0, r0, 2
|
||||
/* 802DD888 7C A5 02 14 */ add r5, r5, r0
|
||||
/* 802DD88C 38 C0 00 00 */ li r6, 0
|
||||
/* 802DD890 38 60 00 00 */ li r3, 0
|
||||
/* 802DD894 48 00 00 24 */ b lbl_802DD8B8
|
||||
lbl_802DD898:
|
||||
/* 802DD898 80 9F 00 90 */ lwz r4, 0x90(r31)
|
||||
/* 802DD89C 80 1F 00 94 */ lwz r0, 0x94(r31)
|
||||
/* 802DD8A0 7C 00 31 D6 */ mullw r0, r0, r6
|
||||
/* 802DD8A4 7C 04 02 14 */ add r0, r4, r0
|
||||
/* 802DD8A8 80 9F 00 58 */ lwz r4, 0x58(r31)
|
||||
/* 802DD8AC 7C 04 19 2E */ stwx r0, r4, r3
|
||||
/* 802DD8B0 38 C6 00 01 */ addi r6, r6, 1
|
||||
/* 802DD8B4 38 63 00 04 */ addi r3, r3, 4
|
||||
lbl_802DD8B8:
|
||||
/* 802DD8B8 A0 1F 00 62 */ lhz r0, 0x62(r31)
|
||||
/* 802DD8BC 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 802DD8C0 41 80 FF D8 */ blt lbl_802DD898
|
||||
lbl_802DD8C4:
|
||||
/* 802DD8C4 A0 1F 00 64 */ lhz r0, 0x64(r31)
|
||||
/* 802DD8C8 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802DD8CC 41 82 00 08 */ beq lbl_802DD8D4
|
||||
/* 802DD8D0 90 BF 00 5C */ stw r5, 0x5c(r31)
|
||||
lbl_802DD8D4:
|
||||
/* 802DD8D4 38 60 00 01 */ li r3, 1
|
||||
lbl_802DD8D8:
|
||||
/* 802DD8D8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802DD8DC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802DD8E0 7C 08 03 A6 */ mtlr r0
|
||||
/* 802DD8E4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802DD8E8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,118 +0,0 @@
|
|||
lbl_802DD35C:
|
||||
/* 802DD35C 94 21 FF B0 */ stwu r1, -0x50(r1)
|
||||
/* 802DD360 7C 08 02 A6 */ mflr r0
|
||||
/* 802DD364 90 01 00 54 */ stw r0, 0x54(r1)
|
||||
/* 802DD368 39 61 00 50 */ addi r11, r1, 0x50
|
||||
/* 802DD36C 48 08 4E 35 */ bl __save_gpr
|
||||
/* 802DD370 7C 99 23 79 */ or. r25, r4, r4
|
||||
/* 802DD374 7C BA 2B 78 */ mr r26, r5
|
||||
/* 802DD378 7C DB 33 78 */ mr r27, r6
|
||||
/* 802DD37C 7C FC 3B 78 */ mr r28, r7
|
||||
/* 802DD380 7D 1D 43 78 */ mr r29, r8
|
||||
/* 802DD384 7D 3E 4B 78 */ mr r30, r9
|
||||
/* 802DD388 7D 5F 53 78 */ mr r31, r10
|
||||
/* 802DD38C 81 E1 00 58 */ lwz r15, 0x58(r1)
|
||||
/* 802DD390 40 82 00 0C */ bne lbl_802DD39C
|
||||
/* 802DD394 38 60 00 00 */ li r3, 0
|
||||
/* 802DD398 48 00 01 3C */ b lbl_802DD4D4
|
||||
lbl_802DD39C:
|
||||
/* 802DD39C 3B 00 00 00 */ li r24, 0
|
||||
/* 802DD3A0 3A E0 00 00 */ li r23, 0
|
||||
/* 802DD3A4 3A C0 00 00 */ li r22, 0
|
||||
/* 802DD3A8 3A A0 00 00 */ li r21, 0
|
||||
/* 802DD3AC 3A 80 00 00 */ li r20, 0
|
||||
/* 802DD3B0 3A 60 00 00 */ li r19, 0
|
||||
/* 802DD3B4 3A 40 00 00 */ li r18, 0
|
||||
/* 802DD3B8 3A 39 00 20 */ addi r17, r25, 0x20
|
||||
/* 802DD3BC 3A 00 00 00 */ li r16, 0
|
||||
/* 802DD3C0 3C 60 4D 41 */ lis r3, 0x4D41 /* 0x4D415031@ha */
|
||||
/* 802DD3C4 39 C3 50 31 */ addi r14, r3, 0x5031 /* 0x4D415031@l */
|
||||
/* 802DD3C8 48 00 00 A8 */ b lbl_802DD470
|
||||
lbl_802DD3CC:
|
||||
/* 802DD3CC 80 91 00 00 */ lwz r4, 0(r17)
|
||||
/* 802DD3D0 7C 04 70 00 */ cmpw r4, r14
|
||||
/* 802DD3D4 41 82 00 74 */ beq lbl_802DD448
|
||||
/* 802DD3D8 40 80 00 2C */ bge lbl_802DD404
|
||||
/* 802DD3DC 3C 60 49 4E */ lis r3, 0x494E /* 0x494E4631@ha */
|
||||
/* 802DD3E0 38 03 46 31 */ addi r0, r3, 0x4631 /* 0x494E4631@l */
|
||||
/* 802DD3E4 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 802DD3E8 41 82 00 7C */ beq lbl_802DD464
|
||||
/* 802DD3EC 40 80 00 6C */ bge lbl_802DD458
|
||||
/* 802DD3F0 3C 60 47 4C */ lis r3, 0x474C /* 0x474C5931@ha */
|
||||
/* 802DD3F4 38 03 59 31 */ addi r0, r3, 0x5931 /* 0x474C5931@l */
|
||||
/* 802DD3F8 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 802DD3FC 41 82 00 2C */ beq lbl_802DD428
|
||||
/* 802DD400 48 00 00 58 */ b lbl_802DD458
|
||||
lbl_802DD404:
|
||||
/* 802DD404 3C 60 57 49 */ lis r3, 0x5749 /* 0x57494431@ha */
|
||||
/* 802DD408 38 03 44 31 */ addi r0, r3, 0x4431 /* 0x57494431@l */
|
||||
/* 802DD40C 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 802DD410 41 82 00 08 */ beq lbl_802DD418
|
||||
/* 802DD414 48 00 00 44 */ b lbl_802DD458
|
||||
lbl_802DD418:
|
||||
/* 802DD418 80 11 00 04 */ lwz r0, 4(r17)
|
||||
/* 802DD41C 7E B5 02 14 */ add r21, r21, r0
|
||||
/* 802DD420 3B 18 00 01 */ addi r24, r24, 1
|
||||
/* 802DD424 48 00 00 40 */ b lbl_802DD464
|
||||
lbl_802DD428:
|
||||
/* 802DD428 80 11 00 04 */ lwz r0, 4(r17)
|
||||
/* 802DD42C 7E 94 02 14 */ add r20, r20, r0
|
||||
/* 802DD430 80 11 00 10 */ lwz r0, 0x10(r17)
|
||||
/* 802DD434 7C 00 90 40 */ cmplw r0, r18
|
||||
/* 802DD438 3A F7 00 01 */ addi r23, r23, 1
|
||||
/* 802DD43C 40 81 00 28 */ ble lbl_802DD464
|
||||
/* 802DD440 7C 12 03 78 */ mr r18, r0
|
||||
/* 802DD444 48 00 00 20 */ b lbl_802DD464
|
||||
lbl_802DD448:
|
||||
/* 802DD448 80 11 00 04 */ lwz r0, 4(r17)
|
||||
/* 802DD44C 7E 73 02 14 */ add r19, r19, r0
|
||||
/* 802DD450 3A D6 00 01 */ addi r22, r22, 1
|
||||
/* 802DD454 48 00 00 10 */ b lbl_802DD464
|
||||
lbl_802DD458:
|
||||
/* 802DD458 3C 60 80 3A */ lis r3, JUTCacheFont__stringBase0@ha /* 0x8039D2F0@ha */
|
||||
/* 802DD45C 38 63 D2 F0 */ addi r3, r3, JUTCacheFont__stringBase0@l /* 0x8039D2F0@l */
|
||||
/* 802DD460 48 00 B1 E9 */ bl JUTReportConsole
|
||||
lbl_802DD464:
|
||||
/* 802DD464 80 11 00 04 */ lwz r0, 4(r17)
|
||||
/* 802DD468 7E 31 02 14 */ add r17, r17, r0
|
||||
/* 802DD46C 3A 10 00 01 */ addi r16, r16, 1
|
||||
lbl_802DD470:
|
||||
/* 802DD470 80 19 00 0C */ lwz r0, 0xc(r25)
|
||||
/* 802DD474 7C 10 00 40 */ cmplw r16, r0
|
||||
/* 802DD478 41 80 FF 54 */ blt lbl_802DD3CC
|
||||
/* 802DD47C 28 1A 00 00 */ cmplwi r26, 0
|
||||
/* 802DD480 41 82 00 08 */ beq lbl_802DD488
|
||||
/* 802DD484 B3 1A 00 00 */ sth r24, 0(r26)
|
||||
lbl_802DD488:
|
||||
/* 802DD488 28 1C 00 00 */ cmplwi r28, 0
|
||||
/* 802DD48C 41 82 00 08 */ beq lbl_802DD494
|
||||
/* 802DD490 B2 FC 00 00 */ sth r23, 0(r28)
|
||||
lbl_802DD494:
|
||||
/* 802DD494 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 802DD498 41 82 00 08 */ beq lbl_802DD4A0
|
||||
/* 802DD49C B2 DE 00 00 */ sth r22, 0(r30)
|
||||
lbl_802DD4A0:
|
||||
/* 802DD4A0 28 1B 00 00 */ cmplwi r27, 0
|
||||
/* 802DD4A4 41 82 00 08 */ beq lbl_802DD4AC
|
||||
/* 802DD4A8 92 BB 00 00 */ stw r21, 0(r27)
|
||||
lbl_802DD4AC:
|
||||
/* 802DD4AC 28 1D 00 00 */ cmplwi r29, 0
|
||||
/* 802DD4B0 41 82 00 08 */ beq lbl_802DD4B8
|
||||
/* 802DD4B4 92 9D 00 00 */ stw r20, 0(r29)
|
||||
lbl_802DD4B8:
|
||||
/* 802DD4B8 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 802DD4BC 41 82 00 08 */ beq lbl_802DD4C4
|
||||
/* 802DD4C0 92 7F 00 00 */ stw r19, 0(r31)
|
||||
lbl_802DD4C4:
|
||||
/* 802DD4C4 28 0F 00 00 */ cmplwi r15, 0
|
||||
/* 802DD4C8 41 82 00 08 */ beq lbl_802DD4D0
|
||||
/* 802DD4CC 92 4F 00 00 */ stw r18, 0(r15)
|
||||
lbl_802DD4D0:
|
||||
/* 802DD4D0 38 60 00 01 */ li r3, 1
|
||||
lbl_802DD4D4:
|
||||
/* 802DD4D4 39 61 00 50 */ addi r11, r1, 0x50
|
||||
/* 802DD4D8 48 08 4D 15 */ bl __restore_gpr
|
||||
/* 802DD4DC 80 01 00 54 */ lwz r0, 0x54(r1)
|
||||
/* 802DD4E0 7C 08 03 A6 */ mtlr r0
|
||||
/* 802DD4E4 38 21 00 50 */ addi r1, r1, 0x50
|
||||
/* 802DD4E8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
lbl_802E87F8:
|
||||
/* 802E87F8 38 80 00 00 */ li r4, 0
|
||||
/* 802E87FC 90 83 08 28 */ stw r4, 0x828(r3)
|
||||
/* 802E8800 90 83 08 2C */ stw r4, 0x82c(r3)
|
||||
/* 802E8804 90 83 08 24 */ stw r4, 0x824(r3)
|
||||
/* 802E8808 38 03 00 1F */ addi r0, r3, 0x1f
|
||||
/* 802E880C 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
|
||||
/* 802E8810 90 03 08 20 */ stw r0, 0x820(r3)
|
||||
/* 802E8814 98 83 08 30 */ stb r4, 0x830(r3)
|
||||
/* 802E8818 4E 80 00 20 */ blr
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
lbl_802E881C:
|
||||
/* 802E881C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802E8820 7C 08 02 A6 */ mflr r0
|
||||
/* 802E8824 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802E8828 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802E882C 7C 7F 1B 79 */ or. r31, r3, r3
|
||||
/* 802E8830 41 82 00 18 */ beq lbl_802E8848
|
||||
/* 802E8834 38 00 00 00 */ li r0, 0
|
||||
/* 802E8838 98 1F 08 30 */ stb r0, 0x830(r31)
|
||||
/* 802E883C 7C 80 07 35 */ extsh. r0, r4
|
||||
/* 802E8840 40 81 00 08 */ ble lbl_802E8848
|
||||
/* 802E8844 4B FE 64 F9 */ bl __dl__FPv
|
||||
lbl_802E8848:
|
||||
/* 802E8848 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802E884C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802E8850 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802E8854 7C 08 03 A6 */ mtlr r0
|
||||
/* 802E8858 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802E885C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
lbl_802E88FC:
|
||||
/* 802E88FC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802E8900 7C 08 02 A6 */ mflr r0
|
||||
/* 802E8904 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802E8908 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802E890C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 802E8910 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 802E8914 88 03 08 30 */ lbz r0, 0x830(r3)
|
||||
/* 802E8918 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802E891C 41 82 00 24 */ beq lbl_802E8940
|
||||
/* 802E8920 48 05 4D E9 */ bl OSEnableInterrupts
|
||||
/* 802E8924 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802E8928 38 7E 08 34 */ addi r3, r30, 0x834
|
||||
/* 802E892C 48 06 00 2D */ bl DVDClose
|
||||
/* 802E8930 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802E8934 48 05 4D E9 */ bl OSRestoreInterrupts
|
||||
/* 802E8938 38 00 00 00 */ li r0, 0
|
||||
/* 802E893C 98 1E 08 30 */ stb r0, 0x830(r30)
|
||||
lbl_802E8940:
|
||||
/* 802E8940 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802E8944 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 802E8948 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802E894C 7C 08 03 A6 */ mtlr r0
|
||||
/* 802E8950 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802E8954 4E 80 00 20 */ blr
|
||||
|
|
@ -1,55 +0,0 @@
|
|||
lbl_802E8730:
|
||||
/* 802E8730 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802E8734 7C 08 02 A6 */ mflr r0
|
||||
/* 802E8738 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802E873C 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E8740 48 07 9A 9D */ bl _savegpr_29
|
||||
/* 802E8744 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 802E8748 80 03 08 2C */ lwz r0, 0x82c(r3)
|
||||
/* 802E874C 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a
|
||||
/* 802E8750 80 1D 08 28 */ lwz r0, 0x828(r29)
|
||||
/* 802E8754 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 802E8758 90 1D 08 24 */ stw r0, 0x824(r29)
|
||||
/* 802E875C 80 1D 08 24 */ lwz r0, 0x824(r29)
|
||||
/* 802E8760 28 00 08 00 */ cmplwi r0, 0x800
|
||||
/* 802E8764 40 81 00 0C */ ble lbl_802E8770
|
||||
/* 802E8768 38 00 08 00 */ li r0, 0x800
|
||||
/* 802E876C 90 1D 08 24 */ stw r0, 0x824(r29)
|
||||
lbl_802E8770:
|
||||
/* 802E8770 48 05 4F 99 */ bl OSEnableInterrupts
|
||||
/* 802E8774 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 802E8778 38 7D 08 34 */ addi r3, r29, 0x834
|
||||
/* 802E877C 80 9D 08 20 */ lwz r4, 0x820(r29)
|
||||
/* 802E8780 80 BD 08 24 */ lwz r5, 0x824(r29)
|
||||
/* 802E8784 38 05 00 1F */ addi r0, r5, 0x1f
|
||||
/* 802E8788 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a
|
||||
/* 802E878C 80 1D 08 2C */ lwz r0, 0x82c(r29)
|
||||
/* 802E8790 54 06 00 34 */ rlwinm r6, r0, 0, 0, 0x1a
|
||||
/* 802E8794 38 E0 00 00 */ li r7, 0
|
||||
/* 802E8798 39 00 00 02 */ li r8, 2
|
||||
/* 802E879C 48 06 05 B9 */ bl DVDReadAsyncPrio
|
||||
/* 802E87A0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802E87A4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802E87A8 48 05 4F 75 */ bl OSRestoreInterrupts
|
||||
/* 802E87AC 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 802E87B0 40 82 00 0C */ bne lbl_802E87BC
|
||||
/* 802E87B4 38 60 FF FF */ li r3, -1
|
||||
/* 802E87B8 48 00 00 28 */ b lbl_802E87E0
|
||||
lbl_802E87BC:
|
||||
/* 802E87BC 48 05 4F 4D */ bl OSEnableInterrupts
|
||||
/* 802E87C0 7C 7F 1B 78 */ mr r31, r3
|
||||
lbl_802E87C4:
|
||||
/* 802E87C4 38 7D 08 34 */ addi r3, r29, 0x834
|
||||
/* 802E87C8 48 06 29 B5 */ bl DVDGetCommandBlockStatus
|
||||
/* 802E87CC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 802E87D0 40 82 FF F4 */ bne lbl_802E87C4
|
||||
/* 802E87D4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802E87D8 48 05 4F 45 */ bl OSRestoreInterrupts
|
||||
/* 802E87DC 80 7D 08 24 */ lwz r3, 0x824(r29)
|
||||
lbl_802E87E0:
|
||||
/* 802E87E0 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E87E4 48 07 9A 45 */ bl _restgpr_29
|
||||
/* 802E87E8 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802E87EC 7C 08 03 A6 */ mtlr r0
|
||||
/* 802E87F0 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802E87F4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,126 +0,0 @@
|
|||
lbl_802E8958:
|
||||
/* 802E8958 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802E895C 7C 08 02 A6 */ mflr r0
|
||||
/* 802E8960 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802E8964 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E8968 48 07 98 6D */ bl _savegpr_27
|
||||
/* 802E896C 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 802E8970 7C BD 2B 78 */ mr r29, r5
|
||||
/* 802E8974 88 03 08 30 */ lbz r0, 0x830(r3)
|
||||
/* 802E8978 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802E897C 40 82 00 0C */ bne lbl_802E8988
|
||||
/* 802E8980 38 60 FF FF */ li r3, -1
|
||||
/* 802E8984 48 00 01 6C */ b lbl_802E8AF0
|
||||
lbl_802E8988:
|
||||
/* 802E8988 2C 1D 00 00 */ cmpwi r29, 0
|
||||
/* 802E898C 40 82 00 0C */ bne lbl_802E8998
|
||||
/* 802E8990 38 60 00 00 */ li r3, 0
|
||||
/* 802E8994 48 00 01 5C */ b lbl_802E8AF0
|
||||
lbl_802E8998:
|
||||
/* 802E8998 2C 1D 00 01 */ cmpwi r29, 1
|
||||
/* 802E899C 40 82 00 0C */ bne lbl_802E89A8
|
||||
/* 802E89A0 38 60 00 01 */ li r3, 1
|
||||
/* 802E89A4 48 00 01 4C */ b lbl_802E8AF0
|
||||
lbl_802E89A8:
|
||||
/* 802E89A8 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 802E89AC 40 82 00 0C */ bne lbl_802E89B8
|
||||
/* 802E89B0 38 60 FF FF */ li r3, -1
|
||||
/* 802E89B4 48 00 01 3C */ b lbl_802E8AF0
|
||||
lbl_802E89B8:
|
||||
/* 802E89B8 80 7C 08 2C */ lwz r3, 0x82c(r28)
|
||||
/* 802E89BC 80 1C 08 28 */ lwz r0, 0x828(r28)
|
||||
/* 802E89C0 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 802E89C4 41 80 00 0C */ blt lbl_802E89D0
|
||||
/* 802E89C8 38 60 FF FF */ li r3, -1
|
||||
/* 802E89CC 48 00 01 24 */ b lbl_802E8AF0
|
||||
lbl_802E89D0:
|
||||
/* 802E89D0 7C 9F 23 78 */ mr r31, r4
|
||||
/* 802E89D4 3B C0 00 00 */ li r30, 0
|
||||
/* 802E89D8 3B 7D FF FF */ addi r27, r29, -1
|
||||
/* 802E89DC 48 00 00 E8 */ b lbl_802E8AC4
|
||||
lbl_802E89E0:
|
||||
/* 802E89E0 80 1C 08 24 */ lwz r0, 0x824(r28)
|
||||
/* 802E89E4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802E89E8 40 82 00 1C */ bne lbl_802E8A04
|
||||
/* 802E89EC 7F 83 E3 78 */ mr r3, r28
|
||||
/* 802E89F0 4B FF FD 41 */ bl fetch32byte__13JUTDirectFileFv
|
||||
/* 802E89F4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 802E89F8 40 80 00 0C */ bge lbl_802E8A04
|
||||
/* 802E89FC 38 60 FF FF */ li r3, -1
|
||||
/* 802E8A00 48 00 00 F0 */ b lbl_802E8AF0
|
||||
lbl_802E8A04:
|
||||
/* 802E8A04 80 1C 08 2C */ lwz r0, 0x82c(r28)
|
||||
/* 802E8A08 54 04 05 7E */ clrlwi r4, r0, 0x15
|
||||
/* 802E8A0C 80 1C 08 24 */ lwz r0, 0x824(r28)
|
||||
/* 802E8A10 7C A4 00 50 */ subf r5, r4, r0
|
||||
/* 802E8A14 7C 1E 2A 14 */ add r0, r30, r5
|
||||
/* 802E8A18 7C 00 D8 40 */ cmplw r0, r27
|
||||
/* 802E8A1C 40 81 00 0C */ ble lbl_802E8A28
|
||||
/* 802E8A20 7C 7E E8 50 */ subf r3, r30, r29
|
||||
/* 802E8A24 38 A3 FF FF */ addi r5, r3, -1
|
||||
lbl_802E8A28:
|
||||
/* 802E8A28 38 C0 00 00 */ li r6, 0
|
||||
/* 802E8A2C 38 E0 00 00 */ li r7, 0
|
||||
/* 802E8A30 7C A9 03 A6 */ mtctr r5
|
||||
/* 802E8A34 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 802E8A38 40 81 00 34 */ ble lbl_802E8A6C
|
||||
lbl_802E8A3C:
|
||||
/* 802E8A3C 80 7C 08 20 */ lwz r3, 0x820(r28)
|
||||
/* 802E8A40 7C 03 20 AE */ lbzx r0, r3, r4
|
||||
/* 802E8A44 98 1F 00 00 */ stb r0, 0(r31)
|
||||
/* 802E8A48 2C 00 00 0A */ cmpwi r0, 0xa
|
||||
/* 802E8A4C 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 802E8A50 3B FF 00 01 */ addi r31, r31, 1
|
||||
/* 802E8A54 40 82 00 10 */ bne lbl_802E8A64
|
||||
/* 802E8A58 38 C0 00 01 */ li r6, 1
|
||||
/* 802E8A5C 38 A7 00 01 */ addi r5, r7, 1
|
||||
/* 802E8A60 48 00 00 0C */ b lbl_802E8A6C
|
||||
lbl_802E8A64:
|
||||
/* 802E8A64 38 E7 00 01 */ addi r7, r7, 1
|
||||
/* 802E8A68 42 00 FF D4 */ bdnz lbl_802E8A3C
|
||||
lbl_802E8A6C:
|
||||
/* 802E8A6C 28 04 08 00 */ cmplwi r4, 0x800
|
||||
/* 802E8A70 41 80 00 0C */ blt lbl_802E8A7C
|
||||
/* 802E8A74 38 00 00 00 */ li r0, 0
|
||||
/* 802E8A78 90 1C 08 24 */ stw r0, 0x824(r28)
|
||||
lbl_802E8A7C:
|
||||
/* 802E8A7C 2C 06 00 01 */ cmpwi r6, 1
|
||||
/* 802E8A80 40 82 00 20 */ bne lbl_802E8AA0
|
||||
/* 802E8A84 38 00 00 00 */ li r0, 0
|
||||
/* 802E8A88 98 1F 00 00 */ stb r0, 0(r31)
|
||||
/* 802E8A8C 80 1C 08 2C */ lwz r0, 0x82c(r28)
|
||||
/* 802E8A90 7C 00 2A 14 */ add r0, r0, r5
|
||||
/* 802E8A94 90 1C 08 2C */ stw r0, 0x82c(r28)
|
||||
/* 802E8A98 7F DE 2A 14 */ add r30, r30, r5
|
||||
/* 802E8A9C 48 00 00 38 */ b lbl_802E8AD4
|
||||
lbl_802E8AA0:
|
||||
/* 802E8AA0 80 1C 08 2C */ lwz r0, 0x82c(r28)
|
||||
/* 802E8AA4 7C 00 2A 14 */ add r0, r0, r5
|
||||
/* 802E8AA8 90 1C 08 2C */ stw r0, 0x82c(r28)
|
||||
/* 802E8AAC 7F DE 2A 14 */ add r30, r30, r5
|
||||
/* 802E8AB0 7C 1E D8 00 */ cmpw r30, r27
|
||||
/* 802E8AB4 41 80 00 10 */ blt lbl_802E8AC4
|
||||
/* 802E8AB8 38 00 00 00 */ li r0, 0
|
||||
/* 802E8ABC 98 1F 00 00 */ stb r0, 0(r31)
|
||||
/* 802E8AC0 48 00 00 14 */ b lbl_802E8AD4
|
||||
lbl_802E8AC4:
|
||||
/* 802E8AC4 80 7C 08 2C */ lwz r3, 0x82c(r28)
|
||||
/* 802E8AC8 80 1C 08 28 */ lwz r0, 0x828(r28)
|
||||
/* 802E8ACC 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 802E8AD0 41 80 FF 10 */ blt lbl_802E89E0
|
||||
lbl_802E8AD4:
|
||||
/* 802E8AD4 80 7C 08 2C */ lwz r3, 0x82c(r28)
|
||||
/* 802E8AD8 80 1C 08 28 */ lwz r0, 0x828(r28)
|
||||
/* 802E8ADC 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 802E8AE0 41 80 00 0C */ blt lbl_802E8AEC
|
||||
/* 802E8AE4 38 00 00 00 */ li r0, 0
|
||||
/* 802E8AE8 98 1F 00 00 */ stb r0, 0(r31)
|
||||
lbl_802E8AEC:
|
||||
/* 802E8AEC 7F C3 F3 78 */ mr r3, r30
|
||||
lbl_802E8AF0:
|
||||
/* 802E8AF0 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E8AF4 48 07 97 2D */ bl _restgpr_27
|
||||
/* 802E8AF8 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802E8AFC 7C 08 03 A6 */ mtlr r0
|
||||
/* 802E8B00 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802E8B04 4E 80 00 20 */ blr
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
lbl_802E8860:
|
||||
/* 802E8860 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802E8864 7C 08 02 A6 */ mflr r0
|
||||
/* 802E8868 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802E886C 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E8870 48 07 99 6D */ bl _savegpr_29
|
||||
/* 802E8874 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 802E8878 7C 9F 23 79 */ or. r31, r4, r4
|
||||
/* 802E887C 40 82 00 0C */ bne lbl_802E8888
|
||||
/* 802E8880 38 60 00 00 */ li r3, 0
|
||||
/* 802E8884 48 00 00 60 */ b lbl_802E88E4
|
||||
lbl_802E8888:
|
||||
/* 802E8888 48 05 4E 81 */ bl OSEnableInterrupts
|
||||
/* 802E888C 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 802E8890 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802E8894 38 9D 08 34 */ addi r4, r29, 0x834
|
||||
/* 802E8898 48 05 FF F9 */ bl DVDOpen
|
||||
/* 802E889C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802E88A0 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802E88A4 48 05 4E 79 */ bl OSRestoreInterrupts
|
||||
/* 802E88A8 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 802E88AC 40 82 00 14 */ bne lbl_802E88C0
|
||||
/* 802E88B0 38 00 00 00 */ li r0, 0
|
||||
/* 802E88B4 98 1D 08 30 */ stb r0, 0x830(r29)
|
||||
/* 802E88B8 38 60 00 00 */ li r3, 0
|
||||
/* 802E88BC 48 00 00 28 */ b lbl_802E88E4
|
||||
lbl_802E88C0:
|
||||
/* 802E88C0 48 05 4E 49 */ bl OSEnableInterrupts
|
||||
/* 802E88C4 80 1D 08 68 */ lwz r0, 0x868(r29)
|
||||
/* 802E88C8 90 1D 08 28 */ stw r0, 0x828(r29)
|
||||
/* 802E88CC 48 05 4E 51 */ bl OSRestoreInterrupts
|
||||
/* 802E88D0 38 00 00 00 */ li r0, 0
|
||||
/* 802E88D4 90 1D 08 2C */ stw r0, 0x82c(r29)
|
||||
/* 802E88D8 38 00 00 01 */ li r0, 1
|
||||
/* 802E88DC 98 1D 08 30 */ stb r0, 0x830(r29)
|
||||
/* 802E88E0 38 60 00 01 */ li r3, 1
|
||||
lbl_802E88E4:
|
||||
/* 802E88E4 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E88E8 48 07 99 41 */ bl _restgpr_29
|
||||
/* 802E88EC 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802E88F0 7C 08 03 A6 */ mtlr r0
|
||||
/* 802E88F4 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802E88F8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,174 +0,0 @@
|
|||
lbl_802E431C:
|
||||
/* 802E431C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802E4320 7C 08 02 A6 */ mflr r0
|
||||
/* 802E4324 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802E4328 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E432C 48 07 DE A9 */ bl _savegpr_27
|
||||
/* 802E4330 3C E0 80 3D */ lis r7, sAsciiTable__14JUTDirectPrint@ha /* 0x803CC6B8@ha */
|
||||
/* 802E4334 38 E7 C6 B8 */ addi r7, r7, sAsciiTable__14JUTDirectPrint@l /* 0x803CC6B8@l */
|
||||
/* 802E4338 2C 06 00 64 */ cmpwi r6, 0x64
|
||||
/* 802E433C 7C C8 33 78 */ mr r8, r6
|
||||
/* 802E4340 41 80 00 08 */ blt lbl_802E4348
|
||||
/* 802E4344 39 06 FF 9C */ addi r8, r6, -100
|
||||
lbl_802E4348:
|
||||
/* 802E4348 38 00 00 05 */ li r0, 5
|
||||
/* 802E434C 7D 28 03 D6 */ divw r9, r8, r0
|
||||
/* 802E4350 7C 09 01 D6 */ mullw r0, r9, r0
|
||||
/* 802E4354 7C 00 40 50 */ subf r0, r0, r8
|
||||
/* 802E4358 1D 00 00 06 */ mulli r8, r0, 6
|
||||
/* 802E435C 1C 09 00 07 */ mulli r0, r9, 7
|
||||
/* 802E4360 2C 06 00 64 */ cmpwi r6, 0x64
|
||||
/* 802E4364 54 00 10 3A */ slwi r0, r0, 2
|
||||
/* 802E4368 38 C7 01 80 */ addi r6, r7, 0x180
|
||||
/* 802E436C 7C C6 02 14 */ add r6, r6, r0
|
||||
/* 802E4370 40 80 00 0C */ bge lbl_802E437C
|
||||
/* 802E4374 38 C7 00 80 */ addi r6, r7, 0x80
|
||||
/* 802E4378 7C C6 02 14 */ add r6, r6, r0
|
||||
lbl_802E437C:
|
||||
/* 802E437C 7C C9 33 78 */ mr r9, r6
|
||||
/* 802E4380 A0 C3 00 04 */ lhz r6, 4(r3)
|
||||
/* 802E4384 38 00 01 90 */ li r0, 0x190
|
||||
/* 802E4388 7C 00 30 10 */ subfc r0, r0, r6
|
||||
/* 802E438C 7C C0 01 10 */ subfe r6, r0, r0
|
||||
/* 802E4390 38 C6 00 02 */ addi r6, r6, 2
|
||||
/* 802E4394 A1 43 00 06 */ lhz r10, 6(r3)
|
||||
/* 802E4398 38 00 01 2C */ li r0, 0x12c
|
||||
/* 802E439C 7C 00 50 10 */ subfc r0, r0, r10
|
||||
/* 802E43A0 7D 40 01 10 */ subfe r10, r0, r0
|
||||
/* 802E43A4 38 0A 00 02 */ addi r0, r10, 2
|
||||
/* 802E43A8 81 63 00 14 */ lwz r11, 0x14(r3)
|
||||
/* 802E43AC A1 43 00 08 */ lhz r10, 8(r3)
|
||||
/* 802E43B0 7C AA 29 D6 */ mullw r5, r10, r5
|
||||
/* 802E43B4 7C A0 29 D6 */ mullw r5, r0, r5
|
||||
/* 802E43B8 54 A5 08 3C */ slwi r5, r5, 1
|
||||
/* 802E43BC 7C 84 31 D6 */ mullw r4, r4, r6
|
||||
/* 802E43C0 54 84 08 3C */ slwi r4, r4, 1
|
||||
/* 802E43C4 7D 45 22 14 */ add r10, r5, r4
|
||||
/* 802E43C8 7D 4B 52 14 */ add r10, r11, r10
|
||||
/* 802E43CC 39 60 00 00 */ li r11, 0
|
||||
/* 802E43D0 1C 86 00 06 */ mulli r4, r6, 6
|
||||
lbl_802E43D4:
|
||||
/* 802E43D4 80 A9 00 00 */ lwz r5, 0(r9)
|
||||
/* 802E43D8 7C BB 40 30 */ slw r27, r5, r8
|
||||
/* 802E43DC 2C 06 00 01 */ cmpwi r6, 1
|
||||
/* 802E43E0 39 29 00 04 */ addi r9, r9, 4
|
||||
/* 802E43E4 40 82 00 0C */ bne lbl_802E43F0
|
||||
/* 802E43E8 57 65 F8 4C */ rlwinm r5, r27, 0x1f, 1, 6
|
||||
/* 802E43EC 48 00 00 34 */ b lbl_802E4420
|
||||
lbl_802E43F0:
|
||||
/* 802E43F0 57 65 27 3A */ rlwinm r5, r27, 4, 0x1c, 0x1d
|
||||
/* 802E43F4 3B C7 02 B4 */ addi r30, r7, 0x2b4
|
||||
/* 802E43F8 7C BE 28 2E */ lwzx r5, r30, r5
|
||||
/* 802E43FC 54 BF 40 2E */ slwi r31, r5, 8
|
||||
/* 802E4400 57 65 47 3A */ rlwinm r5, r27, 8, 0x1c, 0x1d
|
||||
/* 802E4404 7D 9E 28 2E */ lwzx r12, r30, r5
|
||||
/* 802E4408 57 65 37 3A */ rlwinm r5, r27, 6, 0x1c, 0x1d
|
||||
/* 802E440C 7C BE 28 2E */ lwzx r5, r30, r5
|
||||
/* 802E4410 54 A5 20 36 */ slwi r5, r5, 4
|
||||
/* 802E4414 7D 85 2B 78 */ or r5, r12, r5
|
||||
/* 802E4418 7F E5 2B 78 */ or r5, r31, r5
|
||||
/* 802E441C 54 A5 98 18 */ slwi r5, r5, 0x13
|
||||
lbl_802E4420:
|
||||
/* 802E4420 39 84 00 01 */ addi r12, r4, 1
|
||||
/* 802E4424 55 8C F8 7E */ srwi r12, r12, 1
|
||||
/* 802E4428 7D 89 03 A6 */ mtctr r12
|
||||
/* 802E442C 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 802E4430 40 81 01 04 */ ble lbl_802E4534
|
||||
lbl_802E4434:
|
||||
/* 802E4434 54 BC 00 43 */ rlwinm. r28, r5, 0, 1, 1
|
||||
/* 802E4438 41 82 00 0C */ beq lbl_802E4444
|
||||
/* 802E443C A3 C3 00 20 */ lhz r30, 0x20(r3)
|
||||
/* 802E4440 48 00 00 08 */ b lbl_802E4448
|
||||
lbl_802E4444:
|
||||
/* 802E4444 3B C0 00 40 */ li r30, 0x40
|
||||
lbl_802E4448:
|
||||
/* 802E4448 54 AC 00 01 */ rlwinm. r12, r5, 0, 0, 0
|
||||
/* 802E444C 41 82 00 0C */ beq lbl_802E4458
|
||||
/* 802E4450 A3 A3 00 22 */ lhz r29, 0x22(r3)
|
||||
/* 802E4454 48 00 00 08 */ b lbl_802E445C
|
||||
lbl_802E4458:
|
||||
/* 802E4458 3B A0 00 20 */ li r29, 0x20
|
||||
lbl_802E445C:
|
||||
/* 802E445C 54 BB 00 85 */ rlwinm. r27, r5, 0, 2, 2
|
||||
/* 802E4460 41 82 00 0C */ beq lbl_802E446C
|
||||
/* 802E4464 A1 83 00 22 */ lhz r12, 0x22(r3)
|
||||
/* 802E4468 48 00 00 08 */ b lbl_802E4470
|
||||
lbl_802E446C:
|
||||
/* 802E446C 39 80 00 20 */ li r12, 0x20
|
||||
lbl_802E4470:
|
||||
/* 802E4470 28 1C 00 00 */ cmplwi r28, 0
|
||||
/* 802E4474 41 82 00 0C */ beq lbl_802E4480
|
||||
/* 802E4478 A3 E3 00 1C */ lhz r31, 0x1c(r3)
|
||||
/* 802E447C 48 00 00 08 */ b lbl_802E4484
|
||||
lbl_802E4480:
|
||||
/* 802E4480 3B E0 00 00 */ li r31, 0
|
||||
lbl_802E4484:
|
||||
/* 802E4484 7D 9E 62 14 */ add r12, r30, r12
|
||||
/* 802E4488 7D 9D 62 14 */ add r12, r29, r12
|
||||
/* 802E448C 7F EC 63 78 */ or r12, r31, r12
|
||||
/* 802E4490 55 9D 04 3E */ clrlwi r29, r12, 0x10
|
||||
/* 802E4494 B1 8A 00 00 */ sth r12, 0(r10)
|
||||
/* 802E4498 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 802E449C 40 81 00 10 */ ble lbl_802E44AC
|
||||
/* 802E44A0 A1 83 00 08 */ lhz r12, 8(r3)
|
||||
/* 802E44A4 55 8C 08 3C */ slwi r12, r12, 1
|
||||
/* 802E44A8 7F AA 63 2E */ sthx r29, r10, r12
|
||||
lbl_802E44AC:
|
||||
/* 802E44AC 28 1B 00 00 */ cmplwi r27, 0
|
||||
/* 802E44B0 41 82 00 0C */ beq lbl_802E44BC
|
||||
/* 802E44B4 A3 A3 00 26 */ lhz r29, 0x26(r3)
|
||||
/* 802E44B8 48 00 00 08 */ b lbl_802E44C0
|
||||
lbl_802E44BC:
|
||||
/* 802E44BC 3B A0 00 40 */ li r29, 0x40
|
||||
lbl_802E44C0:
|
||||
/* 802E44C0 28 1C 00 00 */ cmplwi r28, 0
|
||||
/* 802E44C4 41 82 00 0C */ beq lbl_802E44D0
|
||||
/* 802E44C8 A3 C3 00 28 */ lhz r30, 0x28(r3)
|
||||
/* 802E44CC 48 00 00 08 */ b lbl_802E44D4
|
||||
lbl_802E44D0:
|
||||
/* 802E44D0 3B C0 00 20 */ li r30, 0x20
|
||||
lbl_802E44D4:
|
||||
/* 802E44D4 54 AC 00 C7 */ rlwinm. r12, r5, 0, 3, 3
|
||||
/* 802E44D8 41 82 00 0C */ beq lbl_802E44E4
|
||||
/* 802E44DC A1 83 00 28 */ lhz r12, 0x28(r3)
|
||||
/* 802E44E0 48 00 00 08 */ b lbl_802E44E8
|
||||
lbl_802E44E4:
|
||||
/* 802E44E4 39 80 00 20 */ li r12, 0x20
|
||||
lbl_802E44E8:
|
||||
/* 802E44E8 28 1B 00 00 */ cmplwi r27, 0
|
||||
/* 802E44EC 41 82 00 0C */ beq lbl_802E44F8
|
||||
/* 802E44F0 A3 E3 00 1C */ lhz r31, 0x1c(r3)
|
||||
/* 802E44F4 48 00 00 08 */ b lbl_802E44FC
|
||||
lbl_802E44F8:
|
||||
/* 802E44F8 3B E0 00 00 */ li r31, 0
|
||||
lbl_802E44FC:
|
||||
/* 802E44FC 7D 9D 62 14 */ add r12, r29, r12
|
||||
/* 802E4500 7D 9E 62 14 */ add r12, r30, r12
|
||||
/* 802E4504 7F EC 63 78 */ or r12, r31, r12
|
||||
/* 802E4508 55 9B 04 3E */ clrlwi r27, r12, 0x10
|
||||
/* 802E450C B1 8A 00 02 */ sth r12, 2(r10)
|
||||
/* 802E4510 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 802E4514 40 81 00 14 */ ble lbl_802E4528
|
||||
/* 802E4518 A1 83 00 08 */ lhz r12, 8(r3)
|
||||
/* 802E451C 55 8C 08 3C */ slwi r12, r12, 1
|
||||
/* 802E4520 39 8C 00 02 */ addi r12, r12, 2
|
||||
/* 802E4524 7F 6A 63 2E */ sthx r27, r10, r12
|
||||
lbl_802E4528:
|
||||
/* 802E4528 54 A5 10 3A */ slwi r5, r5, 2
|
||||
/* 802E452C 39 4A 00 04 */ addi r10, r10, 4
|
||||
/* 802E4530 42 00 FF 04 */ bdnz lbl_802E4434
|
||||
lbl_802E4534:
|
||||
/* 802E4534 A0 A3 00 08 */ lhz r5, 8(r3)
|
||||
/* 802E4538 7C A5 01 D6 */ mullw r5, r5, r0
|
||||
/* 802E453C 7C A4 28 50 */ subf r5, r4, r5
|
||||
/* 802E4540 54 A5 08 3C */ slwi r5, r5, 1
|
||||
/* 802E4544 7D 4A 2A 14 */ add r10, r10, r5
|
||||
/* 802E4548 39 6B 00 01 */ addi r11, r11, 1
|
||||
/* 802E454C 2C 0B 00 07 */ cmpwi r11, 7
|
||||
/* 802E4550 41 80 FE 84 */ blt lbl_802E43D4
|
||||
/* 802E4554 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802E4558 48 07 DC C9 */ bl _restgpr_27
|
||||
/* 802E455C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802E4560 7C 08 03 A6 */ mtlr r0
|
||||
/* 802E4564 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802E4568 4E 80 00 20 */ blr
|
||||
|
|
@ -1,93 +0,0 @@
|
|||
lbl_802DF344:
|
||||
/* 802DF344 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 802DF348 7C 08 02 A6 */ mflr r0
|
||||
/* 802DF34C 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 802DF350 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 802DF354 48 08 2E 79 */ bl _savegpr_25
|
||||
/* 802DF358 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 802DF35C 3B 60 00 00 */ li r27, 0
|
||||
/* 802DF360 3B 40 00 00 */ li r26, 0
|
||||
/* 802DF364 3B 20 00 00 */ li r25, 0
|
||||
/* 802DF368 3C 60 00 01 */ lis r3, 0x0001 /* 0x0000FFFF@ha */
|
||||
/* 802DF36C 38 03 FF FF */ addi r0, r3, 0xFFFF /* 0x0000FFFF@l */
|
||||
/* 802DF370 B0 1C 00 68 */ sth r0, 0x68(r28)
|
||||
/* 802DF374 80 7C 00 48 */ lwz r3, 0x48(r28)
|
||||
/* 802DF378 3B C3 00 20 */ addi r30, r3, 0x20
|
||||
/* 802DF37C 3B A0 00 00 */ li r29, 0
|
||||
/* 802DF380 3C 60 4D 41 */ lis r3, 0x4D41 /* 0x4D415031@ha */
|
||||
/* 802DF384 3B E3 50 31 */ addi r31, r3, 0x5031 /* 0x4D415031@l */
|
||||
/* 802DF388 48 00 00 DC */ b lbl_802DF464
|
||||
lbl_802DF38C:
|
||||
/* 802DF38C 80 9E 00 00 */ lwz r4, 0(r30)
|
||||
/* 802DF390 7C 04 F8 00 */ cmpw r4, r31
|
||||
/* 802DF394 41 82 00 88 */ beq lbl_802DF41C
|
||||
/* 802DF398 40 80 00 2C */ bge lbl_802DF3C4
|
||||
/* 802DF39C 3C 60 49 4E */ lis r3, 0x494E /* 0x494E4631@ha */
|
||||
/* 802DF3A0 38 03 46 31 */ addi r0, r3, 0x4631 /* 0x494E4631@l */
|
||||
/* 802DF3A4 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 802DF3A8 41 82 00 30 */ beq lbl_802DF3D8
|
||||
/* 802DF3AC 40 80 00 9C */ bge lbl_802DF448
|
||||
/* 802DF3B0 3C 60 47 4C */ lis r3, 0x474C /* 0x474C5931@ha */
|
||||
/* 802DF3B4 38 03 59 31 */ addi r0, r3, 0x5931 /* 0x474C5931@l */
|
||||
/* 802DF3B8 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 802DF3BC 41 82 00 50 */ beq lbl_802DF40C
|
||||
/* 802DF3C0 48 00 00 88 */ b lbl_802DF448
|
||||
lbl_802DF3C4:
|
||||
/* 802DF3C4 3C 60 57 49 */ lis r3, 0x5749 /* 0x57494431@ha */
|
||||
/* 802DF3C8 38 03 44 31 */ addi r0, r3, 0x4431 /* 0x57494431@l */
|
||||
/* 802DF3CC 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 802DF3D0 41 82 00 2C */ beq lbl_802DF3FC
|
||||
/* 802DF3D4 48 00 00 74 */ b lbl_802DF448
|
||||
lbl_802DF3D8:
|
||||
/* 802DF3D8 93 DC 00 4C */ stw r30, 0x4c(r28)
|
||||
/* 802DF3DC 80 7C 00 4C */ lwz r3, 0x4c(r28)
|
||||
/* 802DF3E0 A0 03 00 08 */ lhz r0, 8(r3)
|
||||
/* 802DF3E4 54 04 10 3A */ slwi r4, r0, 2
|
||||
/* 802DF3E8 3C 60 80 3A */ lis r3, saoAboutEncoding___10JUTResFont@ha /* 0x8039D390@ha */
|
||||
/* 802DF3EC 38 03 D3 90 */ addi r0, r3, saoAboutEncoding___10JUTResFont@l /* 0x8039D390@l */
|
||||
/* 802DF3F0 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 802DF3F4 90 1C 00 6C */ stw r0, 0x6c(r28)
|
||||
/* 802DF3F8 48 00 00 60 */ b lbl_802DF458
|
||||
lbl_802DF3FC:
|
||||
/* 802DF3FC 80 7C 00 54 */ lwz r3, 0x54(r28)
|
||||
/* 802DF400 7F C3 D9 2E */ stwx r30, r3, r27
|
||||
/* 802DF404 3B 7B 00 04 */ addi r27, r27, 4
|
||||
/* 802DF408 48 00 00 50 */ b lbl_802DF458
|
||||
lbl_802DF40C:
|
||||
/* 802DF40C 80 7C 00 58 */ lwz r3, 0x58(r28)
|
||||
/* 802DF410 7F C3 D1 2E */ stwx r30, r3, r26
|
||||
/* 802DF414 3B 5A 00 04 */ addi r26, r26, 4
|
||||
/* 802DF418 48 00 00 40 */ b lbl_802DF458
|
||||
lbl_802DF41C:
|
||||
/* 802DF41C 80 7C 00 5C */ lwz r3, 0x5c(r28)
|
||||
/* 802DF420 7F C3 C9 2E */ stwx r30, r3, r25
|
||||
/* 802DF424 A0 1C 00 68 */ lhz r0, 0x68(r28)
|
||||
/* 802DF428 80 7C 00 5C */ lwz r3, 0x5c(r28)
|
||||
/* 802DF42C 7C 63 C8 2E */ lwzx r3, r3, r25
|
||||
/* 802DF430 A0 63 00 0A */ lhz r3, 0xa(r3)
|
||||
/* 802DF434 7C 00 18 40 */ cmplw r0, r3
|
||||
/* 802DF438 40 81 00 08 */ ble lbl_802DF440
|
||||
/* 802DF43C B0 7C 00 68 */ sth r3, 0x68(r28)
|
||||
lbl_802DF440:
|
||||
/* 802DF440 3B 39 00 04 */ addi r25, r25, 4
|
||||
/* 802DF444 48 00 00 14 */ b lbl_802DF458
|
||||
lbl_802DF448:
|
||||
/* 802DF448 3C 60 80 3A */ lis r3, JUTResFont__stringBase0@ha /* 0x8039D45C@ha */
|
||||
/* 802DF44C 38 63 D4 5C */ addi r3, r3, JUTResFont__stringBase0@l /* 0x8039D45C@l */
|
||||
/* 802DF450 38 63 00 20 */ addi r3, r3, 0x20
|
||||
/* 802DF454 48 00 91 F5 */ bl JUTReportConsole
|
||||
lbl_802DF458:
|
||||
/* 802DF458 80 1E 00 04 */ lwz r0, 4(r30)
|
||||
/* 802DF45C 7F DE 02 14 */ add r30, r30, r0
|
||||
/* 802DF460 3B BD 00 01 */ addi r29, r29, 1
|
||||
lbl_802DF464:
|
||||
/* 802DF464 80 7C 00 48 */ lwz r3, 0x48(r28)
|
||||
/* 802DF468 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 802DF46C 7C 1D 00 40 */ cmplw r29, r0
|
||||
/* 802DF470 41 80 FF 1C */ blt lbl_802DF38C
|
||||
/* 802DF474 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 802DF478 48 08 2D A1 */ bl _restgpr_25
|
||||
/* 802DF47C 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 802DF480 7C 08 03 A6 */ mtlr r0
|
||||
/* 802DF484 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 802DF488 4E 80 00 20 */ blr
|
||||
|
|
@ -3,7 +3,7 @@ lbl_8015A90C:
|
|||
/* 8015A910 7C 08 02 A6 */ mflr r0
|
||||
/* 8015A914 90 01 00 E4 */ stw r0, 0xe4(r1)
|
||||
/* 8015A918 39 61 00 E0 */ addi r11, r1, 0xe0
|
||||
/* 8015A91C 48 20 78 85 */ bl __save_gpr
|
||||
/* 8015A91C 48 20 78 85 */ bl _savegpr_14
|
||||
/* 8015A920 3C 60 80 39 */ lis r3, l_resMANa@ha /* 0x80393250@ha */
|
||||
/* 8015A924 38 C3 32 50 */ addi r6, r3, l_resMANa@l /* 0x80393250@l */
|
||||
/* 8015A928 3C 60 80 3B */ lis r3, cNullVec__6Z2Calc@ha /* 0x803B61C0@ha */
|
||||
|
|
@ -298,7 +298,7 @@ lbl_8015A90C:
|
|||
/* 8015ADAC 38 A5 86 10 */ addi r5, r5, lit_3982@l /* 0x80428610@l */
|
||||
/* 8015ADB0 48 20 6E 75 */ bl __register_global_object
|
||||
/* 8015ADB4 39 61 00 E0 */ addi r11, r1, 0xe0
|
||||
/* 8015ADB8 48 20 74 35 */ bl __restore_gpr
|
||||
/* 8015ADB8 48 20 74 35 */ bl _restgpr_14
|
||||
/* 8015ADBC 80 01 00 E4 */ lwz r0, 0xe4(r1)
|
||||
/* 8015ADC0 7C 08 03 A6 */ mtlr r0
|
||||
/* 8015ADC4 38 21 00 E0 */ addi r1, r1, 0xe0
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ lbl_8012B724:
|
|||
/* 8012B758 DB 41 01 10 */ stfd f26, 0x110(r1)
|
||||
/* 8012B75C F3 41 01 18 */ psq_st f26, 280(r1), 0, 0 /* qr0 */
|
||||
/* 8012B760 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 8012B764 48 23 6A 3D */ bl __save_gpr
|
||||
/* 8012B764 48 23 6A 3D */ bl _savegpr_14
|
||||
/* 8012B768 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8012B76C 80 63 20 60 */ lwz r3, 0x2060(r3)
|
||||
/* 8012B770 88 03 00 00 */ lbz r0, 0(r3)
|
||||
|
|
@ -588,7 +588,7 @@ lbl_8012BF60:
|
|||
/* 8012BF88 E3 41 01 18 */ psq_l f26, 280(r1), 0, 0 /* qr0 */
|
||||
/* 8012BF8C CB 41 01 10 */ lfd f26, 0x110(r1)
|
||||
/* 8012BF90 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 8012BF94 48 23 62 59 */ bl __restore_gpr
|
||||
/* 8012BF94 48 23 62 59 */ bl _restgpr_14
|
||||
/* 8012BF98 80 01 01 74 */ lwz r0, 0x174(r1)
|
||||
/* 8012BF9C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8012BFA0 38 21 01 70 */ addi r1, r1, 0x170
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ lbl_8007FF1C:
|
|||
/* 8007FF28 DB E1 00 E0 */ stfd f31, 0xe0(r1)
|
||||
/* 8007FF2C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, 0 /* qr0 */
|
||||
/* 8007FF30 39 61 00 E0 */ addi r11, r1, 0xe0
|
||||
/* 8007FF34 48 2E 22 6D */ bl __save_gpr
|
||||
/* 8007FF34 48 2E 22 6D */ bl _savegpr_14
|
||||
/* 8007FF38 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8007FF3C 7C 90 23 78 */ mr r16, r4
|
||||
/* 8007FF40 C0 24 00 2C */ lfs f1, 0x2c(r4)
|
||||
|
|
@ -273,7 +273,7 @@ lbl_80080310:
|
|||
/* 80080310 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, 0 /* qr0 */
|
||||
/* 80080314 CB E1 00 E0 */ lfd f31, 0xe0(r1)
|
||||
/* 80080318 39 61 00 E0 */ addi r11, r1, 0xe0
|
||||
/* 8008031C 48 2E 1E D1 */ bl __restore_gpr
|
||||
/* 8008031C 48 2E 1E D1 */ bl _restgpr_14
|
||||
/* 80080320 80 01 00 F4 */ lwz r0, 0xf4(r1)
|
||||
/* 80080324 7C 08 03 A6 */ mtlr r0
|
||||
/* 80080328 38 21 00 F0 */ addi r1, r1, 0xf0
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ lbl_8007EE34:
|
|||
/* 8007EE70 DB 21 01 40 */ stfd f25, 0x140(r1)
|
||||
/* 8007EE74 F3 21 01 48 */ psq_st f25, 328(r1), 0, 0 /* qr0 */
|
||||
/* 8007EE78 39 61 01 40 */ addi r11, r1, 0x140
|
||||
/* 8007EE7C 48 2E 33 25 */ bl __save_gpr
|
||||
/* 8007EE7C 48 2E 33 25 */ bl _savegpr_14
|
||||
/* 8007EE80 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8007EE84 7C 90 23 78 */ mr r16, r4
|
||||
/* 8007EE88 39 D0 00 24 */ addi r14, r16, 0x24
|
||||
|
|
@ -543,7 +543,7 @@ lbl_8007F5D8:
|
|||
/* 8007F608 E3 21 01 48 */ psq_l f25, 328(r1), 0, 0 /* qr0 */
|
||||
/* 8007F60C CB 21 01 40 */ lfd f25, 0x140(r1)
|
||||
/* 8007F610 39 61 01 40 */ addi r11, r1, 0x140
|
||||
/* 8007F614 48 2E 2B D9 */ bl __restore_gpr
|
||||
/* 8007F614 48 2E 2B D9 */ bl _restgpr_14
|
||||
/* 8007F618 80 01 01 B4 */ lwz r0, 0x1b4(r1)
|
||||
/* 8007F61C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8007F620 38 21 01 B0 */ addi r1, r1, 0x1b0
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_8007F9A4:
|
|||
/* 8007F9A8 7C 08 02 A6 */ mflr r0
|
||||
/* 8007F9AC 90 01 09 04 */ stw r0, 0x904(r1)
|
||||
/* 8007F9B0 39 61 09 00 */ addi r11, r1, 0x900
|
||||
/* 8007F9B4 48 2E 27 ED */ bl __save_gpr
|
||||
/* 8007F9B4 48 2E 27 ED */ bl _savegpr_14
|
||||
/* 8007F9B8 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8007F9BC 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 8007F9C0 7C 83 23 78 */ mr r3, r4
|
||||
|
|
@ -359,7 +359,7 @@ lbl_8007FEB0:
|
|||
/* 8007FEE4 40 81 FC 64 */ ble lbl_8007FB48
|
||||
lbl_8007FEE8:
|
||||
/* 8007FEE8 39 61 09 00 */ addi r11, r1, 0x900
|
||||
/* 8007FEEC 48 2E 23 01 */ bl __restore_gpr
|
||||
/* 8007FEEC 48 2E 23 01 */ bl _restgpr_14
|
||||
/* 8007FEF0 80 01 09 04 */ lwz r0, 0x904(r1)
|
||||
/* 8007FEF4 7C 08 03 A6 */ mtlr r0
|
||||
/* 8007FEF8 38 21 09 00 */ addi r1, r1, 0x900
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_800824EC:
|
|||
/* 800824F0 7C 08 02 A6 */ mflr r0
|
||||
/* 800824F4 90 01 01 24 */ stw r0, 0x124(r1)
|
||||
/* 800824F8 39 61 01 20 */ addi r11, r1, 0x120
|
||||
/* 800824FC 48 2D FC A5 */ bl __save_gpr
|
||||
/* 800824FC 48 2D FC A5 */ bl _savegpr_14
|
||||
/* 80082500 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 80082504 7C 90 23 78 */ mr r16, r4
|
||||
/* 80082508 90 A1 00 08 */ stw r5, 8(r1)
|
||||
|
|
@ -321,7 +321,7 @@ lbl_80082964:
|
|||
/* 80082990 7E C3 B3 78 */ mr r3, r22
|
||||
lbl_80082994:
|
||||
/* 80082994 39 61 01 20 */ addi r11, r1, 0x120
|
||||
/* 80082998 48 2D F8 55 */ bl __restore_gpr
|
||||
/* 80082998 48 2D F8 55 */ bl _restgpr_14
|
||||
/* 8008299C 80 01 01 24 */ lwz r0, 0x124(r1)
|
||||
/* 800829A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 800829A4 38 21 01 20 */ addi r1, r1, 0x120
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ lbl_80080330:
|
|||
/* 8008037C DA E1 01 20 */ stfd f23, 0x120(r1)
|
||||
/* 80080380 F2 E1 01 28 */ psq_st f23, 296(r1), 0, 0 /* qr0 */
|
||||
/* 80080384 39 61 01 20 */ addi r11, r1, 0x120
|
||||
/* 80080388 48 2E 1E 19 */ bl __save_gpr
|
||||
/* 80080388 48 2E 1E 19 */ bl _savegpr_14
|
||||
/* 8008038C 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80080390 7C 9F 23 78 */ mr r31, r4
|
||||
/* 80080394 38 00 00 00 */ li r0, 0
|
||||
|
|
@ -983,7 +983,7 @@ lbl_80081140:
|
|||
/* 80081180 E2 E1 01 28 */ psq_l f23, 296(r1), 0, 0 /* qr0 */
|
||||
/* 80081184 CA E1 01 20 */ lfd f23, 0x120(r1)
|
||||
/* 80081188 39 61 01 20 */ addi r11, r1, 0x120
|
||||
/* 8008118C 48 2E 10 61 */ bl __restore_gpr
|
||||
/* 8008118C 48 2E 10 61 */ bl _restgpr_14
|
||||
/* 80081190 80 01 01 B4 */ lwz r0, 0x1b4(r1)
|
||||
/* 80081194 7C 08 03 A6 */ mtlr r0
|
||||
/* 80081198 38 21 01 B0 */ addi r1, r1, 0x1b0
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ lbl_800811A0:
|
|||
/* 800811E4 DB 01 01 10 */ stfd f24, 0x110(r1)
|
||||
/* 800811E8 F3 01 01 18 */ psq_st f24, 280(r1), 0, 0 /* qr0 */
|
||||
/* 800811EC 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 800811F0 48 2E 0F B1 */ bl __save_gpr
|
||||
/* 800811F0 48 2E 0F B1 */ bl _savegpr_14
|
||||
/* 800811F4 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 800811F8 7C 90 23 78 */ mr r16, r4
|
||||
/* 800811FC 38 00 00 00 */ li r0, 0
|
||||
|
|
@ -848,7 +848,7 @@ lbl_80081DC0:
|
|||
/* 80081DF8 E3 01 01 18 */ psq_l f24, 280(r1), 0, 0 /* qr0 */
|
||||
/* 80081DFC CB 01 01 10 */ lfd f24, 0x110(r1)
|
||||
/* 80081E00 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 80081E04 48 2E 03 E9 */ bl __restore_gpr
|
||||
/* 80081E04 48 2E 03 E9 */ bl _restgpr_14
|
||||
/* 80081E08 80 01 01 94 */ lwz r0, 0x194(r1)
|
||||
/* 80081E0C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80081E10 38 21 01 90 */ addi r1, r1, 0x190
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ lbl_801A8E20:
|
|||
/* 801A8E3C DB A1 01 40 */ stfd f29, 0x140(r1)
|
||||
/* 801A8E40 F3 A1 01 48 */ psq_st f29, 328(r1), 0, 0 /* qr0 */
|
||||
/* 801A8E44 39 61 01 40 */ addi r11, r1, 0x140
|
||||
/* 801A8E48 48 1B 93 59 */ bl __save_gpr
|
||||
/* 801A8E48 48 1B 93 59 */ bl _savegpr_14
|
||||
/* 801A8E4C 7C 6E 1B 78 */ mr r14, r3
|
||||
/* 801A8E50 7C 99 23 78 */ mr r25, r4
|
||||
/* 801A8E54 7C BA 2B 78 */ mr r26, r5
|
||||
|
|
@ -921,7 +921,7 @@ lbl_801A9994:
|
|||
/* 801A9BC4 E3 A1 01 48 */ psq_l f29, 328(r1), 0, 0 /* qr0 */
|
||||
/* 801A9BC8 CB A1 01 40 */ lfd f29, 0x140(r1)
|
||||
/* 801A9BCC 39 61 01 40 */ addi r11, r1, 0x140
|
||||
/* 801A9BD0 48 1B 86 1D */ bl __restore_gpr
|
||||
/* 801A9BD0 48 1B 86 1D */ bl _restgpr_14
|
||||
/* 801A9BD4 80 01 01 74 */ lwz r0, 0x174(r1)
|
||||
/* 801A9BD8 7C 08 03 A6 */ mtlr r0
|
||||
/* 801A9BDC 38 21 01 70 */ addi r1, r1, 0x170
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ lbl_801A040C:
|
|||
/* 801A0420 DB C1 01 30 */ stfd f30, 0x130(r1)
|
||||
/* 801A0424 F3 C1 01 38 */ psq_st f30, 312(r1), 0, 0 /* qr0 */
|
||||
/* 801A0428 39 61 01 30 */ addi r11, r1, 0x130
|
||||
/* 801A042C 48 1C 1D 75 */ bl __save_gpr
|
||||
/* 801A042C 48 1C 1D 75 */ bl _savegpr_14
|
||||
/* 801A0430 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 801A0434 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 801A0438 38 83 CA 54 */ addi r4, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
|
|
@ -1001,7 +1001,7 @@ lbl_801A1314:
|
|||
/* 801A131C E3 C1 01 38 */ psq_l f30, 312(r1), 0, 0 /* qr0 */
|
||||
/* 801A1320 CB C1 01 30 */ lfd f30, 0x130(r1)
|
||||
/* 801A1324 39 61 01 30 */ addi r11, r1, 0x130
|
||||
/* 801A1328 48 1C 0E C5 */ bl __restore_gpr
|
||||
/* 801A1328 48 1C 0E C5 */ bl _restgpr_14
|
||||
/* 801A132C 80 01 01 54 */ lwz r0, 0x154(r1)
|
||||
/* 801A1330 7C 08 03 A6 */ mtlr r0
|
||||
/* 801A1334 38 21 01 50 */ addi r1, r1, 0x150
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ lbl_80067488:
|
|||
/* 8006751C D9 C1 02 00 */ stfd f14, 0x200(r1)
|
||||
/* 80067520 F1 C1 02 08 */ psq_st f14, 520(r1), 0, 0 /* qr0 */
|
||||
/* 80067524 39 61 02 00 */ addi r11, r1, 0x200
|
||||
/* 80067528 48 2F AC 79 */ bl __save_gpr
|
||||
/* 80067528 48 2F AC 79 */ bl _savegpr_14
|
||||
/* 8006752C 7C 70 1B 78 */ mr r16, r3
|
||||
/* 80067530 7C 8F 23 78 */ mr r15, r4
|
||||
/* 80067534 3C 60 80 42 */ lis r3, lit_7952@ha /* 0x80424950@ha */
|
||||
|
|
@ -1148,7 +1148,7 @@ lbl_80068534:
|
|||
/* 800685BC E1 C1 02 08 */ psq_l f14, 520(r1), 0, 0 /* qr0 */
|
||||
/* 800685C0 C9 C1 02 00 */ lfd f14, 0x200(r1)
|
||||
/* 800685C4 39 61 02 00 */ addi r11, r1, 0x200
|
||||
/* 800685C8 48 2F 9C 25 */ bl __restore_gpr
|
||||
/* 800685C8 48 2F 9C 25 */ bl _restgpr_14
|
||||
/* 800685CC 80 01 03 24 */ lwz r0, 0x324(r1)
|
||||
/* 800685D0 7C 08 03 A6 */ mtlr r0
|
||||
/* 800685D4 38 21 03 20 */ addi r1, r1, 0x320
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ lbl_8006A090:
|
|||
/* 8006A0EC DA A1 01 F0 */ stfd f21, 0x1f0(r1)
|
||||
/* 8006A0F0 F2 A1 01 F8 */ psq_st f21, 504(r1), 0, 0 /* qr0 */
|
||||
/* 8006A0F4 39 61 01 F0 */ addi r11, r1, 0x1f0
|
||||
/* 8006A0F8 48 2F 80 A9 */ bl __save_gpr
|
||||
/* 8006A0F8 48 2F 80 A9 */ bl _savegpr_14
|
||||
/* 8006A0FC 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 8006A100 7C 9D 23 78 */ mr r29, r4
|
||||
/* 8006A104 7C AE 2B 78 */ mr r14, r5
|
||||
|
|
@ -1129,7 +1129,7 @@ lbl_8006B120:
|
|||
/* 8006B170 E2 A1 01 F8 */ psq_l f21, 504(r1), 0, 0 /* qr0 */
|
||||
/* 8006B174 CA A1 01 F0 */ lfd f21, 0x1f0(r1)
|
||||
/* 8006B178 39 61 01 F0 */ addi r11, r1, 0x1f0
|
||||
/* 8006B17C 48 2F 70 71 */ bl __restore_gpr
|
||||
/* 8006B17C 48 2F 70 71 */ bl _restgpr_14
|
||||
/* 8006B180 80 01 02 A4 */ lwz r0, 0x2a4(r1)
|
||||
/* 8006B184 7C 08 03 A6 */ mtlr r0
|
||||
/* 8006B188 38 21 02 A0 */ addi r1, r1, 0x2a0
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ lbl_8003DB70:
|
|||
/* 8003DB9C DB 61 00 B0 */ stfd f27, 0xb0(r1)
|
||||
/* 8003DBA0 F3 61 00 B8 */ psq_st f27, 184(r1), 0, 0 /* qr0 */
|
||||
/* 8003DBA4 39 61 00 B0 */ addi r11, r1, 0xb0
|
||||
/* 8003DBA8 48 32 45 F9 */ bl __save_gpr
|
||||
/* 8003DBA8 48 32 45 F9 */ bl _savegpr_14
|
||||
/* 8003DBAC 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8003DBB0 FF A0 08 90 */ fmr f29, f1
|
||||
/* 8003DBB4 FF C0 10 90 */ fmr f30, f2
|
||||
|
|
@ -237,7 +237,7 @@ lbl_8003DE9C:
|
|||
/* 8003DEC0 E3 61 00 B8 */ psq_l f27, 184(r1), 0, 0 /* qr0 */
|
||||
/* 8003DEC4 CB 61 00 B0 */ lfd f27, 0xb0(r1)
|
||||
/* 8003DEC8 39 61 00 B0 */ addi r11, r1, 0xb0
|
||||
/* 8003DECC 48 32 43 21 */ bl __restore_gpr
|
||||
/* 8003DECC 48 32 43 21 */ bl _restgpr_14
|
||||
/* 8003DED0 80 01 01 04 */ lwz r0, 0x104(r1)
|
||||
/* 8003DED4 7C 08 03 A6 */ mtlr r0
|
||||
/* 8003DED8 38 21 01 00 */ addi r1, r1, 0x100
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ lbl_801CB938:
|
|||
/* 801CB94C DB C1 01 10 */ stfd f30, 0x110(r1)
|
||||
/* 801CB950 F3 C1 01 18 */ psq_st f30, 280(r1), 0, 0 /* qr0 */
|
||||
/* 801CB954 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 801CB958 48 19 68 49 */ bl __save_gpr
|
||||
/* 801CB958 48 19 68 49 */ bl _savegpr_14
|
||||
/* 801CB95C 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 801CB960 7C 90 23 78 */ mr r16, r4
|
||||
/* 801CB964 7C B1 2B 78 */ mr r17, r5
|
||||
|
|
@ -401,7 +401,7 @@ lbl_801CBEDC:
|
|||
/* 801CBEE4 E3 C1 01 18 */ psq_l f30, 280(r1), 0, 0 /* qr0 */
|
||||
/* 801CBEE8 CB C1 01 10 */ lfd f30, 0x110(r1)
|
||||
/* 801CBEEC 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 801CBEF0 48 19 62 FD */ bl __restore_gpr
|
||||
/* 801CBEF0 48 19 62 FD */ bl _restgpr_14
|
||||
/* 801CBEF4 80 01 01 34 */ lwz r0, 0x134(r1)
|
||||
/* 801CBEF8 7C 08 03 A6 */ mtlr r0
|
||||
/* 801CBEFC 38 21 01 30 */ addi r1, r1, 0x130
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_801DF010:
|
|||
/* 801DF014 7C 08 02 A6 */ mflr r0
|
||||
/* 801DF018 90 01 00 84 */ stw r0, 0x84(r1)
|
||||
/* 801DF01C 39 61 00 80 */ addi r11, r1, 0x80
|
||||
/* 801DF020 48 18 31 81 */ bl __save_gpr
|
||||
/* 801DF020 48 18 31 81 */ bl _savegpr_14
|
||||
/* 801DF024 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 801DF028 3C 60 80 39 */ lis r3, tag_sub0@ha /* 0x803969C8@ha */
|
||||
/* 801DF02C 3B E3 69 C8 */ addi r31, r3, tag_sub0@l /* 0x803969C8@l */
|
||||
|
|
@ -658,7 +658,7 @@ lbl_801DF944:
|
|||
/* 801DFA08 39 EF 00 08 */ addi r15, r15, 8
|
||||
/* 801DFA0C 41 80 FF 38 */ blt lbl_801DF944
|
||||
/* 801DFA10 39 61 00 80 */ addi r11, r1, 0x80
|
||||
/* 801DFA14 48 18 27 D9 */ bl __restore_gpr
|
||||
/* 801DFA14 48 18 27 D9 */ bl _restgpr_14
|
||||
/* 801DFA18 80 01 00 84 */ lwz r0, 0x84(r1)
|
||||
/* 801DFA1C 7C 08 03 A6 */ mtlr r0
|
||||
/* 801DFA20 38 21 00 80 */ addi r1, r1, 0x80
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_801F8388:
|
|||
/* 801F838C 7C 08 02 A6 */ mflr r0
|
||||
/* 801F8390 90 01 00 74 */ stw r0, 0x74(r1)
|
||||
/* 801F8394 39 61 00 70 */ addi r11, r1, 0x70
|
||||
/* 801F8398 48 16 9E 09 */ bl __save_gpr
|
||||
/* 801F8398 48 16 9E 09 */ bl _savegpr_14
|
||||
/* 801F839C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 801F83A0 3C 60 80 39 */ lis r3, i_id@ha /* 0x80397A18@ha */
|
||||
/* 801F83A4 3A E3 7A 18 */ addi r23, r3, i_id@l /* 0x80397A18@l */
|
||||
|
|
@ -426,7 +426,7 @@ lbl_801F8940:
|
|||
/* 801F89F8 7D 89 03 A6 */ mtctr r12
|
||||
/* 801F89FC 4E 80 04 21 */ bctrl
|
||||
/* 801F8A00 39 61 00 70 */ addi r11, r1, 0x70
|
||||
/* 801F8A04 48 16 97 E9 */ bl __restore_gpr
|
||||
/* 801F8A04 48 16 97 E9 */ bl _restgpr_14
|
||||
/* 801F8A08 80 01 00 74 */ lwz r0, 0x74(r1)
|
||||
/* 801F8A0C 7C 08 03 A6 */ mtlr r0
|
||||
/* 801F8A10 38 21 00 70 */ addi r1, r1, 0x70
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ lbl_80201404:
|
|||
/* 80201410 DB E1 00 70 */ stfd f31, 0x70(r1)
|
||||
/* 80201414 F3 E1 00 78 */ psq_st f31, 120(r1), 0, 0 /* qr0 */
|
||||
/* 80201418 39 61 00 70 */ addi r11, r1, 0x70
|
||||
/* 8020141C 48 16 0D 85 */ bl __save_gpr
|
||||
/* 8020141C 48 16 0D 85 */ bl _savegpr_14
|
||||
/* 80201420 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 80201424 7C 8E 23 78 */ mr r14, r4
|
||||
/* 80201428 7C B1 2B 78 */ mr r17, r5
|
||||
|
|
@ -976,7 +976,7 @@ lbl_802021FC:
|
|||
/* 80202220 E3 E1 00 78 */ psq_l f31, 120(r1), 0, 0 /* qr0 */
|
||||
/* 80202224 CB E1 00 70 */ lfd f31, 0x70(r1)
|
||||
/* 80202228 39 61 00 70 */ addi r11, r1, 0x70
|
||||
/* 8020222C 48 15 FF C1 */ bl __restore_gpr
|
||||
/* 8020222C 48 15 FF C1 */ bl _restgpr_14
|
||||
/* 80202230 80 01 00 84 */ lwz r0, 0x84(r1)
|
||||
/* 80202234 7C 08 03 A6 */ mtlr r0
|
||||
/* 80202238 38 21 00 80 */ addi r1, r1, 0x80
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_8004D988:
|
|||
/* 8004D98C 7C 08 02 A6 */ mflr r0
|
||||
/* 8004D990 90 01 00 94 */ stw r0, 0x94(r1)
|
||||
/* 8004D994 39 61 00 90 */ addi r11, r1, 0x90
|
||||
/* 8004D998 48 31 48 09 */ bl __save_gpr
|
||||
/* 8004D998 48 31 48 09 */ bl _savegpr_14
|
||||
/* 8004D99C 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8004D9A0 7C 90 23 78 */ mr r16, r4
|
||||
/* 8004D9A4 7C B1 2B 78 */ mr r17, r5
|
||||
|
|
@ -180,7 +180,7 @@ lbl_8004DBF8:
|
|||
/* 8004DC0C 7E A3 AB 78 */ mr r3, r21
|
||||
lbl_8004DC10:
|
||||
/* 8004DC10 39 61 00 90 */ addi r11, r1, 0x90
|
||||
/* 8004DC14 48 31 45 D9 */ bl __restore_gpr
|
||||
/* 8004DC14 48 31 45 D9 */ bl _restgpr_14
|
||||
/* 8004DC18 80 01 00 94 */ lwz r0, 0x94(r1)
|
||||
/* 8004DC1C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8004DC20 38 21 00 90 */ addi r1, r1, 0x90
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ lbl_805FEC58:
|
|||
/* 805FEC84 DB 61 01 60 */ stfd f27, 0x160(r1)
|
||||
/* 805FEC88 F3 61 01 68 */ psq_st f27, 360(r1), 0, 0 /* qr0 */
|
||||
/* 805FEC8C 39 61 01 60 */ addi r11, r1, 0x160
|
||||
/* 805FEC90 4B D6 35 11 */ bl __save_gpr
|
||||
/* 805FEC90 4B D6 35 11 */ bl _savegpr_14
|
||||
/* 805FEC94 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 805FEC98 3C 60 80 60 */ lis r3, cNullVec__6Z2Calc@ha /* 0x806029D0@ha */
|
||||
/* 805FEC9C 3A E3 29 D0 */ addi r23, r3, cNullVec__6Z2Calc@l /* 0x806029D0@l */
|
||||
|
|
@ -1988,7 +1988,7 @@ lbl_806009B8:
|
|||
/* 806009D8 E3 61 01 68 */ psq_l f27, 360(r1), 0, 0 /* qr0 */
|
||||
/* 806009DC CB 61 01 60 */ lfd f27, 0x160(r1)
|
||||
/* 806009E0 39 61 01 60 */ addi r11, r1, 0x160
|
||||
/* 806009E4 4B D6 18 09 */ bl __restore_gpr
|
||||
/* 806009E4 4B D6 18 09 */ bl _restgpr_14
|
||||
/* 806009E8 80 01 01 B4 */ lwz r0, 0x1b4(r1)
|
||||
/* 806009EC 7C 08 03 A6 */ mtlr r0
|
||||
/* 806009F0 38 21 01 B0 */ addi r1, r1, 0x1b0
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_8083EB10:
|
|||
/* 8083EB14 7C 08 02 A6 */ mflr r0
|
||||
/* 8083EB18 90 01 00 54 */ stw r0, 0x54(r1)
|
||||
/* 8083EB1C 39 61 00 50 */ addi r11, r1, 0x50
|
||||
/* 8083EB20 4B B2 36 81 */ bl __save_gpr
|
||||
/* 8083EB20 4B B2 36 81 */ bl _savegpr_14
|
||||
/* 8083EB24 7C 7A 1B 78 */ mr r26, r3
|
||||
/* 8083EB28 4B FF FF 51 */ bl copyFootMatrix__9daHorse_cFv
|
||||
/* 8083EB2C 80 7A 05 AC */ lwz r3, 0x5ac(r26)
|
||||
|
|
@ -158,7 +158,7 @@ lbl_8083ED58:
|
|||
/* 8083ED6C 38 60 00 01 */ li r3, 1
|
||||
lbl_8083ED70:
|
||||
/* 8083ED70 39 61 00 50 */ addi r11, r1, 0x50
|
||||
/* 8083ED74 4B B2 34 79 */ bl __restore_gpr
|
||||
/* 8083ED74 4B B2 34 79 */ bl _restgpr_14
|
||||
/* 8083ED78 80 01 00 54 */ lwz r0, 0x54(r1)
|
||||
/* 8083ED7C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8083ED80 38 21 00 50 */ addi r1, r1, 0x50
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ lbl_8086E7F0:
|
|||
/* 8086E814 DB 81 00 60 */ stfd f28, 0x60(r1)
|
||||
/* 8086E818 F3 81 00 68 */ psq_st f28, 104(r1), 0, 0 /* qr0 */
|
||||
/* 8086E81C 39 61 00 60 */ addi r11, r1, 0x60
|
||||
/* 8086E820 4B AF 39 81 */ bl __save_gpr
|
||||
/* 8086E820 4B AF 39 81 */ bl _savegpr_14
|
||||
/* 8086E824 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8086E828 3C 60 80 87 */ lis r3, lit_1109@ha /* 0x80870958@ha */
|
||||
/* 8086E82C 3A A3 09 58 */ addi r21, r3, lit_1109@l /* 0x80870958@l */
|
||||
|
|
@ -335,7 +335,7 @@ lbl_8086EC90:
|
|||
/* 8086ECA8 E3 81 00 68 */ psq_l f28, 104(r1), 0, 0 /* qr0 */
|
||||
/* 8086ECAC CB 81 00 60 */ lfd f28, 0x60(r1)
|
||||
/* 8086ECB0 39 61 00 60 */ addi r11, r1, 0x60
|
||||
/* 8086ECB4 4B AF 35 39 */ bl __restore_gpr
|
||||
/* 8086ECB4 4B AF 35 39 */ bl _restgpr_14
|
||||
/* 8086ECB8 80 01 00 A4 */ lwz r0, 0xa4(r1)
|
||||
/* 8086ECBC 7C 08 03 A6 */ mtlr r0
|
||||
/* 8086ECC0 38 21 00 A0 */ addi r1, r1, 0xa0
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ lbl_804C3298:
|
|||
/* 804C32CC DB 41 01 20 */ stfd f26, 0x120(r1)
|
||||
/* 804C32D0 F3 41 01 28 */ psq_st f26, 296(r1), 0, 0 /* qr0 */
|
||||
/* 804C32D4 39 61 01 20 */ addi r11, r1, 0x120
|
||||
/* 804C32D8 4B E9 EE C9 */ bl __save_gpr
|
||||
/* 804C32D8 4B E9 EE C9 */ bl _savegpr_14
|
||||
/* 804C32DC 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 804C32E0 3C 80 80 4C */ lis r4, lit_3777@ha /* 0x804C64C8@ha */
|
||||
/* 804C32E4 3B 84 64 C8 */ addi r28, r4, lit_3777@l /* 0x804C64C8@l */
|
||||
|
|
@ -850,7 +850,7 @@ lbl_804C3EBC:
|
|||
/* 804C3EE4 E3 41 01 28 */ psq_l f26, 296(r1), 0, 0 /* qr0 */
|
||||
/* 804C3EE8 CB 41 01 20 */ lfd f26, 0x120(r1)
|
||||
/* 804C3EEC 39 61 01 20 */ addi r11, r1, 0x120
|
||||
/* 804C3EF0 4B E9 E2 FD */ bl __restore_gpr
|
||||
/* 804C3EF0 4B E9 E2 FD */ bl _restgpr_14
|
||||
/* 804C3EF4 80 01 01 84 */ lwz r0, 0x184(r1)
|
||||
/* 804C3EF8 7C 08 03 A6 */ mtlr r0
|
||||
/* 804C3EFC 38 21 01 80 */ addi r1, r1, 0x180
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ lbl_804F72D0:
|
|||
/* 804F72E4 DB C1 01 30 */ stfd f30, 0x130(r1)
|
||||
/* 804F72E8 F3 C1 01 38 */ psq_st f30, 312(r1), 0, 0 /* qr0 */
|
||||
/* 804F72EC 39 61 01 30 */ addi r11, r1, 0x130
|
||||
/* 804F72F0 4B E6 AE B1 */ bl __save_gpr
|
||||
/* 804F72F0 4B E6 AE B1 */ bl _savegpr_14
|
||||
/* 804F72F4 7C 72 1B 78 */ mr r18, r3
|
||||
/* 804F72F8 3C 60 80 50 */ lis r3, cNullVec__6Z2Calc@ha /* 0x804FA950@ha */
|
||||
/* 804F72FC 3B 23 A9 50 */ addi r25, r3, cNullVec__6Z2Calc@l /* 0x804FA950@l */
|
||||
|
|
@ -1734,7 +1734,7 @@ lbl_804F8C38:
|
|||
/* 804F8C40 E3 C1 01 38 */ psq_l f30, 312(r1), 0, 0 /* qr0 */
|
||||
/* 804F8C44 CB C1 01 30 */ lfd f30, 0x130(r1)
|
||||
/* 804F8C48 39 61 01 30 */ addi r11, r1, 0x130
|
||||
/* 804F8C4C 4B E6 95 A1 */ bl __restore_gpr
|
||||
/* 804F8C4C 4B E6 95 A1 */ bl _restgpr_14
|
||||
/* 804F8C50 80 01 01 54 */ lwz r0, 0x154(r1)
|
||||
/* 804F8C54 7C 08 03 A6 */ mtlr r0
|
||||
/* 804F8C58 38 21 01 50 */ addi r1, r1, 0x150
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ lbl_8079AF94:
|
|||
/* 8079AFA0 DB E1 01 A0 */ stfd f31, 0x1a0(r1)
|
||||
/* 8079AFA4 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, 0 /* qr0 */
|
||||
/* 8079AFA8 39 61 01 A0 */ addi r11, r1, 0x1a0
|
||||
/* 8079AFAC 4B BC 71 F5 */ bl __save_gpr
|
||||
/* 8079AFAC 4B BC 71 F5 */ bl _savegpr_14
|
||||
/* 8079AFB0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8079AFB4 3C 80 80 7A */ lis r4, cNullVec__6Z2Calc@ha /* 0x8079D734@ha */
|
||||
/* 8079AFB8 3B A4 D7 34 */ addi r29, r4, cNullVec__6Z2Calc@l /* 0x8079D734@l */
|
||||
|
|
@ -876,7 +876,7 @@ lbl_8079BC7C:
|
|||
/* 8079BC7C E3 E1 01 A8 */ psq_l f31, 424(r1), 0, 0 /* qr0 */
|
||||
/* 8079BC80 CB E1 01 A0 */ lfd f31, 0x1a0(r1)
|
||||
/* 8079BC84 39 61 01 A0 */ addi r11, r1, 0x1a0
|
||||
/* 8079BC88 4B BC 65 65 */ bl __restore_gpr
|
||||
/* 8079BC88 4B BC 65 65 */ bl _restgpr_14
|
||||
/* 8079BC8C 80 01 01 B4 */ lwz r0, 0x1b4(r1)
|
||||
/* 8079BC90 7C 08 03 A6 */ mtlr r0
|
||||
/* 8079BC94 38 21 01 B0 */ addi r1, r1, 0x1b0
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ lbl_807C53FC:
|
|||
/* 807C5408 DB E1 01 30 */ stfd f31, 0x130(r1)
|
||||
/* 807C540C F3 E1 01 38 */ psq_st f31, 312(r1), 0, 0 /* qr0 */
|
||||
/* 807C5410 39 61 01 30 */ addi r11, r1, 0x130
|
||||
/* 807C5414 4B B9 CD 8D */ bl __save_gpr
|
||||
/* 807C5414 4B B9 CD 8D */ bl _savegpr_14
|
||||
/* 807C5418 7C 7B 1B 78 */ mr r27, r3
|
||||
/* 807C541C 3C 60 80 7D */ lis r3, lit_3907@ha /* 0x807CECA8@ha */
|
||||
/* 807C5420 3A 63 EC A8 */ addi r19, r3, lit_3907@l /* 0x807CECA8@l */
|
||||
|
|
@ -596,7 +596,7 @@ lbl_807C5C8C:
|
|||
/* 807C5CD0 E3 E1 01 38 */ psq_l f31, 312(r1), 0, 0 /* qr0 */
|
||||
/* 807C5CD4 CB E1 01 30 */ lfd f31, 0x130(r1)
|
||||
/* 807C5CD8 39 61 01 30 */ addi r11, r1, 0x130
|
||||
/* 807C5CDC 4B B9 C5 11 */ bl __restore_gpr
|
||||
/* 807C5CDC 4B B9 C5 11 */ bl _restgpr_14
|
||||
/* 807C5CE0 80 01 01 44 */ lwz r0, 0x144(r1)
|
||||
/* 807C5CE4 7C 08 03 A6 */ mtlr r0
|
||||
/* 807C5CE8 38 21 01 40 */ addi r1, r1, 0x140
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ lbl_8085D1DC:
|
|||
/* 8085D240 DA 81 01 10 */ stfd f20, 0x110(r1)
|
||||
/* 8085D244 F2 81 01 18 */ psq_st f20, 280(r1), 0, 0 /* qr0 */
|
||||
/* 8085D248 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 8085D24C 4B B0 4F 55 */ bl __save_gpr
|
||||
/* 8085D24C 4B B0 4F 55 */ bl _savegpr_14
|
||||
/* 8085D250 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8085D254 3C 60 80 86 */ lis r3, lit_3836@ha /* 0x8085EF00@ha */
|
||||
/* 8085D258 3B 43 EF 00 */ addi r26, r3, lit_3836@l /* 0x8085EF00@l */
|
||||
|
|
@ -966,7 +966,7 @@ lbl_8085DF78:
|
|||
/* 8085DFD0 E2 81 01 18 */ psq_l f20, 280(r1), 0, 0 /* qr0 */
|
||||
/* 8085DFD4 CA 81 01 10 */ lfd f20, 0x110(r1)
|
||||
/* 8085DFD8 39 61 01 10 */ addi r11, r1, 0x110
|
||||
/* 8085DFDC 4B B0 42 11 */ bl __restore_gpr
|
||||
/* 8085DFDC 4B B0 42 11 */ bl _restgpr_14
|
||||
/* 8085DFE0 80 01 01 D4 */ lwz r0, 0x1d4(r1)
|
||||
/* 8085DFE4 7C 08 03 A6 */ mtlr r0
|
||||
/* 8085DFE8 38 21 01 D0 */ addi r1, r1, 0x1d0
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ lbl_8085BD0C:
|
|||
/* 8085BD48 DB 21 01 40 */ stfd f25, 0x140(r1)
|
||||
/* 8085BD4C F3 21 01 48 */ psq_st f25, 328(r1), 0, 0 /* qr0 */
|
||||
/* 8085BD50 39 61 01 40 */ addi r11, r1, 0x140
|
||||
/* 8085BD54 4B B0 64 4D */ bl __save_gpr
|
||||
/* 8085BD54 4B B0 64 4D */ bl _savegpr_14
|
||||
/* 8085BD58 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 8085BD5C 3C 60 80 86 */ lis r3, lit_3836@ha /* 0x8085EF00@ha */
|
||||
/* 8085BD60 3B 83 EF 00 */ addi r28, r3, lit_3836@l /* 0x8085EF00@l */
|
||||
|
|
@ -1416,7 +1416,7 @@ lbl_8085D18C:
|
|||
/* 8085D1BC E3 21 01 48 */ psq_l f25, 328(r1), 0, 0 /* qr0 */
|
||||
/* 8085D1C0 CB 21 01 40 */ lfd f25, 0x140(r1)
|
||||
/* 8085D1C4 39 61 01 40 */ addi r11, r1, 0x140
|
||||
/* 8085D1C8 4B B0 50 25 */ bl __restore_gpr
|
||||
/* 8085D1C8 4B B0 50 25 */ bl _restgpr_14
|
||||
/* 8085D1CC 80 01 01 B4 */ lwz r0, 0x1b4(r1)
|
||||
/* 8085D1D0 7C 08 03 A6 */ mtlr r0
|
||||
/* 8085D1D4 38 21 01 B0 */ addi r1, r1, 0x1b0
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ lbl_80986448:
|
|||
/* 8098644C 7C 08 02 A6 */ mflr r0
|
||||
/* 80986450 90 01 00 E4 */ stw r0, 0xe4(r1)
|
||||
/* 80986454 39 61 00 E0 */ addi r11, r1, 0xe0
|
||||
/* 80986458 4B 9D BD 49 */ bl __save_gpr
|
||||
/* 80986458 4B 9D BD 49 */ bl _savegpr_14
|
||||
/* 8098645C 3C 60 80 98 */ lis r3, cNullVec__6Z2Calc@ha /* 0x8098795C@ha */
|
||||
/* 80986460 3B E3 79 5C */ addi r31, r3, cNullVec__6Z2Calc@l /* 0x8098795C@l */
|
||||
/* 80986464 3C 60 80 98 */ lis r3, l_resMANa@ha /* 0x8098699C@ha */
|
||||
|
|
@ -307,7 +307,7 @@ lbl_80986448:
|
|||
/* 8098690C 80 04 00 08 */ lwz r0, 8(r4)
|
||||
/* 80986910 90 1F 3E 00 */ stw r0, 0x3e00(r31)
|
||||
/* 80986914 39 61 00 E0 */ addi r11, r1, 0xe0
|
||||
/* 80986918 4B 9D B8 D5 */ bl __restore_gpr
|
||||
/* 80986918 4B 9D B8 D5 */ bl _restgpr_14
|
||||
/* 8098691C 80 01 00 E4 */ lwz r0, 0xe4(r1)
|
||||
/* 80986920 7C 08 03 A6 */ mtlr r0
|
||||
/* 80986924 38 21 00 E0 */ addi r1, r1, 0xe0
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ lbl_80BB0ED4:
|
|||
/* 80BB0EE0 DB E1 00 A0 */ stfd f31, 0xa0(r1)
|
||||
/* 80BB0EE4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, 0 /* qr0 */
|
||||
/* 80BB0EE8 39 61 00 A0 */ addi r11, r1, 0xa0
|
||||
/* 80BB0EEC 4B 7B 12 B5 */ bl __save_gpr
|
||||
/* 80BB0EEC 4B 7B 12 B5 */ bl _savegpr_14
|
||||
/* 80BB0EF0 7C 78 1B 78 */ mr r24, r3
|
||||
/* 80BB0EF4 7C 99 23 78 */ mr r25, r4
|
||||
/* 80BB0EF8 7C BA 2B 78 */ mr r26, r5
|
||||
|
|
@ -158,7 +158,7 @@ lbl_80BB112C:
|
|||
/* 80BB1134 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, 0 /* qr0 */
|
||||
/* 80BB1138 CB E1 00 A0 */ lfd f31, 0xa0(r1)
|
||||
/* 80BB113C 39 61 00 A0 */ addi r11, r1, 0xa0
|
||||
/* 80BB1140 4B 7B 10 AD */ bl __restore_gpr
|
||||
/* 80BB1140 4B 7B 10 AD */ bl _restgpr_14
|
||||
/* 80BB1144 80 01 00 B4 */ lwz r0, 0xb4(r1)
|
||||
/* 80BB1148 7C 08 03 A6 */ mtlr r0
|
||||
/* 80BB114C 38 21 00 B0 */ addi r1, r1, 0xb0
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ lbl_8047C034:
|
|||
/* 8047C078 DB 01 02 90 */ stfd f24, 0x290(r1)
|
||||
/* 8047C07C F3 01 02 98 */ psq_st f24, 664(r1), 0, 0 /* qr0 */
|
||||
/* 8047C080 39 61 02 90 */ addi r11, r1, 0x290
|
||||
/* 8047C084 4B EE 61 1D */ bl __save_gpr
|
||||
/* 8047C084 4B EE 61 1D */ bl _savegpr_14
|
||||
/* 8047C088 7C 76 1B 78 */ mr r22, r3
|
||||
/* 8047C08C 3C 60 80 48 */ lis r3, lit_3770@ha /* 0x8047D810@ha */
|
||||
/* 8047C090 3B 03 D8 10 */ addi r24, r3, lit_3770@l /* 0x8047D810@l */
|
||||
|
|
@ -989,7 +989,7 @@ lbl_8047CE8C:
|
|||
/* 8047CEC4 E3 01 02 98 */ psq_l f24, 664(r1), 0, 0 /* qr0 */
|
||||
/* 8047CEC8 CB 01 02 90 */ lfd f24, 0x290(r1)
|
||||
/* 8047CECC 39 61 02 90 */ addi r11, r1, 0x290
|
||||
/* 8047CED0 4B EE 53 1D */ bl __restore_gpr
|
||||
/* 8047CED0 4B EE 53 1D */ bl _restgpr_14
|
||||
/* 8047CED4 80 01 03 14 */ lwz r0, 0x314(r1)
|
||||
/* 8047CED8 7C 08 03 A6 */ mtlr r0
|
||||
/* 8047CEDC 38 21 03 10 */ addi r1, r1, 0x310
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ lbl_80CE14DC:
|
|||
/* 80CE14F0 DB C1 01 80 */ stfd f30, 0x180(r1)
|
||||
/* 80CE14F4 F3 C1 01 88 */ psq_st f30, 392(r1), 0, 0 /* qr0 */
|
||||
/* 80CE14F8 39 61 01 80 */ addi r11, r1, 0x180
|
||||
/* 80CE14FC 4B 68 0C A5 */ bl __save_gpr
|
||||
/* 80CE14FC 4B 68 0C A5 */ bl _savegpr_14
|
||||
/* 80CE1500 7C 6F 1B 78 */ mr r15, r3
|
||||
/* 80CE1504 3C 60 80 CE */ lis r3, lit_3779@ha /* 0x80CE39E8@ha */
|
||||
/* 80CE1508 3B 03 39 E8 */ addi r24, r3, lit_3779@l /* 0x80CE39E8@l */
|
||||
|
|
@ -1460,7 +1460,7 @@ lbl_80CE2A0C:
|
|||
/* 80CE2A44 E3 C1 01 88 */ psq_l f30, 392(r1), 0, 0 /* qr0 */
|
||||
/* 80CE2A48 CB C1 01 80 */ lfd f30, 0x180(r1)
|
||||
/* 80CE2A4C 39 61 01 80 */ addi r11, r1, 0x180
|
||||
/* 80CE2A50 4B 67 F7 9D */ bl __restore_gpr
|
||||
/* 80CE2A50 4B 67 F7 9D */ bl _restgpr_14
|
||||
/* 80CE2A54 80 01 01 A4 */ lwz r0, 0x1a4(r1)
|
||||
/* 80CE2A58 7C 08 03 A6 */ mtlr r0
|
||||
/* 80CE2A5C 38 21 01 A0 */ addi r1, r1, 0x1a0
|
||||
|
|
|
|||
|
|
@ -16905,7 +16905,7 @@ SYMBOLS = [
|
|||
{'addr':0x80362188,'size':4,'pad':0,'label':"_restfpr_27",'name':"_restfpr_27",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':False,'r':[0,2,0],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x8036218C,'size':4,'pad':0,'label':"_restfpr_28",'name':"_restfpr_28",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':False,'r':[0,2,0],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x80362190,'size':16,'pad':0,'label':"_restfpr_29",'name':"_restfpr_29",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,3,1],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621A0,'size':4,'pad':0,'label':"__save_gpr",'name':"__save_gpr",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,22,13],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621A0,'size':4,'pad':0,'label':"_savegpr_14",'name':"_savegpr_14",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,22,13],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621A4,'size':4,'pad':0,'label':"_savegpr_15",'name':"_savegpr_15",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':False,'r':[0,5,6],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621A8,'size':4,'pad':0,'label':"_savegpr_16",'name':"_savegpr_16",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,10,4],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621AC,'size':4,'pad':0,'label':"_savegpr_17",'name':"_savegpr_17",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,11,7],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
|
|
@ -16921,7 +16921,7 @@ SYMBOLS = [
|
|||
{'addr':0x803621D4,'size':4,'pad':0,'label':"_savegpr_27",'name':"_savegpr_27",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,480,812],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621D8,'size':4,'pad':0,'label':"_savegpr_28",'name':"_savegpr_28",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,644,1293],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621DC,'size':16,'pad':0,'label':"_savegpr_29",'name':"_savegpr_29",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,992,2067],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621EC,'size':4,'pad':0,'label':"__restore_gpr",'name':"__restore_gpr",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,22,13],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621EC,'size':4,'pad':0,'label':"_restgpr_14",'name':"_restgpr_14",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,22,13],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621F0,'size':4,'pad':0,'label':"_restgpr_15",'name':"_restgpr_15",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':False,'r':[0,5,6],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621F4,'size':4,'pad':0,'label':"_restgpr_16",'name':"_restgpr_16",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,10,4],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
{'addr':0x803621F8,'size':4,'pad':0,'label':"_restgpr_17",'name':"_restgpr_17",'lib':1,'tu':241,'section':2,'class_template':None,'static':False,'is_reachable':True,'r':[0,11,7],'sh':[0,0,0],'type':"ASMFunction"},
|
||||
|
|
@ -43397,7 +43397,7 @@ SYMBOL_NAMES = {
|
|||
"_restfpr_27":16122,
|
||||
"_restfpr_28":16123,
|
||||
"_restfpr_29":16124,
|
||||
"__save_gpr":16125,
|
||||
"_savegpr_14":16125,
|
||||
"_savegpr_15":16126,
|
||||
"_savegpr_16":16127,
|
||||
"_savegpr_17":16128,
|
||||
|
|
@ -43413,7 +43413,7 @@ SYMBOL_NAMES = {
|
|||
"_savegpr_27":16138,
|
||||
"_savegpr_28":16139,
|
||||
"_savegpr_29":16140,
|
||||
"__restore_gpr":16141,
|
||||
"_restgpr_14":16141,
|
||||
"_restgpr_15":16142,
|
||||
"_restgpr_16":16143,
|
||||
"_restgpr_17":16144,
|
||||
|
|
|
|||
|
|
@ -2,14 +2,25 @@
|
|||
#define JUTDIRECTFILE_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "dolphin/dvd/dvd.h"
|
||||
|
||||
#define JUTDF_BUFSIZE (0x800)
|
||||
|
||||
struct JUTDirectFile {
|
||||
/* 802E8730 */ void fetch32byte();
|
||||
/* 802E8730 */ int fetch32byte();
|
||||
/* 802E87F8 */ JUTDirectFile();
|
||||
/* 802E881C */ ~JUTDirectFile();
|
||||
/* 802E8860 */ bool fopen(char const*);
|
||||
/* 802E88FC */ bool fclose();
|
||||
/* 802E88FC */ void fclose();
|
||||
/* 802E8958 */ int fgets(void*, int);
|
||||
|
||||
/* 0x000 */ u8 mBuffer[0x820];
|
||||
/* 0x820 */ u8* mSectorStart;
|
||||
/* 0x824 */ u32 mToRead;
|
||||
/* 0x828 */ u32 mLength;
|
||||
/* 0x82C */ u32 mPos;
|
||||
/* 0x830 */ bool mIsOpen;
|
||||
/* 0x834 */ DVDFileInfo mFileInfo;
|
||||
};
|
||||
|
||||
#endif /* JUTDIRECTFILE_H */
|
||||
|
|
|
|||
|
|
@ -48,6 +48,8 @@ struct ResFONT {
|
|||
/* 0x18 */ u16 numColumns;
|
||||
/* 0x1A */ u16 textureWidth;
|
||||
/* 0x1C */ u16 textureHeight;
|
||||
/* 0x1E */ u16 padding;
|
||||
/* 0x20 */ u8 data[];
|
||||
};
|
||||
|
||||
/* 0x00 */ u64 magic;
|
||||
|
|
|
|||
|
|
@ -14,26 +14,35 @@ public:
|
|||
/* 802E7340 */ CTime();
|
||||
|
||||
void start(u8 param_0, u8 param_1, u8 param_2) {
|
||||
field_0x10 = param_0;
|
||||
field_0x11 = param_1;
|
||||
field_0x12 = param_2;
|
||||
mR = param_0;
|
||||
mG = param_1;
|
||||
mB = param_2;
|
||||
mTick = OSGetTick();
|
||||
}
|
||||
|
||||
void end() {
|
||||
field_0x4 = ((OSGetTick() - mTick) * 8) / ((*(u32*)0x800000F8 / 4) / 125000);
|
||||
if (field_0x4 == 0) {
|
||||
field_0x4 = 1;
|
||||
mCost = ((OSGetTick() - mTick) * 8) / ((*(u32*)0x800000F8 / 4) / 125000);
|
||||
if (mCost == 0) {
|
||||
mCost = 1;
|
||||
}
|
||||
}
|
||||
|
||||
void accumePeek() {
|
||||
if (++field_0xc >= 0x10 || mCost >= field_0x8) {
|
||||
field_0x8 = mCost;
|
||||
field_0xc = 0;
|
||||
}
|
||||
}
|
||||
|
||||
int calcBarSize(int p1, int p2) { return mCost * p1 / p2; }
|
||||
|
||||
/* 0x00 */ u32 mTick;
|
||||
/* 0x04 */ u32 field_0x4;
|
||||
/* 0x04 */ u32 mCost;
|
||||
/* 0x08 */ u32 field_0x8;
|
||||
/* 0x0C */ u32 field_0xc;
|
||||
/* 0x10 */ u8 field_0x10;
|
||||
/* 0x11 */ u8 field_0x11;
|
||||
/* 0x12 */ u8 field_0x12;
|
||||
/* 0x10 */ u8 mR;
|
||||
/* 0x11 */ u8 mG;
|
||||
/* 0x12 */ u8 mB;
|
||||
};
|
||||
|
||||
class CParamSet {
|
||||
|
|
@ -81,12 +90,12 @@ private:
|
|||
/* 0x028 */ CTime mCpu;
|
||||
/* 0x03C */ CTime mGpWait;
|
||||
/* 0x050 */ CTime mWholeLoop;
|
||||
/* 0x064 */ CTime field_0x64[8];
|
||||
/* 0x064 */ CTime mUsers[8];
|
||||
/* 0x104 */ int mCostFrame;
|
||||
/* 0x108 */ int field_0x108;
|
||||
/* 0x10C */ bool mVisible;
|
||||
/* 0x110 */ int field_0x110;
|
||||
/* 0x114 */ CParamSet field_0x114;
|
||||
/* 0x114 */ CParamSet mParams;
|
||||
/* 0x128 */ int field_0x128;
|
||||
/* 0x12C */ JKRHeap* mWatchHeap;
|
||||
/* 0x130 */ bool mHeapBarVisible;
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ class JKRHeap;
|
|||
typedef bool (*IsLeadByte_func)(int);
|
||||
|
||||
struct BlockHeader {
|
||||
const BlockHeader* getNext() const { return reinterpret_cast<const BlockHeader*>(reinterpret_cast<const u8*>(this) + size); }
|
||||
u32 magic;
|
||||
u32 size;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -105,6 +105,8 @@ typedef struct DVDBB2 {
|
|||
u32 padding0;
|
||||
} DVDBB2;
|
||||
|
||||
#define DVD_MIN_TRANSFER_SIZE 32
|
||||
|
||||
typedef void (*DVDOptionalCommandChecker)(DVDCommandBlock* block, void (*cb)(u32 intType));
|
||||
|
||||
void DVDInit(void);
|
||||
|
|
|
|||
|
|
@ -122,6 +122,11 @@ inline void i_GXTexCoord2u16(u16 x, u16 y) {
|
|||
GFX_FIFO(u16) = y;
|
||||
}
|
||||
|
||||
inline void GXTexCoord2s16(const s16 u, const s16 v) {
|
||||
GFX_FIFO(s16) = u;
|
||||
GFX_FIFO(s16) = v;
|
||||
}
|
||||
|
||||
inline void GFWriteBPCmd(u32 param_1) {
|
||||
GXFIFO.u8 = 0x61;
|
||||
GXFIFO.u32 = param_1;
|
||||
|
|
|
|||
|
|
@ -680,12 +680,11 @@ void J3DModel::calcBBoardMtx() {
|
|||
}
|
||||
|
||||
/* 803282EC-80328350 322C2C 0064+00 2/2 0/0 0/0 .text prepareShapePackets__8J3DModelFv */
|
||||
#if defined NONMATCHING
|
||||
void J3DModel::prepareShapePackets() {
|
||||
u16 shapeNum = getModelData()->getShapeNum();
|
||||
|
||||
for (u16 i = 0; i < shapeNum; i++) {
|
||||
// two swapped instructions right around here when calling getShapePacket
|
||||
J3DShape* xx = mModelData->getShapeNodePointer(i);
|
||||
J3DShapePacket* pkt = getShapePacket(i);
|
||||
pkt->setMtxBuffer(mMtxBuffer);
|
||||
if (getMtxCalcMode() == 2) {
|
||||
|
|
@ -695,16 +694,6 @@ void J3DModel::prepareShapePackets() {
|
|||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J3DModel::prepareShapePackets() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J3DGraphAnimator/J3DModel/prepareShapePackets__8J3DModelFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80328350-803283B4 322C90 0064+00 1/0 0/0 0/0 .text __dt__8J3DModelFv */
|
||||
J3DModel::~J3DModel() {}
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ extern "C" void J3DGQRSetup7__FUlUlUlUl();
|
|||
extern "C" void J3DPSCalcInverseTranspose__FPA4_fPA3_f();
|
||||
extern "C" void makeVcdVatCmd__8J3DShapeFv();
|
||||
extern "C" void __construct_new_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
|
|
@ -65,7 +65,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
|
|
|
|||
|
|
@ -51,13 +51,13 @@ extern "C" void J3DFifoLoadTexCached__F11_GXTexMapIDUl15_GXTexCacheSizeUl15_GXTe
|
|||
|
||||
extern "C" void GDOverflowed();
|
||||
extern "C" void __cvt_fp2unsigned();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_23();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_23();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
|
|
|
|||
|
|
@ -5,44 +5,17 @@
|
|||
|
||||
#include "JSystem/JKernel/JKRFileLoader.h"
|
||||
#include "MSL_C/string.h"
|
||||
#include "dol2asm.h"
|
||||
#include "MSL_C/MSL_Common/Src/ctype.h"
|
||||
#include "global.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__13JKRFileLoaderFv();
|
||||
extern "C" void __dt__13JKRFileLoaderFv();
|
||||
extern "C" void unmount__13JKRFileLoaderFv();
|
||||
extern "C" void getGlbResource__13JKRFileLoaderFPCc();
|
||||
extern "C" void getGlbResource__13JKRFileLoaderFPCcP13JKRFileLoader();
|
||||
extern "C" void removeResource__13JKRFileLoaderFPvP13JKRFileLoader();
|
||||
extern "C" void detachResource__13JKRFileLoaderFPvP13JKRFileLoader();
|
||||
extern "C" void findVolume__13JKRFileLoaderFPPCc();
|
||||
extern "C" void fetchVolumeName__13JKRFileLoaderFPclPCc();
|
||||
extern "C" void __sinit_JKRFileLoader_cpp();
|
||||
extern "C" void func_802D45E4(void* _this);
|
||||
extern "C" extern char const* const JKRFileLoader__stringBase0;
|
||||
extern "C" u8 sVolumeList__13JKRFileLoader[12];
|
||||
extern "C" u8 sCurrentVolume__13JKRFileLoader[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __ct__11JKRDisposerFv();
|
||||
extern "C" void __dt__11JKRDisposerFv();
|
||||
extern "C" void __ct__10JSUPtrLinkFPv();
|
||||
extern "C" void __dt__10JSUPtrLinkFv();
|
||||
extern "C" void __dt__10JSUPtrListFv();
|
||||
extern "C" void initiate__10JSUPtrListFv();
|
||||
extern "C" void __register_global_object();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern u8 __lower_map[256];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
|
@ -168,20 +141,11 @@ JKRFileLoader* JKRFileLoader::findVolume(const char** volumeName) {
|
|||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8039D150-8039D150 0297B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_8039D150 = "/";
|
||||
/* @stringBase0 padding */
|
||||
SECTION_DEAD static char const* const pad_8039D152 = "\0\0\0\0\0";
|
||||
#pragma pop
|
||||
|
||||
/* 804508C0-804508C8 000340 0002+06 1/1 0/0 0/0 .sdata rootPath$2498 */
|
||||
SECTION_SDATA static char rootPath[2] = "/";
|
||||
static char rootPath[2] = "/";
|
||||
|
||||
/* 802D44C4-802D45A0 2CEE04 00DC+00 1/1 0/0 0/0 .text fetchVolumeName__13JKRFileLoaderFPclPCc */
|
||||
// matches, but rootPath is accessed through r13
|
||||
#ifdef NONMATCHING
|
||||
const char* JKRFileLoader::fetchVolumeName(char* buffer, long bufferSize, const char* path) {
|
||||
if (strcmp(path, "/") == 0) {
|
||||
strcpy(buffer, rootPath);
|
||||
|
|
@ -191,7 +155,7 @@ const char* JKRFileLoader::fetchVolumeName(char* buffer, long bufferSize, const
|
|||
path++;
|
||||
while (*path != 0 && *path != '/') {
|
||||
if (1 < bufferSize) {
|
||||
u8 lower_char;
|
||||
int lower_char;
|
||||
int ch = (int)*path;
|
||||
if (ch == -1) {
|
||||
lower_char = -1;
|
||||
|
|
@ -213,13 +177,3 @@ const char* JKRFileLoader::fetchVolumeName(char* buffer, long bufferSize, const
|
|||
|
||||
return path;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm const char* JKRFileLoader::fetchVolumeName(char* param_0, s32 param_1, char const* param_2) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JKernel/JKRFileLoader/fetchVolumeName__13JKRFileLoaderFPclPCc.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -38,8 +38,10 @@ void JMAEulerToQuat(s16 x, s16 y, s16 z, Quaternion* quat) {
|
|||
f32 sinY = JMASSin(y / 2);
|
||||
f32 sinZ = JMASSin(z / 2);
|
||||
|
||||
quat->w = cosX * (cosY * cosZ) + sinX * (sinY * sinZ);
|
||||
quat->x = sinX * (cosY * cosZ) - cosX * (sinY * sinZ);
|
||||
f32 cyz = cosY * cosZ;
|
||||
f32 syz = sinY * sinZ;
|
||||
quat->w = cosX * (cyz) + sinX * (syz);
|
||||
quat->x = sinX * (cyz) - cosX * (syz);
|
||||
quat->y = cosZ * (cosX * sinY) + sinZ * (sinX * cosY);
|
||||
quat->z = sinZ * (cosX * cosY) - cosZ * (sinX * sinY);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -136,11 +136,11 @@ extern "C" void func_80280588();
|
|||
extern "C" void JPAGetXYZRotateMtx__FsssPA4_f();
|
||||
extern "C" void alloc__7JKRHeapFUliP7JKRHeap();
|
||||
extern "C" void load__10JUTTextureF11_GXTexMapID();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
|
|
|
|||
|
|
@ -65,13 +65,13 @@ extern "C" void getCellHeight__10JUTResFontCFv();
|
|||
extern "C" void isLeadByte__10JUTResFontCFi();
|
||||
extern "C" void panic_f__12JUTExceptionFPCciPCce();
|
||||
extern "C" void JUTReportConsole(const char*);
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_21();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_21();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
|
|
@ -151,12 +151,6 @@ SECTION_DEAD static char const* const stringBase_8039D2F0 = "JUTCacheFont: Unkno
|
|||
|
||||
/* 802DD35C-802DD4EC 2D7C9C 0190+00 1/1 0/0 0/0 .text
|
||||
* getMemorySize__12JUTCacheFontFPC7ResFONTPUsPUlPUsPUlPUsPUlPUl */
|
||||
#ifdef NONMATCHING
|
||||
struct BlockHeader {
|
||||
u32 magic;
|
||||
u32 size;
|
||||
};
|
||||
|
||||
int JUTCacheFont::getMemorySize(ResFONT const* p_font, u16* o_widCount, u32* o_widSize,
|
||||
u16* o_glyCount, u32* o_glySize, u16* o_mapCount, u32* o_mapSize,
|
||||
u32* o_glyTexSize) {
|
||||
|
|
@ -173,7 +167,7 @@ int JUTCacheFont::getMemorySize(ResFONT const* p_font, u16* o_widCount, u32* o_w
|
|||
u32 maxGlyTexSize = 0;
|
||||
u32 glyTexSize;
|
||||
|
||||
u8* fontInf = (u8*)&p_font + 0x20;
|
||||
u8* fontInf = (u8*)p_font->data;
|
||||
for (int i = 0; i < p_font->numBlocks; i++) {
|
||||
switch (((BlockHeader*)fontInf)->magic) {
|
||||
case 'INF1':
|
||||
|
|
@ -232,18 +226,6 @@ int JUTCacheFont::getMemorySize(ResFONT const* p_font, u16* o_widCount, u32* o_w
|
|||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int JUTCacheFont::getMemorySize(ResFONT const* param_0, u16* param_1, u32* param_2,
|
||||
u16* param_3, u32* param_4, u16* param_5, u32* param_6,
|
||||
u32* param_7) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTCacheFont/getMemorySize__12JUTCacheFontFPC7ResFONTPUsPUlPUsPUlPUsPUlPUl.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 802DD4EC-802DD54C 2D7E2C 0060+00 1/1 0/0 0/0 .text
|
||||
* initiate__12JUTCacheFontFPC7ResFONTPvUlP7JKRHeap */
|
||||
|
|
@ -345,14 +327,29 @@ bool JUTCacheFont::allocArea(void* param_0, u32 param_1, JKRHeap* heap) {
|
|||
}
|
||||
|
||||
/* 802DD804-802DD8EC 2D8144 00E8+00 1/1 0/0 0/0 .text allocArray__12JUTCacheFontFP7JKRHeap */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool JUTCacheFont::allocArray(JKRHeap* param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTCacheFont/allocArray__12JUTCacheFontFP7JKRHeap.s"
|
||||
bool JUTCacheFont::allocArray(JKRHeap* param_0) {
|
||||
mMemBlocks = (void**)new (param_0, 0) u32[mWid1BlockNum + mGly1BlockNum + mMap1BlockNum];
|
||||
if (mMemBlocks == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void** blocks = mMemBlocks;
|
||||
if (mWid1BlockNum) {
|
||||
mpWidthBlocks = (ResFONT::WID1**)blocks;
|
||||
blocks = blocks + mWid1BlockNum;
|
||||
}
|
||||
if (mGly1BlockNum) {
|
||||
mpGlyphBlocks = (ResFONT::GLY1**)blocks;
|
||||
blocks = blocks + mGly1BlockNum;
|
||||
for (int i = 0; i < mGly1BlockNum; i++) {
|
||||
mpGlyphBlocks[i] = (ResFONT::GLY1*)((u8*)mCacheBuffer + (field_0x94 * i));
|
||||
}
|
||||
}
|
||||
if (mMap1BlockNum) {
|
||||
mpMapBlocks = (ResFONT::MAP1**)blocks;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8039D2F0-8039D2F0 029950 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
|
|
|||
|
|
@ -4,96 +4,182 @@
|
|||
//
|
||||
|
||||
#include "JSystem/JUtility/JUTDirectFile.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "dolphin/os/OSInterrupt.h"
|
||||
#include "global.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void fetch32byte__13JUTDirectFileFv();
|
||||
extern "C" void __ct__13JUTDirectFileFv();
|
||||
extern "C" void __dt__13JUTDirectFileFv();
|
||||
extern "C" void fopen__13JUTDirectFileFPCc();
|
||||
extern "C" void fclose__13JUTDirectFileFv();
|
||||
extern "C" void fgets__13JUTDirectFileFPvi();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void OSEnableInterrupts();
|
||||
extern "C" void OSRestoreInterrupts();
|
||||
extern "C" void DVDOpen();
|
||||
extern "C" void DVDClose();
|
||||
extern "C" void DVDReadAsyncPrio();
|
||||
extern "C" void DVDGetCommandBlockStatus();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_29();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 802E8730-802E87F8 2E3070 00C8+00 1/1 0/0 0/0 .text fetch32byte__13JUTDirectFileFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JUTDirectFile::fetch32byte() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTDirectFile/fetch32byte__13JUTDirectFileFv.s"
|
||||
int JUTDirectFile::fetch32byte() {
|
||||
mToRead = mLength - ALIGN_PREV(mPos, DVD_MIN_TRANSFER_SIZE);
|
||||
|
||||
if (mToRead > JUTDF_BUFSIZE) {
|
||||
mToRead = JUTDF_BUFSIZE;
|
||||
}
|
||||
int interrupts = OSEnableInterrupts();
|
||||
int readRes = DVDReadAsyncPrio(&mFileInfo, mSectorStart, ALIGN_NEXT(mToRead, DVD_MIN_TRANSFER_SIZE),
|
||||
ALIGN_PREV(mPos, DVD_MIN_TRANSFER_SIZE), NULL, 2);
|
||||
OSRestoreInterrupts(interrupts);
|
||||
if (!readRes) {
|
||||
return -1;
|
||||
} else {
|
||||
interrupts = OSEnableInterrupts();
|
||||
while (DVDGetCommandBlockStatus(&mFileInfo.block)) {
|
||||
;
|
||||
}
|
||||
OSRestoreInterrupts(interrupts);
|
||||
return mToRead;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802E87F8-802E881C 2E3138 0024+00 0/0 1/1 0/0 .text __ct__13JUTDirectFileFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JUTDirectFile::JUTDirectFile() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTDirectFile/__ct__13JUTDirectFileFv.s"
|
||||
JUTDirectFile::JUTDirectFile() {
|
||||
mLength = 0;
|
||||
mPos = 0;
|
||||
mToRead = 0;
|
||||
mSectorStart = (u8*)ALIGN_NEXT((u32)mBuffer, DVD_MIN_TRANSFER_SIZE);
|
||||
mIsOpen = false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
|
||||
/* 802E881C-802E8860 2E315C 0044+00 0/0 1/1 0/0 .text __dt__13JUTDirectFileFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JUTDirectFile::~JUTDirectFile() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTDirectFile/__dt__13JUTDirectFileFv.s"
|
||||
JUTDirectFile::~JUTDirectFile() {
|
||||
mIsOpen = false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802E8860-802E88FC 2E31A0 009C+00 0/0 1/1 0/0 .text fopen__13JUTDirectFileFPCc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool JUTDirectFile::fopen(char const* param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTDirectFile/fopen__13JUTDirectFileFPCc.s"
|
||||
bool JUTDirectFile::fopen(const char* filename) {
|
||||
if (!filename) {
|
||||
return false;
|
||||
}
|
||||
|
||||
int interrupts = OSEnableInterrupts();
|
||||
int dvdRes = DVDOpen(const_cast<char*>(filename), &mFileInfo);
|
||||
OSRestoreInterrupts(interrupts);
|
||||
|
||||
if (!dvdRes) {
|
||||
mIsOpen = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
int interrupts2 = OSEnableInterrupts();
|
||||
mLength = mFileInfo.length;
|
||||
OSRestoreInterrupts(interrupts2);
|
||||
|
||||
mPos = 0;
|
||||
mIsOpen = true;
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802E88FC-802E8958 2E323C 005C+00 0/0 1/1 0/0 .text fclose__13JUTDirectFileFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool JUTDirectFile::fclose() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTDirectFile/fclose__13JUTDirectFileFv.s"
|
||||
void JUTDirectFile::fclose() {
|
||||
if (mIsOpen) {
|
||||
int interrupts = OSEnableInterrupts();
|
||||
DVDClose(&mFileInfo);
|
||||
OSRestoreInterrupts(interrupts);
|
||||
mIsOpen = false;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802E8958-802E8B08 2E3298 01B0+00 0/0 1/1 0/0 .text fgets__13JUTDirectFileFPvi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int JUTDirectFile::fgets(void* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTDirectFile/fgets__13JUTDirectFileFPvi.s"
|
||||
int JUTDirectFile::fgets(void* buf, int len) {
|
||||
// if file isn't open, return error (-1).
|
||||
if (!mIsOpen) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
// if desired length to get is 0, get... 0 bytes.
|
||||
if (len == 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
// if desired length to get is 1, return 1.
|
||||
// (final byte gotten is always 0, so len 1 is pointless).
|
||||
if (len == 1) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
// if buffer to read into doesn't exist, return error.
|
||||
if (!buf) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
// if we're already beyond the file length, return error.
|
||||
if (mPos >= mLength) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
int readMax;
|
||||
u8* byteBuf = (u8*)buf;
|
||||
int readCount = 0;
|
||||
readMax = len - 1; // desired bytes of data to get (last value is then 0).
|
||||
|
||||
while (mPos < mLength) {
|
||||
// if there's nothing left to read, return error.
|
||||
if (mToRead == 0 && fetch32byte() < 0) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
// read in each chunk.
|
||||
u32 currPos = mPos & (JUTDF_BUFSIZE - 1);
|
||||
u32 chunkSize = (mToRead - currPos);
|
||||
if (readCount + chunkSize > readMax) {
|
||||
chunkSize = len - readCount - 1;
|
||||
}
|
||||
|
||||
BOOL isAtEnd = FALSE;
|
||||
for (int i = 0; i < chunkSize; i++) {
|
||||
u8 byte = mSectorStart[currPos];
|
||||
currPos++;
|
||||
*byteBuf++ = byte;
|
||||
|
||||
// if we hit the end of a line, stop reading.
|
||||
if (byte == '\n') {
|
||||
isAtEnd = TRUE;
|
||||
chunkSize = i + 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// if we exceed the buffer size, stop reading.
|
||||
if (currPos >= JUTDF_BUFSIZE) {
|
||||
mToRead = 0;
|
||||
}
|
||||
|
||||
// if we hit the end of a line, set final byte to 0 and stop reading.
|
||||
if (isAtEnd == TRUE) {
|
||||
*byteBuf = 0;
|
||||
mPos += chunkSize;
|
||||
readCount += chunkSize;
|
||||
break;
|
||||
}
|
||||
|
||||
// we should have read the full chunkSize, so update count/pos.
|
||||
mPos += chunkSize;
|
||||
readCount += chunkSize;
|
||||
|
||||
// if we're at (or beyond) our desired length, set final byte to 0 and stop reading.
|
||||
if (readCount >= readMax) {
|
||||
*byteBuf = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// if got to the end of the data, set final byte to 0.
|
||||
if (mPos >= mLength) {
|
||||
*byteBuf = 0;
|
||||
}
|
||||
|
||||
return readCount;
|
||||
}
|
||||
#pragma pop
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
#include "JSystem/JUtility/JUTDirectPrint.h"
|
||||
#include "MSL_C/stdio.h"
|
||||
#include "Runtime.PPCEABI.H/__va_arg.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/os/OSCache.h"
|
||||
#include "global.h"
|
||||
|
||||
|
|
@ -14,17 +13,10 @@
|
|||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" u8 sAsciiTable__14JUTDirectPrint[128];
|
||||
extern "C" void* sFontData__14JUTDirectPrint[64];
|
||||
extern "C" void* sFontData2__14JUTDirectPrint[77];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _restgpr_27();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
|
@ -76,7 +68,7 @@ void JUTDirectPrint::erase(int x, int y, int width, int height) {
|
|||
|
||||
/* ############################################################################################## */
|
||||
/* 803CC6B8-803CC738 0297D8 0080+00 2/2 0/0 0/0 .data sAsciiTable__14JUTDirectPrint */
|
||||
SECTION_DATA u8 JUTDirectPrint::sAsciiTable[128] = {
|
||||
u8 JUTDirectPrint::sAsciiTable[128] = {
|
||||
0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0xFD, 0xFE, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0x29, 0x64, 0x65, 0x66, 0x2B, 0x67, 0x68, 0x25, 0x26, 0x69, 0x2A, 0x6A, 0x27, 0x2C, 0x6B,
|
||||
|
|
@ -88,9 +80,7 @@ SECTION_DATA u8 JUTDirectPrint::sAsciiTable[128] = {
|
|||
};
|
||||
|
||||
/* 803CC738-803CC838 -00001 0100+00 0/1 0/0 0/0 .data sFontData__14JUTDirectPrint */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA u32 JUTDirectPrint::sFontData[64] = {
|
||||
u32 JUTDirectPrint::sFontData[64] = {
|
||||
0x70871C30, 0x8988A250, 0x88808290, 0x88830C90, 0x888402F8, 0x88882210, 0x71CF9C10, 0xF9CF9C70,
|
||||
0x8208A288, 0xF200A288, 0x0BC11C78, 0x0A222208, 0x8A222208, 0x71C21C70, 0x23C738F8, 0x5228A480,
|
||||
0x8A282280, 0x8BC822F0, 0xFA282280, 0x8A28A480, 0x8BC738F8, 0xF9C89C08, 0x82288808, 0x82088808,
|
||||
|
|
@ -100,12 +90,9 @@ SECTION_DATA u32 JUTDirectPrint::sFontData[64] = {
|
|||
0x70852220, 0xF8011000, 0x08020800, 0x10840400, 0x20040470, 0x40840400, 0x80020800, 0xF8011000,
|
||||
0x70800000, 0x88822200, 0x08820400, 0x108F8800, 0x20821000, 0x00022200, 0x20800020, 0x00000000,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 803CC838-803CC96C -00001 0134+00 0/1 0/0 0/0 .data sFontData2__14JUTDirectPrint */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA u32 JUTDirectPrint::sFontData2[77] = {
|
||||
u32 JUTDirectPrint::sFontData2[77] = {
|
||||
0x51421820, 0x53E7A420, 0x014A2C40, 0x01471000, 0x0142AA00, 0x03EAA400, 0x01471A78, 0x00000000,
|
||||
0x50008010, 0x20010820, 0xF8020040, 0x20420820, 0x50441010, 0x00880000, 0x00070E00, 0x01088840,
|
||||
0x78898820, 0x004A8810, 0x788A8810, 0x01098808, 0x00040E04, 0x70800620, 0x11400820, 0x12200820,
|
||||
|
|
@ -117,146 +104,72 @@ SECTION_DATA u32 JUTDirectPrint::sFontData2[77] = {
|
|||
0x00000000, 0x8A28B688, 0x8A2A8888, 0x8A2A8878, 0x894A8808, 0x788536F0, 0x00000000, 0x00000000,
|
||||
0xF8000000, 0x10000000, 0x20000000, 0x40000000, 0xF8000000,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 803CC96C-803CC980 029A8C 0010+04 0/1 0/0 0/0 .data twiceBit$371 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static u32 twiceBit[4] = {
|
||||
0x00000000,
|
||||
0x00000003,
|
||||
0x0000000C,
|
||||
0x0000000F,
|
||||
static u32 twiceBit[4] = {
|
||||
0,
|
||||
3,
|
||||
12,
|
||||
15,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 802E431C-802E456C 2DEC5C 0250+00 1/1 0/0 0/0 .text drawChar__14JUTDirectPrintFiii */
|
||||
// incorrect reg-alloc
|
||||
#ifdef NONMATCHING
|
||||
void JUTDirectPrint::drawChar(int position_x, int position_y, int ch) {
|
||||
int codepoint;
|
||||
if (100 <= ch)
|
||||
codepoint = ch - 100;
|
||||
else
|
||||
codepoint = ch;
|
||||
int codepoint = (100 <= ch) ? ch - 100 : ch;
|
||||
int col_index = (codepoint % 5) * 6;
|
||||
int row_index = (codepoint / 5) * 7;
|
||||
|
||||
u32 col_index = (codepoint % 5) * 6;
|
||||
u32 row_index = (codepoint / 5) * 7;
|
||||
const u32 *font_data = (100 > ch) ? sFontData + row_index : sFontData2 + row_index;
|
||||
|
||||
u32* font_data;
|
||||
if (100 > ch)
|
||||
font_data = sFontData + row_index;
|
||||
else
|
||||
font_data = sFontData2 + row_index;
|
||||
int scale_x = (mFrameBufferWidth < 400) ? 1 : 2;
|
||||
int scale_y = (mFrameBufferHeight < 300) ? 1 : 2;
|
||||
|
||||
s32 scale_x;
|
||||
if (mFrameBufferWidth < 400)
|
||||
scale_x = 1;
|
||||
else
|
||||
scale_x = 2;
|
||||
|
||||
s32 scale_y;
|
||||
if (mFrameBufferHeight < 300)
|
||||
scale_y = 1;
|
||||
else
|
||||
scale_y = 2;
|
||||
|
||||
u16* pixel = mFrameBuffer + mStride * position_y * scale_y + position_x * scale_x;
|
||||
for (u32 y = 0; y < 7; y++) {
|
||||
u16 *pixel = mFrameBuffer + mStride * position_y * scale_y + position_x * scale_x;
|
||||
for (int y = 0; y < 7; y++)
|
||||
{
|
||||
u32 data = *font_data << col_index;
|
||||
font_data += 1;
|
||||
|
||||
if (scale_x == 1) {
|
||||
data = data >> 1 & 0x7e000000;
|
||||
} else {
|
||||
if (scale_x == 1)
|
||||
{
|
||||
data = (data & 0xfc000000) >> 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
u32 a = twiceBit[(data >> 26) & 3];
|
||||
u32 b = twiceBit[(data >> 28) & 3] << 4;
|
||||
u32 c = twiceBit[(data >> 30) & 3] << 8;
|
||||
data = (a | b | c) << 0x13;
|
||||
data = (a | b | c) << 19;
|
||||
}
|
||||
|
||||
for (int x = 0; x < scale_x * 6; x += 2) {
|
||||
u16 C1;
|
||||
u16 C2;
|
||||
u16 C3;
|
||||
u16 Y;
|
||||
for (int x = 0; x < scale_x * 6; x += 2)
|
||||
{
|
||||
u16 value;
|
||||
|
||||
if (data & 0x40000000) {
|
||||
C1 = mCharColor_Cb2;
|
||||
} else {
|
||||
C1 = 0x40;
|
||||
}
|
||||
|
||||
if (data & 0x80000000) {
|
||||
C2 = mCharColor_Cb4;
|
||||
} else {
|
||||
C2 = 0x20;
|
||||
}
|
||||
|
||||
if (data & 0x20000000) {
|
||||
C3 = mCharColor_Cb4;
|
||||
} else {
|
||||
C3 = 0x20;
|
||||
}
|
||||
|
||||
if (data & 0x40000000) {
|
||||
Y = mCharColor_Y;
|
||||
} else {
|
||||
Y = 0x00;
|
||||
}
|
||||
|
||||
value = Y | (C2 + C1 + C3);
|
||||
value = (((data & 0x40000000) ? mCharColor_Y : 0) |
|
||||
((data & 0x80000000) ? mCharColor_Cb4 : 32) +
|
||||
((data & 0x40000000) ? mCharColor_Cb2 : 64) +
|
||||
((data & 0x20000000) ? mCharColor_Cb4 : 32));
|
||||
pixel[0] = value;
|
||||
if (scale_y > 1)
|
||||
pixel[mStride] = value;
|
||||
|
||||
if (data & 0x20000000) {
|
||||
C1 = mCharColor_Cr2;
|
||||
} else {
|
||||
C1 = 0x40;
|
||||
}
|
||||
|
||||
if (data & 0x40000000) {
|
||||
C2 = mCharColor_Cr4;
|
||||
} else {
|
||||
C2 = 0x20;
|
||||
}
|
||||
|
||||
if (data & 0x10000000) {
|
||||
C3 = mCharColor_Cr4;
|
||||
} else {
|
||||
C3 = 0x20;
|
||||
}
|
||||
|
||||
if (data & 0x20000000) {
|
||||
Y = mCharColor_Y;
|
||||
} else {
|
||||
Y = 0x00;
|
||||
}
|
||||
|
||||
value = Y | (C2 + C1 + C3);
|
||||
value = (((data & 0x20000000) ? mCharColor_Y : 0) |
|
||||
((data & 0x40000000) ? mCharColor_Cr4 : 32) +
|
||||
((data & 0x20000000) ? mCharColor_Cr2 : 64) +
|
||||
((data & 0x10000000) ? mCharColor_Cr4 : 32));
|
||||
pixel[1] = value;
|
||||
if (scale_y > 1)
|
||||
pixel[1 + mStride] = value;
|
||||
|
||||
data <<= 2;
|
||||
pixel += 2;
|
||||
data <<= 2;
|
||||
|
||||
}
|
||||
|
||||
pixel += mStride * scale_y - scale_x * 6;
|
||||
pixel += mStride * scale_y - 6 * scale_x;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JUTDirectPrint::drawChar(int param_0, int param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTDirectPrint/drawChar__14JUTDirectPrintFiii.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 802E456C-802E45A4 2DEEAC 0038+00 1/1 4/4 0/0 .text changeFrameBuffer__14JUTDirectPrintFPvUsUs
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
#include "JSystem/JUtility/JUTProcBar.h"
|
||||
#include "JSystem/J2DGraph/J2DOrthoGraph.h"
|
||||
#include "JSystem/JUtility/JUTVideo.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "global.h"
|
||||
|
|
@ -71,17 +72,17 @@ JUTProcBar::JUTProcBar() {
|
|||
field_0x108 = 0;
|
||||
s32 height = JUTGetVideoManager()->getRenderMode()->efb_height;
|
||||
if (height > 400) {
|
||||
field_0x114.mBarWidth = 2;
|
||||
field_0x114.mPosX = 0x27;
|
||||
field_0x114.mPosY = height - 0x28;
|
||||
field_0x114.mWidth = 0x232;
|
||||
field_0x114.mUserPosition = height - 0x46;
|
||||
mParams.mBarWidth = 2;
|
||||
mParams.mPosX = 0x27;
|
||||
mParams.mPosY = height - 0x28;
|
||||
mParams.mWidth = 0x232;
|
||||
mParams.mUserPosition = height - 0x46;
|
||||
} else {
|
||||
field_0x114.mBarWidth = 1;
|
||||
field_0x114.mPosX = 0x27;
|
||||
field_0x114.mPosY = height - 0x14;
|
||||
field_0x114.mWidth = 0x232;
|
||||
field_0x114.mUserPosition = height - 0x23;
|
||||
mParams.mBarWidth = 1;
|
||||
mParams.mPosX = 0x27;
|
||||
mParams.mPosY = height - 0x14;
|
||||
mParams.mWidth = 0x232;
|
||||
mParams.mUserPosition = height - 0x23;
|
||||
}
|
||||
field_0x110 = 1;
|
||||
field_0x128 = 0;
|
||||
|
|
@ -140,7 +141,7 @@ SECTION_SDATA2 static f32 lit_2259 = 10.0f;
|
|||
#ifdef NONMATCHING // data
|
||||
void JUTProcBar::clear() {
|
||||
sManager->idleStart();
|
||||
sManager->gpWaitStart();
|
||||
sManager->cpuStart();
|
||||
sManager->gpStart();
|
||||
sManager->wholeLoopStart();
|
||||
sManager->mCostFrame = 0;
|
||||
|
|
@ -229,7 +230,7 @@ void JUTProcBar::adjustMeterLength(u32 param_0, f32* param_1, f32 param_2, f32 p
|
|||
float var1 = *param_1;
|
||||
while (var1 > param_2) {
|
||||
if (param_0 * var1 * FLOAT_LABEL(lit_2308) / FLOAT_LABEL(lit_2309) <=
|
||||
field_0x114.mWidth - FLOAT_LABEL(lit_2310))
|
||||
mParams.mWidth - FLOAT_LABEL(lit_2310))
|
||||
break;
|
||||
|
||||
var1 -= FLOAT_LABEL(lit_2311);
|
||||
|
|
@ -246,7 +247,7 @@ void JUTProcBar::adjustMeterLength(u32 param_0, f32* param_1, f32 param_2, f32 p
|
|||
if (*param_4 < 0x1e)
|
||||
break;
|
||||
if ((param_0 * var1 * FLOAT_LABEL(lit_2308) / FLOAT_LABEL(lit_2309)) <
|
||||
(field_0x114.mWidth - FLOAT_LABEL(lit_2313)))
|
||||
(mParams.mWidth - FLOAT_LABEL(lit_2313)))
|
||||
var1 += FLOAT_LABEL(lit_2312);
|
||||
break;
|
||||
}
|
||||
|
|
@ -292,150 +293,117 @@ SECTION_SDATA2 static f32 lit_2581 = 3.0f;
|
|||
/* 802E5E3C-802E6D3C 2E077C 0F00+00 1/1 0/0 0/0 .text drawProcessBar__10JUTProcBarFv */
|
||||
#ifdef NONMATCHING // regalloc, signed/unsigned, instruction order
|
||||
void JUTProcBar::drawProcessBar() {
|
||||
if (!mVisible) {
|
||||
return;
|
||||
}
|
||||
int r29 = 16666;
|
||||
if (JUTGetVideoManager() &&
|
||||
((JUTGetVideoManager()->getRenderMode()->vi_tv_mode >> 2) & 0x0f) == 1)
|
||||
{
|
||||
r29 = 20000;
|
||||
}
|
||||
static int cnt = 0;
|
||||
adjustMeterLength(mWholeLoop.field_0x4, &oneFrameRate, 1.0f, 10.0f, &cnt);
|
||||
int r28 = oneFrameRate * 20.0f;
|
||||
int r27 = field_0x114.mBarWidth * 8;
|
||||
int r26 = field_0x114.mBarWidth * 2;
|
||||
int r25 = field_0x114.mBarWidth * 10;
|
||||
int r24 = (field_0x114.mWidth - 4 + r28) / r28;
|
||||
if (++mIdle.field_0xc >= 0x10 || mIdle.field_0x4 >= mIdle.field_0x8) {
|
||||
mIdle.field_0x8 = mIdle.field_0x4;
|
||||
mIdle.field_0xc = 0;
|
||||
}
|
||||
if (++mGp.field_0xc >= 0x10 || mGp.field_0x4 >= mGp.field_0x8) {
|
||||
mGp.field_0x8 = mGp.field_0x4;
|
||||
mGp.field_0xc = 0;
|
||||
}
|
||||
if (++mCpu.field_0xc >= 0x10 || mCpu.field_0x4 >= mCpu.field_0x8) {
|
||||
mCpu.field_0x8 = mCpu.field_0x4;
|
||||
mCpu.field_0xc = 0;
|
||||
}
|
||||
int temp1 = mCpu.field_0x4;
|
||||
int r30 = mGp.field_0x4 - mGpWait.field_0x4;
|
||||
int r23 = r30 - temp1;
|
||||
J2DFillBox(field_0x114.mPosX, field_0x114.mPosY, field_0x114.mWidth, r27,
|
||||
JUtility::TColor(0, 0, 50, 200));
|
||||
J2DDrawFrame(field_0x114.mPosX, field_0x114.mPosY, field_0x114.mWidth, r27,
|
||||
JUtility::TColor(50, 50, 150, 255), 6);
|
||||
if (mCostFrame > r24) {
|
||||
J2DFillBox(field_0x114.mPosX, field_0x114.mPosY + r27 + 1, field_0x114.mWidth, 1.0f,
|
||||
JUtility::TColor(250, 0, 0, 200));
|
||||
} else {
|
||||
J2DFillBox(field_0x114.mPosX, field_0x114.mPosY + r27 + 1, mCostFrame * r28 + 2, 1.0f,
|
||||
JUtility::TColor(0, 250, 250, 200));
|
||||
}
|
||||
int stack92 = mWholeLoop.field_0x4 * r28 / r29;
|
||||
if (stack92 > field_0x114.mWidth) {
|
||||
J2DFillBox(field_0x114.mPosX, field_0x114.mPosY, field_0x114.mWidth, 1.0f,
|
||||
JUtility::TColor(255, 100, 0, 255));
|
||||
} else {
|
||||
J2DFillBox(field_0x114.mPosX, field_0x114.mPosY, stack92, 1.0f,
|
||||
JUtility::TColor(50, 255, 0, 255));
|
||||
}
|
||||
if (field_0x110 == 0) {
|
||||
r23 = field_0x114.mPosY + field_0x114.mBarWidth;
|
||||
bar_subroutine(field_0x114.mPosX + 1, r23, r26, r28, r29, mGp.field_0x4, mGp.field_0x8,
|
||||
JUtility::TColor(80, 255, 80, 255), JUtility::TColor(100, 255, 120, 255));
|
||||
r23 += field_0x114.mBarWidth * 2;
|
||||
bar_subroutine(field_0x114.mPosX + 1, r23, r26, r28, r29, mCpu.field_0x4, mCpu.field_0x8,
|
||||
JUtility::TColor(255, 80, 80, 255), JUtility::TColor(255, 100, 100, 255));
|
||||
r23 += field_0x114.mBarWidth * 2;
|
||||
bar_subroutine(field_0x114.mPosX + 1, r23, r26, r28, r29, mIdle.field_0x4, mIdle.field_0x8,
|
||||
JUtility::TColor(180, 180, 160, 255), JUtility::TColor(200, 200, 200, 255));
|
||||
} else {
|
||||
int r22 = field_0x114.mPosY + field_0x114.mBarWidth;
|
||||
int r21 = field_0x114.mPosX + 1;
|
||||
bar_subroutine(r21, r22, r26, r28, r29, r30, -1, JUtility::TColor(80, 255, 80, 255),
|
||||
JUtility::TColor(80, 255, 80, 255));
|
||||
J2DFillBox(r21 + r30 * r28 / r29, r22, mGpWait.field_0x4 * r28 / r29, r26,
|
||||
JUtility::TColor(0, 255, 0, 255));
|
||||
r30 = mGp.field_0x4 * r28 / r29 + r21;
|
||||
r21 += r23 * r28 / r29;
|
||||
r22 += field_0x114.mBarWidth * 2;
|
||||
bar_subroutine(r21, r22, r26, r28, r29, mCpu.field_0x4, -1,
|
||||
JUtility::TColor(255, 80, 80, 255), JUtility::TColor(255, 80, 80, 255));
|
||||
r22 += field_0x114.mBarWidth * 2;
|
||||
bar_subroutine(r30, r22, r26, r28, r29, mIdle.field_0x4, -1,
|
||||
JUtility::TColor(180, 180, 160, 255), JUtility::TColor(180, 180, 160, 255));
|
||||
}
|
||||
for (int i = 1; i < r24; i++) {
|
||||
int temp2 = field_0x114.mPosX + i * r28 + 1;
|
||||
J2DDrawLine(temp2, field_0x114.mPosY + field_0x114.mBarWidth, temp2,
|
||||
field_0x114.mPosY + r27 - field_0x114.mBarWidth,
|
||||
i - (i / 5) * 5 != 0 ? JUtility::TColor(100, 100, 255, 255) :
|
||||
JUtility::TColor(180, 255, 255, 255),
|
||||
12);
|
||||
}
|
||||
u32 temp3 = 0;
|
||||
for (int i = 0; i < 8; i++) {
|
||||
CTime* time = field_0x64 + i;
|
||||
if (++time->field_0xc >= 0x10 || time->field_0x4 > time->field_0x8) {
|
||||
time->field_0x8 = time->field_0x4;
|
||||
time->field_0xc = 0;
|
||||
}
|
||||
if (time->field_0x8 > temp3) {
|
||||
temp3 = time->field_0x8;
|
||||
}
|
||||
}
|
||||
if ((bool)temp3 == true) {
|
||||
static int cntUser = 0;
|
||||
adjustMeterLength(temp3, &oneFrameRateUser, 1.0f, 10.0f, &cntUser);
|
||||
int r21 = oneFrameRateUser * 20.0f;
|
||||
J2DFillBox(field_0x114.mPosX, field_0x114.mUserPosition, field_0x114.mWidth, r25,
|
||||
JUtility::TColor(0, 0, 50, 200));
|
||||
J2DDrawFrame(field_0x114.mPosX, field_0x114.mUserPosition, field_0x114.mWidth, r25,
|
||||
JUtility::TColor(50, 50, 150, 255), 6);
|
||||
for (int i = 0; i < 8; i++) {
|
||||
CTime* time = field_0x64 + i;
|
||||
if (++time->field_0xc >= 0x10 || time->field_0x4 > time->field_0x8) {
|
||||
time->field_0x8 = time->field_0x4;
|
||||
time->field_0xc = 0;
|
||||
}
|
||||
if (time->field_0x4 != 0 || time->field_0x8 != 0) {
|
||||
int temp4 = time->field_0x4 * r21 / r29;
|
||||
u32 temp5 = time->field_0x8 * r21 / r29;
|
||||
time->field_0x4 = 0;
|
||||
J2DFillBox(
|
||||
field_0x114.mPosX + 1,
|
||||
field_0x114.mUserPosition + field_0x114.mBarWidth + i * field_0x114.mBarWidth,
|
||||
temp4, field_0x114.mBarWidth,
|
||||
JUtility::TColor(time->field_0x10, time->field_0x11, time->field_0x12, 255));
|
||||
if (temp5 < 3) {
|
||||
J2DFillBox(field_0x114.mPosX,
|
||||
field_0x114.mUserPosition + field_0x114.mBarWidth +
|
||||
i * field_0x114.mBarWidth,
|
||||
temp5, field_0x114.mBarWidth, JUtility::TColor(255, 200, 50, 255));
|
||||
} else {
|
||||
J2DFillBox(field_0x114.mPosX + temp5 - 3,
|
||||
field_0x114.mUserPosition + field_0x114.mBarWidth +
|
||||
i * field_0x114.mBarWidth,
|
||||
3.0f, field_0x114.mBarWidth, JUtility::TColor(255, 200, 50, 255));
|
||||
}
|
||||
}
|
||||
}
|
||||
if (mVisible) {
|
||||
int frameDuration = 16666; // duration in miliseconds? for how long a frame takes,
|
||||
if (JUTVideo::getManager() && ((JUTVideo::getManager()->getRenderMode()->vi_tv_mode >> 2) & 0x0f) == 1) // possibly a define
|
||||
frameDuration = 20000; // duration for PAL
|
||||
|
||||
int r22 = (field_0x114.mWidth - 4 + r21) / r21;
|
||||
static int cnt = 0;
|
||||
adjustMeterLength(mWholeLoop.mCost, &oneFrameRate, 1.0f, 10.0f, &cnt);
|
||||
int r28 = oneFrameRate * 20.0f;
|
||||
int r27 = mParams.mBarWidth * 8;
|
||||
int r26 = mParams.mBarWidth * 2;
|
||||
int r25 = mParams.mBarWidth * 10;
|
||||
int r24 = (mParams.mWidth - 4 + r28) / r28;
|
||||
|
||||
for (int i = 1; i < r22; i++) {
|
||||
int temp6 = field_0x114.mPosX + i * r21 + 1;
|
||||
J2DDrawLine(temp6, field_0x114.mUserPosition + field_0x114.mBarWidth, temp6,
|
||||
field_0x114.mUserPosition + r25 - field_0x114.mBarWidth,
|
||||
i - (i / 5) * 5 != 0 ? JUtility::TColor(100, 100, 255, 255) :
|
||||
JUtility::TColor(180, 255, 255, 255),
|
||||
12);
|
||||
}
|
||||
}
|
||||
field_0x108 = 0;
|
||||
mIdle.accumePeek();
|
||||
mGp.accumePeek();
|
||||
mCpu.accumePeek();
|
||||
|
||||
u32 totalTime = (mGp.mCost - mGpWait.mCost) - mCpu.mCost; // unsure of types
|
||||
u32 gpuTime = (mGp.mCost - mGpWait.mCost);
|
||||
J2DFillBox(mParams.mPosX, mParams.mPosY, mParams.mWidth, r27, JUtility::TColor(0, 0, 50, 200));
|
||||
J2DDrawFrame(mParams.mPosX, mParams.mPosY, mParams.mWidth, r27, JUtility::TColor(50, 50, 150, 255), 6);
|
||||
if (mCostFrame > r24)
|
||||
J2DFillBox(mParams.mPosX, mParams.mPosY + r27 + 1, mParams.mWidth, 1.0f, JUtility::TColor(250, 0, 0, 200));
|
||||
else
|
||||
J2DFillBox(mParams.mPosX, mParams.mPosY + r27 + 1, mCostFrame * r28 + 2, 1.0f, JUtility::TColor(0, 250, 250, 200));
|
||||
|
||||
int stack92 = mWholeLoop.mCost * r28 / frameDuration;
|
||||
if (stack92 > mParams.mWidth)
|
||||
J2DFillBox(mParams.mPosX, mParams.mPosY, mParams.mWidth, 1.0f, JUtility::TColor(255, 100, 0, 255));
|
||||
else
|
||||
J2DFillBox(mParams.mPosX, mParams.mPosY, stack92, 1.0f, JUtility::TColor(50, 255, 0, 255));
|
||||
|
||||
if (field_0x110 == 0) {
|
||||
int r23 = mParams.mPosY + mParams.mBarWidth;
|
||||
bar_subroutine(mParams.mPosX + 1, r23, r26, r28, frameDuration, mGp.mCost, mGp.field_0x8, JUtility::TColor(80, 255, 80, 255),
|
||||
JUtility::TColor(100, 255, 120, 255));
|
||||
r23 += mParams.mBarWidth * 2;
|
||||
bar_subroutine(mParams.mPosX + 1, r23, r26, r28, frameDuration, mCpu.mCost, mCpu.field_0x8, JUtility::TColor(255, 80, 80, 255),
|
||||
JUtility::TColor(255, 100, 100, 255));
|
||||
r23 += mParams.mBarWidth * 2;
|
||||
bar_subroutine(mParams.mPosX + 1, r23, r26, r28, frameDuration, mIdle.mCost, mIdle.field_0x8, JUtility::TColor(180, 180, 160, 255),
|
||||
JUtility::TColor(200, 200, 200, 255));
|
||||
} else {
|
||||
int r22 = mParams.mPosY + mParams.mBarWidth;
|
||||
int r21 = mParams.mPosX + 1;
|
||||
bar_subroutine(r21, r22, r26, r28, frameDuration, gpuTime, -1, JUtility::TColor(80, 255, 80, 255),
|
||||
JUtility::TColor(80, 255, 80, 255));
|
||||
int thingy1 = gpuTime * r28 / frameDuration + r21; // inline or define?
|
||||
J2DFillBox(thingy1, r22, mGpWait.calcBarSize(r28, frameDuration), r26, JUtility::TColor(0, 255, 0, 255));
|
||||
int r30 = mGp.calcBarSize(r28, frameDuration) + r21;
|
||||
r21 += totalTime * r28 / frameDuration;
|
||||
r22 += mParams.mBarWidth * 2;
|
||||
bar_subroutine(r21, r22, r26, r28, frameDuration, mCpu.mCost, -1, JUtility::TColor(255, 80, 80, 255),
|
||||
JUtility::TColor(255, 80, 80, 255));
|
||||
r22 += mParams.mBarWidth * 2;
|
||||
bar_subroutine(r30, r22, r26, r28, frameDuration, mIdle.mCost, -1, JUtility::TColor(180, 180, 160, 255),
|
||||
JUtility::TColor(180, 180, 160, 255));
|
||||
}
|
||||
for (int i = 1; i < r24; i++) {
|
||||
int temp2 = mParams.mPosX + i * r28 + 1;
|
||||
J2DDrawLine(temp2, mParams.mPosY + mParams.mBarWidth, temp2, mParams.mPosY + r27 - mParams.mBarWidth,
|
||||
(i % 5) != 0 ? JUtility::TColor(100, 100, 255, 255) : JUtility::TColor(180, 255, 255, 255), 12);
|
||||
}
|
||||
u32 temp3 = 0;
|
||||
for (int i = 0; i < 8; i++) {
|
||||
CTime* time = &mUsers[i];
|
||||
if (++time->field_0xc >= 0x10 || time->mCost > time->field_0x8) {
|
||||
time->field_0x8 = time->mCost;
|
||||
time->field_0xc = 0;
|
||||
}
|
||||
if (time->field_0x8 > temp3)
|
||||
temp3 = time->field_0x8;
|
||||
}
|
||||
if ((bool)temp3 == true) {
|
||||
static int cntUser = 0;
|
||||
adjustMeterLength(temp3, &oneFrameRateUser, 1.0f, 10.0f, &cntUser);
|
||||
int r21 = oneFrameRateUser * 20.0f;
|
||||
J2DFillBox(mParams.mPosX, mParams.mUserPosition, mParams.mWidth, r25, JUtility::TColor(0, 0, 50, 200));
|
||||
J2DDrawFrame(mParams.mPosX, mParams.mUserPosition, mParams.mWidth, r25, JUtility::TColor(50, 50, 150, 255), 6);
|
||||
for (int i = 0; i < 8; i++) {
|
||||
CTime* time = &mUsers[i];
|
||||
if (++time->field_0xc >= 0x10 || time->mCost > time->field_0x8) {
|
||||
time->field_0x8 = time->mCost;
|
||||
time->field_0xc = 0;
|
||||
}
|
||||
if (time->mCost != 0 || time->field_0x8 != 0) {
|
||||
int temp4 = time->mCost * r21 / frameDuration;
|
||||
int temp5 = time->field_0x8 * r21 / frameDuration;
|
||||
time->mCost = 0;
|
||||
J2DFillBox(mParams.mPosX + 1, mParams.mUserPosition + mParams.mBarWidth + i * mParams.mBarWidth, temp4,
|
||||
mParams.mBarWidth, JUtility::TColor(time->mR, time->mG, time->mB, 255));
|
||||
|
||||
if (temp5 < 3u)
|
||||
J2DFillBox(mParams.mPosX, mParams.mUserPosition + mParams.mBarWidth + i * mParams.mBarWidth, temp5,
|
||||
mParams.mBarWidth, JUtility::TColor(255, 200, 50, 255));
|
||||
else
|
||||
J2DFillBox(mParams.mPosX + temp5 - 3, mParams.mUserPosition + mParams.mBarWidth + i * mParams.mBarWidth, 3.0f,
|
||||
mParams.mBarWidth, JUtility::TColor(255, 200, 50, 255));
|
||||
}
|
||||
}
|
||||
|
||||
int r22 = (mParams.mWidth - 4 + r21) / r21;
|
||||
|
||||
for (int i = 1; i < r22; i++) {
|
||||
int temp6 = mParams.mPosX + i * r21 + 1;
|
||||
J2DDrawLine(temp6, mParams.mUserPosition + mParams.mBarWidth, temp6, mParams.mUserPosition + r25 - mParams.mBarWidth,
|
||||
(i % 5) != 0 ? JUtility::TColor(100, 100, 255, 255) : JUtility::TColor(180, 255, 255, 255), 12);
|
||||
}
|
||||
}
|
||||
field_0x108 = 0;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
|
|
@ -507,33 +475,41 @@ static asm void heapBar(JKRHeap* param_0, int param_1, int param_2, int param_3,
|
|||
/* 802E6FA0-802E7340 2E18E0 03A0+00 1/1 0/0 0/0 .text drawHeapBar__10JUTProcBarFv */
|
||||
#ifdef NONMATCHING // regalloc
|
||||
void JUTProcBar::drawHeapBar() {
|
||||
if (!mHeapBarVisible) {
|
||||
return;
|
||||
}
|
||||
int posX = field_0x114.mPosX;
|
||||
int posY = field_0x114.mPosY;
|
||||
int barWidth = field_0x114.mBarWidth;
|
||||
int var1 = barWidth << 1;
|
||||
int width = field_0x114.mWidth;
|
||||
J2DFillBox(posX, posY - barWidth * 4, width, var1, JUtility::TColor(100, 0, 50, 200));
|
||||
J2DDrawFrame(posX, posY - barWidth * 4, width, var1, JUtility::TColor(100, 50, 150, 255), 6);
|
||||
int codeStart = posX + addrToXPos(JKRHeap::mCodeStart, width);
|
||||
int codeEnd = posX + addrToXPos(JKRHeap::mCodeEnd, width);
|
||||
J2DFillBox(codeStart, posY - barWidth * 4, codeEnd - codeStart, var1,
|
||||
JUtility::TColor(255, 50, 150, 255));
|
||||
int userRamStart = posX + addrToXPos(JKRHeap::mUserRamStart, width);
|
||||
int userRamEnd = posX + addrToXPos(JKRHeap::mUserRamEnd, width);
|
||||
J2DFillBox(userRamStart, posY - barWidth * 4, userRamEnd - userRamStart, var1,
|
||||
JUtility::TColor(0, 50, 150, 255));
|
||||
int totalFreeSize = byteToXLen(JKRHeap::sRootHeap->getTotalFreeSize(), width);
|
||||
J2DFillBox(userRamStart, posY - barWidth * 4, totalFreeSize, var1 / 2,
|
||||
JUtility::TColor(0, 250, 250, 255));
|
||||
if (field_0x128 != 0) {
|
||||
return;
|
||||
}
|
||||
JKRHeap* heap = mWatchHeap ? mWatchHeap : JKRHeap::sCurrentHeap;
|
||||
if (heap != JKRHeap::sSystemHeap) {
|
||||
heapBar(heap, posX, posY, var1, width, var1);
|
||||
if (mHeapBarVisible)
|
||||
{
|
||||
int start; // required/workaround for regswaps, end might be a shared variable too, however doesn't seem to be needed?
|
||||
int posX = mParams.mPosX;
|
||||
int posY = mParams.mPosY;
|
||||
int barHeight = mParams.mBarWidth * 2;
|
||||
int width = mParams.mWidth;
|
||||
int height = mParams.mBarWidth * 2;
|
||||
|
||||
// draw main box in opaque bordeaux red and main frame in purple?
|
||||
J2DFillBox(posX, posY - (height * 2), width, height, JUtility::TColor(100, 0, 50, 200));
|
||||
J2DDrawFrame(posX, posY - (height * 2), width, height, JUtility::TColor(100, 50, 150, 255), 6);
|
||||
|
||||
// Draws a pink line that shows the size of the memstart to start of arenalow?
|
||||
start = posX + addrToXPos(JKRHeap::getCodeStart(), width);
|
||||
int codeEnd = posX + addrToXPos(JKRHeap::getCodeEnd(), width);
|
||||
J2DFillBox(start, posY - (height * 2), codeEnd - start, height, JUtility::TColor(255, 50, 150, 255));
|
||||
|
||||
// draws a dark blue line that shows how much memory is free?
|
||||
start = posX + addrToXPos(JKRHeap::getUserRamStart(), width);
|
||||
int userEnd = posX + addrToXPos(JKRHeap::getUserRamEnd(), width);
|
||||
J2DFillBox(start, posY - (height * 2), userEnd - start, height, JUtility::TColor(0, 50, 150, 255));
|
||||
|
||||
// draws a light blue line that shows how much memory is free in the root heap(blends to light pink, not sure how this works)
|
||||
int size = byteToXLen(JKRHeap::getRootHeap()->getTotalFreeSize(), width);
|
||||
J2DFillBox(start, posY - (height * 2), size, height / 2, JUtility::TColor(0, 250, 250, 255));
|
||||
if (field_0x128 == 0)
|
||||
{
|
||||
// draws a line of either the watch heap(if available), otherwise draw the current heap
|
||||
JKRHeap *heap = mWatchHeap ? mWatchHeap : JKRGetCurrentHeap();
|
||||
if (heap != JKRHeap::getSystemHeap()) {
|
||||
heapBar(heap, posX, posY, barHeight, width, height);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
|
|
|
|||
|
|
@ -227,14 +227,45 @@ SECTION_DEAD static char const* const stringBase_8039D47C = "Unknown data block\
|
|||
#pragma pop
|
||||
|
||||
/* 802DF344-802DF48C 2D9C84 0148+00 1/0 0/0 0/0 .text setBlock__10JUTResFontFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void JUTResFont::setBlock() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JUtility/JUTResFont/setBlock__10JUTResFontFv.s"
|
||||
void JUTResFont::setBlock() {
|
||||
s32 widthNum, glyphNum, mapNum;
|
||||
widthNum = 0;
|
||||
glyphNum = 0;
|
||||
mapNum = 0;
|
||||
mMaxCode = -1;
|
||||
|
||||
BlockHeader* data = (BlockHeader*)mResFont->data;
|
||||
for (u32 i = 0; i < mResFont->numBlocks; i++, data = (BlockHeader*)data->getNext()) {
|
||||
switch (data->magic) {
|
||||
case 'INF1':
|
||||
mInf1Ptr = (ResFONT::INF1*)data;
|
||||
mIsLeadByte = (IsLeadByte_func*)&saoAboutEncoding_[mInf1Ptr->fontType];
|
||||
break;
|
||||
|
||||
case 'WID1':
|
||||
mpWidthBlocks[widthNum] = (ResFONT::WID1*)data;
|
||||
widthNum++;
|
||||
break;
|
||||
|
||||
case 'GLY1':
|
||||
mpGlyphBlocks[glyphNum] = (ResFONT::GLY1*)data;
|
||||
glyphNum++;
|
||||
break;
|
||||
|
||||
case 'MAP1':
|
||||
mpMapBlocks[mapNum] = (ResFONT::MAP1*)data;
|
||||
if (mMaxCode > mpMapBlocks[mapNum]->startCode) {
|
||||
mMaxCode = mpMapBlocks[mapNum]->startCode;
|
||||
}
|
||||
mapNum++;
|
||||
break;
|
||||
|
||||
default:
|
||||
JUTReportConsole("Unknown data block\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802DF48C-802DF584 2D9DCC 00F8+00 1/0 1/0 0/0 .text setGX__10JUTResFontFv */
|
||||
void JUTResFont::setGX() {
|
||||
|
|
@ -525,8 +556,42 @@ asm int JUTResFont::getFontCode(int param_0) const {
|
|||
#endif
|
||||
|
||||
/* 802DFF60-802E00C4 2DA8A0 0164+00 1/0 0/0 0/0 .text loadImage__10JUTResFontFi11_GXTexMapID */
|
||||
// Matches with literals
|
||||
#ifdef NONMATCHING
|
||||
asm void JUTResFont::loadImage(int param_0, _GXTexMapID param_1) {}
|
||||
void JUTResFont::loadImage(int code, GXTexMapID id){
|
||||
int i = 0;
|
||||
for (; i < mGly1BlockNum; i++)
|
||||
{
|
||||
if (mpGlyphBlocks[i]->startCode <= code && code <= mpGlyphBlocks[i]->endCode)
|
||||
{
|
||||
code -= mpGlyphBlocks[i]->startCode;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (i == mGly1BlockNum)
|
||||
return;
|
||||
|
||||
s32 pageNumCells = mpGlyphBlocks[i]->numRows * mpGlyphBlocks[i]->numColumns;
|
||||
s32 pageIdx = code / pageNumCells;
|
||||
s32 cellIdxInPage = code % pageNumCells;
|
||||
s32 cellCol = (cellIdxInPage % mpGlyphBlocks[i]->numRows);
|
||||
s32 cellRow = (cellIdxInPage / mpGlyphBlocks[i]->numRows);
|
||||
mWidth = cellCol * mpGlyphBlocks[i]->cellWidth;
|
||||
mHeight = cellRow * mpGlyphBlocks[i]->cellHeight;
|
||||
|
||||
if (pageIdx != field_0x44 || i != field_0x66)
|
||||
{
|
||||
GXInitTexObj(&field_0x24, &mpGlyphBlocks[i]->data[pageIdx * mpGlyphBlocks[i]->textureSize], mpGlyphBlocks[i]->textureWidth,
|
||||
mpGlyphBlocks[i]->textureHeight, (GXTexFmt)mpGlyphBlocks[i]->textureFormat, GX_CLAMP, GX_CLAMP, 0);
|
||||
|
||||
GXInitTexObjLOD(&field_0x24, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, 0U, 0U, GX_ANISO_1);
|
||||
field_0x44 = pageIdx;
|
||||
field_0x66 = i;
|
||||
}
|
||||
|
||||
GXLoadTexObj(&field_0x24, id);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ extern "C" void _restfpr_26();
|
|||
extern "C" void _restfpr_27();
|
||||
extern "C" void _restfpr_28();
|
||||
extern "C" void _restfpr_29();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_15();
|
||||
extern "C" void _savegpr_16();
|
||||
extern "C" void _savegpr_17();
|
||||
|
|
@ -40,7 +40,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_15();
|
||||
extern "C" void _restgpr_16();
|
||||
extern "C" void _restgpr_17();
|
||||
|
|
@ -212,13 +212,13 @@ asm void _restfpr_29() {
|
|||
}
|
||||
#pragma pop
|
||||
|
||||
/* 803621A0-803621A4 35CAE0 0004+00 0/0 22/22 13/13 .text __save_gpr */
|
||||
/* 803621A0-803621A4 35CAE0 0004+00 0/0 22/22 13/13 .text _savegpr_14 */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __save_gpr() {
|
||||
asm void _savegpr_14() {
|
||||
nofralloc
|
||||
#include "asm/Runtime.PPCEABI.H/runtime/__save_gpr.s"
|
||||
#include "asm/Runtime.PPCEABI.H/runtime/_savegpr_14.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
|
|
@ -372,13 +372,13 @@ asm void _savegpr_29() {
|
|||
}
|
||||
#pragma pop
|
||||
|
||||
/* 803621EC-803621F0 35CB2C 0004+00 0/0 22/22 13/13 .text __restore_gpr */
|
||||
/* 803621EC-803621F0 35CB2C 0004+00 0/0 22/22 13/13 .text _restgpr_14 */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __restore_gpr() {
|
||||
asm void _restgpr_14() {
|
||||
nofralloc
|
||||
#include "asm/Runtime.PPCEABI.H/runtime/__restore_gpr.s"
|
||||
#include "asm/Runtime.PPCEABI.H/runtime/_restgpr_14.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
|
|
|
|||
|
|
@ -694,7 +694,7 @@ extern "C" void PSVECSquareMag();
|
|||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_20();
|
||||
extern "C" void _savegpr_22();
|
||||
extern "C" void _savegpr_23();
|
||||
|
|
@ -703,7 +703,7 @@ extern "C" void _savegpr_25();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_20();
|
||||
extern "C" void _restgpr_22();
|
||||
extern "C" void _restgpr_23();
|
||||
|
|
|
|||
|
|
@ -441,7 +441,7 @@ extern "C" void __destroy_arr();
|
|||
extern "C" void __construct_array();
|
||||
extern "C" void __construct_new_array();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_21();
|
||||
extern "C" void _savegpr_23();
|
||||
|
|
@ -451,7 +451,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_21();
|
||||
extern "C" void _restgpr_23();
|
||||
|
|
|
|||
|
|
@ -340,7 +340,7 @@ extern "C" void PSVECAdd();
|
|||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_18();
|
||||
extern "C" void _savegpr_19();
|
||||
|
|
@ -351,7 +351,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_18();
|
||||
extern "C" void _restgpr_19();
|
||||
|
|
|
|||
|
|
@ -658,7 +658,7 @@ extern "C" void PSVECSquareMag();
|
|||
extern "C" void PSVECSquareDistance();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_20();
|
||||
extern "C" void _savegpr_23();
|
||||
extern "C" void _savegpr_25();
|
||||
|
|
@ -666,7 +666,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_20();
|
||||
extern "C" void _restgpr_23();
|
||||
extern "C" void _restgpr_25();
|
||||
|
|
|
|||
|
|
@ -570,7 +570,7 @@ extern "C" void PSVECSubtract();
|
|||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_18();
|
||||
extern "C" void _savegpr_20();
|
||||
extern "C" void _savegpr_21();
|
||||
|
|
@ -581,7 +581,7 @@ extern "C" void _savegpr_25();
|
|||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_18();
|
||||
extern "C" void _restgpr_20();
|
||||
extern "C" void _restgpr_21();
|
||||
|
|
|
|||
|
|
@ -442,7 +442,7 @@ extern "C" void PSMTXMultVec();
|
|||
extern "C" void PSVECAdd();
|
||||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_22();
|
||||
extern "C" void _savegpr_23();
|
||||
|
|
@ -450,7 +450,7 @@ extern "C" void _savegpr_24();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_22();
|
||||
extern "C" void _restgpr_23();
|
||||
|
|
|
|||
|
|
@ -655,7 +655,7 @@ extern "C" void PSVECSquareMag();
|
|||
extern "C" void PSVECSquareDistance();
|
||||
extern "C" void __copy();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_22();
|
||||
|
|
@ -666,7 +666,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_22();
|
||||
|
|
|
|||
|
|
@ -78,9 +78,9 @@ extern "C" void __dl__FPv();
|
|||
extern "C" void PSVECSquareDistance();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __cvt_fp2unsigned();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_18();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_18();
|
||||
extern "C" void strcmp();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
|
|
|
|||
|
|
@ -541,12 +541,12 @@ extern "C" void __construct_array();
|
|||
extern "C" void __ptmf_test();
|
||||
extern "C" void __ptmf_cmpr();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
|
|
|
|||
|
|
@ -583,7 +583,7 @@ extern "C" void PSVECSquareDistance();
|
|||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_23();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
|
|
@ -591,7 +591,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_23();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
|
|
|
|||
|
|
@ -266,13 +266,13 @@ extern "C" void PSVECAdd();
|
|||
extern "C" void PSVECScale();
|
||||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_16();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_16();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
|
|
|
|||
|
|
@ -351,13 +351,13 @@ extern "C" void PSMTXMultVec();
|
|||
extern "C" void PSVECAdd();
|
||||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_18();
|
||||
extern "C" void _savegpr_23();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_18();
|
||||
extern "C" void _restgpr_23();
|
||||
extern "C" void _restgpr_27();
|
||||
|
|
|
|||
|
|
@ -2987,7 +2987,7 @@ extern "C" void __construct_new_array();
|
|||
extern "C" void __ptmf_test();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __cvt_fp2unsigned();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_15();
|
||||
extern "C" void _savegpr_16();
|
||||
extern "C" void _savegpr_20();
|
||||
|
|
@ -3000,7 +3000,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_15();
|
||||
extern "C" void _restgpr_16();
|
||||
extern "C" void _restgpr_20();
|
||||
|
|
|
|||
|
|
@ -306,13 +306,13 @@ extern "C" void PSVECSquareDistance();
|
|||
extern "C" void __register_global_object();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_22();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_22();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
|
|
|
|||
|
|
@ -123,11 +123,11 @@ extern "C" void set__8cM3dGTriFPC3VecPC3VecPC3VecPC3Vec();
|
|||
extern "C" void __dl__FPv();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __cvt_fp2unsigned();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_29();
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@ extern "C" void __construct_array();
|
|||
extern "C" void __cvt_fp2unsigned();
|
||||
extern "C" void _savefpr_29();
|
||||
extern "C" void _restfpr_29();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_16();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_19();
|
||||
|
|
@ -327,7 +327,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_16();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_19();
|
||||
|
|
|
|||
|
|
@ -149,7 +149,7 @@ extern "C" void* __nw__FUli();
|
|||
extern "C" void reinitGX__6J3DSysFv();
|
||||
extern "C" void __register_global_object();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_18();
|
||||
extern "C" void _savegpr_19();
|
||||
|
|
@ -162,7 +162,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_18();
|
||||
extern "C" void _restgpr_19();
|
||||
|
|
|
|||
|
|
@ -59,13 +59,13 @@ extern "C" void getTypeToTypeGroupNo__7dTres_cFUc();
|
|||
extern "C" void* __nw__FUl();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_22();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_22();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
|
|
|
|||
|
|
@ -428,7 +428,7 @@ extern "C" void create__10JKRExpHeapFUlP7JKRHeapb();
|
|||
extern "C" void __register_global_object();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_15();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_23();
|
||||
|
|
@ -438,7 +438,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_15();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_23();
|
||||
|
|
|
|||
|
|
@ -178,14 +178,14 @@ extern "C" void getStringPtr__10J2DTextBoxCFv();
|
|||
extern "C" void setString__10J2DTextBoxFsPCce();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_26();
|
||||
|
|
|
|||
|
|
@ -118,14 +118,14 @@ extern "C" void getStringPtr__10J2DTextBoxCFv();
|
|||
extern "C" void setString__10J2DTextBoxFsPCce();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_26();
|
||||
|
|
|
|||
|
|
@ -378,14 +378,14 @@ extern "C" void setPriority__9J2DScreenFPCcUlP10JKRArchive();
|
|||
extern "C" void draw__9J2DScreenFffPC14J2DGrafContext();
|
||||
extern "C" void getStringPtr__10J2DTextBoxCFv();
|
||||
extern "C" void setString__10J2DTextBoxFsPCce();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_21();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_21();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
|
|
|
|||
|
|
@ -275,7 +275,7 @@ extern "C" void __register_global_object();
|
|||
extern "C" void __destroy_new_array();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __construct_new_array();
|
||||
extern "C" void __save_gpr();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_20();
|
||||
|
|
@ -287,7 +287,7 @@ extern "C" void _savegpr_26();
|
|||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void __restore_gpr();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_20();
|
||||
|
|
|
|||
|
|
@ -143,7 +143,7 @@ def calculate_symbol_sizes(section: linker_map.Section, symbols: List[linker_map
|
|||
curr_addr = caddr + curr.size
|
||||
next_addr = naddr
|
||||
if curr_addr > next_addr:
|
||||
# There are functions that have sub-function within themself. (See __save_gpr)
|
||||
# There are functions that have sub-function within themself. (See _savegpr_14)
|
||||
# Truncate symbol size.
|
||||
curr.size = naddr - caddr
|
||||
else:
|
||||
|
|
|
|||
Loading…
Reference in New Issue