diff --git a/Progress.md b/Progress.md index bbb782c9177..2b6f2187c43 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 97.972973% | 9280 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 28.487793% | 1024576 | 3596544 +.text | 28.680867% | 1031520 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 36.026614% | 1448512 | 4020672 +Total | 36.199322% | 1455456 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 36.026614% | 1448512 | 4020672 +main.dol | 36.199322% | 1455456 | 4020672 RELs | 33.847533% | 3892576 | 11500324 -Total | 34.412018% | 5341088 | 15520996 +Total | 34.456758% | 5348032 | 15520996 ## RELs diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevOrderFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevOrderFv.s deleted file mode 100644 index 0d69d27204e..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevOrderFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_802F1B70: -/* 802F1B70 88 02 C7 80 */ lbz r0, j2dDefaultTevOrderInfoNull(r2) -/* 802F1B74 98 03 00 00 */ stb r0, 0(r3) -/* 802F1B78 38 82 C7 80 */ la r4, j2dDefaultTevOrderInfoNull(r2) /* 80456180-_SDA2_BASE_ */ -/* 802F1B7C 88 04 00 01 */ lbz r0, 1(r4) -/* 802F1B80 98 03 00 01 */ stb r0, 1(r3) -/* 802F1B84 88 04 00 02 */ lbz r0, 2(r4) -/* 802F1B88 98 03 00 02 */ stb r0, 2(r3) -/* 802F1B8C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevStageFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevStageFv.s deleted file mode 100644 index 70eb2b2a308..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevStageFv.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_802F1940: -/* 802F1940 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802F1944 7C 08 02 A6 */ mflr r0 -/* 802F1948 90 01 00 14 */ stw r0, 0x14(r1) -/* 802F194C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802F1950 7C 7F 1B 78 */ mr r31, r3 -/* 802F1954 3C 80 80 3A */ lis r4, j2dDefaultTevStageInfo@ha /* 0x803A1BE0@ha */ -/* 802F1958 38 84 1B E0 */ addi r4, r4, j2dDefaultTevStageInfo@l /* 0x803A1BE0@l */ -/* 802F195C 48 00 00 4D */ bl setTevStageInfo__11J2DTevStageFRC15J2DTevStageInfo -/* 802F1960 88 1F 00 07 */ lbz r0, 7(r31) -/* 802F1964 54 04 07 B6 */ rlwinm r4, r0, 0, 0x1e, 0x1b -/* 802F1968 38 62 C7 98 */ la r3, j2dDefaultTevSwapMode(r2) /* 80456198-_SDA2_BASE_ */ -/* 802F196C 88 03 00 01 */ lbz r0, 1(r3) -/* 802F1970 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 802F1974 7C 80 03 78 */ or r0, r4, r0 -/* 802F1978 98 1F 00 07 */ stb r0, 7(r31) -/* 802F197C 88 1F 00 07 */ lbz r0, 7(r31) -/* 802F1980 54 03 00 3A */ rlwinm r3, r0, 0, 0, 0x1d -/* 802F1984 88 02 C7 98 */ lbz r0, j2dDefaultTevSwapMode(r2) -/* 802F1988 7C 60 03 78 */ or r0, r3, r0 -/* 802F198C 98 1F 00 07 */ stb r0, 7(r31) -/* 802F1990 7F E3 FB 78 */ mr r3, r31 -/* 802F1994 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802F1998 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802F199C 7C 08 03 A6 */ mtlr r0 -/* 802F19A0 38 21 00 10 */ addi r1, r1, 0x10 -/* 802F19A4 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/__ct__19J2DTevSwapModeTableFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/__ct__19J2DTevSwapModeTableFv.s deleted file mode 100644 index 83b04db90a1..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/__ct__19J2DTevSwapModeTableFv.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_802F1934: -/* 802F1934 88 02 C7 AC */ lbz r0, data_804561AC(r2) -/* 802F1938 98 03 00 00 */ stb r0, 0(r3) -/* 802F193C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/getTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s b/asm/JSystem/J2DGraph/J2DMatBlock/getTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s deleted file mode 100644 index 7398db2f14b..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/getTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s +++ /dev/null @@ -1,42 +0,0 @@ -lbl_802EB7E0: -/* 802EB7E0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802EB7E4 54 80 10 3A */ slwi r0, r4, 2 -/* 802EB7E8 7C 63 02 14 */ add r3, r3, r0 -/* 802EB7EC 80 63 00 24 */ lwz r3, 0x24(r3) -/* 802EB7F0 28 03 00 00 */ cmplwi r3, 0 -/* 802EB7F4 41 82 00 80 */ beq lbl_802EB874 -/* 802EB7F8 38 C1 00 04 */ addi r6, r1, 4 -/* 802EB7FC 38 83 FF FC */ addi r4, r3, -4 -/* 802EB800 38 00 00 04 */ li r0, 4 -/* 802EB804 7C 09 03 A6 */ mtctr r0 -lbl_802EB808: -/* 802EB808 80 64 00 04 */ lwz r3, 4(r4) -/* 802EB80C 84 04 00 08 */ lwzu r0, 8(r4) -/* 802EB810 90 66 00 04 */ stw r3, 4(r6) -/* 802EB814 94 06 00 08 */ stwu r0, 8(r6) -/* 802EB818 42 00 FF F0 */ bdnz lbl_802EB808 -/* 802EB81C 80 04 00 04 */ lwz r0, 4(r4) -/* 802EB820 90 06 00 04 */ stw r0, 4(r6) -/* 802EB824 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 802EB828 D0 05 00 04 */ stfs f0, 4(r5) -/* 802EB82C C0 01 00 10 */ lfs f0, 0x10(r1) -/* 802EB830 D0 05 00 08 */ stfs f0, 8(r5) -/* 802EB834 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 802EB838 D0 05 00 0C */ stfs f0, 0xc(r5) -/* 802EB83C 88 01 00 08 */ lbz r0, 8(r1) -/* 802EB840 98 05 00 00 */ stb r0, 0(r5) -/* 802EB844 88 01 00 09 */ lbz r0, 9(r1) -/* 802EB848 98 05 00 01 */ stb r0, 1(r5) -/* 802EB84C C0 01 00 18 */ lfs f0, 0x18(r1) -/* 802EB850 D0 05 00 10 */ stfs f0, 0x10(r5) -/* 802EB854 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 802EB858 D0 05 00 14 */ stfs f0, 0x14(r5) -/* 802EB85C C0 01 00 20 */ lfs f0, 0x20(r1) -/* 802EB860 D0 05 00 18 */ stfs f0, 0x18(r5) -/* 802EB864 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 802EB868 D0 05 00 1C */ stfs f0, 0x1c(r5) -/* 802EB86C C0 01 00 28 */ lfs f0, 0x28(r1) -/* 802EB870 D0 05 00 20 */ stfs f0, 0x20(r5) -lbl_802EB874: -/* 802EB874 38 21 00 30 */ addi r1, r1, 0x30 -/* 802EB878 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/initialize__10J2DPEBlockFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/initialize__10J2DPEBlockFv.s deleted file mode 100644 index 565d4ec1718..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/initialize__10J2DPEBlockFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_802F17FC: -/* 802F17FC A0 02 C7 AE */ lhz r0, j2dDefaultAlphaCmp(r2) -/* 802F1800 B0 03 00 00 */ sth r0, 0(r3) -/* 802F1804 38 00 00 00 */ li r0, 0 -/* 802F1808 98 03 00 02 */ stb r0, 2(r3) -/* 802F180C 98 03 00 03 */ stb r0, 3(r3) -/* 802F1810 88 02 C7 A0 */ lbz r0, j2dDefaultBlendInfo(r2) -/* 802F1814 98 03 00 04 */ stb r0, 4(r3) -/* 802F1818 38 82 C7 A0 */ la r4, j2dDefaultBlendInfo(r2) /* 804561A0-_SDA2_BASE_ */ -/* 802F181C 88 04 00 01 */ lbz r0, 1(r4) -/* 802F1820 98 03 00 05 */ stb r0, 5(r3) -/* 802F1824 88 04 00 02 */ lbz r0, 2(r4) -/* 802F1828 98 03 00 06 */ stb r0, 6(r3) -/* 802F182C 88 04 00 03 */ lbz r0, 3(r4) -/* 802F1830 98 03 00 07 */ stb r0, 7(r3) -/* 802F1834 88 02 C7 A4 */ lbz r0, data_804561A4(r2) -/* 802F1838 98 03 00 08 */ stb r0, 8(r3) -/* 802F183C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/initialize__14J2DTexGenBlockFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/initialize__14J2DTexGenBlockFv.s deleted file mode 100644 index d63a996b226..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/initialize__14J2DTexGenBlockFv.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_802EB510: -/* 802EB510 38 A0 00 00 */ li r5, 0 -/* 802EB514 90 A3 00 00 */ stw r5, 0(r3) -/* 802EB518 3C 80 80 3A */ lis r4, j2dDefaultTexCoordInfo@ha /* 0x803A1B80@ha */ -/* 802EB51C 38 84 1B 80 */ addi r4, r4, j2dDefaultTexCoordInfo@l /* 0x803A1B80@l */ -/* 802EB520 38 00 00 08 */ li r0, 8 -/* 802EB524 7C 09 03 A6 */ mtctr r0 -lbl_802EB528: -/* 802EB528 88 04 00 00 */ lbz r0, 0(r4) -/* 802EB52C 7C C3 2A 14 */ add r6, r3, r5 -/* 802EB530 98 06 00 04 */ stb r0, 4(r6) -/* 802EB534 88 04 00 01 */ lbz r0, 1(r4) -/* 802EB538 98 06 00 05 */ stb r0, 5(r6) -/* 802EB53C 88 04 00 02 */ lbz r0, 2(r4) -/* 802EB540 98 06 00 06 */ stb r0, 6(r6) -/* 802EB544 38 A5 00 04 */ addi r5, r5, 4 -/* 802EB548 42 00 FF E0 */ bdnz lbl_802EB528 -/* 802EB54C 38 80 00 00 */ li r4, 0 -/* 802EB550 38 A0 00 00 */ li r5, 0 -/* 802EB554 38 00 00 08 */ li r0, 8 -/* 802EB558 7C 09 03 A6 */ mtctr r0 -lbl_802EB55C: -/* 802EB55C 38 04 00 24 */ addi r0, r4, 0x24 -/* 802EB560 7C A3 01 2E */ stwx r5, r3, r0 -/* 802EB564 38 84 00 04 */ addi r4, r4, 4 -/* 802EB568 42 00 FF F4 */ bdnz lbl_802EB55C -/* 802EB56C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/insertTexture__12J2DTevBlock2FUlPC7ResTIMGP10JUTPalette.s b/asm/JSystem/J2DGraph/J2DMatBlock/insertTexture__12J2DTevBlock2FUlPC7ResTIMGP10JUTPalette.s deleted file mode 100644 index 024abd85869..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/insertTexture__12J2DTevBlock2FUlPC7ResTIMGP10JUTPalette.s +++ /dev/null @@ -1,217 +0,0 @@ -lbl_802ECAE8: -/* 802ECAE8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802ECAEC 7C 08 02 A6 */ mflr r0 -/* 802ECAF0 90 01 00 34 */ stw r0, 0x34(r1) -/* 802ECAF4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802ECAF8 48 07 56 D5 */ bl _savegpr_25 -/* 802ECAFC 7C 7A 1B 78 */ mr r26, r3 -/* 802ECB00 7C 9B 23 78 */ mr r27, r4 -/* 802ECB04 7C BC 2B 78 */ mr r28, r5 -/* 802ECB08 7C DD 33 78 */ mr r29, r6 -/* 802ECB0C 28 1B 00 02 */ cmplwi r27, 2 -/* 802ECB10 40 80 00 0C */ bge lbl_802ECB1C -/* 802ECB14 28 1C 00 00 */ cmplwi r28, 0 -/* 802ECB18 40 82 00 0C */ bne lbl_802ECB24 -lbl_802ECB1C: -/* 802ECB1C 38 60 00 00 */ li r3, 0 -/* 802ECB20 48 00 02 B0 */ b lbl_802ECDD0 -lbl_802ECB24: -/* 802ECB24 3B C0 00 00 */ li r30, 0 -/* 802ECB28 48 00 00 28 */ b lbl_802ECB50 -lbl_802ECB2C: -/* 802ECB2C 57 C3 15 BA */ rlwinm r3, r30, 2, 0x16, 0x1d -/* 802ECB30 38 03 00 64 */ addi r0, r3, 0x64 -/* 802ECB34 7C 7A 00 2E */ lwzx r3, r26, r0 -/* 802ECB38 28 03 00 00 */ cmplwi r3, 0 -/* 802ECB3C 41 82 00 20 */ beq lbl_802ECB5C -/* 802ECB40 80 03 00 20 */ lwz r0, 0x20(r3) -/* 802ECB44 28 00 00 00 */ cmplwi r0, 0 -/* 802ECB48 41 82 00 14 */ beq lbl_802ECB5C -/* 802ECB4C 3B DE 00 01 */ addi r30, r30, 1 -lbl_802ECB50: -/* 802ECB50 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 802ECB54 28 00 00 02 */ cmplwi r0, 2 -/* 802ECB58 41 80 FF D4 */ blt lbl_802ECB2C -lbl_802ECB5C: -/* 802ECB5C 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 802ECB60 7C 00 D8 40 */ cmplw r0, r27 -/* 802ECB64 40 80 00 0C */ bge lbl_802ECB70 -/* 802ECB68 38 60 00 00 */ li r3, 0 -/* 802ECB6C 48 00 02 64 */ b lbl_802ECDD0 -lbl_802ECB70: -/* 802ECB70 28 00 00 02 */ cmplwi r0, 2 -/* 802ECB74 40 82 00 0C */ bne lbl_802ECB80 -/* 802ECB78 38 60 00 00 */ li r3, 0 -/* 802ECB7C 48 00 02 54 */ b lbl_802ECDD0 -lbl_802ECB80: -/* 802ECB80 3B 20 00 00 */ li r25, 0 -/* 802ECB84 88 1C 00 08 */ lbz r0, 8(r28) -/* 802ECB88 28 00 00 00 */ cmplwi r0, 0 -/* 802ECB8C 41 82 00 48 */ beq lbl_802ECBD4 -/* 802ECB90 28 1D 00 00 */ cmplwi r29, 0 -/* 802ECB94 40 82 00 40 */ bne lbl_802ECBD4 -/* 802ECB98 80 9A 00 64 */ lwz r4, 0x64(r26) -/* 802ECB9C 28 04 00 00 */ cmplwi r4, 0 -/* 802ECBA0 41 82 00 34 */ beq lbl_802ECBD4 -/* 802ECBA4 80 64 00 20 */ lwz r3, 0x20(r4) -/* 802ECBA8 28 03 00 00 */ cmplwi r3, 0 -/* 802ECBAC 41 82 00 28 */ beq lbl_802ECBD4 -/* 802ECBB0 88 03 00 08 */ lbz r0, 8(r3) -/* 802ECBB4 28 00 00 00 */ cmplwi r0, 0 -/* 802ECBB8 41 82 00 1C */ beq lbl_802ECBD4 -/* 802ECBBC 88 04 00 3A */ lbz r0, 0x3a(r4) -/* 802ECBC0 2C 00 00 00 */ cmpwi r0, 0 -/* 802ECBC4 41 82 00 0C */ beq lbl_802ECBD0 -/* 802ECBC8 2C 00 00 10 */ cmpwi r0, 0x10 -/* 802ECBCC 40 82 00 08 */ bne lbl_802ECBD4 -lbl_802ECBD0: -/* 802ECBD0 3B 20 00 01 */ li r25, 1 -lbl_802ECBD4: -/* 802ECBD4 57 C0 15 BA */ rlwinm r0, r30, 2, 0x16, 0x1d -/* 802ECBD8 7C 7A 02 14 */ add r3, r26, r0 -/* 802ECBDC 83 E3 00 64 */ lwz r31, 0x64(r3) -/* 802ECBE0 28 1F 00 00 */ cmplwi r31, 0 -/* 802ECBE4 40 82 00 BC */ bne lbl_802ECCA0 -/* 802ECBE8 38 60 00 40 */ li r3, 0x40 -/* 802ECBEC 4B FE 20 61 */ bl __nw__FUl -/* 802ECBF0 7C 7E 1B 79 */ or. r30, r3, r3 -/* 802ECBF4 41 82 00 24 */ beq lbl_802ECC18 -/* 802ECBF8 38 00 00 00 */ li r0, 0 -/* 802ECBFC 90 1E 00 28 */ stw r0, 0x28(r30) -/* 802ECC00 7F 84 E3 78 */ mr r4, r28 -/* 802ECC04 7F 25 CB 78 */ mr r5, r25 -/* 802ECC08 4B FF 16 A1 */ bl storeTIMG__10JUTTextureFPC7ResTIMGUc -/* 802ECC0C 88 1E 00 3B */ lbz r0, 0x3b(r30) -/* 802ECC10 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e -/* 802ECC14 98 1E 00 3B */ stb r0, 0x3b(r30) -lbl_802ECC18: -/* 802ECC18 28 1E 00 00 */ cmplwi r30, 0 -/* 802ECC1C 40 82 00 0C */ bne lbl_802ECC28 -/* 802ECC20 38 60 00 00 */ li r3, 0 -/* 802ECC24 48 00 01 AC */ b lbl_802ECDD0 -lbl_802ECC28: -/* 802ECC28 28 1D 00 00 */ cmplwi r29, 0 -/* 802ECC2C 41 82 00 14 */ beq lbl_802ECC40 -/* 802ECC30 7F C3 F3 78 */ mr r3, r30 -/* 802ECC34 7F 84 E3 78 */ mr r4, r28 -/* 802ECC38 7F A5 EB 78 */ mr r5, r29 -/* 802ECC3C 4B FF 18 11 */ bl storeTIMG__10JUTTextureFPC7ResTIMGP10JUTPalette -lbl_802ECC40: -/* 802ECC40 28 1B 00 00 */ cmplwi r27, 0 -/* 802ECC44 40 82 00 1C */ bne lbl_802ECC60 -/* 802ECC48 80 1A 00 64 */ lwz r0, 0x64(r26) -/* 802ECC4C 90 1A 00 68 */ stw r0, 0x68(r26) -/* 802ECC50 80 1A 00 6C */ lwz r0, 0x6c(r26) -/* 802ECC54 90 1A 00 70 */ stw r0, 0x70(r26) -/* 802ECC58 A0 1A 00 04 */ lhz r0, 4(r26) -/* 802ECC5C B0 1A 00 06 */ sth r0, 6(r26) -lbl_802ECC60: -/* 802ECC60 57 60 10 3A */ slwi r0, r27, 2 -/* 802ECC64 7C 7A 02 14 */ add r3, r26, r0 -/* 802ECC68 93 C3 00 64 */ stw r30, 0x64(r3) -/* 802ECC6C 7F 43 D3 78 */ mr r3, r26 -/* 802ECC70 57 64 06 3E */ clrlwi r4, r27, 0x18 -/* 802ECC74 38 A0 00 01 */ li r5, 1 -/* 802ECC78 81 9A 00 00 */ lwz r12, 0(r26) -/* 802ECC7C 81 8C 00 AC */ lwz r12, 0xac(r12) -/* 802ECC80 7D 89 03 A6 */ mtctr r12 -/* 802ECC84 4E 80 04 21 */ bctrl -/* 802ECC88 88 7A 00 78 */ lbz r3, 0x78(r26) -/* 802ECC8C 38 00 00 01 */ li r0, 1 -/* 802ECC90 7C 00 D8 30 */ slw r0, r0, r27 -/* 802ECC94 7C 60 03 78 */ or r0, r3, r0 -/* 802ECC98 98 1A 00 78 */ stb r0, 0x78(r26) -/* 802ECC9C 48 00 01 0C */ b lbl_802ECDA8 -lbl_802ECCA0: -/* 802ECCA0 28 1D 00 00 */ cmplwi r29, 0 -/* 802ECCA4 40 82 00 18 */ bne lbl_802ECCBC -/* 802ECCA8 7F E3 FB 78 */ mr r3, r31 -/* 802ECCAC 7F 84 E3 78 */ mr r4, r28 -/* 802ECCB0 7F 25 CB 78 */ mr r5, r25 -/* 802ECCB4 4B FF 15 F5 */ bl storeTIMG__10JUTTextureFPC7ResTIMGUc -/* 802ECCB8 48 00 00 14 */ b lbl_802ECCCC -lbl_802ECCBC: -/* 802ECCBC 7F E3 FB 78 */ mr r3, r31 -/* 802ECCC0 7F 84 E3 78 */ mr r4, r28 -/* 802ECCC4 7F A5 EB 78 */ mr r5, r29 -/* 802ECCC8 4B FF 17 85 */ bl storeTIMG__10JUTTextureFPC7ResTIMGP10JUTPalette -lbl_802ECCCC: -/* 802ECCCC 38 E0 00 00 */ li r7, 0 -/* 802ECCD0 38 C0 00 01 */ li r6, 1 -/* 802ECCD4 38 61 00 08 */ addi r3, r1, 8 -/* 802ECCD8 48 00 00 24 */ b lbl_802ECCFC -lbl_802ECCDC: -/* 802ECCDC 88 9A 00 78 */ lbz r4, 0x78(r26) -/* 802ECCE0 54 E5 06 3E */ clrlwi r5, r7, 0x18 -/* 802ECCE4 7C C0 28 30 */ slw r0, r6, r5 -/* 802ECCE8 7C 84 00 38 */ and r4, r4, r0 -/* 802ECCEC 30 04 FF FF */ addic r0, r4, -1 -/* 802ECCF0 7C 00 21 10 */ subfe r0, r0, r4 -/* 802ECCF4 7C 03 29 AE */ stbx r0, r3, r5 -/* 802ECCF8 38 E7 00 01 */ addi r7, r7, 1 -lbl_802ECCFC: -/* 802ECCFC 54 E0 06 3E */ clrlwi r0, r7, 0x18 -/* 802ECD00 28 00 00 02 */ cmplwi r0, 2 -/* 802ECD04 41 80 FF D8 */ blt lbl_802ECCDC -/* 802ECD08 28 1B 00 00 */ cmplwi r27, 0 -/* 802ECD0C 40 82 00 30 */ bne lbl_802ECD3C -/* 802ECD10 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 802ECD14 28 00 00 01 */ cmplwi r0, 1 -/* 802ECD18 40 82 00 24 */ bne lbl_802ECD3C -/* 802ECD1C 80 1A 00 64 */ lwz r0, 0x64(r26) -/* 802ECD20 90 1A 00 68 */ stw r0, 0x68(r26) -/* 802ECD24 80 1A 00 6C */ lwz r0, 0x6c(r26) -/* 802ECD28 90 1A 00 70 */ stw r0, 0x70(r26) -/* 802ECD2C A0 1A 00 04 */ lhz r0, 4(r26) -/* 802ECD30 B0 1A 00 06 */ sth r0, 6(r26) -/* 802ECD34 88 01 00 08 */ lbz r0, 8(r1) -/* 802ECD38 98 01 00 09 */ stb r0, 9(r1) -lbl_802ECD3C: -/* 802ECD3C 57 60 10 3A */ slwi r0, r27, 2 -/* 802ECD40 7C 7A 02 14 */ add r3, r26, r0 -/* 802ECD44 93 E3 00 64 */ stw r31, 0x64(r3) -/* 802ECD48 88 1A 00 78 */ lbz r0, 0x78(r26) -/* 802ECD4C 54 00 06 30 */ rlwinm r0, r0, 0, 0x18, 0x18 -/* 802ECD50 98 1A 00 78 */ stb r0, 0x78(r26) -/* 802ECD54 38 E0 00 00 */ li r7, 0 -/* 802ECD58 38 A1 00 08 */ addi r5, r1, 8 -/* 802ECD5C 38 60 00 01 */ li r3, 1 -/* 802ECD60 48 00 00 28 */ b lbl_802ECD88 -lbl_802ECD64: -/* 802ECD64 54 E6 06 3E */ clrlwi r6, r7, 0x18 -/* 802ECD68 7C 05 30 AE */ lbzx r0, r5, r6 -/* 802ECD6C 28 00 00 00 */ cmplwi r0, 0 -/* 802ECD70 41 82 00 14 */ beq lbl_802ECD84 -/* 802ECD74 88 9A 00 78 */ lbz r4, 0x78(r26) -/* 802ECD78 7C 60 30 30 */ slw r0, r3, r6 -/* 802ECD7C 7C 80 03 78 */ or r0, r4, r0 -/* 802ECD80 98 1A 00 78 */ stb r0, 0x78(r26) -lbl_802ECD84: -/* 802ECD84 38 E7 00 01 */ addi r7, r7, 1 -lbl_802ECD88: -/* 802ECD88 54 E0 06 3E */ clrlwi r0, r7, 0x18 -/* 802ECD8C 28 00 00 02 */ cmplwi r0, 2 -/* 802ECD90 41 80 FF D4 */ blt lbl_802ECD64 -/* 802ECD94 88 7A 00 78 */ lbz r3, 0x78(r26) -/* 802ECD98 38 00 00 01 */ li r0, 1 -/* 802ECD9C 7C 00 D8 30 */ slw r0, r0, r27 -/* 802ECDA0 7C 60 03 78 */ or r0, r3, r0 -/* 802ECDA4 98 1A 00 78 */ stb r0, 0x78(r26) -lbl_802ECDA8: -/* 802ECDA8 38 80 00 00 */ li r4, 0 -/* 802ECDAC 57 60 10 3A */ slwi r0, r27, 2 -/* 802ECDB0 7C 7A 02 14 */ add r3, r26, r0 -/* 802ECDB4 90 83 00 6C */ stw r4, 0x6c(r3) -/* 802ECDB8 3C 60 00 01 */ lis r3, 0x0001 /* 0x0000FFFF@ha */ -/* 802ECDBC 38 83 FF FF */ addi r4, r3, 0xFFFF /* 0x0000FFFF@l */ -/* 802ECDC0 57 60 08 3C */ slwi r0, r27, 1 -/* 802ECDC4 7C 7A 02 14 */ add r3, r26, r0 -/* 802ECDC8 B0 83 00 04 */ sth r4, 4(r3) -/* 802ECDCC 38 60 00 01 */ li r3, 1 -lbl_802ECDD0: -/* 802ECDD0 39 61 00 30 */ addi r11, r1, 0x30 -/* 802ECDD4 48 07 54 45 */ bl _restgpr_25 -/* 802ECDD8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802ECDDC 7C 08 03 A6 */ mtlr r0 -/* 802ECDE0 38 21 00 30 */ addi r1, r1, 0x30 -/* 802ECDE4 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__10J2DPEBlockFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__10J2DPEBlockFv.s deleted file mode 100644 index 56a3ce43fa2..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__10J2DPEBlockFv.s +++ /dev/null @@ -1,25 +0,0 @@ -lbl_802F1840: -/* 802F1840 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802F1844 7C 08 02 A6 */ mflr r0 -/* 802F1848 90 01 00 14 */ stw r0, 0x14(r1) -/* 802F184C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802F1850 7C 7F 1B 78 */ mr r31, r3 -/* 802F1854 A0 03 00 00 */ lhz r0, 0(r3) -/* 802F1858 54 03 DF 7E */ rlwinm r3, r0, 0x1b, 0x1d, 0x1f -/* 802F185C 88 9F 00 02 */ lbz r4, 2(r31) -/* 802F1860 54 05 EF BE */ rlwinm r5, r0, 0x1d, 0x1e, 0x1f -/* 802F1864 54 06 07 7E */ clrlwi r6, r0, 0x1d -/* 802F1868 88 FF 00 03 */ lbz r7, 3(r31) -/* 802F186C 48 06 DD B9 */ bl GXSetAlphaCompare -/* 802F1870 88 7F 00 04 */ lbz r3, 4(r31) -/* 802F1874 88 9F 00 05 */ lbz r4, 5(r31) -/* 802F1878 88 BF 00 06 */ lbz r5, 6(r31) -/* 802F187C 88 DF 00 07 */ lbz r6, 7(r31) -/* 802F1880 48 06 E3 71 */ bl GXSetBlendMode -/* 802F1884 88 7F 00 08 */ lbz r3, 8(r31) -/* 802F1888 48 06 E5 51 */ bl GXSetDither -/* 802F188C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802F1890 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802F1894 7C 08 03 A6 */ mtlr r0 -/* 802F1898 38 21 00 10 */ addi r1, r1, 0x10 -/* 802F189C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock1Fv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock1Fv.s deleted file mode 100644 index e9b7464a115..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock1Fv.s +++ /dev/null @@ -1,155 +0,0 @@ -lbl_802EC328: -/* 802EC328 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802EC32C 7C 08 02 A6 */ mflr r0 -/* 802EC330 90 01 00 34 */ stw r0, 0x34(r1) -/* 802EC334 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EC338 48 07 5E A1 */ bl _savegpr_28 -/* 802EC33C 7C 7F 1B 78 */ mr r31, r3 -/* 802EC340 38 80 00 00 */ li r4, 0 -/* 802EC344 38 A0 00 00 */ li r5, 0 -/* 802EC348 81 83 00 00 */ lwz r12, 0(r3) -/* 802EC34C 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 802EC350 7D 89 03 A6 */ mtctr r12 -/* 802EC354 4E 80 04 21 */ bctrl -/* 802EC358 38 60 00 00 */ li r3, 0 -/* 802EC35C 88 9F 00 08 */ lbz r4, 8(r31) -/* 802EC360 88 BF 00 09 */ lbz r5, 9(r31) -/* 802EC364 88 DF 00 0A */ lbz r6, 0xa(r31) -/* 802EC368 48 07 33 8D */ bl GXSetTevOrder -/* 802EC36C 3B 80 00 00 */ li r28, 0 -/* 802EC370 3B C0 00 00 */ li r30, 0 -/* 802EC374 3B A1 00 0C */ addi r29, r1, 0xc -lbl_802EC378: -/* 802EC378 38 1E 00 0C */ addi r0, r30, 0xc -/* 802EC37C 7C 9F 02 14 */ add r4, r31, r0 -/* 802EC380 80 64 00 00 */ lwz r3, 0(r4) -/* 802EC384 80 04 00 04 */ lwz r0, 4(r4) -/* 802EC388 90 61 00 0C */ stw r3, 0xc(r1) -/* 802EC38C 90 01 00 10 */ stw r0, 0x10(r1) -/* 802EC390 2C 1C 00 03 */ cmpwi r28, 3 -/* 802EC394 38 60 00 00 */ li r3, 0 -/* 802EC398 41 82 00 08 */ beq lbl_802EC3A0 -/* 802EC39C 38 7C 00 01 */ addi r3, r28, 1 -lbl_802EC3A0: -/* 802EC3A0 7F A4 EB 78 */ mr r4, r29 -/* 802EC3A4 48 07 30 39 */ bl GXSetTevColorS10 -/* 802EC3A8 3B 9C 00 01 */ addi r28, r28, 1 -/* 802EC3AC 2C 1C 00 04 */ cmpwi r28, 4 -/* 802EC3B0 3B DE 00 08 */ addi r30, r30, 8 -/* 802EC3B4 41 80 FF C4 */ blt lbl_802EC378 -/* 802EC3B8 38 60 00 01 */ li r3, 1 -/* 802EC3BC 48 07 34 D5 */ bl GXSetNumTevStages -/* 802EC3C0 88 1F 00 2F */ lbz r0, 0x2f(r31) -/* 802EC3C4 88 BF 00 2E */ lbz r5, 0x2e(r31) -/* 802EC3C8 38 60 00 00 */ li r3, 0 -/* 802EC3CC 54 A4 E7 3E */ rlwinm r4, r5, 0x1c, 0x1c, 0x1f -/* 802EC3D0 54 A5 07 3E */ clrlwi r5, r5, 0x1c -/* 802EC3D4 54 06 E7 3E */ rlwinm r6, r0, 0x1c, 0x1c, 0x1f -/* 802EC3D8 54 07 07 3E */ clrlwi r7, r0, 0x1c -/* 802EC3DC 48 07 2E 49 */ bl GXSetTevColorIn -/* 802EC3E0 88 FF 00 33 */ lbz r7, 0x33(r31) -/* 802EC3E4 88 DF 00 32 */ lbz r6, 0x32(r31) -/* 802EC3E8 38 60 00 00 */ li r3, 0 -/* 802EC3EC 54 C0 06 34 */ rlwinm r0, r6, 0, 0x18, 0x1a -/* 802EC3F0 7C 00 2E 70 */ srawi r0, r0, 5 -/* 802EC3F4 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802EC3F8 54 C5 F7 7E */ rlwinm r5, r6, 0x1e, 0x1d, 0x1f -/* 802EC3FC 54 E0 CF FE */ rlwinm r0, r7, 0x19, 0x1f, 0x1f -/* 802EC400 50 C0 0F 7C */ rlwimi r0, r6, 1, 0x1d, 0x1e -/* 802EC404 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EC408 54 E7 E7 7E */ rlwinm r7, r7, 0x1c, 0x1d, 0x1f -/* 802EC40C 48 07 2E 5D */ bl GXSetTevAlphaIn -/* 802EC410 88 9F 00 2D */ lbz r4, 0x2d(r31) -/* 802EC414 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802EC418 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802EC41C 7C 00 26 70 */ srawi r0, r0, 4 -/* 802EC420 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EC424 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802EC428 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802EC42C 38 60 00 00 */ li r3, 0 -/* 802EC430 28 05 00 03 */ cmplwi r5, 3 -/* 802EC434 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802EC438 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802EC43C 7C 89 02 14 */ add r4, r9, r0 -/* 802EC440 38 04 00 08 */ addi r0, r4, 8 -/* 802EC444 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802EC448 41 82 00 08 */ beq lbl_802EC450 -/* 802EC44C 7D 20 4B 78 */ mr r0, r9 -lbl_802EC450: -/* 802EC450 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802EC454 48 07 2E 59 */ bl GXSetTevColorOp -/* 802EC458 88 9F 00 31 */ lbz r4, 0x31(r31) -/* 802EC45C 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802EC460 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802EC464 7C 00 26 70 */ srawi r0, r0, 4 -/* 802EC468 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EC46C 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802EC470 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802EC474 38 60 00 00 */ li r3, 0 -/* 802EC478 28 05 00 03 */ cmplwi r5, 3 -/* 802EC47C 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802EC480 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802EC484 7C 89 02 14 */ add r4, r9, r0 -/* 802EC488 38 04 00 08 */ addi r0, r4, 8 -/* 802EC48C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802EC490 41 82 00 08 */ beq lbl_802EC498 -/* 802EC494 7D 20 4B 78 */ mr r0, r9 -lbl_802EC498: -/* 802EC498 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802EC49C 48 07 2E 79 */ bl GXSetTevAlphaOp -/* 802EC4A0 88 1F 00 44 */ lbz r0, 0x44(r31) -/* 802EC4A4 28 00 00 FF */ cmplwi r0, 0xff -/* 802EC4A8 38 80 00 00 */ li r4, 0 -/* 802EC4AC 41 82 00 08 */ beq lbl_802EC4B4 -/* 802EC4B0 7C 04 03 78 */ mr r4, r0 -lbl_802EC4B4: -/* 802EC4B4 38 60 00 00 */ li r3, 0 -/* 802EC4B8 48 07 2F ED */ bl GXSetTevKColorSel -/* 802EC4BC 88 1F 00 45 */ lbz r0, 0x45(r31) -/* 802EC4C0 28 00 00 FF */ cmplwi r0, 0xff -/* 802EC4C4 38 80 00 00 */ li r4, 0 -/* 802EC4C8 41 82 00 08 */ beq lbl_802EC4D0 -/* 802EC4CC 7C 04 03 78 */ mr r4, r0 -lbl_802EC4D0: -/* 802EC4D0 38 60 00 00 */ li r3, 0 -/* 802EC4D4 48 07 30 2D */ bl GXSetTevKAlphaSel -/* 802EC4D8 3B 80 00 00 */ li r28, 0 -/* 802EC4DC 3B C0 00 00 */ li r30, 0 -lbl_802EC4E0: -/* 802EC4E0 38 1E 00 34 */ addi r0, r30, 0x34 -/* 802EC4E4 7C 1F 00 2E */ lwzx r0, r31, r0 -/* 802EC4E8 90 01 00 08 */ stw r0, 8(r1) -/* 802EC4EC 7F 83 E3 78 */ mr r3, r28 -/* 802EC4F0 38 81 00 08 */ addi r4, r1, 8 -/* 802EC4F4 48 07 2F 4D */ bl GXSetTevKColor -/* 802EC4F8 3B 9C 00 01 */ addi r28, r28, 1 -/* 802EC4FC 2C 1C 00 04 */ cmpwi r28, 4 -/* 802EC500 3B DE 00 04 */ addi r30, r30, 4 -/* 802EC504 41 80 FF DC */ blt lbl_802EC4E0 -/* 802EC508 88 1F 00 33 */ lbz r0, 0x33(r31) -/* 802EC50C 38 60 00 00 */ li r3, 0 -/* 802EC510 54 04 07 BE */ clrlwi r4, r0, 0x1e -/* 802EC514 54 05 F7 BE */ rlwinm r5, r0, 0x1e, 0x1e, 0x1f -/* 802EC518 48 07 30 45 */ bl GXSetTevSwapMode -/* 802EC51C 3B 80 00 00 */ li r28, 0 -lbl_802EC520: -/* 802EC520 38 1C 00 46 */ addi r0, r28, 0x46 -/* 802EC524 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802EC528 7F 83 E3 78 */ mr r3, r28 -/* 802EC52C 54 04 D7 BE */ rlwinm r4, r0, 0x1a, 0x1e, 0x1f -/* 802EC530 54 05 E7 BE */ rlwinm r5, r0, 0x1c, 0x1e, 0x1f -/* 802EC534 54 06 F7 BE */ rlwinm r6, r0, 0x1e, 0x1e, 0x1f -/* 802EC538 54 07 07 BE */ clrlwi r7, r0, 0x1e -/* 802EC53C 48 07 30 69 */ bl GXSetTevSwapModeTable -/* 802EC540 3B 9C 00 01 */ addi r28, r28, 1 -/* 802EC544 2C 1C 00 04 */ cmpwi r28, 4 -/* 802EC548 41 80 FF D8 */ blt lbl_802EC520 -/* 802EC54C 38 7F 00 4C */ addi r3, r31, 0x4c -/* 802EC550 38 80 00 00 */ li r4, 0 -/* 802EC554 4B FF DA F1 */ bl load__14J2DIndTevStageFUc -/* 802EC558 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EC55C 48 07 5C C9 */ bl _restgpr_28 -/* 802EC560 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802EC564 7C 08 03 A6 */ mtlr r0 -/* 802EC568 38 21 00 30 */ addi r1, r1, 0x30 -/* 802EC56C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock2Fv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock2Fv.s deleted file mode 100644 index e92620dc8a0..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock2Fv.s +++ /dev/null @@ -1,206 +0,0 @@ -lbl_802ED584: -/* 802ED584 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802ED588 7C 08 02 A6 */ mflr r0 -/* 802ED58C 90 01 00 34 */ stw r0, 0x34(r1) -/* 802ED590 39 61 00 30 */ addi r11, r1, 0x30 -/* 802ED594 48 07 4C 45 */ bl _savegpr_28 -/* 802ED598 7C 7F 1B 78 */ mr r31, r3 -/* 802ED59C 3B 80 00 00 */ li r28, 0 -lbl_802ED5A0: -/* 802ED5A0 7F E3 FB 78 */ mr r3, r31 -/* 802ED5A4 7F 84 E3 78 */ mr r4, r28 -/* 802ED5A8 7F 85 E3 78 */ mr r5, r28 -/* 802ED5AC 81 9F 00 00 */ lwz r12, 0(r31) -/* 802ED5B0 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 802ED5B4 7D 89 03 A6 */ mtctr r12 -/* 802ED5B8 4E 80 04 21 */ bctrl -/* 802ED5BC 3B 9C 00 01 */ addi r28, r28, 1 -/* 802ED5C0 2C 1C 00 02 */ cmpwi r28, 2 -/* 802ED5C4 41 80 FF DC */ blt lbl_802ED5A0 -/* 802ED5C8 3B A0 00 00 */ li r29, 0 -/* 802ED5CC 3B 80 00 00 */ li r28, 0 -/* 802ED5D0 48 00 00 24 */ b lbl_802ED5F4 -lbl_802ED5D4: -/* 802ED5D4 7C DF E2 14 */ add r6, r31, r28 -/* 802ED5D8 7F A3 EB 78 */ mr r3, r29 -/* 802ED5DC 88 86 00 0A */ lbz r4, 0xa(r6) -/* 802ED5E0 88 A6 00 0B */ lbz r5, 0xb(r6) -/* 802ED5E4 88 C6 00 0C */ lbz r6, 0xc(r6) -/* 802ED5E8 48 07 21 0D */ bl GXSetTevOrder -/* 802ED5EC 3B BD 00 01 */ addi r29, r29, 1 -/* 802ED5F0 3B 9C 00 04 */ addi r28, r28, 4 -lbl_802ED5F4: -/* 802ED5F4 88 1F 00 32 */ lbz r0, 0x32(r31) -/* 802ED5F8 7C 1D 00 00 */ cmpw r29, r0 -/* 802ED5FC 41 80 FF D8 */ blt lbl_802ED5D4 -/* 802ED600 3B C0 00 00 */ li r30, 0 -/* 802ED604 3B 80 00 00 */ li r28, 0 -/* 802ED608 3B A1 00 0C */ addi r29, r1, 0xc -lbl_802ED60C: -/* 802ED60C 38 1C 00 12 */ addi r0, r28, 0x12 -/* 802ED610 7C 9F 02 14 */ add r4, r31, r0 -/* 802ED614 80 64 00 00 */ lwz r3, 0(r4) -/* 802ED618 80 04 00 04 */ lwz r0, 4(r4) -/* 802ED61C 90 61 00 0C */ stw r3, 0xc(r1) -/* 802ED620 90 01 00 10 */ stw r0, 0x10(r1) -/* 802ED624 2C 1E 00 03 */ cmpwi r30, 3 -/* 802ED628 38 60 00 00 */ li r3, 0 -/* 802ED62C 41 82 00 08 */ beq lbl_802ED634 -/* 802ED630 38 7E 00 01 */ addi r3, r30, 1 -lbl_802ED634: -/* 802ED634 7F A4 EB 78 */ mr r4, r29 -/* 802ED638 48 07 1D A5 */ bl GXSetTevColorS10 -/* 802ED63C 3B DE 00 01 */ addi r30, r30, 1 -/* 802ED640 2C 1E 00 04 */ cmpwi r30, 4 -/* 802ED644 3B 9C 00 08 */ addi r28, r28, 8 -/* 802ED648 41 80 FF C4 */ blt lbl_802ED60C -/* 802ED64C 88 7F 00 32 */ lbz r3, 0x32(r31) -/* 802ED650 48 07 22 41 */ bl GXSetNumTevStages -/* 802ED654 3B C0 00 00 */ li r30, 0 -/* 802ED658 3B 80 00 00 */ li r28, 0 -/* 802ED65C 48 00 01 2C */ b lbl_802ED788 -lbl_802ED660: -/* 802ED660 7F BF E2 14 */ add r29, r31, r28 -/* 802ED664 88 1D 00 36 */ lbz r0, 0x36(r29) -/* 802ED668 88 BD 00 35 */ lbz r5, 0x35(r29) -/* 802ED66C 7F C3 F3 78 */ mr r3, r30 -/* 802ED670 54 A4 E7 3E */ rlwinm r4, r5, 0x1c, 0x1c, 0x1f -/* 802ED674 54 A5 07 3E */ clrlwi r5, r5, 0x1c -/* 802ED678 54 06 E7 3E */ rlwinm r6, r0, 0x1c, 0x1c, 0x1f -/* 802ED67C 54 07 07 3E */ clrlwi r7, r0, 0x1c -/* 802ED680 48 07 1B A5 */ bl GXSetTevColorIn -/* 802ED684 88 FD 00 3A */ lbz r7, 0x3a(r29) -/* 802ED688 88 DD 00 39 */ lbz r6, 0x39(r29) -/* 802ED68C 7F C3 F3 78 */ mr r3, r30 -/* 802ED690 54 C0 06 34 */ rlwinm r0, r6, 0, 0x18, 0x1a -/* 802ED694 7C 00 2E 70 */ srawi r0, r0, 5 -/* 802ED698 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802ED69C 54 C5 F7 7E */ rlwinm r5, r6, 0x1e, 0x1d, 0x1f -/* 802ED6A0 54 E0 CF FE */ rlwinm r0, r7, 0x19, 0x1f, 0x1f -/* 802ED6A4 50 C0 0F 7C */ rlwimi r0, r6, 1, 0x1d, 0x1e -/* 802ED6A8 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802ED6AC 54 E7 E7 7E */ rlwinm r7, r7, 0x1c, 0x1d, 0x1f -/* 802ED6B0 48 07 1B B9 */ bl GXSetTevAlphaIn -/* 802ED6B4 88 9D 00 34 */ lbz r4, 0x34(r29) -/* 802ED6B8 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802ED6BC 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802ED6C0 7C 00 26 70 */ srawi r0, r0, 4 -/* 802ED6C4 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802ED6C8 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802ED6CC 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802ED6D0 7F C3 F3 78 */ mr r3, r30 -/* 802ED6D4 28 05 00 03 */ cmplwi r5, 3 -/* 802ED6D8 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802ED6DC 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802ED6E0 7C 89 02 14 */ add r4, r9, r0 -/* 802ED6E4 38 04 00 08 */ addi r0, r4, 8 -/* 802ED6E8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802ED6EC 41 82 00 08 */ beq lbl_802ED6F4 -/* 802ED6F0 7D 20 4B 78 */ mr r0, r9 -lbl_802ED6F4: -/* 802ED6F4 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802ED6F8 48 07 1B B5 */ bl GXSetTevColorOp -/* 802ED6FC 88 9D 00 38 */ lbz r4, 0x38(r29) -/* 802ED700 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802ED704 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802ED708 7C 00 26 70 */ srawi r0, r0, 4 -/* 802ED70C 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802ED710 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802ED714 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802ED718 7F C3 F3 78 */ mr r3, r30 -/* 802ED71C 28 05 00 03 */ cmplwi r5, 3 -/* 802ED720 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802ED724 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802ED728 7C 89 02 14 */ add r4, r9, r0 -/* 802ED72C 38 04 00 08 */ addi r0, r4, 8 -/* 802ED730 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802ED734 41 82 00 08 */ beq lbl_802ED73C -/* 802ED738 7D 20 4B 78 */ mr r0, r9 -lbl_802ED73C: -/* 802ED73C 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802ED740 48 07 1B D5 */ bl GXSetTevAlphaOp -/* 802ED744 7F BF F2 14 */ add r29, r31, r30 -/* 802ED748 88 1D 00 54 */ lbz r0, 0x54(r29) -/* 802ED74C 28 00 00 FF */ cmplwi r0, 0xff -/* 802ED750 38 80 00 00 */ li r4, 0 -/* 802ED754 41 82 00 08 */ beq lbl_802ED75C -/* 802ED758 7C 04 03 78 */ mr r4, r0 -lbl_802ED75C: -/* 802ED75C 7F C3 F3 78 */ mr r3, r30 -/* 802ED760 48 07 1D 45 */ bl GXSetTevKColorSel -/* 802ED764 88 1D 00 56 */ lbz r0, 0x56(r29) -/* 802ED768 28 00 00 FF */ cmplwi r0, 0xff -/* 802ED76C 38 80 00 00 */ li r4, 0 -/* 802ED770 41 82 00 08 */ beq lbl_802ED778 -/* 802ED774 7C 04 03 78 */ mr r4, r0 -lbl_802ED778: -/* 802ED778 7F C3 F3 78 */ mr r3, r30 -/* 802ED77C 48 07 1D 85 */ bl GXSetTevKAlphaSel -/* 802ED780 3B DE 00 01 */ addi r30, r30, 1 -/* 802ED784 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802ED788: -/* 802ED788 88 1F 00 32 */ lbz r0, 0x32(r31) -/* 802ED78C 7C 1E 00 00 */ cmpw r30, r0 -/* 802ED790 41 80 FE D0 */ blt lbl_802ED660 -/* 802ED794 3B A0 00 00 */ li r29, 0 -/* 802ED798 3B 80 00 00 */ li r28, 0 -lbl_802ED79C: -/* 802ED79C 38 1C 00 44 */ addi r0, r28, 0x44 -/* 802ED7A0 7C 1F 00 2E */ lwzx r0, r31, r0 -/* 802ED7A4 90 01 00 08 */ stw r0, 8(r1) -/* 802ED7A8 7F A3 EB 78 */ mr r3, r29 -/* 802ED7AC 38 81 00 08 */ addi r4, r1, 8 -/* 802ED7B0 48 07 1C 91 */ bl GXSetTevKColor -/* 802ED7B4 3B BD 00 01 */ addi r29, r29, 1 -/* 802ED7B8 2C 1D 00 04 */ cmpwi r29, 4 -/* 802ED7BC 3B 9C 00 04 */ addi r28, r28, 4 -/* 802ED7C0 41 80 FF DC */ blt lbl_802ED79C -/* 802ED7C4 3B A0 00 00 */ li r29, 0 -/* 802ED7C8 3B 80 00 00 */ li r28, 0 -/* 802ED7CC 48 00 00 24 */ b lbl_802ED7F0 -lbl_802ED7D0: -/* 802ED7D0 38 1C 00 3A */ addi r0, r28, 0x3a -/* 802ED7D4 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802ED7D8 7F A3 EB 78 */ mr r3, r29 -/* 802ED7DC 54 04 07 BE */ clrlwi r4, r0, 0x1e -/* 802ED7E0 54 05 F7 BE */ rlwinm r5, r0, 0x1e, 0x1e, 0x1f -/* 802ED7E4 48 07 1D 79 */ bl GXSetTevSwapMode -/* 802ED7E8 3B BD 00 01 */ addi r29, r29, 1 -/* 802ED7EC 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802ED7F0: -/* 802ED7F0 88 1F 00 32 */ lbz r0, 0x32(r31) -/* 802ED7F4 7C 1D 00 00 */ cmpw r29, r0 -/* 802ED7F8 41 80 FF D8 */ blt lbl_802ED7D0 -/* 802ED7FC 3B 80 00 00 */ li r28, 0 -lbl_802ED800: -/* 802ED800 38 1C 00 58 */ addi r0, r28, 0x58 -/* 802ED804 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802ED808 7F 83 E3 78 */ mr r3, r28 -/* 802ED80C 54 04 D7 BE */ rlwinm r4, r0, 0x1a, 0x1e, 0x1f -/* 802ED810 54 05 E7 BE */ rlwinm r5, r0, 0x1c, 0x1e, 0x1f -/* 802ED814 54 06 F7 BE */ rlwinm r6, r0, 0x1e, 0x1e, 0x1f -/* 802ED818 54 07 07 BE */ clrlwi r7, r0, 0x1e -/* 802ED81C 48 07 1D 89 */ bl GXSetTevSwapModeTable -/* 802ED820 3B 9C 00 01 */ addi r28, r28, 1 -/* 802ED824 2C 1C 00 04 */ cmpwi r28, 4 -/* 802ED828 41 80 FF D8 */ blt lbl_802ED800 -/* 802ED82C 3B 80 00 00 */ li r28, 0 -/* 802ED830 48 00 00 1C */ b lbl_802ED84C -lbl_802ED834: -/* 802ED834 57 83 15 BA */ rlwinm r3, r28, 2, 0x16, 0x1d -/* 802ED838 38 63 00 5C */ addi r3, r3, 0x5c -/* 802ED83C 7C 7F 1A 14 */ add r3, r31, r3 -/* 802ED840 7F 84 E3 78 */ mr r4, r28 -/* 802ED844 4B FF C8 01 */ bl load__14J2DIndTevStageFUc -/* 802ED848 3B 9C 00 01 */ addi r28, r28, 1 -lbl_802ED84C: -/* 802ED84C 57 83 06 3E */ clrlwi r3, r28, 0x18 -/* 802ED850 88 1F 00 32 */ lbz r0, 0x32(r31) -/* 802ED854 7C 03 00 40 */ cmplw r3, r0 -/* 802ED858 41 80 FF DC */ blt lbl_802ED834 -/* 802ED85C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802ED860 48 07 49 C5 */ bl _restgpr_28 -/* 802ED864 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802ED868 7C 08 03 A6 */ mtlr r0 -/* 802ED86C 38 21 00 30 */ addi r1, r1, 0x30 -/* 802ED870 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock4Fv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock4Fv.s deleted file mode 100644 index 579d871fcbd..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock4Fv.s +++ /dev/null @@ -1,206 +0,0 @@ -lbl_802EEA2C: -/* 802EEA2C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802EEA30 7C 08 02 A6 */ mflr r0 -/* 802EEA34 90 01 00 34 */ stw r0, 0x34(r1) -/* 802EEA38 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EEA3C 48 07 37 9D */ bl _savegpr_28 -/* 802EEA40 7C 7F 1B 78 */ mr r31, r3 -/* 802EEA44 3B 80 00 00 */ li r28, 0 -lbl_802EEA48: -/* 802EEA48 7F E3 FB 78 */ mr r3, r31 -/* 802EEA4C 7F 84 E3 78 */ mr r4, r28 -/* 802EEA50 7F 85 E3 78 */ mr r5, r28 -/* 802EEA54 81 9F 00 00 */ lwz r12, 0(r31) -/* 802EEA58 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 802EEA5C 7D 89 03 A6 */ mtctr r12 -/* 802EEA60 4E 80 04 21 */ bctrl -/* 802EEA64 3B 9C 00 01 */ addi r28, r28, 1 -/* 802EEA68 2C 1C 00 04 */ cmpwi r28, 4 -/* 802EEA6C 41 80 FF DC */ blt lbl_802EEA48 -/* 802EEA70 3B A0 00 00 */ li r29, 0 -/* 802EEA74 3B 80 00 00 */ li r28, 0 -/* 802EEA78 48 00 00 24 */ b lbl_802EEA9C -lbl_802EEA7C: -/* 802EEA7C 7C DF E2 14 */ add r6, r31, r28 -/* 802EEA80 7F A3 EB 78 */ mr r3, r29 -/* 802EEA84 88 86 00 0E */ lbz r4, 0xe(r6) -/* 802EEA88 88 A6 00 0F */ lbz r5, 0xf(r6) -/* 802EEA8C 88 C6 00 10 */ lbz r6, 0x10(r6) -/* 802EEA90 48 07 0C 65 */ bl GXSetTevOrder -/* 802EEA94 3B BD 00 01 */ addi r29, r29, 1 -/* 802EEA98 3B 9C 00 04 */ addi r28, r28, 4 -lbl_802EEA9C: -/* 802EEA9C 88 1F 00 3E */ lbz r0, 0x3e(r31) -/* 802EEAA0 7C 1D 00 00 */ cmpw r29, r0 -/* 802EEAA4 41 80 FF D8 */ blt lbl_802EEA7C -/* 802EEAA8 3B C0 00 00 */ li r30, 0 -/* 802EEAAC 3B 80 00 00 */ li r28, 0 -/* 802EEAB0 3B A1 00 0C */ addi r29, r1, 0xc -lbl_802EEAB4: -/* 802EEAB4 38 1C 00 1E */ addi r0, r28, 0x1e -/* 802EEAB8 7C 9F 02 14 */ add r4, r31, r0 -/* 802EEABC 80 64 00 00 */ lwz r3, 0(r4) -/* 802EEAC0 80 04 00 04 */ lwz r0, 4(r4) -/* 802EEAC4 90 61 00 0C */ stw r3, 0xc(r1) -/* 802EEAC8 90 01 00 10 */ stw r0, 0x10(r1) -/* 802EEACC 2C 1E 00 03 */ cmpwi r30, 3 -/* 802EEAD0 38 60 00 00 */ li r3, 0 -/* 802EEAD4 41 82 00 08 */ beq lbl_802EEADC -/* 802EEAD8 38 7E 00 01 */ addi r3, r30, 1 -lbl_802EEADC: -/* 802EEADC 7F A4 EB 78 */ mr r4, r29 -/* 802EEAE0 48 07 08 FD */ bl GXSetTevColorS10 -/* 802EEAE4 3B DE 00 01 */ addi r30, r30, 1 -/* 802EEAE8 2C 1E 00 04 */ cmpwi r30, 4 -/* 802EEAEC 3B 9C 00 08 */ addi r28, r28, 8 -/* 802EEAF0 41 80 FF C4 */ blt lbl_802EEAB4 -/* 802EEAF4 88 7F 00 3E */ lbz r3, 0x3e(r31) -/* 802EEAF8 48 07 0D 99 */ bl GXSetNumTevStages -/* 802EEAFC 3B C0 00 00 */ li r30, 0 -/* 802EEB00 3B 80 00 00 */ li r28, 0 -/* 802EEB04 48 00 01 2C */ b lbl_802EEC30 -lbl_802EEB08: -/* 802EEB08 7F BF E2 14 */ add r29, r31, r28 -/* 802EEB0C 88 1D 00 42 */ lbz r0, 0x42(r29) -/* 802EEB10 88 BD 00 41 */ lbz r5, 0x41(r29) -/* 802EEB14 7F C3 F3 78 */ mr r3, r30 -/* 802EEB18 54 A4 E7 3E */ rlwinm r4, r5, 0x1c, 0x1c, 0x1f -/* 802EEB1C 54 A5 07 3E */ clrlwi r5, r5, 0x1c -/* 802EEB20 54 06 E7 3E */ rlwinm r6, r0, 0x1c, 0x1c, 0x1f -/* 802EEB24 54 07 07 3E */ clrlwi r7, r0, 0x1c -/* 802EEB28 48 07 06 FD */ bl GXSetTevColorIn -/* 802EEB2C 88 FD 00 46 */ lbz r7, 0x46(r29) -/* 802EEB30 88 DD 00 45 */ lbz r6, 0x45(r29) -/* 802EEB34 7F C3 F3 78 */ mr r3, r30 -/* 802EEB38 54 C0 06 34 */ rlwinm r0, r6, 0, 0x18, 0x1a -/* 802EEB3C 7C 00 2E 70 */ srawi r0, r0, 5 -/* 802EEB40 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802EEB44 54 C5 F7 7E */ rlwinm r5, r6, 0x1e, 0x1d, 0x1f -/* 802EEB48 54 E0 CF FE */ rlwinm r0, r7, 0x19, 0x1f, 0x1f -/* 802EEB4C 50 C0 0F 7C */ rlwimi r0, r6, 1, 0x1d, 0x1e -/* 802EEB50 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EEB54 54 E7 E7 7E */ rlwinm r7, r7, 0x1c, 0x1d, 0x1f -/* 802EEB58 48 07 07 11 */ bl GXSetTevAlphaIn -/* 802EEB5C 88 9D 00 40 */ lbz r4, 0x40(r29) -/* 802EEB60 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802EEB64 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802EEB68 7C 00 26 70 */ srawi r0, r0, 4 -/* 802EEB6C 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EEB70 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802EEB74 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802EEB78 7F C3 F3 78 */ mr r3, r30 -/* 802EEB7C 28 05 00 03 */ cmplwi r5, 3 -/* 802EEB80 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802EEB84 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802EEB88 7C 89 02 14 */ add r4, r9, r0 -/* 802EEB8C 38 04 00 08 */ addi r0, r4, 8 -/* 802EEB90 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802EEB94 41 82 00 08 */ beq lbl_802EEB9C -/* 802EEB98 7D 20 4B 78 */ mr r0, r9 -lbl_802EEB9C: -/* 802EEB9C 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802EEBA0 48 07 07 0D */ bl GXSetTevColorOp -/* 802EEBA4 88 9D 00 44 */ lbz r4, 0x44(r29) -/* 802EEBA8 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802EEBAC 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802EEBB0 7C 00 26 70 */ srawi r0, r0, 4 -/* 802EEBB4 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EEBB8 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802EEBBC 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802EEBC0 7F C3 F3 78 */ mr r3, r30 -/* 802EEBC4 28 05 00 03 */ cmplwi r5, 3 -/* 802EEBC8 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802EEBCC 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802EEBD0 7C 89 02 14 */ add r4, r9, r0 -/* 802EEBD4 38 04 00 08 */ addi r0, r4, 8 -/* 802EEBD8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802EEBDC 41 82 00 08 */ beq lbl_802EEBE4 -/* 802EEBE0 7D 20 4B 78 */ mr r0, r9 -lbl_802EEBE4: -/* 802EEBE4 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802EEBE8 48 07 07 2D */ bl GXSetTevAlphaOp -/* 802EEBEC 7F BF F2 14 */ add r29, r31, r30 -/* 802EEBF0 88 1D 00 70 */ lbz r0, 0x70(r29) -/* 802EEBF4 28 00 00 FF */ cmplwi r0, 0xff -/* 802EEBF8 38 80 00 00 */ li r4, 0 -/* 802EEBFC 41 82 00 08 */ beq lbl_802EEC04 -/* 802EEC00 7C 04 03 78 */ mr r4, r0 -lbl_802EEC04: -/* 802EEC04 7F C3 F3 78 */ mr r3, r30 -/* 802EEC08 48 07 08 9D */ bl GXSetTevKColorSel -/* 802EEC0C 88 1D 00 74 */ lbz r0, 0x74(r29) -/* 802EEC10 28 00 00 FF */ cmplwi r0, 0xff -/* 802EEC14 38 80 00 00 */ li r4, 0 -/* 802EEC18 41 82 00 08 */ beq lbl_802EEC20 -/* 802EEC1C 7C 04 03 78 */ mr r4, r0 -lbl_802EEC20: -/* 802EEC20 7F C3 F3 78 */ mr r3, r30 -/* 802EEC24 48 07 08 DD */ bl GXSetTevKAlphaSel -/* 802EEC28 3B DE 00 01 */ addi r30, r30, 1 -/* 802EEC2C 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802EEC30: -/* 802EEC30 88 1F 00 3E */ lbz r0, 0x3e(r31) -/* 802EEC34 7C 1E 00 00 */ cmpw r30, r0 -/* 802EEC38 41 80 FE D0 */ blt lbl_802EEB08 -/* 802EEC3C 3B A0 00 00 */ li r29, 0 -/* 802EEC40 3B 80 00 00 */ li r28, 0 -lbl_802EEC44: -/* 802EEC44 38 1C 00 60 */ addi r0, r28, 0x60 -/* 802EEC48 7C 1F 00 2E */ lwzx r0, r31, r0 -/* 802EEC4C 90 01 00 08 */ stw r0, 8(r1) -/* 802EEC50 7F A3 EB 78 */ mr r3, r29 -/* 802EEC54 38 81 00 08 */ addi r4, r1, 8 -/* 802EEC58 48 07 07 E9 */ bl GXSetTevKColor -/* 802EEC5C 3B BD 00 01 */ addi r29, r29, 1 -/* 802EEC60 2C 1D 00 04 */ cmpwi r29, 4 -/* 802EEC64 3B 9C 00 04 */ addi r28, r28, 4 -/* 802EEC68 41 80 FF DC */ blt lbl_802EEC44 -/* 802EEC6C 3B A0 00 00 */ li r29, 0 -/* 802EEC70 3B 80 00 00 */ li r28, 0 -/* 802EEC74 48 00 00 24 */ b lbl_802EEC98 -lbl_802EEC78: -/* 802EEC78 38 1C 00 46 */ addi r0, r28, 0x46 -/* 802EEC7C 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802EEC80 7F A3 EB 78 */ mr r3, r29 -/* 802EEC84 54 04 07 BE */ clrlwi r4, r0, 0x1e -/* 802EEC88 54 05 F7 BE */ rlwinm r5, r0, 0x1e, 0x1e, 0x1f -/* 802EEC8C 48 07 08 D1 */ bl GXSetTevSwapMode -/* 802EEC90 3B BD 00 01 */ addi r29, r29, 1 -/* 802EEC94 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802EEC98: -/* 802EEC98 88 1F 00 3E */ lbz r0, 0x3e(r31) -/* 802EEC9C 7C 1D 00 00 */ cmpw r29, r0 -/* 802EECA0 41 80 FF D8 */ blt lbl_802EEC78 -/* 802EECA4 3B 80 00 00 */ li r28, 0 -lbl_802EECA8: -/* 802EECA8 38 1C 00 78 */ addi r0, r28, 0x78 -/* 802EECAC 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802EECB0 7F 83 E3 78 */ mr r3, r28 -/* 802EECB4 54 04 D7 BE */ rlwinm r4, r0, 0x1a, 0x1e, 0x1f -/* 802EECB8 54 05 E7 BE */ rlwinm r5, r0, 0x1c, 0x1e, 0x1f -/* 802EECBC 54 06 F7 BE */ rlwinm r6, r0, 0x1e, 0x1e, 0x1f -/* 802EECC0 54 07 07 BE */ clrlwi r7, r0, 0x1e -/* 802EECC4 48 07 08 E1 */ bl GXSetTevSwapModeTable -/* 802EECC8 3B 9C 00 01 */ addi r28, r28, 1 -/* 802EECCC 2C 1C 00 04 */ cmpwi r28, 4 -/* 802EECD0 41 80 FF D8 */ blt lbl_802EECA8 -/* 802EECD4 3B 80 00 00 */ li r28, 0 -/* 802EECD8 48 00 00 1C */ b lbl_802EECF4 -lbl_802EECDC: -/* 802EECDC 57 83 15 BA */ rlwinm r3, r28, 2, 0x16, 0x1d -/* 802EECE0 38 63 00 7C */ addi r3, r3, 0x7c -/* 802EECE4 7C 7F 1A 14 */ add r3, r31, r3 -/* 802EECE8 7F 84 E3 78 */ mr r4, r28 -/* 802EECEC 4B FF B3 59 */ bl load__14J2DIndTevStageFUc -/* 802EECF0 3B 9C 00 01 */ addi r28, r28, 1 -lbl_802EECF4: -/* 802EECF4 57 83 06 3E */ clrlwi r3, r28, 0x18 -/* 802EECF8 88 1F 00 3E */ lbz r0, 0x3e(r31) -/* 802EECFC 7C 03 00 40 */ cmplw r3, r0 -/* 802EED00 41 80 FF DC */ blt lbl_802EECDC -/* 802EED04 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EED08 48 07 35 1D */ bl _restgpr_28 -/* 802EED0C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802EED10 7C 08 03 A6 */ mtlr r0 -/* 802EED14 38 21 00 30 */ addi r1, r1, 0x30 -/* 802EED18 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock8Fv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock8Fv.s deleted file mode 100644 index 8ec8c5873f8..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock8Fv.s +++ /dev/null @@ -1,206 +0,0 @@ -lbl_802EFEAC: -/* 802EFEAC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802EFEB0 7C 08 02 A6 */ mflr r0 -/* 802EFEB4 90 01 00 34 */ stw r0, 0x34(r1) -/* 802EFEB8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EFEBC 48 07 23 1D */ bl _savegpr_28 -/* 802EFEC0 7C 7F 1B 78 */ mr r31, r3 -/* 802EFEC4 3B 80 00 00 */ li r28, 0 -lbl_802EFEC8: -/* 802EFEC8 7F E3 FB 78 */ mr r3, r31 -/* 802EFECC 7F 84 E3 78 */ mr r4, r28 -/* 802EFED0 7F 85 E3 78 */ mr r5, r28 -/* 802EFED4 81 9F 00 00 */ lwz r12, 0(r31) -/* 802EFED8 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 802EFEDC 7D 89 03 A6 */ mtctr r12 -/* 802EFEE0 4E 80 04 21 */ bctrl -/* 802EFEE4 3B 9C 00 01 */ addi r28, r28, 1 -/* 802EFEE8 2C 1C 00 08 */ cmpwi r28, 8 -/* 802EFEEC 41 80 FF DC */ blt lbl_802EFEC8 -/* 802EFEF0 3B A0 00 00 */ li r29, 0 -/* 802EFEF4 3B 80 00 00 */ li r28, 0 -/* 802EFEF8 48 00 00 24 */ b lbl_802EFF1C -lbl_802EFEFC: -/* 802EFEFC 7C DF E2 14 */ add r6, r31, r28 -/* 802EFF00 7F A3 EB 78 */ mr r3, r29 -/* 802EFF04 88 86 00 16 */ lbz r4, 0x16(r6) -/* 802EFF08 88 A6 00 17 */ lbz r5, 0x17(r6) -/* 802EFF0C 88 C6 00 18 */ lbz r6, 0x18(r6) -/* 802EFF10 48 06 F7 E5 */ bl GXSetTevOrder -/* 802EFF14 3B BD 00 01 */ addi r29, r29, 1 -/* 802EFF18 3B 9C 00 04 */ addi r28, r28, 4 -lbl_802EFF1C: -/* 802EFF1C 88 1F 00 56 */ lbz r0, 0x56(r31) -/* 802EFF20 7C 1D 00 00 */ cmpw r29, r0 -/* 802EFF24 41 80 FF D8 */ blt lbl_802EFEFC -/* 802EFF28 3B C0 00 00 */ li r30, 0 -/* 802EFF2C 3B 80 00 00 */ li r28, 0 -/* 802EFF30 3B A1 00 0C */ addi r29, r1, 0xc -lbl_802EFF34: -/* 802EFF34 38 1C 00 36 */ addi r0, r28, 0x36 -/* 802EFF38 7C 9F 02 14 */ add r4, r31, r0 -/* 802EFF3C 80 64 00 00 */ lwz r3, 0(r4) -/* 802EFF40 80 04 00 04 */ lwz r0, 4(r4) -/* 802EFF44 90 61 00 0C */ stw r3, 0xc(r1) -/* 802EFF48 90 01 00 10 */ stw r0, 0x10(r1) -/* 802EFF4C 2C 1E 00 03 */ cmpwi r30, 3 -/* 802EFF50 38 60 00 00 */ li r3, 0 -/* 802EFF54 41 82 00 08 */ beq lbl_802EFF5C -/* 802EFF58 38 7E 00 01 */ addi r3, r30, 1 -lbl_802EFF5C: -/* 802EFF5C 7F A4 EB 78 */ mr r4, r29 -/* 802EFF60 48 06 F4 7D */ bl GXSetTevColorS10 -/* 802EFF64 3B DE 00 01 */ addi r30, r30, 1 -/* 802EFF68 2C 1E 00 04 */ cmpwi r30, 4 -/* 802EFF6C 3B 9C 00 08 */ addi r28, r28, 8 -/* 802EFF70 41 80 FF C4 */ blt lbl_802EFF34 -/* 802EFF74 88 7F 00 56 */ lbz r3, 0x56(r31) -/* 802EFF78 48 06 F9 19 */ bl GXSetNumTevStages -/* 802EFF7C 3B C0 00 00 */ li r30, 0 -/* 802EFF80 3B 80 00 00 */ li r28, 0 -/* 802EFF84 48 00 01 2C */ b lbl_802F00B0 -lbl_802EFF88: -/* 802EFF88 7F BF E2 14 */ add r29, r31, r28 -/* 802EFF8C 88 1D 00 5A */ lbz r0, 0x5a(r29) -/* 802EFF90 88 BD 00 59 */ lbz r5, 0x59(r29) -/* 802EFF94 7F C3 F3 78 */ mr r3, r30 -/* 802EFF98 54 A4 E7 3E */ rlwinm r4, r5, 0x1c, 0x1c, 0x1f -/* 802EFF9C 54 A5 07 3E */ clrlwi r5, r5, 0x1c -/* 802EFFA0 54 06 E7 3E */ rlwinm r6, r0, 0x1c, 0x1c, 0x1f -/* 802EFFA4 54 07 07 3E */ clrlwi r7, r0, 0x1c -/* 802EFFA8 48 06 F2 7D */ bl GXSetTevColorIn -/* 802EFFAC 88 FD 00 5E */ lbz r7, 0x5e(r29) -/* 802EFFB0 88 DD 00 5D */ lbz r6, 0x5d(r29) -/* 802EFFB4 7F C3 F3 78 */ mr r3, r30 -/* 802EFFB8 54 C0 06 34 */ rlwinm r0, r6, 0, 0x18, 0x1a -/* 802EFFBC 7C 00 2E 70 */ srawi r0, r0, 5 -/* 802EFFC0 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802EFFC4 54 C5 F7 7E */ rlwinm r5, r6, 0x1e, 0x1d, 0x1f -/* 802EFFC8 54 E0 CF FE */ rlwinm r0, r7, 0x19, 0x1f, 0x1f -/* 802EFFCC 50 C0 0F 7C */ rlwimi r0, r6, 1, 0x1d, 0x1e -/* 802EFFD0 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EFFD4 54 E7 E7 7E */ rlwinm r7, r7, 0x1c, 0x1d, 0x1f -/* 802EFFD8 48 06 F2 91 */ bl GXSetTevAlphaIn -/* 802EFFDC 88 9D 00 58 */ lbz r4, 0x58(r29) -/* 802EFFE0 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802EFFE4 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802EFFE8 7C 00 26 70 */ srawi r0, r0, 4 -/* 802EFFEC 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802EFFF0 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802EFFF4 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802EFFF8 7F C3 F3 78 */ mr r3, r30 -/* 802EFFFC 28 05 00 03 */ cmplwi r5, 3 -/* 802F0000 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802F0004 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802F0008 7C 89 02 14 */ add r4, r9, r0 -/* 802F000C 38 04 00 08 */ addi r0, r4, 8 -/* 802F0010 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802F0014 41 82 00 08 */ beq lbl_802F001C -/* 802F0018 7D 20 4B 78 */ mr r0, r9 -lbl_802F001C: -/* 802F001C 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802F0020 48 06 F2 8D */ bl GXSetTevColorOp -/* 802F0024 88 9D 00 5C */ lbz r4, 0x5c(r29) -/* 802F0028 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802F002C 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802F0030 7C 00 26 70 */ srawi r0, r0, 4 -/* 802F0034 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802F0038 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802F003C 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802F0040 7F C3 F3 78 */ mr r3, r30 -/* 802F0044 28 05 00 03 */ cmplwi r5, 3 -/* 802F0048 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802F004C 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802F0050 7C 89 02 14 */ add r4, r9, r0 -/* 802F0054 38 04 00 08 */ addi r0, r4, 8 -/* 802F0058 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802F005C 41 82 00 08 */ beq lbl_802F0064 -/* 802F0060 7D 20 4B 78 */ mr r0, r9 -lbl_802F0064: -/* 802F0064 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802F0068 48 06 F2 AD */ bl GXSetTevAlphaOp -/* 802F006C 7F BF F2 14 */ add r29, r31, r30 -/* 802F0070 88 1D 00 A8 */ lbz r0, 0xa8(r29) -/* 802F0074 28 00 00 FF */ cmplwi r0, 0xff -/* 802F0078 38 80 00 00 */ li r4, 0 -/* 802F007C 41 82 00 08 */ beq lbl_802F0084 -/* 802F0080 7C 04 03 78 */ mr r4, r0 -lbl_802F0084: -/* 802F0084 7F C3 F3 78 */ mr r3, r30 -/* 802F0088 48 06 F4 1D */ bl GXSetTevKColorSel -/* 802F008C 88 1D 00 B0 */ lbz r0, 0xb0(r29) -/* 802F0090 28 00 00 FF */ cmplwi r0, 0xff -/* 802F0094 38 80 00 00 */ li r4, 0 -/* 802F0098 41 82 00 08 */ beq lbl_802F00A0 -/* 802F009C 7C 04 03 78 */ mr r4, r0 -lbl_802F00A0: -/* 802F00A0 7F C3 F3 78 */ mr r3, r30 -/* 802F00A4 48 06 F4 5D */ bl GXSetTevKAlphaSel -/* 802F00A8 3B DE 00 01 */ addi r30, r30, 1 -/* 802F00AC 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802F00B0: -/* 802F00B0 88 1F 00 56 */ lbz r0, 0x56(r31) -/* 802F00B4 7C 1E 00 00 */ cmpw r30, r0 -/* 802F00B8 41 80 FE D0 */ blt lbl_802EFF88 -/* 802F00BC 3B A0 00 00 */ li r29, 0 -/* 802F00C0 3B 80 00 00 */ li r28, 0 -lbl_802F00C4: -/* 802F00C4 38 1C 00 98 */ addi r0, r28, 0x98 -/* 802F00C8 7C 1F 00 2E */ lwzx r0, r31, r0 -/* 802F00CC 90 01 00 08 */ stw r0, 8(r1) -/* 802F00D0 7F A3 EB 78 */ mr r3, r29 -/* 802F00D4 38 81 00 08 */ addi r4, r1, 8 -/* 802F00D8 48 06 F3 69 */ bl GXSetTevKColor -/* 802F00DC 3B BD 00 01 */ addi r29, r29, 1 -/* 802F00E0 2C 1D 00 04 */ cmpwi r29, 4 -/* 802F00E4 3B 9C 00 04 */ addi r28, r28, 4 -/* 802F00E8 41 80 FF DC */ blt lbl_802F00C4 -/* 802F00EC 3B A0 00 00 */ li r29, 0 -/* 802F00F0 3B 80 00 00 */ li r28, 0 -/* 802F00F4 48 00 00 24 */ b lbl_802F0118 -lbl_802F00F8: -/* 802F00F8 38 1C 00 5E */ addi r0, r28, 0x5e -/* 802F00FC 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802F0100 7F A3 EB 78 */ mr r3, r29 -/* 802F0104 54 04 07 BE */ clrlwi r4, r0, 0x1e -/* 802F0108 54 05 F7 BE */ rlwinm r5, r0, 0x1e, 0x1e, 0x1f -/* 802F010C 48 06 F4 51 */ bl GXSetTevSwapMode -/* 802F0110 3B BD 00 01 */ addi r29, r29, 1 -/* 802F0114 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802F0118: -/* 802F0118 88 1F 00 56 */ lbz r0, 0x56(r31) -/* 802F011C 7C 1D 00 00 */ cmpw r29, r0 -/* 802F0120 41 80 FF D8 */ blt lbl_802F00F8 -/* 802F0124 3B 80 00 00 */ li r28, 0 -lbl_802F0128: -/* 802F0128 38 1C 00 B8 */ addi r0, r28, 0xb8 -/* 802F012C 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802F0130 7F 83 E3 78 */ mr r3, r28 -/* 802F0134 54 04 D7 BE */ rlwinm r4, r0, 0x1a, 0x1e, 0x1f -/* 802F0138 54 05 E7 BE */ rlwinm r5, r0, 0x1c, 0x1e, 0x1f -/* 802F013C 54 06 F7 BE */ rlwinm r6, r0, 0x1e, 0x1e, 0x1f -/* 802F0140 54 07 07 BE */ clrlwi r7, r0, 0x1e -/* 802F0144 48 06 F4 61 */ bl GXSetTevSwapModeTable -/* 802F0148 3B 9C 00 01 */ addi r28, r28, 1 -/* 802F014C 2C 1C 00 04 */ cmpwi r28, 4 -/* 802F0150 41 80 FF D8 */ blt lbl_802F0128 -/* 802F0154 3B 80 00 00 */ li r28, 0 -/* 802F0158 48 00 00 1C */ b lbl_802F0174 -lbl_802F015C: -/* 802F015C 57 83 15 BA */ rlwinm r3, r28, 2, 0x16, 0x1d -/* 802F0160 38 63 00 BC */ addi r3, r3, 0xbc -/* 802F0164 7C 7F 1A 14 */ add r3, r31, r3 -/* 802F0168 7F 84 E3 78 */ mr r4, r28 -/* 802F016C 4B FF 9E D9 */ bl load__14J2DIndTevStageFUc -/* 802F0170 3B 9C 00 01 */ addi r28, r28, 1 -lbl_802F0174: -/* 802F0174 57 83 06 3E */ clrlwi r3, r28, 0x18 -/* 802F0178 88 1F 00 56 */ lbz r0, 0x56(r31) -/* 802F017C 7C 03 00 40 */ cmplw r3, r0 -/* 802F0180 41 80 FF DC */ blt lbl_802F015C -/* 802F0184 39 61 00 30 */ addi r11, r1, 0x30 -/* 802F0188 48 07 20 9D */ bl _restgpr_28 -/* 802F018C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802F0190 7C 08 03 A6 */ mtlr r0 -/* 802F0194 38 21 00 30 */ addi r1, r1, 0x30 -/* 802F0198 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DColorBlockFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DColorBlockFv.s deleted file mode 100644 index 8dd9895148d..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DColorBlockFv.s +++ /dev/null @@ -1,63 +0,0 @@ -lbl_802EB424: -/* 802EB424 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 802EB428 7C 08 02 A6 */ mflr r0 -/* 802EB42C 90 01 00 44 */ stw r0, 0x44(r1) -/* 802EB430 39 61 00 40 */ addi r11, r1, 0x40 -/* 802EB434 48 07 6D A1 */ bl _savegpr_27 -/* 802EB438 7C 7F 1B 78 */ mr r31, r3 -/* 802EB43C 3B 80 00 00 */ li r28, 0 -/* 802EB440 3B A0 00 00 */ li r29, 0 -lbl_802EB444: -/* 802EB444 7C 1F E8 2E */ lwzx r0, r31, r29 -/* 802EB448 90 01 00 08 */ stw r0, 8(r1) -/* 802EB44C 38 7C 00 04 */ addi r3, r28, 4 -/* 802EB450 38 81 00 08 */ addi r4, r1, 8 -/* 802EB454 48 07 25 F5 */ bl GXSetChanMatColor -/* 802EB458 3B 9C 00 01 */ addi r28, r28, 1 -/* 802EB45C 2C 1C 00 02 */ cmpwi r28, 2 -/* 802EB460 3B BD 00 04 */ addi r29, r29, 4 -/* 802EB464 41 80 FF E0 */ blt lbl_802EB444 -/* 802EB468 88 7F 00 08 */ lbz r3, 8(r31) -/* 802EB46C 48 07 26 C5 */ bl GXSetNumChans -/* 802EB470 3C 60 80 3A */ lis r3, lit_1463@ha /* 0x803A1C00@ha */ -/* 802EB474 38 83 1C 00 */ addi r4, r3, lit_1463@l /* 0x803A1C00@l */ -/* 802EB478 80 64 00 00 */ lwz r3, 0(r4) -/* 802EB47C 80 04 00 04 */ lwz r0, 4(r4) -/* 802EB480 90 61 00 0C */ stw r3, 0xc(r1) -/* 802EB484 90 01 00 10 */ stw r0, 0x10(r1) -/* 802EB488 80 64 00 08 */ lwz r3, 8(r4) -/* 802EB48C 80 04 00 0C */ lwz r0, 0xc(r4) -/* 802EB490 90 61 00 14 */ stw r3, 0x14(r1) -/* 802EB494 90 01 00 18 */ stw r0, 0x18(r1) -/* 802EB498 3B 60 00 00 */ li r27, 0 -/* 802EB49C 3B C0 00 00 */ li r30, 0 -/* 802EB4A0 3B A0 00 00 */ li r29, 0 -/* 802EB4A4 3B 81 00 0C */ addi r28, r1, 0xc -/* 802EB4A8 48 00 00 38 */ b lbl_802EB4E0 -lbl_802EB4AC: -/* 802EB4AC 7C 7C E8 2E */ lwzx r3, r28, r29 -/* 802EB4B0 38 80 00 00 */ li r4, 0 -/* 802EB4B4 38 A0 00 00 */ li r5, 0 -/* 802EB4B8 38 1E 00 0A */ addi r0, r30, 0xa -/* 802EB4BC 7C 1F 02 2E */ lhzx r0, r31, r0 -/* 802EB4C0 54 06 07 FE */ clrlwi r6, r0, 0x1f -/* 802EB4C4 38 E0 00 00 */ li r7, 0 -/* 802EB4C8 39 00 00 00 */ li r8, 0 -/* 802EB4CC 39 20 00 02 */ li r9, 2 -/* 802EB4D0 48 07 26 9D */ bl GXSetChanCtrl -/* 802EB4D4 3B 7B 00 01 */ addi r27, r27, 1 -/* 802EB4D8 3B DE 00 02 */ addi r30, r30, 2 -/* 802EB4DC 3B BD 00 04 */ addi r29, r29, 4 -lbl_802EB4E0: -/* 802EB4E0 88 1F 00 08 */ lbz r0, 8(r31) -/* 802EB4E4 54 00 08 3C */ slwi r0, r0, 1 -/* 802EB4E8 7C 1B 00 00 */ cmpw r27, r0 -/* 802EB4EC 41 80 FF C0 */ blt lbl_802EB4AC -/* 802EB4F0 88 7F 00 12 */ lbz r3, 0x12(r31) -/* 802EB4F4 48 07 14 91 */ bl GXSetCullMode -/* 802EB4F8 39 61 00 40 */ addi r11, r1, 0x40 -/* 802EB4FC 48 07 6D 25 */ bl _restgpr_27 -/* 802EB500 80 01 00 44 */ lwz r0, 0x44(r1) -/* 802EB504 7C 08 03 A6 */ mtlr r0 -/* 802EB508 38 21 00 40 */ addi r1, r1, 0x40 -/* 802EB50C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DTevBlock16Fv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DTevBlock16Fv.s deleted file mode 100644 index d31b3273529..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DTevBlock16Fv.s +++ /dev/null @@ -1,206 +0,0 @@ -lbl_802F132C: -/* 802F132C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802F1330 7C 08 02 A6 */ mflr r0 -/* 802F1334 90 01 00 34 */ stw r0, 0x34(r1) -/* 802F1338 39 61 00 30 */ addi r11, r1, 0x30 -/* 802F133C 48 07 0E 9D */ bl _savegpr_28 -/* 802F1340 7C 7F 1B 78 */ mr r31, r3 -/* 802F1344 3B 80 00 00 */ li r28, 0 -lbl_802F1348: -/* 802F1348 7F E3 FB 78 */ mr r3, r31 -/* 802F134C 7F 84 E3 78 */ mr r4, r28 -/* 802F1350 7F 85 E3 78 */ mr r5, r28 -/* 802F1354 81 9F 00 00 */ lwz r12, 0(r31) -/* 802F1358 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 802F135C 7D 89 03 A6 */ mtctr r12 -/* 802F1360 4E 80 04 21 */ bctrl -/* 802F1364 3B 9C 00 01 */ addi r28, r28, 1 -/* 802F1368 2C 1C 00 08 */ cmpwi r28, 8 -/* 802F136C 41 80 FF DC */ blt lbl_802F1348 -/* 802F1370 3B A0 00 00 */ li r29, 0 -/* 802F1374 3B 80 00 00 */ li r28, 0 -/* 802F1378 48 00 00 24 */ b lbl_802F139C -lbl_802F137C: -/* 802F137C 7C DF E2 14 */ add r6, r31, r28 -/* 802F1380 7F A3 EB 78 */ mr r3, r29 -/* 802F1384 88 86 00 16 */ lbz r4, 0x16(r6) -/* 802F1388 88 A6 00 17 */ lbz r5, 0x17(r6) -/* 802F138C 88 C6 00 18 */ lbz r6, 0x18(r6) -/* 802F1390 48 06 E3 65 */ bl GXSetTevOrder -/* 802F1394 3B BD 00 01 */ addi r29, r29, 1 -/* 802F1398 3B 9C 00 04 */ addi r28, r28, 4 -lbl_802F139C: -/* 802F139C 88 1F 00 76 */ lbz r0, 0x76(r31) -/* 802F13A0 7C 1D 00 00 */ cmpw r29, r0 -/* 802F13A4 41 80 FF D8 */ blt lbl_802F137C -/* 802F13A8 3B C0 00 00 */ li r30, 0 -/* 802F13AC 3B 80 00 00 */ li r28, 0 -/* 802F13B0 3B A1 00 0C */ addi r29, r1, 0xc -lbl_802F13B4: -/* 802F13B4 38 1C 00 56 */ addi r0, r28, 0x56 -/* 802F13B8 7C 9F 02 14 */ add r4, r31, r0 -/* 802F13BC 80 64 00 00 */ lwz r3, 0(r4) -/* 802F13C0 80 04 00 04 */ lwz r0, 4(r4) -/* 802F13C4 90 61 00 0C */ stw r3, 0xc(r1) -/* 802F13C8 90 01 00 10 */ stw r0, 0x10(r1) -/* 802F13CC 2C 1E 00 03 */ cmpwi r30, 3 -/* 802F13D0 38 60 00 00 */ li r3, 0 -/* 802F13D4 41 82 00 08 */ beq lbl_802F13DC -/* 802F13D8 38 7E 00 01 */ addi r3, r30, 1 -lbl_802F13DC: -/* 802F13DC 7F A4 EB 78 */ mr r4, r29 -/* 802F13E0 48 06 DF FD */ bl GXSetTevColorS10 -/* 802F13E4 3B DE 00 01 */ addi r30, r30, 1 -/* 802F13E8 2C 1E 00 04 */ cmpwi r30, 4 -/* 802F13EC 3B 9C 00 08 */ addi r28, r28, 8 -/* 802F13F0 41 80 FF C4 */ blt lbl_802F13B4 -/* 802F13F4 88 7F 00 76 */ lbz r3, 0x76(r31) -/* 802F13F8 48 06 E4 99 */ bl GXSetNumTevStages -/* 802F13FC 3B C0 00 00 */ li r30, 0 -/* 802F1400 3B 80 00 00 */ li r28, 0 -/* 802F1404 48 00 01 2C */ b lbl_802F1530 -lbl_802F1408: -/* 802F1408 7F BF E2 14 */ add r29, r31, r28 -/* 802F140C 88 1D 00 7A */ lbz r0, 0x7a(r29) -/* 802F1410 88 BD 00 79 */ lbz r5, 0x79(r29) -/* 802F1414 7F C3 F3 78 */ mr r3, r30 -/* 802F1418 54 A4 E7 3E */ rlwinm r4, r5, 0x1c, 0x1c, 0x1f -/* 802F141C 54 A5 07 3E */ clrlwi r5, r5, 0x1c -/* 802F1420 54 06 E7 3E */ rlwinm r6, r0, 0x1c, 0x1c, 0x1f -/* 802F1424 54 07 07 3E */ clrlwi r7, r0, 0x1c -/* 802F1428 48 06 DD FD */ bl GXSetTevColorIn -/* 802F142C 88 FD 00 7E */ lbz r7, 0x7e(r29) -/* 802F1430 88 DD 00 7D */ lbz r6, 0x7d(r29) -/* 802F1434 7F C3 F3 78 */ mr r3, r30 -/* 802F1438 54 C0 06 34 */ rlwinm r0, r6, 0, 0x18, 0x1a -/* 802F143C 7C 00 2E 70 */ srawi r0, r0, 5 -/* 802F1440 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802F1444 54 C5 F7 7E */ rlwinm r5, r6, 0x1e, 0x1d, 0x1f -/* 802F1448 54 E0 CF FE */ rlwinm r0, r7, 0x19, 0x1f, 0x1f -/* 802F144C 50 C0 0F 7C */ rlwimi r0, r6, 1, 0x1d, 0x1e -/* 802F1450 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802F1454 54 E7 E7 7E */ rlwinm r7, r7, 0x1c, 0x1d, 0x1f -/* 802F1458 48 06 DE 11 */ bl GXSetTevAlphaIn -/* 802F145C 88 9D 00 78 */ lbz r4, 0x78(r29) -/* 802F1460 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802F1464 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802F1468 7C 00 26 70 */ srawi r0, r0, 4 -/* 802F146C 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802F1470 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802F1474 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802F1478 7F C3 F3 78 */ mr r3, r30 -/* 802F147C 28 05 00 03 */ cmplwi r5, 3 -/* 802F1480 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802F1484 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802F1488 7C 89 02 14 */ add r4, r9, r0 -/* 802F148C 38 04 00 08 */ addi r0, r4, 8 -/* 802F1490 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802F1494 41 82 00 08 */ beq lbl_802F149C -/* 802F1498 7D 20 4B 78 */ mr r0, r9 -lbl_802F149C: -/* 802F149C 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802F14A0 48 06 DE 0D */ bl GXSetTevColorOp -/* 802F14A4 88 9D 00 7C */ lbz r4, 0x7c(r29) -/* 802F14A8 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 802F14AC 54 80 06 B6 */ rlwinm r0, r4, 0, 0x1a, 0x1b -/* 802F14B0 7C 00 26 70 */ srawi r0, r0, 4 -/* 802F14B4 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 802F14B8 54 87 EF FE */ rlwinm r7, r4, 0x1d, 0x1f, 0x1f -/* 802F14BC 54 88 D7 BE */ rlwinm r8, r4, 0x1a, 0x1e, 0x1f -/* 802F14C0 7F C3 F3 78 */ mr r3, r30 -/* 802F14C4 28 05 00 03 */ cmplwi r5, 3 -/* 802F14C8 54 89 F7 FE */ rlwinm r9, r4, 0x1e, 0x1f, 0x1f -/* 802F14CC 54 80 EF 7C */ rlwinm r0, r4, 0x1d, 0x1d, 0x1e -/* 802F14D0 7C 89 02 14 */ add r4, r9, r0 -/* 802F14D4 38 04 00 08 */ addi r0, r4, 8 -/* 802F14D8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802F14DC 41 82 00 08 */ beq lbl_802F14E4 -/* 802F14E0 7D 20 4B 78 */ mr r0, r9 -lbl_802F14E4: -/* 802F14E4 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 802F14E8 48 06 DE 2D */ bl GXSetTevAlphaOp -/* 802F14EC 7F BF F2 14 */ add r29, r31, r30 -/* 802F14F0 88 1D 01 08 */ lbz r0, 0x108(r29) -/* 802F14F4 28 00 00 FF */ cmplwi r0, 0xff -/* 802F14F8 38 80 00 00 */ li r4, 0 -/* 802F14FC 41 82 00 08 */ beq lbl_802F1504 -/* 802F1500 7C 04 03 78 */ mr r4, r0 -lbl_802F1504: -/* 802F1504 7F C3 F3 78 */ mr r3, r30 -/* 802F1508 48 06 DF 9D */ bl GXSetTevKColorSel -/* 802F150C 88 1D 01 18 */ lbz r0, 0x118(r29) -/* 802F1510 28 00 00 FF */ cmplwi r0, 0xff -/* 802F1514 38 80 00 00 */ li r4, 0 -/* 802F1518 41 82 00 08 */ beq lbl_802F1520 -/* 802F151C 7C 04 03 78 */ mr r4, r0 -lbl_802F1520: -/* 802F1520 7F C3 F3 78 */ mr r3, r30 -/* 802F1524 48 06 DF DD */ bl GXSetTevKAlphaSel -/* 802F1528 3B DE 00 01 */ addi r30, r30, 1 -/* 802F152C 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802F1530: -/* 802F1530 88 1F 00 76 */ lbz r0, 0x76(r31) -/* 802F1534 7C 1E 00 00 */ cmpw r30, r0 -/* 802F1538 41 80 FE D0 */ blt lbl_802F1408 -/* 802F153C 3B A0 00 00 */ li r29, 0 -/* 802F1540 3B 80 00 00 */ li r28, 0 -lbl_802F1544: -/* 802F1544 38 1C 00 F8 */ addi r0, r28, 0xf8 -/* 802F1548 7C 1F 00 2E */ lwzx r0, r31, r0 -/* 802F154C 90 01 00 08 */ stw r0, 8(r1) -/* 802F1550 7F A3 EB 78 */ mr r3, r29 -/* 802F1554 38 81 00 08 */ addi r4, r1, 8 -/* 802F1558 48 06 DE E9 */ bl GXSetTevKColor -/* 802F155C 3B BD 00 01 */ addi r29, r29, 1 -/* 802F1560 2C 1D 00 04 */ cmpwi r29, 4 -/* 802F1564 3B 9C 00 04 */ addi r28, r28, 4 -/* 802F1568 41 80 FF DC */ blt lbl_802F1544 -/* 802F156C 3B A0 00 00 */ li r29, 0 -/* 802F1570 3B 80 00 00 */ li r28, 0 -/* 802F1574 48 00 00 24 */ b lbl_802F1598 -lbl_802F1578: -/* 802F1578 38 1C 00 7E */ addi r0, r28, 0x7e -/* 802F157C 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802F1580 7F A3 EB 78 */ mr r3, r29 -/* 802F1584 54 04 07 BE */ clrlwi r4, r0, 0x1e -/* 802F1588 54 05 F7 BE */ rlwinm r5, r0, 0x1e, 0x1e, 0x1f -/* 802F158C 48 06 DF D1 */ bl GXSetTevSwapMode -/* 802F1590 3B BD 00 01 */ addi r29, r29, 1 -/* 802F1594 3B 9C 00 08 */ addi r28, r28, 8 -lbl_802F1598: -/* 802F1598 88 1F 00 76 */ lbz r0, 0x76(r31) -/* 802F159C 7C 1D 00 00 */ cmpw r29, r0 -/* 802F15A0 41 80 FF D8 */ blt lbl_802F1578 -/* 802F15A4 3B 80 00 00 */ li r28, 0 -lbl_802F15A8: -/* 802F15A8 38 1C 01 28 */ addi r0, r28, 0x128 -/* 802F15AC 7C 1F 00 AE */ lbzx r0, r31, r0 -/* 802F15B0 7F 83 E3 78 */ mr r3, r28 -/* 802F15B4 54 04 D7 BE */ rlwinm r4, r0, 0x1a, 0x1e, 0x1f -/* 802F15B8 54 05 E7 BE */ rlwinm r5, r0, 0x1c, 0x1e, 0x1f -/* 802F15BC 54 06 F7 BE */ rlwinm r6, r0, 0x1e, 0x1e, 0x1f -/* 802F15C0 54 07 07 BE */ clrlwi r7, r0, 0x1e -/* 802F15C4 48 06 DF E1 */ bl GXSetTevSwapModeTable -/* 802F15C8 3B 9C 00 01 */ addi r28, r28, 1 -/* 802F15CC 2C 1C 00 04 */ cmpwi r28, 4 -/* 802F15D0 41 80 FF D8 */ blt lbl_802F15A8 -/* 802F15D4 3B 80 00 00 */ li r28, 0 -/* 802F15D8 48 00 00 1C */ b lbl_802F15F4 -lbl_802F15DC: -/* 802F15DC 57 83 15 BA */ rlwinm r3, r28, 2, 0x16, 0x1d -/* 802F15E0 38 63 01 2C */ addi r3, r3, 0x12c -/* 802F15E4 7C 7F 1A 14 */ add r3, r31, r3 -/* 802F15E8 7F 84 E3 78 */ mr r4, r28 -/* 802F15EC 4B FF 8A 59 */ bl load__14J2DIndTevStageFUc -/* 802F15F0 3B 9C 00 01 */ addi r28, r28, 1 -lbl_802F15F4: -/* 802F15F4 57 83 06 3E */ clrlwi r3, r28, 0x18 -/* 802F15F8 88 1F 00 76 */ lbz r0, 0x76(r31) -/* 802F15FC 7C 03 00 40 */ cmplw r3, r0 -/* 802F1600 41 80 FF DC */ blt lbl_802F15DC -/* 802F1604 39 61 00 30 */ addi r11, r1, 0x30 -/* 802F1608 48 07 0C 1D */ bl _restgpr_28 -/* 802F160C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802F1610 7C 08 03 A6 */ mtlr r0 -/* 802F1614 38 21 00 30 */ addi r1, r1, 0x30 -/* 802F1618 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__14J2DTexGenBlockFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__14J2DTexGenBlockFv.s deleted file mode 100644 index cf2c6578aa6..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__14J2DTexGenBlockFv.s +++ /dev/null @@ -1,50 +0,0 @@ -lbl_802EB570: -/* 802EB570 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802EB574 7C 08 02 A6 */ mflr r0 -/* 802EB578 90 01 00 24 */ stw r0, 0x24(r1) -/* 802EB57C 39 61 00 20 */ addi r11, r1, 0x20 -/* 802EB580 48 07 6C 5D */ bl _savegpr_29 -/* 802EB584 7C 7D 1B 78 */ mr r29, r3 -/* 802EB588 80 03 00 00 */ lwz r0, 0(r3) -/* 802EB58C 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 802EB590 48 07 08 6D */ bl GXSetNumTexGens -/* 802EB594 3B C0 00 00 */ li r30, 0 -/* 802EB598 3B E0 00 00 */ li r31, 0 -/* 802EB59C 48 00 00 2C */ b lbl_802EB5C8 -lbl_802EB5A0: -/* 802EB5A0 7C DD FA 14 */ add r6, r29, r31 -/* 802EB5A4 7F C3 F3 78 */ mr r3, r30 -/* 802EB5A8 88 86 00 04 */ lbz r4, 4(r6) -/* 802EB5AC 88 A6 00 05 */ lbz r5, 5(r6) -/* 802EB5B0 88 C6 00 06 */ lbz r6, 6(r6) -/* 802EB5B4 38 E0 00 00 */ li r7, 0 -/* 802EB5B8 39 00 00 7D */ li r8, 0x7d -/* 802EB5BC 48 07 05 C1 */ bl GXSetTexCoordGen2 -/* 802EB5C0 3B DE 00 01 */ addi r30, r30, 1 -/* 802EB5C4 3B FF 00 04 */ addi r31, r31, 4 -lbl_802EB5C8: -/* 802EB5C8 80 1D 00 00 */ lwz r0, 0(r29) -/* 802EB5CC 7C 1E 00 40 */ cmplw r30, r0 -/* 802EB5D0 41 80 FF D0 */ blt lbl_802EB5A0 -/* 802EB5D4 3B C0 00 00 */ li r30, 0 -/* 802EB5D8 48 00 00 24 */ b lbl_802EB5FC -lbl_802EB5DC: -/* 802EB5DC 57 C4 06 3E */ clrlwi r4, r30, 0x18 -/* 802EB5E0 57 C3 15 BA */ rlwinm r3, r30, 2, 0x16, 0x1d -/* 802EB5E4 38 03 00 24 */ addi r0, r3, 0x24 -/* 802EB5E8 7C 7D 00 2E */ lwzx r3, r29, r0 -/* 802EB5EC 28 03 00 00 */ cmplwi r3, 0 -/* 802EB5F0 41 82 00 08 */ beq lbl_802EB5F8 -/* 802EB5F4 4B FF E6 9D */ bl load__9J2DTexMtxFUl -lbl_802EB5F8: -/* 802EB5F8 3B DE 00 01 */ addi r30, r30, 1 -lbl_802EB5FC: -/* 802EB5FC 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 802EB600 28 00 00 08 */ cmplwi r0, 8 -/* 802EB604 41 80 FF D8 */ blt lbl_802EB5DC -/* 802EB608 39 61 00 20 */ addi r11, r1, 0x20 -/* 802EB60C 48 07 6C 1D */ bl _restgpr_29 -/* 802EB610 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802EB614 7C 08 03 A6 */ mtlr r0 -/* 802EB618 38 21 00 20 */ addi r1, r1, 0x20 -/* 802EB61C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__15J2DIndBlockFullFv.s b/asm/JSystem/J2DGraph/J2DMatBlock/setGX__15J2DIndBlockFullFv.s deleted file mode 100644 index aaaff122494..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setGX__15J2DIndBlockFullFv.s +++ /dev/null @@ -1,58 +0,0 @@ -lbl_802F1730: -/* 802F1730 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802F1734 7C 08 02 A6 */ mflr r0 -/* 802F1738 90 01 00 14 */ stw r0, 0x14(r1) -/* 802F173C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802F1740 93 C1 00 08 */ stw r30, 8(r1) -/* 802F1744 7C 7E 1B 78 */ mr r30, r3 -/* 802F1748 88 63 00 04 */ lbz r3, 4(r3) -/* 802F174C 48 06 D9 89 */ bl GXSetNumIndStages -/* 802F1750 3B E0 00 00 */ li r31, 0 -/* 802F1754 48 00 00 20 */ b lbl_802F1774 -lbl_802F1758: -/* 802F1758 57 E0 06 3E */ clrlwi r0, r31, 0x18 -/* 802F175C 1C 60 00 1C */ mulli r3, r0, 0x1c -/* 802F1760 38 63 00 10 */ addi r3, r3, 0x10 -/* 802F1764 7C 7E 1A 14 */ add r3, r30, r3 -/* 802F1768 7F E4 FB 78 */ mr r4, r31 -/* 802F176C 4B FF 89 2D */ bl load__12J2DIndTexMtxFUc -/* 802F1770 3B FF 00 01 */ addi r31, r31, 1 -lbl_802F1774: -/* 802F1774 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 802F1778 88 1E 00 04 */ lbz r0, 4(r30) -/* 802F177C 7C 03 00 40 */ cmplw r3, r0 -/* 802F1780 41 80 FF D8 */ blt lbl_802F1758 -/* 802F1784 3B E0 00 00 */ li r31, 0 -/* 802F1788 48 00 00 1C */ b lbl_802F17A4 -lbl_802F178C: -/* 802F178C 57 E3 0D FC */ rlwinm r3, r31, 1, 0x17, 0x1e -/* 802F1790 38 63 00 64 */ addi r3, r3, 0x64 -/* 802F1794 7C 7E 1A 14 */ add r3, r30, r3 -/* 802F1798 7F E4 FB 78 */ mr r4, r31 -/* 802F179C 4B FF 89 31 */ bl load__19J2DIndTexCoordScaleFUc -/* 802F17A0 3B FF 00 01 */ addi r31, r31, 1 -lbl_802F17A4: -/* 802F17A4 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 802F17A8 88 1E 00 04 */ lbz r0, 4(r30) -/* 802F17AC 7C 03 00 40 */ cmplw r3, r0 -/* 802F17B0 41 80 FF DC */ blt lbl_802F178C -/* 802F17B4 3B E0 00 00 */ li r31, 0 -/* 802F17B8 48 00 00 1C */ b lbl_802F17D4 -lbl_802F17BC: -/* 802F17BC 57 E3 0D FC */ rlwinm r3, r31, 1, 0x17, 0x1e -/* 802F17C0 38 63 00 05 */ addi r3, r3, 5 -/* 802F17C4 7C 7E 1A 14 */ add r3, r30, r3 -/* 802F17C8 7F E4 FB 78 */ mr r4, r31 -/* 802F17CC 4B FF 89 31 */ bl load__14J2DIndTexOrderFUc -/* 802F17D0 3B FF 00 01 */ addi r31, r31, 1 -lbl_802F17D4: -/* 802F17D4 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 802F17D8 88 1E 00 04 */ lbz r0, 4(r30) -/* 802F17DC 7C 03 00 40 */ cmplw r3, r0 -/* 802F17E0 41 80 FF DC */ blt lbl_802F17BC -/* 802F17E4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802F17E8 83 C1 00 08 */ lwz r30, 8(r1) -/* 802F17EC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802F17F0 7C 08 03 A6 */ mtlr r0 -/* 802F17F4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802F17F8 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexCoordScale__15J2DIndBlockFullFUl19J2DIndTexCoordScale.s b/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexCoordScale__15J2DIndBlockFullFUl19J2DIndTexCoordScale.s deleted file mode 100644 index e726c3a2cd7..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexCoordScale__15J2DIndBlockFullFUl19J2DIndTexCoordScale.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_802F1C4C: -/* 802F1C4C 88 05 00 00 */ lbz r0, 0(r5) -/* 802F1C50 54 84 08 3C */ slwi r4, r4, 1 -/* 802F1C54 7C 63 22 14 */ add r3, r3, r4 -/* 802F1C58 98 03 00 64 */ stb r0, 0x64(r3) -/* 802F1C5C 88 05 00 01 */ lbz r0, 1(r5) -/* 802F1C60 98 03 00 65 */ stb r0, 0x65(r3) -/* 802F1C64 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexMtx__15J2DIndBlockFullFUl12J2DIndTexMtx.s b/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexMtx__15J2DIndBlockFullFUl12J2DIndTexMtx.s deleted file mode 100644 index b502160a32d..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexMtx__15J2DIndBlockFullFUl12J2DIndTexMtx.s +++ /dev/null @@ -1,25 +0,0 @@ -lbl_802F1BE0: -/* 802F1BE0 38 E0 00 00 */ li r7, 0 -/* 802F1BE4 38 C0 00 00 */ li r6, 0 -/* 802F1BE8 1D 64 00 1C */ mulli r11, r4, 0x1c -/* 802F1BEC 7D 43 5A 14 */ add r10, r3, r11 -lbl_802F1BF0: -/* 802F1BF0 38 80 00 00 */ li r4, 0 -/* 802F1BF4 7D 05 32 14 */ add r8, r5, r6 -/* 802F1BF8 7D 2A 32 14 */ add r9, r10, r6 -/* 802F1BFC 38 00 00 03 */ li r0, 3 -/* 802F1C00 7C 09 03 A6 */ mtctr r0 -lbl_802F1C04: -/* 802F1C04 7C 08 24 2E */ lfsx f0, r8, r4 -/* 802F1C08 38 04 00 10 */ addi r0, r4, 0x10 -/* 802F1C0C 7C 09 05 2E */ stfsx f0, r9, r0 -/* 802F1C10 38 84 00 04 */ addi r4, r4, 4 -/* 802F1C14 42 00 FF F0 */ bdnz lbl_802F1C04 -/* 802F1C18 38 E7 00 01 */ addi r7, r7, 1 -/* 802F1C1C 2C 07 00 02 */ cmpwi r7, 2 -/* 802F1C20 38 C6 00 0C */ addi r6, r6, 0xc -/* 802F1C24 41 80 FF CC */ blt lbl_802F1BF0 -/* 802F1C28 88 05 00 18 */ lbz r0, 0x18(r5) -/* 802F1C2C 7C 63 5A 14 */ add r3, r3, r11 -/* 802F1C30 98 03 00 28 */ stb r0, 0x28(r3) -/* 802F1C34 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexOrder__15J2DIndBlockFullFUl14J2DIndTexOrder.s b/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexOrder__15J2DIndBlockFullFUl14J2DIndTexOrder.s deleted file mode 100644 index 0d988a737c2..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setIndTexOrder__15J2DIndBlockFullFUl14J2DIndTexOrder.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_802F1BB0: -/* 802F1BB0 88 05 00 00 */ lbz r0, 0(r5) -/* 802F1BB4 54 84 08 3C */ slwi r4, r4, 1 -/* 802F1BB8 7C 63 22 14 */ add r3, r3, r4 -/* 802F1BBC 98 03 00 05 */ stb r0, 5(r3) -/* 802F1BC0 88 05 00 01 */ lbz r0, 1(r5) -/* 802F1BC4 98 03 00 06 */ stb r0, 6(r3) -/* 802F1BC8 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setTevStageInfo__11J2DTevStageFRC15J2DTevStageInfo.s b/asm/JSystem/J2DGraph/J2DMatBlock/setTevStageInfo__11J2DTevStageFRC15J2DTevStageInfo.s deleted file mode 100644 index fd944e2cce3..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setTevStageInfo__11J2DTevStageFRC15J2DTevStageInfo.s +++ /dev/null @@ -1,119 +0,0 @@ -lbl_802F19A8: -/* 802F19A8 88 E4 00 04 */ lbz r7, 4(r4) -/* 802F19AC 88 C4 00 03 */ lbz r6, 3(r4) -/* 802F19B0 88 04 00 01 */ lbz r0, 1(r4) -/* 802F19B4 54 05 25 36 */ rlwinm r5, r0, 4, 0x14, 0x1b -/* 802F19B8 88 04 00 02 */ lbz r0, 2(r4) -/* 802F19BC 7C A0 03 78 */ or r0, r5, r0 -/* 802F19C0 98 03 00 02 */ stb r0, 2(r3) -/* 802F19C4 54 C0 20 36 */ slwi r0, r6, 4 -/* 802F19C8 7C 00 3B 78 */ or r0, r0, r7 -/* 802F19CC 98 03 00 03 */ stb r0, 3(r3) -/* 802F19D0 89 44 00 09 */ lbz r10, 9(r4) -/* 802F19D4 89 24 00 08 */ lbz r9, 8(r4) -/* 802F19D8 89 04 00 07 */ lbz r8, 7(r4) -/* 802F19DC 88 E4 00 06 */ lbz r7, 6(r4) -/* 802F19E0 88 C4 00 05 */ lbz r6, 5(r4) -/* 802F19E4 88 03 00 01 */ lbz r0, 1(r3) -/* 802F19E8 54 05 07 B8 */ rlwinm r5, r0, 0, 0x1e, 0x1c -/* 802F19EC 54 C0 10 3A */ slwi r0, r6, 2 -/* 802F19F0 7C A0 03 78 */ or r0, r5, r0 -/* 802F19F4 98 03 00 01 */ stb r0, 1(r3) -/* 802F19F8 28 06 00 01 */ cmplwi r6, 1 -/* 802F19FC 41 81 00 2C */ bgt lbl_802F1A28 -/* 802F1A00 88 03 00 01 */ lbz r0, 1(r3) -/* 802F1A04 54 05 07 32 */ rlwinm r5, r0, 0, 0x1c, 0x19 -/* 802F1A08 55 00 25 36 */ rlwinm r0, r8, 4, 0x14, 0x1b -/* 802F1A0C 7C A0 03 78 */ or r0, r5, r0 -/* 802F1A10 98 03 00 01 */ stb r0, 1(r3) -/* 802F1A14 88 03 00 01 */ lbz r0, 1(r3) -/* 802F1A18 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d -/* 802F1A1C 7C 00 3B 78 */ or r0, r0, r7 -/* 802F1A20 98 03 00 01 */ stb r0, 1(r3) -/* 802F1A24 48 00 00 20 */ b lbl_802F1A44 -lbl_802F1A28: -/* 802F1A28 88 03 00 01 */ lbz r0, 1(r3) -/* 802F1A2C 50 C0 1E B6 */ rlwimi r0, r6, 3, 0x1a, 0x1b -/* 802F1A30 98 03 00 01 */ stb r0, 1(r3) -/* 802F1A34 88 03 00 01 */ lbz r0, 1(r3) -/* 802F1A38 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d -/* 802F1A3C 60 00 00 03 */ ori r0, r0, 3 -/* 802F1A40 98 03 00 01 */ stb r0, 1(r3) -lbl_802F1A44: -/* 802F1A44 88 03 00 01 */ lbz r0, 1(r3) -/* 802F1A48 54 05 07 76 */ rlwinm r5, r0, 0, 0x1d, 0x1b -/* 802F1A4C 55 20 1D 78 */ rlwinm r0, r9, 3, 0x15, 0x1c -/* 802F1A50 7C A0 03 78 */ or r0, r5, r0 -/* 802F1A54 98 03 00 01 */ stb r0, 1(r3) -/* 802F1A58 88 A3 00 01 */ lbz r5, 1(r3) -/* 802F1A5C 55 40 34 B2 */ rlwinm r0, r10, 6, 0x12, 0x19 -/* 802F1A60 50 A0 06 BE */ rlwimi r0, r5, 0, 0x1a, 0x1f -/* 802F1A64 98 03 00 01 */ stb r0, 1(r3) -/* 802F1A68 89 04 00 0D */ lbz r8, 0xd(r4) -/* 802F1A6C 88 E4 00 0C */ lbz r7, 0xc(r4) -/* 802F1A70 88 C4 00 0B */ lbz r6, 0xb(r4) -/* 802F1A74 88 A3 00 06 */ lbz r5, 6(r3) -/* 802F1A78 88 04 00 0A */ lbz r0, 0xa(r4) -/* 802F1A7C 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a -/* 802F1A80 50 A0 06 FE */ rlwimi r0, r5, 0, 0x1b, 0x1f -/* 802F1A84 98 03 00 06 */ stb r0, 6(r3) -/* 802F1A88 88 03 00 06 */ lbz r0, 6(r3) -/* 802F1A8C 54 05 07 B4 */ rlwinm r5, r0, 0, 0x1e, 0x1a -/* 802F1A90 54 C0 10 3A */ slwi r0, r6, 2 -/* 802F1A94 7C A0 03 78 */ or r0, r5, r0 -/* 802F1A98 98 03 00 06 */ stb r0, 6(r3) -/* 802F1A9C 88 03 00 06 */ lbz r0, 6(r3) -/* 802F1AA0 54 05 00 3A */ rlwinm r5, r0, 0, 0, 0x1d -/* 802F1AA4 7C E0 0E 70 */ srawi r0, r7, 1 -/* 802F1AA8 7C A0 03 78 */ or r0, r5, r0 -/* 802F1AAC 98 03 00 06 */ stb r0, 6(r3) -/* 802F1AB0 88 A3 00 07 */ lbz r5, 7(r3) -/* 802F1AB4 54 E0 38 30 */ slwi r0, r7, 7 -/* 802F1AB8 50 A0 06 7E */ rlwimi r0, r5, 0, 0x19, 0x1f -/* 802F1ABC 98 03 00 07 */ stb r0, 7(r3) -/* 802F1AC0 88 03 00 07 */ lbz r0, 7(r3) -/* 802F1AC4 54 05 07 30 */ rlwinm r5, r0, 0, 0x1c, 0x18 -/* 802F1AC8 55 00 20 36 */ slwi r0, r8, 4 -/* 802F1ACC 7C A0 03 78 */ or r0, r5, r0 -/* 802F1AD0 98 03 00 07 */ stb r0, 7(r3) -/* 802F1AD4 89 24 00 12 */ lbz r9, 0x12(r4) -/* 802F1AD8 89 04 00 11 */ lbz r8, 0x11(r4) -/* 802F1ADC 88 E4 00 10 */ lbz r7, 0x10(r4) -/* 802F1AE0 88 C4 00 0F */ lbz r6, 0xf(r4) -/* 802F1AE4 88 A4 00 0E */ lbz r5, 0xe(r4) -/* 802F1AE8 88 03 00 05 */ lbz r0, 5(r3) -/* 802F1AEC 54 04 07 B8 */ rlwinm r4, r0, 0, 0x1e, 0x1c -/* 802F1AF0 54 A0 10 3A */ slwi r0, r5, 2 -/* 802F1AF4 7C 80 03 78 */ or r0, r4, r0 -/* 802F1AF8 98 03 00 05 */ stb r0, 5(r3) -/* 802F1AFC 28 05 00 01 */ cmplwi r5, 1 -/* 802F1B00 41 81 00 2C */ bgt lbl_802F1B2C -/* 802F1B04 88 03 00 05 */ lbz r0, 5(r3) -/* 802F1B08 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d -/* 802F1B0C 7C 00 33 78 */ or r0, r0, r6 -/* 802F1B10 98 03 00 05 */ stb r0, 5(r3) -/* 802F1B14 88 03 00 05 */ lbz r0, 5(r3) -/* 802F1B18 54 04 07 32 */ rlwinm r4, r0, 0, 0x1c, 0x19 -/* 802F1B1C 54 E0 25 36 */ rlwinm r0, r7, 4, 0x14, 0x1b -/* 802F1B20 7C 80 03 78 */ or r0, r4, r0 -/* 802F1B24 98 03 00 05 */ stb r0, 5(r3) -/* 802F1B28 48 00 00 20 */ b lbl_802F1B48 -lbl_802F1B2C: -/* 802F1B2C 88 03 00 05 */ lbz r0, 5(r3) -/* 802F1B30 50 A0 1E B6 */ rlwimi r0, r5, 3, 0x1a, 0x1b -/* 802F1B34 98 03 00 05 */ stb r0, 5(r3) -/* 802F1B38 88 03 00 05 */ lbz r0, 5(r3) -/* 802F1B3C 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d -/* 802F1B40 60 00 00 03 */ ori r0, r0, 3 -/* 802F1B44 98 03 00 05 */ stb r0, 5(r3) -lbl_802F1B48: -/* 802F1B48 88 03 00 05 */ lbz r0, 5(r3) -/* 802F1B4C 54 04 07 76 */ rlwinm r4, r0, 0, 0x1d, 0x1b -/* 802F1B50 55 00 1D 78 */ rlwinm r0, r8, 3, 0x15, 0x1c -/* 802F1B54 7C 80 03 78 */ or r0, r4, r0 -/* 802F1B58 98 03 00 05 */ stb r0, 5(r3) -/* 802F1B5C 88 83 00 05 */ lbz r4, 5(r3) -/* 802F1B60 55 20 34 B2 */ rlwinm r0, r9, 6, 0x12, 0x19 -/* 802F1B64 50 80 06 BE */ rlwimi r0, r4, 0, 0x1a, 0x1f -/* 802F1B68 98 03 00 05 */ stb r0, 5(r3) -/* 802F1B6C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/setTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s b/asm/JSystem/J2DGraph/J2DMatBlock/setTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s deleted file mode 100644 index 0ba4a4b52bf..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/setTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s +++ /dev/null @@ -1,85 +0,0 @@ -lbl_802EB6A4: -/* 802EB6A4 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 802EB6A8 7C 08 02 A6 */ mflr r0 -/* 802EB6AC 90 01 00 44 */ stw r0, 0x44(r1) -/* 802EB6B0 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 802EB6B4 93 C1 00 38 */ stw r30, 0x38(r1) -/* 802EB6B8 7C BE 2B 78 */ mr r30, r5 -/* 802EB6BC 54 80 10 3A */ slwi r0, r4, 2 -/* 802EB6C0 7F E3 02 14 */ add r31, r3, r0 -/* 802EB6C4 80 DF 00 24 */ lwz r6, 0x24(r31) -/* 802EB6C8 28 06 00 00 */ cmplwi r6, 0 -/* 802EB6CC 40 82 00 78 */ bne lbl_802EB744 -/* 802EB6D0 38 60 00 54 */ li r3, 0x54 -/* 802EB6D4 4B FE 35 79 */ bl __nw__FUl -/* 802EB6D8 28 03 00 00 */ cmplwi r3, 0 -/* 802EB6DC 41 82 00 54 */ beq lbl_802EB730 -/* 802EB6E0 C0 1E 00 04 */ lfs f0, 4(r30) -/* 802EB6E4 D0 03 00 04 */ stfs f0, 4(r3) -/* 802EB6E8 C0 1E 00 08 */ lfs f0, 8(r30) -/* 802EB6EC D0 03 00 08 */ stfs f0, 8(r3) -/* 802EB6F0 C0 1E 00 0C */ lfs f0, 0xc(r30) -/* 802EB6F4 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 802EB6F8 88 1E 00 00 */ lbz r0, 0(r30) -/* 802EB6FC 98 03 00 00 */ stb r0, 0(r3) -/* 802EB700 88 1E 00 01 */ lbz r0, 1(r30) -/* 802EB704 98 03 00 01 */ stb r0, 1(r3) -/* 802EB708 C0 1E 00 10 */ lfs f0, 0x10(r30) -/* 802EB70C D0 03 00 10 */ stfs f0, 0x10(r3) -/* 802EB710 C0 1E 00 14 */ lfs f0, 0x14(r30) -/* 802EB714 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 802EB718 C0 1E 00 18 */ lfs f0, 0x18(r30) -/* 802EB71C D0 03 00 18 */ stfs f0, 0x18(r3) -/* 802EB720 C0 1E 00 1C */ lfs f0, 0x1c(r30) -/* 802EB724 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 802EB728 C0 1E 00 20 */ lfs f0, 0x20(r30) -/* 802EB72C D0 03 00 20 */ stfs f0, 0x20(r3) -lbl_802EB730: -/* 802EB730 90 7F 00 24 */ stw r3, 0x24(r31) -/* 802EB734 80 1F 00 24 */ lwz r0, 0x24(r31) -/* 802EB738 28 00 00 00 */ cmplwi r0, 0 -/* 802EB73C 40 82 00 84 */ bne lbl_802EB7C0 -/* 802EB740 48 00 00 88 */ b lbl_802EB7C8 -lbl_802EB744: -/* 802EB744 38 A1 00 04 */ addi r5, r1, 4 -/* 802EB748 38 9E FF FC */ addi r4, r30, -4 -/* 802EB74C 38 00 00 04 */ li r0, 4 -/* 802EB750 7C 09 03 A6 */ mtctr r0 -lbl_802EB754: -/* 802EB754 80 64 00 04 */ lwz r3, 4(r4) -/* 802EB758 84 04 00 08 */ lwzu r0, 8(r4) -/* 802EB75C 90 65 00 04 */ stw r3, 4(r5) -/* 802EB760 94 05 00 08 */ stwu r0, 8(r5) -/* 802EB764 42 00 FF F0 */ bdnz lbl_802EB754 -/* 802EB768 80 04 00 04 */ lwz r0, 4(r4) -/* 802EB76C 90 05 00 04 */ stw r0, 4(r5) -/* 802EB770 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 802EB774 D0 06 00 04 */ stfs f0, 4(r6) -/* 802EB778 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 802EB77C D0 06 00 08 */ stfs f0, 8(r6) -/* 802EB780 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 802EB784 D0 06 00 0C */ stfs f0, 0xc(r6) -/* 802EB788 88 01 00 08 */ lbz r0, 8(r1) -/* 802EB78C 98 06 00 00 */ stb r0, 0(r6) -/* 802EB790 88 01 00 09 */ lbz r0, 9(r1) -/* 802EB794 98 06 00 01 */ stb r0, 1(r6) -/* 802EB798 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 802EB79C D0 06 00 10 */ stfs f0, 0x10(r6) -/* 802EB7A0 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 802EB7A4 D0 06 00 14 */ stfs f0, 0x14(r6) -/* 802EB7A8 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 802EB7AC D0 06 00 18 */ stfs f0, 0x18(r6) -/* 802EB7B0 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 802EB7B4 D0 06 00 1C */ stfs f0, 0x1c(r6) -/* 802EB7B8 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 802EB7BC D0 06 00 20 */ stfs f0, 0x20(r6) -lbl_802EB7C0: -/* 802EB7C0 80 7F 00 24 */ lwz r3, 0x24(r31) -/* 802EB7C4 4B FF E5 01 */ bl calc__9J2DTexMtxFv -lbl_802EB7C8: -/* 802EB7C8 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 802EB7CC 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 802EB7D0 80 01 00 44 */ lwz r0, 0x44(r1) -/* 802EB7D4 7C 08 03 A6 */ mtlr r0 -/* 802EB7D8 38 21 00 40 */ addi r1, r1, 0x40 -/* 802EB7DC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock2FUcb.s b/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock2FUcb.s deleted file mode 100644 index 2a40488d5cb..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock2FUcb.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_802ED4FC: -/* 802ED4FC 88 03 00 78 */ lbz r0, 0x78(r3) -/* 802ED500 54 07 06 30 */ rlwinm r7, r0, 0, 0x18, 0x18 -/* 802ED504 54 00 06 7E */ clrlwi r0, r0, 0x19 -/* 802ED508 98 03 00 78 */ stb r0, 0x78(r3) -/* 802ED50C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 802ED510 41 82 00 30 */ beq lbl_802ED540 -/* 802ED514 38 A0 00 01 */ li r5, 1 -/* 802ED518 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 802ED51C 7C A4 00 30 */ slw r4, r5, r0 -/* 802ED520 38 04 FF FF */ addi r0, r4, -1 -/* 802ED524 88 A3 00 78 */ lbz r5, 0x78(r3) -/* 802ED528 7C A4 00 38 */ and r4, r5, r0 -/* 802ED52C 7C A0 00 78 */ andc r0, r5, r0 -/* 802ED530 54 00 08 3C */ slwi r0, r0, 1 -/* 802ED534 7C 80 03 78 */ or r0, r4, r0 -/* 802ED538 98 03 00 78 */ stb r0, 0x78(r3) -/* 802ED53C 48 00 00 38 */ b lbl_802ED574 -lbl_802ED540: -/* 802ED540 54 88 06 3E */ clrlwi r8, r4, 0x18 -/* 802ED544 89 23 00 78 */ lbz r9, 0x78(r3) -/* 802ED548 38 C0 00 01 */ li r6, 1 -/* 802ED54C 7C C4 40 30 */ slw r4, r6, r8 -/* 802ED550 38 04 FF FF */ addi r0, r4, -1 -/* 802ED554 7D 25 00 38 */ and r5, r9, r0 -/* 802ED558 38 08 00 01 */ addi r0, r8, 1 -/* 802ED55C 7C C4 00 30 */ slw r4, r6, r0 -/* 802ED560 38 04 FF FF */ addi r0, r4, -1 -/* 802ED564 7D 20 00 78 */ andc r0, r9, r0 -/* 802ED568 7C 00 0E 70 */ srawi r0, r0, 1 -/* 802ED56C 7C A0 03 78 */ or r0, r5, r0 -/* 802ED570 98 03 00 78 */ stb r0, 0x78(r3) -lbl_802ED574: -/* 802ED574 88 03 00 78 */ lbz r0, 0x78(r3) -/* 802ED578 7C 00 3B 78 */ or r0, r0, r7 -/* 802ED57C 98 03 00 78 */ stb r0, 0x78(r3) -/* 802ED580 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock4FUcb.s b/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock4FUcb.s deleted file mode 100644 index f05ada96f11..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock4FUcb.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_802EE9A4: -/* 802EE9A4 88 03 00 B0 */ lbz r0, 0xb0(r3) -/* 802EE9A8 54 07 06 30 */ rlwinm r7, r0, 0, 0x18, 0x18 -/* 802EE9AC 54 00 06 7E */ clrlwi r0, r0, 0x19 -/* 802EE9B0 98 03 00 B0 */ stb r0, 0xb0(r3) -/* 802EE9B4 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 802EE9B8 41 82 00 30 */ beq lbl_802EE9E8 -/* 802EE9BC 38 A0 00 01 */ li r5, 1 -/* 802EE9C0 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 802EE9C4 7C A4 00 30 */ slw r4, r5, r0 -/* 802EE9C8 38 04 FF FF */ addi r0, r4, -1 -/* 802EE9CC 88 A3 00 B0 */ lbz r5, 0xb0(r3) -/* 802EE9D0 7C A4 00 38 */ and r4, r5, r0 -/* 802EE9D4 7C A0 00 78 */ andc r0, r5, r0 -/* 802EE9D8 54 00 08 3C */ slwi r0, r0, 1 -/* 802EE9DC 7C 80 03 78 */ or r0, r4, r0 -/* 802EE9E0 98 03 00 B0 */ stb r0, 0xb0(r3) -/* 802EE9E4 48 00 00 38 */ b lbl_802EEA1C -lbl_802EE9E8: -/* 802EE9E8 54 88 06 3E */ clrlwi r8, r4, 0x18 -/* 802EE9EC 89 23 00 B0 */ lbz r9, 0xb0(r3) -/* 802EE9F0 38 C0 00 01 */ li r6, 1 -/* 802EE9F4 7C C4 40 30 */ slw r4, r6, r8 -/* 802EE9F8 38 04 FF FF */ addi r0, r4, -1 -/* 802EE9FC 7D 25 00 38 */ and r5, r9, r0 -/* 802EEA00 38 08 00 01 */ addi r0, r8, 1 -/* 802EEA04 7C C4 00 30 */ slw r4, r6, r0 -/* 802EEA08 38 04 FF FF */ addi r0, r4, -1 -/* 802EEA0C 7D 20 00 78 */ andc r0, r9, r0 -/* 802EEA10 7C 00 0E 70 */ srawi r0, r0, 1 -/* 802EEA14 7C A0 03 78 */ or r0, r5, r0 -/* 802EEA18 98 03 00 B0 */ stb r0, 0xb0(r3) -lbl_802EEA1C: -/* 802EEA1C 88 03 00 B0 */ lbz r0, 0xb0(r3) -/* 802EEA20 7C 00 3B 78 */ or r0, r0, r7 -/* 802EEA24 98 03 00 B0 */ stb r0, 0xb0(r3) -/* 802EEA28 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock8FUcb.s b/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock8FUcb.s deleted file mode 100644 index d599463d288..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock8FUcb.s +++ /dev/null @@ -1,29 +0,0 @@ -lbl_802EFE40: -/* 802EFE40 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 802EFE44 41 82 00 30 */ beq lbl_802EFE74 -/* 802EFE48 38 A0 00 01 */ li r5, 1 -/* 802EFE4C 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 802EFE50 7C A4 00 30 */ slw r4, r5, r0 -/* 802EFE54 38 04 FF FF */ addi r0, r4, -1 -/* 802EFE58 88 A3 01 20 */ lbz r5, 0x120(r3) -/* 802EFE5C 7C A4 00 38 */ and r4, r5, r0 -/* 802EFE60 7C A0 00 78 */ andc r0, r5, r0 -/* 802EFE64 54 00 08 3C */ slwi r0, r0, 1 -/* 802EFE68 7C 80 03 78 */ or r0, r4, r0 -/* 802EFE6C 98 03 01 20 */ stb r0, 0x120(r3) -/* 802EFE70 4E 80 00 20 */ blr -lbl_802EFE74: -/* 802EFE74 54 87 06 3E */ clrlwi r7, r4, 0x18 -/* 802EFE78 89 03 01 20 */ lbz r8, 0x120(r3) -/* 802EFE7C 38 C0 00 01 */ li r6, 1 -/* 802EFE80 7C C4 38 30 */ slw r4, r6, r7 -/* 802EFE84 38 04 FF FF */ addi r0, r4, -1 -/* 802EFE88 7D 05 00 38 */ and r5, r8, r0 -/* 802EFE8C 38 07 00 01 */ addi r0, r7, 1 -/* 802EFE90 7C C4 00 30 */ slw r4, r6, r0 -/* 802EFE94 38 04 FF FF */ addi r0, r4, -1 -/* 802EFE98 7D 00 00 78 */ andc r0, r8, r0 -/* 802EFE9C 7C 00 0E 70 */ srawi r0, r0, 1 -/* 802EFEA0 7C A0 03 78 */ or r0, r5, r0 -/* 802EFEA4 98 03 01 20 */ stb r0, 0x120(r3) -/* 802EFEA8 4E 80 00 20 */ blr diff --git a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__13J2DTevBlock16FUcb.s b/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__13J2DTevBlock16FUcb.s deleted file mode 100644 index d6787da7e69..00000000000 --- a/asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__13J2DTevBlock16FUcb.s +++ /dev/null @@ -1,29 +0,0 @@ -lbl_802F12C0: -/* 802F12C0 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 802F12C4 41 82 00 30 */ beq lbl_802F12F4 -/* 802F12C8 38 A0 00 01 */ li r5, 1 -/* 802F12CC 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 802F12D0 7C A4 00 30 */ slw r4, r5, r0 -/* 802F12D4 38 04 FF FF */ addi r0, r4, -1 -/* 802F12D8 88 A3 01 B0 */ lbz r5, 0x1b0(r3) -/* 802F12DC 7C A4 00 38 */ and r4, r5, r0 -/* 802F12E0 7C A0 00 78 */ andc r0, r5, r0 -/* 802F12E4 54 00 08 3C */ slwi r0, r0, 1 -/* 802F12E8 7C 80 03 78 */ or r0, r4, r0 -/* 802F12EC 98 03 01 B0 */ stb r0, 0x1b0(r3) -/* 802F12F0 4E 80 00 20 */ blr -lbl_802F12F4: -/* 802F12F4 54 87 06 3E */ clrlwi r7, r4, 0x18 -/* 802F12F8 89 03 01 B0 */ lbz r8, 0x1b0(r3) -/* 802F12FC 38 C0 00 01 */ li r6, 1 -/* 802F1300 7C C4 38 30 */ slw r4, r6, r7 -/* 802F1304 38 04 FF FF */ addi r0, r4, -1 -/* 802F1308 7D 05 00 38 */ and r5, r8, r0 -/* 802F130C 38 07 00 01 */ addi r0, r7, 1 -/* 802F1310 7C C4 00 30 */ slw r4, r6, r0 -/* 802F1314 38 04 FF FF */ addi r0, r4, -1 -/* 802F1318 7D 00 00 78 */ andc r0, r8, r0 -/* 802F131C 7C 00 0E 70 */ srawi r0, r0, 1 -/* 802F1320 7C A0 03 78 */ or r0, r5, r0 -/* 802F1324 98 03 01 B0 */ stb r0, 0x1b0(r3) -/* 802F1328 4E 80 00 20 */ blr diff --git a/include/JSystem/J2DGraph/J2DGrafContext.h b/include/JSystem/J2DGraph/J2DGrafContext.h index ea04368671e..47b6cdaabc4 100644 --- a/include/JSystem/J2DGraph/J2DGrafContext.h +++ b/include/JSystem/J2DGraph/J2DGrafContext.h @@ -9,6 +9,13 @@ class J2DGrafContext { public: + struct Blend { + /* 0x0 */ u8 mType; + /* 0x1 */ u8 mSrcFactor; + /* 0x2 */ u8 mDstFactor; + }; + + /* 802E8B08 */ J2DGrafContext(f32 x, f32 y, f32 width, f32 height); /* 802E90C0 */ void scissor(JGeometry::TBox2 const& bounds); void setColor(JUtility::TColor c) { this->setColor(c, c, c, c); } @@ -47,9 +54,9 @@ public: /* 0x38 */ JGeometry::TVec2 mPrevPos; /* 0x40 */ Mtx44 mMtx44; /* 0x80 */ Mtx mPosMtx; - /* 0xB0 */ J2DBlendInfo field_0xb0; - /* 0xB3 */ J2DBlendInfo mLinePart; - /* 0xB6 */ J2DBlendInfo mBoxPart; + /* 0xB0 */ Blend field_0xb0; + /* 0xB3 */ Blend mLinePart; + /* 0xB6 */ Blend mBoxPart; }; #endif /* J2DGRAFCONTEXT_H */ diff --git a/include/JSystem/J2DGraph/J2DMatBlock.h b/include/JSystem/J2DGraph/J2DMatBlock.h index 5b4466de38b..1a036dc072e 100644 --- a/include/JSystem/J2DGraph/J2DMatBlock.h +++ b/include/JSystem/J2DGraph/J2DMatBlock.h @@ -422,6 +422,11 @@ struct J2DAlphaComp { mRef0 = 0; mRef1 = 0; } + u8 getComp0() { return mAlphaCmp >> 5 & 7; } + u8 getRef0() { return mRef0; } + u8 getOp() { return mAlphaCmp >> 3 & 3; } + u8 getComp1() { return mAlphaCmp & 7; } + u8 getRef1() { return mRef1; } /* 0x0 */ u16 mAlphaCmp; /* 0x2 */ u8 mRef0; @@ -433,21 +438,26 @@ struct J2DBlendInfo { mType = other.mType; mSrcFactor = other.mSrcFactor; mDstFactor = other.mDstFactor; - // mOp = other.mOp; + mOp = other.mOp; } /* 0x0 */ u8 mType; /* 0x1 */ u8 mSrcFactor; /* 0x2 */ u8 mDstFactor; + /* 0x3 */ u8 mOp; }; extern J2DBlendInfo j2dDefaultBlendInfo; struct J2DBlend { J2DBlend() { mBlendInfo = j2dDefaultBlendInfo; } + void setBlendInfo(const J2DBlendInfo& info) { mBlendInfo = info; } + u8 getType() { return mBlendInfo.mType; } + u8 getSrcFactor() { return mBlendInfo.mSrcFactor; } + u8 getDstFactor() { return mBlendInfo.mDstFactor; } + u8 getOp() { return mBlendInfo.mOp; } /* 0x0 */ J2DBlendInfo mBlendInfo; - /* 0x3 */ u8 mOp; }; class J2DPEBlock { @@ -532,17 +542,23 @@ public: }; // Size: 0x48 struct J2DColorChanInfo { - /* 0x0 */ u16 field_0x0; + /* 0x0 */ u8 field_0x0; + /* 0x0 */ u8 field_0x1; }; +inline u8 J2DCalcColorChanID(u8 param_1) { return param_1; } + class J2DColorChan { public: /* 802EB280 */ J2DColorChan(); - u16 getMatSrc() const { return mColorChanInfo.field_0x0 & 1; } + void setColorChanInfo(const J2DColorChanInfo& info) { + mColorChan = J2DCalcColorChanID(info.field_0x1); + } + u16 getMatSrc() const { return mColorChan & 1; } private: - /* 0x0 */ J2DColorChanInfo mColorChanInfo; + /* 0x0 */ u16 mColorChan; }; class J2DColorBlock { diff --git a/include/JSystem/J2DGraph/J2DTevs.h b/include/JSystem/J2DGraph/J2DTevs.h index 63e0201b9cc..6a561e95570 100644 --- a/include/JSystem/J2DGraph/J2DTevs.h +++ b/include/JSystem/J2DGraph/J2DTevs.h @@ -27,14 +27,25 @@ struct J2DTexMtxInfo { /* 0x10 */ J2DTextureSRTInfo mTexSRTInfo; GXTexMtxType getTexMtxType() const { return (GXTexMtxType)mTexMtxType; } + J2DTexMtxInfo& operator=(const J2DTexMtxInfo& other) { + mCenter = other.mCenter; + mTexMtxType = other.mTexMtxType; + mTexMtxDCC = other.mTexMtxDCC; + mTexSRTInfo = other.mTexSRTInfo; + return *this; + } + }; // Size: 0x24 class J2DTexMtx { public: + J2DTexMtx(const J2DTexMtxInfo& info) { mInfo = info; } /* 802E9C90 */ void load(u32); /* 802E9CC4 */ void calc(); /* 802E9D2C */ void getTextureMtx(J2DTextureSRTInfo const&, Vec, f32 (*)[4]); /* 802E9EBC */ void getTextureMtxMaya(J2DTextureSRTInfo const&, f32 (*)[4]); + J2DTexMtxInfo& getTexMtxInfo() { return mInfo; } + void setTexMtxInfo(J2DTexMtxInfo info) { mInfo = info; } private: /* 0x00 */ J2DTexMtxInfo mInfo; @@ -45,6 +56,11 @@ struct J2DIndTexOrderInfo { /* 0x0 */ u8 mTexCoordID; /* 0x1 */ u8 mTexMapID; + J2DIndTexOrderInfo& operator=(const J2DIndTexOrderInfo& other) { + mTexCoordID = other.mTexCoordID; + mTexMapID = other.mTexMapID; + return *this; + } GXTexCoordID getTexCoordID() const { return (GXTexCoordID)mTexCoordID; } GXTexMapID getTexMapID() const { return (GXTexMapID)mTexMapID; } }; @@ -61,6 +77,16 @@ private: struct J2DIndTexMtxInfo { /* 0x00 */ Mtx23 mMtx; /* 0x18 */ s8 mScaleExp; + + J2DIndTexMtxInfo& operator=(const J2DIndTexMtxInfo& other) { + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 3; j++) { + mMtx[i][j] = other.mMtx[i][j]; + } + } + mScaleExp = other.mScaleExp; + return *this; + } }; class J2DIndTexMtx { @@ -77,8 +103,13 @@ private: struct J2DIndTexCoordScaleInfo { /* 0x0 */ u8 mScaleS; - /* 0x0 */ u8 mScaleT; + /* 0x1 */ u8 mScaleT; + J2DIndTexCoordScaleInfo& operator=(const J2DIndTexCoordScaleInfo& other) { + mScaleS = other.mScaleS; + mScaleT = other.mScaleT; + return *this; + } GXIndTexScale getScaleS() const { return (GXIndTexScale)mScaleS; } GXIndTexScale getScaleT() const { return (GXIndTexScale)mScaleT; } }; @@ -135,11 +166,22 @@ struct J2DTexCoordInfo { /* 0x1 */ u8 mTexGenSrc; /* 0x2 */ u8 mTexGenMtx; u8 padding; // ? + + J2DTexCoordInfo& operator=(const J2DTexCoordInfo& other) { + this->mTexGenType = other.mTexGenType; + this->mTexGenSrc = other.mTexGenSrc; + this->mTexGenMtx = other.mTexGenMtx; + return *this; + } }; class J2DTexCoord { public: /* 802EB260 */ J2DTexCoord(); + void setTexCoordInfo(const J2DTexCoordInfo& info) { mTexCoordInfo = info; } + s32 getTexGenType() { return mTexCoordInfo.mTexGenType; } + s32 getTexGenSrc() { return mTexCoordInfo.mTexGenSrc; } + s32 getTexGenMtx() { return mTexCoordInfo.mTexGenMtx; } private: /* 0x0 */ J2DTexCoordInfo mTexCoordInfo; @@ -204,13 +246,98 @@ public: } void setTexSel(u8 param_0) { - field_0x7 = (field_0x7 & ~12) | (param_0 * 4); + field_0x7 = (field_0x7 & ~0x0c) | (param_0 * 4); } void setRasSel(u8 param_0) { - field_0x7 = (field_0x7 & ~3) | param_0; + field_0x7 = (field_0x7 & ~0x03) | param_0; } + void setColorABCD(u8 param_0, u8 param_1, u8 param_2, u8 param_3) { + setTevColorAB(param_0, param_1); + setTevColorCD(param_2, param_3); + } + + void setTevColorAB(u8 param_0, u8 param_1) { field_0x2 = param_0 << 4 | param_1; } + void setTevColorCD(u8 param_0, u8 param_1) { field_0x3 = param_0 << 4 | param_1; } + + void setTevColorOp(u8 param_0, u8 param_1, u8 param_2, u8 param_3, u8 param_4) { + field_0x1 = field_0x1 & ~0x04 | param_0 << 2; + if (param_0 <= 1) { + field_0x1 = field_0x1 & ~0x30 | param_2 << 4; + field_0x1 = field_0x1 & ~0x03 | param_1; + } else { + field_0x1 = field_0x1 & ~0x30 | (param_0 >> 1 & 3) << 4; + field_0x1 = field_0x1 & ~0x03 | 3; + } + field_0x1 = field_0x1 & ~0x08 | param_3 << 3; + field_0x1 = field_0x1 & ~0xc0 | param_4 << 6; + } + + void setAlphaABCD(u8 param_0, u8 param_1, u8 param_2, u8 param_3) { + setAlphaA(param_0); + setAlphaB(param_1); + setAlphaC(param_2); + setAlphaD(param_3); + } + + void setAlphaA(u8 param_0) { + field_0x6 = field_0x6 & ~0xe0 | param_0 << 5; + } + void setAlphaB(u8 param_0) { + field_0x6 = field_0x6 & ~0x1c | param_0 << 2; + } + void setAlphaC(u8 param_0) { + field_0x6 = field_0x6 & ~0x03 | param_0 >> 1; + field_0x7 = field_0x7 & ~0x80 | param_0 << 7; + } + void setAlphaD(u8 param_0) { + field_0x7 = field_0x7 & ~0x70 | param_0 << 4; + } + void setTevAlphaOp(u8 param_0, u8 param_1, u8 param_2, u8 param_3, u8 param_4) { + field_0x5 = field_0x5 & ~0x04 | param_0 << 2; + if (param_0 <= 1) { + field_0x5 = field_0x5 & ~0x03 | param_1; + field_0x5 = field_0x5 & ~0x30 | param_2 << 4; + } else { + field_0x5 = field_0x5 & ~0x30 | (param_0 >> 1 & 3) << 4; + field_0x5 = field_0x5 & ~0x03 | 3; + } + field_0x5 = field_0x5 & ~0x08 | param_3 << 3; + field_0x5 = field_0x5 & ~0xc0 | param_4 << 6; + } + + u8 getColorA() { return (field_0x2 & 0xf0) >> 4; } + u8 getColorB() { return field_0x2 & 0x0f; } + u8 getColorC() { return (field_0x3 & 0xf0) >> 4; } + u8 getColorD() { return field_0x3 & 0x0f; } + u8 getAlphaA() { return (field_0x6 & 0xe0) >> 5; } + u8 getAlphaB() { return (field_0x6 & 0x1c) >> 2; } + u8 getAlphaC() { return (field_0x6 & 0x03) << 1 | (field_0x7 & 0x80) >> 7; } + u8 getAlphaD() { return (field_0x7 & 0x70) >> 4; } + u8 getCOp() { + if (getCBias() != 3) { + return (field_0x1 & 4) >> 2; + } + return ((field_0x1 & 4) >> 2) + 8 + ((field_0x1 & 0x30) >> 3); + } + u8 getCBias() { return field_0x1 & 0x03; } + u8 getCScale() { return (field_0x1 & 0x30) >> 4; } + u8 getCClamp() { return (field_0x1 & 0x08) >> 3; } + u8 getCReg() { return (field_0x1 & 0xc0) >> 6; } + u8 getAOp() { + if (getABias() != 3) { + return (field_0x5 & 4) >> 2; + } + return ((field_0x5 & 4) >> 2) + 8 + ((field_0x5 & 0x30) >> 3); + } + u8 getABias() { return field_0x5 & 0x03; } + u8 getAScale() { return (field_0x5 & 0x30) >> 4; } + u8 getAClamp() { return (field_0x5 & 0x08) >> 3; } + u8 getAReg() { return (field_0x5 & 0xc0) >> 6; } + u8 getRasSel() { return field_0x7 & 3; } + u8 getTexSel() { return (field_0x7 & 0x0c) >> 2; } + void operator=(J2DTevStage const& other) { field_0x1 = other.field_0x1; field_0x2 = other.field_0x2; @@ -235,6 +362,11 @@ class J2DTevSwapModeTable { public: /* 802F1934 */ J2DTevSwapModeTable(); + u8 getR() { return field_0x0 >> 6 & 3; } + u8 getG() { return field_0x0 >> 4 & 3; } + u8 getB() { return field_0x0 >> 2 & 3; } + u8 getA() { return field_0x0 & 3; } + private: /* 0x0 */ u8 field_0x0; }; diff --git a/libs/JSystem/J2DGraph/J2DMatBlock.cpp b/libs/JSystem/J2DGraph/J2DMatBlock.cpp index a8a158593ba..d0f8659164e 100644 --- a/libs/JSystem/J2DGraph/J2DMatBlock.cpp +++ b/libs/JSystem/J2DGraph/J2DMatBlock.cpp @@ -350,22 +350,22 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern u8 const j2dDefaultTexCoordInfo[32]; +extern "C" extern J2DTexCoordInfo const j2dDefaultTexCoordInfo[8]; extern "C" extern u8 const j2dDefaultIndTexMtxInfo[28]; -extern "C" extern u8 const j2dDefaultTevStageInfo[20]; +extern "C" extern J2DTevStageInfo const j2dDefaultTevStageInfo; extern "C" extern J2DIndTevStageInfo const j2dDefaultIndTevStageInfo; extern "C" extern void* __vt__11J2DIndBlock[14]; -extern "C" extern u32 j2dDefaultColInfo; -extern "C" extern u32 j2dDefaultTevOrderInfoNull; +extern "C" extern GXColor j2dDefaultColInfo; +extern "C" extern J2DTevOrderInfo j2dDefaultTevOrderInfoNull; extern "C" extern u16 j2dDefaultIndTexOrderNull[1 + 1 /* padding */]; extern "C" extern u8 j2dDefaultTevColor[8]; extern "C" extern u8 j2dDefaultIndTexCoordScaleInfo[2 + 2 /* padding */]; extern "C" extern u32 j2dDefaultTevKColor; -extern "C" extern u8 j2dDefaultTevSwapMode[4]; +extern "C" extern J2DTevSwapModeInfo j2dDefaultTevSwapMode; extern "C" extern u32 j2dDefaultTevSwapModeTable; -extern "C" extern u8 data_804561A4[4]; -extern "C" extern u32 j2dDefaultColorChanInfo; -extern "C" extern u16 data_804561AC; +extern "C" extern u8 data_804561A4; +extern "C" extern J2DColorChanInfo j2dDefaultColorChanInfo; +extern "C" extern u8 data_804561AC; extern "C" extern u16 j2dDefaultAlphaCmp; // @@ -373,6 +373,19 @@ extern "C" extern u16 j2dDefaultAlphaCmp; // /* 802EB394-802EB424 2E5CD4 0090+00 0/0 1/1 0/0 .text initialize__13J2DColorBlockFv */ +// instruction order +#ifdef NONMATCHING +void J2DColorBlock::initialize() { + for (int i = 0; i < 2; i++) { + mMatColor[i] = JUtility::TColor(j2dDefaultColInfo); + } + mColorChanNum = 2; + for (int i = 0; i < 4; i++) { + mColorChan[i].setColorChanInfo(j2dDefaultColorChanInfo); + } + mCullMode = GX_CULL_NONE; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -381,43 +394,48 @@ asm void J2DColorBlock::initialize() { #include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__13J2DColorBlockFv.s" } #pragma pop - -/* ############################################################################################## */ -/* 803A1C00-803A1C10 02E260 0010+00 1/1 0/0 0/0 .rodata @1463 */ -SECTION_RODATA static u8 const lit_1463[16] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, -}; -COMPILER_STRIP_GATE(0x803A1C00, &lit_1463); +#endif /* 802EB424-802EB510 2E5D64 00EC+00 0/0 1/1 0/0 .text setGX__13J2DColorBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DColorBlock::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DColorBlockFv.s" +void J2DColorBlock::setGX() { + for (int i = 0; i < 2; i++) { + GXSetChanMatColor(GXChannelID(GX_COLOR0A0 + i), mMatColor[i]); + } + GXSetNumChans(mColorChanNum); + const GXChannelID mapping[4] = {GX_COLOR0, GX_ALPHA0, GX_COLOR1, GX_ALPHA1}; + for (int i = 0; i < mColorChanNum << 1; i++) { + GXSetChanCtrl(mapping[i], GX_DISABLE, GX_SRC_REG, (GXColorSrc)mColorChan[i].getMatSrc(), GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE); + } + GXSetCullMode((GXCullMode)mCullMode); } -#pragma pop /* 802EB510-802EB570 2E5E50 0060+00 0/0 1/1 0/0 .text initialize__14J2DTexGenBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTexGenBlock::initialize() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__14J2DTexGenBlockFv.s" +void J2DTexGenBlock::initialize() { + mTexGenNum = 0; + for (int i = 0; i < 8; i++) { + mTexGenCoord[i].setTexCoordInfo(j2dDefaultTexCoordInfo[0]); + } + for (int i = 0; i < 8; i++) { + mTexMtx[i] = NULL; + } +} + +static inline void GXSetTexCoordGen(GXTexCoordID dst, GXTexGenType type, GXTexGenSrc src, u32 mtx) { + GXSetTexCoordGen2(dst, type, src, mtx, GX_FALSE, GX_PTIDENTITY); } -#pragma pop /* 802EB570-802EB620 2E5EB0 00B0+00 0/0 1/1 0/0 .text setGX__14J2DTexGenBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTexGenBlock::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__14J2DTexGenBlockFv.s" +void J2DTexGenBlock::setGX() { + GXSetNumTexGens(mTexGenNum); + for (int i = 0; i < mTexGenNum; i++) { + GXSetTexCoordGen((GXTexCoordID)i, (GXTexGenType)mTexGenCoord[i].getTexGenType(), (GXTexGenSrc)mTexGenCoord[i].getTexGenSrc(), mTexGenCoord[i].getTexGenMtx()); + } + for (u8 i = 0; i < 8; i++) { + if (mTexMtx[i]) { + mTexMtx[i]->load(i); + } + } } -#pragma pop /* ############################################################################################## */ /* 803CCA90-803CCAC8 029BB0 0038+00 1/1 1/1 0/0 .data __vt__15J2DIndBlockFull */ @@ -703,24 +721,24 @@ J2DTexGenBlock::~J2DTexGenBlock() { } /* 802EB6A4-802EB7E0 2E5FE4 013C+00 0/0 3/3 0/0 .text setTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTexGenBlock::setTexMtx(u32 param_0, J2DTexMtx& param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s" +void J2DTexGenBlock::setTexMtx(u32 param_0, J2DTexMtx& param_1) { + if (!mTexMtx[param_0]) { + mTexMtx[param_0] = new J2DTexMtx(param_1.getTexMtxInfo()); + if (!mTexMtx[param_0]) { + return; + } + } else { + mTexMtx[param_0]->setTexMtxInfo(param_1.getTexMtxInfo()); + } + mTexMtx[param_0]->calc(); } -#pragma pop /* 802EB7E0-802EB87C 2E6120 009C+00 0/0 1/1 0/0 .text getTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTexGenBlock::getTexMtx(u32 param_0, J2DTexMtx& param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/getTexMtx__14J2DTexGenBlockFUlR9J2DTexMtx.s" +void J2DTexGenBlock::getTexMtx(u32 param_0, J2DTexMtx& param_1) { + if (mTexMtx[param_0]) { + param_1.setTexMtxInfo(mTexMtx[param_0]->getTexMtxInfo()); + } } -#pragma pop /* 802EB87C-802EB884 2E61BC 0008+00 1/0 0/0 0/0 .text getTexture__11J2DTevBlockFUl */ JUTTexture* J2DTevBlock::getTexture(u32) { @@ -991,36 +1009,43 @@ void J2DTevBlock1::shiftDeleteFlag(u8, bool) { } /* 802EC328-802EC570 2E6C68 0248+00 1/0 0/0 0/0 .text setGX__12J2DTevBlock1Fv */ -#ifdef NONMATCHING void J2DTevBlock1::setGX() { loadTexture(GX_TEXMAP0, 0); GXSetTevOrder(GX_TEVSTAGE0, mTevOrder[0].getTexCoord(), mTevOrder[0].getTexMap(), mTevOrder[0].getColor()); for (int i = 0; i < 4; i++) { - GXColorS10 color = mTevColor[i]; - - int id; - if (i == 3) { - id = 0; - } else { - id = i + 1; - } - GXSetTevColorS10((GXTevRegID)id, color); + GXSetTevColorS10(i != 3 ? GXTevRegID(i + 1) : GX_TEVPREV, mTevColor[i]); } GXSetNumTevStages(1); - + GXSetTevColorIn(GX_TEVSTAGE0, GXTevColorArg(mTevStage[0].getColorA()), + GXTevColorArg(mTevStage[0].getColorB()), + GXTevColorArg(mTevStage[0].getColorC()), + GXTevColorArg(mTevStage[0].getColorD())); + GXSetTevAlphaIn(GX_TEVSTAGE0, GXTevAlphaArg(mTevStage[0].getAlphaA()), + GXTevAlphaArg(mTevStage[0].getAlphaB()), + GXTevAlphaArg(mTevStage[0].getAlphaC()), + GXTevAlphaArg(mTevStage[0].getAlphaD())); + GXSetTevColorOp(GX_TEVSTAGE0, GXTevOp(mTevStage[0].getCOp()), + GXTevBias(mTevStage[0].getCBias()), GXTevScale(mTevStage[0].getCScale()), + mTevStage[0].getCClamp(), GXTevRegID(mTevStage[0].getCReg())); + GXSetTevAlphaOp(GX_TEVSTAGE0, (GXTevOp)mTevStage[0].getAOp(), + GXTevBias(mTevStage[0].getABias()), GXTevScale(mTevStage[0].getAScale()), + mTevStage[0].getAClamp(), GXTevRegID(mTevStage[0].getAReg())); + GXSetTevKColorSel(GX_TEVSTAGE0, mTevKColorSel[0] != 0xff ? GXTevKColorSel(mTevKColorSel[0]) : GX_TEV_KCSEL_1); + GXSetTevKAlphaSel(GX_TEVSTAGE0, mTevKAlphaSel[0] != 0xff ? GXTevKAlphaSel(mTevKAlphaSel[0]) : GX_TEV_KASEL_1); + for (int i = 0; i < 4; i++) { + GXSetTevKColor(GXTevKColorID(i), mTevKColor[i]); + } + GXSetTevSwapMode(GX_TEVSTAGE0, GXTevSwapSel(mTevStage[0].getRasSel()), GXTevSwapSel(mTevStage[0].getTexSel())); + for (int i = 0; i < 4; i++) { + GXSetTevSwapModeTable(GXTevSwapSel(i), GXTevColor(mTevSwapModeTable[i].getR()), + GXTevColor(mTevSwapModeTable[i].getG()), + GXTevColor(mTevSwapModeTable[i].getB()), + GXTevColor(mTevSwapModeTable[i].getA())); + } + mIndTevStage->load(0); } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock1::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock1Fv.s" -} -#pragma pop -#endif /* 802EC570-802EC5B8 2E6EB0 0048+00 1/0 0/0 0/0 .text loadTexture__12J2DTevBlock1F11_GXTexMapIDUl */ @@ -1090,7 +1115,6 @@ bool J2DTevBlock2::prepareTexture(u8 param_0) { /* 802ECAE8-802ECDE8 2E7428 0300+00 1/0 0/0 0/0 .text * insertTexture__12J2DTevBlock2FUlPC7ResTIMGP10JUTPalette */ -#ifdef NONMATCHING bool J2DTevBlock2::insertTexture(u32 param_0, ResTIMG const* p_timg, JUTPalette* p_tlut) { if (param_0 >= 2 || p_timg == NULL) { return false; @@ -1111,9 +1135,10 @@ bool J2DTevBlock2::insertTexture(u32 param_0, ResTIMG const* p_timg, JUTPalette* return false; } + JUTTexture* tex; u8 tlutid = 0; if (p_timg->indexTexture && p_tlut == NULL) { - JUTTexture* tex = mTexture[0]; + tex = mTexture[0]; if (tex != NULL && tex->getTexInfo() != NULL && tex->getTexInfo()->indexTexture) { int tlutname = tex->getTlutName(); if (tlutname == GX_TLUT0 || tlutname == GX_BIGTLUT0) { @@ -1122,7 +1147,7 @@ bool J2DTevBlock2::insertTexture(u32 param_0, ResTIMG const* p_timg, JUTPalette* } } - JUTTexture* tex = mTexture[texNo]; + tex = mTexture[texNo]; if (tex == NULL) { JUTTexture* newtex = new JUTTexture(p_timg, tlutid); @@ -1176,16 +1201,6 @@ bool J2DTevBlock2::insertTexture(u32 param_0, ResTIMG const* p_timg, JUTPalette* mTexNo[param_0] = -1; return true; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm bool J2DTevBlock2::insertTexture(u32 param_0, ResTIMG const* param_1, JUTPalette* param_2) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/insertTexture__12J2DTevBlock2FUlPC7ResTIMGP10JUTPalette.s" -} -#pragma pop -#endif /* 802ECDE8-802ECF48 2E7728 0160+00 1/0 0/0 0/0 .text * insertTexture__12J2DTevBlock2FUlP10JUTTexture */ @@ -1232,6 +1247,7 @@ bool J2DTevBlock2::insertTexture(u32 param_0, JUTTexture* p_tex) { } /* 802ECF48-802ED16C 2E7888 0224+00 1/0 0/0 0/0 .text setTexture__12J2DTevBlock2FUlPC7ResTIMG */ +// instruction order #ifdef NONMATCHING bool J2DTevBlock2::setTexture(u32 param_0, ResTIMG const* p_timg) { if (param_0 >= 2) { @@ -1417,40 +1433,65 @@ bool J2DTevBlock2::setPalette(u32 param_0, ResTLUT const* p_tlut) { /* 802ED4FC-802ED584 2E7E3C 0088+00 1/0 0/0 0/0 .text shiftDeleteFlag__12J2DTevBlock2FUcb */ -#ifdef NONMATCHING void J2DTevBlock2::shiftDeleteFlag(u8 param_0, bool param_1) { - u8 tmpFlags = mUndeleteFlag; - mUndeleteFlag = (u8)(tmpFlags & 0x7F); + u8 tmpFlags = mUndeleteFlag & 0x80; + mUndeleteFlag = mUndeleteFlag & 0x7F; if (param_1) { - int temp_r0_2 = (1 << param_0) - 1; - mUndeleteFlag = (mUndeleteFlag & temp_r0_2) | ((mUndeleteFlag & ~temp_r0_2) * 2); + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << param_0) - 1)) * 2); } else { - mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | (mUndeleteFlag & ~((1 << (param_0 + 1)) - 1)); + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << (param_0 + 1)) - 1)) >> 1); } - mUndeleteFlag |= (tmpFlags & 0x80); + mUndeleteFlag |= tmpFlags; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock2::shiftDeleteFlag(u8 param_0, bool param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock2FUcb.s" -} -#pragma pop -#endif /* 802ED584-802ED874 2E7EC4 02F0+00 1/0 0/0 0/0 .text setGX__12J2DTevBlock2Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock2::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock2Fv.s" +void J2DTevBlock2::setGX() { + for (int i = 0; i < 2; i++) { + loadTexture(GXTexMapID(i), i); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevOrder(GXTevStageID(i), mTevOrder[i].getTexCoord(), mTevOrder[i].getTexMap(), mTevOrder[i].getColor()); + } + for (int i = 0; i < 4; i++) { + GXSetTevColorS10(i != 3 ? GXTevRegID(i + 1) : GX_TEVPREV, mTevColor[i]); + } + GXSetNumTevStages(mTevStageNum); + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevColorIn(GXTevStageID(i), GXTevColorArg(mTevStage[i].getColorA()), + GXTevColorArg(mTevStage[i].getColorB()), + GXTevColorArg(mTevStage[i].getColorC()), + GXTevColorArg(mTevStage[i].getColorD())); + GXSetTevAlphaIn(GXTevStageID(i), GXTevAlphaArg(mTevStage[i].getAlphaA()), + GXTevAlphaArg(mTevStage[i].getAlphaB()), + GXTevAlphaArg(mTevStage[i].getAlphaC()), + GXTevAlphaArg(mTevStage[i].getAlphaD())); + GXSetTevColorOp(GXTevStageID(i), GXTevOp(mTevStage[i].getCOp()), + GXTevBias(mTevStage[i].getCBias()), GXTevScale(mTevStage[i].getCScale()), + mTevStage[i].getCClamp(), GXTevRegID(mTevStage[i].getCReg())); + GXSetTevAlphaOp(GXTevStageID(i), (GXTevOp)mTevStage[i].getAOp(), + GXTevBias(mTevStage[i].getABias()), GXTevScale(mTevStage[i].getAScale()), + mTevStage[i].getAClamp(), GXTevRegID(mTevStage[i].getAReg())); + GXSetTevKColorSel(GXTevStageID(i), mTevKColorSel[i] != 0xff ? GXTevKColorSel(mTevKColorSel[i]) : GX_TEV_KCSEL_1); + GXSetTevKAlphaSel(GXTevStageID(i), mTevKAlphaSel[i] != 0xff ? GXTevKAlphaSel(mTevKAlphaSel[i]) : GX_TEV_KASEL_1); + } + for (int i = 0; i < 4; i++) { + GXSetTevKColor(GXTevKColorID(i), mTevKColor[i]); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevSwapMode(GXTevStageID(i), GXTevSwapSel(mTevStage[i].getRasSel()), GXTevSwapSel(mTevStage[i].getTexSel())); + } + for (int i = 0; i < 4; i++) { + GXSetTevSwapModeTable(GXTevSwapSel(i), GXTevColor(mTevSwapModeTable[i].getR()), + GXTevColor(mTevSwapModeTable[i].getG()), + GXTevColor(mTevSwapModeTable[i].getB()), + GXTevColor(mTevSwapModeTable[i].getA())); + } + for (u8 i = 0; i < mTevStageNum; i++) { + mIndTevStage[i].load(i); + } } -#pragma pop /* 802ED874-802ED8BC 2E81B4 0048+00 1/0 0/0 0/0 .text loadTexture__12J2DTevBlock2F11_GXTexMapIDUl */ @@ -1518,6 +1559,99 @@ bool J2DTevBlock4::prepareTexture(u8 param_0) { /* 802EDE04-802EE1D4 2E8744 03D0+00 1/0 0/0 0/0 .text * insertTexture__12J2DTevBlock4FUlPC7ResTIMGP10JUTPalette */ +// local_3c +#ifdef NONMATCHING +bool J2DTevBlock4::insertTexture(u32 param_0, ResTIMG const* p_timg, JUTPalette* p_tlut) { + if (param_0 >= 4 || !p_timg) { + return false; + } + u8 idx; + for (idx = 0; idx < 4; idx++) { + if (!mTexture[idx] || !mTexture[idx]->getTexInfo()) { + break; + } + } + if (idx < param_0) { + return false; + } + if (idx == 4) { + return false; + } + u8 local_43 = 0; + if (p_timg->indexTexture && !p_tlut) { + u8 local_44 = 0; + for (int i = 0; i < 3; i++) { + if (!mTexture[i]) { + continue; + } + const ResTIMG* texInfo = mTexture[i]->getTexInfo(); + if (!texInfo) { + continue; + } + if (!texInfo->indexTexture) { + continue; + } + u8 tlutName = mTexture[i]->getTlutName(); + int local_3c = tlutName >= 0x10 ? 0x10 : 0; + u8 bVar1 = tlutName - local_3c; + if (bVar1 < 4) { + local_44 |= 1 << bVar1; + } + } + for (u8 i = 0; i < 4; i++) { + if ((local_44 & 1 << i) == 0) { + local_43 = i; + break; + } + } + } + if (!mTexture[idx]) { + JUTTexture* texture = new JUTTexture(p_timg, local_43); + if (!texture) { + return false; + } + if (p_tlut) { + texture->storeTIMG(p_timg, p_tlut); + } + for (u8 i = 3; i > param_0; i--) { + mTexture[i] = mTexture[i - 1]; + mPalette[i] = mPalette[i - 1]; + mTexNo[i] = mTexNo[i - 1]; + } + mTexture[param_0] = texture; + shiftDeleteFlag(param_0, true); + mUndeleteFlag |= 1 << param_0; + } else { + JUTTexture* texture = mTexture[idx]; + if (!p_tlut) { + texture->storeTIMG(p_timg, local_43); + } else { + texture->storeTIMG(p_timg, p_tlut); + } + u8 local_38[4]; + for (u8 i = 0; i < 4; i++) { + local_38[i] = -(mUndeleteFlag & 1 << i) >> 0x1f; + } + for (; idx > param_0; idx--) { + mTexture[idx] = mTexture[idx - 1]; + mPalette[idx] = mPalette[idx - 1]; + mTexNo[idx] = mTexNo[idx - 1]; + local_38[idx] = local_38[idx - 1]; + } + mTexture[param_0] = texture; + mUndeleteFlag &= 0x80; + for (u8 i = 0; i < 4; i++) { + if (local_38[i]) { + mUndeleteFlag |= 1 << i; + } + } + mUndeleteFlag |= 1 << param_0; + } + mPalette[param_0] = NULL; + mTexNo[param_0] = -1; + return true; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1526,6 +1660,7 @@ asm bool J2DTevBlock4::insertTexture(u32 param_0, ResTIMG const* param_1, JUTPal #include "asm/JSystem/J2DGraph/J2DMatBlock/insertTexture__12J2DTevBlock4FUlPC7ResTIMGP10JUTPalette.s" } #pragma pop +#endif /* 802EE1D4-802EE364 2E8B14 0190+00 1/0 0/0 0/0 .text * insertTexture__12J2DTevBlock4FUlP10JUTTexture */ @@ -1691,24 +1826,65 @@ bool J2DTevBlock4::setPalette(u32 param_0, ResTLUT const* p_tlut) { /* 802EE9A4-802EEA2C 2E92E4 0088+00 1/0 0/0 0/0 .text shiftDeleteFlag__12J2DTevBlock4FUcb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock4::shiftDeleteFlag(u8 param_0, bool param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock4FUcb.s" +void J2DTevBlock4::shiftDeleteFlag(u8 param_0, bool param_1) { + u8 tmpFlags = mUndeleteFlag & 0x80; + mUndeleteFlag = mUndeleteFlag & 0x7F; + + if (param_1) { + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << param_0) - 1)) * 2); + } else { + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << (param_0 + 1)) - 1)) >> 1); + } + + mUndeleteFlag |= tmpFlags; } -#pragma pop /* 802EEA2C-802EED1C 2E936C 02F0+00 1/0 0/0 0/0 .text setGX__12J2DTevBlock4Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock4::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock4Fv.s" +void J2DTevBlock4::setGX() { + for (int i = 0; i < 4; i++) { + loadTexture(GXTexMapID(i), i); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevOrder(GXTevStageID(i), mTevOrder[i].getTexCoord(), mTevOrder[i].getTexMap(), mTevOrder[i].getColor()); + } + for (int i = 0; i < 4; i++) { + GXSetTevColorS10(i != 3 ? GXTevRegID(i + 1) : GX_TEVPREV, mTevColor[i]); + } + GXSetNumTevStages(mTevStageNum); + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevColorIn(GXTevStageID(i), GXTevColorArg(mTevStage[i].getColorA()), + GXTevColorArg(mTevStage[i].getColorB()), + GXTevColorArg(mTevStage[i].getColorC()), + GXTevColorArg(mTevStage[i].getColorD())); + GXSetTevAlphaIn(GXTevStageID(i), GXTevAlphaArg(mTevStage[i].getAlphaA()), + GXTevAlphaArg(mTevStage[i].getAlphaB()), + GXTevAlphaArg(mTevStage[i].getAlphaC()), + GXTevAlphaArg(mTevStage[i].getAlphaD())); + GXSetTevColorOp(GXTevStageID(i), GXTevOp(mTevStage[i].getCOp()), + GXTevBias(mTevStage[i].getCBias()), GXTevScale(mTevStage[i].getCScale()), + mTevStage[i].getCClamp(), GXTevRegID(mTevStage[i].getCReg())); + GXSetTevAlphaOp(GXTevStageID(i), (GXTevOp)mTevStage[i].getAOp(), + GXTevBias(mTevStage[i].getABias()), GXTevScale(mTevStage[i].getAScale()), + mTevStage[i].getAClamp(), GXTevRegID(mTevStage[i].getAReg())); + GXSetTevKColorSel(GXTevStageID(i), mTevKColorSel[i] != 0xff ? GXTevKColorSel(mTevKColorSel[i]) : GX_TEV_KCSEL_1); + GXSetTevKAlphaSel(GXTevStageID(i), mTevKAlphaSel[i] != 0xff ? GXTevKAlphaSel(mTevKAlphaSel[i]) : GX_TEV_KASEL_1); + } + for (int i = 0; i < 4; i++) { + GXSetTevKColor(GXTevKColorID(i), mTevKColor[i]); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevSwapMode(GXTevStageID(i), GXTevSwapSel(mTevStage[i].getRasSel()), GXTevSwapSel(mTevStage[i].getTexSel())); + } + for (int i = 0; i < 4; i++) { + GXSetTevSwapModeTable(GXTevSwapSel(i), GXTevColor(mTevSwapModeTable[i].getR()), + GXTevColor(mTevSwapModeTable[i].getG()), + GXTevColor(mTevSwapModeTable[i].getB()), + GXTevColor(mTevSwapModeTable[i].getA())); + } + for (u8 i = 0; i < mTevStageNum; i++) { + mIndTevStage[i].load(i); + } } -#pragma pop /* 802EED1C-802EED64 2E965C 0048+00 1/0 0/0 0/0 .text loadTexture__12J2DTevBlock4F11_GXTexMapIDUl */ @@ -1949,24 +2125,60 @@ bool J2DTevBlock8::setPalette(u32 param_0, ResTLUT const* p_tlut) { /* 802EFE40-802EFEAC 2EA780 006C+00 1/0 0/0 0/0 .text shiftDeleteFlag__12J2DTevBlock8FUcb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock8::shiftDeleteFlag(u8 param_0, bool param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__12J2DTevBlock8FUcb.s" +void J2DTevBlock8::shiftDeleteFlag(u8 param_0, bool param_1) { + if (param_1) { + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << param_0) - 1)) * 2); + } else { + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << (param_0 + 1)) - 1)) >> 1); + } } -#pragma pop /* 802EFEAC-802F019C 2EA7EC 02F0+00 1/0 0/0 0/0 .text setGX__12J2DTevBlock8Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock8::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__12J2DTevBlock8Fv.s" +void J2DTevBlock8::setGX() { + for (int i = 0; i < 8; i++) { + loadTexture(GXTexMapID(i), i); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevOrder(GXTevStageID(i), mTevOrder[i].getTexCoord(), mTevOrder[i].getTexMap(), mTevOrder[i].getColor()); + } + for (int i = 0; i < 4; i++) { + GXSetTevColorS10(i != 3 ? GXTevRegID(i + 1) : GX_TEVPREV, mTevColor[i]); + } + GXSetNumTevStages(mTevStageNum); + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevColorIn(GXTevStageID(i), GXTevColorArg(mTevStage[i].getColorA()), + GXTevColorArg(mTevStage[i].getColorB()), + GXTevColorArg(mTevStage[i].getColorC()), + GXTevColorArg(mTevStage[i].getColorD())); + GXSetTevAlphaIn(GXTevStageID(i), GXTevAlphaArg(mTevStage[i].getAlphaA()), + GXTevAlphaArg(mTevStage[i].getAlphaB()), + GXTevAlphaArg(mTevStage[i].getAlphaC()), + GXTevAlphaArg(mTevStage[i].getAlphaD())); + GXSetTevColorOp(GXTevStageID(i), GXTevOp(mTevStage[i].getCOp()), + GXTevBias(mTevStage[i].getCBias()), GXTevScale(mTevStage[i].getCScale()), + mTevStage[i].getCClamp(), GXTevRegID(mTevStage[i].getCReg())); + GXSetTevAlphaOp(GXTevStageID(i), (GXTevOp)mTevStage[i].getAOp(), + GXTevBias(mTevStage[i].getABias()), GXTevScale(mTevStage[i].getAScale()), + mTevStage[i].getAClamp(), GXTevRegID(mTevStage[i].getAReg())); + GXSetTevKColorSel(GXTevStageID(i), mTevKColorSel[i] != 0xff ? GXTevKColorSel(mTevKColorSel[i]) : GX_TEV_KCSEL_1); + GXSetTevKAlphaSel(GXTevStageID(i), mTevKAlphaSel[i] != 0xff ? GXTevKAlphaSel(mTevKAlphaSel[i]) : GX_TEV_KASEL_1); + } + for (int i = 0; i < 4; i++) { + GXSetTevKColor(GXTevKColorID(i), mTevKColor[i]); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevSwapMode(GXTevStageID(i), GXTevSwapSel(mTevStage[i].getRasSel()), GXTevSwapSel(mTevStage[i].getTexSel())); + } + for (int i = 0; i < 4; i++) { + GXSetTevSwapModeTable(GXTevSwapSel(i), GXTevColor(mTevSwapModeTable[i].getR()), + GXTevColor(mTevSwapModeTable[i].getG()), + GXTevColor(mTevSwapModeTable[i].getB()), + GXTevColor(mTevSwapModeTable[i].getA())); + } + for (u8 i = 0; i < mTevStageNum; i++) { + mIndTevStage[i].load(i); + } } -#pragma pop /* 802F019C-802F01E4 2EAADC 0048+00 1/0 0/0 0/0 .text loadTexture__12J2DTevBlock8F11_GXTexMapIDUl */ @@ -2207,24 +2419,60 @@ bool J2DTevBlock16::setPalette(u32 param_0, ResTLUT const* p_tlut) { } /* 802F12C0-802F132C 2EBC00 006C+00 1/0 0/0 0/0 .text shiftDeleteFlag__13J2DTevBlock16FUcb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock16::shiftDeleteFlag(u8 param_0, bool param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/shiftDeleteFlag__13J2DTevBlock16FUcb.s" +void J2DTevBlock16::shiftDeleteFlag(u8 param_0, bool param_1) { + if (param_1) { + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << param_0) - 1)) * 2); + } else { + mUndeleteFlag = (mUndeleteFlag & ((1 << param_0) - 1)) | ((mUndeleteFlag & ~((1 << (param_0 + 1)) - 1)) >> 1); + } } -#pragma pop /* 802F132C-802F161C 2EBC6C 02F0+00 1/0 0/0 0/0 .text setGX__13J2DTevBlock16Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevBlock16::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__13J2DTevBlock16Fv.s" +void J2DTevBlock16::setGX() { + for (int i = 0; i < 8; i++) { + loadTexture(GXTexMapID(i), i); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevOrder(GXTevStageID(i), mTevOrder[i].getTexCoord(), mTevOrder[i].getTexMap(), mTevOrder[i].getColor()); + } + for (int i = 0; i < 4; i++) { + GXSetTevColorS10(i != 3 ? GXTevRegID(i + 1) : GX_TEVPREV, mTevColor[i]); + } + GXSetNumTevStages(mTevStageNum); + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevColorIn(GXTevStageID(i), GXTevColorArg(mTevStage[i].getColorA()), + GXTevColorArg(mTevStage[i].getColorB()), + GXTevColorArg(mTevStage[i].getColorC()), + GXTevColorArg(mTevStage[i].getColorD())); + GXSetTevAlphaIn(GXTevStageID(i), GXTevAlphaArg(mTevStage[i].getAlphaA()), + GXTevAlphaArg(mTevStage[i].getAlphaB()), + GXTevAlphaArg(mTevStage[i].getAlphaC()), + GXTevAlphaArg(mTevStage[i].getAlphaD())); + GXSetTevColorOp(GXTevStageID(i), GXTevOp(mTevStage[i].getCOp()), + GXTevBias(mTevStage[i].getCBias()), GXTevScale(mTevStage[i].getCScale()), + mTevStage[i].getCClamp(), GXTevRegID(mTevStage[i].getCReg())); + GXSetTevAlphaOp(GXTevStageID(i), (GXTevOp)mTevStage[i].getAOp(), + GXTevBias(mTevStage[i].getABias()), GXTevScale(mTevStage[i].getAScale()), + mTevStage[i].getAClamp(), GXTevRegID(mTevStage[i].getAReg())); + GXSetTevKColorSel(GXTevStageID(i), mTevKColorSel[i] != 0xff ? GXTevKColorSel(mTevKColorSel[i]) : GX_TEV_KCSEL_1); + GXSetTevKAlphaSel(GXTevStageID(i), mTevKAlphaSel[i] != 0xff ? GXTevKAlphaSel(mTevKAlphaSel[i]) : GX_TEV_KASEL_1); + } + for (int i = 0; i < 4; i++) { + GXSetTevKColor(GXTevKColorID(i), mTevKColor[i]); + } + for (int i = 0; i < mTevStageNum; i++) { + GXSetTevSwapMode(GXTevStageID(i), GXTevSwapSel(mTevStage[i].getRasSel()), GXTevSwapSel(mTevStage[i].getTexSel())); + } + for (int i = 0; i < 4; i++) { + GXSetTevSwapModeTable(GXTevSwapSel(i), GXTevColor(mTevSwapModeTable[i].getR()), + GXTevColor(mTevSwapModeTable[i].getG()), + GXTevColor(mTevSwapModeTable[i].getB()), + GXTevColor(mTevSwapModeTable[i].getA())); + } + for (u8 i = 0; i < mTevStageNum; i++) { + mIndTevStage[i].load(i); + } } -#pragma pop /* 802F161C-802F1664 2EBF5C 0048+00 1/0 0/0 0/0 .text loadTexture__13J2DTevBlock16F11_GXTexMapIDUl */ @@ -2246,36 +2494,40 @@ extern "C" asm void initialize__15J2DIndBlockFullFv() { #pragma pop /* 802F1730-802F17FC 2EC070 00CC+00 1/0 0/0 0/0 .text setGX__15J2DIndBlockFullFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DIndBlockFull::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__15J2DIndBlockFullFv.s" +void J2DIndBlockFull::setGX() { + GXSetNumIndStages(mIndTexStageNum); + for (u8 i = 0; i < mIndTexStageNum; i++) { + mIndTexMtx[i].load(i); + } + for (u8 i = 0; i < mIndTexStageNum; i++) { + mTexCoordScale[i].load(i); + } + for (u8 i = 0; i < mIndTexStageNum; i++) { + mIndTexOrder[i].load(i); + } } -#pragma pop /* 802F17FC-802F1840 2EC13C 0044+00 0/0 1/1 0/0 .text initialize__10J2DPEBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DPEBlock::initialize() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__10J2DPEBlockFv.s" +void J2DPEBlock::initialize() { + mAlphaComp = J2DAlphaComp(); + mBlend.setBlendInfo(j2dDefaultBlendInfo); + mDither = data_804561A4; } -#pragma pop /* 802F1840-802F18A0 2EC180 0060+00 0/0 1/1 0/0 .text setGX__10J2DPEBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DPEBlock::setGX() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setGX__10J2DPEBlockFv.s" +void J2DPEBlock::setGX() { + GXSetAlphaCompare(GXCompare(mAlphaComp.getComp0()), mAlphaComp.getRef0(), GXAlphaOp(mAlphaComp.getOp()), GXCompare(mAlphaComp.getComp1()), mAlphaComp.getRef1()); + GXSetBlendMode(GXBlendMode(mBlend.getType()), GXBlendFactor(mBlend.getSrcFactor()), GXBlendFactor(mBlend.getDstFactor()), GXLogicOp(mBlend.getOp())); + GXSetDither(mDither); } -#pragma pop /* 802F18A0-802F1934 2EC1E0 0094+00 5/5 0/0 0/0 .text __ct__14J2DIndTevStageFv */ +// missing instruction +#ifdef NONMATCHING +J2DIndTevStage::J2DIndTevStage() { + mFlags = J2DCalcIndTevStage(j2dDefaultIndTevStageInfo); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -2284,47 +2536,32 @@ asm J2DIndTevStage::J2DIndTevStage() { #include "asm/JSystem/J2DGraph/J2DMatBlock/__ct__14J2DIndTevStageFv.s" } #pragma pop +#endif /* 802F1934-802F1940 2EC274 000C+00 5/5 0/0 0/0 .text __ct__19J2DTevSwapModeTableFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J2DTevSwapModeTable::J2DTevSwapModeTable() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/__ct__19J2DTevSwapModeTableFv.s" +J2DTevSwapModeTable::J2DTevSwapModeTable() { + field_0x0 = data_804561AC; } -#pragma pop /* 802F1940-802F19A8 2EC280 0068+00 5/5 1/1 0/0 .text __ct__11J2DTevStageFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J2DTevStage::J2DTevStage() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevStageFv.s" +J2DTevStage::J2DTevStage() { + setTevStageInfo(j2dDefaultTevStageInfo); + setTevSwapModeInfo(j2dDefaultTevSwapMode); } -#pragma pop /* 802F19A8-802F1B70 2EC2E8 01C8+00 1/1 1/1 0/0 .text * setTevStageInfo__11J2DTevStageFRC15J2DTevStageInfo */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DTevStage::setTevStageInfo(J2DTevStageInfo const& param_0) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setTevStageInfo__11J2DTevStageFRC15J2DTevStageInfo.s" +void J2DTevStage::setTevStageInfo(J2DTevStageInfo const& info) { + setColorABCD(info.field_0x1, info.field_0x2, info.field_0x3, info.field_0x4); + setTevColorOp(info.field_0x5, info.field_0x6, info.field_0x7, info.field_0x8, info.field_0x9); + setAlphaABCD(info.field_0xa, info.field_0xb, info.field_0xc, info.field_0xd); + setTevAlphaOp(info.field_0xe, info.field_0xf, info.field_0x10, info.field_0x11, info.field_0x12); } -#pragma pop /* 802F1B70-802F1B90 2EC4B0 0020+00 5/5 0/0 0/0 .text __ct__11J2DTevOrderFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J2DTevOrder::J2DTevOrder() { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevOrderFv.s" +J2DTevOrder::J2DTevOrder() { + mTevOrderInfo = j2dDefaultTevOrderInfoNull; } -#pragma pop /* 802F1B90-802F1B94 2EC4D0 0004+00 5/5 0/0 0/0 .text __ct__13J2DGXColorS10Fv */ J2DGXColorS10::J2DGXColorS10() { @@ -2348,14 +2585,9 @@ u8 J2DIndBlockFull::getIndTexStageNum() const { /* 802F1BB0-802F1BCC 2EC4F0 001C+00 1/0 0/0 0/0 .text * setIndTexOrder__15J2DIndBlockFullFUl14J2DIndTexOrder */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DIndBlockFull::setIndTexOrder(u32 param_0, J2DIndTexOrder param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setIndTexOrder__15J2DIndBlockFullFUl14J2DIndTexOrder.s" +void J2DIndBlockFull::setIndTexOrder(u32 param_0, J2DIndTexOrder param_1) { + mIndTexOrder[param_0] = param_1; } -#pragma pop /* 802F1BCC-802F1BE0 2EC50C 0014+00 1/0 0/0 0/0 .text getIndTexOrder__15J2DIndBlockFullFUl */ J2DIndTexOrder* J2DIndBlockFull::getIndTexOrder(u32 param_0) { @@ -2364,14 +2596,9 @@ J2DIndTexOrder* J2DIndBlockFull::getIndTexOrder(u32 param_0) { /* 802F1BE0-802F1C38 2EC520 0058+00 1/0 0/0 0/0 .text * setIndTexMtx__15J2DIndBlockFullFUl12J2DIndTexMtx */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DIndBlockFull::setIndTexMtx(u32 param_0, J2DIndTexMtx param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setIndTexMtx__15J2DIndBlockFullFUl12J2DIndTexMtx.s" +void J2DIndBlockFull::setIndTexMtx(u32 param_0, J2DIndTexMtx param_1) { + mIndTexMtx[param_0] = param_1; } -#pragma pop /* 802F1C38-802F1C4C 2EC578 0014+00 1/0 0/0 0/0 .text getIndTexMtx__15J2DIndBlockFullFUl */ @@ -2381,14 +2608,9 @@ J2DIndTexMtx* J2DIndBlockFull::getIndTexMtx(u32 param_0) { /* 802F1C4C-802F1C68 2EC58C 001C+00 1/0 0/0 0/0 .text * setIndTexCoordScale__15J2DIndBlockFullFUl19J2DIndTexCoordScale */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DIndBlockFull::setIndTexCoordScale(u32 param_0, J2DIndTexCoordScale param_1) { - nofralloc -#include "asm/JSystem/J2DGraph/J2DMatBlock/setIndTexCoordScale__15J2DIndBlockFullFUl19J2DIndTexCoordScale.s" +void J2DIndBlockFull::setIndTexCoordScale(u32 param_0, J2DIndTexCoordScale param_1) { + mTexCoordScale[param_0] = param_1; } -#pragma pop /* 802F1C68-802F1C7C 2EC5A8 0014+00 1/0 0/0 0/0 .text getIndTexCoordScale__15J2DIndBlockFullFUl */ J2DIndTexCoordScale* J2DIndBlockFull::getIndTexCoordScale(u32 param_0) {