tp/libs/JSystem/JParticle/JPABaseShape.cpp

1294 lines
48 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: JPABaseShape
//
#include "JSystem/JParticle/JPABaseShape.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct _GXTexMapID {};
struct _GXColor {};
struct JUTTexture {
/* 802DE840 */ void load(_GXTexMapID);
};
template <typename A0>
struct JPANode {};
/* JPANode<JPABaseParticle> */
struct JPANode__template0 {};
struct JPAEmitterWorkData {};
struct JPAClrAnmKeyData {};
struct JKRHeap {
/* 802CE474 */ void alloc(u32, int, JKRHeap*);
};
struct JPABaseShape {
/* 8027A6DC */ JPABaseShape(u8 const*, JKRHeap*);
/* 8027A7E8 */ void setGX(JPAEmitterWorkData*) const;
};
struct JPABaseParticle {};
struct JGeometry {
template <typename A1>
struct TVec3 {};
/* TVec3<f32> */
struct TVec3__template0 {};
};
struct JPABaseEmitter {
/* 8027EEB0 */ void calcEmitterGlobalPosition(JGeometry::TVec3<f32>*) const;
};
//
// Forward References:
//
void JPASetPointSize(JPAEmitterWorkData*);
void JPASetLineWidth(JPAEmitterWorkData*);
void JPASetPointSize(JPAEmitterWorkData*, JPABaseParticle*);
void JPASetLineWidth(JPAEmitterWorkData*, JPABaseParticle*);
void JPARegistPrm(JPAEmitterWorkData*);
void JPARegistEnv(JPAEmitterWorkData*);
void JPARegistPrmEnv(JPAEmitterWorkData*);
void JPARegistAlpha(JPAEmitterWorkData*, JPABaseParticle*);
void JPARegistPrmAlpha(JPAEmitterWorkData*, JPABaseParticle*);
void JPARegistPrmAlphaEnv(JPAEmitterWorkData*, JPABaseParticle*);
void JPARegistAlphaEnv(JPAEmitterWorkData*, JPABaseParticle*);
void JPARegistEnv(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcClrIdxNormal(JPAEmitterWorkData*);
void JPACalcClrIdxNormal(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcClrIdxRepeat(JPAEmitterWorkData*);
void JPACalcClrIdxRepeat(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcClrIdxReverse(JPAEmitterWorkData*);
void JPACalcClrIdxReverse(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcClrIdxMerge(JPAEmitterWorkData*);
void JPACalcClrIdxMerge(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcClrIdxRandom(JPAEmitterWorkData*);
void JPACalcClrIdxRandom(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcPrm(JPAEmitterWorkData*);
void JPACalcPrm(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcEnv(JPAEmitterWorkData*);
void JPACalcEnv(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcColorCopy(JPAEmitterWorkData*, JPABaseParticle*);
void JPAGenTexCrdMtxIdt(JPAEmitterWorkData*);
void JPAGenTexCrdMtxAnm(JPAEmitterWorkData*);
void JPAGenTexCrdMtxPrj(JPAEmitterWorkData*);
void JPAGenCalcTexCrdMtxAnm(JPAEmitterWorkData*);
void JPALoadCalcTexCrdMtxAnm(JPAEmitterWorkData*, JPABaseParticle*);
void JPALoadTex(JPAEmitterWorkData*);
void JPALoadTexAnm(JPAEmitterWorkData*);
void JPALoadTexAnm(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcTexIdxNormal(JPAEmitterWorkData*);
void JPACalcTexIdxNormal(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcTexIdxRepeat(JPAEmitterWorkData*);
void JPACalcTexIdxRepeat(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcTexIdxReverse(JPAEmitterWorkData*);
void JPACalcTexIdxReverse(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcTexIdxMerge(JPAEmitterWorkData*);
void JPACalcTexIdxMerge(JPAEmitterWorkData*, JPABaseParticle*);
void JPACalcTexIdxRandom(JPAEmitterWorkData*);
void JPACalcTexIdxRandom(JPAEmitterWorkData*, JPABaseParticle*);
void JPALoadPosMtxCam(JPAEmitterWorkData*);
static void noLoadPrj(JPAEmitterWorkData const*, f32 const (*)[4]);
static void loadPrj(JPAEmitterWorkData const*, f32 const (*)[4]);
static void loadPrjAnm(JPAEmitterWorkData const*, f32 const (*)[4]);
void JPADrawBillboard(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawRotBillboard(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawYBillboard(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawRotYBillboard(JPAEmitterWorkData*, JPABaseParticle*);
static void dirTypeVel(JPAEmitterWorkData const*, JPABaseParticle const*,
JGeometry::TVec3__template0*);
static void dirTypePos(JPAEmitterWorkData const*, JPABaseParticle const*,
JGeometry::TVec3__template0*);
static void dirTypePosInv(JPAEmitterWorkData const*, JPABaseParticle const*,
JGeometry::TVec3__template0*);
static void dirTypeEmtrDir(JPAEmitterWorkData const*, JPABaseParticle const*,
JGeometry::TVec3__template0*);
static void dirTypePrevPtcl(JPAEmitterWorkData const*, JPABaseParticle const*,
JGeometry::TVec3__template0*);
static void rotTypeY(f32, f32, f32 (&)[3][4]);
static void rotTypeX(f32, f32, f32 (&)[3][4]);
static void rotTypeZ(f32, f32, f32 (&)[3][4]);
static void rotTypeXYZ(f32, f32, f32 (&)[3][4]);
static void basePlaneTypeXY(f32 (*)[4], f32, f32);
static void basePlaneTypeXZ(f32 (*)[4], f32, f32);
static void basePlaneTypeX(f32 (*)[4], f32, f32);
void JPADrawDirection(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawRotDirection(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawDBillboard(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawRotation(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawPoint(JPAEmitterWorkData*, JPABaseParticle*);
void JPADrawLine(JPAEmitterWorkData*, JPABaseParticle*);
static void getNext(JPANode__template0*);
static void getPrev(JPANode__template0*);
void JPADrawStripe(JPAEmitterWorkData*);
void JPADrawStripeX(JPAEmitterWorkData*);
void JPADrawEmitterCallBackB(JPAEmitterWorkData*);
void JPADrawParticleCallBack(JPAEmitterWorkData*, JPABaseParticle*);
static void makeColorTable(_GXColor**, JPAClrAnmKeyData const*, u8, s16, JKRHeap*);
extern "C" void JPASetPointSize__FP18JPAEmitterWorkData();
extern "C" void JPASetLineWidth__FP18JPAEmitterWorkData();
extern "C" void JPASetPointSize__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPASetLineWidth__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPARegistPrm__FP18JPAEmitterWorkData();
extern "C" void JPARegistEnv__FP18JPAEmitterWorkData();
extern "C" void JPARegistPrmEnv__FP18JPAEmitterWorkData();
extern "C" void JPARegistAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPARegistPrmAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPARegistPrmAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPARegistAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPARegistEnv__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcClrIdxNormal__FP18JPAEmitterWorkData();
extern "C" void JPACalcClrIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcClrIdxRepeat__FP18JPAEmitterWorkData();
extern "C" void JPACalcClrIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcClrIdxReverse__FP18JPAEmitterWorkData();
extern "C" void JPACalcClrIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcClrIdxMerge__FP18JPAEmitterWorkData();
extern "C" void JPACalcClrIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcClrIdxRandom__FP18JPAEmitterWorkData();
extern "C" void JPACalcClrIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcPrm__FP18JPAEmitterWorkData();
extern "C" void JPACalcPrm__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcEnv__FP18JPAEmitterWorkData();
extern "C" void JPACalcEnv__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcColorCopy__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPAGenTexCrdMtxIdt__FP18JPAEmitterWorkData();
extern "C" void JPAGenTexCrdMtxAnm__FP18JPAEmitterWorkData();
extern "C" void JPAGenTexCrdMtxPrj__FP18JPAEmitterWorkData();
extern "C" void JPAGenCalcTexCrdMtxAnm__FP18JPAEmitterWorkData();
extern "C" void JPALoadCalcTexCrdMtxAnm__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPALoadTex__FP18JPAEmitterWorkData();
extern "C" void JPALoadTexAnm__FP18JPAEmitterWorkData();
extern "C" void JPALoadTexAnm__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcTexIdxNormal__FP18JPAEmitterWorkData();
extern "C" void JPACalcTexIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcTexIdxRepeat__FP18JPAEmitterWorkData();
extern "C" void JPACalcTexIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcTexIdxReverse__FP18JPAEmitterWorkData();
extern "C" void JPACalcTexIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcTexIdxMerge__FP18JPAEmitterWorkData();
extern "C" void JPACalcTexIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPACalcTexIdxRandom__FP18JPAEmitterWorkData();
extern "C" void JPACalcTexIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPALoadPosMtxCam__FP18JPAEmitterWorkData();
extern "C" static void noLoadPrj__FPC18JPAEmitterWorkDataPA4_Cf();
extern "C" static void loadPrj__FPC18JPAEmitterWorkDataPA4_Cf();
extern "C" static void loadPrjAnm__FPC18JPAEmitterWorkDataPA4_Cf();
extern "C" void JPADrawBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawRotBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawRotYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" static void func_802782B4();
extern "C" static void func_802782D0();
extern "C" static void func_802782EC();
extern "C" static void func_80278320();
extern "C" static void func_8027833C();
extern "C" static void rotTypeY__FffRA3_A4_f();
extern "C" static void rotTypeX__FffRA3_A4_f();
extern "C" static void rotTypeZ__FffRA3_A4_f();
extern "C" static void rotTypeXYZ__FffRA3_A4_f();
extern "C" static void basePlaneTypeXY__FPA4_fff();
extern "C" static void basePlaneTypeXZ__FPA4_fff();
extern "C" static void basePlaneTypeX__FPA4_fff();
extern "C" void JPADrawDirection__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawRotDirection__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawDBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawRotation__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawPoint__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" void JPADrawLine__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" static void func_80279364();
extern "C" static void func_8027936C();
extern "C" void JPADrawStripe__FP18JPAEmitterWorkData();
extern "C" void JPADrawStripeX__FP18JPAEmitterWorkData();
extern "C" void JPADrawEmitterCallBackB__FP18JPAEmitterWorkData();
extern "C" void JPADrawParticleCallBack__FP18JPAEmitterWorkDataP15JPABaseParticle();
extern "C" static void makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsP7JKRHeap();
extern "C" void __ct__12JPABaseShapeFPCUcP7JKRHeap();
extern "C" void setGX__12JPABaseShapeCFP18JPAEmitterWorkData();
//
// External References:
//
extern "C" void func_8027EEB0();
extern "C" void alloc__7JKRHeapFUliP7JKRHeap();
extern "C" void load__10JUTTextureF11_GXTexMapID();
extern "C" void PSMTXConcat();
extern "C" void PSMTXMultVec();
extern "C" void PSMTXMultVecSR();
extern "C" void PSMTXMultVecArraySR();
extern "C" void PSVECCrossProduct();
extern "C" void GXSetVtxDesc();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXBegin();
extern "C" void GXSetLineWidth();
extern "C" void GXSetPointSize();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevColorIn();
extern "C" void GXSetTevAlphaIn();
extern "C" void GXSetTevColor();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetBlendMode();
extern "C" void GXSetZMode();
extern "C" void GXSetZCompLoc();
extern "C" void GXCallDisplayList();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXLoadTexMtxImm();
extern "C" void _savegpr_22();
extern "C" void _savegpr_24();
extern "C" void _savegpr_28();
extern "C" void _savegpr_29();
extern "C" void _restgpr_22();
extern "C" void _restgpr_24();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" extern u8 sincosTable___5JMath[65536];
extern "C" extern u32 __float_epsilon;
//
// Declarations:
//
/* ############################################################################################## */
/* 804552A8-804552B0 0004+04 s=7 e=0 z=0 None .sdata2 @2262 */
SECTION_SDATA2 static f32 lit_2262[1 + 1 /* padding */] = {
25.0f,
/* padding */
0.0f,
};
/* 80276A90-80276ACC 003C+00 s=0 e=1 z=0 None .text JPASetPointSize__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPASetPointSize(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPASetPointSize__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80276ACC-80276B08 003C+00 s=0 e=1 z=0 None .text JPASetLineWidth__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPASetLineWidth(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPASetLineWidth__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80276B08-80276B4C 0044+00 s=0 e=1 z=0 None .text
* JPASetPointSize__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPASetPointSize(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPASetPointSize__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80276B4C-80276B90 0044+00 s=0 e=1 z=0 None .text
* JPASetLineWidth__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPASetLineWidth(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPASetLineWidth__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80276B90-80276C2C 009C+00 s=0 e=1 z=0 None .text JPARegistPrm__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistPrm(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistPrm__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80276C2C-80276CB0 0084+00 s=0 e=1 z=0 None .text JPARegistEnv__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistEnv(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistEnv__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80276CB0-80276DB0 0100+00 s=0 e=1 z=0 None .text JPARegistPrmEnv__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistPrmEnv(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistPrmEnv__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80276DB0-80276E60 00B0+00 s=0 e=1 z=0 None .text
* JPARegistAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistAlpha(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80276E60-80276F10 00B0+00 s=0 e=1 z=0 None .text
* JPARegistPrmAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistPrmAlpha(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistPrmAlpha__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80276F10-80277024 0114+00 s=0 e=1 z=0 None .text
* JPARegistPrmAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistPrmAlphaEnv(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistPrmAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277024-80277138 0114+00 s=0 e=1 z=0 None .text
* JPARegistAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistAlphaEnv(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistAlphaEnv__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277138-802771BC 0084+00 s=0 e=1 z=0 None .text
* JPARegistEnv__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPARegistEnv(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPARegistEnv__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 802771BC-802771E8 002C+00 s=0 e=1 z=0 None .text JPACalcClrIdxNormal__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxNormal(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxNormal__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 802771E8-80277210 0028+00 s=0 e=1 z=0 None .text
* JPACalcClrIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxNormal(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277210-80277240 0030+00 s=0 e=1 z=0 None .text JPACalcClrIdxRepeat__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxRepeat(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxRepeat__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277240-8027727C 003C+00 s=0 e=1 z=0 None .text
* JPACalcClrIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxRepeat(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 8027727C-802772BC 0040+00 s=0 e=1 z=0 None .text JPACalcClrIdxReverse__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxReverse(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxReverse__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 802772BC-80277308 004C+00 s=0 e=1 z=0 None .text
* JPACalcClrIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxReverse(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277308-80277314 000C+00 s=0 e=1 z=0 None .text JPACalcClrIdxMerge__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxMerge(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxMerge__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* ############################################################################################## */
/* 804552B0-804552B8 0008+00 s=4 e=0 z=0 None .sdata2 @2623 */
SECTION_SDATA2 static f64 lit_2623 = 4503601774854144.0 /* cast s32 to float */;
/* 80277314-80277384 0070+00 s=0 e=1 z=0 None .text
* JPACalcClrIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxMerge(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277384-80277390 000C+00 s=0 e=1 z=0 None .text JPACalcClrIdxRandom__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxRandom(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxRandom__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277390-802773C4 0034+00 s=0 e=1 z=0 None .text
* JPACalcClrIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcClrIdxRandom(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcClrIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 802773C4-80277404 0040+00 s=0 e=1 z=0 None .text JPACalcPrm__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcPrm(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcPrm__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277404-80277440 003C+00 s=0 e=1 z=0 None .text
* JPACalcPrm__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcPrm(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcPrm__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277440-80277480 0040+00 s=0 e=1 z=0 None .text JPACalcEnv__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcEnv(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcEnv__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277480-802774BC 003C+00 s=0 e=1 z=0 None .text
* JPACalcEnv__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcEnv(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcEnv__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 802774BC-80277504 0048+00 s=0 e=1 z=0 None .text
* JPACalcColorCopy__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcColorCopy(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcColorCopy__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277504-8027753C 0038+00 s=0 e=1 z=0 None .text JPAGenTexCrdMtxIdt__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPAGenTexCrdMtxIdt(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPAGenTexCrdMtxIdt__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027753C-80277574 0038+00 s=0 e=1 z=0 None .text JPAGenTexCrdMtxAnm__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPAGenTexCrdMtxAnm(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPAGenTexCrdMtxAnm__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277574-802775AC 0038+00 s=0 e=1 z=0 None .text JPAGenTexCrdMtxPrj__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPAGenTexCrdMtxPrj(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPAGenTexCrdMtxPrj__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* ############################################################################################## */
/* 804552B8-804552BC 0004+00 s=9 e=0 z=0 None .sdata2 @2740 */
SECTION_SDATA2 static f32 lit_2740 = 0.5f;
/* 804552BC-804552C0 0004+00 s=14 e=0 z=0 None .sdata2 @2741 */
SECTION_SDATA2 static f32 lit_2741 = 1.0f;
/* 804552C0-804552C8 0004+04 s=19 e=0 z=0 None .sdata2 @2742 */
SECTION_SDATA2 static f32 lit_2742[1 + 1 /* padding */] = {
0.0f,
/* padding */
0.0f,
};
/* 804552C8-804552D0 0008+00 s=6 e=0 z=0 None .sdata2 @2744 */
SECTION_SDATA2 static f64 lit_2744 = 4503599627370496.0 /* cast u32 to float */;
/* 802775AC-80277758 01AC+00 s=0 e=1 z=0 None .text
* JPAGenCalcTexCrdMtxAnm__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPAGenCalcTexCrdMtxAnm(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPAGenCalcTexCrdMtxAnm__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277758-802778EC 0194+00 s=0 e=1 z=0 None .text
* JPALoadCalcTexCrdMtxAnm__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPALoadCalcTexCrdMtxAnm(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPALoadCalcTexCrdMtxAnm__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 802778EC-80277940 0054+00 s=0 e=1 z=0 None .text JPALoadTex__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPALoadTex(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPALoadTex__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277940-80277990 0050+00 s=0 e=1 z=0 None .text JPALoadTexAnm__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPALoadTexAnm(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPALoadTexAnm__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277990-802779DC 004C+00 s=0 e=1 z=0 None .text
* JPALoadTexAnm__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPALoadTexAnm(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPALoadTexAnm__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 802779DC-80277A18 003C+00 s=0 e=1 z=0 None .text JPACalcTexIdxNormal__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxNormal(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxNormal__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277A18-80277A50 0038+00 s=0 e=1 z=0 None .text
* JPACalcTexIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxNormal(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxNormal__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277A50-80277A88 0038+00 s=0 e=1 z=0 None .text JPACalcTexIdxRepeat__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxRepeat(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxRepeat__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277A88-80277ACC 0044+00 s=0 e=1 z=0 None .text
* JPACalcTexIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxRepeat(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxRepeat__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277ACC-80277B1C 0050+00 s=0 e=1 z=0 None .text JPACalcTexIdxReverse__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxReverse(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxReverse__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277B1C-80277B78 005C+00 s=0 e=1 z=0 None .text
* JPACalcTexIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxReverse(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxReverse__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277B78-80277B94 001C+00 s=0 e=1 z=0 None .text JPACalcTexIdxMerge__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxMerge(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxMerge__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277B94-80277C0C 0078+00 s=0 e=1 z=0 None .text
* JPACalcTexIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxMerge(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxMerge__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277C0C-80277C28 001C+00 s=0 e=1 z=0 None .text JPACalcTexIdxRandom__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxRandom(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxRandom__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277C28-80277C64 003C+00 s=0 e=1 z=0 None .text
* JPACalcTexIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPACalcTexIdxRandom(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPACalcTexIdxRandom__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277C64-80277C8C 0028+00 s=0 e=1 z=0 None .text JPALoadPosMtxCam__FP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPALoadPosMtxCam(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPALoadPosMtxCam__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 80277C8C-80277C90 0004+00 s=1 e=0 z=0 None .text noLoadPrj__FPC18JPAEmitterWorkDataPA4_Cf
*/
static void noLoadPrj(JPAEmitterWorkData const* param_0, f32 const (*param_1)[4]) {
/* empty function */
}
/* 80277C90-80277CC8 0038+00 s=1 e=0 z=0 None .text loadPrj__FPC18JPAEmitterWorkDataPA4_Cf */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void loadPrj(JPAEmitterWorkData const* param_0, f32 const (*param_1)[4]) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/loadPrj__FPC18JPAEmitterWorkDataPA4_Cf.s"
}
#pragma pop
/* 80277CC8-80277E88 01C0+00 s=1 e=0 z=0 None .text loadPrjAnm__FPC18JPAEmitterWorkDataPA4_Cf
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void loadPrjAnm(JPAEmitterWorkData const* param_0, f32 const (*param_1)[4]) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/loadPrjAnm__FPC18JPAEmitterWorkDataPA4_Cf.s"
}
#pragma pop
/* ############################################################################################## */
/* 803C42E0-803C4300 0020+00 s=10 e=0 z=0 None .data jpa_dl */
SECTION_DATA static u8 jpa_dl[32] = {
0x80, 0x00, 0x04, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
/* 803C4300-803C4320 0020+00 s=1 e=0 z=0 None .data jpa_dl_x */
SECTION_DATA static u8 jpa_dl_x[32] = {
0x80, 0x00, 0x08, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, 0x48, 0x00, 0x49, 0x01, 0x4A,
0x02, 0x4B, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
/* 803C4320-803C432C 000C+00 s=10 e=0 z=0 None .data p_prj */
SECTION_DATA static void* p_prj[3] = {
(void*)noLoadPrj__FPC18JPAEmitterWorkDataPA4_Cf,
(void*)loadPrj__FPC18JPAEmitterWorkDataPA4_Cf,
(void*)loadPrjAnm__FPC18JPAEmitterWorkDataPA4_Cf,
};
/* 80277E88-80277F70 00E8+00 s=0 e=1 z=0 None .text
* JPADrawBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawBillboard(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80277F70-80278088 0118+00 s=0 e=1 z=0 None .text
* JPADrawRotBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawRotBillboard(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawRotBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80278088-80278184 00FC+00 s=0 e=1 z=0 None .text
* JPADrawYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawYBillboard(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80278184-802782B4 0130+00 s=0 e=1 z=0 None .text
* JPADrawRotYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawRotYBillboard(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawRotYBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 802782B4-802782D0 001C+00 s=1 e=0 z=0 None .text
* dirTypeVel__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3<f> */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void dirTypeVel(JPAEmitterWorkData const* param_0, JPABaseParticle const* param_1,
JGeometry::TVec3<f32>* param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/func_802782B4.s"
}
#pragma pop
/* 802782D0-802782EC 001C+00 s=1 e=0 z=0 None .text
* dirTypePos__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3<f> */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void dirTypePos(JPAEmitterWorkData const* param_0, JPABaseParticle const* param_1,
JGeometry::TVec3<f32>* param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/func_802782D0.s"
}
#pragma pop
/* 802782EC-80278320 0034+00 s=1 e=0 z=0 None .text
* dirTypePosInv__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3<f> */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void dirTypePosInv(JPAEmitterWorkData const* param_0, JPABaseParticle const* param_1,
JGeometry::TVec3<f32>* param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/func_802782EC.s"
}
#pragma pop
/* 80278320-8027833C 001C+00 s=1 e=0 z=0 None .text
* dirTypeEmtrDir__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3<f> */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void dirTypeEmtrDir(JPAEmitterWorkData const* param_0, JPABaseParticle const* param_1,
JGeometry::TVec3<f32>* param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/func_80278320.s"
}
#pragma pop
/* 8027833C-802783D4 0098+00 s=1 e=0 z=0 None .text
* dirTypePrevPtcl__FPC18JPAEmitterWorkDataPC15JPABaseParticlePQ29JGeometry8TVec3<f> */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void dirTypePrevPtcl(JPAEmitterWorkData const* param_0, JPABaseParticle const* param_1,
JGeometry::TVec3<f32>* param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/func_8027833C.s"
}
#pragma pop
/* 802783D4-80278414 0040+00 s=1 e=0 z=0 None .text rotTypeY__FffRA3_A4_f */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void rotTypeY(f32 param_0, f32 param_1, f32 (&param_2)[3][4]) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/rotTypeY__FffRA3_A4_f.s"
}
#pragma pop
/* 80278414-80278454 0040+00 s=1 e=0 z=0 None .text rotTypeX__FffRA3_A4_f */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void rotTypeX(f32 param_0, f32 param_1, f32 (&param_2)[3][4]) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/rotTypeX__FffRA3_A4_f.s"
}
#pragma pop
/* 80278454-80278494 0040+00 s=1 e=0 z=0 None .text rotTypeZ__FffRA3_A4_f */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void rotTypeZ(f32 param_0, f32 param_1, f32 (&param_2)[3][4]) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/rotTypeZ__FffRA3_A4_f.s"
}
#pragma pop
/* ############################################################################################## */
/* 804552D0-804552D4 0004+00 s=1 e=0 z=0 None .sdata2 @3145 */
SECTION_SDATA2 static f32 lit_3145 = 0.33333298563957214f;
/* 804552D4-804552D8 0004+00 s=1 e=0 z=0 None .sdata2 @3146 */
SECTION_SDATA2 static f32 lit_3146 = 0.5773500204086304f;
/* 80278494-802784F0 005C+00 s=1 e=0 z=0 None .text rotTypeXYZ__FffRA3_A4_f */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void rotTypeXYZ(f32 param_0, f32 param_1, f32 (&param_2)[3][4]) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/rotTypeXYZ__FffRA3_A4_f.s"
}
#pragma pop
/* 802784F0-8027853C 004C+00 s=1 e=0 z=0 None .text basePlaneTypeXY__FPA4_fff */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void basePlaneTypeXY(f32 (*param_0)[4], f32 param_1, f32 param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/basePlaneTypeXY__FPA4_fff.s"
}
#pragma pop
/* 8027853C-80278588 004C+00 s=1 e=0 z=0 None .text basePlaneTypeXZ__FPA4_fff */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void basePlaneTypeXZ(f32 (*param_0)[4], f32 param_1, f32 param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/basePlaneTypeXZ__FPA4_fff.s"
}
#pragma pop
/* 80278588-802785F8 0070+00 s=1 e=0 z=0 None .text basePlaneTypeX__FPA4_fff */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void basePlaneTypeX(f32 (*param_0)[4], f32 param_1, f32 param_2) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/basePlaneTypeX__FPA4_fff.s"
}
#pragma pop
/* ############################################################################################## */
/* 803C432C-803C4340 0014+00 s=5 e=0 z=0 None .data p_direction */
SECTION_DATA static void* p_direction[5] = {
(void*)func_802782B4, (void*)func_802782D0, (void*)func_802782EC,
(void*)func_80278320, (void*)func_8027833C,
};
/* 803C4340-803C4354 0014+00 s=2 e=0 z=0 None .data p_rot */
SECTION_DATA static void* p_rot[5] = {
(void*)rotTypeY__FffRA3_A4_f, (void*)rotTypeX__FffRA3_A4_f, (void*)rotTypeZ__FffRA3_A4_f,
(void*)rotTypeXYZ__FffRA3_A4_f, (void*)rotTypeY__FffRA3_A4_f,
};
/* 803C4354-803C4360 000C+00 s=3 e=0 z=0 None .data p_plane */
SECTION_DATA static void* p_plane[3] = {
(void*)basePlaneTypeXY__FPA4_fff,
(void*)basePlaneTypeXZ__FPA4_fff,
(void*)basePlaneTypeX__FPA4_fff,
};
/* 804507A0-804507A8 0008+00 s=3 e=0 z=0 None .sdata p_dl */
SECTION_SDATA static void* p_dl[2] = {
(void*)&jpa_dl,
(void*)&jpa_dl_x,
};
/* 804552D8-804552DC 0004+00 s=6 e=0 z=0 None .sdata2 @3281 */
SECTION_SDATA2 static f32 lit_3281 = 32.0f;
/* 804552DC-804552E0 0004+00 s=6 e=0 z=0 None .sdata2 @3282 */
SECTION_SDATA2 static f32 lit_3282 = 3.0f;
/* 802785F8-80278994 039C+00 s=0 e=1 z=0 None .text
* JPADrawDirection__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawDirection(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawDirection__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80278994-80278DA8 0414+00 s=0 e=1 z=0 None .text
* JPADrawRotDirection__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawRotDirection(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawRotDirection__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80278DA8-80278FC8 0220+00 s=0 e=1 z=0 None .text
* JPADrawDBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawDBillboard(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawDBillboard__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80278FC8-80279110 0148+00 s=0 e=1 z=0 None .text
* JPADrawRotation__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawRotation(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawRotation__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80279110-802791B0 00A0+00 s=0 e=1 z=0 None .text
* JPADrawPoint__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawPoint(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawPoint__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 802791B0-80279364 01B4+00 s=0 e=1 z=0 None .text
* JPADrawLine__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawLine(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawLine__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 80279364-8027936C 0008+00 s=2 e=0 z=0 None .text getNext__FP26JPANode<15JPABaseParticle> */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void getNext(JPANode<JPABaseParticle>* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/func_80279364.s"
}
#pragma pop
/* 8027936C-80279374 0008+00 s=2 e=0 z=0 None .text getPrev__FP26JPANode<15JPABaseParticle> */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void getPrev(JPANode<JPABaseParticle>* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/func_8027936C.s"
}
#pragma pop
/* 80279374-8027996C 05F8+00 s=0 e=1 z=0 None .text JPADrawStripe__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawStripe(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawStripe__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027996C-8027A3D8 0A6C+00 s=0 e=1 z=0 None .text JPADrawStripeX__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawStripeX(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawStripeX__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027A3D8-8027A414 003C+00 s=0 e=1 z=0 None .text
* JPADrawEmitterCallBackB__FP18JPAEmitterWorkData */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawEmitterCallBackB(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawEmitterCallBackB__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027A414-8027A454 0040+00 s=0 e=1 z=0 None .text
* JPADrawParticleCallBack__FP18JPAEmitterWorkDataP15JPABaseParticle */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPADrawParticleCallBack(JPAEmitterWorkData* param_0, JPABaseParticle* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/JPADrawParticleCallBack__FP18JPAEmitterWorkDataP15JPABaseParticle.s"
}
#pragma pop
/* 8027A454-8027A6DC 0288+00 s=1 e=0 z=0 None .text
* makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsP7JKRHeap */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm static void makeColorTable(_GXColor** param_0, JPAClrAnmKeyData const* param_1, u8 param_2,
s16 param_3, JKRHeap* param_4) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/makeColorTable__FPP8_GXColorPC16JPAClrAnmKeyDataUcsP7JKRHeap.s"
}
#pragma pop
/* 8027A6DC-8027A7E8 010C+00 s=0 e=1 z=0 None .text __ct__12JPABaseShapeFPCUcP7JKRHeap */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm JPABaseShape::JPABaseShape(u8 const* param_0, JKRHeap* param_1) {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/__ct__12JPABaseShapeFPCUcP7JKRHeap.s"
}
#pragma pop
/* ############################################################################################## */
/* 803C4360-803C436C 000C+00 s=1 e=0 z=0 None .data st_bm__12JPABaseShape */
SECTION_DATA static u8 st_bm__12JPABaseShape[12] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02,
};
/* 803C436C-803C4394 0028+00 s=1 e=0 z=0 None .data st_bf__12JPABaseShape */
SECTION_DATA static u8 st_bf__12JPABaseShape[40] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x04,
0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x07,
};
/* 803C4394-803C43D4 0040+00 s=1 e=0 z=0 None .data st_lo__12JPABaseShape */
SECTION_DATA static u8 st_lo__12JPABaseShape[64] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0C,
0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0E,
0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x09,
0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x0D,
};
/* 803C43D4-803C43F4 0020+00 s=1 e=0 z=0 None .data st_c__12JPABaseShape */
SECTION_DATA static u8 st_c__12JPABaseShape[32] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02,
0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x07,
};
/* 803C43F4-803C4404 0010+00 s=1 e=0 z=0 None .data st_ao__12JPABaseShape */
SECTION_DATA static u8 st_ao__12JPABaseShape[16] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03,
};
/* 803C4404-803C4464 0060+00 s=1 e=0 z=0 None .data st_ca__12JPABaseShape */
SECTION_DATA static u8 st_ca__12JPABaseShape[96] = {
0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x0F,
0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x0F,
0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x0F,
0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x0F,
0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04,
0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x02,
};
/* 803C4464-803C4488 0020+04 s=1 e=0 z=0 None .data st_aa__12JPABaseShape */
SECTION_DATA static u8 st_aa__12JPABaseShape[32 + 4 /* padding */] = {
0x00,
0x00,
0x00,
0x07,
0x00,
0x00,
0x00,
0x04,
0x00,
0x00,
0x00,
0x01,
0x00,
0x00,
0x00,
0x07,
0x00,
0x00,
0x00,
0x07,
0x00,
0x00,
0x00,
0x07,
0x00,
0x00,
0x00,
0x07,
0x00,
0x00,
0x00,
0x01,
/* padding */
0x00,
0x00,
0x00,
0x00,
};
/* 8027A7E8-8027A918 0130+00 s=0 e=1 z=0 None .text setGX__12JPABaseShapeCFP18JPAEmitterWorkData
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JPABaseShape::setGX(JPAEmitterWorkData* param_0) const {
nofralloc
#include "asm/JSystem/JParticle/JPABaseShape/setGX__12JPABaseShapeCFP18JPAEmitterWorkData.s"
}
#pragma pop