From d6c4d73506bd09b14a402c35b78c827d20ed952f Mon Sep 17 00:00:00 2001 From: Max Date: Tue, 13 Oct 2020 19:02:34 -0400 Subject: split ut_ResFontBase.s --- asm/nw4r/ut/detail/ut_ResFontBase.s | 485 ++++++++++++++++++++++++++++++++++++ asm/nw4r/ut/ut_ResFont.s | 6 +- asm/text_10_3.s | 449 --------------------------------- obj_files.mk | 2 +- 4 files changed, 489 insertions(+), 453 deletions(-) create mode 100644 asm/nw4r/ut/detail/ut_ResFontBase.s delete mode 100644 asm/text_10_3.s diff --git a/asm/nw4r/ut/detail/ut_ResFontBase.s b/asm/nw4r/ut/detail/ut_ResFontBase.s new file mode 100644 index 0000000..4ed1927 --- /dev/null +++ b/asm/nw4r/ut/detail/ut_ResFontBase.s @@ -0,0 +1,485 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80006980 - 0x803E1E60 + +/* NOTE: unused destructor. Maybe __dt__Q34nw4r2ut4FontFv from ut_RomFont +func_80363F2C: +/* 80363F2C 0035FB8C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80363F30 0035FB90 7C 08 02 A6 */ mflr r0 +/* 80363F34 0035FB94 2C 03 00 00 */ cmpwi r3, 0 +/* 80363F38 0035FB98 90 01 00 14 */ stw r0, 0x14(r1) +/* 80363F3C 0035FB9C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80363F40 0035FBA0 7C 7F 1B 78 */ mr r31, r3 +/* 80363F44 0035FBA4 41 82 00 10 */ beq lbl_80363F54 +/* 80363F48 0035FBA8 2C 04 00 00 */ cmpwi r4, 0 +/* 80363F4C 0035FBAC 40 81 00 08 */ ble lbl_80363F54 +/* 80363F50 0035FBB0 4B E7 6B 69 */ bl func_801DAAB8 +lbl_80363F54: +/* 80363F54 0035FBB4 7F E3 FB 78 */ mr r3, r31 +/* 80363F58 0035FBB8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80363F5C 0035FBBC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80363F60 0035FBC0 7C 08 03 A6 */ mtlr r0 +/* 80363F64 0035FBC4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80363F68 0035FBC8 4E 80 00 20 */ blr + +.global __ct__Q44nw4r2ut6detail11ResFontBaseFv +__ct__Q44nw4r2ut6detail11ResFontBaseFv: +/* 80363F6C 0035FBCC 3C A0 80 45 */ lis r5, lbl_8044C7F0@ha +/* 80363F70 0035FBD0 3C 80 80 45 */ lis r4, lbl_8044C858@ha +/* 80363F74 0035FBD4 38 A5 C7 F0 */ addi r5, r5, lbl_8044C7F0@l +/* 80363F78 0035FBD8 3C E0 80 45 */ lis r7, lbl_80450004@ha +/* 80363F7C 0035FBDC 90 A3 00 00 */ stw r5, 0(r3) +/* 80363F80 0035FBE0 38 84 C8 58 */ addi r4, r4, lbl_8044C858@l +/* 80363F84 0035FBE4 38 00 00 00 */ li r0, 0 +/* 80363F88 0035FBE8 84 C7 C8 48 */ lwzu r6, -0x37b8(r7) +/* 80363F8C 0035FBEC 80 A7 00 04 */ lwz r5, lbl_80450004@l(r7) +/* 80363F90 0035FBF0 90 C3 00 04 */ stw r6, 4(r3) +/* 80363F94 0035FBF4 90 A3 00 08 */ stw r5, 8(r3) +/* 80363F98 0035FBF8 80 A7 00 08 */ lwz r5, 8(r7) +/* 80363F9C 0035FBFC 90 A3 00 0C */ stw r5, 0xc(r3) +/* 80363FA0 0035FC00 90 83 00 00 */ stw r4, 0(r3) +/* 80363FA4 0035FC04 90 03 00 10 */ stw r0, 0x10(r3) +/* 80363FA8 0035FC08 90 03 00 14 */ stw r0, 0x14(r3) +/* 80363FAC 0035FC0C 4E 80 00 20 */ blr + +.global __dt__Q44nw4r2ut6detail11ResFontBaseFv +__dt__Q44nw4r2ut6detail11ResFontBaseFv: +/* 80363FB0 0035FC10 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80363FB4 0035FC14 7C 08 02 A6 */ mflr r0 +/* 80363FB8 0035FC18 2C 03 00 00 */ cmpwi r3, 0 +/* 80363FBC 0035FC1C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80363FC0 0035FC20 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80363FC4 0035FC24 7C 7F 1B 78 */ mr r31, r3 +/* 80363FC8 0035FC28 41 82 00 10 */ beq lbl_80363FD8 +/* 80363FCC 0035FC2C 2C 04 00 00 */ cmpwi r4, 0 +/* 80363FD0 0035FC30 40 81 00 08 */ ble lbl_80363FD8 +/* 80363FD4 0035FC34 4B E7 6A E5 */ bl func_801DAAB8 +lbl_80363FD8: +/* 80363FD8 0035FC38 7F E3 FB 78 */ mr r3, r31 +/* 80363FDC 0035FC3C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80363FE0 0035FC40 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80363FE4 0035FC44 7C 08 03 A6 */ mtlr r0 +/* 80363FE8 0035FC48 38 21 00 10 */ addi r1, r1, 0x10 +/* 80363FEC 0035FC4C 4E 80 00 20 */ blr + +.global SetResourceBuffer__Q44nw4r2ut6detail11ResFontBaseFPvPQ34nw4r2ut15FontInformation +SetResourceBuffer__Q44nw4r2ut6detail11ResFontBaseFPvPQ34nw4r2ut15FontInformation: +/* 80363FF0 0035FC50 90 83 00 10 */ stw r4, 0x10(r3) +/* 80363FF4 0035FC54 90 A3 00 14 */ stw r5, 0x14(r3) +/* 80363FF8 0035FC58 4E 80 00 20 */ blr + +GetWidth__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80363FFC 0035FC5C 80 63 00 14 */ lwz r3, 0x14(r3) +/* 80364000 0035FC60 88 63 00 15 */ lbz r3, 0x15(r3) +/* 80364004 0035FC64 4E 80 00 20 */ blr + +GetHeight__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364008 0035FC68 80 63 00 14 */ lwz r3, 0x14(r3) +/* 8036400C 0035FC6C 88 63 00 14 */ lbz r3, 0x14(r3) +/* 80364010 0035FC70 4E 80 00 20 */ blr + +GetAscent__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364014 0035FC74 80 63 00 14 */ lwz r3, 0x14(r3) +/* 80364018 0035FC78 88 63 00 16 */ lbz r3, 0x16(r3) +/* 8036401C 0035FC7C 4E 80 00 20 */ blr + +GetDescent__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364020 0035FC80 80 83 00 14 */ lwz r4, 0x14(r3) +/* 80364024 0035FC84 88 64 00 16 */ lbz r3, 0x16(r4) +/* 80364028 0035FC88 88 04 00 14 */ lbz r0, 0x14(r4) +/* 8036402C 0035FC8C 7C 63 00 50 */ subf r3, r3, r0 +/* 80364030 0035FC90 4E 80 00 20 */ blr + +GetBaselinePos__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364034 0035FC94 80 63 00 14 */ lwz r3, 0x14(r3) +/* 80364038 0035FC98 80 63 00 08 */ lwz r3, 8(r3) +/* 8036403C 0035FC9C 88 63 00 02 */ lbz r3, 2(r3) +/* 80364040 0035FCA0 7C 63 07 74 */ extsb r3, r3 +/* 80364044 0035FCA4 4E 80 00 20 */ blr + +GetCellHeight__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364048 0035FCA8 80 63 00 14 */ lwz r3, 0x14(r3) +/* 8036404C 0035FCAC 80 63 00 08 */ lwz r3, 8(r3) +/* 80364050 0035FCB0 88 63 00 01 */ lbz r3, 1(r3) +/* 80364054 0035FCB4 4E 80 00 20 */ blr + +GetCellWidth__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364058 0035FCB8 80 63 00 14 */ lwz r3, 0x14(r3) +/* 8036405C 0035FCBC 80 63 00 08 */ lwz r3, 8(r3) +/* 80364060 0035FCC0 88 63 00 00 */ lbz r3, 0(r3) +/* 80364064 0035FCC4 4E 80 00 20 */ blr + +GetMaxCharWidth__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364068 0035FCC8 80 63 00 14 */ lwz r3, 0x14(r3) +/* 8036406C 0035FCCC 80 63 00 08 */ lwz r3, 8(r3) +/* 80364070 0035FCD0 88 63 00 03 */ lbz r3, 3(r3) +/* 80364074 0035FCD4 4E 80 00 20 */ blr + +GetType__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364078 0035FCD8 38 60 00 02 */ li r3, 2 +/* 8036407C 0035FCDC 4E 80 00 20 */ blr + +GetTextureFormat__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364080 0035FCE0 80 63 00 14 */ lwz r3, 0x14(r3) +/* 80364084 0035FCE4 80 63 00 08 */ lwz r3, 8(r3) +/* 80364088 0035FCE8 A0 63 00 0A */ lhz r3, 0xa(r3) +/* 8036408C 0035FCEC 4E 80 00 20 */ blr + +GetLineFeed__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364090 0035FCF0 80 63 00 14 */ lwz r3, 0x14(r3) +/* 80364094 0035FCF4 88 63 00 01 */ lbz r3, 1(r3) +/* 80364098 0035FCF8 7C 63 07 74 */ extsb r3, r3 +/* 8036409C 0035FCFC 4E 80 00 20 */ blr + +GetDefaultCharWidths__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 803640A0 0035FD00 80 83 00 14 */ lwz r4, 0x14(r3) +/* 803640A4 0035FD04 A0 04 00 04 */ lhz r0, 4(r4) +/* 803640A8 0035FD08 54 03 80 1E */ slwi r3, r0, 0x10 +/* 803640AC 0035FD0C 88 04 00 06 */ lbz r0, 6(r4) +/* 803640B0 0035FD10 50 03 44 2E */ rlwimi r3, r0, 8, 0x10, 0x17 +/* 803640B4 0035FD14 4E 80 00 20 */ blr + +SetDefaultCharWidths__Q44nw4r2ut6detail11ResFontBaseFRCQ34nw4r2ut10CharWidths: +/* 803640B8 0035FD18 80 A3 00 14 */ lwz r5, 0x14(r3) +/* 803640BC 0035FD1C 88 04 00 00 */ lbz r0, 0(r4) +/* 803640C0 0035FD20 88 64 00 01 */ lbz r3, 1(r4) +/* 803640C4 0035FD24 98 05 00 04 */ stb r0, 4(r5) +/* 803640C8 0035FD28 88 04 00 02 */ lbz r0, 2(r4) +/* 803640CC 0035FD2C 98 65 00 05 */ stb r3, 5(r5) +/* 803640D0 0035FD30 98 05 00 06 */ stb r0, 6(r5) +/* 803640D4 0035FD34 4E 80 00 20 */ blr + +SetAlternateChar__Q44nw4r2ut6detail11ResFontBaseFUs: +/* 803640D8 0035FD38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 803640DC 0035FD3C 7C 08 02 A6 */ mflr r0 +/* 803640E0 0035FD40 7C 85 23 78 */ mr r5, r4 +/* 803640E4 0035FD44 90 01 00 14 */ stw r0, 0x14(r1) +/* 803640E8 0035FD48 93 E1 00 0C */ stw r31, 0xc(r1) +/* 803640EC 0035FD4C 7C 7F 1B 78 */ mr r31, r3 +/* 803640F0 0035FD50 80 C3 00 14 */ lwz r6, 0x14(r3) +/* 803640F4 0035FD54 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 803640F8 0035FD58 48 00 00 34 */ b lbl_8036412C +lbl_803640FC: +/* 803640FC 0035FD5C A0 06 00 00 */ lhz r0, 0(r6) +/* 80364100 0035FD60 7C 00 20 40 */ cmplw r0, r4 +/* 80364104 0035FD64 41 81 00 24 */ bgt lbl_80364128 +/* 80364108 0035FD68 A0 06 00 02 */ lhz r0, 2(r6) +/* 8036410C 0035FD6C 7C 04 00 40 */ cmplw r4, r0 +/* 80364110 0035FD70 41 81 00 18 */ bgt lbl_80364128 +/* 80364114 0035FD74 7F E3 FB 78 */ mr r3, r31 +/* 80364118 0035FD78 7C C4 33 78 */ mr r4, r6 +/* 8036411C 0035FD7C 48 00 02 49 */ bl FindGlyphIndex__Q44nw4r2ut6detail11ResFontBaseCFPCQ34nw4r2ut11FontCodeMapUs +/* 80364120 0035FD80 7C 65 1B 78 */ mr r5, r3 +/* 80364124 0035FD84 48 00 00 18 */ b lbl_8036413C +lbl_80364128: +/* 80364128 0035FD88 80 C6 00 08 */ lwz r6, 8(r6) +lbl_8036412C: +/* 8036412C 0035FD8C 2C 06 00 00 */ cmpwi r6, 0 +/* 80364130 0035FD90 40 82 FF CC */ bne lbl_803640FC +/* 80364134 0035FD94 3C 60 00 01 */ lis r3, 0x0000FFFF@ha +/* 80364138 0035FD98 38 A3 FF FF */ addi r5, r3, 0x0000FFFF@l +lbl_8036413C: +/* 8036413C 0035FD9C 54 A0 04 3E */ clrlwi r0, r5, 0x10 +/* 80364140 0035FDA0 28 00 FF FF */ cmplwi r0, 0xffff +/* 80364144 0035FDA4 41 82 00 14 */ beq lbl_80364158 +/* 80364148 0035FDA8 80 9F 00 14 */ lwz r4, 0x14(r31) +/* 8036414C 0035FDAC 38 60 00 01 */ li r3, 1 +/* 80364150 0035FDB0 B0 A4 00 02 */ sth r5, 2(r4) +/* 80364154 0035FDB4 48 00 00 08 */ b lbl_8036415C +lbl_80364158: +/* 80364158 0035FDB8 38 60 00 00 */ li r3, 0 +lbl_8036415C: +/* 8036415C 0035FDBC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80364160 0035FDC0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80364164 0035FDC4 7C 08 03 A6 */ mtlr r0 +/* 80364168 0035FDC8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8036416C 0035FDCC 4E 80 00 20 */ blr + +.global SetLineFeed__Q44nw4r2ut6detail11ResFontBaseFi +SetLineFeed__Q44nw4r2ut6detail11ResFontBaseFi: +/* 80364170 0035FDD0 80 63 00 14 */ lwz r3, 0x14(r3) +/* 80364174 0035FDD4 98 83 00 01 */ stb r4, 1(r3) +/* 80364178 0035FDD8 4E 80 00 20 */ blr + +GetCharWidth__Q44nw4r2ut6detail11ResFontBaseCFUs: +/* 8036417C 0035FDDC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80364180 0035FDE0 7C 08 02 A6 */ mflr r0 +/* 80364184 0035FDE4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80364188 0035FDE8 81 83 00 00 */ lwz r12, 0(r3) +/* 8036418C 0035FDEC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80364190 0035FDF0 7D 89 03 A6 */ mtctr r12 +/* 80364194 0035FDF4 4E 80 04 21 */ bctrl +/* 80364198 0035FDF8 54 60 46 3E */ srwi r0, r3, 0x18 +/* 8036419C 0035FDFC 98 01 00 08 */ stb r0, 8(r1) +/* 803641A0 0035FE00 54 60 86 3E */ rlwinm r0, r3, 0x10, 0x18, 0x1f +/* 803641A4 0035FE04 98 01 00 09 */ stb r0, 9(r1) +/* 803641A8 0035FE08 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f +/* 803641AC 0035FE0C 7C 03 03 78 */ mr r3, r0 +/* 803641B0 0035FE10 98 01 00 0A */ stb r0, 0xa(r1) +/* 803641B4 0035FE14 7C 63 07 74 */ extsb r3, r3 +/* 803641B8 0035FE18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 803641BC 0035FE1C 7C 08 03 A6 */ mtlr r0 +/* 803641C0 0035FE20 38 21 00 10 */ addi r1, r1, 0x10 +/* 803641C4 0035FE24 4E 80 00 20 */ blr + +GetCharWidths__Q44nw4r2ut6detail11ResFontBaseCFUs: +/* 803641C8 0035FE28 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 803641CC 0035FE2C 7C 08 02 A6 */ mflr r0 +/* 803641D0 0035FE30 80 C3 00 14 */ lwz r6, 0x14(r3) +/* 803641D4 0035FE34 7C 85 23 78 */ mr r5, r4 +/* 803641D8 0035FE38 90 01 00 14 */ stw r0, 0x14(r1) +/* 803641DC 0035FE3C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 803641E0 0035FE40 7C 7F 1B 78 */ mr r31, r3 +/* 803641E4 0035FE44 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 803641E8 0035FE48 48 00 00 30 */ b lbl_80364218 +lbl_803641EC: +/* 803641EC 0035FE4C A0 06 00 00 */ lhz r0, 0(r6) +/* 803641F0 0035FE50 7C 00 20 40 */ cmplw r0, r4 +/* 803641F4 0035FE54 41 81 00 20 */ bgt lbl_80364214 +/* 803641F8 0035FE58 A0 06 00 02 */ lhz r0, 2(r6) +/* 803641FC 0035FE5C 7C 04 00 40 */ cmplw r4, r0 +/* 80364200 0035FE60 41 81 00 14 */ bgt lbl_80364214 +/* 80364204 0035FE64 7F E3 FB 78 */ mr r3, r31 +/* 80364208 0035FE68 7C C4 33 78 */ mr r4, r6 +/* 8036420C 0035FE6C 48 00 01 59 */ bl FindGlyphIndex__Q44nw4r2ut6detail11ResFontBaseCFPCQ34nw4r2ut11FontCodeMapUs +/* 80364210 0035FE70 48 00 00 18 */ b lbl_80364228 +lbl_80364214: +/* 80364214 0035FE74 80 C6 00 08 */ lwz r6, 8(r6) +lbl_80364218: +/* 80364218 0035FE78 2C 06 00 00 */ cmpwi r6, 0 +/* 8036421C 0035FE7C 40 82 FF D0 */ bne lbl_803641EC +/* 80364220 0035FE80 3C 60 00 01 */ lis r3, 0x0000FFFF@ha +/* 80364224 0035FE84 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l +lbl_80364228: +/* 80364228 0035FE88 54 60 04 3E */ clrlwi r0, r3, 0x10 +/* 8036422C 0035FE8C 28 00 FF FF */ cmplwi r0, 0xffff +/* 80364230 0035FE90 41 82 00 08 */ beq lbl_80364238 +/* 80364234 0035FE94 48 00 00 0C */ b lbl_80364240 +lbl_80364238: +/* 80364238 0035FE98 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 8036423C 0035FE9C A0 63 00 02 */ lhz r3, 2(r3) +lbl_80364240: +/* 80364240 0035FEA0 80 DF 00 14 */ lwz r6, 0x14(r31) +/* 80364244 0035FEA4 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 80364248 0035FEA8 80 86 00 0C */ lwz r4, 0xc(r6) +/* 8036424C 0035FEAC 48 00 00 38 */ b lbl_80364284 +lbl_80364250: +/* 80364250 0035FEB0 A0 A4 00 00 */ lhz r5, 0(r4) +/* 80364254 0035FEB4 7C 05 18 40 */ cmplw r5, r3 +/* 80364258 0035FEB8 41 81 00 28 */ bgt lbl_80364280 +/* 8036425C 0035FEBC A0 04 00 02 */ lhz r0, 2(r4) +/* 80364260 0035FEC0 7C 03 00 40 */ cmplw r3, r0 +/* 80364264 0035FEC4 41 81 00 1C */ bgt lbl_80364280 +/* 80364268 0035FEC8 7C 65 18 50 */ subf r3, r5, r3 +/* 8036426C 0035FECC 54 60 10 3A */ slwi r0, r3, 2 +/* 80364270 0035FED0 7C 03 00 50 */ subf r0, r3, r0 +/* 80364274 0035FED4 7C 64 02 14 */ add r3, r4, r0 +/* 80364278 0035FED8 38 83 00 08 */ addi r4, r3, 8 +/* 8036427C 0035FEDC 48 00 00 14 */ b lbl_80364290 +lbl_80364280: +/* 80364280 0035FEE0 80 84 00 04 */ lwz r4, 4(r4) +lbl_80364284: +/* 80364284 0035FEE4 2C 04 00 00 */ cmpwi r4, 0 +/* 80364288 0035FEE8 40 82 FF C8 */ bne lbl_80364250 +/* 8036428C 0035FEEC 38 86 00 04 */ addi r4, r6, 4 +lbl_80364290: +/* 80364290 0035FEF0 A0 04 00 00 */ lhz r0, 0(r4) +/* 80364294 0035FEF4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80364298 0035FEF8 54 03 80 1E */ slwi r3, r0, 0x10 +/* 8036429C 0035FEFC 88 04 00 02 */ lbz r0, 2(r4) +/* 803642A0 0035FF00 50 03 44 2E */ rlwimi r3, r0, 8, 0x10, 0x17 +/* 803642A4 0035FF04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 803642A8 0035FF08 7C 08 03 A6 */ mtlr r0 +/* 803642AC 0035FF0C 38 21 00 10 */ addi r1, r1, 0x10 +/* 803642B0 0035FF10 4E 80 00 20 */ blr + +GetGlyph__Q44nw4r2ut6detail11ResFontBaseCFPQ34nw4r2ut5GlyphUs: +/* 803642B4 0035FF14 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 803642B8 0035FF18 7C 08 02 A6 */ mflr r0 +/* 803642BC 0035FF1C 80 C3 00 14 */ lwz r6, 0x14(r3) +/* 803642C0 0035FF20 90 01 00 14 */ stw r0, 0x14(r1) +/* 803642C4 0035FF24 93 E1 00 0C */ stw r31, 0xc(r1) +/* 803642C8 0035FF28 7C 9F 23 78 */ mr r31, r4 +/* 803642CC 0035FF2C 93 C1 00 08 */ stw r30, 8(r1) +/* 803642D0 0035FF30 7C 7E 1B 78 */ mr r30, r3 +/* 803642D4 0035FF34 80 86 00 10 */ lwz r4, 0x10(r6) +/* 803642D8 0035FF38 48 00 00 30 */ b lbl_80364308 +lbl_803642DC: +/* 803642DC 0035FF3C A0 04 00 00 */ lhz r0, 0(r4) +/* 803642E0 0035FF40 7C 00 28 40 */ cmplw r0, r5 +/* 803642E4 0035FF44 41 81 00 20 */ bgt lbl_80364304 +/* 803642E8 0035FF48 A0 04 00 02 */ lhz r0, 2(r4) +/* 803642EC 0035FF4C 7C 05 00 40 */ cmplw r5, r0 +/* 803642F0 0035FF50 41 81 00 14 */ bgt lbl_80364304 +/* 803642F4 0035FF54 7F C3 F3 78 */ mr r3, r30 +/* 803642F8 0035FF58 48 00 00 6D */ bl FindGlyphIndex__Q44nw4r2ut6detail11ResFontBaseCFPCQ34nw4r2ut11FontCodeMapUs +/* 803642FC 0035FF5C 7C 65 1B 78 */ mr r5, r3 +/* 80364300 0035FF60 48 00 00 18 */ b lbl_80364318 +lbl_80364304: +/* 80364304 0035FF64 80 84 00 08 */ lwz r4, 8(r4) +lbl_80364308: +/* 80364308 0035FF68 2C 04 00 00 */ cmpwi r4, 0 +/* 8036430C 0035FF6C 40 82 FF D0 */ bne lbl_803642DC +/* 80364310 0035FF70 3C 60 00 01 */ lis r3, 0x0000FFFF@ha +/* 80364314 0035FF74 38 A3 FF FF */ addi r5, r3, 0x0000FFFF@l +lbl_80364318: +/* 80364318 0035FF78 54 A0 04 3E */ clrlwi r0, r5, 0x10 +/* 8036431C 0035FF7C 7F C3 F3 78 */ mr r3, r30 +/* 80364320 0035FF80 28 00 FF FF */ cmplwi r0, 0xffff +/* 80364324 0035FF84 7F E4 FB 78 */ mr r4, r31 +/* 80364328 0035FF88 41 82 00 08 */ beq lbl_80364330 +/* 8036432C 0035FF8C 48 00 00 0C */ b lbl_80364338 +lbl_80364330: +/* 80364330 0035FF90 80 BE 00 14 */ lwz r5, 0x14(r30) +/* 80364334 0035FF94 A0 A5 00 02 */ lhz r5, 2(r5) +lbl_80364338: +/* 80364338 0035FF98 54 A5 04 3E */ clrlwi r5, r5, 0x10 +/* 8036433C 0035FF9C 48 00 00 FD */ bl GetGlyphFromIndex__Q44nw4r2ut6detail11ResFontBaseCFPQ34nw4r2ut5GlyphUs +/* 80364340 0035FFA0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80364344 0035FFA4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80364348 0035FFA8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8036434C 0035FFAC 7C 08 03 A6 */ mtlr r0 +/* 80364350 0035FFB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80364354 0035FFB4 4E 80 00 20 */ blr + +.global GetEncoding__Q44nw4r2ut6detail11ResFontBaseCFv +GetEncoding__Q44nw4r2ut6detail11ResFontBaseCFv: +/* 80364358 0035FFB8 80 63 00 14 */ lwz r3, 0x14(r3) +/* 8036435C 0035FFBC 88 63 00 07 */ lbz r3, 7(r3) +/* 80364360 0035FFC0 4E 80 00 20 */ blr + +.global FindGlyphIndex__Q44nw4r2ut6detail11ResFontBaseCFPCQ34nw4r2ut11FontCodeMapUs +FindGlyphIndex__Q44nw4r2ut6detail11ResFontBaseCFPCQ34nw4r2ut11FontCodeMapUs: +/* 80364364 0035FFC4 A0 04 00 04 */ lhz r0, 4(r4) +/* 80364368 0035FFC8 3C 60 00 01 */ lis r3, 0x0000FFFF@ha +/* 8036436C 0035FFCC 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l +/* 80364370 0035FFD0 2C 00 00 01 */ cmpwi r0, 1 +/* 80364374 0035FFD4 41 82 00 38 */ beq lbl_803643AC +/* 80364378 0035FFD8 40 80 00 10 */ bge lbl_80364388 +/* 8036437C 0035FFDC 2C 00 00 00 */ cmpwi r0, 0 +/* 80364380 0035FFE0 40 80 00 14 */ bge lbl_80364394 +/* 80364384 0035FFE4 4E 80 00 20 */ blr +lbl_80364388: +/* 80364388 0035FFE8 2C 00 00 03 */ cmpwi r0, 3 +/* 8036438C 0035FFEC 4C 80 00 20 */ bgelr +/* 80364390 0035FFF0 48 00 00 34 */ b lbl_803643C4 +lbl_80364394: +/* 80364394 0035FFF4 A0 04 00 00 */ lhz r0, 0(r4) +/* 80364398 0035FFF8 A0 64 00 0C */ lhz r3, 0xc(r4) +/* 8036439C 0035FFFC 7C 00 28 50 */ subf r0, r0, r5 +/* 803643A0 00360000 7C 03 02 14 */ add r0, r3, r0 +/* 803643A4 00360004 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 803643A8 00360008 4E 80 00 20 */ blr +lbl_803643AC: +/* 803643AC 0036000C A0 04 00 00 */ lhz r0, 0(r4) +/* 803643B0 00360010 7C 00 28 50 */ subf r0, r0, r5 +/* 803643B4 00360014 54 00 08 3C */ slwi r0, r0, 1 +/* 803643B8 00360018 7C 64 02 14 */ add r3, r4, r0 +/* 803643BC 0036001C A0 63 00 0C */ lhz r3, 0xc(r3) +/* 803643C0 00360020 4E 80 00 20 */ blr +lbl_803643C4: +/* 803643C4 00360024 38 C4 00 0C */ addi r6, r4, 0xc +/* 803643C8 00360028 A0 84 00 0C */ lhz r4, 0xc(r4) +/* 803643CC 0036002C 38 E6 00 02 */ addi r7, r6, 2 +/* 803643D0 00360030 38 04 FF FF */ addi r0, r4, -1 +/* 803643D4 00360034 54 00 10 3A */ slwi r0, r0, 2 +/* 803643D8 00360038 7C 86 02 14 */ add r4, r6, r0 +/* 803643DC 0036003C 38 C4 00 02 */ addi r6, r4, 2 +/* 803643E0 00360040 48 00 00 4C */ b lbl_8036442C +lbl_803643E4: +/* 803643E4 00360044 7C 07 30 50 */ subf r0, r7, r6 +/* 803643E8 00360048 7C 00 16 70 */ srawi r0, r0, 2 +/* 803643EC 0036004C 7C 80 01 94 */ addze r4, r0 +/* 803643F0 00360050 54 80 0F FE */ srwi r0, r4, 0x1f +/* 803643F4 00360054 7C 00 22 14 */ add r0, r0, r4 +/* 803643F8 00360058 54 00 08 3A */ rlwinm r0, r0, 1, 0, 0x1d +/* 803643FC 0036005C 7C 87 02 14 */ add r4, r7, r0 +/* 80364400 00360060 7C 07 02 2E */ lhzx r0, r7, r0 +/* 80364404 00360064 7C 00 28 40 */ cmplw r0, r5 +/* 80364408 00360068 40 80 00 0C */ bge lbl_80364414 +/* 8036440C 0036006C 38 E4 00 04 */ addi r7, r4, 4 +/* 80364410 00360070 48 00 00 1C */ b lbl_8036442C +lbl_80364414: +/* 80364414 00360074 7C 05 00 40 */ cmplw r5, r0 +/* 80364418 00360078 40 80 00 0C */ bge lbl_80364424 +/* 8036441C 0036007C 38 C4 FF FC */ addi r6, r4, -4 +/* 80364420 00360080 48 00 00 0C */ b lbl_8036442C +lbl_80364424: +/* 80364424 00360084 A0 64 00 02 */ lhz r3, 2(r4) +/* 80364428 00360088 4E 80 00 20 */ blr +lbl_8036442C: +/* 8036442C 0036008C 7C 07 30 40 */ cmplw r7, r6 +/* 80364430 00360090 40 81 FF B4 */ ble lbl_803643E4 +/* 80364434 00360094 4E 80 00 20 */ blr + +.global GetGlyphFromIndex__Q44nw4r2ut6detail11ResFontBaseCFPQ34nw4r2ut5GlyphUs +GetGlyphFromIndex__Q44nw4r2ut6detail11ResFontBaseCFPQ34nw4r2ut5GlyphUs: +/* 80364438 00360098 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8036443C 0036009C 81 83 00 14 */ lwz r12, 0x14(r3) +/* 80364440 003600A0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80364444 003600A4 93 C1 00 08 */ stw r30, 8(r1) +/* 80364448 003600A8 80 6C 00 08 */ lwz r3, 8(r12) +/* 8036444C 003600AC A3 E3 00 0C */ lhz r31, 0xc(r3) +/* 80364450 003600B0 A0 03 00 0E */ lhz r0, 0xe(r3) +/* 80364454 003600B4 88 C3 00 00 */ lbz r6, 0(r3) +/* 80364458 003600B8 7D 3F 01 D6 */ mullw r9, r31, r0 +/* 8036445C 003600BC 88 E3 00 01 */ lbz r7, 1(r3) +/* 80364460 003600C0 39 06 00 01 */ addi r8, r6, 1 +/* 80364464 003600C4 80 03 00 04 */ lwz r0, 4(r3) +/* 80364468 003600C8 80 C3 00 14 */ lwz r6, 0x14(r3) +/* 8036446C 003600CC 38 E7 00 01 */ addi r7, r7, 1 +/* 80364470 003600D0 7D 65 4B 96 */ divwu r11, r5, r9 +/* 80364474 003600D4 7D 2B 49 D6 */ mullw r9, r11, r9 +/* 80364478 003600D8 7F C9 28 50 */ subf r30, r9, r5 +/* 8036447C 003600DC 7D 5E FB 96 */ divwu r10, r30, r31 +/* 80364480 003600E0 7D 2A F9 D6 */ mullw r9, r10, r31 +/* 80364484 003600E4 7C 0B 01 D6 */ mullw r0, r11, r0 +/* 80364488 003600E8 7D 29 F0 50 */ subf r9, r9, r30 +/* 8036448C 003600EC 7C 06 02 14 */ add r0, r6, r0 +/* 80364490 003600F0 7D 09 41 D6 */ mullw r8, r9, r8 +/* 80364494 003600F4 90 04 00 00 */ stw r0, 0(r4) +/* 80364498 003600F8 80 CC 00 0C */ lwz r6, 0xc(r12) +/* 8036449C 003600FC 7D 2A 39 D6 */ mullw r9, r10, r7 +/* 803644A0 00360100 48 00 00 38 */ b lbl_803644D8 +lbl_803644A4: +/* 803644A4 00360104 A0 E6 00 00 */ lhz r7, 0(r6) +/* 803644A8 00360108 7C 07 28 40 */ cmplw r7, r5 +/* 803644AC 0036010C 41 81 00 28 */ bgt lbl_803644D4 +/* 803644B0 00360110 A0 06 00 02 */ lhz r0, 2(r6) +/* 803644B4 00360114 7C 05 00 40 */ cmplw r5, r0 +/* 803644B8 00360118 41 81 00 1C */ bgt lbl_803644D4 +/* 803644BC 0036011C 7C A7 28 50 */ subf r5, r7, r5 +/* 803644C0 00360120 54 A0 10 3A */ slwi r0, r5, 2 +/* 803644C4 00360124 7C 05 00 50 */ subf r0, r5, r0 +/* 803644C8 00360128 7C A6 02 14 */ add r5, r6, r0 +/* 803644CC 0036012C 38 E5 00 08 */ addi r7, r5, 8 +/* 803644D0 00360130 48 00 00 14 */ b lbl_803644E4 +lbl_803644D4: +/* 803644D4 00360134 80 C6 00 04 */ lwz r6, 4(r6) +lbl_803644D8: +/* 803644D8 00360138 2C 06 00 00 */ cmpwi r6, 0 +/* 803644DC 0036013C 40 82 FF C8 */ bne lbl_803644A4 +/* 803644E0 00360140 38 EC 00 04 */ addi r7, r12, 4 +lbl_803644E4: +/* 803644E4 00360144 88 C7 00 00 */ lbz r6, 0(r7) +/* 803644E8 00360148 38 A8 00 01 */ addi r5, r8, 1 +/* 803644EC 0036014C 38 09 00 01 */ addi r0, r9, 1 +/* 803644F0 00360150 98 C4 00 04 */ stb r6, 4(r4) +/* 803644F4 00360154 88 C7 00 01 */ lbz r6, 1(r7) +/* 803644F8 00360158 98 C4 00 05 */ stb r6, 5(r4) +/* 803644FC 0036015C 88 C7 00 02 */ lbz r6, 2(r7) +/* 80364500 00360160 98 C4 00 06 */ stb r6, 6(r4) +/* 80364504 00360164 88 C3 00 01 */ lbz r6, 1(r3) +/* 80364508 00360168 98 C4 00 07 */ stb r6, 7(r4) +/* 8036450C 0036016C A0 C3 00 0A */ lhz r6, 0xa(r3) +/* 80364510 00360170 90 C4 00 08 */ stw r6, 8(r4) +/* 80364514 00360174 A0 C3 00 10 */ lhz r6, 0x10(r3) +/* 80364518 00360178 B0 C4 00 0C */ sth r6, 0xc(r4) +/* 8036451C 0036017C A0 63 00 12 */ lhz r3, 0x12(r3) +/* 80364520 00360180 B0 64 00 0E */ sth r3, 0xe(r4) +/* 80364524 00360184 B0 A4 00 10 */ sth r5, 0x10(r4) +/* 80364528 00360188 B0 04 00 12 */ sth r0, 0x12(r4) +/* 8036452C 0036018C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80364530 00360190 83 C1 00 08 */ lwz r30, 8(r1) +/* 80364534 00360194 38 21 00 10 */ addi r1, r1, 0x10 +/* 80364538 00360198 4E 80 00 20 */ blr diff --git a/asm/nw4r/ut/ut_ResFont.s b/asm/nw4r/ut/ut_ResFont.s index 4bb327f..525b316 100644 --- a/asm/nw4r/ut/ut_ResFont.s +++ b/asm/nw4r/ut/ut_ResFont.s @@ -9,7 +9,7 @@ __ct__Q34nw4r2ut7ResFontFv: /* 80364544 003601A4 90 01 00 14 */ stw r0, 0x14(r1) /* 80364548 003601A8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8036454C 003601AC 7C 7F 1B 78 */ mr r31, r3 -/* 80364550 003601B0 4B FF FA 1D */ bl func_80363F6C +/* 80364550 003601B0 4B FF FA 1D */ bl __ct__Q44nw4r2ut6detail11ResFontBaseFv /* 80364554 003601B4 3C 80 80 45 */ lis r4, lbl_8044C8B0@ha /* 80364558 003601B8 7F E3 FB 78 */ mr r3, r31 /* 8036455C 003601BC 38 84 C8 B0 */ addi r4, r4, lbl_8044C8B0@l @@ -32,7 +32,7 @@ __dt__Q34nw4r2ut7ResFontFv: /* 80364594 003601F4 7C 7E 1B 78 */ mr r30, r3 /* 80364598 003601F8 41 82 00 1C */ beq lbl_803645B4 /* 8036459C 003601FC 38 80 00 00 */ li r4, 0 -/* 803645A0 00360200 4B FF FA 11 */ bl func_80363FB0 +/* 803645A0 00360200 4B FF FA 11 */ bl __dt__Q44nw4r2ut6detail11ResFontBaseFv /* 803645A4 00360204 2C 1F 00 00 */ cmpwi r31, 0 /* 803645A8 00360208 40 81 00 0C */ ble lbl_803645B4 /* 803645AC 0036020C 7F C3 F3 78 */ mr r3, r30 @@ -121,7 +121,7 @@ lbl_803646BC: lbl_803646CC: /* 803646CC 0036032C 7F C3 F3 78 */ mr r3, r30 /* 803646D0 00360330 7F E4 FB 78 */ mr r4, r31 -/* 803646D4 00360334 4B FF F9 1D */ bl func_80363FF0 +/* 803646D4 00360334 4B FF F9 1D */ bl SetResourceBuffer__Q44nw4r2ut6detail11ResFontBaseFPvPQ34nw4r2ut15FontInformation /* 803646D8 00360338 81 9E 00 00 */ lwz r12, 0(r30) /* 803646DC 0036033C 7F C3 F3 78 */ mr r3, r30 /* 803646E0 00360340 81 8C 00 54 */ lwz r12, 0x54(r12) diff --git a/asm/text_10_3.s b/asm/text_10_3.s deleted file mode 100644 index 2b2ce20..0000000 --- a/asm/text_10_3.s +++ /dev/null @@ -1,449 +0,0 @@ -.include "macros.inc" - -.section .text, "ax" # 0x80006980 - 0x803E1E60 - -/* 80363F2C 0035FB8C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80363F30 0035FB90 7C 08 02 A6 */ mflr r0 -/* 80363F34 0035FB94 2C 03 00 00 */ cmpwi r3, 0 -/* 80363F38 0035FB98 90 01 00 14 */ stw r0, 0x14(r1) -/* 80363F3C 0035FB9C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80363F40 0035FBA0 7C 7F 1B 78 */ mr r31, r3 -/* 80363F44 0035FBA4 41 82 00 10 */ beq lbl_80363F54 -/* 80363F48 0035FBA8 2C 04 00 00 */ cmpwi r4, 0 -/* 80363F4C 0035FBAC 40 81 00 08 */ ble lbl_80363F54 -/* 80363F50 0035FBB0 4B E7 6B 69 */ bl func_801DAAB8 -lbl_80363F54: -/* 80363F54 0035FBB4 7F E3 FB 78 */ mr r3, r31 -/* 80363F58 0035FBB8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80363F5C 0035FBBC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80363F60 0035FBC0 7C 08 03 A6 */ mtlr r0 -/* 80363F64 0035FBC4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80363F68 0035FBC8 4E 80 00 20 */ blr - -.global func_80363F6C -func_80363F6C: -/* 80363F6C 0035FBCC 3C A0 80 45 */ lis r5, lbl_8044C7F0@ha -/* 80363F70 0035FBD0 3C 80 80 45 */ lis r4, lbl_8044C858@ha -/* 80363F74 0035FBD4 38 A5 C7 F0 */ addi r5, r5, lbl_8044C7F0@l -/* 80363F78 0035FBD8 3C E0 80 45 */ lis r7, lbl_80450004@ha -/* 80363F7C 0035FBDC 90 A3 00 00 */ stw r5, 0(r3) -/* 80363F80 0035FBE0 38 84 C8 58 */ addi r4, r4, lbl_8044C858@l -/* 80363F84 0035FBE4 38 00 00 00 */ li r0, 0 -/* 80363F88 0035FBE8 84 C7 C8 48 */ lwzu r6, -0x37b8(r7) -/* 80363F8C 0035FBEC 80 A7 00 04 */ lwz r5, lbl_80450004@l(r7) -/* 80363F90 0035FBF0 90 C3 00 04 */ stw r6, 4(r3) -/* 80363F94 0035FBF4 90 A3 00 08 */ stw r5, 8(r3) -/* 80363F98 0035FBF8 80 A7 00 08 */ lwz r5, 8(r7) -/* 80363F9C 0035FBFC 90 A3 00 0C */ stw r5, 0xc(r3) -/* 80363FA0 0035FC00 90 83 00 00 */ stw r4, 0(r3) -/* 80363FA4 0035FC04 90 03 00 10 */ stw r0, 0x10(r3) -/* 80363FA8 0035FC08 90 03 00 14 */ stw r0, 0x14(r3) -/* 80363FAC 0035FC0C 4E 80 00 20 */ blr - -.global func_80363FB0 -func_80363FB0: -/* 80363FB0 0035FC10 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80363FB4 0035FC14 7C 08 02 A6 */ mflr r0 -/* 80363FB8 0035FC18 2C 03 00 00 */ cmpwi r3, 0 -/* 80363FBC 0035FC1C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80363FC0 0035FC20 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80363FC4 0035FC24 7C 7F 1B 78 */ mr r31, r3 -/* 80363FC8 0035FC28 41 82 00 10 */ beq lbl_80363FD8 -/* 80363FCC 0035FC2C 2C 04 00 00 */ cmpwi r4, 0 -/* 80363FD0 0035FC30 40 81 00 08 */ ble lbl_80363FD8 -/* 80363FD4 0035FC34 4B E7 6A E5 */ bl func_801DAAB8 -lbl_80363FD8: -/* 80363FD8 0035FC38 7F E3 FB 78 */ mr r3, r31 -/* 80363FDC 0035FC3C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80363FE0 0035FC40 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80363FE4 0035FC44 7C 08 03 A6 */ mtlr r0 -/* 80363FE8 0035FC48 38 21 00 10 */ addi r1, r1, 0x10 -/* 80363FEC 0035FC4C 4E 80 00 20 */ blr - -.global func_80363FF0 -func_80363FF0: -/* 80363FF0 0035FC50 90 83 00 10 */ stw r4, 0x10(r3) -/* 80363FF4 0035FC54 90 A3 00 14 */ stw r5, 0x14(r3) -/* 80363FF8 0035FC58 4E 80 00 20 */ blr -/* 80363FFC 0035FC5C 80 63 00 14 */ lwz r3, 0x14(r3) -/* 80364000 0035FC60 88 63 00 15 */ lbz r3, 0x15(r3) -/* 80364004 0035FC64 4E 80 00 20 */ blr -/* 80364008 0035FC68 80 63 00 14 */ lwz r3, 0x14(r3) -/* 8036400C 0035FC6C 88 63 00 14 */ lbz r3, 0x14(r3) -/* 80364010 0035FC70 4E 80 00 20 */ blr -/* 80364014 0035FC74 80 63 00 14 */ lwz r3, 0x14(r3) -/* 80364018 0035FC78 88 63 00 16 */ lbz r3, 0x16(r3) -/* 8036401C 0035FC7C 4E 80 00 20 */ blr -/* 80364020 0035FC80 80 83 00 14 */ lwz r4, 0x14(r3) -/* 80364024 0035FC84 88 64 00 16 */ lbz r3, 0x16(r4) -/* 80364028 0035FC88 88 04 00 14 */ lbz r0, 0x14(r4) -/* 8036402C 0035FC8C 7C 63 00 50 */ subf r3, r3, r0 -/* 80364030 0035FC90 4E 80 00 20 */ blr -/* 80364034 0035FC94 80 63 00 14 */ lwz r3, 0x14(r3) -/* 80364038 0035FC98 80 63 00 08 */ lwz r3, 8(r3) -/* 8036403C 0035FC9C 88 63 00 02 */ lbz r3, 2(r3) -/* 80364040 0035FCA0 7C 63 07 74 */ extsb r3, r3 -/* 80364044 0035FCA4 4E 80 00 20 */ blr -/* 80364048 0035FCA8 80 63 00 14 */ lwz r3, 0x14(r3) -/* 8036404C 0035FCAC 80 63 00 08 */ lwz r3, 8(r3) -/* 80364050 0035FCB0 88 63 00 01 */ lbz r3, 1(r3) -/* 80364054 0035FCB4 4E 80 00 20 */ blr -/* 80364058 0035FCB8 80 63 00 14 */ lwz r3, 0x14(r3) -/* 8036405C 0035FCBC 80 63 00 08 */ lwz r3, 8(r3) -/* 80364060 0035FCC0 88 63 00 00 */ lbz r3, 0(r3) -/* 80364064 0035FCC4 4E 80 00 20 */ blr -/* 80364068 0035FCC8 80 63 00 14 */ lwz r3, 0x14(r3) -/* 8036406C 0035FCCC 80 63 00 08 */ lwz r3, 8(r3) -/* 80364070 0035FCD0 88 63 00 03 */ lbz r3, 3(r3) -/* 80364074 0035FCD4 4E 80 00 20 */ blr -/* 80364078 0035FCD8 38 60 00 02 */ li r3, 2 -/* 8036407C 0035FCDC 4E 80 00 20 */ blr -/* 80364080 0035FCE0 80 63 00 14 */ lwz r3, 0x14(r3) -/* 80364084 0035FCE4 80 63 00 08 */ lwz r3, 8(r3) -/* 80364088 0035FCE8 A0 63 00 0A */ lhz r3, 0xa(r3) -/* 8036408C 0035FCEC 4E 80 00 20 */ blr -/* 80364090 0035FCF0 80 63 00 14 */ lwz r3, 0x14(r3) -/* 80364094 0035FCF4 88 63 00 01 */ lbz r3, 1(r3) -/* 80364098 0035FCF8 7C 63 07 74 */ extsb r3, r3 -/* 8036409C 0035FCFC 4E 80 00 20 */ blr -/* 803640A0 0035FD00 80 83 00 14 */ lwz r4, 0x14(r3) -/* 803640A4 0035FD04 A0 04 00 04 */ lhz r0, 4(r4) -/* 803640A8 0035FD08 54 03 80 1E */ slwi r3, r0, 0x10 -/* 803640AC 0035FD0C 88 04 00 06 */ lbz r0, 6(r4) -/* 803640B0 0035FD10 50 03 44 2E */ rlwimi r3, r0, 8, 0x10, 0x17 -/* 803640B4 0035FD14 4E 80 00 20 */ blr -/* 803640B8 0035FD18 80 A3 00 14 */ lwz r5, 0x14(r3) -/* 803640BC 0035FD1C 88 04 00 00 */ lbz r0, 0(r4) -/* 803640C0 0035FD20 88 64 00 01 */ lbz r3, 1(r4) -/* 803640C4 0035FD24 98 05 00 04 */ stb r0, 4(r5) -/* 803640C8 0035FD28 88 04 00 02 */ lbz r0, 2(r4) -/* 803640CC 0035FD2C 98 65 00 05 */ stb r3, 5(r5) -/* 803640D0 0035FD30 98 05 00 06 */ stb r0, 6(r5) -/* 803640D4 0035FD34 4E 80 00 20 */ blr -/* 803640D8 0035FD38 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803640DC 0035FD3C 7C 08 02 A6 */ mflr r0 -/* 803640E0 0035FD40 7C 85 23 78 */ mr r5, r4 -/* 803640E4 0035FD44 90 01 00 14 */ stw r0, 0x14(r1) -/* 803640E8 0035FD48 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803640EC 0035FD4C 7C 7F 1B 78 */ mr r31, r3 -/* 803640F0 0035FD50 80 C3 00 14 */ lwz r6, 0x14(r3) -/* 803640F4 0035FD54 80 C6 00 10 */ lwz r6, 0x10(r6) -/* 803640F8 0035FD58 48 00 00 34 */ b lbl_8036412C -lbl_803640FC: -/* 803640FC 0035FD5C A0 06 00 00 */ lhz r0, 0(r6) -/* 80364100 0035FD60 7C 00 20 40 */ cmplw r0, r4 -/* 80364104 0035FD64 41 81 00 24 */ bgt lbl_80364128 -/* 80364108 0035FD68 A0 06 00 02 */ lhz r0, 2(r6) -/* 8036410C 0035FD6C 7C 04 00 40 */ cmplw r4, r0 -/* 80364110 0035FD70 41 81 00 18 */ bgt lbl_80364128 -/* 80364114 0035FD74 7F E3 FB 78 */ mr r3, r31 -/* 80364118 0035FD78 7C C4 33 78 */ mr r4, r6 -/* 8036411C 0035FD7C 48 00 02 49 */ bl func_80364364 -/* 80364120 0035FD80 7C 65 1B 78 */ mr r5, r3 -/* 80364124 0035FD84 48 00 00 18 */ b lbl_8036413C -lbl_80364128: -/* 80364128 0035FD88 80 C6 00 08 */ lwz r6, 8(r6) -lbl_8036412C: -/* 8036412C 0035FD8C 2C 06 00 00 */ cmpwi r6, 0 -/* 80364130 0035FD90 40 82 FF CC */ bne lbl_803640FC -/* 80364134 0035FD94 3C 60 00 01 */ lis r3, 0x0000FFFF@ha -/* 80364138 0035FD98 38 A3 FF FF */ addi r5, r3, 0x0000FFFF@l -lbl_8036413C: -/* 8036413C 0035FD9C 54 A0 04 3E */ clrlwi r0, r5, 0x10 -/* 80364140 0035FDA0 28 00 FF FF */ cmplwi r0, 0xffff -/* 80364144 0035FDA4 41 82 00 14 */ beq lbl_80364158 -/* 80364148 0035FDA8 80 9F 00 14 */ lwz r4, 0x14(r31) -/* 8036414C 0035FDAC 38 60 00 01 */ li r3, 1 -/* 80364150 0035FDB0 B0 A4 00 02 */ sth r5, 2(r4) -/* 80364154 0035FDB4 48 00 00 08 */ b lbl_8036415C -lbl_80364158: -/* 80364158 0035FDB8 38 60 00 00 */ li r3, 0 -lbl_8036415C: -/* 8036415C 0035FDBC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80364160 0035FDC0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80364164 0035FDC4 7C 08 03 A6 */ mtlr r0 -/* 80364168 0035FDC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8036416C 0035FDCC 4E 80 00 20 */ blr - -.global AnimatedModelExplodable_SetUnexplodedModelVisibility -AnimatedModelExplodable_SetUnexplodedModelVisibility: -/* 80364170 0035FDD0 80 63 00 14 */ lwz r3, 0x14(r3) -/* 80364174 0035FDD4 98 83 00 01 */ stb r4, 1(r3) -/* 80364178 0035FDD8 4E 80 00 20 */ blr -/* 8036417C 0035FDDC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80364180 0035FDE0 7C 08 02 A6 */ mflr r0 -/* 80364184 0035FDE4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80364188 0035FDE8 81 83 00 00 */ lwz r12, 0(r3) -/* 8036418C 0035FDEC 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80364190 0035FDF0 7D 89 03 A6 */ mtctr r12 -/* 80364194 0035FDF4 4E 80 04 21 */ bctrl -/* 80364198 0035FDF8 54 60 46 3E */ srwi r0, r3, 0x18 -/* 8036419C 0035FDFC 98 01 00 08 */ stb r0, 8(r1) -/* 803641A0 0035FE00 54 60 86 3E */ rlwinm r0, r3, 0x10, 0x18, 0x1f -/* 803641A4 0035FE04 98 01 00 09 */ stb r0, 9(r1) -/* 803641A8 0035FE08 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f -/* 803641AC 0035FE0C 7C 03 03 78 */ mr r3, r0 -/* 803641B0 0035FE10 98 01 00 0A */ stb r0, 0xa(r1) -/* 803641B4 0035FE14 7C 63 07 74 */ extsb r3, r3 -/* 803641B8 0035FE18 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803641BC 0035FE1C 7C 08 03 A6 */ mtlr r0 -/* 803641C0 0035FE20 38 21 00 10 */ addi r1, r1, 0x10 -/* 803641C4 0035FE24 4E 80 00 20 */ blr -/* 803641C8 0035FE28 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803641CC 0035FE2C 7C 08 02 A6 */ mflr r0 -/* 803641D0 0035FE30 80 C3 00 14 */ lwz r6, 0x14(r3) -/* 803641D4 0035FE34 7C 85 23 78 */ mr r5, r4 -/* 803641D8 0035FE38 90 01 00 14 */ stw r0, 0x14(r1) -/* 803641DC 0035FE3C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803641E0 0035FE40 7C 7F 1B 78 */ mr r31, r3 -/* 803641E4 0035FE44 80 C6 00 10 */ lwz r6, 0x10(r6) -/* 803641E8 0035FE48 48 00 00 30 */ b lbl_80364218 -lbl_803641EC: -/* 803641EC 0035FE4C A0 06 00 00 */ lhz r0, 0(r6) -/* 803641F0 0035FE50 7C 00 20 40 */ cmplw r0, r4 -/* 803641F4 0035FE54 41 81 00 20 */ bgt lbl_80364214 -/* 803641F8 0035FE58 A0 06 00 02 */ lhz r0, 2(r6) -/* 803641FC 0035FE5C 7C 04 00 40 */ cmplw r4, r0 -/* 80364200 0035FE60 41 81 00 14 */ bgt lbl_80364214 -/* 80364204 0035FE64 7F E3 FB 78 */ mr r3, r31 -/* 80364208 0035FE68 7C C4 33 78 */ mr r4, r6 -/* 8036420C 0035FE6C 48 00 01 59 */ bl func_80364364 -/* 80364210 0035FE70 48 00 00 18 */ b lbl_80364228 -lbl_80364214: -/* 80364214 0035FE74 80 C6 00 08 */ lwz r6, 8(r6) -lbl_80364218: -/* 80364218 0035FE78 2C 06 00 00 */ cmpwi r6, 0 -/* 8036421C 0035FE7C 40 82 FF D0 */ bne lbl_803641EC -/* 80364220 0035FE80 3C 60 00 01 */ lis r3, 0x0000FFFF@ha -/* 80364224 0035FE84 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l -lbl_80364228: -/* 80364228 0035FE88 54 60 04 3E */ clrlwi r0, r3, 0x10 -/* 8036422C 0035FE8C 28 00 FF FF */ cmplwi r0, 0xffff -/* 80364230 0035FE90 41 82 00 08 */ beq lbl_80364238 -/* 80364234 0035FE94 48 00 00 0C */ b lbl_80364240 -lbl_80364238: -/* 80364238 0035FE98 80 7F 00 14 */ lwz r3, 0x14(r31) -/* 8036423C 0035FE9C A0 63 00 02 */ lhz r3, 2(r3) -lbl_80364240: -/* 80364240 0035FEA0 80 DF 00 14 */ lwz r6, 0x14(r31) -/* 80364244 0035FEA4 54 63 04 3E */ clrlwi r3, r3, 0x10 -/* 80364248 0035FEA8 80 86 00 0C */ lwz r4, 0xc(r6) -/* 8036424C 0035FEAC 48 00 00 38 */ b lbl_80364284 -lbl_80364250: -/* 80364250 0035FEB0 A0 A4 00 00 */ lhz r5, 0(r4) -/* 80364254 0035FEB4 7C 05 18 40 */ cmplw r5, r3 -/* 80364258 0035FEB8 41 81 00 28 */ bgt lbl_80364280 -/* 8036425C 0035FEBC A0 04 00 02 */ lhz r0, 2(r4) -/* 80364260 0035FEC0 7C 03 00 40 */ cmplw r3, r0 -/* 80364264 0035FEC4 41 81 00 1C */ bgt lbl_80364280 -/* 80364268 0035FEC8 7C 65 18 50 */ subf r3, r5, r3 -/* 8036426C 0035FECC 54 60 10 3A */ slwi r0, r3, 2 -/* 80364270 0035FED0 7C 03 00 50 */ subf r0, r3, r0 -/* 80364274 0035FED4 7C 64 02 14 */ add r3, r4, r0 -/* 80364278 0035FED8 38 83 00 08 */ addi r4, r3, 8 -/* 8036427C 0035FEDC 48 00 00 14 */ b lbl_80364290 -lbl_80364280: -/* 80364280 0035FEE0 80 84 00 04 */ lwz r4, 4(r4) -lbl_80364284: -/* 80364284 0035FEE4 2C 04 00 00 */ cmpwi r4, 0 -/* 80364288 0035FEE8 40 82 FF C8 */ bne lbl_80364250 -/* 8036428C 0035FEEC 38 86 00 04 */ addi r4, r6, 4 -lbl_80364290: -/* 80364290 0035FEF0 A0 04 00 00 */ lhz r0, 0(r4) -/* 80364294 0035FEF4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80364298 0035FEF8 54 03 80 1E */ slwi r3, r0, 0x10 -/* 8036429C 0035FEFC 88 04 00 02 */ lbz r0, 2(r4) -/* 803642A0 0035FF00 50 03 44 2E */ rlwimi r3, r0, 8, 0x10, 0x17 -/* 803642A4 0035FF04 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803642A8 0035FF08 7C 08 03 A6 */ mtlr r0 -/* 803642AC 0035FF0C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803642B0 0035FF10 4E 80 00 20 */ blr -/* 803642B4 0035FF14 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803642B8 0035FF18 7C 08 02 A6 */ mflr r0 -/* 803642BC 0035FF1C 80 C3 00 14 */ lwz r6, 0x14(r3) -/* 803642C0 0035FF20 90 01 00 14 */ stw r0, 0x14(r1) -/* 803642C4 0035FF24 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803642C8 0035FF28 7C 9F 23 78 */ mr r31, r4 -/* 803642CC 0035FF2C 93 C1 00 08 */ stw r30, 8(r1) -/* 803642D0 0035FF30 7C 7E 1B 78 */ mr r30, r3 -/* 803642D4 0035FF34 80 86 00 10 */ lwz r4, 0x10(r6) -/* 803642D8 0035FF38 48 00 00 30 */ b lbl_80364308 -lbl_803642DC: -/* 803642DC 0035FF3C A0 04 00 00 */ lhz r0, 0(r4) -/* 803642E0 0035FF40 7C 00 28 40 */ cmplw r0, r5 -/* 803642E4 0035FF44 41 81 00 20 */ bgt lbl_80364304 -/* 803642E8 0035FF48 A0 04 00 02 */ lhz r0, 2(r4) -/* 803642EC 0035FF4C 7C 05 00 40 */ cmplw r5, r0 -/* 803642F0 0035FF50 41 81 00 14 */ bgt lbl_80364304 -/* 803642F4 0035FF54 7F C3 F3 78 */ mr r3, r30 -/* 803642F8 0035FF58 48 00 00 6D */ bl func_80364364 -/* 803642FC 0035FF5C 7C 65 1B 78 */ mr r5, r3 -/* 80364300 0035FF60 48 00 00 18 */ b lbl_80364318 -lbl_80364304: -/* 80364304 0035FF64 80 84 00 08 */ lwz r4, 8(r4) -lbl_80364308: -/* 80364308 0035FF68 2C 04 00 00 */ cmpwi r4, 0 -/* 8036430C 0035FF6C 40 82 FF D0 */ bne lbl_803642DC -/* 80364310 0035FF70 3C 60 00 01 */ lis r3, 0x0000FFFF@ha -/* 80364314 0035FF74 38 A3 FF FF */ addi r5, r3, 0x0000FFFF@l -lbl_80364318: -/* 80364318 0035FF78 54 A0 04 3E */ clrlwi r0, r5, 0x10 -/* 8036431C 0035FF7C 7F C3 F3 78 */ mr r3, r30 -/* 80364320 0035FF80 28 00 FF FF */ cmplwi r0, 0xffff -/* 80364324 0035FF84 7F E4 FB 78 */ mr r4, r31 -/* 80364328 0035FF88 41 82 00 08 */ beq lbl_80364330 -/* 8036432C 0035FF8C 48 00 00 0C */ b lbl_80364338 -lbl_80364330: -/* 80364330 0035FF90 80 BE 00 14 */ lwz r5, 0x14(r30) -/* 80364334 0035FF94 A0 A5 00 02 */ lhz r5, 2(r5) -lbl_80364338: -/* 80364338 0035FF98 54 A5 04 3E */ clrlwi r5, r5, 0x10 -/* 8036433C 0035FF9C 48 00 00 FD */ bl func_80364438 -/* 80364340 0035FFA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80364344 0035FFA4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80364348 0035FFA8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8036434C 0035FFAC 7C 08 03 A6 */ mtlr r0 -/* 80364350 0035FFB0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80364354 0035FFB4 4E 80 00 20 */ blr - -.global EmissionController_IsLingering -EmissionController_IsLingering: -/* 80364358 0035FFB8 80 63 00 14 */ lwz r3, 0x14(r3) -/* 8036435C 0035FFBC 88 63 00 07 */ lbz r3, 7(r3) -/* 80364360 0035FFC0 4E 80 00 20 */ blr - -.global func_80364364 -func_80364364: -/* 80364364 0035FFC4 A0 04 00 04 */ lhz r0, 4(r4) -/* 80364368 0035FFC8 3C 60 00 01 */ lis r3, 0x0000FFFF@ha -/* 8036436C 0035FFCC 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l -/* 80364370 0035FFD0 2C 00 00 01 */ cmpwi r0, 1 -/* 80364374 0035FFD4 41 82 00 38 */ beq lbl_803643AC -/* 80364378 0035FFD8 40 80 00 10 */ bge lbl_80364388 -/* 8036437C 0035FFDC 2C 00 00 00 */ cmpwi r0, 0 -/* 80364380 0035FFE0 40 80 00 14 */ bge lbl_80364394 -/* 80364384 0035FFE4 4E 80 00 20 */ blr -lbl_80364388: -/* 80364388 0035FFE8 2C 00 00 03 */ cmpwi r0, 3 -/* 8036438C 0035FFEC 4C 80 00 20 */ bgelr -/* 80364390 0035FFF0 48 00 00 34 */ b lbl_803643C4 -lbl_80364394: -/* 80364394 0035FFF4 A0 04 00 00 */ lhz r0, 0(r4) -/* 80364398 0035FFF8 A0 64 00 0C */ lhz r3, 0xc(r4) -/* 8036439C 0035FFFC 7C 00 28 50 */ subf r0, r0, r5 -/* 803643A0 00360000 7C 03 02 14 */ add r0, r3, r0 -/* 803643A4 00360004 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 803643A8 00360008 4E 80 00 20 */ blr -lbl_803643AC: -/* 803643AC 0036000C A0 04 00 00 */ lhz r0, 0(r4) -/* 803643B0 00360010 7C 00 28 50 */ subf r0, r0, r5 -/* 803643B4 00360014 54 00 08 3C */ slwi r0, r0, 1 -/* 803643B8 00360018 7C 64 02 14 */ add r3, r4, r0 -/* 803643BC 0036001C A0 63 00 0C */ lhz r3, 0xc(r3) -/* 803643C0 00360020 4E 80 00 20 */ blr -lbl_803643C4: -/* 803643C4 00360024 38 C4 00 0C */ addi r6, r4, 0xc -/* 803643C8 00360028 A0 84 00 0C */ lhz r4, 0xc(r4) -/* 803643CC 0036002C 38 E6 00 02 */ addi r7, r6, 2 -/* 803643D0 00360030 38 04 FF FF */ addi r0, r4, -1 -/* 803643D4 00360034 54 00 10 3A */ slwi r0, r0, 2 -/* 803643D8 00360038 7C 86 02 14 */ add r4, r6, r0 -/* 803643DC 0036003C 38 C4 00 02 */ addi r6, r4, 2 -/* 803643E0 00360040 48 00 00 4C */ b lbl_8036442C -lbl_803643E4: -/* 803643E4 00360044 7C 07 30 50 */ subf r0, r7, r6 -/* 803643E8 00360048 7C 00 16 70 */ srawi r0, r0, 2 -/* 803643EC 0036004C 7C 80 01 94 */ addze r4, r0 -/* 803643F0 00360050 54 80 0F FE */ srwi r0, r4, 0x1f -/* 803643F4 00360054 7C 00 22 14 */ add r0, r0, r4 -/* 803643F8 00360058 54 00 08 3A */ rlwinm r0, r0, 1, 0, 0x1d -/* 803643FC 0036005C 7C 87 02 14 */ add r4, r7, r0 -/* 80364400 00360060 7C 07 02 2E */ lhzx r0, r7, r0 -/* 80364404 00360064 7C 00 28 40 */ cmplw r0, r5 -/* 80364408 00360068 40 80 00 0C */ bge lbl_80364414 -/* 8036440C 0036006C 38 E4 00 04 */ addi r7, r4, 4 -/* 80364410 00360070 48 00 00 1C */ b lbl_8036442C -lbl_80364414: -/* 80364414 00360074 7C 05 00 40 */ cmplw r5, r0 -/* 80364418 00360078 40 80 00 0C */ bge lbl_80364424 -/* 8036441C 0036007C 38 C4 FF FC */ addi r6, r4, -4 -/* 80364420 00360080 48 00 00 0C */ b lbl_8036442C -lbl_80364424: -/* 80364424 00360084 A0 64 00 02 */ lhz r3, 2(r4) -/* 80364428 00360088 4E 80 00 20 */ blr -lbl_8036442C: -/* 8036442C 0036008C 7C 07 30 40 */ cmplw r7, r6 -/* 80364430 00360090 40 81 FF B4 */ ble lbl_803643E4 -/* 80364434 00360094 4E 80 00 20 */ blr - -.global func_80364438 -func_80364438: -/* 80364438 00360098 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8036443C 0036009C 81 83 00 14 */ lwz r12, 0x14(r3) -/* 80364440 003600A0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80364444 003600A4 93 C1 00 08 */ stw r30, 8(r1) -/* 80364448 003600A8 80 6C 00 08 */ lwz r3, 8(r12) -/* 8036444C 003600AC A3 E3 00 0C */ lhz r31, 0xc(r3) -/* 80364450 003600B0 A0 03 00 0E */ lhz r0, 0xe(r3) -/* 80364454 003600B4 88 C3 00 00 */ lbz r6, 0(r3) -/* 80364458 003600B8 7D 3F 01 D6 */ mullw r9, r31, r0 -/* 8036445C 003600BC 88 E3 00 01 */ lbz r7, 1(r3) -/* 80364460 003600C0 39 06 00 01 */ addi r8, r6, 1 -/* 80364464 003600C4 80 03 00 04 */ lwz r0, 4(r3) -/* 80364468 003600C8 80 C3 00 14 */ lwz r6, 0x14(r3) -/* 8036446C 003600CC 38 E7 00 01 */ addi r7, r7, 1 -/* 80364470 003600D0 7D 65 4B 96 */ divwu r11, r5, r9 -/* 80364474 003600D4 7D 2B 49 D6 */ mullw r9, r11, r9 -/* 80364478 003600D8 7F C9 28 50 */ subf r30, r9, r5 -/* 8036447C 003600DC 7D 5E FB 96 */ divwu r10, r30, r31 -/* 80364480 003600E0 7D 2A F9 D6 */ mullw r9, r10, r31 -/* 80364484 003600E4 7C 0B 01 D6 */ mullw r0, r11, r0 -/* 80364488 003600E8 7D 29 F0 50 */ subf r9, r9, r30 -/* 8036448C 003600EC 7C 06 02 14 */ add r0, r6, r0 -/* 80364490 003600F0 7D 09 41 D6 */ mullw r8, r9, r8 -/* 80364494 003600F4 90 04 00 00 */ stw r0, 0(r4) -/* 80364498 003600F8 80 CC 00 0C */ lwz r6, 0xc(r12) -/* 8036449C 003600FC 7D 2A 39 D6 */ mullw r9, r10, r7 -/* 803644A0 00360100 48 00 00 38 */ b lbl_803644D8 -lbl_803644A4: -/* 803644A4 00360104 A0 E6 00 00 */ lhz r7, 0(r6) -/* 803644A8 00360108 7C 07 28 40 */ cmplw r7, r5 -/* 803644AC 0036010C 41 81 00 28 */ bgt lbl_803644D4 -/* 803644B0 00360110 A0 06 00 02 */ lhz r0, 2(r6) -/* 803644B4 00360114 7C 05 00 40 */ cmplw r5, r0 -/* 803644B8 00360118 41 81 00 1C */ bgt lbl_803644D4 -/* 803644BC 0036011C 7C A7 28 50 */ subf r5, r7, r5 -/* 803644C0 00360120 54 A0 10 3A */ slwi r0, r5, 2 -/* 803644C4 00360124 7C 05 00 50 */ subf r0, r5, r0 -/* 803644C8 00360128 7C A6 02 14 */ add r5, r6, r0 -/* 803644CC 0036012C 38 E5 00 08 */ addi r7, r5, 8 -/* 803644D0 00360130 48 00 00 14 */ b lbl_803644E4 -lbl_803644D4: -/* 803644D4 00360134 80 C6 00 04 */ lwz r6, 4(r6) -lbl_803644D8: -/* 803644D8 00360138 2C 06 00 00 */ cmpwi r6, 0 -/* 803644DC 0036013C 40 82 FF C8 */ bne lbl_803644A4 -/* 803644E0 00360140 38 EC 00 04 */ addi r7, r12, 4 -lbl_803644E4: -/* 803644E4 00360144 88 C7 00 00 */ lbz r6, 0(r7) -/* 803644E8 00360148 38 A8 00 01 */ addi r5, r8, 1 -/* 803644EC 0036014C 38 09 00 01 */ addi r0, r9, 1 -/* 803644F0 00360150 98 C4 00 04 */ stb r6, 4(r4) -/* 803644F4 00360154 88 C7 00 01 */ lbz r6, 1(r7) -/* 803644F8 00360158 98 C4 00 05 */ stb r6, 5(r4) -/* 803644FC 0036015C 88 C7 00 02 */ lbz r6, 2(r7) -/* 80364500 00360160 98 C4 00 06 */ stb r6, 6(r4) -/* 80364504 00360164 88 C3 00 01 */ lbz r6, 1(r3) -/* 80364508 00360168 98 C4 00 07 */ stb r6, 7(r4) -/* 8036450C 0036016C A0 C3 00 0A */ lhz r6, 0xa(r3) -/* 80364510 00360170 90 C4 00 08 */ stw r6, 8(r4) -/* 80364514 00360174 A0 C3 00 10 */ lhz r6, 0x10(r3) -/* 80364518 00360178 B0 C4 00 0C */ sth r6, 0xc(r4) -/* 8036451C 0036017C A0 63 00 12 */ lhz r3, 0x12(r3) -/* 80364520 00360180 B0 64 00 0E */ sth r3, 0xe(r4) -/* 80364524 00360184 B0 A4 00 10 */ sth r5, 0x10(r4) -/* 80364528 00360188 B0 04 00 12 */ sth r0, 0x12(r4) -/* 8036452C 0036018C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80364530 00360190 83 C1 00 08 */ lwz r30, 8(r1) -/* 80364534 00360194 38 21 00 10 */ addi r1, r1, 0x10 -/* 80364538 00360198 4E 80 00 20 */ blr diff --git a/obj_files.mk b/obj_files.mk index 562aae5..41b9884 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -488,7 +488,7 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/nw4r/ut/ut_DvdFileStream.o \ $(BUILD_DIR)/asm/nw4r/ut/ut_DvdLockedFileStream.o \ $(BUILD_DIR)/asm/nw4r/ut/ut_Font.o \ - $(BUILD_DIR)/asm/text_10_3.o \ + $(BUILD_DIR)/asm/nw4r/ut/detail/ut_ResFontBase.o \ $(BUILD_DIR)/asm/nw4r/ut/ut_ResFont.o \ $(BUILD_DIR)/asm/nw4r/ut/ut_CharWriter.o \ $(BUILD_DIR)/asm/nw4r/ut/ut_TextWriterBase.o \ -- cgit v1.2.3