diff --git a/asm/Kyoto/Animation/CAnimPOIData.s b/asm/Kyoto/Animation/CAnimPOIData.s index 0aac63f2..c47b678d 100644 --- a/asm/Kyoto/Animation/CAnimPOIData.s +++ b/asm/Kyoto/Animation/CAnimPOIData.s @@ -665,12 +665,12 @@ lbl_802EC2C4: /* 802EC378 002E92D8 7F 03 C3 78 */ mr r3, r24 /* 802EC37C 002E92DC 7F A4 EB 78 */ mr r4, r29 /* 802EC380 002E92E0 4B FF 0F 95 */ bl "reserve__Q24rstl50vector<13CInt32POINode,Q24rstl17rmemory_allocator>Fi" -/* 802EC384 002E92E4 3C 80 80 3E */ lis r4, lbl_803D9B98@ha +/* 802EC384 002E92E4 3C 80 80 3E */ lis r4, __vt__13CInt32POINode@ha /* 802EC388 002E92E8 3C 60 80 3E */ lis r3, __vt__8CPOINode@ha /* 802EC38C 002E92EC 3B 81 00 14 */ addi r28, r1, 0x14 /* 802EC390 002E92F0 3B 61 00 48 */ addi r27, r1, 0x48 /* 802EC394 002E92F4 3B E1 00 08 */ addi r31, r1, 8 -/* 802EC398 002E92F8 3A C4 9B 98 */ addi r22, r4, lbl_803D9B98@l +/* 802EC398 002E92F8 3A C4 9B 98 */ addi r22, r4, __vt__13CInt32POINode@l /* 802EC39C 002E92FC 3A E3 9B 8C */ addi r23, r3, __vt__8CPOINode@l /* 802EC3A0 002E9300 3B 40 00 00 */ li r26, 0 /* 802EC3A4 002E9304 48 00 01 10 */ b lbl_802EC4B4 @@ -707,8 +707,8 @@ lbl_802EC3E8: /* 802EC414 002E9374 B0 1E 00 04 */ sth r0, 4(r30) /* 802EC418 002E9378 48 05 1D 49 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802EC41C 002E937C A0 A1 00 24 */ lhz r5, 0x24(r1) -/* 802EC420 002E9380 3C 60 80 3E */ lis r3, lbl_803D9B98@ha -/* 802EC424 002E9384 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802EC420 002E9380 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha +/* 802EC424 002E9384 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802EC428 002E9388 7F 64 DB 78 */ mr r4, r27 /* 802EC42C 002E938C B0 BE 00 18 */ sth r5, 0x18(r30) /* 802EC430 002E9390 38 7E 00 3C */ addi r3, r30, 0x3c diff --git a/asm/Kyoto/Animation/CAnimSourceReaderBase.s b/asm/Kyoto/Animation/CAnimSourceReaderBase.s index 216b828e..7ea1b0d7 100644 --- a/asm/Kyoto/Animation/CAnimSourceReaderBase.s +++ b/asm/Kyoto/Animation/CAnimSourceReaderBase.s @@ -1757,9 +1757,9 @@ lbl_802F0F84: /* 802F100C 002EDF6C 80 01 00 68 */ lwz r0, 0x68(r1) /* 802F1010 002EDF70 90 1B 00 38 */ stw r0, 0x38(r27) /* 802F1014 002EDF74 48 04 CD 49 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 802F1018 002EDF78 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802F1018 002EDF78 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802F101C 002EDF7C 28 1C 00 00 */ cmplwi r28, 0 -/* 802F1020 002EDF80 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802F1020 002EDF80 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802F1024 002EDF84 90 01 00 30 */ stw r0, 0x30(r1) /* 802F1028 002EDF88 41 82 00 0C */ beq lbl_802F1034 /* 802F102C 002EDF8C 7F 83 E3 78 */ mr r3, r28 diff --git a/asm/Kyoto/Animation/CAnimTreeLoopIn.s b/asm/Kyoto/Animation/CAnimTreeLoopIn.s index 86b71114..41ae8e6c 100644 --- a/asm/Kyoto/Animation/CAnimTreeLoopIn.s +++ b/asm/Kyoto/Animation/CAnimTreeLoopIn.s @@ -1288,8 +1288,8 @@ lbl_802D9854: /* 802D9874 002D67D4 B0 1D 00 04 */ sth r0, 4(r29) /* 802D9878 002D67D8 48 06 48 E9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802D987C 002D67DC A0 9C 00 18 */ lhz r4, 0x18(r28) -/* 802D9880 002D67E0 3C 60 80 3E */ lis r3, lbl_803D9B98@ha -/* 802D9884 002D67E4 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802D9880 002D67E0 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha +/* 802D9884 002D67E4 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802D9888 002D67E8 38 7D 00 3C */ addi r3, r29, 0x3c /* 802D988C 002D67EC B0 9D 00 18 */ sth r4, 0x18(r29) /* 802D9890 002D67F0 38 9C 00 3C */ addi r4, r28, 0x3c @@ -1873,7 +1873,7 @@ lbl_802DA060: /* 802DA0C8 002D7028 3C 80 80 3E */ lis r4, __vt__8CPOINode@ha /* 802DA0CC 002D702C 80 01 00 0C */ lwz r0, 0xc(r1) /* 802DA0D0 002D7030 1F F3 00 4C */ mulli r31, r19, 0x4c -/* 802DA0D4 002D7034 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DA0D4 002D7034 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DA0D8 002D7038 D0 01 00 10 */ stfs f0, 0x10(r1) /* 802DA0DC 002D703C 39 C1 00 F4 */ addi r14, r1, 0xf4 /* 802DA0E0 002D7040 90 01 00 14 */ stw r0, 0x14(r1) @@ -1885,7 +1885,7 @@ lbl_802DA060: /* 802DA0F8 002D7058 3B 41 00 74 */ addi r26, r1, 0x74 /* 802DA0FC 002D705C 3B 21 00 A8 */ addi r25, r1, 0xa8 /* 802DA100 002D7060 3B A4 9B 8C */ addi r29, r4, __vt__8CPOINode@l -/* 802DA104 002D7064 3B C3 9B 98 */ addi r30, r3, lbl_803D9B98@l +/* 802DA104 002D7064 3B C3 9B 98 */ addi r30, r3, __vt__13CInt32POINode@l /* 802DA108 002D7068 48 00 02 94 */ b lbl_802DA39C lbl_802DA10C: /* 802DA10C 002D706C 80 14 00 0C */ lwz r0, 0xc(r20) @@ -1923,9 +1923,9 @@ lbl_802DA10C: /* 802DA18C 002D70EC 48 06 E8 E1 */ bl __gt__13CCharAnimTimeCFRC13CCharAnimTime /* 802DA190 002D70F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802DA194 002D70F4 41 82 00 40 */ beq lbl_802DA1D4 -/* 802DA198 002D70F8 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DA198 002D70F8 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DA19C 002D70FC 28 0E 00 00 */ cmplwi r14, 0 -/* 802DA1A0 002D7100 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DA1A0 002D7100 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DA1A4 002D7104 90 01 00 B8 */ stw r0, 0xb8(r1) /* 802DA1A8 002D7108 41 82 00 0C */ beq lbl_802DA1B4 /* 802DA1AC 002D710C 7D C3 73 78 */ mr r3, r14 @@ -1962,9 +1962,9 @@ lbl_802DA1D4: /* 802DA220 002D7180 B0 01 00 70 */ sth r0, 0x70(r1) /* 802DA224 002D7184 48 06 3F 3D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802DA228 002D7188 A0 C1 00 38 */ lhz r6, 0x38(r1) -/* 802DA22C 002D718C 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DA22C 002D718C 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DA230 002D7190 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 802DA234 002D7194 39 03 9B 98 */ addi r8, r3, lbl_803D9B98@l +/* 802DA234 002D7194 39 03 9B 98 */ addi r8, r3, __vt__13CInt32POINode@l /* 802DA238 002D7198 80 A1 00 40 */ lwz r5, 0x40(r1) /* 802DA23C 002D719C 7F 64 DB 78 */ mr r4, r27 /* 802DA240 002D71A0 80 01 00 44 */ lwz r0, 0x44(r1) @@ -1985,9 +1985,9 @@ lbl_802DA1D4: /* 802DA27C 002D71DC 91 01 00 6C */ stw r8, 0x6c(r1) /* 802DA280 002D71E0 90 E1 00 A4 */ stw r7, 0xa4(r1) /* 802DA284 002D71E4 48 06 3E DD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 802DA288 002D71E8 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DA288 002D71E8 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DA28C 002D71EC 28 1B 00 00 */ cmplwi r27, 0 -/* 802DA290 002D71F0 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DA290 002D71F0 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DA294 002D71F4 90 01 00 20 */ stw r0, 0x20(r1) /* 802DA298 002D71F8 41 82 00 0C */ beq lbl_802DA2A4 /* 802DA29C 002D71FC 7F 63 DB 78 */ mr r3, r27 @@ -2029,9 +2029,9 @@ lbl_802DA2C0: /* 802DA324 002D7284 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 802DA328 002D7288 90 0F 00 38 */ stw r0, 0x38(r15) /* 802DA32C 002D728C 48 06 3A 31 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 802DA330 002D7290 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DA330 002D7290 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DA334 002D7294 28 19 00 00 */ cmplwi r25, 0 -/* 802DA338 002D7298 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DA338 002D7298 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DA33C 002D729C 3A D6 00 01 */ addi r22, r22, 1 /* 802DA340 002D72A0 90 01 00 6C */ stw r0, 0x6c(r1) /* 802DA344 002D72A4 41 82 00 0C */ beq lbl_802DA350 diff --git a/asm/Kyoto/Animation/CAnimTreeSequence.s b/asm/Kyoto/Animation/CAnimTreeSequence.s index ff5e994b..9f0e31b2 100644 --- a/asm/Kyoto/Animation/CAnimTreeSequence.s +++ b/asm/Kyoto/Animation/CAnimTreeSequence.s @@ -1445,8 +1445,8 @@ lbl_802DBECC: /* 802DBEEC 002D8E4C B0 1C 00 04 */ sth r0, 4(r28) /* 802DBEF0 002D8E50 48 06 22 71 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802DBEF4 002D8E54 A0 9F 00 18 */ lhz r4, 0x18(r31) -/* 802DBEF8 002D8E58 3C 60 80 3E */ lis r3, lbl_803D9B98@ha -/* 802DBEFC 002D8E5C 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DBEF8 002D8E58 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha +/* 802DBEFC 002D8E5C 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DBF00 002D8E60 38 7C 00 3C */ addi r3, r28, 0x3c /* 802DBF04 002D8E64 B0 9C 00 18 */ sth r4, 0x18(r28) /* 802DBF08 002D8E68 38 9F 00 3C */ addi r4, r31, 0x3c @@ -2047,7 +2047,7 @@ sub_802dc74c: /* 802DC794 002D96F4 3C 80 80 3E */ lis r4, __vt__8CPOINode@ha /* 802DC798 002D96F8 80 01 00 0C */ lwz r0, 0xc(r1) /* 802DC79C 002D96FC 1E 56 00 4C */ mulli r18, r22, 0x4c -/* 802DC7A0 002D9700 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DC7A0 002D9700 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DC7A4 002D9704 D0 01 00 10 */ stfs f0, 0x10(r1) /* 802DC7A8 002D9708 39 C1 00 F4 */ addi r14, r1, 0xf4 /* 802DC7AC 002D970C 90 01 00 14 */ stw r0, 0x14(r1) @@ -2059,7 +2059,7 @@ sub_802dc74c: /* 802DC7C4 002D9724 3B A1 00 74 */ addi r29, r1, 0x74 /* 802DC7C8 002D9728 3B 81 00 A8 */ addi r28, r1, 0xa8 /* 802DC7CC 002D972C 3A 04 9B 8C */ addi r16, r4, __vt__8CPOINode@l -/* 802DC7D0 002D9730 3A 23 9B 98 */ addi r17, r3, lbl_803D9B98@l +/* 802DC7D0 002D9730 3A 23 9B 98 */ addi r17, r3, __vt__13CInt32POINode@l /* 802DC7D4 002D9734 3B 20 00 00 */ li r25, 0 /* 802DC7D8 002D9738 48 00 02 94 */ b lbl_802DCA6C lbl_802DC7DC: @@ -2098,9 +2098,9 @@ lbl_802DC7DC: /* 802DC85C 002D97BC 48 06 C2 11 */ bl __gt__13CCharAnimTimeCFRC13CCharAnimTime /* 802DC860 002D97C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802DC864 002D97C4 41 82 00 40 */ beq lbl_802DC8A4 -/* 802DC868 002D97C8 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DC868 002D97C8 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DC86C 002D97CC 28 0E 00 00 */ cmplwi r14, 0 -/* 802DC870 002D97D0 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DC870 002D97D0 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DC874 002D97D4 90 01 00 B8 */ stw r0, 0xb8(r1) /* 802DC878 002D97D8 41 82 00 0C */ beq lbl_802DC884 /* 802DC87C 002D97DC 7D C3 73 78 */ mr r3, r14 @@ -2134,9 +2134,9 @@ lbl_802DC8A4: /* 802DC8E4 002D9844 B0 01 00 70 */ sth r0, 0x70(r1) /* 802DC8E8 002D9848 48 06 18 79 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802DC8EC 002D984C A0 C1 00 38 */ lhz r6, 0x38(r1) -/* 802DC8F0 002D9850 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DC8F0 002D9850 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DC8F4 002D9854 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 802DC8F8 002D9858 39 03 9B 98 */ addi r8, r3, lbl_803D9B98@l +/* 802DC8F8 002D9858 39 03 9B 98 */ addi r8, r3, __vt__13CInt32POINode@l /* 802DC8FC 002D985C 80 A1 00 40 */ lwz r5, 0x40(r1) /* 802DC900 002D9860 7F C4 F3 78 */ mr r4, r30 /* 802DC904 002D9864 80 01 00 44 */ lwz r0, 0x44(r1) @@ -2157,9 +2157,9 @@ lbl_802DC8A4: /* 802DC940 002D98A0 91 01 00 6C */ stw r8, 0x6c(r1) /* 802DC944 002D98A4 90 E1 00 A4 */ stw r7, 0xa4(r1) /* 802DC948 002D98A8 48 06 18 19 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 802DC94C 002D98AC 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DC94C 002D98AC 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DC950 002D98B0 28 1E 00 00 */ cmplwi r30, 0 -/* 802DC954 002D98B4 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DC954 002D98B4 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DC958 002D98B8 90 01 00 20 */ stw r0, 0x20(r1) /* 802DC95C 002D98BC 41 82 00 0C */ beq lbl_802DC968 /* 802DC960 002D98C0 7F C3 F3 78 */ mr r3, r30 @@ -2206,9 +2206,9 @@ lbl_802DC984: /* 802DC9FC 002D995C 90 0F 00 38 */ stw r0, 0x38(r15) /* 802DCA00 002D9960 48 06 13 5D */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_802DCA04: -/* 802DCA04 002D9964 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 802DCA04 002D9964 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 802DCA08 002D9968 28 1C 00 00 */ cmplwi r28, 0 -/* 802DCA0C 002D996C 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DCA0C 002D996C 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DCA10 002D9970 90 01 00 6C */ stw r0, 0x6c(r1) /* 802DCA14 002D9974 41 82 00 0C */ beq lbl_802DCA20 /* 802DCA18 002D9978 7F 83 E3 78 */ mr r3, r28 @@ -2922,8 +2922,8 @@ lbl_802DD424: /* 802DD444 002DA3A4 B0 1E 00 04 */ sth r0, 4(r30) /* 802DD448 002DA3A8 48 06 0D 19 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802DD44C 002DA3AC A0 9F 00 18 */ lhz r4, 0x18(r31) -/* 802DD450 002DA3B0 3C 60 80 3E */ lis r3, lbl_803D9B98@ha -/* 802DD454 002DA3B4 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802DD450 002DA3B0 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha +/* 802DD454 002DA3B4 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802DD458 002DA3B8 38 7E 00 3C */ addi r3, r30, 0x3c /* 802DD45C 002DA3BC B0 9E 00 18 */ sth r4, 0x18(r30) /* 802DD460 002DA3C0 38 9F 00 3C */ addi r4, r31, 0x3c diff --git a/asm/Kyoto/Animation/CInt32POINode.s b/asm/Kyoto/Animation/CInt32POINode.s index e7fd3207..cb3708f3 100644 --- a/asm/Kyoto/Animation/CInt32POINode.s +++ b/asm/Kyoto/Animation/CInt32POINode.s @@ -57,9 +57,9 @@ __ct__13CInt32POINodeFR12CInputStream: /* 802FCF64 002F9EC4 93 C1 00 18 */ stw r30, 0x18(r1) /* 802FCF68 002F9EC8 7C 7E 1B 78 */ mr r30, r3 /* 802FCF6C 002F9ECC 48 00 01 F1 */ bl __ct__8CPOINodeFR12CInputStream -/* 802FCF70 002F9ED0 3C 80 80 3E */ lis r4, lbl_803D9B98@ha +/* 802FCF70 002F9ED0 3C 80 80 3E */ lis r4, __vt__13CInt32POINode@ha /* 802FCF74 002F9ED4 7F E3 FB 78 */ mr r3, r31 -/* 802FCF78 002F9ED8 38 04 9B 98 */ addi r0, r4, lbl_803D9B98@l +/* 802FCF78 002F9ED8 38 04 9B 98 */ addi r0, r4, __vt__13CInt32POINode@l /* 802FCF7C 002F9EDC 90 1E 00 00 */ stw r0, 0(r30) /* 802FCF80 002F9EE0 48 04 1D 05 */ bl ReadLong__12CInputStreamFv /* 802FCF84 002F9EE4 90 7E 00 38 */ stw r3, 0x38(r30) diff --git a/asm/Kyoto/Animation/CSequenceHelper.s b/asm/Kyoto/Animation/CSequenceHelper.s index 769d0f54..10bfebb1 100644 --- a/asm/Kyoto/Animation/CSequenceHelper.s +++ b/asm/Kyoto/Animation/CSequenceHelper.s @@ -288,8 +288,8 @@ lbl_802E5D3C: /* 802E5D68 002E2CC8 B0 13 00 04 */ sth r0, 4(r19) /* 802E5D6C 002E2CCC 48 05 83 F5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802E5D70 002E2CD0 A0 96 00 18 */ lhz r4, 0x18(r22) -/* 802E5D74 002E2CD4 3C 60 80 3E */ lis r3, lbl_803D9B98@ha -/* 802E5D78 002E2CD8 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 802E5D74 002E2CD4 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha +/* 802E5D78 002E2CD8 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 802E5D7C 002E2CDC 38 73 00 3C */ addi r3, r19, 0x3c /* 802E5D80 002E2CE0 B0 93 00 18 */ sth r4, 0x18(r19) /* 802E5D84 002E2CE4 38 96 00 3C */ addi r4, r22, 0x3c diff --git a/asm/MetroidPrime/CAnimData.s b/asm/MetroidPrime/CAnimData.s index 32568111..9fcf1226 100644 --- a/asm/MetroidPrime/CAnimData.s +++ b/asm/MetroidPrime/CAnimData.s @@ -37,8 +37,8 @@ __vt__8CPOINode: .4byte 0 .4byte __dt__8CPOINodeFv -.global lbl_803D9B98 -lbl_803D9B98: +.global __vt__13CInt32POINode +__vt__13CInt32POINode: # ROM: 0x3D6B98 .4byte 0 .4byte 0 @@ -2138,14 +2138,14 @@ GetTimeOfUserEvent__9CAnimDataCF14EUserEventTypeRC13CCharAnimTime: /* 8002B010 00027F70 39 00 00 40 */ li r8, 0x40 /* 8002B014 00027F74 48 2D 2D 69 */ bl GetInt32POIList__11IAnimReaderCFRC13CCharAnimTimeP13CInt32POINodeUiUii /* 8002B018 00027F78 3C C0 80 3D */ lis r6, lbl_803CCD20@ha -/* 8002B01C 00027F7C 3C A0 80 3E */ lis r5, lbl_803D9B98@ha +/* 8002B01C 00027F7C 3C A0 80 3E */ lis r5, __vt__13CInt32POINode@ha /* 8002B020 00027F80 3C 80 80 3E */ lis r4, __vt__8CPOINode@ha /* 8002B024 00027F84 7C 7C 1B 78 */ mr r28, r3 /* 8002B028 00027F88 3B 21 00 70 */ addi r25, r1, 0x70 /* 8002B02C 00027F8C 3B 41 00 A4 */ addi r26, r1, 0xa4 /* 8002B030 00027F90 3B A6 CD 20 */ addi r29, r6, lbl_803CCD20@l /* 8002B034 00027F94 3B C1 00 28 */ addi r30, r1, 0x28 -/* 8002B038 00027F98 3A 85 9B 98 */ addi r20, r5, lbl_803D9B98@l +/* 8002B038 00027F98 3A 85 9B 98 */ addi r20, r5, __vt__13CInt32POINode@l /* 8002B03C 00027F9C 3A A4 9B 8C */ addi r21, r4, __vt__8CPOINode@l /* 8002B040 00027FA0 3A E0 00 00 */ li r23, 0 /* 8002B044 00027FA4 3B 00 00 00 */ li r24, 0 @@ -2162,7 +2162,7 @@ lbl_8002B04C: /* 8002B06C 00027FCC 80 06 00 20 */ lwz r0, 0x20(r6) /* 8002B070 00027FD0 3C A0 80 3D */ lis r5, lbl_803CCD20@ha /* 8002B074 00027FD4 1F 57 00 4C */ mulli r26, r23, 0x4c -/* 8002B078 00027FD8 3C 80 80 3E */ lis r4, lbl_803D9B98@ha +/* 8002B078 00027FD8 3C 80 80 3E */ lis r4, __vt__13CInt32POINode@ha /* 8002B07C 00027FDC 3C 60 80 3E */ lis r3, __vt__8CPOINode@ha /* 8002B080 00027FE0 90 01 00 24 */ stw r0, 0x24(r1) /* 8002B084 00027FE4 C3 E6 00 1C */ lfs f31, 0x1c(r6) @@ -2170,7 +2170,7 @@ lbl_8002B04C: /* 8002B08C 00027FEC 3B 01 00 F0 */ addi r24, r1, 0xf0 /* 8002B090 00027FF0 3B C5 CD 20 */ addi r30, r5, lbl_803CCD20@l /* 8002B094 00027FF4 3B A1 00 48 */ addi r29, r1, 0x48 -/* 8002B098 00027FF8 3A A4 9B 98 */ addi r21, r4, lbl_803D9B98@l +/* 8002B098 00027FF8 3A A4 9B 98 */ addi r21, r4, __vt__13CInt32POINode@l /* 8002B09C 00027FFC 3A 83 9B 8C */ addi r20, r3, __vt__8CPOINode@l /* 8002B0A0 00028000 48 00 01 0C */ b lbl_8002B1AC lbl_8002B0A4: @@ -2344,9 +2344,9 @@ __dt__13CInt32POINodeFv: /* 8002B314 00028274 93 C1 00 08 */ stw r30, 8(r1) /* 8002B318 00028278 7C 7E 1B 79 */ or. r30, r3, r3 /* 8002B31C 0002827C 41 82 00 54 */ beq lbl_8002B370 -/* 8002B320 00028280 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 8002B320 00028280 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 8002B324 00028284 34 1E 00 3C */ addic. r0, r30, 0x3c -/* 8002B328 00028288 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 8002B328 00028288 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 8002B32C 0002828C 90 1E 00 00 */ stw r0, 0(r30) /* 8002B330 00028290 41 82 00 0C */ beq lbl_8002B33C /* 8002B334 00028294 38 7E 00 3C */ addi r3, r30, 0x3c @@ -2387,9 +2387,9 @@ lbl_8002B370: /* 8002B3A8 00028308 93 A1 00 14 */ stw r29, 0x14(r1) /* 8002B3AC 0002830C 7C 7D 1B 78 */ mr r29, r3 /* 8002B3B0 00028310 48 2D 1E 61 */ bl "__ct__8CPOINodeFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>UsRC13CCharAnimTimeibfii" -/* 8002B3B4 00028314 3C 60 80 3E */ lis r3, lbl_803D9B98@ha +/* 8002B3B4 00028314 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha /* 8002B3B8 00028318 7F E4 FB 78 */ mr r4, r31 -/* 8002B3BC 0002831C 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 8002B3BC 0002831C 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 8002B3C0 00028320 38 7D 00 3C */ addi r3, r29, 0x3c /* 8002B3C4 00028324 90 1D 00 00 */ stw r0, 0(r29) /* 8002B3C8 00028328 93 DD 00 38 */ stw r30, 0x38(r29) @@ -5632,9 +5632,9 @@ lbl_8002E240: /* 8002E2D0 0002B230 38 63 CF 40 */ addi r3, r3, sInt32TransientCache@l /* 8002E2D4 0002B234 38 80 00 10 */ li r4, 0x10 /* 8002E2D8 0002B238 48 00 00 69 */ bl "uninitialized_fill_n__4rstlFP13CInt32POINodeiRC13CInt32POINode" -/* 8002E2DC 0002B23C 3C 80 80 3E */ lis r4, lbl_803D9B98@ha +/* 8002E2DC 0002B23C 3C 80 80 3E */ lis r4, __vt__13CInt32POINode@ha /* 8002E2E0 0002B240 34 61 00 74 */ addic. r3, r1, 0x74 -/* 8002E2E4 0002B244 38 04 9B 98 */ addi r0, r4, lbl_803D9B98@l +/* 8002E2E4 0002B244 38 04 9B 98 */ addi r0, r4, __vt__13CInt32POINode@l /* 8002E2E8 0002B248 90 01 00 38 */ stw r0, 0x38(r1) /* 8002E2EC 0002B24C 41 82 00 08 */ beq lbl_8002E2F4 /* 8002E2F0 0002B250 48 30 F7 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" @@ -5690,8 +5690,8 @@ lbl_8002E380: /* 8002E3A0 0002B300 B0 1A 00 04 */ sth r0, 4(r26) /* 8002E3A4 0002B304 48 30 FD BD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8002E3A8 0002B308 A0 9E 00 18 */ lhz r4, 0x18(r30) -/* 8002E3AC 0002B30C 3C 60 80 3E */ lis r3, lbl_803D9B98@ha -/* 8002E3B0 0002B310 38 03 9B 98 */ addi r0, r3, lbl_803D9B98@l +/* 8002E3AC 0002B30C 3C 60 80 3E */ lis r3, __vt__13CInt32POINode@ha +/* 8002E3B0 0002B310 38 03 9B 98 */ addi r0, r3, __vt__13CInt32POINode@l /* 8002E3B4 0002B314 38 7A 00 3C */ addi r3, r26, 0x3c /* 8002E3B8 0002B318 B0 9A 00 18 */ sth r4, 0x18(r26) /* 8002E3BC 0002B31C 38 9E 00 3C */ addi r4, r30, 0x3c @@ -7564,9 +7564,9 @@ lbl_8002FD04: /* 8002FD80 0002CCE0 38 63 BD F4 */ addi r3, r3, mInt32POINodes__9CAnimData@l /* 8002FD84 0002CCE4 38 80 00 10 */ li r4, 0x10 /* 8002FD88 0002CCE8 4B FF E5 B9 */ bl "uninitialized_fill_n__4rstlFP13CInt32POINodeiRC13CInt32POINode" -/* 8002FD8C 0002CCEC 3C 80 80 3E */ lis r4, lbl_803D9B98@ha +/* 8002FD8C 0002CCEC 3C 80 80 3E */ lis r4, __vt__13CInt32POINode@ha /* 8002FD90 0002CCF0 34 61 02 8C */ addic. r3, r1, 0x28c -/* 8002FD94 0002CCF4 38 04 9B 98 */ addi r0, r4, lbl_803D9B98@l +/* 8002FD94 0002CCF4 38 04 9B 98 */ addi r0, r4, __vt__13CInt32POINode@l /* 8002FD98 0002CCF8 90 01 02 50 */ stw r0, 0x250(r1) /* 8002FD9C 0002CCFC 41 82 00 08 */ beq lbl_8002FDA4 /* 8002FDA0 0002CD00 48 30 DD 41 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" diff --git a/asm/MetroidPrime/Enemies/COmegaPirate.s b/asm/MetroidPrime/Enemies/COmegaPirate.s index 86c97514..e43d5c4a 100644 --- a/asm/MetroidPrime/Enemies/COmegaPirate.s +++ b/asm/MetroidPrime/Enemies/COmegaPirate.s @@ -6000,9 +6000,9 @@ lbl_802902C0: /* 80290350 0028D2B0 81 8C 00 68 */ lwz r12, 0x68(r12) /* 80290354 0028D2B4 7D 89 03 A6 */ mtctr r12 /* 80290358 0028D2B8 4E 80 04 21 */ bctrl -/* 8029035C 0028D2BC 3C 80 80 3E */ lis r4, lbl_803D9B98@ha +/* 8029035C 0028D2BC 3C 80 80 3E */ lis r4, __vt__13CInt32POINode@ha /* 80290360 0028D2C0 34 61 01 10 */ addic. r3, r1, 0x110 -/* 80290364 0028D2C4 38 04 9B 98 */ addi r0, r4, lbl_803D9B98@l +/* 80290364 0028D2C4 38 04 9B 98 */ addi r0, r4, __vt__13CInt32POINode@l /* 80290368 0028D2C8 90 01 00 D4 */ stw r0, 0xd4(r1) /* 8029036C 0028D2CC 41 82 00 08 */ beq lbl_80290374 /* 80290370 0028D2D0 48 0A D7 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" diff --git a/configure.py b/configure.py index 3ca67bf8..4aff8b71 100755 --- a/configure.py +++ b/configure.py @@ -526,7 +526,7 @@ LIBS = [ "Kyoto/Animation/CFBStreamedAnimReader", "Kyoto/Animation/CFBStreamedCompression", "Kyoto/Animation/CHierarchyPoseBuilder", - "Kyoto/Animation/CInt32POINode", + ["Kyoto/Animation/CInt32POINode", True], "Kyoto/Animation/CParticlePOINode", ["Kyoto/Animation/CPOINode", True], "Kyoto/Animation/CSegStatementSet", diff --git a/include/Kyoto/Animation/CPOINode.hpp b/include/Kyoto/Animation/CPOINode.hpp index a449c4a7..2f15c542 100644 --- a/include/Kyoto/Animation/CPOINode.hpp +++ b/include/Kyoto/Animation/CPOINode.hpp @@ -27,11 +27,13 @@ public: virtual ~CPOINode() {} const rstl::string& GetString() const { return x8_name; } - EPOIType GetPoiType() const { return static_cast< EPOIType >(x18_type); } + const EPOIType GetPoiType() const { return static_cast< EPOIType >(x18_type); } const CCharAnimTime& GetTime() const { return x1c_time; } - float GetWeight() const { return x2c_weight; } - int GetCharacterIndex() const { return x30_charIdx; } - int GetFlags() const { return x34_flags; } + const int GetIndex() const { return x24_index; } + const bool GetSaveState() const { return x28_unique; } + const float GetWeight() const { return x2c_weight; } + const int GetCharacterIndex() const { return x30_charIdx; } + const int GetFlags() const { return x34_flags; } bool operator>(const CPOINode& other) const; bool operator<(const CPOINode& other) const; @@ -64,8 +66,18 @@ private: class CInt32POINode : public CPOINode { public: - // __ct__13CInt32POINodeFQ24rstl66basic_string,Q24rstl17rmemory_allocator>UsRC13CCharAnimTimeibfiiiRCQ24rstl66basic_string,Q24rstl17rmemory_allocator> - // CopyNodeMinusStartTime__13CInt32POINodeFRC13CInt32POINodeRC13CCharAnimTime + CInt32POINode(rstl::string name, ushort type, const CCharAnimTime& time, int index, bool unique, + float weight, int charIdx, int flags, int value, + const rstl::string& locatorName); /* +: CPOINode(name, type, time, index, unique, weight, charIdx, flags) +, x38_val(value) +, x3c_lctrName(locatorName) {} +*/ + + explicit CInt32POINode(CInputStream& in); + + static CInt32POINode CopyNodeMinusStartTime(const CInt32POINode& node, + const CCharAnimTime& startTime); int GetValue() const { return x38_val; } const rstl::string& GetLocatorName() const { return x3c_lctrName; } diff --git a/src/Kyoto/Animation/CInt32POINode.cpp b/src/Kyoto/Animation/CInt32POINode.cpp new file mode 100644 index 00000000..a77e4906 --- /dev/null +++ b/src/Kyoto/Animation/CInt32POINode.cpp @@ -0,0 +1,12 @@ +#include "Kyoto/Animation/CPOINode.hpp" +#include "Kyoto/Streams/CInputStream.hpp" + +CInt32POINode::CInt32POINode(CInputStream& in) +: CPOINode(in), x38_val(in.ReadInt32()), x3c_lctrName(in) {} + +CInt32POINode CInt32POINode::CopyNodeMinusStartTime(const CInt32POINode& node, + const CCharAnimTime& startTime) { + return CInt32POINode(node.GetString(), node.GetPoiType(), node.GetTime() - startTime, node.GetIndex(), + node.GetSaveState(), node.GetWeight(), node.GetCharacterIndex(), node.GetFlags(), + node.GetValue(), node.GetLocatorName()); +}