tp/asm/JUtility/JUTPalette.s

85 lines
3.7 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 802de890
.global JUTPalette_NS_storeTLUT
JUTPalette_NS_storeTLUT:
/* 802DE890 002DB7D0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802DE894 002DB7D4 7C 08 02 A6 */ mflr r0
/* 802DE898 002DB7D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802DE89C 002DB7DC 39 61 00 20 */ addi r11, r1, 0x20
/* 802DE8A0 002DB7E0 48 08 39 3D */ bl _savegpr_29
/* 802DE8A4 002DB7E4 7C 7D 1B 78 */ mr r29, r3
/* 802DE8A8 002DB7E8 7C 9E 23 78 */ mr r30, r4
/* 802DE8AC 002DB7EC 7C BF 2B 79 */ or. r31, r5, r5
/* 802DE8B0 002DB7F0 40 82 00 1C */ bne lbl_802DE8CC
/* 802DE8B4 002DB7F4 3C 60 80 3A */ lis r3, lbl_8039D360@ha
/* 802DE8B8 002DB7F8 38 63 D3 60 */ addi r3, r3, lbl_8039D360@l
/* 802DE8BC 002DB7FC 38 80 00 23 */ li r4, 0x23
/* 802DE8C0 002DB800 38 A3 00 0F */ addi r5, r3, 0xf
/* 802DE8C4 002DB804 4C C6 31 82 */ crclr 6
/* 802DE8C8 002DB808 4B D2 85 B5 */ bl OSPanic
lbl_802DE8CC:
/* 802DE8CC 002DB80C 9B DD 00 0C */ stb r30, 0xc(r29)
/* 802DE8D0 002DB810 88 1F 00 00 */ lbz r0, 0(r31)
/* 802DE8D4 002DB814 98 1D 00 0D */ stb r0, 0xd(r29)
/* 802DE8D8 002DB818 88 1F 00 01 */ lbz r0, 1(r31)
/* 802DE8DC 002DB81C 98 1D 00 16 */ stb r0, 0x16(r29)
/* 802DE8E0 002DB820 A0 1F 00 02 */ lhz r0, 2(r31)
/* 802DE8E4 002DB824 B0 1D 00 14 */ sth r0, 0x14(r29)
/* 802DE8E8 002DB828 38 1F 00 20 */ addi r0, r31, 0x20
/* 802DE8EC 002DB82C 90 1D 00 10 */ stw r0, 0x10(r29)
/* 802DE8F0 002DB830 7F A3 EB 78 */ mr r3, r29
/* 802DE8F4 002DB834 80 9D 00 10 */ lwz r4, 0x10(r29)
/* 802DE8F8 002DB838 88 BD 00 0D */ lbz r5, 0xd(r29)
/* 802DE8FC 002DB83C A0 DD 00 14 */ lhz r6, 0x14(r29)
/* 802DE900 002DB840 48 07 FB 69 */ bl GXInitTlutObj
/* 802DE904 002DB844 39 61 00 20 */ addi r11, r1, 0x20
/* 802DE908 002DB848 48 08 39 21 */ bl _restgpr_29
/* 802DE90C 002DB84C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802DE910 002DB850 7C 08 03 A6 */ mtlr r0
/* 802DE914 002DB854 38 21 00 20 */ addi r1, r1, 0x20
/* 802DE918 002DB858 4E 80 00 20 */ blr
.global JUTPalette_NS_storeTLUT_X1_
JUTPalette_NS_storeTLUT_X1_:
/* 802DE91C 002DB85C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802DE920 002DB860 7C 08 02 A6 */ mflr r0
/* 802DE924 002DB864 90 01 00 14 */ stw r0, 0x14(r1)
/* 802DE928 002DB868 98 83 00 0C */ stb r4, 0xc(r3)
/* 802DE92C 002DB86C 98 A3 00 0D */ stb r5, 0xd(r3)
/* 802DE930 002DB870 98 C3 00 16 */ stb r6, 0x16(r3)
/* 802DE934 002DB874 B0 E3 00 14 */ sth r7, 0x14(r3)
/* 802DE938 002DB878 91 03 00 10 */ stw r8, 0x10(r3)
/* 802DE93C 002DB87C 80 83 00 10 */ lwz r4, 0x10(r3)
/* 802DE940 002DB880 88 A3 00 0D */ lbz r5, 0xd(r3)
/* 802DE944 002DB884 A0 C3 00 14 */ lhz r6, 0x14(r3)
/* 802DE948 002DB888 48 07 FB 21 */ bl GXInitTlutObj
/* 802DE94C 002DB88C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802DE950 002DB890 7C 08 03 A6 */ mtlr r0
/* 802DE954 002DB894 38 21 00 10 */ addi r1, r1, 0x10
/* 802DE958 002DB898 4E 80 00 20 */ blr
.global JUTPalette_NS_load
JUTPalette_NS_load:
/* 802DE95C 002DB89C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802DE960 002DB8A0 7C 08 02 A6 */ mflr r0
/* 802DE964 002DB8A4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802DE968 002DB8A8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802DE96C 002DB8AC A0 83 00 14 */ lhz r4, 0x14(r3)
/* 802DE970 002DB8B0 30 04 FF FF */ addic r0, r4, -1
/* 802DE974 002DB8B4 7F E0 21 10 */ subfe r31, r0, r4
/* 802DE978 002DB8B8 57 E0 06 3F */ clrlwi. r0, r31, 0x18
/* 802DE97C 002DB8BC 41 82 00 0C */ beq lbl_802DE988
/* 802DE980 002DB8C0 88 83 00 0C */ lbz r4, 0xc(r3)
/* 802DE984 002DB8C4 48 07 FB 1D */ bl GXLoadTlut
lbl_802DE988:
/* 802DE988 002DB8C8 7F E3 FB 78 */ mr r3, r31
/* 802DE98C 002DB8CC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802DE990 002DB8D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802DE994 002DB8D4 7C 08 03 A6 */ mtlr r0
/* 802DE998 002DB8D8 38 21 00 10 */ addi r1, r1, 0x10
/* 802DE99C 002DB8DC 4E 80 00 20 */ blr