From c19d9b02be5d894f91cd45884eed67152dffffa4 Mon Sep 17 00:00:00 2001 From: hatal175 Date: Tue, 6 Feb 2024 07:04:35 +0200 Subject: [PATCH] J3D work (#2064) --- ...6J3DMaterialTableFP19J3DAnmTextureSRTKey.s | 87 ----- ...mator__16J3DMaterialTableFP11J3DAnmColor.s | 62 --- ...r__16J3DMaterialTableFP15J3DAnmTevRegKey.s | 110 ------ ...__16J3DMaterialTableFP16J3DAnmTexPattern.s | 72 ---- ...r__16J3DMaterialTableFP15J3DAnmTevRegKey.s | 93 ----- ...6J3DMaterialTableFP19J3DAnmTextureSRTKey.s | 58 --- ...__16J3DMaterialTableFP16J3DAnmTexPattern.s | 54 --- .../setEffectMtx__13J3DTexMtxInfoFPA4_f.s | 19 - .../J3DGDLoadPostTexMtxImm__FPA4_fUl.s | 348 ----------------- ...GDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType.s | 355 ------------------ .../J3DTevs/loadPostTexMtx__9J3DTexMtxCFUl.s | 26 -- .../J3DTevs/loadTexMtx__9J3DTexMtxCFUl.s | 27 -- ...ewMatColor__22J3DMaterialFactory_v21CFii.s | 26 -- ...wTevKColor__22J3DMaterialFactory_v21CFii.s | 26 -- ...pModeTable__22J3DMaterialFactory_v21CFii.s | 41 -- .../__ct__11J3DTevStageFRC15J3DTevStageInfo.s | 25 -- .../JSystem/J3DGraphAnimator/J3DAnimation.h | 15 +- .../JSystem/J3DGraphAnimator/J3DMaterialAnm.h | 33 +- .../J3DGraphAnimator/J3DMaterialAttach.h | 10 +- include/JSystem/J3DGraphBase/J3DMatBlock.h | 10 +- include/JSystem/J3DGraphBase/J3DMaterial.h | 2 + include/JSystem/J3DGraphBase/J3DStruct.h | 2 + include/JSystem/J3DGraphBase/J3DTevs.h | 109 +++++- include/JSystem/J3DGraphBase/J3DTexture.h | 6 + libs/JSystem/J2DGraph/J2DMaterial.cpp | 4 +- .../J3DGraphAnimator/J3DMaterialAttach.cpp | 302 ++++++++++----- libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp | 16 +- libs/JSystem/J3DGraphBase/J3DStruct.cpp | 42 +-- libs/JSystem/J3DGraphBase/J3DTevs.cpp | 243 ++++-------- .../J3DGraphLoader/J3DMaterialFactory_v21.cpp | 80 ++-- src/d/d_resorce.cpp | 39 +- src/m_Do/m_Do_ext.cpp | 4 +- 32 files changed, 514 insertions(+), 1832 deletions(-) delete mode 100644 asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/createTexMtxForAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s delete mode 100644 asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor.s delete mode 100644 asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s delete mode 100644 asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s delete mode 100644 asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s delete mode 100644 asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s delete mode 100644 asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DStruct/setEffectMtx__13J3DTexMtxInfoFPA4_f.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadPostTexMtxImm__FPA4_fUl.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DTevs/loadPostTexMtx__9J3DTexMtxCFUl.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DTevs/loadTexMtx__9J3DTexMtxCFUl.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newMatColor__22J3DMaterialFactory_v21CFii.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevKColor__22J3DMaterialFactory_v21CFii.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevSwapModeTable__22J3DMaterialFactory_v21CFii.s delete mode 100644 asm/d/d_resorce/__ct__11J3DTevStageFRC15J3DTevStageInfo.s diff --git a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/createTexMtxForAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s b/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/createTexMtxForAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s deleted file mode 100644 index 08400c3124..0000000000 --- a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/createTexMtxForAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s +++ /dev/null @@ -1,87 +0,0 @@ -lbl_8032F9C0: -/* 8032F9C0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8032F9C4 7C 08 02 A6 */ mflr r0 -/* 8032F9C8 90 01 00 34 */ stw r0, 0x34(r1) -/* 8032F9CC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032F9D0 48 03 27 F9 */ bl _savegpr_24 -/* 8032F9D4 7C 7C 1B 78 */ mr r28, r3 -/* 8032F9D8 7C 9D 23 78 */ mr r29, r4 -/* 8032F9DC 3B E0 00 00 */ li r31, 0 -/* 8032F9E0 A0 64 00 14 */ lhz r3, 0x14(r4) -/* 8032F9E4 38 00 00 03 */ li r0, 3 -/* 8032F9E8 7C 03 03 D6 */ divw r0, r3, r0 -/* 8032F9EC 54 1B 04 3E */ clrlwi r27, r0, 0x10 -/* 8032F9F0 A0 1C 00 1C */ lhz r0, 0x1c(r28) -/* 8032F9F4 28 00 00 01 */ cmplwi r0, 1 -/* 8032F9F8 40 82 00 0C */ bne lbl_8032FA04 -/* 8032F9FC 38 60 00 02 */ li r3, 2 -/* 8032FA00 48 00 00 DC */ b lbl_8032FADC -lbl_8032FA04: -/* 8032FA04 3B C0 00 00 */ li r30, 0 -/* 8032FA08 48 00 00 C4 */ b lbl_8032FACC -lbl_8032FA0C: -/* 8032FA0C 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 8032FA10 57 C4 04 3E */ clrlwi r4, r30, 0x10 -/* 8032FA14 57 C0 0B FC */ rlwinm r0, r30, 1, 0xf, 0x1e -/* 8032FA18 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032FA1C 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032FA20 41 82 00 A8 */ beq lbl_8032FAC8 -/* 8032FA24 80 7C 00 08 */ lwz r3, 8(r28) -/* 8032FA28 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032FA2C 7F 43 00 2E */ lwzx r26, r3, r0 -/* 8032FA30 80 7D 00 28 */ lwz r3, 0x28(r29) -/* 8032FA34 7C 83 20 AE */ lbzx r4, r3, r4 -/* 8032FA38 80 7A 00 3C */ lwz r3, 0x3c(r26) -/* 8032FA3C 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032FA40 7C 03 00 40 */ cmplw r3, r0 -/* 8032FA44 40 80 00 08 */ bge lbl_8032FA4C -/* 8032FA48 48 00 00 08 */ b lbl_8032FA50 -lbl_8032FA4C: -/* 8032FA4C 38 60 00 00 */ li r3, 0 -lbl_8032FA50: -/* 8032FA50 28 03 00 00 */ cmplwi r3, 0 -/* 8032FA54 40 82 00 0C */ bne lbl_8032FA60 -/* 8032FA58 3B E0 00 01 */ li r31, 1 -/* 8032FA5C 48 00 00 6C */ b lbl_8032FAC8 -lbl_8032FA60: -/* 8032FA60 54 98 06 3E */ clrlwi r24, r4, 0x18 -/* 8032FA64 28 18 00 FF */ cmplwi r24, 0xff -/* 8032FA68 41 82 00 60 */ beq lbl_8032FAC8 -/* 8032FA6C 80 7A 00 28 */ lwz r3, 0x28(r26) -/* 8032FA70 7F 04 C3 78 */ mr r4, r24 -/* 8032FA74 81 83 00 00 */ lwz r12, 0(r3) -/* 8032FA78 81 8C 00 50 */ lwz r12, 0x50(r12) -/* 8032FA7C 7D 89 03 A6 */ mtctr r12 -/* 8032FA80 4E 80 04 21 */ bctrl -/* 8032FA84 28 03 00 00 */ cmplwi r3, 0 -/* 8032FA88 40 82 00 40 */ bne lbl_8032FAC8 -/* 8032FA8C 38 60 00 94 */ li r3, 0x94 -/* 8032FA90 4B F9 F1 BD */ bl __nw__FUl -/* 8032FA94 7C 79 1B 79 */ or. r25, r3, r3 -/* 8032FA98 41 82 00 10 */ beq lbl_8032FAA8 -/* 8032FA9C 3C 80 80 3A */ lis r4, j3dDefaultTexMtxInfo@ha /* 0x803A1F1C@ha */ -/* 8032FAA0 38 84 1F 1C */ addi r4, r4, j3dDefaultTexMtxInfo@l /* 0x803A1F1C@l */ -/* 8032FAA4 4B FF 5C 75 */ bl __as__13J3DTexMtxInfoFRC13J3DTexMtxInfo -lbl_8032FAA8: -/* 8032FAA8 3B E0 00 04 */ li r31, 4 -/* 8032FAAC 80 7A 00 28 */ lwz r3, 0x28(r26) -/* 8032FAB0 7F 04 C3 78 */ mr r4, r24 -/* 8032FAB4 7F 25 CB 78 */ mr r5, r25 -/* 8032FAB8 81 83 00 00 */ lwz r12, 0(r3) -/* 8032FABC 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8032FAC0 7D 89 03 A6 */ mtctr r12 -/* 8032FAC4 4E 80 04 21 */ bctrl -lbl_8032FAC8: -/* 8032FAC8 3B DE 00 01 */ addi r30, r30, 1 -lbl_8032FACC: -/* 8032FACC 57 C0 04 3E */ clrlwi r0, r30, 0x10 -/* 8032FAD0 7C 00 D8 40 */ cmplw r0, r27 -/* 8032FAD4 41 80 FF 38 */ blt lbl_8032FA0C -/* 8032FAD8 7F E3 FB 78 */ mr r3, r31 -lbl_8032FADC: -/* 8032FADC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FAE0 48 03 27 35 */ bl _restgpr_24 -/* 8032FAE4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8032FAE8 7C 08 03 A6 */ mtlr r0 -/* 8032FAEC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8032FAF0 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor.s b/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor.s deleted file mode 100644 index 8be8897a41..0000000000 --- a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor.s +++ /dev/null @@ -1,62 +0,0 @@ -lbl_8032FAF4: -/* 8032FAF4 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8032FAF8 7C 08 02 A6 */ mflr r0 -/* 8032FAFC 90 01 00 34 */ stw r0, 0x34(r1) -/* 8032FB00 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FB04 48 03 26 D1 */ bl _savegpr_27 -/* 8032FB08 7C 7E 1B 78 */ mr r30, r3 -/* 8032FB0C 7C 9F 23 78 */ mr r31, r4 -/* 8032FB10 3B 80 00 00 */ li r28, 0 -/* 8032FB14 A0 64 00 14 */ lhz r3, 0x14(r4) -/* 8032FB18 A0 1E 00 1C */ lhz r0, 0x1c(r30) -/* 8032FB1C 28 00 00 01 */ cmplwi r0, 1 -/* 8032FB20 40 82 00 0C */ bne lbl_8032FB2C -/* 8032FB24 38 60 00 02 */ li r3, 2 -/* 8032FB28 48 00 00 88 */ b lbl_8032FBB0 -lbl_8032FB2C: -/* 8032FB2C 3B 60 00 00 */ li r27, 0 -/* 8032FB30 54 7D 04 3E */ clrlwi r29, r3, 0x10 -/* 8032FB34 48 00 00 6C */ b lbl_8032FBA0 -lbl_8032FB38: -/* 8032FB38 80 7F 00 18 */ lwz r3, 0x18(r31) -/* 8032FB3C 57 60 0B FC */ rlwinm r0, r27, 1, 0xf, 0x1e -/* 8032FB40 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032FB44 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032FB48 41 82 00 54 */ beq lbl_8032FB9C -/* 8032FB4C 80 7E 00 08 */ lwz r3, 8(r30) -/* 8032FB50 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032FB54 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032FB58 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032FB5C 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032FB60 7C 03 00 40 */ cmplw r3, r0 -/* 8032FB64 40 80 00 08 */ bge lbl_8032FB6C -/* 8032FB68 48 00 00 08 */ b lbl_8032FB70 -lbl_8032FB6C: -/* 8032FB6C 38 60 00 00 */ li r3, 0 -lbl_8032FB70: -/* 8032FB70 28 03 00 00 */ cmplwi r3, 0 -/* 8032FB74 40 82 00 0C */ bne lbl_8032FB80 -/* 8032FB78 3B 80 00 01 */ li r28, 1 -/* 8032FB7C 48 00 00 20 */ b lbl_8032FB9C -lbl_8032FB80: -/* 8032FB80 B3 61 00 08 */ sth r27, 8(r1) -/* 8032FB84 38 00 00 01 */ li r0, 1 -/* 8032FB88 B0 01 00 0A */ sth r0, 0xa(r1) -/* 8032FB8C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8032FB90 38 80 00 00 */ li r4, 0 -/* 8032FB94 38 A1 00 08 */ addi r5, r1, 8 -/* 8032FB98 4B FF CA 0D */ bl setMatColorAnm__14J3DMaterialAnmFiP14J3DMatColorAnm -lbl_8032FB9C: -/* 8032FB9C 3B 7B 00 01 */ addi r27, r27, 1 -lbl_8032FBA0: -/* 8032FBA0 57 60 04 3E */ clrlwi r0, r27, 0x10 -/* 8032FBA4 7C 00 E8 40 */ cmplw r0, r29 -/* 8032FBA8 41 80 FF 90 */ blt lbl_8032FB38 -/* 8032FBAC 7F 83 E3 78 */ mr r3, r28 -lbl_8032FBB0: -/* 8032FBB0 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FBB4 48 03 26 6D */ bl _restgpr_27 -/* 8032FBB8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8032FBBC 7C 08 03 A6 */ mtlr r0 -/* 8032FBC0 38 21 00 30 */ addi r1, r1, 0x30 -/* 8032FBC4 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s b/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s deleted file mode 100644 index 5a41757821..0000000000 --- a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s +++ /dev/null @@ -1,110 +0,0 @@ -lbl_8032FE70: -/* 8032FE70 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8032FE74 7C 08 02 A6 */ mflr r0 -/* 8032FE78 90 01 00 34 */ stw r0, 0x34(r1) -/* 8032FE7C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FE80 48 03 23 51 */ bl _savegpr_26 -/* 8032FE84 7C 7B 1B 78 */ mr r27, r3 -/* 8032FE88 7C 9C 23 78 */ mr r28, r4 -/* 8032FE8C 3B C0 00 00 */ li r30, 0 -/* 8032FE90 A0 64 00 0C */ lhz r3, 0xc(r4) -/* 8032FE94 A3 E4 00 0E */ lhz r31, 0xe(r4) -/* 8032FE98 A0 1B 00 1C */ lhz r0, 0x1c(r27) -/* 8032FE9C 28 00 00 01 */ cmplwi r0, 1 -/* 8032FEA0 40 82 00 0C */ bne lbl_8032FEAC -/* 8032FEA4 38 60 00 02 */ li r3, 2 -/* 8032FEA8 48 00 01 2C */ b lbl_8032FFD4 -lbl_8032FEAC: -/* 8032FEAC 3B A0 00 00 */ li r29, 0 -/* 8032FEB0 54 7A 04 3E */ clrlwi r26, r3, 0x10 -/* 8032FEB4 48 00 00 80 */ b lbl_8032FF34 -lbl_8032FEB8: -/* 8032FEB8 80 7C 00 20 */ lwz r3, 0x20(r28) -/* 8032FEBC 57 A4 04 3E */ clrlwi r4, r29, 0x10 -/* 8032FEC0 57 A0 0B FC */ rlwinm r0, r29, 1, 0xf, 0x1e -/* 8032FEC4 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032FEC8 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032FECC 41 82 00 64 */ beq lbl_8032FF30 -/* 8032FED0 80 7B 00 08 */ lwz r3, 8(r27) -/* 8032FED4 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032FED8 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032FEDC 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032FEE0 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032FEE4 7C 03 00 40 */ cmplw r3, r0 -/* 8032FEE8 40 80 00 08 */ bge lbl_8032FEF0 -/* 8032FEEC 48 00 00 08 */ b lbl_8032FEF4 -lbl_8032FEF0: -/* 8032FEF0 38 60 00 00 */ li r3, 0 -lbl_8032FEF4: -/* 8032FEF4 80 BC 00 48 */ lwz r5, 0x48(r28) -/* 8032FEF8 1C 84 00 1C */ mulli r4, r4, 0x1c -/* 8032FEFC 38 04 00 18 */ addi r0, r4, 0x18 -/* 8032FF00 7C 85 00 AE */ lbzx r4, r5, r0 -/* 8032FF04 28 03 00 00 */ cmplwi r3, 0 -/* 8032FF08 40 82 00 0C */ bne lbl_8032FF14 -/* 8032FF0C 3B C0 00 01 */ li r30, 1 -/* 8032FF10 48 00 00 20 */ b lbl_8032FF30 -lbl_8032FF14: -/* 8032FF14 B3 A1 00 10 */ sth r29, 0x10(r1) -/* 8032FF18 38 00 00 01 */ li r0, 1 -/* 8032FF1C B0 01 00 12 */ sth r0, 0x12(r1) -/* 8032FF20 93 81 00 14 */ stw r28, 0x14(r1) -/* 8032FF24 54 84 06 3E */ clrlwi r4, r4, 0x18 -/* 8032FF28 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8032FF2C 4B FF C7 39 */ bl setTevColorAnm__14J3DMaterialAnmFiP14J3DTevColorAnm -lbl_8032FF30: -/* 8032FF30 3B BD 00 01 */ addi r29, r29, 1 -lbl_8032FF34: -/* 8032FF34 57 A0 04 3E */ clrlwi r0, r29, 0x10 -/* 8032FF38 7C 00 D0 40 */ cmplw r0, r26 -/* 8032FF3C 41 80 FF 7C */ blt lbl_8032FEB8 -/* 8032FF40 3B A0 00 00 */ li r29, 0 -/* 8032FF44 57 FF 04 3E */ clrlwi r31, r31, 0x10 -/* 8032FF48 48 00 00 7C */ b lbl_8032FFC4 -lbl_8032FF4C: -/* 8032FF4C 80 7C 00 34 */ lwz r3, 0x34(r28) -/* 8032FF50 57 A4 04 3E */ clrlwi r4, r29, 0x10 -/* 8032FF54 57 A0 0B FC */ rlwinm r0, r29, 1, 0xf, 0x1e -/* 8032FF58 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032FF5C 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032FF60 41 82 00 60 */ beq lbl_8032FFC0 -/* 8032FF64 80 7B 00 08 */ lwz r3, 8(r27) -/* 8032FF68 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032FF6C 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032FF70 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032FF74 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032FF78 7C 03 00 40 */ cmplw r3, r0 -/* 8032FF7C 40 80 00 08 */ bge lbl_8032FF84 -/* 8032FF80 48 00 00 08 */ b lbl_8032FF88 -lbl_8032FF84: -/* 8032FF84 38 60 00 00 */ li r3, 0 -lbl_8032FF88: -/* 8032FF88 80 BC 00 4C */ lwz r5, 0x4c(r28) -/* 8032FF8C 1C 84 00 1C */ mulli r4, r4, 0x1c -/* 8032FF90 38 04 00 18 */ addi r0, r4, 0x18 -/* 8032FF94 7C 85 00 AE */ lbzx r4, r5, r0 -/* 8032FF98 28 03 00 00 */ cmplwi r3, 0 -/* 8032FF9C 40 82 00 0C */ bne lbl_8032FFA8 -/* 8032FFA0 3B C0 00 01 */ li r30, 1 -/* 8032FFA4 48 00 00 1C */ b lbl_8032FFC0 -lbl_8032FFA8: -/* 8032FFA8 B3 A1 00 08 */ sth r29, 8(r1) -/* 8032FFAC 38 00 00 01 */ li r0, 1 -/* 8032FFB0 B0 01 00 0A */ sth r0, 0xa(r1) -/* 8032FFB4 93 81 00 0C */ stw r28, 0xc(r1) -/* 8032FFB8 38 A1 00 08 */ addi r5, r1, 8 -/* 8032FFBC 4B FF C6 E9 */ bl setTevKColorAnm__14J3DMaterialAnmFiP15J3DTevKColorAnm -lbl_8032FFC0: -/* 8032FFC0 3B BD 00 01 */ addi r29, r29, 1 -lbl_8032FFC4: -/* 8032FFC4 57 A0 04 3E */ clrlwi r0, r29, 0x10 -/* 8032FFC8 7C 00 F8 40 */ cmplw r0, r31 -/* 8032FFCC 41 80 FF 80 */ blt lbl_8032FF4C -/* 8032FFD0 7F C3 F3 78 */ mr r3, r30 -lbl_8032FFD4: -/* 8032FFD4 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FFD8 48 03 22 45 */ bl _restgpr_26 -/* 8032FFDC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8032FFE0 7C 08 03 A6 */ mtlr r0 -/* 8032FFE4 38 21 00 30 */ addi r1, r1, 0x30 -/* 8032FFE8 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s b/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s deleted file mode 100644 index 0e29298318..0000000000 --- a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s +++ /dev/null @@ -1,72 +0,0 @@ -lbl_8032FBC8: -/* 8032FBC8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8032FBCC 7C 08 02 A6 */ mflr r0 -/* 8032FBD0 90 01 00 34 */ stw r0, 0x34(r1) -/* 8032FBD4 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FBD8 48 03 25 FD */ bl _savegpr_27 -/* 8032FBDC 7C 7C 1B 78 */ mr r28, r3 -/* 8032FBE0 7C 9D 23 78 */ mr r29, r4 -/* 8032FBE4 3B E0 00 00 */ li r31, 0 -/* 8032FBE8 A0 64 00 16 */ lhz r3, 0x16(r4) -/* 8032FBEC A0 1C 00 1C */ lhz r0, 0x1c(r28) -/* 8032FBF0 28 00 00 01 */ cmplwi r0, 1 -/* 8032FBF4 40 82 00 0C */ bne lbl_8032FC00 -/* 8032FBF8 38 60 00 02 */ li r3, 2 -/* 8032FBFC 48 00 00 B0 */ b lbl_8032FCAC -lbl_8032FC00: -/* 8032FC00 3B C0 00 00 */ li r30, 0 -/* 8032FC04 54 7B 04 3E */ clrlwi r27, r3, 0x10 -/* 8032FC08 48 00 00 94 */ b lbl_8032FC9C -lbl_8032FC0C: -/* 8032FC0C 80 7D 00 18 */ lwz r3, 0x18(r29) -/* 8032FC10 57 C4 04 3E */ clrlwi r4, r30, 0x10 -/* 8032FC14 57 C0 0B FC */ rlwinm r0, r30, 1, 0xf, 0x1e -/* 8032FC18 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032FC1C 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032FC20 41 82 00 78 */ beq lbl_8032FC98 -/* 8032FC24 80 7C 00 08 */ lwz r3, 8(r28) -/* 8032FC28 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032FC2C 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032FC30 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032FC34 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032FC38 7C 03 00 40 */ cmplw r3, r0 -/* 8032FC3C 40 80 00 08 */ bge lbl_8032FC44 -/* 8032FC40 48 00 00 08 */ b lbl_8032FC48 -lbl_8032FC44: -/* 8032FC44 38 60 00 00 */ li r3, 0 -lbl_8032FC48: -/* 8032FC48 80 BD 00 10 */ lwz r5, 0x10(r29) -/* 8032FC4C 54 84 18 38 */ slwi r4, r4, 3 -/* 8032FC50 38 04 00 04 */ addi r0, r4, 4 -/* 8032FC54 7C 85 00 AE */ lbzx r4, r5, r0 -/* 8032FC58 28 03 00 00 */ cmplwi r3, 0 -/* 8032FC5C 40 82 00 0C */ bne lbl_8032FC68 -/* 8032FC60 3B E0 00 01 */ li r31, 1 -/* 8032FC64 48 00 00 34 */ b lbl_8032FC98 -lbl_8032FC68: -/* 8032FC68 3C A0 80 3A */ lis r5, __vt__11J3DTexNoAnm@ha /* 0x803A7C84@ha */ -/* 8032FC6C 38 05 7C 84 */ addi r0, r5, __vt__11J3DTexNoAnm@l /* 0x803A7C84@l */ -/* 8032FC70 90 01 00 08 */ stw r0, 8(r1) -/* 8032FC74 B3 C1 00 0C */ sth r30, 0xc(r1) -/* 8032FC78 38 00 00 01 */ li r0, 1 -/* 8032FC7C B0 01 00 0E */ sth r0, 0xe(r1) -/* 8032FC80 93 A1 00 10 */ stw r29, 0x10(r1) -/* 8032FC84 38 A1 00 08 */ addi r5, r1, 8 -/* 8032FC88 4B FF C9 9D */ bl setTexNoAnm__14J3DMaterialAnmFiP11J3DTexNoAnm -/* 8032FC8C 3C 60 80 3A */ lis r3, __vt__11J3DTexNoAnm@ha /* 0x803A7C84@ha */ -/* 8032FC90 38 03 7C 84 */ addi r0, r3, __vt__11J3DTexNoAnm@l /* 0x803A7C84@l */ -/* 8032FC94 90 01 00 08 */ stw r0, 8(r1) -lbl_8032FC98: -/* 8032FC98 3B DE 00 01 */ addi r30, r30, 1 -lbl_8032FC9C: -/* 8032FC9C 57 C0 04 3E */ clrlwi r0, r30, 0x10 -/* 8032FCA0 7C 00 D8 40 */ cmplw r0, r27 -/* 8032FCA4 41 80 FF 68 */ blt lbl_8032FC0C -/* 8032FCA8 7F E3 FB 78 */ mr r3, r31 -lbl_8032FCAC: -/* 8032FCAC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FCB0 48 03 25 71 */ bl _restgpr_27 -/* 8032FCB4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8032FCB8 7C 08 03 A6 */ mtlr r0 -/* 8032FCBC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8032FCC0 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s b/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s deleted file mode 100644 index 6b66621b09..0000000000 --- a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s +++ /dev/null @@ -1,93 +0,0 @@ -lbl_8032F880: -/* 8032F880 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8032F884 7C 08 02 A6 */ mflr r0 -/* 8032F888 90 01 00 24 */ stw r0, 0x24(r1) -/* 8032F88C 39 61 00 20 */ addi r11, r1, 0x20 -/* 8032F890 48 03 29 41 */ bl _savegpr_26 -/* 8032F894 7C 7B 1B 78 */ mr r27, r3 -/* 8032F898 7C 9C 23 78 */ mr r28, r4 -/* 8032F89C 3B C0 00 00 */ li r30, 0 -/* 8032F8A0 A3 44 00 0C */ lhz r26, 0xc(r4) -/* 8032F8A4 A3 E4 00 0E */ lhz r31, 0xe(r4) -/* 8032F8A8 3B A0 00 00 */ li r29, 0 -/* 8032F8AC 48 00 00 6C */ b lbl_8032F918 -lbl_8032F8B0: -/* 8032F8B0 80 7C 00 20 */ lwz r3, 0x20(r28) -/* 8032F8B4 57 A4 04 3E */ clrlwi r4, r29, 0x10 -/* 8032F8B8 57 A0 0B FC */ rlwinm r0, r29, 1, 0xf, 0x1e -/* 8032F8BC 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032F8C0 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032F8C4 41 82 00 50 */ beq lbl_8032F914 -/* 8032F8C8 80 7B 00 08 */ lwz r3, 8(r27) -/* 8032F8CC 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032F8D0 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032F8D4 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032F8D8 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032F8DC 7C 03 00 40 */ cmplw r3, r0 -/* 8032F8E0 40 80 00 08 */ bge lbl_8032F8E8 -/* 8032F8E4 48 00 00 08 */ b lbl_8032F8EC -lbl_8032F8E8: -/* 8032F8E8 38 60 00 00 */ li r3, 0 -lbl_8032F8EC: -/* 8032F8EC 80 BC 00 48 */ lwz r5, 0x48(r28) -/* 8032F8F0 1C 84 00 1C */ mulli r4, r4, 0x1c -/* 8032F8F4 38 04 00 18 */ addi r0, r4, 0x18 -/* 8032F8F8 7C 85 00 AE */ lbzx r4, r5, r0 -/* 8032F8FC 28 03 00 00 */ cmplwi r3, 0 -/* 8032F900 40 82 00 0C */ bne lbl_8032F90C -/* 8032F904 3B C0 00 01 */ li r30, 1 -/* 8032F908 48 00 00 0C */ b lbl_8032F914 -lbl_8032F90C: -/* 8032F90C 38 A0 00 00 */ li r5, 0 -/* 8032F910 4B FF CD 55 */ bl setTevColorAnm__14J3DMaterialAnmFiP14J3DTevColorAnm -lbl_8032F914: -/* 8032F914 3B BD 00 01 */ addi r29, r29, 1 -lbl_8032F918: -/* 8032F918 57 A0 04 3E */ clrlwi r0, r29, 0x10 -/* 8032F91C 7C 00 D0 40 */ cmplw r0, r26 -/* 8032F920 41 80 FF 90 */ blt lbl_8032F8B0 -/* 8032F924 3B A0 00 00 */ li r29, 0 -/* 8032F928 57 FF 04 3E */ clrlwi r31, r31, 0x10 -/* 8032F92C 48 00 00 6C */ b lbl_8032F998 -lbl_8032F930: -/* 8032F930 80 7C 00 34 */ lwz r3, 0x34(r28) -/* 8032F934 57 A4 04 3E */ clrlwi r4, r29, 0x10 -/* 8032F938 57 A0 0B FC */ rlwinm r0, r29, 1, 0xf, 0x1e -/* 8032F93C 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032F940 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032F944 41 82 00 50 */ beq lbl_8032F994 -/* 8032F948 80 7B 00 08 */ lwz r3, 8(r27) -/* 8032F94C 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032F950 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032F954 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032F958 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032F95C 7C 03 00 40 */ cmplw r3, r0 -/* 8032F960 40 80 00 08 */ bge lbl_8032F968 -/* 8032F964 48 00 00 08 */ b lbl_8032F96C -lbl_8032F968: -/* 8032F968 38 60 00 00 */ li r3, 0 -lbl_8032F96C: -/* 8032F96C 80 BC 00 4C */ lwz r5, 0x4c(r28) -/* 8032F970 1C 84 00 1C */ mulli r4, r4, 0x1c -/* 8032F974 38 04 00 18 */ addi r0, r4, 0x18 -/* 8032F978 7C 85 00 AE */ lbzx r4, r5, r0 -/* 8032F97C 28 03 00 00 */ cmplwi r3, 0 -/* 8032F980 40 82 00 0C */ bne lbl_8032F98C -/* 8032F984 3B C0 00 01 */ li r30, 1 -/* 8032F988 48 00 00 0C */ b lbl_8032F994 -lbl_8032F98C: -/* 8032F98C 38 A0 00 00 */ li r5, 0 -/* 8032F990 4B FF CD 15 */ bl setTevKColorAnm__14J3DMaterialAnmFiP15J3DTevKColorAnm -lbl_8032F994: -/* 8032F994 3B BD 00 01 */ addi r29, r29, 1 -lbl_8032F998: -/* 8032F998 57 A0 04 3E */ clrlwi r0, r29, 0x10 -/* 8032F99C 7C 00 F8 40 */ cmplw r0, r31 -/* 8032F9A0 41 80 FF 90 */ blt lbl_8032F930 -/* 8032F9A4 7F C3 F3 78 */ mr r3, r30 -/* 8032F9A8 39 61 00 20 */ addi r11, r1, 0x20 -/* 8032F9AC 48 03 28 71 */ bl _restgpr_26 -/* 8032F9B0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8032F9B4 7C 08 03 A6 */ mtlr r0 -/* 8032F9B8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8032F9BC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s b/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s deleted file mode 100644 index 142e0e3375..0000000000 --- a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s +++ /dev/null @@ -1,58 +0,0 @@ -lbl_8032F7B4: -/* 8032F7B4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8032F7B8 7C 08 02 A6 */ mflr r0 -/* 8032F7BC 90 01 00 24 */ stw r0, 0x24(r1) -/* 8032F7C0 39 61 00 20 */ addi r11, r1, 0x20 -/* 8032F7C4 48 03 2A 11 */ bl _savegpr_27 -/* 8032F7C8 7C 7C 1B 78 */ mr r28, r3 -/* 8032F7CC 7C 9D 23 78 */ mr r29, r4 -/* 8032F7D0 3B E0 00 00 */ li r31, 0 -/* 8032F7D4 A0 64 00 14 */ lhz r3, 0x14(r4) -/* 8032F7D8 38 00 00 03 */ li r0, 3 -/* 8032F7DC 7C 03 03 D6 */ divw r0, r3, r0 -/* 8032F7E0 54 1B 04 3E */ clrlwi r27, r0, 0x10 -/* 8032F7E4 3B C0 00 00 */ li r30, 0 -/* 8032F7E8 48 00 00 70 */ b lbl_8032F858 -lbl_8032F7EC: -/* 8032F7EC 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 8032F7F0 57 C5 04 3E */ clrlwi r5, r30, 0x10 -/* 8032F7F4 57 C0 0B FC */ rlwinm r0, r30, 1, 0xf, 0x1e -/* 8032F7F8 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032F7FC 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032F800 41 82 00 54 */ beq lbl_8032F854 -/* 8032F804 80 7C 00 08 */ lwz r3, 8(r28) -/* 8032F808 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032F80C 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032F810 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032F814 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032F818 7C 03 00 40 */ cmplw r3, r0 -/* 8032F81C 40 80 00 08 */ bge lbl_8032F824 -/* 8032F820 48 00 00 08 */ b lbl_8032F828 -lbl_8032F824: -/* 8032F824 38 60 00 00 */ li r3, 0 -lbl_8032F828: -/* 8032F828 80 9D 00 28 */ lwz r4, 0x28(r29) -/* 8032F82C 7C 04 28 AE */ lbzx r0, r4, r5 -/* 8032F830 28 03 00 00 */ cmplwi r3, 0 -/* 8032F834 40 82 00 0C */ bne lbl_8032F840 -/* 8032F838 3B E0 00 01 */ li r31, 1 -/* 8032F83C 48 00 00 18 */ b lbl_8032F854 -lbl_8032F840: -/* 8032F840 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 8032F844 28 04 00 FF */ cmplwi r4, 0xff -/* 8032F848 41 82 00 0C */ beq lbl_8032F854 -/* 8032F84C 38 A0 00 00 */ li r5, 0 -/* 8032F850 4B FF CD 95 */ bl setTexMtxAnm__14J3DMaterialAnmFiP12J3DTexMtxAnm -lbl_8032F854: -/* 8032F854 3B DE 00 01 */ addi r30, r30, 1 -lbl_8032F858: -/* 8032F858 57 C0 04 3E */ clrlwi r0, r30, 0x10 -/* 8032F85C 7C 00 D8 40 */ cmplw r0, r27 -/* 8032F860 41 80 FF 8C */ blt lbl_8032F7EC -/* 8032F864 7F E3 FB 78 */ mr r3, r31 -/* 8032F868 39 61 00 20 */ addi r11, r1, 0x20 -/* 8032F86C 48 03 29 B5 */ bl _restgpr_27 -/* 8032F870 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8032F874 7C 08 03 A6 */ mtlr r0 -/* 8032F878 38 21 00 20 */ addi r1, r1, 0x20 -/* 8032F87C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s b/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s deleted file mode 100644 index 0373a39ee0..0000000000 --- a/asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s +++ /dev/null @@ -1,54 +0,0 @@ -lbl_8032F6F8: -/* 8032F6F8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8032F6FC 7C 08 02 A6 */ mflr r0 -/* 8032F700 90 01 00 24 */ stw r0, 0x24(r1) -/* 8032F704 39 61 00 20 */ addi r11, r1, 0x20 -/* 8032F708 48 03 2A C9 */ bl _savegpr_26 -/* 8032F70C 7C 7B 1B 78 */ mr r27, r3 -/* 8032F710 7C 9C 23 78 */ mr r28, r4 -/* 8032F714 3B E0 00 00 */ li r31, 0 -/* 8032F718 A3 44 00 16 */ lhz r26, 0x16(r4) -/* 8032F71C 83 C4 00 10 */ lwz r30, 0x10(r4) -/* 8032F720 3B A0 00 00 */ li r29, 0 -/* 8032F724 48 00 00 68 */ b lbl_8032F78C -lbl_8032F728: -/* 8032F728 80 7C 00 18 */ lwz r3, 0x18(r28) -/* 8032F72C 57 A4 04 3E */ clrlwi r4, r29, 0x10 -/* 8032F730 57 A0 0B FC */ rlwinm r0, r29, 1, 0xf, 0x1e -/* 8032F734 7C 03 02 2E */ lhzx r0, r3, r0 -/* 8032F738 28 00 FF FF */ cmplwi r0, 0xffff -/* 8032F73C 41 82 00 4C */ beq lbl_8032F788 -/* 8032F740 80 7B 00 08 */ lwz r3, 8(r27) -/* 8032F744 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8032F748 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8032F74C 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 8032F750 3C 00 C0 00 */ lis r0, 0xc000 -/* 8032F754 7C 03 00 40 */ cmplw r3, r0 -/* 8032F758 40 80 00 08 */ bge lbl_8032F760 -/* 8032F75C 48 00 00 08 */ b lbl_8032F764 -lbl_8032F760: -/* 8032F760 38 60 00 00 */ li r3, 0 -lbl_8032F764: -/* 8032F764 54 84 18 38 */ slwi r4, r4, 3 -/* 8032F768 38 04 00 04 */ addi r0, r4, 4 -/* 8032F76C 7C 9E 00 AE */ lbzx r4, r30, r0 -/* 8032F770 28 03 00 00 */ cmplwi r3, 0 -/* 8032F774 40 82 00 0C */ bne lbl_8032F780 -/* 8032F778 3B E0 00 01 */ li r31, 1 -/* 8032F77C 48 00 00 0C */ b lbl_8032F788 -lbl_8032F780: -/* 8032F780 38 A0 00 00 */ li r5, 0 -/* 8032F784 4B FF CE A1 */ bl setTexNoAnm__14J3DMaterialAnmFiP11J3DTexNoAnm -lbl_8032F788: -/* 8032F788 3B BD 00 01 */ addi r29, r29, 1 -lbl_8032F78C: -/* 8032F78C 57 A0 04 3E */ clrlwi r0, r29, 0x10 -/* 8032F790 7C 00 D0 40 */ cmplw r0, r26 -/* 8032F794 41 80 FF 94 */ blt lbl_8032F728 -/* 8032F798 7F E3 FB 78 */ mr r3, r31 -/* 8032F79C 39 61 00 20 */ addi r11, r1, 0x20 -/* 8032F7A0 48 03 2A 7D */ bl _restgpr_26 -/* 8032F7A4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8032F7A8 7C 08 03 A6 */ mtlr r0 -/* 8032F7AC 38 21 00 20 */ addi r1, r1, 0x20 -/* 8032F7B0 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DStruct/setEffectMtx__13J3DTexMtxInfoFPA4_f.s b/asm/JSystem/J3DGraphBase/J3DStruct/setEffectMtx__13J3DTexMtxInfoFPA4_f.s deleted file mode 100644 index d9eb1b5765..0000000000 --- a/asm/JSystem/J3DGraphBase/J3DStruct/setEffectMtx__13J3DTexMtxInfoFPA4_f.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_80325794: -/* 80325794 E0 A4 00 00 */ psq_l f5, 0(r4), 0, 0 /* qr0 */ -/* 80325798 E0 84 00 08 */ psq_l f4, 8(r4), 0, 0 /* qr0 */ -/* 8032579C E0 64 00 10 */ psq_l f3, 16(r4), 0, 0 /* qr0 */ -/* 803257A0 E0 44 00 18 */ psq_l f2, 24(r4), 0, 0 /* qr0 */ -/* 803257A4 E0 24 00 20 */ psq_l f1, 32(r4), 0, 0 /* qr0 */ -/* 803257A8 E0 04 00 28 */ psq_l f0, 40(r4), 0, 0 /* qr0 */ -/* 803257AC F0 A3 00 24 */ psq_st f5, 36(r3), 0, 0 /* qr0 */ -/* 803257B0 F0 83 00 2C */ psq_st f4, 44(r3), 0, 0 /* qr0 */ -/* 803257B4 F0 63 00 34 */ psq_st f3, 52(r3), 0, 0 /* qr0 */ -/* 803257B8 F0 43 00 3C */ psq_st f2, 60(r3), 0, 0 /* qr0 */ -/* 803257BC F0 23 00 44 */ psq_st f1, 68(r3), 0, 0 /* qr0 */ -/* 803257C0 F0 03 00 4C */ psq_st f0, 76(r3), 0, 0 /* qr0 */ -/* 803257C4 C0 C2 CA 14 */ lfs f6, lit_410(r2) -/* 803257C8 F0 C3 00 54 */ psq_st f6, 84(r3), 0, 0 /* qr0 */ -/* 803257CC D0 C3 00 5C */ stfs f6, 0x5c(r3) -/* 803257D0 C0 02 CA 10 */ lfs f0, lit_409(r2) -/* 803257D4 D0 03 00 60 */ stfs f0, 0x60(r3) -/* 803257D8 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadPostTexMtxImm__FPA4_fUl.s b/asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadPostTexMtxImm__FPA4_fUl.s deleted file mode 100644 index 44fbd2fb5b..0000000000 --- a/asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadPostTexMtxImm__FPA4_fUl.s +++ /dev/null @@ -1,348 +0,0 @@ -lbl_8032499C: -/* 8032499C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 803249A0 38 04 FF C0 */ addi r0, r4, -64 -/* 803249A4 54 04 10 3A */ slwi r4, r0, 2 -/* 803249A8 38 E4 05 00 */ addi r7, r4, 0x500 -/* 803249AC 38 C0 00 10 */ li r6, 0x10 -/* 803249B0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803249B4 80 85 00 08 */ lwz r4, 8(r5) -/* 803249B8 38 04 00 01 */ addi r0, r4, 1 -/* 803249BC 90 05 00 08 */ stw r0, 8(r5) -/* 803249C0 98 C4 00 00 */ stb r6, 0(r4) -/* 803249C4 38 C0 00 00 */ li r6, 0 -/* 803249C8 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803249CC 80 85 00 08 */ lwz r4, 8(r5) -/* 803249D0 38 04 00 01 */ addi r0, r4, 1 -/* 803249D4 90 05 00 08 */ stw r0, 8(r5) -/* 803249D8 98 C4 00 00 */ stb r6, 0(r4) -/* 803249DC 38 C0 00 0B */ li r6, 0xb -/* 803249E0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803249E4 80 85 00 08 */ lwz r4, 8(r5) -/* 803249E8 38 04 00 01 */ addi r0, r4, 1 -/* 803249EC 90 05 00 08 */ stw r0, 8(r5) -/* 803249F0 98 C4 00 00 */ stb r6, 0(r4) -/* 803249F4 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 803249F8 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803249FC 80 85 00 08 */ lwz r4, 8(r5) -/* 80324A00 38 04 00 01 */ addi r0, r4, 1 -/* 80324A04 90 05 00 08 */ stw r0, 8(r5) -/* 80324A08 98 C4 00 00 */ stb r6, 0(r4) -/* 80324A0C 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324A10 80 85 00 08 */ lwz r4, 8(r5) -/* 80324A14 38 04 00 01 */ addi r0, r4, 1 -/* 80324A18 90 05 00 08 */ stw r0, 8(r5) -/* 80324A1C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324A20 C0 03 00 00 */ lfs f0, 0(r3) -/* 80324A24 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 80324A28 80 E1 00 34 */ lwz r7, 0x34(r1) -/* 80324A2C 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324A30 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324A34 80 85 00 08 */ lwz r4, 8(r5) -/* 80324A38 38 04 00 01 */ addi r0, r4, 1 -/* 80324A3C 90 05 00 08 */ stw r0, 8(r5) -/* 80324A40 98 C4 00 00 */ stb r6, 0(r4) -/* 80324A44 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324A48 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324A4C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324A50 38 04 00 01 */ addi r0, r4, 1 -/* 80324A54 90 05 00 08 */ stw r0, 8(r5) -/* 80324A58 98 C4 00 00 */ stb r6, 0(r4) -/* 80324A5C 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324A60 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324A64 80 85 00 08 */ lwz r4, 8(r5) -/* 80324A68 38 04 00 01 */ addi r0, r4, 1 -/* 80324A6C 90 05 00 08 */ stw r0, 8(r5) -/* 80324A70 98 C4 00 00 */ stb r6, 0(r4) -/* 80324A74 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324A78 80 85 00 08 */ lwz r4, 8(r5) -/* 80324A7C 38 04 00 01 */ addi r0, r4, 1 -/* 80324A80 90 05 00 08 */ stw r0, 8(r5) -/* 80324A84 98 E4 00 00 */ stb r7, 0(r4) -/* 80324A88 C0 03 00 04 */ lfs f0, 4(r3) -/* 80324A8C D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80324A90 80 E1 00 30 */ lwz r7, 0x30(r1) -/* 80324A94 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324A98 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324A9C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324AA0 38 04 00 01 */ addi r0, r4, 1 -/* 80324AA4 90 05 00 08 */ stw r0, 8(r5) -/* 80324AA8 98 C4 00 00 */ stb r6, 0(r4) -/* 80324AAC 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324AB0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324AB4 80 85 00 08 */ lwz r4, 8(r5) -/* 80324AB8 38 04 00 01 */ addi r0, r4, 1 -/* 80324ABC 90 05 00 08 */ stw r0, 8(r5) -/* 80324AC0 98 C4 00 00 */ stb r6, 0(r4) -/* 80324AC4 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324AC8 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324ACC 80 85 00 08 */ lwz r4, 8(r5) -/* 80324AD0 38 04 00 01 */ addi r0, r4, 1 -/* 80324AD4 90 05 00 08 */ stw r0, 8(r5) -/* 80324AD8 98 C4 00 00 */ stb r6, 0(r4) -/* 80324ADC 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324AE0 80 85 00 08 */ lwz r4, 8(r5) -/* 80324AE4 38 04 00 01 */ addi r0, r4, 1 -/* 80324AE8 90 05 00 08 */ stw r0, 8(r5) -/* 80324AEC 98 E4 00 00 */ stb r7, 0(r4) -/* 80324AF0 C0 03 00 08 */ lfs f0, 8(r3) -/* 80324AF4 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80324AF8 80 E1 00 2C */ lwz r7, 0x2c(r1) -/* 80324AFC 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324B00 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324B04 80 85 00 08 */ lwz r4, 8(r5) -/* 80324B08 38 04 00 01 */ addi r0, r4, 1 -/* 80324B0C 90 05 00 08 */ stw r0, 8(r5) -/* 80324B10 98 C4 00 00 */ stb r6, 0(r4) -/* 80324B14 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324B18 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324B1C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324B20 38 04 00 01 */ addi r0, r4, 1 -/* 80324B24 90 05 00 08 */ stw r0, 8(r5) -/* 80324B28 98 C4 00 00 */ stb r6, 0(r4) -/* 80324B2C 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324B30 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324B34 80 85 00 08 */ lwz r4, 8(r5) -/* 80324B38 38 04 00 01 */ addi r0, r4, 1 -/* 80324B3C 90 05 00 08 */ stw r0, 8(r5) -/* 80324B40 98 C4 00 00 */ stb r6, 0(r4) -/* 80324B44 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324B48 80 85 00 08 */ lwz r4, 8(r5) -/* 80324B4C 38 04 00 01 */ addi r0, r4, 1 -/* 80324B50 90 05 00 08 */ stw r0, 8(r5) -/* 80324B54 98 E4 00 00 */ stb r7, 0(r4) -/* 80324B58 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 80324B5C D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80324B60 80 E1 00 28 */ lwz r7, 0x28(r1) -/* 80324B64 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324B68 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324B6C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324B70 38 04 00 01 */ addi r0, r4, 1 -/* 80324B74 90 05 00 08 */ stw r0, 8(r5) -/* 80324B78 98 C4 00 00 */ stb r6, 0(r4) -/* 80324B7C 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324B80 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324B84 80 85 00 08 */ lwz r4, 8(r5) -/* 80324B88 38 04 00 01 */ addi r0, r4, 1 -/* 80324B8C 90 05 00 08 */ stw r0, 8(r5) -/* 80324B90 98 C4 00 00 */ stb r6, 0(r4) -/* 80324B94 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324B98 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324B9C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324BA0 38 04 00 01 */ addi r0, r4, 1 -/* 80324BA4 90 05 00 08 */ stw r0, 8(r5) -/* 80324BA8 98 C4 00 00 */ stb r6, 0(r4) -/* 80324BAC 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324BB0 80 85 00 08 */ lwz r4, 8(r5) -/* 80324BB4 38 04 00 01 */ addi r0, r4, 1 -/* 80324BB8 90 05 00 08 */ stw r0, 8(r5) -/* 80324BBC 98 E4 00 00 */ stb r7, 0(r4) -/* 80324BC0 C0 03 00 10 */ lfs f0, 0x10(r3) -/* 80324BC4 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80324BC8 80 E1 00 24 */ lwz r7, 0x24(r1) -/* 80324BCC 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324BD0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324BD4 80 85 00 08 */ lwz r4, 8(r5) -/* 80324BD8 38 04 00 01 */ addi r0, r4, 1 -/* 80324BDC 90 05 00 08 */ stw r0, 8(r5) -/* 80324BE0 98 C4 00 00 */ stb r6, 0(r4) -/* 80324BE4 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324BE8 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324BEC 80 85 00 08 */ lwz r4, 8(r5) -/* 80324BF0 38 04 00 01 */ addi r0, r4, 1 -/* 80324BF4 90 05 00 08 */ stw r0, 8(r5) -/* 80324BF8 98 C4 00 00 */ stb r6, 0(r4) -/* 80324BFC 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324C00 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324C04 80 85 00 08 */ lwz r4, 8(r5) -/* 80324C08 38 04 00 01 */ addi r0, r4, 1 -/* 80324C0C 90 05 00 08 */ stw r0, 8(r5) -/* 80324C10 98 C4 00 00 */ stb r6, 0(r4) -/* 80324C14 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324C18 80 85 00 08 */ lwz r4, 8(r5) -/* 80324C1C 38 04 00 01 */ addi r0, r4, 1 -/* 80324C20 90 05 00 08 */ stw r0, 8(r5) -/* 80324C24 98 E4 00 00 */ stb r7, 0(r4) -/* 80324C28 C0 03 00 14 */ lfs f0, 0x14(r3) -/* 80324C2C D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80324C30 80 E1 00 20 */ lwz r7, 0x20(r1) -/* 80324C34 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324C38 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324C3C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324C40 38 04 00 01 */ addi r0, r4, 1 -/* 80324C44 90 05 00 08 */ stw r0, 8(r5) -/* 80324C48 98 C4 00 00 */ stb r6, 0(r4) -/* 80324C4C 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324C50 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324C54 80 85 00 08 */ lwz r4, 8(r5) -/* 80324C58 38 04 00 01 */ addi r0, r4, 1 -/* 80324C5C 90 05 00 08 */ stw r0, 8(r5) -/* 80324C60 98 C4 00 00 */ stb r6, 0(r4) -/* 80324C64 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324C68 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324C6C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324C70 38 04 00 01 */ addi r0, r4, 1 -/* 80324C74 90 05 00 08 */ stw r0, 8(r5) -/* 80324C78 98 C4 00 00 */ stb r6, 0(r4) -/* 80324C7C 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324C80 80 85 00 08 */ lwz r4, 8(r5) -/* 80324C84 38 04 00 01 */ addi r0, r4, 1 -/* 80324C88 90 05 00 08 */ stw r0, 8(r5) -/* 80324C8C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324C90 C0 03 00 18 */ lfs f0, 0x18(r3) -/* 80324C94 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80324C98 80 E1 00 1C */ lwz r7, 0x1c(r1) -/* 80324C9C 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324CA0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324CA4 80 85 00 08 */ lwz r4, 8(r5) -/* 80324CA8 38 04 00 01 */ addi r0, r4, 1 -/* 80324CAC 90 05 00 08 */ stw r0, 8(r5) -/* 80324CB0 98 C4 00 00 */ stb r6, 0(r4) -/* 80324CB4 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324CB8 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324CBC 80 85 00 08 */ lwz r4, 8(r5) -/* 80324CC0 38 04 00 01 */ addi r0, r4, 1 -/* 80324CC4 90 05 00 08 */ stw r0, 8(r5) -/* 80324CC8 98 C4 00 00 */ stb r6, 0(r4) -/* 80324CCC 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324CD0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324CD4 80 85 00 08 */ lwz r4, 8(r5) -/* 80324CD8 38 04 00 01 */ addi r0, r4, 1 -/* 80324CDC 90 05 00 08 */ stw r0, 8(r5) -/* 80324CE0 98 C4 00 00 */ stb r6, 0(r4) -/* 80324CE4 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324CE8 80 85 00 08 */ lwz r4, 8(r5) -/* 80324CEC 38 04 00 01 */ addi r0, r4, 1 -/* 80324CF0 90 05 00 08 */ stw r0, 8(r5) -/* 80324CF4 98 E4 00 00 */ stb r7, 0(r4) -/* 80324CF8 C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 80324CFC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80324D00 80 E1 00 18 */ lwz r7, 0x18(r1) -/* 80324D04 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324D08 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324D0C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324D10 38 04 00 01 */ addi r0, r4, 1 -/* 80324D14 90 05 00 08 */ stw r0, 8(r5) -/* 80324D18 98 C4 00 00 */ stb r6, 0(r4) -/* 80324D1C 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324D20 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324D24 80 85 00 08 */ lwz r4, 8(r5) -/* 80324D28 38 04 00 01 */ addi r0, r4, 1 -/* 80324D2C 90 05 00 08 */ stw r0, 8(r5) -/* 80324D30 98 C4 00 00 */ stb r6, 0(r4) -/* 80324D34 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324D38 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324D3C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324D40 38 04 00 01 */ addi r0, r4, 1 -/* 80324D44 90 05 00 08 */ stw r0, 8(r5) -/* 80324D48 98 C4 00 00 */ stb r6, 0(r4) -/* 80324D4C 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324D50 80 85 00 08 */ lwz r4, 8(r5) -/* 80324D54 38 04 00 01 */ addi r0, r4, 1 -/* 80324D58 90 05 00 08 */ stw r0, 8(r5) -/* 80324D5C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324D60 C0 03 00 20 */ lfs f0, 0x20(r3) -/* 80324D64 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80324D68 80 E1 00 14 */ lwz r7, 0x14(r1) -/* 80324D6C 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324D70 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324D74 80 85 00 08 */ lwz r4, 8(r5) -/* 80324D78 38 04 00 01 */ addi r0, r4, 1 -/* 80324D7C 90 05 00 08 */ stw r0, 8(r5) -/* 80324D80 98 C4 00 00 */ stb r6, 0(r4) -/* 80324D84 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324D88 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324D8C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324D90 38 04 00 01 */ addi r0, r4, 1 -/* 80324D94 90 05 00 08 */ stw r0, 8(r5) -/* 80324D98 98 C4 00 00 */ stb r6, 0(r4) -/* 80324D9C 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324DA0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324DA4 80 85 00 08 */ lwz r4, 8(r5) -/* 80324DA8 38 04 00 01 */ addi r0, r4, 1 -/* 80324DAC 90 05 00 08 */ stw r0, 8(r5) -/* 80324DB0 98 C4 00 00 */ stb r6, 0(r4) -/* 80324DB4 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324DB8 80 85 00 08 */ lwz r4, 8(r5) -/* 80324DBC 38 04 00 01 */ addi r0, r4, 1 -/* 80324DC0 90 05 00 08 */ stw r0, 8(r5) -/* 80324DC4 98 E4 00 00 */ stb r7, 0(r4) -/* 80324DC8 C0 03 00 24 */ lfs f0, 0x24(r3) -/* 80324DCC D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80324DD0 80 E1 00 10 */ lwz r7, 0x10(r1) -/* 80324DD4 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324DD8 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324DDC 80 85 00 08 */ lwz r4, 8(r5) -/* 80324DE0 38 04 00 01 */ addi r0, r4, 1 -/* 80324DE4 90 05 00 08 */ stw r0, 8(r5) -/* 80324DE8 98 C4 00 00 */ stb r6, 0(r4) -/* 80324DEC 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324DF0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324DF4 80 85 00 08 */ lwz r4, 8(r5) -/* 80324DF8 38 04 00 01 */ addi r0, r4, 1 -/* 80324DFC 90 05 00 08 */ stw r0, 8(r5) -/* 80324E00 98 C4 00 00 */ stb r6, 0(r4) -/* 80324E04 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324E08 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324E0C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324E10 38 04 00 01 */ addi r0, r4, 1 -/* 80324E14 90 05 00 08 */ stw r0, 8(r5) -/* 80324E18 98 C4 00 00 */ stb r6, 0(r4) -/* 80324E1C 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324E20 80 85 00 08 */ lwz r4, 8(r5) -/* 80324E24 38 04 00 01 */ addi r0, r4, 1 -/* 80324E28 90 05 00 08 */ stw r0, 8(r5) -/* 80324E2C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324E30 C0 03 00 28 */ lfs f0, 0x28(r3) -/* 80324E34 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 80324E38 80 E1 00 0C */ lwz r7, 0xc(r1) -/* 80324E3C 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324E40 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324E44 80 85 00 08 */ lwz r4, 8(r5) -/* 80324E48 38 04 00 01 */ addi r0, r4, 1 -/* 80324E4C 90 05 00 08 */ stw r0, 8(r5) -/* 80324E50 98 C4 00 00 */ stb r6, 0(r4) -/* 80324E54 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324E58 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324E5C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324E60 38 04 00 01 */ addi r0, r4, 1 -/* 80324E64 90 05 00 08 */ stw r0, 8(r5) -/* 80324E68 98 C4 00 00 */ stb r6, 0(r4) -/* 80324E6C 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324E70 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324E74 80 85 00 08 */ lwz r4, 8(r5) -/* 80324E78 38 04 00 01 */ addi r0, r4, 1 -/* 80324E7C 90 05 00 08 */ stw r0, 8(r5) -/* 80324E80 98 C4 00 00 */ stb r6, 0(r4) -/* 80324E84 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324E88 80 85 00 08 */ lwz r4, 8(r5) -/* 80324E8C 38 04 00 01 */ addi r0, r4, 1 -/* 80324E90 90 05 00 08 */ stw r0, 8(r5) -/* 80324E94 98 E4 00 00 */ stb r7, 0(r4) -/* 80324E98 C0 03 00 2C */ lfs f0, 0x2c(r3) -/* 80324E9C D0 01 00 08 */ stfs f0, 8(r1) -/* 80324EA0 80 C1 00 08 */ lwz r6, 8(r1) -/* 80324EA4 54 C5 46 3E */ srwi r5, r6, 0x18 -/* 80324EA8 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324EAC 80 64 00 08 */ lwz r3, 8(r4) -/* 80324EB0 38 03 00 01 */ addi r0, r3, 1 -/* 80324EB4 90 04 00 08 */ stw r0, 8(r4) -/* 80324EB8 98 A3 00 00 */ stb r5, 0(r3) -/* 80324EBC 54 C5 86 3E */ rlwinm r5, r6, 0x10, 0x18, 0x1f -/* 80324EC0 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324EC4 80 64 00 08 */ lwz r3, 8(r4) -/* 80324EC8 38 03 00 01 */ addi r0, r3, 1 -/* 80324ECC 90 04 00 08 */ stw r0, 8(r4) -/* 80324ED0 98 A3 00 00 */ stb r5, 0(r3) -/* 80324ED4 54 C5 C6 3E */ rlwinm r5, r6, 0x18, 0x18, 0x1f -/* 80324ED8 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324EDC 80 64 00 08 */ lwz r3, 8(r4) -/* 80324EE0 38 03 00 01 */ addi r0, r3, 1 -/* 80324EE4 90 04 00 08 */ stw r0, 8(r4) -/* 80324EE8 98 A3 00 00 */ stb r5, 0(r3) -/* 80324EEC 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324EF0 80 64 00 08 */ lwz r3, 8(r4) -/* 80324EF4 38 03 00 01 */ addi r0, r3, 1 -/* 80324EF8 90 04 00 08 */ stw r0, 8(r4) -/* 80324EFC 98 C3 00 00 */ stb r6, 0(r3) -/* 80324F00 38 21 00 40 */ addi r1, r1, 0x40 -/* 80324F04 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType.s b/asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType.s deleted file mode 100644 index ee007098d3..0000000000 --- a/asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType.s +++ /dev/null @@ -1,355 +0,0 @@ -lbl_8032441C: -/* 8032441C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80324420 54 89 14 3A */ rlwinm r9, r4, 2, 0x10, 0x1d -/* 80324424 2C 05 00 01 */ cmpwi r5, 1 -/* 80324428 38 00 00 0C */ li r0, 0xc -/* 8032442C 40 82 00 08 */ bne lbl_80324434 -/* 80324430 38 00 00 08 */ li r0, 8 -lbl_80324434: -/* 80324434 54 08 06 3E */ clrlwi r8, r0, 0x18 -/* 80324438 38 E0 00 10 */ li r7, 0x10 -/* 8032443C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324440 80 86 00 08 */ lwz r4, 8(r6) -/* 80324444 38 04 00 01 */ addi r0, r4, 1 -/* 80324448 90 06 00 08 */ stw r0, 8(r6) -/* 8032444C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324450 39 08 FF FF */ addi r8, r8, -1 -/* 80324454 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 80324458 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 8032445C 80 86 00 08 */ lwz r4, 8(r6) -/* 80324460 38 04 00 01 */ addi r0, r4, 1 -/* 80324464 90 06 00 08 */ stw r0, 8(r6) -/* 80324468 98 E4 00 00 */ stb r7, 0(r4) -/* 8032446C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324470 80 86 00 08 */ lwz r4, 8(r6) -/* 80324474 38 04 00 01 */ addi r0, r4, 1 -/* 80324478 90 06 00 08 */ stw r0, 8(r6) -/* 8032447C 99 04 00 00 */ stb r8, 0(r4) -/* 80324480 55 27 C6 3E */ rlwinm r7, r9, 0x18, 0x18, 0x1f -/* 80324484 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324488 80 86 00 08 */ lwz r4, 8(r6) -/* 8032448C 38 04 00 01 */ addi r0, r4, 1 -/* 80324490 90 06 00 08 */ stw r0, 8(r6) -/* 80324494 98 E4 00 00 */ stb r7, 0(r4) -/* 80324498 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 8032449C 80 86 00 08 */ lwz r4, 8(r6) -/* 803244A0 38 04 00 01 */ addi r0, r4, 1 -/* 803244A4 90 06 00 08 */ stw r0, 8(r6) -/* 803244A8 99 24 00 00 */ stb r9, 0(r4) -/* 803244AC C0 03 00 00 */ lfs f0, 0(r3) -/* 803244B0 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 803244B4 81 01 00 34 */ lwz r8, 0x34(r1) -/* 803244B8 55 07 46 3E */ srwi r7, r8, 0x18 -/* 803244BC 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803244C0 80 86 00 08 */ lwz r4, 8(r6) -/* 803244C4 38 04 00 01 */ addi r0, r4, 1 -/* 803244C8 90 06 00 08 */ stw r0, 8(r6) -/* 803244CC 98 E4 00 00 */ stb r7, 0(r4) -/* 803244D0 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 803244D4 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803244D8 80 86 00 08 */ lwz r4, 8(r6) -/* 803244DC 38 04 00 01 */ addi r0, r4, 1 -/* 803244E0 90 06 00 08 */ stw r0, 8(r6) -/* 803244E4 98 E4 00 00 */ stb r7, 0(r4) -/* 803244E8 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 803244EC 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803244F0 80 86 00 08 */ lwz r4, 8(r6) -/* 803244F4 38 04 00 01 */ addi r0, r4, 1 -/* 803244F8 90 06 00 08 */ stw r0, 8(r6) -/* 803244FC 98 E4 00 00 */ stb r7, 0(r4) -/* 80324500 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324504 80 86 00 08 */ lwz r4, 8(r6) -/* 80324508 38 04 00 01 */ addi r0, r4, 1 -/* 8032450C 90 06 00 08 */ stw r0, 8(r6) -/* 80324510 99 04 00 00 */ stb r8, 0(r4) -/* 80324514 C0 03 00 04 */ lfs f0, 4(r3) -/* 80324518 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 8032451C 81 01 00 30 */ lwz r8, 0x30(r1) -/* 80324520 55 07 46 3E */ srwi r7, r8, 0x18 -/* 80324524 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324528 80 86 00 08 */ lwz r4, 8(r6) -/* 8032452C 38 04 00 01 */ addi r0, r4, 1 -/* 80324530 90 06 00 08 */ stw r0, 8(r6) -/* 80324534 98 E4 00 00 */ stb r7, 0(r4) -/* 80324538 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 8032453C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324540 80 86 00 08 */ lwz r4, 8(r6) -/* 80324544 38 04 00 01 */ addi r0, r4, 1 -/* 80324548 90 06 00 08 */ stw r0, 8(r6) -/* 8032454C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324550 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 80324554 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324558 80 86 00 08 */ lwz r4, 8(r6) -/* 8032455C 38 04 00 01 */ addi r0, r4, 1 -/* 80324560 90 06 00 08 */ stw r0, 8(r6) -/* 80324564 98 E4 00 00 */ stb r7, 0(r4) -/* 80324568 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 8032456C 80 86 00 08 */ lwz r4, 8(r6) -/* 80324570 38 04 00 01 */ addi r0, r4, 1 -/* 80324574 90 06 00 08 */ stw r0, 8(r6) -/* 80324578 99 04 00 00 */ stb r8, 0(r4) -/* 8032457C C0 03 00 08 */ lfs f0, 8(r3) -/* 80324580 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80324584 81 01 00 2C */ lwz r8, 0x2c(r1) -/* 80324588 55 07 46 3E */ srwi r7, r8, 0x18 -/* 8032458C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324590 80 86 00 08 */ lwz r4, 8(r6) -/* 80324594 38 04 00 01 */ addi r0, r4, 1 -/* 80324598 90 06 00 08 */ stw r0, 8(r6) -/* 8032459C 98 E4 00 00 */ stb r7, 0(r4) -/* 803245A0 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 803245A4 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803245A8 80 86 00 08 */ lwz r4, 8(r6) -/* 803245AC 38 04 00 01 */ addi r0, r4, 1 -/* 803245B0 90 06 00 08 */ stw r0, 8(r6) -/* 803245B4 98 E4 00 00 */ stb r7, 0(r4) -/* 803245B8 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 803245BC 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803245C0 80 86 00 08 */ lwz r4, 8(r6) -/* 803245C4 38 04 00 01 */ addi r0, r4, 1 -/* 803245C8 90 06 00 08 */ stw r0, 8(r6) -/* 803245CC 98 E4 00 00 */ stb r7, 0(r4) -/* 803245D0 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803245D4 80 86 00 08 */ lwz r4, 8(r6) -/* 803245D8 38 04 00 01 */ addi r0, r4, 1 -/* 803245DC 90 06 00 08 */ stw r0, 8(r6) -/* 803245E0 99 04 00 00 */ stb r8, 0(r4) -/* 803245E4 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 803245E8 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 803245EC 81 01 00 28 */ lwz r8, 0x28(r1) -/* 803245F0 55 07 46 3E */ srwi r7, r8, 0x18 -/* 803245F4 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803245F8 80 86 00 08 */ lwz r4, 8(r6) -/* 803245FC 38 04 00 01 */ addi r0, r4, 1 -/* 80324600 90 06 00 08 */ stw r0, 8(r6) -/* 80324604 98 E4 00 00 */ stb r7, 0(r4) -/* 80324608 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 8032460C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324610 80 86 00 08 */ lwz r4, 8(r6) -/* 80324614 38 04 00 01 */ addi r0, r4, 1 -/* 80324618 90 06 00 08 */ stw r0, 8(r6) -/* 8032461C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324620 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 80324624 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324628 80 86 00 08 */ lwz r4, 8(r6) -/* 8032462C 38 04 00 01 */ addi r0, r4, 1 -/* 80324630 90 06 00 08 */ stw r0, 8(r6) -/* 80324634 98 E4 00 00 */ stb r7, 0(r4) -/* 80324638 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 8032463C 80 86 00 08 */ lwz r4, 8(r6) -/* 80324640 38 04 00 01 */ addi r0, r4, 1 -/* 80324644 90 06 00 08 */ stw r0, 8(r6) -/* 80324648 99 04 00 00 */ stb r8, 0(r4) -/* 8032464C C0 03 00 10 */ lfs f0, 0x10(r3) -/* 80324650 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80324654 81 01 00 24 */ lwz r8, 0x24(r1) -/* 80324658 55 07 46 3E */ srwi r7, r8, 0x18 -/* 8032465C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324660 80 86 00 08 */ lwz r4, 8(r6) -/* 80324664 38 04 00 01 */ addi r0, r4, 1 -/* 80324668 90 06 00 08 */ stw r0, 8(r6) -/* 8032466C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324670 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 80324674 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324678 80 86 00 08 */ lwz r4, 8(r6) -/* 8032467C 38 04 00 01 */ addi r0, r4, 1 -/* 80324680 90 06 00 08 */ stw r0, 8(r6) -/* 80324684 98 E4 00 00 */ stb r7, 0(r4) -/* 80324688 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 8032468C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324690 80 86 00 08 */ lwz r4, 8(r6) -/* 80324694 38 04 00 01 */ addi r0, r4, 1 -/* 80324698 90 06 00 08 */ stw r0, 8(r6) -/* 8032469C 98 E4 00 00 */ stb r7, 0(r4) -/* 803246A0 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803246A4 80 86 00 08 */ lwz r4, 8(r6) -/* 803246A8 38 04 00 01 */ addi r0, r4, 1 -/* 803246AC 90 06 00 08 */ stw r0, 8(r6) -/* 803246B0 99 04 00 00 */ stb r8, 0(r4) -/* 803246B4 C0 03 00 14 */ lfs f0, 0x14(r3) -/* 803246B8 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 803246BC 81 01 00 20 */ lwz r8, 0x20(r1) -/* 803246C0 55 07 46 3E */ srwi r7, r8, 0x18 -/* 803246C4 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803246C8 80 86 00 08 */ lwz r4, 8(r6) -/* 803246CC 38 04 00 01 */ addi r0, r4, 1 -/* 803246D0 90 06 00 08 */ stw r0, 8(r6) -/* 803246D4 98 E4 00 00 */ stb r7, 0(r4) -/* 803246D8 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 803246DC 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803246E0 80 86 00 08 */ lwz r4, 8(r6) -/* 803246E4 38 04 00 01 */ addi r0, r4, 1 -/* 803246E8 90 06 00 08 */ stw r0, 8(r6) -/* 803246EC 98 E4 00 00 */ stb r7, 0(r4) -/* 803246F0 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 803246F4 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803246F8 80 86 00 08 */ lwz r4, 8(r6) -/* 803246FC 38 04 00 01 */ addi r0, r4, 1 -/* 80324700 90 06 00 08 */ stw r0, 8(r6) -/* 80324704 98 E4 00 00 */ stb r7, 0(r4) -/* 80324708 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 8032470C 80 86 00 08 */ lwz r4, 8(r6) -/* 80324710 38 04 00 01 */ addi r0, r4, 1 -/* 80324714 90 06 00 08 */ stw r0, 8(r6) -/* 80324718 99 04 00 00 */ stb r8, 0(r4) -/* 8032471C C0 03 00 18 */ lfs f0, 0x18(r3) -/* 80324720 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80324724 81 01 00 1C */ lwz r8, 0x1c(r1) -/* 80324728 55 07 46 3E */ srwi r7, r8, 0x18 -/* 8032472C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324730 80 86 00 08 */ lwz r4, 8(r6) -/* 80324734 38 04 00 01 */ addi r0, r4, 1 -/* 80324738 90 06 00 08 */ stw r0, 8(r6) -/* 8032473C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324740 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 80324744 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324748 80 86 00 08 */ lwz r4, 8(r6) -/* 8032474C 38 04 00 01 */ addi r0, r4, 1 -/* 80324750 90 06 00 08 */ stw r0, 8(r6) -/* 80324754 98 E4 00 00 */ stb r7, 0(r4) -/* 80324758 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 8032475C 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324760 80 86 00 08 */ lwz r4, 8(r6) -/* 80324764 38 04 00 01 */ addi r0, r4, 1 -/* 80324768 90 06 00 08 */ stw r0, 8(r6) -/* 8032476C 98 E4 00 00 */ stb r7, 0(r4) -/* 80324770 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324774 80 86 00 08 */ lwz r4, 8(r6) -/* 80324778 38 04 00 01 */ addi r0, r4, 1 -/* 8032477C 90 06 00 08 */ stw r0, 8(r6) -/* 80324780 99 04 00 00 */ stb r8, 0(r4) -/* 80324784 C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 80324788 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8032478C 81 01 00 18 */ lwz r8, 0x18(r1) -/* 80324790 55 07 46 3E */ srwi r7, r8, 0x18 -/* 80324794 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 80324798 80 86 00 08 */ lwz r4, 8(r6) -/* 8032479C 38 04 00 01 */ addi r0, r4, 1 -/* 803247A0 90 06 00 08 */ stw r0, 8(r6) -/* 803247A4 98 E4 00 00 */ stb r7, 0(r4) -/* 803247A8 55 07 86 3E */ rlwinm r7, r8, 0x10, 0x18, 0x1f -/* 803247AC 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803247B0 80 86 00 08 */ lwz r4, 8(r6) -/* 803247B4 38 04 00 01 */ addi r0, r4, 1 -/* 803247B8 90 06 00 08 */ stw r0, 8(r6) -/* 803247BC 98 E4 00 00 */ stb r7, 0(r4) -/* 803247C0 55 07 C6 3E */ rlwinm r7, r8, 0x18, 0x18, 0x1f -/* 803247C4 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803247C8 80 86 00 08 */ lwz r4, 8(r6) -/* 803247CC 38 04 00 01 */ addi r0, r4, 1 -/* 803247D0 90 06 00 08 */ stw r0, 8(r6) -/* 803247D4 98 E4 00 00 */ stb r7, 0(r4) -/* 803247D8 80 CD 94 00 */ lwz r6, __GDCurrentDL(r13) -/* 803247DC 80 86 00 08 */ lwz r4, 8(r6) -/* 803247E0 38 04 00 01 */ addi r0, r4, 1 -/* 803247E4 90 06 00 08 */ stw r0, 8(r6) -/* 803247E8 99 04 00 00 */ stb r8, 0(r4) -/* 803247EC 2C 05 00 00 */ cmpwi r5, 0 -/* 803247F0 40 82 01 A4 */ bne lbl_80324994 -/* 803247F4 C0 03 00 20 */ lfs f0, 0x20(r3) -/* 803247F8 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 803247FC 80 E1 00 14 */ lwz r7, 0x14(r1) -/* 80324800 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 80324804 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324808 80 85 00 08 */ lwz r4, 8(r5) -/* 8032480C 38 04 00 01 */ addi r0, r4, 1 -/* 80324810 90 05 00 08 */ stw r0, 8(r5) -/* 80324814 98 C4 00 00 */ stb r6, 0(r4) -/* 80324818 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 8032481C 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324820 80 85 00 08 */ lwz r4, 8(r5) -/* 80324824 38 04 00 01 */ addi r0, r4, 1 -/* 80324828 90 05 00 08 */ stw r0, 8(r5) -/* 8032482C 98 C4 00 00 */ stb r6, 0(r4) -/* 80324830 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324834 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324838 80 85 00 08 */ lwz r4, 8(r5) -/* 8032483C 38 04 00 01 */ addi r0, r4, 1 -/* 80324840 90 05 00 08 */ stw r0, 8(r5) -/* 80324844 98 C4 00 00 */ stb r6, 0(r4) -/* 80324848 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 8032484C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324850 38 04 00 01 */ addi r0, r4, 1 -/* 80324854 90 05 00 08 */ stw r0, 8(r5) -/* 80324858 98 E4 00 00 */ stb r7, 0(r4) -/* 8032485C C0 03 00 24 */ lfs f0, 0x24(r3) -/* 80324860 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80324864 80 E1 00 10 */ lwz r7, 0x10(r1) -/* 80324868 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 8032486C 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324870 80 85 00 08 */ lwz r4, 8(r5) -/* 80324874 38 04 00 01 */ addi r0, r4, 1 -/* 80324878 90 05 00 08 */ stw r0, 8(r5) -/* 8032487C 98 C4 00 00 */ stb r6, 0(r4) -/* 80324880 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 80324884 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324888 80 85 00 08 */ lwz r4, 8(r5) -/* 8032488C 38 04 00 01 */ addi r0, r4, 1 -/* 80324890 90 05 00 08 */ stw r0, 8(r5) -/* 80324894 98 C4 00 00 */ stb r6, 0(r4) -/* 80324898 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 8032489C 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803248A0 80 85 00 08 */ lwz r4, 8(r5) -/* 803248A4 38 04 00 01 */ addi r0, r4, 1 -/* 803248A8 90 05 00 08 */ stw r0, 8(r5) -/* 803248AC 98 C4 00 00 */ stb r6, 0(r4) -/* 803248B0 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803248B4 80 85 00 08 */ lwz r4, 8(r5) -/* 803248B8 38 04 00 01 */ addi r0, r4, 1 -/* 803248BC 90 05 00 08 */ stw r0, 8(r5) -/* 803248C0 98 E4 00 00 */ stb r7, 0(r4) -/* 803248C4 C0 03 00 28 */ lfs f0, 0x28(r3) -/* 803248C8 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 803248CC 80 E1 00 0C */ lwz r7, 0xc(r1) -/* 803248D0 54 E6 46 3E */ srwi r6, r7, 0x18 -/* 803248D4 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803248D8 80 85 00 08 */ lwz r4, 8(r5) -/* 803248DC 38 04 00 01 */ addi r0, r4, 1 -/* 803248E0 90 05 00 08 */ stw r0, 8(r5) -/* 803248E4 98 C4 00 00 */ stb r6, 0(r4) -/* 803248E8 54 E6 86 3E */ rlwinm r6, r7, 0x10, 0x18, 0x1f -/* 803248EC 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 803248F0 80 85 00 08 */ lwz r4, 8(r5) -/* 803248F4 38 04 00 01 */ addi r0, r4, 1 -/* 803248F8 90 05 00 08 */ stw r0, 8(r5) -/* 803248FC 98 C4 00 00 */ stb r6, 0(r4) -/* 80324900 54 E6 C6 3E */ rlwinm r6, r7, 0x18, 0x18, 0x1f -/* 80324904 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 80324908 80 85 00 08 */ lwz r4, 8(r5) -/* 8032490C 38 04 00 01 */ addi r0, r4, 1 -/* 80324910 90 05 00 08 */ stw r0, 8(r5) -/* 80324914 98 C4 00 00 */ stb r6, 0(r4) -/* 80324918 80 AD 94 00 */ lwz r5, __GDCurrentDL(r13) -/* 8032491C 80 85 00 08 */ lwz r4, 8(r5) -/* 80324920 38 04 00 01 */ addi r0, r4, 1 -/* 80324924 90 05 00 08 */ stw r0, 8(r5) -/* 80324928 98 E4 00 00 */ stb r7, 0(r4) -/* 8032492C C0 03 00 2C */ lfs f0, 0x2c(r3) -/* 80324930 D0 01 00 08 */ stfs f0, 8(r1) -/* 80324934 80 C1 00 08 */ lwz r6, 8(r1) -/* 80324938 54 C5 46 3E */ srwi r5, r6, 0x18 -/* 8032493C 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324940 80 64 00 08 */ lwz r3, 8(r4) -/* 80324944 38 03 00 01 */ addi r0, r3, 1 -/* 80324948 90 04 00 08 */ stw r0, 8(r4) -/* 8032494C 98 A3 00 00 */ stb r5, 0(r3) -/* 80324950 54 C5 86 3E */ rlwinm r5, r6, 0x10, 0x18, 0x1f -/* 80324954 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324958 80 64 00 08 */ lwz r3, 8(r4) -/* 8032495C 38 03 00 01 */ addi r0, r3, 1 -/* 80324960 90 04 00 08 */ stw r0, 8(r4) -/* 80324964 98 A3 00 00 */ stb r5, 0(r3) -/* 80324968 54 C5 C6 3E */ rlwinm r5, r6, 0x18, 0x18, 0x1f -/* 8032496C 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324970 80 64 00 08 */ lwz r3, 8(r4) -/* 80324974 38 03 00 01 */ addi r0, r3, 1 -/* 80324978 90 04 00 08 */ stw r0, 8(r4) -/* 8032497C 98 A3 00 00 */ stb r5, 0(r3) -/* 80324980 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324984 80 64 00 08 */ lwz r3, 8(r4) -/* 80324988 38 03 00 01 */ addi r0, r3, 1 -/* 8032498C 90 04 00 08 */ stw r0, 8(r4) -/* 80324990 98 C3 00 00 */ stb r6, 0(r3) -lbl_80324994: -/* 80324994 38 21 00 40 */ addi r1, r1, 0x40 -/* 80324998 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DTevs/loadPostTexMtx__9J3DTexMtxCFUl.s b/asm/JSystem/J3DGraphBase/J3DTevs/loadPostTexMtx__9J3DTexMtxCFUl.s deleted file mode 100644 index 743c613d45..0000000000 --- a/asm/JSystem/J3DGraphBase/J3DTevs/loadPostTexMtx__9J3DTexMtxCFUl.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_803243BC: -/* 803243BC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803243C0 7C 08 02 A6 */ mflr r0 -/* 803243C4 90 01 00 14 */ stw r0, 0x14(r1) -/* 803243C8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803243CC 93 C1 00 08 */ stw r30, 8(r1) -/* 803243D0 7C 7E 1B 78 */ mr r30, r3 -/* 803243D4 7C 9F 23 78 */ mr r31, r4 -/* 803243D8 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 803243DC 80 64 00 08 */ lwz r3, 8(r4) -/* 803243E0 38 63 00 35 */ addi r3, r3, 0x35 -/* 803243E4 80 04 00 0C */ lwz r0, 0xc(r4) -/* 803243E8 7C 03 00 40 */ cmplw r3, r0 -/* 803243EC 40 81 00 08 */ ble lbl_803243F4 -/* 803243F0 48 03 CC E5 */ bl GDOverflowed -lbl_803243F4: -/* 803243F4 38 7E 00 64 */ addi r3, r30, 0x64 -/* 803243F8 1C 9F 00 03 */ mulli r4, r31, 3 -/* 803243FC 38 84 00 40 */ addi r4, r4, 0x40 -/* 80324400 48 00 05 9D */ bl J3DGDLoadPostTexMtxImm__FPA4_fUl -/* 80324404 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80324408 83 C1 00 08 */ lwz r30, 8(r1) -/* 8032440C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80324410 7C 08 03 A6 */ mtlr r0 -/* 80324414 38 21 00 10 */ addi r1, r1, 0x10 -/* 80324418 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DTevs/loadTexMtx__9J3DTexMtxCFUl.s b/asm/JSystem/J3DGraphBase/J3DTevs/loadTexMtx__9J3DTexMtxCFUl.s deleted file mode 100644 index 9138a02ce0..0000000000 --- a/asm/JSystem/J3DGraphBase/J3DTevs/loadTexMtx__9J3DTexMtxCFUl.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_80324358: -/* 80324358 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8032435C 7C 08 02 A6 */ mflr r0 -/* 80324360 90 01 00 14 */ stw r0, 0x14(r1) -/* 80324364 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80324368 93 C1 00 08 */ stw r30, 8(r1) -/* 8032436C 7C 7E 1B 78 */ mr r30, r3 -/* 80324370 7C 9F 23 78 */ mr r31, r4 -/* 80324374 80 8D 94 00 */ lwz r4, __GDCurrentDL(r13) -/* 80324378 80 64 00 08 */ lwz r3, 8(r4) -/* 8032437C 38 63 00 35 */ addi r3, r3, 0x35 -/* 80324380 80 04 00 0C */ lwz r0, 0xc(r4) -/* 80324384 7C 03 00 40 */ cmplw r3, r0 -/* 80324388 40 81 00 08 */ ble lbl_80324390 -/* 8032438C 48 03 CD 49 */ bl GDOverflowed -lbl_80324390: -/* 80324390 38 7E 00 64 */ addi r3, r30, 0x64 -/* 80324394 1C 9F 00 03 */ mulli r4, r31, 3 -/* 80324398 38 84 00 1E */ addi r4, r4, 0x1e -/* 8032439C 88 BE 00 00 */ lbz r5, 0(r30) -/* 803243A0 48 00 00 7D */ bl J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType -/* 803243A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 803243A8 83 C1 00 08 */ lwz r30, 8(r1) -/* 803243AC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803243B0 7C 08 03 A6 */ mtlr r0 -/* 803243B4 38 21 00 10 */ addi r1, r1, 0x10 -/* 803243B8 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newMatColor__22J3DMaterialFactory_v21CFii.s b/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newMatColor__22J3DMaterialFactory_v21CFii.s deleted file mode 100644 index 4f842a7c12..0000000000 --- a/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newMatColor__22J3DMaterialFactory_v21CFii.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_803337D8: -/* 803337D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803337DC 81 22 CA B8 */ lwz r9, lit_1130(r2) -/* 803337E0 91 21 00 08 */ stw r9, 8(r1) -/* 803337E4 91 21 00 0C */ stw r9, 0xc(r1) -/* 803337E8 81 04 00 04 */ lwz r8, 4(r4) -/* 803337EC 80 E4 00 08 */ lwz r7, 8(r4) -/* 803337F0 54 A0 08 3C */ slwi r0, r5, 1 -/* 803337F4 7C 07 02 2E */ lhzx r0, r7, r0 -/* 803337F8 1C 00 01 38 */ mulli r0, r0, 0x138 -/* 803337FC 7C A8 02 14 */ add r5, r8, r0 -/* 80333800 54 C0 08 3C */ slwi r0, r6, 1 -/* 80333804 7C A5 02 14 */ add r5, r5, r0 -/* 80333808 A0 05 00 08 */ lhz r0, 8(r5) -/* 8033380C 28 00 FF FF */ cmplwi r0, 0xffff -/* 80333810 41 82 00 18 */ beq lbl_80333828 -/* 80333814 80 84 00 0C */ lwz r4, 0xc(r4) -/* 80333818 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8033381C 7C 04 00 2E */ lwzx r0, r4, r0 -/* 80333820 90 03 00 00 */ stw r0, 0(r3) -/* 80333824 48 00 00 08 */ b lbl_8033382C -lbl_80333828: -/* 80333828 91 23 00 00 */ stw r9, 0(r3) -lbl_8033382C: -/* 8033382C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80333830 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevKColor__22J3DMaterialFactory_v21CFii.s b/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevKColor__22J3DMaterialFactory_v21CFii.s deleted file mode 100644 index b94b95178d..0000000000 --- a/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevKColor__22J3DMaterialFactory_v21CFii.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_80333C74: -/* 80333C74 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80333C78 81 22 CA BC */ lwz r9, lit_1317(r2) -/* 80333C7C 91 21 00 08 */ stw r9, 8(r1) -/* 80333C80 91 21 00 0C */ stw r9, 0xc(r1) -/* 80333C84 81 04 00 04 */ lwz r8, 4(r4) -/* 80333C88 80 E4 00 08 */ lwz r7, 8(r4) -/* 80333C8C 54 A0 08 3C */ slwi r0, r5, 1 -/* 80333C90 7C 07 02 2E */ lhzx r0, r7, r0 -/* 80333C94 1C 00 01 38 */ mulli r0, r0, 0x138 -/* 80333C98 7C A8 02 14 */ add r5, r8, r0 -/* 80333C9C 54 C0 08 3C */ slwi r0, r6, 1 -/* 80333CA0 7C A5 02 14 */ add r5, r5, r0 -/* 80333CA4 A0 05 00 80 */ lhz r0, 0x80(r5) -/* 80333CA8 28 00 FF FF */ cmplwi r0, 0xffff -/* 80333CAC 41 82 00 18 */ beq lbl_80333CC4 -/* 80333CB0 80 84 00 3C */ lwz r4, 0x3c(r4) -/* 80333CB4 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 80333CB8 7C 04 00 2E */ lwzx r0, r4, r0 -/* 80333CBC 90 03 00 00 */ stw r0, 0(r3) -/* 80333CC0 48 00 00 08 */ b lbl_80333CC8 -lbl_80333CC4: -/* 80333CC4 91 23 00 00 */ stw r9, 0(r3) -lbl_80333CC8: -/* 80333CC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80333CCC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevSwapModeTable__22J3DMaterialFactory_v21CFii.s b/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevSwapModeTable__22J3DMaterialFactory_v21CFii.s deleted file mode 100644 index 6f5f72c2e1..0000000000 --- a/asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevSwapModeTable__22J3DMaterialFactory_v21CFii.s +++ /dev/null @@ -1,41 +0,0 @@ -lbl_80333D68: -/* 80333D68 81 04 00 04 */ lwz r8, 4(r4) -/* 80333D6C 80 E4 00 08 */ lwz r7, 8(r4) -/* 80333D70 54 A0 08 3C */ slwi r0, r5, 1 -/* 80333D74 7C 07 02 2E */ lhzx r0, r7, r0 -/* 80333D78 1C 00 01 38 */ mulli r0, r0, 0x138 -/* 80333D7C 7C A8 02 14 */ add r5, r8, r0 -/* 80333D80 54 C0 08 3C */ slwi r0, r6, 1 -/* 80333D84 7C A5 02 14 */ add r5, r5, r0 -/* 80333D88 A0 05 01 10 */ lhz r0, 0x110(r5) -/* 80333D8C 28 00 FF FF */ cmplwi r0, 0xffff -/* 80333D90 41 82 00 40 */ beq lbl_80333DD0 -/* 80333D94 80 84 00 4C */ lwz r4, 0x4c(r4) -/* 80333D98 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 80333D9C 7C E4 02 14 */ add r7, r4, r0 -/* 80333DA0 88 87 00 00 */ lbz r4, 0(r7) -/* 80333DA4 88 C7 00 03 */ lbz r6, 3(r7) -/* 80333DA8 88 07 00 02 */ lbz r0, 2(r7) -/* 80333DAC 54 05 15 BA */ rlwinm r5, r0, 2, 0x16, 0x1d -/* 80333DB0 54 84 30 32 */ slwi r4, r4, 6 -/* 80333DB4 88 07 00 01 */ lbz r0, 1(r7) -/* 80333DB8 54 00 25 36 */ rlwinm r0, r0, 4, 0x14, 0x1b -/* 80333DBC 7C 00 2A 14 */ add r0, r0, r5 -/* 80333DC0 7C 00 32 14 */ add r0, r0, r6 -/* 80333DC4 7C 04 02 14 */ add r0, r4, r0 -/* 80333DC8 98 03 00 00 */ stb r0, 0(r3) -/* 80333DCC 4E 80 00 20 */ blr -lbl_80333DD0: -/* 80333DD0 38 82 C9 E8 */ la r4, j3dDefaultTevSwapModeTable(r2) /* 804563E8-_SDA2_BASE_ */ -/* 80333DD4 88 E4 00 01 */ lbz r7, 1(r4) -/* 80333DD8 88 C4 00 03 */ lbz r6, 3(r4) -/* 80333DDC 88 04 00 02 */ lbz r0, 2(r4) -/* 80333DE0 54 05 15 BA */ rlwinm r5, r0, 2, 0x16, 0x1d -/* 80333DE4 88 02 C9 E8 */ lbz r0, j3dDefaultTevSwapModeTable(r2) -/* 80333DE8 54 04 34 B2 */ rlwinm r4, r0, 6, 0x12, 0x19 -/* 80333DEC 54 E0 20 36 */ slwi r0, r7, 4 -/* 80333DF0 7C 00 2A 14 */ add r0, r0, r5 -/* 80333DF4 7C 00 32 14 */ add r0, r0, r6 -/* 80333DF8 7C 04 02 14 */ add r0, r4, r0 -/* 80333DFC 98 03 00 00 */ stb r0, 0(r3) -/* 80333E00 4E 80 00 20 */ blr diff --git a/asm/d/d_resorce/__ct__11J3DTevStageFRC15J3DTevStageInfo.s b/asm/d/d_resorce/__ct__11J3DTevStageFRC15J3DTevStageInfo.s deleted file mode 100644 index f298c05b07..0000000000 --- a/asm/d/d_resorce/__ct__11J3DTevStageFRC15J3DTevStageInfo.s +++ /dev/null @@ -1,25 +0,0 @@ -lbl_8003AACC: -/* 8003AACC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003AAD0 7C 08 02 A6 */ mflr r0 -/* 8003AAD4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003AAD8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8003AADC 7C 7F 1B 78 */ mr r31, r3 -/* 8003AAE0 4B FD 37 B9 */ bl setTevStageInfo__11J3DTevStageFRC15J3DTevStageInfo -/* 8003AAE4 88 1F 00 07 */ lbz r0, 7(r31) -/* 8003AAE8 54 04 07 B6 */ rlwinm r4, r0, 0, 0x1e, 0x1b -/* 8003AAEC 38 62 C9 E4 */ la r3, j3dDefaultTevSwapMode(r2) /* 804563E4-_SDA2_BASE_ */ -/* 8003AAF0 88 03 00 01 */ lbz r0, 1(r3) -/* 8003AAF4 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d -/* 8003AAF8 7C 80 03 78 */ or r0, r4, r0 -/* 8003AAFC 98 1F 00 07 */ stb r0, 7(r31) -/* 8003AB00 88 1F 00 07 */ lbz r0, 7(r31) -/* 8003AB04 54 03 00 3A */ rlwinm r3, r0, 0, 0, 0x1d -/* 8003AB08 88 02 C9 E4 */ lbz r0, j3dDefaultTevSwapMode(r2) -/* 8003AB0C 7C 60 03 78 */ or r0, r3, r0 -/* 8003AB10 98 1F 00 07 */ stb r0, 7(r31) -/* 8003AB14 7F E3 FB 78 */ mr r3, r31 -/* 8003AB18 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8003AB1C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003AB20 7C 08 03 A6 */ mtlr r0 -/* 8003AB24 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003AB28 4E 80 00 20 */ blr diff --git a/include/JSystem/J3DGraphAnimator/J3DAnimation.h b/include/JSystem/J3DGraphAnimator/J3DAnimation.h index be944dd686..565eb289dd 100644 --- a/include/JSystem/J3DGraphAnimator/J3DAnimation.h +++ b/include/JSystem/J3DGraphAnimator/J3DAnimation.h @@ -89,7 +89,7 @@ struct J3DAnmCRegKeyTable { /* 0x06 */ J3DAnmKeyTableBase mGTable; /* 0x0C */ J3DAnmKeyTableBase mBTable; /* 0x12 */ J3DAnmKeyTableBase mATable; - /* 0x18 */ u8 _18; + /* 0x18 */ u8 mColorId; u8 padding[3]; }; // Size = 0x1C @@ -98,7 +98,7 @@ struct J3DAnmKRegKeyTable { /* 0x06 */ J3DAnmKeyTableBase mGTable; /* 0x0C */ J3DAnmKeyTableBase mBTable; /* 0x12 */ J3DAnmKeyTableBase mATable; - /* 0x18 */ u8 _18; + /* 0x18 */ u8 mColorId; u8 padding[3]; }; // Size = 0x1C @@ -444,6 +444,11 @@ public: u16 getUpdateMaterialID(u16 idx) const { return mUpdateMaterialID[idx]; } u16 getUpdateMaterialNum() const { return mTrackNum / 3; } + int getUpdateTexMtxID(u16 idx) { return mUpdateTexMtxID[idx]; } + bool isValidUpdateMaterialID(u16 idx) const { return mUpdateMaterialID[idx] != 0xffff; } + u32 getTexMtxCalcType() const { return mTexMtxCalcType; } + Vec* getSRTCenter(u16 idx) { return &mSRTCenter[idx]; } + /* 0x0C */ int mDecShift; /* 0x10 */ J3DAnmTransformKeyTable* mAnmTable; /* 0x14 */ u16 mTrackNum; @@ -512,6 +517,12 @@ public: u16 getCRegUpdateMaterialID(u16 idx) const { return mCRegUpdateMaterialID[idx]; } u16 getKRegUpdateMaterialID(u16 idx) const { return mKRegUpdateMaterialID[idx]; } + const J3DAnmCRegKeyTable* getAnmCRegKeyTable() const { return mAnmCRegKeyTable; } + const J3DAnmKRegKeyTable* getAnmKRegKeyTable() const { return mAnmKRegKeyTable; } + + bool isValidCRegUpdateMaterialID(u16 idx) { return mCRegUpdateMaterialID[idx] != 0xffff; } + bool isValidKRegUpdateMaterialID(u16 idx) { return mKRegUpdateMaterialID[idx] != 0xffff; } + /* 0x0C */ u16 mCRegUpdateMaterialNum; /* 0x0E */ u16 mKRegUpdateMaterialNum; /* 0x10 */ u16 mCRegDataCountR; diff --git a/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h b/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h index b2d5316afb..91ecb818a5 100644 --- a/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h +++ b/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h @@ -10,6 +10,11 @@ class J3DMatColorAnm { public: /* 8003B2B8 */ ~J3DMatColorAnm() {}; /* 8003B2F4 */ J3DMatColorAnm() {}; + J3DMatColorAnm(u16 param_1, J3DAnmColor* param_2) { + field_0x0 = param_1; + mAnmFlag = 1; + mAnmColor = param_2; + } void operator=(J3DMatColorAnm const& other) { mAnmColor = other.mAnmColor; @@ -31,6 +36,11 @@ class J3DTexNoAnm { public: /* 8003B1F8 */ ~J3DTexNoAnm() {}; /* 8003B240 */ J3DTexNoAnm() {}; + J3DTexNoAnm(u16 param_1, J3DAnmTexPattern* param_2) { + field_0x4 = param_1; + mAnmFlag = 1; + mAnmTexPattern = param_2; + } /* 8003C82C */ virtual void calc(u16* param_0) const { mAnmTexPattern->getTexNo(field_0x4, param_0); } void operator=(J3DTexNoAnm const& other) { @@ -53,6 +63,11 @@ class J3DTexMtxAnm { public: /* 8003B264 */ ~J3DTexMtxAnm() {}; /* 8003B2A0 */ J3DTexMtxAnm() {}; + J3DTexMtxAnm(u16 param_1, J3DAnmTextureSRTKey* param_2) { + field_0x0 = param_1; + mAnmFlag = 1; + mAnmTransform = param_2; + } void operator=(J3DTexMtxAnm const& other) { mAnmTransform = other.mAnmTransform; @@ -74,8 +89,13 @@ private: class J3DTevKColorAnm { public: - /* 8003B150 */ ~J3DTevKColorAnm() {}; - /* 8003B18C */ J3DTevKColorAnm() {}; + /* 8003B150 */ ~J3DTevKColorAnm() {} + /* 8003B18C */ J3DTevKColorAnm() {} + J3DTevKColorAnm(u16 param_1, J3DAnmTevRegKey* param_2) { + field_0x0 = param_1; + mAnmFlag = 1; + mAnmTevReg = param_2; + } void operator=(J3DTevKColorAnm const& other) { mAnmTevReg = other.mAnmTevReg; @@ -95,8 +115,13 @@ private: class J3DTevColorAnm { public: - /* 8003B1A4 */ ~J3DTevColorAnm() {}; - /* 8003B1E0 */ J3DTevColorAnm() {}; + /* 8003B1A4 */ ~J3DTevColorAnm() {} + /* 8003B1E0 */ J3DTevColorAnm() {} + J3DTevColorAnm(u16 param_1, J3DAnmTevRegKey* param_2) { + field_0x0 = param_1; + mAnmFlag = 1; + mAnmTevReg = param_2; + } void operator=(J3DTevColorAnm const& other) { mAnmTevReg = other.mAnmTevReg; diff --git a/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h b/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h index d770e32846..4086f29ce5 100644 --- a/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h +++ b/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h @@ -19,11 +19,11 @@ public: /* 8032F6F8 */ int removeTexNoAnimator(J3DAnmTexPattern*); /* 8032F7B4 */ int removeTexMtxAnimator(J3DAnmTextureSRTKey*); /* 8032F880 */ int removeTevRegAnimator(J3DAnmTevRegKey*); - /* 8032F9C0 */ void createTexMtxForAnimator(J3DAnmTextureSRTKey*); - /* 8032FAF4 */ void entryMatColorAnimator(J3DAnmColor*); - /* 8032FBC8 */ void entryTexNoAnimator(J3DAnmTexPattern*); - /* 8032FCC4 */ void entryTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032FE70 */ void entryTevRegAnimator(J3DAnmTevRegKey*); + /* 8032F9C0 */ int createTexMtxForAnimator(J3DAnmTextureSRTKey*); + /* 8032FAF4 */ int entryMatColorAnimator(J3DAnmColor*); + /* 8032FBC8 */ int entryTexNoAnimator(J3DAnmTexPattern*); + /* 8032FCC4 */ int entryTexMtxAnimator(J3DAnmTextureSRTKey*); + /* 8032FE70 */ int entryTevRegAnimator(J3DAnmTevRegKey*); /* 8032F604 */ virtual ~J3DMaterialTable(); diff --git a/include/JSystem/J3DGraphBase/J3DMatBlock.h b/include/JSystem/J3DGraphBase/J3DMatBlock.h index 4f8e8bf0aa..d488d0b703 100644 --- a/include/JSystem/J3DGraphBase/J3DMatBlock.h +++ b/include/JSystem/J3DGraphBase/J3DMatBlock.h @@ -48,7 +48,7 @@ public: /* 8000DFE8 */ virtual u32 getTexGenNum() const; /* 8000E0CC */ virtual void setTexCoord(u32, J3DTexCoord const*); /* 8000DFE0 */ virtual J3DTexCoord* getTexCoord(u32); - /* 8003AB2C */ virtual void setTexMtx(u32, J3DTexMtx*); + /* 8003AB2C */ virtual void setTexMtx(u32, J3DTexMtx*) {} /* 8000DFD8 */ virtual J3DTexMtx* getTexMtx(u32); /* 80317424 */ virtual void setNBTScale(J3DNBTScale const*); /* 80317420 */ virtual void setNBTScale(J3DNBTScale); @@ -611,7 +611,7 @@ inline u32 calcAlphaCmpID(u32 param_1, u32 param_2, u32 param_3) { return ((param_1 & 0xff) << 5) + ((param_2 & 0xff) << 3) + (param_3 & 0xff); } -// matches for `J3DMaterialFactory::newAlphaComp` but fails for `d_resorce::addWarpMaterial` +// matches for `J3DMaterialFactory::newAlphaComp,J3DMaterialFactory_v21::newAlphaComp` but fails for `d_resorce::addWarpMaterial` // inline u32 calcAlphaCmpID(u8 param_1, u8 param_2, u8 param_3) { // return param_1 * 0x20 + param_2 * 8 + param_3; // } @@ -794,7 +794,7 @@ struct J3DIndTexCoordScaleInfo { /* 0x3 */ u8 field_0x3; }; // Size: 0x4 -extern J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo; +extern const J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo; struct J3DIndTexCoordScale : public J3DIndTexCoordScaleInfo { /* 8000E0E4 */ J3DIndTexCoordScale() : J3DIndTexCoordScaleInfo(j3dDefaultIndTexCoordScaleInfo) {} @@ -817,7 +817,7 @@ struct J3DIndTexOrderInfo { /* 0x3 */ u8 field_0x3; }; // Size: 0x04 -extern J3DIndTexOrderInfo j3dDefaultIndTexOrderNull; +extern const J3DIndTexOrderInfo j3dDefaultIndTexOrderNull; struct J3DIndTexOrder : public J3DIndTexOrderInfo { /* 8000E128 */ J3DIndTexOrder() : J3DIndTexOrderInfo(j3dDefaultIndTexOrderNull) {} @@ -895,7 +895,7 @@ struct J3DColorChanInfo { /* 0x6 */ u8 pad[2]; }; -extern J3DColorChanInfo j3dDefaultColorChanInfo; +extern const J3DColorChanInfo j3dDefaultColorChanInfo; /* static inline u32 setChanCtrlMacro(u8 param_0, GXColorSrc param_1, GXColorSrc param_2, u32 param_3, GXDiffuseFn param_4, GXAttnFn param_5) { diff --git a/include/JSystem/J3DGraphBase/J3DMaterial.h b/include/JSystem/J3DGraphBase/J3DMaterial.h index c7838fb96e..fd9fce606a 100644 --- a/include/JSystem/J3DGraphBase/J3DMaterial.h +++ b/include/JSystem/J3DGraphBase/J3DMaterial.h @@ -72,11 +72,13 @@ public: void onInvalid() { mInvalid = 1; } u32 getTexGenNum() const { return mTexGenBlock->getTexGenNum(); } u8 getTevStageNum() const { return mTevBlock->getTevStageNum(); } + J3DTexCoord* getTexCoord(u32 idx) { return mTexGenBlock->getTexCoord(idx); } void setTevColor(u32 i, const J3DGXColorS10* i_color) { mTevBlock->setTevColor(i, i_color); } void setTevKColor(u32 i, const J3DGXColor* i_color) { mTevBlock->setTevKColor(i, i_color); } void setMaterialAnm(J3DMaterialAnm* i_anm) { mMaterialAnm = i_anm; } void setCullMode(u8 i_mode) { mColorBlock->setCullMode(i_mode); } + void setTexMtx(u32 idx, J3DTexMtx* mtx) { mTexGenBlock->setTexMtx(idx, mtx); } public: /* 0x04 */ J3DMaterial* mNext; diff --git a/include/JSystem/J3DGraphBase/J3DStruct.h b/include/JSystem/J3DGraphBase/J3DStruct.h index e0e23f6379..13e097cf3e 100644 --- a/include/JSystem/J3DGraphBase/J3DStruct.h +++ b/include/JSystem/J3DGraphBase/J3DStruct.h @@ -66,6 +66,8 @@ struct J3DTexMtxInfo { /* 0x00 */ u8 mProjection; /* 0x01 */ u8 mInfo; + /* 0x02 */ u8 field_0x2; + /* 0x03 */ u8 field_0x3; /* 0x04 */ Vec mCenter; /* 0x10 */ J3DTextureSRTInfo mSRT; /* 0x24 */ Mtx44 mEffectMtx; diff --git a/include/JSystem/J3DGraphBase/J3DTevs.h b/include/JSystem/J3DGraphBase/J3DTevs.h index 35bfd28691..6453019814 100644 --- a/include/JSystem/J3DGraphBase/J3DTevs.h +++ b/include/JSystem/J3DGraphBase/J3DTevs.h @@ -12,16 +12,101 @@ struct J3DTevStageInfo { /* 0x5 */ u8 mTevAlphaOp; /* 0x6 */ u8 mTevAlphaAB; /* 0x7 */ u8 mTevSwapModeInfo; - /* 0x8 */ u8 field_0x8[0xc]; + /* 0x8 */ u8 field_0x8; + /* 0x8 */ u8 field_0x9; + /* 0x8 */ u8 field_0xa; + /* 0x8 */ u8 field_0xb; + /* 0x8 */ u8 field_0xc; + /* 0x8 */ u8 field_0xd; + /* 0x8 */ u8 field_0xe; + /* 0x8 */ u8 field_0xf; + /* 0x8 */ u8 field_0x10; + /* 0x8 */ u8 field_0x11; + /* 0x8 */ u8 field_0x12; + /* 0x8 */ u8 field_0x13; }; extern J3DTevStageInfo const j3dDefaultTevStageInfo; +struct J3DTevSwapModeTableInfo { + /* 0x0 */ u8 field_0x0; + /* 0x1 */ u8 field_0x1; + /* 0x2 */ u8 field_0x2; + /* 0x3 */ u8 field_0x3; +}; // Size: 0x4 + +extern const J3DTevSwapModeTableInfo j3dDefaultTevSwapModeTable; + +struct J3DTevSwapModeInfo { + /* 0x0 */ u8 mRasSel; + /* 0x1 */ u8 mTexSel; + /* 0x2 */ u8 field_0x2; + /* 0x3 */ u8 field_0x3; +}; // Size: 0x4 + +extern J3DTevSwapModeInfo const j3dDefaultTevSwapMode; + struct J3DTevStage { /* 8000E230 */ J3DTevStage(); - /* 8000E298 */ void setTevStageInfo(J3DTevStageInfo const&); - /* 8003AACC */ J3DTevStage(J3DTevStageInfo const&); + void setTevColorOp(u8 param_1, u8 param_2, u8 param_3, u8 param_4, u8 param_5) { + mTevColorOp = mTevColorOp & ~(0x01 << 2) | param_1 << 2; + if (param_1 <= 1) { + mTevColorOp = mTevColorOp & ~(0x03 << 4) | param_3 << 4; + mTevColorOp = mTevColorOp & ~0x03 | param_2; + } else { + mTevColorOp = mTevColorOp & ~(0x03 << 4) | (param_1 >> 1 & 3) << 4; + mTevColorOp = mTevColorOp & ~0x03 | 3; + } + mTevColorOp = mTevColorOp & ~(0x01 << 3) | param_4 << 3; + mTevColorOp = mTevColorOp & ~(0x03 << 6) | param_5 << 6; + } + void setTevColorAB(u8 a, u8 b) { mTevColorAB = a << 4 | b; } + void setTevColorCD(u8 c, u8 d) { mTevColorCD = c << 4 | d; } + void setAlphaA(u8 a) { mTevAlphaAB = mTevAlphaAB & ~(0x07 << 5) | a << 5; } + void setAlphaB(u8 b) { mTevAlphaAB = mTevAlphaAB & ~(0x07 << 2) | b << 2; } + void setAlphaC(u8 c) { + mTevAlphaAB = mTevAlphaAB & ~0x03 | c >> 1; + mTevSwapModeInfo = mTevSwapModeInfo & ~(0x01 << 7) | c << 7; + } + void setAlphaD(u8 d) { mTevSwapModeInfo = mTevSwapModeInfo & ~(0x07 << 4) | d << 4; } + void setAlphaABCD(u8 a, u8 b, u8 c, u8 d) { + setAlphaA(a); + setAlphaB(b); + setAlphaC(c); + setAlphaD(d); + } + + void setTevAlphaOp(u8 param_1, u8 param_2, u8 param_3, u8 param_4, u8 param_5) { + mTevAlphaOp = mTevAlphaOp & ~(0x01 << 2) | param_1 << 2; + if (param_1 <= 1) { + mTevAlphaOp = mTevAlphaOp & ~0x03 | param_2; + mTevAlphaOp = mTevAlphaOp & ~(0x03 << 4) | param_3 << 4; + } else { + mTevAlphaOp = mTevAlphaOp & ~(0x03 << 4) | (param_1 >> 1 & 3) << 4; + mTevAlphaOp = mTevAlphaOp & ~0x03 | 3; + } + mTevAlphaOp = mTevAlphaOp & ~(0x01 << 3) | param_4 << 3; + mTevAlphaOp = mTevAlphaOp & ~(0x03 << 6) | param_5 << 6; + } + + void setTevStageInfo(const J3DTevStageInfo& info) { + setTevColorOp(info.mTevAlphaOp, info.mTevAlphaAB, info.mTevSwapModeInfo, info.field_0x8, info.field_0x9); + setTevColorAB(info.mTevColorOp, info.mTevColorAB); + setTevColorCD(info.mTevColorCD, info.field_0x4); + setAlphaABCD(info.field_0xa, info.field_0xb, info.field_0xc, info.field_0xd); + setTevAlphaOp(info.field_0xe, info.field_0xf, info.field_0x10, info.field_0x11, info.field_0x12); + } + + /* 8003AACC */ J3DTevStage(J3DTevStageInfo const& param_0) { + setTevStageInfo(param_0); + setTevSwapModeInfo(j3dDefaultTevSwapMode); + } + + void setTevSwapModeInfo(J3DTevSwapModeInfo const& param_0) { + setTexSel(param_0.mTexSel); + setRasSel(param_0.mRasSel); + } void setRasSel(u8 ras_sel) { mTevSwapModeInfo = (mTevSwapModeInfo & ~3) | ras_sel; } void setTexSel(u8 tex_sel) { mTevSwapModeInfo = (mTevSwapModeInfo & ~0xc) | (tex_sel << 2); } @@ -88,7 +173,7 @@ struct J3DTevOrderInfo { /* 0x3 */ u8 field_0x3; // Maybe padding }; -extern J3DTevOrderInfo j3dDefaultTevOrderInfoNull; +extern const J3DTevOrderInfo j3dDefaultTevOrderInfoNull; struct J3DTevOrder : public J3DTevOrderInfo { /* 8000E140 */ J3DTevOrder() : J3DTevOrderInfo(j3dDefaultTevOrderInfoNull) {} @@ -97,15 +182,6 @@ struct J3DTevOrder : public J3DTevOrderInfo { u8 getTexMap() { return mTexMap; } }; -struct J3DTevSwapModeTableInfo { - /* 0x0 */ u8 field_0x0; - /* 0x1 */ u8 field_0x1; - /* 0x2 */ u8 field_0x2; - /* 0x3 */ u8 field_0x3; -}; // Size: 0x4 - -extern J3DTevSwapModeTableInfo j3dDefaultTevSwapModeTable; - struct J3DTevSwapModeTable { /* 8000E134 */ J3DTevSwapModeTable(); J3DTevSwapModeTable(J3DTevSwapModeTableInfo const& info) { @@ -118,13 +194,6 @@ struct J3DTevSwapModeTable { /* 0x0 */ u8 field_0x0; }; // Size: 0x1 -struct J3DTevSwapModeInfo { - /* 0x0 */ u8 mRasSel; - /* 0x1 */ u8 mTexSel; - /* 0x2 */ u8 field_0x2; - /* 0x3 */ u8 field_0x3; -}; // Size: 0x4 - struct J3DNBTScale; struct J3DTexCoord; void loadNBTScale(J3DNBTScale& param_0); diff --git a/include/JSystem/J3DGraphBase/J3DTexture.h b/include/JSystem/J3DGraphBase/J3DTexture.h index c0741a4d0a..6deb7e563f 100644 --- a/include/JSystem/J3DGraphBase/J3DTexture.h +++ b/include/JSystem/J3DGraphBase/J3DTexture.h @@ -28,8 +28,13 @@ public: } }; +extern J3DTexMtxInfo const j3dDefaultTexMtxInfo; + class J3DTexMtx { public: + J3DTexMtx() { + mTexMtxInfo = j3dDefaultTexMtxInfo; + } J3DTexMtx(const J3DTexMtxInfo& info) { mTexMtxInfo = info; } @@ -75,6 +80,7 @@ struct J3DTexCoord : public J3DTexCoordInfo { u8 getTexGenSrc() { return mTexGenSrc; } u8 getTexGenMtx() { return mTexGenMtx & 0xff; } u16 getTexMtxReg() { return mTexMtxReg & 0xff; } + void setTexGenMtx(u8 param_1) { mTexGenMtx = param_1; } void resetTexMtxReg() { mTexMtxReg = mTexGenMtx; diff --git a/libs/JSystem/J2DGraph/J2DMaterial.cpp b/libs/JSystem/J2DGraph/J2DMaterial.cpp index 6c0ff56168..d25648f748 100644 --- a/libs/JSystem/J2DGraph/J2DMaterial.cpp +++ b/libs/JSystem/J2DGraph/J2DMaterial.cpp @@ -369,7 +369,7 @@ void J2DMaterial::setAnimation(J2DAnmTevRegKey* anm) { if (index == matID) { J3DAnmCRegKeyTable* anmTbl = anm->getAnmCRegKeyTable(); - mAnmPointer->field_0x32[anmTbl[i]._18] = i; + mAnmPointer->field_0x32[anmTbl[i].mColorId] = i; } } } @@ -387,7 +387,7 @@ void J2DMaterial::setAnimation(J2DAnmTevRegKey* anm) { if (index == matID) { J3DAnmKRegKeyTable* anmTbl = anm->getAnmKRegKeyTable(); - mAnmPointer->field_0x3a[anmTbl[i]._18] = i; + mAnmPointer->field_0x3a[anmTbl[i].mColorId] = i; } } } diff --git a/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp b/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp index 728ea33ad9..74ec8e5ace 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp @@ -6,6 +6,7 @@ #include "JSystem/J3DGraphAnimator/J3DMaterialAttach.h" #include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" +#include "JSystem/JUtility/JUTAssert.h" #include "dol2asm.h" #include "dolphin/types.h" @@ -46,13 +47,8 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_24(); extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); -extern "C" extern u8 const j3dDefaultTexMtxInfo[100]; extern "C" extern void* __vt__11J3DTexNoAnm[3]; -// -// Declarations: -// - /* 8032F5A8-8032F5D0 329EE8 0028+00 0/0 1/1 0/0 .text clear__16J3DMaterialTableFv */ void J3DMaterialTable::clear() { mMaterialNum = 0; @@ -65,16 +61,6 @@ void J3DMaterialTable::clear() { field_0x1c = 0; } -/* ############################################################################################## */ -/* 803CEE80-803CEE90 02BFA0 000C+04 2/2 0/0 0/0 .data __vt__16J3DMaterialTable */ -SECTION_DATA extern void* __vt__16J3DMaterialTable[3 + 1 /* padding */] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__16J3DMaterialTableFv, - /* padding */ - NULL, -}; - /* 8032F5D0-8032F604 329F10 0034+00 0/0 2/2 0/0 .text __ct__16J3DMaterialTableFv */ J3DMaterialTable::J3DMaterialTable() { mMaterialNum = 0; @@ -111,12 +97,10 @@ int J3DMaterialTable::removeMatColorAnimator(J3DAnmColor* pAnmColor) { /* 8032F6F8-8032F7B4 32A038 00BC+00 0/0 5/5 10/10 .text * removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern */ -// regalloc -#ifdef NONMATCHING int J3DMaterialTable::removeTexNoAnimator(J3DAnmTexPattern* anm) { int ret = 0; u16 materialNum = anm->getUpdateMaterialNum(); - J3DAnmTexPatternFullTable* anm_table = anm->getAnmTable(); + J3DAnmTexPatternFullTable* anm_table = anm->mAnmTable; for (u16 i = 0; i < materialNum; i++) { if (anm->isValidUpdateMaterialID(i)) { @@ -133,90 +117,222 @@ int J3DMaterialTable::removeTexNoAnimator(J3DAnmTexPattern* anm) { return ret; } + +/* 8032F7B4-8032F880 32A0F4 00CC+00 0/0 4/4 26/26 .text + * removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey */ +int J3DMaterialTable::removeTexMtxAnimator(J3DAnmTextureSRTKey* pAnm) { + s32 ret = 0; + u16 materialNum = pAnm->getUpdateMaterialNum(); + + for (u16 i = 0; i < materialNum; i++) { + u16 materialID = pAnm->getUpdateMaterialID(i); + if (materialID != 0xFFFF) { + J3DMaterial* pMaterial = getMaterialNodePointer(materialID); + J3DMaterialAnm* pMatAnm = pMaterial->getMaterialAnm(); + u8 texMtxID = pAnm->getUpdateTexMtxID(i); + if (pMatAnm == NULL) { + ret = 1; + } else if (texMtxID != 0xFF) { + pMatAnm->setTexMtxAnm(texMtxID, NULL); + } + } + } + + return ret; +} + +/* 8032F880-8032F9C0 32A1C0 0140+00 0/0 7/7 24/24 .text + * removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey */ +int J3DMaterialTable::removeTevRegAnimator(J3DAnmTevRegKey* pAnm) { + s32 ret = 0; + u16 cRegMaterialNum = pAnm->getCRegUpdateMaterialNum(); + u16 kRegMaterialNum = pAnm->getKRegUpdateMaterialNum(); + + for (u16 i = 0; i < cRegMaterialNum; i++) { + if (pAnm->getCRegUpdateMaterialID(i) != 0xFFFF) { + J3DMaterialAnm * pMatAnm = getMaterialNodePointer(pAnm->getCRegUpdateMaterialID(i))->getMaterialAnm(); + u32 colorId = pAnm->getAnmCRegKeyTable()[i].mColorId; + if (pMatAnm == NULL) + ret = 1; + else + pMatAnm->setTevColorAnm(colorId, NULL); + } + } + + for (u16 i = 0; i < kRegMaterialNum; i++) { + if (pAnm->getKRegUpdateMaterialID(i) != 0xFFFF) { + J3DMaterialAnm * pMatAnm = getMaterialNodePointer(pAnm->getKRegUpdateMaterialID(i))->getMaterialAnm(); + u32 colorId = pAnm->getAnmKRegKeyTable()[i].mColorId; + if (pMatAnm == NULL) { + ret = 1; + } else { + pMatAnm->setTevKColorAnm(colorId, NULL); + } + } + } + + return ret; +} + +/* 8032F9C0-8032FAF4 32A300 0134+00 1/1 0/0 0/0 .text + * createTexMtxForAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey */ +int J3DMaterialTable::createTexMtxForAnimator(J3DAnmTextureSRTKey* param_1) { + int rv = 0; + u16 materialNum = param_1->getUpdateMaterialNum(); + if (isLocked()) { + return 2; + } + for (u16 i = 0; i < materialNum; i++) { + if (param_1->isValidUpdateMaterialID(i)) { + J3DMaterial* material = getMaterialNodePointer(param_1->getUpdateMaterialID(i)); + u8 mtxId = param_1->getUpdateTexMtxID(i); + if (material->getMaterialAnm() == 0) { + rv = 1; + } else { + u32 mtxId2 = mtxId; + if (mtxId2 != 0xff && material->getTexMtx(mtxId2) == 0) { + J3DTexMtx* mtx = new J3DTexMtx(); + rv = 4; + material->setTexMtx(mtxId2, mtx); + JUT_WARN(420, "matNo<%d> : texMtx%d nothing !\n", i, mtxId); + } + } + } + } + return rv; +} + +/* 8032FAF4-8032FBC8 32A434 00D4+00 0/0 1/1 0/0 .text + * entryMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor */ +int J3DMaterialTable::entryMatColorAnimator(J3DAnmColor* param_1) { + int rv = 0; + u16 materialNum = param_1->getUpdateMaterialNum(); + if (isLocked()) { + return 2; + } + for (u16 i = 0; i < materialNum; i++) { + if (param_1->isValidUpdateMaterialID(i)) { + J3DMaterial* material = getMaterialNodePointer(param_1->getUpdateMaterialID(i)); + J3DMaterialAnm* materialAnm = material->getMaterialAnm(); + if (materialAnm == 0) { + rv = 1; + } else { + J3DMatColorAnm matColorAnm(i, param_1); + materialAnm->setMatColorAnm(0, &matColorAnm); + } + } + } + return rv; +} + +/* 8032FBC8-8032FCC4 32A508 00FC+00 0/0 7/7 1/1 .text + * entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern */ +int J3DMaterialTable::entryTexNoAnimator(J3DAnmTexPattern* param_1) { + int rv = 0; + u16 materialNum = param_1->getUpdateMaterialNum(); + if (isLocked()) { + return 2; + } + for (u16 i = 0; i < materialNum; i++) { + if (param_1->isValidUpdateMaterialID(i)) { + J3DMaterial* material = getMaterialNodePointer(param_1->getUpdateMaterialID(i)); + J3DMaterialAnm* materialAnm = material->getMaterialAnm(); + u8 texNo = param_1->getAnmTable()[i].mTexNo; + if (materialAnm == 0) { + rv = 1; + } else { + J3DTexNoAnm texNoAnm(i, param_1); + materialAnm->setTexNoAnm(texNo, &texNoAnm); + } + } + } + return rv; +} + +/* 8032FCC4-8032FE70 32A604 01AC+00 0/0 14/14 6/6 .text + * entryTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey */ +// getUpdateTexMtxID u8 issue / getSRTCenter +#ifdef NONMATCHING +int J3DMaterialTable::entryTexMtxAnimator(J3DAnmTextureSRTKey* param_1) { + int rv = 0; + u16 materialNum = param_1->getUpdateMaterialNum(); + rv = createTexMtxForAnimator(param_1); + if (rv != 0) { + return rv; + } + if (isLocked()) { + return 2; + } + for (u16 i = 0; i < materialNum; i++) { + if (param_1->isValidUpdateMaterialID(i)) { + J3DMaterial* material = getMaterialNodePointer(param_1->getUpdateMaterialID(i)); + J3DMaterialAnm* materialAnm = material->getMaterialAnm(); + u8 texMtxID = param_1->getUpdateTexMtxID(i); + if (materialAnm == 0) { + rv = 1; + } else { + if (texMtxID != 0xff) { + if (material->getTexCoord(texMtxID) != NULL) { + material->getTexCoord(texMtxID)->setTexGenMtx(texMtxID * 3 + 30); + } + J3DTexMtxInfo& iVar3 = material->getTexMtx(texMtxID)->getTexMtxInfo(); + iVar3.mInfo = (iVar3.mInfo & 0x3f)| (param_1->getTexMtxCalcType() << 7); + iVar3.mCenter.x = param_1->getSRTCenter(i)->x; + iVar3.mCenter.y = param_1->getSRTCenter(i)->y; + iVar3.mCenter.z = param_1->getSRTCenter(i)->z; + J3DTexMtxAnm texMtxAnm(i, param_1); + materialAnm->setTexMtxAnm(texMtxID, &texMtxAnm); + } + } + } + } + return rv; +} #else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm int J3DMaterialTable::removeTexNoAnimator(J3DAnmTexPattern* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s" -} -#pragma pop -#endif - -/* 8032F7B4-8032F880 32A0F4 00CC+00 0/0 4/4 26/26 .text - * removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm int J3DMaterialTable::removeTexMtxAnimator(J3DAnmTextureSRTKey* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s" -} -#pragma pop - -/* 8032F880-8032F9C0 32A1C0 0140+00 0/0 7/7 24/24 .text - * removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm int J3DMaterialTable::removeTevRegAnimator(J3DAnmTevRegKey* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s" -} -#pragma pop - -/* 8032F9C0-8032FAF4 32A300 0134+00 1/1 0/0 0/0 .text - * createTexMtxForAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DMaterialTable::createTexMtxForAnimator(J3DAnmTextureSRTKey* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/createTexMtxForAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s" -} -#pragma pop - -/* 8032FAF4-8032FBC8 32A434 00D4+00 0/0 1/1 0/0 .text - * entryMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DMaterialTable::entryMatColorAnimator(J3DAnmColor* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor.s" -} -#pragma pop - -/* 8032FBC8-8032FCC4 32A508 00FC+00 0/0 7/7 1/1 .text - * entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DMaterialTable::entryTexNoAnimator(J3DAnmTexPattern* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern.s" -} -#pragma pop - -/* 8032FCC4-8032FE70 32A604 01AC+00 0/0 14/14 6/6 .text - * entryTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DMaterialTable::entryTexMtxAnimator(J3DAnmTextureSRTKey* param_0) { +asm int J3DMaterialTable::entryTexMtxAnimator(J3DAnmTextureSRTKey* param_0) { nofralloc #include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey.s" } #pragma pop +#endif /* 8032FE70-8032FFEC 32A7B0 017C+00 0/0 10/10 4/4 .text * entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DMaterialTable::entryTevRegAnimator(J3DAnmTevRegKey* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey.s" +int J3DMaterialTable::entryTevRegAnimator(J3DAnmTevRegKey* param_1) { + int rv = 0; + u16 cRegNum = param_1->getCRegUpdateMaterialNum(); + u16 kRegNum = param_1->getKRegUpdateMaterialNum(); + if (isLocked()) { + return 2; + } + for (u16 i = 0; i < cRegNum; i++) { + if (param_1->isValidCRegUpdateMaterialID(i)) { + J3DMaterial* material = getMaterialNodePointer(param_1->getCRegUpdateMaterialID(i)); + J3DMaterialAnm* materialAnm = material->getMaterialAnm(); + u8 colorId = param_1->getAnmCRegKeyTable()[i].mColorId; + if (materialAnm == NULL) { + rv = 1; + } else { + J3DTevColorAnm tevColorAnm(i, param_1); + materialAnm->setTevColorAnm(colorId, &tevColorAnm); + } + } + } + for (u16 i = 0; i < kRegNum; i++) { + if (param_1->isValidKRegUpdateMaterialID(i)) { + J3DMaterial* material = getMaterialNodePointer(param_1->getKRegUpdateMaterialID(i)); + J3DMaterialAnm* materialAnm = material->getMaterialAnm(); + u32 colorId = param_1->getAnmKRegKeyTable()[i].mColorId; + if (materialAnm == NULL) { + rv = 1; + } else { + J3DTevKColorAnm tevKColorAnm(i, param_1); + materialAnm->setTevKColorAnm(colorId, &tevKColorAnm); + } + } + } + return rv; } -#pragma pop diff --git a/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp b/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp index 453101a0e0..d5c1405b65 100644 --- a/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp +++ b/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp @@ -296,17 +296,19 @@ void J3DDifferedTexMtx::loadExecute(f32 const (*param_0)[4]) { int tex_gen_type = tex_coord->getTexGenType(); if (tex_gen_type == 1 || tex_gen_type == 0) { tex_mtx = tex_gen_block->getTexMtx(i); - u8 tex_gen_src = tex_coord->getTexGenSrc(); + u8 tex_gen_src = tex_mtx->getTexMtxInfo().mInfo; u32 unk; switch (tex_gen_src & 0x3f) { case 3: case 9: - mtx = &tex_mtx_obj->getMtx(i); + Mtx& tmp5 = tex_mtx_obj->getMtx(i); + mtx = &tmp5; break; case 1: case 6: case 7: - mtx = &tex_mtx_obj->getMtx(i); + Mtx& tmp6 = tex_mtx_obj->getMtx(i); + mtx = &tmp6; break; case 2: case 8: @@ -368,7 +370,8 @@ void J3DDifferedTexMtx::loadExecute(f32 const (*param_0)[4]) { mtx = &tmp2; break; default: - mtx = &tex_mtx_obj->getMtx(i); + Mtx& tmp7 = tex_mtx_obj->getMtx(i); + mtx = &tmp7; break; } GXLoadTexMtxImm(*mtx, i * 3 + 0x40, GX_MTX3x4); @@ -376,11 +379,10 @@ void J3DDifferedTexMtx::loadExecute(f32 const (*param_0)[4]) { } } else { for (u16 i = 0; i < (u16)tex_mtx_num; i++) { - tex_coord = tex_gen_block->getTexCoord(i); - int tex_gen_type = tex_coord->getTexGenType(); + int tex_gen_type = tex_gen_block->getTexCoord(i)->getTexGenType(); if (tex_gen_type == 1 || tex_gen_type == 0) { tex_mtx = tex_gen_block->getTexMtx(i); - u8 tex_gen_src = tex_coord->getTexGenSrc(); + u8 tex_gen_src = tex_mtx->getTexMtxInfo().mInfo; u32 unk; switch (tex_gen_src & 0x3f) { case 3: diff --git a/libs/JSystem/J3DGraphBase/J3DStruct.cpp b/libs/JSystem/J3DGraphBase/J3DStruct.cpp index 6b1cec2e2a..b2d537934d 100644 --- a/libs/JSystem/J3DGraphBase/J3DStruct.cpp +++ b/libs/JSystem/J3DGraphBase/J3DStruct.cpp @@ -1,15 +1,9 @@ // -// Generated By: dol2asm -// Translation Unit: J3DStruct +// J3DStruct // #include "JSystem/J3DGraphBase/J3DStruct.h" #include "JSystem/JMath/JMath.h" -#include "dol2asm.h" - -// -// Declarations: -// /* 803256C4-80325718 320004 0054+00 0/0 11/11 24/24 .text __as__12J3DLightInfoFRC12J3DLightInfo */ J3DLightInfo& J3DLightInfo::operator=(J3DLightInfo const& param_0) { @@ -29,39 +23,23 @@ J3DTexMtxInfo& J3DTexMtxInfo::operator=(J3DTexMtxInfo const& param_0) { return *this; } -/* ############################################################################################## */ -/* 80456410-80456414 004A10 0004+00 1/1 0/0 0/0 .sdata2 @409 */ -SECTION_SDATA2 static f32 lit_409 = 1.0f; - -/* 80456414-80456418 004A14 0004+00 1/1 0/0 0/0 .sdata2 @410 */ -SECTION_SDATA2 static u8 lit_410[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; +// Helper functions to set float literal order +static f32 dummyLiteralOrder() { + return 1.0f; +} /* 80325794-803257DC 3200D4 0048+00 0/0 2/2 7/7 .text setEffectMtx__13J3DTexMtxInfoFPA4_f */ -// needs inline asm? -#ifdef NONMATCHING void J3DTexMtxInfo::setEffectMtx(Mtx param_0) { JMath::gekko_ps_copy12(&mEffectMtx, param_0); - mEffectMtx[3][0] = 0.0f; - mEffectMtx[3][1] = 0.0f; + register f32 zero = 0.0f; + register f32* mtx = (f32*)mEffectMtx; + asm { + psq_st zero, 0x30(mtx), 0, 0 + }; mEffectMtx[3][2] = 0.0f; mEffectMtx[3][3] = 1.0f; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DTexMtxInfo::setEffectMtx(f32 (*param_0)[4]) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DStruct/setEffectMtx__13J3DTexMtxInfoFPA4_f.s" -} -#pragma pop -#endif /* 803257DC-80325800 32011C 0024+00 0/0 5/5 0/0 .text * __as__16J3DIndTexMtxInfoFRC16J3DIndTexMtxInfo */ diff --git a/libs/JSystem/J3DGraphBase/J3DTevs.cpp b/libs/JSystem/J3DGraphBase/J3DTevs.cpp index 040d734260..917edb672f 100644 --- a/libs/JSystem/J3DGraphBase/J3DTevs.cpp +++ b/libs/JSystem/J3DGraphBase/J3DTevs.cpp @@ -1,6 +1,5 @@ // -// Generated By: dol2asm -// Translation Unit: J3DTevs +// J3DTevs // #include "JSystem/J3DGraphBase/J3DTevs.h" @@ -9,75 +8,9 @@ #include "JSystem/J3DGraphBase/J3DSys.h" #include "JSystem/J3DGraphBase/J3DTexture.h" #include "JSystem/J3DGraphBase/J3DTransform.h" -#include "dol2asm.h" -// -// Types: -// - -// -// Forward References: -// - -extern "C" void load__11J3DLightObjCFUl(); -extern "C" void loadTexCoordGens__FUlP11J3DTexCoord(); -extern "C" void load__9J3DTexMtxCFUl(); -extern "C" void calc__9J3DTexMtxFPA4_Cf(); -extern "C" void calcTexMtx__9J3DTexMtxFPA4_Cf(); -extern "C" void calcPostTexMtx__9J3DTexMtxFPA4_Cf(); -extern "C" void isTexNoReg__FPv(); -extern "C" void getTexNoReg__FPv(); -extern "C" void loadTexNo__FUlRCUs(); -extern "C" void patchTexNo_PtrToIdx__FUlRCUs(); -extern "C" void loadNBTScale__FR11J3DNBTScale(); -extern "C" void makeTexCoordTable__Fv(); -extern "C" void makeAlphaCmpTable__Fv(); -extern "C" void makeZModeTable__Fv(); -extern "C" void makeTevSwapTable__Fv(); -extern "C" void loadTexMtx__9J3DTexMtxCFUl(); -extern "C" void loadPostTexMtx__9J3DTexMtxCFUl(); -extern "C" static void J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType(); -extern "C" static void J3DGDLoadPostTexMtxImm__FPA4_fUl(); -extern "C" extern GXColor j3dDefaultColInfo; -extern "C" extern u32 j3dDefaultAmbInfo; -extern "C" extern u8 data_804563C8; -extern "C" extern GXColorS10 j3dDefaultTevColor; -extern "C" extern GXColor j3dDefaultTevKColor; -extern "C" extern u8 j3dDefaultTevSwapMode[4]; -extern "C" extern u16 data_804563F8; - -// -// External References: -// - -extern void J3DGDSetTexImgPtrRaw(_GXTexMapID param_0, u32 param_1); - -extern "C" void J3DGDSetLightAttn__F10_GXLightIDffffff(); -extern "C" void J3DGDSetLightColor__F10_GXLightID8_GXColor(); -extern "C" void J3DGDSetLightPos__F10_GXLightIDfff(); -extern "C" void J3DGDSetLightDir__F10_GXLightIDfff(); -extern "C" void J3DGDSetTexCoordGen__F13_GXTexGenType12_GXTexGenSrc(); -extern "C" void -J3DGDSetTexLookupMode__F11_GXTexMapID14_GXTexWrapMode14_GXTexWrapMode12_GXTexFilter12_GXTexFilterfffUcUc13_GXAnisotropy(); -extern "C" void J3DGDSetTexImgAttr__F11_GXTexMapIDUsUs9_GXTexFmt(); -extern "C" void J3DGDSetTexImgPtr__F11_GXTexMapIDPv(); -extern "C" void J3DGDSetTexTlut__F11_GXTexMapIDUl10_GXTlutFmt(); -extern "C" void J3DGDLoadTlut__FPvUl11_GXTlutSize(); -extern "C" void J3DGetTextureMtx__FRC17J3DTextureSRTInfoRC3VecPA4_f(); -extern "C" void J3DGetTextureMtxOld__FRC17J3DTextureSRTInfoRC3VecPA4_f(); -extern "C" void J3DGetTextureMtxMaya__FRC17J3DTextureSRTInfoPA4_f(); -extern "C" void J3DGetTextureMtxMayaOld__FRC17J3DTextureSRTInfoPA4_f(); -extern "C" void J3DMtxProjConcat__FPA4_fPA4_fPA4_f(); -extern "C" void GDOverflowed(); -extern "C" void _savegpr_26(); -extern "C" void _savegpr_28(); -extern "C" void _restgpr_26(); -extern "C" void _restgpr_28(); -extern "C" u8 sTexCoordScaleTable__6J3DSys[64 + 4 /* padding */]; - -// -// Declarations: -// +static void J3DGDLoadTexMtxImm(f32 (*)[4], u32, _GXTexMtxType); +static void J3DGDLoadPostTexMtxImm(f32 (*)[4], u32); /* 80323590-80323644 31DED0 00B4+00 0/0 3/3 0/0 .text load__11J3DLightObjCFUl */ void J3DLightObj::load(u32 lightIdx) const { @@ -344,16 +277,6 @@ u16 getTexNoReg(void* param_0) { return *(u32*)((u8*)param_0 + 1); } -/* ############################################################################################## */ -/* 804563B0-804563B4 0049B0 0004+00 1/1 0/0 0/0 .sdata2 @1167 */ -SECTION_SDATA2 static f32 lit_1167 = 0.125f; - -/* 804563B4-804563B8 0049B4 0004+00 1/1 0/0 0/0 .sdata2 @1168 */ -SECTION_SDATA2 static f32 lit_1168 = 1.0f / 100.0f; - -/* 804563B8-804563C0 0049B8 0008+00 1/1 0/0 0/0 .sdata2 @1171 */ -SECTION_SDATA2 static f64 lit_1171 = 4503601774854144.0 /* cast s32 to float */; - /* 80323F94-8032413C 31E8D4 01A8+00 0/0 20/20 0/0 .text loadTexNo__FUlRCUs */ void loadTexNo(u32 param_0, u16 const& param_1) { ResTIMG* resTIMG = j3dSys.getTexture()->getResTIMG(param_1); @@ -387,91 +310,62 @@ void loadNBTScale(J3DNBTScale& param_0) { /* ############################################################################################## */ /* 803A1EC8-803A1EFC 02E528 0034+00 0/0 9/9 24/24 .rodata j3dDefaultLightInfo */ -SECTION_RODATA extern const J3DLightInfo j3dDefaultLightInfo = { +extern const J3DLightInfo j3dDefaultLightInfo = { 0.0f, 0.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0xff, 0xff, 0xff, 0xff, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, }; -COMPILER_STRIP_GATE(0x803A1EC8, &j3dDefaultLightInfo); /* 803A1EFC-803A1F1C 02E55C 0020+00 0/0 5/5 0/0 .rodata j3dDefaultTexCoordInfo */ -SECTION_RODATA extern J3DTexCoordInfo const j3dDefaultTexCoordInfo[8] = { +extern J3DTexCoordInfo const j3dDefaultTexCoordInfo[8] = { {GX_MTX2x4, GX_TG_TEX0, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX1, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX2, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX3, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX4, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX5, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX6, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX7, GX_IDENTITY, 0}, }; -COMPILER_STRIP_GATE(0x803A1EFC, &j3dDefaultTexCoordInfo); /* 803A1F1C-803A1F80 02E57C 0064+00 0/0 1/1 0/0 .rodata j3dDefaultTexMtxInfo */ -SECTION_RODATA extern u8 const j3dDefaultTexMtxInfo[100] = { - 0x01, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, +extern J3DTexMtxInfo const j3dDefaultTexMtxInfo = { + 0x01, + 0x00, + 0xFF, + 0xFF, + {0.0f, 0.0f, 0.0f}, + {1.0f, 1.0f, 0, 0.0f, 0.0f}, + {1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, + 1.0f}, }; -COMPILER_STRIP_GATE(0x803A1F1C, &j3dDefaultTexMtxInfo); /* 803A1F80-803A1F9C 02E5E0 001C+00 0/0 2/2 0/0 .rodata j3dDefaultIndTexMtxInfo */ -SECTION_RODATA extern J3DIndTexMtxInfo const j3dDefaultIndTexMtxInfo = { +extern J3DIndTexMtxInfo const j3dDefaultIndTexMtxInfo = { 0.5f, 0.0f, 0.0f, 0.0f, 0.5f, 0.0f, 1 }; -COMPILER_STRIP_GATE(0x803A1F80, &j3dDefaultIndTexMtxInfo); /* 803A1F9C-803A1FB0 02E5FC 0014+00 0/0 1/1 0/0 .rodata j3dDefaultTevStageInfo */ -SECTION_RODATA extern J3DTevStageInfo const j3dDefaultTevStageInfo = { +extern J3DTevStageInfo const j3dDefaultTevStageInfo = { 0x04, 0x0A, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x05, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, }; -COMPILER_STRIP_GATE(0x803A1F9C, &j3dDefaultTevStageInfo); /* 803A1FB0-803A1FBC 02E610 000C+00 0/0 2/2 0/0 .rodata j3dDefaultIndTevStageInfo */ -SECTION_RODATA extern J3DIndTevStageInfo const j3dDefaultIndTevStageInfo = { +extern J3DIndTevStageInfo const j3dDefaultIndTevStageInfo = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; -COMPILER_STRIP_GATE(0x803A1FB0, &j3dDefaultIndTevStageInfo); /* 803A1FBC-803A1FE8 02E61C 002C+00 0/0 3/3 0/0 .rodata j3dDefaultFogInfo */ -SECTION_RODATA extern J3DFogInfo const j3dDefaultFogInfo = { +extern J3DFogInfo const j3dDefaultFogInfo = { 0x00, 0x00, 0x0140, 0.0f, 0.0f, 0.1f, 10000.0f, 0xFF, 0xFF, 0xFF, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, }; -COMPILER_STRIP_GATE(0x803A1FBC, &j3dDefaultFogInfo); /* 803A1FE8-803A1FF8 02E648 0010+00 0/0 3/3 0/0 .rodata j3dDefaultNBTScaleInfo */ -SECTION_RODATA extern J3DNBTScaleInfo const j3dDefaultNBTScaleInfo = { +extern J3DNBTScaleInfo const j3dDefaultNBTScaleInfo = { 0x00, 1.0f, 1.0f, 1.0f, }; -COMPILER_STRIP_GATE(0x803A1FE8, &j3dDefaultNBTScaleInfo); - -/* 803A1FF8-803A2008 02E658 000B+05 1/1 0/0 0/0 .rodata @1197 */ -SECTION_RODATA static u8 const lit_1197[11 + 5 /* padding */] = { - 0x1E, - 0x21, - 0x24, - 0x27, - 0x2A, - 0x2D, - 0x30, - 0x33, - 0x36, - 0x39, - 0x3C, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x803A1FF8, &lit_1197); /* 80434C98-80436A60 0619B8 1DC7+01 1/1 0/0 0/0 .bss j3dTexCoordTable */ static u8 j3dTexCoordTable[7623 + 1 /* padding */]; @@ -507,11 +401,9 @@ void makeTexCoordTable() { /* ############################################################################################## */ /* 80436A60-80436E60 063780 0400+00 1/1 3/3 0/0 .bss j3dTevSwapTableTable */ -extern u8 j3dTevSwapTableTable[1024]; u8 j3dTevSwapTableTable[1024]; /* 80436E60-80437160 063B80 0300+00 1/1 2/2 0/0 .bss j3dAlphaCmpTable */ -extern u8 j3dAlphaCmpTable[768]; u8 j3dAlphaCmpTable[768]; /* 8032423C-803242A8 31EB7C 006C+00 0/0 1/1 0/0 .text makeAlphaCmpTable__Fv */ @@ -564,67 +456,78 @@ void makeTevSwapTable() { } /* 80324358-803243BC 31EC98 0064+00 1/1 0/0 0/0 .text loadTexMtx__9J3DTexMtxCFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DTexMtx::loadTexMtx(u32 param_0) const { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DTevs/loadTexMtx__9J3DTexMtxCFUl.s" +void J3DTexMtx::loadTexMtx(u32 param_0) const { + GDOverflowCheck(0x35); + J3DGDLoadTexMtxImm((MtxP)mMtx, param_0 * 3 + 30, (_GXTexMtxType)mTexMtxInfo.mProjection); } -#pragma pop /* 803243BC-8032441C 31ECFC 0060+00 1/1 0/0 0/0 .text loadPostTexMtx__9J3DTexMtxCFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DTexMtx::loadPostTexMtx(u32 param_0) const { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DTevs/loadPostTexMtx__9J3DTexMtxCFUl.s" +void J3DTexMtx::loadPostTexMtx(u32 param_0) const { + GDOverflowCheck(0x35); + J3DGDLoadPostTexMtxImm((MtxP)mMtx, param_0 * 3 + 0x40); } -#pragma pop /* 8032441C-8032499C 31ED5C 0580+00 1/1 0/0 0/0 .text J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void J3DGDLoadTexMtxImm(f32 (*param_0)[4], u32 param_1, _GXTexMtxType param_2) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType.s" +static void J3DGDLoadTexMtxImm(f32 (*param_1)[4], u32 param_2, _GXTexMtxType param_3) { + u16 addr = param_2 << 2; + u8 len = param_3 == GX_MTX2x4 ? 8 : 12; + J3DGDWriteXFCmdHdr(addr & 0xffff, len); + J3DGDWrite_f32(param_1[0][0]); + J3DGDWrite_f32(param_1[0][1]); + J3DGDWrite_f32(param_1[0][2]); + J3DGDWrite_f32(param_1[0][3]); + J3DGDWrite_f32(param_1[1][0]); + J3DGDWrite_f32(param_1[1][1]); + J3DGDWrite_f32(param_1[1][2]); + J3DGDWrite_f32(param_1[1][3]); + if (param_3 == GX_MTX3x4) { + J3DGDWrite_f32(param_1[2][0]); + J3DGDWrite_f32(param_1[2][1]); + J3DGDWrite_f32(param_1[2][2]); + J3DGDWrite_f32(param_1[2][3]); + } } -#pragma pop /* 8032499C-80324F08 31F2DC 056C+00 1/1 0/0 0/0 .text J3DGDLoadPostTexMtxImm__FPA4_fUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void J3DGDLoadPostTexMtxImm(f32 (*param_0)[4], u32 param_1) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DTevs/J3DGDLoadPostTexMtxImm__FPA4_fUl.s" +static void J3DGDLoadPostTexMtxImm(f32 (*param_1)[4], u32 param_2) { + u16 addr = (param_2 - 0x40) * 4 + 0x500; + J3DGDWriteXFCmdHdr(addr, 12); + J3DGDWrite_f32(param_1[0][0]); + J3DGDWrite_f32(param_1[0][1]); + J3DGDWrite_f32(param_1[0][2]); + J3DGDWrite_f32(param_1[0][3]); + J3DGDWrite_f32(param_1[1][0]); + J3DGDWrite_f32(param_1[1][1]); + J3DGDWrite_f32(param_1[1][2]); + J3DGDWrite_f32(param_1[1][3]); + J3DGDWrite_f32(param_1[2][0]); + J3DGDWrite_f32(param_1[2][1]); + J3DGDWrite_f32(param_1[2][2]); + J3DGDWrite_f32(param_1[2][3]); } -#pragma pop /* ############################################################################################## */ /* 804563C0-804563C4 0049C0 0004+00 0/0 4/4 0/0 .sdata2 j3dDefaultColInfo */ -SECTION_SDATA2 extern GXColor j3dDefaultColInfo = {0xFF, 0xFF, 0xFF, 0xFF}; +extern const GXColor j3dDefaultColInfo = {0xFF, 0xFF, 0xFF, 0xFF}; /* 804563C4-804563C8 0049C4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultAmbInfo */ -SECTION_SDATA2 extern u32 j3dDefaultAmbInfo = 0x32323232; +extern const u32 j3dDefaultAmbInfo = 0x32323232; /* 804563C8-804563CC 0049C8 0004+00 0/0 1/1 0/0 .sdata2 None */ -SECTION_SDATA2 extern u8 data_804563C8 = 0x01; +extern const u8 data_804563C8 = 0x01; /* 804563CC-804563D0 0049CC 0004+00 0/0 3/3 0/0 .sdata2 j3dDefaultTevOrderInfoNull */ -SECTION_SDATA2 extern J3DTevOrderInfo j3dDefaultTevOrderInfoNull = {0xFF, 0xFF, 0xFF, 0x00}; +extern const J3DTevOrderInfo j3dDefaultTevOrderInfoNull = {0xFF, 0xFF, 0xFF, 0x00}; /* 804563D0-804563D4 0049D0 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultIndTexOrderNull */ -SECTION_SDATA2 extern J3DIndTexOrderInfo j3dDefaultIndTexOrderNull = {0xFF, 0xFF, 0x00, 0x00}; +extern const J3DIndTexOrderInfo j3dDefaultIndTexOrderNull = {0xFF, 0xFF, 0x00, 0x00}; /* 804563D4-804563D8 0049D4 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevColor */ -SECTION_SDATA2 extern GXColorS10 j3dDefaultTevColor = {0xFF, 0xFF, 0xFF, 0xFF}; +extern const GXColorS10 j3dDefaultTevColor = {0xFF, 0xFF, 0xFF, 0xFF}; /* 804563DC-804563E0 0049DC 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultIndTexCoordScaleInfo */ -SECTION_SDATA2 extern J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo = { +extern const J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo = { 0x00, 0x00, 0x00, @@ -632,10 +535,10 @@ SECTION_SDATA2 extern J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo = { }; /* 804563E0-804563E4 0049E0 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevKColor */ -SECTION_SDATA2 extern GXColor j3dDefaultTevKColor = {0xFF, 0xFF, 0xFF, 0xFF}; +extern const GXColor j3dDefaultTevKColor = {0xFF, 0xFF, 0xFF, 0xFF}; /* 804563E4-804563E8 0049E4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultTevSwapMode */ -SECTION_SDATA2 extern u8 j3dDefaultTevSwapMode[4] = { +extern J3DTevSwapModeInfo const j3dDefaultTevSwapMode = { 0x00, 0x00, 0x00, @@ -643,21 +546,21 @@ SECTION_SDATA2 extern u8 j3dDefaultTevSwapMode[4] = { }; /* 804563E8-804563EC 0049E8 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultTevSwapModeTable */ -SECTION_SDATA2 extern J3DTevSwapModeTableInfo j3dDefaultTevSwapModeTable = {0x00, 0x01, 0x02, 0x03}; +extern const J3DTevSwapModeTableInfo j3dDefaultTevSwapModeTable = {0x00, 0x01, 0x02, 0x03}; /* 804563EC-804563F0 0049EC 0004+00 0/0 3/3 0/0 .sdata2 j3dDefaultBlendInfo */ -SECTION_SDATA2 extern const J3DBlendInfo j3dDefaultBlendInfo = {GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_NOOP}; +extern const J3DBlendInfo j3dDefaultBlendInfo = {GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_NOOP}; /* 804563F0-804563F8 0049F0 0008+00 0/0 3/3 0/0 .sdata2 j3dDefaultColorChanInfo */ -SECTION_SDATA2 extern J3DColorChanInfo j3dDefaultColorChanInfo = { +extern const J3DColorChanInfo j3dDefaultColorChanInfo = { 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0xFF, 0xFF, }; /* 804563F8-804563FA 0049F8 0002+00 0/0 1/1 0/0 .sdata2 None */ -SECTION_SDATA2 extern u16 data_804563F8 = 0x1B00; +extern const u16 data_804563F8 = 0x1B00; /* 804563FA-804563FC 0049FA 0002+00 0/0 1/1 0/0 .sdata2 j3dDefaultAlphaCmpID */ -SECTION_SDATA2 extern const u16 j3dDefaultAlphaCmpID = 0x00E7; +const u16 j3dDefaultAlphaCmpID = 0x00E7; /* 804563FC-80456400 0049FC 0002+02 0/0 3/3 0/0 .sdata2 j3dDefaultZModeID */ -SECTION_SDATA2 extern const u16 j3dDefaultZModeID = 0x0017; +const u16 j3dDefaultZModeID = 0x0017; diff --git a/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp b/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp index 957cb1828b..12a70d343d 100644 --- a/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp @@ -169,19 +169,16 @@ asm J3DMaterial* J3DMaterialFactory_v21::create(J3DMaterial* param_0, int param_ } #pragma pop -/* ############################################################################################## */ -/* 804564B8-804564BC 004AB8 0004+00 1/1 0/0 0/0 .sdata2 @1130 */ -SECTION_SDATA2 static u32 lit_1130 = 0xFFFFFFFF; - /* 803337D8-80333834 32E118 005C+00 1/1 0/0 0/0 .text newMatColor__22J3DMaterialFactory_v21CFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DGXColor J3DMaterialFactory_v21::newMatColor(int param_0, int param_1) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newMatColor__22J3DMaterialFactory_v21CFii.s" +J3DGXColor J3DMaterialFactory_v21::newMatColor(int i_idx, int i_no) const { + GXColor defaultColor = {0xff,0xff,0xff,0xff}; + J3DGXColor defaultJ3DGXColor = J3DGXColor(defaultColor); + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mMatColorIdx[i_no] != 0xffff) { + return J3DGXColor(mpMatColor[mtl_init_data->mMatColorIdx[i_no]]); + } + return J3DGXColor(defaultJ3DGXColor); } -#pragma pop /* 80333834-8033386C 32E174 0038+00 1/1 0/0 0/0 .text newColorChanNum__22J3DMaterialFactory_v21CFi */ @@ -196,6 +193,17 @@ u8 J3DMaterialFactory_v21::newColorChanNum(int i_idx) const { /* 8033386C-80333A10 32E1AC 01A4+00 1/1 0/0 0/0 .text newColorChan__22J3DMaterialFactory_v21CFii */ +// J3DColorChan ctor +#ifdef NONMATCHING +J3DColorChan J3DMaterialFactory_v21::newColorChan(int i_idx, int i_no) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mColorChanIdx[i_no] != 0xffff) { + return J3DColorChan(mpColorChanInfo[mtl_init_data->mColorChanIdx[i_no]]); + } else { + return J3DColorChan(); + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -204,6 +212,7 @@ asm J3DColorChan J3DMaterialFactory_v21::newColorChan(int param_0, int param_1) #include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newColorChan__22J3DMaterialFactory_v21CFii.s" } #pragma pop +#endif /* 80333A10-80333A48 32E350 0038+00 1/1 0/0 0/0 .text newTexGenNum__22J3DMaterialFactory_v21CFi */ u32 J3DMaterialFactory_v21::newTexGenNum(int i_idx) const { @@ -265,34 +274,29 @@ J3DTevOrder J3DMaterialFactory_v21::newTevOrder(int i_idx, int i_no) const { } } -/* 80456BC0-80456BC4 000060 0004+00 1/1 0/0 0/0 .sbss2 @1299 */ -SECTION_SBSS2 static GXColorS10 defaultTevColor; - /* 80333C04-80333C74 32E544 0070+00 1/1 0/0 0/0 .text newTevColor__22J3DMaterialFactory_v21CFii */ J3DGXColorS10 J3DMaterialFactory_v21::newTevColor(int i_idx, int i_no) const { + GXColorS10 defaultTevColor = {0,0,0,0}; J3DGXColorS10 dflt = defaultTevColor; J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; if (mtl_init_data->mTevColorIdx[i_no] != 0xffff) { return mpTevColor[mtl_init_data->mTevColorIdx[i_no]]; } else { - return dflt; + return defaultTevColor; } } -/* ############################################################################################## */ -/* 804564BC-804564C0 004ABC 0004+00 1/1 0/0 0/0 .sdata2 @1317 */ -SECTION_SDATA2 static u32 lit_1317 = 0xFFFFFFFF; - /* 80333C74-80333CD0 32E5B4 005C+00 1/1 0/0 0/0 .text newTevKColor__22J3DMaterialFactory_v21CFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DGXColor J3DMaterialFactory_v21::newTevKColor(int param_0, int param_1) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevKColor__22J3DMaterialFactory_v21CFii.s" +J3DGXColor J3DMaterialFactory_v21::newTevKColor(int i_idx, int param_1) const { + GXColor defaultColor = {0xff,0xff,0xff,0xff}; + J3DGXColor defaultJ3DGXColor = J3DGXColor(defaultColor); + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mTevKColorIdx[param_1] != 0xffff) { + return J3DGXColor(mpTevKColor[mtl_init_data->mTevKColorIdx[param_1]]); + } + return J3DGXColor(defaultJ3DGXColor); } -#pragma pop /* 80333CD0-80333D08 32E610 0038+00 1/1 0/0 0/0 .text newTevStageNum__22J3DMaterialFactory_v21CFi */ @@ -317,14 +321,13 @@ J3DTevStage J3DMaterialFactory_v21::newTevStage(int i_idx, int i_no) const { /* 80333D68-80333E04 32E6A8 009C+00 1/1 0/0 0/0 .text * newTevSwapModeTable__22J3DMaterialFactory_v21CFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DTevSwapModeTable J3DMaterialFactory_v21::newTevSwapModeTable(int param_0, int param_1) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newTevSwapModeTable__22J3DMaterialFactory_v21CFii.s" +J3DTevSwapModeTable J3DMaterialFactory_v21::newTevSwapModeTable(int i_idx, int param_1) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mTevSwapModeTableIdx[param_1] != 0xffff) { + return J3DTevSwapModeTable(mpTevSwapModeTableInfo[mtl_init_data->mTevSwapModeTableIdx[param_1]]); + } + return J3DTevSwapModeTable(j3dDefaultTevSwapModeTable); } -#pragma pop /* 80333E04-80333EE0 32E744 00DC+00 1/1 0/0 0/0 .text newFog__22J3DMaterialFactory_v21CFi */ @@ -338,6 +341,16 @@ J3DFog J3DMaterialFactory_v21::newFog(int i_idx) const { } /* 80333EE0-80333F60 32E820 0080+00 1/1 0/0 0/0 .text newAlphaComp__22J3DMaterialFactory_v21CFi */ +// calcAlphaCmpID issue +#ifdef NONMATCHING +J3DAlphaComp J3DMaterialFactory_v21::newAlphaComp(int i_idx) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mAlphaCompIdx != 0xffff) { + return J3DAlphaComp(mpAlphaCompInfo[mtl_init_data->mAlphaCompIdx]); + } + return J3DAlphaComp(0xffff); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -346,6 +359,7 @@ asm J3DAlphaComp J3DMaterialFactory_v21::newAlphaComp(int param_0) const { #include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newAlphaComp__22J3DMaterialFactory_v21CFi.s" } #pragma pop +#endif /* 80333F60-80333FA4 32E8A0 0044+00 1/1 0/0 0/0 .text newBlend__22J3DMaterialFactory_v21CFi */ J3DBlend J3DMaterialFactory_v21::newBlend(int i_idx) const { diff --git a/src/d/d_resorce.cpp b/src/d/d_resorce.cpp index 63e434f064..f98c7498bc 100644 --- a/src/d/d_resorce.cpp +++ b/src/d/d_resorce.cpp @@ -5,6 +5,10 @@ #include "d/d_resorce.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" +#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" +#include "JSystem/J3DGraphLoader/J3DModelLoader.h" +#include "JSystem/J3DGraphLoader/J3DClusterLoader.h" +#include "JSystem/J3DGraphLoader/J3DAnmLoader.h" #include "JSystem/JKernel/JKRMemArchive.h" #include "JSystem/JKernel/JKRSolidHeap.h" #include "stdio.h" @@ -151,11 +155,6 @@ extern "C" u8 now__14mDoMtx_stack_c[48]; extern "C" u8 mFrameBufferTimg__13mDoGph_gInf_c[4]; extern "C" u8 mZbufferTimg__13mDoGph_gInf_c[4]; extern "C" u8 sCurrentHeap__7JKRHeap[4]; -extern "C" extern u8 j3dDefaultTevSwapMode[4]; - -// -// Declarations: -// /* 8003A260-8003A280 034BA0 0020+00 0/0 1/1 0/0 .text __ct__11dRes_info_cFv */ dRes_info_c::dRes_info_c() { @@ -250,9 +249,9 @@ static void setAlpha(J3DModelData* pModelData) { /* ############################################################################################## */ /* 80379840-803798A4 005EA0 0064+00 2/2 0/0 0/0 .rodata l_texMtxInfo */ -SECTION_RODATA static const J3DTexMtxInfo l_texMtxInfo = { +static const J3DTexMtxInfo l_texMtxInfo = { 0x00, - 0x08, + 0x08, 0x00, 0x00, {0.5f, 0.5f, 0.0f}, {0.1f, 0.1f, 0, 0.0f, 0.0f}, { @@ -264,21 +263,20 @@ SECTION_RODATA static const J3DTexMtxInfo l_texMtxInfo = { }; /* 803798A4-803798B8 005F04 0014+00 1/1 0/0 0/0 .rodata l_tevStageInfo$3774 */ -SECTION_RODATA static u8 const l_tevStageInfo[20] = { +static J3DTevStageInfo const l_tevStageInfo = { 0x05, 0x0F, 0x08, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x01, 0x00, - 0x07, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x07, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, }; -COMPILER_STRIP_GATE(0x803798A4, &l_tevStageInfo); /* 80450628-8045062C 0000A8 0004+00 1/1 0/0 0/0 .sdata l_texCoordInfo$3772 */ -SECTION_SDATA static J3DTexCoordInfo l_texCoordInfo = { +static J3DTexCoordInfo l_texCoordInfo = { 0x00, 0x00, 0x27, }; /* 8045062C-80450630 0000AC 0004+00 1/1 0/0 0/0 .sdata l_tevOrderInfo$3773 */ -SECTION_SDATA static J3DTevOrderInfo l_tevOrderInfo = { +static J3DTevOrderInfo l_tevOrderInfo = { 0x00, 0x03, 0xFF, @@ -314,7 +312,7 @@ static void addWarpMaterial(J3DModelData* param_1) { l_tevOrderInfo.field_0x0 = texGenNum; tevBlock->setTexNo(3, textureNum); tevBlock->setTevOrder(tevStageNum, l_tevOrderInfo); - tevBlock->setTevStage(tevStageNum, J3DTevStage(*(J3DTevStageInfo*)l_tevStageInfo)); + tevBlock->setTevStage(tevStageNum, l_tevStageInfo); tevBlock->setTevStageNum(tevStageNum + 1); J3DShape* pShape = pMaterial->getShape(); GXAttr attr = (GXAttr)(texGenNum + 1); @@ -327,21 +325,6 @@ static void addWarpMaterial(J3DModelData* param_1) { } } -/* 8003AACC-8003AB2C 03540C 0060+00 1/1 2/2 0/0 .text __ct__11J3DTevStageFRC15J3DTevStageInfo */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DTevStage::J3DTevStage(J3DTevStageInfo const& param_0) { - nofralloc -#include "asm/d/d_resorce/__ct__11J3DTevStageFRC15J3DTevStageInfo.s" -} -#pragma pop - -/* 8003AB2C-8003AB30 03546C 0004+00 0/0 2/0 0/0 .text setTexMtx__14J3DTexGenBlockFUlP9J3DTexMtx */ -void J3DTexGenBlock::setTexMtx(u32 param_0, J3DTexMtx* param_1) { - /* empty function */ -} - /* 8003AB30-8003AC1C 035470 00EC+00 0/0 2/1 0/0 .text * onWarpMaterial__11dRes_info_cFP12J3DModelData */ void dRes_info_c::onWarpMaterial(J3DModelData* param_0) { diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp index edeb2ee5e5..6553f119e3 100644 --- a/src/m_Do/m_Do_ext.cpp +++ b/src/m_Do/m_Do_ext.cpp @@ -449,7 +449,6 @@ extern "C" u8 sGDLObj__17J3DDisplayListObj[16]; extern "C" u8 sCurrentHeap__7JKRHeap[4]; extern "C" u8 sOldVcdVatCmd__8J3DShape[4]; extern "C" u8 mJoint__10J3DMtxCalc[4]; -extern "C" extern u8 j3dDefaultTevSwapMode[4]; extern "C" extern u16 data_804563F8; // @@ -2055,7 +2054,8 @@ asm J3DTevStage::J3DTevStage() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTevStage::setTevStageInfo(J3DTevStageInfo const& param_0) { +//asm void J3DTevStage::setTevStageInfo(J3DTevStageInfo const& param_0) { +asm void setTevStageInfo__11J3DTevStageFRC15J3DTevStageInfo() { nofralloc #include "asm/m_Do/m_Do_ext/setTevStageInfo__11J3DTevStageFRC15J3DTevStageInfo.s" }