From 6468fc663c304663afa949fd73f4f627bad0e6b3 Mon Sep 17 00:00:00 2001 From: robojumper Date: Sun, 27 Apr 2025 07:49:37 +0200 Subject: [PATCH] Get initial JParticle import to build, label symbols.txt --- config/SOUE01/symbols.txt | 392 +++++++++--------- include/JSystem/JGeometry.h | 2 +- include/JSystem/JMath/JMATrigonometric.h | 2 +- include/JSystem/JMath/JMath.h | 3 +- include/JSystem/JMath/random.h | 2 +- include/JSystem/JParticle/JPABaseShape.h | 7 +- include/JSystem/JParticle/JPAChildShape.h | 3 +- include/JSystem/JParticle/JPADrawInfo.h | 3 +- include/JSystem/JParticle/JPADynamicsBlock.h | 3 +- include/JSystem/JParticle/JPAEmitter.h | 3 +- include/JSystem/JParticle/JPAEmitterManager.h | 6 +- include/JSystem/JParticle/JPAExTexShape.h | 2 +- include/JSystem/JParticle/JPAExtraShape.h | 2 +- include/JSystem/JParticle/JPAFieldBlock.h | 8 +- include/JSystem/JParticle/JPAKeyBlock.h | 2 +- include/JSystem/JParticle/JPAList.h | 2 +- include/JSystem/JParticle/JPAMath.h | 2 +- include/JSystem/JParticle/JPAParticle.h | 4 +- include/JSystem/JParticle/JPARandom.h | 2 +- include/JSystem/JParticle/JPAResource.h | 6 +- include/JSystem/JParticle/JPAResourceLoader.h | 2 +- .../JSystem/JParticle/JPAResourceManager.h | 8 +- include/JSystem/JParticle/JPATexture.h | 2 + include/JSystem/JSupport/JSUList.h | 2 +- include/JSystem/JSupport/JSupport.h | 2 +- include/JSystem/JUtility/JUTAssert.h | 2 +- include/JSystem/JUtility/JUTTexture.h | 2 +- include/nw4r/lyt/lyt_types.h | 2 +- include/rvl/GX/GXGeometry.h | 3 + include/rvl/GX/GXTransform.h | 2 +- include/rvl/GX/GXTypes.h | 54 ++- include/rvl/MTX/mtx.h | 25 ++ include/rvl/MTX/mtxvec.h | 11 +- include/rvl/MTX/vec.h | 11 + src/JSystem/JParticle/JPABaseShape.cpp | 16 +- src/JSystem/JParticle/JPAChildShape.cpp | 4 +- src/JSystem/JParticle/JPAEmitter.cpp | 1 - src/JSystem/JParticle/JPAEmitterManager.cpp | 8 +- src/JSystem/JParticle/JPAExTexShape.cpp | 4 +- src/JSystem/JParticle/JPAExtraShape.cpp | 2 +- src/JSystem/JParticle/JPAFieldBlock.cpp | 10 +- src/JSystem/JParticle/JPAMath.cpp | 28 -- src/JSystem/JParticle/JPAResource.cpp | 23 +- src/JSystem/JParticle/JPAResourceLoader.cpp | 4 +- src/JSystem/JParticle/JPAResourceManager.cpp | 6 +- src/JSystem/JSupport/JSUList.cpp | 2 +- src/egg/gfx/eggLightTexture.cpp | 6 +- src/egg/gfx/eggPostEffectBlur.cpp | 2 +- src/egg/gfx/eggPostEffectBlurGather.cpp | 2 +- src/egg/gfx/eggPostEffectMask.cpp | 4 +- src/egg/gfx/eggPostEffectMaskDOF.cpp | 4 +- src/egg/gfx/eggPostEffectSimple.cpp | 2 +- src/egg/gfx/eggPostEffectUnk2.cpp | 2 +- src/egg/gfx/eggStateGX.cpp | 2 +- src/m/m3d/m_bline.cpp | 2 +- src/m/m3d/m_shadow.cpp | 4 +- src/nw4r/g3d/g3d_state.cpp | 6 +- src/nw4r/g3d/platform/g3d_gpu.cpp | 12 +- src/nw4r/lyt/lyt_material.cpp | 2 +- src/nw4r/ut/ut_CharWriter.cpp | 2 +- 60 files changed, 411 insertions(+), 333 deletions(-) diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt index b531eea6..0205c9b2 100644 --- a/config/SOUE01/symbols.txt +++ b/config/SOUE01/symbols.txt @@ -18414,159 +18414,159 @@ fn_80316820 = .text:0x80316820; // type:function size:0x98 fn_803168C0 = .text:0x803168C0; // type:function size:0x144 fn_80316A10 = .text:0x80316A10; // type:function size:0x8 fn_80316A20 = .text:0x80316A20; // type:function size:0x8 -JParticle__JPAResourceManager__JPAResourceManager = .text:0x80316A30; // type:function size:0x58 -JParticle__JPAResourceManager__getResource = .text:0x80316A90; // type:function size:0x48 -JParticle__JPAResourceManager__swapTexture = .text:0x80316AE0; // type:function size:0xA0 -JParticle__JPAResourceManager__registRes = .text:0x80316B80; // type:function size:0x20 -JParticle__JPAResourceManager__registTex = .text:0x80316BA0; // type:function size:0x20 -JParticle__JPAResourceManager__getResUserWork = .text:0x80316BC0; // type:function size:0x44 -JParticle__JPAResource__JPAResource = .text:0x80316C10; // type:function size:0x70 -JParticle__JPAResource__init = .text:0x80316C80; // type:function size:0x1690 -JParticle__JPAResource__calc = .text:0x80318310; // type:function size:0x544 +__ct__18JPAResourceManagerFPCvPQ23EGG4Heap = .text:0x80316A30; // type:function size:0x58 +getResource__18JPAResourceManagerCFUs = .text:0x80316A90; // type:function size:0x48 +swapTexture__18JPAResourceManagerFPC7ResTIMGPCc = .text:0x80316AE0; // type:function size:0xA0 +registRes__18JPAResourceManagerFP11JPAResource = .text:0x80316B80; // type:function size:0x20 +registTex__18JPAResourceManagerFP10JPATexture = .text:0x80316BA0; // type:function size:0x20 +getResUserWork__18JPAResourceManagerCFUs = .text:0x80316BC0; // type:function size:0x44 +__ct__11JPAResourceFv = .text:0x80316C10; // type:function size:0x70 +init__11JPAResourceFPQ23EGG4Heap = .text:0x80316C80; // type:function size:0x1690 +calc__11JPAResourceFP18JPAEmitterWorkDataP14JPABaseEmitter = .text:0x80318310; // type:function size:0x544 fn_80318860 = .text:0x80318860; // type:function size:0x4 -JParticle__JPAResource__draw = .text:0x80318870; // type:function size:0xF0 -JPAResource__drawParent = .text:0x80318960; // type:function size:0x324 -JParticle__JPAResouce__drawChild = .text:0x80318C90; // type:function size:0x2E8 -JParticle__JPAResource__setParentTev = .text:0x80318F80; // type:function size:0x29C -JParticle__JPAResource__setChildTev = .text:0x80319220; // type:function size:0x16C -JParticle__JPAResource__calc_parent = .text:0x80319390; // type:function size:0x7C -JParticle__JPAResource__calc_child = .text:0x80319410; // type:function size:0x7C -JParticle__JPAResource__calcField = .text:0x80319490; // type:function size:0x7C -JParticle__JPAResource__calcKey = .text:0x80319510; // type:function size:0x140 -JParticle__JPAResource__cakcWorkData_c = .text:0x80319650; // type:function size:0x1C4 -JParticle__JPAResource__calcWorkData_d = .text:0x80319820; // type:function size:0x80 -JParticle__JPASetPointSize = .text:0x803198A0; // type:function size:0x40 -JParticle__JPASetLineWidth = .text:0x803198E0; // type:function size:0x40 -JParticle__JPASetPointSize2 = .text:0x80319920; // type:function size:0x48 -JParticle__JPASetLineWidth2 = .text:0x80319970; // type:function size:0x48 -JParticle__JPARegistPrm = .text:0x803199C0; // type:function size:0x9C -JParticle__JPARegistEnv = .text:0x80319A60; // type:function size:0x84 -JParticle__JPARegistPrmEnv = .text:0x80319AF0; // type:function size:0x118 -JParticle__JPARegistAlpha = .text:0x80319C10; // type:function size:0xAC -JParticle__JPARegistPrmAlpha = .text:0x80319CC0; // type:function size:0xAC -JParticle__JPARegistPrmAlphaEnv = .text:0x80319D70; // type:function size:0x128 -JParticle__JPARegistAlphaEnv = .text:0x80319EA0; // type:function size:0x128 -JParticle__JPARegistEnv2 = .text:0x80319FD0; // type:function size:0x84 -JParticle__JPACalcClrIdxNormal = .text:0x8031A060; // type:function size:0x2C -JParticle__JPACalcClrIdxNormal2 = .text:0x8031A090; // type:function size:0x28 -JParticle__JPACalcClrIdxRepeat = .text:0x8031A0C0; // type:function size:0x30 -JParticle__JPACalcClrIdxRepeat2 = .text:0x8031A0F0; // type:function size:0x3C -JParticle__JPACalcClrIdxReverse = .text:0x8031A130; // type:function size:0x40 -JParticle__JPACalcClrIdxReverse2 = .text:0x8031A170; // type:function size:0x4C -JParticle__JPACalcClrIdxMerge = .text:0x8031A1C0; // type:function size:0xC -JParticle__JPACalcClrIdxMerge2 = .text:0x8031A1D0; // type:function size:0x70 -JParticle__JPACalcClrIdxRandom = .text:0x8031A240; // type:function size:0xC -JParticle__JPACalcClrIdxRandom2 = .text:0x8031A250; // type:function size:0x34 -JPartcle__JPACalcPrm = .text:0x8031A290; // type:function size:0x3C -JParticle__JPACalcPrm = .text:0x8031A2D0; // type:function size:0x38 -JParticle__JPACalcEnv = .text:0x8031A310; // type:function size:0x3C -JParticle__JPACalcEnv2 = .text:0x8031A350; // type:function size:0x38 -JParticle__JPACalcColorCopy = .text:0x8031A390; // type:function size:0x48 -JParticle__JPACGenTexCrdMtxIdt = .text:0x8031A3E0; // type:function size:0x1C -JParticle__JPAGenTexCrdMtxAnm = .text:0x8031A400; // type:function size:0x1C -JParticle__JPAGenTexCrdMtxPrj = .text:0x8031A420; // type:function size:0x1C -JParticle__JPAGenCalcTexCrdMtxAnm = .text:0x8031A440; // type:function size:0x244 -JParticle__JPALoadCalcTexCrdMtxAnm = .text:0x8031A690; // type:function size:0x22C +draw__11JPAResourceFP18JPAEmitterWorkDataP14JPABaseEmitter = .text:0x80318870; // type:function size:0xF0 +drawP__11JPAResourceFP18JPAEmitterWorkData = .text:0x80318960; // type:function size:0x324 +drawC__11JPAResourceFP18JPAEmitterWorkData = .text:0x80318C90; // type:function size:0x2E8 +setPTev__11JPAResourceFv = .text:0x80318F80; // type:function size:0x29C +setCTev__11JPAResourceFP18JPAEmitterWorkData = .text:0x80319220; // type:function size:0x16C +calc_p__11JPAResourceFP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319390; // type:function size:0x7C +calc_c__11JPAResourceFP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319410; // type:function size:0x7C +calcField__11JPAResourceFP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319490; // type:function size:0x7C +calcKey__11JPAResourceFP18JPAEmitterWorkData = .text:0x80319510; // type:function size:0x140 +calcWorkData_c__11JPAResourceFP18JPAEmitterWorkData = .text:0x80319650; // type:function size:0x1C4 +calcWorkData_d__11JPAResourceFP18JPAEmitterWorkData = .text:0x80319820; // type:function size:0x80 +JPASetPointSize__FP18JPAEmitterWorkData = .text:0x803198A0; // type:function size:0x40 +JPASetLineWidth__FP18JPAEmitterWorkData = .text:0x803198E0; // type:function size:0x40 +JPASetPointSize__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319920; // type:function size:0x48 +JPASetLineWidth__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319970; // type:function size:0x48 +JPARegistPrm__FP18JPAEmitterWorkData = .text:0x803199C0; // type:function size:0x9C +JPARegistEnv__FP18JPAEmitterWorkData = .text:0x80319A60; // type:function size:0x84 +JPARegistPrmEnv__FP18JPAEmitterWorkData = .text:0x80319AF0; // type:function size:0x118 +JPARegistAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319C10; // type:function size:0xAC +JPARegistPrmAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319CC0; // type:function size:0xAC +JPARegistPrmAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319D70; // type:function size:0x128 +JPARegistAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319EA0; // type:function size:0x128 +JPARegistEnv__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80319FD0; // type:function size:0x84 +JPACalcClrIdxNormal__FP18JPAEmitterWorkData = .text:0x8031A060; // type:function size:0x2C +JPACalcClrIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A090; // type:function size:0x28 +JPACalcClrIdxRepeat__FP18JPAEmitterWorkData = .text:0x8031A0C0; // type:function size:0x30 +JPACalcClrIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A0F0; // type:function size:0x3C +JPACalcClrIdxReverse__FP18JPAEmitterWorkData = .text:0x8031A130; // type:function size:0x40 +JPACalcClrIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A170; // type:function size:0x4C +JPACalcClrIdxMerge__FP18JPAEmitterWorkData = .text:0x8031A1C0; // type:function size:0xC +JPACalcClrIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A1D0; // type:function size:0x70 +JPACalcClrIdxRandom__FP18JPAEmitterWorkData = .text:0x8031A240; // type:function size:0xC +JPACalcClrIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A250; // type:function size:0x34 +JPACalcPrm__FP18JPAEmitterWorkData = .text:0x8031A290; // type:function size:0x3C +JPACalcPrm__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A2D0; // type:function size:0x38 +JPACalcEnv__FP18JPAEmitterWorkData = .text:0x8031A310; // type:function size:0x3C +JPACalcEnv__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A350; // type:function size:0x38 +JPACalcColorCopy__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A390; // type:function size:0x48 +JPAGenTexCrdMtxIdt__FP18JPAEmitterWorkData = .text:0x8031A3E0; // type:function size:0x1C +JPAGenTexCrdMtxAnm__FP18JPAEmitterWorkData = .text:0x8031A400; // type:function size:0x1C +JPAGenTexCrdMtxPrj__FP18JPAEmitterWorkData = .text:0x8031A420; // type:function size:0x1C +JPAGenCalcTexCrdMtxAnm__FP18JPAEmitterWorkData = .text:0x8031A440; // type:function size:0x244 +JPALoadCalcTexCrdMtxAnm__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A690; // type:function size:0x22C fn_8031A8C0 = .text:0x8031A8C0; // type:function size:0x4C -JParticle__JPALoadTex = .text:0x8031A910; // type:function size:0x38 -JParticle__JPALoadTexAnm = .text:0x8031A950; // type:function size:0x34 -JParticle__JPALoadTexAnm2 = .text:0x8031A990; // type:function size:0x30 -JParticle__JPACalcTexIdxNormal = .text:0x8031A9C0; // type:function size:0x3C -JParticle__JPACalcTexIdxNormal2 = .text:0x8031AA00; // type:function size:0x38 -JParticle__JPACalcTexIdxRepeat = .text:0x8031AA40; // type:function size:0x38 -JParticle__JPACalcIdxRepeat = .text:0x8031AA80; // type:function size:0x44 -JParticle__JPACalcTexIdxReverse = .text:0x8031AAD0; // type:function size:0x50 -JParticle__JPACalcTexIdxReverse2 = .text:0x8031AB20; // type:function size:0x5C -JParticle__JPACalcTexIdxMerge = .text:0x8031AB80; // type:function size:0x1C -JParticle__JPACalcTexIdxMerge2 = .text:0x8031ABA0; // type:function size:0x78 -JParticle__JPACalcTexIdxRandom = .text:0x8031AC20; // type:function size:0x1C -JParticle__JPACalcTexIdxRandom2 = .text:0x8031AC40; // type:function size:0x3C -JParticle__JPALoadPosMtxCam = .text:0x8031AC80; // type:function size:0xC -JParticle__noLoadPrj = .text:0x8031AC90; // type:function size:0x4 -JParticle__loadPrj = .text:0x8031ACA0; // type:function size:0x38 -JParticle__loadPrjAnm = .text:0x8031ACE0; // type:function size:0x260 -JParticle__JPADrawBillboard = .text:0x8031AF40; // type:function size:0xE8 -JParticle__JPADrawRotBillboard = .text:0x8031B030; // type:function size:0x158 -JParticle__JPADrawYBillboard = .text:0x8031B190; // type:function size:0xFC -JParticle__JPADrawRotYBillboard = .text:0x8031B290; // type:function size:0x170 -JParticle__dirTypeVel = .text:0x8031B400; // type:function size:0x1C -JParticle__dirTypePos = .text:0x8031B420; // type:function size:0x1C -JParticle__dirTypePosInv = .text:0x8031B440; // type:function size:0x48 -JParticle__dirTypeEmtrDir = .text:0x8031B490; // type:function size:0x1C -JParticle__dirTypePrevPtcl = .text:0x8031B4B0; // type:function size:0xA8 -JParticle__rotTypeY = .text:0x8031B560; // type:function size:0x40 -JParticle__rotTypeX = .text:0x8031B5A0; // type:function size:0x40 -JParticle__rotTypeZ = .text:0x8031B5E0; // type:function size:0x40 -JParticle__rotTypeXYZ = .text:0x8031B620; // type:function size:0x5C -JParticle__basePlaneXY = .text:0x8031B680; // type:function size:0x4C -JParticle__basePlaneTypeXZ = .text:0x8031B6D0; // type:function size:0x4C -JParticle__basePlaneTypeX = .text:0x8031B720; // type:function size:0x70 -JParticle__JPADrawDirection = .text:0x8031B790; // type:function size:0x278 -JParticle__JPADrawRotDirection = .text:0x8031BA10; // type:function size:0x31C -JParticle__JPADrawDBillboard = .text:0x8031BD30; // type:function size:0x1D0 -JParticle__JPADrawRotation = .text:0x8031BF00; // type:function size:0x178 -JParticle__JPADrawPoint = .text:0x8031C080; // type:function size:0xA0 -JParticle__JPADrawLine = .text:0x8031C120; // type:function size:0x174 -JParticle__getNext = .text:0x8031C2A0; // type:function size:0x8 -JParticle__getPrev = .text:0x8031C2B0; // type:function size:0x8 +JPALoadTex__FP18JPAEmitterWorkData = .text:0x8031A910; // type:function size:0x38 +JPALoadTexAnm__FP18JPAEmitterWorkData = .text:0x8031A950; // type:function size:0x34 +JPALoadTexAnm__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031A990; // type:function size:0x30 +JPACalcTexIdxNormal__FP18JPAEmitterWorkData = .text:0x8031A9C0; // type:function size:0x3C +JPACalcTexIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031AA00; // type:function size:0x38 +JPACalcTexIdxRepeat__FP18JPAEmitterWorkData = .text:0x8031AA40; // type:function size:0x38 +JPACalcTexIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031AA80; // type:function size:0x44 +JPACalcTexIdxReverse__FP18JPAEmitterWorkData = .text:0x8031AAD0; // type:function size:0x50 +JPACalcTexIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031AB20; // type:function size:0x5C +JPACalcTexIdxMerge__FP18JPAEmitterWorkData = .text:0x8031AB80; // type:function size:0x1C +JPACalcTexIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031ABA0; // type:function size:0x78 +JPACalcTexIdxRandom__FP18JPAEmitterWorkData = .text:0x8031AC20; // type:function size:0x1C +JPACalcTexIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031AC40; // type:function size:0x3C +JPALoadPosMtxCam__FP18JPAEmitterWorkData = .text:0x8031AC80; // type:function size:0xC +noLoadPrj__FPC18JPAEmitterWorkDataPA4_Cf = .text:0x8031AC90; // type:function size:0x4 +loadPrj__FPC18JPAEmitterWorkDataPA4_Cf = .text:0x8031ACA0; // type:function size:0x38 +loadPrjAnm__FPC18JPAEmitterWorkDataPA4_Cf = .text:0x8031ACE0; // type:function size:0x260 +JPADrawBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031AF40; // type:function size:0xE8 +JPADrawRotBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031B030; // type:function size:0x158 +JPADrawYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031B190; // type:function size:0xFC +JPADrawRotYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031B290; // type:function size:0x170 +dirTypeVel__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3 = .text:0x8031B400; // type:function size:0x1C +dirTypePos__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3 = .text:0x8031B420; // type:function size:0x1C +dirTypePosInv__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3 = .text:0x8031B440; // type:function size:0x48 +dirTypeEmtrDir__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3 = .text:0x8031B490; // type:function size:0x1C +dirTypePrevPtcl__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3 = .text:0x8031B4B0; // type:function size:0xA8 +rotTypeY__FffRA3_A4_f = .text:0x8031B560; // type:function size:0x40 +rotTypeX__FffRA3_A4_f = .text:0x8031B5A0; // type:function size:0x40 +rotTypeZ__FffRA3_A4_f = .text:0x8031B5E0; // type:function size:0x40 +rotTypeXYZ__FffRA3_A4_f = .text:0x8031B620; // type:function size:0x5C +basePlaneTypeXY__FPA4_fff = .text:0x8031B680; // type:function size:0x4C +basePlaneTypeXZ__FPA4_fff = .text:0x8031B6D0; // type:function size:0x4C +basePlaneTypeX__FPA4_fff = .text:0x8031B720; // type:function size:0x70 +JPADrawDirection__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031B790; // type:function size:0x278 +JPADrawRotDirection__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031BA10; // type:function size:0x31C +JPADrawDBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031BD30; // type:function size:0x1D0 +JPADrawRotation__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031BF00; // type:function size:0x178 +JPADrawPoint__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031C080; // type:function size:0xA0 +JPADrawLine__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031C120; // type:function size:0x174 +getNext__FP26JPANode<15JPABaseParticle> = .text:0x8031C2A0; // type:function size:0x8 +getPrev__FP26JPANode<15JPABaseParticle> = .text:0x8031C2B0; // type:function size:0x8 fn_8031C2C0 = .text:0x8031C2C0; // type:function size:0x4C -JParticle__JPADrawStripe = .text:0x8031C310; // type:function size:0x4CC +JPADrawStripe__FP18JPAEmitterWorkData = .text:0x8031C310; // type:function size:0x4CC JParticle__JPADrawStripeX = .text:0x8031C7E0; // type:function size:0x844 -JParticle__JPADrawEmitterCallBackB = .text:0x8031D030; // type:function size:0x24 -JParticle__JPADrawParticleCallBack = .text:0x8031D060; // type:function size:0x2C -JParticle__makeColorTable = .text:0x8031D090; // type:function size:0x250 -JParticle__JPABaseShape__JPABaseShape = .text:0x8031D2E0; // type:function size:0x110 -JParticle__JPABaseShape__setGX = .text:0x8031D3F0; // type:function size:0x14C -JParticle__JPACalcScaleX = .text:0x8031D540; // type:function size:0x78 -JParticle__JPACalcScaleY = .text:0x8031D5C0; // type:function size:0x78 -JParticle__JPAScaleCopy = .text:0x8031D640; // type:function size:0xC -JParticle__JPACalcScaleAnmNormal = .text:0x8031D650; // type:function size:0xC -JParticle__JPACalcScaleAnmRepeatX = .text:0x8031D660; // type:function size:0x64 -JParticle__JPACalcScaleAnmRepeatY = .text:0x8031D6D0; // type:function size:0x64 -JParticle__JPACalcScaleAnmReverseX = .text:0x8031D740; // type:function size:0x94 -JParticle__JPACalcScaleAnmReverseY = .text:0x8031D7E0; // type:function size:0x94 -JParticle__JPACalcAlphaAnm = .text:0x8031D880; // type:function size:0x90 -JParticle__JPACalcAlphaFlickAnm = .text:0x8031D910; // type:function size:0x148 -JParticle__JPAExtraShape__JPAExtraShape = .text:0x8031DA60; // type:function size:0x34 -JParticle__JPAExtraShape__init = .text:0x8031DAA0; // type:function size:0xF8 +JPADrawEmitterCallBackB__FP18JPAEmitterWorkData = .text:0x8031D030; // type:function size:0x24 +JPADrawParticleCallBack__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D060; // type:function size:0x2C +makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsPQ23EGG4Heap = .text:0x8031D090; // type:function size:0x250 +__ct__12JPABaseShapeFPCUcPQ23EGG4Heap = .text:0x8031D2E0; // type:function size:0x110 +setGX__12JPABaseShapeCFP18JPAEmitterWorkData = .text:0x8031D3F0; // type:function size:0x14C +JPACalcScaleX__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D540; // type:function size:0x78 +JPACalcScaleY__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D5C0; // type:function size:0x78 +JPACalcScaleCopy__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D640; // type:function size:0xC +JPACalcScaleAnmNormal__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D650; // type:function size:0xC +JPACalcScaleAnmRepeatX__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D660; // type:function size:0x64 +JPACalcScaleAnmRepeatY__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D6D0; // type:function size:0x64 +JPACalcScaleAnmReverseX__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D740; // type:function size:0x94 +JPACalcScaleAnmReverseY__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D7E0; // type:function size:0x94 +JPACalcAlphaAnm__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D880; // type:function size:0x90 +JPACalcAlphaFlickAnm__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031D910; // type:function size:0x148 +__ct__13JPAExtraShapeFPCUc = .text:0x8031DA60; // type:function size:0x34 +init__13JPAExtraShapeFv = .text:0x8031DAA0; // type:function size:0xF8 fn_8031DBA0 = .text:0x8031DBA0; // type:function size:0x18 -JParticle__JPARegistChildPrmEnv = .text:0x8031DBC0; // type:function size:0x114 -JParticle__JPACalcChildAlphaOut = .text:0x8031DCE0; // type:function size:0x30 -JParticle__JPACalcChildScaleOut = .text:0x8031DD10; // type:function size:0x28 -JParticle__JPAChildShape__JPAChildShape = .text:0x8031DD40; // type:function size:0x8 -JParticle__JPALoadExTex = .text:0x8031DD50; // type:function size:0x114 -JParticle__ExTexShape__ExTexShape = .text:0x8031DE70; // type:function size:0x8 +JPARegistChildPrmEnv__FP18JPAEmitterWorkData = .text:0x8031DBC0; // type:function size:0x114 +JPACalcChildAlphaOut__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031DCE0; // type:function size:0x30 +JPACalcChildScaleOut__FP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x8031DD10; // type:function size:0x28 +__ct__13JPAChildShapeFPCUc = .text:0x8031DD40; // type:function size:0x8 +JPALoadExTex__FP18JPAEmitterWorkData = .text:0x8031DD50; // type:function size:0x114 +__ct__13JPAExTexShapeFPCUc = .text:0x8031DE70; // type:function size:0x8 fn_8031DE80 = .text:0x8031DE80; // type:function size:0x214 -JParticle__JPAEmitterWorkData__JPAVolumePoint = .text:0x8031E0A0; // type:function size:0xD4 -JParticle__JPAEmitterData__JPAVolumeLine = .text:0x8031E180; // type:function size:0x114 -JParticle__JPAEmitterData__JPAVolumeCircle = .text:0x8031E2A0; // type:function size:0x204 -JParticle__JPAEmitterData__JPAVolumeCube = .text:0x8031E4B0; // type:function size:0x104 -JParticle__JPAEmitterData__JPAVolumeSphere = .text:0x8031E5C0; // type:function size:0x340 -JParticle__JPAEmitterData__JPAVolumeCylinder = .text:0x8031E900; // type:function size:0x1DC -JParticle__JPAEmitterData__JPAVolumeTorus = .text:0x8031EAE0; // type:function size:0x238 -JParticle__JPADynamicsBlock__JPADynamicsBlock = .text:0x8031ED20; // type:function size:0x34 -JParticle__JPADynamicsBlock__init = .text:0x8031ED60; // type:function size:0xB4 -JParticle__JPADynamicsBlock__create = .text:0x8031EE20; // type:function size:0x200 -JPAFieldBase__calcAffect = .text:0x8031F020; // type:function size:0x150 -JPAFieldBase__calcFadeAffect = .text:0x8031F170; // type:function size:0x9C -JPAFieldGravity__prepare = .text:0x8031F210; // type:function size:0xB4 -JPAFieldGravity__calc( = .text:0x8031F2D0; // type:function size:0xC -JPAFieldAir__prepare = .text:0x8031F2E0; // type:function size:0xE0 -JPAFieldAir__calc = .text:0x8031F3C0; // type:function size:0xAC -JPAFieldMagnet__prepare = .text:0x8031F470; // type:function size:0x6C -JPAFieldMagnet__calc = .text:0x8031F4E0; // type:function size:0x94 -JPAFieldNewton__prepare = .text:0x8031F580; // type:function size:0x90 -JPAFieldNewton__calc = .text:0x8031F610; // type:function size:0xE0 -JPAFieldVortex__prepare = .text:0x8031F6F0; // type:function size:0x64 -JPAFieldVortex__calc = .text:0x8031F760; // type:function size:0x184 -JPAFieldConvection__prepare = .text:0x8031F8F0; // type:function size:0x118 -JPAFieldConvection__calc = .text:0x8031FA10; // type:function size:0x1DC -JPAFieldRandom__calc = .text:0x8031FBF0; // type:function size:0x10C -JPAFieldDrag__calc = .text:0x8031FD00; // type:function size:0x80 -JPAFieldSpin__prepare = .text:0x8031FD80; // type:function size:0xA4 -JParticle__JPAFieldSpin__calc = .text:0x8031FE30; // type:function size:0xE8 -JParticle__JPAFieldBlock__JPAFieldBlock = .text:0x8031FF20; // type:function size:0x38 -fn_8031FF60 = .text:0x8031FF60; // type:function size:0x26C +JPAVolumePoint__FP18JPAEmitterWorkData = .text:0x8031E0A0; // type:function size:0xD4 +JPAVolumeLine__FP18JPAEmitterWorkData = .text:0x8031E180; // type:function size:0x114 +JPAVolumeCircle__FP18JPAEmitterWorkData = .text:0x8031E2A0; // type:function size:0x204 +JPAVolumeCube__FP18JPAEmitterWorkData = .text:0x8031E4B0; // type:function size:0x104 +JPAVolumeSphere__FP18JPAEmitterWorkData = .text:0x8031E5C0; // type:function size:0x340 +JPAVolumeCylinder__FP18JPAEmitterWorkData = .text:0x8031E900; // type:function size:0x1DC +JPAVolumeTorus__FP18JPAEmitterWorkData = .text:0x8031EAE0; // type:function size:0x238 +__ct__16JPADynamicsBlockFPCUc = .text:0x8031ED20; // type:function size:0x34 +init__16JPADynamicsBlockFv = .text:0x8031ED60; // type:function size:0xB4 +create__16JPADynamicsBlockFP18JPAEmitterWorkData = .text:0x8031EE20; // type:function size:0x200 +calcAffect__12JPAFieldBaseFP13JPAFieldBlockP15JPABaseParticle = .text:0x8031F020; // type:function size:0x150 +calcFadeAffect__12JPAFieldBaseCFP13JPAFieldBlockf = .text:0x8031F170; // type:function size:0x9C +prepare__15JPAFieldGravityFP18JPAEmitterWorkDataP13JPAFieldBlock = .text:0x8031F210; // type:function size:0xB4 +calc__15JPAFieldGravityFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031F2D0; // type:function size:0xC +prepare__11JPAFieldAirFP18JPAEmitterWorkDataP13JPAFieldBlock = .text:0x8031F2E0; // type:function size:0xE0 +calc__11JPAFieldAirFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031F3C0; // type:function size:0xAC +prepare__14JPAFieldMagnetFP18JPAEmitterWorkDataP13JPAFieldBlock = .text:0x8031F470; // type:function size:0x6C +calc__14JPAFieldMagnetFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031F4E0; // type:function size:0x94 +prepare__14JPAFieldNewtonFP18JPAEmitterWorkDataP13JPAFieldBlock = .text:0x8031F580; // type:function size:0x90 +calc__14JPAFieldNewtonFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031F610; // type:function size:0xE0 +prepare__14JPAFieldVortexFP18JPAEmitterWorkDataP13JPAFieldBlock = .text:0x8031F6F0; // type:function size:0x64 +calc__14JPAFieldVortexFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031F760; // type:function size:0x184 +prepare__18JPAFieldConvectionFP18JPAEmitterWorkDataP13JPAFieldBlock = .text:0x8031F8F0; // type:function size:0x118 +calc__18JPAFieldConvectionFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031FA10; // type:function size:0x1DC +calc__14JPAFieldRandomFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031FBF0; // type:function size:0x10C +calc__12JPAFieldDragFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031FD00; // type:function size:0x80 +prepare__12JPAFieldSpinFP18JPAEmitterWorkDataP13JPAFieldBlock = .text:0x8031FD80; // type:function size:0xA4 +calc__12JPAFieldSpinFP18JPAEmitterWorkDataP13JPAFieldBlockP15JPABaseParticle = .text:0x8031FE30; // type:function size:0xE8 +__ct__13JPAFieldBlockFPCUcPQ23EGG4Heap = .text:0x8031FF20; // type:function size:0x38 +init__13JPAFieldBlockFPQ23EGG4Heap = .text:0x8031FF60; // type:function size:0x26C fn_803201D0 = .text:0x803201D0; // type:function size:0x40 fn_80320210 = .text:0x80320210; // type:function size:0x40 fn_80320250 = .text:0x80320250; // type:function size:0x40 @@ -18576,58 +18576,58 @@ fn_80320310 = .text:0x80320310; // type:function size:0x40 fn_80320350 = .text:0x80320350; // type:function size:0x40 fn_80320390 = .text:0x80320390; // type:function size:0x40 fn_803203D0 = .text:0x803203D0; // type:function size:0x40 -JParticle__JPAKeyBlock__JPAKeyBlock = .text:0x80320410; // type:function size:0x10 -JParticle__JPAKeyBlock__calc = .text:0x80320420; // type:function size:0x94 -JParticle__JPATexture__JPATexture = .text:0x803204C0; // type:function size:0x60 -fn_80320520 = .text:0x80320520; // type:function size:0x5C -JParticle__JPAResourceLoader__JPAResourceLoader = .text:0x80320580; // type:function size:0x40 -JParticle__JPAResourceLoader__load_jpc = .text:0x803205C0; // type:function size:0x3C0 -JParticle__JPAEmitterManager__JPAEmitterManager = .text:0x80320980; // type:function size:0x204 -JSUList_JPABaseEmitter__dt = .text:0x80320B90; // type:function size:0x58 -JParticle__JPABaseEmitter__JPABaseEmitter = .text:0x80320BF0; // type:function size:0x58 -JParticle__JPABaseEmitter___JPABaseEmitter = .text:0x80320C50; // type:function size:0x60 -JSUList_JPABaseEmiiter__ct = .text:0x80320CB0; // type:function size:0x30 +__ct__11JPAKeyBlockFPCUc = .text:0x80320410; // type:function size:0x10 +calc__11JPAKeyBlockFf = .text:0x80320420; // type:function size:0x94 +__ct__10JPATextureFPCUc = .text:0x803204C0; // type:function size:0x60 +__dt__10JPATextureFv = .text:0x80320520; // type:function size:0x5C +__ct__17JPAResourceLoaderFPCUcP18JPAResourceManager = .text:0x80320580; // type:function size:0x40 +load_jpc__17JPAResourceLoaderFPCUcP18JPAResourceManager = .text:0x803205C0; // type:function size:0x3C0 +__ct__17JPAEmitterManagerFUlUlPQ23EGG4HeapUcUc = .text:0x80320980; // type:function size:0x204 +__dt__25JSULink<14JPABaseEmitter>Fv = .text:0x80320B90; // type:function size:0x58 +__ct__14JPABaseEmitterFv = .text:0x80320BF0; // type:function size:0x58 +__dt__14JPABaseEmitterFv = .text:0x80320C50; // type:function size:0x60 +__ct__25JSUList<14JPABaseEmitter>Fv = .text:0x80320CB0; // type:function size:0x30 fn_80320CE0 = .text:0x80320CE0; // type:function size:0x10 fn_80320CF0 = .text:0x80320CF0; // type:function size:0x40 -JParticle__JPAEmitterManager__createSimpleEmitterID = .text:0x80320D30; // type:function size:0xE4 +createSimpleEmitterID__17JPAEmitterManagerFRCQ29JGeometry8TVec3UsUcUcP18JPAEmitterCallBackP19JPAParticleCallBack = .text:0x80320D30; // type:function size:0xE4 fn_80320E20 = .text:0x80320E20; // type:function size:0xB8 -JParticle__JPAEmitterManager__calc = .text:0x80320EE0; // type:function size:0x88 -JParticle__JPAEmitterManager__draw = .text:0x80320F70; // type:function size:0x204 -JParticle__JPAEmitterManager__forceDeleteAllEmitter = .text:0x80321180; // type:function size:0x58 -JParticle__JPAEmitterManager__forceDeleteGroupEmitter = .text:0x803211E0; // type:function size:0x5C -JParticle__JPAEmitterManager__forceDeleteEmitter = .text:0x80321240; // type:function size:0x6C -JParticle__JPAEmitterManager__entryResourceManager = .text:0x803212B0; // type:function size:0x10 -JParticle__JPAEmitterManager__clearResourceManager = .text:0x803212C0; // type:function size:0xA8 -JParticle__JPAEmitterManager__calcYBBCam = .text:0x80321370; // type:function size:0xD4 -JParticle__JPAEmitterCallBack___JPAEmitterCallBack = .text:0x80321450; // type:function size:0x40 -JParticle__JPABaseEmitter__init = .text:0x80321490; // type:function size:0x294 -JParticle__JPABaseEmitter__createParticle = .text:0x80321730; // type:function size:0x120 -JParticle__JPABaseEmitter__createChild = .text:0x80321850; // type:function size:0xFC -JParticle__JPABaseEmitter__deleteAllParticle = .text:0x80321950; // type:function size:0x160 -JParticle__JPABaseEmitter__processTillStartFrame = .text:0x80321AB0; // type:function size:0x40 -JParticle__JPABaseEmitter__processTermination = .text:0x80321AF0; // type:function size:0x98 -JParticle__JPABaseEmitter__calcEmitterGlobalPosition = .text:0x80321B90; // type:function size:0x80 -JParticle__JPABaseEmitter__getCurrentCreateNumber = .text:0x80321C10; // type:function size:0x10 -JParticle__JPABaseEmitter__loadTexture = .text:0x80321C20; // type:function size:0x54 -JParticle__JPAParticleCallBack___JPAParticleCallBack = .text:0x80321C80; // type:function size:0x40 -JParticle__JPABaseParticle__init_c = .text:0x80321CC0; // type:function size:0x7B8 -JParticle__JPABaseParticle__init_c2 = .text:0x80322480; // type:function size:0x654 -JParticle__JPABaseParticle__calc_p = .text:0x80322AE0; // type:function size:0x28C -JParticle__JPABaseParticle__calc_c = .text:0x80322D70; // type:function size:0x258 -JParticle__JPABaseParticle__canCreateChild = .text:0x80322FD0; // type:function size:0x80 -JParticle__JPAGetDirMtx = .text:0x80323050; // type:function size:0x13C -JParticle__JPAGetYZRotateMtx = .text:0x80323190; // type:function size:0x128 -JParticle__JPAGetXYZRotateMtx = .text:0x803232C0; // type:function size:0x1B8 -JParticle__JPASetRMtxSTVecfromMtx = .text:0x80323480; // type:function size:0x1BC -JParticle__JPACalcKeyAnmValue = .text:0x80323640; // type:function size:0xC4 -fn_80323710 = .text:0x80323710; // type:function size:0x18 -fn_80323730 = .text:0x80323730; // type:function size:0x64 -fn_803237A0 = .text:0x803237A0; // type:function size:0x70 -JSUPtrList__initiate = .text:0x80323810; // type:function size:0x14 -fn_80323830 = .text:0x80323830; // type:function size:0x24 -JSUList__append = .text:0x80323860; // type:function size:0xAC -JSUPtrList__prepend = .text:0x80323910; // type:function size:0xAC -JSUList__remove = .text:0x803239C0; // type:function size:0xAC +calc__17JPAEmitterManagerFUc = .text:0x80320EE0; // type:function size:0x88 +draw__17JPAEmitterManagerFPC11JPADrawInfoUc = .text:0x80320F70; // type:function size:0x204 +forceDeleteAllEmitter__17JPAEmitterManagerFv = .text:0x80321180; // type:function size:0x58 +forceDeleteGroupEmitter__17JPAEmitterManagerFUc = .text:0x803211E0; // type:function size:0x5C +forceDeleteEmitter__17JPAEmitterManagerFP14JPABaseEmitter = .text:0x80321240; // type:function size:0x6C +entryResourceManager__17JPAEmitterManagerFP18JPAResourceManagerUc = .text:0x803212B0; // type:function size:0x10 +clearResourceManager__17JPAEmitterManagerFUc = .text:0x803212C0; // type:function size:0xA8 +calcYBBCam__17JPAEmitterManagerFv = .text:0x80321370; // type:function size:0xD4 +__dt__18JPAEmitterCallBackFv = .text:0x80321450; // type:function size:0x40 +init__14JPABaseEmitterFP17JPAEmitterManagerP11JPAResource = .text:0x80321490; // type:function size:0x294 +createParticle__14JPABaseEmitterFv = .text:0x80321730; // type:function size:0x120 +createChild__14JPABaseEmitterFP15JPABaseParticle = .text:0x80321850; // type:function size:0xFC +deleteAllParticle__14JPABaseEmitterFv = .text:0x80321950; // type:function size:0x160 +processTillStartFrame__14JPABaseEmitterFv = .text:0x80321AB0; // type:function size:0x40 +processTermination__14JPABaseEmitterFv = .text:0x80321AF0; // type:function size:0x98 +calcEmitterGlobalPosition__14JPABaseEmitterCFPQ29JGeometry8TVec3 = .text:0x80321B90; // type:function size:0x80 +getCurrentCreateNumber__14JPABaseEmitterCFv = .text:0x80321C10; // type:function size:0x10 +loadTexture__14JPABaseEmitterFUc11_GXTexMapID = .text:0x80321C20; // type:function size:0x54 +__dt__19JPAParticleCallBackFv = .text:0x80321C80; // type:function size:0x40 +init_p__15JPABaseParticleFP18JPAEmitterWorkData = .text:0x80321CC0; // type:function size:0x7B8 +init_c__15JPABaseParticleFP18JPAEmitterWorkDataP15JPABaseParticle = .text:0x80322480; // type:function size:0x654 +calc_p__15JPABaseParticleFP18JPAEmitterWorkData = .text:0x80322AE0; // type:function size:0x28C +calc_c__15JPABaseParticleFP18JPAEmitterWorkData = .text:0x80322D70; // type:function size:0x258 +canCreateChild__15JPABaseParticleFP18JPAEmitterWorkData = .text:0x80322FD0; // type:function size:0x80 +JPAGetDirMtx__FRCQ29JGeometry8TVec3PA4_f = .text:0x80323050; // type:function size:0x13C +JPAGetYZRotateMtx__FssPA4_f = .text:0x80323190; // type:function size:0x128 +JPAGetXYZRotateMtx__FsssPA4_f = .text:0x803232C0; // type:function size:0x1B8 +JPASetRMtxSTVecfromMtx__FPA4_CfPA4_fPQ29JGeometry8TVec3PQ29JGeometry8TVec3 = .text:0x80323480; // type:function size:0x1BC +JPACalcKeyAnmValue__FfUsPCf = .text:0x80323640; // type:function size:0xC4 +__ct__10JSUPtrLinkFPv = .text:0x80323710; // type:function size:0x18 +__dt__10JSUPtrLinkFv = .text:0x80323730; // type:function size:0x64 +__dt__10JSUPtrListFv = .text:0x803237A0; // type:function size:0x70 +initiate__10JSUPtrListFv = .text:0x80323810; // type:function size:0x14 +setFirst__10JSUPtrListFP10JSUPtrLink = .text:0x80323830; // type:function size:0x24 +append__10JSUPtrListFP10JSUPtrLink = .text:0x80323860; // type:function size:0xAC +prepend__10JSUPtrListFP10JSUPtrLink = .text:0x80323910; // type:function size:0xAC +remove__10JSUPtrListFP10JSUPtrLink = .text:0x803239C0; // type:function size:0xAC LMSi_AnalyzeMessageHeader = .text:0x80323A70; // type:function size:0x68 LMSi_AnalyzeMessageBlocks = .text:0x80323AE0; // type:function size:0xAC LMSi_AnalyzeMessageBinary = .text:0x80323B90; // type:function size:0x34 diff --git a/include/JSystem/JGeometry.h b/include/JSystem/JGeometry.h index 5ae2e827..ab44b31c 100644 --- a/include/JSystem/JGeometry.h +++ b/include/JSystem/JGeometry.h @@ -1,7 +1,7 @@ #ifndef JGEOMETRY_H #define JGEOMETRY_H -#include "dolphin/mtx.h" +#include "common.h" #include "math.h" #include "JSystem/JMath/JMath.h" diff --git a/include/JSystem/JMath/JMATrigonometric.h b/include/JSystem/JMath/JMATrigonometric.h index 2b162c56..2111fabb 100644 --- a/include/JSystem/JMath/JMATrigonometric.h +++ b/include/JSystem/JMath/JMATrigonometric.h @@ -1,7 +1,7 @@ #ifndef JMATRIGONOMETRIC_H #define JMATRIGONOMETRIC_H -#include "dolphin/types.h" +#include "common.h" #include "utility.h" template diff --git a/include/JSystem/JMath/JMath.h b/include/JSystem/JMath/JMath.h index eb7932e8..343571b8 100644 --- a/include/JSystem/JMath/JMath.h +++ b/include/JSystem/JMath/JMath.h @@ -1,7 +1,8 @@ #ifndef JMATH_H #define JMATH_H -#include "dolphin/mtx.h" +#include "common.h" +#include "rvl/MTX.h" #include "math.h" void JMAMTXApplyScale(const Mtx, Mtx, f32, f32, f32); diff --git a/include/JSystem/JMath/random.h b/include/JSystem/JMath/random.h index cfb8ecc1..5eb9c355 100644 --- a/include/JSystem/JMath/random.h +++ b/include/JSystem/JMath/random.h @@ -1,7 +1,7 @@ #ifndef RANDOM_H #define RANDOM_H -#include "dolphin/types.h" +#include "common.h" namespace JMath { diff --git a/include/JSystem/JParticle/JPABaseShape.h b/include/JSystem/JParticle/JPABaseShape.h index 3ebff452..c72134eb 100644 --- a/include/JSystem/JParticle/JPABaseShape.h +++ b/include/JSystem/JParticle/JPABaseShape.h @@ -1,11 +1,12 @@ #ifndef JPABASESHAPE_H #define JPABASESHAPE_H -#include +#include "common.h" +#include "egg/egg_types.h" +#include "rvl/GX.h" class JPAEmitterWorkData; class JPABaseParticle; -class JKRHeap; /** * @ingroup jsystem-jparticle @@ -46,7 +47,7 @@ struct JPABaseShapeData { */ struct JPABaseShape { public: - /* 8027A6DC */ JPABaseShape(u8 const*, JKRHeap*); + /* 8027A6DC */ JPABaseShape(u8 const*, EGG::Heap*); /* 8027A7E8 */ void setGX(JPAEmitterWorkData*) const; static GXBlendMode st_bm[3]; diff --git a/include/JSystem/JParticle/JPAChildShape.h b/include/JSystem/JParticle/JPAChildShape.h index 2761a567..598ea3f3 100644 --- a/include/JSystem/JParticle/JPAChildShape.h +++ b/include/JSystem/JParticle/JPAChildShape.h @@ -1,7 +1,8 @@ #ifndef JPACHILDSHAPE_H #define JPACHILDSHAPE_H -#include +#include "common.h" +#include "rvl/GX.h" class JPAEmitterWorkData; class JPABaseParticle; diff --git a/include/JSystem/JParticle/JPADrawInfo.h b/include/JSystem/JParticle/JPADrawInfo.h index 061783af..a358b072 100644 --- a/include/JSystem/JParticle/JPADrawInfo.h +++ b/include/JSystem/JParticle/JPADrawInfo.h @@ -1,7 +1,8 @@ #ifndef JPADRAWINFO_H #define JPADRAWINFO_H -#include "dolphin/mtx.h" +#include "common.h" +#include "rvl/MTX.h" /** * @ingroup jsystem-jparticle diff --git a/include/JSystem/JParticle/JPADynamicsBlock.h b/include/JSystem/JParticle/JPADynamicsBlock.h index fc175ff6..4257f065 100644 --- a/include/JSystem/JParticle/JPADynamicsBlock.h +++ b/include/JSystem/JParticle/JPADynamicsBlock.h @@ -1,9 +1,10 @@ #ifndef JPADYNAMICSBLOCK_H #define JPADYNAMICSBLOCK_H +#include "common.h" + #include "JSystem/JGeometry.h" -#include "dolphin/types.h" class JPAEmitterWorkData; diff --git a/include/JSystem/JParticle/JPAEmitter.h b/include/JSystem/JParticle/JPAEmitter.h index 063b7c1f..6ac7741e 100644 --- a/include/JSystem/JParticle/JPAEmitter.h +++ b/include/JSystem/JParticle/JPAEmitter.h @@ -1,7 +1,8 @@ #ifndef JPAEMITTER_H #define JPAEMITTER_H -#include +#include "common.h" +#include "rvl/GX.h" #include "JSystem/JParticle/JPAResource.h" #include "JSystem/JParticle/JPAList.h" #include "JSystem/JParticle/JPARandom.h" diff --git a/include/JSystem/JParticle/JPAEmitterManager.h b/include/JSystem/JParticle/JPAEmitterManager.h index 5cd69a28..d4663695 100644 --- a/include/JSystem/JParticle/JPAEmitterManager.h +++ b/include/JSystem/JParticle/JPAEmitterManager.h @@ -1,7 +1,8 @@ #ifndef JPAEMITTERMANAGER_H #define JPAEMITTERMANAGER_H -#include "dolphin/types.h" +#include "common.h" +#include "egg/egg_types.h" #include "JSystem/JParticle/JPAList.h" #include "JSystem/JParticle/JPADrawInfo.h" #include "JSystem/JSupport/JSUList.h" @@ -12,7 +13,6 @@ class JPAParticleCallBack; class JPABaseEmitter; class JPAResourceManager; class JPABaseParticle; -class JKRHeap; struct JPAEmitterWorkData; /** @@ -21,7 +21,7 @@ struct JPAEmitterWorkData; */ class JPAEmitterManager { public: - /* 8027DCA0 */ JPAEmitterManager(u32, u32, JKRHeap*, u8, u8); + /* 8027DCA0 */ JPAEmitterManager(u32, u32, EGG::Heap*, u8, u8); /* 8027DEBC */ JPABaseEmitter* createSimpleEmitterID(JGeometry::TVec3 const&, u16, u8, u8, JPAEmitterCallBack*, JPAParticleCallBack*); /* 8027DFA0 */ void calc(u8); diff --git a/include/JSystem/JParticle/JPAExTexShape.h b/include/JSystem/JParticle/JPAExTexShape.h index b202cc9d..04a357b1 100644 --- a/include/JSystem/JParticle/JPAExTexShape.h +++ b/include/JSystem/JParticle/JPAExTexShape.h @@ -1,7 +1,7 @@ #ifndef JPAEXTEXSHAPE_H #define JPAEXTEXSHAPE_H -#include "dolphin/types.h" +#include "common.h" class JPAEmitterWorkData; diff --git a/include/JSystem/JParticle/JPAExtraShape.h b/include/JSystem/JParticle/JPAExtraShape.h index dbf46363..186285e9 100644 --- a/include/JSystem/JParticle/JPAExtraShape.h +++ b/include/JSystem/JParticle/JPAExtraShape.h @@ -1,7 +1,7 @@ #ifndef JPAEXTRASHAPE_H #define JPAEXTRASHAPE_H -#include "dolphin/types.h" +#include "common.h" class JPAEmitterWorkData; class JPABaseParticle; diff --git a/include/JSystem/JParticle/JPAFieldBlock.h b/include/JSystem/JParticle/JPAFieldBlock.h index 2031ba26..8480a90d 100644 --- a/include/JSystem/JParticle/JPAFieldBlock.h +++ b/include/JSystem/JParticle/JPAFieldBlock.h @@ -1,10 +1,10 @@ #ifndef JPAFIELDBLOCK_H #define JPAFIELDBLOCK_H +#include "common.h" +#include "egg/egg_types.h" #include "JSystem/JGeometry.h" -#include "dolphin/types.h" -class JKRHeap; class JPAEmitterWorkData; class JPABaseParticle; class JPAFieldBlock; @@ -119,8 +119,8 @@ public: class JPAFieldBlock { public: - /* 8027D088 */ JPAFieldBlock(u8 const*, JKRHeap*); - /* 8027D0C0 */ void init(JKRHeap*); + /* 8027D088 */ JPAFieldBlock(u8 const*, EGG::Heap*); + /* 8027D0C0 */ void init(EGG::Heap*); u32 getType() { return mpData->mFlags & 0xF; } u32 getAddType() { return (mpData->mFlags >> 8) & 3; } diff --git a/include/JSystem/JParticle/JPAKeyBlock.h b/include/JSystem/JParticle/JPAKeyBlock.h index 3d79e854..a9eb0fbb 100644 --- a/include/JSystem/JParticle/JPAKeyBlock.h +++ b/include/JSystem/JParticle/JPAKeyBlock.h @@ -1,7 +1,7 @@ #ifndef JPAKEYBLOCK_H #define JPAKEYBLOCK_H -#include "dolphin/types.h" +#include "common.h" /** * @ingroup jsystem-jparticle diff --git a/include/JSystem/JParticle/JPAList.h b/include/JSystem/JParticle/JPAList.h index ab2e5a7f..287fdb75 100644 --- a/include/JSystem/JParticle/JPAList.h +++ b/include/JSystem/JParticle/JPAList.h @@ -1,7 +1,7 @@ #ifndef JPALIST_H #define JPALIST_H -#include "dolphin/types.h" +#include "common.h" /** * @ingroup jsystem-jparticle diff --git a/include/JSystem/JParticle/JPAMath.h b/include/JSystem/JParticle/JPAMath.h index 68701359..67d59fb5 100644 --- a/include/JSystem/JParticle/JPAMath.h +++ b/include/JSystem/JParticle/JPAMath.h @@ -1,7 +1,7 @@ #ifndef JPAMATH_H #define JPAMATH_H -#include "dolphin/mtx.h" +#include "common.h" #include "JSystem/JGeometry.h" void JPAGetDirMtx(JGeometry::TVec3 const& param_0, f32 (*param_1)[4]); diff --git a/include/JSystem/JParticle/JPAParticle.h b/include/JSystem/JParticle/JPAParticle.h index 2e67f8e8..dc538193 100644 --- a/include/JSystem/JParticle/JPAParticle.h +++ b/include/JSystem/JParticle/JPAParticle.h @@ -1,10 +1,10 @@ #ifndef JPAPARTICLE_H #define JPAPARTICLE_H -#include +#include "common.h" +#include "rvl/GX.h" #include "JSystem/JGeometry.h" -class JKRHeap; class JPABaseEmitter; class JPABaseParticle; class JPAEmitterCallBack; diff --git a/include/JSystem/JParticle/JPARandom.h b/include/JSystem/JParticle/JPARandom.h index 5ffb276d..300aa195 100644 --- a/include/JSystem/JParticle/JPARandom.h +++ b/include/JSystem/JParticle/JPARandom.h @@ -1,7 +1,7 @@ #ifndef JPARANDOM_H #define JPARANDOM_H -#include "dolphin/types.h" +#include "common.h" /** * @ingroup jsystem-jparticle diff --git a/include/JSystem/JParticle/JPAResource.h b/include/JSystem/JParticle/JPAResource.h index 4b953233..af46fa79 100644 --- a/include/JSystem/JParticle/JPAResource.h +++ b/include/JSystem/JParticle/JPAResource.h @@ -1,9 +1,9 @@ #ifndef JPARESOURCE_H #define JPARESOURCE_H -#include "dolphin/types.h" +#include "common.h" +#include "egg/egg_types.h" -class JKRHeap; class JPAEmitterWorkData; class JPABaseEmitter; class JPABaseParticle; @@ -23,7 +23,7 @@ class JPAKeyBlock; class JPAResource { public: /* 80274010 */ JPAResource(); - /* 80274080 */ void init(JKRHeap*); + /* 80274080 */ void init(EGG::Heap*); /* 802755E8 */ bool calc(JPAEmitterWorkData*, JPABaseEmitter*); /* 80275A94 */ void draw(JPAEmitterWorkData*, JPABaseEmitter*); /* 80275B74 */ void drawP(JPAEmitterWorkData*); diff --git a/include/JSystem/JParticle/JPAResourceLoader.h b/include/JSystem/JParticle/JPAResourceLoader.h index 10ff1e38..49cb6ce7 100644 --- a/include/JSystem/JParticle/JPAResourceLoader.h +++ b/include/JSystem/JParticle/JPAResourceLoader.h @@ -1,7 +1,7 @@ #ifndef JPARESOURCELOADER_H #define JPARESOURCELOADER_H -#include "dolphin/types.h" +#include "common.h" class JPAResourceManager; diff --git a/include/JSystem/JParticle/JPAResourceManager.h b/include/JSystem/JParticle/JPAResourceManager.h index 2820c810..51eae363 100644 --- a/include/JSystem/JParticle/JPAResourceManager.h +++ b/include/JSystem/JParticle/JPAResourceManager.h @@ -1,9 +1,11 @@ #ifndef JPARESOURCEMANAGER_H #define JPARESOURCEMANAGER_H +#include "common.h" +#include "egg/egg_types.h" +#include "rvl/GX.h" #include "JSystem/JParticle/JPATexture.h" -class JKRHeap; class JPAResource; struct ResTIMG; @@ -13,7 +15,7 @@ struct ResTIMG; */ class JPAResourceManager { public: - /* 80273E10 */ JPAResourceManager(void const*, JKRHeap*); + /* 80273E10 */ JPAResourceManager(void const*, EGG::Heap*); /* 80273E68 */ JPAResource* getResource(u16) const; /* 80273EA8 */ bool checkUserIndexDuplication(u16) const; /* 80273EEC */ const ResTIMG* swapTexture(ResTIMG const*, char const*); @@ -24,7 +26,7 @@ public: void load(u16 idx, GXTexMapID texMapID) { mpTexArr[idx]->load(texMapID); } public: - /* 0x00 */ JKRHeap* mpHeap; + /* 0x00 */ EGG::Heap* mpHeap; /* 0x04 */ JPAResource** mpResArr; /* 0x08 */ JPATexture** mpTexArr; /* 0x0C */ u16 mResMax; diff --git a/include/JSystem/JParticle/JPATexture.h b/include/JSystem/JParticle/JPATexture.h index 19b3bed7..193bd5b6 100644 --- a/include/JSystem/JParticle/JPATexture.h +++ b/include/JSystem/JParticle/JPATexture.h @@ -1,6 +1,8 @@ #ifndef JPATEXTURE_H #define JPATEXTURE_H +#include "common.h" +#include "rvl/GX.h" #include "JSystem/JUtility/JUTTexture.h" /** diff --git a/include/JSystem/JSupport/JSUList.h b/include/JSystem/JSupport/JSUList.h index 884b8b9b..53ee2059 100644 --- a/include/JSystem/JSupport/JSUList.h +++ b/include/JSystem/JSupport/JSUList.h @@ -1,7 +1,7 @@ #ifndef JSULIST_H #define JSULIST_H -#include "dolphin/types.h" +#include "common.h" template class JSUList; diff --git a/include/JSystem/JSupport/JSupport.h b/include/JSystem/JSupport/JSupport.h index c4a47c61..ef2fffcf 100644 --- a/include/JSystem/JSupport/JSupport.h +++ b/include/JSystem/JSupport/JSupport.h @@ -1,7 +1,7 @@ #ifndef JSUPPORT_H #define JSUPPORT_H -#include +#include "common.h" /** * @ingroup jsystem-jsupport diff --git a/include/JSystem/JUtility/JUTAssert.h b/include/JSystem/JUtility/JUTAssert.h index 5d469fb3..9418a9b9 100644 --- a/include/JSystem/JUtility/JUTAssert.h +++ b/include/JSystem/JUtility/JUTAssert.h @@ -1,7 +1,7 @@ #ifndef JUTASSERT_H #define JUTASSERT_H -#include "dolphin/os.h" +#include "rvl/OS.h" #ifdef DEBUG #define JUT_ASSERT(LINE, COND) \ diff --git a/include/JSystem/JUtility/JUTTexture.h b/include/JSystem/JUtility/JUTTexture.h index 606cd581..10577e57 100644 --- a/include/JSystem/JUtility/JUTTexture.h +++ b/include/JSystem/JUtility/JUTTexture.h @@ -1,7 +1,7 @@ #ifndef JUTTEXTURE_H #define JUTTEXTURE_H -#include +#include "rvl/GX.h" class JUTPalette; diff --git a/include/nw4r/lyt/lyt_types.h b/include/nw4r/lyt/lyt_types.h index 36bf2c71..73eea22f 100644 --- a/include/nw4r/lyt/lyt_types.h +++ b/include/nw4r/lyt/lyt_types.h @@ -135,7 +135,7 @@ struct TexCoordGen { // __ct__Q34nw4r3lyt11TexCoordGenFv TexCoordGen() { reserve = 0; - Set(GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT); + Set(GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY); } // Set__Q34nw4r3lyt11TexCoordGenF13_GXTexGenType12_GXTexGenSrcUl diff --git a/include/rvl/GX/GXGeometry.h b/include/rvl/GX/GXGeometry.h index 39894b26..3cc8461c 100644 --- a/include/rvl/GX/GXGeometry.h +++ b/include/rvl/GX/GXGeometry.h @@ -8,8 +8,11 @@ extern "C" { #endif void GXBegin(GXPrimitive prim, GXVtxFmt fmt, u16 verts); + static void GXEnd(void); +#define GXEnd() + void GXSetLineWidth(u8 width, u32 offset); void GXSetPointSize(u8 size, u32 offset); void GXEnableTexOffsets(GXTexCoordID coordId, GXBool lineOfs, GXBool pointOfs); diff --git a/include/rvl/GX/GXTransform.h b/include/rvl/GX/GXTransform.h index 8ef9ecb5..6c85153a 100644 --- a/include/rvl/GX/GXTransform.h +++ b/include/rvl/GX/GXTransform.h @@ -26,7 +26,7 @@ void GXLoadPosMtxIndx(u16 index, u32 id); void GXLoadNrmMtxImm(const Mtx mtx, u32 id); void GXLoadNrmMtxIndx3x3(u16 index, u32 id); void GXSetCurrentMtx(u32 id); -void GXLoadTexMtxImm(const f32 mtx[][4], u32 id, GXMtxType type); +void GXLoadTexMtxImm(const f32 mtx[][4], u32 id, GXTexMtxType type); void GXSetViewportJitter(f32 ox, f32 oy, f32 sx, f32 sy, f32 near, f32 far, u32 nextField); void GXSetViewport(f32 ox, f32 oy, f32 sx, f32 sy, f32 near, f32 far); void GXGetViewportv(f32 view[6]); diff --git a/include/rvl/GX/GXTypes.h b/include/rvl/GX/GXTypes.h index 924968f7..ea20ef92 100644 --- a/include/rvl/GX/GXTypes.h +++ b/include/rvl/GX/GXTypes.h @@ -44,6 +44,12 @@ extern "C" { // Real name! (from patent) typedef unsigned char GXBool; +#define GX_FALSE ((GXBool)0) +#define GX_TRUE ((GXBool)1) + +#define GX_ENABLE ((GXBool)1) +#define GX_DISABLE ((GXBool)0) + /** * Common structs */ @@ -549,6 +555,30 @@ typedef enum _GXTevOp { GX_TEV_COMP_A8_EQ = GX_TEV_COMP_RGB8_EQ } GXTevOp; +typedef enum _GXPTTexMtx { + GX_PTTEXMTX0 = 64, + GX_PTTEXMTX1 = 67, + GX_PTTEXMTX2 = 70, + GX_PTTEXMTX3 = 73, + GX_PTTEXMTX4 = 76, + GX_PTTEXMTX5 = 79, + GX_PTTEXMTX6 = 82, + GX_PTTEXMTX7 = 85, + GX_PTTEXMTX8 = 88, + GX_PTTEXMTX9 = 91, + GX_PTTEXMTX10 = 94, + GX_PTTEXMTX11 = 97, + GX_PTTEXMTX12 = 100, + GX_PTTEXMTX13 = 103, + GX_PTTEXMTX14 = 106, + GX_PTTEXMTX15 = 109, + GX_PTTEXMTX16 = 112, + GX_PTTEXMTX17 = 115, + GX_PTTEXMTX18 = 118, + GX_PTTEXMTX19 = 121, + GX_PTIDENTITY = 125, +} GXPTTexMtx; + typedef enum _GXTevRegID { GX_TEVPREV, GX_TEVREG0, @@ -684,6 +714,11 @@ typedef enum _GXTevMode { GX_BLEND } GXTevMode; +typedef enum _GXTexMtxType { + GX_MTX3x4, + GX_MTX2x4, +} GXTexMtxType; + typedef enum _GXTexCoordID { GX_TEXCOORD0, GX_TEXCOORD1, @@ -806,7 +841,7 @@ typedef enum _GXTexMtx { GX_TEXMTX7 = 51, GX_TEXMTX8 = 54, GX_TEXMTX9 = 57, - GX_TEXMTX_IDENT = 60, + GX_IDENTITY = 60, // 3x4 matrices (in dual-tex XF matrix memory) // Enum represents base row of matrix @@ -901,6 +936,23 @@ typedef enum _GXZTexOp { GX_MAX_ZTEXOP } GXZTexOp; +typedef enum _GXMiscToken { + GX_MT_XF_FLUSH = 1, + GX_MT_DL_SAVE_CONTEXT = 2, + GX_MT_ABORT_WAIT_COPYOUT = 3, + GX_MT_NULL = 0, +} GXMiscToken; + +typedef enum _GXTexOffset { + GX_TO_ZERO, + GX_TO_SIXTEENTH, + GX_TO_EIGHTH, + GX_TO_FOURTH, + GX_TO_HALF, + GX_TO_ONE, + GX_MAX_TEXOFFSET, +} GXTexOffset; + #ifdef __cplusplus } #endif diff --git a/include/rvl/MTX/mtx.h b/include/rvl/MTX/mtx.h index f29af69b..2581d7a3 100644 --- a/include/rvl/MTX/mtx.h +++ b/include/rvl/MTX/mtx.h @@ -8,6 +8,14 @@ extern "C" { typedef f32 Mtx[3][4]; typedef f32 Mtx44[4][4]; +// do these belong in the sdk? +typedef f32 Mtx33[3][3]; +typedef f32 Mtx23[2][3]; +typedef f32 (*Mtx3P)[3]; +typedef f32 (*MtxP)[4]; +typedef const f32 (*CMtxP)[4]; +typedef f32 QuaternionP[4]; + typedef struct Vec { f32 x, y, z; } Vec; @@ -16,6 +24,23 @@ typedef struct Quaternion { f32 x, y, z, w; } Quaternion; +#define MTXIdentity PSMTXIdentity +#define MTXCopy PSMTXCopy +#define MTXConcat PSMTXConcat +#define MTXInverse PSMTXInverse +#define MTXTranspose PSMTXTranspose +#define MTXInverse PSMTXInverse +#define MTXInvXpose PSMTXInvXpose +#define MTXRotRad PSMTXRotRad +#define MTXRotTrig PSMTXRotTrig +#define MTXRotAxisRad PSMTXRotAxisRad +#define MTXTrans PSMTXTrans +#define MTXTransApply PSMTXTransApply +#define MTXScale PSMTXScale +#define MTXScaleApply PSMTXScaleApply +#define MTXQuat PSMTXQuat +#define MTXReflect PSMTXReflect + void PSMTXIdentity(Mtx); void PSMTXCopy(const Mtx, Mtx); void PSMTXConcat(const Mtx, const Mtx, Mtx); diff --git a/include/rvl/MTX/mtxvec.h b/include/rvl/MTX/mtxvec.h index 882c5413..9d0461b8 100644 --- a/include/rvl/MTX/mtxvec.h +++ b/include/rvl/MTX/mtxvec.h @@ -7,8 +7,15 @@ extern "C" { #endif -void PSMTXMultVec(const Mtx, const Vec *, Vec *); -void PSMTXMultVecSR(const Mtx, const Vec *, Vec *); +#define MTXMultVec PSMTXMultVec +#define MTXMultVecArray PSMTXMultVecArray +#define MTXMultVecSR PSMTXMultVecSR +#define MTXMultVecArraySR PSMTXMultVecArraySR + +void PSMTXMultVec(const Mtx m, const Vec* src, Vec* dst); +void PSMTXMultVecArray(const Mtx m, const Vec* srcBase, Vec* dstBase, u32 count); +void PSMTXMultVecSR(const Mtx m, const Vec* src, Vec* dst); +void PSMTXMultVecArraySR(const Mtx m, const Vec* srcBase, Vec* dstBase, u32 count); #ifdef __cplusplus } diff --git a/include/rvl/MTX/vec.h b/include/rvl/MTX/vec.h index 12577264..a5b330dc 100644 --- a/include/rvl/MTX/vec.h +++ b/include/rvl/MTX/vec.h @@ -16,6 +16,17 @@ f32 PSVECDotProduct(const Vec *, const Vec *); void PSVECCrossProduct(const Vec *, const Vec *, Vec *); f32 PSVECSquareDistance(const Vec *, const Vec *); +#define VECAdd PSVECAdd +#define VECSubtract PSVECSubtract +#define VECScale PSVECScale +#define VECNormalize PSVECNormalize +#define VECSquareMag PSVECSquareMag +#define VECMag PSVECMag +#define VECDotProduct PSVECDotProduct +#define VECCrossProduct PSVECCrossProduct +#define VECSquareDistance PSVECSquareDistance +#define VECDistance PSVECDistance + void C_VECHalfAngle(const Vec *, const Vec *, Vec *); #ifdef __cplusplus diff --git a/src/JSystem/JParticle/JPABaseShape.cpp b/src/JSystem/JParticle/JPABaseShape.cpp index d869cd20..4734daeb 100644 --- a/src/JSystem/JParticle/JPABaseShape.cpp +++ b/src/JSystem/JParticle/JPABaseShape.cpp @@ -3,14 +3,14 @@ // Translation Unit: JPABaseShape // +#include "egg/core/eggHeap.h" #include "JSystem/JParticle/JPABaseShape.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAEmitter.h" #include "JSystem/JParticle/JPAResourceManager.h" #include "JSystem/JMath/JMATrigonometric.h" -#include "dolphin/mtx.h" -#include "dolphin/gx.h" +#include "rvl/MTX.h" +#include "rvl/GX.h" /* 80276A90-80276ACC 2713D0 003C+00 0/0 1/1 0/0 .text JPASetPointSize__FP18JPAEmitterWorkData */ void JPASetPointSize(JPAEmitterWorkData* work) { @@ -1266,10 +1266,10 @@ void JPADrawParticleCallBack(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { } /* 8027A454-8027A6DC 274D94 0288+00 1/1 0/0 0/0 .text - * makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsP7JKRHeap */ + * makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsP7EGG::Heap */ static void makeColorTable(GXColor** o_color_table, JPAClrAnmKeyData const* i_data, u8 param_2, - s16 i_size, JKRHeap* i_heap) { - GXColor* color_table = (GXColor*)JKRAllocFromHeap(i_heap, (i_size + 1) * 4, 4); + s16 i_size, EGG::Heap* i_heap) { + GXColor* color_table = (GXColor*)i_heap->alloc((i_size + 1) * 4, 4); f32 r_step, g_step, b_step, a_step; r_step = g_step = b_step = a_step = 0.0f; f32 r = i_data[0].color.r; @@ -1308,9 +1308,9 @@ static void makeColorTable(GXColor** o_color_table, JPAClrAnmKeyData const* i_da *o_color_table = color_table; } -/* 8027A6DC-8027A7E8 27501C 010C+00 0/0 1/1 0/0 .text __ct__12JPABaseShapeFPCUcP7JKRHeap +/* 8027A6DC-8027A7E8 27501C 010C+00 0/0 1/1 0/0 .text __ct__12JPABaseShapeFPCUcP7EGG::Heap */ -JPABaseShape::JPABaseShape(u8 const* pData, JKRHeap* pHeap) { +JPABaseShape::JPABaseShape(u8 const* pData, EGG::Heap* pHeap) { mpData = (const JPABaseShapeData*)pData; if (isTexCrdAnm()) { diff --git a/src/JSystem/JParticle/JPAChildShape.cpp b/src/JSystem/JParticle/JPAChildShape.cpp index cbc24cbb..18a2e18f 100644 --- a/src/JSystem/JParticle/JPAChildShape.cpp +++ b/src/JSystem/JParticle/JPAChildShape.cpp @@ -6,8 +6,8 @@ #include "JSystem/JParticle/JPAChildShape.h" #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAEmitter.h" -#include "dolphin/gx.h" -#include "dolphin/os.h" +#include "rvl/GX.h" +#include "rvl/OS.h" /* 8027AEBC-8027AFDC 2757FC 0120+00 0/0 1/1 0/0 .text JPARegistChildPrmEnv__FP18JPAEmitterWorkData */ diff --git a/src/JSystem/JParticle/JPAEmitter.cpp b/src/JSystem/JParticle/JPAEmitter.cpp index 517421c8..660faa34 100644 --- a/src/JSystem/JParticle/JPAEmitter.cpp +++ b/src/JSystem/JParticle/JPAEmitter.cpp @@ -8,7 +8,6 @@ #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAResourceManager.h" #include "JSystem/JParticle/JPABaseShape.h" -#include "dolphin/types.h" // // Types: diff --git a/src/JSystem/JParticle/JPAEmitterManager.cpp b/src/JSystem/JParticle/JPAEmitterManager.cpp index 649f4226..41013d1e 100644 --- a/src/JSystem/JParticle/JPAEmitterManager.cpp +++ b/src/JSystem/JParticle/JPAEmitterManager.cpp @@ -3,17 +3,17 @@ // Translation Unit: JPAEmitterManager // +#include "egg/core/eggHeap.h" #include "JSystem/JParticle/JPAEmitterManager.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JParticle/JPAEmitter.h" #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAResourceManager.h" #include "JSystem/JUtility/JUTAssert.h" -#include "dolphin/gx.h" +#include "rvl/GX.h" -/* 8027DCA0-8027DEBC 2785E0 021C+00 0/0 1/1 0/0 .text __ct__17JPAEmitterManagerFUlUlP7JKRHeapUcUc +/* 8027DCA0-8027DEBC 2785E0 021C+00 0/0 1/1 0/0 .text __ct__17JPAEmitterManagerFUlUlP7EGG::HeapUcUc */ -JPAEmitterManager::JPAEmitterManager(u32 i_ptclNum, u32 i_emtrNum, JKRHeap* pHeap, u8 i_gidMax, +JPAEmitterManager::JPAEmitterManager(u32 i_ptclNum, u32 i_emtrNum, EGG::Heap* pHeap, u8 i_gidMax, u8 i_ridMax) { emtrNum = i_emtrNum; ptclNum = i_ptclNum; diff --git a/src/JSystem/JParticle/JPAExTexShape.cpp b/src/JSystem/JParticle/JPAExTexShape.cpp index 4763459a..ce5fd07d 100644 --- a/src/JSystem/JParticle/JPAExTexShape.cpp +++ b/src/JSystem/JParticle/JPAExTexShape.cpp @@ -6,7 +6,7 @@ #include "JSystem/JParticle/JPAExTexShape.h" #include "JSystem/JParticle/JPAResourceManager.h" #include "JSystem/JParticle/JPAEmitter.h" -#include "dolphin/gx.h" +#include "rvl/GX.h" /* 8027B040-8027B13C 275980 00FC+00 0/0 1/1 0/0 .text JPALoadExTex__FP18JPAEmitterWorkData */ void JPALoadExTex(JPAEmitterWorkData* work) { @@ -32,4 +32,4 @@ void JPALoadExTex(JPAEmitterWorkData* work) { /* 8027B13C-8027B144 -00001 0008+00 0/0 0/0 0/0 .text __ct__13JPAExTexShapeFPCUc */ JPAExTexShape::JPAExTexShape(u8 const* data) { mpData = (const JPAExTexShapeData*)data; -} \ No newline at end of file +} diff --git a/src/JSystem/JParticle/JPAExtraShape.cpp b/src/JSystem/JParticle/JPAExtraShape.cpp index 2c269a31..5271261a 100644 --- a/src/JSystem/JParticle/JPAExtraShape.cpp +++ b/src/JSystem/JParticle/JPAExtraShape.cpp @@ -7,7 +7,7 @@ #include "JSystem/JMath/JMATrigonometric.h" #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAEmitter.h" -#include "dolphin/os.h" +#include "rvl/OS.h" /* 8027A918-8027A990 275258 0078+00 0/0 1/1 0/0 .text * JPACalcScaleX__FP18JPAEmitterWorkDataP15JPABaseParticle */ diff --git a/src/JSystem/JParticle/JPAFieldBlock.cpp b/src/JSystem/JParticle/JPAFieldBlock.cpp index c9a4c038..3bf35c59 100644 --- a/src/JSystem/JParticle/JPAFieldBlock.cpp +++ b/src/JSystem/JParticle/JPAFieldBlock.cpp @@ -3,8 +3,8 @@ // Translation Unit: JPAFieldBlock // +#include "egg/core/eggHeap.h" #include "JSystem/JParticle/JPAFieldBlock.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JParticle/JPAEmitter.h" #include "JSystem/JParticle/JPAParticle.h" @@ -237,15 +237,15 @@ void JPAFieldSpin::calc(JPAEmitterWorkData* work, JPAFieldBlock* block, JPABaseP calcAffect(block, ptcl); } -/* 8027D088-8027D0C0 2779C8 0038+00 0/0 1/1 0/0 .text __ct__13JPAFieldBlockFPCUcP7JKRHeap +/* 8027D088-8027D0C0 2779C8 0038+00 0/0 1/1 0/0 .text __ct__13JPAFieldBlockFPCUcP7EGG::Heap */ -JPAFieldBlock::JPAFieldBlock(u8 const* data, JKRHeap* heap) +JPAFieldBlock::JPAFieldBlock(u8 const* data, EGG::Heap* heap) : mpData((const JPAFieldBlockData*)data) { init(heap); } -/* 8027D0C0-8027D3AC 277A00 02EC+00 2/1 0/0 0/0 .text init__13JPAFieldBlockFP7JKRHeap */ -void JPAFieldBlock::init(JKRHeap* heap) { +/* 8027D0C0-8027D3AC 277A00 02EC+00 2/1 0/0 0/0 .text init__13JPAFieldBlockFP7EGG::Heap */ +void JPAFieldBlock::init(EGG::Heap* heap) { mFadeInRate = getFadeInTime() - getEnTime(); if (mFadeInRate == 0.0f) { mFadeInRate = 1.0f; diff --git a/src/JSystem/JParticle/JPAMath.cpp b/src/JSystem/JParticle/JPAMath.cpp index c8686038..c1af4b46 100644 --- a/src/JSystem/JParticle/JPAMath.cpp +++ b/src/JSystem/JParticle/JPAMath.cpp @@ -5,34 +5,6 @@ #include "JSystem/JParticle/JPAMath.h" #include "JSystem/JMath/JMATrigonometric.h" -#include "JSystem/J2DGraph/J2DAnimation.h" - -// -// Types: -// - -// -// Forward References: -// - -extern "C" void func_80280588(); -extern "C" void JPAGetYZRotateMtx__FssPA4_f(); -extern "C" void JPAGetXYZRotateMtx__FsssPA4_f(); -extern "C" void func_802807E0(); -extern "C" void func_80280808(); -extern "C" void JPACalcKeyAnmValue__FfUsPCf(); - -// -// External References: -// - -extern "C" void _savegpr_28(); -extern "C" void _restgpr_28(); -extern "C" u8 sincosTable___5JMath[65536]; - -// -// Declarations: -// /* ############################################################################################## */ // Probably some local function needed to change float literal order diff --git a/src/JSystem/JParticle/JPAResource.cpp b/src/JSystem/JParticle/JPAResource.cpp index 01bba7d2..254e9292 100644 --- a/src/JSystem/JParticle/JPAResource.cpp +++ b/src/JSystem/JParticle/JPAResource.cpp @@ -3,8 +3,8 @@ // Translation Unit: JPAResource // +#include "egg/core/eggHeap.h" #include "JSystem/JParticle/JPAResource.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JParticle/JPABaseShape.h" #include "JSystem/JParticle/JPAChildShape.h" #include "JSystem/JParticle/JPAEmitter.h" @@ -14,8 +14,7 @@ #include "JSystem/JParticle/JPAKeyBlock.h" #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAResourceManager.h" -#include "dolphin/gx.h" -#include "global.h" +#include "rvl/GX.h" /* 80274010-80274080 26E950 0070+00 0/0 1/1 0/0 .text __ct__11JPAResourceFv */ JPAResource::JPAResource() { @@ -78,8 +77,8 @@ static u8 jpa_crd[32] ALIGN_DECL(32) = { 0x00, 0x00, 0x01, 0x00, 0x01, 0x02, 0x00, 0x02, 0x00, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x02, }; -/* 80274080-802755E8 26E9C0 1568+00 2/0 1/1 0/0 .text init__11JPAResourceFP7JKRHeap */ -void JPAResource::init(JKRHeap* heap) { +/* 80274080-802755E8 26E9C0 1568+00 2/0 1/1 0/0 .text init__11JPAResourceFP7EGG::Heap */ +void JPAResource::init(EGG::Heap* heap) { BOOL is_glbl_clr_anm = mpBaseShape->isGlblClrAnm(); BOOL is_glbl_tex_anm = mpBaseShape->isGlblTexAnm(); BOOL is_prm_anm = mpBaseShape->isPrmAnm(); @@ -123,7 +122,7 @@ void JPAResource::init(JKRHeap* heap) { if (mpCalcEmitterFuncListNum != 0) { mpCalcEmitterFuncList = - (EmitterFunc*)JKRAllocFromHeap(heap, mpCalcEmitterFuncListNum * 4, 4); + (EmitterFunc*)heap->alloc(mpCalcEmitterFuncListNum * 4, 4); } int func_no = 0; @@ -220,7 +219,7 @@ void JPAResource::init(JKRHeap* heap) { if (mpCalcParticleFuncListNum != 0) { mpCalcParticleFuncList = - (ParticleFunc*)JKRAllocFromHeap(heap, mpCalcParticleFuncListNum * 4, 4); + (ParticleFunc*)heap->alloc(mpCalcParticleFuncListNum * 4, 4); } func_no = 0; @@ -339,7 +338,7 @@ void JPAResource::init(JKRHeap* heap) { if (mpCalcParticleChildFuncListNum != 0) { mpCalcParticleChildFuncList = - (ParticleFunc*)JKRAllocFromHeap(heap, mpCalcParticleChildFuncListNum * 4, 4); + (ParticleFunc*)heap->alloc(mpCalcParticleChildFuncListNum * 4, 4); } func_no = 0; @@ -383,7 +382,7 @@ void JPAResource::init(JKRHeap* heap) { if (mpDrawEmitterFuncListNum != 0) { mpDrawEmitterFuncList = - (EmitterFunc*)JKRAllocFromHeap(heap, mpDrawEmitterFuncListNum * 4, 4); + (EmitterFunc*)heap->alloc(mpDrawEmitterFuncListNum * 4, 4); } func_no = 0; @@ -481,7 +480,7 @@ void JPAResource::init(JKRHeap* heap) { if (mpDrawEmitterChildFuncListNum != 0) { mpDrawEmitterChildFuncList = - (EmitterFunc*)JKRAllocFromHeap(heap, mpDrawEmitterChildFuncListNum * 4, 4); + (EmitterFunc*)heap->alloc(mpDrawEmitterChildFuncListNum * 4, 4); } func_no = 0; @@ -530,7 +529,7 @@ void JPAResource::init(JKRHeap* heap) { if (mpDrawParticleFuncListNum != 0) { mpDrawParticleFuncList = - (ParticleFunc*)JKRAllocFromHeap(heap, mpDrawParticleFuncListNum * 4, 4); + (ParticleFunc*)heap->alloc(mpDrawParticleFuncListNum * 4, 4); } func_no = 0; @@ -634,7 +633,7 @@ void JPAResource::init(JKRHeap* heap) { if (mpDrawParticleChildFuncListNum != 0) { mpDrawParticleChildFuncList = - (ParticleFunc*)JKRAllocFromHeap(heap, mpDrawParticleChildFuncListNum * 4, 4); + (ParticleFunc*)heap->alloc(mpDrawParticleChildFuncListNum * 4, 4); } func_no = 0; diff --git a/src/JSystem/JParticle/JPAResourceLoader.cpp b/src/JSystem/JParticle/JPAResourceLoader.cpp index 580e913a..84a30f12 100644 --- a/src/JSystem/JParticle/JPAResourceLoader.cpp +++ b/src/JSystem/JParticle/JPAResourceLoader.cpp @@ -3,8 +3,8 @@ // Translation Unit: JPAResourceLoader // +#include "egg/core/eggHeap.h" #include "JSystem/JParticle/JPAResourceLoader.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JParticle/JPABaseShape.h" #include "JSystem/JParticle/JPAChildShape.h" #include "JSystem/JParticle/JPADynamicsBlock.h" @@ -34,7 +34,7 @@ struct JPAResourceHeader { /* 8027D8E0-8027DCA0 278220 03C0+00 1/1 0/0 0/0 .text * load_jpc__17JPAResourceLoaderFPCUcP18JPAResourceManager */ void JPAResourceLoader::load_jpc(u8 const* data, JPAResourceManager* mgr) { - JKRHeap* heap = mgr->mpHeap; + EGG::Heap* heap = mgr->mpHeap; mgr->mResMax = *(u16*)(data + 8); mgr->mTexMax = *(u16*)(data + 0xA); mgr->mpResArr = new (heap, 0) JPAResource*[mgr->mResMax]; diff --git a/src/JSystem/JParticle/JPAResourceManager.cpp b/src/JSystem/JParticle/JPAResourceManager.cpp index e06be753..5b6fe662 100644 --- a/src/JSystem/JParticle/JPAResourceManager.cpp +++ b/src/JSystem/JParticle/JPAResourceManager.cpp @@ -12,8 +12,8 @@ struct JPAResourceLoader { /* 8027D8A0 */ JPAResourceLoader(u8 const*, JPAResourceManager*); }; -/* 80273E10-80273E68 26E750 0058+00 0/0 2/2 0/0 .text __ct__18JPAResourceManagerFPCvP7JKRHeap */ -JPAResourceManager::JPAResourceManager(void const* pData, JKRHeap* pHeap) { +/* 80273E10-80273E68 26E750 0058+00 0/0 2/2 0/0 .text __ct__18JPAResourceManagerFPCvP7EGG::Heap */ +JPAResourceManager::JPAResourceManager(void const* pData, EGG::Heap* pHeap) { mpResArr = NULL; mpTexArr = NULL; mResMax = 0; @@ -81,4 +81,4 @@ u32 JPAResourceManager::getResUserWork(u16 usrIdx) const { ret = res->getDyn()->getResUserWork(); return ret; -} \ No newline at end of file +} diff --git a/src/JSystem/JSupport/JSUList.cpp b/src/JSystem/JSupport/JSUList.cpp index eb906508..887a3eae 100644 --- a/src/JSystem/JSupport/JSUList.cpp +++ b/src/JSystem/JSupport/JSUList.cpp @@ -159,4 +159,4 @@ JSUPtrLink* JSUPtrList::getNthLink(u32 index) const { } return node; -} \ No newline at end of file +} diff --git a/src/egg/gfx/eggLightTexture.cpp b/src/egg/gfx/eggLightTexture.cpp index 114da7da..edf02b41 100644 --- a/src/egg/gfx/eggLightTexture.cpp +++ b/src/egg/gfx/eggLightTexture.cpp @@ -334,7 +334,7 @@ void LightTexture::fn_804AC0E0(int i, const GXColor &color, bool b) { mtx._13 = sDrawHeight - (h + sTexHeight); GXLoadPosMtxImm(mtx, 0); - GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX_2x4); + GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX2x4); GXColor c; if ((field_0x36 & 1) != 0) { @@ -474,7 +474,7 @@ void LightTexture::draw(int i) { mtx._13 = sDrawHeight - (h + sTexHeight); GXLoadPosMtxImm(mtx, 0); - GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX_2x4); + GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX2x4); GXBegin(GX_QUADS, GX_VTXFMT0, 4); GXPosition1x8(0); @@ -520,7 +520,7 @@ void LightTexture::debugDraw(int i) { mtx._13 = sDrawHeight - (u2 + sTexHeight); GXLoadPosMtxImm(mtx, 0); - GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX_2x4); + GXLoadTexMtxImm(sIdentityMtx, 0x1E, GX_MTX2x4); GXBegin(GX_QUADS, GX_VTXFMT0, 4); diff --git a/src/egg/gfx/eggPostEffectBlur.cpp b/src/egg/gfx/eggPostEffectBlur.cpp index 79d12e8a..9bb52690 100644 --- a/src/egg/gfx/eggPostEffectBlur.cpp +++ b/src/egg/gfx/eggPostEffectBlur.cpp @@ -77,7 +77,7 @@ void PostEffectBlur::drawInternal(u8 kernelIdx, u8 p2, f32 f1, f32 f2) { // clang-format on ); PSMTXConcat(m, mtx, m); - GXLoadTexMtxImm(m, texMtxId, GX_MTX_2x4); + GXLoadTexMtxImm(m, texMtxId, GX_MTX2x4); unk_00_scale++; } diff --git a/src/egg/gfx/eggPostEffectBlurGather.cpp b/src/egg/gfx/eggPostEffectBlurGather.cpp index 0269966b..c1dbc1da 100644 --- a/src/egg/gfx/eggPostEffectBlurGather.cpp +++ b/src/egg/gfx/eggPostEffectBlurGather.cpp @@ -36,7 +36,7 @@ void PostEffectBlurGather::setMaterialInternal() { } else { loadTextureInternal(); } - GXLoadTexMtxImm(mtx, texMtxIdx, GX_MTX_2x4); + GXLoadTexMtxImm(mtx, texMtxIdx, GX_MTX2x4); } f32 v = field_0x30 * 255.0f; diff --git a/src/egg/gfx/eggPostEffectMask.cpp b/src/egg/gfx/eggPostEffectMask.cpp index a5819a9a..b221ab7a 100644 --- a/src/egg/gfx/eggPostEffectMask.cpp +++ b/src/egg/gfx/eggPostEffectMask.cpp @@ -19,8 +19,8 @@ void PostEffectMask::setMaterialInternal() { setMatColorChannel(); GXSetNumTexGens(2); - GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, false, GX_DUALMTX_IDENT); - GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, false, GX_DUALMTX_IDENT); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, false, GX_DUALMTX_IDENT); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, false, GX_DUALMTX_IDENT); setMatInd(); GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA); GXSetTevDirect(GX_TEVSTAGE0); diff --git a/src/egg/gfx/eggPostEffectMaskDOF.cpp b/src/egg/gfx/eggPostEffectMaskDOF.cpp index 59104d51..06ac1da6 100644 --- a/src/egg/gfx/eggPostEffectMaskDOF.cpp +++ b/src/egg/gfx/eggPostEffectMaskDOF.cpp @@ -118,10 +118,10 @@ void PostEffectMaskDOF::setMaterialInternal() { setMatColorChannel(); GXSetNumTexGens(2); GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX0, false, GX_DUALMTX_IDENT); - GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, GX_TEXMTX_IDENT, false, GX_DUALMTX_IDENT); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, GX_IDENTITY, false, GX_DUALMTX_IDENT); nw4r::math::MTX34 baseTexMtx; getBaseTexMtx(&baseTexMtx); - GXLoadTexMtxImm(baseTexMtx, GX_TEXMTX0, GX_MTX_2x4); + GXLoadTexMtxImm(baseTexMtx, GX_TEXMTX0, GX_MTX2x4); GXSetNumIndStages(1); GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, mTex1.mTexMapID); GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); diff --git a/src/egg/gfx/eggPostEffectSimple.cpp b/src/egg/gfx/eggPostEffectSimple.cpp index c6525a9a..1d8dde8b 100644 --- a/src/egg/gfx/eggPostEffectSimple.cpp +++ b/src/egg/gfx/eggPostEffectSimple.cpp @@ -20,7 +20,7 @@ void PostEffectSimple::setMaterialInternal() { GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x1e, 0, 0x7d); nw4r::math::MTX34 mtx; getBaseTexMtx(&mtx); - GXLoadTexMtxImm(mtx, 0x1e, GX_MTX_2x4); + GXLoadTexMtxImm(mtx, 0x1e, GX_MTX2x4); setMatInd(); GXSetNumTevStages(1); GXSetTevDirect(GX_TEVSTAGE0); diff --git a/src/egg/gfx/eggPostEffectUnk2.cpp b/src/egg/gfx/eggPostEffectUnk2.cpp index ffa43714..8156ba5d 100644 --- a/src/egg/gfx/eggPostEffectUnk2.cpp +++ b/src/egg/gfx/eggPostEffectUnk2.cpp @@ -94,7 +94,7 @@ void PostEffectUnk2::draw(f32 width, f32 height) { mtx[1][3] = 0.f; mtx[0][3] = 0.f; - GXLoadTexMtxImm(mtx, GXUtility::getTexMtxID(j), GX_MTX_2x4); + GXLoadTexMtxImm(mtx, GXUtility::getTexMtxID(j), GX_MTX2x4); } if (i == 1 && field_0x2C <= 1) { GXSetBlendMode(GX_BM_LOGIC, GX_BL_ZERO, GX_BL_ZERO, GX_LO_OR); diff --git a/src/egg/gfx/eggStateGX.cpp b/src/egg/gfx/eggStateGX.cpp index fc56e29e..4355176a 100644 --- a/src/egg/gfx/eggStateGX.cpp +++ b/src/egg/gfx/eggStateGX.cpp @@ -172,7 +172,7 @@ void StateGX::resetTexGen() { GXSetNumTexGens(1); for (u32 i = 0; i < 10; i++) { - GXLoadTexMtxImm(identity, i * 3 + 0x1E, GX_MTX_3x4); + GXLoadTexMtxImm(identity, i * 3 + 0x1E, GX_MTX3x4); } for (u32 i = 0; i < GX_MAX_TEXCOORD; i++) { diff --git a/src/m/m3d/m_bline.cpp b/src/m/m3d/m_bline.cpp index 45d72b5f..793986e8 100644 --- a/src/m/m3d/m_bline.cpp +++ b/src/m/m3d/m_bline.cpp @@ -109,7 +109,7 @@ void blineMat_c::setupGX(bool bTransparent) { GXSetNumTevStages(1); } GXSetNumTexGens(1); - GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, 0, GX_DUALMTX_IDENT); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, 0, GX_DUALMTX_IDENT); GXSetNumIndStages(0); GXSetTevDirect(GX_TEVSTAGE0); GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); diff --git a/src/m/m3d/m_shadow.cpp b/src/m/m3d/m_shadow.cpp index a4ce36f2..bfe38562 100644 --- a/src/m/m3d/m_shadow.cpp +++ b/src/m/m3d/m_shadow.cpp @@ -271,7 +271,7 @@ static void drawSub2(void *data, u8 i) { GXSetTexCoordGen2((GXTexCoordID)id, GX_TG_MTX2x4, GX_TG_TEX0, idx, FALSE, GX_DUALMTX_IDENT); sTexMtx[0][3] = 0.01f * nw4r::math::CosIdx(ang); sTexMtx[1][3] = 0.01f * nw4r::math::SinIdx(ang); - GXLoadTexMtxImm(sTexMtx, idx, GX_MTX_2x4); + GXLoadTexMtxImm(sTexMtx, idx, GX_MTX2x4); } GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A0, GX_CC_ZERO); @@ -596,7 +596,7 @@ void mShadowChild_c::draw() { Mtx mtx; C_MTXLightOrtho(mtx, field_0x13C, -field_0x13C, -field_0x13C, field_0x13C, 0.5f, -0.5f, 0.5f, 0.5f); PSMTXConcat(mtx, mFrustum.mView.m, mtx); - GXLoadTexMtxImm(mtx, GX_TEXMTX0, GX_MTX_3x4); + GXLoadTexMtxImm(mtx, GX_TEXMTX0, GX_MTX3x4); mShadow_c::GetInstance()->draw(mFrustum.mView, field_0x154); GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA); } diff --git a/src/nw4r/g3d/g3d_state.cpp b/src/nw4r/g3d/g3d_state.cpp index a296085d..773ef0b0 100644 --- a/src/nw4r/g3d/g3d_state.cpp +++ b/src/nw4r/g3d/g3d_state.cpp @@ -729,7 +729,7 @@ public: idArray[i] = GX_PNMTX0; allIdent = false; } else { - idArray[i] = GX_TEXMTX_IDENT; + idArray[i] = GX_IDENTITY; } } @@ -1653,11 +1653,11 @@ void LoadResTexSrt(const ResTexSrt srt) { sPostTexMtx.SetIdentity(i); math::MTX34Identity(&identMtx); - GXLoadTexMtxImm(identMtx, i * 3 + GX_DUALMTX0, GX_MTX_3x4); + GXLoadTexMtxImm(identMtx, i * 3 + GX_DUALMTX0, GX_MTX3x4); } } else { sPostTexMtx.ResetIdentity(i); - GXLoadTexMtxImm(mtx, i * 3 + GX_DUALMTX0, GX_MTX_3x4); + GXLoadTexMtxImm(mtx, i * 3 + GX_DUALMTX0, GX_MTX3x4); } } else { diff --git a/src/nw4r/g3d/platform/g3d_gpu.cpp b/src/nw4r/g3d/platform/g3d_gpu.cpp index cf11a321..1c2f00e3 100644 --- a/src/nw4r/g3d/platform/g3d_gpu.cpp +++ b/src/nw4r/g3d/platform/g3d_gpu.cpp @@ -158,12 +158,12 @@ void GDSetIndTexMtx(u32 id, const math::MTX34 &rMtx) { } void GDResetCurrentMtx() { - u32 regA = GX_PNMTX0 << GX_CP_MATRIXINDEXA_POSNRM_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX0_SHIFT | - GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX1_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX2_SHIFT | - GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXA_TEX3_SHIFT; + u32 regA = GX_PNMTX0 << GX_CP_MATRIXINDEXA_POSNRM_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX0_SHIFT | + GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX1_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX2_SHIFT | + GX_IDENTITY << GX_CP_MATRIXINDEXA_TEX3_SHIFT; - u32 regB = GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX4_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX5_SHIFT | - GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX6_SHIFT | GX_TEXMTX_IDENT << GX_CP_MATRIXINDEXB_TEX7_SHIFT; + u32 regB = GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX4_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX5_SHIFT | + GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX6_SHIFT | GX_IDENTITY << GX_CP_MATRIXINDEXB_TEX7_SHIFT; LoadCPCmd(GX_CP_REG_MATRIXINDEXA, regA); LoadCPCmd(GX_CP_REG_MATRIXINDEXB, regB); @@ -204,7 +204,7 @@ void GDLoadTexMtxImm3x3(const math::MTX33 &rMtx, u32 id) { mtx._22 = pMtx->_22; mtx._23 = 0.0f; - GXLoadTexMtxImm(mtx, id, GX_MTX_3x4); + GXLoadTexMtxImm(mtx, id, GX_MTX3x4); } } // namespace fifo diff --git a/src/nw4r/lyt/lyt_material.cpp b/src/nw4r/lyt/lyt_material.cpp index f3d6db17..065e5cd1 100644 --- a/src/nw4r/lyt/lyt_material.cpp +++ b/src/nw4r/lyt/lyt_material.cpp @@ -681,7 +681,7 @@ bool Material::SetupGX(bool bModVtxCol, u8 alpha) { if (bUseTexMtx[i]) { math::MTX34 texMtx; CalcTextureMtx(&texMtx, texSRTs[i]); - GXLoadTexMtxImm(texMtx, GetTexMtx(i), GX_MTX_2x4); + GXLoadTexMtxImm(texMtx, GetTexMtx(i), GX_MTX2x4); } } } diff --git a/src/nw4r/ut/ut_CharWriter.cpp b/src/nw4r/ut/ut_CharWriter.cpp index f9a733c5..eb438142 100644 --- a/src/nw4r/ut/ut_CharWriter.cpp +++ b/src/nw4r/ut/ut_CharWriter.cpp @@ -14,7 +14,7 @@ static void SetupGXCommon() { GXSetChanCtrl(GX_COLOR0A0, FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE); GXSetChanCtrl(GX_COLOR1A1, FALSE, GX_SRC_REG, GX_SRC_REG, GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE); GXSetNumTexGens(1); - GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX_IDENT, FALSE, GX_DUALMTX_IDENT); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, FALSE, GX_DUALMTX_IDENT); GXSetNumIndStages(0); GXSetBlendMode(GX_BM_BLEND, GX_BL_SRCALPHA, GX_BL_INVSRCALPHA, GX_LO_SET); }