summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax <mparisi@stevens.edu>2020-10-03 02:57:15 -0400
committerMax <mparisi@stevens.edu>2020-10-03 02:57:15 -0400
commitffcd41450b3cf48f33a7790ed151467e666b6d51 (patch)
tree457c6c3fac43f6e7ffd9158c4e4a6f40c1e2be78
parentf6e67fa2661f89ad70cdd54f15a25cd2e77b47c1 (diff)
split GXBump, GXPixel, GXTev, GXTexture
-rw-r--r--asm/SDK/GX/GXBump.s591
-rw-r--r--asm/SDK/GX/GXFrameBuf.s2
-rw-r--r--asm/SDK/GX/GXGeometry.s4
-rw-r--r--asm/SDK/GX/GXInit.s136
-rw-r--r--asm/SDK/GX/GXPixel.s547
-rw-r--r--asm/SDK/GX/GXTev.s493
-rw-r--r--asm/SDK/GX/GXTexture.s970
-rw-r--r--asm/SDK/HBM/HBMBase.s28
-rw-r--r--asm/SDK/HBM/HBMGUIManager.s8
-rw-r--r--asm/code_800097D8.s30
-rw-r--r--asm/nw4r/lyt/lyt_material.s126
-rw-r--r--asm/nw4r/lyt/lyt_texMap.s10
-rw-r--r--asm/nw4r/ut/ut_CharWriter.s156
-rw-r--r--asm/text_7.s102
-rw-r--r--asm/text_8.s2593
-rw-r--r--obj_files.mk4
16 files changed, 2908 insertions, 2892 deletions
diff --git a/asm/SDK/GX/GXBump.s b/asm/SDK/GX/GXBump.s
new file mode 100644
index 0000000..598cdfe
--- /dev/null
+++ b/asm/SDK/GX/GXBump.s
@@ -0,0 +1,591 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global GXSetTevIndirect
+GXSetTevIndirect:
+/* 80283364 0027EFC4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80283368 0027EFC8 39 80 00 00 */ li r12, 0
+/* 8028336C 0027EFCC 50 8C 07 BE */ rlwimi r12, r4, 0, 0x1e, 0x1f
+/* 80283370 0027EFD0 38 83 00 10 */ addi r4, r3, 0x10
+/* 80283374 0027EFD4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80283378 0027EFD8 50 AC 17 3A */ rlwimi r12, r5, 2, 0x1c, 0x1d
+/* 8028337C 0027EFDC 3D 60 CC 01 */ lis r11, 0xCC008000@ha
+/* 80283380 0027EFE0 38 00 00 61 */ li r0, 0x61
+/* 80283384 0027EFE4 98 0B 80 00 */ stb r0, 0xCC008000@l(r11)
+/* 80283388 0027EFE8 50 CC 26 76 */ rlwimi r12, r6, 4, 0x19, 0x1b
+/* 8028338C 0027EFEC 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80283390 0027EFF0 38 00 00 00 */ li r0, 0
+/* 80283394 0027EFF4 88 A1 00 1B */ lbz r5, 0x1b(r1)
+/* 80283398 0027EFF8 53 EC 3D F0 */ rlwimi r12, r31, 7, 0x17, 0x18
+/* 8028339C 0027EFFC 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802833A0 0027F000 50 EC 4C EC */ rlwimi r12, r7, 9, 0x13, 0x16
+/* 802833A4 0027F004 51 0C 6C 24 */ rlwimi r12, r8, 0xd, 0x10, 0x12
+/* 802833A8 0027F008 51 2C 83 5E */ rlwimi r12, r9, 0x10, 0xd, 0xf
+/* 802833AC 0027F00C 50 AC 9B 18 */ rlwimi r12, r5, 0x13, 0xc, 0xc
+/* 802833B0 0027F010 51 4C A2 D6 */ rlwimi r12, r10, 0x14, 0xb, 0xb
+/* 802833B4 0027F014 50 8C C0 0E */ rlwimi r12, r4, 0x18, 0, 7
+/* 802833B8 0027F018 91 8B 80 00 */ stw r12, -0x8000(r11)
+/* 802833BC 0027F01C B0 03 00 02 */ sth r0, 2(r3)
+/* 802833C0 0027F020 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802833C4 0027F024 38 21 00 10 */ addi r1, r1, 0x10
+/* 802833C8 0027F028 4E 80 00 20 */ blr
+
+.global GXSetIndTexMtx
+GXSetIndTexMtx:
+/* 802833CC 0027F02C 2C 03 00 08 */ cmpwi r3, 8
+/* 802833D0 0027F030 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802833D4 0027F034 41 82 00 44 */ beq lbl_80283418
+/* 802833D8 0027F038 40 80 00 1C */ bge lbl_802833F4
+/* 802833DC 0027F03C 2C 03 00 04 */ cmpwi r3, 4
+/* 802833E0 0027F040 41 82 00 38 */ beq lbl_80283418
+/* 802833E4 0027F044 40 80 00 24 */ bge lbl_80283408
+/* 802833E8 0027F048 2C 03 00 01 */ cmpwi r3, 1
+/* 802833EC 0027F04C 40 80 00 14 */ bge lbl_80283400
+/* 802833F0 0027F050 48 00 00 28 */ b lbl_80283418
+lbl_802833F4:
+/* 802833F4 0027F054 2C 03 00 0C */ cmpwi r3, 0xc
+/* 802833F8 0027F058 40 80 00 20 */ bge lbl_80283418
+/* 802833FC 0027F05C 48 00 00 14 */ b lbl_80283410
+lbl_80283400:
+/* 80283400 0027F060 38 63 FF FF */ addi r3, r3, -1
+/* 80283404 0027F064 48 00 00 18 */ b lbl_8028341C
+lbl_80283408:
+/* 80283408 0027F068 38 63 FF FB */ addi r3, r3, -5
+/* 8028340C 0027F06C 48 00 00 10 */ b lbl_8028341C
+lbl_80283410:
+/* 80283410 0027F070 38 63 FF F7 */ addi r3, r3, -9
+/* 80283414 0027F074 48 00 00 08 */ b lbl_8028341C
+lbl_80283418:
+/* 80283418 0027F078 38 60 00 00 */ li r3, 0
+lbl_8028341C:
+/* 8028341C 0027F07C C0 C2 A1 68 */ lfs f6, lbl_80642768-_SDA2_BASE_(r2)
+/* 80283420 0027F080 54 60 10 3A */ slwi r0, r3, 2
+/* 80283424 0027F084 C0 24 00 00 */ lfs f1, 0(r4)
+/* 80283428 0027F088 7D 23 00 50 */ subf r9, r3, r0
+/* 8028342C 0027F08C C0 04 00 0C */ lfs f0, 0xc(r4)
+/* 80283430 0027F090 39 05 00 11 */ addi r8, r5, 0x11
+/* 80283434 0027F094 EC 26 00 72 */ fmuls f1, f6, f1
+/* 80283438 0027F098 C0 64 00 04 */ lfs f3, 4(r4)
+/* 8028343C 0027F09C EC 06 00 32 */ fmuls f0, f6, f0
+/* 80283440 0027F0A0 C0 44 00 10 */ lfs f2, 0x10(r4)
+/* 80283444 0027F0A4 EC 66 00 F2 */ fmuls f3, f6, f3
+/* 80283448 0027F0A8 3C C0 CC 01 */ lis r6, 0xCC008000@ha
+/* 8028344C 0027F0AC FC A0 08 1E */ fctiwz f5, f1
+/* 80283450 0027F0B0 C0 24 00 08 */ lfs f1, 8(r4)
+/* 80283454 0027F0B4 FC 80 00 1E */ fctiwz f4, f0
+/* 80283458 0027F0B8 C0 04 00 14 */ lfs f0, 0x14(r4)
+/* 8028345C 0027F0BC EC 46 00 B2 */ fmuls f2, f6, f2
+/* 80283460 0027F0C0 38 E0 00 61 */ li r7, 0x61
+/* 80283464 0027F0C4 D8 A1 00 08 */ stfd f5, 8(r1)
+/* 80283468 0027F0C8 FC 60 18 1E */ fctiwz f3, f3
+/* 8028346C 0027F0CC EC 26 00 72 */ fmuls f1, f6, f1
+/* 80283470 0027F0D0 38 A0 00 00 */ li r5, 0
+/* 80283474 0027F0D4 80 01 00 0C */ lwz r0, 0xc(r1)
+/* 80283478 0027F0D8 FC 40 10 1E */ fctiwz f2, f2
+/* 8028347C 0027F0DC EC 06 00 32 */ fmuls f0, f6, f0
+/* 80283480 0027F0E0 FC 20 08 1E */ fctiwz f1, f1
+/* 80283484 0027F0E4 D8 81 00 10 */ stfd f4, 0x10(r1)
+/* 80283488 0027F0E8 50 05 05 7E */ rlwimi r5, r0, 0, 0x15, 0x1f
+/* 8028348C 0027F0EC FC 00 00 1E */ fctiwz f0, f0
+/* 80283490 0027F0F0 38 69 00 06 */ addi r3, r9, 6
+/* 80283494 0027F0F4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80283498 0027F0F8 D8 61 00 18 */ stfd f3, 0x18(r1)
+/* 8028349C 0027F0FC 38 80 00 00 */ li r4, 0
+/* 802834A0 0027F100 50 05 5A A8 */ rlwimi r5, r0, 0xb, 0xa, 0x14
+/* 802834A4 0027F104 80 01 00 1C */ lwz r0, 0x1c(r1)
+/* 802834A8 0027F108 51 05 B2 12 */ rlwimi r5, r8, 0x16, 8, 9
+/* 802834AC 0027F10C 50 65 C0 0E */ rlwimi r5, r3, 0x18, 0, 7
+/* 802834B0 0027F110 98 E6 80 00 */ stb r7, 0xCC008000@l(r6)
+/* 802834B4 0027F114 50 04 05 7E */ rlwimi r4, r0, 0, 0x15, 0x1f
+/* 802834B8 0027F118 38 69 00 07 */ addi r3, r9, 7
+/* 802834BC 0027F11C 90 A6 80 00 */ stw r5, -0x8000(r6)
+/* 802834C0 0027F120 38 A0 00 00 */ li r5, 0
+/* 802834C4 0027F124 D8 41 00 20 */ stfd f2, 0x20(r1)
+/* 802834C8 0027F128 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802834CC 0027F12C D8 21 00 28 */ stfd f1, 0x28(r1)
+/* 802834D0 0027F130 50 04 5A A8 */ rlwimi r4, r0, 0xb, 0xa, 0x14
+/* 802834D4 0027F134 80 01 00 2C */ lwz r0, 0x2c(r1)
+/* 802834D8 0027F138 51 04 A2 12 */ rlwimi r4, r8, 0x14, 8, 9
+/* 802834DC 0027F13C 50 64 C0 0E */ rlwimi r4, r3, 0x18, 0, 7
+/* 802834E0 0027F140 98 E6 80 00 */ stb r7, -0x8000(r6)
+/* 802834E4 0027F144 50 05 05 7E */ rlwimi r5, r0, 0, 0x15, 0x1f
+/* 802834E8 0027F148 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802834EC 0027F14C 90 86 80 00 */ stw r4, -0x8000(r6)
+/* 802834F0 0027F150 38 89 00 08 */ addi r4, r9, 8
+/* 802834F4 0027F154 D8 01 00 30 */ stfd f0, 0x30(r1)
+/* 802834F8 0027F158 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802834FC 0027F15C 98 E6 80 00 */ stb r7, -0x8000(r6)
+/* 80283500 0027F160 50 05 5A A8 */ rlwimi r5, r0, 0xb, 0xa, 0x14
+/* 80283504 0027F164 38 00 00 00 */ li r0, 0
+/* 80283508 0027F168 51 05 92 12 */ rlwimi r5, r8, 0x12, 8, 9
+/* 8028350C 0027F16C 50 85 C0 0E */ rlwimi r5, r4, 0x18, 0, 7
+/* 80283510 0027F170 90 A6 80 00 */ stw r5, -0x8000(r6)
+/* 80283514 0027F174 B0 03 00 02 */ sth r0, 2(r3)
+/* 80283518 0027F178 38 21 00 40 */ addi r1, r1, 0x40
+/* 8028351C 0027F17C 4E 80 00 20 */ blr
+
+.global GXSetIndTexCoordScale
+GXSetIndTexCoordScale:
+/* 80283520 0027F180 2C 03 00 02 */ cmpwi r3, 2
+/* 80283524 0027F184 41 82 00 8C */ beq lbl_802835B0
+/* 80283528 0027F188 40 80 00 14 */ bge lbl_8028353C
+/* 8028352C 0027F18C 2C 03 00 00 */ cmpwi r3, 0
+/* 80283530 0027F190 41 82 00 18 */ beq lbl_80283548
+/* 80283534 0027F194 40 80 00 48 */ bge lbl_8028357C
+/* 80283538 0027F198 48 00 00 DC */ b lbl_80283614
+lbl_8028353C:
+/* 8028353C 0027F19C 2C 03 00 04 */ cmpwi r3, 4
+/* 80283540 0027F1A0 40 80 00 D4 */ bge lbl_80283614
+/* 80283544 0027F1A4 48 00 00 A0 */ b lbl_802835E4
+lbl_80283548:
+/* 80283548 0027F1A8 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
+/* 8028354C 0027F1AC 38 C0 00 25 */ li r6, 0x25
+/* 80283550 0027F1B0 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283554 0027F1B4 38 00 00 61 */ li r0, 0x61
+/* 80283558 0027F1B8 80 E8 01 78 */ lwz r7, 0x178(r8)
+/* 8028355C 0027F1BC 50 87 07 3E */ rlwimi r7, r4, 0, 0x1c, 0x1f
+/* 80283560 0027F1C0 50 A7 26 36 */ rlwimi r7, r5, 4, 0x18, 0x1b
+/* 80283564 0027F1C4 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
+/* 80283568 0027F1C8 90 E8 01 78 */ stw r7, 0x178(r8)
+/* 8028356C 0027F1CC 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 80283570 0027F1D0 80 08 01 78 */ lwz r0, 0x178(r8)
+/* 80283574 0027F1D4 90 03 80 00 */ stw r0, -0x8000(r3)
+/* 80283578 0027F1D8 48 00 00 9C */ b lbl_80283614
+lbl_8028357C:
+/* 8028357C 0027F1DC 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283580 0027F1E0 38 C0 00 25 */ li r6, 0x25
+/* 80283584 0027F1E4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283588 0027F1E8 38 00 00 61 */ li r0, 0x61
+/* 8028358C 0027F1EC 80 E8 01 78 */ lwz r7, 0x178(r8)
+/* 80283590 0027F1F0 50 87 45 2E */ rlwimi r7, r4, 8, 0x14, 0x17
+/* 80283594 0027F1F4 50 A7 64 26 */ rlwimi r7, r5, 0xc, 0x10, 0x13
+/* 80283598 0027F1F8 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
+/* 8028359C 0027F1FC 90 E8 01 78 */ stw r7, 0x178(r8)
+/* 802835A0 0027F200 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 802835A4 0027F204 80 08 01 78 */ lwz r0, 0x178(r8)
+/* 802835A8 0027F208 90 03 80 00 */ stw r0, -0x8000(r3)
+/* 802835AC 0027F20C 48 00 00 68 */ b lbl_80283614
+lbl_802835B0:
+/* 802835B0 0027F210 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802835B4 0027F214 38 C0 00 26 */ li r6, 0x26
+/* 802835B8 0027F218 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 802835BC 0027F21C 38 00 00 61 */ li r0, 0x61
+/* 802835C0 0027F220 80 E8 01 7C */ lwz r7, 0x17c(r8)
+/* 802835C4 0027F224 50 87 07 3E */ rlwimi r7, r4, 0, 0x1c, 0x1f
+/* 802835C8 0027F228 50 A7 26 36 */ rlwimi r7, r5, 4, 0x18, 0x1b
+/* 802835CC 0027F22C 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
+/* 802835D0 0027F230 90 E8 01 7C */ stw r7, 0x17c(r8)
+/* 802835D4 0027F234 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 802835D8 0027F238 80 08 01 7C */ lwz r0, 0x17c(r8)
+/* 802835DC 0027F23C 90 03 80 00 */ stw r0, -0x8000(r3)
+/* 802835E0 0027F240 48 00 00 34 */ b lbl_80283614
+lbl_802835E4:
+/* 802835E4 0027F244 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802835E8 0027F248 38 C0 00 26 */ li r6, 0x26
+/* 802835EC 0027F24C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 802835F0 0027F250 38 00 00 61 */ li r0, 0x61
+/* 802835F4 0027F254 80 E8 01 7C */ lwz r7, 0x17c(r8)
+/* 802835F8 0027F258 50 87 45 2E */ rlwimi r7, r4, 8, 0x14, 0x17
+/* 802835FC 0027F25C 50 A7 64 26 */ rlwimi r7, r5, 0xc, 0x10, 0x13
+/* 80283600 0027F260 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
+/* 80283604 0027F264 90 E8 01 7C */ stw r7, 0x17c(r8)
+/* 80283608 0027F268 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 8028360C 0027F26C 80 08 01 7C */ lwz r0, 0x17c(r8)
+/* 80283610 0027F270 90 03 80 00 */ stw r0, -0x8000(r3)
+lbl_80283614:
+/* 80283614 0027F274 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283618 0027F278 38 00 00 00 */ li r0, 0
+/* 8028361C 0027F27C B0 03 00 02 */ sth r0, 2(r3)
+/* 80283620 0027F280 4E 80 00 20 */ blr
+
+.global GXSetIndTexOrder
+GXSetIndTexOrder:
+/* 80283624 0027F284 2C 05 00 FF */ cmpwi r5, 0xff
+/* 80283628 0027F288 40 82 00 08 */ bne lbl_80283630
+/* 8028362C 0027F28C 38 A0 00 00 */ li r5, 0
+lbl_80283630:
+/* 80283630 0027F290 2C 04 00 FF */ cmpwi r4, 0xff
+/* 80283634 0027F294 40 82 00 08 */ bne lbl_8028363C
+/* 80283638 0027F298 38 80 00 00 */ li r4, 0
+lbl_8028363C:
+/* 8028363C 0027F29C 2C 03 00 02 */ cmpwi r3, 2
+/* 80283640 0027F2A0 41 82 00 54 */ beq lbl_80283694
+/* 80283644 0027F2A4 40 80 00 14 */ bge lbl_80283658
+/* 80283648 0027F2A8 2C 03 00 00 */ cmpwi r3, 0
+/* 8028364C 0027F2AC 41 82 00 18 */ beq lbl_80283664
+/* 80283650 0027F2B0 40 80 00 2C */ bge lbl_8028367C
+/* 80283654 0027F2B4 48 00 00 6C */ b lbl_802836C0
+lbl_80283658:
+/* 80283658 0027F2B8 2C 03 00 04 */ cmpwi r3, 4
+/* 8028365C 0027F2BC 40 80 00 64 */ bge lbl_802836C0
+/* 80283660 0027F2C0 48 00 00 4C */ b lbl_802836AC
+lbl_80283664:
+/* 80283664 0027F2C4 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283668 0027F2C8 80 03 01 70 */ lwz r0, 0x170(r3)
+/* 8028366C 0027F2CC 50 A0 07 7E */ rlwimi r0, r5, 0, 0x1d, 0x1f
+/* 80283670 0027F2D0 50 80 1E B8 */ rlwimi r0, r4, 3, 0x1a, 0x1c
+/* 80283674 0027F2D4 90 03 01 70 */ stw r0, 0x170(r3)
+/* 80283678 0027F2D8 48 00 00 48 */ b lbl_802836C0
+lbl_8028367C:
+/* 8028367C 0027F2DC 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283680 0027F2E0 80 03 01 70 */ lwz r0, 0x170(r3)
+/* 80283684 0027F2E4 50 A0 35 F2 */ rlwimi r0, r5, 6, 0x17, 0x19
+/* 80283688 0027F2E8 50 80 4D 2C */ rlwimi r0, r4, 9, 0x14, 0x16
+/* 8028368C 0027F2EC 90 03 01 70 */ stw r0, 0x170(r3)
+/* 80283690 0027F2F0 48 00 00 30 */ b lbl_802836C0
+lbl_80283694:
+/* 80283694 0027F2F4 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283698 0027F2F8 80 03 01 70 */ lwz r0, 0x170(r3)
+/* 8028369C 0027F2FC 50 A0 64 66 */ rlwimi r0, r5, 0xc, 0x11, 0x13
+/* 802836A0 0027F300 50 80 7B A0 */ rlwimi r0, r4, 0xf, 0xe, 0x10
+/* 802836A4 0027F304 90 03 01 70 */ stw r0, 0x170(r3)
+/* 802836A8 0027F308 48 00 00 18 */ b lbl_802836C0
+lbl_802836AC:
+/* 802836AC 0027F30C 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802836B0 0027F310 80 03 01 70 */ lwz r0, 0x170(r3)
+/* 802836B4 0027F314 50 A0 92 DA */ rlwimi r0, r5, 0x12, 0xb, 0xd
+/* 802836B8 0027F318 50 80 AA 14 */ rlwimi r0, r4, 0x15, 8, 0xa
+/* 802836BC 0027F31C 90 03 01 70 */ stw r0, 0x170(r3)
+lbl_802836C0:
+/* 802836C0 0027F320 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 802836C4 0027F324 38 00 00 61 */ li r0, 0x61
+/* 802836C8 0027F328 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 802836CC 0027F32C 38 00 00 00 */ li r0, 0
+/* 802836D0 0027F330 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802836D4 0027F334 80 65 01 70 */ lwz r3, 0x170(r5)
+/* 802836D8 0027F338 90 64 80 00 */ stw r3, -0x8000(r4)
+/* 802836DC 0027F33C 80 65 05 FC */ lwz r3, 0x5fc(r5)
+/* 802836E0 0027F340 60 63 00 03 */ ori r3, r3, 3
+/* 802836E4 0027F344 90 65 05 FC */ stw r3, 0x5fc(r5)
+/* 802836E8 0027F348 B0 05 00 02 */ sth r0, 2(r5)
+/* 802836EC 0027F34C 4E 80 00 20 */ blr
+
+.global GXSetNumIndStages
+GXSetNumIndStages:
+/* 802836F0 0027F350 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802836F4 0027F354 80 04 02 54 */ lwz r0, 0x254(r4)
+/* 802836F8 0027F358 50 60 83 5E */ rlwimi r0, r3, 0x10, 0xd, 0xf
+/* 802836FC 0027F35C 90 04 02 54 */ stw r0, 0x254(r4)
+/* 80283700 0027F360 80 04 05 FC */ lwz r0, 0x5fc(r4)
+/* 80283704 0027F364 60 00 00 06 */ ori r0, r0, 6
+/* 80283708 0027F368 90 04 05 FC */ stw r0, 0x5fc(r4)
+/* 8028370C 0027F36C 4E 80 00 20 */ blr
+
+.global GXSetTevDirect
+GXSetTevDirect:
+/* 80283710 0027F370 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80283714 0027F374 7C 08 02 A6 */ mflr r0
+/* 80283718 0027F378 38 80 00 00 */ li r4, 0
+/* 8028371C 0027F37C 38 A0 00 00 */ li r5, 0
+/* 80283720 0027F380 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80283724 0027F384 38 00 00 00 */ li r0, 0
+/* 80283728 0027F388 38 C0 00 00 */ li r6, 0
+/* 8028372C 0027F38C 38 E0 00 00 */ li r7, 0
+/* 80283730 0027F390 90 01 00 08 */ stw r0, 8(r1)
+/* 80283734 0027F394 39 00 00 00 */ li r8, 0
+/* 80283738 0027F398 39 20 00 00 */ li r9, 0
+/* 8028373C 0027F39C 39 40 00 00 */ li r10, 0
+/* 80283740 0027F3A0 90 01 00 0C */ stw r0, 0xc(r1)
+/* 80283744 0027F3A4 4B FF FC 21 */ bl GXSetTevIndirect
+/* 80283748 0027F3A8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8028374C 0027F3AC 7C 08 03 A6 */ mtlr r0
+/* 80283750 0027F3B0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80283754 0027F3B4 4E 80 00 20 */ blr
+
+.global GXSetTevIndWarp
+GXSetTevIndWarp:
+/* 80283758 0027F3B8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028375C 0027F3BC 7C 08 02 A6 */ mflr r0
+/* 80283760 0027F3C0 2C 06 00 00 */ cmpwi r6, 0
+/* 80283764 0027F3C4 39 00 00 00 */ li r8, 0
+/* 80283768 0027F3C8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8028376C 0027F3CC 41 82 00 08 */ beq lbl_80283774
+/* 80283770 0027F3D0 39 00 00 06 */ li r8, 6
+lbl_80283774:
+/* 80283774 0027F3D4 38 C0 00 00 */ li r6, 0
+/* 80283778 0027F3D8 2C 05 00 00 */ cmpwi r5, 0
+/* 8028377C 0027F3DC 90 C1 00 08 */ stw r6, 8(r1)
+/* 80283780 0027F3E0 38 A0 00 00 */ li r5, 0
+/* 80283784 0027F3E4 90 C1 00 0C */ stw r6, 0xc(r1)
+/* 80283788 0027F3E8 41 82 00 08 */ beq lbl_80283790
+/* 8028378C 0027F3EC 38 C0 00 07 */ li r6, 7
+lbl_80283790:
+/* 80283790 0027F3F0 7D 09 43 78 */ mr r9, r8
+/* 80283794 0027F3F4 39 40 00 00 */ li r10, 0
+/* 80283798 0027F3F8 4B FF FB CD */ bl GXSetTevIndirect
+/* 8028379C 0027F3FC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802837A0 0027F400 7C 08 03 A6 */ mtlr r0
+/* 802837A4 0027F404 38 21 00 10 */ addi r1, r1, 0x10
+/* 802837A8 0027F408 4E 80 00 20 */ blr
+
+.global GXSetTevIndTile
+GXSetTevIndTile:
+/* 802837AC 0027F40C 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 802837B0 0027F410 7C 08 02 A6 */ mflr r0
+/* 802837B4 0027F414 90 01 00 64 */ stw r0, 0x64(r1)
+/* 802837B8 0027F418 39 61 00 60 */ addi r11, r1, 0x60
+/* 802837BC 0027F41C 4B F4 39 61 */ bl _savegpr_24
+/* 802837C0 0027F420 2C 05 00 40 */ cmpwi r5, 0x40
+/* 802837C4 0027F424 83 81 00 68 */ lwz r28, 0x68(r1)
+/* 802837C8 0027F428 83 A1 00 6C */ lwz r29, 0x6c(r1)
+/* 802837CC 0027F42C 7C 78 1B 78 */ mr r24, r3
+/* 802837D0 0027F430 7C 99 23 78 */ mr r25, r4
+/* 802837D4 0027F434 7D 3A 4B 78 */ mr r26, r9
+/* 802837D8 0027F438 7D 5B 53 78 */ mr r27, r10
+/* 802837DC 0027F43C 41 82 00 48 */ beq lbl_80283824
+/* 802837E0 0027F440 40 80 00 1C */ bge lbl_802837FC
+/* 802837E4 0027F444 2C 05 00 20 */ cmpwi r5, 0x20
+/* 802837E8 0027F448 41 82 00 44 */ beq lbl_8028382C
+/* 802837EC 0027F44C 40 80 00 50 */ bge lbl_8028383C
+/* 802837F0 0027F450 2C 05 00 10 */ cmpwi r5, 0x10
+/* 802837F4 0027F454 41 82 00 40 */ beq lbl_80283834
+/* 802837F8 0027F458 48 00 00 44 */ b lbl_8028383C
+lbl_802837FC:
+/* 802837FC 0027F45C 2C 05 01 00 */ cmpwi r5, 0x100
+/* 80283800 0027F460 41 82 00 14 */ beq lbl_80283814
+/* 80283804 0027F464 40 80 00 38 */ bge lbl_8028383C
+/* 80283808 0027F468 2C 05 00 80 */ cmpwi r5, 0x80
+/* 8028380C 0027F46C 41 82 00 10 */ beq lbl_8028381C
+/* 80283810 0027F470 48 00 00 2C */ b lbl_8028383C
+lbl_80283814:
+/* 80283814 0027F474 3B E0 00 01 */ li r31, 1
+/* 80283818 0027F478 48 00 00 28 */ b lbl_80283840
+lbl_8028381C:
+/* 8028381C 0027F47C 3B E0 00 02 */ li r31, 2
+/* 80283820 0027F480 48 00 00 20 */ b lbl_80283840
+lbl_80283824:
+/* 80283824 0027F484 3B E0 00 03 */ li r31, 3
+/* 80283828 0027F488 48 00 00 18 */ b lbl_80283840
+lbl_8028382C:
+/* 8028382C 0027F48C 3B E0 00 04 */ li r31, 4
+/* 80283830 0027F490 48 00 00 10 */ b lbl_80283840
+lbl_80283834:
+/* 80283834 0027F494 3B E0 00 05 */ li r31, 5
+/* 80283838 0027F498 48 00 00 08 */ b lbl_80283840
+lbl_8028383C:
+/* 8028383C 0027F49C 3B E0 00 00 */ li r31, 0
+lbl_80283840:
+/* 80283840 0027F4A0 2C 06 00 40 */ cmpwi r6, 0x40
+/* 80283844 0027F4A4 41 82 00 48 */ beq lbl_8028388C
+/* 80283848 0027F4A8 40 80 00 1C */ bge lbl_80283864
+/* 8028384C 0027F4AC 2C 06 00 20 */ cmpwi r6, 0x20
+/* 80283850 0027F4B0 41 82 00 44 */ beq lbl_80283894
+/* 80283854 0027F4B4 40 80 00 50 */ bge lbl_802838A4
+/* 80283858 0027F4B8 2C 06 00 10 */ cmpwi r6, 0x10
+/* 8028385C 0027F4BC 41 82 00 40 */ beq lbl_8028389C
+/* 80283860 0027F4C0 48 00 00 44 */ b lbl_802838A4
+lbl_80283864:
+/* 80283864 0027F4C4 2C 06 01 00 */ cmpwi r6, 0x100
+/* 80283868 0027F4C8 41 82 00 14 */ beq lbl_8028387C
+/* 8028386C 0027F4CC 40 80 00 38 */ bge lbl_802838A4
+/* 80283870 0027F4D0 2C 06 00 80 */ cmpwi r6, 0x80
+/* 80283874 0027F4D4 41 82 00 10 */ beq lbl_80283884
+/* 80283878 0027F4D8 48 00 00 2C */ b lbl_802838A4
+lbl_8028387C:
+/* 8028387C 0027F4DC 3B C0 00 01 */ li r30, 1
+/* 80283880 0027F4E0 48 00 00 28 */ b lbl_802838A8
+lbl_80283884:
+/* 80283884 0027F4E4 3B C0 00 02 */ li r30, 2
+/* 80283888 0027F4E8 48 00 00 20 */ b lbl_802838A8
+lbl_8028388C:
+/* 8028388C 0027F4EC 3B C0 00 03 */ li r30, 3
+/* 80283890 0027F4F0 48 00 00 18 */ b lbl_802838A8
+lbl_80283894:
+/* 80283894 0027F4F4 3B C0 00 04 */ li r30, 4
+/* 80283898 0027F4F8 48 00 00 10 */ b lbl_802838A8
+lbl_8028389C:
+/* 8028389C 0027F4FC 3B C0 00 05 */ li r30, 5
+/* 802838A0 0027F500 48 00 00 08 */ b lbl_802838A8
+lbl_802838A4:
+/* 802838A4 0027F504 3B C0 00 00 */ li r30, 0
+lbl_802838A8:
+/* 802838A8 0027F508 3C 00 43 30 */ lis r0, 0x4330
+/* 802838AC 0027F50C C0 22 A1 70 */ lfs f1, lbl_80642770-_SDA2_BASE_(r2)
+/* 802838B0 0027F510 90 E1 00 2C */ stw r7, 0x2c(r1)
+/* 802838B4 0027F514 7F 63 DB 78 */ mr r3, r27
+/* 802838B8 0027F518 C8 82 A1 78 */ lfd f4, lbl_80642778-_SDA2_BASE_(r2)
+/* 802838BC 0027F51C 38 81 00 10 */ addi r4, r1, 0x10
+/* 802838C0 0027F520 90 01 00 28 */ stw r0, 0x28(r1)
+/* 802838C4 0027F524 38 A0 00 0A */ li r5, 0xa
+/* 802838C8 0027F528 C0 62 A1 6C */ lfs f3, lbl_8064276C-_SDA2_BASE_(r2)
+/* 802838CC 0027F52C C8 01 00 28 */ lfd f0, 0x28(r1)
+/* 802838D0 0027F530 91 01 00 34 */ stw r8, 0x34(r1)
+/* 802838D4 0027F534 EC 40 20 28 */ fsubs f2, f0, f4
+/* 802838D8 0027F538 90 01 00 30 */ stw r0, 0x30(r1)
+/* 802838DC 0027F53C C8 01 00 30 */ lfd f0, 0x30(r1)
+/* 802838E0 0027F540 EC 42 00 F2 */ fmuls f2, f2, f3
+/* 802838E4 0027F544 D0 21 00 18 */ stfs f1, 0x18(r1)
+/* 802838E8 0027F548 EC 00 20 28 */ fsubs f0, f0, f4
+/* 802838EC 0027F54C D0 41 00 10 */ stfs f2, 0x10(r1)
+/* 802838F0 0027F550 EC 00 00 F2 */ fmuls f0, f0, f3
+/* 802838F4 0027F554 D0 21 00 14 */ stfs f1, 0x14(r1)
+/* 802838F8 0027F558 D0 21 00 24 */ stfs f1, 0x24(r1)
+/* 802838FC 0027F55C D0 01 00 20 */ stfs f0, 0x20(r1)
+/* 80283900 0027F560 D0 21 00 1C */ stfs f1, 0x1c(r1)
+/* 80283904 0027F564 4B FF FA C9 */ bl GXSetIndTexMtx
+/* 80283908 0027F568 38 00 00 01 */ li r0, 1
+/* 8028390C 0027F56C 7F 03 C3 78 */ mr r3, r24
+/* 80283910 0027F570 90 01 00 08 */ stw r0, 8(r1)
+/* 80283914 0027F574 7F 24 CB 78 */ mr r4, r25
+/* 80283918 0027F578 7F 45 D3 78 */ mr r5, r26
+/* 8028391C 0027F57C 7F 86 E3 78 */ mr r6, r28
+/* 80283920 0027F580 93 A1 00 0C */ stw r29, 0xc(r1)
+/* 80283924 0027F584 7F 67 DB 78 */ mr r7, r27
+/* 80283928 0027F588 7F E8 FB 78 */ mr r8, r31
+/* 8028392C 0027F58C 7F C9 F3 78 */ mr r9, r30
+/* 80283930 0027F590 39 40 00 00 */ li r10, 0
+/* 80283934 0027F594 4B FF FA 31 */ bl GXSetTevIndirect
+/* 80283938 0027F598 39 61 00 60 */ addi r11, r1, 0x60
+/* 8028393C 0027F59C 4B F4 38 2D */ bl _restgpr_24
+/* 80283940 0027F5A0 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 80283944 0027F5A4 7C 08 03 A6 */ mtlr r0
+/* 80283948 0027F5A8 38 21 00 60 */ addi r1, r1, 0x60
+/* 8028394C 0027F5AC 4E 80 00 20 */ blr
+
+.global GXSetTevIndBumpST
+GXSetTevIndBumpST:
+/* 80283950 0027F5B0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80283954 0027F5B4 7C 08 02 A6 */ mflr r0
+/* 80283958 0027F5B8 2C 05 00 02 */ cmpwi r5, 2
+/* 8028395C 0027F5BC 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80283960 0027F5C0 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80283964 0027F5C4 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80283968 0027F5C8 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8028396C 0027F5CC 7C 9D 23 78 */ mr r29, r4
+/* 80283970 0027F5D0 93 81 00 10 */ stw r28, 0x10(r1)
+/* 80283974 0027F5D4 7C 7C 1B 78 */ mr r28, r3
+/* 80283978 0027F5D8 41 82 00 2C */ beq lbl_802839A4
+/* 8028397C 0027F5DC 40 80 00 10 */ bge lbl_8028398C
+/* 80283980 0027F5E0 2C 05 00 01 */ cmpwi r5, 1
+/* 80283984 0027F5E4 40 80 00 14 */ bge lbl_80283998
+/* 80283988 0027F5E8 48 00 00 30 */ b lbl_802839B8
+lbl_8028398C:
+/* 8028398C 0027F5EC 2C 05 00 04 */ cmpwi r5, 4
+/* 80283990 0027F5F0 40 80 00 28 */ bge lbl_802839B8
+/* 80283994 0027F5F4 48 00 00 1C */ b lbl_802839B0
+lbl_80283998:
+/* 80283998 0027F5F8 38 E0 00 05 */ li r7, 5
+/* 8028399C 0027F5FC 3B C0 00 09 */ li r30, 9
+/* 802839A0 0027F600 48 00 00 18 */ b lbl_802839B8
+lbl_802839A4:
+/* 802839A4 0027F604 38 E0 00 06 */ li r7, 6
+/* 802839A8 0027F608 3B C0 00 0A */ li r30, 0xa
+/* 802839AC 0027F60C 48 00 00 0C */ b lbl_802839B8
+lbl_802839B0:
+/* 802839B0 0027F610 38 E0 00 07 */ li r7, 7
+/* 802839B4 0027F614 3B C0 00 0B */ li r30, 0xb
+lbl_802839B8:
+/* 802839B8 0027F618 3B E0 00 00 */ li r31, 0
+/* 802839BC 0027F61C 7F 83 E3 78 */ mr r3, r28
+/* 802839C0 0027F620 93 E1 00 08 */ stw r31, 8(r1)
+/* 802839C4 0027F624 7F A4 EB 78 */ mr r4, r29
+/* 802839C8 0027F628 38 A0 00 00 */ li r5, 0
+/* 802839CC 0027F62C 38 C0 00 03 */ li r6, 3
+/* 802839D0 0027F630 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802839D4 0027F634 39 00 00 06 */ li r8, 6
+/* 802839D8 0027F638 39 20 00 06 */ li r9, 6
+/* 802839DC 0027F63C 39 40 00 00 */ li r10, 0
+/* 802839E0 0027F640 4B FF F9 85 */ bl GXSetTevIndirect
+/* 802839E4 0027F644 93 E1 00 08 */ stw r31, 8(r1)
+/* 802839E8 0027F648 7F A4 EB 78 */ mr r4, r29
+/* 802839EC 0027F64C 7F C7 F3 78 */ mr r7, r30
+/* 802839F0 0027F650 38 7C 00 01 */ addi r3, r28, 1
+/* 802839F4 0027F654 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802839F8 0027F658 38 A0 00 00 */ li r5, 0
+/* 802839FC 0027F65C 38 C0 00 03 */ li r6, 3
+/* 80283A00 0027F660 39 00 00 06 */ li r8, 6
+/* 80283A04 0027F664 39 20 00 06 */ li r9, 6
+/* 80283A08 0027F668 39 40 00 01 */ li r10, 1
+/* 80283A0C 0027F66C 4B FF F9 59 */ bl GXSetTevIndirect
+/* 80283A10 0027F670 93 E1 00 08 */ stw r31, 8(r1)
+/* 80283A14 0027F674 7F A4 EB 78 */ mr r4, r29
+/* 80283A18 0027F678 38 7C 00 02 */ addi r3, r28, 2
+/* 80283A1C 0027F67C 38 A0 00 00 */ li r5, 0
+/* 80283A20 0027F680 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80283A24 0027F684 38 C0 00 00 */ li r6, 0
+/* 80283A28 0027F688 38 E0 00 00 */ li r7, 0
+/* 80283A2C 0027F68C 39 00 00 00 */ li r8, 0
+/* 80283A30 0027F690 39 20 00 00 */ li r9, 0
+/* 80283A34 0027F694 39 40 00 01 */ li r10, 1
+/* 80283A38 0027F698 4B FF F9 2D */ bl GXSetTevIndirect
+/* 80283A3C 0027F69C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80283A40 0027F6A0 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80283A44 0027F6A4 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80283A48 0027F6A8 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80283A4C 0027F6AC 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 80283A50 0027F6B0 7C 08 03 A6 */ mtlr r0
+/* 80283A54 0027F6B4 38 21 00 20 */ addi r1, r1, 0x20
+/* 80283A58 0027F6B8 4E 80 00 20 */ blr
+
+.global GXSetTevIndBumpXYZ
+GXSetTevIndBumpXYZ:
+/* 80283A5C 0027F6BC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80283A60 0027F6C0 7C 08 02 A6 */ mflr r0
+/* 80283A64 0027F6C4 7C A7 2B 78 */ mr r7, r5
+/* 80283A68 0027F6C8 38 A0 00 00 */ li r5, 0
+/* 80283A6C 0027F6CC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80283A70 0027F6D0 38 00 00 00 */ li r0, 0
+/* 80283A74 0027F6D4 38 C0 00 07 */ li r6, 7
+/* 80283A78 0027F6D8 39 00 00 00 */ li r8, 0
+/* 80283A7C 0027F6DC 90 01 00 08 */ stw r0, 8(r1)
+/* 80283A80 0027F6E0 39 20 00 00 */ li r9, 0
+/* 80283A84 0027F6E4 39 40 00 00 */ li r10, 0
+/* 80283A88 0027F6E8 90 01 00 0C */ stw r0, 0xc(r1)
+/* 80283A8C 0027F6EC 4B FF F8 D9 */ bl GXSetTevIndirect
+/* 80283A90 0027F6F0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80283A94 0027F6F4 7C 08 03 A6 */ mtlr r0
+/* 80283A98 0027F6F8 38 21 00 10 */ addi r1, r1, 0x10
+/* 80283A9C 0027F6FC 4E 80 00 20 */ blr
+
+.global GXSetTevIndRepeat
+GXSetTevIndRepeat:
+/* 80283AA0 0027F700 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80283AA4 0027F704 7C 08 02 A6 */ mflr r0
+/* 80283AA8 0027F708 38 80 00 00 */ li r4, 0
+/* 80283AAC 0027F70C 38 A0 00 00 */ li r5, 0
+/* 80283AB0 0027F710 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80283AB4 0027F714 38 00 00 00 */ li r0, 0
+/* 80283AB8 0027F718 38 C0 00 00 */ li r6, 0
+/* 80283ABC 0027F71C 38 E0 00 00 */ li r7, 0
+/* 80283AC0 0027F720 90 01 00 08 */ stw r0, 8(r1)
+/* 80283AC4 0027F724 39 00 00 06 */ li r8, 6
+/* 80283AC8 0027F728 39 20 00 06 */ li r9, 6
+/* 80283ACC 0027F72C 39 40 00 01 */ li r10, 1
+/* 80283AD0 0027F730 90 01 00 0C */ stw r0, 0xc(r1)
+/* 80283AD4 0027F734 4B FF F8 91 */ bl GXSetTevIndirect
+/* 80283AD8 0027F738 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80283ADC 0027F73C 7C 08 03 A6 */ mtlr r0
+/* 80283AE0 0027F740 38 21 00 10 */ addi r1, r1, 0x10
+/* 80283AE4 0027F744 4E 80 00 20 */ blr
+
+.global __GXUpdateBPMask
+__GXUpdateBPMask:
+/* 80283AE8 0027F748 4E 80 00 20 */ blr
+
+.global __GXSetIndirectMask
+__GXSetIndirectMask:
+/* 80283AEC 0027F74C 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283AF0 0027F750 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80283AF4 0027F754 38 A0 00 61 */ li r5, 0x61
+/* 80283AF8 0027F758 38 00 00 00 */ li r0, 0
+/* 80283AFC 0027F75C 80 C7 01 74 */ lwz r6, 0x174(r7)
+/* 80283B00 0027F760 50 66 06 3E */ rlwimi r6, r3, 0, 0x18, 0x1f
+/* 80283B04 0027F764 90 C7 01 74 */ stw r6, 0x174(r7)
+/* 80283B08 0027F768 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80283B0C 0027F76C 80 67 01 74 */ lwz r3, 0x174(r7)
+/* 80283B10 0027F770 90 64 80 00 */ stw r3, -0x8000(r4)
+/* 80283B14 0027F774 B0 07 00 02 */ sth r0, 2(r7)
+/* 80283B18 0027F778 4E 80 00 20 */ blr
+
+.global __GXFlushTextureState
+__GXFlushTextureState:
+/* 80283B1C 0027F77C 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80283B20 0027F780 38 00 00 61 */ li r0, 0x61
+/* 80283B24 0027F784 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 80283B28 0027F788 38 00 00 00 */ li r0, 0
+/* 80283B2C 0027F78C 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283B30 0027F790 80 65 01 74 */ lwz r3, 0x174(r5)
+/* 80283B34 0027F794 90 64 80 00 */ stw r3, -0x8000(r4)
+/* 80283B38 0027F798 B0 05 00 02 */ sth r0, 2(r5)
+/* 80283B3C 0027F79C 4E 80 00 20 */ blr
diff --git a/asm/SDK/GX/GXFrameBuf.s b/asm/SDK/GX/GXFrameBuf.s
index 77b5434..061587d 100644
--- a/asm/SDK/GX/GXFrameBuf.s
+++ b/asm/SDK/GX/GXFrameBuf.s
@@ -106,7 +106,7 @@ lbl_802815A0:
/* 802815C4 0027D224 38 E1 00 0C */ addi r7, r1, 0xc
/* 802815C8 0027D228 90 1D 00 00 */ stw r0, 0(r29)
/* 802815CC 0027D22C 39 01 00 08 */ addi r8, r1, 8
-/* 802815D0 0027D230 48 00 10 41 */ bl func_80282610
+/* 802815D0 0027D230 48 00 10 41 */ bl __GetImageTileCount
/* 802815D4 0027D234 38 00 00 00 */ li r0, 0
/* 802815D8 0027D238 38 60 00 00 */ li r3, 0
/* 802815DC 0027D23C 90 1C 02 48 */ stw r0, 0x248(r28)
diff --git a/asm/SDK/GX/GXGeometry.s b/asm/SDK/GX/GXGeometry.s
index 7c343d3..ced9906 100644
--- a/asm/SDK/GX/GXGeometry.s
+++ b/asm/SDK/GX/GXGeometry.s
@@ -13,11 +13,11 @@ __GXSetDirtyState:
/* 80280EE8 0027CB48 83 DF 05 FC */ lwz r30, 0x5fc(r31)
/* 80280EEC 0027CB4C 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
/* 80280EF0 0027CB50 41 82 00 08 */ beq lbl_80280EF8
-/* 80280EF4 0027CB54 48 00 1F B5 */ bl func_80282EA8
+/* 80280EF4 0027CB54 48 00 1F B5 */ bl __GXSetSUTexRegs
lbl_80280EF8:
/* 80280EF8 0027CB58 57 C0 07 BD */ rlwinm. r0, r30, 0, 0x1e, 0x1e
/* 80280EFC 0027CB5C 41 82 00 08 */ beq lbl_80280F04
-/* 80280F00 0027CB60 48 00 2B E9 */ bl func_80283AE8
+/* 80280F00 0027CB60 48 00 2B E9 */ bl __GXUpdateBPMask
lbl_80280F04:
/* 80280F04 0027CB64 57 C0 07 7B */ rlwinm. r0, r30, 0, 0x1d, 0x1d
/* 80280F08 0027CB68 41 82 00 24 */ beq lbl_80280F2C
diff --git a/asm/SDK/GX/GXInit.s b/asm/SDK/GX/GXInit.s
index 2fcd736..5705adc 100644
--- a/asm/SDK/GX/GXInit.s
+++ b/asm/SDK/GX/GXInit.s
@@ -12,10 +12,10 @@ __GXDefaultTexRegionCallback:
/* 8027D638 00279298 7C 9E 23 78 */ mr r30, r4
/* 8027D63C 0027929C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8027D640 002792A0 7C 7D 1B 78 */ mr r29, r3
-/* 8027D644 002792A4 48 00 54 01 */ bl func_80282A44
+/* 8027D644 002792A4 48 00 54 01 */ bl GXGetTexObjFmt
/* 8027D648 002792A8 7C 7F 1B 78 */ mr r31, r3
/* 8027D64C 002792AC 7F A3 EB 78 */ mr r3, r29
-/* 8027D650 002792B0 48 00 53 FD */ bl func_80282A4C
+/* 8027D650 002792B0 48 00 53 FD */ bl GXGetTexObjMipMap
/* 8027D654 002792B4 57 C0 E8 04 */ slwi r0, r30, 0x1d
/* 8027D658 002792B8 57 C4 0F FE */ srwi r4, r30, 0x1f
/* 8027D65C 002792BC 7C 04 00 50 */ subf r0, r4, r0
@@ -474,7 +474,7 @@ lbl_8027DBD4:
/* 8027DCF4 00279954 80 04 00 F8 */ lwz r0, 0x800000F8@l(r4)
/* 8027DCF8 00279958 7C 03 00 16 */ mulhwu r0, r3, r0
/* 8027DCFC 0027995C 54 1A D9 7E */ srwi r26, r0, 5
-/* 8027DD00 00279960 48 00 5E 1D */ bl func_80283B1C
+/* 8027DD00 00279960 48 00 5E 1D */ bl __GXFlushTextureState
/* 8027DD04 00279964 57 40 AA FE */ srwi r0, r26, 0xb
/* 8027DD08 00279968 3F A0 CC 01 */ lis r29, 0xCC008000@ha
/* 8027DD0C 0027996C 3B 80 00 61 */ li r28, 0x61
@@ -482,7 +482,7 @@ lbl_8027DBD4:
/* 8027DD14 00279974 9B 9D 80 00 */ stb r28, 0xCC008000@l(r29)
/* 8027DD18 00279978 60 00 04 00 */ ori r0, r0, 0x400
/* 8027DD1C 0027997C 90 1D 80 00 */ stw r0, -0x8000(r29)
-/* 8027DD20 00279980 48 00 5D FD */ bl func_80283B1C
+/* 8027DD20 00279980 48 00 5D FD */ bl __GXFlushTextureState
/* 8027DD24 00279984 3C 60 3E 10 */ lis r3, 0x3E0F83E1@ha
/* 8027DD28 00279988 9B 9D 80 00 */ stb r28, -0x8000(r29)
/* 8027DD2C 0027998C 38 03 83 E1 */ addi r0, r3, 0x3E0F83E1@l
@@ -505,21 +505,21 @@ lbl_8027DD60:
/* 8027DD6C 002799CC 38 80 00 00 */ li r4, 0
/* 8027DD70 002799D0 38 C0 00 00 */ li r6, 0
/* 8027DD74 002799D4 39 00 00 00 */ li r8, 0
-/* 8027DD78 002799D8 48 00 4F 5D */ bl func_80282CD4
+/* 8027DD78 002799D8 48 00 4F 5D */ bl GXInitTexCacheRegion
/* 8027DD7C 002799DC 80 BC 00 40 */ lwz r5, 0x40(r28)
/* 8027DD80 002799E0 7F 63 DB 78 */ mr r3, r27
/* 8027DD84 002799E4 80 FC 00 60 */ lwz r7, 0x60(r28)
/* 8027DD88 002799E8 38 80 00 00 */ li r4, 0
/* 8027DD8C 002799EC 38 C0 00 00 */ li r6, 0
/* 8027DD90 002799F0 39 00 00 00 */ li r8, 0
-/* 8027DD94 002799F4 48 00 4F 41 */ bl func_80282CD4
+/* 8027DD94 002799F4 48 00 4F 41 */ bl GXInitTexCacheRegion
/* 8027DD98 002799F8 80 BC 00 80 */ lwz r5, 0x80(r28)
/* 8027DD9C 002799FC 7F C3 F3 78 */ mr r3, r30
/* 8027DDA0 00279A00 80 FC 00 A0 */ lwz r7, 0xa0(r28)
/* 8027DDA4 00279A04 38 80 00 01 */ li r4, 1
/* 8027DDA8 00279A08 38 C0 00 00 */ li r6, 0
/* 8027DDAC 00279A0C 39 00 00 00 */ li r8, 0
-/* 8027DDB0 00279A10 48 00 4F 25 */ bl func_80282CD4
+/* 8027DDB0 00279A10 48 00 4F 25 */ bl GXInitTexCacheRegion
/* 8027DDB4 00279A14 3B 5A 00 01 */ addi r26, r26, 1
/* 8027DDB8 00279A18 3B BD 00 10 */ addi r29, r29, 0x10
/* 8027DDBC 00279A1C 28 1A 00 08 */ cmplwi r26, 8
@@ -534,7 +534,7 @@ lbl_8027DDDC:
/* 8027DDDC 00279A3C 7F A3 EB 78 */ mr r3, r29
/* 8027DDE0 00279A40 7F 84 E3 78 */ mr r4, r28
/* 8027DDE4 00279A44 38 A0 00 10 */ li r5, 0x10
-/* 8027DDE8 00279A48 48 00 4F A1 */ bl func_80282D88
+/* 8027DDE8 00279A48 48 00 4F A1 */ bl GXInitTlutRegion
/* 8027DDEC 00279A4C 3B 7B 00 01 */ addi r27, r27, 1
/* 8027DDF0 00279A50 3B BD 00 10 */ addi r29, r29, 0x10
/* 8027DDF4 00279A54 28 1B 00 10 */ cmplwi r27, 0x10
@@ -549,7 +549,7 @@ lbl_8027DE0C:
/* 8027DE14 00279A74 54 00 20 36 */ slwi r0, r0, 4
/* 8027DE18 00279A78 38 A0 00 40 */ li r5, 0x40
/* 8027DE1C 00279A7C 7C 7D 02 14 */ add r3, r29, r0
-/* 8027DE20 00279A80 48 00 4F 69 */ bl func_80282D88
+/* 8027DE20 00279A80 48 00 4F 69 */ bl GXInitTlutRegion
/* 8027DE24 00279A84 3B 7B 00 01 */ addi r27, r27, 1
/* 8027DE28 00279A88 3F 9C 00 01 */ addis r28, r28, 1
/* 8027DE2C 00279A8C 28 1B 00 04 */ cmplwi r27, 4
@@ -584,9 +584,9 @@ lbl_8027DE0C:
/* 8027DEA0 00279B00 90 89 80 00 */ stw r4, -0x8000(r9)
/* 8027DEA4 00279B04 98 C9 80 00 */ stb r6, -0x8000(r9)
/* 8027DEA8 00279B08 90 09 80 00 */ stw r0, -0x8000(r9)
-/* 8027DEAC 00279B0C 48 00 5C 41 */ bl func_80283AEC
+/* 8027DEAC 00279B0C 48 00 5C 41 */ bl __GXSetIndirectMask
/* 8027DEB0 00279B10 38 60 00 02 */ li r3, 2
-/* 8027DEB4 00279B14 48 00 51 5D */ bl func_80283010
+/* 8027DEB4 00279B14 48 00 51 5D */ bl __GXSetTmemConfig
/* 8027DEB8 00279B18 48 00 00 25 */ bl __GXInitGX
/* 8027DEBC 00279B1C 3C 60 80 51 */ lis r3, lbl_80515930@ha
/* 8027DEC0 00279B20 39 61 00 20 */ addi r11, r1, 0x20
@@ -877,13 +877,13 @@ lbl_8027E0E0:
/* 8027E304 00279F64 38 60 00 05 */ li r3, 5
/* 8027E308 00279F68 90 01 00 0C */ stw r0, 0xc(r1)
/* 8027E30C 00279F6C 48 00 41 65 */ bl GXSetChanMatColor
-/* 8027E310 00279F70 48 00 4A 99 */ bl func_80282DA8
+/* 8027E310 00279F70 48 00 4A 99 */ bl GXInvalidateTexAll
/* 8027E314 00279F74 3C 60 80 28 */ lis r3, __GXDefaultTexRegionCallback@ha
/* 8027E318 00279F78 38 63 D6 24 */ addi r3, r3, __GXDefaultTexRegionCallback@l
-/* 8027E31C 00279F7C 48 00 4A D5 */ bl func_80282DF0
+/* 8027E31C 00279F7C 48 00 4A D5 */ bl GXSetTexRegionCallback
/* 8027E320 00279F80 3C 60 80 28 */ lis r3, __GXDefaultTlutRegionCallback@ha
/* 8027E324 00279F84 38 63 D7 18 */ addi r3, r3, __GXDefaultTlutRegionCallback@l
-/* 8027E328 00279F88 48 00 4A DD */ bl func_80282E04
+/* 8027E328 00279F88 48 00 4A DD */ bl GXSetTlutRegionCallback
/* 8027E32C 00279F8C 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E330 00279F90 38 9E 00 60 */ addi r4, r30, 0x60
/* 8027E334 00279F94 38 A0 00 04 */ li r5, 4
@@ -892,138 +892,138 @@ lbl_8027E0E0:
/* 8027E340 00279FA0 39 00 00 00 */ li r8, 0
/* 8027E344 00279FA4 39 20 00 00 */ li r9, 0
/* 8027E348 00279FA8 39 40 00 00 */ li r10, 0
-/* 8027E34C 00279FAC 48 00 43 85 */ bl func_802826D0
+/* 8027E34C 00279FAC 48 00 43 85 */ bl GXInitTexObj
/* 8027E350 00279FB0 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E354 00279FB4 38 80 00 00 */ li r4, 0
-/* 8027E358 00279FB8 48 00 48 6D */ bl func_80282BC4
+/* 8027E358 00279FB8 48 00 48 6D */ bl GXLoadTexObj
/* 8027E35C 00279FBC 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E360 00279FC0 38 80 00 01 */ li r4, 1
-/* 8027E364 00279FC4 48 00 48 61 */ bl func_80282BC4
+/* 8027E364 00279FC4 48 00 48 61 */ bl GXLoadTexObj
/* 8027E368 00279FC8 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E36C 00279FCC 38 80 00 02 */ li r4, 2
-/* 8027E370 00279FD0 48 00 48 55 */ bl func_80282BC4
+/* 8027E370 00279FD0 48 00 48 55 */ bl GXLoadTexObj
/* 8027E374 00279FD4 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E378 00279FD8 38 80 00 03 */ li r4, 3
-/* 8027E37C 00279FDC 48 00 48 49 */ bl func_80282BC4
+/* 8027E37C 00279FDC 48 00 48 49 */ bl GXLoadTexObj
/* 8027E380 00279FE0 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E384 00279FE4 38 80 00 04 */ li r4, 4
-/* 8027E388 00279FE8 48 00 48 3D */ bl func_80282BC4
+/* 8027E388 00279FE8 48 00 48 3D */ bl GXLoadTexObj
/* 8027E38C 00279FEC 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E390 00279FF0 38 80 00 05 */ li r4, 5
-/* 8027E394 00279FF4 48 00 48 31 */ bl func_80282BC4
+/* 8027E394 00279FF4 48 00 48 31 */ bl GXLoadTexObj
/* 8027E398 00279FF8 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E39C 00279FFC 38 80 00 06 */ li r4, 6
-/* 8027E3A0 0027A000 48 00 48 25 */ bl func_80282BC4
+/* 8027E3A0 0027A000 48 00 48 25 */ bl GXLoadTexObj
/* 8027E3A4 0027A004 38 61 00 28 */ addi r3, r1, 0x28
/* 8027E3A8 0027A008 38 80 00 07 */ li r4, 7
-/* 8027E3AC 0027A00C 48 00 48 19 */ bl func_80282BC4
+/* 8027E3AC 0027A00C 48 00 48 19 */ bl GXLoadTexObj
/* 8027E3B0 0027A010 38 60 00 00 */ li r3, 0
/* 8027E3B4 0027A014 38 80 00 00 */ li r4, 0
/* 8027E3B8 0027A018 38 A0 00 00 */ li r5, 0
/* 8027E3BC 0027A01C 38 C0 00 04 */ li r6, 4
-/* 8027E3C0 0027A020 48 00 5C 81 */ bl func_80284040
+/* 8027E3C0 0027A020 48 00 5C 81 */ bl GXSetTevOrder
/* 8027E3C4 0027A024 38 60 00 01 */ li r3, 1
/* 8027E3C8 0027A028 38 80 00 01 */ li r4, 1
/* 8027E3CC 0027A02C 38 A0 00 01 */ li r5, 1
/* 8027E3D0 0027A030 38 C0 00 04 */ li r6, 4
-/* 8027E3D4 0027A034 48 00 5C 6D */ bl func_80284040
+/* 8027E3D4 0027A034 48 00 5C 6D */ bl GXSetTevOrder
/* 8027E3D8 0027A038 38 60 00 02 */ li r3, 2
/* 8027E3DC 0027A03C 38 80 00 02 */ li r4, 2
/* 8027E3E0 0027A040 38 A0 00 02 */ li r5, 2
/* 8027E3E4 0027A044 38 C0 00 04 */ li r6, 4
-/* 8027E3E8 0027A048 48 00 5C 59 */ bl func_80284040
+/* 8027E3E8 0027A048 48 00 5C 59 */ bl GXSetTevOrder
/* 8027E3EC 0027A04C 38 60 00 03 */ li r3, 3
/* 8027E3F0 0027A050 38 80 00 03 */ li r4, 3
/* 8027E3F4 0027A054 38 A0 00 03 */ li r5, 3
/* 8027E3F8 0027A058 38 C0 00 04 */ li r6, 4
-/* 8027E3FC 0027A05C 48 00 5C 45 */ bl func_80284040
+/* 8027E3FC 0027A05C 48 00 5C 45 */ bl GXSetTevOrder
/* 8027E400 0027A060 38 60 00 04 */ li r3, 4
/* 8027E404 0027A064 38 80 00 04 */ li r4, 4
/* 8027E408 0027A068 38 A0 00 04 */ li r5, 4
/* 8027E40C 0027A06C 38 C0 00 04 */ li r6, 4
-/* 8027E410 0027A070 48 00 5C 31 */ bl func_80284040
+/* 8027E410 0027A070 48 00 5C 31 */ bl GXSetTevOrder
/* 8027E414 0027A074 38 60 00 05 */ li r3, 5
/* 8027E418 0027A078 38 80 00 05 */ li r4, 5
/* 8027E41C 0027A07C 38 A0 00 05 */ li r5, 5
/* 8027E420 0027A080 38 C0 00 04 */ li r6, 4
-/* 8027E424 0027A084 48 00 5C 1D */ bl func_80284040
+/* 8027E424 0027A084 48 00 5C 1D */ bl GXSetTevOrder
/* 8027E428 0027A088 38 60 00 06 */ li r3, 6
/* 8027E42C 0027A08C 38 80 00 06 */ li r4, 6
/* 8027E430 0027A090 38 A0 00 06 */ li r5, 6
/* 8027E434 0027A094 38 C0 00 04 */ li r6, 4
-/* 8027E438 0027A098 48 00 5C 09 */ bl func_80284040
+/* 8027E438 0027A098 48 00 5C 09 */ bl GXSetTevOrder
/* 8027E43C 0027A09C 38 60 00 07 */ li r3, 7
/* 8027E440 0027A0A0 38 80 00 07 */ li r4, 7
/* 8027E444 0027A0A4 38 A0 00 07 */ li r5, 7
/* 8027E448 0027A0A8 38 C0 00 04 */ li r6, 4
-/* 8027E44C 0027A0AC 48 00 5B F5 */ bl func_80284040
+/* 8027E44C 0027A0AC 48 00 5B F5 */ bl GXSetTevOrder
/* 8027E450 0027A0B0 38 60 00 08 */ li r3, 8
/* 8027E454 0027A0B4 38 80 00 FF */ li r4, 0xff
/* 8027E458 0027A0B8 38 A0 00 FF */ li r5, 0xff
/* 8027E45C 0027A0BC 38 C0 00 FF */ li r6, 0xff
-/* 8027E460 0027A0C0 48 00 5B E1 */ bl func_80284040
+/* 8027E460 0027A0C0 48 00 5B E1 */ bl GXSetTevOrder
/* 8027E464 0027A0C4 38 60 00 09 */ li r3, 9
/* 8027E468 0027A0C8 38 80 00 FF */ li r4, 0xff
/* 8027E46C 0027A0CC 38 A0 00 FF */ li r5, 0xff
/* 8027E470 0027A0D0 38 C0 00 FF */ li r6, 0xff
-/* 8027E474 0027A0D4 48 00 5B CD */ bl func_80284040
+/* 8027E474 0027A0D4 48 00 5B CD */ bl GXSetTevOrder
/* 8027E478 0027A0D8 38 60 00 0A */ li r3, 0xa
/* 8027E47C 0027A0DC 38 80 00 FF */ li r4, 0xff
/* 8027E480 0027A0E0 38 A0 00 FF */ li r5, 0xff
/* 8027E484 0027A0E4 38 C0 00 FF */ li r6, 0xff
-/* 8027E488 0027A0E8 48 00 5B B9 */ bl func_80284040
+/* 8027E488 0027A0E8 48 00 5B B9 */ bl GXSetTevOrder
/* 8027E48C 0027A0EC 38 60 00 0B */ li r3, 0xb
/* 8027E490 0027A0F0 38 80 00 FF */ li r4, 0xff
/* 8027E494 0027A0F4 38 A0 00 FF */ li r5, 0xff
/* 8027E498 0027A0F8 38 C0 00 FF */ li r6, 0xff
-/* 8027E49C 0027A0FC 48 00 5B A5 */ bl func_80284040
+/* 8027E49C 0027A0FC 48 00 5B A5 */ bl GXSetTevOrder
/* 8027E4A0 0027A100 38 60 00 0C */ li r3, 0xc
/* 8027E4A4 0027A104 38 80 00 FF */ li r4, 0xff
/* 8027E4A8 0027A108 38 A0 00 FF */ li r5, 0xff
/* 8027E4AC 0027A10C 38 C0 00 FF */ li r6, 0xff
-/* 8027E4B0 0027A110 48 00 5B 91 */ bl func_80284040
+/* 8027E4B0 0027A110 48 00 5B 91 */ bl GXSetTevOrder
/* 8027E4B4 0027A114 38 60 00 0D */ li r3, 0xd
/* 8027E4B8 0027A118 38 80 00 FF */ li r4, 0xff
/* 8027E4BC 0027A11C 38 A0 00 FF */ li r5, 0xff
/* 8027E4C0 0027A120 38 C0 00 FF */ li r6, 0xff
-/* 8027E4C4 0027A124 48 00 5B 7D */ bl func_80284040
+/* 8027E4C4 0027A124 48 00 5B 7D */ bl GXSetTevOrder
/* 8027E4C8 0027A128 38 60 00 0E */ li r3, 0xe
/* 8027E4CC 0027A12C 38 80 00 FF */ li r4, 0xff
/* 8027E4D0 0027A130 38 A0 00 FF */ li r5, 0xff
/* 8027E4D4 0027A134 38 C0 00 FF */ li r6, 0xff
-/* 8027E4D8 0027A138 48 00 5B 69 */ bl func_80284040
+/* 8027E4D8 0027A138 48 00 5B 69 */ bl GXSetTevOrder
/* 8027E4DC 0027A13C 38 60 00 0F */ li r3, 0xf
/* 8027E4E0 0027A140 38 80 00 FF */ li r4, 0xff
/* 8027E4E4 0027A144 38 A0 00 FF */ li r5, 0xff
/* 8027E4E8 0027A148 38 C0 00 FF */ li r6, 0xff
-/* 8027E4EC 0027A14C 48 00 5B 55 */ bl func_80284040
+/* 8027E4EC 0027A14C 48 00 5B 55 */ bl GXSetTevOrder
/* 8027E4F0 0027A150 38 60 00 01 */ li r3, 1
-/* 8027E4F4 0027A154 48 00 5C A9 */ bl func_8028419C
+/* 8027E4F4 0027A154 48 00 5C A9 */ bl GXSetNumTevStages
/* 8027E4F8 0027A158 38 60 00 00 */ li r3, 0
/* 8027E4FC 0027A15C 38 80 00 03 */ li r4, 3
-/* 8027E500 0027A160 48 00 56 41 */ bl func_80283B40
+/* 8027E500 0027A160 48 00 56 41 */ bl GXSetTevOp
/* 8027E504 0027A164 38 60 00 07 */ li r3, 7
/* 8027E508 0027A168 38 80 00 00 */ li r4, 0
/* 8027E50C 0027A16C 38 A0 00 00 */ li r5, 0
/* 8027E510 0027A170 38 C0 00 07 */ li r6, 7
/* 8027E514 0027A174 38 E0 00 00 */ li r7, 0
-/* 8027E518 0027A178 48 00 5A 65 */ bl func_80283F7C
+/* 8027E518 0027A178 48 00 5A 65 */ bl GXSetAlphaCompare
/* 8027E51C 0027A17C 38 60 00 00 */ li r3, 0
/* 8027E520 0027A180 38 80 00 11 */ li r4, 0x11
/* 8027E524 0027A184 38 A0 00 00 */ li r5, 0
-/* 8027E528 0027A188 48 00 5A 8D */ bl func_80283FB4
+/* 8027E528 0027A188 48 00 5A 8D */ bl GXSetZTexture
/* 8027E52C 0027A18C 3B 80 00 00 */ li r28, 0
lbl_8027E530:
/* 8027E530 0027A190 7F 83 E3 78 */ mr r3, r28
/* 8027E534 0027A194 38 80 00 06 */ li r4, 6
-/* 8027E538 0027A198 48 00 58 ED */ bl func_80283E24
+/* 8027E538 0027A198 48 00 58 ED */ bl GXSetTevKColorSel
/* 8027E53C 0027A19C 7F 83 E3 78 */ mr r3, r28
/* 8027E540 0027A1A0 38 80 00 00 */ li r4, 0
-/* 8027E544 0027A1A4 48 00 59 31 */ bl func_80283E74
+/* 8027E544 0027A1A4 48 00 59 31 */ bl GXSetTevKAlphaSel
/* 8027E548 0027A1A8 7F 83 E3 78 */ mr r3, r28
/* 8027E54C 0027A1AC 38 80 00 00 */ li r4, 0
/* 8027E550 0027A1B0 38 A0 00 00 */ li r5, 0
-/* 8027E554 0027A1B4 48 00 59 71 */ bl func_80283EC4
+/* 8027E554 0027A1B4 48 00 59 71 */ bl GXSetTevSwapMode
/* 8027E558 0027A1B8 3B 9C 00 01 */ addi r28, r28, 1
/* 8027E55C 0027A1BC 28 1C 00 10 */ cmplwi r28, 0x10
/* 8027E560 0027A1C0 41 80 FF D0 */ blt lbl_8027E530
@@ -1032,50 +1032,50 @@ lbl_8027E530:
/* 8027E56C 0027A1CC 38 A0 00 01 */ li r5, 1
/* 8027E570 0027A1D0 38 C0 00 02 */ li r6, 2
/* 8027E574 0027A1D4 38 E0 00 03 */ li r7, 3
-/* 8027E578 0027A1D8 48 00 59 89 */ bl func_80283F00
+/* 8027E578 0027A1D8 48 00 59 89 */ bl GXSetTevSwapModeTable
/* 8027E57C 0027A1DC 38 60 00 01 */ li r3, 1
/* 8027E580 0027A1E0 38 80 00 00 */ li r4, 0
/* 8027E584 0027A1E4 38 A0 00 00 */ li r5, 0
/* 8027E588 0027A1E8 38 C0 00 00 */ li r6, 0
/* 8027E58C 0027A1EC 38 E0 00 03 */ li r7, 3
-/* 8027E590 0027A1F0 48 00 59 71 */ bl func_80283F00
+/* 8027E590 0027A1F0 48 00 59 71 */ bl GXSetTevSwapModeTable
/* 8027E594 0027A1F4 38 60 00 02 */ li r3, 2
/* 8027E598 0027A1F8 38 80 00 01 */ li r4, 1
/* 8027E59C 0027A1FC 38 A0 00 01 */ li r5, 1
/* 8027E5A0 0027A200 38 C0 00 01 */ li r6, 1
/* 8027E5A4 0027A204 38 E0 00 03 */ li r7, 3
-/* 8027E5A8 0027A208 48 00 59 59 */ bl func_80283F00
+/* 8027E5A8 0027A208 48 00 59 59 */ bl GXSetTevSwapModeTable
/* 8027E5AC 0027A20C 38 60 00 03 */ li r3, 3
/* 8027E5B0 0027A210 38 80 00 02 */ li r4, 2
/* 8027E5B4 0027A214 38 A0 00 02 */ li r5, 2
/* 8027E5B8 0027A218 38 C0 00 02 */ li r6, 2
/* 8027E5BC 0027A21C 38 E0 00 03 */ li r7, 3
-/* 8027E5C0 0027A220 48 00 59 41 */ bl func_80283F00
+/* 8027E5C0 0027A220 48 00 59 41 */ bl GXSetTevSwapModeTable
/* 8027E5C4 0027A224 3B 80 00 00 */ li r28, 0
lbl_8027E5C8:
/* 8027E5C8 0027A228 7F 83 E3 78 */ mr r3, r28
-/* 8027E5CC 0027A22C 48 00 51 45 */ bl func_80283710
+/* 8027E5CC 0027A22C 48 00 51 45 */ bl GXSetTevDirect
/* 8027E5D0 0027A230 3B 9C 00 01 */ addi r28, r28, 1
/* 8027E5D4 0027A234 28 1C 00 10 */ cmplwi r28, 0x10
/* 8027E5D8 0027A238 41 80 FF F0 */ blt lbl_8027E5C8
/* 8027E5DC 0027A23C 38 60 00 00 */ li r3, 0
-/* 8027E5E0 0027A240 48 00 51 11 */ bl func_802836F0
+/* 8027E5E0 0027A240 48 00 51 11 */ bl GXSetNumIndStages
/* 8027E5E4 0027A244 38 60 00 00 */ li r3, 0
/* 8027E5E8 0027A248 38 80 00 00 */ li r4, 0
/* 8027E5EC 0027A24C 38 A0 00 00 */ li r5, 0
-/* 8027E5F0 0027A250 48 00 4F 31 */ bl func_80283520
+/* 8027E5F0 0027A250 48 00 4F 31 */ bl GXSetIndTexCoordScale
/* 8027E5F4 0027A254 38 60 00 01 */ li r3, 1
/* 8027E5F8 0027A258 38 80 00 00 */ li r4, 0
/* 8027E5FC 0027A25C 38 A0 00 00 */ li r5, 0
-/* 8027E600 0027A260 48 00 4F 21 */ bl func_80283520
+/* 8027E600 0027A260 48 00 4F 21 */ bl GXSetIndTexCoordScale
/* 8027E604 0027A264 38 60 00 02 */ li r3, 2
/* 8027E608 0027A268 38 80 00 00 */ li r4, 0
/* 8027E60C 0027A26C 38 A0 00 00 */ li r5, 0
-/* 8027E610 0027A270 48 00 4F 11 */ bl func_80283520
+/* 8027E610 0027A270 48 00 4F 11 */ bl GXSetIndTexCoordScale
/* 8027E614 0027A274 38 60 00 03 */ li r3, 3
/* 8027E618 0027A278 38 80 00 00 */ li r4, 0
/* 8027E61C 0027A27C 38 A0 00 00 */ li r5, 0
-/* 8027E620 0027A280 48 00 4F 01 */ bl func_80283520
+/* 8027E620 0027A280 48 00 4F 01 */ bl GXSetIndTexCoordScale
/* 8027E624 0027A284 C0 42 A0 E4 */ lfs f2, lbl_806426E4-_SDA2_BASE_(r2)
/* 8027E628 0027A288 38 81 00 08 */ addi r4, r1, 8
/* 8027E62C 0027A28C 93 E1 00 08 */ stw r31, 8(r1)
@@ -1083,37 +1083,37 @@ lbl_8027E5C8:
/* 8027E634 0027A294 FC 80 10 90 */ fmr f4, f2
/* 8027E638 0027A298 C0 22 A0 D8 */ lfs f1, lbl_806426D8-_SDA2_BASE_(r2)
/* 8027E63C 0027A29C C0 62 A0 E8 */ lfs f3, lbl_806426E8-_SDA2_BASE_(r2)
-/* 8027E640 0027A2A0 48 00 5B 81 */ bl func_802841C0
+/* 8027E640 0027A2A0 48 00 5B 81 */ bl GXSetFog
/* 8027E644 0027A2A4 38 60 00 00 */ li r3, 0
/* 8027E648 0027A2A8 38 80 00 00 */ li r4, 0
/* 8027E64C 0027A2AC 38 A0 00 00 */ li r5, 0
-/* 8027E650 0027A2B0 48 00 5F 29 */ bl func_80284578
+/* 8027E650 0027A2B0 48 00 5F 29 */ bl GXSetFogRangeAdj
/* 8027E654 0027A2B4 38 60 00 00 */ li r3, 0
/* 8027E658 0027A2B8 38 80 00 04 */ li r4, 4
/* 8027E65C 0027A2BC 38 A0 00 05 */ li r5, 5
/* 8027E660 0027A2C0 38 C0 00 00 */ li r6, 0
-/* 8027E664 0027A2C4 48 00 60 39 */ bl func_8028469C
+/* 8027E664 0027A2C4 48 00 60 39 */ bl GXSetBlendMode
/* 8027E668 0027A2C8 38 60 00 01 */ li r3, 1
-/* 8027E66C 0027A2CC 48 00 60 81 */ bl func_802846EC
+/* 8027E66C 0027A2CC 48 00 60 81 */ bl GXSetColorUpdate
/* 8027E670 0027A2D0 38 60 00 01 */ li r3, 1
-/* 8027E674 0027A2D4 48 00 60 A5 */ bl func_80284718
+/* 8027E674 0027A2D4 48 00 60 A5 */ bl GXSetAlphaUpdate
/* 8027E678 0027A2D8 38 60 00 01 */ li r3, 1
/* 8027E67C 0027A2DC 38 80 00 03 */ li r4, 3
/* 8027E680 0027A2E0 38 A0 00 01 */ li r5, 1
-/* 8027E684 0027A2E4 48 00 60 C1 */ bl func_80284744
+/* 8027E684 0027A2E4 48 00 60 C1 */ bl GXSetZMode
/* 8027E688 0027A2E8 38 60 00 01 */ li r3, 1
-/* 8027E68C 0027A2EC 48 00 60 ED */ bl func_80284778
+/* 8027E68C 0027A2EC 48 00 60 ED */ bl GXSetZCompLoc
/* 8027E690 0027A2F0 38 60 00 01 */ li r3, 1
-/* 8027E694 0027A2F4 48 00 61 BD */ bl func_80284850
+/* 8027E694 0027A2F4 48 00 61 BD */ bl GXSetDither
/* 8027E698 0027A2F8 38 60 00 00 */ li r3, 0
/* 8027E69C 0027A2FC 38 80 00 00 */ li r4, 0
-/* 8027E6A0 0027A300 48 00 61 DD */ bl func_8028487C
+/* 8027E6A0 0027A300 48 00 61 DD */ bl GXSetDstAlpha
/* 8027E6A4 0027A304 38 60 00 00 */ li r3, 0
/* 8027E6A8 0027A308 38 80 00 00 */ li r4, 0
-/* 8027E6AC 0027A30C 48 00 60 FD */ bl func_802847A8
+/* 8027E6AC 0027A30C 48 00 60 FD */ bl GXSetPixelFmt
/* 8027E6B0 0027A310 38 60 00 01 */ li r3, 1
/* 8027E6B4 0027A314 38 80 00 01 */ li r4, 1
-/* 8027E6B8 0027A318 48 00 61 F5 */ bl func_802848AC
+/* 8027E6B8 0027A318 48 00 61 F5 */ bl GXSetFieldMask
/* 8027E6BC 0027A31C A0 1D 00 08 */ lhz r0, 8(r29)
/* 8027E6C0 0027A320 A0 7D 00 10 */ lhz r3, 0x10(r29)
/* 8027E6C4 0027A324 54 00 08 3C */ slwi r0, r0, 1
@@ -1125,7 +1125,7 @@ lbl_8027E6D8:
/* 8027E6D8 0027A338 38 80 00 00 */ li r4, 0
lbl_8027E6DC:
/* 8027E6DC 0027A33C 88 7D 00 18 */ lbz r3, 0x18(r29)
-/* 8027E6E0 0027A340 48 00 62 01 */ bl func_802848E0
+/* 8027E6E0 0027A340 48 00 62 01 */ bl GXSetFieldMode
/* 8027E6E4 0027A344 A0 BD 00 04 */ lhz r5, 4(r29)
/* 8027E6E8 0027A348 38 60 00 00 */ li r3, 0
/* 8027E6EC 0027A34C A0 DD 00 06 */ lhz r6, 6(r29)
diff --git a/asm/SDK/GX/GXPixel.s b/asm/SDK/GX/GXPixel.s
new file mode 100644
index 0000000..730cbd8
--- /dev/null
+++ b/asm/SDK/GX/GXPixel.s
@@ -0,0 +1,547 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global GXSetFog
+GXSetFog:
+/* 802841C0 0027FE20 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802841C4 0027FE24 7C 08 02 A6 */ mflr r0
+/* 802841C8 0027FE28 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802841CC 0027FE2C DB E1 00 30 */ stfd f31, 0x30(r1)
+/* 802841D0 0027FE30 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
+/* 802841D4 0027FE34 39 00 00 00 */ li r8, 0
+/* 802841D8 0027FE38 39 20 00 00 */ li r9, 0
+/* 802841DC 0027FE3C 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 802841E0 0027FE40 54 7F 07 7E */ clrlwi r31, r3, 0x1d
+/* 802841E4 0027FE44 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 802841E8 0027FE48 54 7E EF FF */ rlwinm. r30, r3, 0x1d, 0x1f, 0x1f
+/* 802841EC 0027FE4C 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 802841F0 0027FE50 7C 9D 23 78 */ mr r29, r4
+/* 802841F4 0027FE54 93 81 00 20 */ stw r28, 0x20(r1)
+/* 802841F8 0027FE58 41 82 00 4C */ beq lbl_80284244
+/* 802841FC 0027FE5C FC 04 18 00 */ fcmpu cr0, f4, f3
+/* 80284200 0027FE60 41 82 00 0C */ beq lbl_8028420C
+/* 80284204 0027FE64 FC 02 08 00 */ fcmpu cr0, f2, f1
+/* 80284208 0027FE68 40 82 00 14 */ bne lbl_8028421C
+lbl_8028420C:
+/* 8028420C 0027FE6C C0 02 A1 80 */ lfs f0, lbl_80642780-_SDA2_BASE_(r2)
+/* 80284210 0027FE70 D0 01 00 0C */ stfs f0, 0xc(r1)
+/* 80284214 0027FE74 D0 01 00 08 */ stfs f0, 8(r1)
+/* 80284218 0027FE78 48 00 01 1C */ b lbl_80284334
+lbl_8028421C:
+/* 8028421C 0027FE7C EC C2 08 28 */ fsubs f6, f2, f1
+/* 80284220 0027FE80 C0 A2 A1 84 */ lfs f5, lbl_80642784-_SDA2_BASE_(r2)
+/* 80284224 0027FE84 EC 44 18 28 */ fsubs f2, f4, f3
+/* 80284228 0027FE88 EC 01 18 28 */ fsubs f0, f1, f3
+/* 8028422C 0027FE8C EC 65 30 24 */ fdivs f3, f5, f6
+/* 80284230 0027FE90 EC 23 00 B2 */ fmuls f1, f3, f2
+/* 80284234 0027FE94 EC 03 00 32 */ fmuls f0, f3, f0
+/* 80284238 0027FE98 D0 21 00 0C */ stfs f1, 0xc(r1)
+/* 8028423C 0027FE9C D0 01 00 08 */ stfs f0, 8(r1)
+/* 80284240 0027FEA0 48 00 00 F4 */ b lbl_80284334
+lbl_80284244:
+/* 80284244 0027FEA4 FC 04 18 00 */ fcmpu cr0, f4, f3
+/* 80284248 0027FEA8 41 82 00 0C */ beq lbl_80284254
+/* 8028424C 0027FEAC FC 02 08 00 */ fcmpu cr0, f2, f1
+/* 80284250 0027FEB0 40 82 00 14 */ bne lbl_80284264
+lbl_80284254:
+/* 80284254 0027FEB4 C0 62 A1 80 */ lfs f3, lbl_80642780-_SDA2_BASE_(r2)
+/* 80284258 0027FEB8 C0 82 A1 88 */ lfs f4, lbl_80642788-_SDA2_BASE_(r2)
+/* 8028425C 0027FEBC FF E0 18 90 */ fmr f31, f3
+/* 80284260 0027FEC0 48 00 00 20 */ b lbl_80284280
+lbl_80284264:
+/* 80284264 0027FEC4 EC 04 18 28 */ fsubs f0, f4, f3
+/* 80284268 0027FEC8 EC 42 08 28 */ fsubs f2, f2, f1
+/* 8028426C 0027FECC EC 64 00 F2 */ fmuls f3, f4, f3
+/* 80284270 0027FED0 EC 84 00 24 */ fdivs f4, f4, f0
+/* 80284274 0027FED4 EC 00 00 B2 */ fmuls f0, f0, f2
+/* 80284278 0027FED8 EF E1 10 24 */ fdivs f31, f1, f2
+/* 8028427C 0027FEDC EC 63 00 24 */ fdivs f3, f3, f0
+lbl_80284280:
+/* 80284280 0027FEE0 C0 22 A1 88 */ lfs f1, lbl_80642788-_SDA2_BASE_(r2)
+/* 80284284 0027FEE4 3B 80 00 00 */ li r28, 0
+/* 80284288 0027FEE8 C8 02 A1 90 */ lfd f0, lbl_80642790-_SDA2_BASE_(r2)
+/* 8028428C 0027FEEC 48 00 00 0C */ b lbl_80284298
+lbl_80284290:
+/* 80284290 0027FEF0 EC 84 00 72 */ fmuls f4, f4, f1
+/* 80284294 0027FEF4 3B 9C 00 01 */ addi r28, r28, 1
+lbl_80284298:
+/* 80284298 0027FEF8 FC 04 00 40 */ fcmpo cr0, f4, f0
+/* 8028429C 0027FEFC 41 81 FF F4 */ bgt lbl_80284290
+/* 802842A0 0027FF00 C8 02 A1 A0 */ lfd f0, lbl_806427A0-_SDA2_BASE_(r2)
+/* 802842A4 0027FF04 C0 42 A1 98 */ lfs f2, lbl_80642798-_SDA2_BASE_(r2)
+/* 802842A8 0027FF08 C0 22 A1 80 */ lfs f1, lbl_80642780-_SDA2_BASE_(r2)
+/* 802842AC 0027FF0C 48 00 00 0C */ b lbl_802842B8
+lbl_802842B0:
+/* 802842B0 0027FF10 EC 84 00 B2 */ fmuls f4, f4, f2
+/* 802842B4 0027FF14 3B 9C FF FF */ addi r28, r28, -1
+lbl_802842B8:
+/* 802842B8 0027FF18 FC 04 08 40 */ fcmpo cr0, f4, f1
+/* 802842BC 0027FF1C 7C 00 00 26 */ mfcr r0
+/* 802842C0 0027FF20 54 00 17 FF */ rlwinm. r0, r0, 2, 0x1f, 0x1f
+/* 802842C4 0027FF24 41 82 00 0C */ beq lbl_802842D0
+/* 802842C8 0027FF28 FC 04 00 40 */ fcmpo cr0, f4, f0
+/* 802842CC 0027FF2C 41 80 FF E4 */ blt lbl_802842B0
+lbl_802842D0:
+/* 802842D0 0027FF30 38 1C 00 01 */ addi r0, r28, 1
+/* 802842D4 0027FF34 38 60 00 01 */ li r3, 1
+/* 802842D8 0027FF38 7C 63 00 30 */ slw r3, r3, r0
+/* 802842DC 0027FF3C C0 02 A1 A8 */ lfs f0, lbl_806427A8-_SDA2_BASE_(r2)
+/* 802842E0 0027FF40 3C 00 43 30 */ lis r0, 0x4330
+/* 802842E4 0027FF44 C8 42 A1 B0 */ lfd f2, lbl_806427B0-_SDA2_BASE_(r2)
+/* 802842E8 0027FF48 6C 63 80 00 */ xoris r3, r3, 0x8000
+/* 802842EC 0027FF4C 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802842F0 0027FF50 EC 20 01 32 */ fmuls f1, f0, f4
+/* 802842F4 0027FF54 90 61 00 14 */ stw r3, 0x14(r1)
+/* 802842F8 0027FF58 C8 01 00 10 */ lfd f0, 0x10(r1)
+/* 802842FC 0027FF5C EC 00 10 28 */ fsubs f0, f0, f2
+/* 80284300 0027FF60 EC 03 00 24 */ fdivs f0, f3, f0
+/* 80284304 0027FF64 D0 01 00 0C */ stfs f0, 0xc(r1)
+/* 80284308 0027FF68 4B F4 2C F9 */ bl __cvt_fp2unsigned
+/* 8028430C 0027FF6C 38 1C 00 01 */ addi r0, r28, 1
+/* 80284310 0027FF70 39 00 00 00 */ li r8, 0
+/* 80284314 0027FF74 50 68 02 3E */ rlwimi r8, r3, 0, 8, 0x1f
+/* 80284318 0027FF78 39 20 00 00 */ li r9, 0
+/* 8028431C 0027FF7C 50 09 06 FE */ rlwimi r9, r0, 0, 0x1b, 0x1f
+/* 80284320 0027FF80 38 60 00 EF */ li r3, 0xef
+/* 80284324 0027FF84 38 00 00 F0 */ li r0, 0xf0
+/* 80284328 0027FF88 D3 E1 00 08 */ stfs f31, 8(r1)
+/* 8028432C 0027FF8C 50 68 C0 0E */ rlwimi r8, r3, 0x18, 0, 7
+/* 80284330 0027FF90 50 09 C0 0E */ rlwimi r9, r0, 0x18, 0, 7
+lbl_80284334:
+/* 80284334 0027FF94 80 61 00 0C */ lwz r3, 0xc(r1)
+/* 80284338 0027FF98 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 8028433C 0027FF9C 38 A0 00 61 */ li r5, 0x61
+/* 80284340 0027FFA0 38 00 00 EE */ li r0, 0xee
+/* 80284344 0027FFA4 38 C0 00 00 */ li r6, 0
+/* 80284348 0027FFA8 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 8028434C 0027FFAC 50 66 A5 7E */ rlwimi r6, r3, 0x14, 0x15, 0x1f
+/* 80284350 0027FFB0 81 41 00 08 */ lwz r10, 8(r1)
+/* 80284354 0027FFB4 50 66 A3 68 */ rlwimi r6, r3, 0x14, 0xd, 0x14
+/* 80284358 0027FFB8 38 E0 00 00 */ li r7, 0
+/* 8028435C 0027FFBC 50 66 A3 18 */ rlwimi r6, r3, 0x14, 0xc, 0xc
+/* 80284360 0027FFC0 38 60 00 F1 */ li r3, 0xf1
+/* 80284364 0027FFC4 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
+/* 80284368 0027FFC8 51 47 A5 7E */ rlwimi r7, r10, 0x14, 0x15, 0x1f
+/* 8028436C 0027FFCC 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80284370 0027FFD0 51 47 A3 68 */ rlwimi r7, r10, 0x14, 0xd, 0x14
+/* 80284374 0027FFD4 51 47 A3 18 */ rlwimi r7, r10, 0x14, 0xc, 0xc
+/* 80284378 0027FFD8 80 1D 00 00 */ lwz r0, 0(r29)
+/* 8028437C 0027FFDC 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 80284380 0027FFE0 53 C7 A2 D6 */ rlwimi r7, r30, 0x14, 0xb, 0xb
+/* 80284384 0027FFE4 53 E7 AA 14 */ rlwimi r7, r31, 0x15, 8, 0xa
+/* 80284388 0027FFE8 38 C0 00 00 */ li r6, 0
+/* 8028438C 0027FFEC 91 04 80 00 */ stw r8, -0x8000(r4)
+/* 80284390 0027FFF0 50 67 C0 0E */ rlwimi r7, r3, 0x18, 0, 7
+/* 80284394 0027FFF4 50 06 C2 3E */ rlwimi r6, r0, 0x18, 8, 0x1f
+/* 80284398 0027FFF8 38 00 00 F2 */ li r0, 0xf2
+/* 8028439C 0027FFFC 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 802843A0 00280000 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
+/* 802843A4 00280004 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802843A8 00280008 38 00 00 00 */ li r0, 0
+/* 802843AC 0028000C 91 24 80 00 */ stw r9, -0x8000(r4)
+/* 802843B0 00280010 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 802843B4 00280014 90 E4 80 00 */ stw r7, -0x8000(r4)
+/* 802843B8 00280018 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 802843BC 0028001C 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 802843C0 00280020 B0 03 00 02 */ sth r0, 2(r3)
+/* 802843C4 00280024 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
+/* 802843C8 00280028 CB E1 00 30 */ lfd f31, 0x30(r1)
+/* 802843CC 0028002C 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 802843D0 00280030 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 802843D4 00280034 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 802843D8 00280038 83 81 00 20 */ lwz r28, 0x20(r1)
+/* 802843DC 0028003C 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802843E0 00280040 7C 08 03 A6 */ mtlr r0
+/* 802843E4 00280044 38 21 00 40 */ addi r1, r1, 0x40
+/* 802843E8 00280048 4E 80 00 20 */ blr
+
+.global GXSetFogColor
+GXSetFogColor:
+/* 802843EC 0028004C 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 802843F0 00280050 38 00 00 61 */ li r0, 0x61
+/* 802843F4 00280054 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 802843F8 00280058 3C A0 F2 00 */ lis r5, 0xf200
+/* 802843FC 0028005C 80 63 00 00 */ lwz r3, 0(r3)
+/* 80284400 00280060 38 00 00 00 */ li r0, 0
+/* 80284404 00280064 50 65 C2 3E */ rlwimi r5, r3, 0x18, 8, 0x1f
+/* 80284408 00280068 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 8028440C 0028006C 90 A4 80 00 */ stw r5, -0x8000(r4)
+/* 80284410 00280070 B0 03 00 02 */ sth r0, 2(r3)
+/* 80284414 00280074 4E 80 00 20 */ blr
+
+.global GXInitFogAdjTable
+GXInitFogAdjTable:
+/* 80284418 00280078 94 21 FF 80 */ stwu r1, -0x80(r1)
+/* 8028441C 0028007C 7C 08 02 A6 */ mflr r0
+/* 80284420 00280080 90 01 00 84 */ stw r0, 0x84(r1)
+/* 80284424 00280084 DB E1 00 70 */ stfd f31, 0x70(r1)
+/* 80284428 00280088 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0
+/* 8028442C 0028008C DB C1 00 60 */ stfd f30, 0x60(r1)
+/* 80284430 00280090 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0
+/* 80284434 00280094 DB A1 00 50 */ stfd f29, 0x50(r1)
+/* 80284438 00280098 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0
+/* 8028443C 0028009C DB 81 00 40 */ stfd f28, 0x40(r1)
+/* 80284440 002800A0 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0
+/* 80284444 002800A4 DB 61 00 30 */ stfd f27, 0x30(r1)
+/* 80284448 002800A8 F3 61 00 38 */ psq_st f27, 56(r1), 0, qr0
+/* 8028444C 002800AC DB 41 00 20 */ stfd f26, 0x20(r1)
+/* 80284450 002800B0 F3 41 00 28 */ psq_st f26, 40(r1), 0, qr0
+/* 80284454 002800B4 C8 22 A1 B8 */ lfd f1, lbl_806427B8-_SDA2_BASE_(r2)
+/* 80284458 002800B8 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8028445C 002800BC C0 05 00 3C */ lfs f0, 0x3c(r5)
+/* 80284460 002800C0 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80284464 002800C4 FC 01 00 00 */ fcmpu cr0, f1, f0
+/* 80284468 002800C8 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8028446C 002800CC 40 82 00 24 */ bne lbl_80284490
+/* 80284470 002800D0 C0 45 00 28 */ lfs f2, 0x28(r5)
+/* 80284474 002800D4 C0 02 A1 84 */ lfs f0, lbl_80642784-_SDA2_BASE_(r2)
+/* 80284478 002800D8 C0 25 00 2C */ lfs f1, 0x2c(r5)
+/* 8028447C 002800DC EC 42 00 28 */ fsubs f2, f2, f0
+/* 80284480 002800E0 C0 05 00 00 */ lfs f0, 0(r5)
+/* 80284484 002800E4 EC 21 10 24 */ fdivs f1, f1, f2
+/* 80284488 002800E8 EF 41 00 24 */ fdivs f26, f1, f0
+/* 8028448C 002800EC 48 00 00 18 */ b lbl_802844A4
+lbl_80284490:
+/* 80284490 002800F0 C0 42 A1 84 */ lfs f2, lbl_80642784-_SDA2_BASE_(r2)
+/* 80284494 002800F4 C0 25 00 00 */ lfs f1, 0(r5)
+/* 80284498 002800F8 C0 02 A1 C0 */ lfs f0, lbl_806427C0-_SDA2_BASE_(r2)
+/* 8028449C 002800FC EF 42 08 24 */ fdivs f26, f2, f1
+/* 802844A0 00280100 EC 20 06 B2 */ fmuls f1, f0, f26
+lbl_802844A4:
+/* 802844A4 00280104 3F E0 43 30 */ lis r31, 0x4330
+/* 802844A8 00280108 90 81 00 0C */ stw r4, 0xc(r1)
+/* 802844AC 0028010C CB 82 A1 C8 */ lfd f28, lbl_806427C8-_SDA2_BASE_(r2)
+/* 802844B0 00280110 EF A1 00 72 */ fmuls f29, f1, f1
+/* 802844B4 00280114 93 E1 00 08 */ stw r31, 8(r1)
+/* 802844B8 00280118 7C 7E 1B 78 */ mr r30, r3
+/* 802844BC 0028011C C0 02 A1 98 */ lfs f0, lbl_80642798-_SDA2_BASE_(r2)
+/* 802844C0 00280120 3B A0 00 00 */ li r29, 0
+/* 802844C4 00280124 C8 21 00 08 */ lfd f1, 8(r1)
+/* 802844C8 00280128 C3 C2 A1 84 */ lfs f30, lbl_80642784-_SDA2_BASE_(r2)
+/* 802844CC 0028012C EC 21 E0 28 */ fsubs f1, f1, f28
+/* 802844D0 00280130 C3 E2 A1 C4 */ lfs f31, lbl_806427C4-_SDA2_BASE_(r2)
+/* 802844D4 00280134 EF 60 08 24 */ fdivs f27, f0, f1
+lbl_802844D8:
+/* 802844D8 00280138 38 1D 00 01 */ addi r0, r29, 1
+/* 802844DC 0028013C 93 E1 00 08 */ stw r31, 8(r1)
+/* 802844E0 00280140 54 00 28 34 */ slwi r0, r0, 5
+/* 802844E4 00280144 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802844E8 00280148 C8 01 00 08 */ lfd f0, 8(r1)
+/* 802844EC 0028014C EC 00 E0 28 */ fsubs f0, f0, f28
+/* 802844F0 00280150 EC 00 06 F2 */ fmuls f0, f0, f27
+/* 802844F4 00280154 EC 00 06 B2 */ fmuls f0, f0, f26
+/* 802844F8 00280158 EC 00 00 32 */ fmuls f0, f0, f0
+/* 802844FC 0028015C EC 00 E8 24 */ fdivs f0, f0, f29
+/* 80284500 00280160 EC 3E 00 2A */ fadds f1, f30, f0
+/* 80284504 00280164 4B F5 03 31 */ bl sqrt
+/* 80284508 00280168 FC 00 08 18 */ frsp f0, f1
+/* 8028450C 0028016C EC 3F 00 32 */ fmuls f1, f31, f0
+/* 80284510 00280170 4B F4 2A F1 */ bl __cvt_fp2unsigned
+/* 80284514 00280174 3B BD 00 01 */ addi r29, r29, 1
+/* 80284518 00280178 54 60 05 3E */ clrlwi r0, r3, 0x14
+/* 8028451C 0028017C 28 1D 00 0A */ cmplwi r29, 0xa
+/* 80284520 00280180 B0 1E 00 00 */ sth r0, 0(r30)
+/* 80284524 00280184 3B DE 00 02 */ addi r30, r30, 2
+/* 80284528 00280188 41 80 FF B0 */ blt lbl_802844D8
+/* 8028452C 0028018C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0
+/* 80284530 00280190 CB E1 00 70 */ lfd f31, 0x70(r1)
+/* 80284534 00280194 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0
+/* 80284538 00280198 CB C1 00 60 */ lfd f30, 0x60(r1)
+/* 8028453C 0028019C E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0
+/* 80284540 002801A0 CB A1 00 50 */ lfd f29, 0x50(r1)
+/* 80284544 002801A4 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0
+/* 80284548 002801A8 CB 81 00 40 */ lfd f28, 0x40(r1)
+/* 8028454C 002801AC E3 61 00 38 */ psq_l f27, 56(r1), 0, qr0
+/* 80284550 002801B0 CB 61 00 30 */ lfd f27, 0x30(r1)
+/* 80284554 002801B4 E3 41 00 28 */ psq_l f26, 40(r1), 0, qr0
+/* 80284558 002801B8 CB 41 00 20 */ lfd f26, 0x20(r1)
+/* 8028455C 002801BC 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80284560 002801C0 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80284564 002801C4 80 01 00 84 */ lwz r0, 0x84(r1)
+/* 80284568 002801C8 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8028456C 002801CC 7C 08 03 A6 */ mtlr r0
+/* 80284570 002801D0 38 21 00 80 */ addi r1, r1, 0x80
+/* 80284574 002801D4 4E 80 00 20 */ blr
+
+.global GXSetFogRangeAdj
+GXSetFogRangeAdj:
+/* 80284578 002801D8 2C 03 00 00 */ cmpwi r3, 0
+/* 8028457C 002801DC 41 82 00 E8 */ beq lbl_80284664
+/* 80284580 002801E0 A1 85 00 00 */ lhz r12, 0(r5)
+/* 80284584 002801E4 39 60 00 00 */ li r11, 0
+/* 80284588 002801E8 A1 45 00 02 */ lhz r10, 2(r5)
+/* 8028458C 002801EC 3C C0 CC 01 */ lis r6, 0xCC008000@ha
+/* 80284590 002801F0 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
+/* 80284594 002801F4 38 00 00 61 */ li r0, 0x61
+/* 80284598 002801F8 7D 69 5B 78 */ mr r9, r11
+/* 8028459C 002801FC 98 06 80 00 */ stb r0, 0xCC008000@l(r6)
+/* 802845A0 00280200 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
+/* 802845A4 00280204 38 E0 00 E9 */ li r7, 0xe9
+/* 802845A8 00280208 7D 28 4B 78 */ mr r8, r9
+/* 802845AC 0028020C A1 85 00 04 */ lhz r12, 4(r5)
+/* 802845B0 00280210 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
+/* 802845B4 00280214 39 60 00 00 */ li r11, 0
+/* 802845B8 00280218 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
+/* 802845BC 0028021C 91 06 80 00 */ stw r8, -0x8000(r6)
+/* 802845C0 00280220 7D 69 5B 78 */ mr r9, r11
+/* 802845C4 00280224 A1 45 00 06 */ lhz r10, 6(r5)
+/* 802845C8 00280228 38 E0 00 EA */ li r7, 0xea
+/* 802845CC 0028022C 98 06 80 00 */ stb r0, -0x8000(r6)
+/* 802845D0 00280230 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
+/* 802845D4 00280234 A1 85 00 08 */ lhz r12, 8(r5)
+/* 802845D8 00280238 7D 28 4B 78 */ mr r8, r9
+/* 802845DC 0028023C 39 60 00 00 */ li r11, 0
+/* 802845E0 00280240 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
+/* 802845E4 00280244 A1 45 00 0A */ lhz r10, 0xa(r5)
+/* 802845E8 00280248 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
+/* 802845EC 0028024C 91 06 80 00 */ stw r8, -0x8000(r6)
+/* 802845F0 00280250 7D 69 5B 78 */ mr r9, r11
+/* 802845F4 00280254 38 E0 00 EB */ li r7, 0xeb
+/* 802845F8 00280258 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
+/* 802845FC 0028025C 98 06 80 00 */ stb r0, -0x8000(r6)
+/* 80284600 00280260 7D 28 4B 78 */ mr r8, r9
+/* 80284604 00280264 A1 85 00 0C */ lhz r12, 0xc(r5)
+/* 80284608 00280268 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
+/* 8028460C 0028026C 39 60 00 00 */ li r11, 0
+/* 80284610 00280270 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
+/* 80284614 00280274 91 06 80 00 */ stw r8, -0x8000(r6)
+/* 80284618 00280278 7D 69 5B 78 */ mr r9, r11
+/* 8028461C 0028027C A1 45 00 0E */ lhz r10, 0xe(r5)
+/* 80284620 00280280 38 E0 00 EC */ li r7, 0xec
+/* 80284624 00280284 98 06 80 00 */ stb r0, -0x8000(r6)
+/* 80284628 00280288 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
+/* 8028462C 0028028C A1 85 00 10 */ lhz r12, 0x10(r5)
+/* 80284630 00280290 7D 28 4B 78 */ mr r8, r9
+/* 80284634 00280294 39 60 00 00 */ li r11, 0
+/* 80284638 00280298 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
+/* 8028463C 0028029C A1 45 00 12 */ lhz r10, 0x12(r5)
+/* 80284640 002802A0 91 06 80 00 */ stw r8, -0x8000(r6)
+/* 80284644 002802A4 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
+/* 80284648 002802A8 7D 69 5B 78 */ mr r9, r11
+/* 8028464C 002802AC 38 E0 00 ED */ li r7, 0xed
+/* 80284650 002802B0 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
+/* 80284654 002802B4 98 06 80 00 */ stb r0, -0x8000(r6)
+/* 80284658 002802B8 7D 28 4B 78 */ mr r8, r9
+/* 8028465C 002802BC 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
+/* 80284660 002802C0 91 06 80 00 */ stw r8, -0x8000(r6)
+lbl_80284664:
+/* 80284664 002802C4 38 04 01 56 */ addi r0, r4, 0x156
+/* 80284668 002802C8 38 C0 00 00 */ li r6, 0
+/* 8028466C 002802CC 50 06 05 BE */ rlwimi r6, r0, 0, 0x16, 0x1f
+/* 80284670 002802D0 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80284674 002802D4 38 00 00 61 */ li r0, 0x61
+/* 80284678 002802D8 38 A0 00 E8 */ li r5, 0xe8
+/* 8028467C 002802DC 50 66 55 6A */ rlwimi r6, r3, 0xa, 0x15, 0x15
+/* 80284680 002802E0 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 80284684 002802E4 50 A6 C0 0E */ rlwimi r6, r5, 0x18, 0, 7
+/* 80284688 002802E8 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 8028468C 002802EC 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80284690 002802F0 38 00 00 00 */ li r0, 0
+/* 80284694 002802F4 B0 03 00 02 */ sth r0, 2(r3)
+/* 80284698 002802F8 4E 80 00 20 */ blr
+
+.global GXSetBlendMode
+GXSetBlendMode:
+/* 8028469C 002802FC 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802846A0 00280300 38 03 FF FD */ addi r0, r3, -3
+/* 802846A4 00280304 39 03 FF FE */ addi r8, r3, -2
+/* 802846A8 00280308 3C E0 CC 01 */ lis r7, 0xCC008000@ha
+/* 802846AC 0028030C 7C 00 00 34 */ cntlzw r0, r0
+/* 802846B0 00280310 81 2A 02 20 */ lwz r9, 0x220(r10)
+/* 802846B4 00280314 50 09 35 28 */ rlwimi r9, r0, 6, 0x14, 0x14
+/* 802846B8 00280318 7D 08 00 34 */ cntlzw r8, r8
+/* 802846BC 0028031C 38 00 00 61 */ li r0, 0x61
+/* 802846C0 00280320 98 07 80 00 */ stb r0, 0xCC008000@l(r7)
+/* 802846C4 00280324 50 69 07 FE */ rlwimi r9, r3, 0, 0x1f, 0x1f
+/* 802846C8 00280328 51 09 E7 BC */ rlwimi r9, r8, 0x1c, 0x1e, 0x1e
+/* 802846CC 0028032C 38 00 00 00 */ li r0, 0
+/* 802846D0 00280330 50 C9 64 26 */ rlwimi r9, r6, 0xc, 0x10, 0x13
+/* 802846D4 00280334 50 89 45 6E */ rlwimi r9, r4, 8, 0x15, 0x17
+/* 802846D8 00280338 50 A9 2E 34 */ rlwimi r9, r5, 5, 0x18, 0x1a
+/* 802846DC 0028033C 91 27 80 00 */ stw r9, -0x8000(r7)
+/* 802846E0 00280340 91 2A 02 20 */ stw r9, 0x220(r10)
+/* 802846E4 00280344 B0 0A 00 02 */ sth r0, 2(r10)
+/* 802846E8 00280348 4E 80 00 20 */ blr
+
+.global GXSetColorUpdate
+GXSetColorUpdate:
+/* 802846EC 0028034C 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802846F0 00280350 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 802846F4 00280354 38 A0 00 61 */ li r5, 0x61
+/* 802846F8 00280358 38 00 00 00 */ li r0, 0
+/* 802846FC 0028035C 80 C7 02 20 */ lwz r6, 0x220(r7)
+/* 80284700 00280360 50 66 1F 38 */ rlwimi r6, r3, 3, 0x1c, 0x1c
+/* 80284704 00280364 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80284708 00280368 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 8028470C 0028036C 90 C7 02 20 */ stw r6, 0x220(r7)
+/* 80284710 00280370 B0 07 00 02 */ sth r0, 2(r7)
+/* 80284714 00280374 4E 80 00 20 */ blr
+
+.global GXSetAlphaUpdate
+GXSetAlphaUpdate:
+/* 80284718 00280378 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
+/* 8028471C 0028037C 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80284720 00280380 38 A0 00 61 */ li r5, 0x61
+/* 80284724 00280384 38 00 00 00 */ li r0, 0
+/* 80284728 00280388 80 C7 02 20 */ lwz r6, 0x220(r7)
+/* 8028472C 0028038C 50 66 26 F6 */ rlwimi r6, r3, 4, 0x1b, 0x1b
+/* 80284730 00280390 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80284734 00280394 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80284738 00280398 90 C7 02 20 */ stw r6, 0x220(r7)
+/* 8028473C 0028039C B0 07 00 02 */ sth r0, 2(r7)
+/* 80284740 002803A0 4E 80 00 20 */ blr
+
+.global GXSetZMode
+GXSetZMode:
+/* 80284744 002803A4 81 22 A0 D0 */ lwz r9, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80284748 002803A8 3C C0 CC 01 */ lis r6, 0xCC008000@ha
+/* 8028474C 002803AC 38 E0 00 61 */ li r7, 0x61
+/* 80284750 002803B0 38 00 00 00 */ li r0, 0
+/* 80284754 002803B4 81 09 02 28 */ lwz r8, 0x228(r9)
+/* 80284758 002803B8 50 68 07 FE */ rlwimi r8, r3, 0, 0x1f, 0x1f
+/* 8028475C 002803BC 50 88 0F 3C */ rlwimi r8, r4, 1, 0x1c, 0x1e
+/* 80284760 002803C0 98 E6 80 00 */ stb r7, 0xCC008000@l(r6)
+/* 80284764 002803C4 50 A8 26 F6 */ rlwimi r8, r5, 4, 0x1b, 0x1b
+/* 80284768 002803C8 91 06 80 00 */ stw r8, -0x8000(r6)
+/* 8028476C 002803CC 91 09 02 28 */ stw r8, 0x228(r9)
+/* 80284770 002803D0 B0 09 00 02 */ sth r0, 2(r9)
+/* 80284774 002803D4 4E 80 00 20 */ blr
+
+.global GXSetZCompLoc
+GXSetZCompLoc:
+/* 80284778 002803D8 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
+/* 8028477C 002803DC 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80284780 002803E0 38 A0 00 61 */ li r5, 0x61
+/* 80284784 002803E4 38 00 00 00 */ li r0, 0
+/* 80284788 002803E8 80 C7 02 2C */ lwz r6, 0x22c(r7)
+/* 8028478C 002803EC 50 66 36 72 */ rlwimi r6, r3, 6, 0x19, 0x19
+/* 80284790 002803F0 90 C7 02 2C */ stw r6, 0x22c(r7)
+/* 80284794 002803F4 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80284798 002803F8 80 67 02 2C */ lwz r3, 0x22c(r7)
+/* 8028479C 002803FC 90 64 80 00 */ stw r3, -0x8000(r4)
+/* 802847A0 00280400 B0 07 00 02 */ sth r0, 2(r7)
+/* 802847A4 00280404 4E 80 00 20 */ blr
+
+.global GXSetPixelFmt
+GXSetPixelFmt:
+/* 802847A8 00280408 81 22 A0 D0 */ lwz r9, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802847AC 0028040C 3C C0 80 43 */ lis r6, lbl_80435948@ha
+/* 802847B0 00280410 54 67 10 3A */ slwi r7, r3, 2
+/* 802847B4 00280414 38 C6 59 48 */ addi r6, r6, lbl_80435948@l
+/* 802847B8 00280418 81 09 02 2C */ lwz r8, 0x22c(r9)
+/* 802847BC 0028041C 7C 06 38 2E */ lwzx r0, r6, r7
+/* 802847C0 00280420 7D 05 43 78 */ mr r5, r8
+/* 802847C4 00280424 50 05 07 7E */ rlwimi r5, r0, 0, 0x1d, 0x1f
+/* 802847C8 00280428 50 85 1E B8 */ rlwimi r5, r4, 3, 0x1a, 0x1c
+/* 802847CC 0028042C 7C 08 28 40 */ cmplw r8, r5
+/* 802847D0 00280430 90 A9 02 2C */ stw r5, 0x22c(r9)
+/* 802847D4 00280434 41 82 00 38 */ beq lbl_8028480C
+/* 802847D8 00280438 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 802847DC 0028043C 38 00 00 61 */ li r0, 0x61
+/* 802847E0 00280440 98 05 80 00 */ stb r0, 0xCC008000@l(r5)
+/* 802847E4 00280444 38 03 FF FE */ addi r0, r3, -2
+/* 802847E8 00280448 7C 04 00 34 */ cntlzw r4, r0
+/* 802847EC 0028044C 80 09 02 2C */ lwz r0, 0x22c(r9)
+/* 802847F0 00280450 90 05 80 00 */ stw r0, -0x8000(r5)
+/* 802847F4 00280454 80 09 02 54 */ lwz r0, 0x254(r9)
+/* 802847F8 00280458 50 80 25 AC */ rlwimi r0, r4, 4, 0x16, 0x16
+/* 802847FC 0028045C 90 09 02 54 */ stw r0, 0x254(r9)
+/* 80284800 00280460 80 09 05 FC */ lwz r0, 0x5fc(r9)
+/* 80284804 00280464 60 00 00 04 */ ori r0, r0, 4
+/* 80284808 00280468 90 09 05 FC */ stw r0, 0x5fc(r9)
+lbl_8028480C:
+/* 8028480C 0028046C 7C 06 38 2E */ lwzx r0, r6, r7
+/* 80284810 00280470 28 00 00 04 */ cmplwi r0, 4
+/* 80284814 00280474 40 82 00 30 */ bne lbl_80284844
+/* 80284818 00280478 38 03 FF FC */ addi r0, r3, -4
+/* 8028481C 0028047C 80 89 02 24 */ lwz r4, 0x224(r9)
+/* 80284820 00280480 50 04 4D 6C */ rlwimi r4, r0, 9, 0x15, 0x16
+/* 80284824 00280484 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80284828 00280488 38 00 00 42 */ li r0, 0x42
+/* 8028482C 0028048C 50 04 C0 0E */ rlwimi r4, r0, 0x18, 0, 7
+/* 80284830 00280490 90 89 02 24 */ stw r4, 0x224(r9)
+/* 80284834 00280494 38 00 00 61 */ li r0, 0x61
+/* 80284838 00280498 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 8028483C 0028049C 80 09 02 24 */ lwz r0, 0x224(r9)
+/* 80284840 002804A0 90 03 80 00 */ stw r0, -0x8000(r3)
+lbl_80284844:
+/* 80284844 002804A4 38 00 00 00 */ li r0, 0
+/* 80284848 002804A8 B0 09 00 02 */ sth r0, 2(r9)
+/* 8028484C 002804AC 4E 80 00 20 */ blr
+
+.global GXSetDither
+GXSetDither:
+/* 80284850 002804B0 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80284854 002804B4 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80284858 002804B8 38 A0 00 61 */ li r5, 0x61
+/* 8028485C 002804BC 38 00 00 00 */ li r0, 0
+/* 80284860 002804C0 80 C7 02 20 */ lwz r6, 0x220(r7)
+/* 80284864 002804C4 50 66 17 7A */ rlwimi r6, r3, 2, 0x1d, 0x1d
+/* 80284868 002804C8 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 8028486C 002804CC 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80284870 002804D0 90 C7 02 20 */ stw r6, 0x220(r7)
+/* 80284874 002804D4 B0 07 00 02 */ sth r0, 2(r7)
+/* 80284878 002804D8 4E 80 00 20 */ blr
+
+.global GXSetDstAlpha
+GXSetDstAlpha:
+/* 8028487C 002804DC 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80284880 002804E0 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80284884 002804E4 38 C0 00 61 */ li r6, 0x61
+/* 80284888 002804E8 38 00 00 00 */ li r0, 0
+/* 8028488C 002804EC 80 E8 02 24 */ lwz r7, 0x224(r8)
+/* 80284890 002804F0 50 87 06 3E */ rlwimi r7, r4, 0, 0x18, 0x1f
+/* 80284894 002804F4 50 67 45 EE */ rlwimi r7, r3, 8, 0x17, 0x17
+/* 80284898 002804F8 98 C5 80 00 */ stb r6, 0xCC008000@l(r5)
+/* 8028489C 002804FC 90 E5 80 00 */ stw r7, -0x8000(r5)
+/* 802848A0 00280500 90 E8 02 24 */ stw r7, 0x224(r8)
+/* 802848A4 00280504 B0 08 00 02 */ sth r0, 2(r8)
+/* 802848A8 00280508 4E 80 00 20 */ blr
+
+.global GXSetFieldMask
+GXSetFieldMask:
+/* 802848AC 0028050C 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 802848B0 00280510 38 00 00 61 */ li r0, 0x61
+/* 802848B4 00280514 98 05 80 00 */ stb r0, 0xCC008000@l(r5)
+/* 802848B8 00280518 38 00 00 44 */ li r0, 0x44
+/* 802848BC 0028051C 38 C0 00 00 */ li r6, 0
+/* 802848C0 00280520 50 86 07 FE */ rlwimi r6, r4, 0, 0x1f, 0x1f
+/* 802848C4 00280524 50 66 0F BC */ rlwimi r6, r3, 1, 0x1e, 0x1e
+/* 802848C8 00280528 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802848CC 0028052C 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
+/* 802848D0 00280530 38 00 00 00 */ li r0, 0
+/* 802848D4 00280534 90 C5 80 00 */ stw r6, -0x8000(r5)
+/* 802848D8 00280538 B0 03 00 02 */ sth r0, 2(r3)
+/* 802848DC 0028053C 4E 80 00 20 */ blr
+
+.global GXSetFieldMode
+GXSetFieldMode:
+/* 802848E0 00280540 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802848E4 00280544 7C 08 02 A6 */ mflr r0
+/* 802848E8 00280548 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802848EC 0028054C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802848F0 00280550 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802848F4 00280554 3F E0 CC 01 */ lis r31, 0xCC008000@ha
+/* 802848F8 00280558 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802848FC 0028055C 3B C0 00 61 */ li r30, 0x61
+/* 80284900 00280560 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80284904 00280564 7C 7D 1B 78 */ mr r29, r3
+/* 80284908 00280568 80 05 00 7C */ lwz r0, 0x7c(r5)
+/* 8028490C 0028056C 50 80 B2 52 */ rlwimi r0, r4, 0x16, 9, 9
+/* 80284910 00280570 90 05 00 7C */ stw r0, 0x7c(r5)
+/* 80284914 00280574 9B DF 80 00 */ stb r30, 0xCC008000@l(r31)
+/* 80284918 00280578 80 05 00 7C */ lwz r0, 0x7c(r5)
+/* 8028491C 0028057C 90 1F 80 00 */ stw r0, -0x8000(r31)
+/* 80284920 00280580 4B FF F1 FD */ bl __GXFlushTextureState
+/* 80284924 00280584 9B DF 80 00 */ stb r30, -0x8000(r31)
+/* 80284928 00280588 67 A0 68 00 */ oris r0, r29, 0x6800
+/* 8028492C 0028058C 90 1F 80 00 */ stw r0, -0x8000(r31)
+/* 80284930 00280590 4B FF F1 ED */ bl __GXFlushTextureState
+/* 80284934 00280594 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80284938 00280598 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8028493C 0028059C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80284940 002805A0 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80284944 002805A4 7C 08 03 A6 */ mtlr r0
+/* 80284948 002805A8 38 21 00 20 */ addi r1, r1, 0x20
+/* 8028494C 002805AC 4E 80 00 20 */ blr
diff --git a/asm/SDK/GX/GXTev.s b/asm/SDK/GX/GXTev.s
new file mode 100644
index 0000000..26362b2
--- /dev/null
+++ b/asm/SDK/GX/GXTev.s
@@ -0,0 +1,493 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global GXSetTevOp
+GXSetTevOp:
+/* 80283B40 0027F7A0 2C 03 00 00 */ cmpwi r3, 0
+/* 80283B44 0027F7A4 3C A0 80 43 */ lis r5, lbl_804358D0@ha
+/* 80283B48 0027F7A8 38 A5 58 D0 */ addi r5, r5, lbl_804358D0@l
+/* 80283B4C 0027F7AC 40 82 00 1C */ bne lbl_80283B68
+/* 80283B50 0027F7B0 54 86 10 3A */ slwi r6, r4, 2
+/* 80283B54 0027F7B4 38 85 00 00 */ addi r4, r5, 0
+/* 80283B58 0027F7B8 38 05 00 28 */ addi r0, r5, 0x28
+/* 80283B5C 0027F7BC 7D 04 32 14 */ add r8, r4, r6
+/* 80283B60 0027F7C0 7D 20 32 14 */ add r9, r0, r6
+/* 80283B64 0027F7C4 48 00 00 18 */ b lbl_80283B7C
+lbl_80283B68:
+/* 80283B68 0027F7C8 54 86 10 3A */ slwi r6, r4, 2
+/* 80283B6C 0027F7CC 38 85 00 14 */ addi r4, r5, 0x14
+/* 80283B70 0027F7D0 38 05 00 3C */ addi r0, r5, 0x3c
+/* 80283B74 0027F7D4 7D 04 32 14 */ add r8, r4, r6
+/* 80283B78 0027F7D8 7D 20 32 14 */ add r9, r0, r6
+lbl_80283B7C:
+/* 80283B7C 0027F7DC 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283B80 0027F7E0 54 60 10 3A */ slwi r0, r3, 2
+/* 80283B84 0027F7E4 80 68 00 00 */ lwz r3, 0(r8)
+/* 80283B88 0027F7E8 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80283B8C 0027F7EC 7C C7 02 14 */ add r6, r7, r0
+/* 80283B90 0027F7F0 38 A0 00 61 */ li r5, 0x61
+/* 80283B94 0027F7F4 81 06 01 80 */ lwz r8, 0x180(r6)
+/* 80283B98 0027F7F8 38 00 00 00 */ li r0, 0
+/* 80283B9C 0027F7FC 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80283BA0 0027F800 55 08 00 0E */ rlwinm r8, r8, 0, 0, 7
+/* 80283BA4 0027F804 50 68 02 3E */ rlwimi r8, r3, 0, 8, 0x1f
+/* 80283BA8 0027F808 91 04 80 00 */ stw r8, -0x8000(r4)
+/* 80283BAC 0027F80C 91 06 01 80 */ stw r8, 0x180(r6)
+/* 80283BB0 0027F810 81 06 01 C0 */ lwz r8, 0x1c0(r6)
+/* 80283BB4 0027F814 80 69 00 00 */ lwz r3, 0(r9)
+/* 80283BB8 0027F818 55 08 07 0E */ rlwinm r8, r8, 0, 0x1c, 7
+/* 80283BBC 0027F81C 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 80283BC0 0027F820 50 68 02 36 */ rlwimi r8, r3, 0, 8, 0x1b
+/* 80283BC4 0027F824 91 04 80 00 */ stw r8, -0x8000(r4)
+/* 80283BC8 0027F828 91 06 01 C0 */ stw r8, 0x1c0(r6)
+/* 80283BCC 0027F82C B0 07 00 02 */ sth r0, 2(r7)
+/* 80283BD0 0027F830 4E 80 00 20 */ blr
+
+.global GXSetTevColorIn
+GXSetTevColorIn:
+/* 80283BD4 0027F834 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283BD8 0027F838 54 60 10 3A */ slwi r0, r3, 2
+/* 80283BDC 0027F83C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283BE0 0027F840 39 00 00 61 */ li r8, 0x61
+/* 80283BE4 0027F844 7D 4B 02 14 */ add r10, r11, r0
+/* 80283BE8 0027F848 38 00 00 00 */ li r0, 0
+/* 80283BEC 0027F84C 81 2A 01 80 */ lwz r9, 0x180(r10)
+/* 80283BF0 0027F850 50 89 64 26 */ rlwimi r9, r4, 0xc, 0x10, 0x13
+/* 80283BF4 0027F854 50 A9 45 2E */ rlwimi r9, r5, 8, 0x14, 0x17
+/* 80283BF8 0027F858 99 03 80 00 */ stb r8, 0xCC008000@l(r3)
+/* 80283BFC 0027F85C 50 C9 26 36 */ rlwimi r9, r6, 4, 0x18, 0x1b
+/* 80283C00 0027F860 50 E9 07 3E */ rlwimi r9, r7, 0, 0x1c, 0x1f
+/* 80283C04 0027F864 91 23 80 00 */ stw r9, -0x8000(r3)
+/* 80283C08 0027F868 91 2A 01 80 */ stw r9, 0x180(r10)
+/* 80283C0C 0027F86C B0 0B 00 02 */ sth r0, 2(r11)
+/* 80283C10 0027F870 4E 80 00 20 */ blr
+
+.global GXSetTevAlphaIn
+GXSetTevAlphaIn:
+/* 80283C14 0027F874 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283C18 0027F878 54 60 10 3A */ slwi r0, r3, 2
+/* 80283C1C 0027F87C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283C20 0027F880 39 00 00 61 */ li r8, 0x61
+/* 80283C24 0027F884 7D 4B 02 14 */ add r10, r11, r0
+/* 80283C28 0027F888 38 00 00 00 */ li r0, 0
+/* 80283C2C 0027F88C 81 2A 01 C0 */ lwz r9, 0x1c0(r10)
+/* 80283C30 0027F890 50 89 6C 24 */ rlwimi r9, r4, 0xd, 0x10, 0x12
+/* 80283C34 0027F894 50 A9 54 EA */ rlwimi r9, r5, 0xa, 0x13, 0x15
+/* 80283C38 0027F898 99 03 80 00 */ stb r8, 0xCC008000@l(r3)
+/* 80283C3C 0027F89C 50 C9 3D B0 */ rlwimi r9, r6, 7, 0x16, 0x18
+/* 80283C40 0027F8A0 50 E9 26 76 */ rlwimi r9, r7, 4, 0x19, 0x1b
+/* 80283C44 0027F8A4 91 23 80 00 */ stw r9, -0x8000(r3)
+/* 80283C48 0027F8A8 91 2A 01 C0 */ stw r9, 0x1c0(r10)
+/* 80283C4C 0027F8AC B0 0B 00 02 */ sth r0, 2(r11)
+/* 80283C50 0027F8B0 4E 80 00 20 */ blr
+
+.global GXSetTevColorOp
+GXSetTevColorOp:
+/* 80283C54 0027F8B4 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283C58 0027F8B8 54 60 10 3A */ slwi r0, r3, 2
+/* 80283C5C 0027F8BC 2C 04 00 01 */ cmpwi r4, 1
+/* 80283C60 0027F8C0 7D 2A 02 14 */ add r9, r10, r0
+/* 80283C64 0027F8C4 81 69 01 80 */ lwz r11, 0x180(r9)
+/* 80283C68 0027F8C8 50 8B 93 5A */ rlwimi r11, r4, 0x12, 0xd, 0xd
+/* 80283C6C 0027F8CC 41 81 00 10 */ bgt lbl_80283C7C
+/* 80283C70 0027F8D0 50 CB A2 96 */ rlwimi r11, r6, 0x14, 0xa, 0xb
+/* 80283C74 0027F8D4 50 AB 83 9E */ rlwimi r11, r5, 0x10, 0xe, 0xf
+/* 80283C78 0027F8D8 48 00 00 0C */ b lbl_80283C84
+lbl_80283C7C:
+/* 80283C7C 0027F8DC 50 8B 9A 96 */ rlwimi r11, r4, 0x13, 0xa, 0xb
+/* 80283C80 0027F8E0 65 6B 00 03 */ oris r11, r11, 3
+lbl_80283C84:
+/* 80283C84 0027F8E4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283C88 0027F8E8 38 00 00 61 */ li r0, 0x61
+/* 80283C8C 0027F8EC 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 80283C90 0027F8F0 50 EB 9B 18 */ rlwimi r11, r7, 0x13, 0xc, 0xc
+/* 80283C94 0027F8F4 51 0B B2 12 */ rlwimi r11, r8, 0x16, 8, 9
+/* 80283C98 0027F8F8 38 00 00 00 */ li r0, 0
+/* 80283C9C 0027F8FC 91 63 80 00 */ stw r11, -0x8000(r3)
+/* 80283CA0 0027F900 91 69 01 80 */ stw r11, 0x180(r9)
+/* 80283CA4 0027F904 B0 0A 00 02 */ sth r0, 2(r10)
+/* 80283CA8 0027F908 4E 80 00 20 */ blr
+
+.global GXSetTevAlphaOp
+GXSetTevAlphaOp:
+/* 80283CAC 0027F90C 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283CB0 0027F910 54 60 10 3A */ slwi r0, r3, 2
+/* 80283CB4 0027F914 2C 04 00 01 */ cmpwi r4, 1
+/* 80283CB8 0027F918 7D 2A 02 14 */ add r9, r10, r0
+/* 80283CBC 0027F91C 81 69 01 C0 */ lwz r11, 0x1c0(r9)
+/* 80283CC0 0027F920 50 8B 93 5A */ rlwimi r11, r4, 0x12, 0xd, 0xd
+/* 80283CC4 0027F924 41 81 00 10 */ bgt lbl_80283CD4
+/* 80283CC8 0027F928 50 CB A2 96 */ rlwimi r11, r6, 0x14, 0xa, 0xb
+/* 80283CCC 0027F92C 50 AB 83 9E */ rlwimi r11, r5, 0x10, 0xe, 0xf
+/* 80283CD0 0027F930 48 00 00 0C */ b lbl_80283CDC
+lbl_80283CD4:
+/* 80283CD4 0027F934 50 8B 9A 96 */ rlwimi r11, r4, 0x13, 0xa, 0xb
+/* 80283CD8 0027F938 65 6B 00 03 */ oris r11, r11, 3
+lbl_80283CDC:
+/* 80283CDC 0027F93C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283CE0 0027F940 38 00 00 61 */ li r0, 0x61
+/* 80283CE4 0027F944 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 80283CE8 0027F948 50 EB 9B 18 */ rlwimi r11, r7, 0x13, 0xc, 0xc
+/* 80283CEC 0027F94C 51 0B B2 12 */ rlwimi r11, r8, 0x16, 8, 9
+/* 80283CF0 0027F950 38 00 00 00 */ li r0, 0
+/* 80283CF4 0027F954 91 63 80 00 */ stw r11, -0x8000(r3)
+/* 80283CF8 0027F958 91 69 01 C0 */ stw r11, 0x1c0(r9)
+/* 80283CFC 0027F95C B0 0A 00 02 */ sth r0, 2(r10)
+/* 80283D00 0027F960 4E 80 00 20 */ blr
+
+.global GXSetTevColor
+GXSetTevColor:
+/* 80283D04 0027F964 54 63 08 3C */ slwi r3, r3, 1
+/* 80283D08 0027F968 81 04 00 00 */ lwz r8, 0(r4)
+/* 80283D0C 0027F96C 38 03 00 E0 */ addi r0, r3, 0xe0
+/* 80283D10 0027F970 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80283D14 0027F974 54 07 C0 0E */ slwi r7, r0, 0x18
+/* 80283D18 0027F978 38 A0 00 61 */ li r5, 0x61
+/* 80283D1C 0027F97C 51 07 46 3E */ rlwimi r7, r8, 8, 0x18, 0x1f
+/* 80283D20 0027F980 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80283D24 0027F984 51 07 63 26 */ rlwimi r7, r8, 0xc, 0xc, 0x13
+/* 80283D28 0027F988 38 03 00 E1 */ addi r0, r3, 0xe1
+/* 80283D2C 0027F98C 90 E4 80 00 */ stw r7, -0x8000(r4)
+/* 80283D30 0027F990 54 06 C0 0E */ slwi r6, r0, 0x18
+/* 80283D34 0027F994 51 06 C6 3E */ rlwimi r6, r8, 0x18, 0x18, 0x1f
+/* 80283D38 0027F998 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283D3C 0027F99C 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 80283D40 0027F9A0 51 06 E3 26 */ rlwimi r6, r8, 0x1c, 0xc, 0x13
+/* 80283D44 0027F9A4 38 00 00 00 */ li r0, 0
+/* 80283D48 0027F9A8 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80283D4C 0027F9AC 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 80283D50 0027F9B0 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80283D54 0027F9B4 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 80283D58 0027F9B8 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80283D5C 0027F9BC B0 03 00 02 */ sth r0, 2(r3)
+/* 80283D60 0027F9C0 4E 80 00 20 */ blr
+
+.global GXSetTevColorS10
+GXSetTevColorS10:
+/* 80283D64 0027F9C4 54 63 08 3C */ slwi r3, r3, 1
+/* 80283D68 0027F9C8 81 04 00 00 */ lwz r8, 0(r4)
+/* 80283D6C 0027F9CC 38 03 00 E0 */ addi r0, r3, 0xe0
+/* 80283D70 0027F9D0 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80283D74 0027F9D4 54 07 C0 0E */ slwi r7, r0, 0x18
+/* 80283D78 0027F9D8 38 C0 00 61 */ li r6, 0x61
+/* 80283D7C 0027F9DC 81 24 00 04 */ lwz r9, 4(r4)
+/* 80283D80 0027F9E0 51 07 85 7E */ rlwimi r7, r8, 0x10, 0x15, 0x1f
+/* 80283D84 0027F9E4 98 C5 80 00 */ stb r6, 0xCC008000@l(r5)
+/* 80283D88 0027F9E8 38 03 00 E1 */ addi r0, r3, 0xe1
+/* 80283D8C 0027F9EC 51 27 62 66 */ rlwimi r7, r9, 0xc, 9, 0x13
+/* 80283D90 0027F9F0 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283D94 0027F9F4 54 04 C0 0E */ slwi r4, r0, 0x18
+/* 80283D98 0027F9F8 90 E5 80 00 */ stw r7, -0x8000(r5)
+/* 80283D9C 0027F9FC 51 24 85 7E */ rlwimi r4, r9, 0x10, 0x15, 0x1f
+/* 80283DA0 0027FA00 38 00 00 00 */ li r0, 0
+/* 80283DA4 0027FA04 98 C5 80 00 */ stb r6, -0x8000(r5)
+/* 80283DA8 0027FA08 51 04 62 66 */ rlwimi r4, r8, 0xc, 9, 0x13
+/* 80283DAC 0027FA0C 90 85 80 00 */ stw r4, -0x8000(r5)
+/* 80283DB0 0027FA10 98 C5 80 00 */ stb r6, -0x8000(r5)
+/* 80283DB4 0027FA14 90 85 80 00 */ stw r4, -0x8000(r5)
+/* 80283DB8 0027FA18 98 C5 80 00 */ stb r6, -0x8000(r5)
+/* 80283DBC 0027FA1C 90 85 80 00 */ stw r4, -0x8000(r5)
+/* 80283DC0 0027FA20 B0 03 00 02 */ sth r0, 2(r3)
+/* 80283DC4 0027FA24 4E 80 00 20 */ blr
+
+.global GXSetTevKColor
+GXSetTevKColor:
+/* 80283DC8 0027FA28 54 66 08 3C */ slwi r6, r3, 1
+/* 80283DCC 0027FA2C 81 24 00 00 */ lwz r9, 0(r4)
+/* 80283DD0 0027FA30 38 66 00 E0 */ addi r3, r6, 0xe0
+/* 80283DD4 0027FA34 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80283DD8 0027FA38 54 68 C0 0E */ slwi r8, r3, 0x18
+/* 80283DDC 0027FA3C 38 A0 00 61 */ li r5, 0x61
+/* 80283DE0 0027FA40 51 28 46 3E */ rlwimi r8, r9, 8, 0x18, 0x1f
+/* 80283DE4 0027FA44 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80283DE8 0027FA48 38 E0 00 08 */ li r7, 8
+/* 80283DEC 0027FA4C 38 06 00 E1 */ addi r0, r6, 0xe1
+/* 80283DF0 0027FA50 51 28 63 26 */ rlwimi r8, r9, 0xc, 0xc, 0x13
+/* 80283DF4 0027FA54 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283DF8 0027FA58 54 06 C0 0E */ slwi r6, r0, 0x18
+/* 80283DFC 0027FA5C 38 00 00 00 */ li r0, 0
+/* 80283E00 0027FA60 50 E8 A2 16 */ rlwimi r8, r7, 0x14, 8, 0xb
+/* 80283E04 0027FA64 91 04 80 00 */ stw r8, -0x8000(r4)
+/* 80283E08 0027FA68 51 26 C6 3E */ rlwimi r6, r9, 0x18, 0x18, 0x1f
+/* 80283E0C 0027FA6C 51 26 E3 26 */ rlwimi r6, r9, 0x1c, 0xc, 0x13
+/* 80283E10 0027FA70 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 80283E14 0027FA74 50 E6 A2 16 */ rlwimi r6, r7, 0x14, 8, 0xb
+/* 80283E18 0027FA78 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80283E1C 0027FA7C B0 03 00 02 */ sth r0, 2(r3)
+/* 80283E20 0027FA80 4E 80 00 20 */ blr
+
+.global GXSetTevKColorSel
+GXSetTevKColorSel:
+/* 80283E24 0027FA84 54 60 07 FF */ clrlwi. r0, r3, 0x1f
+/* 80283E28 0027FA88 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283E2C 0027FA8C 54 60 08 3A */ rlwinm r0, r3, 1, 0, 0x1d
+/* 80283E30 0027FA90 7C 65 02 14 */ add r3, r5, r0
+/* 80283E34 0027FA94 41 82 00 14 */ beq lbl_80283E48
+/* 80283E38 0027FA98 80 03 02 00 */ lwz r0, 0x200(r3)
+/* 80283E3C 0027FA9C 50 80 73 62 */ rlwimi r0, r4, 0xe, 0xd, 0x11
+/* 80283E40 0027FAA0 90 03 02 00 */ stw r0, 0x200(r3)
+/* 80283E44 0027FAA4 48 00 00 10 */ b lbl_80283E54
+lbl_80283E48:
+/* 80283E48 0027FAA8 80 03 02 00 */ lwz r0, 0x200(r3)
+/* 80283E4C 0027FAAC 50 80 25 F6 */ rlwimi r0, r4, 4, 0x17, 0x1b
+/* 80283E50 0027FAB0 90 03 02 00 */ stw r0, 0x200(r3)
+lbl_80283E54:
+/* 80283E54 0027FAB4 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80283E58 0027FAB8 38 00 00 61 */ li r0, 0x61
+/* 80283E5C 0027FABC 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 80283E60 0027FAC0 38 00 00 00 */ li r0, 0
+/* 80283E64 0027FAC4 80 63 02 00 */ lwz r3, 0x200(r3)
+/* 80283E68 0027FAC8 90 64 80 00 */ stw r3, -0x8000(r4)
+/* 80283E6C 0027FACC B0 05 00 02 */ sth r0, 2(r5)
+/* 80283E70 0027FAD0 4E 80 00 20 */ blr
+
+.global GXSetTevKAlphaSel
+GXSetTevKAlphaSel:
+/* 80283E74 0027FAD4 54 60 07 FF */ clrlwi. r0, r3, 0x1f
+/* 80283E78 0027FAD8 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283E7C 0027FADC 54 60 08 3A */ rlwinm r0, r3, 1, 0, 0x1d
+/* 80283E80 0027FAE0 7C 65 02 14 */ add r3, r5, r0
+/* 80283E84 0027FAE4 41 82 00 14 */ beq lbl_80283E98
+/* 80283E88 0027FAE8 80 03 02 00 */ lwz r0, 0x200(r3)
+/* 80283E8C 0027FAEC 50 80 9A 18 */ rlwimi r0, r4, 0x13, 8, 0xc
+/* 80283E90 0027FAF0 90 03 02 00 */ stw r0, 0x200(r3)
+/* 80283E94 0027FAF4 48 00 00 10 */ b lbl_80283EA4
+lbl_80283E98:
+/* 80283E98 0027FAF8 80 03 02 00 */ lwz r0, 0x200(r3)
+/* 80283E9C 0027FAFC 50 80 4C AC */ rlwimi r0, r4, 9, 0x12, 0x16
+/* 80283EA0 0027FB00 90 03 02 00 */ stw r0, 0x200(r3)
+lbl_80283EA4:
+/* 80283EA4 0027FB04 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80283EA8 0027FB08 38 00 00 61 */ li r0, 0x61
+/* 80283EAC 0027FB0C 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 80283EB0 0027FB10 38 00 00 00 */ li r0, 0
+/* 80283EB4 0027FB14 80 63 02 00 */ lwz r3, 0x200(r3)
+/* 80283EB8 0027FB18 90 64 80 00 */ stw r3, -0x8000(r4)
+/* 80283EBC 0027FB1C B0 05 00 02 */ sth r0, 2(r5)
+/* 80283EC0 0027FB20 4E 80 00 20 */ blr
+
+.global GXSetTevSwapMode
+GXSetTevSwapMode:
+/* 80283EC4 0027FB24 81 22 A0 D0 */ lwz r9, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283EC8 0027FB28 54 60 10 3A */ slwi r0, r3, 2
+/* 80283ECC 0027FB2C 3C C0 CC 01 */ lis r6, 0xCC008000@ha
+/* 80283ED0 0027FB30 38 60 00 61 */ li r3, 0x61
+/* 80283ED4 0027FB34 7D 09 02 14 */ add r8, r9, r0
+/* 80283ED8 0027FB38 38 00 00 00 */ li r0, 0
+/* 80283EDC 0027FB3C 80 E8 01 C0 */ lwz r7, 0x1c0(r8)
+/* 80283EE0 0027FB40 50 87 07 BE */ rlwimi r7, r4, 0, 0x1e, 0x1f
+/* 80283EE4 0027FB44 50 A7 17 3A */ rlwimi r7, r5, 2, 0x1c, 0x1d
+/* 80283EE8 0027FB48 90 E8 01 C0 */ stw r7, 0x1c0(r8)
+/* 80283EEC 0027FB4C 98 66 80 00 */ stb r3, 0xCC008000@l(r6)
+/* 80283EF0 0027FB50 80 68 01 C0 */ lwz r3, 0x1c0(r8)
+/* 80283EF4 0027FB54 90 66 80 00 */ stw r3, -0x8000(r6)
+/* 80283EF8 0027FB58 B0 09 00 02 */ sth r0, 2(r9)
+/* 80283EFC 0027FB5C 4E 80 00 20 */ blr
+
+.global GXSetTevSwapModeTable
+GXSetTevSwapModeTable:
+/* 80283F00 0027FB60 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80283F04 0027FB64 54 6B 18 38 */ slwi r11, r3, 3
+/* 80283F08 0027FB68 54 6C 08 3C */ slwi r12, r3, 1
+/* 80283F0C 0027FB6C 3D 00 CC 01 */ lis r8, 0xCC008000@ha
+/* 80283F10 0027FB70 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80283F14 0027FB74 39 20 00 61 */ li r9, 0x61
+/* 80283F18 0027FB78 38 6C 00 01 */ addi r3, r12, 1
+/* 80283F1C 0027FB7C 38 00 00 00 */ li r0, 0
+/* 80283F20 0027FB80 93 C1 00 08 */ stw r30, 8(r1)
+/* 80283F24 0027FB84 83 C2 A0 D0 */ lwz r30, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283F28 0027FB88 3B FE 02 00 */ addi r31, r30, 0x200
+/* 80283F2C 0027FB8C 7D 5F 58 2E */ lwzx r10, r31, r11
+/* 80283F30 0027FB90 50 8A 07 BE */ rlwimi r10, r4, 0, 0x1e, 0x1f
+/* 80283F34 0027FB94 50 AA 17 3A */ rlwimi r10, r5, 2, 0x1c, 0x1d
+/* 80283F38 0027FB98 54 64 10 3A */ slwi r4, r3, 2
+/* 80283F3C 0027FB9C 7D 5F 59 2E */ stwx r10, r31, r11
+/* 80283F40 0027FBA0 99 28 80 00 */ stb r9, 0xCC008000@l(r8)
+/* 80283F44 0027FBA4 7C 7F 58 2E */ lwzx r3, r31, r11
+/* 80283F48 0027FBA8 90 68 80 00 */ stw r3, -0x8000(r8)
+/* 80283F4C 0027FBAC 7C 7F 20 2E */ lwzx r3, r31, r4
+/* 80283F50 0027FBB0 50 C3 07 BE */ rlwimi r3, r6, 0, 0x1e, 0x1f
+/* 80283F54 0027FBB4 50 E3 17 3A */ rlwimi r3, r7, 2, 0x1c, 0x1d
+/* 80283F58 0027FBB8 7C 7F 21 2E */ stwx r3, r31, r4
+/* 80283F5C 0027FBBC 99 28 80 00 */ stb r9, -0x8000(r8)
+/* 80283F60 0027FBC0 7C 7F 20 2E */ lwzx r3, r31, r4
+/* 80283F64 0027FBC4 90 68 80 00 */ stw r3, -0x8000(r8)
+/* 80283F68 0027FBC8 B0 1E 00 02 */ sth r0, 2(r30)
+/* 80283F6C 0027FBCC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80283F70 0027FBD0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80283F74 0027FBD4 38 21 00 10 */ addi r1, r1, 0x10
+/* 80283F78 0027FBD8 4E 80 00 20 */ blr
+
+.global GXSetAlphaCompare
+GXSetAlphaCompare:
+/* 80283F7C 0027FBDC 3D 00 CC 01 */ lis r8, 0xCC008000@ha
+/* 80283F80 0027FBE0 38 00 00 61 */ li r0, 0x61
+/* 80283F84 0027FBE4 98 08 80 00 */ stb r0, 0xCC008000@l(r8)
+/* 80283F88 0027FBE8 3D 20 F3 00 */ lis r9, 0xf300
+/* 80283F8C 0027FBEC 50 89 06 3E */ rlwimi r9, r4, 0, 0x18, 0x1f
+/* 80283F90 0027FBF0 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80283F94 0027FBF4 50 E9 44 2E */ rlwimi r9, r7, 8, 0x10, 0x17
+/* 80283F98 0027FBF8 38 00 00 00 */ li r0, 0
+/* 80283F9C 0027FBFC 50 69 83 5E */ rlwimi r9, r3, 0x10, 0xd, 0xf
+/* 80283FA0 0027FC00 50 C9 9A 98 */ rlwimi r9, r6, 0x13, 0xa, 0xc
+/* 80283FA4 0027FC04 50 A9 B2 12 */ rlwimi r9, r5, 0x16, 8, 9
+/* 80283FA8 0027FC08 91 28 80 00 */ stw r9, -0x8000(r8)
+/* 80283FAC 0027FC0C B0 04 00 02 */ sth r0, 2(r4)
+/* 80283FB0 0027FC10 4E 80 00 20 */ blr
+
+.global GXSetZTexture
+GXSetZTexture:
+/* 80283FB4 0027FC14 2C 04 00 13 */ cmpwi r4, 0x13
+/* 80283FB8 0027FC18 38 E0 00 00 */ li r7, 0
+/* 80283FBC 0027FC1C 38 00 00 F4 */ li r0, 0xf4
+/* 80283FC0 0027FC20 50 A7 02 3E */ rlwimi r7, r5, 0, 8, 0x1f
+/* 80283FC4 0027FC24 50 07 C0 0E */ rlwimi r7, r0, 0x18, 0, 7
+/* 80283FC8 0027FC28 41 82 00 28 */ beq lbl_80283FF0
+/* 80283FCC 0027FC2C 40 80 00 10 */ bge lbl_80283FDC
+/* 80283FD0 0027FC30 2C 04 00 11 */ cmpwi r4, 0x11
+/* 80283FD4 0027FC34 41 82 00 14 */ beq lbl_80283FE8
+/* 80283FD8 0027FC38 48 00 00 28 */ b lbl_80284000
+lbl_80283FDC:
+/* 80283FDC 0027FC3C 2C 04 00 16 */ cmpwi r4, 0x16
+/* 80283FE0 0027FC40 41 82 00 18 */ beq lbl_80283FF8
+/* 80283FE4 0027FC44 48 00 00 1C */ b lbl_80284000
+lbl_80283FE8:
+/* 80283FE8 0027FC48 38 A0 00 00 */ li r5, 0
+/* 80283FEC 0027FC4C 48 00 00 18 */ b lbl_80284004
+lbl_80283FF0:
+/* 80283FF0 0027FC50 38 A0 00 01 */ li r5, 1
+/* 80283FF4 0027FC54 48 00 00 10 */ b lbl_80284004
+lbl_80283FF8:
+/* 80283FF8 0027FC58 38 A0 00 02 */ li r5, 2
+/* 80283FFC 0027FC5C 48 00 00 08 */ b lbl_80284004
+lbl_80284000:
+/* 80284000 0027FC60 38 A0 00 02 */ li r5, 2
+lbl_80284004:
+/* 80284004 0027FC64 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80284008 0027FC68 38 00 00 61 */ li r0, 0x61
+/* 8028400C 0027FC6C 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 80284010 0027FC70 38 C0 00 00 */ li r6, 0
+/* 80284014 0027FC74 50 A6 07 BE */ rlwimi r6, r5, 0, 0x1e, 0x1f
+/* 80284018 0027FC78 38 A0 00 F5 */ li r5, 0xf5
+/* 8028401C 0027FC7C 90 E4 80 00 */ stw r7, -0x8000(r4)
+/* 80284020 0027FC80 50 66 17 3A */ rlwimi r6, r3, 2, 0x1c, 0x1d
+/* 80284024 0027FC84 50 A6 C0 0E */ rlwimi r6, r5, 0x18, 0, 7
+/* 80284028 0027FC88 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
+/* 8028402C 0027FC8C 98 04 80 00 */ stb r0, -0x8000(r4)
+/* 80284030 0027FC90 38 00 00 00 */ li r0, 0
+/* 80284034 0027FC94 90 C4 80 00 */ stw r6, -0x8000(r4)
+/* 80284038 0027FC98 B0 03 00 02 */ sth r0, 2(r3)
+/* 8028403C 0027FC9C 4E 80 00 20 */ blr
+
+.global GXSetTevOrder
+GXSetTevOrder:
+/* 80284040 0027FCA0 54 AB 06 2C */ rlwinm r11, r5, 0, 0x18, 0x16
+/* 80284044 0027FCA4 38 E0 00 08 */ li r7, 8
+/* 80284048 0027FCA8 54 69 0F FE */ srwi r9, r3, 0x1f
+/* 8028404C 0027FCAC 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80284050 0027FCB0 7C 07 58 10 */ subfc r0, r7, r11
+/* 80284054 0027FCB4 54 68 10 3A */ slwi r8, r3, 2
+/* 80284058 0027FCB8 7C 07 01 94 */ addze r0, r7
+/* 8028405C 0027FCBC 7D 29 1A 14 */ add r9, r9, r3
+/* 80284060 0027FCC0 7C EA 42 14 */ add r7, r10, r8
+/* 80284064 0027FCC4 2C 04 00 08 */ cmpwi r4, 8
+/* 80284068 0027FCC8 55 28 08 3A */ rlwinm r8, r9, 1, 0, 0x1d
+/* 8028406C 0027FCCC 20 00 00 08 */ subfic r0, r0, 8
+/* 80284070 0027FCD0 90 A7 05 A4 */ stw r5, 0x5a4(r7)
+/* 80284074 0027FCD4 7C EA 42 14 */ add r7, r10, r8
+/* 80284078 0027FCD8 7D 69 00 78 */ andc r9, r11, r0
+/* 8028407C 0027FCDC 41 80 00 20 */ blt lbl_8028409C
+/* 80284080 0027FCE0 38 00 00 01 */ li r0, 1
+/* 80284084 0027FCE4 81 0A 05 E8 */ lwz r8, 0x5e8(r10)
+/* 80284088 0027FCE8 7C 00 18 30 */ slw r0, r0, r3
+/* 8028408C 0027FCEC 38 80 00 00 */ li r4, 0
+/* 80284090 0027FCF0 7D 00 00 78 */ andc r0, r8, r0
+/* 80284094 0027FCF4 90 0A 05 E8 */ stw r0, 0x5e8(r10)
+/* 80284098 0027FCF8 48 00 00 18 */ b lbl_802840B0
+lbl_8028409C:
+/* 8028409C 0027FCFC 38 00 00 01 */ li r0, 1
+/* 802840A0 0027FD00 81 0A 05 E8 */ lwz r8, 0x5e8(r10)
+/* 802840A4 0027FD04 7C 00 18 30 */ slw r0, r0, r3
+/* 802840A8 0027FD08 7D 00 03 78 */ or r0, r8, r0
+/* 802840AC 0027FD0C 90 0A 05 E8 */ stw r0, 0x5e8(r10)
+lbl_802840B0:
+/* 802840B0 0027FD10 54 60 07 FF */ clrlwi. r0, r3, 0x1f
+/* 802840B4 0027FD14 41 82 00 60 */ beq lbl_80284114
+/* 802840B8 0027FD18 81 07 01 50 */ lwz r8, 0x150(r7)
+/* 802840BC 0027FD1C 51 28 64 66 */ rlwimi r8, r9, 0xc, 0x11, 0x13
+/* 802840C0 0027FD20 50 88 7B A0 */ rlwimi r8, r4, 0xf, 0xe, 0x10
+/* 802840C4 0027FD24 2C 06 00 FF */ cmpwi r6, 0xff
+/* 802840C8 0027FD28 91 07 01 50 */ stw r8, 0x150(r7)
+/* 802840CC 0027FD2C 40 82 00 0C */ bne lbl_802840D8
+/* 802840D0 0027FD30 38 00 00 07 */ li r0, 7
+/* 802840D4 0027FD34 48 00 00 14 */ b lbl_802840E8
+lbl_802840D8:
+/* 802840D8 0027FD38 3C 60 80 43 */ lis r3, lbl_80435920@ha
+/* 802840DC 0027FD3C 54 C0 10 3A */ slwi r0, r6, 2
+/* 802840E0 0027FD40 38 63 59 20 */ addi r3, r3, lbl_80435920@l
+/* 802840E4 0027FD44 7C 03 00 2E */ lwzx r0, r3, r0
+lbl_802840E8:
+/* 802840E8 0027FD48 50 08 9A 98 */ rlwimi r8, r0, 0x13, 0xa, 0xc
+/* 802840EC 0027FD4C 2C 05 00 FF */ cmpwi r5, 0xff
+/* 802840F0 0027FD50 91 07 01 50 */ stw r8, 0x150(r7)
+/* 802840F4 0027FD54 38 60 00 00 */ li r3, 0
+/* 802840F8 0027FD58 41 82 00 10 */ beq lbl_80284108
+/* 802840FC 0027FD5C 54 A0 05 EF */ rlwinm. r0, r5, 0, 0x17, 0x17
+/* 80284100 0027FD60 40 82 00 08 */ bne lbl_80284108
+/* 80284104 0027FD64 38 60 00 01 */ li r3, 1
+lbl_80284108:
+/* 80284108 0027FD68 50 68 93 5A */ rlwimi r8, r3, 0x12, 0xd, 0xd
+/* 8028410C 0027FD6C 91 07 01 50 */ stw r8, 0x150(r7)
+/* 80284110 0027FD70 48 00 00 5C */ b lbl_8028416C
+lbl_80284114:
+/* 80284114 0027FD74 81 07 01 50 */ lwz r8, 0x150(r7)
+/* 80284118 0027FD78 51 28 07 7E */ rlwimi r8, r9, 0, 0x1d, 0x1f
+/* 8028411C 0027FD7C 50 88 1E B8 */ rlwimi r8, r4, 3, 0x1a, 0x1c
+/* 80284120 0027FD80 2C 06 00 FF */ cmpwi r6, 0xff
+/* 80284124 0027FD84 91 07 01 50 */ stw r8, 0x150(r7)
+/* 80284128 0027FD88 40 82 00 0C */ bne lbl_80284134
+/* 8028412C 0027FD8C 38 00 00 07 */ li r0, 7
+/* 80284130 0027FD90 48 00 00 14 */ b lbl_80284144
+lbl_80284134:
+/* 80284134 0027FD94 3C 60 80 43 */ lis r3, lbl_80435920@ha
+/* 80284138 0027FD98 54 C0 10 3A */ slwi r0, r6, 2
+/* 8028413C 0027FD9C 38 63 59 20 */ addi r3, r3, lbl_80435920@l
+/* 80284140 0027FDA0 7C 03 00 2E */ lwzx r0, r3, r0
+lbl_80284144:
+/* 80284144 0027FDA4 50 08 3D B0 */ rlwimi r8, r0, 7, 0x16, 0x18
+/* 80284148 0027FDA8 2C 05 00 FF */ cmpwi r5, 0xff
+/* 8028414C 0027FDAC 91 07 01 50 */ stw r8, 0x150(r7)
+/* 80284150 0027FDB0 38 60 00 00 */ li r3, 0
+/* 80284154 0027FDB4 41 82 00 10 */ beq lbl_80284164
+/* 80284158 0027FDB8 54 A0 05 EF */ rlwinm. r0, r5, 0, 0x17, 0x17
+/* 8028415C 0027FDBC 40 82 00 08 */ bne lbl_80284164
+/* 80284160 0027FDC0 38 60 00 01 */ li r3, 1
+lbl_80284164:
+/* 80284164 0027FDC4 50 68 36 72 */ rlwimi r8, r3, 6, 0x19, 0x19
+/* 80284168 0027FDC8 91 07 01 50 */ stw r8, 0x150(r7)
+lbl_8028416C:
+/* 8028416C 0027FDCC 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80284170 0027FDD0 38 00 00 61 */ li r0, 0x61
+/* 80284174 0027FDD4 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
+/* 80284178 0027FDD8 38 00 00 00 */ li r0, 0
+/* 8028417C 0027FDDC 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80284180 0027FDE0 80 67 01 50 */ lwz r3, 0x150(r7)
+/* 80284184 0027FDE4 90 64 80 00 */ stw r3, -0x8000(r4)
+/* 80284188 0027FDE8 B0 05 00 02 */ sth r0, 2(r5)
+/* 8028418C 0027FDEC 80 05 05 FC */ lwz r0, 0x5fc(r5)
+/* 80284190 0027FDF0 60 00 00 01 */ ori r0, r0, 1
+/* 80284194 0027FDF4 90 05 05 FC */ stw r0, 0x5fc(r5)
+/* 80284198 0027FDF8 4E 80 00 20 */ blr
+
+.global GXSetNumTevStages
+GXSetNumTevStages:
+/* 8028419C 0027FDFC 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
+/* 802841A0 0027FE00 38 03 FF FF */ addi r0, r3, -1
+/* 802841A4 0027FE04 80 64 02 54 */ lwz r3, 0x254(r4)
+/* 802841A8 0027FE08 50 03 54 AA */ rlwimi r3, r0, 0xa, 0x12, 0x15
+/* 802841AC 0027FE0C 90 64 02 54 */ stw r3, 0x254(r4)
+/* 802841B0 0027FE10 80 04 05 FC */ lwz r0, 0x5fc(r4)
+/* 802841B4 0027FE14 60 00 00 04 */ ori r0, r0, 4
+/* 802841B8 0027FE18 90 04 05 FC */ stw r0, 0x5fc(r4)
+/* 802841BC 0027FE1C 4E 80 00 20 */ blr
diff --git a/asm/SDK/GX/GXTexture.s b/asm/SDK/GX/GXTexture.s
new file mode 100644
index 0000000..0aa481a
--- /dev/null
+++ b/asm/SDK/GX/GXTexture.s
@@ -0,0 +1,970 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __GetImageTileCount
+__GetImageTileCount:
+/* 80282610 0027E270 28 03 00 3C */ cmplwi r3, 0x3c
+/* 80282614 0027E274 41 81 00 40 */ bgt lbl_80282654
+/* 80282618 0027E278 3D 20 80 43 */ lis r9, lbl_804357A0@ha
+/* 8028261C 0027E27C 54 60 10 3A */ slwi r0, r3, 2
+/* 80282620 0027E280 39 29 57 A0 */ addi r9, r9, lbl_804357A0@l
+/* 80282624 0027E284 7D 29 00 2E */ lwzx r9, r9, r0
+/* 80282628 0027E288 7D 29 03 A6 */ mtctr r9
+/* 8028262C 0027E28C 4E 80 04 20 */ bctr
+/* 80282630 0027E290 39 60 00 03 */ li r11, 3
+/* 80282634 0027E294 39 80 00 03 */ li r12, 3
+/* 80282638 0027E298 48 00 00 24 */ b lbl_8028265C
+/* 8028263C 0027E29C 39 60 00 03 */ li r11, 3
+/* 80282640 0027E2A0 39 80 00 02 */ li r12, 2
+/* 80282644 0027E2A4 48 00 00 18 */ b lbl_8028265C
+/* 80282648 0027E2A8 39 60 00 02 */ li r11, 2
+/* 8028264C 0027E2AC 39 80 00 02 */ li r12, 2
+/* 80282650 0027E2B0 48 00 00 0C */ b lbl_8028265C
+lbl_80282654:
+/* 80282654 0027E2B4 39 80 00 00 */ li r12, 0
+/* 80282658 0027E2B8 39 60 00 00 */ li r11, 0
+lbl_8028265C:
+/* 8028265C 0027E2BC 2C 04 00 00 */ cmpwi r4, 0
+/* 80282660 0027E2C0 40 82 00 08 */ bne lbl_80282668
+/* 80282664 0027E2C4 38 80 00 01 */ li r4, 1
+lbl_80282668:
+/* 80282668 0027E2C8 2C 05 00 00 */ cmpwi r5, 0
+/* 8028266C 0027E2CC 40 82 00 08 */ bne lbl_80282674
+/* 80282670 0027E2D0 38 A0 00 01 */ li r5, 1
+lbl_80282674:
+/* 80282674 0027E2D4 39 40 00 01 */ li r10, 1
+/* 80282678 0027E2D8 2C 03 00 06 */ cmpwi r3, 6
+/* 8028267C 0027E2DC 7D 40 58 30 */ slw r0, r10, r11
+/* 80282680 0027E2E0 39 20 00 00 */ li r9, 0
+/* 80282684 0027E2E4 7C 84 02 14 */ add r4, r4, r0
+/* 80282688 0027E2E8 7D 40 60 30 */ slw r0, r10, r12
+/* 8028268C 0027E2EC 38 84 FF FF */ addi r4, r4, -1
+/* 80282690 0027E2F0 7C 8A 5E 30 */ sraw r10, r4, r11
+/* 80282694 0027E2F4 7C 85 02 14 */ add r4, r5, r0
+/* 80282698 0027E2F8 91 46 00 00 */ stw r10, 0(r6)
+/* 8028269C 0027E2FC 38 04 FF FF */ addi r0, r4, -1
+/* 802826A0 0027E300 7C 00 66 30 */ sraw r0, r0, r12
+/* 802826A4 0027E304 90 07 00 00 */ stw r0, 0(r7)
+/* 802826A8 0027E308 41 82 00 0C */ beq lbl_802826B4
+/* 802826AC 0027E30C 2C 03 00 16 */ cmpwi r3, 0x16
+/* 802826B0 0027E310 40 82 00 08 */ bne lbl_802826B8
+lbl_802826B4:
+/* 802826B4 0027E314 39 20 00 01 */ li r9, 1
+lbl_802826B8:
+/* 802826B8 0027E318 7C 09 00 D0 */ neg r0, r9
+/* 802826BC 0027E31C 7C 00 4B 78 */ or r0, r0, r9
+/* 802826C0 0027E320 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 802826C4 0027E324 38 03 00 01 */ addi r0, r3, 1
+/* 802826C8 0027E328 90 08 00 00 */ stw r0, 0(r8)
+/* 802826CC 0027E32C 4E 80 00 20 */ blr
+
+.global GXInitTexObj
+GXInitTexObj:
+/* 802826D0 0027E330 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802826D4 0027E334 7C 08 02 A6 */ mflr r0
+/* 802826D8 0027E338 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802826DC 0027E33C 39 61 00 40 */ addi r11, r1, 0x40
+/* 802826E0 0027E340 4B F4 4A 3D */ bl _savegpr_24
+/* 802826E4 0027E344 7C 9B 23 78 */ mr r27, r4
+/* 802826E8 0027E348 7C BC 2B 78 */ mr r28, r5
+/* 802826EC 0027E34C 7C 7F 1B 78 */ mr r31, r3
+/* 802826F0 0027E350 7C DD 33 78 */ mr r29, r6
+/* 802826F4 0027E354 7C FE 3B 78 */ mr r30, r7
+/* 802826F8 0027E358 7D 18 43 78 */ mr r24, r8
+/* 802826FC 0027E35C 7D 39 4B 78 */ mr r25, r9
+/* 80282700 0027E360 7D 5A 53 78 */ mr r26, r10
+/* 80282704 0027E364 38 80 00 00 */ li r4, 0
+/* 80282708 0027E368 38 A0 00 20 */ li r5, 0x20
+/* 8028270C 0027E36C 4B D8 19 F9 */ bl memset
+/* 80282710 0027E370 80 1F 00 00 */ lwz r0, 0(r31)
+/* 80282714 0027E374 53 00 07 BE */ rlwimi r0, r24, 0, 0x1e, 0x1f
+/* 80282718 0027E378 53 20 17 3A */ rlwimi r0, r25, 2, 0x1c, 0x1d
+/* 8028271C 0027E37C 2C 1A 00 00 */ cmpwi r26, 0
+/* 80282720 0027E380 60 04 00 10 */ ori r4, r0, 0x10
+/* 80282724 0027E384 90 9F 00 00 */ stw r4, 0(r31)
+/* 80282728 0027E388 41 82 00 90 */ beq lbl_802827B8
+/* 8028272C 0027E38C 88 7F 00 1F */ lbz r3, 0x1f(r31)
+/* 80282730 0027E390 38 1E FF F8 */ addi r0, r30, -8
+/* 80282734 0027E394 28 00 00 02 */ cmplwi r0, 2
+/* 80282738 0027E398 60 60 00 01 */ ori r0, r3, 1
+/* 8028273C 0027E39C 98 1F 00 1F */ stb r0, 0x1f(r31)
+/* 80282740 0027E3A0 41 81 00 14 */ bgt lbl_80282754
+/* 80282744 0027E3A4 38 00 00 05 */ li r0, 5
+/* 80282748 0027E3A8 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
+/* 8028274C 0027E3AC 90 9F 00 00 */ stw r4, 0(r31)
+/* 80282750 0027E3B0 48 00 00 10 */ b lbl_80282760
+lbl_80282754:
+/* 80282754 0027E3B4 38 00 00 06 */ li r0, 6
+/* 80282758 0027E3B8 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
+/* 8028275C 0027E3BC 90 9F 00 00 */ stw r4, 0(r31)
+lbl_80282760:
+/* 80282760 0027E3C0 7C 1C E8 40 */ cmplw r28, r29
+/* 80282764 0027E3C4 40 81 00 10 */ ble lbl_80282774
+/* 80282768 0027E3C8 7F 80 00 34 */ cntlzw r0, r28
+/* 8028276C 0027E3CC 20 60 00 1F */ subfic r3, r0, 0x1f
+/* 80282770 0027E3D0 48 00 00 0C */ b lbl_8028277C
+lbl_80282774:
+/* 80282774 0027E3D4 7F A0 00 34 */ cntlzw r0, r29
+/* 80282778 0027E3D8 20 60 00 1F */ subfic r3, r0, 0x1f
+lbl_8028277C:
+/* 8028277C 0027E3DC 3C 00 43 30 */ lis r0, 0x4330
+/* 80282780 0027E3E0 90 61 00 0C */ stw r3, 0xc(r1)
+/* 80282784 0027E3E4 C8 42 A1 48 */ lfd f2, lbl_80642748-_SDA2_BASE_(r2)
+/* 80282788 0027E3E8 90 01 00 08 */ stw r0, 8(r1)
+/* 8028278C 0027E3EC C0 02 A1 40 */ lfs f0, lbl_80642740-_SDA2_BASE_(r2)
+/* 80282790 0027E3F0 C8 21 00 08 */ lfd f1, 8(r1)
+/* 80282794 0027E3F4 80 1F 00 04 */ lwz r0, 4(r31)
+/* 80282798 0027E3F8 EC 21 10 28 */ fsubs f1, f1, f2
+/* 8028279C 0027E3FC EC 00 00 72 */ fmuls f0, f0, f1
+/* 802827A0 0027E400 FC 00 00 1E */ fctiwz f0, f0
+/* 802827A4 0027E404 D8 01 00 10 */ stfd f0, 0x10(r1)
+/* 802827A8 0027E408 80 61 00 14 */ lwz r3, 0x14(r1)
+/* 802827AC 0027E40C 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17
+/* 802827B0 0027E410 90 1F 00 04 */ stw r0, 4(r31)
+/* 802827B4 0027E414 48 00 00 10 */ b lbl_802827C4
+lbl_802827B8:
+/* 802827B8 0027E418 38 00 00 04 */ li r0, 4
+/* 802827BC 0027E41C 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
+/* 802827C0 0027E420 90 9F 00 00 */ stw r4, 0(r31)
+lbl_802827C4:
+/* 802827C4 0027E424 38 1C FF FF */ addi r0, r28, -1
+/* 802827C8 0027E428 80 7F 00 08 */ lwz r3, 8(r31)
+/* 802827CC 0027E42C 50 03 05 BE */ rlwimi r3, r0, 0, 0x16, 0x1f
+/* 802827D0 0027E430 57 C4 07 3E */ clrlwi r4, r30, 0x1c
+/* 802827D4 0027E434 38 1D FF FF */ addi r0, r29, -1
+/* 802827D8 0027E438 93 DF 00 14 */ stw r30, 0x14(r31)
+/* 802827DC 0027E43C 50 03 53 2A */ rlwimi r3, r0, 0xa, 0xc, 0x15
+/* 802827E0 0027E440 80 1F 00 0C */ lwz r0, 0xc(r31)
+/* 802827E4 0027E444 53 60 DA 3E */ rlwimi r0, r27, 0x1b, 8, 0x1f
+/* 802827E8 0027E448 28 04 00 0E */ cmplwi r4, 0xe
+/* 802827EC 0027E44C 53 C3 A2 16 */ rlwimi r3, r30, 0x14, 8, 0xb
+/* 802827F0 0027E450 90 1F 00 0C */ stw r0, 0xc(r31)
+/* 802827F4 0027E454 90 7F 00 08 */ stw r3, 8(r31)
+/* 802827F8 0027E458 41 81 00 80 */ bgt lbl_80282878
+/* 802827FC 0027E45C 3C 60 80 43 */ lis r3, lbl_80435894@ha
+/* 80282800 0027E460 54 80 10 3A */ slwi r0, r4, 2
+/* 80282804 0027E464 38 63 58 94 */ addi r3, r3, lbl_80435894@l
+/* 80282808 0027E468 7C 63 00 2E */ lwzx r3, r3, r0
+/* 8028280C 0027E46C 7C 69 03 A6 */ mtctr r3
+/* 80282810 0027E470 4E 80 04 20 */ bctr
+/* 80282814 0027E474 38 00 00 01 */ li r0, 1
+/* 80282818 0027E478 38 C0 00 03 */ li r6, 3
+/* 8028281C 0027E47C 98 1F 00 1E */ stb r0, 0x1e(r31)
+/* 80282820 0027E480 38 E0 00 03 */ li r7, 3
+/* 80282824 0027E484 48 00 00 64 */ b lbl_80282888
+/* 80282828 0027E488 38 00 00 02 */ li r0, 2
+/* 8028282C 0027E48C 38 C0 00 03 */ li r6, 3
+/* 80282830 0027E490 98 1F 00 1E */ stb r0, 0x1e(r31)
+/* 80282834 0027E494 38 E0 00 02 */ li r7, 2
+/* 80282838 0027E498 48 00 00 50 */ b lbl_80282888
+/* 8028283C 0027E49C 38 00 00 02 */ li r0, 2
+/* 80282840 0027E4A0 38 C0 00 02 */ li r6, 2
+/* 80282844 0027E4A4 98 1F 00 1E */ stb r0, 0x1e(r31)
+/* 80282848 0027E4A8 38 E0 00 02 */ li r7, 2
+/* 8028284C 0027E4AC 48 00 00 3C */ b lbl_80282888
+/* 80282850 0027E4B0 38 00 00 03 */ li r0, 3
+/* 80282854 0027E4B4 38 C0 00 02 */ li r6, 2
+/* 80282858 0027E4B8 98 1F 00 1E */ stb r0, 0x1e(r31)
+/* 8028285C 0027E4BC 38 E0 00 02 */ li r7, 2
+/* 80282860 0027E4C0 48 00 00 28 */ b lbl_80282888
+/* 80282864 0027E4C4 38 00 00 00 */ li r0, 0
+/* 80282868 0027E4C8 38 C0 00 03 */ li r6, 3
+/* 8028286C 0027E4CC 98 1F 00 1E */ stb r0, 0x1e(r31)
+/* 80282870 0027E4D0 38 E0 00 03 */ li r7, 3
+/* 80282874 0027E4D4 48 00 00 14 */ b lbl_80282888
+lbl_80282878:
+/* 80282878 0027E4D8 38 00 00 02 */ li r0, 2
+/* 8028287C 0027E4DC 38 C0 00 02 */ li r6, 2
+/* 80282880 0027E4E0 98 1F 00 1E */ stb r0, 0x1e(r31)
+/* 80282884 0027E4E4 38 E0 00 02 */ li r7, 2
+lbl_80282888:
+/* 80282888 0027E4E8 38 A0 00 01 */ li r5, 1
+/* 8028288C 0027E4EC 88 1F 00 1F */ lbz r0, 0x1f(r31)
+/* 80282890 0027E4F0 7C A3 30 30 */ slw r3, r5, r6
+/* 80282894 0027E4F4 39 61 00 40 */ addi r11, r1, 0x40
+/* 80282898 0027E4F8 7C 9C 1A 14 */ add r4, r28, r3
+/* 8028289C 0027E4FC 60 00 00 02 */ ori r0, r0, 2
+/* 802828A0 0027E500 7C A3 38 30 */ slw r3, r5, r7
+/* 802828A4 0027E504 98 1F 00 1F */ stb r0, 0x1f(r31)
+/* 802828A8 0027E508 38 84 FF FF */ addi r4, r4, -1
+/* 802828AC 0027E50C 7C 7D 1A 14 */ add r3, r29, r3
+/* 802828B0 0027E510 7C 84 36 30 */ sraw r4, r4, r6
+/* 802828B4 0027E514 38 03 FF FF */ addi r0, r3, -1
+/* 802828B8 0027E518 7C 00 3E 30 */ sraw r0, r0, r7
+/* 802828BC 0027E51C 7C 04 01 D6 */ mullw r0, r4, r0
+/* 802828C0 0027E520 54 00 04 7E */ clrlwi r0, r0, 0x11
+/* 802828C4 0027E524 B0 1F 00 1C */ sth r0, 0x1c(r31)
+/* 802828C8 0027E528 4B F4 48 A1 */ bl _restgpr_24
+/* 802828CC 0027E52C 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802828D0 0027E530 7C 08 03 A6 */ mtlr r0
+/* 802828D4 0027E534 38 21 00 40 */ addi r1, r1, 0x40
+/* 802828D8 0027E538 4E 80 00 20 */ blr
+
+.global GXInitTexObjCI
+GXInitTexObjCI:
+/* 802828DC 0027E53C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802828E0 0027E540 7C 08 02 A6 */ mflr r0
+/* 802828E4 0027E544 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802828E8 0027E548 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802828EC 0027E54C 83 E1 00 18 */ lwz r31, 0x18(r1)
+/* 802828F0 0027E550 93 C1 00 08 */ stw r30, 8(r1)
+/* 802828F4 0027E554 7C 7E 1B 78 */ mr r30, r3
+/* 802828F8 0027E558 4B FF FD D9 */ bl GXInitTexObj
+/* 802828FC 0027E55C 88 1E 00 1F */ lbz r0, 0x1f(r30)
+/* 80282900 0027E560 93 FE 00 18 */ stw r31, 0x18(r30)
+/* 80282904 0027E564 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
+/* 80282908 0027E568 98 1E 00 1F */ stb r0, 0x1f(r30)
+/* 8028290C 0027E56C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80282910 0027E570 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80282914 0027E574 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80282918 0027E578 7C 08 03 A6 */ mtlr r0
+/* 8028291C 0027E57C 38 21 00 10 */ addi r1, r1, 0x10
+/* 80282920 0027E580 4E 80 00 20 */ blr
+
+.global GXInitTexObjLOD
+GXInitTexObjLOD:
+/* 80282924 0027E584 C0 02 A1 50 */ lfs f0, lbl_80642750-_SDA2_BASE_(r2)
+/* 80282928 0027E588 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8028292C 0027E58C FC 03 00 40 */ fcmpo cr0, f3, f0
+/* 80282930 0027E590 40 80 00 0C */ bge lbl_8028293C
+/* 80282934 0027E594 FC 60 00 90 */ fmr f3, f0
+/* 80282938 0027E598 48 00 00 18 */ b lbl_80282950
+lbl_8028293C:
+/* 8028293C 0027E59C C0 02 A1 58 */ lfs f0, lbl_80642758-_SDA2_BASE_(r2)
+/* 80282940 0027E5A0 FC 03 00 40 */ fcmpo cr0, f3, f0
+/* 80282944 0027E5A4 4C 41 13 82 */ cror 2, 1, 2
+/* 80282948 0027E5A8 40 82 00 08 */ bne lbl_80282950
+/* 8028294C 0027E5AC C0 62 A1 54 */ lfs f3, lbl_80642754-_SDA2_BASE_(r2)
+lbl_80282950:
+/* 80282950 0027E5B0 C0 82 A1 5C */ lfs f4, lbl_8064275C-_SDA2_BASE_(r2)
+/* 80282954 0027E5B4 38 05 FF FF */ addi r0, r5, -1
+/* 80282958 0027E5B8 7C 09 00 34 */ cntlzw r9, r0
+/* 8028295C 0027E5BC C0 02 A1 60 */ lfs f0, lbl_80642760-_SDA2_BASE_(r2)
+/* 80282960 0027E5C0 EC 64 00 F2 */ fmuls f3, f4, f3
+/* 80282964 0027E5C4 7C E0 00 34 */ cntlzw r0, r7
+/* 80282968 0027E5C8 81 43 00 00 */ lwz r10, 0(r3)
+/* 8028296C 0027E5CC 38 AD 88 A0 */ addi r5, r13, lbl_8063DB60-_SDA_BASE_
+/* 80282970 0027E5D0 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 80282974 0027E5D4 FC 60 18 1E */ fctiwz f3, f3
+/* 80282978 0027E5D8 D8 61 00 08 */ stfd f3, 8(r1)
+/* 8028297C 0027E5DC 80 E1 00 0C */ lwz r7, 0xc(r1)
+/* 80282980 0027E5E0 50 EA 4B EC */ rlwimi r10, r7, 9, 0xf, 0x16
+/* 80282984 0027E5E4 51 2A FE F6 */ rlwimi r10, r9, 0x1f, 0x1b, 0x1b
+/* 80282988 0027E5E8 91 43 00 00 */ stw r10, 0(r3)
+/* 8028298C 0027E5EC 7C 85 20 AE */ lbzx r4, r5, r4
+/* 80282990 0027E5F0 50 8A 2E 34 */ rlwimi r10, r4, 5, 0x18, 0x1a
+/* 80282994 0027E5F4 50 0A 1D EE */ rlwimi r10, r0, 3, 0x17, 0x17
+/* 80282998 0027E5F8 55 40 03 D8 */ rlwinm r0, r10, 0, 0xf, 0xc
+/* 8028299C 0027E5FC 51 00 9A D8 */ rlwimi r0, r8, 0x13, 0xb, 0xc
+/* 802829A0 0027E600 50 C0 AA 94 */ rlwimi r0, r6, 0x15, 0xa, 0xa
+/* 802829A4 0027E604 90 03 00 00 */ stw r0, 0(r3)
+/* 802829A8 0027E608 40 80 00 0C */ bge lbl_802829B4
+/* 802829AC 0027E60C FC 20 00 90 */ fmr f1, f0
+/* 802829B0 0027E610 48 00 00 14 */ b lbl_802829C4
+lbl_802829B4:
+/* 802829B4 0027E614 C0 02 A1 64 */ lfs f0, lbl_80642764-_SDA2_BASE_(r2)
+/* 802829B8 0027E618 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 802829BC 0027E61C 40 81 00 08 */ ble lbl_802829C4
+/* 802829C0 0027E620 FC 20 00 90 */ fmr f1, f0
+lbl_802829C4:
+/* 802829C4 0027E624 C0 62 A1 40 */ lfs f3, lbl_80642740-_SDA2_BASE_(r2)
+/* 802829C8 0027E628 C0 02 A1 60 */ lfs f0, lbl_80642760-_SDA2_BASE_(r2)
+/* 802829CC 0027E62C EC 23 00 72 */ fmuls f1, f3, f1
+/* 802829D0 0027E630 FC 02 00 40 */ fcmpo cr0, f2, f0
+/* 802829D4 0027E634 FC 20 08 1E */ fctiwz f1, f1
+/* 802829D8 0027E638 D8 21 00 08 */ stfd f1, 8(r1)
+/* 802829DC 0027E63C 80 81 00 0C */ lwz r4, 0xc(r1)
+/* 802829E0 0027E640 40 80 00 0C */ bge lbl_802829EC
+/* 802829E4 0027E644 FC 40 00 90 */ fmr f2, f0
+/* 802829E8 0027E648 48 00 00 14 */ b lbl_802829FC
+lbl_802829EC:
+/* 802829EC 0027E64C C0 02 A1 64 */ lfs f0, lbl_80642764-_SDA2_BASE_(r2)
+/* 802829F0 0027E650 FC 02 00 40 */ fcmpo cr0, f2, f0
+/* 802829F4 0027E654 40 81 00 08 */ ble lbl_802829FC
+/* 802829F8 0027E658 FC 40 00 90 */ fmr f2, f0
+lbl_802829FC:
+/* 802829FC 0027E65C C0 02 A1 40 */ lfs f0, lbl_80642740-_SDA2_BASE_(r2)
+/* 80282A00 0027E660 80 03 00 04 */ lwz r0, 4(r3)
+/* 80282A04 0027E664 50 80 06 3E */ rlwimi r0, r4, 0, 0x18, 0x1f
+/* 80282A08 0027E668 EC 00 00 B2 */ fmuls f0, f0, f2
+/* 80282A0C 0027E66C FC 00 00 1E */ fctiwz f0, f0
+/* 80282A10 0027E670 D8 01 00 08 */ stfd f0, 8(r1)
+/* 80282A14 0027E674 80 81 00 0C */ lwz r4, 0xc(r1)
+/* 80282A18 0027E678 50 80 44 2E */ rlwimi r0, r4, 8, 0x10, 0x17
+/* 80282A1C 0027E67C 90 03 00 04 */ stw r0, 4(r3)
+/* 80282A20 0027E680 38 21 00 10 */ addi r1, r1, 0x10
+/* 80282A24 0027E684 4E 80 00 20 */ blr
+
+.global GXInitTexObjWrapMode
+GXInitTexObjWrapMode:
+/* 80282A28 0027E688 80 03 00 00 */ lwz r0, 0(r3)
+/* 80282A2C 0027E68C 50 80 07 BE */ rlwimi r0, r4, 0, 0x1e, 0x1f
+/* 80282A30 0027E690 50 A0 17 3A */ rlwimi r0, r5, 2, 0x1c, 0x1d
+/* 80282A34 0027E694 90 03 00 00 */ stw r0, 0(r3)
+/* 80282A38 0027E698 4E 80 00 20 */ blr
+
+.global GXInitTexObjTlut
+GXInitTexObjTlut:
+/* 80282A3C 0027E69C 90 83 00 18 */ stw r4, 0x18(r3)
+/* 80282A40 0027E6A0 4E 80 00 20 */ blr
+
+.global GXGetTexObjFmt
+GXGetTexObjFmt:
+/* 80282A44 0027E6A4 80 63 00 14 */ lwz r3, 0x14(r3)
+/* 80282A48 0027E6A8 4E 80 00 20 */ blr
+
+.global GXGetTexObjMipMap
+GXGetTexObjMipMap:
+/* 80282A4C 0027E6AC 88 03 00 1F */ lbz r0, 0x1f(r3)
+/* 80282A50 0027E6B0 54 03 07 FE */ clrlwi r3, r0, 0x1f
+/* 80282A54 0027E6B4 4E 80 00 20 */ blr
+
+.global GXGetTexObjTlut
+GXGetTexObjTlut:
+/* 80282A58 0027E6B8 80 63 00 18 */ lwz r3, 0x18(r3)
+/* 80282A5C 0027E6BC 4E 80 00 20 */ blr
+
+.global GXLoadTexObjPreLoaded
+GXLoadTexObjPreLoaded:
+/* 80282A60 0027E6C0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80282A64 0027E6C4 7C 08 02 A6 */ mflr r0
+/* 80282A68 0027E6C8 39 6D 88 68 */ addi r11, r13, lbl_8063DB28-_SDA_BASE_
+/* 80282A6C 0027E6CC 39 4D 88 70 */ addi r10, r13, lbl_8063DB30-_SDA_BASE_
+/* 80282A70 0027E6D0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80282A74 0027E6D4 39 2D 88 78 */ addi r9, r13, lbl_8063DB38-_SDA_BASE_
+/* 80282A78 0027E6D8 81 83 00 00 */ lwz r12, 0(r3)
+/* 80282A7C 0027E6DC 39 0D 88 80 */ addi r8, r13, lbl_8063DB40-_SDA_BASE_
+/* 80282A80 0027E6E0 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80282A84 0027E6E4 38 ED 88 88 */ addi r7, r13, lbl_8063DB48-_SDA_BASE_
+/* 80282A88 0027E6E8 38 CD 88 90 */ addi r6, r13, lbl_8063DB50-_SDA_BASE_
+/* 80282A8C 0027E6EC 7C BF 2B 78 */ mr r31, r5
+/* 80282A90 0027E6F0 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80282A94 0027E6F4 7C 7E 1B 78 */ mr r30, r3
+/* 80282A98 0027E6F8 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80282A9C 0027E6FC 3F A0 CC 01 */ lis r29, 0xCC008000@ha
+/* 80282AA0 0027E700 93 81 00 10 */ stw r28, 0x10(r1)
+/* 80282AA4 0027E704 3B 80 00 61 */ li r28, 0x61
+/* 80282AA8 0027E708 7C 0B 28 AE */ lbzx r0, r11, r5
+/* 80282AAC 0027E70C 81 63 00 04 */ lwz r11, 4(r3)
+/* 80282AB0 0027E710 50 0C C0 0E */ rlwimi r12, r0, 0x18, 0, 7
+/* 80282AB4 0027E714 7C 0A 28 AE */ lbzx r0, r10, r5
+/* 80282AB8 0027E718 7D 49 28 AE */ lbzx r10, r9, r5
+/* 80282ABC 0027E71C 50 0B C0 0E */ rlwimi r11, r0, 0x18, 0, 7
+/* 80282AC0 0027E720 7C 07 28 AE */ lbzx r0, r7, r5
+/* 80282AC4 0027E724 7D 08 28 AE */ lbzx r8, r8, r5
+/* 80282AC8 0027E728 7C A6 28 AE */ lbzx r5, r6, r5
+/* 80282ACC 0027E72C 81 23 00 08 */ lwz r9, 8(r3)
+/* 80282AD0 0027E730 51 49 C0 0E */ rlwimi r9, r10, 0x18, 0, 7
+/* 80282AD4 0027E734 9B 9D 80 00 */ stb r28, 0xCC008000@l(r29)
+/* 80282AD8 0027E738 80 E4 00 00 */ lwz r7, 0(r4)
+/* 80282ADC 0027E73C 51 07 C0 0E */ rlwimi r7, r8, 0x18, 0, 7
+/* 80282AE0 0027E740 91 9D 80 00 */ stw r12, -0x8000(r29)
+/* 80282AE4 0027E744 80 C4 00 04 */ lwz r6, 4(r4)
+/* 80282AE8 0027E748 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
+/* 80282AEC 0027E74C 9B 9D 80 00 */ stb r28, -0x8000(r29)
+/* 80282AF0 0027E750 88 03 00 1F */ lbz r0, 0x1f(r3)
+/* 80282AF4 0027E754 91 7D 80 00 */ stw r11, -0x8000(r29)
+/* 80282AF8 0027E758 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 80282AFC 0027E75C 80 03 00 0C */ lwz r0, 0xc(r3)
+/* 80282B00 0027E760 9B 9D 80 00 */ stb r28, -0x8000(r29)
+/* 80282B04 0027E764 50 A0 C0 0E */ rlwimi r0, r5, 0x18, 0, 7
+/* 80282B08 0027E768 91 3D 80 00 */ stw r9, -0x8000(r29)
+/* 80282B0C 0027E76C 9B 9D 80 00 */ stb r28, -0x8000(r29)
+/* 80282B10 0027E770 90 FD 80 00 */ stw r7, -0x8000(r29)
+/* 80282B14 0027E774 9B 9D 80 00 */ stb r28, -0x8000(r29)
+/* 80282B18 0027E778 90 DD 80 00 */ stw r6, -0x8000(r29)
+/* 80282B1C 0027E77C 9B 9D 80 00 */ stb r28, -0x8000(r29)
+/* 80282B20 0027E780 91 83 00 00 */ stw r12, 0(r3)
+/* 80282B24 0027E784 91 63 00 04 */ stw r11, 4(r3)
+/* 80282B28 0027E788 91 23 00 08 */ stw r9, 8(r3)
+/* 80282B2C 0027E78C 90 E4 00 00 */ stw r7, 0(r4)
+/* 80282B30 0027E790 90 C4 00 04 */ stw r6, 4(r4)
+/* 80282B34 0027E794 90 03 00 0C */ stw r0, 0xc(r3)
+/* 80282B38 0027E798 90 1D 80 00 */ stw r0, -0x8000(r29)
+/* 80282B3C 0027E79C 40 82 00 38 */ bne lbl_80282B74
+/* 80282B40 0027E7A0 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282B44 0027E7A4 80 63 00 18 */ lwz r3, 0x18(r3)
+/* 80282B48 0027E7A8 81 84 05 1C */ lwz r12, 0x51c(r4)
+/* 80282B4C 0027E7AC 7D 89 03 A6 */ mtctr r12
+/* 80282B50 0027E7B0 4E 80 04 21 */ bctrl
+/* 80282B54 0027E7B4 38 8D 88 98 */ addi r4, r13, lbl_8063DB58-_SDA_BASE_
+/* 80282B58 0027E7B8 80 03 00 04 */ lwz r0, 4(r3)
+/* 80282B5C 0027E7BC 7C 84 F8 AE */ lbzx r4, r4, r31
+/* 80282B60 0027E7C0 50 80 C0 0E */ rlwimi r0, r4, 0x18, 0, 7
+/* 80282B64 0027E7C4 90 03 00 04 */ stw r0, 4(r3)
+/* 80282B68 0027E7C8 9B 9D 80 00 */ stb r28, -0x8000(r29)
+/* 80282B6C 0027E7CC 80 03 00 04 */ lwz r0, 4(r3)
+/* 80282B70 0027E7D0 90 1D 80 00 */ stw r0, -0x8000(r29)
+lbl_80282B74:
+/* 80282B74 0027E7D4 80 C2 A0 D0 */ lwz r6, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282B78 0027E7D8 57 E3 10 3A */ slwi r3, r31, 2
+/* 80282B7C 0027E7DC 80 BE 00 08 */ lwz r5, 8(r30)
+/* 80282B80 0027E7E0 38 00 00 00 */ li r0, 0
+/* 80282B84 0027E7E4 7C 86 1A 14 */ add r4, r6, r3
+/* 80282B88 0027E7E8 80 7E 00 00 */ lwz r3, 0(r30)
+/* 80282B8C 0027E7EC 90 A4 05 64 */ stw r5, 0x564(r4)
+/* 80282B90 0027E7F0 90 64 05 84 */ stw r3, 0x584(r4)
+/* 80282B94 0027E7F4 80 66 05 FC */ lwz r3, 0x5fc(r6)
+/* 80282B98 0027E7F8 60 63 00 01 */ ori r3, r3, 1
+/* 80282B9C 0027E7FC 90 66 05 FC */ stw r3, 0x5fc(r6)
+/* 80282BA0 0027E800 B0 06 00 02 */ sth r0, 2(r6)
+/* 80282BA4 0027E804 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80282BA8 0027E808 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80282BAC 0027E80C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80282BB0 0027E810 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 80282BB4 0027E814 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80282BB8 0027E818 7C 08 03 A6 */ mtlr r0
+/* 80282BBC 0027E81C 38 21 00 20 */ addi r1, r1, 0x20
+/* 80282BC0 0027E820 4E 80 00 20 */ blr
+
+.global GXLoadTexObj
+GXLoadTexObj:
+/* 80282BC4 0027E824 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80282BC8 0027E828 7C 08 02 A6 */ mflr r0
+/* 80282BCC 0027E82C 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282BD0 0027E830 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80282BD4 0027E834 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80282BD8 0027E838 7C 9F 23 78 */ mr r31, r4
+/* 80282BDC 0027E83C 93 C1 00 08 */ stw r30, 8(r1)
+/* 80282BE0 0027E840 7C 7E 1B 78 */ mr r30, r3
+/* 80282BE4 0027E844 81 85 05 18 */ lwz r12, 0x518(r5)
+/* 80282BE8 0027E848 7D 89 03 A6 */ mtctr r12
+/* 80282BEC 0027E84C 4E 80 04 21 */ bctrl
+/* 80282BF0 0027E850 7C 64 1B 78 */ mr r4, r3
+/* 80282BF4 0027E854 7F C3 F3 78 */ mr r3, r30
+/* 80282BF8 0027E858 7F E5 FB 78 */ mr r5, r31
+/* 80282BFC 0027E85C 4B FF FE 65 */ bl GXLoadTexObjPreLoaded
+/* 80282C00 0027E860 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80282C04 0027E864 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80282C08 0027E868 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80282C0C 0027E86C 7C 08 03 A6 */ mtlr r0
+/* 80282C10 0027E870 38 21 00 10 */ addi r1, r1, 0x10
+/* 80282C14 0027E874 4E 80 00 20 */ blr
+
+.global GXInitTlutObj
+GXInitTlutObj:
+/* 80282C18 0027E878 80 E3 00 04 */ lwz r7, 4(r3)
+/* 80282C1C 0027E87C 38 00 00 64 */ li r0, 0x64
+/* 80282C20 0027E880 50 87 DA 3E */ rlwimi r7, r4, 0x1b, 8, 0x1f
+/* 80282C24 0027E884 38 80 00 00 */ li r4, 0
+/* 80282C28 0027E888 50 A4 55 2A */ rlwimi r4, r5, 0xa, 0x14, 0x15
+/* 80282C2C 0027E88C B0 C3 00 08 */ sth r6, 8(r3)
+/* 80282C30 0027E890 50 07 C0 0E */ rlwimi r7, r0, 0x18, 0, 7
+/* 80282C34 0027E894 90 83 00 00 */ stw r4, 0(r3)
+/* 80282C38 0027E898 90 E3 00 04 */ stw r7, 4(r3)
+/* 80282C3C 0027E89C 4E 80 00 20 */ blr
+
+.global GXLoadTlut
+GXLoadTlut:
+/* 80282C40 0027E8A0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80282C44 0027E8A4 7C 08 02 A6 */ mflr r0
+/* 80282C48 0027E8A8 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282C4C 0027E8AC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80282C50 0027E8B0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80282C54 0027E8B4 93 C1 00 08 */ stw r30, 8(r1)
+/* 80282C58 0027E8B8 7C 7E 1B 78 */ mr r30, r3
+/* 80282C5C 0027E8BC 7C 83 23 78 */ mr r3, r4
+/* 80282C60 0027E8C0 81 85 05 1C */ lwz r12, 0x51c(r5)
+/* 80282C64 0027E8C4 7D 89 03 A6 */ mtctr r12
+/* 80282C68 0027E8C8 4E 80 04 21 */ bctrl
+/* 80282C6C 0027E8CC 7C 7F 1B 78 */ mr r31, r3
+/* 80282C70 0027E8D0 48 00 0E AD */ bl __GXFlushTextureState
+/* 80282C74 0027E8D4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80282C78 0027E8D8 38 80 00 61 */ li r4, 0x61
+/* 80282C7C 0027E8DC 98 83 80 00 */ stb r4, 0xCC008000@l(r3)
+/* 80282C80 0027E8E0 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80282C84 0027E8E4 90 03 80 00 */ stw r0, -0x8000(r3)
+/* 80282C88 0027E8E8 98 83 80 00 */ stb r4, -0x8000(r3)
+/* 80282C8C 0027E8EC 80 1F 00 00 */ lwz r0, 0(r31)
+/* 80282C90 0027E8F0 90 03 80 00 */ stw r0, -0x8000(r3)
+/* 80282C94 0027E8F4 48 00 0E 89 */ bl __GXFlushTextureState
+/* 80282C98 0027E8F8 80 1F 00 00 */ lwz r0, 0(r31)
+/* 80282C9C 0027E8FC 80 9E 00 00 */ lwz r4, 0(r30)
+/* 80282CA0 0027E900 50 04 05 BE */ rlwimi r4, r0, 0, 0x16, 0x1f
+/* 80282CA4 0027E904 80 7E 00 04 */ lwz r3, 4(r30)
+/* 80282CA8 0027E908 90 9F 00 04 */ stw r4, 4(r31)
+/* 80282CAC 0027E90C 80 1E 00 08 */ lwz r0, 8(r30)
+/* 80282CB0 0027E910 90 7F 00 08 */ stw r3, 8(r31)
+/* 80282CB4 0027E914 90 1F 00 0C */ stw r0, 0xc(r31)
+/* 80282CB8 0027E918 90 9E 00 00 */ stw r4, 0(r30)
+/* 80282CBC 0027E91C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80282CC0 0027E920 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80282CC4 0027E924 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80282CC8 0027E928 7C 08 03 A6 */ mtlr r0
+/* 80282CCC 0027E92C 38 21 00 10 */ addi r1, r1, 0x10
+/* 80282CD0 0027E930 4E 80 00 20 */ blr
+
+.global GXInitTexCacheRegion
+GXInitTexCacheRegion:
+/* 80282CD4 0027E934 2C 06 00 01 */ cmpwi r6, 1
+/* 80282CD8 0027E938 41 82 00 28 */ beq lbl_80282D00
+/* 80282CDC 0027E93C 40 80 00 10 */ bge lbl_80282CEC
+/* 80282CE0 0027E940 2C 06 00 00 */ cmpwi r6, 0
+/* 80282CE4 0027E944 40 80 00 14 */ bge lbl_80282CF8
+/* 80282CE8 0027E948 48 00 00 24 */ b lbl_80282D0C
+lbl_80282CEC:
+/* 80282CEC 0027E94C 2C 06 00 03 */ cmpwi r6, 3
+/* 80282CF0 0027E950 40 80 00 1C */ bge lbl_80282D0C
+/* 80282CF4 0027E954 48 00 00 14 */ b lbl_80282D08
+lbl_80282CF8:
+/* 80282CF8 0027E958 38 C0 00 03 */ li r6, 3
+/* 80282CFC 0027E95C 48 00 00 10 */ b lbl_80282D0C
+lbl_80282D00:
+/* 80282D00 0027E960 38 C0 00 04 */ li r6, 4
+/* 80282D04 0027E964 48 00 00 08 */ b lbl_80282D0C
+lbl_80282D08:
+/* 80282D08 0027E968 38 C0 00 05 */ li r6, 5
+lbl_80282D0C:
+/* 80282D0C 0027E96C 38 00 00 00 */ li r0, 0
+/* 80282D10 0027E970 2C 08 00 02 */ cmpwi r8, 2
+/* 80282D14 0027E974 50 A0 DC 7E */ rlwimi r0, r5, 0x1b, 0x11, 0x1f
+/* 80282D18 0027E978 50 C0 7B A0 */ rlwimi r0, r6, 0xf, 0xe, 0x10
+/* 80282D1C 0027E97C 50 C0 92 DA */ rlwimi r0, r6, 0x12, 0xb, 0xd
+/* 80282D20 0027E980 90 03 00 00 */ stw r0, 0(r3)
+/* 80282D24 0027E984 41 82 00 34 */ beq lbl_80282D58
+/* 80282D28 0027E988 40 80 00 14 */ bge lbl_80282D3C
+/* 80282D2C 0027E98C 2C 08 00 00 */ cmpwi r8, 0
+/* 80282D30 0027E990 41 82 00 18 */ beq lbl_80282D48
+/* 80282D34 0027E994 40 80 00 1C */ bge lbl_80282D50
+/* 80282D38 0027E998 48 00 00 2C */ b lbl_80282D64
+lbl_80282D3C:
+/* 80282D3C 0027E99C 2C 08 00 04 */ cmpwi r8, 4
+/* 80282D40 0027E9A0 40 80 00 24 */ bge lbl_80282D64
+/* 80282D44 0027E9A4 48 00 00 1C */ b lbl_80282D60
+lbl_80282D48:
+/* 80282D48 0027E9A8 38 C0 00 03 */ li r6, 3
+/* 80282D4C 0027E9AC 48 00 00 18 */ b lbl_80282D64
+lbl_80282D50:
+/* 80282D50 0027E9B0 38 C0 00 04 */ li r6, 4
+/* 80282D54 0027E9B4 48 00 00 10 */ b lbl_80282D64
+lbl_80282D58:
+/* 80282D58 0027E9B8 38 C0 00 05 */ li r6, 5
+/* 80282D5C 0027E9BC 48 00 00 08 */ b lbl_80282D64
+lbl_80282D60:
+/* 80282D60 0027E9C0 38 C0 00 00 */ li r6, 0
+lbl_80282D64:
+/* 80282D64 0027E9C4 38 A0 00 00 */ li r5, 0
+/* 80282D68 0027E9C8 38 00 00 01 */ li r0, 1
+/* 80282D6C 0027E9CC 50 E5 DC 7E */ rlwimi r5, r7, 0x1b, 0x11, 0x1f
+/* 80282D70 0027E9D0 98 83 00 0C */ stb r4, 0xc(r3)
+/* 80282D74 0027E9D4 50 C5 7B A0 */ rlwimi r5, r6, 0xf, 0xe, 0x10
+/* 80282D78 0027E9D8 50 C5 92 DA */ rlwimi r5, r6, 0x12, 0xb, 0xd
+/* 80282D7C 0027E9DC 98 03 00 0D */ stb r0, 0xd(r3)
+/* 80282D80 0027E9E0 90 A3 00 04 */ stw r5, 4(r3)
+/* 80282D84 0027E9E4 4E 80 00 20 */ blr
+
+.global GXInitTlutRegion
+GXInitTlutRegion:
+/* 80282D88 0027E9E8 3C 04 FF F8 */ addis r0, r4, 0xfff8
+/* 80282D8C 0027E9EC 38 80 00 00 */ li r4, 0
+/* 80282D90 0027E9F0 50 04 BD BE */ rlwimi r4, r0, 0x17, 0x16, 0x1f
+/* 80282D94 0027E9F4 38 00 00 65 */ li r0, 0x65
+/* 80282D98 0027E9F8 50 A4 52 EA */ rlwimi r4, r5, 0xa, 0xb, 0x15
+/* 80282D9C 0027E9FC 50 04 C0 0E */ rlwimi r4, r0, 0x18, 0, 7
+/* 80282DA0 0027EA00 90 83 00 00 */ stw r4, 0(r3)
+/* 80282DA4 0027EA04 4E 80 00 20 */ blr
+
+.global GXInvalidateTexAll
+GXInvalidateTexAll:
+/* 80282DA8 0027EA08 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80282DAC 0027EA0C 7C 08 02 A6 */ mflr r0
+/* 80282DB0 0027EA10 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80282DB4 0027EA14 48 00 0D 69 */ bl __GXFlushTextureState
+/* 80282DB8 0027EA18 3C 80 CC 01 */ lis r4, 0xCC008000@ha
+/* 80282DBC 0027EA1C 38 A0 00 61 */ li r5, 0x61
+/* 80282DC0 0027EA20 3C 60 66 00 */ lis r3, 0x66001000@ha
+/* 80282DC4 0027EA24 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
+/* 80282DC8 0027EA28 38 03 10 00 */ addi r0, r3, 0x66001000@l
+/* 80282DCC 0027EA2C 90 04 80 00 */ stw r0, -0x8000(r4)
+/* 80282DD0 0027EA30 38 03 11 00 */ addi r0, r3, 0x1100
+/* 80282DD4 0027EA34 98 A4 80 00 */ stb r5, -0x8000(r4)
+/* 80282DD8 0027EA38 90 04 80 00 */ stw r0, -0x8000(r4)
+/* 80282DDC 0027EA3C 48 00 0D 41 */ bl __GXFlushTextureState
+/* 80282DE0 0027EA40 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80282DE4 0027EA44 7C 08 03 A6 */ mtlr r0
+/* 80282DE8 0027EA48 38 21 00 10 */ addi r1, r1, 0x10
+/* 80282DEC 0027EA4C 4E 80 00 20 */ blr
+
+.global GXSetTexRegionCallback
+GXSetTexRegionCallback:
+/* 80282DF0 0027EA50 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282DF4 0027EA54 7C 60 1B 78 */ mr r0, r3
+/* 80282DF8 0027EA58 80 64 05 18 */ lwz r3, 0x518(r4)
+/* 80282DFC 0027EA5C 90 04 05 18 */ stw r0, 0x518(r4)
+/* 80282E00 0027EA60 4E 80 00 20 */ blr
+
+.global GXSetTlutRegionCallback
+GXSetTlutRegionCallback:
+/* 80282E04 0027EA64 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282E08 0027EA68 7C 60 1B 78 */ mr r0, r3
+/* 80282E0C 0027EA6C 80 64 05 1C */ lwz r3, 0x51c(r4)
+/* 80282E10 0027EA70 90 04 05 1C */ stw r0, 0x51c(r4)
+/* 80282E14 0027EA74 4E 80 00 20 */ blr
+
+.global __SetSURegs
+__SetSURegs:
+/* 80282E18 0027EA78 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282E1C 0027EA7C 54 86 10 3A */ slwi r6, r4, 2
+/* 80282E20 0027EA80 54 60 10 3A */ slwi r0, r3, 2
+/* 80282E24 0027EA84 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80282E28 0027EA88 7D 4B 02 14 */ add r10, r11, r0
+/* 80282E2C 0027EA8C 7D 2B 32 14 */ add r9, r11, r6
+/* 80282E30 0027EA90 80 6A 05 64 */ lwz r3, 0x564(r10)
+/* 80282E34 0027EA94 38 80 00 61 */ li r4, 0x61
+/* 80282E38 0027EA98 81 09 01 08 */ lwz r8, 0x108(r9)
+/* 80282E3C 0027EA9C 38 00 00 00 */ li r0, 0
+/* 80282E40 0027EAA0 54 66 05 BE */ clrlwi r6, r3, 0x16
+/* 80282E44 0027EAA4 54 63 B5 BE */ rlwinm r3, r3, 0x16, 0x16, 0x1f
+/* 80282E48 0027EAA8 50 C8 04 3E */ rlwimi r8, r6, 0, 0x10, 0x1f
+/* 80282E4C 0027EAAC 91 09 01 08 */ stw r8, 0x108(r9)
+/* 80282E50 0027EAB0 80 E9 01 28 */ lwz r7, 0x128(r9)
+/* 80282E54 0027EAB4 50 67 04 3E */ rlwimi r7, r3, 0, 0x10, 0x1f
+/* 80282E58 0027EAB8 90 E9 01 28 */ stw r7, 0x128(r9)
+/* 80282E5C 0027EABC 80 6A 05 84 */ lwz r3, 0x584(r10)
+/* 80282E60 0027EAC0 54 66 07 BE */ clrlwi r6, r3, 0x1e
+/* 80282E64 0027EAC4 54 63 F7 BE */ rlwinm r3, r3, 0x1e, 0x1e, 0x1f
+/* 80282E68 0027EAC8 38 C6 FF FF */ addi r6, r6, -1
+/* 80282E6C 0027EACC 7C C6 00 34 */ cntlzw r6, r6
+/* 80282E70 0027EAD0 38 63 FF FF */ addi r3, r3, -1
+/* 80282E74 0027EAD4 50 C8 5B DE */ rlwimi r8, r6, 0xb, 0xf, 0xf
+/* 80282E78 0027EAD8 7C 63 00 34 */ cntlzw r3, r3
+/* 80282E7C 0027EADC 91 09 01 08 */ stw r8, 0x108(r9)
+/* 80282E80 0027EAE0 50 67 5B DE */ rlwimi r7, r3, 0xb, 0xf, 0xf
+/* 80282E84 0027EAE4 90 E9 01 28 */ stw r7, 0x128(r9)
+/* 80282E88 0027EAE8 98 85 80 00 */ stb r4, 0xCC008000@l(r5)
+/* 80282E8C 0027EAEC 80 69 01 08 */ lwz r3, 0x108(r9)
+/* 80282E90 0027EAF0 90 65 80 00 */ stw r3, -0x8000(r5)
+/* 80282E94 0027EAF4 98 85 80 00 */ stb r4, -0x8000(r5)
+/* 80282E98 0027EAF8 80 69 01 28 */ lwz r3, 0x128(r9)
+/* 80282E9C 0027EAFC 90 65 80 00 */ stw r3, -0x8000(r5)
+/* 80282EA0 0027EB00 B0 0B 00 02 */ sth r0, 2(r11)
+/* 80282EA4 0027EB04 4E 80 00 20 */ blr
+
+.global __GXSetSUTexRegs
+__GXSetSUTexRegs:
+/* 80282EA8 0027EB08 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 80282EAC 0027EB0C 7C 08 02 A6 */ mflr r0
+/* 80282EB0 0027EB10 90 01 00 34 */ stw r0, 0x34(r1)
+/* 80282EB4 0027EB14 39 61 00 30 */ addi r11, r1, 0x30
+/* 80282EB8 0027EB18 4B F4 42 61 */ bl _savegpr_23
+/* 80282EBC 0027EB1C 83 A2 A0 D0 */ lwz r29, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282EC0 0027EB20 80 1D 05 E4 */ lwz r0, 0x5e4(r29)
+/* 80282EC4 0027EB24 28 00 00 FF */ cmplwi r0, 0xff
+/* 80282EC8 0027EB28 41 82 01 30 */ beq lbl_80282FF8
+/* 80282ECC 0027EB2C 80 1D 02 54 */ lwz r0, 0x254(r29)
+/* 80282ED0 0027EB30 3B 80 00 00 */ li r28, 0
+/* 80282ED4 0027EB34 3A E0 00 01 */ li r23, 1
+/* 80282ED8 0027EB38 54 03 B7 3E */ rlwinm r3, r0, 0x16, 0x1c, 0x1f
+/* 80282EDC 0027EB3C 54 1B 87 7E */ rlwinm r27, r0, 0x10, 0x1d, 0x1f
+/* 80282EE0 0027EB40 3B 43 00 01 */ addi r26, r3, 1
+/* 80282EE4 0027EB44 48 00 00 88 */ b lbl_80282F6C
+lbl_80282EE8:
+/* 80282EE8 0027EB48 2C 1C 00 02 */ cmpwi r28, 2
+/* 80282EEC 0027EB4C 41 82 00 44 */ beq lbl_80282F30
+/* 80282EF0 0027EB50 40 80 00 14 */ bge lbl_80282F04
+/* 80282EF4 0027EB54 2C 1C 00 00 */ cmpwi r28, 0
+/* 80282EF8 0027EB58 41 82 00 18 */ beq lbl_80282F10
+/* 80282EFC 0027EB5C 40 80 00 24 */ bge lbl_80282F20
+/* 80282F00 0027EB60 48 00 00 4C */ b lbl_80282F4C
+lbl_80282F04:
+/* 80282F04 0027EB64 2C 1C 00 04 */ cmpwi r28, 4
+/* 80282F08 0027EB68 40 80 00 44 */ bge lbl_80282F4C
+/* 80282F0C 0027EB6C 48 00 00 34 */ b lbl_80282F40
+lbl_80282F10:
+/* 80282F10 0027EB70 80 1D 01 70 */ lwz r0, 0x170(r29)
+/* 80282F14 0027EB74 54 19 07 7E */ clrlwi r25, r0, 0x1d
+/* 80282F18 0027EB78 54 18 EF 7E */ rlwinm r24, r0, 0x1d, 0x1d, 0x1f
+/* 80282F1C 0027EB7C 48 00 00 30 */ b lbl_80282F4C
+lbl_80282F20:
+/* 80282F20 0027EB80 80 1D 01 70 */ lwz r0, 0x170(r29)
+/* 80282F24 0027EB84 54 19 D7 7E */ rlwinm r25, r0, 0x1a, 0x1d, 0x1f
+/* 80282F28 0027EB88 54 18 BF 7E */ rlwinm r24, r0, 0x17, 0x1d, 0x1f
+/* 80282F2C 0027EB8C 48 00 00 20 */ b lbl_80282F4C
+lbl_80282F30:
+/* 80282F30 0027EB90 80 1D 01 70 */ lwz r0, 0x170(r29)
+/* 80282F34 0027EB94 54 19 A7 7E */ rlwinm r25, r0, 0x14, 0x1d, 0x1f
+/* 80282F38 0027EB98 54 18 8F 7E */ rlwinm r24, r0, 0x11, 0x1d, 0x1f
+/* 80282F3C 0027EB9C 48 00 00 10 */ b lbl_80282F4C
+lbl_80282F40:
+/* 80282F40 0027EBA0 80 1D 01 70 */ lwz r0, 0x170(r29)
+/* 80282F44 0027EBA4 54 19 77 7E */ rlwinm r25, r0, 0xe, 0x1d, 0x1f
+/* 80282F48 0027EBA8 54 18 5F 7E */ rlwinm r24, r0, 0xb, 0x1d, 0x1f
+lbl_80282F4C:
+/* 80282F4C 0027EBAC 80 7D 05 E4 */ lwz r3, 0x5e4(r29)
+/* 80282F50 0027EBB0 7E E0 C0 30 */ slw r0, r23, r24
+/* 80282F54 0027EBB4 7C 60 00 39 */ and. r0, r3, r0
+/* 80282F58 0027EBB8 40 82 00 10 */ bne lbl_80282F68
+/* 80282F5C 0027EBBC 7F 23 CB 78 */ mr r3, r25
+/* 80282F60 0027EBC0 7F 04 C3 78 */ mr r4, r24
+/* 80282F64 0027EBC4 4B FF FE B5 */ bl __SetSURegs
+lbl_80282F68:
+/* 80282F68 0027EBC8 3B 9C 00 01 */ addi r28, r28, 1
+lbl_80282F6C:
+/* 80282F6C 0027EBCC 7C 1C D8 40 */ cmplw r28, r27
+/* 80282F70 0027EBD0 41 80 FF 78 */ blt lbl_80282EE8
+/* 80282F74 0027EBD4 83 82 A0 D0 */ lwz r28, lbl_806426D0-_SDA2_BASE_(r2)
+/* 80282F78 0027EBD8 3B 60 00 00 */ li r27, 0
+/* 80282F7C 0027EBDC 3A E0 00 01 */ li r23, 1
+/* 80282F80 0027EBE0 7F 9F E3 78 */ mr r31, r28
+/* 80282F84 0027EBE4 3B DC 01 50 */ addi r30, r28, 0x150
+/* 80282F88 0027EBE8 48 00 00 68 */ b lbl_80282FF0
+lbl_80282F8C:
+/* 80282F8C 0027EBEC 57 60 07 FF */ clrlwi. r0, r27, 0x1f
+/* 80282F90 0027EBF0 80 1F 05 A4 */ lwz r0, 0x5a4(r31)
+/* 80282F94 0027EBF4 57 63 08 3A */ rlwinm r3, r27, 1, 0, 0x1d
+/* 80282F98 0027EBF8 54 19 06 2C */ rlwinm r25, r0, 0, 0x18, 0x16
+/* 80282F9C 0027EBFC 41 82 00 10 */ beq lbl_80282FAC
+/* 80282FA0 0027EC00 7C 1E 18 2E */ lwzx r0, r30, r3
+/* 80282FA4 0027EC04 54 18 8F 7E */ rlwinm r24, r0, 0x11, 0x1d, 0x1f
+/* 80282FA8 0027EC08 48 00 00 0C */ b lbl_80282FB4
+lbl_80282FAC:
+/* 80282FAC 0027EC0C 7C 1E 18 2E */ lwzx r0, r30, r3
+/* 80282FB0 0027EC10 54 18 EF 7E */ rlwinm r24, r0, 0x1d, 0x1d, 0x1f
+lbl_80282FB4:
+/* 80282FB4 0027EC14 28 19 00 FF */ cmplwi r25, 0xff
+/* 80282FB8 0027EC18 41 82 00 30 */ beq lbl_80282FE8
+/* 80282FBC 0027EC1C 80 7D 05 E4 */ lwz r3, 0x5e4(r29)
+/* 80282FC0 0027EC20 7E E0 C0 30 */ slw r0, r23, r24
+/* 80282FC4 0027EC24 7C 60 00 39 */ and. r0, r3, r0
+/* 80282FC8 0027EC28 40 82 00 20 */ bne lbl_80282FE8
+/* 80282FCC 0027EC2C 80 7C 05 E8 */ lwz r3, 0x5e8(r28)
+/* 80282FD0 0027EC30 7E E0 D8 30 */ slw r0, r23, r27
+/* 80282FD4 0027EC34 7C 60 00 39 */ and. r0, r3, r0
+/* 80282FD8 0027EC38 41 82 00 10 */ beq lbl_80282FE8
+/* 80282FDC 0027EC3C 7F 23 CB 78 */ mr r3, r25
+/* 80282FE0 0027EC40 7F 04 C3 78 */ mr r4, r24
+/* 80282FE4 0027EC44 4B FF FE 35 */ bl __SetSURegs
+lbl_80282FE8:
+/* 80282FE8 0027EC48 3B FF 00 04 */ addi r31, r31, 4
+/* 80282FEC 0027EC4C 3B 7B 00 01 */ addi r27, r27, 1
+lbl_80282FF0:
+/* 80282FF0 0027EC50 7C 1B D0 40 */ cmplw r27, r26
+/* 80282FF4 0027EC54 41 80 FF 98 */ blt lbl_80282F8C
+lbl_80282FF8:
+/* 80282FF8 0027EC58 39 61 00 30 */ addi r11, r1, 0x30
+/* 80282FFC 0027EC5C 4B F4 41 69 */ bl _restgpr_23
+/* 80283000 0027EC60 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80283004 0027EC64 7C 08 03 A6 */ mtlr r0
+/* 80283008 0027EC68 38 21 00 30 */ addi r1, r1, 0x30
+/* 8028300C 0027EC6C 4E 80 00 20 */ blr
+
+.global __GXSetTmemConfig
+__GXSetTmemConfig:
+/* 80283010 0027EC70 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80283014 0027EC74 2C 03 00 01 */ cmpwi r3, 1
+/* 80283018 0027EC78 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8028301C 0027EC7C 93 C1 00 08 */ stw r30, 8(r1)
+/* 80283020 0027EC80 41 82 01 20 */ beq lbl_80283140
+/* 80283024 0027EC84 40 80 00 08 */ bge lbl_8028302C
+/* 80283028 0027EC88 48 00 02 24 */ b lbl_8028324C
+lbl_8028302C:
+/* 8028302C 0027EC8C 2C 03 00 03 */ cmpwi r3, 3
+/* 80283030 0027EC90 40 80 02 1C */ bge lbl_8028324C
+/* 80283034 0027EC94 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283038 0027EC98 38 00 00 61 */ li r0, 0x61
+/* 8028303C 0027EC9C 3C 80 8C 0E */ lis r4, 0x8C0D8000@ha
+/* 80283040 0027ECA0 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 80283044 0027ECA4 38 84 80 00 */ addi r4, r4, 0x8C0D8000@l
+/* 80283048 0027ECA8 3C A0 90 0E */ lis r5, 0x900DC000@ha
+/* 8028304C 0027ECAC 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 80283050 0027ECB0 3C 80 8D 0E */ lis r4, 0x8D0D8800@ha
+/* 80283054 0027ECB4 3F E0 91 0E */ lis r31, 0x910DC800@ha
+/* 80283058 0027ECB8 3F C0 8E 0E */ lis r30, 0x8E0D9000@ha
+/* 8028305C 0027ECBC 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283060 0027ECC0 38 A5 C0 00 */ addi r5, r5, 0x900DC000@l
+/* 80283064 0027ECC4 3D 80 92 0E */ lis r12, 0x920DD000@ha
+/* 80283068 0027ECC8 3D 60 8F 0E */ lis r11, 0x8F0D9800@ha
+/* 8028306C 0027ECCC 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 80283070 0027ECD0 3D 40 93 0E */ lis r10, 0x930DD800@ha
+/* 80283074 0027ECD4 3D 20 AC 0E */ lis r9, 0xAC0DA000@ha
+/* 80283078 0027ECD8 3D 00 B0 0E */ lis r8, 0xB00DC400@ha
+/* 8028307C 0027ECDC 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283080 0027ECE0 38 84 88 00 */ addi r4, r4, 0x8D0D8800@l
+/* 80283084 0027ECE4 3C E0 AD 0E */ lis r7, 0xAD0DA800@ha
+/* 80283088 0027ECE8 3C C0 B1 0E */ lis r6, 0xB10DCC00@ha
+/* 8028308C 0027ECEC 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 80283090 0027ECF0 3C A0 AE 0E */ lis r5, 0xAE0DB000@ha
+/* 80283094 0027ECF4 3C 80 B2 0E */ lis r4, 0xB20DD400@ha
+/* 80283098 0027ECF8 3B FF C8 00 */ addi r31, r31, 0x910DC800@l
+/* 8028309C 0027ECFC 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802830A0 0027ED00 3B DE 90 00 */ addi r30, r30, 0x8E0D9000@l
+/* 802830A4 0027ED04 39 8C D0 00 */ addi r12, r12, 0x920DD000@l
+/* 802830A8 0027ED08 39 6B 98 00 */ addi r11, r11, 0x8F0D9800@l
+/* 802830AC 0027ED0C 93 E3 80 00 */ stw r31, -0x8000(r3)
+/* 802830B0 0027ED10 39 4A D8 00 */ addi r10, r10, 0x930DD800@l
+/* 802830B4 0027ED14 39 29 A0 00 */ addi r9, r9, 0xAC0DA000@l
+/* 802830B8 0027ED18 39 08 C4 00 */ addi r8, r8, 0xB00DC400@l
+/* 802830BC 0027ED1C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802830C0 0027ED20 38 E7 A8 00 */ addi r7, r7, 0xAD0DA800@l
+/* 802830C4 0027ED24 38 C6 CC 00 */ addi r6, r6, 0xB10DCC00@l
+/* 802830C8 0027ED28 38 A5 B0 00 */ addi r5, r5, 0xAE0DB000@l
+/* 802830CC 0027ED2C 93 C3 80 00 */ stw r30, -0x8000(r3)
+/* 802830D0 0027ED30 38 84 D4 00 */ addi r4, r4, 0xB20DD400@l
+/* 802830D4 0027ED34 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802830D8 0027ED38 91 83 80 00 */ stw r12, -0x8000(r3)
+/* 802830DC 0027ED3C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802830E0 0027ED40 91 63 80 00 */ stw r11, -0x8000(r3)
+/* 802830E4 0027ED44 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802830E8 0027ED48 91 43 80 00 */ stw r10, -0x8000(r3)
+/* 802830EC 0027ED4C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802830F0 0027ED50 91 23 80 00 */ stw r9, -0x8000(r3)
+/* 802830F4 0027ED54 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802830F8 0027ED58 91 03 80 00 */ stw r8, -0x8000(r3)
+/* 802830FC 0027ED5C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283100 0027ED60 90 E3 80 00 */ stw r7, -0x8000(r3)
+/* 80283104 0027ED64 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283108 0027ED68 90 C3 80 00 */ stw r6, -0x8000(r3)
+/* 8028310C 0027ED6C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283110 0027ED70 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 80283114 0027ED74 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283118 0027ED78 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 8028311C 0027ED7C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283120 0027ED80 3C A0 AF 0E */ lis r5, 0xAF0DB800@ha
+/* 80283124 0027ED84 3C 80 B3 0E */ lis r4, 0xB30DDC00@ha
+/* 80283128 0027ED88 38 A5 B8 00 */ addi r5, r5, 0xAF0DB800@l
+/* 8028312C 0027ED8C 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 80283130 0027ED90 38 84 DC 00 */ addi r4, r4, 0xB30DDC00@l
+/* 80283134 0027ED94 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283138 0027ED98 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 8028313C 0027ED9C 48 00 02 18 */ b lbl_80283354
+lbl_80283140:
+/* 80283140 0027EDA0 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283144 0027EDA4 38 00 00 61 */ li r0, 0x61
+/* 80283148 0027EDA8 3C 80 8C 0E */ lis r4, 0x8C0D8000@ha
+/* 8028314C 0027EDAC 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 80283150 0027EDB0 38 84 80 00 */ addi r4, r4, 0x8C0D8000@l
+/* 80283154 0027EDB4 3C A0 90 0E */ lis r5, 0x900DC000@ha
+/* 80283158 0027EDB8 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 8028315C 0027EDBC 3C 80 8D 0E */ lis r4, 0x8D0D8800@ha
+/* 80283160 0027EDC0 3F E0 91 0E */ lis r31, 0x910DC800@ha
+/* 80283164 0027EDC4 3F C0 8E 0E */ lis r30, 0x8E0D9000@ha
+/* 80283168 0027EDC8 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 8028316C 0027EDCC 38 A5 C0 00 */ addi r5, r5, 0x900DC000@l
+/* 80283170 0027EDD0 3D 80 92 0E */ lis r12, 0x920DD000@ha
+/* 80283174 0027EDD4 3D 60 8F 0E */ lis r11, 0x8F0D9800@ha
+/* 80283178 0027EDD8 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 8028317C 0027EDDC 3D 40 93 0E */ lis r10, 0x930DD800@ha
+/* 80283180 0027EDE0 3D 20 AC 0E */ lis r9, 0xAC0DA000@ha
+/* 80283184 0027EDE4 3D 00 B0 0E */ lis r8, 0xB00DE000@ha
+/* 80283188 0027EDE8 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 8028318C 0027EDEC 38 84 88 00 */ addi r4, r4, 0x8D0D8800@l
+/* 80283190 0027EDF0 3C E0 AD 0E */ lis r7, 0xAD0DA800@ha
+/* 80283194 0027EDF4 3C C0 B1 0E */ lis r6, 0xB10DE800@ha
+/* 80283198 0027EDF8 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 8028319C 0027EDFC 3C A0 AE 0E */ lis r5, 0xAE0DB000@ha
+/* 802831A0 0027EE00 3C 80 B2 0E */ lis r4, 0xB20DF000@ha
+/* 802831A4 0027EE04 3B FF C8 00 */ addi r31, r31, 0x910DC800@l
+/* 802831A8 0027EE08 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802831AC 0027EE0C 3B DE 90 00 */ addi r30, r30, 0x8E0D9000@l
+/* 802831B0 0027EE10 39 8C D0 00 */ addi r12, r12, 0x920DD000@l
+/* 802831B4 0027EE14 39 6B 98 00 */ addi r11, r11, 0x8F0D9800@l
+/* 802831B8 0027EE18 93 E3 80 00 */ stw r31, -0x8000(r3)
+/* 802831BC 0027EE1C 39 4A D8 00 */ addi r10, r10, 0x930DD800@l
+/* 802831C0 0027EE20 39 29 A0 00 */ addi r9, r9, 0xAC0DA000@l
+/* 802831C4 0027EE24 39 08 E0 00 */ addi r8, r8, 0xB00DE000@l
+/* 802831C8 0027EE28 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802831CC 0027EE2C 38 E7 A8 00 */ addi r7, r7, 0xAD0DA800@l
+/* 802831D0 0027EE30 38 C6 E8 00 */ addi r6, r6, 0xB10DE800@l
+/* 802831D4 0027EE34 38 A5 B0 00 */ addi r5, r5, 0xAE0DB000@l
+/* 802831D8 0027EE38 93 C3 80 00 */ stw r30, -0x8000(r3)
+/* 802831DC 0027EE3C 38 84 F0 00 */ addi r4, r4, 0xB20DF000@l
+/* 802831E0 0027EE40 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802831E4 0027EE44 91 83 80 00 */ stw r12, -0x8000(r3)
+/* 802831E8 0027EE48 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802831EC 0027EE4C 91 63 80 00 */ stw r11, -0x8000(r3)
+/* 802831F0 0027EE50 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802831F4 0027EE54 91 43 80 00 */ stw r10, -0x8000(r3)
+/* 802831F8 0027EE58 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802831FC 0027EE5C 91 23 80 00 */ stw r9, -0x8000(r3)
+/* 80283200 0027EE60 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283204 0027EE64 91 03 80 00 */ stw r8, -0x8000(r3)
+/* 80283208 0027EE68 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 8028320C 0027EE6C 90 E3 80 00 */ stw r7, -0x8000(r3)
+/* 80283210 0027EE70 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283214 0027EE74 90 C3 80 00 */ stw r6, -0x8000(r3)
+/* 80283218 0027EE78 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 8028321C 0027EE7C 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 80283220 0027EE80 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283224 0027EE84 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 80283228 0027EE88 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 8028322C 0027EE8C 3C A0 AF 0E */ lis r5, 0xAF0DB800@ha
+/* 80283230 0027EE90 3C 80 B3 0E */ lis r4, 0xB30DF800@ha
+/* 80283234 0027EE94 38 A5 B8 00 */ addi r5, r5, 0xAF0DB800@l
+/* 80283238 0027EE98 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 8028323C 0027EE9C 38 84 F8 00 */ addi r4, r4, 0xB30DF800@l
+/* 80283240 0027EEA0 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283244 0027EEA4 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 80283248 0027EEA8 48 00 01 0C */ b lbl_80283354
+lbl_8028324C:
+/* 8028324C 0027EEAC 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80283250 0027EEB0 38 00 00 61 */ li r0, 0x61
+/* 80283254 0027EEB4 3C 80 8C 0E */ lis r4, 0x8C0D8000@ha
+/* 80283258 0027EEB8 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 8028325C 0027EEBC 38 84 80 00 */ addi r4, r4, 0x8C0D8000@l
+/* 80283260 0027EEC0 3C A0 90 0E */ lis r5, 0x900DC000@ha
+/* 80283264 0027EEC4 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 80283268 0027EEC8 3C 80 8D 0E */ lis r4, 0x8D0D8400@ha
+/* 8028326C 0027EECC 3F C0 91 0E */ lis r30, 0x910DC400@ha
+/* 80283270 0027EED0 3F E0 8E 0E */ lis r31, 0x8E0D8800@ha
+/* 80283274 0027EED4 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283278 0027EED8 38 A5 C0 00 */ addi r5, r5, 0x900DC000@l
+/* 8028327C 0027EEDC 3D 80 92 0E */ lis r12, 0x920DC800@ha
+/* 80283280 0027EEE0 3D 60 8F 0E */ lis r11, 0x8F0D8C00@ha
+/* 80283284 0027EEE4 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 80283288 0027EEE8 3D 40 93 0E */ lis r10, 0x930DCC00@ha
+/* 8028328C 0027EEEC 3D 20 AC 0E */ lis r9, 0xAC0D9000@ha
+/* 80283290 0027EEF0 3D 00 B0 0E */ lis r8, 0xB00DD000@ha
+/* 80283294 0027EEF4 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283298 0027EEF8 38 84 84 00 */ addi r4, r4, 0x8D0D8400@l
+/* 8028329C 0027EEFC 3C E0 AD 0E */ lis r7, 0xAD0D9400@ha
+/* 802832A0 0027EF00 3C C0 B1 0E */ lis r6, 0xB10DD400@ha
+/* 802832A4 0027EF04 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 802832A8 0027EF08 3C A0 AE 0E */ lis r5, 0xAE0D9800@ha
+/* 802832AC 0027EF0C 3C 80 B2 0E */ lis r4, 0xB20DD800@ha
+/* 802832B0 0027EF10 3B DE C4 00 */ addi r30, r30, 0x910DC400@l
+/* 802832B4 0027EF14 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802832B8 0027EF18 3B FF 88 00 */ addi r31, r31, 0x8E0D8800@l
+/* 802832BC 0027EF1C 39 8C C8 00 */ addi r12, r12, 0x920DC800@l
+/* 802832C0 0027EF20 39 6B 8C 00 */ addi r11, r11, 0x8F0D8C00@l
+/* 802832C4 0027EF24 93 C3 80 00 */ stw r30, -0x8000(r3)
+/* 802832C8 0027EF28 39 4A CC 00 */ addi r10, r10, 0x930DCC00@l
+/* 802832CC 0027EF2C 39 29 90 00 */ addi r9, r9, 0xAC0D9000@l
+/* 802832D0 0027EF30 39 08 D0 00 */ addi r8, r8, 0xB00DD000@l
+/* 802832D4 0027EF34 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802832D8 0027EF38 38 E7 94 00 */ addi r7, r7, 0xAD0D9400@l
+/* 802832DC 0027EF3C 38 C6 D4 00 */ addi r6, r6, 0xB10DD400@l
+/* 802832E0 0027EF40 38 A5 98 00 */ addi r5, r5, 0xAE0D9800@l
+/* 802832E4 0027EF44 93 E3 80 00 */ stw r31, -0x8000(r3)
+/* 802832E8 0027EF48 38 84 D8 00 */ addi r4, r4, 0xB20DD800@l
+/* 802832EC 0027EF4C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802832F0 0027EF50 91 83 80 00 */ stw r12, -0x8000(r3)
+/* 802832F4 0027EF54 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 802832F8 0027EF58 91 63 80 00 */ stw r11, -0x8000(r3)
+/* 802832FC 0027EF5C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283300 0027EF60 91 43 80 00 */ stw r10, -0x8000(r3)
+/* 80283304 0027EF64 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283308 0027EF68 91 23 80 00 */ stw r9, -0x8000(r3)
+/* 8028330C 0027EF6C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283310 0027EF70 91 03 80 00 */ stw r8, -0x8000(r3)
+/* 80283314 0027EF74 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283318 0027EF78 90 E3 80 00 */ stw r7, -0x8000(r3)
+/* 8028331C 0027EF7C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283320 0027EF80 90 C3 80 00 */ stw r6, -0x8000(r3)
+/* 80283324 0027EF84 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283328 0027EF88 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 8028332C 0027EF8C 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283330 0027EF90 90 83 80 00 */ stw r4, -0x8000(r3)
+/* 80283334 0027EF94 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283338 0027EF98 3C A0 AF 0E */ lis r5, 0xAF0D9C00@ha
+/* 8028333C 0027EF9C 3C 80 B3 0E */ lis r4, 0xB30DDC00@ha
+/* 80283340 0027EFA0 38 A5 9C 00 */ addi r5, r5, 0xAF0D9C00@l
+/* 80283344 0027EFA4 90 A3 80 00 */ stw r5, -0x8000(r3)
+/* 80283348 0027EFA8 38 84 DC 00 */ addi r4, r4, 0xB30DDC00@l
+/* 8028334C 0027EFAC 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80283350 0027EFB0 90 83 80 00 */ stw r4, -0x8000(r3)
+lbl_80283354:
+/* 80283354 0027EFB4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80283358 0027EFB8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8028335C 0027EFBC 38 21 00 10 */ addi r1, r1, 0x10
+/* 80283360 0027EFC0 4E 80 00 20 */ blr
diff --git a/asm/SDK/HBM/HBMBase.s b/asm/SDK/HBM/HBMBase.s
index 68c7acd..0cbc740 100644
--- a/asm/SDK/HBM/HBMBase.s
+++ b/asm/SDK/HBM/HBMBase.s
@@ -228,7 +228,7 @@ lbl_8039A30C:
/* 8039A348 00395FA8 9B E1 00 0F */ stb r31, 0xf(r1)
/* 8039A34C 00395FAC 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8039A350 00395FB0 90 01 00 08 */ stw r0, 8(r1)
-/* 8039A354 00395FB4 4B EE 99 B1 */ bl func_80283D04
+/* 8039A354 00395FB4 4B EE 99 B1 */ bl GXSetTevColor
/* 8039A358 00395FB8 38 60 00 80 */ li r3, 0x80
/* 8039A35C 00395FBC 38 80 00 00 */ li r4, 0
/* 8039A360 00395FC0 38 A0 00 04 */ li r5, 4
@@ -10342,69 +10342,69 @@ initgx__10homebuttonFv:
/* 803A3304 0039EF64 38 60 00 00 */ li r3, 0
/* 803A3308 0039EF68 4B ED D2 ED */ bl GXSetNumTexGens
/* 803A330C 0039EF6C 38 60 00 01 */ li r3, 1
-/* 803A3310 0039EF70 4B EE 0E 8D */ bl func_8028419C
+/* 803A3310 0039EF70 4B EE 0E 8D */ bl GXSetNumTevStages
/* 803A3314 0039EF74 38 60 00 00 */ li r3, 0
/* 803A3318 0039EF78 38 80 00 FF */ li r4, 0xff
/* 803A331C 0039EF7C 38 A0 00 FF */ li r5, 0xff
/* 803A3320 0039EF80 38 C0 00 FF */ li r6, 0xff
-/* 803A3324 0039EF84 4B EE 0D 1D */ bl func_80284040
+/* 803A3324 0039EF84 4B EE 0D 1D */ bl GXSetTevOrder
/* 803A3328 0039EF88 38 60 00 00 */ li r3, 0
/* 803A332C 0039EF8C 38 80 00 0F */ li r4, 0xf
/* 803A3330 0039EF90 38 A0 00 0F */ li r5, 0xf
/* 803A3334 0039EF94 38 C0 00 0F */ li r6, 0xf
/* 803A3338 0039EF98 38 E0 00 02 */ li r7, 2
-/* 803A333C 0039EF9C 4B EE 08 99 */ bl func_80283BD4
+/* 803A333C 0039EF9C 4B EE 08 99 */ bl GXSetTevColorIn
/* 803A3340 0039EFA0 38 60 00 00 */ li r3, 0
/* 803A3344 0039EFA4 38 80 00 00 */ li r4, 0
/* 803A3348 0039EFA8 38 A0 00 00 */ li r5, 0
/* 803A334C 0039EFAC 38 C0 00 00 */ li r6, 0
/* 803A3350 0039EFB0 38 E0 00 01 */ li r7, 1
/* 803A3354 0039EFB4 39 00 00 00 */ li r8, 0
-/* 803A3358 0039EFB8 4B EE 08 FD */ bl func_80283C54
+/* 803A3358 0039EFB8 4B EE 08 FD */ bl GXSetTevColorOp
/* 803A335C 0039EFBC 38 60 00 00 */ li r3, 0
/* 803A3360 0039EFC0 38 80 00 07 */ li r4, 7
/* 803A3364 0039EFC4 38 A0 00 07 */ li r5, 7
/* 803A3368 0039EFC8 38 C0 00 07 */ li r6, 7
/* 803A336C 0039EFCC 38 E0 00 01 */ li r7, 1
-/* 803A3370 0039EFD0 4B EE 08 A5 */ bl func_80283C14
+/* 803A3370 0039EFD0 4B EE 08 A5 */ bl GXSetTevAlphaIn
/* 803A3374 0039EFD4 38 60 00 00 */ li r3, 0
/* 803A3378 0039EFD8 38 80 00 00 */ li r4, 0
/* 803A337C 0039EFDC 38 A0 00 00 */ li r5, 0
/* 803A3380 0039EFE0 38 C0 00 00 */ li r6, 0
/* 803A3384 0039EFE4 38 E0 00 01 */ li r7, 1
/* 803A3388 0039EFE8 39 00 00 00 */ li r8, 0
-/* 803A338C 0039EFEC 4B EE 09 21 */ bl func_80283CAC
+/* 803A338C 0039EFEC 4B EE 09 21 */ bl GXSetTevAlphaOp
/* 803A3390 0039EFF0 38 60 00 07 */ li r3, 7
/* 803A3394 0039EFF4 38 80 00 00 */ li r4, 0
/* 803A3398 0039EFF8 38 A0 00 01 */ li r5, 1
/* 803A339C 0039EFFC 38 C0 00 07 */ li r6, 7
/* 803A33A0 0039F000 38 E0 00 00 */ li r7, 0
-/* 803A33A4 0039F004 4B EE 0B D9 */ bl func_80283F7C
+/* 803A33A4 0039F004 4B EE 0B D9 */ bl GXSetAlphaCompare
/* 803A33A8 0039F008 38 60 00 01 */ li r3, 1
/* 803A33AC 0039F00C 38 80 00 04 */ li r4, 4
/* 803A33B0 0039F010 38 A0 00 05 */ li r5, 5
/* 803A33B4 0039F014 38 C0 00 05 */ li r6, 5
-/* 803A33B8 0039F018 4B EE 12 E5 */ bl func_8028469C
+/* 803A33B8 0039F018 4B EE 12 E5 */ bl GXSetBlendMode
/* 803A33BC 0039F01C 38 60 00 00 */ li r3, 0
-/* 803A33C0 0039F020 4B EE 13 59 */ bl func_80284718
+/* 803A33C0 0039F020 4B EE 13 59 */ bl GXSetAlphaUpdate
/* 803A33C4 0039F024 38 60 00 00 */ li r3, 0
/* 803A33C8 0039F028 38 80 00 07 */ li r4, 7
/* 803A33CC 0039F02C 38 A0 00 00 */ li r5, 0
-/* 803A33D0 0039F030 4B EE 13 75 */ bl func_80284744
+/* 803A33D0 0039F030 4B EE 13 75 */ bl GXSetZMode
/* 803A33D4 0039F034 38 60 00 00 */ li r3, 0
/* 803A33D8 0039F038 4B ED E8 81 */ bl GXSetDispCopyGamma
/* 803A33DC 0039F03C 38 60 00 00 */ li r3, 0
-/* 803A33E0 0039F040 4B EE 03 11 */ bl func_802836F0
+/* 803A33E0 0039F040 4B EE 03 11 */ bl GXSetNumIndStages
/* 803A33E4 0039F044 38 60 00 00 */ li r3, 0
/* 803A33E8 0039F048 38 80 00 00 */ li r4, 0
/* 803A33EC 0039F04C 38 A0 00 01 */ li r5, 1
/* 803A33F0 0039F050 38 C0 00 02 */ li r6, 2
/* 803A33F4 0039F054 38 E0 00 03 */ li r7, 3
-/* 803A33F8 0039F058 4B EE 0B 09 */ bl func_80283F00
+/* 803A33F8 0039F058 4B EE 0B 09 */ bl GXSetTevSwapModeTable
/* 803A33FC 0039F05C 38 60 00 00 */ li r3, 0
/* 803A3400 0039F060 38 80 00 00 */ li r4, 0
/* 803A3404 0039F064 38 A0 00 00 */ li r5, 0
-/* 803A3408 0039F068 4B EE 0A BD */ bl func_80283EC4
+/* 803A3408 0039F068 4B EE 0A BD */ bl GXSetTevSwapMode
/* 803A340C 0039F06C 80 01 00 44 */ lwz r0, 0x44(r1)
/* 803A3410 0039F070 7C 08 03 A6 */ mtlr r0
/* 803A3414 0039F074 38 21 00 40 */ addi r1, r1, 0x40
diff --git a/asm/SDK/HBM/HBMGUIManager.s b/asm/SDK/HBM/HBMGUIManager.s
index eab80b6..9b370b5 100644
--- a/asm/SDK/HBM/HBMGUIManager.s
+++ b/asm/SDK/HBM/HBMGUIManager.s
@@ -60,20 +60,20 @@ drawLine___Q210homebutton3guiFfffffUcR8_GXColor:
/* 803A3A38 0039F698 38 60 00 00 */ li r3, 0
/* 803A3A3C 0039F69C 4B ED CB B9 */ bl GXSetNumTexGens
/* 803A3A40 0039F6A0 38 60 00 01 */ li r3, 1
-/* 803A3A44 0039F6A4 4B EE 07 59 */ bl func_8028419C
+/* 803A3A44 0039F6A4 4B EE 07 59 */ bl GXSetNumTevStages
/* 803A3A48 0039F6A8 38 60 00 00 */ li r3, 0
/* 803A3A4C 0039F6AC 38 80 00 04 */ li r4, 4
-/* 803A3A50 0039F6B0 4B EE 00 F1 */ bl func_80283B40
+/* 803A3A50 0039F6B0 4B EE 00 F1 */ bl GXSetTevOp
/* 803A3A54 0039F6B4 38 60 00 00 */ li r3, 0
/* 803A3A58 0039F6B8 38 80 00 FF */ li r4, 0xff
/* 803A3A5C 0039F6BC 38 A0 00 FF */ li r5, 0xff
/* 803A3A60 0039F6C0 38 C0 00 04 */ li r6, 4
-/* 803A3A64 0039F6C4 4B EE 05 DD */ bl func_80284040
+/* 803A3A64 0039F6C4 4B EE 05 DD */ bl GXSetTevOrder
/* 803A3A68 0039F6C8 38 60 00 00 */ li r3, 0
/* 803A3A6C 0039F6CC 38 80 00 00 */ li r4, 0
/* 803A3A70 0039F6D0 38 A0 00 00 */ li r5, 0
/* 803A3A74 0039F6D4 38 C0 00 05 */ li r6, 5
-/* 803A3A78 0039F6D8 4B EE 0C 25 */ bl func_8028469C
+/* 803A3A78 0039F6D8 4B EE 0C 25 */ bl GXSetBlendMode
/* 803A3A7C 0039F6DC C0 22 A9 B0 */ lfs f1, lbl_80642FB0-_SDA2_BASE_(r2)
/* 803A3A80 0039F6E0 38 61 00 08 */ addi r3, r1, 8
/* 803A3A84 0039F6E4 FC 40 08 90 */ fmr f2, f1
diff --git a/asm/code_800097D8.s b/asm/code_800097D8.s
index 02007fc..906fc09 100644
--- a/asm/code_800097D8.s
+++ b/asm/code_800097D8.s
@@ -241,24 +241,24 @@ func_80009A78:
/* 80009AD8 00005738 38 60 00 00 */ li r3, 0
/* 80009ADC 0000573C 48 27 6B 19 */ bl GXSetNumTexGens
/* 80009AE0 00005740 38 60 00 01 */ li r3, 1
-/* 80009AE4 00005744 48 27 A6 B9 */ bl func_8028419C
+/* 80009AE4 00005744 48 27 A6 B9 */ bl GXSetNumTevStages
/* 80009AE8 00005748 38 60 00 00 */ li r3, 0
/* 80009AEC 0000574C 38 80 00 FF */ li r4, 0xff
/* 80009AF0 00005750 38 A0 00 FF */ li r5, 0xff
/* 80009AF4 00005754 38 C0 00 04 */ li r6, 4
-/* 80009AF8 00005758 48 27 A5 49 */ bl func_80284040
+/* 80009AF8 00005758 48 27 A5 49 */ bl GXSetTevOrder
/* 80009AFC 0000575C 38 60 00 00 */ li r3, 0
/* 80009B00 00005760 38 80 00 04 */ li r4, 4
-/* 80009B04 00005764 48 27 A0 3D */ bl func_80283B40
+/* 80009B04 00005764 48 27 A0 3D */ bl GXSetTevOp
/* 80009B08 00005768 38 60 00 00 */ li r3, 0
/* 80009B0C 0000576C 38 80 00 00 */ li r4, 0
/* 80009B10 00005770 38 A0 00 00 */ li r5, 0
/* 80009B14 00005774 38 C0 00 00 */ li r6, 0
-/* 80009B18 00005778 48 27 AB 85 */ bl func_8028469C
+/* 80009B18 00005778 48 27 AB 85 */ bl GXSetBlendMode
/* 80009B1C 0000577C 38 60 00 01 */ li r3, 1
/* 80009B20 00005780 38 80 00 03 */ li r4, 3
/* 80009B24 00005784 38 A0 00 01 */ li r5, 1
-/* 80009B28 00005788 48 27 AC 1D */ bl func_80284744
+/* 80009B28 00005788 48 27 AC 1D */ bl GXSetZMode
/* 80009B2C 0000578C 38 60 00 03 */ li r3, 3
/* 80009B30 00005790 48 27 D0 01 */ bl func_80286B30
/* 80009B34 00005794 80 01 00 14 */ lwz r0, 0x14(r1)
@@ -314,7 +314,7 @@ func_80009B44:
/* 80009BF0 00005850 39 00 00 7D */ li r8, 0x7d
/* 80009BF4 00005854 48 27 67 D9 */ bl GXSetTexCoordGen2
/* 80009BF8 00005858 38 60 00 01 */ li r3, 1
-/* 80009BFC 0000585C 48 27 A5 A1 */ bl func_8028419C
+/* 80009BFC 0000585C 48 27 A5 A1 */ bl GXSetNumTevStages
/* 80009C00 00005860 88 C2 80 48 */ lbz r6, lbl_80640648-_SDA2_BASE_(r2)
/* 80009C04 00005864 38 81 00 0C */ addi r4, r1, 0xc
/* 80009C08 00005868 88 A2 80 49 */ lbz r5, lbl_80640649-_SDA2_BASE_(r2)
@@ -326,47 +326,47 @@ func_80009B44:
/* 80009C20 00005880 9B E1 00 0B */ stb r31, 0xb(r1)
/* 80009C24 00005884 80 01 00 08 */ lwz r0, 8(r1)
/* 80009C28 00005888 90 01 00 0C */ stw r0, 0xc(r1)
-/* 80009C2C 0000588C 48 27 A0 D9 */ bl func_80283D04
+/* 80009C2C 0000588C 48 27 A0 D9 */ bl GXSetTevColor
/* 80009C30 00005890 38 60 00 00 */ li r3, 0
/* 80009C34 00005894 38 80 00 00 */ li r4, 0
/* 80009C38 00005898 38 A0 00 00 */ li r5, 0
/* 80009C3C 0000589C 38 C0 00 FF */ li r6, 0xff
-/* 80009C40 000058A0 48 27 A4 01 */ bl func_80284040
+/* 80009C40 000058A0 48 27 A4 01 */ bl GXSetTevOrder
/* 80009C44 000058A4 38 60 00 00 */ li r3, 0
/* 80009C48 000058A8 38 80 00 0F */ li r4, 0xf
/* 80009C4C 000058AC 38 A0 00 0F */ li r5, 0xf
/* 80009C50 000058B0 38 C0 00 0F */ li r6, 0xf
/* 80009C54 000058B4 38 E0 00 08 */ li r7, 8
-/* 80009C58 000058B8 48 27 9F 7D */ bl func_80283BD4
+/* 80009C58 000058B8 48 27 9F 7D */ bl GXSetTevColorIn
/* 80009C5C 000058BC 38 60 00 00 */ li r3, 0
/* 80009C60 000058C0 38 80 00 00 */ li r4, 0
/* 80009C64 000058C4 38 A0 00 00 */ li r5, 0
/* 80009C68 000058C8 38 C0 00 00 */ li r6, 0
/* 80009C6C 000058CC 38 E0 00 01 */ li r7, 1
/* 80009C70 000058D0 39 00 00 00 */ li r8, 0
-/* 80009C74 000058D4 48 27 9F E1 */ bl func_80283C54
+/* 80009C74 000058D4 48 27 9F E1 */ bl GXSetTevColorOp
/* 80009C78 000058D8 38 60 00 00 */ li r3, 0
/* 80009C7C 000058DC 38 80 00 07 */ li r4, 7
/* 80009C80 000058E0 38 A0 00 01 */ li r5, 1
/* 80009C84 000058E4 38 C0 00 04 */ li r6, 4
/* 80009C88 000058E8 38 E0 00 07 */ li r7, 7
-/* 80009C8C 000058EC 48 27 9F 89 */ bl func_80283C14
+/* 80009C8C 000058EC 48 27 9F 89 */ bl GXSetTevAlphaIn
/* 80009C90 000058F0 38 60 00 00 */ li r3, 0
/* 80009C94 000058F4 38 80 00 00 */ li r4, 0
/* 80009C98 000058F8 38 A0 00 00 */ li r5, 0
/* 80009C9C 000058FC 38 C0 00 00 */ li r6, 0
/* 80009CA0 00005900 38 E0 00 01 */ li r7, 1
/* 80009CA4 00005904 39 00 00 00 */ li r8, 0
-/* 80009CA8 00005908 48 27 A0 05 */ bl func_80283CAC
+/* 80009CA8 00005908 48 27 A0 05 */ bl GXSetTevAlphaOp
/* 80009CAC 0000590C 38 60 00 01 */ li r3, 1
/* 80009CB0 00005910 38 80 00 04 */ li r4, 4
/* 80009CB4 00005914 38 A0 00 05 */ li r5, 5
/* 80009CB8 00005918 38 C0 00 00 */ li r6, 0
-/* 80009CBC 0000591C 48 27 A9 E1 */ bl func_8028469C
+/* 80009CBC 0000591C 48 27 A9 E1 */ bl GXSetBlendMode
/* 80009CC0 00005920 38 60 00 00 */ li r3, 0
/* 80009CC4 00005924 38 80 00 03 */ li r4, 3
/* 80009CC8 00005928 38 A0 00 00 */ li r5, 0
-/* 80009CCC 0000592C 48 27 AA 79 */ bl func_80284744
+/* 80009CCC 0000592C 48 27 AA 79 */ bl GXSetZMode
/* 80009CD0 00005930 38 60 00 03 */ li r3, 3
/* 80009CD4 00005934 48 27 CE 5D */ bl func_80286B30
/* 80009CD8 00005938 80 7E 00 1C */ lwz r3, 0x1c(r30)
@@ -375,7 +375,7 @@ func_80009B44:
/* 80009CE4 00005944 48 29 1D 69 */ bl func_8029BA4C
/* 80009CE8 00005948 38 61 00 10 */ addi r3, r1, 0x10
/* 80009CEC 0000594C 38 80 00 00 */ li r4, 0
-/* 80009CF0 00005950 48 27 8E D5 */ bl func_80282BC4
+/* 80009CF0 00005950 48 27 8E D5 */ bl GXLoadTexObj
/* 80009CF4 00005954 38 60 00 80 */ li r3, 0x80
/* 80009CF8 00005958 38 80 00 05 */ li r4, 5
/* 80009CFC 0000595C 38 A0 00 04 */ li r5, 4
diff --git a/asm/nw4r/lyt/lyt_material.s b/asm/nw4r/lyt/lyt_material.s
index c337b13..78f7536 100644
--- a/asm/nw4r/lyt/lyt_material.s
+++ b/asm/nw4r/lyt/lyt_material.s
@@ -200,7 +200,7 @@ lbl_8038A6A8:
/* 8038A6BC 0038631C D0 A1 00 14 */ stfs f5, 0x14(r1)
/* 8038A6C0 00386320 D0 C1 00 18 */ stfs f6, 0x18(r1)
/* 8038A6C4 00386324 D0 E1 00 1C */ stfs f7, 0x1c(r1)
-/* 8038A6C8 00386328 4B EF 8D 05 */ bl func_802833CC
+/* 8038A6C8 00386328 4B EF 8D 05 */ bl GXSetIndTexMtx
/* 8038A6CC 0038632C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8038A6D0 00386330 7C 08 03 A6 */ mtlr r0
/* 8038A6D4 00386334 38 21 00 20 */ addi r1, r1, 0x20
@@ -2379,17 +2379,17 @@ lbl_8038C678:
lbl_8038C680:
/* 8038C680 003882E0 7F 84 E3 78 */ mr r4, r28
/* 8038C684 003882E4 38 61 00 80 */ addi r3, r1, 0x80
-/* 8038C688 003882E8 4B EF 63 B5 */ bl func_80282A3C
+/* 8038C688 003882E8 4B EF 63 B5 */ bl GXInitTexObjTlut
/* 8038C68C 003882EC 7F 03 C3 78 */ mr r3, r24
/* 8038C690 003882F0 38 81 00 50 */ addi r4, r1, 0x50
/* 8038C694 003882F4 48 00 0D E1 */ bl Get__Q34nw4r3lyt6TexMapCFP10_GXTlutObj
/* 8038C698 003882F8 7F 84 E3 78 */ mr r4, r28
/* 8038C69C 003882FC 38 61 00 50 */ addi r3, r1, 0x50
-/* 8038C6A0 00388300 4B EF 65 A1 */ bl func_80282C40
+/* 8038C6A0 00388300 4B EF 65 A1 */ bl GXLoadTlut
lbl_8038C6A4:
/* 8038C6A4 00388304 7F 44 D3 78 */ mr r4, r26
/* 8038C6A8 00388308 38 61 00 80 */ addi r3, r1, 0x80
-/* 8038C6AC 0038830C 4B EF 65 19 */ bl func_80282BC4
+/* 8038C6AC 0038830C 4B EF 65 19 */ bl GXLoadTexObj
/* 8038C6B0 00388310 3B 18 00 1C */ addi r24, r24, 0x1c
/* 8038C6B4 00388314 3B 5A 00 01 */ addi r26, r26, 1
lbl_8038C6B8:
@@ -2408,7 +2408,7 @@ lbl_8038C6C8:
/* 8038C6E4 00388344 A0 1B 00 16 */ lhz r0, 0x16(r27)
/* 8038C6E8 00388348 B0 A1 00 4C */ sth r5, 0x4c(r1)
/* 8038C6EC 0038834C B0 01 00 4E */ sth r0, 0x4e(r1)
-/* 8038C6F0 00388350 4B EF 76 75 */ bl func_80283D64
+/* 8038C6F0 00388350 4B EF 76 75 */ bl GXSetTevColorS10
/* 8038C6F4 00388354 A0 BB 00 18 */ lhz r5, 0x18(r27)
/* 8038C6F8 00388358 38 81 00 40 */ addi r4, r1, 0x40
/* 8038C6FC 0038835C A0 1B 00 1A */ lhz r0, 0x1a(r27)
@@ -2419,7 +2419,7 @@ lbl_8038C6C8:
/* 8038C710 00388370 A0 1B 00 1E */ lhz r0, 0x1e(r27)
/* 8038C714 00388374 B0 A1 00 44 */ sth r5, 0x44(r1)
/* 8038C718 00388378 B0 01 00 46 */ sth r0, 0x46(r1)
-/* 8038C71C 0038837C 4B EF 76 49 */ bl func_80283D64
+/* 8038C71C 0038837C 4B EF 76 49 */ bl GXSetTevColorS10
/* 8038C720 00388380 A0 BB 00 20 */ lhz r5, 0x20(r27)
/* 8038C724 00388384 38 81 00 38 */ addi r4, r1, 0x38
/* 8038C728 00388388 A0 1B 00 22 */ lhz r0, 0x22(r27)
@@ -2430,7 +2430,7 @@ lbl_8038C6C8:
/* 8038C73C 0038839C A0 1B 00 26 */ lhz r0, 0x26(r27)
/* 8038C740 003883A0 B0 A1 00 3C */ sth r5, 0x3c(r1)
/* 8038C744 003883A4 B0 01 00 3E */ sth r0, 0x3e(r1)
-/* 8038C748 003883A8 4B EF 76 1D */ bl func_80283D64
+/* 8038C748 003883A8 4B EF 76 1D */ bl GXSetTevColorS10
/* 8038C74C 003883AC 88 1B 00 28 */ lbz r0, 0x28(r27)
/* 8038C750 003883B0 38 81 00 1C */ addi r4, r1, 0x1c
/* 8038C754 003883B4 38 60 00 00 */ li r3, 0
@@ -2441,7 +2441,7 @@ lbl_8038C6C8:
/* 8038C768 003883C8 98 01 00 1E */ stb r0, 0x1e(r1)
/* 8038C76C 003883CC 88 1B 00 2B */ lbz r0, 0x2b(r27)
/* 8038C770 003883D0 98 01 00 1F */ stb r0, 0x1f(r1)
-/* 8038C774 003883D4 4B EF 76 55 */ bl func_80283DC8
+/* 8038C774 003883D4 4B EF 76 55 */ bl GXSetTevKColor
/* 8038C778 003883D8 88 1B 00 2C */ lbz r0, 0x2c(r27)
/* 8038C77C 003883DC 38 81 00 18 */ addi r4, r1, 0x18
/* 8038C780 003883E0 38 60 00 01 */ li r3, 1
@@ -2452,7 +2452,7 @@ lbl_8038C6C8:
/* 8038C794 003883F4 98 01 00 1A */ stb r0, 0x1a(r1)
/* 8038C798 003883F8 88 1B 00 2F */ lbz r0, 0x2f(r27)
/* 8038C79C 003883FC 98 01 00 1B */ stb r0, 0x1b(r1)
-/* 8038C7A0 00388400 4B EF 76 29 */ bl func_80283DC8
+/* 8038C7A0 00388400 4B EF 76 29 */ bl GXSetTevKColor
/* 8038C7A4 00388404 88 1B 00 30 */ lbz r0, 0x30(r27)
/* 8038C7A8 00388408 38 81 00 14 */ addi r4, r1, 0x14
/* 8038C7AC 0038840C 38 60 00 02 */ li r3, 2
@@ -2463,7 +2463,7 @@ lbl_8038C6C8:
/* 8038C7C0 00388420 98 01 00 16 */ stb r0, 0x16(r1)
/* 8038C7C4 00388424 88 1B 00 33 */ lbz r0, 0x33(r27)
/* 8038C7C8 00388428 98 01 00 17 */ stb r0, 0x17(r1)
-/* 8038C7CC 0038842C 4B EF 75 FD */ bl func_80283DC8
+/* 8038C7CC 0038842C 4B EF 75 FD */ bl GXSetTevKColor
/* 8038C7D0 00388430 88 1B 00 34 */ lbz r0, 0x34(r27)
/* 8038C7D4 00388434 38 81 00 10 */ addi r4, r1, 0x10
/* 8038C7D8 00388438 38 60 00 03 */ li r3, 3
@@ -2474,7 +2474,7 @@ lbl_8038C6C8:
/* 8038C7EC 0038844C 98 01 00 12 */ stb r0, 0x12(r1)
/* 8038C7F0 00388450 88 1B 00 37 */ lbz r0, 0x37(r27)
/* 8038C7F4 00388454 98 01 00 13 */ stb r0, 0x13(r1)
-/* 8038C7F8 00388458 4B EF 75 D1 */ bl func_80283DC8
+/* 8038C7F8 00388458 4B EF 75 D1 */ bl GXSetTevKColor
/* 8038C7FC 0038845C 80 DB 00 38 */ lwz r6, 0x38(r27)
/* 8038C800 00388460 54 C0 97 FF */ rlwinm. r0, r6, 0x12, 0x1f, 0x1f
/* 8038C804 00388464 41 82 00 6C */ beq lbl_8038C870
@@ -2499,7 +2499,7 @@ lbl_8038C840:
/* 8038C84C 003884AC 54 05 F7 BE */ rlwinm r5, r0, 0x1e, 0x1e, 0x1f
/* 8038C850 003884B0 54 06 E7 BE */ rlwinm r6, r0, 0x1c, 0x1e, 0x1f
/* 8038C854 003884B4 54 07 D7 BE */ rlwinm r7, r0, 0x1a, 0x1e, 0x1f
-/* 8038C858 003884B8 4B EF 76 A9 */ bl func_80283F00
+/* 8038C858 003884B8 4B EF 76 A9 */ bl GXSetTevSwapModeTable
/* 8038C85C 003884BC 3A F7 00 01 */ addi r23, r23, 1
/* 8038C860 003884C0 3B 9C 00 01 */ addi r28, r28, 1
/* 8038C864 003884C4 2C 17 00 04 */ cmpwi r23, 4
@@ -2511,25 +2511,25 @@ lbl_8038C870:
/* 8038C878 003884D8 38 A0 00 01 */ li r5, 1
/* 8038C87C 003884DC 38 C0 00 02 */ li r6, 2
/* 8038C880 003884E0 38 E0 00 03 */ li r7, 3
-/* 8038C884 003884E4 4B EF 76 7D */ bl func_80283F00
+/* 8038C884 003884E4 4B EF 76 7D */ bl GXSetTevSwapModeTable
/* 8038C888 003884E8 38 60 00 01 */ li r3, 1
/* 8038C88C 003884EC 38 80 00 00 */ li r4, 0
/* 8038C890 003884F0 38 A0 00 00 */ li r5, 0
/* 8038C894 003884F4 38 C0 00 00 */ li r6, 0
/* 8038C898 003884F8 38 E0 00 03 */ li r7, 3
-/* 8038C89C 003884FC 4B EF 76 65 */ bl func_80283F00
+/* 8038C89C 003884FC 4B EF 76 65 */ bl GXSetTevSwapModeTable
/* 8038C8A0 00388500 38 60 00 02 */ li r3, 2
/* 8038C8A4 00388504 38 80 00 01 */ li r4, 1
/* 8038C8A8 00388508 38 A0 00 01 */ li r5, 1
/* 8038C8AC 0038850C 38 C0 00 01 */ li r6, 1
/* 8038C8B0 00388510 38 E0 00 03 */ li r7, 3
-/* 8038C8B4 00388514 4B EF 76 4D */ bl func_80283F00
+/* 8038C8B4 00388514 4B EF 76 4D */ bl GXSetTevSwapModeTable
/* 8038C8B8 00388518 38 60 00 03 */ li r3, 3
/* 8038C8BC 0038851C 38 80 00 02 */ li r4, 2
/* 8038C8C0 00388520 38 A0 00 02 */ li r5, 2
/* 8038C8C4 00388524 38 C0 00 02 */ li r6, 2
/* 8038C8C8 00388528 38 E0 00 03 */ li r7, 3
-/* 8038C8CC 0038852C 4B EF 76 35 */ bl func_80283F00
+/* 8038C8CC 0038852C 4B EF 76 35 */ bl GXSetTevSwapModeTable
lbl_8038C8D0:
/* 8038C8D0 00388530 80 1B 00 3C */ lwz r0, 0x3c(r27)
/* 8038C8D4 00388534 3B 80 00 00 */ li r28, 0
@@ -2538,7 +2538,7 @@ lbl_8038C8D0:
/* 8038C8E0 00388540 9B 81 00 2D */ stb r28, 0x2d(r1)
/* 8038C8E4 00388544 9B 81 00 2E */ stb r28, 0x2e(r1)
/* 8038C8E8 00388548 41 82 01 D0 */ beq lbl_8038CAB8
-/* 8038C8EC 0038854C 4B EF 78 B1 */ bl func_8028419C
+/* 8038C8EC 0038854C 4B EF 78 B1 */ bl GXSetNumTevStages
/* 8038C8F0 00388550 80 FB 00 38 */ lwz r7, 0x38(r27)
/* 8038C8F4 00388554 3B 41 00 2C */ addi r26, r1, 0x2c
/* 8038C8F8 00388558 81 1B 00 40 */ lwz r8, 0x40(r27)
@@ -2574,12 +2574,12 @@ lbl_8038C960:
/* 8038C96C 003885CC 88 99 00 00 */ lbz r4, 0(r25)
/* 8038C970 003885D0 50 05 45 EE */ rlwimi r5, r0, 8, 0x17, 0x17
/* 8038C974 003885D4 88 D9 00 01 */ lbz r6, 1(r25)
-/* 8038C978 003885D8 4B EF 76 C9 */ bl func_80284040
+/* 8038C978 003885D8 4B EF 76 C9 */ bl GXSetTevOrder
/* 8038C97C 003885DC 88 19 00 03 */ lbz r0, 3(r25)
/* 8038C980 003885E0 7F A3 EB 78 */ mr r3, r29
/* 8038C984 003885E4 54 04 FF BE */ rlwinm r4, r0, 0x1f, 0x1e, 0x1f
/* 8038C988 003885E8 54 05 EF BE */ rlwinm r5, r0, 0x1d, 0x1e, 0x1f
-/* 8038C98C 003885EC 4B EF 75 39 */ bl func_80283EC4
+/* 8038C98C 003885EC 4B EF 75 39 */ bl GXSetTevSwapMode
/* 8038C990 003885F0 88 19 00 05 */ lbz r0, 5(r25)
/* 8038C994 003885F4 7F A3 EB 78 */ mr r3, r29
/* 8038C998 003885F8 88 B9 00 04 */ lbz r5, 4(r25)
@@ -2587,7 +2587,7 @@ lbl_8038C960:
/* 8038C9A0 00388600 54 07 E7 3E */ rlwinm r7, r0, 0x1c, 0x1c, 0x1f
/* 8038C9A4 00388604 54 A4 07 3E */ clrlwi r4, r5, 0x1c
/* 8038C9A8 00388608 54 A5 E7 3E */ rlwinm r5, r5, 0x1c, 0x1c, 0x1f
-/* 8038C9AC 0038860C 4B EF 72 29 */ bl func_80283BD4
+/* 8038C9AC 0038860C 4B EF 72 29 */ bl GXSetTevColorIn
/* 8038C9B0 00388610 88 D9 00 06 */ lbz r6, 6(r25)
/* 8038C9B4 00388614 7F A3 EB 78 */ mr r3, r29
/* 8038C9B8 00388618 88 19 00 07 */ lbz r0, 7(r25)
@@ -2596,11 +2596,11 @@ lbl_8038C960:
/* 8038C9C4 00388624 54 C6 D7 BE */ rlwinm r6, r6, 0x1a, 0x1e, 0x1f
/* 8038C9C8 00388628 54 07 07 FE */ clrlwi r7, r0, 0x1f
/* 8038C9CC 0038862C 54 08 FF BE */ rlwinm r8, r0, 0x1f, 0x1e, 0x1f
-/* 8038C9D0 00388630 4B EF 72 85 */ bl func_80283C54
+/* 8038C9D0 00388630 4B EF 72 85 */ bl GXSetTevColorOp
/* 8038C9D4 00388634 88 19 00 07 */ lbz r0, 7(r25)
/* 8038C9D8 00388638 7F A3 EB 78 */ mr r3, r29
/* 8038C9DC 0038863C 54 04 EE FE */ rlwinm r4, r0, 0x1d, 0x1b, 0x1f
-/* 8038C9E0 00388640 4B EF 74 45 */ bl func_80283E24
+/* 8038C9E0 00388640 4B EF 74 45 */ bl GXSetTevKColorSel
/* 8038C9E4 00388644 88 19 00 09 */ lbz r0, 9(r25)
/* 8038C9E8 00388648 7F A3 EB 78 */ mr r3, r29
/* 8038C9EC 0038864C 88 B9 00 08 */ lbz r5, 8(r25)
@@ -2608,7 +2608,7 @@ lbl_8038C960:
/* 8038C9F4 00388654 54 07 E7 3E */ rlwinm r7, r0, 0x1c, 0x1c, 0x1f
/* 8038C9F8 00388658 54 A4 07 3E */ clrlwi r4, r5, 0x1c
/* 8038C9FC 0038865C 54 A5 E7 3E */ rlwinm r5, r5, 0x1c, 0x1c, 0x1f
-/* 8038CA00 00388660 4B EF 72 15 */ bl func_80283C14
+/* 8038CA00 00388660 4B EF 72 15 */ bl GXSetTevAlphaIn
/* 8038CA04 00388664 88 D9 00 0A */ lbz r6, 0xa(r25)
/* 8038CA08 00388668 7F A3 EB 78 */ mr r3, r29
/* 8038CA0C 0038866C 88 19 00 0B */ lbz r0, 0xb(r25)
@@ -2617,11 +2617,11 @@ lbl_8038C960:
/* 8038CA18 00388678 54 C6 D7 BE */ rlwinm r6, r6, 0x1a, 0x1e, 0x1f
/* 8038CA1C 0038867C 54 07 07 FE */ clrlwi r7, r0, 0x1f
/* 8038CA20 00388680 54 08 FF BE */ rlwinm r8, r0, 0x1f, 0x1e, 0x1f
-/* 8038CA24 00388684 4B EF 72 89 */ bl func_80283CAC
+/* 8038CA24 00388684 4B EF 72 89 */ bl GXSetTevAlphaOp
/* 8038CA28 00388688 88 19 00 0B */ lbz r0, 0xb(r25)
/* 8038CA2C 0038868C 7F A3 EB 78 */ mr r3, r29
/* 8038CA30 00388690 54 04 EE FE */ rlwinm r4, r0, 0x1d, 0x1b, 0x1f
-/* 8038CA34 00388694 4B EF 74 41 */ bl func_80283E74
+/* 8038CA34 00388694 4B EF 74 41 */ bl GXSetTevKAlphaSel
/* 8038CA38 00388698 89 59 00 0F */ lbz r10, 0xf(r25)
/* 8038CA3C 0038869C 7F A3 EB 78 */ mr r3, r29
/* 8038CA40 003886A0 88 D9 00 0D */ lbz r6, 0xd(r25)
@@ -2638,7 +2638,7 @@ lbl_8038C960:
/* 8038CA6C 003886CC 55 29 EF 7E */ rlwinm r9, r9, 0x1d, 0x1d, 0x1f
/* 8038CA70 003886D0 55 4A F7 FE */ rlwinm r10, r10, 0x1e, 0x1f, 0x1f
/* 8038CA74 003886D4 88 99 00 0C */ lbz r4, 0xc(r25)
-/* 8038CA78 003886D8 4B EF 68 ED */ bl func_80283364
+/* 8038CA78 003886D8 4B EF 68 ED */ bl GXSetTevIndirect
/* 8038CA7C 003886DC 2C 18 00 01 */ cmpwi r24, 1
/* 8038CA80 003886E0 41 80 00 18 */ blt lbl_8038CA98
/* 8038CA84 003886E4 2C 18 00 03 */ cmpwi r24, 3
@@ -2664,19 +2664,19 @@ lbl_8038CAB8:
/* 8038CAC8 00388728 38 80 00 FF */ li r4, 0xff
/* 8038CACC 0038872C 38 A0 00 FF */ li r5, 0xff
/* 8038CAD0 00388730 38 C0 00 04 */ li r6, 4
-/* 8038CAD4 00388734 4B EF 75 6D */ bl func_80284040
+/* 8038CAD4 00388734 4B EF 75 6D */ bl GXSetTevOrder
/* 8038CAD8 00388738 38 60 00 00 */ li r3, 0
/* 8038CADC 0038873C 38 80 00 0F */ li r4, 0xf
/* 8038CAE0 00388740 38 A0 00 04 */ li r5, 4
/* 8038CAE4 00388744 38 C0 00 0A */ li r6, 0xa
/* 8038CAE8 00388748 38 E0 00 0F */ li r7, 0xf
-/* 8038CAEC 0038874C 4B EF 70 E9 */ bl func_80283BD4
+/* 8038CAEC 0038874C 4B EF 70 E9 */ bl GXSetTevColorIn
/* 8038CAF0 00388750 38 60 00 00 */ li r3, 0
/* 8038CAF4 00388754 38 80 00 07 */ li r4, 7
/* 8038CAF8 00388758 38 A0 00 02 */ li r5, 2
/* 8038CAFC 0038875C 38 C0 00 05 */ li r6, 5
/* 8038CB00 00388760 38 E0 00 07 */ li r7, 7
-/* 8038CB04 00388764 4B EF 71 11 */ bl func_80283C14
+/* 8038CB04 00388764 4B EF 71 11 */ bl GXSetTevAlphaIn
/* 8038CB08 00388768 3B A0 00 01 */ li r29, 1
/* 8038CB0C 0038876C 3B E0 00 01 */ li r31, 1
/* 8038CB10 00388770 48 00 02 F8 */ b lbl_8038CE08
@@ -2687,19 +2687,19 @@ lbl_8038CB14:
/* 8038CB20 00388780 38 80 00 00 */ li r4, 0
/* 8038CB24 00388784 38 A0 00 00 */ li r5, 0
/* 8038CB28 00388788 38 C0 00 FF */ li r6, 0xff
-/* 8038CB2C 0038878C 4B EF 75 15 */ bl func_80284040
+/* 8038CB2C 0038878C 4B EF 75 15 */ bl GXSetTevOrder
/* 8038CB30 00388790 38 60 00 00 */ li r3, 0
/* 8038CB34 00388794 38 80 00 02 */ li r4, 2
/* 8038CB38 00388798 38 A0 00 04 */ li r5, 4
/* 8038CB3C 0038879C 38 C0 00 08 */ li r6, 8
/* 8038CB40 003887A0 38 E0 00 0F */ li r7, 0xf
-/* 8038CB44 003887A4 4B EF 70 91 */ bl func_80283BD4
+/* 8038CB44 003887A4 4B EF 70 91 */ bl GXSetTevColorIn
/* 8038CB48 003887A8 38 60 00 00 */ li r3, 0
/* 8038CB4C 003887AC 38 80 00 01 */ li r4, 1
/* 8038CB50 003887B0 38 A0 00 02 */ li r5, 2
/* 8038CB54 003887B4 38 C0 00 04 */ li r6, 4
/* 8038CB58 003887B8 38 E0 00 07 */ li r7, 7
-/* 8038CB5C 003887BC 4B EF 70 B9 */ bl func_80283C14
+/* 8038CB5C 003887BC 4B EF 70 B9 */ bl GXSetTevAlphaIn
/* 8038CB60 003887C0 3B E0 00 01 */ li r31, 1
/* 8038CB64 003887C4 48 00 02 50 */ b lbl_8038CDB4
lbl_8038CB68:
@@ -2709,44 +2709,44 @@ lbl_8038CB68:
/* 8038CB74 003887D4 38 80 00 00 */ li r4, 0
/* 8038CB78 003887D8 38 A0 00 00 */ li r5, 0
/* 8038CB7C 003887DC 38 C0 00 FF */ li r6, 0xff
-/* 8038CB80 003887E0 4B EF 74 C1 */ bl func_80284040
+/* 8038CB80 003887E0 4B EF 74 C1 */ bl GXSetTevOrder
/* 8038CB84 003887E4 38 60 00 00 */ li r3, 0
/* 8038CB88 003887E8 38 80 00 0F */ li r4, 0xf
/* 8038CB8C 003887EC 38 A0 00 0F */ li r5, 0xf
/* 8038CB90 003887F0 38 C0 00 0F */ li r6, 0xf
/* 8038CB94 003887F4 38 E0 00 08 */ li r7, 8
-/* 8038CB98 003887F8 4B EF 70 3D */ bl func_80283BD4
+/* 8038CB98 003887F8 4B EF 70 3D */ bl GXSetTevColorIn
/* 8038CB9C 003887FC 38 60 00 00 */ li r3, 0
/* 8038CBA0 00388800 38 80 00 07 */ li r4, 7
/* 8038CBA4 00388804 38 A0 00 07 */ li r5, 7
/* 8038CBA8 00388808 38 C0 00 07 */ li r6, 7
/* 8038CBAC 0038880C 38 E0 00 04 */ li r7, 4
-/* 8038CBB0 00388810 4B EF 70 65 */ bl func_80283C14
+/* 8038CBB0 00388810 4B EF 70 65 */ bl GXSetTevAlphaIn
/* 8038CBB4 00388814 38 60 00 01 */ li r3, 1
/* 8038CBB8 00388818 38 80 00 01 */ li r4, 1
/* 8038CBBC 0038881C 38 A0 00 01 */ li r5, 1
/* 8038CBC0 00388820 38 C0 00 FF */ li r6, 0xff
-/* 8038CBC4 00388824 4B EF 74 7D */ bl func_80284040
+/* 8038CBC4 00388824 4B EF 74 7D */ bl GXSetTevOrder
/* 8038CBC8 00388828 38 60 00 01 */ li r3, 1
/* 8038CBCC 0038882C 38 80 00 08 */ li r4, 8
/* 8038CBD0 00388830 38 A0 00 00 */ li r5, 0
/* 8038CBD4 00388834 38 C0 00 0E */ li r6, 0xe
/* 8038CBD8 00388838 38 E0 00 0F */ li r7, 0xf
-/* 8038CBDC 0038883C 4B EF 6F F9 */ bl func_80283BD4
+/* 8038CBDC 0038883C 4B EF 6F F9 */ bl GXSetTevColorIn
/* 8038CBE0 00388840 38 60 00 01 */ li r3, 1
/* 8038CBE4 00388844 38 80 00 04 */ li r4, 4
/* 8038CBE8 00388848 38 A0 00 00 */ li r5, 0
/* 8038CBEC 0038884C 38 C0 00 06 */ li r6, 6
/* 8038CBF0 00388850 38 E0 00 07 */ li r7, 7
-/* 8038CBF4 00388854 4B EF 70 21 */ bl func_80283C14
+/* 8038CBF4 00388854 4B EF 70 21 */ bl GXSetTevAlphaIn
/* 8038CBF8 00388858 3C 80 80 45 */ lis r4, lbl_8044E4E8@ha
/* 8038CBFC 0038885C 38 60 00 01 */ li r3, 1
/* 8038CC00 00388860 80 84 E4 E8 */ lwz r4, lbl_8044E4E8@l(r4)
-/* 8038CC04 00388864 4B EF 72 21 */ bl func_80283E24
+/* 8038CC04 00388864 4B EF 72 21 */ bl GXSetTevKColorSel
/* 8038CC08 00388868 3C 80 80 45 */ lis r4, lbl_8044E508@ha
/* 8038CC0C 0038886C 38 60 00 01 */ li r3, 1
/* 8038CC10 00388870 80 84 E5 08 */ lwz r4, lbl_8044E508@l(r4)
-/* 8038CC14 00388874 4B EF 72 61 */ bl func_80283E74
+/* 8038CC14 00388874 4B EF 72 61 */ bl GXSetTevKAlphaSel
/* 8038CC18 00388878 3B E0 00 02 */ li r31, 2
/* 8038CC1C 0038887C 48 00 00 B8 */ b lbl_8038CCD4
lbl_8038CC20:
@@ -2762,7 +2762,7 @@ lbl_8038CC38:
/* 8038CC40 003888A0 7E C3 B3 78 */ mr r3, r22
/* 8038CC44 003888A4 7E E5 BB 78 */ mr r5, r23
/* 8038CC48 003888A8 38 C0 00 FF */ li r6, 0xff
-/* 8038CC4C 003888AC 4B EF 73 F5 */ bl func_80284040
+/* 8038CC4C 003888AC 4B EF 73 F5 */ bl GXSetTevOrder
/* 8038CC50 003888B0 2C 17 00 00 */ cmpwi r23, 0
/* 8038CC54 003888B4 38 E0 00 00 */ li r7, 0
/* 8038CC58 003888B8 40 82 00 08 */ bne lbl_8038CC60
@@ -2777,19 +2777,19 @@ lbl_8038CC70:
/* 8038CC74 003888D4 38 80 00 0F */ li r4, 0xf
/* 8038CC78 003888D8 38 A0 00 08 */ li r5, 8
/* 8038CC7C 003888DC 38 C0 00 0E */ li r6, 0xe
-/* 8038CC80 003888E0 4B EF 6F 55 */ bl func_80283BD4
+/* 8038CC80 003888E0 4B EF 6F 55 */ bl GXSetTevColorIn
/* 8038CC84 003888E4 7E C3 B3 78 */ mr r3, r22
/* 8038CC88 003888E8 7F 47 D3 78 */ mr r7, r26
/* 8038CC8C 003888EC 38 80 00 07 */ li r4, 7
/* 8038CC90 003888F0 38 A0 00 04 */ li r5, 4
/* 8038CC94 003888F4 38 C0 00 06 */ li r6, 6
-/* 8038CC98 003888F8 4B EF 6F 7D */ bl func_80283C14
+/* 8038CC98 003888F8 4B EF 6F 7D */ bl GXSetTevAlphaIn
/* 8038CC9C 003888FC 80 98 00 00 */ lwz r4, 0(r24)
/* 8038CCA0 00388900 7E C3 B3 78 */ mr r3, r22
-/* 8038CCA4 00388904 4B EF 71 81 */ bl func_80283E24
+/* 8038CCA4 00388904 4B EF 71 81 */ bl GXSetTevKColorSel
/* 8038CCA8 00388908 80 99 00 00 */ lwz r4, 0(r25)
/* 8038CCAC 0038890C 7E C3 B3 78 */ mr r3, r22
-/* 8038CCB0 00388910 4B EF 71 C5 */ bl func_80283E74
+/* 8038CCB0 00388910 4B EF 71 C5 */ bl GXSetTevKAlphaSel
/* 8038CCB4 00388914 3B FF 00 01 */ addi r31, r31, 1
/* 8038CCB8 00388918 3B 18 00 04 */ addi r24, r24, 4
/* 8038CCBC 0038891C 3B 39 00 04 */ addi r25, r25, 4
@@ -2845,19 +2845,19 @@ lbl_8038CD68:
/* 8038CD70 003889D0 7E C3 B3 78 */ mr r3, r22
/* 8038CD74 003889D4 38 A0 00 FF */ li r5, 0xff
/* 8038CD78 003889D8 38 C0 00 FF */ li r6, 0xff
-/* 8038CD7C 003889DC 4B EF 72 C5 */ bl func_80284040
+/* 8038CD7C 003889DC 4B EF 72 C5 */ bl GXSetTevOrder
/* 8038CD80 003889E0 7E C3 B3 78 */ mr r3, r22
/* 8038CD84 003889E4 38 80 00 02 */ li r4, 2
/* 8038CD88 003889E8 38 A0 00 04 */ li r5, 4
/* 8038CD8C 003889EC 38 C0 00 00 */ li r6, 0
/* 8038CD90 003889F0 38 E0 00 0F */ li r7, 0xf
-/* 8038CD94 003889F4 4B EF 6E 41 */ bl func_80283BD4
+/* 8038CD94 003889F4 4B EF 6E 41 */ bl GXSetTevColorIn
/* 8038CD98 003889F8 7E C3 B3 78 */ mr r3, r22
/* 8038CD9C 003889FC 38 80 00 01 */ li r4, 1
/* 8038CDA0 00388A00 38 A0 00 02 */ li r5, 2
/* 8038CDA4 00388A04 38 C0 00 00 */ li r6, 0
/* 8038CDA8 00388A08 38 E0 00 07 */ li r7, 7
-/* 8038CDAC 00388A0C 4B EF 6E 69 */ bl func_80283C14
+/* 8038CDAC 00388A0C 4B EF 6E 69 */ bl GXSetTevAlphaIn
/* 8038CDB0 00388A10 3B FF 00 01 */ addi r31, r31, 1
lbl_8038CDB4:
/* 8038CDB4 00388A14 2C 1D 00 00 */ cmpwi r29, 0
@@ -2867,19 +2867,19 @@ lbl_8038CDB4:
/* 8038CDC4 00388A24 7E C3 B3 78 */ mr r3, r22
/* 8038CDC8 00388A28 38 A0 00 FF */ li r5, 0xff
/* 8038CDCC 00388A2C 38 C0 00 04 */ li r6, 4
-/* 8038CDD0 00388A30 4B EF 72 71 */ bl func_80284040
+/* 8038CDD0 00388A30 4B EF 72 71 */ bl GXSetTevOrder
/* 8038CDD4 00388A34 7E C3 B3 78 */ mr r3, r22
/* 8038CDD8 00388A38 38 80 00 0F */ li r4, 0xf
/* 8038CDDC 00388A3C 38 A0 00 00 */ li r5, 0
/* 8038CDE0 00388A40 38 C0 00 0A */ li r6, 0xa
/* 8038CDE4 00388A44 38 E0 00 0F */ li r7, 0xf
-/* 8038CDE8 00388A48 4B EF 6D ED */ bl func_80283BD4
+/* 8038CDE8 00388A48 4B EF 6D ED */ bl GXSetTevColorIn
/* 8038CDEC 00388A4C 7E C3 B3 78 */ mr r3, r22
/* 8038CDF0 00388A50 38 80 00 07 */ li r4, 7
/* 8038CDF4 00388A54 38 A0 00 00 */ li r5, 0
/* 8038CDF8 00388A58 38 C0 00 05 */ li r6, 5
/* 8038CDFC 00388A5C 38 E0 00 07 */ li r7, 7
-/* 8038CE00 00388A60 4B EF 6E 15 */ bl func_80283C14
+/* 8038CE00 00388A60 4B EF 6E 15 */ bl GXSetTevAlphaIn
/* 8038CE04 00388A64 3B FF 00 01 */ addi r31, r31, 1
lbl_8038CE08:
/* 8038CE08 00388A68 57 F6 06 3E */ clrlwi r22, r31, 0x18
@@ -2893,27 +2893,27 @@ lbl_8038CE14:
/* 8038CE24 00388A84 38 C0 00 00 */ li r6, 0
/* 8038CE28 00388A88 38 E0 00 01 */ li r7, 1
/* 8038CE2C 00388A8C 39 00 00 00 */ li r8, 0
-/* 8038CE30 00388A90 4B EF 6E 25 */ bl func_80283C54
+/* 8038CE30 00388A90 4B EF 6E 25 */ bl GXSetTevColorOp
/* 8038CE34 00388A94 7F 03 C3 78 */ mr r3, r24
/* 8038CE38 00388A98 38 80 00 00 */ li r4, 0
/* 8038CE3C 00388A9C 38 A0 00 00 */ li r5, 0
/* 8038CE40 00388AA0 38 C0 00 00 */ li r6, 0
/* 8038CE44 00388AA4 38 E0 00 01 */ li r7, 1
/* 8038CE48 00388AA8 39 00 00 00 */ li r8, 0
-/* 8038CE4C 00388AAC 4B EF 6E 61 */ bl func_80283CAC
+/* 8038CE4C 00388AAC 4B EF 6E 61 */ bl GXSetTevAlphaOp
/* 8038CE50 00388AB0 7F 03 C3 78 */ mr r3, r24
-/* 8038CE54 00388AB4 4B EF 68 BD */ bl func_80283710
+/* 8038CE54 00388AB4 4B EF 68 BD */ bl GXSetTevDirect
/* 8038CE58 00388AB8 7F 03 C3 78 */ mr r3, r24
/* 8038CE5C 00388ABC 38 80 00 00 */ li r4, 0
/* 8038CE60 00388AC0 38 A0 00 00 */ li r5, 0
-/* 8038CE64 00388AC4 4B EF 70 61 */ bl func_80283EC4
+/* 8038CE64 00388AC4 4B EF 70 61 */ bl GXSetTevSwapMode
/* 8038CE68 00388AC8 3A F7 00 01 */ addi r23, r23, 1
lbl_8038CE6C:
/* 8038CE6C 00388ACC 56 E0 06 3E */ clrlwi r0, r23, 0x18
/* 8038CE70 00388AD0 7C 00 B0 40 */ cmplw r0, r22
/* 8038CE74 00388AD4 41 80 FF A0 */ blt lbl_8038CE14
/* 8038CE78 00388AD8 7E C3 B3 78 */ mr r3, r22
-/* 8038CE7C 00388ADC 4B EF 73 21 */ bl func_8028419C
+/* 8038CE7C 00388ADC 4B EF 73 21 */ bl GXSetNumTevStages
lbl_8038CE80:
/* 8038CE80 00388AE0 2C 1C 00 00 */ cmpwi r28, 0
/* 8038CE84 00388AE4 41 82 01 00 */ beq lbl_8038CF84
@@ -2986,7 +2986,7 @@ lbl_8038CF74:
lbl_8038CF84:
/* 8038CF84 00388BE4 80 1B 00 3C */ lwz r0, 0x3c(r27)
/* 8038CF88 00388BE8 54 03 8F 7E */ rlwinm r3, r0, 0x11, 0x1d, 0x1f
-/* 8038CF8C 00388BEC 4B EF 67 65 */ bl func_802836F0
+/* 8038CF8C 00388BEC 4B EF 67 65 */ bl GXSetNumIndStages
/* 8038CF90 00388BF0 80 1B 00 3C */ lwz r0, 0x3c(r27)
/* 8038CF94 00388BF4 54 00 8F 7F */ rlwinm. r0, r0, 0x11, 0x1d, 0x1f
/* 8038CF98 00388BF8 41 82 00 94 */ beq lbl_8038D02C
@@ -3016,11 +3016,11 @@ lbl_8038CFF4:
/* 8038CFF4 00388C54 88 98 00 00 */ lbz r4, 0(r24)
/* 8038CFF8 00388C58 7F 83 E3 78 */ mr r3, r28
/* 8038CFFC 00388C5C 88 B8 00 01 */ lbz r5, 1(r24)
-/* 8038D000 00388C60 4B EF 66 25 */ bl func_80283624
+/* 8038D000 00388C60 4B EF 66 25 */ bl GXSetIndTexOrder
/* 8038D004 00388C64 88 98 00 02 */ lbz r4, 2(r24)
/* 8038D008 00388C68 7F 83 E3 78 */ mr r3, r28
/* 8038D00C 00388C6C 88 B8 00 03 */ lbz r5, 3(r24)
-/* 8038D010 00388C70 4B EF 65 11 */ bl func_80283520
+/* 8038D010 00388C70 4B EF 65 11 */ bl GXSetIndTexCoordScale
/* 8038D014 00388C74 3B 18 00 04 */ addi r24, r24, 4
/* 8038D018 00388C78 3B 9C 00 01 */ addi r28, r28, 1
lbl_8038D01C:
@@ -3053,7 +3053,7 @@ lbl_8038D02C:
/* 8038D080 00388CE0 54 03 07 3E */ clrlwi r3, r0, 0x1c
/* 8038D084 00388CE4 88 E6 00 03 */ lbz r7, 3(r6)
/* 8038D088 00388CE8 54 06 E7 3E */ rlwinm r6, r0, 0x1c, 0x1c, 0x1f
-/* 8038D08C 00388CEC 4B EF 6E F1 */ bl func_80283F7C
+/* 8038D08C 00388CEC 4B EF 6E F1 */ bl GXSetAlphaCompare
/* 8038D090 00388CF0 48 00 00 1C */ b lbl_8038D0AC
lbl_8038D094:
/* 8038D094 00388CF4 38 60 00 07 */ li r3, 7
@@ -3061,7 +3061,7 @@ lbl_8038D094:
/* 8038D09C 00388CFC 38 A0 00 00 */ li r5, 0
/* 8038D0A0 00388D00 38 C0 00 07 */ li r6, 7
/* 8038D0A4 00388D04 38 E0 00 00 */ li r7, 0
-/* 8038D0A8 00388D08 4B EF 6E D5 */ bl func_80283F7C
+/* 8038D0A8 00388D08 4B EF 6E D5 */ bl GXSetAlphaCompare
lbl_8038D0AC:
/* 8038D0AC 00388D0C 80 DB 00 38 */ lwz r6, 0x38(r27)
/* 8038D0B0 00388D10 54 C0 DF FF */ rlwinm. r0, r6, 0x1b, 0x1f, 0x1f
@@ -3087,14 +3087,14 @@ lbl_8038D0AC:
/* 8038D100 00388D60 88 86 00 01 */ lbz r4, 1(r6)
/* 8038D104 00388D64 88 A6 00 02 */ lbz r5, 2(r6)
/* 8038D108 00388D68 88 C6 00 03 */ lbz r6, 3(r6)
-/* 8038D10C 00388D6C 4B EF 75 91 */ bl func_8028469C
+/* 8038D10C 00388D6C 4B EF 75 91 */ bl GXSetBlendMode
/* 8038D110 00388D70 48 00 00 18 */ b lbl_8038D128
lbl_8038D114:
/* 8038D114 00388D74 38 60 00 01 */ li r3, 1
/* 8038D118 00388D78 38 80 00 04 */ li r4, 4
/* 8038D11C 00388D7C 38 A0 00 05 */ li r5, 5
/* 8038D120 00388D80 38 C0 00 0F */ li r6, 0xf
-/* 8038D124 00388D84 4B EF 75 79 */ bl func_8028469C
+/* 8038D124 00388D84 4B EF 75 79 */ bl GXSetBlendMode
lbl_8038D128:
/* 8038D128 00388D88 2C 1D 00 00 */ cmpwi r29, 0
/* 8038D12C 00388D8C 38 60 00 00 */ li r3, 0
diff --git a/asm/nw4r/lyt/lyt_texMap.s b/asm/nw4r/lyt/lyt_texMap.s
index 6717abb..1eb3a4e 100644
--- a/asm/nw4r/lyt/lyt_texMap.s
+++ b/asm/nw4r/lyt/lyt_texMap.s
@@ -17,7 +17,7 @@ Get__Q34nw4r3lyt6TexMapCFP9_GXTexObj:
/* 8038D3B0 00389010 7C 7E 1B 78 */ mr r30, r3
/* 8038D3B4 00389014 41 81 00 3C */ bgt lbl_8038D3F0
/* 8038D3B8 00389018 7F E3 FB 78 */ mr r3, r31
-/* 8038D3BC 0038901C 4B EF 56 9D */ bl func_80282A58
+/* 8038D3BC 0038901C 4B EF 56 9D */ bl GXGetTexObjTlut
/* 8038D3C0 00389020 80 1E 00 18 */ lwz r0, 0x18(r30)
/* 8038D3C4 00389024 90 61 00 08 */ stw r3, 8(r1)
/* 8038D3C8 00389028 7F E3 FB 78 */ mr r3, r31
@@ -28,7 +28,7 @@ Get__Q34nw4r3lyt6TexMapCFP9_GXTexObj:
/* 8038D3DC 0038903C A0 DE 00 0A */ lhz r6, 0xa(r30)
/* 8038D3E0 00389040 54 09 4F BE */ rlwinm r9, r0, 9, 0x1e, 0x1f
/* 8038D3E4 00389044 54 0A 2F FE */ rlwinm r10, r0, 5, 0x1f, 0x1f
-/* 8038D3E8 00389048 4B EF 54 F5 */ bl func_802828DC
+/* 8038D3E8 00389048 4B EF 54 F5 */ bl GXInitTexObjCI
/* 8038D3EC 0038904C 48 00 00 24 */ b lbl_8038D410
lbl_8038D3F0:
/* 8038D3F0 00389050 80 9E 00 00 */ lwz r4, 0(r30)
@@ -38,7 +38,7 @@ lbl_8038D3F0:
/* 8038D400 00389060 55 49 4F BE */ rlwinm r9, r10, 9, 0x1e, 0x1f
/* 8038D404 00389064 A0 DE 00 0A */ lhz r6, 0xa(r30)
/* 8038D408 00389068 55 4A 2F FE */ rlwinm r10, r10, 5, 0x1f, 0x1f
-/* 8038D40C 0038906C 4B EF 52 C5 */ bl func_802826D0
+/* 8038D40C 0038906C 4B EF 52 C5 */ bl GXInitTexObj
lbl_8038D410:
/* 8038D410 00389070 A0 9E 00 14 */ lhz r4, 0x14(r30)
/* 8038D414 00389074 3C A0 43 30 */ lis r5, 0x4330
@@ -58,7 +58,7 @@ lbl_8038D410:
/* 8038D44C 003890AC EC 61 18 28 */ fsubs f3, f1, f3
/* 8038D450 003890B0 C0 3E 00 0C */ lfs f1, 0xc(r30)
/* 8038D454 003890B4 EC 63 00 32 */ fmuls f3, f3, f0
-/* 8038D458 003890B8 4B EF 54 CD */ bl func_80282924
+/* 8038D458 003890B8 4B EF 54 CD */ bl GXInitTexObjLOD
/* 8038D45C 003890BC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8038D460 003890C0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8038D464 003890C4 83 C1 00 18 */ lwz r30, 0x18(r1)
@@ -74,7 +74,7 @@ Get__Q34nw4r3lyt6TexMapCFP10_GXTlutObj:
/* 8038D480 003890E0 80 85 00 04 */ lwz r4, 4(r5)
/* 8038D484 003890E4 A0 C5 00 16 */ lhz r6, 0x16(r5)
/* 8038D488 003890E8 54 05 AF BE */ rlwinm r5, r0, 0x15, 0x1e, 0x1f
-/* 8038D48C 003890EC 4B EF 57 8C */ b func_80282C18
+/* 8038D48C 003890EC 4B EF 57 8C */ b GXInitTlutObj
.global Set__Q34nw4r3lyt6TexMapFP10TPLPaletteUl
Set__Q34nw4r3lyt6TexMapFP10TPLPaletteUl:
diff --git a/asm/nw4r/ut/ut_CharWriter.s b/asm/nw4r/ut/ut_CharWriter.s
index 0ec96f1..741a471 100644
--- a/asm/nw4r/ut/ut_CharWriter.s
+++ b/asm/nw4r/ut/ut_CharWriter.s
@@ -275,17 +275,17 @@ lbl_80364BEC:
/* 80364C18 00360878 98 C1 00 19 */ stb r6, 0x19(r1)
/* 80364C1C 0036087C 98 A1 00 1A */ stb r5, 0x1a(r1)
/* 80364C20 00360880 98 01 00 1B */ stb r0, 0x1b(r1)
-/* 80364C24 00360884 4B F1 F5 9D */ bl func_802841C0
+/* 80364C24 00360884 4B F1 F5 9D */ bl GXSetFog
/* 80364C28 00360888 38 60 00 00 */ li r3, 0
/* 80364C2C 0036088C 38 80 00 00 */ li r4, 0
/* 80364C30 00360890 38 A0 00 01 */ li r5, 1
/* 80364C34 00360894 38 C0 00 02 */ li r6, 2
/* 80364C38 00360898 38 E0 00 03 */ li r7, 3
-/* 80364C3C 0036089C 4B F1 F2 C5 */ bl func_80283F00
+/* 80364C3C 0036089C 4B F1 F2 C5 */ bl GXSetTevSwapModeTable
/* 80364C40 003608A0 38 60 00 00 */ li r3, 0
/* 80364C44 003608A4 38 80 00 11 */ li r4, 0x11
/* 80364C48 003608A8 38 A0 00 00 */ li r5, 0
-/* 80364C4C 003608AC 4B F1 F3 69 */ bl func_80283FB4
+/* 80364C4C 003608AC 4B F1 F3 69 */ bl GXSetZTexture
/* 80364C50 003608B0 38 60 00 01 */ li r3, 1
/* 80364C54 003608B4 4B F1 D8 F5 */ bl GXSetNumChans
/* 80364C58 003608B8 38 60 00 04 */ li r3, 4
@@ -314,51 +314,51 @@ lbl_80364BEC:
/* 80364CB4 00360914 39 00 00 7D */ li r8, 0x7d
/* 80364CB8 00360918 4B F1 B7 15 */ bl GXSetTexCoordGen2
/* 80364CBC 0036091C 38 60 00 00 */ li r3, 0
-/* 80364CC0 00360920 4B F1 EA 31 */ bl func_802836F0
+/* 80364CC0 00360920 4B F1 EA 31 */ bl GXSetNumIndStages
/* 80364CC4 00360924 38 60 00 01 */ li r3, 1
/* 80364CC8 00360928 38 80 00 04 */ li r4, 4
/* 80364CCC 0036092C 38 A0 00 05 */ li r5, 5
/* 80364CD0 00360930 38 C0 00 0F */ li r6, 0xf
-/* 80364CD4 00360934 4B F1 F9 C9 */ bl func_8028469C
+/* 80364CD4 00360934 4B F1 F9 C9 */ bl GXSetBlendMode
/* 80364CD8 00360938 38 60 00 01 */ li r3, 1
-/* 80364CDC 0036093C 4B F1 F4 C1 */ bl func_8028419C
+/* 80364CDC 0036093C 4B F1 F4 C1 */ bl GXSetNumTevStages
/* 80364CE0 00360940 38 60 00 00 */ li r3, 0
-/* 80364CE4 00360944 4B F1 EA 2D */ bl func_80283710
+/* 80364CE4 00360944 4B F1 EA 2D */ bl GXSetTevDirect
/* 80364CE8 00360948 38 60 00 00 */ li r3, 0
/* 80364CEC 0036094C 38 80 00 00 */ li r4, 0
/* 80364CF0 00360950 38 A0 00 00 */ li r5, 0
-/* 80364CF4 00360954 4B F1 F1 D1 */ bl func_80283EC4
+/* 80364CF4 00360954 4B F1 F1 D1 */ bl GXSetTevSwapMode
/* 80364CF8 00360958 38 60 00 00 */ li r3, 0
/* 80364CFC 0036095C 38 80 00 00 */ li r4, 0
/* 80364D00 00360960 38 A0 00 00 */ li r5, 0
/* 80364D04 00360964 38 C0 00 04 */ li r6, 4
-/* 80364D08 00360968 4B F1 F3 39 */ bl func_80284040
+/* 80364D08 00360968 4B F1 F3 39 */ bl GXSetTevOrder
/* 80364D0C 0036096C 38 60 00 00 */ li r3, 0
/* 80364D10 00360970 38 80 00 0F */ li r4, 0xf
/* 80364D14 00360974 38 A0 00 0F */ li r5, 0xf
/* 80364D18 00360978 38 C0 00 0F */ li r6, 0xf
/* 80364D1C 0036097C 38 E0 00 0A */ li r7, 0xa
-/* 80364D20 00360980 4B F1 EE B5 */ bl func_80283BD4
+/* 80364D20 00360980 4B F1 EE B5 */ bl GXSetTevColorIn
/* 80364D24 00360984 38 60 00 00 */ li r3, 0
/* 80364D28 00360988 38 80 00 07 */ li r4, 7
/* 80364D2C 0036098C 38 A0 00 04 */ li r5, 4
/* 80364D30 00360990 38 C0 00 05 */ li r6, 5
/* 80364D34 00360994 38 E0 00 07 */ li r7, 7
-/* 80364D38 00360998 4B F1 EE DD */ bl func_80283C14
+/* 80364D38 00360998 4B F1 EE DD */ bl GXSetTevAlphaIn
/* 80364D3C 0036099C 38 60 00 00 */ li r3, 0
/* 80364D40 003609A0 38 80 00 00 */ li r4, 0
/* 80364D44 003609A4 38 A0 00 00 */ li r5, 0
/* 80364D48 003609A8 38 C0 00 00 */ li r6, 0
/* 80364D4C 003609AC 38 E0 00 01 */ li r7, 1
/* 80364D50 003609B0 39 00 00 00 */ li r8, 0
-/* 80364D54 003609B4 4B F1 EF 01 */ bl func_80283C54
+/* 80364D54 003609B4 4B F1 EF 01 */ bl GXSetTevColorOp
/* 80364D58 003609B8 38 60 00 00 */ li r3, 0
/* 80364D5C 003609BC 38 80 00 00 */ li r4, 0
/* 80364D60 003609C0 38 A0 00 00 */ li r5, 0
/* 80364D64 003609C4 38 C0 00 00 */ li r6, 0
/* 80364D68 003609C8 38 E0 00 01 */ li r7, 1
/* 80364D6C 003609CC 39 00 00 00 */ li r8, 0
-/* 80364D70 003609D0 4B F1 EF 3D */ bl func_80283CAC
+/* 80364D70 003609D0 4B F1 EF 3D */ bl GXSetTevAlphaOp
/* 80364D74 003609D4 38 60 00 00 */ li r3, 0
/* 80364D78 003609D8 38 80 00 09 */ li r4, 9
/* 80364D7C 003609DC 38 A0 00 01 */ li r5, 1
@@ -416,17 +416,17 @@ lbl_80364E18:
/* 80364E44 00360AA4 98 C1 00 15 */ stb r6, 0x15(r1)
/* 80364E48 00360AA8 98 A1 00 16 */ stb r5, 0x16(r1)
/* 80364E4C 00360AAC 98 01 00 17 */ stb r0, 0x17(r1)
-/* 80364E50 00360AB0 4B F1 F3 71 */ bl func_802841C0
+/* 80364E50 00360AB0 4B F1 F3 71 */ bl GXSetFog
/* 80364E54 00360AB4 38 60 00 00 */ li r3, 0
/* 80364E58 00360AB8 38 80 00 00 */ li r4, 0
/* 80364E5C 00360ABC 38 A0 00 01 */ li r5, 1
/* 80364E60 00360AC0 38 C0 00 02 */ li r6, 2
/* 80364E64 00360AC4 38 E0 00 03 */ li r7, 3
-/* 80364E68 00360AC8 4B F1 F0 99 */ bl func_80283F00
+/* 80364E68 00360AC8 4B F1 F0 99 */ bl GXSetTevSwapModeTable
/* 80364E6C 00360ACC 38 60 00 00 */ li r3, 0
/* 80364E70 00360AD0 38 80 00 11 */ li r4, 0x11
/* 80364E74 00360AD4 38 A0 00 00 */ li r5, 0
-/* 80364E78 00360AD8 4B F1 F1 3D */ bl func_80283FB4
+/* 80364E78 00360AD8 4B F1 F1 3D */ bl GXSetZTexture
/* 80364E7C 00360ADC 38 60 00 01 */ li r3, 1
/* 80364E80 00360AE0 4B F1 D6 C9 */ bl GXSetNumChans
/* 80364E84 00360AE4 38 60 00 04 */ li r3, 4
@@ -455,28 +455,28 @@ lbl_80364E18:
/* 80364EE0 00360B40 39 00 00 7D */ li r8, 0x7d
/* 80364EE4 00360B44 4B F1 B4 E9 */ bl GXSetTexCoordGen2
/* 80364EE8 00360B48 38 60 00 00 */ li r3, 0
-/* 80364EEC 00360B4C 4B F1 E8 05 */ bl func_802836F0
+/* 80364EEC 00360B4C 4B F1 E8 05 */ bl GXSetNumIndStages
/* 80364EF0 00360B50 38 60 00 01 */ li r3, 1
/* 80364EF4 00360B54 38 80 00 04 */ li r4, 4
/* 80364EF8 00360B58 38 A0 00 05 */ li r5, 5
/* 80364EFC 00360B5C 38 C0 00 0F */ li r6, 0xf
-/* 80364F00 00360B60 4B F1 F7 9D */ bl func_8028469C
+/* 80364F00 00360B60 4B F1 F7 9D */ bl GXSetBlendMode
/* 80364F04 00360B64 38 60 00 01 */ li r3, 1
-/* 80364F08 00360B68 4B F1 F2 95 */ bl func_8028419C
+/* 80364F08 00360B68 4B F1 F2 95 */ bl GXSetNumTevStages
/* 80364F0C 00360B6C 38 60 00 00 */ li r3, 0
-/* 80364F10 00360B70 4B F1 E8 01 */ bl func_80283710
+/* 80364F10 00360B70 4B F1 E8 01 */ bl GXSetTevDirect
/* 80364F14 00360B74 38 60 00 00 */ li r3, 0
/* 80364F18 00360B78 38 80 00 00 */ li r4, 0
/* 80364F1C 00360B7C 38 A0 00 00 */ li r5, 0
-/* 80364F20 00360B80 4B F1 EF A5 */ bl func_80283EC4
+/* 80364F20 00360B80 4B F1 EF A5 */ bl GXSetTevSwapMode
/* 80364F24 00360B84 38 60 00 00 */ li r3, 0
/* 80364F28 00360B88 38 80 00 00 */ li r4, 0
/* 80364F2C 00360B8C 38 A0 00 00 */ li r5, 0
/* 80364F30 00360B90 38 C0 00 04 */ li r6, 4
-/* 80364F34 00360B94 4B F1 F1 0D */ bl func_80284040
+/* 80364F34 00360B94 4B F1 F1 0D */ bl GXSetTevOrder
/* 80364F38 00360B98 38 60 00 00 */ li r3, 0
/* 80364F3C 00360B9C 38 80 00 00 */ li r4, 0
-/* 80364F40 00360BA0 4B F1 EC 01 */ bl func_80283B40
+/* 80364F40 00360BA0 4B F1 EC 01 */ bl GXSetTevOp
/* 80364F44 00360BA4 38 60 00 00 */ li r3, 0
/* 80364F48 00360BA8 38 80 00 09 */ li r4, 9
/* 80364F4C 00360BAC 38 A0 00 01 */ li r5, 1
@@ -534,17 +534,17 @@ lbl_80364FE8:
/* 80365014 00360C74 98 C1 00 11 */ stb r6, 0x11(r1)
/* 80365018 00360C78 98 A1 00 12 */ stb r5, 0x12(r1)
/* 8036501C 00360C7C 98 01 00 13 */ stb r0, 0x13(r1)
-/* 80365020 00360C80 4B F1 F1 A1 */ bl func_802841C0
+/* 80365020 00360C80 4B F1 F1 A1 */ bl GXSetFog
/* 80365024 00360C84 38 60 00 00 */ li r3, 0
/* 80365028 00360C88 38 80 00 00 */ li r4, 0
/* 8036502C 00360C8C 38 A0 00 01 */ li r5, 1
/* 80365030 00360C90 38 C0 00 02 */ li r6, 2
/* 80365034 00360C94 38 E0 00 03 */ li r7, 3
-/* 80365038 00360C98 4B F1 EE C9 */ bl func_80283F00
+/* 80365038 00360C98 4B F1 EE C9 */ bl GXSetTevSwapModeTable
/* 8036503C 00360C9C 38 60 00 00 */ li r3, 0
/* 80365040 00360CA0 38 80 00 11 */ li r4, 0x11
/* 80365044 00360CA4 38 A0 00 00 */ li r5, 0
-/* 80365048 00360CA8 4B F1 EF 6D */ bl func_80283FB4
+/* 80365048 00360CA8 4B F1 EF 6D */ bl GXSetZTexture
/* 8036504C 00360CAC 38 60 00 01 */ li r3, 1
/* 80365050 00360CB0 4B F1 D4 F9 */ bl GXSetNumChans
/* 80365054 00360CB4 38 60 00 04 */ li r3, 4
@@ -573,28 +573,28 @@ lbl_80364FE8:
/* 803650B0 00360D10 39 00 00 7D */ li r8, 0x7d
/* 803650B4 00360D14 4B F1 B3 19 */ bl GXSetTexCoordGen2
/* 803650B8 00360D18 38 60 00 00 */ li r3, 0
-/* 803650BC 00360D1C 4B F1 E6 35 */ bl func_802836F0
+/* 803650BC 00360D1C 4B F1 E6 35 */ bl GXSetNumIndStages
/* 803650C0 00360D20 38 60 00 01 */ li r3, 1
/* 803650C4 00360D24 38 80 00 04 */ li r4, 4
/* 803650C8 00360D28 38 A0 00 05 */ li r5, 5
/* 803650CC 00360D2C 38 C0 00 0F */ li r6, 0xf
-/* 803650D0 00360D30 4B F1 F5 CD */ bl func_8028469C
+/* 803650D0 00360D30 4B F1 F5 CD */ bl GXSetBlendMode
/* 803650D4 00360D34 38 60 00 01 */ li r3, 1
-/* 803650D8 00360D38 4B F1 F0 C5 */ bl func_8028419C
+/* 803650D8 00360D38 4B F1 F0 C5 */ bl GXSetNumTevStages
/* 803650DC 00360D3C 38 60 00 00 */ li r3, 0
-/* 803650E0 00360D40 4B F1 E6 31 */ bl func_80283710
+/* 803650E0 00360D40 4B F1 E6 31 */ bl GXSetTevDirect
/* 803650E4 00360D44 38 60 00 00 */ li r3, 0
/* 803650E8 00360D48 38 80 00 00 */ li r4, 0
/* 803650EC 00360D4C 38 A0 00 00 */ li r5, 0
-/* 803650F0 00360D50 4B F1 ED D5 */ bl func_80283EC4
+/* 803650F0 00360D50 4B F1 ED D5 */ bl GXSetTevSwapMode
/* 803650F4 00360D54 38 60 00 00 */ li r3, 0
/* 803650F8 00360D58 38 80 00 00 */ li r4, 0
/* 803650FC 00360D5C 38 A0 00 00 */ li r5, 0
/* 80365100 00360D60 38 C0 00 04 */ li r6, 4
-/* 80365104 00360D64 4B F1 EF 3D */ bl func_80284040
+/* 80365104 00360D64 4B F1 EF 3D */ bl GXSetTevOrder
/* 80365108 00360D68 38 60 00 00 */ li r3, 0
/* 8036510C 00360D6C 38 80 00 00 */ li r4, 0
-/* 80365110 00360D70 4B F1 EA 31 */ bl func_80283B40
+/* 80365110 00360D70 4B F1 EA 31 */ bl GXSetTevOp
/* 80365114 00360D74 38 60 00 00 */ li r3, 0
/* 80365118 00360D78 38 80 00 09 */ li r4, 9
/* 8036511C 00360D7C 38 A0 00 01 */ li r5, 1
@@ -653,17 +653,17 @@ lbl_803651BC:
/* 803651E8 00360E48 98 C1 00 0D */ stb r6, 0xd(r1)
/* 803651EC 00360E4C 98 A1 00 0E */ stb r5, 0xe(r1)
/* 803651F0 00360E50 98 01 00 0F */ stb r0, 0xf(r1)
-/* 803651F4 00360E54 4B F1 EF CD */ bl func_802841C0
+/* 803651F4 00360E54 4B F1 EF CD */ bl GXSetFog
/* 803651F8 00360E58 38 60 00 00 */ li r3, 0
/* 803651FC 00360E5C 38 80 00 00 */ li r4, 0
/* 80365200 00360E60 38 A0 00 01 */ li r5, 1
/* 80365204 00360E64 38 C0 00 02 */ li r6, 2
/* 80365208 00360E68 38 E0 00 03 */ li r7, 3
-/* 8036520C 00360E6C 4B F1 EC F5 */ bl func_80283F00
+/* 8036520C 00360E6C 4B F1 EC F5 */ bl GXSetTevSwapModeTable
/* 80365210 00360E70 38 60 00 00 */ li r3, 0
/* 80365214 00360E74 38 80 00 11 */ li r4, 0x11
/* 80365218 00360E78 38 A0 00 00 */ li r5, 0
-/* 8036521C 00360E7C 4B F1 ED 99 */ bl func_80283FB4
+/* 8036521C 00360E7C 4B F1 ED 99 */ bl GXSetZTexture
/* 80365220 00360E80 38 60 00 01 */ li r3, 1
/* 80365224 00360E84 4B F1 D3 25 */ bl GXSetNumChans
/* 80365228 00360E88 38 60 00 04 */ li r3, 4
@@ -692,28 +692,28 @@ lbl_803651BC:
/* 80365284 00360EE4 39 00 00 7D */ li r8, 0x7d
/* 80365288 00360EE8 4B F1 B1 45 */ bl GXSetTexCoordGen2
/* 8036528C 00360EEC 38 60 00 00 */ li r3, 0
-/* 80365290 00360EF0 4B F1 E4 61 */ bl func_802836F0
+/* 80365290 00360EF0 4B F1 E4 61 */ bl GXSetNumIndStages
/* 80365294 00360EF4 38 60 00 01 */ li r3, 1
/* 80365298 00360EF8 38 80 00 04 */ li r4, 4
/* 8036529C 00360EFC 38 A0 00 05 */ li r5, 5
/* 803652A0 00360F00 38 C0 00 0F */ li r6, 0xf
-/* 803652A4 00360F04 4B F1 F3 F9 */ bl func_8028469C
+/* 803652A4 00360F04 4B F1 F3 F9 */ bl GXSetBlendMode
/* 803652A8 00360F08 38 60 00 01 */ li r3, 1
-/* 803652AC 00360F0C 4B F1 EE F1 */ bl func_8028419C
+/* 803652AC 00360F0C 4B F1 EE F1 */ bl GXSetNumTevStages
/* 803652B0 00360F10 38 60 00 00 */ li r3, 0
-/* 803652B4 00360F14 4B F1 E4 5D */ bl func_80283710
+/* 803652B4 00360F14 4B F1 E4 5D */ bl GXSetTevDirect
/* 803652B8 00360F18 38 60 00 00 */ li r3, 0
/* 803652BC 00360F1C 38 80 00 00 */ li r4, 0
/* 803652C0 00360F20 38 A0 00 00 */ li r5, 0
-/* 803652C4 00360F24 4B F1 EC 01 */ bl func_80283EC4
+/* 803652C4 00360F24 4B F1 EC 01 */ bl GXSetTevSwapMode
/* 803652C8 00360F28 38 60 00 00 */ li r3, 0
/* 803652CC 00360F2C 38 80 00 00 */ li r4, 0
/* 803652D0 00360F30 38 A0 00 00 */ li r5, 0
/* 803652D4 00360F34 38 C0 00 04 */ li r6, 4
-/* 803652D8 00360F38 4B F1 ED 69 */ bl func_80284040
+/* 803652D8 00360F38 4B F1 ED 69 */ bl GXSetTevOrder
/* 803652DC 00360F3C 38 60 00 00 */ li r3, 0
/* 803652E0 00360F40 38 80 00 00 */ li r4, 0
-/* 803652E4 00360F44 4B F1 E8 5D */ bl func_80283B40
+/* 803652E4 00360F44 4B F1 E8 5D */ bl GXSetTevOp
/* 803652E8 00360F48 38 60 00 00 */ li r3, 0
/* 803652EC 00360F4C 38 80 00 09 */ li r4, 9
/* 803652F0 00360F50 38 A0 00 01 */ li r5, 1
@@ -771,17 +771,17 @@ lbl_8036538C:
/* 803653B8 00361018 98 C1 00 09 */ stb r6, 9(r1)
/* 803653BC 0036101C 98 A1 00 0A */ stb r5, 0xa(r1)
/* 803653C0 00361020 98 01 00 0B */ stb r0, 0xb(r1)
-/* 803653C4 00361024 4B F1 ED FD */ bl func_802841C0
+/* 803653C4 00361024 4B F1 ED FD */ bl GXSetFog
/* 803653C8 00361028 38 60 00 00 */ li r3, 0
/* 803653CC 0036102C 38 80 00 00 */ li r4, 0
/* 803653D0 00361030 38 A0 00 01 */ li r5, 1
/* 803653D4 00361034 38 C0 00 02 */ li r6, 2
/* 803653D8 00361038 38 E0 00 03 */ li r7, 3
-/* 803653DC 0036103C 4B F1 EB 25 */ bl func_80283F00
+/* 803653DC 0036103C 4B F1 EB 25 */ bl GXSetTevSwapModeTable
/* 803653E0 00361040 38 60 00 00 */ li r3, 0
/* 803653E4 00361044 38 80 00 11 */ li r4, 0x11
/* 803653E8 00361048 38 A0 00 00 */ li r5, 0
-/* 803653EC 0036104C 4B F1 EB C9 */ bl func_80283FB4
+/* 803653EC 0036104C 4B F1 EB C9 */ bl GXSetZTexture
/* 803653F0 00361050 38 60 00 01 */ li r3, 1
/* 803653F4 00361054 4B F1 D1 55 */ bl GXSetNumChans
/* 803653F8 00361058 38 60 00 04 */ li r3, 4
@@ -810,28 +810,28 @@ lbl_8036538C:
/* 80365454 003610B4 39 00 00 7D */ li r8, 0x7d
/* 80365458 003610B8 4B F1 AF 75 */ bl GXSetTexCoordGen2
/* 8036545C 003610BC 38 60 00 00 */ li r3, 0
-/* 80365460 003610C0 4B F1 E2 91 */ bl func_802836F0
+/* 80365460 003610C0 4B F1 E2 91 */ bl GXSetNumIndStages
/* 80365464 003610C4 38 60 00 01 */ li r3, 1
/* 80365468 003610C8 38 80 00 04 */ li r4, 4
/* 8036546C 003610CC 38 A0 00 05 */ li r5, 5
/* 80365470 003610D0 38 C0 00 0F */ li r6, 0xf
-/* 80365474 003610D4 4B F1 F2 29 */ bl func_8028469C
+/* 80365474 003610D4 4B F1 F2 29 */ bl GXSetBlendMode
/* 80365478 003610D8 38 60 00 01 */ li r3, 1
-/* 8036547C 003610DC 4B F1 ED 21 */ bl func_8028419C
+/* 8036547C 003610DC 4B F1 ED 21 */ bl GXSetNumTevStages
/* 80365480 003610E0 38 60 00 00 */ li r3, 0
-/* 80365484 003610E4 4B F1 E2 8D */ bl func_80283710
+/* 80365484 003610E4 4B F1 E2 8D */ bl GXSetTevDirect
/* 80365488 003610E8 38 60 00 00 */ li r3, 0
/* 8036548C 003610EC 38 80 00 00 */ li r4, 0
/* 80365490 003610F0 38 A0 00 00 */ li r5, 0
-/* 80365494 003610F4 4B F1 EA 31 */ bl func_80283EC4
+/* 80365494 003610F4 4B F1 EA 31 */ bl GXSetTevSwapMode
/* 80365498 003610F8 38 60 00 00 */ li r3, 0
/* 8036549C 003610FC 38 80 00 00 */ li r4, 0
/* 803654A0 00361100 38 A0 00 00 */ li r5, 0
/* 803654A4 00361104 38 C0 00 04 */ li r6, 4
-/* 803654A8 00361108 4B F1 EB 99 */ bl func_80284040
+/* 803654A8 00361108 4B F1 EB 99 */ bl GXSetTevOrder
/* 803654AC 0036110C 38 60 00 00 */ li r3, 0
/* 803654B0 00361110 38 80 00 00 */ li r4, 0
-/* 803654B4 00361114 4B F1 E6 8D */ bl func_80283B40
+/* 803654B4 00361114 4B F1 E6 8D */ bl GXSetTevOp
/* 803654B8 00361118 38 60 00 00 */ li r3, 0
/* 803654BC 0036111C 38 80 00 09 */ li r4, 9
/* 803654C0 00361120 38 A0 00 01 */ li r5, 1
@@ -1171,7 +1171,7 @@ lbl_80365988:
/* 8036599C 003615FC 39 00 00 00 */ li r8, 0
/* 803659A0 00361600 39 20 00 00 */ li r9, 0
/* 803659A4 00361604 39 40 00 00 */ li r10, 0
-/* 803659A8 00361608 4B F1 CD 29 */ bl func_802826D0
+/* 803659A8 00361608 4B F1 CD 29 */ bl GXInitTexObj
/* 803659AC 0036160C C0 22 A5 10 */ lfs f1, lbl_80642B10-_SDA2_BASE_(r2)
/* 803659B0 00361610 38 61 00 18 */ addi r3, r1, 0x18
/* 803659B4 00361614 80 9B 00 38 */ lwz r4, 0x38(r27)
@@ -1181,10 +1181,10 @@ lbl_80365988:
/* 803659C4 00361624 FC 60 08 90 */ fmr f3, f1
/* 803659C8 00361628 38 E0 00 00 */ li r7, 0
/* 803659CC 0036162C 39 00 00 00 */ li r8, 0
-/* 803659D0 00361630 4B F1 CF 55 */ bl func_80282924
+/* 803659D0 00361630 4B F1 CF 55 */ bl GXInitTexObjLOD
/* 803659D4 00361634 38 61 00 18 */ addi r3, r1, 0x18
/* 803659D8 00361638 38 80 00 00 */ li r4, 0
-/* 803659DC 0036163C 4B F1 D1 E9 */ bl func_80282BC4
+/* 803659DC 0036163C 4B F1 D1 E9 */ bl GXLoadTexObj
/* 803659E0 00361640 3C C0 80 62 */ lis r6, lbl_80621718@ha
/* 803659E4 00361644 80 E1 00 08 */ lwz r7, 8(r1)
/* 803659E8 00361648 80 A1 00 0C */ lwz r5, 0xc(r1)
@@ -1376,17 +1376,17 @@ lbl_80365C6C:
/* 80365C98 003618F8 98 C1 00 09 */ stb r6, 9(r1)
/* 80365C9C 003618FC 98 A1 00 0A */ stb r5, 0xa(r1)
/* 80365CA0 00361900 98 01 00 0B */ stb r0, 0xb(r1)
-/* 80365CA4 00361904 4B F1 E5 1D */ bl func_802841C0
+/* 80365CA4 00361904 4B F1 E5 1D */ bl GXSetFog
/* 80365CA8 00361908 38 60 00 00 */ li r3, 0
/* 80365CAC 0036190C 38 80 00 00 */ li r4, 0
/* 80365CB0 00361910 38 A0 00 01 */ li r5, 1
/* 80365CB4 00361914 38 C0 00 02 */ li r6, 2
/* 80365CB8 00361918 38 E0 00 03 */ li r7, 3
-/* 80365CBC 0036191C 4B F1 E2 45 */ bl func_80283F00
+/* 80365CBC 0036191C 4B F1 E2 45 */ bl GXSetTevSwapModeTable
/* 80365CC0 00361920 38 60 00 00 */ li r3, 0
/* 80365CC4 00361924 38 80 00 11 */ li r4, 0x11
/* 80365CC8 00361928 38 A0 00 00 */ li r5, 0
-/* 80365CCC 0036192C 4B F1 E2 E9 */ bl func_80283FB4
+/* 80365CCC 0036192C 4B F1 E2 E9 */ bl GXSetZTexture
/* 80365CD0 00361930 38 60 00 01 */ li r3, 1
/* 80365CD4 00361934 4B F1 C8 75 */ bl GXSetNumChans
/* 80365CD8 00361938 38 60 00 04 */ li r3, 4
@@ -1415,31 +1415,31 @@ lbl_80365C6C:
/* 80365D34 00361994 39 00 00 7D */ li r8, 0x7d
/* 80365D38 00361998 4B F1 A6 95 */ bl GXSetTexCoordGen2
/* 80365D3C 0036199C 38 60 00 00 */ li r3, 0
-/* 80365D40 003619A0 4B F1 D9 B1 */ bl func_802836F0
+/* 80365D40 003619A0 4B F1 D9 B1 */ bl GXSetNumIndStages
/* 80365D44 003619A4 38 60 00 01 */ li r3, 1
/* 80365D48 003619A8 38 80 00 04 */ li r4, 4
/* 80365D4C 003619AC 38 A0 00 05 */ li r5, 5
/* 80365D50 003619B0 38 C0 00 0F */ li r6, 0xf
-/* 80365D54 003619B4 4B F1 E9 49 */ bl func_8028469C
+/* 80365D54 003619B4 4B F1 E9 49 */ bl GXSetBlendMode
/* 80365D58 003619B8 38 60 00 02 */ li r3, 2
-/* 80365D5C 003619BC 4B F1 E4 41 */ bl func_8028419C
+/* 80365D5C 003619BC 4B F1 E4 41 */ bl GXSetNumTevStages
/* 80365D60 003619C0 38 60 00 00 */ li r3, 0
-/* 80365D64 003619C4 4B F1 D9 AD */ bl func_80283710
+/* 80365D64 003619C4 4B F1 D9 AD */ bl GXSetTevDirect
/* 80365D68 003619C8 38 60 00 01 */ li r3, 1
-/* 80365D6C 003619CC 4B F1 D9 A5 */ bl func_80283710
+/* 80365D6C 003619CC 4B F1 D9 A5 */ bl GXSetTevDirect
/* 80365D70 003619D0 38 60 00 00 */ li r3, 0
/* 80365D74 003619D4 38 80 00 00 */ li r4, 0
/* 80365D78 003619D8 38 A0 00 00 */ li r5, 0
-/* 80365D7C 003619DC 4B F1 E1 49 */ bl func_80283EC4
+/* 80365D7C 003619DC 4B F1 E1 49 */ bl GXSetTevSwapMode
/* 80365D80 003619E0 38 60 00 01 */ li r3, 1
/* 80365D84 003619E4 38 80 00 00 */ li r4, 0
/* 80365D88 003619E8 38 A0 00 00 */ li r5, 0
-/* 80365D8C 003619EC 4B F1 E1 39 */ bl func_80283EC4
+/* 80365D8C 003619EC 4B F1 E1 39 */ bl GXSetTevSwapMode
/* 80365D90 003619F0 38 60 00 00 */ li r3, 0
/* 80365D94 003619F4 38 80 00 00 */ li r4, 0
/* 80365D98 003619F8 38 A0 00 00 */ li r5, 0
/* 80365D9C 003619FC 38 C0 00 FF */ li r6, 0xff
-/* 80365DA0 00361A00 4B F1 E2 A1 */ bl func_80284040
+/* 80365DA0 00361A00 4B F1 E2 A1 */ bl GXSetTevOrder
/* 80365DA4 00361A04 88 FE 00 00 */ lbz r7, 0(r30)
/* 80365DA8 00361A08 38 81 00 10 */ addi r4, r1, 0x10
/* 80365DAC 00361A0C 88 DE 00 01 */ lbz r6, 1(r30)
@@ -1450,7 +1450,7 @@ lbl_80365C6C:
/* 80365DC0 00361A20 98 C1 00 11 */ stb r6, 0x11(r1)
/* 80365DC4 00361A24 98 A1 00 12 */ stb r5, 0x12(r1)
/* 80365DC8 00361A28 98 01 00 13 */ stb r0, 0x13(r1)
-/* 80365DCC 00361A2C 4B F1 DF 39 */ bl func_80283D04
+/* 80365DCC 00361A2C 4B F1 DF 39 */ bl GXSetTevColor
/* 80365DD0 00361A30 88 FF 00 00 */ lbz r7, 0(r31)
/* 80365DD4 00361A34 38 81 00 0C */ addi r4, r1, 0xc
/* 80365DD8 00361A38 88 DF 00 01 */ lbz r6, 1(r31)
@@ -1461,64 +1461,64 @@ lbl_80365C6C:
/* 80365DEC 00361A4C 98 C1 00 0D */ stb r6, 0xd(r1)
/* 80365DF0 00361A50 98 A1 00 0E */ stb r5, 0xe(r1)
/* 80365DF4 00361A54 98 01 00 0F */ stb r0, 0xf(r1)
-/* 80365DF8 00361A58 4B F1 DF 0D */ bl func_80283D04
+/* 80365DF8 00361A58 4B F1 DF 0D */ bl GXSetTevColor
/* 80365DFC 00361A5C 38 60 00 00 */ li r3, 0
/* 80365E00 00361A60 38 80 00 02 */ li r4, 2
/* 80365E04 00361A64 38 A0 00 04 */ li r5, 4
/* 80365E08 00361A68 38 C0 00 08 */ li r6, 8
/* 80365E0C 00361A6C 38 E0 00 0F */ li r7, 0xf
-/* 80365E10 00361A70 4B F1 DD C5 */ bl func_80283BD4
+/* 80365E10 00361A70 4B F1 DD C5 */ bl GXSetTevColorIn
/* 80365E14 00361A74 38 60 00 00 */ li r3, 0
/* 80365E18 00361A78 38 80 00 01 */ li r4, 1
/* 80365E1C 00361A7C 38 A0 00 02 */ li r5, 2
/* 80365E20 00361A80 38 C0 00 04 */ li r6, 4
/* 80365E24 00361A84 38 E0 00 07 */ li r7, 7
-/* 80365E28 00361A88 4B F1 DD ED */ bl func_80283C14
+/* 80365E28 00361A88 4B F1 DD ED */ bl GXSetTevAlphaIn
/* 80365E2C 00361A8C 38 60 00 00 */ li r3, 0
/* 80365E30 00361A90 38 80 00 00 */ li r4, 0
/* 80365E34 00361A94 38 A0 00 00 */ li r5, 0
/* 80365E38 00361A98 38 C0 00 00 */ li r6, 0
/* 80365E3C 00361A9C 38 E0 00 01 */ li r7, 1
/* 80365E40 00361AA0 39 00 00 00 */ li r8, 0
-/* 80365E44 00361AA4 4B F1 DE 11 */ bl func_80283C54
+/* 80365E44 00361AA4 4B F1 DE 11 */ bl GXSetTevColorOp
/* 80365E48 00361AA8 38 60 00 00 */ li r3, 0
/* 80365E4C 00361AAC 38 80 00 00 */ li r4, 0
/* 80365E50 00361AB0 38 A0 00 00 */ li r5, 0
/* 80365E54 00361AB4 38 C0 00 00 */ li r6, 0
/* 80365E58 00361AB8 38 E0 00 01 */ li r7, 1
/* 80365E5C 00361ABC 39 00 00 00 */ li r8, 0
-/* 80365E60 00361AC0 4B F1 DE 4D */ bl func_80283CAC
+/* 80365E60 00361AC0 4B F1 DE 4D */ bl GXSetTevAlphaOp
/* 80365E64 00361AC4 38 60 00 01 */ li r3, 1
/* 80365E68 00361AC8 38 80 00 FF */ li r4, 0xff
/* 80365E6C 00361ACC 38 A0 00 FF */ li r5, 0xff
/* 80365E70 00361AD0 38 C0 00 04 */ li r6, 4
-/* 80365E74 00361AD4 4B F1 E1 CD */ bl func_80284040
+/* 80365E74 00361AD4 4B F1 E1 CD */ bl GXSetTevOrder
/* 80365E78 00361AD8 38 60 00 01 */ li r3, 1
/* 80365E7C 00361ADC 38 80 00 0F */ li r4, 0xf
/* 80365E80 00361AE0 38 A0 00 00 */ li r5, 0
/* 80365E84 00361AE4 38 C0 00 0A */ li r6, 0xa
/* 80365E88 00361AE8 38 E0 00 0F */ li r7, 0xf
-/* 80365E8C 00361AEC 4B F1 DD 49 */ bl func_80283BD4
+/* 80365E8C 00361AEC 4B F1 DD 49 */ bl GXSetTevColorIn
/* 80365E90 00361AF0 38 60 00 01 */ li r3, 1
/* 80365E94 00361AF4 38 80 00 07 */ li r4, 7
/* 80365E98 00361AF8 38 A0 00 00 */ li r5, 0
/* 80365E9C 00361AFC 38 C0 00 05 */ li r6, 5
/* 80365EA0 00361B00 38 E0 00 07 */ li r7, 7
-/* 80365EA4 00361B04 4B F1 DD 71 */ bl func_80283C14
+/* 80365EA4 00361B04 4B F1 DD 71 */ bl GXSetTevAlphaIn
/* 80365EA8 00361B08 38 60 00 01 */ li r3, 1
/* 80365EAC 00361B0C 38 80 00 00 */ li r4, 0
/* 80365EB0 00361B10 38 A0 00 00 */ li r5, 0
/* 80365EB4 00361B14 38 C0 00 00 */ li r6, 0
/* 80365EB8 00361B18 38 E0 00 01 */ li r7, 1
/* 80365EBC 00361B1C 39 00 00 00 */ li r8, 0
-/* 80365EC0 00361B20 4B F1 DD 95 */ bl func_80283C54
+/* 80365EC0 00361B20 4B F1 DD 95 */ bl GXSetTevColorOp
/* 80365EC4 00361B24 38 60 00 01 */ li r3, 1
/* 80365EC8 00361B28 38 80 00 00 */ li r4, 0
/* 80365ECC 00361B2C 38 A0 00 00 */ li r5, 0
/* 80365ED0 00361B30 38 C0 00 00 */ li r6, 0
/* 80365ED4 00361B34 38 E0 00 01 */ li r7, 1
/* 80365ED8 00361B38 39 00 00 00 */ li r8, 0
-/* 80365EDC 00361B3C 4B F1 DD D1 */ bl func_80283CAC
+/* 80365EDC 00361B3C 4B F1 DD D1 */ bl GXSetTevAlphaOp
/* 80365EE0 00361B40 38 60 00 00 */ li r3, 0
/* 80365EE4 00361B44 38 80 00 09 */ li r4, 9
/* 80365EE8 00361B48 38 A0 00 01 */ li r5, 1
diff --git a/asm/text_7.s b/asm/text_7.s
index fd85ba1..966806d 100644
--- a/asm/text_7.s
+++ b/asm/text_7.s
@@ -16959,9 +16959,9 @@ lbl_802310FC:
/* 80231128 0022CD88 38 60 00 00 */ li r3, 0
/* 8023112C 0022CD8C 48 04 E0 21 */ bl GXSetBreakPtCallback
/* 80231130 0022CD90 38 60 00 00 */ li r3, 0
-/* 80231134 0022CD94 48 05 1C BD */ bl func_80282DF0
+/* 80231134 0022CD94 48 05 1C BD */ bl GXSetTexRegionCallback
/* 80231138 0022CD98 38 60 00 00 */ li r3, 0
-/* 8023113C 0022CD9C 48 05 1C C9 */ bl func_80282E04
+/* 8023113C 0022CD9C 48 05 1C C9 */ bl GXSetTlutRegionCallback
/* 80231140 0022CDA0 38 60 00 00 */ li r3, 0
/* 80231144 0022CDA4 48 04 6C F9 */ bl VISetPreRetraceCallback
/* 80231148 0022CDA8 38 60 00 00 */ li r3, 0
@@ -20790,7 +20790,7 @@ func_8023480C:
/* 8023480C 0023046C 7C 83 23 78 */ mr r3, r4
/* 80234810 00230470 7C A4 2B 78 */ mr r4, r5
/* 80234814 00230474 7C C5 07 74 */ extsb r5, r6
-/* 80234818 00230478 48 04 EB B4 */ b func_802833CC
+/* 80234818 00230478 48 04 EB B4 */ b GXSetIndTexMtx
.global func_8023481C
func_8023481C:
@@ -25059,14 +25059,14 @@ lbl_8023843C:
/* 80238454 002340B4 41 82 00 1C */ beq lbl_80238470
/* 80238458 002340B8 38 7E 00 54 */ addi r3, r30, 0x54
/* 8023845C 002340BC 57 84 06 3E */ clrlwi r4, r28, 0x18
-/* 80238460 002340C0 48 04 A5 DD */ bl func_80282A3C
+/* 80238460 002340C0 48 04 A5 DD */ bl GXInitTexObjTlut
/* 80238464 002340C4 38 7E 00 74 */ addi r3, r30, 0x74
/* 80238468 002340C8 57 84 06 3E */ clrlwi r4, r28, 0x18
-/* 8023846C 002340CC 48 04 A7 D5 */ bl func_80282C40
+/* 8023846C 002340CC 48 04 A7 D5 */ bl GXLoadTlut
lbl_80238470:
/* 80238470 002340D0 38 7E 00 54 */ addi r3, r30, 0x54
/* 80238474 002340D4 57 84 06 3E */ clrlwi r4, r28, 0x18
-/* 80238478 002340D8 48 04 A7 4D */ bl func_80282BC4
+/* 80238478 002340D8 48 04 A7 4D */ bl GXLoadTexObj
/* 8023847C 002340DC 88 1E 00 07 */ lbz r0, 7(r30)
/* 80238480 002340E0 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e
/* 80238484 002340E4 98 1E 00 07 */ stb r0, 7(r30)
@@ -25656,7 +25656,7 @@ lbl_80238CB0:
/* 80238CD4 00234934 7C 00 F0 40 */ cmplw r0, r30
/* 80238CD8 00234938 41 82 00 10 */ beq lbl_80238CE8
/* 80238CDC 0023493C 7F C3 F3 78 */ mr r3, r30
-/* 80238CE0 00234940 48 04 B4 BD */ bl func_8028419C
+/* 80238CE0 00234940 48 04 B4 BD */ bl GXSetNumTevStages
/* 80238CE4 00234944 9B DF 0C A0 */ stb r30, 0xca0(r31)
lbl_80238CE8:
/* 80238CE8 00234948 80 7D 16 38 */ lwz r3, 0x1638(r29)
@@ -25689,7 +25689,7 @@ lbl_80238D48:
/* 80238D4C 002349AC 7F 43 D3 78 */ mr r3, r26
/* 80238D50 002349B0 80 B7 00 04 */ lwz r5, 4(r23)
/* 80238D54 002349B4 80 D7 00 08 */ lwz r6, 8(r23)
-/* 80238D58 002349B8 48 04 B2 E9 */ bl func_80284040
+/* 80238D58 002349B8 48 04 B2 E9 */ bl GXSetTevOrder
/* 80238D5C 002349BC 80 17 00 00 */ lwz r0, 0(r23)
/* 80238D60 002349C0 90 18 00 00 */ stw r0, 0(r24)
/* 80238D64 002349C4 80 17 00 04 */ lwz r0, 4(r23)
@@ -25742,7 +25742,7 @@ lbl_80238E04:
/* 80238E0C 00234A6C 80 B7 00 04 */ lwz r5, 4(r23)
/* 80238E10 00234A70 80 D7 00 08 */ lwz r6, 8(r23)
/* 80238E14 00234A74 80 F7 00 0C */ lwz r7, 0xc(r23)
-/* 80238E18 00234A78 48 04 AD BD */ bl func_80283BD4
+/* 80238E18 00234A78 48 04 AD BD */ bl GXSetTevColorIn
/* 80238E1C 00234A7C 80 17 00 00 */ lwz r0, 0(r23)
/* 80238E20 00234A80 90 18 00 00 */ stw r0, 0(r24)
/* 80238E24 00234A84 80 17 00 04 */ lwz r0, 4(r23)
@@ -25797,7 +25797,7 @@ lbl_80238ECC:
/* 80238ED4 00234B34 80 B7 00 04 */ lwz r5, 4(r23)
/* 80238ED8 00234B38 80 D7 00 08 */ lwz r6, 8(r23)
/* 80238EDC 00234B3C 80 F7 00 0C */ lwz r7, 0xc(r23)
-/* 80238EE0 00234B40 48 04 AD 35 */ bl func_80283C14
+/* 80238EE0 00234B40 48 04 AD 35 */ bl GXSetTevAlphaIn
/* 80238EE4 00234B44 80 17 00 00 */ lwz r0, 0(r23)
/* 80238EE8 00234B48 90 18 00 00 */ stw r0, 0(r24)
/* 80238EEC 00234B4C 80 17 00 04 */ lwz r0, 4(r23)
@@ -25862,7 +25862,7 @@ lbl_80238FB4:
/* 80238FC0 00234C20 80 D7 00 08 */ lwz r6, 8(r23)
/* 80238FC4 00234C24 88 F7 00 0C */ lbz r7, 0xc(r23)
/* 80238FC8 00234C28 81 17 00 10 */ lwz r8, 0x10(r23)
-/* 80238FCC 00234C2C 48 04 AC 89 */ bl func_80283C54
+/* 80238FCC 00234C2C 48 04 AC 89 */ bl GXSetTevColorOp
/* 80238FD0 00234C30 80 17 00 00 */ lwz r0, 0(r23)
/* 80238FD4 00234C34 90 18 00 00 */ stw r0, 0(r24)
/* 80238FD8 00234C38 80 17 00 04 */ lwz r0, 4(r23)
@@ -25929,7 +25929,7 @@ lbl_802390A8:
/* 802390B4 00234D14 80 D7 00 08 */ lwz r6, 8(r23)
/* 802390B8 00234D18 88 F7 00 0C */ lbz r7, 0xc(r23)
/* 802390BC 00234D1C 81 17 00 10 */ lwz r8, 0x10(r23)
-/* 802390C0 00234D20 48 04 AB ED */ bl func_80283CAC
+/* 802390C0 00234D20 48 04 AB ED */ bl GXSetTevAlphaOp
/* 802390C4 00234D24 80 17 00 00 */ lwz r0, 0(r23)
/* 802390C8 00234D28 90 18 00 00 */ stw r0, 0(r24)
/* 802390CC 00234D2C 80 17 00 04 */ lwz r0, 4(r23)
@@ -25975,7 +25975,7 @@ lbl_80239128:
/* 8023915C 00234DBC 98 01 00 26 */ stb r0, 0x26(r1)
/* 80239160 00234DC0 88 17 00 07 */ lbz r0, 7(r23)
/* 80239164 00234DC4 98 01 00 27 */ stb r0, 0x27(r1)
-/* 80239168 00234DC8 48 04 AB 9D */ bl func_80283D04
+/* 80239168 00234DC8 48 04 AB 9D */ bl GXSetTevColor
/* 8023916C 00234DCC 48 00 00 30 */ b lbl_8023919C
lbl_80239170:
/* 80239170 00234DD0 A0 B7 00 04 */ lhz r5, 4(r23)
@@ -25988,7 +25988,7 @@ lbl_80239170:
/* 8023918C 00234DEC A0 17 00 0A */ lhz r0, 0xa(r23)
/* 80239190 00234DF0 B0 A1 00 34 */ sth r5, 0x34(r1)
/* 80239194 00234DF4 B0 01 00 36 */ sth r0, 0x36(r1)
-/* 80239198 00234DF8 48 04 AB CD */ bl func_80283D64
+/* 80239198 00234DF8 48 04 AB CD */ bl GXSetTevColorS10
lbl_8023919C:
/* 8023919C 00234DFC 3B 7B 00 01 */ addi r27, r27, 1
/* 802391A0 00234E00 3A F7 00 0C */ addi r23, r23, 0xc
@@ -26024,7 +26024,7 @@ lbl_802391E0:
/* 80239210 00234E70 7C 00 20 00 */ cmpw r0, r4
/* 80239214 00234E74 41 82 00 D8 */ beq lbl_802392EC
/* 80239218 00234E78 7F 63 DB 78 */ mr r3, r27
-/* 8023921C 00234E7C 48 04 A4 F5 */ bl func_80283710
+/* 8023921C 00234E7C 48 04 A4 F5 */ bl GXSetTevDirect
/* 80239220 00234E80 48 00 00 CC */ b lbl_802392EC
/* 80239224 00234E84 88 17 00 21 */ lbz r0, 0x21(r23)
/* 80239228 00234E88 7F 63 DB 78 */ mr r3, r27
@@ -26038,14 +26038,14 @@ lbl_802391E0:
/* 80239248 00234EA8 81 17 00 14 */ lwz r8, 0x14(r23)
/* 8023924C 00234EAC 81 37 00 18 */ lwz r9, 0x18(r23)
/* 80239250 00234EB0 89 57 00 20 */ lbz r10, 0x20(r23)
-/* 80239254 00234EB4 48 04 A1 11 */ bl func_80283364
+/* 80239254 00234EB4 48 04 A1 11 */ bl GXSetTevIndirect
/* 80239258 00234EB8 48 00 00 94 */ b lbl_802392EC
/* 8023925C 00234EBC 80 97 00 04 */ lwz r4, 4(r23)
/* 80239260 00234EC0 7F 63 DB 78 */ mr r3, r27
/* 80239264 00234EC4 88 B7 00 08 */ lbz r5, 8(r23)
/* 80239268 00234EC8 88 D7 00 09 */ lbz r6, 9(r23)
/* 8023926C 00234ECC 80 F7 00 0C */ lwz r7, 0xc(r23)
-/* 80239270 00234ED0 48 04 A4 E9 */ bl func_80283758
+/* 80239270 00234ED0 48 04 A4 E9 */ bl GXSetTevIndWarp
/* 80239274 00234ED4 48 00 00 78 */ b lbl_802392EC
/* 80239278 00234ED8 80 17 00 18 */ lwz r0, 0x18(r23)
/* 8023927C 00234EDC 7F 63 DB 78 */ mr r3, r27
@@ -26059,23 +26059,23 @@ lbl_802391E0:
/* 8023929C 00234EFC A1 17 00 0E */ lhz r8, 0xe(r23)
/* 802392A0 00234F00 81 37 00 10 */ lwz r9, 0x10(r23)
/* 802392A4 00234F04 81 57 00 14 */ lwz r10, 0x14(r23)
-/* 802392A8 00234F08 48 04 A5 05 */ bl func_802837AC
+/* 802392A8 00234F08 48 04 A5 05 */ bl GXSetTevIndTile
/* 802392AC 00234F0C 48 00 00 40 */ b lbl_802392EC
/* 802392B0 00234F10 80 97 00 04 */ lwz r4, 4(r23)
/* 802392B4 00234F14 7F 63 DB 78 */ mr r3, r27
/* 802392B8 00234F18 80 B7 00 08 */ lwz r5, 8(r23)
-/* 802392BC 00234F1C 48 04 A6 95 */ bl func_80283950
+/* 802392BC 00234F1C 48 04 A6 95 */ bl GXSetTevIndBumpST
/* 802392C0 00234F20 48 00 00 2C */ b lbl_802392EC
/* 802392C4 00234F24 80 97 00 04 */ lwz r4, 4(r23)
/* 802392C8 00234F28 7F 63 DB 78 */ mr r3, r27
/* 802392CC 00234F2C 80 B7 00 08 */ lwz r5, 8(r23)
-/* 802392D0 00234F30 48 04 A7 8D */ bl func_80283A5C
+/* 802392D0 00234F30 48 04 A7 8D */ bl GXSetTevIndBumpXYZ
/* 802392D4 00234F34 48 00 00 18 */ b lbl_802392EC
/* 802392D8 00234F38 80 18 00 00 */ lwz r0, 0(r24)
/* 802392DC 00234F3C 7C 00 20 00 */ cmpw r0, r4
/* 802392E0 00234F40 41 82 00 0C */ beq lbl_802392EC
/* 802392E4 00234F44 7F 63 DB 78 */ mr r3, r27
-/* 802392E8 00234F48 48 04 A7 B9 */ bl func_80283AA0
+/* 802392E8 00234F48 48 04 A7 B9 */ bl GXSetTevIndRepeat
lbl_802392EC:
/* 802392EC 00234F4C 80 17 00 00 */ lwz r0, 0(r23)
/* 802392F0 00234F50 90 18 00 00 */ stw r0, 0(r24)
@@ -26110,7 +26110,7 @@ lbl_80239354:
/* 80239354 00234FB4 80 7F 08 84 */ lwz r3, 0x884(r31)
/* 80239358 00234FB8 80 9F 08 88 */ lwz r4, 0x888(r31)
/* 8023935C 00234FBC 80 BF 08 8C */ lwz r5, 0x88c(r31)
-/* 80239360 00234FC0 48 04 AC 55 */ bl func_80283FB4
+/* 80239360 00234FC0 48 04 AC 55 */ bl GXSetZTexture
/* 80239364 00234FC4 80 1F 08 84 */ lwz r0, 0x884(r31)
/* 80239368 00234FC8 90 1F 12 A4 */ stw r0, 0x12a4(r31)
/* 8023936C 00234FCC 80 1F 08 88 */ lwz r0, 0x888(r31)
@@ -26134,7 +26134,7 @@ lbl_80239388:
/* 802393AC 0023500C 7C 00 B0 40 */ cmplw r0, r22
/* 802393B0 00235010 41 82 00 10 */ beq lbl_802393C0
/* 802393B4 00235014 7E C3 B3 78 */ mr r3, r22
-/* 802393B8 00235018 48 04 A3 39 */ bl func_802836F0
+/* 802393B8 00235018 48 04 A3 39 */ bl GXSetNumIndStages
/* 802393BC 0023501C 9A DF 12 B0 */ stb r22, 0x12b0(r31)
lbl_802393C0:
/* 802393C0 00235020 80 7D 16 38 */ lwz r3, 0x1638(r29)
@@ -26162,7 +26162,7 @@ lbl_80239410:
/* 80239410 00235070 80 9A 00 00 */ lwz r4, 0(r26)
/* 80239414 00235074 7F 03 C3 78 */ mr r3, r24
/* 80239418 00235078 80 BA 00 04 */ lwz r5, 4(r26)
-/* 8023941C 0023507C 48 04 A2 09 */ bl func_80283624
+/* 8023941C 0023507C 48 04 A2 09 */ bl GXSetIndTexOrder
/* 80239420 00235080 80 1A 00 00 */ lwz r0, 0(r26)
/* 80239424 00235084 90 1B 00 00 */ stw r0, 0(r27)
/* 80239428 00235088 80 1A 00 04 */ lwz r0, 4(r26)
@@ -26203,7 +26203,7 @@ lbl_802394A0:
/* 802394A0 00235100 80 9A 00 00 */ lwz r4, 0(r26)
/* 802394A4 00235104 7F 03 C3 78 */ mr r3, r24
/* 802394A8 00235108 80 BA 00 04 */ lwz r5, 4(r26)
-/* 802394AC 0023510C 48 04 A0 75 */ bl func_80283520
+/* 802394AC 0023510C 48 04 A0 75 */ bl GXSetIndTexCoordScale
/* 802394B0 00235110 80 1A 00 00 */ lwz r0, 0(r26)
/* 802394B4 00235114 90 1B 00 00 */ stw r0, 0(r27)
/* 802394B8 00235118 80 1A 00 04 */ lwz r0, 4(r26)
@@ -26252,7 +26252,7 @@ lbl_80239518:
/* 80239550 002351B0 98 01 00 22 */ stb r0, 0x22(r1)
/* 80239554 002351B4 88 17 00 03 */ lbz r0, 3(r23)
/* 80239558 002351B8 98 01 00 23 */ stb r0, 0x23(r1)
-/* 8023955C 002351BC 48 04 A8 6D */ bl func_80283DC8
+/* 8023955C 002351BC 48 04 A8 6D */ bl GXSetTevKColor
/* 80239560 002351C0 88 17 00 00 */ lbz r0, 0(r23)
/* 80239564 002351C4 98 18 00 00 */ stb r0, 0(r24)
/* 80239568 002351C8 88 17 00 01 */ lbz r0, 1(r23)
@@ -26289,7 +26289,7 @@ lbl_802395C4:
/* 802395D8 00235238 7C 00 20 00 */ cmpw r0, r4
/* 802395DC 0023523C 41 82 00 14 */ beq lbl_802395F0
/* 802395E0 00235240 7E E3 BB 78 */ mr r3, r23
-/* 802395E4 00235244 48 04 A8 41 */ bl func_80283E24
+/* 802395E4 00235244 48 04 A8 41 */ bl GXSetTevKColorSel
/* 802395E8 00235248 80 19 00 00 */ lwz r0, 0(r25)
/* 802395EC 0023524C 90 1A 00 00 */ stw r0, 0(r26)
lbl_802395F0:
@@ -26321,7 +26321,7 @@ lbl_80239634:
/* 80239648 002352A8 7C 00 20 00 */ cmpw r0, r4
/* 8023964C 002352AC 41 82 00 14 */ beq lbl_80239660
/* 80239650 002352B0 7E E3 BB 78 */ mr r3, r23
-/* 80239654 002352B4 48 04 A8 21 */ bl func_80283E74
+/* 80239654 002352B4 48 04 A8 21 */ bl GXSetTevKAlphaSel
/* 80239658 002352B8 80 19 00 00 */ lwz r0, 0(r25)
/* 8023965C 002352BC 90 1A 00 00 */ stw r0, 0(r26)
lbl_80239660:
@@ -26363,7 +26363,7 @@ lbl_802396DC:
/* 802396DC 0023533C 80 99 00 00 */ lwz r4, 0(r25)
/* 802396E0 00235340 7E E3 BB 78 */ mr r3, r23
/* 802396E4 00235344 80 B9 00 04 */ lwz r5, 4(r25)
-/* 802396E8 00235348 48 04 A7 DD */ bl func_80283EC4
+/* 802396E8 00235348 48 04 A7 DD */ bl GXSetTevSwapMode
/* 802396EC 0023534C 80 19 00 00 */ lwz r0, 0(r25)
/* 802396F0 00235350 90 1A 00 00 */ stw r0, 0(r26)
/* 802396F4 00235354 80 19 00 04 */ lwz r0, 4(r25)
@@ -26413,7 +26413,7 @@ lbl_80239788:
/* 80239790 002353F0 80 B7 00 04 */ lwz r5, 4(r23)
/* 80239794 002353F4 80 D7 00 08 */ lwz r6, 8(r23)
/* 80239798 002353F8 80 F7 00 0C */ lwz r7, 0xc(r23)
-/* 8023979C 002353FC 48 04 A7 65 */ bl func_80283F00
+/* 8023979C 002353FC 48 04 A7 65 */ bl GXSetTevSwapModeTable
/* 802397A0 00235400 80 17 00 00 */ lwz r0, 0(r23)
/* 802397A4 00235404 90 18 00 00 */ stw r0, 0(r24)
/* 802397A8 00235408 80 17 00 04 */ lwz r0, 4(r23)
@@ -26473,7 +26473,7 @@ lbl_8023986C:
/* 80239870 002354D0 80 9F 0A 28 */ lwz r4, 0xa28(r31)
/* 80239874 002354D4 80 BF 0A 2C */ lwz r5, 0xa2c(r31)
/* 80239878 002354D8 80 DF 0A 30 */ lwz r6, 0xa30(r31)
-/* 8023987C 002354DC 48 04 AE 21 */ bl func_8028469C
+/* 8023987C 002354DC 48 04 AE 21 */ bl GXSetBlendMode
/* 80239880 002354E0 80 1F 0A 24 */ lwz r0, 0xa24(r31)
/* 80239884 002354E4 90 1F 14 44 */ stw r0, 0x1444(r31)
/* 80239888 002354E8 80 1F 0A 28 */ lwz r0, 0xa28(r31)
@@ -26497,7 +26497,7 @@ lbl_802398A0:
/* 802398CC 0023552C 41 82 00 1C */ beq lbl_802398E8
lbl_802398D0:
/* 802398D0 00235530 88 9F 0A 35 */ lbz r4, 0xa35(r31)
-/* 802398D4 00235534 48 04 AF A9 */ bl func_8028487C
+/* 802398D4 00235534 48 04 AF A9 */ bl GXSetDstAlpha
/* 802398D8 00235538 88 1F 0A 34 */ lbz r0, 0xa34(r31)
/* 802398DC 0023553C 98 1F 14 54 */ stb r0, 0x1454(r31)
/* 802398E0 00235540 88 1F 0A 35 */ lbz r0, 0xa35(r31)
@@ -26511,7 +26511,7 @@ lbl_802398E8:
/* 802398FC 0023555C 88 1F 14 56 */ lbz r0, 0x1456(r31)
/* 80239900 00235560 7C 00 18 40 */ cmplw r0, r3
/* 80239904 00235564 41 82 00 10 */ beq lbl_80239914
-/* 80239908 00235568 48 04 AD E5 */ bl func_802846EC
+/* 80239908 00235568 48 04 AD E5 */ bl GXSetColorUpdate
/* 8023990C 0023556C 88 1F 0A 36 */ lbz r0, 0xa36(r31)
/* 80239910 00235570 98 1F 14 56 */ stb r0, 0x1456(r31)
lbl_80239914:
@@ -26519,7 +26519,7 @@ lbl_80239914:
/* 80239918 00235578 88 1F 14 57 */ lbz r0, 0x1457(r31)
/* 8023991C 0023557C 7C 00 18 40 */ cmplw r0, r3
/* 80239920 00235580 41 82 00 10 */ beq lbl_80239930
-/* 80239924 00235584 48 04 AD F5 */ bl func_80284718
+/* 80239924 00235584 48 04 AD F5 */ bl GXSetAlphaUpdate
/* 80239928 00235588 88 1F 0A 37 */ lbz r0, 0xa37(r31)
/* 8023992C 0023558C 98 1F 14 57 */ stb r0, 0x1457(r31)
lbl_80239930:
@@ -26542,7 +26542,7 @@ lbl_8023996C:
/* 8023996C 002355CC 88 BF 0A 38 */ lbz r5, 0xa38(r31)
/* 80239970 002355D0 7F 64 DB 78 */ mr r4, r27
/* 80239974 002355D4 57 43 06 3E */ clrlwi r3, r26, 0x18
-/* 80239978 002355D8 48 04 AD CD */ bl func_80284744
+/* 80239978 002355D8 48 04 AD CD */ bl GXSetZMode
/* 8023997C 002355DC 9B 5F 14 5C */ stb r26, 0x145c(r31)
/* 80239980 002355E0 93 7F 14 60 */ stw r27, 0x1460(r31)
/* 80239984 002355E4 88 1F 0A 38 */ lbz r0, 0xa38(r31)
@@ -26578,7 +26578,7 @@ lbl_802399EC:
/* 802399F4 00235654 80 BF 0A 48 */ lwz r5, 0xa48(r31)
/* 802399F8 00235658 80 DF 0A 4C */ lwz r6, 0xa4c(r31)
/* 802399FC 0023565C 88 FF 0A 51 */ lbz r7, 0xa51(r31)
-/* 80239A00 00235660 48 04 A5 7D */ bl func_80283F7C
+/* 80239A00 00235660 48 04 A5 7D */ bl GXSetAlphaCompare
/* 80239A04 00235664 80 1F 0A 44 */ lwz r0, 0xa44(r31)
/* 80239A08 00235668 90 1F 14 64 */ stw r0, 0x1464(r31)
/* 80239A0C 0023566C 88 1F 0A 50 */ lbz r0, 0xa50(r31)
@@ -26594,7 +26594,7 @@ lbl_80239A2C:
/* 80239A30 00235690 88 1F 14 72 */ lbz r0, 0x1472(r31)
/* 80239A34 00235694 7C 00 18 40 */ cmplw r0, r3
/* 80239A38 00235698 41 82 00 10 */ beq lbl_80239A48
-/* 80239A3C 0023569C 48 04 AD 3D */ bl func_80284778
+/* 80239A3C 0023569C 48 04 AD 3D */ bl GXSetZCompLoc
/* 80239A40 002356A0 88 1F 0A 52 */ lbz r0, 0xa52(r31)
/* 80239A44 002356A4 98 1F 14 72 */ stb r0, 0x1472(r31)
lbl_80239A48:
@@ -26606,7 +26606,7 @@ lbl_80239A48:
/* 80239A5C 002356BC 88 1F 14 74 */ lbz r0, 0x1474(r31)
/* 80239A60 002356C0 7C 00 18 40 */ cmplw r0, r3
/* 80239A64 002356C4 41 82 00 10 */ beq lbl_80239A74
-/* 80239A68 002356C8 48 04 AD E9 */ bl func_80284850
+/* 80239A68 002356C8 48 04 AD E9 */ bl GXSetDither
/* 80239A6C 002356CC 88 1F 0A 54 */ lbz r0, 0xa54(r31)
/* 80239A70 002356D0 98 1F 14 74 */ stb r0, 0x1474(r31)
lbl_80239A74:
@@ -26672,7 +26672,7 @@ lbl_80239B24:
/* 80239B50 002357B0 C0 5F 0A 60 */ lfs f2, 0xa60(r31)
/* 80239B54 002357B4 C0 7F 0A 64 */ lfs f3, 0xa64(r31)
/* 80239B58 002357B8 C0 9F 0A 68 */ lfs f4, 0xa68(r31)
-/* 80239B5C 002357BC 48 04 A6 65 */ bl func_802841C0
+/* 80239B5C 002357BC 48 04 A6 65 */ bl GXSetFog
/* 80239B60 002357C0 92 DF 14 78 */ stw r22, 0x1478(r31)
/* 80239B64 002357C4 C0 1F 0A 5C */ lfs f0, 0xa5c(r31)
/* 80239B68 002357C8 D0 1F 14 7C */ stfs f0, 0x147c(r31)
@@ -26707,7 +26707,7 @@ lbl_80239BA8:
/* 80239BD8 00235838 98 01 00 1A */ stb r0, 0x1a(r1)
/* 80239BDC 0023583C 88 1F 0A 6F */ lbz r0, 0xa6f(r31)
/* 80239BE0 00235840 98 01 00 1B */ stb r0, 0x1b(r1)
-/* 80239BE4 00235844 48 04 A8 09 */ bl func_802843EC
+/* 80239BE4 00235844 48 04 A8 09 */ bl GXSetFogColor
/* 80239BE8 00235848 88 1F 0A 6C */ lbz r0, 0xa6c(r31)
/* 80239BEC 0023584C 98 1F 14 8C */ stb r0, 0x148c(r31)
/* 80239BF0 00235850 88 1F 0A 6D */ lbz r0, 0xa6d(r31)
@@ -26764,7 +26764,7 @@ lbl_80239CA4:
/* 80239CB0 00235910 38 7F 0A 70 */ addi r3, r31, 0xa70
/* 80239CB4 00235914 A0 81 00 14 */ lhz r4, 0x14(r1)
/* 80239CB8 00235918 38 A5 67 60 */ addi r5, r5, lbl_80496760@l
-/* 80239CBC 0023591C 48 04 A7 5D */ bl func_80284418
+/* 80239CBC 0023591C 48 04 A7 5D */ bl GXInitFogAdjTable
/* 80239CC0 00235920 88 7F 0A 86 */ lbz r3, 0xa86(r31)
/* 80239CC4 00235924 7C 03 00 D0 */ neg r0, r3
/* 80239CC8 00235928 7C 00 1B 78 */ or r0, r0, r3
@@ -26802,7 +26802,7 @@ lbl_80239D38:
/* 80239D38 00235998 88 7F 0A 86 */ lbz r3, 0xa86(r31)
/* 80239D3C 0023599C 7E C4 B3 78 */ mr r4, r22
/* 80239D40 002359A0 38 BF 0A 70 */ addi r5, r31, 0xa70
-/* 80239D44 002359A4 48 04 A8 35 */ bl func_80284578
+/* 80239D44 002359A4 48 04 A8 35 */ bl GXSetFogRangeAdj
/* 80239D48 002359A8 B2 DF 14 A4 */ sth r22, 0x14a4(r31)
/* 80239D4C 002359AC 88 1F 0A 86 */ lbz r0, 0xa86(r31)
/* 80239D50 002359B0 98 1F 14 A6 */ stb r0, 0x14a6(r31)
@@ -27968,7 +27968,7 @@ lbl_8023AEC8:
/* 8023AEC8 00236B28 A0 1F 16 FE */ lhz r0, 0x16fe(r31)
/* 8023AECC 00236B2C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8023AED0 00236B30 41 82 00 14 */ beq lbl_8023AEE4
-/* 8023AED4 00236B34 48 04 7E D5 */ bl func_80282DA8
+/* 8023AED4 00236B34 48 04 7E D5 */ bl GXInvalidateTexAll
/* 8023AED8 00236B38 A0 1F 16 FE */ lhz r0, 0x16fe(r31)
/* 8023AEDC 00236B3C 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8023AEE0 00236B40 B0 1F 16 FE */ sth r0, 0x16fe(r31)
@@ -30752,7 +30752,7 @@ lbl_8023D394:
/* 8023D398 00238FF8 7F C5 F3 78 */ mr r5, r30
/* 8023D39C 00238FFC 7F A6 EB 78 */ mr r6, r29
/* 8023D3A0 00239000 38 7B 00 74 */ addi r3, r27, 0x74
-/* 8023D3A4 00239004 48 04 58 75 */ bl func_80282C18
+/* 8023D3A4 00239004 48 04 58 75 */ bl GXInitTlutObj
/* 8023D3A8 00239008 38 00 00 00 */ li r0, 0
/* 8023D3AC 0023900C 7F E7 FB 78 */ mr r7, r31
/* 8023D3B0 00239010 90 01 00 08 */ stw r0, 8(r1)
@@ -30763,7 +30763,7 @@ lbl_8023D394:
/* 8023D3C4 00239024 39 20 00 00 */ li r9, 0
/* 8023D3C8 00239028 A0 BB 00 00 */ lhz r5, 0(r27)
/* 8023D3CC 0023902C A0 DB 00 02 */ lhz r6, 2(r27)
-/* 8023D3D0 00239030 48 04 55 0D */ bl func_802828DC
+/* 8023D3D0 00239030 48 04 55 0D */ bl GXInitTexObjCI
/* 8023D3D4 00239034 48 00 00 34 */ b lbl_8023D408
lbl_8023D3D8:
/* 8023D3D8 00239038 80 7B 00 08 */ lwz r3, 8(r27)
@@ -30777,7 +30777,7 @@ lbl_8023D3D8:
/* 8023D3F8 00239058 57 8A 06 3E */ clrlwi r10, r28, 0x18
/* 8023D3FC 0023905C 39 00 00 00 */ li r8, 0
/* 8023D400 00239060 39 20 00 00 */ li r9, 0
-/* 8023D404 00239064 48 04 52 CD */ bl func_802826D0
+/* 8023D404 00239064 48 04 52 CD */ bl GXInitTexObj
lbl_8023D408:
/* 8023D408 00239068 39 61 00 30 */ addi r11, r1, 0x30
/* 8023D40C 0023906C 4B F8 9D 69 */ bl _restgpr_27
@@ -30858,7 +30858,7 @@ lbl_8023D504:
/* 8023D504 00239164 7F E4 FB 78 */ mr r4, r31
/* 8023D508 00239168 7F C5 F3 78 */ mr r5, r30
/* 8023D50C 0023916C 38 7D 00 54 */ addi r3, r29, 0x54
-/* 8023D510 00239170 48 04 55 19 */ bl func_80282A28
+/* 8023D510 00239170 48 04 55 19 */ bl GXInitTexObjWrapMode
/* 8023D514 00239174 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8023D518 00239178 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8023D51C 0023917C 83 C1 00 18 */ lwz r30, 0x18(r1)
@@ -30954,7 +30954,7 @@ lbl_8023D614:
/* 8023D648 002392A8 38 C0 00 00 */ li r6, 0
/* 8023D64C 002392AC 38 63 00 54 */ addi r3, r3, 0x54
/* 8023D650 002392B0 EC 40 10 28 */ fsubs f2, f0, f2
-/* 8023D654 002392B4 48 04 52 D1 */ bl func_80282924
+/* 8023D654 002392B4 48 04 52 D1 */ bl GXInitTexObjLOD
/* 8023D658 002392B8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8023D65C 002392BC 7C 08 03 A6 */ mtlr r0
/* 8023D660 002392C0 38 21 00 10 */ addi r1, r1, 0x10
@@ -33871,18 +33871,18 @@ lbl_8023FDC0:
/* 8023FDD8 0023BA38 7C 00 30 10 */ subfc r0, r0, r6
/* 8023FDDC 0023BA3C 7C 05 21 14 */ adde r0, r5, r4
/* 8023FDE0 0023BA40 54 04 06 3E */ clrlwi r4, r0, 0x18
-/* 8023FDE4 0023BA44 48 04 4A FD */ bl func_802848E0
+/* 8023FDE4 0023BA44 48 04 4A FD */ bl GXSetFieldMode
/* 8023FDE8 0023BA48 88 1F 00 19 */ lbz r0, 0x19(r31)
/* 8023FDEC 0023BA4C 28 00 00 01 */ cmplwi r0, 1
/* 8023FDF0 0023BA50 40 82 00 14 */ bne lbl_8023FE04
/* 8023FDF4 0023BA54 38 60 00 02 */ li r3, 2
/* 8023FDF8 0023BA58 38 80 00 00 */ li r4, 0
-/* 8023FDFC 0023BA5C 48 04 49 AD */ bl func_802847A8
+/* 8023FDFC 0023BA5C 48 04 49 AD */ bl GXSetPixelFmt
/* 8023FE00 0023BA60 48 00 00 10 */ b lbl_8023FE10
lbl_8023FE04:
/* 8023FE04 0023BA64 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 8023FE08 0023BA68 38 80 00 00 */ li r4, 0
-/* 8023FE0C 0023BA6C 48 04 49 9D */ bl func_802847A8
+/* 8023FE0C 0023BA6C 48 04 49 9D */ bl GXSetPixelFmt
lbl_8023FE10:
/* 8023FE10 0023BA70 48 03 9A 99 */ bl VIGetNextField
/* 8023FE14 0023BA74 98 7F 00 5A */ stb r3, 0x5a(r31)
diff --git a/asm/text_8.s b/asm/text_8.s
index 1cfd6a0..8944d98 100644
--- a/asm/text_8.s
+++ b/asm/text_8.s
@@ -2,2595 +2,6 @@
.section .text, "ax" # 0x80006980 - 0x803E1E60
-.global func_80282610
-func_80282610:
-/* 80282610 0027E270 28 03 00 3C */ cmplwi r3, 0x3c
-/* 80282614 0027E274 41 81 00 40 */ bgt lbl_80282654
-/* 80282618 0027E278 3D 20 80 43 */ lis r9, lbl_804357A0@ha
-/* 8028261C 0027E27C 54 60 10 3A */ slwi r0, r3, 2
-/* 80282620 0027E280 39 29 57 A0 */ addi r9, r9, lbl_804357A0@l
-/* 80282624 0027E284 7D 29 00 2E */ lwzx r9, r9, r0
-/* 80282628 0027E288 7D 29 03 A6 */ mtctr r9
-/* 8028262C 0027E28C 4E 80 04 20 */ bctr
-/* 80282630 0027E290 39 60 00 03 */ li r11, 3
-/* 80282634 0027E294 39 80 00 03 */ li r12, 3
-/* 80282638 0027E298 48 00 00 24 */ b lbl_8028265C
-/* 8028263C 0027E29C 39 60 00 03 */ li r11, 3
-/* 80282640 0027E2A0 39 80 00 02 */ li r12, 2
-/* 80282644 0027E2A4 48 00 00 18 */ b lbl_8028265C
-/* 80282648 0027E2A8 39 60 00 02 */ li r11, 2
-/* 8028264C 0027E2AC 39 80 00 02 */ li r12, 2
-/* 80282650 0027E2B0 48 00 00 0C */ b lbl_8028265C
-lbl_80282654:
-/* 80282654 0027E2B4 39 80 00 00 */ li r12, 0
-/* 80282658 0027E2B8 39 60 00 00 */ li r11, 0
-lbl_8028265C:
-/* 8028265C 0027E2BC 2C 04 00 00 */ cmpwi r4, 0
-/* 80282660 0027E2C0 40 82 00 08 */ bne lbl_80282668
-/* 80282664 0027E2C4 38 80 00 01 */ li r4, 1
-lbl_80282668:
-/* 80282668 0027E2C8 2C 05 00 00 */ cmpwi r5, 0
-/* 8028266C 0027E2CC 40 82 00 08 */ bne lbl_80282674
-/* 80282670 0027E2D0 38 A0 00 01 */ li r5, 1
-lbl_80282674:
-/* 80282674 0027E2D4 39 40 00 01 */ li r10, 1
-/* 80282678 0027E2D8 2C 03 00 06 */ cmpwi r3, 6
-/* 8028267C 0027E2DC 7D 40 58 30 */ slw r0, r10, r11
-/* 80282680 0027E2E0 39 20 00 00 */ li r9, 0
-/* 80282684 0027E2E4 7C 84 02 14 */ add r4, r4, r0
-/* 80282688 0027E2E8 7D 40 60 30 */ slw r0, r10, r12
-/* 8028268C 0027E2EC 38 84 FF FF */ addi r4, r4, -1
-/* 80282690 0027E2F0 7C 8A 5E 30 */ sraw r10, r4, r11
-/* 80282694 0027E2F4 7C 85 02 14 */ add r4, r5, r0
-/* 80282698 0027E2F8 91 46 00 00 */ stw r10, 0(r6)
-/* 8028269C 0027E2FC 38 04 FF FF */ addi r0, r4, -1
-/* 802826A0 0027E300 7C 00 66 30 */ sraw r0, r0, r12
-/* 802826A4 0027E304 90 07 00 00 */ stw r0, 0(r7)
-/* 802826A8 0027E308 41 82 00 0C */ beq lbl_802826B4
-/* 802826AC 0027E30C 2C 03 00 16 */ cmpwi r3, 0x16
-/* 802826B0 0027E310 40 82 00 08 */ bne lbl_802826B8
-lbl_802826B4:
-/* 802826B4 0027E314 39 20 00 01 */ li r9, 1
-lbl_802826B8:
-/* 802826B8 0027E318 7C 09 00 D0 */ neg r0, r9
-/* 802826BC 0027E31C 7C 00 4B 78 */ or r0, r0, r9
-/* 802826C0 0027E320 54 03 0F FE */ srwi r3, r0, 0x1f
-/* 802826C4 0027E324 38 03 00 01 */ addi r0, r3, 1
-/* 802826C8 0027E328 90 08 00 00 */ stw r0, 0(r8)
-/* 802826CC 0027E32C 4E 80 00 20 */ blr
-
-.global func_802826D0
-func_802826D0:
-/* 802826D0 0027E330 94 21 FF C0 */ stwu r1, -0x40(r1)
-/* 802826D4 0027E334 7C 08 02 A6 */ mflr r0
-/* 802826D8 0027E338 90 01 00 44 */ stw r0, 0x44(r1)
-/* 802826DC 0027E33C 39 61 00 40 */ addi r11, r1, 0x40
-/* 802826E0 0027E340 4B F4 4A 3D */ bl _savegpr_24
-/* 802826E4 0027E344 7C 9B 23 78 */ mr r27, r4
-/* 802826E8 0027E348 7C BC 2B 78 */ mr r28, r5
-/* 802826EC 0027E34C 7C 7F 1B 78 */ mr r31, r3
-/* 802826F0 0027E350 7C DD 33 78 */ mr r29, r6
-/* 802826F4 0027E354 7C FE 3B 78 */ mr r30, r7
-/* 802826F8 0027E358 7D 18 43 78 */ mr r24, r8
-/* 802826FC 0027E35C 7D 39 4B 78 */ mr r25, r9
-/* 80282700 0027E360 7D 5A 53 78 */ mr r26, r10
-/* 80282704 0027E364 38 80 00 00 */ li r4, 0
-/* 80282708 0027E368 38 A0 00 20 */ li r5, 0x20
-/* 8028270C 0027E36C 4B D8 19 F9 */ bl memset
-/* 80282710 0027E370 80 1F 00 00 */ lwz r0, 0(r31)
-/* 80282714 0027E374 53 00 07 BE */ rlwimi r0, r24, 0, 0x1e, 0x1f
-/* 80282718 0027E378 53 20 17 3A */ rlwimi r0, r25, 2, 0x1c, 0x1d
-/* 8028271C 0027E37C 2C 1A 00 00 */ cmpwi r26, 0
-/* 80282720 0027E380 60 04 00 10 */ ori r4, r0, 0x10
-/* 80282724 0027E384 90 9F 00 00 */ stw r4, 0(r31)
-/* 80282728 0027E388 41 82 00 90 */ beq lbl_802827B8
-/* 8028272C 0027E38C 88 7F 00 1F */ lbz r3, 0x1f(r31)
-/* 80282730 0027E390 38 1E FF F8 */ addi r0, r30, -8
-/* 80282734 0027E394 28 00 00 02 */ cmplwi r0, 2
-/* 80282738 0027E398 60 60 00 01 */ ori r0, r3, 1
-/* 8028273C 0027E39C 98 1F 00 1F */ stb r0, 0x1f(r31)
-/* 80282740 0027E3A0 41 81 00 14 */ bgt lbl_80282754
-/* 80282744 0027E3A4 38 00 00 05 */ li r0, 5
-/* 80282748 0027E3A8 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
-/* 8028274C 0027E3AC 90 9F 00 00 */ stw r4, 0(r31)
-/* 80282750 0027E3B0 48 00 00 10 */ b lbl_80282760
-lbl_80282754:
-/* 80282754 0027E3B4 38 00 00 06 */ li r0, 6
-/* 80282758 0027E3B8 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
-/* 8028275C 0027E3BC 90 9F 00 00 */ stw r4, 0(r31)
-lbl_80282760:
-/* 80282760 0027E3C0 7C 1C E8 40 */ cmplw r28, r29
-/* 80282764 0027E3C4 40 81 00 10 */ ble lbl_80282774
-/* 80282768 0027E3C8 7F 80 00 34 */ cntlzw r0, r28
-/* 8028276C 0027E3CC 20 60 00 1F */ subfic r3, r0, 0x1f
-/* 80282770 0027E3D0 48 00 00 0C */ b lbl_8028277C
-lbl_80282774:
-/* 80282774 0027E3D4 7F A0 00 34 */ cntlzw r0, r29
-/* 80282778 0027E3D8 20 60 00 1F */ subfic r3, r0, 0x1f
-lbl_8028277C:
-/* 8028277C 0027E3DC 3C 00 43 30 */ lis r0, 0x4330
-/* 80282780 0027E3E0 90 61 00 0C */ stw r3, 0xc(r1)
-/* 80282784 0027E3E4 C8 42 A1 48 */ lfd f2, lbl_80642748-_SDA2_BASE_(r2)
-/* 80282788 0027E3E8 90 01 00 08 */ stw r0, 8(r1)
-/* 8028278C 0027E3EC C0 02 A1 40 */ lfs f0, lbl_80642740-_SDA2_BASE_(r2)
-/* 80282790 0027E3F0 C8 21 00 08 */ lfd f1, 8(r1)
-/* 80282794 0027E3F4 80 1F 00 04 */ lwz r0, 4(r31)
-/* 80282798 0027E3F8 EC 21 10 28 */ fsubs f1, f1, f2
-/* 8028279C 0027E3FC EC 00 00 72 */ fmuls f0, f0, f1
-/* 802827A0 0027E400 FC 00 00 1E */ fctiwz f0, f0
-/* 802827A4 0027E404 D8 01 00 10 */ stfd f0, 0x10(r1)
-/* 802827A8 0027E408 80 61 00 14 */ lwz r3, 0x14(r1)
-/* 802827AC 0027E40C 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17
-/* 802827B0 0027E410 90 1F 00 04 */ stw r0, 4(r31)
-/* 802827B4 0027E414 48 00 00 10 */ b lbl_802827C4
-lbl_802827B8:
-/* 802827B8 0027E418 38 00 00 04 */ li r0, 4
-/* 802827BC 0027E41C 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
-/* 802827C0 0027E420 90 9F 00 00 */ stw r4, 0(r31)
-lbl_802827C4:
-/* 802827C4 0027E424 38 1C FF FF */ addi r0, r28, -1
-/* 802827C8 0027E428 80 7F 00 08 */ lwz r3, 8(r31)
-/* 802827CC 0027E42C 50 03 05 BE */ rlwimi r3, r0, 0, 0x16, 0x1f
-/* 802827D0 0027E430 57 C4 07 3E */ clrlwi r4, r30, 0x1c
-/* 802827D4 0027E434 38 1D FF FF */ addi r0, r29, -1
-/* 802827D8 0027E438 93 DF 00 14 */ stw r30, 0x14(r31)
-/* 802827DC 0027E43C 50 03 53 2A */ rlwimi r3, r0, 0xa, 0xc, 0x15
-/* 802827E0 0027E440 80 1F 00 0C */ lwz r0, 0xc(r31)
-/* 802827E4 0027E444 53 60 DA 3E */ rlwimi r0, r27, 0x1b, 8, 0x1f
-/* 802827E8 0027E448 28 04 00 0E */ cmplwi r4, 0xe
-/* 802827EC 0027E44C 53 C3 A2 16 */ rlwimi r3, r30, 0x14, 8, 0xb
-/* 802827F0 0027E450 90 1F 00 0C */ stw r0, 0xc(r31)
-/* 802827F4 0027E454 90 7F 00 08 */ stw r3, 8(r31)
-/* 802827F8 0027E458 41 81 00 80 */ bgt lbl_80282878
-/* 802827FC 0027E45C 3C 60 80 43 */ lis r3, lbl_80435894@ha
-/* 80282800 0027E460 54 80 10 3A */ slwi r0, r4, 2
-/* 80282804 0027E464 38 63 58 94 */ addi r3, r3, lbl_80435894@l
-/* 80282808 0027E468 7C 63 00 2E */ lwzx r3, r3, r0
-/* 8028280C 0027E46C 7C 69 03 A6 */ mtctr r3
-/* 80282810 0027E470 4E 80 04 20 */ bctr
-/* 80282814 0027E474 38 00 00 01 */ li r0, 1
-/* 80282818 0027E478 38 C0 00 03 */ li r6, 3
-/* 8028281C 0027E47C 98 1F 00 1E */ stb r0, 0x1e(r31)
-/* 80282820 0027E480 38 E0 00 03 */ li r7, 3
-/* 80282824 0027E484 48 00 00 64 */ b lbl_80282888
-/* 80282828 0027E488 38 00 00 02 */ li r0, 2
-/* 8028282C 0027E48C 38 C0 00 03 */ li r6, 3
-/* 80282830 0027E490 98 1F 00 1E */ stb r0, 0x1e(r31)
-/* 80282834 0027E494 38 E0 00 02 */ li r7, 2
-/* 80282838 0027E498 48 00 00 50 */ b lbl_80282888
-/* 8028283C 0027E49C 38 00 00 02 */ li r0, 2
-/* 80282840 0027E4A0 38 C0 00 02 */ li r6, 2
-/* 80282844 0027E4A4 98 1F 00 1E */ stb r0, 0x1e(r31)
-/* 80282848 0027E4A8 38 E0 00 02 */ li r7, 2
-/* 8028284C 0027E4AC 48 00 00 3C */ b lbl_80282888
-/* 80282850 0027E4B0 38 00 00 03 */ li r0, 3
-/* 80282854 0027E4B4 38 C0 00 02 */ li r6, 2
-/* 80282858 0027E4B8 98 1F 00 1E */ stb r0, 0x1e(r31)
-/* 8028285C 0027E4BC 38 E0 00 02 */ li r7, 2
-/* 80282860 0027E4C0 48 00 00 28 */ b lbl_80282888
-/* 80282864 0027E4C4 38 00 00 00 */ li r0, 0
-/* 80282868 0027E4C8 38 C0 00 03 */ li r6, 3
-/* 8028286C 0027E4CC 98 1F 00 1E */ stb r0, 0x1e(r31)
-/* 80282870 0027E4D0 38 E0 00 03 */ li r7, 3
-/* 80282874 0027E4D4 48 00 00 14 */ b lbl_80282888
-lbl_80282878:
-/* 80282878 0027E4D8 38 00 00 02 */ li r0, 2
-/* 8028287C 0027E4DC 38 C0 00 02 */ li r6, 2
-/* 80282880 0027E4E0 98 1F 00 1E */ stb r0, 0x1e(r31)
-/* 80282884 0027E4E4 38 E0 00 02 */ li r7, 2
-lbl_80282888:
-/* 80282888 0027E4E8 38 A0 00 01 */ li r5, 1
-/* 8028288C 0027E4EC 88 1F 00 1F */ lbz r0, 0x1f(r31)
-/* 80282890 0027E4F0 7C A3 30 30 */ slw r3, r5, r6
-/* 80282894 0027E4F4 39 61 00 40 */ addi r11, r1, 0x40
-/* 80282898 0027E4F8 7C 9C 1A 14 */ add r4, r28, r3
-/* 8028289C 0027E4FC 60 00 00 02 */ ori r0, r0, 2
-/* 802828A0 0027E500 7C A3 38 30 */ slw r3, r5, r7
-/* 802828A4 0027E504 98 1F 00 1F */ stb r0, 0x1f(r31)
-/* 802828A8 0027E508 38 84 FF FF */ addi r4, r4, -1
-/* 802828AC 0027E50C 7C 7D 1A 14 */ add r3, r29, r3
-/* 802828B0 0027E510 7C 84 36 30 */ sraw r4, r4, r6
-/* 802828B4 0027E514 38 03 FF FF */ addi r0, r3, -1
-/* 802828B8 0027E518 7C 00 3E 30 */ sraw r0, r0, r7
-/* 802828BC 0027E51C 7C 04 01 D6 */ mullw r0, r4, r0
-/* 802828C0 0027E520 54 00 04 7E */ clrlwi r0, r0, 0x11
-/* 802828C4 0027E524 B0 1F 00 1C */ sth r0, 0x1c(r31)
-/* 802828C8 0027E528 4B F4 48 A1 */ bl _restgpr_24
-/* 802828CC 0027E52C 80 01 00 44 */ lwz r0, 0x44(r1)
-/* 802828D0 0027E530 7C 08 03 A6 */ mtlr r0
-/* 802828D4 0027E534 38 21 00 40 */ addi r1, r1, 0x40
-/* 802828D8 0027E538 4E 80 00 20 */ blr
-
-.global func_802828DC
-func_802828DC:
-/* 802828DC 0027E53C 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 802828E0 0027E540 7C 08 02 A6 */ mflr r0
-/* 802828E4 0027E544 90 01 00 14 */ stw r0, 0x14(r1)
-/* 802828E8 0027E548 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 802828EC 0027E54C 83 E1 00 18 */ lwz r31, 0x18(r1)
-/* 802828F0 0027E550 93 C1 00 08 */ stw r30, 8(r1)
-/* 802828F4 0027E554 7C 7E 1B 78 */ mr r30, r3
-/* 802828F8 0027E558 4B FF FD D9 */ bl func_802826D0
-/* 802828FC 0027E55C 88 1E 00 1F */ lbz r0, 0x1f(r30)
-/* 80282900 0027E560 93 FE 00 18 */ stw r31, 0x18(r30)
-/* 80282904 0027E564 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
-/* 80282908 0027E568 98 1E 00 1F */ stb r0, 0x1f(r30)
-/* 8028290C 0027E56C 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80282910 0027E570 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80282914 0027E574 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80282918 0027E578 7C 08 03 A6 */ mtlr r0
-/* 8028291C 0027E57C 38 21 00 10 */ addi r1, r1, 0x10
-/* 80282920 0027E580 4E 80 00 20 */ blr
-
-.global func_80282924
-func_80282924:
-/* 80282924 0027E584 C0 02 A1 50 */ lfs f0, lbl_80642750-_SDA2_BASE_(r2)
-/* 80282928 0027E588 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8028292C 0027E58C FC 03 00 40 */ fcmpo cr0, f3, f0
-/* 80282930 0027E590 40 80 00 0C */ bge lbl_8028293C
-/* 80282934 0027E594 FC 60 00 90 */ fmr f3, f0
-/* 80282938 0027E598 48 00 00 18 */ b lbl_80282950
-lbl_8028293C:
-/* 8028293C 0027E59C C0 02 A1 58 */ lfs f0, lbl_80642758-_SDA2_BASE_(r2)
-/* 80282940 0027E5A0 FC 03 00 40 */ fcmpo cr0, f3, f0
-/* 80282944 0027E5A4 4C 41 13 82 */ cror 2, 1, 2
-/* 80282948 0027E5A8 40 82 00 08 */ bne lbl_80282950
-/* 8028294C 0027E5AC C0 62 A1 54 */ lfs f3, lbl_80642754-_SDA2_BASE_(r2)
-lbl_80282950:
-/* 80282950 0027E5B0 C0 82 A1 5C */ lfs f4, lbl_8064275C-_SDA2_BASE_(r2)
-/* 80282954 0027E5B4 38 05 FF FF */ addi r0, r5, -1
-/* 80282958 0027E5B8 7C 09 00 34 */ cntlzw r9, r0
-/* 8028295C 0027E5BC C0 02 A1 60 */ lfs f0, lbl_80642760-_SDA2_BASE_(r2)
-/* 80282960 0027E5C0 EC 64 00 F2 */ fmuls f3, f4, f3
-/* 80282964 0027E5C4 7C E0 00 34 */ cntlzw r0, r7
-/* 80282968 0027E5C8 81 43 00 00 */ lwz r10, 0(r3)
-/* 8028296C 0027E5CC 38 AD 88 A0 */ addi r5, r13, lbl_8063DB60-_SDA_BASE_
-/* 80282970 0027E5D0 FC 01 00 40 */ fcmpo cr0, f1, f0
-/* 80282974 0027E5D4 FC 60 18 1E */ fctiwz f3, f3
-/* 80282978 0027E5D8 D8 61 00 08 */ stfd f3, 8(r1)
-/* 8028297C 0027E5DC 80 E1 00 0C */ lwz r7, 0xc(r1)
-/* 80282980 0027E5E0 50 EA 4B EC */ rlwimi r10, r7, 9, 0xf, 0x16
-/* 80282984 0027E5E4 51 2A FE F6 */ rlwimi r10, r9, 0x1f, 0x1b, 0x1b
-/* 80282988 0027E5E8 91 43 00 00 */ stw r10, 0(r3)
-/* 8028298C 0027E5EC 7C 85 20 AE */ lbzx r4, r5, r4
-/* 80282990 0027E5F0 50 8A 2E 34 */ rlwimi r10, r4, 5, 0x18, 0x1a
-/* 80282994 0027E5F4 50 0A 1D EE */ rlwimi r10, r0, 3, 0x17, 0x17
-/* 80282998 0027E5F8 55 40 03 D8 */ rlwinm r0, r10, 0, 0xf, 0xc
-/* 8028299C 0027E5FC 51 00 9A D8 */ rlwimi r0, r8, 0x13, 0xb, 0xc
-/* 802829A0 0027E600 50 C0 AA 94 */ rlwimi r0, r6, 0x15, 0xa, 0xa
-/* 802829A4 0027E604 90 03 00 00 */ stw r0, 0(r3)
-/* 802829A8 0027E608 40 80 00 0C */ bge lbl_802829B4
-/* 802829AC 0027E60C FC 20 00 90 */ fmr f1, f0
-/* 802829B0 0027E610 48 00 00 14 */ b lbl_802829C4
-lbl_802829B4:
-/* 802829B4 0027E614 C0 02 A1 64 */ lfs f0, lbl_80642764-_SDA2_BASE_(r2)
-/* 802829B8 0027E618 FC 01 00 40 */ fcmpo cr0, f1, f0
-/* 802829BC 0027E61C 40 81 00 08 */ ble lbl_802829C4
-/* 802829C0 0027E620 FC 20 00 90 */ fmr f1, f0
-lbl_802829C4:
-/* 802829C4 0027E624 C0 62 A1 40 */ lfs f3, lbl_80642740-_SDA2_BASE_(r2)
-/* 802829C8 0027E628 C0 02 A1 60 */ lfs f0, lbl_80642760-_SDA2_BASE_(r2)
-/* 802829CC 0027E62C EC 23 00 72 */ fmuls f1, f3, f1
-/* 802829D0 0027E630 FC 02 00 40 */ fcmpo cr0, f2, f0
-/* 802829D4 0027E634 FC 20 08 1E */ fctiwz f1, f1
-/* 802829D8 0027E638 D8 21 00 08 */ stfd f1, 8(r1)
-/* 802829DC 0027E63C 80 81 00 0C */ lwz r4, 0xc(r1)
-/* 802829E0 0027E640 40 80 00 0C */ bge lbl_802829EC
-/* 802829E4 0027E644 FC 40 00 90 */ fmr f2, f0
-/* 802829E8 0027E648 48 00 00 14 */ b lbl_802829FC
-lbl_802829EC:
-/* 802829EC 0027E64C C0 02 A1 64 */ lfs f0, lbl_80642764-_SDA2_BASE_(r2)
-/* 802829F0 0027E650 FC 02 00 40 */ fcmpo cr0, f2, f0
-/* 802829F4 0027E654 40 81 00 08 */ ble lbl_802829FC
-/* 802829F8 0027E658 FC 40 00 90 */ fmr f2, f0
-lbl_802829FC:
-/* 802829FC 0027E65C C0 02 A1 40 */ lfs f0, lbl_80642740-_SDA2_BASE_(r2)
-/* 80282A00 0027E660 80 03 00 04 */ lwz r0, 4(r3)
-/* 80282A04 0027E664 50 80 06 3E */ rlwimi r0, r4, 0, 0x18, 0x1f
-/* 80282A08 0027E668 EC 00 00 B2 */ fmuls f0, f0, f2
-/* 80282A0C 0027E66C FC 00 00 1E */ fctiwz f0, f0
-/* 80282A10 0027E670 D8 01 00 08 */ stfd f0, 8(r1)
-/* 80282A14 0027E674 80 81 00 0C */ lwz r4, 0xc(r1)
-/* 80282A18 0027E678 50 80 44 2E */ rlwimi r0, r4, 8, 0x10, 0x17
-/* 80282A1C 0027E67C 90 03 00 04 */ stw r0, 4(r3)
-/* 80282A20 0027E680 38 21 00 10 */ addi r1, r1, 0x10
-/* 80282A24 0027E684 4E 80 00 20 */ blr
-
-.global func_80282A28
-func_80282A28:
-/* 80282A28 0027E688 80 03 00 00 */ lwz r0, 0(r3)
-/* 80282A2C 0027E68C 50 80 07 BE */ rlwimi r0, r4, 0, 0x1e, 0x1f
-/* 80282A30 0027E690 50 A0 17 3A */ rlwimi r0, r5, 2, 0x1c, 0x1d
-/* 80282A34 0027E694 90 03 00 00 */ stw r0, 0(r3)
-/* 80282A38 0027E698 4E 80 00 20 */ blr
-
-.global func_80282A3C
-func_80282A3C:
-/* 80282A3C 0027E69C 90 83 00 18 */ stw r4, 0x18(r3)
-/* 80282A40 0027E6A0 4E 80 00 20 */ blr
-
-.global func_80282A44
-func_80282A44:
-/* 80282A44 0027E6A4 80 63 00 14 */ lwz r3, 0x14(r3)
-/* 80282A48 0027E6A8 4E 80 00 20 */ blr
-
-.global func_80282A4C
-func_80282A4C:
-/* 80282A4C 0027E6AC 88 03 00 1F */ lbz r0, 0x1f(r3)
-/* 80282A50 0027E6B0 54 03 07 FE */ clrlwi r3, r0, 0x1f
-/* 80282A54 0027E6B4 4E 80 00 20 */ blr
-
-.global func_80282A58
-func_80282A58:
-/* 80282A58 0027E6B8 80 63 00 18 */ lwz r3, 0x18(r3)
-/* 80282A5C 0027E6BC 4E 80 00 20 */ blr
-
-.global func_80282A60
-func_80282A60:
-/* 80282A60 0027E6C0 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80282A64 0027E6C4 7C 08 02 A6 */ mflr r0
-/* 80282A68 0027E6C8 39 6D 88 68 */ addi r11, r13, lbl_8063DB28-_SDA_BASE_
-/* 80282A6C 0027E6CC 39 4D 88 70 */ addi r10, r13, lbl_8063DB30-_SDA_BASE_
-/* 80282A70 0027E6D0 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80282A74 0027E6D4 39 2D 88 78 */ addi r9, r13, lbl_8063DB38-_SDA_BASE_
-/* 80282A78 0027E6D8 81 83 00 00 */ lwz r12, 0(r3)
-/* 80282A7C 0027E6DC 39 0D 88 80 */ addi r8, r13, lbl_8063DB40-_SDA_BASE_
-/* 80282A80 0027E6E0 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 80282A84 0027E6E4 38 ED 88 88 */ addi r7, r13, lbl_8063DB48-_SDA_BASE_
-/* 80282A88 0027E6E8 38 CD 88 90 */ addi r6, r13, lbl_8063DB50-_SDA_BASE_
-/* 80282A8C 0027E6EC 7C BF 2B 78 */ mr r31, r5
-/* 80282A90 0027E6F0 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 80282A94 0027E6F4 7C 7E 1B 78 */ mr r30, r3
-/* 80282A98 0027E6F8 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 80282A9C 0027E6FC 3F A0 CC 01 */ lis r29, 0xCC008000@ha
-/* 80282AA0 0027E700 93 81 00 10 */ stw r28, 0x10(r1)
-/* 80282AA4 0027E704 3B 80 00 61 */ li r28, 0x61
-/* 80282AA8 0027E708 7C 0B 28 AE */ lbzx r0, r11, r5
-/* 80282AAC 0027E70C 81 63 00 04 */ lwz r11, 4(r3)
-/* 80282AB0 0027E710 50 0C C0 0E */ rlwimi r12, r0, 0x18, 0, 7
-/* 80282AB4 0027E714 7C 0A 28 AE */ lbzx r0, r10, r5
-/* 80282AB8 0027E718 7D 49 28 AE */ lbzx r10, r9, r5
-/* 80282ABC 0027E71C 50 0B C0 0E */ rlwimi r11, r0, 0x18, 0, 7
-/* 80282AC0 0027E720 7C 07 28 AE */ lbzx r0, r7, r5
-/* 80282AC4 0027E724 7D 08 28 AE */ lbzx r8, r8, r5
-/* 80282AC8 0027E728 7C A6 28 AE */ lbzx r5, r6, r5
-/* 80282ACC 0027E72C 81 23 00 08 */ lwz r9, 8(r3)
-/* 80282AD0 0027E730 51 49 C0 0E */ rlwimi r9, r10, 0x18, 0, 7
-/* 80282AD4 0027E734 9B 9D 80 00 */ stb r28, 0xCC008000@l(r29)
-/* 80282AD8 0027E738 80 E4 00 00 */ lwz r7, 0(r4)
-/* 80282ADC 0027E73C 51 07 C0 0E */ rlwimi r7, r8, 0x18, 0, 7
-/* 80282AE0 0027E740 91 9D 80 00 */ stw r12, -0x8000(r29)
-/* 80282AE4 0027E744 80 C4 00 04 */ lwz r6, 4(r4)
-/* 80282AE8 0027E748 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
-/* 80282AEC 0027E74C 9B 9D 80 00 */ stb r28, -0x8000(r29)
-/* 80282AF0 0027E750 88 03 00 1F */ lbz r0, 0x1f(r3)
-/* 80282AF4 0027E754 91 7D 80 00 */ stw r11, -0x8000(r29)
-/* 80282AF8 0027E758 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
-/* 80282AFC 0027E75C 80 03 00 0C */ lwz r0, 0xc(r3)
-/* 80282B00 0027E760 9B 9D 80 00 */ stb r28, -0x8000(r29)
-/* 80282B04 0027E764 50 A0 C0 0E */ rlwimi r0, r5, 0x18, 0, 7
-/* 80282B08 0027E768 91 3D 80 00 */ stw r9, -0x8000(r29)
-/* 80282B0C 0027E76C 9B 9D 80 00 */ stb r28, -0x8000(r29)
-/* 80282B10 0027E770 90 FD 80 00 */ stw r7, -0x8000(r29)
-/* 80282B14 0027E774 9B 9D 80 00 */ stb r28, -0x8000(r29)
-/* 80282B18 0027E778 90 DD 80 00 */ stw r6, -0x8000(r29)
-/* 80282B1C 0027E77C 9B 9D 80 00 */ stb r28, -0x8000(r29)
-/* 80282B20 0027E780 91 83 00 00 */ stw r12, 0(r3)
-/* 80282B24 0027E784 91 63 00 04 */ stw r11, 4(r3)
-/* 80282B28 0027E788 91 23 00 08 */ stw r9, 8(r3)
-/* 80282B2C 0027E78C 90 E4 00 00 */ stw r7, 0(r4)
-/* 80282B30 0027E790 90 C4 00 04 */ stw r6, 4(r4)
-/* 80282B34 0027E794 90 03 00 0C */ stw r0, 0xc(r3)
-/* 80282B38 0027E798 90 1D 80 00 */ stw r0, -0x8000(r29)
-/* 80282B3C 0027E79C 40 82 00 38 */ bne lbl_80282B74
-/* 80282B40 0027E7A0 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282B44 0027E7A4 80 63 00 18 */ lwz r3, 0x18(r3)
-/* 80282B48 0027E7A8 81 84 05 1C */ lwz r12, 0x51c(r4)
-/* 80282B4C 0027E7AC 7D 89 03 A6 */ mtctr r12
-/* 80282B50 0027E7B0 4E 80 04 21 */ bctrl
-/* 80282B54 0027E7B4 38 8D 88 98 */ addi r4, r13, lbl_8063DB58-_SDA_BASE_
-/* 80282B58 0027E7B8 80 03 00 04 */ lwz r0, 4(r3)
-/* 80282B5C 0027E7BC 7C 84 F8 AE */ lbzx r4, r4, r31
-/* 80282B60 0027E7C0 50 80 C0 0E */ rlwimi r0, r4, 0x18, 0, 7
-/* 80282B64 0027E7C4 90 03 00 04 */ stw r0, 4(r3)
-/* 80282B68 0027E7C8 9B 9D 80 00 */ stb r28, -0x8000(r29)
-/* 80282B6C 0027E7CC 80 03 00 04 */ lwz r0, 4(r3)
-/* 80282B70 0027E7D0 90 1D 80 00 */ stw r0, -0x8000(r29)
-lbl_80282B74:
-/* 80282B74 0027E7D4 80 C2 A0 D0 */ lwz r6, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282B78 0027E7D8 57 E3 10 3A */ slwi r3, r31, 2
-/* 80282B7C 0027E7DC 80 BE 00 08 */ lwz r5, 8(r30)
-/* 80282B80 0027E7E0 38 00 00 00 */ li r0, 0
-/* 80282B84 0027E7E4 7C 86 1A 14 */ add r4, r6, r3
-/* 80282B88 0027E7E8 80 7E 00 00 */ lwz r3, 0(r30)
-/* 80282B8C 0027E7EC 90 A4 05 64 */ stw r5, 0x564(r4)
-/* 80282B90 0027E7F0 90 64 05 84 */ stw r3, 0x584(r4)
-/* 80282B94 0027E7F4 80 66 05 FC */ lwz r3, 0x5fc(r6)
-/* 80282B98 0027E7F8 60 63 00 01 */ ori r3, r3, 1
-/* 80282B9C 0027E7FC 90 66 05 FC */ stw r3, 0x5fc(r6)
-/* 80282BA0 0027E800 B0 06 00 02 */ sth r0, 2(r6)
-/* 80282BA4 0027E804 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 80282BA8 0027E808 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80282BAC 0027E80C 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 80282BB0 0027E810 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 80282BB4 0027E814 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80282BB8 0027E818 7C 08 03 A6 */ mtlr r0
-/* 80282BBC 0027E81C 38 21 00 20 */ addi r1, r1, 0x20
-/* 80282BC0 0027E820 4E 80 00 20 */ blr
-
-.global func_80282BC4
-func_80282BC4:
-/* 80282BC4 0027E824 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80282BC8 0027E828 7C 08 02 A6 */ mflr r0
-/* 80282BCC 0027E82C 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282BD0 0027E830 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80282BD4 0027E834 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80282BD8 0027E838 7C 9F 23 78 */ mr r31, r4
-/* 80282BDC 0027E83C 93 C1 00 08 */ stw r30, 8(r1)
-/* 80282BE0 0027E840 7C 7E 1B 78 */ mr r30, r3
-/* 80282BE4 0027E844 81 85 05 18 */ lwz r12, 0x518(r5)
-/* 80282BE8 0027E848 7D 89 03 A6 */ mtctr r12
-/* 80282BEC 0027E84C 4E 80 04 21 */ bctrl
-/* 80282BF0 0027E850 7C 64 1B 78 */ mr r4, r3
-/* 80282BF4 0027E854 7F C3 F3 78 */ mr r3, r30
-/* 80282BF8 0027E858 7F E5 FB 78 */ mr r5, r31
-/* 80282BFC 0027E85C 4B FF FE 65 */ bl func_80282A60
-/* 80282C00 0027E860 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80282C04 0027E864 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80282C08 0027E868 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80282C0C 0027E86C 7C 08 03 A6 */ mtlr r0
-/* 80282C10 0027E870 38 21 00 10 */ addi r1, r1, 0x10
-/* 80282C14 0027E874 4E 80 00 20 */ blr
-
-.global func_80282C18
-func_80282C18:
-/* 80282C18 0027E878 80 E3 00 04 */ lwz r7, 4(r3)
-/* 80282C1C 0027E87C 38 00 00 64 */ li r0, 0x64
-/* 80282C20 0027E880 50 87 DA 3E */ rlwimi r7, r4, 0x1b, 8, 0x1f
-/* 80282C24 0027E884 38 80 00 00 */ li r4, 0
-/* 80282C28 0027E888 50 A4 55 2A */ rlwimi r4, r5, 0xa, 0x14, 0x15
-/* 80282C2C 0027E88C B0 C3 00 08 */ sth r6, 8(r3)
-/* 80282C30 0027E890 50 07 C0 0E */ rlwimi r7, r0, 0x18, 0, 7
-/* 80282C34 0027E894 90 83 00 00 */ stw r4, 0(r3)
-/* 80282C38 0027E898 90 E3 00 04 */ stw r7, 4(r3)
-/* 80282C3C 0027E89C 4E 80 00 20 */ blr
-
-.global func_80282C40
-func_80282C40:
-/* 80282C40 0027E8A0 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80282C44 0027E8A4 7C 08 02 A6 */ mflr r0
-/* 80282C48 0027E8A8 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282C4C 0027E8AC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80282C50 0027E8B0 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80282C54 0027E8B4 93 C1 00 08 */ stw r30, 8(r1)
-/* 80282C58 0027E8B8 7C 7E 1B 78 */ mr r30, r3
-/* 80282C5C 0027E8BC 7C 83 23 78 */ mr r3, r4
-/* 80282C60 0027E8C0 81 85 05 1C */ lwz r12, 0x51c(r5)
-/* 80282C64 0027E8C4 7D 89 03 A6 */ mtctr r12
-/* 80282C68 0027E8C8 4E 80 04 21 */ bctrl
-/* 80282C6C 0027E8CC 7C 7F 1B 78 */ mr r31, r3
-/* 80282C70 0027E8D0 48 00 0E AD */ bl func_80283B1C
-/* 80282C74 0027E8D4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80282C78 0027E8D8 38 80 00 61 */ li r4, 0x61
-/* 80282C7C 0027E8DC 98 83 80 00 */ stb r4, 0xCC008000@l(r3)
-/* 80282C80 0027E8E0 80 1E 00 04 */ lwz r0, 4(r30)
-/* 80282C84 0027E8E4 90 03 80 00 */ stw r0, -0x8000(r3)
-/* 80282C88 0027E8E8 98 83 80 00 */ stb r4, -0x8000(r3)
-/* 80282C8C 0027E8EC 80 1F 00 00 */ lwz r0, 0(r31)
-/* 80282C90 0027E8F0 90 03 80 00 */ stw r0, -0x8000(r3)
-/* 80282C94 0027E8F4 48 00 0E 89 */ bl func_80283B1C
-/* 80282C98 0027E8F8 80 1F 00 00 */ lwz r0, 0(r31)
-/* 80282C9C 0027E8FC 80 9E 00 00 */ lwz r4, 0(r30)
-/* 80282CA0 0027E900 50 04 05 BE */ rlwimi r4, r0, 0, 0x16, 0x1f
-/* 80282CA4 0027E904 80 7E 00 04 */ lwz r3, 4(r30)
-/* 80282CA8 0027E908 90 9F 00 04 */ stw r4, 4(r31)
-/* 80282CAC 0027E90C 80 1E 00 08 */ lwz r0, 8(r30)
-/* 80282CB0 0027E910 90 7F 00 08 */ stw r3, 8(r31)
-/* 80282CB4 0027E914 90 1F 00 0C */ stw r0, 0xc(r31)
-/* 80282CB8 0027E918 90 9E 00 00 */ stw r4, 0(r30)
-/* 80282CBC 0027E91C 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80282CC0 0027E920 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80282CC4 0027E924 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80282CC8 0027E928 7C 08 03 A6 */ mtlr r0
-/* 80282CCC 0027E92C 38 21 00 10 */ addi r1, r1, 0x10
-/* 80282CD0 0027E930 4E 80 00 20 */ blr
-
-.global func_80282CD4
-func_80282CD4:
-/* 80282CD4 0027E934 2C 06 00 01 */ cmpwi r6, 1
-/* 80282CD8 0027E938 41 82 00 28 */ beq lbl_80282D00
-/* 80282CDC 0027E93C 40 80 00 10 */ bge lbl_80282CEC
-/* 80282CE0 0027E940 2C 06 00 00 */ cmpwi r6, 0
-/* 80282CE4 0027E944 40 80 00 14 */ bge lbl_80282CF8
-/* 80282CE8 0027E948 48 00 00 24 */ b lbl_80282D0C
-lbl_80282CEC:
-/* 80282CEC 0027E94C 2C 06 00 03 */ cmpwi r6, 3
-/* 80282CF0 0027E950 40 80 00 1C */ bge lbl_80282D0C
-/* 80282CF4 0027E954 48 00 00 14 */ b lbl_80282D08
-lbl_80282CF8:
-/* 80282CF8 0027E958 38 C0 00 03 */ li r6, 3
-/* 80282CFC 0027E95C 48 00 00 10 */ b lbl_80282D0C
-lbl_80282D00:
-/* 80282D00 0027E960 38 C0 00 04 */ li r6, 4
-/* 80282D04 0027E964 48 00 00 08 */ b lbl_80282D0C
-lbl_80282D08:
-/* 80282D08 0027E968 38 C0 00 05 */ li r6, 5
-lbl_80282D0C:
-/* 80282D0C 0027E96C 38 00 00 00 */ li r0, 0
-/* 80282D10 0027E970 2C 08 00 02 */ cmpwi r8, 2
-/* 80282D14 0027E974 50 A0 DC 7E */ rlwimi r0, r5, 0x1b, 0x11, 0x1f
-/* 80282D18 0027E978 50 C0 7B A0 */ rlwimi r0, r6, 0xf, 0xe, 0x10
-/* 80282D1C 0027E97C 50 C0 92 DA */ rlwimi r0, r6, 0x12, 0xb, 0xd
-/* 80282D20 0027E980 90 03 00 00 */ stw r0, 0(r3)
-/* 80282D24 0027E984 41 82 00 34 */ beq lbl_80282D58
-/* 80282D28 0027E988 40 80 00 14 */ bge lbl_80282D3C
-/* 80282D2C 0027E98C 2C 08 00 00 */ cmpwi r8, 0
-/* 80282D30 0027E990 41 82 00 18 */ beq lbl_80282D48
-/* 80282D34 0027E994 40 80 00 1C */ bge lbl_80282D50
-/* 80282D38 0027E998 48 00 00 2C */ b lbl_80282D64
-lbl_80282D3C:
-/* 80282D3C 0027E99C 2C 08 00 04 */ cmpwi r8, 4
-/* 80282D40 0027E9A0 40 80 00 24 */ bge lbl_80282D64
-/* 80282D44 0027E9A4 48 00 00 1C */ b lbl_80282D60
-lbl_80282D48:
-/* 80282D48 0027E9A8 38 C0 00 03 */ li r6, 3
-/* 80282D4C 0027E9AC 48 00 00 18 */ b lbl_80282D64
-lbl_80282D50:
-/* 80282D50 0027E9B0 38 C0 00 04 */ li r6, 4
-/* 80282D54 0027E9B4 48 00 00 10 */ b lbl_80282D64
-lbl_80282D58:
-/* 80282D58 0027E9B8 38 C0 00 05 */ li r6, 5
-/* 80282D5C 0027E9BC 48 00 00 08 */ b lbl_80282D64
-lbl_80282D60:
-/* 80282D60 0027E9C0 38 C0 00 00 */ li r6, 0
-lbl_80282D64:
-/* 80282D64 0027E9C4 38 A0 00 00 */ li r5, 0
-/* 80282D68 0027E9C8 38 00 00 01 */ li r0, 1
-/* 80282D6C 0027E9CC 50 E5 DC 7E */ rlwimi r5, r7, 0x1b, 0x11, 0x1f
-/* 80282D70 0027E9D0 98 83 00 0C */ stb r4, 0xc(r3)
-/* 80282D74 0027E9D4 50 C5 7B A0 */ rlwimi r5, r6, 0xf, 0xe, 0x10
-/* 80282D78 0027E9D8 50 C5 92 DA */ rlwimi r5, r6, 0x12, 0xb, 0xd
-/* 80282D7C 0027E9DC 98 03 00 0D */ stb r0, 0xd(r3)
-/* 80282D80 0027E9E0 90 A3 00 04 */ stw r5, 4(r3)
-/* 80282D84 0027E9E4 4E 80 00 20 */ blr
-
-.global func_80282D88
-func_80282D88:
-/* 80282D88 0027E9E8 3C 04 FF F8 */ addis r0, r4, 0xfff8
-/* 80282D8C 0027E9EC 38 80 00 00 */ li r4, 0
-/* 80282D90 0027E9F0 50 04 BD BE */ rlwimi r4, r0, 0x17, 0x16, 0x1f
-/* 80282D94 0027E9F4 38 00 00 65 */ li r0, 0x65
-/* 80282D98 0027E9F8 50 A4 52 EA */ rlwimi r4, r5, 0xa, 0xb, 0x15
-/* 80282D9C 0027E9FC 50 04 C0 0E */ rlwimi r4, r0, 0x18, 0, 7
-/* 80282DA0 0027EA00 90 83 00 00 */ stw r4, 0(r3)
-/* 80282DA4 0027EA04 4E 80 00 20 */ blr
-
-.global func_80282DA8
-func_80282DA8:
-/* 80282DA8 0027EA08 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80282DAC 0027EA0C 7C 08 02 A6 */ mflr r0
-/* 80282DB0 0027EA10 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80282DB4 0027EA14 48 00 0D 69 */ bl func_80283B1C
-/* 80282DB8 0027EA18 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80282DBC 0027EA1C 38 A0 00 61 */ li r5, 0x61
-/* 80282DC0 0027EA20 3C 60 66 00 */ lis r3, 0x66001000@ha
-/* 80282DC4 0027EA24 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80282DC8 0027EA28 38 03 10 00 */ addi r0, r3, 0x66001000@l
-/* 80282DCC 0027EA2C 90 04 80 00 */ stw r0, -0x8000(r4)
-/* 80282DD0 0027EA30 38 03 11 00 */ addi r0, r3, 0x1100
-/* 80282DD4 0027EA34 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 80282DD8 0027EA38 90 04 80 00 */ stw r0, -0x8000(r4)
-/* 80282DDC 0027EA3C 48 00 0D 41 */ bl func_80283B1C
-/* 80282DE0 0027EA40 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80282DE4 0027EA44 7C 08 03 A6 */ mtlr r0
-/* 80282DE8 0027EA48 38 21 00 10 */ addi r1, r1, 0x10
-/* 80282DEC 0027EA4C 4E 80 00 20 */ blr
-
-.global func_80282DF0
-func_80282DF0:
-/* 80282DF0 0027EA50 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282DF4 0027EA54 7C 60 1B 78 */ mr r0, r3
-/* 80282DF8 0027EA58 80 64 05 18 */ lwz r3, 0x518(r4)
-/* 80282DFC 0027EA5C 90 04 05 18 */ stw r0, 0x518(r4)
-/* 80282E00 0027EA60 4E 80 00 20 */ blr
-
-.global func_80282E04
-func_80282E04:
-/* 80282E04 0027EA64 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282E08 0027EA68 7C 60 1B 78 */ mr r0, r3
-/* 80282E0C 0027EA6C 80 64 05 1C */ lwz r3, 0x51c(r4)
-/* 80282E10 0027EA70 90 04 05 1C */ stw r0, 0x51c(r4)
-/* 80282E14 0027EA74 4E 80 00 20 */ blr
-
-.global func_80282E18
-func_80282E18:
-/* 80282E18 0027EA78 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282E1C 0027EA7C 54 86 10 3A */ slwi r6, r4, 2
-/* 80282E20 0027EA80 54 60 10 3A */ slwi r0, r3, 2
-/* 80282E24 0027EA84 3C A0 CC 01 */ lis r5, 0xCC008000@ha
-/* 80282E28 0027EA88 7D 4B 02 14 */ add r10, r11, r0
-/* 80282E2C 0027EA8C 7D 2B 32 14 */ add r9, r11, r6
-/* 80282E30 0027EA90 80 6A 05 64 */ lwz r3, 0x564(r10)
-/* 80282E34 0027EA94 38 80 00 61 */ li r4, 0x61
-/* 80282E38 0027EA98 81 09 01 08 */ lwz r8, 0x108(r9)
-/* 80282E3C 0027EA9C 38 00 00 00 */ li r0, 0
-/* 80282E40 0027EAA0 54 66 05 BE */ clrlwi r6, r3, 0x16
-/* 80282E44 0027EAA4 54 63 B5 BE */ rlwinm r3, r3, 0x16, 0x16, 0x1f
-/* 80282E48 0027EAA8 50 C8 04 3E */ rlwimi r8, r6, 0, 0x10, 0x1f
-/* 80282E4C 0027EAAC 91 09 01 08 */ stw r8, 0x108(r9)
-/* 80282E50 0027EAB0 80 E9 01 28 */ lwz r7, 0x128(r9)
-/* 80282E54 0027EAB4 50 67 04 3E */ rlwimi r7, r3, 0, 0x10, 0x1f
-/* 80282E58 0027EAB8 90 E9 01 28 */ stw r7, 0x128(r9)
-/* 80282E5C 0027EABC 80 6A 05 84 */ lwz r3, 0x584(r10)
-/* 80282E60 0027EAC0 54 66 07 BE */ clrlwi r6, r3, 0x1e
-/* 80282E64 0027EAC4 54 63 F7 BE */ rlwinm r3, r3, 0x1e, 0x1e, 0x1f
-/* 80282E68 0027EAC8 38 C6 FF FF */ addi r6, r6, -1
-/* 80282E6C 0027EACC 7C C6 00 34 */ cntlzw r6, r6
-/* 80282E70 0027EAD0 38 63 FF FF */ addi r3, r3, -1
-/* 80282E74 0027EAD4 50 C8 5B DE */ rlwimi r8, r6, 0xb, 0xf, 0xf
-/* 80282E78 0027EAD8 7C 63 00 34 */ cntlzw r3, r3
-/* 80282E7C 0027EADC 91 09 01 08 */ stw r8, 0x108(r9)
-/* 80282E80 0027EAE0 50 67 5B DE */ rlwimi r7, r3, 0xb, 0xf, 0xf
-/* 80282E84 0027EAE4 90 E9 01 28 */ stw r7, 0x128(r9)
-/* 80282E88 0027EAE8 98 85 80 00 */ stb r4, 0xCC008000@l(r5)
-/* 80282E8C 0027EAEC 80 69 01 08 */ lwz r3, 0x108(r9)
-/* 80282E90 0027EAF0 90 65 80 00 */ stw r3, -0x8000(r5)
-/* 80282E94 0027EAF4 98 85 80 00 */ stb r4, -0x8000(r5)
-/* 80282E98 0027EAF8 80 69 01 28 */ lwz r3, 0x128(r9)
-/* 80282E9C 0027EAFC 90 65 80 00 */ stw r3, -0x8000(r5)
-/* 80282EA0 0027EB00 B0 0B 00 02 */ sth r0, 2(r11)
-/* 80282EA4 0027EB04 4E 80 00 20 */ blr
-
-.global func_80282EA8
-func_80282EA8:
-/* 80282EA8 0027EB08 94 21 FF D0 */ stwu r1, -0x30(r1)
-/* 80282EAC 0027EB0C 7C 08 02 A6 */ mflr r0
-/* 80282EB0 0027EB10 90 01 00 34 */ stw r0, 0x34(r1)
-/* 80282EB4 0027EB14 39 61 00 30 */ addi r11, r1, 0x30
-/* 80282EB8 0027EB18 4B F4 42 61 */ bl _savegpr_23
-/* 80282EBC 0027EB1C 83 A2 A0 D0 */ lwz r29, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282EC0 0027EB20 80 1D 05 E4 */ lwz r0, 0x5e4(r29)
-/* 80282EC4 0027EB24 28 00 00 FF */ cmplwi r0, 0xff
-/* 80282EC8 0027EB28 41 82 01 30 */ beq lbl_80282FF8
-/* 80282ECC 0027EB2C 80 1D 02 54 */ lwz r0, 0x254(r29)
-/* 80282ED0 0027EB30 3B 80 00 00 */ li r28, 0
-/* 80282ED4 0027EB34 3A E0 00 01 */ li r23, 1
-/* 80282ED8 0027EB38 54 03 B7 3E */ rlwinm r3, r0, 0x16, 0x1c, 0x1f
-/* 80282EDC 0027EB3C 54 1B 87 7E */ rlwinm r27, r0, 0x10, 0x1d, 0x1f
-/* 80282EE0 0027EB40 3B 43 00 01 */ addi r26, r3, 1
-/* 80282EE4 0027EB44 48 00 00 88 */ b lbl_80282F6C
-lbl_80282EE8:
-/* 80282EE8 0027EB48 2C 1C 00 02 */ cmpwi r28, 2
-/* 80282EEC 0027EB4C 41 82 00 44 */ beq lbl_80282F30
-/* 80282EF0 0027EB50 40 80 00 14 */ bge lbl_80282F04
-/* 80282EF4 0027EB54 2C 1C 00 00 */ cmpwi r28, 0
-/* 80282EF8 0027EB58 41 82 00 18 */ beq lbl_80282F10
-/* 80282EFC 0027EB5C 40 80 00 24 */ bge lbl_80282F20
-/* 80282F00 0027EB60 48 00 00 4C */ b lbl_80282F4C
-lbl_80282F04:
-/* 80282F04 0027EB64 2C 1C 00 04 */ cmpwi r28, 4
-/* 80282F08 0027EB68 40 80 00 44 */ bge lbl_80282F4C
-/* 80282F0C 0027EB6C 48 00 00 34 */ b lbl_80282F40
-lbl_80282F10:
-/* 80282F10 0027EB70 80 1D 01 70 */ lwz r0, 0x170(r29)
-/* 80282F14 0027EB74 54 19 07 7E */ clrlwi r25, r0, 0x1d
-/* 80282F18 0027EB78 54 18 EF 7E */ rlwinm r24, r0, 0x1d, 0x1d, 0x1f
-/* 80282F1C 0027EB7C 48 00 00 30 */ b lbl_80282F4C
-lbl_80282F20:
-/* 80282F20 0027EB80 80 1D 01 70 */ lwz r0, 0x170(r29)
-/* 80282F24 0027EB84 54 19 D7 7E */ rlwinm r25, r0, 0x1a, 0x1d, 0x1f
-/* 80282F28 0027EB88 54 18 BF 7E */ rlwinm r24, r0, 0x17, 0x1d, 0x1f
-/* 80282F2C 0027EB8C 48 00 00 20 */ b lbl_80282F4C
-lbl_80282F30:
-/* 80282F30 0027EB90 80 1D 01 70 */ lwz r0, 0x170(r29)
-/* 80282F34 0027EB94 54 19 A7 7E */ rlwinm r25, r0, 0x14, 0x1d, 0x1f
-/* 80282F38 0027EB98 54 18 8F 7E */ rlwinm r24, r0, 0x11, 0x1d, 0x1f
-/* 80282F3C 0027EB9C 48 00 00 10 */ b lbl_80282F4C
-lbl_80282F40:
-/* 80282F40 0027EBA0 80 1D 01 70 */ lwz r0, 0x170(r29)
-/* 80282F44 0027EBA4 54 19 77 7E */ rlwinm r25, r0, 0xe, 0x1d, 0x1f
-/* 80282F48 0027EBA8 54 18 5F 7E */ rlwinm r24, r0, 0xb, 0x1d, 0x1f
-lbl_80282F4C:
-/* 80282F4C 0027EBAC 80 7D 05 E4 */ lwz r3, 0x5e4(r29)
-/* 80282F50 0027EBB0 7E E0 C0 30 */ slw r0, r23, r24
-/* 80282F54 0027EBB4 7C 60 00 39 */ and. r0, r3, r0
-/* 80282F58 0027EBB8 40 82 00 10 */ bne lbl_80282F68
-/* 80282F5C 0027EBBC 7F 23 CB 78 */ mr r3, r25
-/* 80282F60 0027EBC0 7F 04 C3 78 */ mr r4, r24
-/* 80282F64 0027EBC4 4B FF FE B5 */ bl func_80282E18
-lbl_80282F68:
-/* 80282F68 0027EBC8 3B 9C 00 01 */ addi r28, r28, 1
-lbl_80282F6C:
-/* 80282F6C 0027EBCC 7C 1C D8 40 */ cmplw r28, r27
-/* 80282F70 0027EBD0 41 80 FF 78 */ blt lbl_80282EE8
-/* 80282F74 0027EBD4 83 82 A0 D0 */ lwz r28, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80282F78 0027EBD8 3B 60 00 00 */ li r27, 0
-/* 80282F7C 0027EBDC 3A E0 00 01 */ li r23, 1
-/* 80282F80 0027EBE0 7F 9F E3 78 */ mr r31, r28
-/* 80282F84 0027EBE4 3B DC 01 50 */ addi r30, r28, 0x150
-/* 80282F88 0027EBE8 48 00 00 68 */ b lbl_80282FF0
-lbl_80282F8C:
-/* 80282F8C 0027EBEC 57 60 07 FF */ clrlwi. r0, r27, 0x1f
-/* 80282F90 0027EBF0 80 1F 05 A4 */ lwz r0, 0x5a4(r31)
-/* 80282F94 0027EBF4 57 63 08 3A */ rlwinm r3, r27, 1, 0, 0x1d
-/* 80282F98 0027EBF8 54 19 06 2C */ rlwinm r25, r0, 0, 0x18, 0x16
-/* 80282F9C 0027EBFC 41 82 00 10 */ beq lbl_80282FAC
-/* 80282FA0 0027EC00 7C 1E 18 2E */ lwzx r0, r30, r3
-/* 80282FA4 0027EC04 54 18 8F 7E */ rlwinm r24, r0, 0x11, 0x1d, 0x1f
-/* 80282FA8 0027EC08 48 00 00 0C */ b lbl_80282FB4
-lbl_80282FAC:
-/* 80282FAC 0027EC0C 7C 1E 18 2E */ lwzx r0, r30, r3
-/* 80282FB0 0027EC10 54 18 EF 7E */ rlwinm r24, r0, 0x1d, 0x1d, 0x1f
-lbl_80282FB4:
-/* 80282FB4 0027EC14 28 19 00 FF */ cmplwi r25, 0xff
-/* 80282FB8 0027EC18 41 82 00 30 */ beq lbl_80282FE8
-/* 80282FBC 0027EC1C 80 7D 05 E4 */ lwz r3, 0x5e4(r29)
-/* 80282FC0 0027EC20 7E E0 C0 30 */ slw r0, r23, r24
-/* 80282FC4 0027EC24 7C 60 00 39 */ and. r0, r3, r0
-/* 80282FC8 0027EC28 40 82 00 20 */ bne lbl_80282FE8
-/* 80282FCC 0027EC2C 80 7C 05 E8 */ lwz r3, 0x5e8(r28)
-/* 80282FD0 0027EC30 7E E0 D8 30 */ slw r0, r23, r27
-/* 80282FD4 0027EC34 7C 60 00 39 */ and. r0, r3, r0
-/* 80282FD8 0027EC38 41 82 00 10 */ beq lbl_80282FE8
-/* 80282FDC 0027EC3C 7F 23 CB 78 */ mr r3, r25
-/* 80282FE0 0027EC40 7F 04 C3 78 */ mr r4, r24
-/* 80282FE4 0027EC44 4B FF FE 35 */ bl func_80282E18
-lbl_80282FE8:
-/* 80282FE8 0027EC48 3B FF 00 04 */ addi r31, r31, 4
-/* 80282FEC 0027EC4C 3B 7B 00 01 */ addi r27, r27, 1
-lbl_80282FF0:
-/* 80282FF0 0027EC50 7C 1B D0 40 */ cmplw r27, r26
-/* 80282FF4 0027EC54 41 80 FF 98 */ blt lbl_80282F8C
-lbl_80282FF8:
-/* 80282FF8 0027EC58 39 61 00 30 */ addi r11, r1, 0x30
-/* 80282FFC 0027EC5C 4B F4 41 69 */ bl _restgpr_23
-/* 80283000 0027EC60 80 01 00 34 */ lwz r0, 0x34(r1)
-/* 80283004 0027EC64 7C 08 03 A6 */ mtlr r0
-/* 80283008 0027EC68 38 21 00 30 */ addi r1, r1, 0x30
-/* 8028300C 0027EC6C 4E 80 00 20 */ blr
-
-.global func_80283010
-func_80283010:
-/* 80283010 0027EC70 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80283014 0027EC74 2C 03 00 01 */ cmpwi r3, 1
-/* 80283018 0027EC78 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 8028301C 0027EC7C 93 C1 00 08 */ stw r30, 8(r1)
-/* 80283020 0027EC80 41 82 01 20 */ beq lbl_80283140
-/* 80283024 0027EC84 40 80 00 08 */ bge lbl_8028302C
-/* 80283028 0027EC88 48 00 02 24 */ b lbl_8028324C
-lbl_8028302C:
-/* 8028302C 0027EC8C 2C 03 00 03 */ cmpwi r3, 3
-/* 80283030 0027EC90 40 80 02 1C */ bge lbl_8028324C
-/* 80283034 0027EC94 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283038 0027EC98 38 00 00 61 */ li r0, 0x61
-/* 8028303C 0027EC9C 3C 80 8C 0E */ lis r4, 0x8C0D8000@ha
-/* 80283040 0027ECA0 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 80283044 0027ECA4 38 84 80 00 */ addi r4, r4, 0x8C0D8000@l
-/* 80283048 0027ECA8 3C A0 90 0E */ lis r5, 0x900DC000@ha
-/* 8028304C 0027ECAC 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 80283050 0027ECB0 3C 80 8D 0E */ lis r4, 0x8D0D8800@ha
-/* 80283054 0027ECB4 3F E0 91 0E */ lis r31, 0x910DC800@ha
-/* 80283058 0027ECB8 3F C0 8E 0E */ lis r30, 0x8E0D9000@ha
-/* 8028305C 0027ECBC 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283060 0027ECC0 38 A5 C0 00 */ addi r5, r5, 0x900DC000@l
-/* 80283064 0027ECC4 3D 80 92 0E */ lis r12, 0x920DD000@ha
-/* 80283068 0027ECC8 3D 60 8F 0E */ lis r11, 0x8F0D9800@ha
-/* 8028306C 0027ECCC 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 80283070 0027ECD0 3D 40 93 0E */ lis r10, 0x930DD800@ha
-/* 80283074 0027ECD4 3D 20 AC 0E */ lis r9, 0xAC0DA000@ha
-/* 80283078 0027ECD8 3D 00 B0 0E */ lis r8, 0xB00DC400@ha
-/* 8028307C 0027ECDC 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283080 0027ECE0 38 84 88 00 */ addi r4, r4, 0x8D0D8800@l
-/* 80283084 0027ECE4 3C E0 AD 0E */ lis r7, 0xAD0DA800@ha
-/* 80283088 0027ECE8 3C C0 B1 0E */ lis r6, 0xB10DCC00@ha
-/* 8028308C 0027ECEC 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 80283090 0027ECF0 3C A0 AE 0E */ lis r5, 0xAE0DB000@ha
-/* 80283094 0027ECF4 3C 80 B2 0E */ lis r4, 0xB20DD400@ha
-/* 80283098 0027ECF8 3B FF C8 00 */ addi r31, r31, 0x910DC800@l
-/* 8028309C 0027ECFC 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802830A0 0027ED00 3B DE 90 00 */ addi r30, r30, 0x8E0D9000@l
-/* 802830A4 0027ED04 39 8C D0 00 */ addi r12, r12, 0x920DD000@l
-/* 802830A8 0027ED08 39 6B 98 00 */ addi r11, r11, 0x8F0D9800@l
-/* 802830AC 0027ED0C 93 E3 80 00 */ stw r31, -0x8000(r3)
-/* 802830B0 0027ED10 39 4A D8 00 */ addi r10, r10, 0x930DD800@l
-/* 802830B4 0027ED14 39 29 A0 00 */ addi r9, r9, 0xAC0DA000@l
-/* 802830B8 0027ED18 39 08 C4 00 */ addi r8, r8, 0xB00DC400@l
-/* 802830BC 0027ED1C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802830C0 0027ED20 38 E7 A8 00 */ addi r7, r7, 0xAD0DA800@l
-/* 802830C4 0027ED24 38 C6 CC 00 */ addi r6, r6, 0xB10DCC00@l
-/* 802830C8 0027ED28 38 A5 B0 00 */ addi r5, r5, 0xAE0DB000@l
-/* 802830CC 0027ED2C 93 C3 80 00 */ stw r30, -0x8000(r3)
-/* 802830D0 0027ED30 38 84 D4 00 */ addi r4, r4, 0xB20DD400@l
-/* 802830D4 0027ED34 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802830D8 0027ED38 91 83 80 00 */ stw r12, -0x8000(r3)
-/* 802830DC 0027ED3C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802830E0 0027ED40 91 63 80 00 */ stw r11, -0x8000(r3)
-/* 802830E4 0027ED44 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802830E8 0027ED48 91 43 80 00 */ stw r10, -0x8000(r3)
-/* 802830EC 0027ED4C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802830F0 0027ED50 91 23 80 00 */ stw r9, -0x8000(r3)
-/* 802830F4 0027ED54 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802830F8 0027ED58 91 03 80 00 */ stw r8, -0x8000(r3)
-/* 802830FC 0027ED5C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283100 0027ED60 90 E3 80 00 */ stw r7, -0x8000(r3)
-/* 80283104 0027ED64 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283108 0027ED68 90 C3 80 00 */ stw r6, -0x8000(r3)
-/* 8028310C 0027ED6C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283110 0027ED70 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 80283114 0027ED74 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283118 0027ED78 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 8028311C 0027ED7C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283120 0027ED80 3C A0 AF 0E */ lis r5, 0xAF0DB800@ha
-/* 80283124 0027ED84 3C 80 B3 0E */ lis r4, 0xB30DDC00@ha
-/* 80283128 0027ED88 38 A5 B8 00 */ addi r5, r5, 0xAF0DB800@l
-/* 8028312C 0027ED8C 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 80283130 0027ED90 38 84 DC 00 */ addi r4, r4, 0xB30DDC00@l
-/* 80283134 0027ED94 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283138 0027ED98 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 8028313C 0027ED9C 48 00 02 18 */ b lbl_80283354
-lbl_80283140:
-/* 80283140 0027EDA0 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283144 0027EDA4 38 00 00 61 */ li r0, 0x61
-/* 80283148 0027EDA8 3C 80 8C 0E */ lis r4, 0x8C0D8000@ha
-/* 8028314C 0027EDAC 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 80283150 0027EDB0 38 84 80 00 */ addi r4, r4, 0x8C0D8000@l
-/* 80283154 0027EDB4 3C A0 90 0E */ lis r5, 0x900DC000@ha
-/* 80283158 0027EDB8 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 8028315C 0027EDBC 3C 80 8D 0E */ lis r4, 0x8D0D8800@ha
-/* 80283160 0027EDC0 3F E0 91 0E */ lis r31, 0x910DC800@ha
-/* 80283164 0027EDC4 3F C0 8E 0E */ lis r30, 0x8E0D9000@ha
-/* 80283168 0027EDC8 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 8028316C 0027EDCC 38 A5 C0 00 */ addi r5, r5, 0x900DC000@l
-/* 80283170 0027EDD0 3D 80 92 0E */ lis r12, 0x920DD000@ha
-/* 80283174 0027EDD4 3D 60 8F 0E */ lis r11, 0x8F0D9800@ha
-/* 80283178 0027EDD8 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 8028317C 0027EDDC 3D 40 93 0E */ lis r10, 0x930DD800@ha
-/* 80283180 0027EDE0 3D 20 AC 0E */ lis r9, 0xAC0DA000@ha
-/* 80283184 0027EDE4 3D 00 B0 0E */ lis r8, 0xB00DE000@ha
-/* 80283188 0027EDE8 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 8028318C 0027EDEC 38 84 88 00 */ addi r4, r4, 0x8D0D8800@l
-/* 80283190 0027EDF0 3C E0 AD 0E */ lis r7, 0xAD0DA800@ha
-/* 80283194 0027EDF4 3C C0 B1 0E */ lis r6, 0xB10DE800@ha
-/* 80283198 0027EDF8 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 8028319C 0027EDFC 3C A0 AE 0E */ lis r5, 0xAE0DB000@ha
-/* 802831A0 0027EE00 3C 80 B2 0E */ lis r4, 0xB20DF000@ha
-/* 802831A4 0027EE04 3B FF C8 00 */ addi r31, r31, 0x910DC800@l
-/* 802831A8 0027EE08 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802831AC 0027EE0C 3B DE 90 00 */ addi r30, r30, 0x8E0D9000@l
-/* 802831B0 0027EE10 39 8C D0 00 */ addi r12, r12, 0x920DD000@l
-/* 802831B4 0027EE14 39 6B 98 00 */ addi r11, r11, 0x8F0D9800@l
-/* 802831B8 0027EE18 93 E3 80 00 */ stw r31, -0x8000(r3)
-/* 802831BC 0027EE1C 39 4A D8 00 */ addi r10, r10, 0x930DD800@l
-/* 802831C0 0027EE20 39 29 A0 00 */ addi r9, r9, 0xAC0DA000@l
-/* 802831C4 0027EE24 39 08 E0 00 */ addi r8, r8, 0xB00DE000@l
-/* 802831C8 0027EE28 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802831CC 0027EE2C 38 E7 A8 00 */ addi r7, r7, 0xAD0DA800@l
-/* 802831D0 0027EE30 38 C6 E8 00 */ addi r6, r6, 0xB10DE800@l
-/* 802831D4 0027EE34 38 A5 B0 00 */ addi r5, r5, 0xAE0DB000@l
-/* 802831D8 0027EE38 93 C3 80 00 */ stw r30, -0x8000(r3)
-/* 802831DC 0027EE3C 38 84 F0 00 */ addi r4, r4, 0xB20DF000@l
-/* 802831E0 0027EE40 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802831E4 0027EE44 91 83 80 00 */ stw r12, -0x8000(r3)
-/* 802831E8 0027EE48 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802831EC 0027EE4C 91 63 80 00 */ stw r11, -0x8000(r3)
-/* 802831F0 0027EE50 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802831F4 0027EE54 91 43 80 00 */ stw r10, -0x8000(r3)
-/* 802831F8 0027EE58 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802831FC 0027EE5C 91 23 80 00 */ stw r9, -0x8000(r3)
-/* 80283200 0027EE60 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283204 0027EE64 91 03 80 00 */ stw r8, -0x8000(r3)
-/* 80283208 0027EE68 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 8028320C 0027EE6C 90 E3 80 00 */ stw r7, -0x8000(r3)
-/* 80283210 0027EE70 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283214 0027EE74 90 C3 80 00 */ stw r6, -0x8000(r3)
-/* 80283218 0027EE78 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 8028321C 0027EE7C 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 80283220 0027EE80 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283224 0027EE84 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 80283228 0027EE88 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 8028322C 0027EE8C 3C A0 AF 0E */ lis r5, 0xAF0DB800@ha
-/* 80283230 0027EE90 3C 80 B3 0E */ lis r4, 0xB30DF800@ha
-/* 80283234 0027EE94 38 A5 B8 00 */ addi r5, r5, 0xAF0DB800@l
-/* 80283238 0027EE98 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 8028323C 0027EE9C 38 84 F8 00 */ addi r4, r4, 0xB30DF800@l
-/* 80283240 0027EEA0 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283244 0027EEA4 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 80283248 0027EEA8 48 00 01 0C */ b lbl_80283354
-lbl_8028324C:
-/* 8028324C 0027EEAC 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283250 0027EEB0 38 00 00 61 */ li r0, 0x61
-/* 80283254 0027EEB4 3C 80 8C 0E */ lis r4, 0x8C0D8000@ha
-/* 80283258 0027EEB8 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 8028325C 0027EEBC 38 84 80 00 */ addi r4, r4, 0x8C0D8000@l
-/* 80283260 0027EEC0 3C A0 90 0E */ lis r5, 0x900DC000@ha
-/* 80283264 0027EEC4 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 80283268 0027EEC8 3C 80 8D 0E */ lis r4, 0x8D0D8400@ha
-/* 8028326C 0027EECC 3F C0 91 0E */ lis r30, 0x910DC400@ha
-/* 80283270 0027EED0 3F E0 8E 0E */ lis r31, 0x8E0D8800@ha
-/* 80283274 0027EED4 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283278 0027EED8 38 A5 C0 00 */ addi r5, r5, 0x900DC000@l
-/* 8028327C 0027EEDC 3D 80 92 0E */ lis r12, 0x920DC800@ha
-/* 80283280 0027EEE0 3D 60 8F 0E */ lis r11, 0x8F0D8C00@ha
-/* 80283284 0027EEE4 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 80283288 0027EEE8 3D 40 93 0E */ lis r10, 0x930DCC00@ha
-/* 8028328C 0027EEEC 3D 20 AC 0E */ lis r9, 0xAC0D9000@ha
-/* 80283290 0027EEF0 3D 00 B0 0E */ lis r8, 0xB00DD000@ha
-/* 80283294 0027EEF4 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283298 0027EEF8 38 84 84 00 */ addi r4, r4, 0x8D0D8400@l
-/* 8028329C 0027EEFC 3C E0 AD 0E */ lis r7, 0xAD0D9400@ha
-/* 802832A0 0027EF00 3C C0 B1 0E */ lis r6, 0xB10DD400@ha
-/* 802832A4 0027EF04 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 802832A8 0027EF08 3C A0 AE 0E */ lis r5, 0xAE0D9800@ha
-/* 802832AC 0027EF0C 3C 80 B2 0E */ lis r4, 0xB20DD800@ha
-/* 802832B0 0027EF10 3B DE C4 00 */ addi r30, r30, 0x910DC400@l
-/* 802832B4 0027EF14 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802832B8 0027EF18 3B FF 88 00 */ addi r31, r31, 0x8E0D8800@l
-/* 802832BC 0027EF1C 39 8C C8 00 */ addi r12, r12, 0x920DC800@l
-/* 802832C0 0027EF20 39 6B 8C 00 */ addi r11, r11, 0x8F0D8C00@l
-/* 802832C4 0027EF24 93 C3 80 00 */ stw r30, -0x8000(r3)
-/* 802832C8 0027EF28 39 4A CC 00 */ addi r10, r10, 0x930DCC00@l
-/* 802832CC 0027EF2C 39 29 90 00 */ addi r9, r9, 0xAC0D9000@l
-/* 802832D0 0027EF30 39 08 D0 00 */ addi r8, r8, 0xB00DD000@l
-/* 802832D4 0027EF34 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802832D8 0027EF38 38 E7 94 00 */ addi r7, r7, 0xAD0D9400@l
-/* 802832DC 0027EF3C 38 C6 D4 00 */ addi r6, r6, 0xB10DD400@l
-/* 802832E0 0027EF40 38 A5 98 00 */ addi r5, r5, 0xAE0D9800@l
-/* 802832E4 0027EF44 93 E3 80 00 */ stw r31, -0x8000(r3)
-/* 802832E8 0027EF48 38 84 D8 00 */ addi r4, r4, 0xB20DD800@l
-/* 802832EC 0027EF4C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802832F0 0027EF50 91 83 80 00 */ stw r12, -0x8000(r3)
-/* 802832F4 0027EF54 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 802832F8 0027EF58 91 63 80 00 */ stw r11, -0x8000(r3)
-/* 802832FC 0027EF5C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283300 0027EF60 91 43 80 00 */ stw r10, -0x8000(r3)
-/* 80283304 0027EF64 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283308 0027EF68 91 23 80 00 */ stw r9, -0x8000(r3)
-/* 8028330C 0027EF6C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283310 0027EF70 91 03 80 00 */ stw r8, -0x8000(r3)
-/* 80283314 0027EF74 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283318 0027EF78 90 E3 80 00 */ stw r7, -0x8000(r3)
-/* 8028331C 0027EF7C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283320 0027EF80 90 C3 80 00 */ stw r6, -0x8000(r3)
-/* 80283324 0027EF84 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283328 0027EF88 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 8028332C 0027EF8C 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283330 0027EF90 90 83 80 00 */ stw r4, -0x8000(r3)
-/* 80283334 0027EF94 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283338 0027EF98 3C A0 AF 0E */ lis r5, 0xAF0D9C00@ha
-/* 8028333C 0027EF9C 3C 80 B3 0E */ lis r4, 0xB30DDC00@ha
-/* 80283340 0027EFA0 38 A5 9C 00 */ addi r5, r5, 0xAF0D9C00@l
-/* 80283344 0027EFA4 90 A3 80 00 */ stw r5, -0x8000(r3)
-/* 80283348 0027EFA8 38 84 DC 00 */ addi r4, r4, 0xB30DDC00@l
-/* 8028334C 0027EFAC 98 03 80 00 */ stb r0, -0x8000(r3)
-/* 80283350 0027EFB0 90 83 80 00 */ stw r4, -0x8000(r3)
-lbl_80283354:
-/* 80283354 0027EFB4 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80283358 0027EFB8 83 C1 00 08 */ lwz r30, 8(r1)
-/* 8028335C 0027EFBC 38 21 00 10 */ addi r1, r1, 0x10
-/* 80283360 0027EFC0 4E 80 00 20 */ blr
-
-.global func_80283364
-func_80283364:
-/* 80283364 0027EFC4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80283368 0027EFC8 39 80 00 00 */ li r12, 0
-/* 8028336C 0027EFCC 50 8C 07 BE */ rlwimi r12, r4, 0, 0x1e, 0x1f
-/* 80283370 0027EFD0 38 83 00 10 */ addi r4, r3, 0x10
-/* 80283374 0027EFD4 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80283378 0027EFD8 50 AC 17 3A */ rlwimi r12, r5, 2, 0x1c, 0x1d
-/* 8028337C 0027EFDC 3D 60 CC 01 */ lis r11, 0xCC008000@ha
-/* 80283380 0027EFE0 38 00 00 61 */ li r0, 0x61
-/* 80283384 0027EFE4 98 0B 80 00 */ stb r0, 0xCC008000@l(r11)
-/* 80283388 0027EFE8 50 CC 26 76 */ rlwimi r12, r6, 4, 0x19, 0x1b
-/* 8028338C 0027EFEC 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 80283390 0027EFF0 38 00 00 00 */ li r0, 0
-/* 80283394 0027EFF4 88 A1 00 1B */ lbz r5, 0x1b(r1)
-/* 80283398 0027EFF8 53 EC 3D F0 */ rlwimi r12, r31, 7, 0x17, 0x18
-/* 8028339C 0027EFFC 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802833A0 0027F000 50 EC 4C EC */ rlwimi r12, r7, 9, 0x13, 0x16
-/* 802833A4 0027F004 51 0C 6C 24 */ rlwimi r12, r8, 0xd, 0x10, 0x12
-/* 802833A8 0027F008 51 2C 83 5E */ rlwimi r12, r9, 0x10, 0xd, 0xf
-/* 802833AC 0027F00C 50 AC 9B 18 */ rlwimi r12, r5, 0x13, 0xc, 0xc
-/* 802833B0 0027F010 51 4C A2 D6 */ rlwimi r12, r10, 0x14, 0xb, 0xb
-/* 802833B4 0027F014 50 8C C0 0E */ rlwimi r12, r4, 0x18, 0, 7
-/* 802833B8 0027F018 91 8B 80 00 */ stw r12, -0x8000(r11)
-/* 802833BC 0027F01C B0 03 00 02 */ sth r0, 2(r3)
-/* 802833C0 0027F020 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 802833C4 0027F024 38 21 00 10 */ addi r1, r1, 0x10
-/* 802833C8 0027F028 4E 80 00 20 */ blr
-
-.global func_802833CC
-func_802833CC:
-/* 802833CC 0027F02C 2C 03 00 08 */ cmpwi r3, 8
-/* 802833D0 0027F030 94 21 FF C0 */ stwu r1, -0x40(r1)
-/* 802833D4 0027F034 41 82 00 44 */ beq lbl_80283418
-/* 802833D8 0027F038 40 80 00 1C */ bge lbl_802833F4
-/* 802833DC 0027F03C 2C 03 00 04 */ cmpwi r3, 4
-/* 802833E0 0027F040 41 82 00 38 */ beq lbl_80283418
-/* 802833E4 0027F044 40 80 00 24 */ bge lbl_80283408
-/* 802833E8 0027F048 2C 03 00 01 */ cmpwi r3, 1
-/* 802833EC 0027F04C 40 80 00 14 */ bge lbl_80283400
-/* 802833F0 0027F050 48 00 00 28 */ b lbl_80283418
-lbl_802833F4:
-/* 802833F4 0027F054 2C 03 00 0C */ cmpwi r3, 0xc
-/* 802833F8 0027F058 40 80 00 20 */ bge lbl_80283418
-/* 802833FC 0027F05C 48 00 00 14 */ b lbl_80283410
-lbl_80283400:
-/* 80283400 0027F060 38 63 FF FF */ addi r3, r3, -1
-/* 80283404 0027F064 48 00 00 18 */ b lbl_8028341C
-lbl_80283408:
-/* 80283408 0027F068 38 63 FF FB */ addi r3, r3, -5
-/* 8028340C 0027F06C 48 00 00 10 */ b lbl_8028341C
-lbl_80283410:
-/* 80283410 0027F070 38 63 FF F7 */ addi r3, r3, -9
-/* 80283414 0027F074 48 00 00 08 */ b lbl_8028341C
-lbl_80283418:
-/* 80283418 0027F078 38 60 00 00 */ li r3, 0
-lbl_8028341C:
-/* 8028341C 0027F07C C0 C2 A1 68 */ lfs f6, lbl_80642768-_SDA2_BASE_(r2)
-/* 80283420 0027F080 54 60 10 3A */ slwi r0, r3, 2
-/* 80283424 0027F084 C0 24 00 00 */ lfs f1, 0(r4)
-/* 80283428 0027F088 7D 23 00 50 */ subf r9, r3, r0
-/* 8028342C 0027F08C C0 04 00 0C */ lfs f0, 0xc(r4)
-/* 80283430 0027F090 39 05 00 11 */ addi r8, r5, 0x11
-/* 80283434 0027F094 EC 26 00 72 */ fmuls f1, f6, f1
-/* 80283438 0027F098 C0 64 00 04 */ lfs f3, 4(r4)
-/* 8028343C 0027F09C EC 06 00 32 */ fmuls f0, f6, f0
-/* 80283440 0027F0A0 C0 44 00 10 */ lfs f2, 0x10(r4)
-/* 80283444 0027F0A4 EC 66 00 F2 */ fmuls f3, f6, f3
-/* 80283448 0027F0A8 3C C0 CC 01 */ lis r6, 0xCC008000@ha
-/* 8028344C 0027F0AC FC A0 08 1E */ fctiwz f5, f1
-/* 80283450 0027F0B0 C0 24 00 08 */ lfs f1, 8(r4)
-/* 80283454 0027F0B4 FC 80 00 1E */ fctiwz f4, f0
-/* 80283458 0027F0B8 C0 04 00 14 */ lfs f0, 0x14(r4)
-/* 8028345C 0027F0BC EC 46 00 B2 */ fmuls f2, f6, f2
-/* 80283460 0027F0C0 38 E0 00 61 */ li r7, 0x61
-/* 80283464 0027F0C4 D8 A1 00 08 */ stfd f5, 8(r1)
-/* 80283468 0027F0C8 FC 60 18 1E */ fctiwz f3, f3
-/* 8028346C 0027F0CC EC 26 00 72 */ fmuls f1, f6, f1
-/* 80283470 0027F0D0 38 A0 00 00 */ li r5, 0
-/* 80283474 0027F0D4 80 01 00 0C */ lwz r0, 0xc(r1)
-/* 80283478 0027F0D8 FC 40 10 1E */ fctiwz f2, f2
-/* 8028347C 0027F0DC EC 06 00 32 */ fmuls f0, f6, f0
-/* 80283480 0027F0E0 FC 20 08 1E */ fctiwz f1, f1
-/* 80283484 0027F0E4 D8 81 00 10 */ stfd f4, 0x10(r1)
-/* 80283488 0027F0E8 50 05 05 7E */ rlwimi r5, r0, 0, 0x15, 0x1f
-/* 8028348C 0027F0EC FC 00 00 1E */ fctiwz f0, f0
-/* 80283490 0027F0F0 38 69 00 06 */ addi r3, r9, 6
-/* 80283494 0027F0F4 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80283498 0027F0F8 D8 61 00 18 */ stfd f3, 0x18(r1)
-/* 8028349C 0027F0FC 38 80 00 00 */ li r4, 0
-/* 802834A0 0027F100 50 05 5A A8 */ rlwimi r5, r0, 0xb, 0xa, 0x14
-/* 802834A4 0027F104 80 01 00 1C */ lwz r0, 0x1c(r1)
-/* 802834A8 0027F108 51 05 B2 12 */ rlwimi r5, r8, 0x16, 8, 9
-/* 802834AC 0027F10C 50 65 C0 0E */ rlwimi r5, r3, 0x18, 0, 7
-/* 802834B0 0027F110 98 E6 80 00 */ stb r7, 0xCC008000@l(r6)
-/* 802834B4 0027F114 50 04 05 7E */ rlwimi r4, r0, 0, 0x15, 0x1f
-/* 802834B8 0027F118 38 69 00 07 */ addi r3, r9, 7
-/* 802834BC 0027F11C 90 A6 80 00 */ stw r5, -0x8000(r6)
-/* 802834C0 0027F120 38 A0 00 00 */ li r5, 0
-/* 802834C4 0027F124 D8 41 00 20 */ stfd f2, 0x20(r1)
-/* 802834C8 0027F128 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 802834CC 0027F12C D8 21 00 28 */ stfd f1, 0x28(r1)
-/* 802834D0 0027F130 50 04 5A A8 */ rlwimi r4, r0, 0xb, 0xa, 0x14
-/* 802834D4 0027F134 80 01 00 2C */ lwz r0, 0x2c(r1)
-/* 802834D8 0027F138 51 04 A2 12 */ rlwimi r4, r8, 0x14, 8, 9
-/* 802834DC 0027F13C 50 64 C0 0E */ rlwimi r4, r3, 0x18, 0, 7
-/* 802834E0 0027F140 98 E6 80 00 */ stb r7, -0x8000(r6)
-/* 802834E4 0027F144 50 05 05 7E */ rlwimi r5, r0, 0, 0x15, 0x1f
-/* 802834E8 0027F148 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802834EC 0027F14C 90 86 80 00 */ stw r4, -0x8000(r6)
-/* 802834F0 0027F150 38 89 00 08 */ addi r4, r9, 8
-/* 802834F4 0027F154 D8 01 00 30 */ stfd f0, 0x30(r1)
-/* 802834F8 0027F158 80 01 00 34 */ lwz r0, 0x34(r1)
-/* 802834FC 0027F15C 98 E6 80 00 */ stb r7, -0x8000(r6)
-/* 80283500 0027F160 50 05 5A A8 */ rlwimi r5, r0, 0xb, 0xa, 0x14
-/* 80283504 0027F164 38 00 00 00 */ li r0, 0
-/* 80283508 0027F168 51 05 92 12 */ rlwimi r5, r8, 0x12, 8, 9
-/* 8028350C 0027F16C 50 85 C0 0E */ rlwimi r5, r4, 0x18, 0, 7
-/* 80283510 0027F170 90 A6 80 00 */ stw r5, -0x8000(r6)
-/* 80283514 0027F174 B0 03 00 02 */ sth r0, 2(r3)
-/* 80283518 0027F178 38 21 00 40 */ addi r1, r1, 0x40
-/* 8028351C 0027F17C 4E 80 00 20 */ blr
-
-.global func_80283520
-func_80283520:
-/* 80283520 0027F180 2C 03 00 02 */ cmpwi r3, 2
-/* 80283524 0027F184 41 82 00 8C */ beq lbl_802835B0
-/* 80283528 0027F188 40 80 00 14 */ bge lbl_8028353C
-/* 8028352C 0027F18C 2C 03 00 00 */ cmpwi r3, 0
-/* 80283530 0027F190 41 82 00 18 */ beq lbl_80283548
-/* 80283534 0027F194 40 80 00 48 */ bge lbl_8028357C
-/* 80283538 0027F198 48 00 00 DC */ b lbl_80283614
-lbl_8028353C:
-/* 8028353C 0027F19C 2C 03 00 04 */ cmpwi r3, 4
-/* 80283540 0027F1A0 40 80 00 D4 */ bge lbl_80283614
-/* 80283544 0027F1A4 48 00 00 A0 */ b lbl_802835E4
-lbl_80283548:
-/* 80283548 0027F1A8 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
-/* 8028354C 0027F1AC 38 C0 00 25 */ li r6, 0x25
-/* 80283550 0027F1B0 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283554 0027F1B4 38 00 00 61 */ li r0, 0x61
-/* 80283558 0027F1B8 80 E8 01 78 */ lwz r7, 0x178(r8)
-/* 8028355C 0027F1BC 50 87 07 3E */ rlwimi r7, r4, 0, 0x1c, 0x1f
-/* 80283560 0027F1C0 50 A7 26 36 */ rlwimi r7, r5, 4, 0x18, 0x1b
-/* 80283564 0027F1C4 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
-/* 80283568 0027F1C8 90 E8 01 78 */ stw r7, 0x178(r8)
-/* 8028356C 0027F1CC 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 80283570 0027F1D0 80 08 01 78 */ lwz r0, 0x178(r8)
-/* 80283574 0027F1D4 90 03 80 00 */ stw r0, -0x8000(r3)
-/* 80283578 0027F1D8 48 00 00 9C */ b lbl_80283614
-lbl_8028357C:
-/* 8028357C 0027F1DC 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283580 0027F1E0 38 C0 00 25 */ li r6, 0x25
-/* 80283584 0027F1E4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283588 0027F1E8 38 00 00 61 */ li r0, 0x61
-/* 8028358C 0027F1EC 80 E8 01 78 */ lwz r7, 0x178(r8)
-/* 80283590 0027F1F0 50 87 45 2E */ rlwimi r7, r4, 8, 0x14, 0x17
-/* 80283594 0027F1F4 50 A7 64 26 */ rlwimi r7, r5, 0xc, 0x10, 0x13
-/* 80283598 0027F1F8 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
-/* 8028359C 0027F1FC 90 E8 01 78 */ stw r7, 0x178(r8)
-/* 802835A0 0027F200 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 802835A4 0027F204 80 08 01 78 */ lwz r0, 0x178(r8)
-/* 802835A8 0027F208 90 03 80 00 */ stw r0, -0x8000(r3)
-/* 802835AC 0027F20C 48 00 00 68 */ b lbl_80283614
-lbl_802835B0:
-/* 802835B0 0027F210 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802835B4 0027F214 38 C0 00 26 */ li r6, 0x26
-/* 802835B8 0027F218 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 802835BC 0027F21C 38 00 00 61 */ li r0, 0x61
-/* 802835C0 0027F220 80 E8 01 7C */ lwz r7, 0x17c(r8)
-/* 802835C4 0027F224 50 87 07 3E */ rlwimi r7, r4, 0, 0x1c, 0x1f
-/* 802835C8 0027F228 50 A7 26 36 */ rlwimi r7, r5, 4, 0x18, 0x1b
-/* 802835CC 0027F22C 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
-/* 802835D0 0027F230 90 E8 01 7C */ stw r7, 0x17c(r8)
-/* 802835D4 0027F234 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 802835D8 0027F238 80 08 01 7C */ lwz r0, 0x17c(r8)
-/* 802835DC 0027F23C 90 03 80 00 */ stw r0, -0x8000(r3)
-/* 802835E0 0027F240 48 00 00 34 */ b lbl_80283614
-lbl_802835E4:
-/* 802835E4 0027F244 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802835E8 0027F248 38 C0 00 26 */ li r6, 0x26
-/* 802835EC 0027F24C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 802835F0 0027F250 38 00 00 61 */ li r0, 0x61
-/* 802835F4 0027F254 80 E8 01 7C */ lwz r7, 0x17c(r8)
-/* 802835F8 0027F258 50 87 45 2E */ rlwimi r7, r4, 8, 0x14, 0x17
-/* 802835FC 0027F25C 50 A7 64 26 */ rlwimi r7, r5, 0xc, 0x10, 0x13
-/* 80283600 0027F260 50 C7 C0 0E */ rlwimi r7, r6, 0x18, 0, 7
-/* 80283604 0027F264 90 E8 01 7C */ stw r7, 0x17c(r8)
-/* 80283608 0027F268 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 8028360C 0027F26C 80 08 01 7C */ lwz r0, 0x17c(r8)
-/* 80283610 0027F270 90 03 80 00 */ stw r0, -0x8000(r3)
-lbl_80283614:
-/* 80283614 0027F274 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283618 0027F278 38 00 00 00 */ li r0, 0
-/* 8028361C 0027F27C B0 03 00 02 */ sth r0, 2(r3)
-/* 80283620 0027F280 4E 80 00 20 */ blr
-
-.global func_80283624
-func_80283624:
-/* 80283624 0027F284 2C 05 00 FF */ cmpwi r5, 0xff
-/* 80283628 0027F288 40 82 00 08 */ bne lbl_80283630
-/* 8028362C 0027F28C 38 A0 00 00 */ li r5, 0
-lbl_80283630:
-/* 80283630 0027F290 2C 04 00 FF */ cmpwi r4, 0xff
-/* 80283634 0027F294 40 82 00 08 */ bne lbl_8028363C
-/* 80283638 0027F298 38 80 00 00 */ li r4, 0
-lbl_8028363C:
-/* 8028363C 0027F29C 2C 03 00 02 */ cmpwi r3, 2
-/* 80283640 0027F2A0 41 82 00 54 */ beq lbl_80283694
-/* 80283644 0027F2A4 40 80 00 14 */ bge lbl_80283658
-/* 80283648 0027F2A8 2C 03 00 00 */ cmpwi r3, 0
-/* 8028364C 0027F2AC 41 82 00 18 */ beq lbl_80283664
-/* 80283650 0027F2B0 40 80 00 2C */ bge lbl_8028367C
-/* 80283654 0027F2B4 48 00 00 6C */ b lbl_802836C0
-lbl_80283658:
-/* 80283658 0027F2B8 2C 03 00 04 */ cmpwi r3, 4
-/* 8028365C 0027F2BC 40 80 00 64 */ bge lbl_802836C0
-/* 80283660 0027F2C0 48 00 00 4C */ b lbl_802836AC
-lbl_80283664:
-/* 80283664 0027F2C4 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283668 0027F2C8 80 03 01 70 */ lwz r0, 0x170(r3)
-/* 8028366C 0027F2CC 50 A0 07 7E */ rlwimi r0, r5, 0, 0x1d, 0x1f
-/* 80283670 0027F2D0 50 80 1E B8 */ rlwimi r0, r4, 3, 0x1a, 0x1c
-/* 80283674 0027F2D4 90 03 01 70 */ stw r0, 0x170(r3)
-/* 80283678 0027F2D8 48 00 00 48 */ b lbl_802836C0
-lbl_8028367C:
-/* 8028367C 0027F2DC 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283680 0027F2E0 80 03 01 70 */ lwz r0, 0x170(r3)
-/* 80283684 0027F2E4 50 A0 35 F2 */ rlwimi r0, r5, 6, 0x17, 0x19
-/* 80283688 0027F2E8 50 80 4D 2C */ rlwimi r0, r4, 9, 0x14, 0x16
-/* 8028368C 0027F2EC 90 03 01 70 */ stw r0, 0x170(r3)
-/* 80283690 0027F2F0 48 00 00 30 */ b lbl_802836C0
-lbl_80283694:
-/* 80283694 0027F2F4 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283698 0027F2F8 80 03 01 70 */ lwz r0, 0x170(r3)
-/* 8028369C 0027F2FC 50 A0 64 66 */ rlwimi r0, r5, 0xc, 0x11, 0x13
-/* 802836A0 0027F300 50 80 7B A0 */ rlwimi r0, r4, 0xf, 0xe, 0x10
-/* 802836A4 0027F304 90 03 01 70 */ stw r0, 0x170(r3)
-/* 802836A8 0027F308 48 00 00 18 */ b lbl_802836C0
-lbl_802836AC:
-/* 802836AC 0027F30C 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802836B0 0027F310 80 03 01 70 */ lwz r0, 0x170(r3)
-/* 802836B4 0027F314 50 A0 92 DA */ rlwimi r0, r5, 0x12, 0xb, 0xd
-/* 802836B8 0027F318 50 80 AA 14 */ rlwimi r0, r4, 0x15, 8, 0xa
-/* 802836BC 0027F31C 90 03 01 70 */ stw r0, 0x170(r3)
-lbl_802836C0:
-/* 802836C0 0027F320 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 802836C4 0027F324 38 00 00 61 */ li r0, 0x61
-/* 802836C8 0027F328 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 802836CC 0027F32C 38 00 00 00 */ li r0, 0
-/* 802836D0 0027F330 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802836D4 0027F334 80 65 01 70 */ lwz r3, 0x170(r5)
-/* 802836D8 0027F338 90 64 80 00 */ stw r3, -0x8000(r4)
-/* 802836DC 0027F33C 80 65 05 FC */ lwz r3, 0x5fc(r5)
-/* 802836E0 0027F340 60 63 00 03 */ ori r3, r3, 3
-/* 802836E4 0027F344 90 65 05 FC */ stw r3, 0x5fc(r5)
-/* 802836E8 0027F348 B0 05 00 02 */ sth r0, 2(r5)
-/* 802836EC 0027F34C 4E 80 00 20 */ blr
-
-.global func_802836F0
-func_802836F0:
-/* 802836F0 0027F350 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802836F4 0027F354 80 04 02 54 */ lwz r0, 0x254(r4)
-/* 802836F8 0027F358 50 60 83 5E */ rlwimi r0, r3, 0x10, 0xd, 0xf
-/* 802836FC 0027F35C 90 04 02 54 */ stw r0, 0x254(r4)
-/* 80283700 0027F360 80 04 05 FC */ lwz r0, 0x5fc(r4)
-/* 80283704 0027F364 60 00 00 06 */ ori r0, r0, 6
-/* 80283708 0027F368 90 04 05 FC */ stw r0, 0x5fc(r4)
-/* 8028370C 0027F36C 4E 80 00 20 */ blr
-
-.global func_80283710
-func_80283710:
-/* 80283710 0027F370 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80283714 0027F374 7C 08 02 A6 */ mflr r0
-/* 80283718 0027F378 38 80 00 00 */ li r4, 0
-/* 8028371C 0027F37C 38 A0 00 00 */ li r5, 0
-/* 80283720 0027F380 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80283724 0027F384 38 00 00 00 */ li r0, 0
-/* 80283728 0027F388 38 C0 00 00 */ li r6, 0
-/* 8028372C 0027F38C 38 E0 00 00 */ li r7, 0
-/* 80283730 0027F390 90 01 00 08 */ stw r0, 8(r1)
-/* 80283734 0027F394 39 00 00 00 */ li r8, 0
-/* 80283738 0027F398 39 20 00 00 */ li r9, 0
-/* 8028373C 0027F39C 39 40 00 00 */ li r10, 0
-/* 80283740 0027F3A0 90 01 00 0C */ stw r0, 0xc(r1)
-/* 80283744 0027F3A4 4B FF FC 21 */ bl func_80283364
-/* 80283748 0027F3A8 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8028374C 0027F3AC 7C 08 03 A6 */ mtlr r0
-/* 80283750 0027F3B0 38 21 00 10 */ addi r1, r1, 0x10
-/* 80283754 0027F3B4 4E 80 00 20 */ blr
-
-.global func_80283758
-func_80283758:
-/* 80283758 0027F3B8 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8028375C 0027F3BC 7C 08 02 A6 */ mflr r0
-/* 80283760 0027F3C0 2C 06 00 00 */ cmpwi r6, 0
-/* 80283764 0027F3C4 39 00 00 00 */ li r8, 0
-/* 80283768 0027F3C8 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8028376C 0027F3CC 41 82 00 08 */ beq lbl_80283774
-/* 80283770 0027F3D0 39 00 00 06 */ li r8, 6
-lbl_80283774:
-/* 80283774 0027F3D4 38 C0 00 00 */ li r6, 0
-/* 80283778 0027F3D8 2C 05 00 00 */ cmpwi r5, 0
-/* 8028377C 0027F3DC 90 C1 00 08 */ stw r6, 8(r1)
-/* 80283780 0027F3E0 38 A0 00 00 */ li r5, 0
-/* 80283784 0027F3E4 90 C1 00 0C */ stw r6, 0xc(r1)
-/* 80283788 0027F3E8 41 82 00 08 */ beq lbl_80283790
-/* 8028378C 0027F3EC 38 C0 00 07 */ li r6, 7
-lbl_80283790:
-/* 80283790 0027F3F0 7D 09 43 78 */ mr r9, r8
-/* 80283794 0027F3F4 39 40 00 00 */ li r10, 0
-/* 80283798 0027F3F8 4B FF FB CD */ bl func_80283364
-/* 8028379C 0027F3FC 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 802837A0 0027F400 7C 08 03 A6 */ mtlr r0
-/* 802837A4 0027F404 38 21 00 10 */ addi r1, r1, 0x10
-/* 802837A8 0027F408 4E 80 00 20 */ blr
-
-.global func_802837AC
-func_802837AC:
-/* 802837AC 0027F40C 94 21 FF A0 */ stwu r1, -0x60(r1)
-/* 802837B0 0027F410 7C 08 02 A6 */ mflr r0
-/* 802837B4 0027F414 90 01 00 64 */ stw r0, 0x64(r1)
-/* 802837B8 0027F418 39 61 00 60 */ addi r11, r1, 0x60
-/* 802837BC 0027F41C 4B F4 39 61 */ bl _savegpr_24
-/* 802837C0 0027F420 2C 05 00 40 */ cmpwi r5, 0x40
-/* 802837C4 0027F424 83 81 00 68 */ lwz r28, 0x68(r1)
-/* 802837C8 0027F428 83 A1 00 6C */ lwz r29, 0x6c(r1)
-/* 802837CC 0027F42C 7C 78 1B 78 */ mr r24, r3
-/* 802837D0 0027F430 7C 99 23 78 */ mr r25, r4
-/* 802837D4 0027F434 7D 3A 4B 78 */ mr r26, r9
-/* 802837D8 0027F438 7D 5B 53 78 */ mr r27, r10
-/* 802837DC 0027F43C 41 82 00 48 */ beq lbl_80283824
-/* 802837E0 0027F440 40 80 00 1C */ bge lbl_802837FC
-/* 802837E4 0027F444 2C 05 00 20 */ cmpwi r5, 0x20
-/* 802837E8 0027F448 41 82 00 44 */ beq lbl_8028382C
-/* 802837EC 0027F44C 40 80 00 50 */ bge lbl_8028383C
-/* 802837F0 0027F450 2C 05 00 10 */ cmpwi r5, 0x10
-/* 802837F4 0027F454 41 82 00 40 */ beq lbl_80283834
-/* 802837F8 0027F458 48 00 00 44 */ b lbl_8028383C
-lbl_802837FC:
-/* 802837FC 0027F45C 2C 05 01 00 */ cmpwi r5, 0x100
-/* 80283800 0027F460 41 82 00 14 */ beq lbl_80283814
-/* 80283804 0027F464 40 80 00 38 */ bge lbl_8028383C
-/* 80283808 0027F468 2C 05 00 80 */ cmpwi r5, 0x80
-/* 8028380C 0027F46C 41 82 00 10 */ beq lbl_8028381C
-/* 80283810 0027F470 48 00 00 2C */ b lbl_8028383C
-lbl_80283814:
-/* 80283814 0027F474 3B E0 00 01 */ li r31, 1
-/* 80283818 0027F478 48 00 00 28 */ b lbl_80283840
-lbl_8028381C:
-/* 8028381C 0027F47C 3B E0 00 02 */ li r31, 2
-/* 80283820 0027F480 48 00 00 20 */ b lbl_80283840
-lbl_80283824:
-/* 80283824 0027F484 3B E0 00 03 */ li r31, 3
-/* 80283828 0027F488 48 00 00 18 */ b lbl_80283840
-lbl_8028382C:
-/* 8028382C 0027F48C 3B E0 00 04 */ li r31, 4
-/* 80283830 0027F490 48 00 00 10 */ b lbl_80283840
-lbl_80283834:
-/* 80283834 0027F494 3B E0 00 05 */ li r31, 5
-/* 80283838 0027F498 48 00 00 08 */ b lbl_80283840
-lbl_8028383C:
-/* 8028383C 0027F49C 3B E0 00 00 */ li r31, 0
-lbl_80283840:
-/* 80283840 0027F4A0 2C 06 00 40 */ cmpwi r6, 0x40
-/* 80283844 0027F4A4 41 82 00 48 */ beq lbl_8028388C
-/* 80283848 0027F4A8 40 80 00 1C */ bge lbl_80283864
-/* 8028384C 0027F4AC 2C 06 00 20 */ cmpwi r6, 0x20
-/* 80283850 0027F4B0 41 82 00 44 */ beq lbl_80283894
-/* 80283854 0027F4B4 40 80 00 50 */ bge lbl_802838A4
-/* 80283858 0027F4B8 2C 06 00 10 */ cmpwi r6, 0x10
-/* 8028385C 0027F4BC 41 82 00 40 */ beq lbl_8028389C
-/* 80283860 0027F4C0 48 00 00 44 */ b lbl_802838A4
-lbl_80283864:
-/* 80283864 0027F4C4 2C 06 01 00 */ cmpwi r6, 0x100
-/* 80283868 0027F4C8 41 82 00 14 */ beq lbl_8028387C
-/* 8028386C 0027F4CC 40 80 00 38 */ bge lbl_802838A4
-/* 80283870 0027F4D0 2C 06 00 80 */ cmpwi r6, 0x80
-/* 80283874 0027F4D4 41 82 00 10 */ beq lbl_80283884
-/* 80283878 0027F4D8 48 00 00 2C */ b lbl_802838A4
-lbl_8028387C:
-/* 8028387C 0027F4DC 3B C0 00 01 */ li r30, 1
-/* 80283880 0027F4E0 48 00 00 28 */ b lbl_802838A8
-lbl_80283884:
-/* 80283884 0027F4E4 3B C0 00 02 */ li r30, 2
-/* 80283888 0027F4E8 48 00 00 20 */ b lbl_802838A8
-lbl_8028388C:
-/* 8028388C 0027F4EC 3B C0 00 03 */ li r30, 3
-/* 80283890 0027F4F0 48 00 00 18 */ b lbl_802838A8
-lbl_80283894:
-/* 80283894 0027F4F4 3B C0 00 04 */ li r30, 4
-/* 80283898 0027F4F8 48 00 00 10 */ b lbl_802838A8
-lbl_8028389C:
-/* 8028389C 0027F4FC 3B C0 00 05 */ li r30, 5
-/* 802838A0 0027F500 48 00 00 08 */ b lbl_802838A8
-lbl_802838A4:
-/* 802838A4 0027F504 3B C0 00 00 */ li r30, 0
-lbl_802838A8:
-/* 802838A8 0027F508 3C 00 43 30 */ lis r0, 0x4330
-/* 802838AC 0027F50C C0 22 A1 70 */ lfs f1, lbl_80642770-_SDA2_BASE_(r2)
-/* 802838B0 0027F510 90 E1 00 2C */ stw r7, 0x2c(r1)
-/* 802838B4 0027F514 7F 63 DB 78 */ mr r3, r27
-/* 802838B8 0027F518 C8 82 A1 78 */ lfd f4, lbl_80642778-_SDA2_BASE_(r2)
-/* 802838BC 0027F51C 38 81 00 10 */ addi r4, r1, 0x10
-/* 802838C0 0027F520 90 01 00 28 */ stw r0, 0x28(r1)
-/* 802838C4 0027F524 38 A0 00 0A */ li r5, 0xa
-/* 802838C8 0027F528 C0 62 A1 6C */ lfs f3, lbl_8064276C-_SDA2_BASE_(r2)
-/* 802838CC 0027F52C C8 01 00 28 */ lfd f0, 0x28(r1)
-/* 802838D0 0027F530 91 01 00 34 */ stw r8, 0x34(r1)
-/* 802838D4 0027F534 EC 40 20 28 */ fsubs f2, f0, f4
-/* 802838D8 0027F538 90 01 00 30 */ stw r0, 0x30(r1)
-/* 802838DC 0027F53C C8 01 00 30 */ lfd f0, 0x30(r1)
-/* 802838E0 0027F540 EC 42 00 F2 */ fmuls f2, f2, f3
-/* 802838E4 0027F544 D0 21 00 18 */ stfs f1, 0x18(r1)
-/* 802838E8 0027F548 EC 00 20 28 */ fsubs f0, f0, f4
-/* 802838EC 0027F54C D0 41 00 10 */ stfs f2, 0x10(r1)
-/* 802838F0 0027F550 EC 00 00 F2 */ fmuls f0, f0, f3
-/* 802838F4 0027F554 D0 21 00 14 */ stfs f1, 0x14(r1)
-/* 802838F8 0027F558 D0 21 00 24 */ stfs f1, 0x24(r1)
-/* 802838FC 0027F55C D0 01 00 20 */ stfs f0, 0x20(r1)
-/* 80283900 0027F560 D0 21 00 1C */ stfs f1, 0x1c(r1)
-/* 80283904 0027F564 4B FF FA C9 */ bl func_802833CC
-/* 80283908 0027F568 38 00 00 01 */ li r0, 1
-/* 8028390C 0027F56C 7F 03 C3 78 */ mr r3, r24
-/* 80283910 0027F570 90 01 00 08 */ stw r0, 8(r1)
-/* 80283914 0027F574 7F 24 CB 78 */ mr r4, r25
-/* 80283918 0027F578 7F 45 D3 78 */ mr r5, r26
-/* 8028391C 0027F57C 7F 86 E3 78 */ mr r6, r28
-/* 80283920 0027F580 93 A1 00 0C */ stw r29, 0xc(r1)
-/* 80283924 0027F584 7F 67 DB 78 */ mr r7, r27
-/* 80283928 0027F588 7F E8 FB 78 */ mr r8, r31
-/* 8028392C 0027F58C 7F C9 F3 78 */ mr r9, r30
-/* 80283930 0027F590 39 40 00 00 */ li r10, 0
-/* 80283934 0027F594 4B FF FA 31 */ bl func_80283364
-/* 80283938 0027F598 39 61 00 60 */ addi r11, r1, 0x60
-/* 8028393C 0027F59C 4B F4 38 2D */ bl _restgpr_24
-/* 80283940 0027F5A0 80 01 00 64 */ lwz r0, 0x64(r1)
-/* 80283944 0027F5A4 7C 08 03 A6 */ mtlr r0
-/* 80283948 0027F5A8 38 21 00 60 */ addi r1, r1, 0x60
-/* 8028394C 0027F5AC 4E 80 00 20 */ blr
-
-.global func_80283950
-func_80283950:
-/* 80283950 0027F5B0 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80283954 0027F5B4 7C 08 02 A6 */ mflr r0
-/* 80283958 0027F5B8 2C 05 00 02 */ cmpwi r5, 2
-/* 8028395C 0027F5BC 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80283960 0027F5C0 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 80283964 0027F5C4 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 80283968 0027F5C8 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8028396C 0027F5CC 7C 9D 23 78 */ mr r29, r4
-/* 80283970 0027F5D0 93 81 00 10 */ stw r28, 0x10(r1)
-/* 80283974 0027F5D4 7C 7C 1B 78 */ mr r28, r3
-/* 80283978 0027F5D8 41 82 00 2C */ beq lbl_802839A4
-/* 8028397C 0027F5DC 40 80 00 10 */ bge lbl_8028398C
-/* 80283980 0027F5E0 2C 05 00 01 */ cmpwi r5, 1
-/* 80283984 0027F5E4 40 80 00 14 */ bge lbl_80283998
-/* 80283988 0027F5E8 48 00 00 30 */ b lbl_802839B8
-lbl_8028398C:
-/* 8028398C 0027F5EC 2C 05 00 04 */ cmpwi r5, 4
-/* 80283990 0027F5F0 40 80 00 28 */ bge lbl_802839B8
-/* 80283994 0027F5F4 48 00 00 1C */ b lbl_802839B0
-lbl_80283998:
-/* 80283998 0027F5F8 38 E0 00 05 */ li r7, 5
-/* 8028399C 0027F5FC 3B C0 00 09 */ li r30, 9
-/* 802839A0 0027F600 48 00 00 18 */ b lbl_802839B8
-lbl_802839A4:
-/* 802839A4 0027F604 38 E0 00 06 */ li r7, 6
-/* 802839A8 0027F608 3B C0 00 0A */ li r30, 0xa
-/* 802839AC 0027F60C 48 00 00 0C */ b lbl_802839B8
-lbl_802839B0:
-/* 802839B0 0027F610 38 E0 00 07 */ li r7, 7
-/* 802839B4 0027F614 3B C0 00 0B */ li r30, 0xb
-lbl_802839B8:
-/* 802839B8 0027F618 3B E0 00 00 */ li r31, 0
-/* 802839BC 0027F61C 7F 83 E3 78 */ mr r3, r28
-/* 802839C0 0027F620 93 E1 00 08 */ stw r31, 8(r1)
-/* 802839C4 0027F624 7F A4 EB 78 */ mr r4, r29
-/* 802839C8 0027F628 38 A0 00 00 */ li r5, 0
-/* 802839CC 0027F62C 38 C0 00 03 */ li r6, 3
-/* 802839D0 0027F630 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 802839D4 0027F634 39 00 00 06 */ li r8, 6
-/* 802839D8 0027F638 39 20 00 06 */ li r9, 6
-/* 802839DC 0027F63C 39 40 00 00 */ li r10, 0
-/* 802839E0 0027F640 4B FF F9 85 */ bl func_80283364
-/* 802839E4 0027F644 93 E1 00 08 */ stw r31, 8(r1)
-/* 802839E8 0027F648 7F A4 EB 78 */ mr r4, r29
-/* 802839EC 0027F64C 7F C7 F3 78 */ mr r7, r30
-/* 802839F0 0027F650 38 7C 00 01 */ addi r3, r28, 1
-/* 802839F4 0027F654 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 802839F8 0027F658 38 A0 00 00 */ li r5, 0
-/* 802839FC 0027F65C 38 C0 00 03 */ li r6, 3
-/* 80283A00 0027F660 39 00 00 06 */ li r8, 6
-/* 80283A04 0027F664 39 20 00 06 */ li r9, 6
-/* 80283A08 0027F668 39 40 00 01 */ li r10, 1
-/* 80283A0C 0027F66C 4B FF F9 59 */ bl func_80283364
-/* 80283A10 0027F670 93 E1 00 08 */ stw r31, 8(r1)
-/* 80283A14 0027F674 7F A4 EB 78 */ mr r4, r29
-/* 80283A18 0027F678 38 7C 00 02 */ addi r3, r28, 2
-/* 80283A1C 0027F67C 38 A0 00 00 */ li r5, 0
-/* 80283A20 0027F680 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80283A24 0027F684 38 C0 00 00 */ li r6, 0
-/* 80283A28 0027F688 38 E0 00 00 */ li r7, 0
-/* 80283A2C 0027F68C 39 00 00 00 */ li r8, 0
-/* 80283A30 0027F690 39 20 00 00 */ li r9, 0
-/* 80283A34 0027F694 39 40 00 01 */ li r10, 1
-/* 80283A38 0027F698 4B FF F9 2D */ bl func_80283364
-/* 80283A3C 0027F69C 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80283A40 0027F6A0 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 80283A44 0027F6A4 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80283A48 0027F6A8 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 80283A4C 0027F6AC 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 80283A50 0027F6B0 7C 08 03 A6 */ mtlr r0
-/* 80283A54 0027F6B4 38 21 00 20 */ addi r1, r1, 0x20
-/* 80283A58 0027F6B8 4E 80 00 20 */ blr
-
-.global func_80283A5C
-func_80283A5C:
-/* 80283A5C 0027F6BC 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80283A60 0027F6C0 7C 08 02 A6 */ mflr r0
-/* 80283A64 0027F6C4 7C A7 2B 78 */ mr r7, r5
-/* 80283A68 0027F6C8 38 A0 00 00 */ li r5, 0
-/* 80283A6C 0027F6CC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80283A70 0027F6D0 38 00 00 00 */ li r0, 0
-/* 80283A74 0027F6D4 38 C0 00 07 */ li r6, 7
-/* 80283A78 0027F6D8 39 00 00 00 */ li r8, 0
-/* 80283A7C 0027F6DC 90 01 00 08 */ stw r0, 8(r1)
-/* 80283A80 0027F6E0 39 20 00 00 */ li r9, 0
-/* 80283A84 0027F6E4 39 40 00 00 */ li r10, 0
-/* 80283A88 0027F6E8 90 01 00 0C */ stw r0, 0xc(r1)
-/* 80283A8C 0027F6EC 4B FF F8 D9 */ bl func_80283364
-/* 80283A90 0027F6F0 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80283A94 0027F6F4 7C 08 03 A6 */ mtlr r0
-/* 80283A98 0027F6F8 38 21 00 10 */ addi r1, r1, 0x10
-/* 80283A9C 0027F6FC 4E 80 00 20 */ blr
-
-.global func_80283AA0
-func_80283AA0:
-/* 80283AA0 0027F700 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80283AA4 0027F704 7C 08 02 A6 */ mflr r0
-/* 80283AA8 0027F708 38 80 00 00 */ li r4, 0
-/* 80283AAC 0027F70C 38 A0 00 00 */ li r5, 0
-/* 80283AB0 0027F710 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80283AB4 0027F714 38 00 00 00 */ li r0, 0
-/* 80283AB8 0027F718 38 C0 00 00 */ li r6, 0
-/* 80283ABC 0027F71C 38 E0 00 00 */ li r7, 0
-/* 80283AC0 0027F720 90 01 00 08 */ stw r0, 8(r1)
-/* 80283AC4 0027F724 39 00 00 06 */ li r8, 6
-/* 80283AC8 0027F728 39 20 00 06 */ li r9, 6
-/* 80283ACC 0027F72C 39 40 00 01 */ li r10, 1
-/* 80283AD0 0027F730 90 01 00 0C */ stw r0, 0xc(r1)
-/* 80283AD4 0027F734 4B FF F8 91 */ bl func_80283364
-/* 80283AD8 0027F738 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80283ADC 0027F73C 7C 08 03 A6 */ mtlr r0
-/* 80283AE0 0027F740 38 21 00 10 */ addi r1, r1, 0x10
-/* 80283AE4 0027F744 4E 80 00 20 */ blr
-
-.global func_80283AE8
-func_80283AE8:
-/* 80283AE8 0027F748 4E 80 00 20 */ blr
-
-.global func_80283AEC
-func_80283AEC:
-/* 80283AEC 0027F74C 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283AF0 0027F750 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80283AF4 0027F754 38 A0 00 61 */ li r5, 0x61
-/* 80283AF8 0027F758 38 00 00 00 */ li r0, 0
-/* 80283AFC 0027F75C 80 C7 01 74 */ lwz r6, 0x174(r7)
-/* 80283B00 0027F760 50 66 06 3E */ rlwimi r6, r3, 0, 0x18, 0x1f
-/* 80283B04 0027F764 90 C7 01 74 */ stw r6, 0x174(r7)
-/* 80283B08 0027F768 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80283B0C 0027F76C 80 67 01 74 */ lwz r3, 0x174(r7)
-/* 80283B10 0027F770 90 64 80 00 */ stw r3, -0x8000(r4)
-/* 80283B14 0027F774 B0 07 00 02 */ sth r0, 2(r7)
-/* 80283B18 0027F778 4E 80 00 20 */ blr
-
-.global func_80283B1C
-func_80283B1C:
-/* 80283B1C 0027F77C 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80283B20 0027F780 38 00 00 61 */ li r0, 0x61
-/* 80283B24 0027F784 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 80283B28 0027F788 38 00 00 00 */ li r0, 0
-/* 80283B2C 0027F78C 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283B30 0027F790 80 65 01 74 */ lwz r3, 0x174(r5)
-/* 80283B34 0027F794 90 64 80 00 */ stw r3, -0x8000(r4)
-/* 80283B38 0027F798 B0 05 00 02 */ sth r0, 2(r5)
-/* 80283B3C 0027F79C 4E 80 00 20 */ blr
-
-.global func_80283B40
-func_80283B40:
-/* 80283B40 0027F7A0 2C 03 00 00 */ cmpwi r3, 0
-/* 80283B44 0027F7A4 3C A0 80 43 */ lis r5, lbl_804358D0@ha
-/* 80283B48 0027F7A8 38 A5 58 D0 */ addi r5, r5, lbl_804358D0@l
-/* 80283B4C 0027F7AC 40 82 00 1C */ bne lbl_80283B68
-/* 80283B50 0027F7B0 54 86 10 3A */ slwi r6, r4, 2
-/* 80283B54 0027F7B4 38 85 00 00 */ addi r4, r5, 0
-/* 80283B58 0027F7B8 38 05 00 28 */ addi r0, r5, 0x28
-/* 80283B5C 0027F7BC 7D 04 32 14 */ add r8, r4, r6
-/* 80283B60 0027F7C0 7D 20 32 14 */ add r9, r0, r6
-/* 80283B64 0027F7C4 48 00 00 18 */ b lbl_80283B7C
-lbl_80283B68:
-/* 80283B68 0027F7C8 54 86 10 3A */ slwi r6, r4, 2
-/* 80283B6C 0027F7CC 38 85 00 14 */ addi r4, r5, 0x14
-/* 80283B70 0027F7D0 38 05 00 3C */ addi r0, r5, 0x3c
-/* 80283B74 0027F7D4 7D 04 32 14 */ add r8, r4, r6
-/* 80283B78 0027F7D8 7D 20 32 14 */ add r9, r0, r6
-lbl_80283B7C:
-/* 80283B7C 0027F7DC 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283B80 0027F7E0 54 60 10 3A */ slwi r0, r3, 2
-/* 80283B84 0027F7E4 80 68 00 00 */ lwz r3, 0(r8)
-/* 80283B88 0027F7E8 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80283B8C 0027F7EC 7C C7 02 14 */ add r6, r7, r0
-/* 80283B90 0027F7F0 38 A0 00 61 */ li r5, 0x61
-/* 80283B94 0027F7F4 81 06 01 80 */ lwz r8, 0x180(r6)
-/* 80283B98 0027F7F8 38 00 00 00 */ li r0, 0
-/* 80283B9C 0027F7FC 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80283BA0 0027F800 55 08 00 0E */ rlwinm r8, r8, 0, 0, 7
-/* 80283BA4 0027F804 50 68 02 3E */ rlwimi r8, r3, 0, 8, 0x1f
-/* 80283BA8 0027F808 91 04 80 00 */ stw r8, -0x8000(r4)
-/* 80283BAC 0027F80C 91 06 01 80 */ stw r8, 0x180(r6)
-/* 80283BB0 0027F810 81 06 01 C0 */ lwz r8, 0x1c0(r6)
-/* 80283BB4 0027F814 80 69 00 00 */ lwz r3, 0(r9)
-/* 80283BB8 0027F818 55 08 07 0E */ rlwinm r8, r8, 0, 0x1c, 7
-/* 80283BBC 0027F81C 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 80283BC0 0027F820 50 68 02 36 */ rlwimi r8, r3, 0, 8, 0x1b
-/* 80283BC4 0027F824 91 04 80 00 */ stw r8, -0x8000(r4)
-/* 80283BC8 0027F828 91 06 01 C0 */ stw r8, 0x1c0(r6)
-/* 80283BCC 0027F82C B0 07 00 02 */ sth r0, 2(r7)
-/* 80283BD0 0027F830 4E 80 00 20 */ blr
-
-.global func_80283BD4
-func_80283BD4:
-/* 80283BD4 0027F834 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283BD8 0027F838 54 60 10 3A */ slwi r0, r3, 2
-/* 80283BDC 0027F83C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283BE0 0027F840 39 00 00 61 */ li r8, 0x61
-/* 80283BE4 0027F844 7D 4B 02 14 */ add r10, r11, r0
-/* 80283BE8 0027F848 38 00 00 00 */ li r0, 0
-/* 80283BEC 0027F84C 81 2A 01 80 */ lwz r9, 0x180(r10)
-/* 80283BF0 0027F850 50 89 64 26 */ rlwimi r9, r4, 0xc, 0x10, 0x13
-/* 80283BF4 0027F854 50 A9 45 2E */ rlwimi r9, r5, 8, 0x14, 0x17
-/* 80283BF8 0027F858 99 03 80 00 */ stb r8, 0xCC008000@l(r3)
-/* 80283BFC 0027F85C 50 C9 26 36 */ rlwimi r9, r6, 4, 0x18, 0x1b
-/* 80283C00 0027F860 50 E9 07 3E */ rlwimi r9, r7, 0, 0x1c, 0x1f
-/* 80283C04 0027F864 91 23 80 00 */ stw r9, -0x8000(r3)
-/* 80283C08 0027F868 91 2A 01 80 */ stw r9, 0x180(r10)
-/* 80283C0C 0027F86C B0 0B 00 02 */ sth r0, 2(r11)
-/* 80283C10 0027F870 4E 80 00 20 */ blr
-
-.global func_80283C14
-func_80283C14:
-/* 80283C14 0027F874 81 62 A0 D0 */ lwz r11, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283C18 0027F878 54 60 10 3A */ slwi r0, r3, 2
-/* 80283C1C 0027F87C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283C20 0027F880 39 00 00 61 */ li r8, 0x61
-/* 80283C24 0027F884 7D 4B 02 14 */ add r10, r11, r0
-/* 80283C28 0027F888 38 00 00 00 */ li r0, 0
-/* 80283C2C 0027F88C 81 2A 01 C0 */ lwz r9, 0x1c0(r10)
-/* 80283C30 0027F890 50 89 6C 24 */ rlwimi r9, r4, 0xd, 0x10, 0x12
-/* 80283C34 0027F894 50 A9 54 EA */ rlwimi r9, r5, 0xa, 0x13, 0x15
-/* 80283C38 0027F898 99 03 80 00 */ stb r8, 0xCC008000@l(r3)
-/* 80283C3C 0027F89C 50 C9 3D B0 */ rlwimi r9, r6, 7, 0x16, 0x18
-/* 80283C40 0027F8A0 50 E9 26 76 */ rlwimi r9, r7, 4, 0x19, 0x1b
-/* 80283C44 0027F8A4 91 23 80 00 */ stw r9, -0x8000(r3)
-/* 80283C48 0027F8A8 91 2A 01 C0 */ stw r9, 0x1c0(r10)
-/* 80283C4C 0027F8AC B0 0B 00 02 */ sth r0, 2(r11)
-/* 80283C50 0027F8B0 4E 80 00 20 */ blr
-
-.global func_80283C54
-func_80283C54:
-/* 80283C54 0027F8B4 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283C58 0027F8B8 54 60 10 3A */ slwi r0, r3, 2
-/* 80283C5C 0027F8BC 2C 04 00 01 */ cmpwi r4, 1
-/* 80283C60 0027F8C0 7D 2A 02 14 */ add r9, r10, r0
-/* 80283C64 0027F8C4 81 69 01 80 */ lwz r11, 0x180(r9)
-/* 80283C68 0027F8C8 50 8B 93 5A */ rlwimi r11, r4, 0x12, 0xd, 0xd
-/* 80283C6C 0027F8CC 41 81 00 10 */ bgt lbl_80283C7C
-/* 80283C70 0027F8D0 50 CB A2 96 */ rlwimi r11, r6, 0x14, 0xa, 0xb
-/* 80283C74 0027F8D4 50 AB 83 9E */ rlwimi r11, r5, 0x10, 0xe, 0xf
-/* 80283C78 0027F8D8 48 00 00 0C */ b lbl_80283C84
-lbl_80283C7C:
-/* 80283C7C 0027F8DC 50 8B 9A 96 */ rlwimi r11, r4, 0x13, 0xa, 0xb
-/* 80283C80 0027F8E0 65 6B 00 03 */ oris r11, r11, 3
-lbl_80283C84:
-/* 80283C84 0027F8E4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283C88 0027F8E8 38 00 00 61 */ li r0, 0x61
-/* 80283C8C 0027F8EC 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 80283C90 0027F8F0 50 EB 9B 18 */ rlwimi r11, r7, 0x13, 0xc, 0xc
-/* 80283C94 0027F8F4 51 0B B2 12 */ rlwimi r11, r8, 0x16, 8, 9
-/* 80283C98 0027F8F8 38 00 00 00 */ li r0, 0
-/* 80283C9C 0027F8FC 91 63 80 00 */ stw r11, -0x8000(r3)
-/* 80283CA0 0027F900 91 69 01 80 */ stw r11, 0x180(r9)
-/* 80283CA4 0027F904 B0 0A 00 02 */ sth r0, 2(r10)
-/* 80283CA8 0027F908 4E 80 00 20 */ blr
-
-.global func_80283CAC
-func_80283CAC:
-/* 80283CAC 0027F90C 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283CB0 0027F910 54 60 10 3A */ slwi r0, r3, 2
-/* 80283CB4 0027F914 2C 04 00 01 */ cmpwi r4, 1
-/* 80283CB8 0027F918 7D 2A 02 14 */ add r9, r10, r0
-/* 80283CBC 0027F91C 81 69 01 C0 */ lwz r11, 0x1c0(r9)
-/* 80283CC0 0027F920 50 8B 93 5A */ rlwimi r11, r4, 0x12, 0xd, 0xd
-/* 80283CC4 0027F924 41 81 00 10 */ bgt lbl_80283CD4
-/* 80283CC8 0027F928 50 CB A2 96 */ rlwimi r11, r6, 0x14, 0xa, 0xb
-/* 80283CCC 0027F92C 50 AB 83 9E */ rlwimi r11, r5, 0x10, 0xe, 0xf
-/* 80283CD0 0027F930 48 00 00 0C */ b lbl_80283CDC
-lbl_80283CD4:
-/* 80283CD4 0027F934 50 8B 9A 96 */ rlwimi r11, r4, 0x13, 0xa, 0xb
-/* 80283CD8 0027F938 65 6B 00 03 */ oris r11, r11, 3
-lbl_80283CDC:
-/* 80283CDC 0027F93C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80283CE0 0027F940 38 00 00 61 */ li r0, 0x61
-/* 80283CE4 0027F944 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 80283CE8 0027F948 50 EB 9B 18 */ rlwimi r11, r7, 0x13, 0xc, 0xc
-/* 80283CEC 0027F94C 51 0B B2 12 */ rlwimi r11, r8, 0x16, 8, 9
-/* 80283CF0 0027F950 38 00 00 00 */ li r0, 0
-/* 80283CF4 0027F954 91 63 80 00 */ stw r11, -0x8000(r3)
-/* 80283CF8 0027F958 91 69 01 C0 */ stw r11, 0x1c0(r9)
-/* 80283CFC 0027F95C B0 0A 00 02 */ sth r0, 2(r10)
-/* 80283D00 0027F960 4E 80 00 20 */ blr
-
-.global func_80283D04
-func_80283D04:
-/* 80283D04 0027F964 54 63 08 3C */ slwi r3, r3, 1
-/* 80283D08 0027F968 81 04 00 00 */ lwz r8, 0(r4)
-/* 80283D0C 0027F96C 38 03 00 E0 */ addi r0, r3, 0xe0
-/* 80283D10 0027F970 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80283D14 0027F974 54 07 C0 0E */ slwi r7, r0, 0x18
-/* 80283D18 0027F978 38 A0 00 61 */ li r5, 0x61
-/* 80283D1C 0027F97C 51 07 46 3E */ rlwimi r7, r8, 8, 0x18, 0x1f
-/* 80283D20 0027F980 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80283D24 0027F984 51 07 63 26 */ rlwimi r7, r8, 0xc, 0xc, 0x13
-/* 80283D28 0027F988 38 03 00 E1 */ addi r0, r3, 0xe1
-/* 80283D2C 0027F98C 90 E4 80 00 */ stw r7, -0x8000(r4)
-/* 80283D30 0027F990 54 06 C0 0E */ slwi r6, r0, 0x18
-/* 80283D34 0027F994 51 06 C6 3E */ rlwimi r6, r8, 0x18, 0x18, 0x1f
-/* 80283D38 0027F998 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283D3C 0027F99C 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 80283D40 0027F9A0 51 06 E3 26 */ rlwimi r6, r8, 0x1c, 0xc, 0x13
-/* 80283D44 0027F9A4 38 00 00 00 */ li r0, 0
-/* 80283D48 0027F9A8 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80283D4C 0027F9AC 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 80283D50 0027F9B0 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80283D54 0027F9B4 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 80283D58 0027F9B8 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80283D5C 0027F9BC B0 03 00 02 */ sth r0, 2(r3)
-/* 80283D60 0027F9C0 4E 80 00 20 */ blr
-
-.global func_80283D64
-func_80283D64:
-/* 80283D64 0027F9C4 54 63 08 3C */ slwi r3, r3, 1
-/* 80283D68 0027F9C8 81 04 00 00 */ lwz r8, 0(r4)
-/* 80283D6C 0027F9CC 38 03 00 E0 */ addi r0, r3, 0xe0
-/* 80283D70 0027F9D0 3C A0 CC 01 */ lis r5, 0xCC008000@ha
-/* 80283D74 0027F9D4 54 07 C0 0E */ slwi r7, r0, 0x18
-/* 80283D78 0027F9D8 38 C0 00 61 */ li r6, 0x61
-/* 80283D7C 0027F9DC 81 24 00 04 */ lwz r9, 4(r4)
-/* 80283D80 0027F9E0 51 07 85 7E */ rlwimi r7, r8, 0x10, 0x15, 0x1f
-/* 80283D84 0027F9E4 98 C5 80 00 */ stb r6, 0xCC008000@l(r5)
-/* 80283D88 0027F9E8 38 03 00 E1 */ addi r0, r3, 0xe1
-/* 80283D8C 0027F9EC 51 27 62 66 */ rlwimi r7, r9, 0xc, 9, 0x13
-/* 80283D90 0027F9F0 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283D94 0027F9F4 54 04 C0 0E */ slwi r4, r0, 0x18
-/* 80283D98 0027F9F8 90 E5 80 00 */ stw r7, -0x8000(r5)
-/* 80283D9C 0027F9FC 51 24 85 7E */ rlwimi r4, r9, 0x10, 0x15, 0x1f
-/* 80283DA0 0027FA00 38 00 00 00 */ li r0, 0
-/* 80283DA4 0027FA04 98 C5 80 00 */ stb r6, -0x8000(r5)
-/* 80283DA8 0027FA08 51 04 62 66 */ rlwimi r4, r8, 0xc, 9, 0x13
-/* 80283DAC 0027FA0C 90 85 80 00 */ stw r4, -0x8000(r5)
-/* 80283DB0 0027FA10 98 C5 80 00 */ stb r6, -0x8000(r5)
-/* 80283DB4 0027FA14 90 85 80 00 */ stw r4, -0x8000(r5)
-/* 80283DB8 0027FA18 98 C5 80 00 */ stb r6, -0x8000(r5)
-/* 80283DBC 0027FA1C 90 85 80 00 */ stw r4, -0x8000(r5)
-/* 80283DC0 0027FA20 B0 03 00 02 */ sth r0, 2(r3)
-/* 80283DC4 0027FA24 4E 80 00 20 */ blr
-
-.global func_80283DC8
-func_80283DC8:
-/* 80283DC8 0027FA28 54 66 08 3C */ slwi r6, r3, 1
-/* 80283DCC 0027FA2C 81 24 00 00 */ lwz r9, 0(r4)
-/* 80283DD0 0027FA30 38 66 00 E0 */ addi r3, r6, 0xe0
-/* 80283DD4 0027FA34 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80283DD8 0027FA38 54 68 C0 0E */ slwi r8, r3, 0x18
-/* 80283DDC 0027FA3C 38 A0 00 61 */ li r5, 0x61
-/* 80283DE0 0027FA40 51 28 46 3E */ rlwimi r8, r9, 8, 0x18, 0x1f
-/* 80283DE4 0027FA44 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80283DE8 0027FA48 38 E0 00 08 */ li r7, 8
-/* 80283DEC 0027FA4C 38 06 00 E1 */ addi r0, r6, 0xe1
-/* 80283DF0 0027FA50 51 28 63 26 */ rlwimi r8, r9, 0xc, 0xc, 0x13
-/* 80283DF4 0027FA54 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283DF8 0027FA58 54 06 C0 0E */ slwi r6, r0, 0x18
-/* 80283DFC 0027FA5C 38 00 00 00 */ li r0, 0
-/* 80283E00 0027FA60 50 E8 A2 16 */ rlwimi r8, r7, 0x14, 8, 0xb
-/* 80283E04 0027FA64 91 04 80 00 */ stw r8, -0x8000(r4)
-/* 80283E08 0027FA68 51 26 C6 3E */ rlwimi r6, r9, 0x18, 0x18, 0x1f
-/* 80283E0C 0027FA6C 51 26 E3 26 */ rlwimi r6, r9, 0x1c, 0xc, 0x13
-/* 80283E10 0027FA70 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 80283E14 0027FA74 50 E6 A2 16 */ rlwimi r6, r7, 0x14, 8, 0xb
-/* 80283E18 0027FA78 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80283E1C 0027FA7C B0 03 00 02 */ sth r0, 2(r3)
-/* 80283E20 0027FA80 4E 80 00 20 */ blr
-
-.global func_80283E24
-func_80283E24:
-/* 80283E24 0027FA84 54 60 07 FF */ clrlwi. r0, r3, 0x1f
-/* 80283E28 0027FA88 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283E2C 0027FA8C 54 60 08 3A */ rlwinm r0, r3, 1, 0, 0x1d
-/* 80283E30 0027FA90 7C 65 02 14 */ add r3, r5, r0
-/* 80283E34 0027FA94 41 82 00 14 */ beq lbl_80283E48
-/* 80283E38 0027FA98 80 03 02 00 */ lwz r0, 0x200(r3)
-/* 80283E3C 0027FA9C 50 80 73 62 */ rlwimi r0, r4, 0xe, 0xd, 0x11
-/* 80283E40 0027FAA0 90 03 02 00 */ stw r0, 0x200(r3)
-/* 80283E44 0027FAA4 48 00 00 10 */ b lbl_80283E54
-lbl_80283E48:
-/* 80283E48 0027FAA8 80 03 02 00 */ lwz r0, 0x200(r3)
-/* 80283E4C 0027FAAC 50 80 25 F6 */ rlwimi r0, r4, 4, 0x17, 0x1b
-/* 80283E50 0027FAB0 90 03 02 00 */ stw r0, 0x200(r3)
-lbl_80283E54:
-/* 80283E54 0027FAB4 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80283E58 0027FAB8 38 00 00 61 */ li r0, 0x61
-/* 80283E5C 0027FABC 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 80283E60 0027FAC0 38 00 00 00 */ li r0, 0
-/* 80283E64 0027FAC4 80 63 02 00 */ lwz r3, 0x200(r3)
-/* 80283E68 0027FAC8 90 64 80 00 */ stw r3, -0x8000(r4)
-/* 80283E6C 0027FACC B0 05 00 02 */ sth r0, 2(r5)
-/* 80283E70 0027FAD0 4E 80 00 20 */ blr
-
-.global func_80283E74
-func_80283E74:
-/* 80283E74 0027FAD4 54 60 07 FF */ clrlwi. r0, r3, 0x1f
-/* 80283E78 0027FAD8 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283E7C 0027FADC 54 60 08 3A */ rlwinm r0, r3, 1, 0, 0x1d
-/* 80283E80 0027FAE0 7C 65 02 14 */ add r3, r5, r0
-/* 80283E84 0027FAE4 41 82 00 14 */ beq lbl_80283E98
-/* 80283E88 0027FAE8 80 03 02 00 */ lwz r0, 0x200(r3)
-/* 80283E8C 0027FAEC 50 80 9A 18 */ rlwimi r0, r4, 0x13, 8, 0xc
-/* 80283E90 0027FAF0 90 03 02 00 */ stw r0, 0x200(r3)
-/* 80283E94 0027FAF4 48 00 00 10 */ b lbl_80283EA4
-lbl_80283E98:
-/* 80283E98 0027FAF8 80 03 02 00 */ lwz r0, 0x200(r3)
-/* 80283E9C 0027FAFC 50 80 4C AC */ rlwimi r0, r4, 9, 0x12, 0x16
-/* 80283EA0 0027FB00 90 03 02 00 */ stw r0, 0x200(r3)
-lbl_80283EA4:
-/* 80283EA4 0027FB04 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80283EA8 0027FB08 38 00 00 61 */ li r0, 0x61
-/* 80283EAC 0027FB0C 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 80283EB0 0027FB10 38 00 00 00 */ li r0, 0
-/* 80283EB4 0027FB14 80 63 02 00 */ lwz r3, 0x200(r3)
-/* 80283EB8 0027FB18 90 64 80 00 */ stw r3, -0x8000(r4)
-/* 80283EBC 0027FB1C B0 05 00 02 */ sth r0, 2(r5)
-/* 80283EC0 0027FB20 4E 80 00 20 */ blr
-
-.global func_80283EC4
-func_80283EC4:
-/* 80283EC4 0027FB24 81 22 A0 D0 */ lwz r9, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283EC8 0027FB28 54 60 10 3A */ slwi r0, r3, 2
-/* 80283ECC 0027FB2C 3C C0 CC 01 */ lis r6, 0xCC008000@ha
-/* 80283ED0 0027FB30 38 60 00 61 */ li r3, 0x61
-/* 80283ED4 0027FB34 7D 09 02 14 */ add r8, r9, r0
-/* 80283ED8 0027FB38 38 00 00 00 */ li r0, 0
-/* 80283EDC 0027FB3C 80 E8 01 C0 */ lwz r7, 0x1c0(r8)
-/* 80283EE0 0027FB40 50 87 07 BE */ rlwimi r7, r4, 0, 0x1e, 0x1f
-/* 80283EE4 0027FB44 50 A7 17 3A */ rlwimi r7, r5, 2, 0x1c, 0x1d
-/* 80283EE8 0027FB48 90 E8 01 C0 */ stw r7, 0x1c0(r8)
-/* 80283EEC 0027FB4C 98 66 80 00 */ stb r3, 0xCC008000@l(r6)
-/* 80283EF0 0027FB50 80 68 01 C0 */ lwz r3, 0x1c0(r8)
-/* 80283EF4 0027FB54 90 66 80 00 */ stw r3, -0x8000(r6)
-/* 80283EF8 0027FB58 B0 09 00 02 */ sth r0, 2(r9)
-/* 80283EFC 0027FB5C 4E 80 00 20 */ blr
-
-.global func_80283F00
-func_80283F00:
-/* 80283F00 0027FB60 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80283F04 0027FB64 54 6B 18 38 */ slwi r11, r3, 3
-/* 80283F08 0027FB68 54 6C 08 3C */ slwi r12, r3, 1
-/* 80283F0C 0027FB6C 3D 00 CC 01 */ lis r8, 0xCC008000@ha
-/* 80283F10 0027FB70 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80283F14 0027FB74 39 20 00 61 */ li r9, 0x61
-/* 80283F18 0027FB78 38 6C 00 01 */ addi r3, r12, 1
-/* 80283F1C 0027FB7C 38 00 00 00 */ li r0, 0
-/* 80283F20 0027FB80 93 C1 00 08 */ stw r30, 8(r1)
-/* 80283F24 0027FB84 83 C2 A0 D0 */ lwz r30, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283F28 0027FB88 3B FE 02 00 */ addi r31, r30, 0x200
-/* 80283F2C 0027FB8C 7D 5F 58 2E */ lwzx r10, r31, r11
-/* 80283F30 0027FB90 50 8A 07 BE */ rlwimi r10, r4, 0, 0x1e, 0x1f
-/* 80283F34 0027FB94 50 AA 17 3A */ rlwimi r10, r5, 2, 0x1c, 0x1d
-/* 80283F38 0027FB98 54 64 10 3A */ slwi r4, r3, 2
-/* 80283F3C 0027FB9C 7D 5F 59 2E */ stwx r10, r31, r11
-/* 80283F40 0027FBA0 99 28 80 00 */ stb r9, 0xCC008000@l(r8)
-/* 80283F44 0027FBA4 7C 7F 58 2E */ lwzx r3, r31, r11
-/* 80283F48 0027FBA8 90 68 80 00 */ stw r3, -0x8000(r8)
-/* 80283F4C 0027FBAC 7C 7F 20 2E */ lwzx r3, r31, r4
-/* 80283F50 0027FBB0 50 C3 07 BE */ rlwimi r3, r6, 0, 0x1e, 0x1f
-/* 80283F54 0027FBB4 50 E3 17 3A */ rlwimi r3, r7, 2, 0x1c, 0x1d
-/* 80283F58 0027FBB8 7C 7F 21 2E */ stwx r3, r31, r4
-/* 80283F5C 0027FBBC 99 28 80 00 */ stb r9, -0x8000(r8)
-/* 80283F60 0027FBC0 7C 7F 20 2E */ lwzx r3, r31, r4
-/* 80283F64 0027FBC4 90 68 80 00 */ stw r3, -0x8000(r8)
-/* 80283F68 0027FBC8 B0 1E 00 02 */ sth r0, 2(r30)
-/* 80283F6C 0027FBCC 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80283F70 0027FBD0 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80283F74 0027FBD4 38 21 00 10 */ addi r1, r1, 0x10
-/* 80283F78 0027FBD8 4E 80 00 20 */ blr
-
-.global func_80283F7C
-func_80283F7C:
-/* 80283F7C 0027FBDC 3D 00 CC 01 */ lis r8, 0xCC008000@ha
-/* 80283F80 0027FBE0 38 00 00 61 */ li r0, 0x61
-/* 80283F84 0027FBE4 98 08 80 00 */ stb r0, 0xCC008000@l(r8)
-/* 80283F88 0027FBE8 3D 20 F3 00 */ lis r9, 0xf300
-/* 80283F8C 0027FBEC 50 89 06 3E */ rlwimi r9, r4, 0, 0x18, 0x1f
-/* 80283F90 0027FBF0 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80283F94 0027FBF4 50 E9 44 2E */ rlwimi r9, r7, 8, 0x10, 0x17
-/* 80283F98 0027FBF8 38 00 00 00 */ li r0, 0
-/* 80283F9C 0027FBFC 50 69 83 5E */ rlwimi r9, r3, 0x10, 0xd, 0xf
-/* 80283FA0 0027FC00 50 C9 9A 98 */ rlwimi r9, r6, 0x13, 0xa, 0xc
-/* 80283FA4 0027FC04 50 A9 B2 12 */ rlwimi r9, r5, 0x16, 8, 9
-/* 80283FA8 0027FC08 91 28 80 00 */ stw r9, -0x8000(r8)
-/* 80283FAC 0027FC0C B0 04 00 02 */ sth r0, 2(r4)
-/* 80283FB0 0027FC10 4E 80 00 20 */ blr
-
-.global func_80283FB4
-func_80283FB4:
-/* 80283FB4 0027FC14 2C 04 00 13 */ cmpwi r4, 0x13
-/* 80283FB8 0027FC18 38 E0 00 00 */ li r7, 0
-/* 80283FBC 0027FC1C 38 00 00 F4 */ li r0, 0xf4
-/* 80283FC0 0027FC20 50 A7 02 3E */ rlwimi r7, r5, 0, 8, 0x1f
-/* 80283FC4 0027FC24 50 07 C0 0E */ rlwimi r7, r0, 0x18, 0, 7
-/* 80283FC8 0027FC28 41 82 00 28 */ beq lbl_80283FF0
-/* 80283FCC 0027FC2C 40 80 00 10 */ bge lbl_80283FDC
-/* 80283FD0 0027FC30 2C 04 00 11 */ cmpwi r4, 0x11
-/* 80283FD4 0027FC34 41 82 00 14 */ beq lbl_80283FE8
-/* 80283FD8 0027FC38 48 00 00 28 */ b lbl_80284000
-lbl_80283FDC:
-/* 80283FDC 0027FC3C 2C 04 00 16 */ cmpwi r4, 0x16
-/* 80283FE0 0027FC40 41 82 00 18 */ beq lbl_80283FF8
-/* 80283FE4 0027FC44 48 00 00 1C */ b lbl_80284000
-lbl_80283FE8:
-/* 80283FE8 0027FC48 38 A0 00 00 */ li r5, 0
-/* 80283FEC 0027FC4C 48 00 00 18 */ b lbl_80284004
-lbl_80283FF0:
-/* 80283FF0 0027FC50 38 A0 00 01 */ li r5, 1
-/* 80283FF4 0027FC54 48 00 00 10 */ b lbl_80284004
-lbl_80283FF8:
-/* 80283FF8 0027FC58 38 A0 00 02 */ li r5, 2
-/* 80283FFC 0027FC5C 48 00 00 08 */ b lbl_80284004
-lbl_80284000:
-/* 80284000 0027FC60 38 A0 00 02 */ li r5, 2
-lbl_80284004:
-/* 80284004 0027FC64 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80284008 0027FC68 38 00 00 61 */ li r0, 0x61
-/* 8028400C 0027FC6C 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 80284010 0027FC70 38 C0 00 00 */ li r6, 0
-/* 80284014 0027FC74 50 A6 07 BE */ rlwimi r6, r5, 0, 0x1e, 0x1f
-/* 80284018 0027FC78 38 A0 00 F5 */ li r5, 0xf5
-/* 8028401C 0027FC7C 90 E4 80 00 */ stw r7, -0x8000(r4)
-/* 80284020 0027FC80 50 66 17 3A */ rlwimi r6, r3, 2, 0x1c, 0x1d
-/* 80284024 0027FC84 50 A6 C0 0E */ rlwimi r6, r5, 0x18, 0, 7
-/* 80284028 0027FC88 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 8028402C 0027FC8C 98 04 80 00 */ stb r0, -0x8000(r4)
-/* 80284030 0027FC90 38 00 00 00 */ li r0, 0
-/* 80284034 0027FC94 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80284038 0027FC98 B0 03 00 02 */ sth r0, 2(r3)
-/* 8028403C 0027FC9C 4E 80 00 20 */ blr
-
-.global func_80284040
-func_80284040:
-/* 80284040 0027FCA0 54 AB 06 2C */ rlwinm r11, r5, 0, 0x18, 0x16
-/* 80284044 0027FCA4 38 E0 00 08 */ li r7, 8
-/* 80284048 0027FCA8 54 69 0F FE */ srwi r9, r3, 0x1f
-/* 8028404C 0027FCAC 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80284050 0027FCB0 7C 07 58 10 */ subfc r0, r7, r11
-/* 80284054 0027FCB4 54 68 10 3A */ slwi r8, r3, 2
-/* 80284058 0027FCB8 7C 07 01 94 */ addze r0, r7
-/* 8028405C 0027FCBC 7D 29 1A 14 */ add r9, r9, r3
-/* 80284060 0027FCC0 7C EA 42 14 */ add r7, r10, r8
-/* 80284064 0027FCC4 2C 04 00 08 */ cmpwi r4, 8
-/* 80284068 0027FCC8 55 28 08 3A */ rlwinm r8, r9, 1, 0, 0x1d
-/* 8028406C 0027FCCC 20 00 00 08 */ subfic r0, r0, 8
-/* 80284070 0027FCD0 90 A7 05 A4 */ stw r5, 0x5a4(r7)
-/* 80284074 0027FCD4 7C EA 42 14 */ add r7, r10, r8
-/* 80284078 0027FCD8 7D 69 00 78 */ andc r9, r11, r0
-/* 8028407C 0027FCDC 41 80 00 20 */ blt lbl_8028409C
-/* 80284080 0027FCE0 38 00 00 01 */ li r0, 1
-/* 80284084 0027FCE4 81 0A 05 E8 */ lwz r8, 0x5e8(r10)
-/* 80284088 0027FCE8 7C 00 18 30 */ slw r0, r0, r3
-/* 8028408C 0027FCEC 38 80 00 00 */ li r4, 0
-/* 80284090 0027FCF0 7D 00 00 78 */ andc r0, r8, r0
-/* 80284094 0027FCF4 90 0A 05 E8 */ stw r0, 0x5e8(r10)
-/* 80284098 0027FCF8 48 00 00 18 */ b lbl_802840B0
-lbl_8028409C:
-/* 8028409C 0027FCFC 38 00 00 01 */ li r0, 1
-/* 802840A0 0027FD00 81 0A 05 E8 */ lwz r8, 0x5e8(r10)
-/* 802840A4 0027FD04 7C 00 18 30 */ slw r0, r0, r3
-/* 802840A8 0027FD08 7D 00 03 78 */ or r0, r8, r0
-/* 802840AC 0027FD0C 90 0A 05 E8 */ stw r0, 0x5e8(r10)
-lbl_802840B0:
-/* 802840B0 0027FD10 54 60 07 FF */ clrlwi. r0, r3, 0x1f
-/* 802840B4 0027FD14 41 82 00 60 */ beq lbl_80284114
-/* 802840B8 0027FD18 81 07 01 50 */ lwz r8, 0x150(r7)
-/* 802840BC 0027FD1C 51 28 64 66 */ rlwimi r8, r9, 0xc, 0x11, 0x13
-/* 802840C0 0027FD20 50 88 7B A0 */ rlwimi r8, r4, 0xf, 0xe, 0x10
-/* 802840C4 0027FD24 2C 06 00 FF */ cmpwi r6, 0xff
-/* 802840C8 0027FD28 91 07 01 50 */ stw r8, 0x150(r7)
-/* 802840CC 0027FD2C 40 82 00 0C */ bne lbl_802840D8
-/* 802840D0 0027FD30 38 00 00 07 */ li r0, 7
-/* 802840D4 0027FD34 48 00 00 14 */ b lbl_802840E8
-lbl_802840D8:
-/* 802840D8 0027FD38 3C 60 80 43 */ lis r3, lbl_80435920@ha
-/* 802840DC 0027FD3C 54 C0 10 3A */ slwi r0, r6, 2
-/* 802840E0 0027FD40 38 63 59 20 */ addi r3, r3, lbl_80435920@l
-/* 802840E4 0027FD44 7C 03 00 2E */ lwzx r0, r3, r0
-lbl_802840E8:
-/* 802840E8 0027FD48 50 08 9A 98 */ rlwimi r8, r0, 0x13, 0xa, 0xc
-/* 802840EC 0027FD4C 2C 05 00 FF */ cmpwi r5, 0xff
-/* 802840F0 0027FD50 91 07 01 50 */ stw r8, 0x150(r7)
-/* 802840F4 0027FD54 38 60 00 00 */ li r3, 0
-/* 802840F8 0027FD58 41 82 00 10 */ beq lbl_80284108
-/* 802840FC 0027FD5C 54 A0 05 EF */ rlwinm. r0, r5, 0, 0x17, 0x17
-/* 80284100 0027FD60 40 82 00 08 */ bne lbl_80284108
-/* 80284104 0027FD64 38 60 00 01 */ li r3, 1
-lbl_80284108:
-/* 80284108 0027FD68 50 68 93 5A */ rlwimi r8, r3, 0x12, 0xd, 0xd
-/* 8028410C 0027FD6C 91 07 01 50 */ stw r8, 0x150(r7)
-/* 80284110 0027FD70 48 00 00 5C */ b lbl_8028416C
-lbl_80284114:
-/* 80284114 0027FD74 81 07 01 50 */ lwz r8, 0x150(r7)
-/* 80284118 0027FD78 51 28 07 7E */ rlwimi r8, r9, 0, 0x1d, 0x1f
-/* 8028411C 0027FD7C 50 88 1E B8 */ rlwimi r8, r4, 3, 0x1a, 0x1c
-/* 80284120 0027FD80 2C 06 00 FF */ cmpwi r6, 0xff
-/* 80284124 0027FD84 91 07 01 50 */ stw r8, 0x150(r7)
-/* 80284128 0027FD88 40 82 00 0C */ bne lbl_80284134
-/* 8028412C 0027FD8C 38 00 00 07 */ li r0, 7
-/* 80284130 0027FD90 48 00 00 14 */ b lbl_80284144
-lbl_80284134:
-/* 80284134 0027FD94 3C 60 80 43 */ lis r3, lbl_80435920@ha
-/* 80284138 0027FD98 54 C0 10 3A */ slwi r0, r6, 2
-/* 8028413C 0027FD9C 38 63 59 20 */ addi r3, r3, lbl_80435920@l
-/* 80284140 0027FDA0 7C 03 00 2E */ lwzx r0, r3, r0
-lbl_80284144:
-/* 80284144 0027FDA4 50 08 3D B0 */ rlwimi r8, r0, 7, 0x16, 0x18
-/* 80284148 0027FDA8 2C 05 00 FF */ cmpwi r5, 0xff
-/* 8028414C 0027FDAC 91 07 01 50 */ stw r8, 0x150(r7)
-/* 80284150 0027FDB0 38 60 00 00 */ li r3, 0
-/* 80284154 0027FDB4 41 82 00 10 */ beq lbl_80284164
-/* 80284158 0027FDB8 54 A0 05 EF */ rlwinm. r0, r5, 0, 0x17, 0x17
-/* 8028415C 0027FDBC 40 82 00 08 */ bne lbl_80284164
-/* 80284160 0027FDC0 38 60 00 01 */ li r3, 1
-lbl_80284164:
-/* 80284164 0027FDC4 50 68 36 72 */ rlwimi r8, r3, 6, 0x19, 0x19
-/* 80284168 0027FDC8 91 07 01 50 */ stw r8, 0x150(r7)
-lbl_8028416C:
-/* 8028416C 0027FDCC 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80284170 0027FDD0 38 00 00 61 */ li r0, 0x61
-/* 80284174 0027FDD4 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 80284178 0027FDD8 38 00 00 00 */ li r0, 0
-/* 8028417C 0027FDDC 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80284180 0027FDE0 80 67 01 50 */ lwz r3, 0x150(r7)
-/* 80284184 0027FDE4 90 64 80 00 */ stw r3, -0x8000(r4)
-/* 80284188 0027FDE8 B0 05 00 02 */ sth r0, 2(r5)
-/* 8028418C 0027FDEC 80 05 05 FC */ lwz r0, 0x5fc(r5)
-/* 80284190 0027FDF0 60 00 00 01 */ ori r0, r0, 1
-/* 80284194 0027FDF4 90 05 05 FC */ stw r0, 0x5fc(r5)
-/* 80284198 0027FDF8 4E 80 00 20 */ blr
-
-.global func_8028419C
-func_8028419C:
-/* 8028419C 0027FDFC 80 82 A0 D0 */ lwz r4, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802841A0 0027FE00 38 03 FF FF */ addi r0, r3, -1
-/* 802841A4 0027FE04 80 64 02 54 */ lwz r3, 0x254(r4)
-/* 802841A8 0027FE08 50 03 54 AA */ rlwimi r3, r0, 0xa, 0x12, 0x15
-/* 802841AC 0027FE0C 90 64 02 54 */ stw r3, 0x254(r4)
-/* 802841B0 0027FE10 80 04 05 FC */ lwz r0, 0x5fc(r4)
-/* 802841B4 0027FE14 60 00 00 04 */ ori r0, r0, 4
-/* 802841B8 0027FE18 90 04 05 FC */ stw r0, 0x5fc(r4)
-/* 802841BC 0027FE1C 4E 80 00 20 */ blr
-
-.global func_802841C0
-func_802841C0:
-/* 802841C0 0027FE20 94 21 FF C0 */ stwu r1, -0x40(r1)
-/* 802841C4 0027FE24 7C 08 02 A6 */ mflr r0
-/* 802841C8 0027FE28 90 01 00 44 */ stw r0, 0x44(r1)
-/* 802841CC 0027FE2C DB E1 00 30 */ stfd f31, 0x30(r1)
-/* 802841D0 0027FE30 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
-/* 802841D4 0027FE34 39 00 00 00 */ li r8, 0
-/* 802841D8 0027FE38 39 20 00 00 */ li r9, 0
-/* 802841DC 0027FE3C 93 E1 00 2C */ stw r31, 0x2c(r1)
-/* 802841E0 0027FE40 54 7F 07 7E */ clrlwi r31, r3, 0x1d
-/* 802841E4 0027FE44 93 C1 00 28 */ stw r30, 0x28(r1)
-/* 802841E8 0027FE48 54 7E EF FF */ rlwinm. r30, r3, 0x1d, 0x1f, 0x1f
-/* 802841EC 0027FE4C 93 A1 00 24 */ stw r29, 0x24(r1)
-/* 802841F0 0027FE50 7C 9D 23 78 */ mr r29, r4
-/* 802841F4 0027FE54 93 81 00 20 */ stw r28, 0x20(r1)
-/* 802841F8 0027FE58 41 82 00 4C */ beq lbl_80284244
-/* 802841FC 0027FE5C FC 04 18 00 */ fcmpu cr0, f4, f3
-/* 80284200 0027FE60 41 82 00 0C */ beq lbl_8028420C
-/* 80284204 0027FE64 FC 02 08 00 */ fcmpu cr0, f2, f1
-/* 80284208 0027FE68 40 82 00 14 */ bne lbl_8028421C
-lbl_8028420C:
-/* 8028420C 0027FE6C C0 02 A1 80 */ lfs f0, lbl_80642780-_SDA2_BASE_(r2)
-/* 80284210 0027FE70 D0 01 00 0C */ stfs f0, 0xc(r1)
-/* 80284214 0027FE74 D0 01 00 08 */ stfs f0, 8(r1)
-/* 80284218 0027FE78 48 00 01 1C */ b lbl_80284334
-lbl_8028421C:
-/* 8028421C 0027FE7C EC C2 08 28 */ fsubs f6, f2, f1
-/* 80284220 0027FE80 C0 A2 A1 84 */ lfs f5, lbl_80642784-_SDA2_BASE_(r2)
-/* 80284224 0027FE84 EC 44 18 28 */ fsubs f2, f4, f3
-/* 80284228 0027FE88 EC 01 18 28 */ fsubs f0, f1, f3
-/* 8028422C 0027FE8C EC 65 30 24 */ fdivs f3, f5, f6
-/* 80284230 0027FE90 EC 23 00 B2 */ fmuls f1, f3, f2
-/* 80284234 0027FE94 EC 03 00 32 */ fmuls f0, f3, f0
-/* 80284238 0027FE98 D0 21 00 0C */ stfs f1, 0xc(r1)
-/* 8028423C 0027FE9C D0 01 00 08 */ stfs f0, 8(r1)
-/* 80284240 0027FEA0 48 00 00 F4 */ b lbl_80284334
-lbl_80284244:
-/* 80284244 0027FEA4 FC 04 18 00 */ fcmpu cr0, f4, f3
-/* 80284248 0027FEA8 41 82 00 0C */ beq lbl_80284254
-/* 8028424C 0027FEAC FC 02 08 00 */ fcmpu cr0, f2, f1
-/* 80284250 0027FEB0 40 82 00 14 */ bne lbl_80284264
-lbl_80284254:
-/* 80284254 0027FEB4 C0 62 A1 80 */ lfs f3, lbl_80642780-_SDA2_BASE_(r2)
-/* 80284258 0027FEB8 C0 82 A1 88 */ lfs f4, lbl_80642788-_SDA2_BASE_(r2)
-/* 8028425C 0027FEBC FF E0 18 90 */ fmr f31, f3
-/* 80284260 0027FEC0 48 00 00 20 */ b lbl_80284280
-lbl_80284264:
-/* 80284264 0027FEC4 EC 04 18 28 */ fsubs f0, f4, f3
-/* 80284268 0027FEC8 EC 42 08 28 */ fsubs f2, f2, f1
-/* 8028426C 0027FECC EC 64 00 F2 */ fmuls f3, f4, f3
-/* 80284270 0027FED0 EC 84 00 24 */ fdivs f4, f4, f0
-/* 80284274 0027FED4 EC 00 00 B2 */ fmuls f0, f0, f2
-/* 80284278 0027FED8 EF E1 10 24 */ fdivs f31, f1, f2
-/* 8028427C 0027FEDC EC 63 00 24 */ fdivs f3, f3, f0
-lbl_80284280:
-/* 80284280 0027FEE0 C0 22 A1 88 */ lfs f1, lbl_80642788-_SDA2_BASE_(r2)
-/* 80284284 0027FEE4 3B 80 00 00 */ li r28, 0
-/* 80284288 0027FEE8 C8 02 A1 90 */ lfd f0, lbl_80642790-_SDA2_BASE_(r2)
-/* 8028428C 0027FEEC 48 00 00 0C */ b lbl_80284298
-lbl_80284290:
-/* 80284290 0027FEF0 EC 84 00 72 */ fmuls f4, f4, f1
-/* 80284294 0027FEF4 3B 9C 00 01 */ addi r28, r28, 1
-lbl_80284298:
-/* 80284298 0027FEF8 FC 04 00 40 */ fcmpo cr0, f4, f0
-/* 8028429C 0027FEFC 41 81 FF F4 */ bgt lbl_80284290
-/* 802842A0 0027FF00 C8 02 A1 A0 */ lfd f0, lbl_806427A0-_SDA2_BASE_(r2)
-/* 802842A4 0027FF04 C0 42 A1 98 */ lfs f2, lbl_80642798-_SDA2_BASE_(r2)
-/* 802842A8 0027FF08 C0 22 A1 80 */ lfs f1, lbl_80642780-_SDA2_BASE_(r2)
-/* 802842AC 0027FF0C 48 00 00 0C */ b lbl_802842B8
-lbl_802842B0:
-/* 802842B0 0027FF10 EC 84 00 B2 */ fmuls f4, f4, f2
-/* 802842B4 0027FF14 3B 9C FF FF */ addi r28, r28, -1
-lbl_802842B8:
-/* 802842B8 0027FF18 FC 04 08 40 */ fcmpo cr0, f4, f1
-/* 802842BC 0027FF1C 7C 00 00 26 */ mfcr r0
-/* 802842C0 0027FF20 54 00 17 FF */ rlwinm. r0, r0, 2, 0x1f, 0x1f
-/* 802842C4 0027FF24 41 82 00 0C */ beq lbl_802842D0
-/* 802842C8 0027FF28 FC 04 00 40 */ fcmpo cr0, f4, f0
-/* 802842CC 0027FF2C 41 80 FF E4 */ blt lbl_802842B0
-lbl_802842D0:
-/* 802842D0 0027FF30 38 1C 00 01 */ addi r0, r28, 1
-/* 802842D4 0027FF34 38 60 00 01 */ li r3, 1
-/* 802842D8 0027FF38 7C 63 00 30 */ slw r3, r3, r0
-/* 802842DC 0027FF3C C0 02 A1 A8 */ lfs f0, lbl_806427A8-_SDA2_BASE_(r2)
-/* 802842E0 0027FF40 3C 00 43 30 */ lis r0, 0x4330
-/* 802842E4 0027FF44 C8 42 A1 B0 */ lfd f2, lbl_806427B0-_SDA2_BASE_(r2)
-/* 802842E8 0027FF48 6C 63 80 00 */ xoris r3, r3, 0x8000
-/* 802842EC 0027FF4C 90 01 00 10 */ stw r0, 0x10(r1)
-/* 802842F0 0027FF50 EC 20 01 32 */ fmuls f1, f0, f4
-/* 802842F4 0027FF54 90 61 00 14 */ stw r3, 0x14(r1)
-/* 802842F8 0027FF58 C8 01 00 10 */ lfd f0, 0x10(r1)
-/* 802842FC 0027FF5C EC 00 10 28 */ fsubs f0, f0, f2
-/* 80284300 0027FF60 EC 03 00 24 */ fdivs f0, f3, f0
-/* 80284304 0027FF64 D0 01 00 0C */ stfs f0, 0xc(r1)
-/* 80284308 0027FF68 4B F4 2C F9 */ bl __cvt_fp2unsigned
-/* 8028430C 0027FF6C 38 1C 00 01 */ addi r0, r28, 1
-/* 80284310 0027FF70 39 00 00 00 */ li r8, 0
-/* 80284314 0027FF74 50 68 02 3E */ rlwimi r8, r3, 0, 8, 0x1f
-/* 80284318 0027FF78 39 20 00 00 */ li r9, 0
-/* 8028431C 0027FF7C 50 09 06 FE */ rlwimi r9, r0, 0, 0x1b, 0x1f
-/* 80284320 0027FF80 38 60 00 EF */ li r3, 0xef
-/* 80284324 0027FF84 38 00 00 F0 */ li r0, 0xf0
-/* 80284328 0027FF88 D3 E1 00 08 */ stfs f31, 8(r1)
-/* 8028432C 0027FF8C 50 68 C0 0E */ rlwimi r8, r3, 0x18, 0, 7
-/* 80284330 0027FF90 50 09 C0 0E */ rlwimi r9, r0, 0x18, 0, 7
-lbl_80284334:
-/* 80284334 0027FF94 80 61 00 0C */ lwz r3, 0xc(r1)
-/* 80284338 0027FF98 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 8028433C 0027FF9C 38 A0 00 61 */ li r5, 0x61
-/* 80284340 0027FFA0 38 00 00 EE */ li r0, 0xee
-/* 80284344 0027FFA4 38 C0 00 00 */ li r6, 0
-/* 80284348 0027FFA8 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 8028434C 0027FFAC 50 66 A5 7E */ rlwimi r6, r3, 0x14, 0x15, 0x1f
-/* 80284350 0027FFB0 81 41 00 08 */ lwz r10, 8(r1)
-/* 80284354 0027FFB4 50 66 A3 68 */ rlwimi r6, r3, 0x14, 0xd, 0x14
-/* 80284358 0027FFB8 38 E0 00 00 */ li r7, 0
-/* 8028435C 0027FFBC 50 66 A3 18 */ rlwimi r6, r3, 0x14, 0xc, 0xc
-/* 80284360 0027FFC0 38 60 00 F1 */ li r3, 0xf1
-/* 80284364 0027FFC4 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
-/* 80284368 0027FFC8 51 47 A5 7E */ rlwimi r7, r10, 0x14, 0x15, 0x1f
-/* 8028436C 0027FFCC 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80284370 0027FFD0 51 47 A3 68 */ rlwimi r7, r10, 0x14, 0xd, 0x14
-/* 80284374 0027FFD4 51 47 A3 18 */ rlwimi r7, r10, 0x14, 0xc, 0xc
-/* 80284378 0027FFD8 80 1D 00 00 */ lwz r0, 0(r29)
-/* 8028437C 0027FFDC 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 80284380 0027FFE0 53 C7 A2 D6 */ rlwimi r7, r30, 0x14, 0xb, 0xb
-/* 80284384 0027FFE4 53 E7 AA 14 */ rlwimi r7, r31, 0x15, 8, 0xa
-/* 80284388 0027FFE8 38 C0 00 00 */ li r6, 0
-/* 8028438C 0027FFEC 91 04 80 00 */ stw r8, -0x8000(r4)
-/* 80284390 0027FFF0 50 67 C0 0E */ rlwimi r7, r3, 0x18, 0, 7
-/* 80284394 0027FFF4 50 06 C2 3E */ rlwimi r6, r0, 0x18, 8, 0x1f
-/* 80284398 0027FFF8 38 00 00 F2 */ li r0, 0xf2
-/* 8028439C 0027FFFC 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 802843A0 00280000 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
-/* 802843A4 00280004 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802843A8 00280008 38 00 00 00 */ li r0, 0
-/* 802843AC 0028000C 91 24 80 00 */ stw r9, -0x8000(r4)
-/* 802843B0 00280010 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 802843B4 00280014 90 E4 80 00 */ stw r7, -0x8000(r4)
-/* 802843B8 00280018 98 A4 80 00 */ stb r5, -0x8000(r4)
-/* 802843BC 0028001C 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 802843C0 00280020 B0 03 00 02 */ sth r0, 2(r3)
-/* 802843C4 00280024 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
-/* 802843C8 00280028 CB E1 00 30 */ lfd f31, 0x30(r1)
-/* 802843CC 0028002C 83 E1 00 2C */ lwz r31, 0x2c(r1)
-/* 802843D0 00280030 83 C1 00 28 */ lwz r30, 0x28(r1)
-/* 802843D4 00280034 83 A1 00 24 */ lwz r29, 0x24(r1)
-/* 802843D8 00280038 83 81 00 20 */ lwz r28, 0x20(r1)
-/* 802843DC 0028003C 80 01 00 44 */ lwz r0, 0x44(r1)
-/* 802843E0 00280040 7C 08 03 A6 */ mtlr r0
-/* 802843E4 00280044 38 21 00 40 */ addi r1, r1, 0x40
-/* 802843E8 00280048 4E 80 00 20 */ blr
-
-.global func_802843EC
-func_802843EC:
-/* 802843EC 0028004C 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 802843F0 00280050 38 00 00 61 */ li r0, 0x61
-/* 802843F4 00280054 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 802843F8 00280058 3C A0 F2 00 */ lis r5, 0xf200
-/* 802843FC 0028005C 80 63 00 00 */ lwz r3, 0(r3)
-/* 80284400 00280060 38 00 00 00 */ li r0, 0
-/* 80284404 00280064 50 65 C2 3E */ rlwimi r5, r3, 0x18, 8, 0x1f
-/* 80284408 00280068 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 8028440C 0028006C 90 A4 80 00 */ stw r5, -0x8000(r4)
-/* 80284410 00280070 B0 03 00 02 */ sth r0, 2(r3)
-/* 80284414 00280074 4E 80 00 20 */ blr
-
-.global func_80284418
-func_80284418:
-/* 80284418 00280078 94 21 FF 80 */ stwu r1, -0x80(r1)
-/* 8028441C 0028007C 7C 08 02 A6 */ mflr r0
-/* 80284420 00280080 90 01 00 84 */ stw r0, 0x84(r1)
-/* 80284424 00280084 DB E1 00 70 */ stfd f31, 0x70(r1)
-/* 80284428 00280088 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0
-/* 8028442C 0028008C DB C1 00 60 */ stfd f30, 0x60(r1)
-/* 80284430 00280090 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0
-/* 80284434 00280094 DB A1 00 50 */ stfd f29, 0x50(r1)
-/* 80284438 00280098 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0
-/* 8028443C 0028009C DB 81 00 40 */ stfd f28, 0x40(r1)
-/* 80284440 002800A0 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0
-/* 80284444 002800A4 DB 61 00 30 */ stfd f27, 0x30(r1)
-/* 80284448 002800A8 F3 61 00 38 */ psq_st f27, 56(r1), 0, qr0
-/* 8028444C 002800AC DB 41 00 20 */ stfd f26, 0x20(r1)
-/* 80284450 002800B0 F3 41 00 28 */ psq_st f26, 40(r1), 0, qr0
-/* 80284454 002800B4 C8 22 A1 B8 */ lfd f1, lbl_806427B8-_SDA2_BASE_(r2)
-/* 80284458 002800B8 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8028445C 002800BC C0 05 00 3C */ lfs f0, 0x3c(r5)
-/* 80284460 002800C0 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 80284464 002800C4 FC 01 00 00 */ fcmpu cr0, f1, f0
-/* 80284468 002800C8 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8028446C 002800CC 40 82 00 24 */ bne lbl_80284490
-/* 80284470 002800D0 C0 45 00 28 */ lfs f2, 0x28(r5)
-/* 80284474 002800D4 C0 02 A1 84 */ lfs f0, lbl_80642784-_SDA2_BASE_(r2)
-/* 80284478 002800D8 C0 25 00 2C */ lfs f1, 0x2c(r5)
-/* 8028447C 002800DC EC 42 00 28 */ fsubs f2, f2, f0
-/* 80284480 002800E0 C0 05 00 00 */ lfs f0, 0(r5)
-/* 80284484 002800E4 EC 21 10 24 */ fdivs f1, f1, f2
-/* 80284488 002800E8 EF 41 00 24 */ fdivs f26, f1, f0
-/* 8028448C 002800EC 48 00 00 18 */ b lbl_802844A4
-lbl_80284490:
-/* 80284490 002800F0 C0 42 A1 84 */ lfs f2, lbl_80642784-_SDA2_BASE_(r2)
-/* 80284494 002800F4 C0 25 00 00 */ lfs f1, 0(r5)
-/* 80284498 002800F8 C0 02 A1 C0 */ lfs f0, lbl_806427C0-_SDA2_BASE_(r2)
-/* 8028449C 002800FC EF 42 08 24 */ fdivs f26, f2, f1
-/* 802844A0 00280100 EC 20 06 B2 */ fmuls f1, f0, f26
-lbl_802844A4:
-/* 802844A4 00280104 3F E0 43 30 */ lis r31, 0x4330
-/* 802844A8 00280108 90 81 00 0C */ stw r4, 0xc(r1)
-/* 802844AC 0028010C CB 82 A1 C8 */ lfd f28, lbl_806427C8-_SDA2_BASE_(r2)
-/* 802844B0 00280110 EF A1 00 72 */ fmuls f29, f1, f1
-/* 802844B4 00280114 93 E1 00 08 */ stw r31, 8(r1)
-/* 802844B8 00280118 7C 7E 1B 78 */ mr r30, r3
-/* 802844BC 0028011C C0 02 A1 98 */ lfs f0, lbl_80642798-_SDA2_BASE_(r2)
-/* 802844C0 00280120 3B A0 00 00 */ li r29, 0
-/* 802844C4 00280124 C8 21 00 08 */ lfd f1, 8(r1)
-/* 802844C8 00280128 C3 C2 A1 84 */ lfs f30, lbl_80642784-_SDA2_BASE_(r2)
-/* 802844CC 0028012C EC 21 E0 28 */ fsubs f1, f1, f28
-/* 802844D0 00280130 C3 E2 A1 C4 */ lfs f31, lbl_806427C4-_SDA2_BASE_(r2)
-/* 802844D4 00280134 EF 60 08 24 */ fdivs f27, f0, f1
-lbl_802844D8:
-/* 802844D8 00280138 38 1D 00 01 */ addi r0, r29, 1
-/* 802844DC 0028013C 93 E1 00 08 */ stw r31, 8(r1)
-/* 802844E0 00280140 54 00 28 34 */ slwi r0, r0, 5
-/* 802844E4 00280144 90 01 00 0C */ stw r0, 0xc(r1)
-/* 802844E8 00280148 C8 01 00 08 */ lfd f0, 8(r1)
-/* 802844EC 0028014C EC 00 E0 28 */ fsubs f0, f0, f28
-/* 802844F0 00280150 EC 00 06 F2 */ fmuls f0, f0, f27
-/* 802844F4 00280154 EC 00 06 B2 */ fmuls f0, f0, f26
-/* 802844F8 00280158 EC 00 00 32 */ fmuls f0, f0, f0
-/* 802844FC 0028015C EC 00 E8 24 */ fdivs f0, f0, f29
-/* 80284500 00280160 EC 3E 00 2A */ fadds f1, f30, f0
-/* 80284504 00280164 4B F5 03 31 */ bl sqrt
-/* 80284508 00280168 FC 00 08 18 */ frsp f0, f1
-/* 8028450C 0028016C EC 3F 00 32 */ fmuls f1, f31, f0
-/* 80284510 00280170 4B F4 2A F1 */ bl __cvt_fp2unsigned
-/* 80284514 00280174 3B BD 00 01 */ addi r29, r29, 1
-/* 80284518 00280178 54 60 05 3E */ clrlwi r0, r3, 0x14
-/* 8028451C 0028017C 28 1D 00 0A */ cmplwi r29, 0xa
-/* 80284520 00280180 B0 1E 00 00 */ sth r0, 0(r30)
-/* 80284524 00280184 3B DE 00 02 */ addi r30, r30, 2
-/* 80284528 00280188 41 80 FF B0 */ blt lbl_802844D8
-/* 8028452C 0028018C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0
-/* 80284530 00280190 CB E1 00 70 */ lfd f31, 0x70(r1)
-/* 80284534 00280194 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0
-/* 80284538 00280198 CB C1 00 60 */ lfd f30, 0x60(r1)
-/* 8028453C 0028019C E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0
-/* 80284540 002801A0 CB A1 00 50 */ lfd f29, 0x50(r1)
-/* 80284544 002801A4 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0
-/* 80284548 002801A8 CB 81 00 40 */ lfd f28, 0x40(r1)
-/* 8028454C 002801AC E3 61 00 38 */ psq_l f27, 56(r1), 0, qr0
-/* 80284550 002801B0 CB 61 00 30 */ lfd f27, 0x30(r1)
-/* 80284554 002801B4 E3 41 00 28 */ psq_l f26, 40(r1), 0, qr0
-/* 80284558 002801B8 CB 41 00 20 */ lfd f26, 0x20(r1)
-/* 8028455C 002801BC 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 80284560 002801C0 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80284564 002801C4 80 01 00 84 */ lwz r0, 0x84(r1)
-/* 80284568 002801C8 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8028456C 002801CC 7C 08 03 A6 */ mtlr r0
-/* 80284570 002801D0 38 21 00 80 */ addi r1, r1, 0x80
-/* 80284574 002801D4 4E 80 00 20 */ blr
-
-.global func_80284578
-func_80284578:
-/* 80284578 002801D8 2C 03 00 00 */ cmpwi r3, 0
-/* 8028457C 002801DC 41 82 00 E8 */ beq lbl_80284664
-/* 80284580 002801E0 A1 85 00 00 */ lhz r12, 0(r5)
-/* 80284584 002801E4 39 60 00 00 */ li r11, 0
-/* 80284588 002801E8 A1 45 00 02 */ lhz r10, 2(r5)
-/* 8028458C 002801EC 3C C0 CC 01 */ lis r6, 0xCC008000@ha
-/* 80284590 002801F0 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
-/* 80284594 002801F4 38 00 00 61 */ li r0, 0x61
-/* 80284598 002801F8 7D 69 5B 78 */ mr r9, r11
-/* 8028459C 002801FC 98 06 80 00 */ stb r0, 0xCC008000@l(r6)
-/* 802845A0 00280200 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
-/* 802845A4 00280204 38 E0 00 E9 */ li r7, 0xe9
-/* 802845A8 00280208 7D 28 4B 78 */ mr r8, r9
-/* 802845AC 0028020C A1 85 00 04 */ lhz r12, 4(r5)
-/* 802845B0 00280210 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
-/* 802845B4 00280214 39 60 00 00 */ li r11, 0
-/* 802845B8 00280218 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
-/* 802845BC 0028021C 91 06 80 00 */ stw r8, -0x8000(r6)
-/* 802845C0 00280220 7D 69 5B 78 */ mr r9, r11
-/* 802845C4 00280224 A1 45 00 06 */ lhz r10, 6(r5)
-/* 802845C8 00280228 38 E0 00 EA */ li r7, 0xea
-/* 802845CC 0028022C 98 06 80 00 */ stb r0, -0x8000(r6)
-/* 802845D0 00280230 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
-/* 802845D4 00280234 A1 85 00 08 */ lhz r12, 8(r5)
-/* 802845D8 00280238 7D 28 4B 78 */ mr r8, r9
-/* 802845DC 0028023C 39 60 00 00 */ li r11, 0
-/* 802845E0 00280240 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
-/* 802845E4 00280244 A1 45 00 0A */ lhz r10, 0xa(r5)
-/* 802845E8 00280248 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
-/* 802845EC 0028024C 91 06 80 00 */ stw r8, -0x8000(r6)
-/* 802845F0 00280250 7D 69 5B 78 */ mr r9, r11
-/* 802845F4 00280254 38 E0 00 EB */ li r7, 0xeb
-/* 802845F8 00280258 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
-/* 802845FC 0028025C 98 06 80 00 */ stb r0, -0x8000(r6)
-/* 80284600 00280260 7D 28 4B 78 */ mr r8, r9
-/* 80284604 00280264 A1 85 00 0C */ lhz r12, 0xc(r5)
-/* 80284608 00280268 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
-/* 8028460C 0028026C 39 60 00 00 */ li r11, 0
-/* 80284610 00280270 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
-/* 80284614 00280274 91 06 80 00 */ stw r8, -0x8000(r6)
-/* 80284618 00280278 7D 69 5B 78 */ mr r9, r11
-/* 8028461C 0028027C A1 45 00 0E */ lhz r10, 0xe(r5)
-/* 80284620 00280280 38 E0 00 EC */ li r7, 0xec
-/* 80284624 00280284 98 06 80 00 */ stb r0, -0x8000(r6)
-/* 80284628 00280288 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
-/* 8028462C 0028028C A1 85 00 10 */ lhz r12, 0x10(r5)
-/* 80284630 00280290 7D 28 4B 78 */ mr r8, r9
-/* 80284634 00280294 39 60 00 00 */ li r11, 0
-/* 80284638 00280298 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
-/* 8028463C 0028029C A1 45 00 12 */ lhz r10, 0x12(r5)
-/* 80284640 002802A0 91 06 80 00 */ stw r8, -0x8000(r6)
-/* 80284644 002802A4 51 8B 05 3E */ rlwimi r11, r12, 0, 0x14, 0x1f
-/* 80284648 002802A8 7D 69 5B 78 */ mr r9, r11
-/* 8028464C 002802AC 38 E0 00 ED */ li r7, 0xed
-/* 80284650 002802B0 51 49 62 26 */ rlwimi r9, r10, 0xc, 8, 0x13
-/* 80284654 002802B4 98 06 80 00 */ stb r0, -0x8000(r6)
-/* 80284658 002802B8 7D 28 4B 78 */ mr r8, r9
-/* 8028465C 002802BC 50 E8 C0 0E */ rlwimi r8, r7, 0x18, 0, 7
-/* 80284660 002802C0 91 06 80 00 */ stw r8, -0x8000(r6)
-lbl_80284664:
-/* 80284664 002802C4 38 04 01 56 */ addi r0, r4, 0x156
-/* 80284668 002802C8 38 C0 00 00 */ li r6, 0
-/* 8028466C 002802CC 50 06 05 BE */ rlwimi r6, r0, 0, 0x16, 0x1f
-/* 80284670 002802D0 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80284674 002802D4 38 00 00 61 */ li r0, 0x61
-/* 80284678 002802D8 38 A0 00 E8 */ li r5, 0xe8
-/* 8028467C 002802DC 50 66 55 6A */ rlwimi r6, r3, 0xa, 0x15, 0x15
-/* 80284680 002802E0 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
-/* 80284684 002802E4 50 A6 C0 0E */ rlwimi r6, r5, 0x18, 0, 7
-/* 80284688 002802E8 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 8028468C 002802EC 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80284690 002802F0 38 00 00 00 */ li r0, 0
-/* 80284694 002802F4 B0 03 00 02 */ sth r0, 2(r3)
-/* 80284698 002802F8 4E 80 00 20 */ blr
-
-.global func_8028469C
-func_8028469C:
-/* 8028469C 002802FC 81 42 A0 D0 */ lwz r10, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802846A0 00280300 38 03 FF FD */ addi r0, r3, -3
-/* 802846A4 00280304 39 03 FF FE */ addi r8, r3, -2
-/* 802846A8 00280308 3C E0 CC 01 */ lis r7, 0xCC008000@ha
-/* 802846AC 0028030C 7C 00 00 34 */ cntlzw r0, r0
-/* 802846B0 00280310 81 2A 02 20 */ lwz r9, 0x220(r10)
-/* 802846B4 00280314 50 09 35 28 */ rlwimi r9, r0, 6, 0x14, 0x14
-/* 802846B8 00280318 7D 08 00 34 */ cntlzw r8, r8
-/* 802846BC 0028031C 38 00 00 61 */ li r0, 0x61
-/* 802846C0 00280320 98 07 80 00 */ stb r0, 0xCC008000@l(r7)
-/* 802846C4 00280324 50 69 07 FE */ rlwimi r9, r3, 0, 0x1f, 0x1f
-/* 802846C8 00280328 51 09 E7 BC */ rlwimi r9, r8, 0x1c, 0x1e, 0x1e
-/* 802846CC 0028032C 38 00 00 00 */ li r0, 0
-/* 802846D0 00280330 50 C9 64 26 */ rlwimi r9, r6, 0xc, 0x10, 0x13
-/* 802846D4 00280334 50 89 45 6E */ rlwimi r9, r4, 8, 0x15, 0x17
-/* 802846D8 00280338 50 A9 2E 34 */ rlwimi r9, r5, 5, 0x18, 0x1a
-/* 802846DC 0028033C 91 27 80 00 */ stw r9, -0x8000(r7)
-/* 802846E0 00280340 91 2A 02 20 */ stw r9, 0x220(r10)
-/* 802846E4 00280344 B0 0A 00 02 */ sth r0, 2(r10)
-/* 802846E8 00280348 4E 80 00 20 */ blr
-
-.global func_802846EC
-func_802846EC:
-/* 802846EC 0028034C 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802846F0 00280350 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 802846F4 00280354 38 A0 00 61 */ li r5, 0x61
-/* 802846F8 00280358 38 00 00 00 */ li r0, 0
-/* 802846FC 0028035C 80 C7 02 20 */ lwz r6, 0x220(r7)
-/* 80284700 00280360 50 66 1F 38 */ rlwimi r6, r3, 3, 0x1c, 0x1c
-/* 80284704 00280364 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80284708 00280368 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 8028470C 0028036C 90 C7 02 20 */ stw r6, 0x220(r7)
-/* 80284710 00280370 B0 07 00 02 */ sth r0, 2(r7)
-/* 80284714 00280374 4E 80 00 20 */ blr
-
-.global func_80284718
-func_80284718:
-/* 80284718 00280378 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
-/* 8028471C 0028037C 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80284720 00280380 38 A0 00 61 */ li r5, 0x61
-/* 80284724 00280384 38 00 00 00 */ li r0, 0
-/* 80284728 00280388 80 C7 02 20 */ lwz r6, 0x220(r7)
-/* 8028472C 0028038C 50 66 26 F6 */ rlwimi r6, r3, 4, 0x1b, 0x1b
-/* 80284730 00280390 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80284734 00280394 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80284738 00280398 90 C7 02 20 */ stw r6, 0x220(r7)
-/* 8028473C 0028039C B0 07 00 02 */ sth r0, 2(r7)
-/* 80284740 002803A0 4E 80 00 20 */ blr
-
-.global func_80284744
-func_80284744:
-/* 80284744 002803A4 81 22 A0 D0 */ lwz r9, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80284748 002803A8 3C C0 CC 01 */ lis r6, 0xCC008000@ha
-/* 8028474C 002803AC 38 E0 00 61 */ li r7, 0x61
-/* 80284750 002803B0 38 00 00 00 */ li r0, 0
-/* 80284754 002803B4 81 09 02 28 */ lwz r8, 0x228(r9)
-/* 80284758 002803B8 50 68 07 FE */ rlwimi r8, r3, 0, 0x1f, 0x1f
-/* 8028475C 002803BC 50 88 0F 3C */ rlwimi r8, r4, 1, 0x1c, 0x1e
-/* 80284760 002803C0 98 E6 80 00 */ stb r7, 0xCC008000@l(r6)
-/* 80284764 002803C4 50 A8 26 F6 */ rlwimi r8, r5, 4, 0x1b, 0x1b
-/* 80284768 002803C8 91 06 80 00 */ stw r8, -0x8000(r6)
-/* 8028476C 002803CC 91 09 02 28 */ stw r8, 0x228(r9)
-/* 80284770 002803D0 B0 09 00 02 */ sth r0, 2(r9)
-/* 80284774 002803D4 4E 80 00 20 */ blr
-
-.global func_80284778
-func_80284778:
-/* 80284778 002803D8 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
-/* 8028477C 002803DC 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80284780 002803E0 38 A0 00 61 */ li r5, 0x61
-/* 80284784 002803E4 38 00 00 00 */ li r0, 0
-/* 80284788 002803E8 80 C7 02 2C */ lwz r6, 0x22c(r7)
-/* 8028478C 002803EC 50 66 36 72 */ rlwimi r6, r3, 6, 0x19, 0x19
-/* 80284790 002803F0 90 C7 02 2C */ stw r6, 0x22c(r7)
-/* 80284794 002803F4 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 80284798 002803F8 80 67 02 2C */ lwz r3, 0x22c(r7)
-/* 8028479C 002803FC 90 64 80 00 */ stw r3, -0x8000(r4)
-/* 802847A0 00280400 B0 07 00 02 */ sth r0, 2(r7)
-/* 802847A4 00280404 4E 80 00 20 */ blr
-
-.global func_802847A8
-func_802847A8:
-/* 802847A8 00280408 81 22 A0 D0 */ lwz r9, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802847AC 0028040C 3C C0 80 43 */ lis r6, lbl_80435948@ha
-/* 802847B0 00280410 54 67 10 3A */ slwi r7, r3, 2
-/* 802847B4 00280414 38 C6 59 48 */ addi r6, r6, lbl_80435948@l
-/* 802847B8 00280418 81 09 02 2C */ lwz r8, 0x22c(r9)
-/* 802847BC 0028041C 7C 06 38 2E */ lwzx r0, r6, r7
-/* 802847C0 00280420 7D 05 43 78 */ mr r5, r8
-/* 802847C4 00280424 50 05 07 7E */ rlwimi r5, r0, 0, 0x1d, 0x1f
-/* 802847C8 00280428 50 85 1E B8 */ rlwimi r5, r4, 3, 0x1a, 0x1c
-/* 802847CC 0028042C 7C 08 28 40 */ cmplw r8, r5
-/* 802847D0 00280430 90 A9 02 2C */ stw r5, 0x22c(r9)
-/* 802847D4 00280434 41 82 00 38 */ beq lbl_8028480C
-/* 802847D8 00280438 3C A0 CC 01 */ lis r5, 0xCC008000@ha
-/* 802847DC 0028043C 38 00 00 61 */ li r0, 0x61
-/* 802847E0 00280440 98 05 80 00 */ stb r0, 0xCC008000@l(r5)
-/* 802847E4 00280444 38 03 FF FE */ addi r0, r3, -2
-/* 802847E8 00280448 7C 04 00 34 */ cntlzw r4, r0
-/* 802847EC 0028044C 80 09 02 2C */ lwz r0, 0x22c(r9)
-/* 802847F0 00280450 90 05 80 00 */ stw r0, -0x8000(r5)
-/* 802847F4 00280454 80 09 02 54 */ lwz r0, 0x254(r9)
-/* 802847F8 00280458 50 80 25 AC */ rlwimi r0, r4, 4, 0x16, 0x16
-/* 802847FC 0028045C 90 09 02 54 */ stw r0, 0x254(r9)
-/* 80284800 00280460 80 09 05 FC */ lwz r0, 0x5fc(r9)
-/* 80284804 00280464 60 00 00 04 */ ori r0, r0, 4
-/* 80284808 00280468 90 09 05 FC */ stw r0, 0x5fc(r9)
-lbl_8028480C:
-/* 8028480C 0028046C 7C 06 38 2E */ lwzx r0, r6, r7
-/* 80284810 00280470 28 00 00 04 */ cmplwi r0, 4
-/* 80284814 00280474 40 82 00 30 */ bne lbl_80284844
-/* 80284818 00280478 38 03 FF FC */ addi r0, r3, -4
-/* 8028481C 0028047C 80 89 02 24 */ lwz r4, 0x224(r9)
-/* 80284820 00280480 50 04 4D 6C */ rlwimi r4, r0, 9, 0x15, 0x16
-/* 80284824 00280484 3C 60 CC 01 */ lis r3, 0xCC008000@ha
-/* 80284828 00280488 38 00 00 42 */ li r0, 0x42
-/* 8028482C 0028048C 50 04 C0 0E */ rlwimi r4, r0, 0x18, 0, 7
-/* 80284830 00280490 90 89 02 24 */ stw r4, 0x224(r9)
-/* 80284834 00280494 38 00 00 61 */ li r0, 0x61
-/* 80284838 00280498 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
-/* 8028483C 0028049C 80 09 02 24 */ lwz r0, 0x224(r9)
-/* 80284840 002804A0 90 03 80 00 */ stw r0, -0x8000(r3)
-lbl_80284844:
-/* 80284844 002804A4 38 00 00 00 */ li r0, 0
-/* 80284848 002804A8 B0 09 00 02 */ sth r0, 2(r9)
-/* 8028484C 002804AC 4E 80 00 20 */ blr
-
-.global func_80284850
-func_80284850:
-/* 80284850 002804B0 80 E2 A0 D0 */ lwz r7, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80284854 002804B4 3C 80 CC 01 */ lis r4, 0xCC008000@ha
-/* 80284858 002804B8 38 A0 00 61 */ li r5, 0x61
-/* 8028485C 002804BC 38 00 00 00 */ li r0, 0
-/* 80284860 002804C0 80 C7 02 20 */ lwz r6, 0x220(r7)
-/* 80284864 002804C4 50 66 17 7A */ rlwimi r6, r3, 2, 0x1d, 0x1d
-/* 80284868 002804C8 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
-/* 8028486C 002804CC 90 C4 80 00 */ stw r6, -0x8000(r4)
-/* 80284870 002804D0 90 C7 02 20 */ stw r6, 0x220(r7)
-/* 80284874 002804D4 B0 07 00 02 */ sth r0, 2(r7)
-/* 80284878 002804D8 4E 80 00 20 */ blr
-
-.global func_8028487C
-func_8028487C:
-/* 8028487C 002804DC 81 02 A0 D0 */ lwz r8, lbl_806426D0-_SDA2_BASE_(r2)
-/* 80284880 002804E0 3C A0 CC 01 */ lis r5, 0xCC008000@ha
-/* 80284884 002804E4 38 C0 00 61 */ li r6, 0x61
-/* 80284888 002804E8 38 00 00 00 */ li r0, 0
-/* 8028488C 002804EC 80 E8 02 24 */ lwz r7, 0x224(r8)
-/* 80284890 002804F0 50 87 06 3E */ rlwimi r7, r4, 0, 0x18, 0x1f
-/* 80284894 002804F4 50 67 45 EE */ rlwimi r7, r3, 8, 0x17, 0x17
-/* 80284898 002804F8 98 C5 80 00 */ stb r6, 0xCC008000@l(r5)
-/* 8028489C 002804FC 90 E5 80 00 */ stw r7, -0x8000(r5)
-/* 802848A0 00280500 90 E8 02 24 */ stw r7, 0x224(r8)
-/* 802848A4 00280504 B0 08 00 02 */ sth r0, 2(r8)
-/* 802848A8 00280508 4E 80 00 20 */ blr
-
-.global func_802848AC
-func_802848AC:
-/* 802848AC 0028050C 3C A0 CC 01 */ lis r5, 0xCC008000@ha
-/* 802848B0 00280510 38 00 00 61 */ li r0, 0x61
-/* 802848B4 00280514 98 05 80 00 */ stb r0, 0xCC008000@l(r5)
-/* 802848B8 00280518 38 00 00 44 */ li r0, 0x44
-/* 802848BC 0028051C 38 C0 00 00 */ li r6, 0
-/* 802848C0 00280520 50 86 07 FE */ rlwimi r6, r4, 0, 0x1f, 0x1f
-/* 802848C4 00280524 50 66 0F BC */ rlwimi r6, r3, 1, 0x1e, 0x1e
-/* 802848C8 00280528 80 62 A0 D0 */ lwz r3, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802848CC 0028052C 50 06 C0 0E */ rlwimi r6, r0, 0x18, 0, 7
-/* 802848D0 00280530 38 00 00 00 */ li r0, 0
-/* 802848D4 00280534 90 C5 80 00 */ stw r6, -0x8000(r5)
-/* 802848D8 00280538 B0 03 00 02 */ sth r0, 2(r3)
-/* 802848DC 0028053C 4E 80 00 20 */ blr
-
-.global func_802848E0
-func_802848E0:
-/* 802848E0 00280540 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 802848E4 00280544 7C 08 02 A6 */ mflr r0
-/* 802848E8 00280548 80 A2 A0 D0 */ lwz r5, lbl_806426D0-_SDA2_BASE_(r2)
-/* 802848EC 0028054C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 802848F0 00280550 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 802848F4 00280554 3F E0 CC 01 */ lis r31, 0xCC008000@ha
-/* 802848F8 00280558 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 802848FC 0028055C 3B C0 00 61 */ li r30, 0x61
-/* 80284900 00280560 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 80284904 00280564 7C 7D 1B 78 */ mr r29, r3
-/* 80284908 00280568 80 05 00 7C */ lwz r0, 0x7c(r5)
-/* 8028490C 0028056C 50 80 B2 52 */ rlwimi r0, r4, 0x16, 9, 9
-/* 80284910 00280570 90 05 00 7C */ stw r0, 0x7c(r5)
-/* 80284914 00280574 9B DF 80 00 */ stb r30, 0xCC008000@l(r31)
-/* 80284918 00280578 80 05 00 7C */ lwz r0, 0x7c(r5)
-/* 8028491C 0028057C 90 1F 80 00 */ stw r0, -0x8000(r31)
-/* 80284920 00280580 4B FF F1 FD */ bl func_80283B1C
-/* 80284924 00280584 9B DF 80 00 */ stb r30, -0x8000(r31)
-/* 80284928 00280588 67 A0 68 00 */ oris r0, r29, 0x6800
-/* 8028492C 0028058C 90 1F 80 00 */ stw r0, -0x8000(r31)
-/* 80284930 00280590 4B FF F1 ED */ bl func_80283B1C
-/* 80284934 00280594 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80284938 00280598 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8028493C 0028059C 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80284940 002805A0 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 80284944 002805A4 7C 08 03 A6 */ mtlr r0
-/* 80284948 002805A8 38 21 00 20 */ addi r1, r1, 0x20
-/* 8028494C 002805AC 4E 80 00 20 */ blr
-
.global func_80284950
func_80284950:
/* 80284950 002805B0 94 21 FF C0 */ stwu r1, -0x40(r1)
@@ -29139,7 +26550,7 @@ func_8029BA4C:
/* 8029BAAC 0029770C 80 E9 00 04 */ lwz r7, 4(r9)
/* 8029BAB0 00297710 81 09 00 0C */ lwz r8, 0xc(r9)
/* 8029BAB4 00297714 81 29 00 10 */ lwz r9, 0x10(r9)
-/* 8029BAB8 00297718 4B FE 6C 19 */ bl func_802826D0
+/* 8029BAB8 00297718 4B FE 6C 19 */ bl GXInitTexObj
/* 8029BABC 0029771C 7C FE F8 2E */ lwzx r7, r30, r31
/* 8029BAC0 00297720 3C A0 43 30 */ lis r5, 0x4330
/* 8029BAC4 00297724 90 A1 00 08 */ stw r5, 8(r1)
@@ -29160,7 +26571,7 @@ func_8029BA4C:
/* 8029BB00 00297760 C0 67 00 1C */ lfs f3, 0x1c(r7)
/* 8029BB04 00297764 EC 40 10 28 */ fsubs f2, f0, f2
/* 8029BB08 00297768 88 E7 00 20 */ lbz r7, 0x20(r7)
-/* 8029BB0C 0029776C 4B FE 6E 19 */ bl func_80282924
+/* 8029BB0C 0029776C 4B FE 6E 19 */ bl GXInitTexObjLOD
/* 8029BB10 00297770 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8029BB14 00297774 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8029BB18 00297778 83 C1 00 28 */ lwz r30, 0x28(r1)
diff --git a/obj_files.mk b/obj_files.mk
index b03c24b..67af513 100644
--- a/obj_files.mk
+++ b/obj_files.mk
@@ -166,6 +166,10 @@ TEXT_O_FILES := \
$(BUILD_DIR)/asm/SDK/GX/GXGeometry.o \
$(BUILD_DIR)/asm/SDK/GX/GXFrameBuf.o \
$(BUILD_DIR)/asm/SDK/GX/GXLight.o \
+ $(BUILD_DIR)/asm/SDK/GX/GXTexture.o \
+ $(BUILD_DIR)/asm/SDK/GX/GXBump.o \
+ $(BUILD_DIR)/asm/SDK/GX/GXTev.o \
+ $(BUILD_DIR)/asm/SDK/GX/GXPixel.o \
$(BUILD_DIR)/asm/text_8.o \
$(BUILD_DIR)/asm/text_9.o \
$(BUILD_DIR)/asm/text_10.o \