.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 lbl_8023EE6C: /* 8023EE6C 0023AACC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023EE70 0023AAD0 7C 08 02 A6 */ mflr r0 /* 8023EE74 0023AAD4 90 01 00 14 */ stw r0, 0x14(r1) /* 8023EE78 0023AAD8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023EE7C 0023AADC 80 6D A4 C8 */ lwz r3, lbl_8063F788-_SDA_BASE_(r13) /* 8023EE80 0023AAE0 2C 03 00 00 */ cmpwi r3, 0 /* 8023EE84 0023AAE4 41 82 00 A4 */ beq lbl_8023EF28 /* 8023EE88 0023AAE8 88 03 00 81 */ lbz r0, 0x81(r3) /* 8023EE8C 0023AAEC 28 00 00 01 */ cmplwi r0, 1 /* 8023EE90 0023AAF0 40 82 00 1C */ bne lbl_8023EEAC /* 8023EE94 0023AAF4 88 83 00 80 */ lbz r4, 0x80(r3) /* 8023EE98 0023AAF8 2C 04 00 00 */ cmpwi r4, 0 /* 8023EE9C 0023AAFC 41 82 00 10 */ beq lbl_8023EEAC /* 8023EEA0 0023AB00 38 04 FF FF */ addi r0, r4, -1 /* 8023EEA4 0023AB04 98 03 00 80 */ stb r0, 0x80(r3) /* 8023EEA8 0023AB08 48 00 00 80 */ b lbl_8023EF28 lbl_8023EEAC: /* 8023EEAC 0023AB0C 38 80 00 02 */ li r4, 2 /* 8023EEB0 0023AB10 48 00 0D 5D */ bl func_8023FC0C /* 8023EEB4 0023AB14 2C 03 00 00 */ cmpwi r3, 0 /* 8023EEB8 0023AB18 7C 7F 1B 78 */ mr r31, r3 /* 8023EEBC 0023AB1C 40 82 00 18 */ bne lbl_8023EED4 /* 8023EEC0 0023AB20 80 8D A4 C8 */ lwz r4, lbl_8063F788-_SDA_BASE_(r13) /* 8023EEC4 0023AB24 80 64 00 84 */ lwz r3, 0x84(r4) /* 8023EEC8 0023AB28 38 03 00 01 */ addi r0, r3, 1 /* 8023EECC 0023AB2C 90 04 00 84 */ stw r0, 0x84(r4) /* 8023EED0 0023AB30 48 00 00 58 */ b lbl_8023EF28 lbl_8023EED4: /* 8023EED4 0023AB34 80 8D A4 C8 */ lwz r4, lbl_8063F788-_SDA_BASE_(r13) /* 8023EED8 0023AB38 38 00 00 00 */ li r0, 0 /* 8023EEDC 0023AB3C 98 04 00 5B */ stb r0, 0x5b(r4) /* 8023EEE0 0023AB40 80 AD A4 C8 */ lwz r5, lbl_8063F788-_SDA_BASE_(r13) /* 8023EEE4 0023AB44 80 85 00 88 */ lwz r4, 0x88(r5) /* 8023EEE8 0023AB48 38 04 00 01 */ addi r0, r4, 1 /* 8023EEEC 0023AB4C 90 05 00 88 */ stw r0, 0x88(r5) /* 8023EEF0 0023AB50 80 63 00 04 */ lwz r3, 4(r3) /* 8023EEF4 0023AB54 48 03 A8 C9 */ bl VISetNextFrameBuffer /* 8023EEF8 0023AB58 48 03 A7 B1 */ bl VIFlush /* 8023EEFC 0023AB5C 38 60 00 01 */ li r3, 1 /* 8023EF00 0023AB60 38 00 00 03 */ li r0, 3 /* 8023EF04 0023AB64 90 7F 00 00 */ stw r3, 0(r31) /* 8023EF08 0023AB68 80 6D A4 C8 */ lwz r3, lbl_8063F788-_SDA_BASE_(r13) /* 8023EF0C 0023AB6C 80 63 00 54 */ lwz r3, 0x54(r3) /* 8023EF10 0023AB70 90 03 00 00 */ stw r0, 0(r3) /* 8023EF14 0023AB74 80 6D A4 C8 */ lwz r3, lbl_8063F788-_SDA_BASE_(r13) /* 8023EF18 0023AB78 93 E3 00 54 */ stw r31, 0x54(r3) /* 8023EF1C 0023AB7C 80 6D A4 C8 */ lwz r3, lbl_8063F788-_SDA_BASE_(r13) /* 8023EF20 0023AB80 80 03 00 7C */ lwz r0, 0x7c(r3) /* 8023EF24 0023AB84 98 03 00 80 */ stb r0, 0x80(r3) lbl_8023EF28: /* 8023EF28 0023AB88 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023EF2C 0023AB8C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023EF30 0023AB90 7C 08 03 A6 */ mtlr r0 /* 8023EF34 0023AB94 38 21 00 10 */ addi r1, r1, 0x10 /* 8023EF38 0023AB98 4E 80 00 20 */ blr lbl_8023EF3C: /* 8023EF3C 0023AB9C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023EF40 0023ABA0 7C 08 02 A6 */ mflr r0 /* 8023EF44 0023ABA4 90 01 00 14 */ stw r0, 0x14(r1) /* 8023EF48 0023ABA8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023EF4C 0023ABAC 80 AD A4 C8 */ lwz r5, lbl_8063F788-_SDA_BASE_(r13) /* 8023EF50 0023ABB0 2C 05 00 00 */ cmpwi r5, 0 /* 8023EF54 0023ABB4 41 82 00 48 */ beq lbl_8023EF9C /* 8023EF58 0023ABB8 80 85 00 6C */ lwz r4, 0x6c(r5) /* 8023EF5C 0023ABBC 38 04 00 01 */ addi r0, r4, 1 /* 8023EF60 0023ABC0 90 05 00 6C */ stw r0, 0x6c(r5) /* 8023EF64 0023ABC4 80 8D A4 C8 */ lwz r4, lbl_8063F788-_SDA_BASE_(r13) /* 8023EF68 0023ABC8 80 04 00 74 */ lwz r0, 0x74(r4) /* 8023EF6C 0023ABCC 2C 00 00 00 */ cmpwi r0, 0 /* 8023EF70 0023ABD0 41 82 00 2C */ beq lbl_8023EF9C /* 8023EF74 0023ABD4 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13) /* 8023EF78 0023ABD8 38 00 00 00 */ li r0, 0 /* 8023EF7C 0023ABDC 8B E4 16 F9 */ lbz r31, 0x16f9(r4) /* 8023EF80 0023ABE0 98 04 16 F9 */ stb r0, 0x16f9(r4) /* 8023EF84 0023ABE4 80 8D A4 C8 */ lwz r4, lbl_8063F788-_SDA_BASE_(r13) /* 8023EF88 0023ABE8 81 84 00 74 */ lwz r12, 0x74(r4) /* 8023EF8C 0023ABEC 7D 89 03 A6 */ mtctr r12 /* 8023EF90 0023ABF0 4E 80 04 21 */ bctrl /* 8023EF94 0023ABF4 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023EF98 0023ABF8 9B E3 16 F9 */ stb r31, 0x16f9(r3) lbl_8023EF9C: /* 8023EF9C 0023ABFC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023EFA0 0023AC00 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023EFA4 0023AC04 7C 08 03 A6 */ mtlr r0 /* 8023EFA8 0023AC08 38 21 00 10 */ addi r1, r1, 0x10 /* 8023EFAC 0023AC0C 4E 80 00 20 */ blr .global func_8023EFB0 func_8023EFB0: /* 8023EFB0 0023AC10 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8023EFB4 0023AC14 7C 08 02 A6 */ mflr r0 /* 8023EFB8 0023AC18 90 01 00 34 */ stw r0, 0x34(r1) /* 8023EFBC 0023AC1C 39 61 00 30 */ addi r11, r1, 0x30 /* 8023EFC0 0023AC20 4B F8 81 61 */ bl _savegpr_25 /* 8023EFC4 0023AC24 3C E0 80 42 */ lis r7, lbl_8042491C@ha /* 8023EFC8 0023AC28 38 00 00 00 */ li r0, 0 /* 8023EFCC 0023AC2C 38 E7 49 1C */ addi r7, r7, lbl_8042491C@l /* 8023EFD0 0023AC30 2C 06 00 01 */ cmpwi r6, 1 /* 8023EFD4 0023AC34 90 E3 00 D8 */ stw r7, 0xd8(r3) /* 8023EFD8 0023AC38 7C 7F 1B 78 */ mr r31, r3 /* 8023EFDC 0023AC3C 39 60 00 3C */ li r11, 0x3c /* 8023EFE0 0023AC40 90 03 00 54 */ stw r0, 0x54(r3) /* 8023EFE4 0023AC44 98 83 00 58 */ stb r4, 0x58(r3) /* 8023EFE8 0023AC48 40 82 00 08 */ bne lbl_8023EFF0 /* 8023EFEC 0023AC4C 39 60 00 32 */ li r11, 0x32 lbl_8023EFF0: /* 8023EFF0 0023AC50 3C 00 43 30 */ lis r0, 0x4330 /* 8023EFF4 0023AC54 3B A0 00 00 */ li r29, 0 /* 8023EFF8 0023AC58 90 01 00 08 */ stw r0, 8(r1) /* 8023EFFC 0023AC5C 39 40 00 01 */ li r10, 1 /* 8023F000 0023AC60 C0 82 9D EC */ lfs f4, lbl_806423EC-_SDA2_BASE_(r2) /* 8023F004 0023AC64 39 20 02 10 */ li r9, 0x210 /* 8023F008 0023AC68 91 61 00 0C */ stw r11, 0xc(r1) /* 8023F00C 0023AC6C 39 00 00 0A */ li r8, 0xa /* 8023F010 0023AC70 C8 42 9E 08 */ lfd f2, lbl_80642408-_SDA2_BASE_(r2) /* 8023F014 0023AC74 38 E0 02 80 */ li r7, 0x280 /* 8023F018 0023AC78 C8 21 00 08 */ lfd f1, 8(r1) /* 8023F01C 0023AC7C 38 00 01 E0 */ li r0, 0x1e0 /* 8023F020 0023AC80 C0 02 9E 00 */ lfs f0, lbl_80642400-_SDA2_BASE_(r2) /* 8023F024 0023AC84 2C 04 00 00 */ cmpwi r4, 0 /* 8023F028 0023AC88 EC 21 10 28 */ fsubs f1, f1, f2 /* 8023F02C 0023AC8C 93 A3 00 C0 */ stw r29, 0xc0(r3) /* 8023F030 0023AC90 C0 A2 9D E8 */ lfs f5, lbl_806423E8-_SDA2_BASE_(r2) /* 8023F034 0023AC94 93 A3 00 C4 */ stw r29, 0xc4(r3) /* 8023F038 0023AC98 EC 01 00 24 */ fdivs f0, f1, f0 /* 8023F03C 0023AC9C C8 62 9D F0 */ lfd f3, lbl_806423F0-_SDA2_BASE_(r2) /* 8023F040 0023ACA0 93 A3 00 A8 */ stw r29, 0xa8(r3) /* 8023F044 0023ACA4 C0 42 9D F8 */ lfs f2, lbl_806423F8-_SDA2_BASE_(r2) /* 8023F048 0023ACA8 93 A3 00 AC */ stw r29, 0xac(r3) /* 8023F04C 0023ACAC C0 22 9D FC */ lfs f1, lbl_806423FC-_SDA2_BASE_(r2) /* 8023F050 0023ACB0 93 A3 00 B0 */ stw r29, 0xb0(r3) /* 8023F054 0023ACB4 93 A3 00 B4 */ stw r29, 0xb4(r3) /* 8023F058 0023ACB8 99 63 00 59 */ stb r11, 0x59(r3) /* 8023F05C 0023ACBC 9B A3 00 5A */ stb r29, 0x5a(r3) /* 8023F060 0023ACC0 99 43 00 5B */ stb r10, 0x5b(r3) /* 8023F064 0023ACC4 B0 A3 00 5C */ sth r5, 0x5c(r3) /* 8023F068 0023ACC8 B1 23 00 5E */ sth r9, 0x5e(r3) /* 8023F06C 0023ACCC 93 A3 00 60 */ stw r29, 0x60(r3) /* 8023F070 0023ACD0 93 A3 00 64 */ stw r29, 0x64(r3) /* 8023F074 0023ACD4 D0 A3 00 68 */ stfs f5, 0x68(r3) /* 8023F078 0023ACD8 93 A3 00 6C */ stw r29, 0x6c(r3) /* 8023F07C 0023ACDC 90 C3 00 70 */ stw r6, 0x70(r3) /* 8023F080 0023ACE0 93 A3 00 74 */ stw r29, 0x74(r3) /* 8023F084 0023ACE4 99 03 00 78 */ stb r8, 0x78(r3) /* 8023F088 0023ACE8 9B A3 00 79 */ stb r29, 0x79(r3) /* 8023F08C 0023ACEC 9B A3 00 7A */ stb r29, 0x7a(r3) /* 8023F090 0023ACF0 93 A3 00 7C */ stw r29, 0x7c(r3) /* 8023F094 0023ACF4 9B A3 00 80 */ stb r29, 0x80(r3) /* 8023F098 0023ACF8 99 43 00 81 */ stb r10, 0x81(r3) /* 8023F09C 0023ACFC 9B A3 00 82 */ stb r29, 0x82(r3) /* 8023F0A0 0023AD00 9B A3 00 83 */ stb r29, 0x83(r3) /* 8023F0A4 0023AD04 93 A3 00 84 */ stw r29, 0x84(r3) /* 8023F0A8 0023AD08 93 A3 00 88 */ stw r29, 0x88(r3) /* 8023F0AC 0023AD0C D0 83 00 8C */ stfs f4, 0x8c(r3) /* 8023F0B0 0023AD10 D0 83 00 90 */ stfs f4, 0x90(r3) /* 8023F0B4 0023AD14 93 A3 00 9C */ stw r29, 0x9c(r3) /* 8023F0B8 0023AD18 93 A3 00 98 */ stw r29, 0x98(r3) /* 8023F0BC 0023AD1C D8 63 00 A0 */ stfd f3, 0xa0(r3) /* 8023F0C0 0023AD20 93 A3 00 B8 */ stw r29, 0xb8(r3) /* 8023F0C4 0023AD24 93 A3 00 BC */ stw r29, 0xbc(r3) /* 8023F0C8 0023AD28 D0 83 00 A8 */ stfs f4, 0xa8(r3) /* 8023F0CC 0023AD2C D0 83 00 AC */ stfs f4, 0xac(r3) /* 8023F0D0 0023AD30 D0 43 00 B0 */ stfs f2, 0xb0(r3) /* 8023F0D4 0023AD34 D0 23 00 B4 */ stfs f1, 0xb4(r3) /* 8023F0D8 0023AD38 B3 A3 00 C0 */ sth r29, 0xc0(r3) /* 8023F0DC 0023AD3C B3 A3 00 C2 */ sth r29, 0xc2(r3) /* 8023F0E0 0023AD40 B0 E3 00 C4 */ sth r7, 0xc4(r3) /* 8023F0E4 0023AD44 B0 03 00 C6 */ sth r0, 0xc6(r3) /* 8023F0E8 0023AD48 93 A3 00 C8 */ stw r29, 0xc8(r3) /* 8023F0EC 0023AD4C 93 A3 00 CC */ stw r29, 0xcc(r3) /* 8023F0F0 0023AD50 D0 0D 86 C8 */ stfs f0, lbl_8063D988-_SDA_BASE_(r13) /* 8023F0F4 0023AD54 40 82 00 0C */ bne lbl_8023F100 /* 8023F0F8 0023AD58 7F E3 FB 78 */ mr r3, r31 /* 8023F0FC 0023AD5C 48 00 02 40 */ b lbl_8023F33C lbl_8023F100: /* 8023F100 0023AD60 28 04 00 03 */ cmplwi r4, 3 /* 8023F104 0023AD64 40 81 00 0C */ ble lbl_8023F110 /* 8023F108 0023AD68 7F E3 FB 78 */ mr r3, r31 /* 8023F10C 0023AD6C 48 00 02 30 */ b lbl_8023F33C lbl_8023F110: /* 8023F110 0023AD70 28 05 02 10 */ cmplwi r5, 0x210 /* 8023F114 0023AD74 40 81 00 0C */ ble lbl_8023F120 /* 8023F118 0023AD78 7F E3 FB 78 */ mr r3, r31 /* 8023F11C 0023AD7C 48 00 02 20 */ b lbl_8023F33C lbl_8023F120: /* 8023F120 0023AD80 48 03 90 BD */ bl VIInit /* 8023F124 0023AD84 38 00 00 3C */ li r0, 0x3c /* 8023F128 0023AD88 98 1F 00 59 */ stb r0, 0x59(r31) /* 8023F12C 0023AD8C 48 0A D3 89 */ bl SCGetProgressiveMode /* 8023F130 0023AD90 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8023F134 0023AD94 28 00 00 01 */ cmplwi r0, 1 /* 8023F138 0023AD98 40 82 00 30 */ bne lbl_8023F168 /* 8023F13C 0023AD9C 48 03 A9 59 */ bl VIGetDTVStatus /* 8023F140 0023ADA0 28 03 00 01 */ cmplwi r3, 1 /* 8023F144 0023ADA4 40 82 00 24 */ bne lbl_8023F168 /* 8023F148 0023ADA8 48 03 A8 ED */ bl VIGetScanMode /* 8023F14C 0023ADAC 48 03 A8 89 */ bl VIGetTvFormat /* 8023F150 0023ADB0 2C 03 00 00 */ cmpwi r3, 0 /* 8023F154 0023ADB4 3B 40 00 02 */ li r26, 2 /* 8023F158 0023ADB8 40 82 00 08 */ bne lbl_8023F160 /* 8023F15C 0023ADBC 7F BA EB 78 */ mr r26, r29 lbl_8023F160: /* 8023F160 0023ADC0 3B 20 00 01 */ li r25, 1 /* 8023F164 0023ADC4 48 00 00 48 */ b lbl_8023F1AC lbl_8023F168: /* 8023F168 0023ADC8 48 03 A8 6D */ bl VIGetTvFormat /* 8023F16C 0023ADCC 2C 03 00 00 */ cmpwi r3, 0 /* 8023F170 0023ADD0 40 82 00 0C */ bne lbl_8023F17C /* 8023F174 0023ADD4 3B 40 00 00 */ li r26, 0 /* 8023F178 0023ADD8 48 00 00 30 */ b lbl_8023F1A8 lbl_8023F17C: /* 8023F17C 0023ADDC 48 0A D2 6D */ bl SCGetEuRgb60Mode /* 8023F180 0023ADE0 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8023F184 0023ADE4 28 00 00 01 */ cmplwi r0, 1 /* 8023F188 0023ADE8 40 82 00 10 */ bne lbl_8023F198 /* 8023F18C 0023ADEC 48 03 A8 49 */ bl VIGetTvFormat /* 8023F190 0023ADF0 3B 40 00 02 */ li r26, 2 /* 8023F194 0023ADF4 48 00 00 14 */ b lbl_8023F1A8 lbl_8023F198: /* 8023F198 0023ADF8 48 03 A8 3D */ bl VIGetTvFormat /* 8023F19C 0023ADFC 38 00 00 32 */ li r0, 0x32 /* 8023F1A0 0023AE00 3B 40 00 01 */ li r26, 1 /* 8023F1A4 0023AE04 98 1F 00 59 */ stb r0, 0x59(r31) lbl_8023F1A8: /* 8023F1A8 0023AE08 3B 20 00 00 */ li r25, 0 lbl_8023F1AC: /* 8023F1AC 0023AE0C 48 0A D1 75 */ bl SCGetAspectRatio /* 8023F1B0 0023AE10 88 9F 00 59 */ lbz r4, 0x59(r31) /* 8023F1B4 0023AE14 3C 00 43 30 */ lis r0, 0x4330 /* 8023F1B8 0023AE18 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8023F1BC 0023AE1C 90 01 00 08 */ stw r0, 8(r1) /* 8023F1C0 0023AE20 38 63 FF FF */ addi r3, r3, -1 /* 8023F1C4 0023AE24 C8 42 9E 08 */ lfd f2, lbl_80642408-_SDA2_BASE_(r2) /* 8023F1C8 0023AE28 90 81 00 0C */ stw r4, 0xc(r1) /* 8023F1CC 0023AE2C 7C 66 00 34 */ cntlzw r6, r3 /* 8023F1D0 0023AE30 54 C7 D9 7E */ srwi r7, r6, 5 /* 8023F1D4 0023AE34 C0 02 9E 00 */ lfs f0, lbl_80642400-_SDA2_BASE_(r2) /* 8023F1D8 0023AE38 C8 21 00 08 */ lfd f1, 8(r1) /* 8023F1DC 0023AE3C 7F E3 FB 78 */ mr r3, r31 /* 8023F1E0 0023AE40 7F 44 D3 78 */ mr r4, r26 /* 8023F1E4 0023AE44 7F 25 CB 78 */ mr r5, r25 /* 8023F1E8 0023AE48 EC 21 10 28 */ fsubs f1, f1, f2 /* 8023F1EC 0023AE4C 38 C0 00 01 */ li r6, 1 /* 8023F1F0 0023AE50 EC 01 00 24 */ fdivs f0, f1, f0 /* 8023F1F4 0023AE54 D0 0D 86 C8 */ stfs f0, lbl_8063D988-_SDA_BASE_(r13) /* 8023F1F8 0023AE58 48 00 06 61 */ bl func_8023F858 /* 8023F1FC 0023AE5C 2C 1A 00 03 */ cmpwi r26, 3 /* 8023F200 0023AE60 41 82 00 4C */ beq lbl_8023F24C /* 8023F204 0023AE64 40 80 00 50 */ bge lbl_8023F254 /* 8023F208 0023AE68 2C 1A 00 00 */ cmpwi r26, 0 /* 8023F20C 0023AE6C 41 82 00 0C */ beq lbl_8023F218 /* 8023F210 0023AE70 40 80 00 14 */ bge lbl_8023F224 /* 8023F214 0023AE74 48 00 00 40 */ b lbl_8023F254 lbl_8023F218: /* 8023F218 0023AE78 38 00 01 E0 */ li r0, 0x1e0 /* 8023F21C 0023AE7C B0 1F 00 5E */ sth r0, 0x5e(r31) /* 8023F220 0023AE80 48 00 00 34 */ b lbl_8023F254 lbl_8023F224: /* 8023F224 0023AE84 2C 1A 00 01 */ cmpwi r26, 1 /* 8023F228 0023AE88 40 82 00 2C */ bne lbl_8023F254 /* 8023F22C 0023AE8C 2C 19 00 01 */ cmpwi r25, 1 /* 8023F230 0023AE90 41 82 00 24 */ beq lbl_8023F254 /* 8023F234 0023AE94 C0 22 9E 04 */ lfs f1, lbl_80642404-_SDA2_BASE_(r2) /* 8023F238 0023AE98 A0 7F 00 06 */ lhz r3, 6(r31) /* 8023F23C 0023AE9C D0 3F 00 68 */ stfs f1, 0x68(r31) /* 8023F240 0023AEA0 48 04 24 35 */ bl GXGetNumXfbLines /* 8023F244 0023AEA4 B0 7F 00 5E */ sth r3, 0x5e(r31) /* 8023F248 0023AEA8 48 00 00 0C */ b lbl_8023F254 lbl_8023F24C: /* 8023F24C 0023AEAC 38 00 01 E0 */ li r0, 0x1e0 /* 8023F250 0023AEB0 B0 1F 00 5E */ sth r0, 0x5e(r31) lbl_8023F254: /* 8023F254 0023AEB4 A0 7F 00 04 */ lhz r3, 4(r31) /* 8023F258 0023AEB8 7F FC FB 78 */ mr r28, r31 /* 8023F25C 0023AEBC A0 1F 00 5E */ lhz r0, 0x5e(r31) /* 8023F260 0023AEC0 3B 7F 00 3C */ addi r27, r31, 0x3c /* 8023F264 0023AEC4 38 63 00 0F */ addi r3, r3, 0xf /* 8023F268 0023AEC8 3B 40 00 00 */ li r26, 0 /* 8023F26C 0023AECC 54 63 04 36 */ rlwinm r3, r3, 0, 0x10, 0x1b /* 8023F270 0023AED0 3B A0 00 03 */ li r29, 3 /* 8023F274 0023AED4 7C 03 01 D6 */ mullw r0, r3, r0 /* 8023F278 0023AED8 3B C0 00 00 */ li r30, 0 /* 8023F27C 0023AEDC 54 19 08 3C */ slwi r25, r0, 1 lbl_8023F280: /* 8023F280 0023AEE0 88 1F 00 58 */ lbz r0, 0x58(r31) /* 8023F284 0023AEE4 7C 1A 00 00 */ cmpw r26, r0 /* 8023F288 0023AEE8 40 80 00 28 */ bge lbl_8023F2B0 /* 8023F28C 0023AEEC 7F 23 CB 78 */ mr r3, r25 /* 8023F290 0023AEF0 4B F9 BA D5 */ bl func_801DAD64 /* 8023F294 0023AEF4 90 7C 00 40 */ stw r3, 0x40(r28) /* 8023F298 0023AEF8 7F E3 FB 78 */ mr r3, r31 /* 8023F29C 0023AEFC 7F 64 DB 78 */ mr r4, r27 /* 8023F2A0 0023AF00 7F 25 CB 78 */ mr r5, r25 /* 8023F2A4 0023AF04 93 BC 00 3C */ stw r29, 0x3c(r28) /* 8023F2A8 0023AF08 48 00 08 F9 */ bl func_8023FBA0 /* 8023F2AC 0023AF0C 48 00 00 0C */ b lbl_8023F2B8 lbl_8023F2B0: /* 8023F2B0 0023AF10 93 DC 00 40 */ stw r30, 0x40(r28) /* 8023F2B4 0023AF14 93 DC 00 3C */ stw r30, 0x3c(r28) lbl_8023F2B8: /* 8023F2B8 0023AF18 3B 5A 00 01 */ addi r26, r26, 1 /* 8023F2BC 0023AF1C 3B 7B 00 08 */ addi r27, r27, 8 /* 8023F2C0 0023AF20 2C 1A 00 03 */ cmpwi r26, 3 /* 8023F2C4 0023AF24 3B 9C 00 08 */ addi r28, r28, 8 /* 8023F2C8 0023AF28 41 80 FF B8 */ blt lbl_8023F280 /* 8023F2CC 0023AF2C 3C 60 01 00 */ lis r3, 0x00FFFFFF@ha /* 8023F2D0 0023AF30 38 80 00 00 */ li r4, 0 /* 8023F2D4 0023AF34 38 03 FF FF */ addi r0, r3, 0x00FFFFFF@l /* 8023F2D8 0023AF38 98 9F 00 D0 */ stb r4, 0xd0(r31) /* 8023F2DC 0023AF3C 3C 60 80 24 */ lis r3, lbl_8023EE6C@ha /* 8023F2E0 0023AF40 98 9F 00 D1 */ stb r4, 0xd1(r31) /* 8023F2E4 0023AF44 38 63 EE 6C */ addi r3, r3, lbl_8023EE6C@l /* 8023F2E8 0023AF48 98 9F 00 D2 */ stb r4, 0xd2(r31) /* 8023F2EC 0023AF4C 98 9F 00 D3 */ stb r4, 0xd3(r31) /* 8023F2F0 0023AF50 90 1F 00 D4 */ stw r0, 0xd4(r31) /* 8023F2F4 0023AF54 48 03 8B 49 */ bl VISetPreRetraceCallback /* 8023F2F8 0023AF58 3C 60 80 24 */ lis r3, lbl_8023EF3C@ha /* 8023F2FC 0023AF5C 38 63 EF 3C */ addi r3, r3, lbl_8023EF3C@l /* 8023F300 0023AF60 48 03 8B 81 */ bl VISetPostRetraceCallback /* 8023F304 0023AF64 38 00 00 01 */ li r0, 1 /* 8023F308 0023AF68 80 7F 00 40 */ lwz r3, 0x40(r31) /* 8023F30C 0023AF6C 90 1F 00 3C */ stw r0, 0x3c(r31) /* 8023F310 0023AF70 48 03 A4 AD */ bl VISetNextFrameBuffer /* 8023F314 0023AF74 38 1F 00 3C */ addi r0, r31, 0x3c /* 8023F318 0023AF78 90 1F 00 54 */ stw r0, 0x54(r31) /* 8023F31C 0023AF7C 48 03 34 9D */ bl OSGetTime /* 8023F320 0023AF80 90 9F 00 9C */ stw r4, 0x9c(r31) /* 8023F324 0023AF84 38 80 00 00 */ li r4, 0 /* 8023F328 0023AF88 90 7F 00 98 */ stw r3, 0x98(r31) /* 8023F32C 0023AF8C 7F E3 FB 78 */ mr r3, r31 /* 8023F330 0023AF90 93 ED A4 C8 */ stw r31, lbl_8063F788-_SDA_BASE_(r13) /* 8023F334 0023AF94 48 00 07 D1 */ bl func_8023FB04 /* 8023F338 0023AF98 7F E3 FB 78 */ mr r3, r31 lbl_8023F33C: /* 8023F33C 0023AF9C 39 61 00 30 */ addi r11, r1, 0x30 /* 8023F340 0023AFA0 4B F8 7E 2D */ bl _restgpr_25 /* 8023F344 0023AFA4 80 01 00 34 */ lwz r0, 0x34(r1) /* 8023F348 0023AFA8 7C 08 03 A6 */ mtlr r0 /* 8023F34C 0023AFAC 38 21 00 30 */ addi r1, r1, 0x30 /* 8023F350 0023AFB0 4E 80 00 20 */ blr .global func_8023F354 func_8023F354: /* 8023F354 0023AFB4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023F358 0023AFB8 7C 08 02 A6 */ mflr r0 /* 8023F35C 0023AFBC 90 01 00 24 */ stw r0, 0x24(r1) /* 8023F360 0023AFC0 39 61 00 20 */ addi r11, r1, 0x20 /* 8023F364 0023AFC4 4B F8 7D C5 */ bl _savegpr_27 /* 8023F368 0023AFC8 2C 03 00 00 */ cmpwi r3, 0 /* 8023F36C 0023AFCC 7C 7B 1B 78 */ mr r27, r3 /* 8023F370 0023AFD0 7C 9C 23 78 */ mr r28, r4 /* 8023F374 0023AFD4 41 82 00 8C */ beq lbl_8023F400 /* 8023F378 0023AFD8 3C 80 80 42 */ lis r4, lbl_8042491C@ha /* 8023F37C 0023AFDC 38 84 49 1C */ addi r4, r4, lbl_8042491C@l /* 8023F380 0023AFE0 90 83 00 D8 */ stw r4, 0xd8(r3) /* 8023F384 0023AFE4 38 60 00 00 */ li r3, 0 /* 8023F388 0023AFE8 48 03 8A B5 */ bl VISetPreRetraceCallback /* 8023F38C 0023AFEC 38 60 00 00 */ li r3, 0 /* 8023F390 0023AFF0 48 03 8A F1 */ bl VISetPostRetraceCallback /* 8023F394 0023AFF4 38 60 00 01 */ li r3, 1 /* 8023F398 0023AFF8 48 03 A4 91 */ bl VISetBlack /* 8023F39C 0023AFFC 48 03 A3 0D */ bl VIFlush /* 8023F3A0 0023B000 38 00 00 01 */ li r0, 1 /* 8023F3A4 0023B004 7F 63 DB 78 */ mr r3, r27 /* 8023F3A8 0023B008 98 1B 00 5B */ stb r0, 0x5b(r27) /* 8023F3AC 0023B00C 48 00 00 71 */ bl func_8023F41C /* 8023F3B0 0023B010 7F 7E DB 78 */ mr r30, r27 /* 8023F3B4 0023B014 3B A0 00 00 */ li r29, 0 /* 8023F3B8 0023B018 3B E0 00 00 */ li r31, 0 /* 8023F3BC 0023B01C 48 00 00 20 */ b lbl_8023F3DC lbl_8023F3C0: /* 8023F3C0 0023B020 80 7E 00 40 */ lwz r3, 0x40(r30) /* 8023F3C4 0023B024 2C 03 00 00 */ cmpwi r3, 0 /* 8023F3C8 0023B028 41 82 00 0C */ beq lbl_8023F3D4 /* 8023F3CC 0023B02C 4B F9 BA D9 */ bl func_801DAEA4 /* 8023F3D0 0023B030 93 FE 00 40 */ stw r31, 0x40(r30) lbl_8023F3D4: /* 8023F3D4 0023B034 3B DE 00 08 */ addi r30, r30, 8 /* 8023F3D8 0023B038 3B BD 00 01 */ addi r29, r29, 1 lbl_8023F3DC: /* 8023F3DC 0023B03C 88 1B 00 58 */ lbz r0, 0x58(r27) /* 8023F3E0 0023B040 7C 1D 00 00 */ cmpw r29, r0 /* 8023F3E4 0023B044 41 80 FF DC */ blt lbl_8023F3C0 /* 8023F3E8 0023B048 38 00 00 00 */ li r0, 0 /* 8023F3EC 0023B04C 2C 1C 00 00 */ cmpwi r28, 0 /* 8023F3F0 0023B050 90 0D A4 C8 */ stw r0, lbl_8063F788-_SDA_BASE_(r13) /* 8023F3F4 0023B054 40 81 00 0C */ ble lbl_8023F400 /* 8023F3F8 0023B058 7F 63 DB 78 */ mr r3, r27 /* 8023F3FC 0023B05C 4B F9 B6 BD */ bl __dl__FPv lbl_8023F400: /* 8023F400 0023B060 39 61 00 20 */ addi r11, r1, 0x20 /* 8023F404 0023B064 7F 63 DB 78 */ mr r3, r27 /* 8023F408 0023B068 4B F8 7D 6D */ bl _restgpr_27 /* 8023F40C 0023B06C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023F410 0023B070 7C 08 03 A6 */ mtlr r0 /* 8023F414 0023B074 38 21 00 20 */ addi r1, r1, 0x20 /* 8023F418 0023B078 4E 80 00 20 */ blr .global func_8023F41C func_8023F41C: /* 8023F41C 0023B07C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023F420 0023B080 7C 08 02 A6 */ mflr r0 /* 8023F424 0023B084 90 01 00 14 */ stw r0, 0x14(r1) /* 8023F428 0023B088 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023F42C 0023B08C 7C 7F 1B 78 */ mr r31, r3 /* 8023F430 0023B090 88 03 00 5B */ lbz r0, 0x5b(r3) /* 8023F434 0023B094 2C 00 00 00 */ cmpwi r0, 0 /* 8023F438 0023B098 41 82 00 08 */ beq lbl_8023F440 /* 8023F43C 0023B09C 48 03 92 E9 */ bl VIWaitForRetrace lbl_8023F440: /* 8023F440 0023B0A0 38 00 00 01 */ li r0, 1 /* 8023F444 0023B0A4 98 1F 00 5B */ stb r0, 0x5b(r31) /* 8023F448 0023B0A8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023F44C 0023B0AC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023F450 0023B0B0 7C 08 03 A6 */ mtlr r0 /* 8023F454 0023B0B4 38 21 00 10 */ addi r1, r1, 0x10 /* 8023F458 0023B0B8 4E 80 00 20 */ blr .global func_8023F45C func_8023F45C: /* 8023F45C 0023B0BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023F460 0023B0C0 7C 08 02 A6 */ mflr r0 /* 8023F464 0023B0C4 90 01 00 14 */ stw r0, 0x14(r1) /* 8023F468 0023B0C8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023F46C 0023B0CC 7C 7F 1B 78 */ mr r31, r3 /* 8023F470 0023B0D0 48 00 00 A1 */ bl func_8023F510 /* 8023F474 0023B0D4 80 9F 00 54 */ lwz r4, 0x54(r31) /* 8023F478 0023B0D8 7F E3 FB 78 */ mr r3, r31 /* 8023F47C 0023B0DC 48 00 01 49 */ bl func_8023F5C4 /* 8023F480 0023B0E0 80 9F 00 54 */ lwz r4, 0x54(r31) /* 8023F484 0023B0E4 7F E3 FB 78 */ mr r3, r31 /* 8023F488 0023B0E8 48 00 01 3D */ bl func_8023F5C4 /* 8023F48C 0023B0EC 80 9F 00 54 */ lwz r4, 0x54(r31) /* 8023F490 0023B0F0 38 00 00 01 */ li r0, 1 /* 8023F494 0023B0F4 38 60 00 00 */ li r3, 0 /* 8023F498 0023B0F8 90 04 00 00 */ stw r0, 0(r4) /* 8023F49C 0023B0FC 48 03 A3 8D */ bl VISetBlack /* 8023F4A0 0023B100 48 03 A2 09 */ bl VIFlush /* 8023F4A4 0023B104 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023F4A8 0023B108 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023F4AC 0023B10C 7C 08 03 A6 */ mtlr r0 /* 8023F4B0 0023B110 38 21 00 10 */ addi r1, r1, 0x10 /* 8023F4B4 0023B114 4E 80 00 20 */ blr .global func_8023F4B8 func_8023F4B8: /* 8023F4B8 0023B118 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023F4BC 0023B11C 7C 08 02 A6 */ mflr r0 /* 8023F4C0 0023B120 38 80 00 01 */ li r4, 1 /* 8023F4C4 0023B124 90 01 00 14 */ stw r0, 0x14(r1) /* 8023F4C8 0023B128 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023F4CC 0023B12C 93 C1 00 08 */ stw r30, 8(r1) /* 8023F4D0 0023B130 7C 7E 1B 78 */ mr r30, r3 /* 8023F4D4 0023B134 48 00 07 81 */ bl func_8023FC54 /* 8023F4D8 0023B138 7C 7F 1B 78 */ mr r31, r3 /* 8023F4DC 0023B13C 38 60 00 00 */ li r3, 0 /* 8023F4E0 0023B140 48 01 C1 D5 */ bl func_8025B6B4 /* 8023F4E4 0023B144 2C 1F 00 00 */ cmpwi r31, 0 /* 8023F4E8 0023B148 41 82 00 10 */ beq lbl_8023F4F8 /* 8023F4EC 0023B14C 7F C3 F3 78 */ mr r3, r30 /* 8023F4F0 0023B150 7F E4 FB 78 */ mr r4, r31 /* 8023F4F4 0023B154 48 00 00 D1 */ bl func_8023F5C4 lbl_8023F4F8: /* 8023F4F8 0023B158 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023F4FC 0023B15C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023F500 0023B160 83 C1 00 08 */ lwz r30, 8(r1) /* 8023F504 0023B164 7C 08 03 A6 */ mtlr r0 /* 8023F508 0023B168 38 21 00 10 */ addi r1, r1, 0x10 /* 8023F50C 0023B16C 4E 80 00 20 */ blr .global func_8023F510 func_8023F510: /* 8023F510 0023B170 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023F514 0023B174 7C 08 02 A6 */ mflr r0 /* 8023F518 0023B178 90 01 00 24 */ stw r0, 0x24(r1) /* 8023F51C 0023B17C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8023F520 0023B180 7C 7F 1B 78 */ mr r31, r3 /* 8023F524 0023B184 80 0D A4 C8 */ lwz r0, lbl_8063F788-_SDA_BASE_(r13) /* 8023F528 0023B188 2C 00 00 00 */ cmpwi r0, 0 /* 8023F52C 0023B18C 41 82 00 84 */ beq lbl_8023F5B0 /* 8023F530 0023B190 A0 BF 00 04 */ lhz r5, 4(r31) /* 8023F534 0023B194 38 60 00 00 */ li r3, 0 /* 8023F538 0023B198 A0 DF 00 06 */ lhz r6, 6(r31) /* 8023F53C 0023B19C 38 80 00 00 */ li r4, 0 /* 8023F540 0023B1A0 48 04 1F 2D */ bl GXSetDispCopySrc /* 8023F544 0023B1A4 A0 7F 00 04 */ lhz r3, 4(r31) /* 8023F548 0023B1A8 A0 9F 00 08 */ lhz r4, 8(r31) /* 8023F54C 0023B1AC 48 04 1F A1 */ bl GXSetDispCopyDst /* 8023F550 0023B1B0 38 60 00 00 */ li r3, 0 /* 8023F554 0023B1B4 48 04 20 D9 */ bl GXSetDispCopyFrame2Field /* 8023F558 0023B1B8 80 7F 00 60 */ lwz r3, 0x60(r31) /* 8023F55C 0023B1BC 48 04 26 FD */ bl GXSetDispCopyGamma /* 8023F560 0023B1C0 C0 3F 00 68 */ lfs f1, 0x68(r31) /* 8023F564 0023B1C4 48 04 23 CD */ bl GXSetDispCopyYScale /* 8023F568 0023B1C8 88 7F 00 19 */ lbz r3, 0x19(r31) /* 8023F56C 0023B1CC 38 9F 00 1A */ addi r4, r31, 0x1a /* 8023F570 0023B1D0 38 DF 00 32 */ addi r6, r31, 0x32 /* 8023F574 0023B1D4 38 A0 00 01 */ li r5, 1 /* 8023F578 0023B1D8 48 04 24 FD */ bl GXSetCopyFilter /* 8023F57C 0023B1DC 38 60 00 03 */ li r3, 3 /* 8023F580 0023B1E0 48 04 20 CD */ bl GXSetCopyClamp /* 8023F584 0023B1E4 88 1F 00 D0 */ lbz r0, 0xd0(r31) /* 8023F588 0023B1E8 38 61 00 08 */ addi r3, r1, 8 /* 8023F58C 0023B1EC 98 01 00 08 */ stb r0, 8(r1) /* 8023F590 0023B1F0 88 1F 00 D1 */ lbz r0, 0xd1(r31) /* 8023F594 0023B1F4 98 01 00 09 */ stb r0, 9(r1) /* 8023F598 0023B1F8 88 1F 00 D2 */ lbz r0, 0xd2(r31) /* 8023F59C 0023B1FC 98 01 00 0A */ stb r0, 0xa(r1) /* 8023F5A0 0023B200 88 1F 00 D3 */ lbz r0, 0xd3(r31) /* 8023F5A4 0023B204 98 01 00 0B */ stb r0, 0xb(r1) /* 8023F5A8 0023B208 80 9F 00 D4 */ lwz r4, 0xd4(r31) /* 8023F5AC 0023B20C 48 04 24 51 */ bl GXSetCopyClear lbl_8023F5B0: /* 8023F5B0 0023B210 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023F5B4 0023B214 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8023F5B8 0023B218 7C 08 03 A6 */ mtlr r0 /* 8023F5BC 0023B21C 38 21 00 20 */ addi r1, r1, 0x20 /* 8023F5C0 0023B220 4E 80 00 20 */ blr .global func_8023F5C4 func_8023F5C4: /* 8023F5C4 0023B224 80 0D A4 C8 */ lwz r0, lbl_8063F788-_SDA_BASE_(r13) /* 8023F5C8 0023B228 2C 00 00 00 */ cmpwi r0, 0 /* 8023F5CC 0023B22C 4D 82 00 20 */ beqlr /* 8023F5D0 0023B230 38 00 00 04 */ li r0, 4 /* 8023F5D4 0023B234 80 64 00 04 */ lwz r3, 4(r4) /* 8023F5D8 0023B238 90 04 00 00 */ stw r0, 0(r4) /* 8023F5DC 0023B23C 38 80 00 01 */ li r4, 1 /* 8023F5E0 0023B240 48 04 26 8C */ b GXCopyDisp /* 8023F5E4 0023B244 4E 80 00 20 */ blr .global func_8023F5E8 func_8023F5E8: /* 8023F5E8 0023B248 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8023F5EC 0023B24C 7C 08 02 A6 */ mflr r0 /* 8023F5F0 0023B250 90 01 00 44 */ stw r0, 0x44(r1) /* 8023F5F4 0023B254 39 61 00 40 */ addi r11, r1, 0x40 /* 8023F5F8 0023B258 4B F8 7B 2D */ bl _savegpr_26 /* 8023F5FC 0023B25C 2C 04 00 00 */ cmpwi r4, 0 /* 8023F600 0023B260 7C 7A 1B 78 */ mr r26, r3 /* 8023F604 0023B264 7C 9B 23 78 */ mr r27, r4 /* 8023F608 0023B268 7C BE 2B 78 */ mr r30, r5 /* 8023F60C 0023B26C 7C DC 33 78 */ mr r28, r6 /* 8023F610 0023B270 7C FD 3B 78 */ mr r29, r7 /* 8023F614 0023B274 41 82 01 4C */ beq lbl_8023F760 /* 8023F618 0023B278 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023F61C 0023B27C 4B FF B8 39 */ bl func_8023AE54 /* 8023F620 0023B280 7F 63 DB 78 */ mr r3, r27 /* 8023F624 0023B284 7F C4 F3 78 */ mr r4, r30 /* 8023F628 0023B288 4B FF F0 61 */ bl func_8023E688 /* 8023F62C 0023B28C 7F 63 DB 78 */ mr r3, r27 /* 8023F630 0023B290 4B FF EF 11 */ bl func_8023E540 /* 8023F634 0023B294 7C 7F 1B 78 */ mr r31, r3 /* 8023F638 0023B298 7F 63 DB 78 */ mr r3, r27 /* 8023F63C 0023B29C 4B FF EF 0D */ bl func_8023E548 /* 8023F640 0023B2A0 2C 1C 00 00 */ cmpwi r28, 0 /* 8023F644 0023B2A4 7C 7E 1B 78 */ mr r30, r3 /* 8023F648 0023B2A8 7F E5 FB 78 */ mr r5, r31 /* 8023F64C 0023B2AC 7F C6 F3 78 */ mr r6, r30 /* 8023F650 0023B2B0 41 82 00 0C */ beq lbl_8023F65C /* 8023F654 0023B2B4 57 E5 0C 3C */ rlwinm r5, r31, 1, 0x10, 0x1e /* 8023F658 0023B2B8 54 66 0C 3C */ rlwinm r6, r3, 1, 0x10, 0x1e lbl_8023F65C: /* 8023F65C 0023B2BC C0 22 9E 10 */ lfs f1, lbl_80642410-_SDA2_BASE_(r2) /* 8023F660 0023B2C0 C0 1A 00 A8 */ lfs f0, 0xa8(r26) /* 8023F664 0023B2C4 EC 01 00 2A */ fadds f0, f1, f0 /* 8023F668 0023B2C8 F0 01 B0 14 */ psq_st f0, 20(r1), 1, qr3 /* 8023F66C 0023B2CC C0 1A 00 AC */ lfs f0, 0xac(r26) /* 8023F670 0023B2D0 A0 61 00 14 */ lhz r3, 0x14(r1) /* 8023F674 0023B2D4 EC 01 00 2A */ fadds f0, f1, f0 /* 8023F678 0023B2D8 F0 01 B0 10 */ psq_st f0, 16(r1), 1, qr3 /* 8023F67C 0023B2DC C0 1A 00 B0 */ lfs f0, 0xb0(r26) /* 8023F680 0023B2E0 A0 81 00 10 */ lhz r4, 0x10(r1) /* 8023F684 0023B2E4 EC 01 00 2A */ fadds f0, f1, f0 /* 8023F688 0023B2E8 F0 01 B0 0C */ psq_st f0, 12(r1), 1, qr3 /* 8023F68C 0023B2EC C0 1A 00 B4 */ lfs f0, 0xb4(r26) /* 8023F690 0023B2F0 A0 E1 00 0C */ lhz r7, 0xc(r1) /* 8023F694 0023B2F4 EC 01 00 2A */ fadds f0, f1, f0 /* 8023F698 0023B2F8 F0 01 B0 08 */ psq_st f0, 8(r1), 1, qr3 /* 8023F69C 0023B2FC 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 8023F6A0 0023B300 7C 07 00 40 */ cmplw r7, r0 /* 8023F6A4 0023B304 A1 01 00 08 */ lhz r8, 8(r1) /* 8023F6A8 0023B308 40 80 00 0C */ bge lbl_8023F6B4 /* 8023F6AC 0023B30C 38 60 00 00 */ li r3, 0 /* 8023F6B0 0023B310 7C A7 2B 78 */ mr r7, r5 lbl_8023F6B4: /* 8023F6B4 0023B314 54 C0 04 3E */ clrlwi r0, r6, 0x10 /* 8023F6B8 0023B318 7C 08 00 40 */ cmplw r8, r0 /* 8023F6BC 0023B31C 40 80 00 0C */ bge lbl_8023F6C8 /* 8023F6C0 0023B320 38 80 00 00 */ li r4, 0 /* 8023F6C4 0023B324 7C C8 33 78 */ mr r8, r6 lbl_8023F6C8: /* 8023F6C8 0023B328 54 E5 04 3E */ clrlwi r5, r7, 0x10 /* 8023F6CC 0023B32C 55 06 04 3E */ clrlwi r6, r8, 0x10 /* 8023F6D0 0023B330 48 04 1D DD */ bl GXSetTexCopySrc /* 8023F6D4 0023B334 7F 63 DB 78 */ mr r3, r27 /* 8023F6D8 0023B338 38 80 00 00 */ li r4, 0 /* 8023F6DC 0023B33C 4B FF F0 0D */ bl func_8023E6E8 /* 8023F6E0 0023B340 7C 65 1B 78 */ mr r5, r3 /* 8023F6E4 0023B344 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 8023F6E8 0023B348 57 C4 04 3E */ clrlwi r4, r30, 0x10 /* 8023F6EC 0023B34C 57 86 06 3E */ clrlwi r6, r28, 0x18 /* 8023F6F0 0023B350 48 04 1E 21 */ bl GXSetTexCopyDst /* 8023F6F4 0023B354 38 60 00 00 */ li r3, 0 /* 8023F6F8 0023B358 38 80 00 00 */ li r4, 0 /* 8023F6FC 0023B35C 38 A0 00 00 */ li r5, 0 /* 8023F700 0023B360 38 C0 00 00 */ li r6, 0 /* 8023F704 0023B364 48 04 23 71 */ bl GXSetCopyFilter /* 8023F708 0023B368 38 60 00 03 */ li r3, 3 /* 8023F70C 0023B36C 48 04 1F 41 */ bl GXSetCopyClamp /* 8023F710 0023B370 88 1A 00 D0 */ lbz r0, 0xd0(r26) /* 8023F714 0023B374 38 61 00 18 */ addi r3, r1, 0x18 /* 8023F718 0023B378 98 01 00 18 */ stb r0, 0x18(r1) /* 8023F71C 0023B37C 88 1A 00 D1 */ lbz r0, 0xd1(r26) /* 8023F720 0023B380 98 01 00 19 */ stb r0, 0x19(r1) /* 8023F724 0023B384 88 1A 00 D2 */ lbz r0, 0xd2(r26) /* 8023F728 0023B388 98 01 00 1A */ stb r0, 0x1a(r1) /* 8023F72C 0023B38C 88 1A 00 D3 */ lbz r0, 0xd3(r26) /* 8023F730 0023B390 98 01 00 1B */ stb r0, 0x1b(r1) /* 8023F734 0023B394 80 9A 00 D4 */ lwz r4, 0xd4(r26) /* 8023F738 0023B398 48 04 22 C5 */ bl GXSetCopyClear /* 8023F73C 0023B39C 7F 63 DB 78 */ mr r3, r27 /* 8023F740 0023B3A0 38 80 00 00 */ li r4, 0 /* 8023F744 0023B3A4 4B FF ED 5D */ bl func_8023E4A0 /* 8023F748 0023B3A8 57 A4 06 3E */ clrlwi r4, r29, 0x18 /* 8023F74C 0023B3AC 48 04 26 5D */ bl GXCopyTex /* 8023F750 0023B3B0 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023F754 0023B3B4 7F 64 DB 78 */ mr r4, r27 /* 8023F758 0023B3B8 4B FF C1 F1 */ bl func_8023B948 /* 8023F75C 0023B3BC 90 7B 00 50 */ stw r3, 0x50(r27) lbl_8023F760: /* 8023F760 0023B3C0 39 61 00 40 */ addi r11, r1, 0x40 /* 8023F764 0023B3C4 4B F8 7A 0D */ bl _restgpr_26 /* 8023F768 0023B3C8 80 01 00 44 */ lwz r0, 0x44(r1) /* 8023F76C 0023B3CC 7C 08 03 A6 */ mtlr r0 /* 8023F770 0023B3D0 38 21 00 40 */ addi r1, r1, 0x40 /* 8023F774 0023B3D4 4E 80 00 20 */ blr .global func_8023F778 func_8023F778: /* 8023F778 0023B3D8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023F77C 0023B3DC 7C 08 02 A6 */ mflr r0 /* 8023F780 0023B3E0 38 80 00 04 */ li r4, 4 /* 8023F784 0023B3E4 90 01 00 24 */ stw r0, 0x24(r1) /* 8023F788 0023B3E8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8023F78C 0023B3EC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8023F790 0023B3F0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8023F794 0023B3F4 93 81 00 10 */ stw r28, 0x10(r1) /* 8023F798 0023B3F8 7C 7C 1B 78 */ mr r28, r3 /* 8023F79C 0023B3FC 48 00 04 71 */ bl func_8023FC0C /* 8023F7A0 0023B400 2C 03 00 00 */ cmpwi r3, 0 /* 8023F7A4 0023B404 7C 7D 1B 78 */ mr r29, r3 /* 8023F7A8 0023B408 41 82 00 90 */ beq lbl_8023F838 /* 8023F7AC 0023B40C 88 1C 00 58 */ lbz r0, 0x58(r28) /* 8023F7B0 0023B410 28 00 00 03 */ cmplwi r0, 3 /* 8023F7B4 0023B414 40 82 00 20 */ bne lbl_8023F7D4 /* 8023F7B8 0023B418 7F 83 E3 78 */ mr r3, r28 /* 8023F7BC 0023B41C 38 80 00 02 */ li r4, 2 /* 8023F7C0 0023B420 48 00 04 4D */ bl func_8023FC0C /* 8023F7C4 0023B424 2C 03 00 00 */ cmpwi r3, 0 /* 8023F7C8 0023B428 41 82 00 0C */ beq lbl_8023F7D4 /* 8023F7CC 0023B42C 38 00 00 03 */ li r0, 3 /* 8023F7D0 0023B430 90 03 00 00 */ stw r0, 0(r3) lbl_8023F7D4: /* 8023F7D4 0023B434 48 03 2F E5 */ bl OSGetTime /* 8023F7D8 0023B438 80 BC 00 9C */ lwz r5, 0x9c(r28) /* 8023F7DC 0023B43C 7C 9E 23 78 */ mr r30, r4 /* 8023F7E0 0023B440 80 1C 00 98 */ lwz r0, 0x98(r28) /* 8023F7E4 0023B444 7C 7F 1B 78 */ mr r31, r3 /* 8023F7E8 0023B448 7C 85 20 10 */ subfc r4, r5, r4 /* 8023F7EC 0023B44C 7C 60 19 10 */ subfe r3, r0, r3 /* 8023F7F0 0023B450 4B F8 7D D5 */ bl __cvt_sll_flt /* 8023F7F4 0023B454 3C 80 80 00 */ lis r4, 0x800000F8@ha /* 8023F7F8 0023B458 3C 60 43 30 */ lis r3, 0x4330 /* 8023F7FC 0023B45C 80 A4 00 F8 */ lwz r5, 0x800000F8@l(r4) /* 8023F800 0023B460 38 00 00 02 */ li r0, 2 /* 8023F804 0023B464 88 9C 00 59 */ lbz r4, 0x59(r28) /* 8023F808 0023B468 54 A5 F0 BE */ srwi r5, r5, 2 /* 8023F80C 0023B46C 90 61 00 08 */ stw r3, 8(r1) /* 8023F810 0023B470 7C 65 23 96 */ divwu r3, r5, r4 /* 8023F814 0023B474 C8 42 9E 08 */ lfd f2, lbl_80642408-_SDA2_BASE_(r2) /* 8023F818 0023B478 93 DC 00 9C */ stw r30, 0x9c(r28) /* 8023F81C 0023B47C 93 FC 00 98 */ stw r31, 0x98(r28) /* 8023F820 0023B480 90 61 00 0C */ stw r3, 0xc(r1) /* 8023F824 0023B484 C8 01 00 08 */ lfd f0, 8(r1) /* 8023F828 0023B488 EC 00 10 28 */ fsubs f0, f0, f2 /* 8023F82C 0023B48C EC 01 00 24 */ fdivs f0, f1, f0 /* 8023F830 0023B490 D0 1C 00 8C */ stfs f0, 0x8c(r28) /* 8023F834 0023B494 90 1D 00 00 */ stw r0, 0(r29) lbl_8023F838: /* 8023F838 0023B498 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023F83C 0023B49C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8023F840 0023B4A0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8023F844 0023B4A4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8023F848 0023B4A8 83 81 00 10 */ lwz r28, 0x10(r1) /* 8023F84C 0023B4AC 7C 08 03 A6 */ mtlr r0 /* 8023F850 0023B4B0 38 21 00 20 */ addi r1, r1, 0x20 /* 8023F854 0023B4B4 4E 80 00 20 */ blr .global func_8023F858 func_8023F858: /* 8023F858 0023B4B8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023F85C 0023B4BC 7C 08 02 A6 */ mflr r0 /* 8023F860 0023B4C0 2C 05 00 02 */ cmpwi r5, 2 /* 8023F864 0023B4C4 90 01 00 24 */ stw r0, 0x24(r1) /* 8023F868 0023B4C8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8023F86C 0023B4CC 7C 7F 1B 78 */ mr r31, r3 /* 8023F870 0023B4D0 38 60 00 00 */ li r3, 0 /* 8023F874 0023B4D4 93 C1 00 18 */ stw r30, 0x18(r1) /* 8023F878 0023B4D8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8023F87C 0023B4DC 7C FD 3B 78 */ mr r29, r7 /* 8023F880 0023B4E0 93 81 00 10 */ stw r28, 0x10(r1) /* 8023F884 0023B4E4 7C 9C 23 78 */ mr r28, r4 /* 8023F888 0023B4E8 41 82 00 24 */ beq lbl_8023F8AC /* 8023F88C 0023B4EC 40 80 00 14 */ bge lbl_8023F8A0 /* 8023F890 0023B4F0 2C 05 00 00 */ cmpwi r5, 0 /* 8023F894 0023B4F4 41 82 00 40 */ beq lbl_8023F8D4 /* 8023F898 0023B4F8 40 80 00 78 */ bge lbl_8023F910 /* 8023F89C 0023B4FC 48 00 00 D4 */ b lbl_8023F970 lbl_8023F8A0: /* 8023F8A0 0023B500 2C 05 00 04 */ cmpwi r5, 4 /* 8023F8A4 0023B504 40 80 00 CC */ bge lbl_8023F970 /* 8023F8A8 0023B508 48 00 00 A4 */ b lbl_8023F94C lbl_8023F8AC: /* 8023F8AC 0023B50C 2C 06 00 02 */ cmpwi r6, 2 /* 8023F8B0 0023B510 41 82 00 1C */ beq lbl_8023F8CC /* 8023F8B4 0023B514 40 80 00 BC */ bge lbl_8023F970 /* 8023F8B8 0023B518 2C 06 00 00 */ cmpwi r6, 0 /* 8023F8BC 0023B51C 40 80 00 08 */ bge lbl_8023F8C4 /* 8023F8C0 0023B520 48 00 00 B0 */ b lbl_8023F970 lbl_8023F8C4: /* 8023F8C4 0023B524 38 60 00 01 */ li r3, 1 /* 8023F8C8 0023B528 48 00 00 A8 */ b lbl_8023F970 lbl_8023F8CC: /* 8023F8CC 0023B52C 38 60 00 02 */ li r3, 2 /* 8023F8D0 0023B530 48 00 00 A0 */ b lbl_8023F970 lbl_8023F8D4: /* 8023F8D4 0023B534 2C 06 00 01 */ cmpwi r6, 1 /* 8023F8D8 0023B538 41 82 00 28 */ beq lbl_8023F900 /* 8023F8DC 0023B53C 40 80 00 10 */ bge lbl_8023F8EC /* 8023F8E0 0023B540 2C 06 00 00 */ cmpwi r6, 0 /* 8023F8E4 0023B544 40 80 00 14 */ bge lbl_8023F8F8 /* 8023F8E8 0023B548 48 00 00 88 */ b lbl_8023F970 lbl_8023F8EC: /* 8023F8EC 0023B54C 2C 06 00 03 */ cmpwi r6, 3 /* 8023F8F0 0023B550 40 80 00 80 */ bge lbl_8023F970 /* 8023F8F4 0023B554 48 00 00 14 */ b lbl_8023F908 lbl_8023F8F8: /* 8023F8F8 0023B558 38 60 00 05 */ li r3, 5 /* 8023F8FC 0023B55C 48 00 00 74 */ b lbl_8023F970 lbl_8023F900: /* 8023F900 0023B560 38 60 00 06 */ li r3, 6 /* 8023F904 0023B564 48 00 00 6C */ b lbl_8023F970 lbl_8023F908: /* 8023F908 0023B568 38 60 00 07 */ li r3, 7 /* 8023F90C 0023B56C 48 00 00 64 */ b lbl_8023F970 lbl_8023F910: /* 8023F910 0023B570 2C 06 00 01 */ cmpwi r6, 1 /* 8023F914 0023B574 41 82 00 28 */ beq lbl_8023F93C /* 8023F918 0023B578 40 80 00 10 */ bge lbl_8023F928 /* 8023F91C 0023B57C 2C 06 00 00 */ cmpwi r6, 0 /* 8023F920 0023B580 40 80 00 14 */ bge lbl_8023F934 /* 8023F924 0023B584 48 00 00 4C */ b lbl_8023F970 lbl_8023F928: /* 8023F928 0023B588 2C 06 00 03 */ cmpwi r6, 3 /* 8023F92C 0023B58C 40 80 00 44 */ bge lbl_8023F970 /* 8023F930 0023B590 48 00 00 14 */ b lbl_8023F944 lbl_8023F934: /* 8023F934 0023B594 38 60 00 08 */ li r3, 8 /* 8023F938 0023B598 48 00 00 38 */ b lbl_8023F970 lbl_8023F93C: /* 8023F93C 0023B59C 38 60 00 09 */ li r3, 9 /* 8023F940 0023B5A0 48 00 00 30 */ b lbl_8023F970 lbl_8023F944: /* 8023F944 0023B5A4 38 60 00 0A */ li r3, 0xa /* 8023F948 0023B5A8 48 00 00 28 */ b lbl_8023F970 lbl_8023F94C: /* 8023F94C 0023B5AC 2C 06 00 02 */ cmpwi r6, 2 /* 8023F950 0023B5B0 41 82 00 1C */ beq lbl_8023F96C /* 8023F954 0023B5B4 40 80 00 1C */ bge lbl_8023F970 /* 8023F958 0023B5B8 2C 06 00 00 */ cmpwi r6, 0 /* 8023F95C 0023B5BC 40 80 00 08 */ bge lbl_8023F964 /* 8023F960 0023B5C0 48 00 00 10 */ b lbl_8023F970 lbl_8023F964: /* 8023F964 0023B5C4 38 60 00 03 */ li r3, 3 /* 8023F968 0023B5C8 48 00 00 08 */ b lbl_8023F970 lbl_8023F96C: /* 8023F96C 0023B5CC 38 60 00 04 */ li r3, 4 lbl_8023F970: /* 8023F970 0023B5D0 2C 03 00 00 */ cmpwi r3, 0 /* 8023F974 0023B5D4 40 82 00 0C */ bne lbl_8023F980 /* 8023F978 0023B5D8 38 60 00 00 */ li r3, 0 /* 8023F97C 0023B5DC 48 00 01 68 */ b lbl_8023FAE4 lbl_8023F980: /* 8023F980 0023B5E0 3C A0 80 42 */ lis r5, lbl_80424840@ha /* 8023F984 0023B5E4 38 C0 00 00 */ li r6, 0 /* 8023F988 0023B5E8 38 A5 48 40 */ addi r5, r5, lbl_80424840@l /* 8023F98C 0023B5EC 48 00 00 68 */ b lbl_8023F9F4 lbl_8023F990: /* 8023F990 0023B5F0 7C 00 18 00 */ cmpw r0, r3 /* 8023F994 0023B5F4 40 82 00 5C */ bne lbl_8023F9F0 /* 8023F998 0023B5F8 2C 04 00 02 */ cmpwi r4, 2 /* 8023F99C 0023B5FC 41 82 00 3C */ beq lbl_8023F9D8 /* 8023F9A0 0023B600 40 80 00 14 */ bge lbl_8023F9B4 /* 8023F9A4 0023B604 2C 04 00 00 */ cmpwi r4, 0 /* 8023F9A8 0023B608 41 82 00 18 */ beq lbl_8023F9C0 /* 8023F9AC 0023B60C 40 80 00 20 */ bge lbl_8023F9CC /* 8023F9B0 0023B610 48 00 00 50 */ b lbl_8023FA00 lbl_8023F9B4: /* 8023F9B4 0023B614 2C 04 00 04 */ cmpwi r4, 4 /* 8023F9B8 0023B618 40 80 00 48 */ bge lbl_8023FA00 /* 8023F9BC 0023B61C 48 00 00 28 */ b lbl_8023F9E4 lbl_8023F9C0: /* 8023F9C0 0023B620 80 C5 00 04 */ lwz r6, 4(r5) /* 8023F9C4 0023B624 3B C0 02 D0 */ li r30, 0x2d0 /* 8023F9C8 0023B628 48 00 00 38 */ b lbl_8023FA00 lbl_8023F9CC: /* 8023F9CC 0023B62C 80 C5 00 08 */ lwz r6, 8(r5) /* 8023F9D0 0023B630 3B C0 02 D0 */ li r30, 0x2d0 /* 8023F9D4 0023B634 48 00 00 2C */ b lbl_8023FA00 lbl_8023F9D8: /* 8023F9D8 0023B638 80 C5 00 0C */ lwz r6, 0xc(r5) /* 8023F9DC 0023B63C 3B C0 02 D0 */ li r30, 0x2d0 /* 8023F9E0 0023B640 48 00 00 20 */ b lbl_8023FA00 lbl_8023F9E4: /* 8023F9E4 0023B644 80 C5 00 10 */ lwz r6, 0x10(r5) /* 8023F9E8 0023B648 3B C0 02 D0 */ li r30, 0x2d0 /* 8023F9EC 0023B64C 48 00 00 14 */ b lbl_8023FA00 lbl_8023F9F0: /* 8023F9F0 0023B650 38 A5 00 14 */ addi r5, r5, 0x14 lbl_8023F9F4: /* 8023F9F4 0023B654 80 05 00 00 */ lwz r0, 0(r5) /* 8023F9F8 0023B658 2C 00 00 00 */ cmpwi r0, 0 /* 8023F9FC 0023B65C 40 82 FF 94 */ bne lbl_8023F990 lbl_8023FA00: /* 8023FA00 0023B660 2C 06 00 00 */ cmpwi r6, 0 /* 8023FA04 0023B664 40 82 00 0C */ bne lbl_8023FA10 /* 8023FA08 0023B668 38 60 00 00 */ li r3, 0 /* 8023FA0C 0023B66C 48 00 00 D8 */ b lbl_8023FAE4 lbl_8023FA10: /* 8023FA10 0023B670 7F E3 FB 78 */ mr r3, r31 /* 8023FA14 0023B674 7C C4 33 78 */ mr r4, r6 /* 8023FA18 0023B678 38 A0 00 3C */ li r5, 0x3c /* 8023FA1C 0023B67C 4B DC 45 E5 */ bl memcpy /* 8023FA20 0023B680 A0 1F 00 5C */ lhz r0, 0x5c(r31) /* 8023FA24 0023B684 2C 00 00 00 */ cmpwi r0, 0 /* 8023FA28 0023B688 41 82 00 08 */ beq lbl_8023FA30 /* 8023FA2C 0023B68C B0 1F 00 06 */ sth r0, 6(r31) lbl_8023FA30: /* 8023FA30 0023B690 2C 1D 00 00 */ cmpwi r29, 0 /* 8023FA34 0023B694 9B BF 00 7A */ stb r29, 0x7a(r31) /* 8023FA38 0023B698 41 82 00 1C */ beq lbl_8023FA54 /* 8023FA3C 0023B69C 2C 1C 00 01 */ cmpwi r28, 1 /* 8023FA40 0023B6A0 B3 DF 00 0E */ sth r30, 0xe(r31) /* 8023FA44 0023B6A4 40 82 00 34 */ bne lbl_8023FA78 /* 8023FA48 0023B6A8 38 1E FF D8 */ addi r0, r30, -40 /* 8023FA4C 0023B6AC B0 1F 00 0E */ sth r0, 0xe(r31) /* 8023FA50 0023B6B0 48 00 00 28 */ b lbl_8023FA78 lbl_8023FA54: /* 8023FA54 0023B6B4 2C 1C 00 01 */ cmpwi r28, 1 /* 8023FA58 0023B6B8 41 82 00 10 */ beq lbl_8023FA68 /* 8023FA5C 0023B6BC A0 7F 00 0E */ lhz r3, 0xe(r31) /* 8023FA60 0023B6C0 38 03 00 14 */ addi r0, r3, 0x14 /* 8023FA64 0023B6C4 B0 1F 00 0E */ sth r0, 0xe(r31) lbl_8023FA68: /* 8023FA68 0023B6C8 A0 1F 00 0E */ lhz r0, 0xe(r31) /* 8023FA6C 0023B6CC 7C 00 F0 40 */ cmplw r0, r30 /* 8023FA70 0023B6D0 40 81 00 08 */ ble lbl_8023FA78 /* 8023FA74 0023B6D4 B3 DF 00 0E */ sth r30, 0xe(r31) lbl_8023FA78: /* 8023FA78 0023B6D8 A0 1F 00 0E */ lhz r0, 0xe(r31) /* 8023FA7C 0023B6DC 2C 1C 00 01 */ cmpwi r28, 1 /* 8023FA80 0023B6E0 93 9F 00 70 */ stw r28, 0x70(r31) /* 8023FA84 0023B6E4 7C 00 F0 50 */ subf r0, r0, r30 /* 8023FA88 0023B6E8 7C 00 0E 70 */ srawi r0, r0, 1 /* 8023FA8C 0023B6EC B0 1F 00 0A */ sth r0, 0xa(r31) /* 8023FA90 0023B6F0 40 82 00 10 */ bne lbl_8023FAA0 /* 8023FA94 0023B6F4 38 00 00 32 */ li r0, 0x32 /* 8023FA98 0023B6F8 98 1F 00 59 */ stb r0, 0x59(r31) /* 8023FA9C 0023B6FC 48 00 00 0C */ b lbl_8023FAA8 lbl_8023FAA0: /* 8023FAA0 0023B700 38 00 00 3C */ li r0, 0x3c /* 8023FAA4 0023B704 98 1F 00 59 */ stb r0, 0x59(r31) lbl_8023FAA8: /* 8023FAA8 0023B708 88 7F 00 59 */ lbz r3, 0x59(r31) /* 8023FAAC 0023B70C 3C 00 43 30 */ lis r0, 0x4330 /* 8023FAB0 0023B710 90 01 00 08 */ stw r0, 8(r1) /* 8023FAB4 0023B714 C8 42 9E 08 */ lfd f2, lbl_80642408-_SDA2_BASE_(r2) /* 8023FAB8 0023B718 90 61 00 0C */ stw r3, 0xc(r1) /* 8023FABC 0023B71C C0 02 9E 00 */ lfs f0, lbl_80642400-_SDA2_BASE_(r2) /* 8023FAC0 0023B720 C8 21 00 08 */ lfd f1, 8(r1) /* 8023FAC4 0023B724 EC 21 10 28 */ fsubs f1, f1, f2 /* 8023FAC8 0023B728 EC 01 00 24 */ fdivs f0, f1, f0 /* 8023FACC 0023B72C D0 0D 86 C8 */ stfs f0, lbl_8063D988-_SDA_BASE_(r13) /* 8023FAD0 0023B730 A0 7F 00 06 */ lhz r3, 6(r31) /* 8023FAD4 0023B734 A0 9F 00 08 */ lhz r4, 8(r31) /* 8023FAD8 0023B738 48 04 1C 29 */ bl GXGetYScaleFactor /* 8023FADC 0023B73C D0 3F 00 68 */ stfs f1, 0x68(r31) /* 8023FAE0 0023B740 38 60 00 01 */ li r3, 1 lbl_8023FAE4: /* 8023FAE4 0023B744 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023FAE8 0023B748 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8023FAEC 0023B74C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8023FAF0 0023B750 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8023FAF4 0023B754 83 81 00 10 */ lwz r28, 0x10(r1) /* 8023FAF8 0023B758 7C 08 03 A6 */ mtlr r0 /* 8023FAFC 0023B75C 38 21 00 20 */ addi r1, r1, 0x20 /* 8023FB00 0023B760 4E 80 00 20 */ blr .global func_8023FB04 func_8023FB04: /* 8023FB04 0023B764 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023FB08 0023B768 7C 08 02 A6 */ mflr r0 /* 8023FB0C 0023B76C 90 01 00 14 */ stw r0, 0x14(r1) /* 8023FB10 0023B770 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023FB14 0023B774 7C 9F 23 78 */ mr r31, r4 /* 8023FB18 0023B778 93 C1 00 08 */ stw r30, 8(r1) /* 8023FB1C 0023B77C 7C 7E 1B 78 */ mr r30, r3 /* 8023FB20 0023B780 38 60 00 00 */ li r3, 0 /* 8023FB24 0023B784 48 03 83 19 */ bl VISetPreRetraceCallback /* 8023FB28 0023B788 38 60 00 00 */ li r3, 0 /* 8023FB2C 0023B78C 48 03 83 55 */ bl VISetPostRetraceCallback /* 8023FB30 0023B790 38 60 00 01 */ li r3, 1 /* 8023FB34 0023B794 48 03 9C F5 */ bl VISetBlack /* 8023FB38 0023B798 7F C3 F3 78 */ mr r3, r30 /* 8023FB3C 0023B79C 48 03 90 85 */ bl VIConfigure /* 8023FB40 0023B7A0 48 03 9B 69 */ bl VIFlush /* 8023FB44 0023B7A4 38 00 00 01 */ li r0, 1 /* 8023FB48 0023B7A8 7F C3 F3 78 */ mr r3, r30 /* 8023FB4C 0023B7AC 98 1E 00 5B */ stb r0, 0x5b(r30) /* 8023FB50 0023B7B0 4B FF F8 CD */ bl func_8023F41C /* 8023FB54 0023B7B4 7F C3 F3 78 */ mr r3, r30 /* 8023FB58 0023B7B8 4B FF F8 C5 */ bl func_8023F41C /* 8023FB5C 0023B7BC 3C 60 80 24 */ lis r3, lbl_8023EE6C@ha /* 8023FB60 0023B7C0 38 63 EE 6C */ addi r3, r3, lbl_8023EE6C@l /* 8023FB64 0023B7C4 48 03 82 D9 */ bl VISetPreRetraceCallback /* 8023FB68 0023B7C8 3C 60 80 24 */ lis r3, lbl_8023EF3C@ha /* 8023FB6C 0023B7CC 38 63 EF 3C */ addi r3, r3, lbl_8023EF3C@l /* 8023FB70 0023B7D0 48 03 83 11 */ bl VISetPostRetraceCallback /* 8023FB74 0023B7D4 28 1F 00 01 */ cmplwi r31, 1 /* 8023FB78 0023B7D8 40 82 00 10 */ bne lbl_8023FB88 /* 8023FB7C 0023B7DC 38 60 00 00 */ li r3, 0 /* 8023FB80 0023B7E0 48 03 9C A9 */ bl VISetBlack /* 8023FB84 0023B7E4 48 03 9B 25 */ bl VIFlush lbl_8023FB88: /* 8023FB88 0023B7E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023FB8C 0023B7EC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023FB90 0023B7F0 83 C1 00 08 */ lwz r30, 8(r1) /* 8023FB94 0023B7F4 7C 08 03 A6 */ mtlr r0 /* 8023FB98 0023B7F8 38 21 00 10 */ addi r1, r1, 0x10 /* 8023FB9C 0023B7FC 4E 80 00 20 */ blr .global func_8023FBA0 func_8023FBA0: /* 8023FBA0 0023B800 54 A7 F0 BF */ rlwinm. r7, r5, 0x1e, 2, 0x1f /* 8023FBA4 0023B804 3C 60 10 80 */ lis r3, 0x10801080@ha /* 8023FBA8 0023B808 80 C4 00 04 */ lwz r6, 4(r4) /* 8023FBAC 0023B80C 38 63 10 80 */ addi r3, r3, 0x10801080@l /* 8023FBB0 0023B810 41 82 00 50 */ beq lbl_8023FC00 /* 8023FBB4 0023B814 54 E0 E8 FF */ rlwinm. r0, r7, 0x1d, 3, 0x1f /* 8023FBB8 0023B818 7C 09 03 A6 */ mtctr r0 /* 8023FBBC 0023B81C 41 82 00 34 */ beq lbl_8023FBF0 lbl_8023FBC0: /* 8023FBC0 0023B820 90 66 00 00 */ stw r3, 0(r6) /* 8023FBC4 0023B824 90 66 00 04 */ stw r3, 4(r6) /* 8023FBC8 0023B828 90 66 00 08 */ stw r3, 8(r6) /* 8023FBCC 0023B82C 90 66 00 0C */ stw r3, 0xc(r6) /* 8023FBD0 0023B830 90 66 00 10 */ stw r3, 0x10(r6) /* 8023FBD4 0023B834 90 66 00 14 */ stw r3, 0x14(r6) /* 8023FBD8 0023B838 90 66 00 18 */ stw r3, 0x18(r6) /* 8023FBDC 0023B83C 90 66 00 1C */ stw r3, 0x1c(r6) /* 8023FBE0 0023B840 38 C6 00 20 */ addi r6, r6, 0x20 /* 8023FBE4 0023B844 42 00 FF DC */ bdnz lbl_8023FBC0 /* 8023FBE8 0023B848 70 E7 00 07 */ andi. r7, r7, 7 /* 8023FBEC 0023B84C 41 82 00 14 */ beq lbl_8023FC00 lbl_8023FBF0: /* 8023FBF0 0023B850 7C E9 03 A6 */ mtctr r7 lbl_8023FBF4: /* 8023FBF4 0023B854 90 66 00 00 */ stw r3, 0(r6) /* 8023FBF8 0023B858 38 C6 00 04 */ addi r6, r6, 4 /* 8023FBFC 0023B85C 42 00 FF F8 */ bdnz lbl_8023FBF4 lbl_8023FC00: /* 8023FC00 0023B860 80 64 00 04 */ lwz r3, 4(r4) /* 8023FC04 0023B864 7C A4 2B 78 */ mr r4, r5 /* 8023FC08 0023B868 48 02 AA 4C */ b DCFlushRange .global func_8023FC0C func_8023FC0C: /* 8023FC0C 0023B86C 88 03 00 58 */ lbz r0, 0x58(r3) /* 8023FC10 0023B870 7C 65 1B 78 */ mr r5, r3 /* 8023FC14 0023B874 38 C0 00 00 */ li r6, 0 /* 8023FC18 0023B878 7C 09 03 A6 */ mtctr r0 /* 8023FC1C 0023B87C 2C 00 00 00 */ cmpwi r0, 0 /* 8023FC20 0023B880 40 81 00 2C */ ble lbl_8023FC4C lbl_8023FC24: /* 8023FC24 0023B884 80 05 00 3C */ lwz r0, 0x3c(r5) /* 8023FC28 0023B888 7C 04 00 00 */ cmpw r4, r0 /* 8023FC2C 0023B88C 40 82 00 14 */ bne lbl_8023FC40 /* 8023FC30 0023B890 54 C0 18 38 */ slwi r0, r6, 3 /* 8023FC34 0023B894 7C 63 02 14 */ add r3, r3, r0 /* 8023FC38 0023B898 38 63 00 3C */ addi r3, r3, 0x3c /* 8023FC3C 0023B89C 4E 80 00 20 */ blr lbl_8023FC40: /* 8023FC40 0023B8A0 38 A5 00 08 */ addi r5, r5, 8 /* 8023FC44 0023B8A4 38 C6 00 01 */ addi r6, r6, 1 /* 8023FC48 0023B8A8 42 00 FF DC */ bdnz lbl_8023FC24 lbl_8023FC4C: /* 8023FC4C 0023B8AC 38 60 00 00 */ li r3, 0 /* 8023FC50 0023B8B0 4E 80 00 20 */ blr .global func_8023FC54 func_8023FC54: /* 8023FC54 0023B8B4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023FC58 0023B8B8 7C 08 02 A6 */ mflr r0 /* 8023FC5C 0023B8BC 90 01 00 24 */ stw r0, 0x24(r1) /* 8023FC60 0023B8C0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8023FC64 0023B8C4 93 C1 00 18 */ stw r30, 0x18(r1) /* 8023FC68 0023B8C8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8023FC6C 0023B8CC 7C 9D 23 78 */ mr r29, r4 /* 8023FC70 0023B8D0 93 81 00 10 */ stw r28, 0x10(r1) /* 8023FC74 0023B8D4 7C 7C 1B 78 */ mr r28, r3 /* 8023FC78 0023B8D8 80 AD A3 D8 */ lwz r5, render_context_ptr-_SDA_BASE_(r13) /* 8023FC7C 0023B8DC 88 05 17 18 */ lbz r0, 0x1718(r5) /* 8023FC80 0023B8E0 2C 00 00 00 */ cmpwi r0, 0 /* 8023FC84 0023B8E4 41 82 00 0C */ beq lbl_8023FC90 /* 8023FC88 0023B8E8 38 60 00 00 */ li r3, 0 /* 8023FC8C 0023B8EC 48 00 00 B8 */ b lbl_8023FD44 lbl_8023FC90: /* 8023FC90 0023B8F0 7C A3 2B 78 */ mr r3, r5 /* 8023FC94 0023B8F4 38 81 00 0C */ addi r4, r1, 0xc /* 8023FC98 0023B8F8 4B FF 15 15 */ bl func_802311AC lbl_8023FC9C: /* 8023FC9C 0023B8FC 48 02 EA C1 */ bl OSDisableInterrupts /* 8023FCA0 0023B900 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13) /* 8023FCA4 0023B904 7C 7E 1B 78 */ mr r30, r3 /* 8023FCA8 0023B908 88 04 17 18 */ lbz r0, 0x1718(r4) /* 8023FCAC 0023B90C 2C 00 00 00 */ cmpwi r0, 0 /* 8023FCB0 0023B910 40 82 00 10 */ bne lbl_8023FCC0 /* 8023FCB4 0023B914 88 04 17 19 */ lbz r0, 0x1719(r4) /* 8023FCB8 0023B918 2C 00 00 00 */ cmpwi r0, 0 /* 8023FCBC 0023B91C 41 82 00 10 */ beq lbl_8023FCCC lbl_8023FCC0: /* 8023FCC0 0023B920 3B E0 00 00 */ li r31, 0 /* 8023FCC4 0023B924 3B A0 00 00 */ li r29, 0 /* 8023FCC8 0023B928 48 00 00 14 */ b lbl_8023FCDC lbl_8023FCCC: /* 8023FCCC 0023B92C 7F 83 E3 78 */ mr r3, r28 /* 8023FCD0 0023B930 38 80 00 03 */ li r4, 3 /* 8023FCD4 0023B934 4B FF FF 39 */ bl func_8023FC0C /* 8023FCD8 0023B938 7C 7F 1B 78 */ mr r31, r3 lbl_8023FCDC: /* 8023FCDC 0023B93C 7F C3 F3 78 */ mr r3, r30 /* 8023FCE0 0023B940 48 02 EA A5 */ bl OSRestoreInterrupts /* 8023FCE4 0023B944 2C 1D 00 00 */ cmpwi r29, 0 /* 8023FCE8 0023B948 41 82 00 0C */ beq lbl_8023FCF4 /* 8023FCEC 0023B94C 2C 1F 00 00 */ cmpwi r31, 0 /* 8023FCF0 0023B950 41 82 00 18 */ beq lbl_8023FD08 lbl_8023FCF4: /* 8023FCF4 0023B954 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023FCF8 0023B958 38 81 00 0C */ addi r4, r1, 0xc /* 8023FCFC 0023B95C 4B FF 15 61 */ bl func_8023125C /* 8023FD00 0023B960 7F E3 FB 78 */ mr r3, r31 /* 8023FD04 0023B964 48 00 00 40 */ b lbl_8023FD44 lbl_8023FD08: /* 8023FD08 0023B968 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023FD0C 0023B96C 38 81 00 0C */ addi r4, r1, 0xc /* 8023FD10 0023B970 4B FF 14 AD */ bl func_802311BC /* 8023FD14 0023B974 38 61 00 08 */ addi r3, r1, 8 /* 8023FD18 0023B978 38 A1 00 09 */ addi r5, r1, 9 /* 8023FD1C 0023B97C 7C 64 1B 78 */ mr r4, r3 /* 8023FD20 0023B980 7C 66 1B 78 */ mr r6, r3 /* 8023FD24 0023B984 7C 67 1B 78 */ mr r7, r3 /* 8023FD28 0023B988 48 03 F3 21 */ bl GXGetGPStatus /* 8023FD2C 0023B98C 88 01 00 09 */ lbz r0, 9(r1) /* 8023FD30 0023B990 28 00 00 01 */ cmplwi r0, 1 /* 8023FD34 0023B994 40 82 FF 68 */ bne lbl_8023FC9C /* 8023FD38 0023B998 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023FD3C 0023B99C 4B FF 16 39 */ bl func_80231374 /* 8023FD40 0023B9A0 4B FF FF 5C */ b lbl_8023FC9C lbl_8023FD44: /* 8023FD44 0023B9A4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023FD48 0023B9A8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8023FD4C 0023B9AC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8023FD50 0023B9B0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8023FD54 0023B9B4 83 81 00 10 */ lwz r28, 0x10(r1) /* 8023FD58 0023B9B8 7C 08 03 A6 */ mtlr r0 /* 8023FD5C 0023B9BC 38 21 00 20 */ addi r1, r1, 0x20 /* 8023FD60 0023B9C0 4E 80 00 20 */ blr .global func_8023FD64 func_8023FD64: /* 8023FD64 0023B9C4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023FD68 0023B9C8 7C 08 02 A6 */ mflr r0 /* 8023FD6C 0023B9CC C0 02 9E 14 */ lfs f0, lbl_80642414-_SDA2_BASE_(r2) /* 8023FD70 0023B9D0 90 01 00 14 */ stw r0, 0x14(r1) /* 8023FD74 0023B9D4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023FD78 0023B9D8 7C 7F 1B 78 */ mr r31, r3 /* 8023FD7C 0023B9DC C0 23 00 8C */ lfs f1, 0x8c(r3) /* 8023FD80 0023B9E0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8023FD84 0023B9E4 D0 23 00 90 */ stfs f1, 0x90(r3) /* 8023FD88 0023B9E8 40 81 00 0C */ ble lbl_8023FD94 /* 8023FD8C 0023B9EC C0 02 9E 18 */ lfs f0, lbl_80642418-_SDA2_BASE_(r2) /* 8023FD90 0023B9F0 D0 03 00 90 */ stfs f0, 0x90(r3) lbl_8023FD94: /* 8023FD94 0023B9F4 88 03 00 83 */ lbz r0, 0x83(r3) /* 8023FD98 0023B9F8 2C 00 00 00 */ cmpwi r0, 0 /* 8023FD9C 0023B9FC 40 82 00 24 */ bne lbl_8023FDC0 /* 8023FDA0 0023BA00 88 03 00 82 */ lbz r0, 0x82(r3) /* 8023FDA4 0023BA04 2C 00 00 00 */ cmpwi r0, 0 /* 8023FDA8 0023BA08 40 82 00 18 */ bne lbl_8023FDC0 /* 8023FDAC 0023BA0C 7F E3 FB 78 */ mr r3, r31 /* 8023FDB0 0023BA10 48 00 02 3D */ bl func_8023FFEC /* 8023FDB4 0023BA14 C8 1F 00 A0 */ lfd f0, 0xa0(r31) /* 8023FDB8 0023BA18 FC 00 08 2A */ fadd f0, f0, f1 /* 8023FDBC 0023BA1C D8 1F 00 A0 */ stfd f0, 0xa0(r31) lbl_8023FDC0: /* 8023FDC0 0023BA20 A0 7F 00 08 */ lhz r3, 8(r31) /* 8023FDC4 0023BA24 A0 DF 00 10 */ lhz r6, 0x10(r31) /* 8023FDC8 0023BA28 54 60 08 3C */ slwi r0, r3, 1 /* 8023FDCC 0023BA2C 54 64 17 FE */ rlwinm r4, r3, 2, 0x1f, 0x1f /* 8023FDD0 0023BA30 7C C5 FE 70 */ srawi r5, r6, 0x1f /* 8023FDD4 0023BA34 88 7F 00 18 */ lbz r3, 0x18(r31) /* 8023FDD8 0023BA38 7C 00 30 10 */ subfc r0, r0, r6 /* 8023FDDC 0023BA3C 7C 05 21 14 */ adde r0, r5, r4 /* 8023FDE0 0023BA40 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 8023FDE4 0023BA44 48 04 4A FD */ bl GXSetFieldMode /* 8023FDE8 0023BA48 88 1F 00 19 */ lbz r0, 0x19(r31) /* 8023FDEC 0023BA4C 28 00 00 01 */ cmplwi r0, 1 /* 8023FDF0 0023BA50 40 82 00 14 */ bne lbl_8023FE04 /* 8023FDF4 0023BA54 38 60 00 02 */ li r3, 2 /* 8023FDF8 0023BA58 38 80 00 00 */ li r4, 0 /* 8023FDFC 0023BA5C 48 04 49 AD */ bl GXSetPixelFmt /* 8023FE00 0023BA60 48 00 00 10 */ b lbl_8023FE10 lbl_8023FE04: /* 8023FE04 0023BA64 80 7F 00 64 */ lwz r3, 0x64(r31) /* 8023FE08 0023BA68 38 80 00 00 */ li r4, 0 /* 8023FE0C 0023BA6C 48 04 49 9D */ bl GXSetPixelFmt lbl_8023FE10: /* 8023FE10 0023BA70 48 03 9A 99 */ bl VIGetNextField /* 8023FE14 0023BA74 98 7F 00 5A */ stb r3, 0x5a(r31) /* 8023FE18 0023BA78 48 04 08 8D */ bl GXFlush /* 8023FE1C 0023BA7C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023FE20 0023BA80 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023FE24 0023BA84 7C 08 03 A6 */ mtlr r0 /* 8023FE28 0023BA88 38 21 00 10 */ addi r1, r1, 0x10 /* 8023FE2C 0023BA8C 4E 80 00 20 */ blr lbl_8023FE30: /* 8023FE30 0023BA90 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023FE34 0023BA94 7C 08 02 A6 */ mflr r0 /* 8023FE38 0023BA98 2C 04 00 00 */ cmpwi r4, 0 /* 8023FE3C 0023BA9C 90 01 00 24 */ stw r0, 0x24(r1) /* 8023FE40 0023BAA0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8023FE44 0023BAA4 7C 7F 1B 78 */ mr r31, r3 /* 8023FE48 0023BAA8 41 82 00 14 */ beq lbl_8023FE5C /* 8023FE4C 0023BAAC 38 61 00 0C */ addi r3, r1, 0xc /* 8023FE50 0023BAB0 38 81 00 08 */ addi r4, r1, 8 /* 8023FE54 0023BAB4 48 01 B8 65 */ bl func_8025B6B8 /* 8023FE58 0023BAB8 48 00 00 10 */ b lbl_8023FE68 lbl_8023FE5C: /* 8023FE5C 0023BABC C0 02 9D EC */ lfs f0, lbl_806423EC-_SDA2_BASE_(r2) /* 8023FE60 0023BAC0 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8023FE64 0023BAC4 D0 01 00 08 */ stfs f0, 8(r1) lbl_8023FE68: /* 8023FE68 0023BAC8 88 1F 00 18 */ lbz r0, 0x18(r31) /* 8023FE6C 0023BACC 2C 00 00 00 */ cmpwi r0, 0 /* 8023FE70 0023BAD0 41 82 00 38 */ beq lbl_8023FEA8 /* 8023FE74 0023BAD4 C0 7F 00 A8 */ lfs f3, 0xa8(r31) /* 8023FE78 0023BAD8 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8023FE7C 0023BADC C0 5F 00 AC */ lfs f2, 0xac(r31) /* 8023FE80 0023BAE0 C0 01 00 08 */ lfs f0, 8(r1) /* 8023FE84 0023BAE4 EC 23 08 2A */ fadds f1, f3, f1 /* 8023FE88 0023BAE8 C0 7F 00 B0 */ lfs f3, 0xb0(r31) /* 8023FE8C 0023BAEC EC 42 00 2A */ fadds f2, f2, f0 /* 8023FE90 0023BAF0 C0 9F 00 B4 */ lfs f4, 0xb4(r31) /* 8023FE94 0023BAF4 C0 BF 00 B8 */ lfs f5, 0xb8(r31) /* 8023FE98 0023BAF8 C0 DF 00 BC */ lfs f6, 0xbc(r31) /* 8023FE9C 0023BAFC 88 7F 00 5A */ lbz r3, 0x5a(r31) /* 8023FEA0 0023BB00 48 04 6D F5 */ bl GXSetViewportJitter /* 8023FEA4 0023BB04 48 00 00 30 */ b lbl_8023FED4 lbl_8023FEA8: /* 8023FEA8 0023BB08 C0 7F 00 A8 */ lfs f3, 0xa8(r31) /* 8023FEAC 0023BB0C C0 21 00 0C */ lfs f1, 0xc(r1) /* 8023FEB0 0023BB10 C0 5F 00 AC */ lfs f2, 0xac(r31) /* 8023FEB4 0023BB14 C0 01 00 08 */ lfs f0, 8(r1) /* 8023FEB8 0023BB18 EC 23 08 2A */ fadds f1, f3, f1 /* 8023FEBC 0023BB1C C0 7F 00 B0 */ lfs f3, 0xb0(r31) /* 8023FEC0 0023BB20 EC 42 00 2A */ fadds f2, f2, f0 /* 8023FEC4 0023BB24 C0 9F 00 B4 */ lfs f4, 0xb4(r31) /* 8023FEC8 0023BB28 C0 BF 00 B8 */ lfs f5, 0xb8(r31) /* 8023FECC 0023BB2C C0 DF 00 BC */ lfs f6, 0xbc(r31) /* 8023FED0 0023BB30 48 04 6E 01 */ bl GXSetViewport lbl_8023FED4: /* 8023FED4 0023BB34 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023FED8 0023BB38 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8023FEDC 0023BB3C 7C 08 03 A6 */ mtlr r0 /* 8023FEE0 0023BB40 38 21 00 20 */ addi r1, r1, 0x20 /* 8023FEE4 0023BB44 4E 80 00 20 */ blr .global func_8023FEE8 func_8023FEE8: /* 8023FEE8 0023BB48 D0 23 00 A8 */ stfs f1, 0xa8(r3) /* 8023FEEC 0023BB4C 38 80 00 01 */ li r4, 1 /* 8023FEF0 0023BB50 D0 43 00 AC */ stfs f2, 0xac(r3) /* 8023FEF4 0023BB54 D0 63 00 B0 */ stfs f3, 0xb0(r3) /* 8023FEF8 0023BB58 D0 83 00 B4 */ stfs f4, 0xb4(r3) /* 8023FEFC 0023BB5C D0 A3 00 B8 */ stfs f5, 0xb8(r3) /* 8023FF00 0023BB60 D0 C3 00 BC */ stfs f6, 0xbc(r3) /* 8023FF04 0023BB64 4B FF FF 2C */ b lbl_8023FE30 .global func_8023FF08 func_8023FF08: /* 8023FF08 0023BB68 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023FF0C 0023BB6C 7C 08 02 A6 */ mflr r0 /* 8023FF10 0023BB70 7C AA 2B 78 */ mr r10, r5 /* 8023FF14 0023BB74 90 01 00 14 */ stw r0, 0x14(r1) /* 8023FF18 0023BB78 34 01 00 0A */ addic. r0, r1, 0xa /* 8023FF1C 0023BB7C B0 83 00 C0 */ sth r4, 0xc0(r3) /* 8023FF20 0023BB80 B0 A3 00 C2 */ sth r5, 0xc2(r3) /* 8023FF24 0023BB84 B0 C3 00 C4 */ sth r6, 0xc4(r3) /* 8023FF28 0023BB88 B0 E3 00 C6 */ sth r7, 0xc6(r3) /* 8023FF2C 0023BB8C 41 82 00 0C */ beq lbl_8023FF38 /* 8023FF30 0023BB90 A0 03 00 04 */ lhz r0, 4(r3) /* 8023FF34 0023BB94 B0 01 00 0A */ sth r0, 0xa(r1) lbl_8023FF38: /* 8023FF38 0023BB98 34 01 00 08 */ addic. r0, r1, 8 /* 8023FF3C 0023BB9C 41 82 00 0C */ beq lbl_8023FF48 /* 8023FF40 0023BBA0 A0 03 00 06 */ lhz r0, 6(r3) /* 8023FF44 0023BBA4 B0 01 00 08 */ sth r0, 8(r1) lbl_8023FF48: /* 8023FF48 0023BBA8 A1 01 00 0A */ lhz r8, 0xa(r1) /* 8023FF4C 0023BBAC A0 61 00 08 */ lhz r3, 8(r1) /* 8023FF50 0023BBB0 39 08 FF FF */ addi r8, r8, -1 /* 8023FF54 0023BBB4 55 09 04 3E */ clrlwi r9, r8, 0x10 /* 8023FF58 0023BBB8 38 03 FF FF */ addi r0, r3, -1 /* 8023FF5C 0023BBBC 7C 04 48 40 */ cmplw r4, r9 /* 8023FF60 0023BBC0 B1 01 00 0A */ sth r8, 0xa(r1) /* 8023FF64 0023BBC4 B0 01 00 08 */ sth r0, 8(r1) /* 8023FF68 0023BBC8 40 81 00 08 */ ble lbl_8023FF70 /* 8023FF6C 0023BBCC 7D 24 4B 78 */ mr r4, r9 lbl_8023FF70: /* 8023FF70 0023BBD0 54 83 04 3E */ clrlwi r3, r4, 0x10 /* 8023FF74 0023BBD4 7C 63 32 14 */ add r3, r3, r6 /* 8023FF78 0023BBD8 7C 03 48 00 */ cmpw r3, r9 /* 8023FF7C 0023BBDC 40 81 00 0C */ ble lbl_8023FF88 /* 8023FF80 0023BBE0 7C 64 48 50 */ subf r3, r4, r9 /* 8023FF84 0023BBE4 54 66 04 3E */ clrlwi r6, r3, 0x10 lbl_8023FF88: /* 8023FF88 0023BBE8 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 8023FF8C 0023BBEC 7C 05 18 40 */ cmplw r5, r3 /* 8023FF90 0023BBF0 40 81 00 08 */ ble lbl_8023FF98 /* 8023FF94 0023BBF4 7C 6A 1B 78 */ mr r10, r3 lbl_8023FF98: /* 8023FF98 0023BBF8 55 40 04 3E */ clrlwi r0, r10, 0x10 /* 8023FF9C 0023BBFC 7C 00 3A 14 */ add r0, r0, r7 /* 8023FFA0 0023BC00 7C 00 18 00 */ cmpw r0, r3 /* 8023FFA4 0023BC04 40 81 00 0C */ ble lbl_8023FFB0 /* 8023FFA8 0023BC08 7C 0A 18 50 */ subf r0, r10, r3 /* 8023FFAC 0023BC0C 54 07 04 3E */ clrlwi r7, r0, 0x10 lbl_8023FFB0: /* 8023FFB0 0023BC10 7C C5 33 78 */ mr r5, r6 /* 8023FFB4 0023BC14 54 83 04 3E */ clrlwi r3, r4, 0x10 /* 8023FFB8 0023BC18 7C E6 3B 78 */ mr r6, r7 /* 8023FFBC 0023BC1C 55 44 04 3E */ clrlwi r4, r10, 0x10 /* 8023FFC0 0023BC20 48 04 6D 3D */ bl GXSetScissor /* 8023FFC4 0023BC24 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023FFC8 0023BC28 7C 08 03 A6 */ mtlr r0 /* 8023FFCC 0023BC2C 38 21 00 10 */ addi r1, r1, 0x10 /* 8023FFD0 0023BC30 4E 80 00 20 */ blr .global func_8023FFD4 func_8023FFD4: /* 8023FFD4 0023BC34 7C 80 23 78 */ mr r0, r4 /* 8023FFD8 0023BC38 90 83 00 C8 */ stw r4, 0xc8(r3) /* 8023FFDC 0023BC3C 7C A4 2B 78 */ mr r4, r5 /* 8023FFE0 0023BC40 90 A3 00 CC */ stw r5, 0xcc(r3) /* 8023FFE4 0023BC44 7C 03 03 78 */ mr r3, r0 /* 8023FFE8 0023BC48 48 04 6D 7C */ b GXSetScissorBoxOffset .global func_8023FFEC func_8023FFEC: /* 8023FFEC 0023BC4C 88 03 00 82 */ lbz r0, 0x82(r3) /* 8023FFF0 0023BC50 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023FFF4 0023BC54 2C 00 00 00 */ cmpwi r0, 0 /* 8023FFF8 0023BC58 41 82 00 0C */ beq lbl_80240004 /* 8023FFFC 0023BC5C C0 22 9D EC */ lfs f1, lbl_806423EC-_SDA2_BASE_(r2) /* 80240000 0023BC60 48 00 00 38 */ b lbl_80240038 lbl_80240004: /* 80240004 0023BC64 88 03 00 81 */ lbz r0, 0x81(r3) /* 80240008 0023BC68 2C 00 00 00 */ cmpwi r0, 0 /* 8024000C 0023BC6C 41 82 00 0C */ beq lbl_80240018 /* 80240010 0023BC70 C0 23 00 90 */ lfs f1, 0x90(r3) /* 80240014 0023BC74 48 00 00 24 */ b lbl_80240038 lbl_80240018: /* 80240018 0023BC78 80 63 00 7C */ lwz r3, 0x7c(r3) /* 8024001C 0023BC7C 3C 00 43 30 */ lis r0, 0x4330 /* 80240020 0023BC80 90 01 00 08 */ stw r0, 8(r1) /* 80240024 0023BC84 38 03 00 01 */ addi r0, r3, 1 /* 80240028 0023BC88 C8 22 9E 08 */ lfd f1, lbl_80642408-_SDA2_BASE_(r2) /* 8024002C 0023BC8C 90 01 00 0C */ stw r0, 0xc(r1) /* 80240030 0023BC90 C8 01 00 08 */ lfd f0, 8(r1) /* 80240034 0023BC94 EC 20 08 28 */ fsubs f1, f0, f1 lbl_80240038: /* 80240038 0023BC98 38 21 00 10 */ addi r1, r1, 0x10 /* 8024003C 0023BC9C 4E 80 00 20 */ blr .global func_80240040 func_80240040: /* 80240040 0023BCA0 38 A0 00 01 */ li r5, 1 /* 80240044 0023BCA4 38 6D A4 C0 */ addi r3, r13, lbl_8063F780-_SDA_BASE_ /* 80240048 0023BCA8 38 80 00 04 */ li r4, 4 /* 8024004C 0023BCAC 38 00 00 00 */ li r0, 0 /* 80240050 0023BCB0 98 AD A4 C0 */ stb r5, lbl_8063F780-_SDA_BASE_(r13) /* 80240054 0023BCB4 B0 83 00 02 */ sth r4, 2(r3) /* 80240058 0023BCB8 98 03 00 04 */ stb r0, 4(r3) /* 8024005C 0023BCBC 4E 80 00 20 */ blr