J2DMatBlock

This commit is contained in:
Jcw87 2023-07-15 13:01:28 -07:00
parent ec4df7f8db
commit 42e8d29fde
30 changed files with 612 additions and 2131 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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<f32> const& bounds);
void setColor(JUtility::TColor c) { this->setColor(c, c, c, c); }
@ -47,9 +54,9 @@ public:
/* 0x38 */ JGeometry::TVec2<f32> 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 */

View File

@ -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 {

View File

@ -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;
};

View File

@ -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) {