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

631 lines
18 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: J3DShape
//
#include "dol2asm.h"
#include "dolphin/types.h"
#include "JSystem/J3DGraphBase/J3DShape.h"
//
// Types:
//
struct _GXVtxFmt {
};
struct _GXVtxAttrFmtList {
};
struct _GXAttr {
};
struct Vec {
};
struct J3DShapeMtx {
/* 803130A8 */ // False False
void resetMtxLoadCache();
};
struct J3DShapeDraw {
/* 80314974 */ // False False
// u32 False
// u32 False
// u32 False
void addTexMtxIndexInDL(u32, u32, u32);
/* 80314AD4 */ // False False
void draw() const;
};
struct J3DShape {
/* 80314B48 */ // False False
void initialize();
/* 80314BB8 */ // False False
// _GXAttr False
// u32 False
void addTexMtxIndexInDL(_GXAttr, u32);
/* 80314CBC */ // False False
// _GXAttr False
void addTexMtxIndexInVcd(_GXAttr);
/* 80314DA8 */ // False False
// Vec const& False
// Vec const False
// Vec False
// f32 (* )[3][3] False
// f32 False
// * False
// False
// f32 (* )[3][3] False
// f32 False
// * False
// False
void calcNBTScale(Vec const&, f32 (* )[3][3], f32 (* )[3][3]);
/* 80314E28 */ // False False
void countBumpMtxNum() const;
/* 80314EEC */ // True False
void loadVtxArray() const;
/* 80314F5C */ // False False
// J3DShape* False
// J3DShape False
void isSameVcdVatCmd(J3DShape*);
/* 80314F98 */ // True False
void makeVtxArrayCmd();
/* 80315260 */ // False False
void makeVcdVatCmd();
/* 80315300 */ // False False
void loadPreDrawSetting() const;
/* 80315398 */ // True False
void setArrayAndBindPipeline() const;
/* 8031544C */ // True False
void drawFast() const;
/* 803155E0 */ // True False
void draw() const;
/* 80315628 */ // True False
void simpleDraw() const;
/* 803156AC */ // True False
void simpleDrawCache() const;
};
//
// Forward References:
//
// True False
// u8 False
// u32 False
static void J3DLoadCPCmd(u8, u32);
// True False
// _GXAttr False
// void* False
// void False
static void J3DLoadArrayBasePtr(_GXAttr, void*);
// False False
extern "C" void initialize__8J3DShapeFv();
// False False
// _GXAttr False
// u32 False
extern "C" void addTexMtxIndexInDL__8J3DShapeF7_GXAttrUl();
// False False
// _GXAttr False
extern "C" void addTexMtxIndexInVcd__8J3DShapeF7_GXAttr();
// False False
// Vec const& False
// Vec const False
// Vec False
// f32 (* )[3][3] False
// f32 False
// * False
// False
// f32 (* )[3][3] False
// f32 False
// * False
// False
extern "C" void calcNBTScale__8J3DShapeFRC3VecPA3_A3_fPA3_A3_f();
// False False
extern "C" void countBumpMtxNum__8J3DShapeCFv();
// True False
// u8 False
// u32 False
extern "C" static void J3DLoadCPCmd__FUcUl();
// True False
// _GXAttr False
// void* False
// void False
extern "C" static void J3DLoadArrayBasePtr__F7_GXAttrPv();
// True False
extern "C" void loadVtxArray__8J3DShapeCFv();
// False False
// J3DShape* False
// J3DShape False
extern "C" void isSameVcdVatCmd__8J3DShapeFP8J3DShape();
// True False
extern "C" void makeVtxArrayCmd__8J3DShapeFv();
// False False
extern "C" void makeVcdVatCmd__8J3DShapeFv();
// False False
extern "C" void loadPreDrawSetting__8J3DShapeCFv();
// True False
extern "C" void setArrayAndBindPipeline__8J3DShapeCFv();
// True False
extern "C" void drawFast__8J3DShapeCFv();
// True False
extern "C" void draw__8J3DShapeCFv();
// True False
extern "C" void simpleDraw__8J3DShapeCFv();
// True False
extern "C" void simpleDrawCache__8J3DShapeCFv();
extern "C" extern void* __vt__8J3DShape[6];
extern "C" extern u8 sOldVcdVatCmd__8J3DShape[4];
//
// External References:
//
// False False
// void* False
// void False
// u32 False
void* operator new[](u32);
// False False
// _GXVtxFmt False
// _GXVtxAttrFmtList const* False
// _GXVtxAttrFmtList const False
// _GXVtxAttrFmtList False
// bool False
void J3DGDSetVtxAttrFmtv(_GXVtxFmt, _GXVtxAttrFmtList const*, bool);
// False False
// f32 (* )[4] False
// f32 False
// * False
// False
// u32 False
void J3DFifoLoadPosMtxImm(f32 (* )[4], u32);
// False False
// f32 (* )[4] False
// f32 False
// * False
// False
// u32 False
void J3DFifoLoadNrmMtxImm(f32 (* )[4], u32);
// False False
// void* False
// void False
// u32 False
extern "C" void* __nwa__FUl();
// False False
// _GXVtxFmt False
// _GXVtxAttrFmtList const* False
// _GXVtxAttrFmtList const False
// _GXVtxAttrFmtList False
// bool False
extern "C" void J3DGDSetVtxAttrFmtv__F9_GXVtxFmtPC17_GXVtxAttrFmtListb();
// False False
// f32 (* )[4] False
// f32 False
// * False
// False
// u32 False
extern "C" void J3DFifoLoadPosMtxImm__FPA4_fUl();
// False False
// f32 (* )[4] False
// f32 False
// * False
// False
// u32 False
extern "C" void J3DFifoLoadNrmMtxImm__FPA4_fUl();
// False False
extern "C" void resetMtxLoadCache__11J3DShapeMtxFv();
// False False
// u32 False
// u32 False
// u32 False
extern "C" void addTexMtxIndexInDL__12J3DShapeDrawFUlUlUl();
// False False
extern "C" void draw__12J3DShapeDrawCFv();
// False False
extern "C" void OSDisableInterrupts();
// False False
extern "C" void OSRestoreInterrupts();
// False False
extern "C" void OSDisableScheduler();
// False False
extern "C" void OSEnableScheduler();
// False False
extern "C" void GXSetArray();
// False False
extern "C" void GXCallDisplayList();
// False False
extern "C" void GDInitGDLObj();
// False False
extern "C" void GDFlushCurrToMem();
// False False
extern "C" void GDPadCurr32();
// False False
extern "C" void GDSetVtxDescv();
// False False
extern "C" void GDSetArray();
// False False
extern "C" void GDSetArrayRaw();
// False False
extern "C" void _savegpr_27();
// False False
extern "C" void _savegpr_28();
// False False
extern "C" void _savegpr_29();
// False False
extern "C" void _restgpr_27();
// False False
extern "C" void _restgpr_28();
// False False
extern "C" void _restgpr_29();
extern "C" extern u8 j3dSys[284];
extern "C" extern u8 j3dDefaultViewNo[4 + 4 /* padding */];
extern "C" extern u8 sCurrentPipeline__11J3DShapeMtx[4];
extern "C" extern u8 sCurrentScaleFlag__11J3DShapeMtx[4];
extern "C" extern u8 struct_804515B0[4];
extern "C" extern u8 sTexMtxLoadType__11J3DShapeMtx[4];
extern "C" extern u8 __GDCurrentDL[4];
//
// Declarations:
//
/* ############################################################################################## */
/* 804563A0-804563A8 0004+04 s=1 e=0 z=0 None .sdata2 @687 */
SECTION_SDATA2 static f32 lit_687[1 + 1 /* padding */] = {
0.0f,
/* padding */
0.0f,
};
/* 80314B48-80314BB8 0070+00 s=0 e=1 z=0 None .text initialize__8J3DShapeFv */
// 80314B64: 804563A0 (lit_687)
// 80314BA4: 80451598 (j3dDefaultViewNo)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void J3DShape::initialize() {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/initialize__8J3DShapeFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 803A1E98-803A1EA8 0010+00 s=1 e=0 z=0 None .rodata @697 */
SECTION_RODATA static u8 const lit_697[16] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02,
};
/* 80314BB8-80314CBC 0104+00 s=0 e=1 z=0 None .text addTexMtxIndexInDL__8J3DShapeF7_GXAttrUl */
// 80314BC8: 803621D4 (_savegpr_27)
// 80314BD0: 803A1E98 (lit_697)
// 80314BD4: 803A1E98 (lit_697)
// 80314C8C: 80314974 (addTexMtxIndexInDL__12J3DShapeDrawFUlUlUl)
// 80314CA8: 80362220 (_restgpr_27)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// _GXAttr False
// u32 False
asm void J3DShape::addTexMtxIndexInDL(_GXAttr param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/addTexMtxIndexInDL__8J3DShapeF7_GXAttrUl.s"
}
#pragma pop
/* 80314CBC-80314DA8 00EC+00 s=0 e=1 z=0 None .text addTexMtxIndexInVcd__8J3DShapeF7_GXAttr */
// 80314D18: 802CECC4 (__nwa__FUl)
// 80314D8C: 80315260 (makeVcdVatCmd__8J3DShapeFv)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// _GXAttr False
asm void J3DShape::addTexMtxIndexInVcd(_GXAttr param_0) {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/addTexMtxIndexInVcd__8J3DShapeF7_GXAttr.s"
}
#pragma pop
/* 80314DA8-80314E28 0080+00 s=0 e=1 z=0 None .text calcNBTScale__8J3DShapeFRC3VecPA3_A3_fPA3_A3_f */
// 80314DB8: 803621D4 (_savegpr_27)
// 80314E14: 80362220 (_restgpr_27)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// Vec const& False
// Vec const False
// Vec False
// f32 (* )[3][3] False
// f32 False
// * False
// False
// f32 (* )[3][3] False
// f32 False
// * False
// False
asm void J3DShape::calcNBTScale(Vec const& param_0, f32 (* param_1)[3][3], f32 (* param_2)[3][3]) {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/calcNBTScale__8J3DShapeFRC3VecPA3_A3_fPA3_A3_f.s"
}
#pragma pop
/* 80314E28-80314E98 0070+00 s=0 e=1 z=0 None .text countBumpMtxNum__8J3DShapeCFv */
// 80314E38: 803621D8 (_savegpr_28)
// 80314E84: 80362224 (_restgpr_28)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void J3DShape::countBumpMtxNum() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/countBumpMtxNum__8J3DShapeCFv.s"
}
#pragma pop
/* 80314E98-80314EB0 0018+00 s=1 e=0 z=0 None .text J3DLoadCPCmd__FUcUl */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// u8 False
// u32 False
asm static void J3DLoadCPCmd(u8 param_0, u32 param_1) {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/J3DLoadCPCmd__FUcUl.s"
}
#pragma pop
/* 80314EB0-80314EEC 003C+00 s=1 e=0 z=0 None .text J3DLoadArrayBasePtr__F7_GXAttrPv */
// 80314ED8: 80314E98 (J3DLoadCPCmd__FUcUl)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
// _GXAttr False
// void* False
// void False
asm static void J3DLoadArrayBasePtr(_GXAttr param_0, void* param_1) {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/J3DLoadArrayBasePtr__F7_GXAttrPv.s"
}
#pragma pop
/* 80314EEC-80314F5C 0070+00 s=3 e=0 z=0 None .text loadVtxArray__8J3DShapeCFv */
// 80314F04: 80434AC8 (j3dSys)
// 80314F08: 80434AC8 (j3dSys)
// 80314F10: 80314EB0 (J3DLoadArrayBasePtr__F7_GXAttrPv)
// 80314F24: 80434AC8 (j3dSys)
// 80314F28: 80434AC8 (j3dSys)
// 80314F30: 80314EB0 (J3DLoadArrayBasePtr__F7_GXAttrPv)
// 80314F38: 80434AC8 (j3dSys)
// 80314F3C: 80434AC8 (j3dSys)
// 80314F44: 80314EB0 (J3DLoadArrayBasePtr__F7_GXAttrPv)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void J3DShape::loadVtxArray() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/loadVtxArray__8J3DShapeCFv.s"
}
#pragma pop
/* 80314F5C-80314F98 003C+00 s=0 e=1 z=0 None .text isSameVcdVatCmd__8J3DShapeFP8J3DShape */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
// J3DShape* False
// J3DShape False
asm void J3DShape::isSameVcdVatCmd(J3DShape* param_0) {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/isSameVcdVatCmd__8J3DShapeFP8J3DShape.s"
}
#pragma pop
/* 80314F98-80315260 02C8+00 s=1 e=0 z=0 None .text makeVtxArrayCmd__8J3DShapeFv */
// 80314FA8: 803621D4 (_savegpr_27)
// 80315218: 80361700 (GDSetArray)
// 8031522C: 8036190C (GDSetArrayRaw)
// 8031524C: 80362220 (_restgpr_27)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void J3DShape::makeVtxArrayCmd() {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/makeVtxArrayCmd__8J3DShapeFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 804515C8-804515CC 0004+00 s=1 e=0 z=0 None .sbss sInterruptFlag$903 */
static u8 sInterruptFlag[4];
/* 804515CC-804515D0 0004+00 s=1 e=0 z=0 None .sbss None */
static u8 data_804515CC[4];
/* 80315260-80315300 00A0+00 s=1 e=2 z=0 None .text makeVcdVatCmd__8J3DShapeFv */
// 80315274: 804515CC (data_804515CC)
// 80315280: 8033D6F4 (OSDisableInterrupts)
// 80315284: 804515C8 (sInterruptFlag)
// 8031528C: 804515CC (data_804515CC)
// 80315290: 80340CC4 (OSDisableScheduler)
// 803152A0: 80360F98 (GDInitGDLObj)
// 803152A8: 80451980 (__GDCurrentDL)
// 803152B0: 80361104 (GDSetVtxDescv)
// 803152B8: 80314F98 (makeVtxArrayCmd__8J3DShapeFv)
// 803152CC: 8030DB04 (J3DGDSetVtxAttrFmtv__F9_GXVtxFmtPC17_GXVtxAttrFmtListb)
// 803152D0: 80360FDC (GDPadCurr32)
// 803152D4: 80360FB0 (GDFlushCurrToMem)
// 803152DC: 80451980 (__GDCurrentDL)
// 803152E0: 80340D04 (OSEnableScheduler)
// 803152E4: 804515C8 (sInterruptFlag)
// 803152E8: 8033D71C (OSRestoreInterrupts)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void J3DShape::makeVcdVatCmd() {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/makeVcdVatCmd__8J3DShapeFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 804515D0-804515D4 0004+00 s=5 e=25 z=9 None .sbss sOldVcdVatCmd__8J3DShape */
u8 sOldVcdVatCmd__8J3DShape[4];
/* 80315300-80315398 0098+00 s=2 e=6 z=3 None .text loadPreDrawSetting__8J3DShapeCFv */
// 80315314: 804515D0 (sOldVcdVatCmd__8J3DShape)
// 80315328: 8035FEF0 (GXCallDisplayList)
// 80315330: 804515D0 (sOldVcdVatCmd__8J3DShape)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// False False
asm void J3DShape::loadPreDrawSetting() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/loadPreDrawSetting__8J3DShapeCFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 804515D4-804515D8 0004+00 s=3 e=0 z=0 None .sbss None */
static u8 data_804515D4[4];
/* 80315398-8031544C 00B4+00 s=1 e=0 z=0 None .text setArrayAndBindPipeline__8J3DShapeCFv */
// 803153B4: 804515A8 (sCurrentPipeline__11J3DShapeMtx)
// 803153B8: 80314EEC (loadVtxArray__8J3DShapeCFv)
// 803153D0: 80434AC8 (j3dSys)
// 803153D4: 80434AC8 (j3dSys)
// 803153E4: 8035BB28 (GXSetArray)
// 803153FC: 80434AC8 (j3dSys)
// 80315400: 80434AC8 (j3dSys)
// 80315410: 8035BB28 (GXSetArray)
// 80315418: 804515AC (sCurrentScaleFlag__11J3DShapeMtx)
// 80315420: 804515B0 (struct_804515B0)
// 80315428: 804515D4 (data_804515D4)
// 80315434: 804515B4 (sTexMtxLoadType__11J3DShapeMtx)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void J3DShape::setArrayAndBindPipeline() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/setArrayAndBindPipeline__8J3DShapeCFv.s"
}
#pragma pop
/* 8031544C-803155E0 0194+00 s=1 e=0 z=0 None .text drawFast__8J3DShapeCFv */
// 8031545C: 803621D4 (_savegpr_27)
// 80315464: 804515D0 (sOldVcdVatCmd__8J3DShape)
// 80315478: 8035FEF0 (GXCallDisplayList)
// 80315480: 804515D0 (sOldVcdVatCmd__8J3DShape)
// 80315484: 804515D4 (data_804515D4)
// 803154F0: 80315398 (setArrayAndBindPipeline__8J3DShapeCFv)
// 80315500: 804515B1 (struct_804515B0)
// 8031550C: 803130A8 (resetMtxLoadCache__11J3DShapeMtxFv)
// 80315550: 80314AD4 (draw__12J3DShapeDrawCFv)
// 80315568: 80434AC8 (j3dSys)
// 8031556C: 80434AC8 (j3dSys)
// 8031557C: 8030FAE0 (J3DFifoLoadPosMtxImm__FPA4_fUl)
// 8031558C: 8030FB60 (J3DFifoLoadNrmMtxImm__FPA4_fUl)
// 803155B4: 80314AD4 (draw__12J3DShapeDrawCFv)
// 803155CC: 80362220 (_restgpr_27)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void J3DShape::drawFast() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/drawFast__8J3DShapeCFv.s"
}
#pragma pop
/* 803155E0-80315628 0048+00 s=1 e=0 z=0 None .text draw__8J3DShapeCFv */
// 803155F8: 804515D0 (sOldVcdVatCmd__8J3DShape)
// 803155FC: 80315300 (loadPreDrawSetting__8J3DShapeCFv)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void J3DShape::draw() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/draw__8J3DShapeCFv.s"
}
#pragma pop
/* 80315628-803156AC 0084+00 s=1 e=0 z=0 None .text simpleDraw__8J3DShapeCFv */
// 80315638: 803621DC (_savegpr_29)
// 80315644: 804515D0 (sOldVcdVatCmd__8J3DShape)
// 80315648: 80315300 (loadPreDrawSetting__8J3DShapeCFv)
// 80315654: 804515A8 (sCurrentPipeline__11J3DShapeMtx)
// 8031565C: 80314EEC (loadVtxArray__8J3DShapeCFv)
// 80315680: 80314AD4 (draw__12J3DShapeDrawCFv)
// 80315698: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void J3DShape::simpleDraw() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/simpleDraw__8J3DShapeCFv.s"
}
#pragma pop
/* 803156AC-803157A0 00F4+00 s=1 e=0 z=0 None .text simpleDrawCache__8J3DShapeCFv */
// 803156BC: 803621DC (_savegpr_29)
// 803156C4: 804515D0 (sOldVcdVatCmd__8J3DShape)
// 803156D8: 8035FEF0 (GXCallDisplayList)
// 803156E0: 804515D0 (sOldVcdVatCmd__8J3DShape)
// 803156E4: 804515D4 (data_804515D4)
// 80315750: 80314EEC (loadVtxArray__8J3DShapeCFv)
// 80315774: 80314AD4 (draw__12J3DShapeDrawCFv)
// 8031578C: 80362228 (_restgpr_29)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// True False
asm void J3DShape::simpleDrawCache() const {
nofralloc
#include "asm/JSystem/J3DGraphBase/J3DShape/simpleDrawCache__8J3DShapeCFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 803CDC78-803CDC90 0018+00 s=0 e=1 z=0 None .data __vt__8J3DShape */
SECTION_DATA void* __vt__8J3DShape[6] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__8J3DShapeCFv,
(void*)drawFast__8J3DShapeCFv,
(void*)simpleDraw__8J3DShapeCFv,
(void*)simpleDrawCache__8J3DShapeCFv,
};