Files
dusklight/libs/JSystem/JParticle/JPADynamicsBlock.cpp
T
2021-03-31 23:22:38 +02:00

365 lines
12 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: JPADynamicsBlock
//
#include "dol2asm.h"
#include "dolphin/types.h"
#include "JSystem/JParticle/JPADynamicsBlock.h"
//
// Types:
//
struct JPAEmitterWorkData {
};
struct JPADynamicsBlock {
/* 8027BB18 */ // False False
// u8 const* False
// u8 const False
// u8 False
JPADynamicsBlock(u8 const*);
/* 8027BB4C */ // True False
void init();
/* 8027BBE8 */ // False False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
void create(JPAEmitterWorkData*);
};
struct JPABaseEmitter {
/* 8027EA40 */ // False False
void createParticle();
};
//
// Forward References:
//
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
static void JPAVolumePoint(JPAEmitterWorkData*);
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
static void JPAVolumeLine(JPAEmitterWorkData*);
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
static void JPAVolumeCircle(JPAEmitterWorkData*);
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
static void JPAVolumeCube(JPAEmitterWorkData*);
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
static void JPAVolumeSphere(JPAEmitterWorkData*);
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
static void JPAVolumeCylinder(JPAEmitterWorkData*);
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
static void JPAVolumeTorus(JPAEmitterWorkData*);
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" static void JPAVolumePoint__FP18JPAEmitterWorkData();
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" static void JPAVolumeLine__FP18JPAEmitterWorkData();
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" static void JPAVolumeCircle__FP18JPAEmitterWorkData();
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" static void JPAVolumeCube__FP18JPAEmitterWorkData();
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" static void JPAVolumeSphere__FP18JPAEmitterWorkData();
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" static void JPAVolumeCylinder__FP18JPAEmitterWorkData();
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" static void JPAVolumeTorus__FP18JPAEmitterWorkData();
// False False
// u8 const* False
// u8 const False
// u8 False
extern "C" void __ct__16JPADynamicsBlockFPCUc();
// True False
extern "C" void init__16JPADynamicsBlockFv();
// False False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
extern "C" void create__16JPADynamicsBlockFP18JPAEmitterWorkData();
//
// External References:
//
// False False
extern "C" void createParticle__14JPABaseEmitterFv();
extern "C" extern u8 sincosTable___5JMath[65536];
//
// Declarations:
//
/* ############################################################################################## */
/* 80455310-80455314 0004+00 s=7 e=0 z=0 None .sdata2 @2287 */
SECTION_SDATA2 static u8 lit_2287[4] = {
0x00, 0x00, 0x00, 0x00,
};
/* 80455314-80455318 0004+00 s=7 e=0 z=0 None .sdata2 @2288 */
SECTION_SDATA2 static f32 lit_2288 = 1.0f;
/* 80455318-80455320 0004+04 s=3 e=0 z=0 None .sdata2 @2289 */
SECTION_SDATA2 static f32 lit_2289[1 + 1 /* padding */] = {
0.5f,
/* padding */
0.0f,
};
/* 8027B144-8027B220 00DC+00 s=1 e=0 z=0 None .text JPAVolumePoint__FP18JPAEmitterWorkData */
// 8027B148: 80455310 (lit_2287)
// 8027B188: 80455314 (lit_2288)
// 8027B190: 80455318 (lit_2289)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm static void JPAVolumePoint(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/JPAVolumePoint__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* ############################################################################################## */
/* 80455320-80455328 0008+00 s=6 e=0 z=0 None .sdata2 @2321 */
SECTION_SDATA2 static f64 lit_2321 = 4503601774854144.0 /* cast s32 to float */;
/* 8027B220-8027B33C 011C+00 s=1 e=0 z=0 None .text JPAVolumeLine__FP18JPAEmitterWorkData */
// 8027B248: 80455320 (lit_2321)
// 8027B27C: 80455314 (lit_2288)
// 8027B288: 80455318 (lit_2289)
// 8027B294: 80455310 (lit_2287)
// 8027B2E0: 80455314 (lit_2288)
// 8027B2E8: 80455318 (lit_2289)
// 8027B2F8: 80455310 (lit_2287)
// 8027B314: 80455310 (lit_2287)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm static void JPAVolumeLine(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/JPAVolumeLine__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027B33C-8027B4E8 01AC+00 s=1 e=0 z=0 None .text JPAVolumeCircle__FP18JPAEmitterWorkData */
// 8027B370: 80455320 (lit_2321)
// 8027B3D4: 80455320 (lit_2321)
// 8027B430: 80455314 (lit_2288)
// 8027B468: 80455314 (lit_2288)
// 8027B47C: 80439A20 (sincosTable___5JMath)
// 8027B480: 80439A20 (sincosTable___5JMath)
// 8027B4A0: 80455310 (lit_2287)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm static void JPAVolumeCircle(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/JPAVolumeCircle__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027B4E8-8027B5F0 0108+00 s=1 e=0 z=0 None .text JPAVolumeCube__FP18JPAEmitterWorkData */
// 8027B51C: 80455314 (lit_2288)
// 8027B524: 80455318 (lit_2289)
// 8027B5DC: 80455310 (lit_2287)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm static void JPAVolumeCube(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/JPAVolumeCube__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* ############################################################################################## */
/* 80455328-80455330 0004+04 s=1 e=0 z=0 None .sdata2 @2501 */
SECTION_SDATA2 static f32 lit_2501[1 + 1 /* padding */] = {
32768.0f,
/* padding */
0.0f,
};
/* 80455330-80455338 0008+00 s=1 e=0 z=0 None .sdata2 @2503 */
SECTION_SDATA2 static f64 lit_2503 = 4503599627370496.0 /* cast u32 to float */;
/* 8027B5F0-8027B87C 028C+00 s=1 e=0 z=0 None .text JPAVolumeSphere__FP18JPAEmitterWorkData */
// 8027B630: 80455328 (lit_2501)
// 8027B64C: 80455330 (lit_2503)
// 8027B74C: 80455320 (lit_2321)
// 8027B7A8: 80455314 (lit_2288)
// 8027B7E4: 80455314 (lit_2288)
// 8027B7F8: 80439A20 (sincosTable___5JMath)
// 8027B7FC: 80439A20 (sincosTable___5JMath)
// 8027B868: 80455310 (lit_2287)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm static void JPAVolumeSphere(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/JPAVolumeSphere__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027B87C-8027B9F8 017C+00 s=1 e=0 z=0 None .text JPAVolumeCylinder__FP18JPAEmitterWorkData */
// 8027B8AC: 80455320 (lit_2321)
// 8027B900: 80455314 (lit_2288)
// 8027B938: 80455314 (lit_2288)
// 8027B94C: 80439A20 (sincosTable___5JMath)
// 8027B950: 80439A20 (sincosTable___5JMath)
// 8027B9E4: 80455310 (lit_2287)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm static void JPAVolumeCylinder(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/JPAVolumeCylinder__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027B9F8-8027BB18 0120+00 s=1 e=0 z=0 None .text JPAVolumeTorus__FP18JPAEmitterWorkData */
// 8027BA28: 80455320 (lit_2321)
// 8027BA78: 80439A20 (sincosTable___5JMath)
// 8027BA7C: 80439A20 (sincosTable___5JMath)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm static void JPAVolumeTorus(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/JPAVolumeTorus__FP18JPAEmitterWorkData.s"
}
#pragma pop
/* 8027BB18-8027BB4C 0034+00 s=0 e=1 z=0 None .text __ct__16JPADynamicsBlockFPCUc */
// 8027BB30: 8027BB4C (init__16JPADynamicsBlockFv)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// u8 const* False
// u8 const False
// u8 False
asm JPADynamicsBlock::JPADynamicsBlock(u8 const* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/__ct__16JPADynamicsBlockFPCUc.s"
}
#pragma pop
/* ############################################################################################## */
/* 803C4488-803C44A8 001C+04 s=1 e=0 z=0 None .data @2631 */
SECTION_DATA static void* lit_2631[7 + 1 /* padding */] = {
(void*)(((char*)init__16JPADynamicsBlockFv)+0x2C),
(void*)(((char*)init__16JPADynamicsBlockFv)+0x3C),
(void*)(((char*)init__16JPADynamicsBlockFv)+0x4C),
(void*)(((char*)init__16JPADynamicsBlockFv)+0x5C),
(void*)(((char*)init__16JPADynamicsBlockFv)+0x6C),
(void*)(((char*)init__16JPADynamicsBlockFv)+0x7C),
(void*)(((char*)init__16JPADynamicsBlockFv)+0x8C),
/* padding */
NULL,
};
/* 8027BB4C-8027BBE8 009C+00 s=2 e=0 z=0 None .text init__16JPADynamicsBlockFv */
// 8027BB60: 803C4488 (lit_2631)
// 8027BB64: 803C4488 (lit_2631)
// 8027BB78: 8027B4E8 (JPAVolumeCube__FP18JPAEmitterWorkData)
// 8027BB7C: 8027B4E8 (JPAVolumeCube__FP18JPAEmitterWorkData)
// 8027BB88: 8027B5F0 (JPAVolumeSphere__FP18JPAEmitterWorkData)
// 8027BB8C: 8027B5F0 (JPAVolumeSphere__FP18JPAEmitterWorkData)
// 8027BB98: 8027B87C (JPAVolumeCylinder__FP18JPAEmitterWorkData)
// 8027BB9C: 8027B87C (JPAVolumeCylinder__FP18JPAEmitterWorkData)
// 8027BBA8: 8027B9F8 (JPAVolumeTorus__FP18JPAEmitterWorkData)
// 8027BBAC: 8027B9F8 (JPAVolumeTorus__FP18JPAEmitterWorkData)
// 8027BBB8: 8027B144 (JPAVolumePoint__FP18JPAEmitterWorkData)
// 8027BBBC: 8027B144 (JPAVolumePoint__FP18JPAEmitterWorkData)
// 8027BBC8: 8027B33C (JPAVolumeCircle__FP18JPAEmitterWorkData)
// 8027BBCC: 8027B33C (JPAVolumeCircle__FP18JPAEmitterWorkData)
// 8027BBD8: 8027B220 (JPAVolumeLine__FP18JPAEmitterWorkData)
// 8027BBDC: 8027B220 (JPAVolumeLine__FP18JPAEmitterWorkData)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void JPADynamicsBlock::init() {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/init__16JPADynamicsBlockFv.s"
}
#pragma pop
/* 8027BBE8-8027BDEC 0204+00 s=0 e=1 z=0 None .text create__16JPADynamicsBlockFP18JPAEmitterWorkData */
// 8027BC90: 80455314 (lit_2288)
// 8027BCDC: 80455320 (lit_2321)
// 8027BD10: 80455310 (lit_2287)
// 8027BD4C: 8027EA40 (createParticle__14JPABaseEmitterFv)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// JPAEmitterWorkData* False
// JPAEmitterWorkData False
asm void JPADynamicsBlock::create(JPAEmitterWorkData* param_0) {
nofralloc
#include "asm/JSystem/JParticle/JPADynamicsBlock/create__16JPADynamicsBlockFP18JPAEmitterWorkData.s"
}
#pragma pop