.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global GXSetTevOp GXSetTevOp: /* 80283B40 0027F7A0 2C 03 00 00 */ cmpwi r3, 0 /* 80283B44 0027F7A4 3C A0 80 43 */ lis r5, lbl_804358D0@ha /* 80283B48 0027F7A8 38 A5 58 D0 */ addi r5, r5, lbl_804358D0@l /* 80283B4C 0027F7AC 40 82 00 1C */ bne lbl_80283B68 /* 80283B50 0027F7B0 54 86 10 3A */ slwi r6, r4, 2 /* 80283B54 0027F7B4 38 85 00 00 */ addi r4, r5, 0 /* 80283B58 0027F7B8 38 05 00 28 */ addi r0, r5, 0x28 /* 80283B5C 0027F7BC 7D 04 32 14 */ add r8, r4, r6 /* 80283B60 0027F7C0 7D 20 32 14 */ add r9, r0, r6 /* 80283B64 0027F7C4 48 00 00 18 */ b lbl_80283B7C lbl_80283B68: /* 80283B68 0027F7C8 54 86 10 3A */ slwi r6, r4, 2 /* 80283B6C 0027F7CC 38 85 00 14 */ addi r4, r5, 0x14 /* 80283B70 0027F7D0 38 05 00 3C */ addi r0, r5, 0x3c /* 80283B74 0027F7D4 7D 04 32 14 */ add r8, r4, r6 /* 80283B78 0027F7D8 7D 20 32 14 */ add r9, r0, r6 lbl_80283B7C: /* 80283B7C 0027F7DC 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2) /* 80283B80 0027F7E0 54 60 10 3A */ slwi r0, r3, 2 /* 80283B84 0027F7E4 80 68 00 00 */ lwz r3, 0(r8) /* 80283B88 0027F7E8 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 80283B8C 0027F7EC 7C C7 02 14 */ add r6, r7, r0 /* 80283B90 0027F7F0 38 A0 00 61 */ li r5, 0x61 /* 80283B94 0027F7F4 81 06 01 80 */ lwz r8, 0x180(r6) /* 80283B98 0027F7F8 38 00 00 00 */ li r0, 0 /* 80283B9C 0027F7FC 98 A4 80 00 */ stb r5, 0xCC008000@l(r4) /* 80283BA0 0027F800 55 08 00 0E */ rlwinm r8, r8, 0, 0, 7 /* 80283BA4 0027F804 50 68 02 3E */ rlwimi r8, r3, 0, 8, 0x1f /* 80283BA8 0027F808 91 04 80 00 */ stw r8, -0x8000(r4) /* 80283BAC 0027F80C 91 06 01 80 */ stw r8, 0x180(r6) /* 80283BB0 0027F810 81 06 01 C0 */ lwz r8, 0x1c0(r6) /* 80283BB4 0027F814 80 69 00 00 */ lwz r3, 0(r9) /* 80283BB8 0027F818 55 08 07 0E */ rlwinm r8, r8, 0, 0x1c, 7 /* 80283BBC 0027F81C 98 A4 80 00 */ stb r5, -0x8000(r4) /* 80283BC0 0027F820 50 68 02 36 */ rlwimi r8, r3, 0, 8, 0x1b /* 80283BC4 0027F824 91 04 80 00 */ stw r8, -0x8000(r4) /* 80283BC8 0027F828 91 06 01 C0 */ stw r8, 0x1c0(r6) /* 80283BCC 0027F82C B0 07 00 02 */ sth r0, 2(r7) /* 80283BD0 0027F830 4E 80 00 20 */ blr .global GXSetTevColorIn GXSetTevColorIn: /* 80283BD4 0027F834 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2) /* 80283BD8 0027F838 54 60 10 3A */ slwi r0, r3, 2 /* 80283BDC 0027F83C 3C 60 CC 01 */ lis r3, 0xCC008000@ha /* 80283BE0 0027F840 39 00 00 61 */ li r8, 0x61 /* 80283BE4 0027F844 7D 4B 02 14 */ add r10, r11, r0 /* 80283BE8 0027F848 38 00 00 00 */ li r0, 0 /* 80283BEC 0027F84C 81 2A 01 80 */ lwz r9, 0x180(r10) /* 80283BF0 0027F850 50 89 64 26 */ rlwimi r9, r4, 0xc, 0x10, 0x13 /* 80283BF4 0027F854 50 A9 45 2E */ rlwimi r9, r5, 8, 0x14, 0x17 /* 80283BF8 0027F858 99 03 80 00 */ stb r8, 0xCC008000@l(r3) /* 80283BFC 0027F85C 50 C9 26 36 */ rlwimi r9, r6, 4, 0x18, 0x1b /* 80283C00 0027F860 50 E9 07 3E */ rlwimi r9, r7, 0, 0x1c, 0x1f /* 80283C04 0027F864 91 23 80 00 */ stw r9, -0x8000(r3) /* 80283C08 0027F868 91 2A 01 80 */ stw r9, 0x180(r10) /* 80283C0C 0027F86C B0 0B 00 02 */ sth r0, 2(r11) /* 80283C10 0027F870 4E 80 00 20 */ blr .global GXSetTevAlphaIn GXSetTevAlphaIn: /* 80283C14 0027F874 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2) /* 80283C18 0027F878 54 60 10 3A */ slwi r0, r3, 2 /* 80283C1C 0027F87C 3C 60 CC 01 */ lis r3, 0xCC008000@ha /* 80283C20 0027F880 39 00 00 61 */ li r8, 0x61 /* 80283C24 0027F884 7D 4B 02 14 */ add r10, r11, r0 /* 80283C28 0027F888 38 00 00 00 */ li r0, 0 /* 80283C2C 0027F88C 81 2A 01 C0 */ lwz r9, 0x1c0(r10) /* 80283C30 0027F890 50 89 6C 24 */ rlwimi r9, r4, 0xd, 0x10, 0x12 /* 80283C34 0027F894 50 A9 54 EA */ rlwimi r9, r5, 0xa, 0x13, 0x15 /* 80283C38 0027F898 99 03 80 00 */ stb r8, 0xCC008000@l(r3) /* 80283C3C 0027F89C 50 C9 3D B0 */ rlwimi r9, r6, 7, 0x16, 0x18 /* 80283C40 0027F8A0 50 E9 26 76 */ rlwimi r9, r7, 4, 0x19, 0x1b /* 80283C44 0027F8A4 91 23 80 00 */ stw r9, -0x8000(r3) /* 80283C48 0027F8A8 91 2A 01 C0 */ stw r9, 0x1c0(r10) /* 80283C4C 0027F8AC B0 0B 00 02 */ sth r0, 2(r11) /* 80283C50 0027F8B0 4E 80 00 20 */ blr .global GXSetTevColorOp GXSetTevColorOp: /* 80283C54 0027F8B4 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2) /* 80283C58 0027F8B8 54 60 10 3A */ slwi r0, r3, 2 /* 80283C5C 0027F8BC 2C 04 00 01 */ cmpwi r4, 1 /* 80283C60 0027F8C0 7D 2A 02 14 */ add r9, r10, r0 /* 80283C64 0027F8C4 81 69 01 80 */ lwz r11, 0x180(r9) /* 80283C68 0027F8C8 50 8B 93 5A */ rlwimi r11, r4, 0x12, 0xd, 0xd /* 80283C6C 0027F8CC 41 81 00 10 */ bgt lbl_80283C7C /* 80283C70 0027F8D0 50 CB A2 96 */ rlwimi r11, r6, 0x14, 0xa, 0xb /* 80283C74 0027F8D4 50 AB 83 9E */ rlwimi r11, r5, 0x10, 0xe, 0xf /* 80283C78 0027F8D8 48 00 00 0C */ b lbl_80283C84 lbl_80283C7C: /* 80283C7C 0027F8DC 50 8B 9A 96 */ rlwimi r11, r4, 0x13, 0xa, 0xb /* 80283C80 0027F8E0 65 6B 00 03 */ oris r11, r11, 3 lbl_80283C84: /* 80283C84 0027F8E4 3C 60 CC 01 */ lis r3, 0xCC008000@ha /* 80283C88 0027F8E8 38 00 00 61 */ li r0, 0x61 /* 80283C8C 0027F8EC 98 03 80 00 */ stb r0, 0xCC008000@l(r3) /* 80283C90 0027F8F0 50 EB 9B 18 */ rlwimi r11, r7, 0x13, 0xc, 0xc /* 80283C94 0027F8F4 51 0B B2 12 */ rlwimi r11, r8, 0x16, 8, 9 /* 80283C98 0027F8F8 38 00 00 00 */ li r0, 0 /* 80283C9C 0027F8FC 91 63 80 00 */ stw r11, -0x8000(r3) /* 80283CA0 0027F900 91 69 01 80 */ stw r11, 0x180(r9) /* 80283CA4 0027F904 B0 0A 00 02 */ sth r0, 2(r10) /* 80283CA8 0027F908 4E 80 00 20 */ blr .global GXSetTevAlphaOp GXSetTevAlphaOp: /* 80283CAC 0027F90C 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2) /* 80283CB0 0027F910 54 60 10 3A */ slwi r0, r3, 2 /* 80283CB4 0027F914 2C 04 00 01 */ cmpwi r4, 1 /* 80283CB8 0027F918 7D 2A 02 14 */ add r9, r10, r0 /* 80283CBC 0027F91C 81 69 01 C0 */ lwz r11, 0x1c0(r9) /* 80283CC0 0027F920 50 8B 93 5A */ rlwimi r11, r4, 0x12, 0xd, 0xd /* 80283CC4 0027F924 41 81 00 10 */ bgt lbl_80283CD4 /* 80283CC8 0027F928 50 CB A2 96 */ rlwimi r11, r6, 0x14, 0xa, 0xb /* 80283CCC 0027F92C 50 AB 83 9E */ rlwimi r11, r5, 0x10, 0xe, 0xf /* 80283CD0 0027F930 48 00 00 0C */ b lbl_80283CDC lbl_80283CD4: /* 80283CD4 0027F934 50 8B 9A 96 */ rlwimi r11, r4, 0x13, 0xa, 0xb /* 80283CD8 0027F938 65 6B 00 03 */ oris r11, r11, 3 lbl_80283CDC: /* 80283CDC 0027F93C 3C 60 CC 01 */ lis r3, 0xCC008000@ha /* 80283CE0 0027F940 38 00 00 61 */ li r0, 0x61 /* 80283CE4 0027F944 98 03 80 00 */ stb r0, 0xCC008000@l(r3) /* 80283CE8 0027F948 50 EB 9B 18 */ rlwimi r11, r7, 0x13, 0xc, 0xc /* 80283CEC 0027F94C 51 0B B2 12 */ rlwimi r11, r8, 0x16, 8, 9 /* 80283CF0 0027F950 38 00 00 00 */ li r0, 0 /* 80283CF4 0027F954 91 63 80 00 */ stw r11, -0x8000(r3) /* 80283CF8 0027F958 91 69 01 C0 */ stw r11, 0x1c0(r9) /* 80283CFC 0027F95C B0 0A 00 02 */ sth r0, 2(r10) /* 80283D00 0027F960 4E 80 00 20 */ blr .global GXSetTevColor GXSetTevColor: /* 80283D04 0027F964 54 63 08 3C */ slwi r3, r3, 1 /* 80283D08 0027F968 81 04 00 00 */ lwz r8, 0(r4) /* 80283D0C 0027F96C 38 03 00 E0 */ addi r0, r3, 0xe0 /* 80283D10 0027F970 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 80283D14 0027F974 54 07 C0 0E */ slwi r7, r0, 0x18 /* 80283D18 0027F978 38 A0 00 61 */ li r5, 0x61 /* 80283D1C 0027F97C 51 07 46 3E */ rlwimi r7, r8, 8, 0x18, 0x1f /* 80283D20 0027F980 98 A4 80 00 */ stb r5, 0xCC008000@l(r4) /* 80283D24 0027F984 51 07 63 26 */ rlwimi r7, r8, 0xc, 0xc, 0x13 /* 80283D28 0027F988 38 03 00 E1 */ addi r0, r3, 0xe1 /* 80283D2C 0027F98C 90 E4 80 00 */ stw r7, -0x8000(r4) /* 80283D30 0027F990 54 06 C0 0E */ slwi r6, r0, 0x18 /* 80283D34 0027F994 51 06 C6 3E */ rlwimi r6, r8, 0x18, 0x18, 0x1f /* 80283D38 0027F998 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2) /* 80283D3C 0027F99C 98 A4 80 00 */ stb r5, -0x8000(r4) /* 80283D40 0027F9A0 51 06 E3 26 */ rlwimi r6, r8, 0x1c, 0xc, 0x13 /* 80283D44 0027F9A4 38 00 00 00 */ li r0, 0 /* 80283D48 0027F9A8 90 C4 80 00 */ stw r6, -0x8000(r4) /* 80283D4C 0027F9AC 98 A4 80 00 */ stb r5, -0x8000(r4) /* 80283D50 0027F9B0 90 C4 80 00 */ stw r6, -0x8000(r4) /* 80283D54 0027F9B4 98 A4 80 00 */ stb r5, -0x8000(r4) /* 80283D58 0027F9B8 90 C4 80 00 */ stw r6, -0x8000(r4) /* 80283D5C 0027F9BC B0 03 00 02 */ sth r0, 2(r3) /* 80283D60 0027F9C0 4E 80 00 20 */ blr .global GXSetTevColorS10 GXSetTevColorS10: /* 80283D64 0027F9C4 54 63 08 3C */ slwi r3, r3, 1 /* 80283D68 0027F9C8 81 04 00 00 */ lwz r8, 0(r4) /* 80283D6C 0027F9CC 38 03 00 E0 */ addi r0, r3, 0xe0 /* 80283D70 0027F9D0 3C A0 CC 01 */ lis r5, 0xCC008000@ha /* 80283D74 0027F9D4 54 07 C0 0E */ slwi r7, r0, 0x18 /* 80283D78 0027F9D8 38 C0 00 61 */ li r6, 0x61 /* 80283D7C 0027F9DC 81 24 00 04 */ lwz r9, 4(r4) /* 80283D80 0027F9E0 51 07 85 7E */ rlwimi r7, r8, 0x10, 0x15, 0x1f /* 80283D84 0027F9E4 98 C5 80 00 */ stb r6, 0xCC008000@l(r5) /* 80283D88 0027F9E8 38 03 00 E1 */ addi r0, r3, 0xe1 /* 80283D8C 0027F9EC 51 27 62 66 */ rlwimi r7, r9, 0xc, 9, 0x13 /* 80283D90 0027F9F0 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2) /* 80283D94 0027F9F4 54 04 C0 0E */ slwi r4, r0, 0x18 /* 80283D98 0027F9F8 90 E5 80 00 */ stw r7, -0x8000(r5) /* 80283D9C 0027F9FC 51 24 85 7E */ rlwimi r4, r9, 0x10, 0x15, 0x1f /* 80283DA0 0027FA00 38 00 00 00 */ li r0, 0 /* 80283DA4 0027FA04 98 C5 80 00 */ stb r6, -0x8000(r5) /* 80283DA8 0027FA08 51 04 62 66 */ rlwimi r4, r8, 0xc, 9, 0x13 /* 80283DAC 0027FA0C 90 85 80 00 */ stw r4, -0x8000(r5) /* 80283DB0 0027FA10 98 C5 80 00 */ stb r6, -0x8000(r5) /* 80283DB4 0027FA14 90 85 80 00 */ stw r4, -0x8000(r5) /* 80283DB8 0027FA18 98 C5 80 00 */ stb r6, -0x8000(r5) /* 80283DBC 0027FA1C 90 85 80 00 */ stw r4, -0x8000(r5) /* 80283DC0 0027FA20 B0 03 00 02 */ sth r0, 2(r3) /* 80283DC4 0027FA24 4E 80 00 20 */ blr .global GXSetTevKColor GXSetTevKColor: /* 80283DC8 0027FA28 54 66 08 3C */ slwi r6, r3, 1 /* 80283DCC 0027FA2C 81 24 00 00 */ lwz r9, 0(r4) /* 80283DD0 0027FA30 38 66 00 E0 */ addi r3, r6, 0xe0 /* 80283DD4 0027FA34 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 80283DD8 0027FA38 54 68 C0 0E */ slwi r8, r3, 0x18 /* 80283DDC 0027FA3C 38 A0 00 61 */ li r5, 0x61 /* 80283DE0 0027FA40 51 28 46 3E */ rlwimi r8, r9, 8, 0x18, 0x1f /* 80283DE4 0027FA44 98 A4 80 00 */ stb r5, 0xCC008000@l(r4) /* 80283DE8 0027FA48 38 E0 00 08 */ li r7, 8 /* 80283DEC 0027FA4C 38 06 00 E1 */ addi r0, r6, 0xe1 /* 80283DF0 0027FA50 51 28 63 26 */ rlwimi r8, r9, 0xc, 0xc, 0x13 /* 80283DF4 0027FA54 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2) /* 80283DF8 0027FA58 54 06 C0 0E */ slwi r6, r0, 0x18 /* 80283DFC 0027FA5C 38 00 00 00 */ li r0, 0 /* 80283E00 0027FA60 50 E8 A2 16 */ rlwimi r8, r7, 0x14, 8, 0xb /* 80283E04 0027FA64 91 04 80 00 */ stw r8, -0x8000(r4) /* 80283E08 0027FA68 51 26 C6 3E */ rlwimi r6, r9, 0x18, 0x18, 0x1f /* 80283E0C 0027FA6C 51 26 E3 26 */ rlwimi r6, r9, 0x1c, 0xc, 0x13 /* 80283E10 0027FA70 98 A4 80 00 */ stb r5, -0x8000(r4) /* 80283E14 0027FA74 50 E6 A2 16 */ rlwimi r6, r7, 0x14, 8, 0xb /* 80283E18 0027FA78 90 C4 80 00 */ stw r6, -0x8000(r4) /* 80283E1C 0027FA7C B0 03 00 02 */ sth r0, 2(r3) /* 80283E20 0027FA80 4E 80 00 20 */ blr .global GXSetTevKColorSel GXSetTevKColorSel: /* 80283E24 0027FA84 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 80283E28 0027FA88 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2) /* 80283E2C 0027FA8C 54 60 08 3A */ rlwinm r0, r3, 1, 0, 0x1d /* 80283E30 0027FA90 7C 65 02 14 */ add r3, r5, r0 /* 80283E34 0027FA94 41 82 00 14 */ beq lbl_80283E48 /* 80283E38 0027FA98 80 03 02 00 */ lwz r0, 0x200(r3) /* 80283E3C 0027FA9C 50 80 73 62 */ rlwimi r0, r4, 0xe, 0xd, 0x11 /* 80283E40 0027FAA0 90 03 02 00 */ stw r0, 0x200(r3) /* 80283E44 0027FAA4 48 00 00 10 */ b lbl_80283E54 lbl_80283E48: /* 80283E48 0027FAA8 80 03 02 00 */ lwz r0, 0x200(r3) /* 80283E4C 0027FAAC 50 80 25 F6 */ rlwimi r0, r4, 4, 0x17, 0x1b /* 80283E50 0027FAB0 90 03 02 00 */ stw r0, 0x200(r3) lbl_80283E54: /* 80283E54 0027FAB4 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 80283E58 0027FAB8 38 00 00 61 */ li r0, 0x61 /* 80283E5C 0027FABC 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 80283E60 0027FAC0 38 00 00 00 */ li r0, 0 /* 80283E64 0027FAC4 80 63 02 00 */ lwz r3, 0x200(r3) /* 80283E68 0027FAC8 90 64 80 00 */ stw r3, -0x8000(r4) /* 80283E6C 0027FACC B0 05 00 02 */ sth r0, 2(r5) /* 80283E70 0027FAD0 4E 80 00 20 */ blr .global GXSetTevKAlphaSel GXSetTevKAlphaSel: /* 80283E74 0027FAD4 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 80283E78 0027FAD8 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2) /* 80283E7C 0027FADC 54 60 08 3A */ rlwinm r0, r3, 1, 0, 0x1d /* 80283E80 0027FAE0 7C 65 02 14 */ add r3, r5, r0 /* 80283E84 0027FAE4 41 82 00 14 */ beq lbl_80283E98 /* 80283E88 0027FAE8 80 03 02 00 */ lwz r0, 0x200(r3) /* 80283E8C 0027FAEC 50 80 9A 18 */ rlwimi r0, r4, 0x13, 8, 0xc /* 80283E90 0027FAF0 90 03 02 00 */ stw r0, 0x200(r3) /* 80283E94 0027FAF4 48 00 00 10 */ b lbl_80283EA4 lbl_80283E98: /* 80283E98 0027FAF8 80 03 02 00 */ lwz r0, 0x200(r3) /* 80283E9C 0027FAFC 50 80 4C AC */ rlwimi r0, r4, 9, 0x12, 0x16 /* 80283EA0 0027FB00 90 03 02 00 */ stw r0, 0x200(r3) lbl_80283EA4: /* 80283EA4 0027FB04 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 80283EA8 0027FB08 38 00 00 61 */ li r0, 0x61 /* 80283EAC 0027FB0C 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 80283EB0 0027FB10 38 00 00 00 */ li r0, 0 /* 80283EB4 0027FB14 80 63 02 00 */ lwz r3, 0x200(r3) /* 80283EB8 0027FB18 90 64 80 00 */ stw r3, -0x8000(r4) /* 80283EBC 0027FB1C B0 05 00 02 */ sth r0, 2(r5) /* 80283EC0 0027FB20 4E 80 00 20 */ blr .global GXSetTevSwapMode GXSetTevSwapMode: /* 80283EC4 0027FB24 81 22 A0 D0 */ lwz r9, lbl_806426D0-_SDA2_BASE_(r2) /* 80283EC8 0027FB28 54 60 10 3A */ slwi r0, r3, 2 /* 80283ECC 0027FB2C 3C C0 CC 01 */ lis r6, 0xCC008000@ha /* 80283ED0 0027FB30 38 60 00 61 */ li r3, 0x61 /* 80283ED4 0027FB34 7D 09 02 14 */ add r8, r9, r0 /* 80283ED8 0027FB38 38 00 00 00 */ li r0, 0 /* 80283EDC 0027FB3C 80 E8 01 C0 */ lwz r7, 0x1c0(r8) /* 80283EE0 0027FB40 50 87 07 BE */ rlwimi r7, r4, 0, 0x1e, 0x1f /* 80283EE4 0027FB44 50 A7 17 3A */ rlwimi r7, r5, 2, 0x1c, 0x1d /* 80283EE8 0027FB48 90 E8 01 C0 */ stw r7, 0x1c0(r8) /* 80283EEC 0027FB4C 98 66 80 00 */ stb r3, 0xCC008000@l(r6) /* 80283EF0 0027FB50 80 68 01 C0 */ lwz r3, 0x1c0(r8) /* 80283EF4 0027FB54 90 66 80 00 */ stw r3, -0x8000(r6) /* 80283EF8 0027FB58 B0 09 00 02 */ sth r0, 2(r9) /* 80283EFC 0027FB5C 4E 80 00 20 */ blr .global GXSetTevSwapModeTable GXSetTevSwapModeTable: /* 80283F00 0027FB60 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80283F04 0027FB64 54 6B 18 38 */ slwi r11, r3, 3 /* 80283F08 0027FB68 54 6C 08 3C */ slwi r12, r3, 1 /* 80283F0C 0027FB6C 3D 00 CC 01 */ lis r8, 0xCC008000@ha /* 80283F10 0027FB70 93 E1 00 0C */ stw r31, 0xc(r1) /* 80283F14 0027FB74 39 20 00 61 */ li r9, 0x61 /* 80283F18 0027FB78 38 6C 00 01 */ addi r3, r12, 1 /* 80283F1C 0027FB7C 38 00 00 00 */ li r0, 0 /* 80283F20 0027FB80 93 C1 00 08 */ stw r30, 8(r1) /* 80283F24 0027FB84 83 C2 A0 D0 */ lwz r30, lbl_806426D0-_SDA2_BASE_(r2) /* 80283F28 0027FB88 3B FE 02 00 */ addi r31, r30, 0x200 /* 80283F2C 0027FB8C 7D 5F 58 2E */ lwzx r10, r31, r11 /* 80283F30 0027FB90 50 8A 07 BE */ rlwimi r10, r4, 0, 0x1e, 0x1f /* 80283F34 0027FB94 50 AA 17 3A */ rlwimi r10, r5, 2, 0x1c, 0x1d /* 80283F38 0027FB98 54 64 10 3A */ slwi r4, r3, 2 /* 80283F3C 0027FB9C 7D 5F 59 2E */ stwx r10, r31, r11 /* 80283F40 0027FBA0 99 28 80 00 */ stb r9, 0xCC008000@l(r8) /* 80283F44 0027FBA4 7C 7F 58 2E */ lwzx r3, r31, r11 /* 80283F48 0027FBA8 90 68 80 00 */ stw r3, -0x8000(r8) /* 80283F4C 0027FBAC 7C 7F 20 2E */ lwzx r3, r31, r4 /* 80283F50 0027FBB0 50 C3 07 BE */ rlwimi r3, r6, 0, 0x1e, 0x1f /* 80283F54 0027FBB4 50 E3 17 3A */ rlwimi r3, r7, 2, 0x1c, 0x1d /* 80283F58 0027FBB8 7C 7F 21 2E */ stwx r3, r31, r4 /* 80283F5C 0027FBBC 99 28 80 00 */ stb r9, -0x8000(r8) /* 80283F60 0027FBC0 7C 7F 20 2E */ lwzx r3, r31, r4 /* 80283F64 0027FBC4 90 68 80 00 */ stw r3, -0x8000(r8) /* 80283F68 0027FBC8 B0 1E 00 02 */ sth r0, 2(r30) /* 80283F6C 0027FBCC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80283F70 0027FBD0 83 C1 00 08 */ lwz r30, 8(r1) /* 80283F74 0027FBD4 38 21 00 10 */ addi r1, r1, 0x10 /* 80283F78 0027FBD8 4E 80 00 20 */ blr .global GXSetAlphaCompare GXSetAlphaCompare: /* 80283F7C 0027FBDC 3D 00 CC 01 */ lis r8, 0xCC008000@ha /* 80283F80 0027FBE0 38 00 00 61 */ li r0, 0x61 /* 80283F84 0027FBE4 98 08 80 00 */ stb r0, 0xCC008000@l(r8) /* 80283F88 0027FBE8 3D 20 F3 00 */ lis r9, 0xf300 /* 80283F8C 0027FBEC 50 89 06 3E */ rlwimi r9, r4, 0, 0x18, 0x1f /* 80283F90 0027FBF0 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2) /* 80283F94 0027FBF4 50 E9 44 2E */ rlwimi r9, r7, 8, 0x10, 0x17 /* 80283F98 0027FBF8 38 00 00 00 */ li r0, 0 /* 80283F9C 0027FBFC 50 69 83 5E */ rlwimi r9, r3, 0x10, 0xd, 0xf /* 80283FA0 0027FC00 50 C9 9A 98 */ rlwimi r9, r6, 0x13, 0xa, 0xc /* 80283FA4 0027FC04 50 A9 B2 12 */ rlwimi r9, r5, 0x16, 8, 9 /* 80283FA8 0027FC08 91 28 80 00 */ stw r9, -0x8000(r8) /* 80283FAC 0027FC0C B0 04 00 02 */ sth r0, 2(r4) /* 80283FB0 0027FC10 4E 80 00 20 */ blr .global GXSetZTexture GXSetZTexture: /* 80283FB4 0027FC14 2C 04 00 13 */ cmpwi r4, 0x13 /* 80283FB8 0027FC18 38 E0 00 00 */ li r7, 0 /* 80283FBC 0027FC1C 38 00 00 F4 */ li r0, 0xf4 /* 80283FC0 0027FC20 50 A7 02 3E */ rlwimi r7, r5, 0, 8, 0x1f /* 80283FC4 0027FC24 50 07 C0 0E */ rlwimi r7, r0, 0x18, 0, 7 /* 80283FC8 0027FC28 41 82 00 28 */ beq lbl_80283FF0 /* 80283FCC 0027FC2C 40 80 00 10 */ bge lbl_80283FDC /* 80283FD0 0027FC30 2C 04 00 11 */ cmpwi r4, 0x11 /* 80283FD4 0027FC34 41 82 00 14 */ beq lbl_80283FE8 /* 80283FD8 0027FC38 48 00 00 28 */ b lbl_80284000 lbl_80283FDC: /* 80283FDC 0027FC3C 2C 04 00 16 */ cmpwi r4, 0x16 /* 80283FE0 0027FC40 41 82 00 18 */ beq lbl_80283FF8 /* 80283FE4 0027FC44 48 00 00 1C */ b lbl_80284000 lbl_80283FE8: /* 80283FE8 0027FC48 38 A0 00 00 */ li r5, 0 /* 80283FEC 0027FC4C 48 00 00 18 */ b lbl_80284004 lbl_80283FF0: /* 80283FF0 0027FC50 38 A0 00 01 */ li r5, 1 /* 80283FF4 0027FC54 48 00 00 10 */ b lbl_80284004 lbl_80283FF8: /* 80283FF8 0027FC58 38 A0 00 02 */ li r5, 2 /* 80283FFC 0027FC5C 48 00 00 08 */ b lbl_80284004 lbl_80284000: /* 80284000 0027FC60 38 A0 00 02 */ li r5, 2 lbl_80284004: /* 80284004 0027FC64 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 80284008 0027FC68 38 00 00 61 */ li r0, 0x61 /* 8028400C 0027FC6C 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 80284010 0027FC70 38 C0 00 00 */ li r6, 0 /* 80284014 0027FC74 50 A6 07 BE */ rlwimi r6, r5, 0, 0x1e, 0x1f /* 80284018 0027FC78 38 A0 00 F5 */ li r5, 0xf5 /* 8028401C 0027FC7C 90 E4 80 00 */ stw r7, -0x8000(r4) /* 80284020 0027FC80 50 66 17 3A */ rlwimi r6, r3, 2, 0x1c, 0x1d /* 80284024 0027FC84 50 A6 C0 0E */ rlwimi r6, r5, 0x18, 0, 7 /* 80284028 0027FC88 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2) /* 8028402C 0027FC8C 98 04 80 00 */ stb r0, -0x8000(r4) /* 80284030 0027FC90 38 00 00 00 */ li r0, 0 /* 80284034 0027FC94 90 C4 80 00 */ stw r6, -0x8000(r4) /* 80284038 0027FC98 B0 03 00 02 */ sth r0, 2(r3) /* 8028403C 0027FC9C 4E 80 00 20 */ blr .global GXSetTevOrder GXSetTevOrder: /* 80284040 0027FCA0 54 AB 06 2C */ rlwinm r11, r5, 0, 0x18, 0x16 /* 80284044 0027FCA4 38 E0 00 08 */ li r7, 8 /* 80284048 0027FCA8 54 69 0F FE */ srwi r9, r3, 0x1f /* 8028404C 0027FCAC 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2) /* 80284050 0027FCB0 7C 07 58 10 */ subfc r0, r7, r11 /* 80284054 0027FCB4 54 68 10 3A */ slwi r8, r3, 2 /* 80284058 0027FCB8 7C 07 01 94 */ addze r0, r7 /* 8028405C 0027FCBC 7D 29 1A 14 */ add r9, r9, r3 /* 80284060 0027FCC0 7C EA 42 14 */ add r7, r10, r8 /* 80284064 0027FCC4 2C 04 00 08 */ cmpwi r4, 8 /* 80284068 0027FCC8 55 28 08 3A */ rlwinm r8, r9, 1, 0, 0x1d /* 8028406C 0027FCCC 20 00 00 08 */ subfic r0, r0, 8 /* 80284070 0027FCD0 90 A7 05 A4 */ stw r5, 0x5a4(r7) /* 80284074 0027FCD4 7C EA 42 14 */ add r7, r10, r8 /* 80284078 0027FCD8 7D 69 00 78 */ andc r9, r11, r0 /* 8028407C 0027FCDC 41 80 00 20 */ blt lbl_8028409C /* 80284080 0027FCE0 38 00 00 01 */ li r0, 1 /* 80284084 0027FCE4 81 0A 05 E8 */ lwz r8, 0x5e8(r10) /* 80284088 0027FCE8 7C 00 18 30 */ slw r0, r0, r3 /* 8028408C 0027FCEC 38 80 00 00 */ li r4, 0 /* 80284090 0027FCF0 7D 00 00 78 */ andc r0, r8, r0 /* 80284094 0027FCF4 90 0A 05 E8 */ stw r0, 0x5e8(r10) /* 80284098 0027FCF8 48 00 00 18 */ b lbl_802840B0 lbl_8028409C: /* 8028409C 0027FCFC 38 00 00 01 */ li r0, 1 /* 802840A0 0027FD00 81 0A 05 E8 */ lwz r8, 0x5e8(r10) /* 802840A4 0027FD04 7C 00 18 30 */ slw r0, r0, r3 /* 802840A8 0027FD08 7D 00 03 78 */ or r0, r8, r0 /* 802840AC 0027FD0C 90 0A 05 E8 */ stw r0, 0x5e8(r10) lbl_802840B0: /* 802840B0 0027FD10 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 802840B4 0027FD14 41 82 00 60 */ beq lbl_80284114 /* 802840B8 0027FD18 81 07 01 50 */ lwz r8, 0x150(r7) /* 802840BC 0027FD1C 51 28 64 66 */ rlwimi r8, r9, 0xc, 0x11, 0x13 /* 802840C0 0027FD20 50 88 7B A0 */ rlwimi r8, r4, 0xf, 0xe, 0x10 /* 802840C4 0027FD24 2C 06 00 FF */ cmpwi r6, 0xff /* 802840C8 0027FD28 91 07 01 50 */ stw r8, 0x150(r7) /* 802840CC 0027FD2C 40 82 00 0C */ bne lbl_802840D8 /* 802840D0 0027FD30 38 00 00 07 */ li r0, 7 /* 802840D4 0027FD34 48 00 00 14 */ b lbl_802840E8 lbl_802840D8: /* 802840D8 0027FD38 3C 60 80 43 */ lis r3, lbl_80435920@ha /* 802840DC 0027FD3C 54 C0 10 3A */ slwi r0, r6, 2 /* 802840E0 0027FD40 38 63 59 20 */ addi r3, r3, lbl_80435920@l /* 802840E4 0027FD44 7C 03 00 2E */ lwzx r0, r3, r0 lbl_802840E8: /* 802840E8 0027FD48 50 08 9A 98 */ rlwimi r8, r0, 0x13, 0xa, 0xc /* 802840EC 0027FD4C 2C 05 00 FF */ cmpwi r5, 0xff /* 802840F0 0027FD50 91 07 01 50 */ stw r8, 0x150(r7) /* 802840F4 0027FD54 38 60 00 00 */ li r3, 0 /* 802840F8 0027FD58 41 82 00 10 */ beq lbl_80284108 /* 802840FC 0027FD5C 54 A0 05 EF */ rlwinm. r0, r5, 0, 0x17, 0x17 /* 80284100 0027FD60 40 82 00 08 */ bne lbl_80284108 /* 80284104 0027FD64 38 60 00 01 */ li r3, 1 lbl_80284108: /* 80284108 0027FD68 50 68 93 5A */ rlwimi r8, r3, 0x12, 0xd, 0xd /* 8028410C 0027FD6C 91 07 01 50 */ stw r8, 0x150(r7) /* 80284110 0027FD70 48 00 00 5C */ b lbl_8028416C lbl_80284114: /* 80284114 0027FD74 81 07 01 50 */ lwz r8, 0x150(r7) /* 80284118 0027FD78 51 28 07 7E */ rlwimi r8, r9, 0, 0x1d, 0x1f /* 8028411C 0027FD7C 50 88 1E B8 */ rlwimi r8, r4, 3, 0x1a, 0x1c /* 80284120 0027FD80 2C 06 00 FF */ cmpwi r6, 0xff /* 80284124 0027FD84 91 07 01 50 */ stw r8, 0x150(r7) /* 80284128 0027FD88 40 82 00 0C */ bne lbl_80284134 /* 8028412C 0027FD8C 38 00 00 07 */ li r0, 7 /* 80284130 0027FD90 48 00 00 14 */ b lbl_80284144 lbl_80284134: /* 80284134 0027FD94 3C 60 80 43 */ lis r3, lbl_80435920@ha /* 80284138 0027FD98 54 C0 10 3A */ slwi r0, r6, 2 /* 8028413C 0027FD9C 38 63 59 20 */ addi r3, r3, lbl_80435920@l /* 80284140 0027FDA0 7C 03 00 2E */ lwzx r0, r3, r0 lbl_80284144: /* 80284144 0027FDA4 50 08 3D B0 */ rlwimi r8, r0, 7, 0x16, 0x18 /* 80284148 0027FDA8 2C 05 00 FF */ cmpwi r5, 0xff /* 8028414C 0027FDAC 91 07 01 50 */ stw r8, 0x150(r7) /* 80284150 0027FDB0 38 60 00 00 */ li r3, 0 /* 80284154 0027FDB4 41 82 00 10 */ beq lbl_80284164 /* 80284158 0027FDB8 54 A0 05 EF */ rlwinm. r0, r5, 0, 0x17, 0x17 /* 8028415C 0027FDBC 40 82 00 08 */ bne lbl_80284164 /* 80284160 0027FDC0 38 60 00 01 */ li r3, 1 lbl_80284164: /* 80284164 0027FDC4 50 68 36 72 */ rlwimi r8, r3, 6, 0x19, 0x19 /* 80284168 0027FDC8 91 07 01 50 */ stw r8, 0x150(r7) lbl_8028416C: /* 8028416C 0027FDCC 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 80284170 0027FDD0 38 00 00 61 */ li r0, 0x61 /* 80284174 0027FDD4 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 80284178 0027FDD8 38 00 00 00 */ li r0, 0 /* 8028417C 0027FDDC 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2) /* 80284180 0027FDE0 80 67 01 50 */ lwz r3, 0x150(r7) /* 80284184 0027FDE4 90 64 80 00 */ stw r3, -0x8000(r4) /* 80284188 0027FDE8 B0 05 00 02 */ sth r0, 2(r5) /* 8028418C 0027FDEC 80 05 05 FC */ lwz r0, 0x5fc(r5) /* 80284190 0027FDF0 60 00 00 01 */ ori r0, r0, 1 /* 80284194 0027FDF4 90 05 05 FC */ stw r0, 0x5fc(r5) /* 80284198 0027FDF8 4E 80 00 20 */ blr .global GXSetNumTevStages GXSetNumTevStages: /* 8028419C 0027FDFC 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2) /* 802841A0 0027FE00 38 03 FF FF */ addi r0, r3, -1 /* 802841A4 0027FE04 80 64 02 54 */ lwz r3, 0x254(r4) /* 802841A8 0027FE08 50 03 54 AA */ rlwimi r3, r0, 0xa, 0x12, 0x15 /* 802841AC 0027FE0C 90 64 02 54 */ stw r3, 0x254(r4) /* 802841B0 0027FE10 80 04 05 FC */ lwz r0, 0x5fc(r4) /* 802841B4 0027FE14 60 00 00 04 */ ori r0, r0, 4 /* 802841B8 0027FE18 90 04 05 FC */ stw r0, 0x5fc(r4) /* 802841BC 0027FE1C 4E 80 00 20 */ blr