J2D structs + print / fix GX + MSL string headers (#157)

* J2D structs + print / fix GX + MSL string headers

* remove msl_c/string.h
This commit is contained in:
TakaRikka 2021-10-24 14:35:00 -07:00 committed by GitHub
parent b88cb8cdc0
commit 5020395dfd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
71 changed files with 2069 additions and 2054 deletions

View File

@ -1,80 +1,13 @@
#ifndef J2DANIMATION_H
#define J2DANIMATION_H
#include "dolphin/gx/GXTexture.h"
#include "JSystem/JUtility/JUTNameTab.h"
#include "JSystem/JUtility/JUTTexture.h"
#include "dolphin/gx/GX.h"
#include "dolphin/types.h"
struct J3DTransformInfo;
struct J3DTextureSRTInfo;
class J2DScreen;
struct J2DAnmVtxColorKey {
/* 8030B704 */ void getColor(u8, u16, _GXColor*) const;
/* 8030CC20 */ ~J2DAnmVtxColorKey();
};
struct J2DAnmVtxColorFull {
/* 8030B4C4 */ void getColor(u8, u16, _GXColor*) const;
/* 8030CC8C */ ~J2DAnmVtxColorFull();
};
struct J2DAnmVisibilityFull {
/* 8030C048 */ void getVisibility(u16, u8*) const;
};
struct J2DAnmTransformKey {
/* 801959C0 */ ~J2DAnmTransformKey();
/* 8030AAFC */ void calcTransform(f32, u16, J3DTransformInfo*) const;
/* 8030CD7C */ void getTransform(u16, J3DTransformInfo*) const;
};
struct J2DAnmTransformFull {
/* 8030A590 */ void getTransform(u16, J3DTransformInfo*) const;
/* 8030CDAC */ ~J2DAnmTransformFull();
};
struct J2DAnmTextureSRTKey {
/* 80184274 */ ~J2DAnmTextureSRTKey();
/* 8030B9F0 */ void calcTransform(f32, u16, J3DTextureSRTInfo*) const;
/* 8030BC60 */ void searchUpdateMaterialID(J2DScreen*);
};
struct J2DAnmTexPattern {
struct J2DAnmTexPatternTIMGPointer {
/* 8030CB2C */ J2DAnmTexPatternTIMGPointer();
/* 8030CB3C */ ~J2DAnmTexPatternTIMGPointer();
};
/* 8030BD10 */ void searchUpdateMaterialID(J2DScreen*);
/* 8030BEE8 */ void getTexNo(u16, u16*) const;
/* 8030BF9C */ void getResTIMG(u16) const;
/* 8030BFF0 */ void getPalette(u16) const;
/* 8030CB90 */ ~J2DAnmTexPattern();
};
struct J2DAnmTevRegKey {
/* 801841EC */ ~J2DAnmTevRegKey();
/* 8030C0F0 */ void getTevColorReg(u16, _GXColorS10*) const;
/* 8030C3B4 */ void getTevKonstReg(u16, _GXColor*) const;
/* 8030C678 */ void searchUpdateMaterialID(J2DScreen*);
};
struct J2DAnmColorKey {
/* 80239BE0 */ ~J2DAnmColorKey();
/* 8030B200 */ void getColor(u16, _GXColor*) const;
};
struct J2DAnmColorFull {
/* 8030AFC8 */ void getColor(u16, _GXColor*) const;
/* 8030CCF8 */ ~J2DAnmColorFull();
};
struct J2DAnmColor {
/* 801842FC */ ~J2DAnmColor();
/* 802EB390 */ void getColor(u16, _GXColor*) const;
/* 8030AF24 */ void searchUpdateMaterialID(J2DScreen*);
};
class J2DAnmBase {
public:
/* 80053C94 */ virtual ~J2DAnmBase();
@ -88,11 +21,230 @@ private:
/* 0x4 */ u8 field_0x4[2];
/* 0x6 */ s16 mFrameMax;
/* 0x8 */ f32 mFrame;
/* 0xC */ int mKind;
/* 0xC */ s32 mKind;
}; // Size: 0x10
class J2DAnmVtxColor : public J2DAnmBase {
public:
/* 8030A358 */ virtual ~J2DAnmVtxColor();
/* 8030363C */ virtual void getColor(u8, u16, _GXColor*) const;
private:
/* 0x10 */ u16 mAnmTableNum[2];
/* 0x14 */ void* mVtxColorIndexData[2];
/* 0x1C */ void* mVtxColorIndexPointer[2];
}; // Size: 0x24
struct J3DTransformInfo;
struct J3DTextureSRTInfo;
class J2DAnmVtxColorKey : public J2DAnmVtxColor {
/* 8030CC20 */ virtual ~J2DAnmVtxColorKey();
/* 8030B704 */ virtual void getColor(u8, u16, _GXColor*) const;
private:
/* 0x24 */ void* field_0x24[2];
/* 0x2C */ void* field_0x2c;
/* 0x30 */ void* field_0x30;
/* 0x34 */ void* field_0x34;
/* 0x38 */ void* field_0x38;
}; // Size: 0x3C
class J2DAnmVtxColorFull : public J2DAnmVtxColor {
public:
/* 8030CC8C */ virtual ~J2DAnmVtxColorFull();
/* 8030B4C4 */ virtual void getColor(u8, u16, _GXColor*) const;
private:
/* 0x24 */ void* field_0x24[2];
/* 0x2C */ void* field_0x2c;
/* 0x30 */ void* field_0x30;
/* 0x34 */ void* field_0x34;
/* 0x38 */ void* field_0x38;
}; // Size: 0x3C
class J2DAnmVisibilityFull : public J2DAnmBase {
public:
/* 8030A3B4 */ virtual ~J2DAnmVisibilityFull();
/* 8030C048 */ void getVisibility(u16, u8*) const;
private:
/* 0x10 */ u16 field_0x10;
/* 0x12 */ u16 field_0x12;
/* 0x14 */ void* field_0x14;
/* 0x18 */ void* field_0x18;
}; // Size: 0x1C
class J2DAnmTransform : public J2DAnmBase {
public:
/* 80184370 */ virtual ~J2DAnmTransform();
/* 80191130 */ virtual void getTransform(u16, J3DTransformInfo*) const;
private:
/* 0x10 */ f32* field_0x10;
/* 0x14 */ s16* field_0x14;
/* 0x18 */ f32* field_0x18;
}; // Size: 0x1C
class J2DAnmTransformKey : public J2DAnmTransform {
public:
/* 801959C0 */ virtual ~J2DAnmTransformKey();
/* 8030CD7C */ virtual void getTransform(u16, J3DTransformInfo*) const;
/* 8030AAFC */ virtual void calcTransform(f32, u16, J3DTransformInfo*) const;
private:
/* 0x1C */ u8 field_0x1c[8];
/* 0x24 */ void* field_0x24;
/* 0x28 */ void* field_0x28;
};
struct J2DAnmVtxColor {};
class J2DAnmTransformFull : public J2DAnmTransform {
public:
/* 8030CDAC */ virtual ~J2DAnmTransformFull();
/* 8030A590 */ virtual void getTransform(u16, J3DTransformInfo*) const;
struct J2DAnmTransform {};
private:
/* 0x1C */ u8 field_0x1c[6];
/* 0x22 */ u16 field_0x22;
/* 0x24 */ void* field_0x24;
};
class J2DAnmTextureSRTKey : public J2DAnmBase {
public:
/* 8030B9F0 */ void calcTransform(f32, u16, J3DTextureSRTInfo*) const;
/* 80184274 */ virtual ~J2DAnmTextureSRTKey();
/* 8030BC60 */ virtual void searchUpdateMaterialID(J2DScreen*);
private:
/* 0x10 */ int field_0x10;
/* 0x14 */ int field_0x14;
/* 0x18 */ u16 mUpdateMaterialNum;
/* 0x1A */ u16 field_0x1a;
/* 0x1C */ u16 field_0x1c;
/* 0x20 */ int field_0x20;
/* 0x24 */ int field_0x24;
/* 0x28 */ int field_0x28;
/* 0x2C */ u8* mUpdateTexMtxID;
/* 0x30 */ u16* mUpdateMaterialID;
/* 0x34 */ JUTNameTab field_0x34;
/* 0x44 */ u8 field_0x44[4];
/* 0x48 */ u16 field_0x48;
/* 0x4A */ u16 field_0x4a;
/* 0x4C */ u16 field_0x4c;
/* 0x4E */ u16 field_0x4e;
/* 0x50 */ int field_0x50;
/* 0x54 */ int field_0x54;
/* 0x58 */ int field_0x58;
/* 0x5C */ int field_0x5c;
/* 0x60 */ u8 field_0x60[8];
/* 0x68 */ JUTNameTab field_0x68;
/* 0x78 */ u8 field_0x78[4];
/* 0x7C */ int field_0x7c;
};
class J2DAnmTexPattern : public J2DAnmBase {
public:
struct J2DAnmTexPatternTIMGPointer {
/* 8030CB2C */ J2DAnmTexPatternTIMGPointer();
/* 8030CB3C */ ~J2DAnmTexPatternTIMGPointer();
/* 0x0 */ ResTIMG* mRes;
/* 0x4 */ JUTPalette* mPalette;
}; // Size: 0x8
/* 8030BEE8 */ void getTexNo(u16, u16*) const;
/* 8030BF9C */ void getResTIMG(u16) const;
/* 8030BFF0 */ void getPalette(u16) const;
/* 8030CB90 */ virtual ~J2DAnmTexPattern();
/* 8030BD10 */ virtual void searchUpdateMaterialID(J2DScreen*);
private:
/* 0x10 */ int field_0x10;
/* 0x14 */ void* mAnmTable;
/* 0x18 */ u8 field_0x18[2];
/* 0x1A */ u16 mUpdateMaterialNum;
/* 0x1C */ u16* mUpdaterMaterialID;
/* 0x20 */ JUTNameTab field_0x20;
/* 0x30 */ J2DAnmTexPatternTIMGPointer* mTIMGPtrArray;
};
class J2DAnmTevRegKey : public J2DAnmBase {
public:
/* 8030C0F0 */ void getTevColorReg(u16, _GXColorS10*) const;
/* 8030C3B4 */ void getTevKonstReg(u16, _GXColor*) const;
/* 801841EC */ virtual ~J2DAnmTevRegKey();
/* 8030C678 */ virtual void searchUpdateMaterialID(J2DScreen*);
private:
/* 0x10 */ u16 mCRegUpdateMaterialNum;
/* 0x12 */ u16 mKRegUpdateMaterialNum;
/* 0x14 */ u16 field_0x14;
/* 0x16 */ u16 field_0x16;
/* 0x18 */ u16 field_0x18;
/* 0x1A */ u16 field_0x1a;
/* 0x1C */ u16 field_0x1c;
/* 0x1E */ u16 field_0x1e;
/* 0x20 */ u16 field_0x20;
/* 0x22 */ u16 field_0x22;
/* 0x24 */ u16* mCRegUpdateMaterialID;
/* 0x28 */ JUTNameTab field_0x28;
/* 0x38 */ u16* mKRegUpdateMaterialID;
/* 0x3C */ JUTNameTab field_0x3c;
/* 0x4C */ void* mAnmCRegKeyTable;
/* 0x50 */ void* mAnmKRegKeyTable;
/* 0x54 */ int field_0x54;
/* 0x58 */ int field_0x58;
/* 0x5C */ int field_0x5c;
/* 0x60 */ int field_0x60;
/* 0x64 */ int field_0x64;
/* 0x68 */ int field_0x68;
/* 0x6C */ int field_0x6c;
/* 0x70 */ int field_0x70;
};
class J2DAnmColor : public J2DAnmBase {
public:
/* 801842FC */ virtual ~J2DAnmColor();
/* 8030AF24 */ virtual void searchUpdateMaterialID(J2DScreen*);
/* 802EB390 */ virtual void getColor(u16, _GXColor*) const;
private:
/* 0x10 */ u16 field_0x10;
/* 0x10 */ u16 field_0x12;
/* 0x14 */ u16 field_0x14;
/* 0x16 */ u16 field_0x16;
/* 0x18 */ u16 mUpdateMaterialNum;
/* 0x1C */ u16* mUpdateMaterialID;
/* 0x20 */ JUTNameTab field_0x20;
}; // Size: 0x30
class J2DAnmColorKey : public J2DAnmColor {
public:
/* 80239BE0 */ virtual ~J2DAnmColorKey();
/* 8030B200 */ virtual void getColor(u16, _GXColor*) const;
private:
/* 0x30 */ int field_0x30;
/* 0x34 */ int field_0x34;
/* 0x38 */ int field_0x38;
/* 0x3C */ int field_0x3c;
/* 0x40 */ int field_0x40;
};
class J2DAnmColorFull : public J2DAnmColor {
public:
/* 8030CCF8 */ virtual ~J2DAnmColorFull();
/* 8030AFC8 */ virtual void getColor(u16, _GXColor*) const;
private:
/* 0x30 */ int field_0x30;
/* 0x34 */ int field_0x34;
/* 0x38 */ int field_0x38;
/* 0x3C */ int field_0x3c;
/* 0x40 */ int field_0x40;
};
#endif /* J2DANIMATION_H */

View File

@ -1,6 +1,68 @@
#ifndef J2DANMLOADER_H
#define J2DANMLOADER_H
#include "JSystem/J2DGraph/J2DAnimation.h"
#include "JSystem/J3DGraphAnimator/J3DAnimation.h"
#include "dolphin/types.h"
struct J2DAnmLoaderDataBase {
/* 80308A6C */ static void load(void const*);
};
class J2DAnmLoader {
public:
virtual void load(void const*) = 0;
virtual void setResource(J2DAnmBase*, void const*) = 0;
/* 8030A410 */ virtual ~J2DAnmLoader();
};
struct J3DAnmTransformKeyData;
struct J3DAnmTextureSRTKeyData;
struct J3DAnmColorKeyData;
struct J3DAnmVtxColorKeyData;
struct J3DAnmTevRegKeyData;
struct J3DAnmTransformFullData;
struct J3DAnmColorFullData;
struct J3DAnmTexPatternFullData;
struct J3DAnmVisibilityFullData;
struct J3DAnmVtxColorFullData;
class J2DAnmKeyLoader_v15 : public J2DAnmLoader {
public:
/* 80309290 */ J2DAnmKeyLoader_v15();
/* 80309570 */ void readAnmTransform(J3DAnmTransformKeyData const*);
/* 80309598 */ void setAnmTransform(J2DAnmTransformKey*, J3DAnmTransformKeyData const*);
/* 80309634 */ void readAnmTextureSRT(J3DAnmTextureSRTKeyData const*);
/* 8030965C */ void setAnmTextureSRT(J2DAnmTextureSRTKey*, J3DAnmTextureSRTKeyData const*);
/* 80309848 */ void readAnmColor(J3DAnmColorKeyData const*);
/* 80309870 */ void setAnmColor(J2DAnmColorKey*, J3DAnmColorKeyData const*);
/* 8030995C */ void readAnmVtxColor(J3DAnmVtxColorKeyData const*);
/* 80309984 */ void setAnmVtxColor(J2DAnmVtxColorKey*, J3DAnmVtxColorKeyData const*);
/* 80309FDC */ void readAnmTevReg(J3DAnmTevRegKeyData const*);
/* 8030A004 */ void setAnmTevReg(J2DAnmTevRegKey*, J3DAnmTevRegKeyData const*);
/* 80309308 */ virtual void load(void const*);
/* 80309414 */ virtual void setResource(J2DAnmBase*, void const*);
/* 803092AC */ virtual ~J2DAnmKeyLoader_v15();
};
class J2DAnmFullLoader_v15 : public J2DAnmLoader {
public:
/* 80309CE8 */ J2DAnmFullLoader_v15();
/* 80309D60 */ void readAnmTransform(J3DAnmTransformFullData const*);
/* 80309D88 */ void setAnmTransform(J2DAnmTransformFull*, J3DAnmTransformFullData const*);
/* 80309E1C */ void readAnmColor(J3DAnmColorFullData const*);
/* 80309E44 */ void setAnmColor(J2DAnmColorFull*, J3DAnmColorFullData const*);
/* 80309F10 */ void readAnmTexPattern(J3DAnmTexPatternFullData const*);
/* 80309F38 */ void setAnmTexPattern(J2DAnmTexPattern*, J3DAnmTexPatternFullData const*);
/* 8030A190 */ void readAnmVisibility(J3DAnmVisibilityFullData const*);
/* 8030A1B8 */ void setAnmVisibility(J2DAnmVisibilityFull*, J3DAnmVisibilityFullData const*);
/* 8030A234 */ void readAnmVtxColor(J3DAnmVtxColorFullData const*);
/* 8030A25C */ void setAnmVtxColor(J2DAnmVtxColorFull*, J3DAnmVtxColorFullData const*);
/* 80309A80 */ virtual void load(void const*);
/* 80309B8C */ virtual void setResource(J2DAnmBase*, void const*);
/* 80309D04 */ virtual ~J2DAnmFullLoader_v15();
};
#endif /* J2DANMLOADER_H */

View File

@ -1,6 +1,520 @@
#ifndef J2DMATBLOCK_H
#define J2DMATBLOCK_H
#include "JSystem/J2DGraph/J2DTevs.h"
#include "JSystem/JUtility/JUTResFont.h"
#include "JSystem/JUtility/JUTTexture.h"
#include "JSystem/JUtility/TColor.h"
#include "dolphin/types.h"
struct J2DGXColorS10 : public GXColorS10 {
/* 802F1B90 */ J2DGXColorS10();
};
struct J2DTevSwapModeInfo;
class J2DTevBlock {
public:
/* 802F2A40 */ virtual void initialize();
/* 802EB1D0 */ virtual void setGX();
/* 802F2A44 */ virtual void loadTexture(_GXTexMapID, u32);
virtual void getType() = 0;
virtual s32 getMaxStage() = 0;
/* 802EB1DC */ virtual void setTexNo(u32, u16);
/* 802EA170 */ virtual void getTexNo(u32) const;
/* 802F2A48 */ virtual void setFontNo(u16);
/* 802EA164 */ virtual void getFontNo() const;
/* 802F2A4C */ virtual void setTevOrder(u32, J2DTevOrder);
/* 802EA144 */ virtual bool getTevOrder(u32);
/* 802EB1D8 */ virtual void setTevColor(u32, J2DGXColorS10);
/* 802EA13C */ virtual bool getTevColor(u32);
/* 802EB1D4 */ virtual void setTevKColor(u32, JUtility::TColor);
/* 802EA15C */ virtual bool getTevKColor(u32);
/* 802F2A50 */ virtual void setTevKColorSel(u32, u8);
/* 802EA154 */ virtual bool getTevKColorSel(u32);
/* 802F2A54 */ virtual void setTevKAlphaSel(u32, u8);
/* 802EA14C */ virtual bool getTevKAlphaSel(u32);
/* 802F2A58 */ virtual void setTevStageNum(u8);
/* 802EA17C */ virtual bool getTevStageNum() const;
/* 802F2A5C */ virtual void setTevStage(u32, J2DTevStage);
/* 802EA134 */ virtual bool getTevStage(u32);
/* 802F2A60 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F2A64 */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802EA12C */ virtual bool getTevSwapModeTable(u32);
/* 802F2A68 */ virtual void setIndTevStage(u32, J2DIndTevStage);
/* 802EA184 */ virtual bool getIndTevStage(u32);
/* 802F2A7C */ virtual bool insertTexture(u32, ResTIMG const*);
/* 802F2A74 */ virtual bool insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802F2A6C */ virtual bool insertTexture(u32, JUTTexture*);
/* 802F2A8C */ virtual bool setTexture(u32, ResTIMG const*);
/* 802F2A84 */ virtual bool setTexture(u32, JUTTexture*);
/* 802F2A94 */ virtual bool removeTexture(u32);
/* 802F2AA4 */ virtual bool setFont(ResFONT*);
/* 802F2A9C */ virtual bool setFont(JUTFont*);
/* 802F2AAC */ virtual bool setPalette(u32, ResTLUT const*);
/* 802F2AB4 */ virtual bool prepareTexture(u8);
/* 802EB87C */ virtual bool getTexture(u32);
/* 802EB884 */ virtual bool getPalette(u32);
/* 802F2ABC */ virtual bool getFont();
/* 802F2AC4 */ virtual void shiftDeleteFlag(u8, bool);
/* 802F2AC8 */ virtual void setUndeleteFlag(u8);
/* 802F2ACC */ virtual void setFontUndeleteFlag();
/* 802EB184 */ virtual ~J2DTevBlock();
};
class J2DTevBlock1 : public J2DTevBlock {
public:
/* 802EB88C */ J2DTevBlock1();
/* 802EBA50 */ virtual void initialize();
/* 802EC328 */ virtual void setGX();
/* 802EC570 */ virtual void loadTexture(_GXTexMapID, u32);
/* 802F27A0 */ virtual void getType();
/* 802F27AC */ virtual s32 getMaxStage();
/* 802F27B4 */ virtual void setTexNo(u32, u16);
/* 802F27C4 */ virtual void getTexNo(u32) const;
/* 802F27D4 */ virtual void setFontNo(u16);
/* 802F27DC */ virtual void getFontNo() const;
/* 802F27E4 */ virtual void setTevOrder(u32, J2DTevOrder);
/* 802F2808 */ virtual void getTevOrder(u32);
/* 802F281C */ virtual void setTevColor(u32, J2DGXColorS10);
/* 802F2848 */ virtual void getTevColor(u32);
/* 802F285C */ virtual void setTevKColor(u32, JUtility::TColor);
/* 802F2888 */ virtual void getTevKColor(u32);
/* 802F289C */ virtual void setTevKColorSel(u32, u8);
/* 802F28A8 */ virtual void getTevKColorSel(u32);
/* 802F28B4 */ virtual void setTevKAlphaSel(u32, u8);
/* 802F28C0 */ virtual void getTevKAlphaSel(u32);
/* 802F28CC */ virtual void setTevStageNum(u8);
/* 802F28D0 */ virtual bool getTevStageNum() const;
/* 802F28D8 */ virtual void setTevStage(u32, J2DTevStage);
/* 802F2914 */ virtual void getTevStage(u32);
/* 802F2928 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F2960 */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F2970 */ virtual void getTevSwapModeTable(u32);
/* 802F2980 */ virtual void setIndTevStage(u32, J2DIndTevStage);
/* 802F2994 */ virtual void getIndTevStage(u32);
/* 802F29A8 */ virtual void insertTexture(u32, ResTIMG const*);
/* 802EBCC0 */ virtual void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802EBDE4 */ virtual void insertTexture(u32, JUTTexture*);
/* 802EBE8C */ virtual void setTexture(u32, ResTIMG const*);
/* 802EC01C */ virtual void setTexture(u32, JUTTexture*);
/* 802EC0A8 */ virtual void removeTexture(u32);
/* 802EC124 */ virtual void setFont(ResFONT*);
/* 802EC1D8 */ virtual void setFont(JUTFont*);
/* 802EC258 */ virtual void setPalette(u32, ResTLUT const*);
/* 802EBC0C */ virtual void prepareTexture(u8);
/* 802F29D8 */ virtual void getTexture(u32);
/* 802F29F8 */ virtual void getPalette(u32);
/* 802F2A18 */ virtual void getFont();
/* 802EC318 */ virtual void shiftDeleteFlag(u8, bool);
/* 802F2A20 */ virtual void setUndeleteFlag(u8);
/* 802F2A30 */ virtual void setFontUndeleteFlag();
/* 802EB998 */ virtual ~J2DTevBlock1();
private:
/* 0x004 */ u16 mTexNo[1];
/* 0x006 */ u16 mFontNo;
/* 0x008 */ J2DTevOrder mTevOrder[1];
/* 0x00C */ J2DGXColorS10 mTevColor[4];
/* 0x02C */ J2DTevStage mTevStage[1];
/* 0x034 */ JUtility::TColor mTevKColor[4];
/* 0x044 */ u8 mTevKColorSel[1];
/* 0x045 */ u8 mTevKAlphaSel[1];
/* 0x046 */ J2DTevSwapModeTable mTevSwapModeTable[4];
/* 0x04C */ J2DIndTevStage mIndTevStage[1];
/* 0x050 */ JUTTexture* mTexture[1];
/* 0x054 */ JUTPalette* mPalette[1];
/* 0x058 */ JUTResFont* mFont;
/* 0x05C */ u8 mUndeleteFlag;
}; // Size: 0x60
class J2DTevBlock2 : public J2DTevBlock {
public:
/* 802EC5B8 */ J2DTevBlock2();
/* 802EC7A0 */ virtual void initialize();
/* 802ED584 */ virtual void setGX();
/* 802ED874 */ virtual void loadTexture(_GXTexMapID, u32);
/* 802F24FC */ virtual void getType();
/* 802F2508 */ virtual s32 getMaxStage();
/* 802F2510 */ virtual void setTexNo(u32, u16);
/* 802F2520 */ virtual void getTexNo(u32) const;
/* 802F2530 */ virtual void setFontNo(u16);
/* 802F2538 */ virtual void getFontNo() const;
/* 802F2540 */ virtual void setTevOrder(u32, J2DTevOrder);
/* 802F2564 */ virtual void getTevOrder(u32);
/* 802F2578 */ virtual void setTevColor(u32, J2DGXColorS10);
/* 802F25A4 */ virtual void getTevColor(u32);
/* 802F25B8 */ virtual void setTevKColor(u32, JUtility::TColor);
/* 802F25E4 */ virtual void getTevKColor(u32);
/* 802F25F8 */ virtual void setTevKColorSel(u32, u8);
/* 802F2604 */ virtual void getTevKColorSel(u32);
/* 802F2610 */ virtual void setTevKAlphaSel(u32, u8);
/* 802F261C */ virtual void getTevKAlphaSel(u32);
/* 802F2628 */ virtual void setTevStageNum(u8);
/* 802F2630 */ virtual void getTevStageNum() const;
/* 802F2638 */ virtual void setTevStage(u32, J2DTevStage);
/* 802F2674 */ virtual void getTevStage(u32);
/* 802F2688 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F26C0 */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F26D0 */ virtual void getTevSwapModeTable(u32);
/* 802F26E0 */ virtual void setIndTevStage(u32, J2DIndTevStage);
/* 802F26F4 */ virtual void getIndTevStage(u32);
/* 802F2708 */ virtual void insertTexture(u32, ResTIMG const*);
/* 802ECAE8 */ virtual void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802ECDE8 */ virtual void insertTexture(u32, JUTTexture*);
/* 802ECF48 */ virtual void setTexture(u32, ResTIMG const*);
/* 802ED16C */ virtual void setTexture(u32, JUTTexture*);
/* 802ED21C */ virtual void removeTexture(u32);
/* 802ED2F0 */ virtual void setFont(ResFONT*);
/* 802ED3A4 */ virtual void setFont(JUTFont*);
/* 802ED424 */ virtual void setPalette(u32, ResTLUT const*);
/* 802ECA18 */ virtual void prepareTexture(u8);
/* 802F2738 */ virtual void getTexture(u32);
/* 802F2758 */ virtual void getPalette(u32);
/* 802F2778 */ virtual void getFont();
/* 802ED4FC */ virtual void shiftDeleteFlag(u8, bool);
/* 802F2780 */ virtual void setUndeleteFlag(u8);
/* 802F2790 */ virtual void setFontUndeleteFlag();
/* 802EC6C8 */ virtual ~J2DTevBlock2();
private:
/* 0x004 */ u16 mTexNo[2];
/* 0x008 */ u16 mFontNo;
/* 0x00A */ J2DTevOrder mTevOrder[2];
/* 0x012 */ J2DGXColorS10 mTevColor[4];
/* 0x032 */ u8 mTevStageNum;
/* 0x033 */ J2DTevStage mTevStage[2];
/* 0x044 */ JUtility::TColor mTevKColor[4];
/* 0x054 */ u8 mTevKColorSel[2];
/* 0x056 */ u8 mTevKAlphaSel[2];
/* 0x058 */ J2DTevSwapModeTable mTevSwapModeTable[4];
/* 0x05C */ J2DIndTevStage mIndTevStage[2];
/* 0x064 */ JUTTexture* mTexture[2];
/* 0x06C */ JUTPalette* mPalette[2];
/* 0x064 */ JUTFont* mFont;
/* 0x078 */ u8 mUndeleteFlag;
}; // Size: 0x7C
class J2DTevBlock4 : public J2DTevBlock {
public:
/* 802ED8BC */ J2DTevBlock4();
/* 802EDAC4 */ virtual void initialize();
/* 802EEA2C */ virtual void setGX();
/* 802EED1C */ virtual void loadTexture(_GXTexMapID, u32);
/* 802F2258 */ virtual void getType();
/* 802F2264 */ virtual s32 getMaxStage();
/* 802F226C */ virtual void setTexNo(u32, u16);
/* 802F227C */ virtual void getTexNo(u32) const;
/* 802F228C */ virtual void setFontNo(u16);
/* 802F2294 */ virtual void getFontNo() const;
/* 802F229C */ virtual void setTevOrder(u32, J2DTevOrder);
/* 802F22C0 */ virtual void getTevOrder(u32);
/* 802F22D4 */ virtual void setTevColor(u32, J2DGXColorS10);
/* 802F2300 */ virtual void getTevColor(u32);
/* 802F2314 */ virtual void setTevKColor(u32, JUtility::TColor);
/* 802F2340 */ virtual void getTevKColor(u32);
/* 802F2354 */ virtual void setTevKColorSel(u32, u8);
/* 802F2360 */ virtual void getTevKColorSel(u32);
/* 802F236C */ virtual void setTevKAlphaSel(u32, u8);
/* 802F2378 */ virtual void getTevKAlphaSel(u32);
/* 802F2384 */ virtual void setTevStageNum(u8);
/* 802F238C */ virtual void getTevStageNum() const;
/* 802F2394 */ virtual void setTevStage(u32, J2DTevStage);
/* 802F23D0 */ virtual void getTevStage(u32);
/* 802F23E4 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F241C */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F242C */ virtual void getTevSwapModeTable(u32);
/* 802F243C */ virtual void setIndTevStage(u32, J2DIndTevStage);
/* 802F2450 */ virtual void getIndTevStage(u32);
/* 802F2464 */ virtual void insertTexture(u32, ResTIMG const*);
/* 802EDE04 */ virtual void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802EE1D4 */ virtual void insertTexture(u32, JUTTexture*);
/* 802EE364 */ virtual void setTexture(u32, ResTIMG const*);
/* 802EE5F0 */ virtual void setTexture(u32, JUTTexture*);
/* 802EE6A0 */ virtual void removeTexture(u32);
/* 802EE798 */ virtual void setFont(ResFONT*);
/* 802EE84C */ virtual void setFont(JUTFont*);
/* 802EE8CC */ virtual void setPalette(u32, ResTLUT const*);
/* 802EDD34 */ virtual void prepareTexture(u8);
/* 802F2494 */ virtual void getTexture(u32);
/* 802F24B4 */ virtual void getPalette(u32);
/* 802F24D4 */ virtual void getFont();
/* 802EE9A4 */ virtual void shiftDeleteFlag(u8, bool);
/* 802F24DC */ virtual void setUndeleteFlag(u8);
/* 802F24EC */ virtual void setFontUndeleteFlag();
/* 802ED9E4 */ virtual ~J2DTevBlock4();
private:
/* 0x004 */ u16 mTexNo[4];
/* 0x00C */ u16 mFontNo;
/* 0x00E */ J2DTevOrder mTevOrder[4];
/* 0x01E */ J2DGXColorS10 mTevColor[4];
/* 0x03E */ u8 mTevStageNum;
/* 0x03F */ J2DTevStage mTevStage[4];
/* 0x060 */ JUtility::TColor mTevKColor[4];
/* 0x070 */ u8 mTevKColorSel[4];
/* 0x074 */ u8 mTevKAlphaSel[4];
/* 0x078 */ J2DTevSwapModeTable mTevSwapModeTable[4];
/* 0x07C */ J2DIndTevStage mIndTevStage[4];
/* 0x08C */ JUTTexture* mTexture[4];
/* 0x09C */ JUTPalette* mPalette[4];
/* 0x0AC */ JUTFont* mFont;
/* 0x0B0 */ u8 mUndeleteFlag;
}; // Size: 0xB4
class J2DTevBlock8 : public J2DTevBlock {
public:
/* 802EED64 */ J2DTevBlock8();
/* 802EEF6C */ virtual void initialize();
/* 802EFEAC */ virtual void setGX();
/* 802F019C */ virtual void loadTexture(_GXTexMapID, u32);
/* 802F1FB8 */ virtual void getType();
/* 802F1FC4 */ virtual s32 getMaxStage();
/* 802F1FCC */ virtual void setTexNo(u32, u16);
/* 802F1FDC */ virtual void getTexNo(u32) const;
/* 802F1FEC */ virtual void setFontNo(u16);
/* 802F1FF4 */ virtual void getFontNo() const;
/* 802F1FFC */ virtual void setTevOrder(u32, J2DTevOrder);
/* 802F2020 */ virtual void getTevOrder(u32);
/* 802F2034 */ virtual void setTevColor(u32, J2DGXColorS10);
/* 802F2060 */ virtual void getTevColor(u32);
/* 802F2074 */ virtual void setTevKColor(u32, JUtility::TColor);
/* 802F20A0 */ virtual void getTevKColor(u32);
/* 802F20B4 */ virtual void setTevKColorSel(u32, u8);
/* 802F20C0 */ virtual void getTevKColorSel(u32);
/* 802F20CC */ virtual void setTevKAlphaSel(u32, u8);
/* 802F20D8 */ virtual void getTevKAlphaSel(u32);
/* 802F20E4 */ virtual void setTevStageNum(u8);
/* 802F20EC */ virtual void getTevStageNum() const;
/* 802F20F4 */ virtual void setTevStage(u32, J2DTevStage);
/* 802F2130 */ virtual void getTevStage(u32);
/* 802F2144 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F217C */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F218C */ virtual void getTevSwapModeTable(u32);
/* 802F219C */ virtual void setIndTevStage(u32, J2DIndTevStage);
/* 802F21B0 */ virtual void getIndTevStage(u32);
/* 802F21C4 */ virtual void insertTexture(u32, ResTIMG const*);
/* 802EF2B0 */ virtual void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802EF67C */ virtual void insertTexture(u32, JUTTexture*);
/* 802EF80C */ virtual void setTexture(u32, ResTIMG const*);
/* 802EFA98 */ virtual void setTexture(u32, JUTTexture*);
/* 802EFB48 */ virtual void removeTexture(u32);
/* 802EFC40 */ virtual void setFont(ResFONT*);
/* 802EFCEC */ virtual void setFont(JUTFont*);
/* 802EFD68 */ virtual void setPalette(u32, ResTLUT const*);
/* 802EF1E0 */ virtual void prepareTexture(u8);
/* 802F21F4 */ virtual void getTexture(u32);
/* 802F2214 */ virtual void getPalette(u32);
/* 802F2234 */ virtual void getFont();
/* 802EFE40 */ virtual void shiftDeleteFlag(u8, bool);
/* 802F223C */ virtual void setUndeleteFlag(u8);
/* 802F224C */ virtual void setFontUndeleteFlag();
/* 802EEE8C */ virtual ~J2DTevBlock8();
private:
/* 0x004 */ u16 mTexNo[8];
/* 0x014 */ u16 mFontNo;
/* 0x016 */ J2DTevOrder mTevOrder[8];
/* 0x036 */ J2DGXColorS10 mTevColor[4];
/* 0x056 */ u8 mTevStageNum;
/* 0x057 */ J2DTevStage mTevStage[8];
/* 0x098 */ JUtility::TColor mTevKColor[4];
/* 0x0A8 */ u8 mTevKColorSel[8];
/* 0x0B0 */ u8 mTevKAlphaSel[8];
/* 0x0B8 */ J2DTevSwapModeTable mTevSwapModeTable[4];
/* 0x0BC */ J2DIndTevStage mIndTevStage[8];
/* 0x0DC */ JUTTexture* mTexture[8];
/* 0x0FC */ JUTPalette* mPalette[8];
/* 0x11C */ JUTFont* mFont;
/* 0x120 */ u8 mUndeleteFlag;
/* 0x121 */ bool mFontUndeleteFlag;
};
class J2DTevBlock16 : public J2DTevBlock {
public:
/* 802F01E4 */ J2DTevBlock16();
/* 802F03EC */ virtual void initialize();
/* 802F132C */ virtual void setGX();
/* 802F161C */ virtual void loadTexture(_GXTexMapID, u32);
/* 802F1D18 */ virtual void getType();
/* 802F1D24 */ virtual s32 getMaxStage();
/* 802F1D2C */ virtual void setTexNo(u32, u16);
/* 802F1D3C */ virtual void getTexNo(u32) const;
/* 802F1D4C */ virtual void setFontNo(u16);
/* 802F1D54 */ virtual void getFontNo() const;
/* 802F1D5C */ virtual void setTevOrder(u32, J2DTevOrder);
/* 802F1D80 */ virtual void getTevOrder(u32);
/* 802F1D94 */ virtual void setTevColor(u32, J2DGXColorS10);
/* 802F1DC0 */ virtual void getTevColor(u32);
/* 802F1DD4 */ virtual void setTevKColor(u32, JUtility::TColor);
/* 802F1E00 */ virtual void getTevKColor(u32);
/* 802F1E14 */ virtual void setTevKColorSel(u32, u8);
/* 802F1E20 */ virtual void getTevKColorSel(u32);
/* 802F1E2C */ virtual void setTevKAlphaSel(u32, u8);
/* 802F1E38 */ virtual void getTevKAlphaSel(u32);
/* 802F1E44 */ virtual void setTevStageNum(u8);
/* 802F1E4C */ virtual void getTevStageNum() const;
/* 802F1E54 */ virtual void setTevStage(u32, J2DTevStage);
/* 802F1E90 */ virtual void getTevStage(u32);
/* 802F1EA4 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F1EDC */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F1EEC */ virtual void getTevSwapModeTable(u32);
/* 802F1EFC */ virtual void setIndTevStage(u32, J2DIndTevStage);
/* 802F1F10 */ virtual void getIndTevStage(u32);
/* 802F1F24 */ virtual void insertTexture(u32, ResTIMG const*);
/* 802F0730 */ virtual void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802F0AFC */ virtual void insertTexture(u32, JUTTexture*);
/* 802F0C8C */ virtual void setTexture(u32, ResTIMG const*);
/* 802F0F18 */ virtual void setTexture(u32, JUTTexture*);
/* 802F0FC8 */ virtual void removeTexture(u32);
/* 802F10C0 */ virtual void setFont(ResFONT*);
/* 802F116C */ virtual void setFont(JUTFont*);
/* 802F11E8 */ virtual void setPalette(u32, ResTLUT const*);
/* 802F0660 */ virtual void prepareTexture(u8);
/* 802F1F54 */ virtual void getTexture(u32);
/* 802F1F74 */ virtual void getPalette(u32);
/* 802F1F94 */ virtual void getFont();
/* 802F12C0 */ virtual void shiftDeleteFlag(u8, bool);
/* 802F1F9C */ virtual void setUndeleteFlag(u8);
/* 802F1FAC */ virtual void setFontUndeleteFlag();
/* 802F030C */ virtual ~J2DTevBlock16();
private:
/* 0x004 */ u16 mTexNo[8];
/* 0x014 */ u16 mFontNo;
/* 0x016 */ J2DTevOrder mTevOrder[16];
/* 0x056 */ J2DGXColorS10 mTevColor[4];
/* 0x076 */ u8 mTevStageNum;
/* 0x077 */ J2DTevStage mTevStage[16];
/* 0x0F8 */ JUtility::TColor mTevKColor[4];
/* 0x108 */ u8 mTevKColorSel[16];
/* 0x118 */ u8 mTevKAlphaSel[16];
/* 0x128 */ J2DTevSwapModeTable mTevSwapModeTable[4];
/* 0x12C */ J2DIndTevStage mIndTevStage[16];
/* 0x16C */ JUTTexture* mTexture[16];
/* 0x18C */ JUTPalette* mPalette[16];
/* 0x1AC */ JUTFont* mFont;
/* 0x1B0 */ u8 mUndeleteFlag;
/* 0x1B1 */ bool mFontUndeleteFlag;
}; // Size: 0x1B4
struct J2DAlphaComp {
/* 0x0 */ u8 field_0x0;
/* 0x1 */ u8 field_0x1;
/* 0x2 */ u8 mRef0;
/* 0x3 */ u8 mRef1;
};
struct J2DBlendInfo {
/* 0x0 */ u8 mType;
/* 0x1 */ u8 mSrcFactor;
/* 0x2 */ u8 mDstFactor;
/* 0x3 */ u8 mOp;
};
struct J2DBlend {
/* 0x0 */ J2DBlendInfo mBlendInfo;
};
class J2DPEBlock {
public:
/* 802F17FC */ void initialize();
/* 802F1840 */ void setGX();
private:
/* 0x0 */ J2DAlphaComp mAlphaComp;
/* 0x4 */ J2DBlend mBlend;
/* 0x8 */ u8 mDither;
};
class J2DIndBlock {
public:
/* 802EB24C */ virtual void initialize();
/* 802EB1CC */ virtual void setGX();
virtual void getType() = 0;
/* 802EB250 */ virtual void setIndTexStageNum(u8);
/* 802EA1A4 */ virtual bool getIndTexStageNum() const;
/* 802EB254 */ virtual void setIndTexOrder(u32, J2DIndTexOrder);
/* 802EA19C */ virtual bool getIndTexOrder(u32);
/* 802EB258 */ virtual void setIndTexMtx(u32, J2DIndTexMtx);
/* 802EA194 */ virtual bool getIndTexMtx(u32);
/* 802EB25C */ virtual void setIndTexCoordScale(u32, J2DIndTexCoordScale);
/* 802EA18C */ virtual bool getIndTexCoordScale(u32);
/* 802EB13C */ virtual ~J2DIndBlock();
};
class J2DIndBlockFull : public J2DIndBlock {
public:
/* 802F1664 */ virtual void initialize();
/* 802F1730 */ virtual void setGX();
/* 802F1B94 */ virtual void getType();
/* 802F1BA0 */ virtual void setIndTexStageNum(u8);
/* 802F1BA8 */ virtual void getIndTexStageNum() const;
/* 802F1BB0 */ virtual void setIndTexOrder(u32, J2DIndTexOrder);
/* 802F1BCC */ virtual void getIndTexOrder(u32);
/* 802F1BE0 */ virtual void setIndTexMtx(u32, J2DIndTexMtx);
/* 802F1C38 */ virtual void getIndTexMtx(u32);
/* 802F1C4C */ virtual void setIndTexCoordScale(u32, J2DIndTexCoordScale);
/* 802F1C68 */ virtual void getIndTexCoordScale(u32);
/* 802F1C7C */ virtual ~J2DIndBlockFull();
private:
/* 0x04 */ u8 mIndTexStageNum;
/* 0x05 */ J2DIndTexOrder mIndTexOrder[4];
/* 0x10 */ J2DIndTexMtx mIndTexMtx[3];
/* 0x64 */ J2DIndTexCoordScale mTexCoordScale[4];
};
class J2DIndBlockNull : public J2DIndBlock {
/* 802EB1E0 */ virtual void setGX();
/* 802EB1E4 */ virtual void getType();
/* 802EB1F0 */ virtual ~J2DIndBlockNull();
};
class J2DTexGenBlock {
private:
/* 0x00 */ u32 mTexGenNum;
/* 0x04 */ J2DTexCoord mTexGenCoord[8];
/* 0x24 */ J2DTexMtx* mTexMtx[8];
public:
/* 802EB510 */ void initialize();
/* 802EB570 */ void setGX();
/* 802EB6A4 */ void setTexMtx(u32, J2DTexMtx&);
/* 802EB7E0 */ void getTexMtx(u32, J2DTexMtx&);
/* 802EB620 */ virtual ~J2DTexGenBlock();
}; // Size: 0x48
struct J2DColorChanInfo {
/* 0x0 */ u16 field_0x0;
};
class J2DColorChan {
public:
/* 802EB280 */ J2DColorChan();
private:
/* 0x0 */ J2DColorChanInfo mColorChanInfo;
};
class J2DColorBlock {
private:
/* 0x00 */ JUtility::TColor mMatColor[2];
/* 0x08 */ u8 mColorChanNum;
/* 0x0A */ J2DColorChan mColorChan[4];
/* 0x12 */ u8 mCullMode;
public:
/* 802EB394 */ void initialize();
/* 802EB424 */ void setGX();
/* 802EB0F4 */ virtual ~J2DColorBlock();
};
#endif /* J2DMATBLOCK_H */

View File

@ -2,15 +2,27 @@
#define J2DMATERIAL_H
#include "JSystem/J2DGraph/J2DAnimation.h"
#include "JSystem/J2DGraph/J2DMatBlock.h"
#include "dolphin/gx/GX.h"
#include "dolphin/types.h"
struct J2DMaterial {
class J2DMaterial {
public:
struct J2DMaterialAnmPointer {
/* 802EA79C */ J2DMaterialAnmPointer();
};
/* 0x00 */ int field_0x0;
/* 0x04 */ int field_0x4;
/* 0x08 */ int field_0x8;
/* 0x0C */ int field_0xc;
/* 0x10 */ u16 field_0x10;
/* 0x12 */ u16 field_0x12[8];
/* 0x22 */ u16 field_0x22[8];
/* 0x32 */ u16 field_0x32[4];
/* 0x3A */ u16 field_0x3a[4];
}; // Size: 0x44
/* 802EA1AC */ J2DMaterial();
/* 802EA2CC */ ~J2DMaterial();
/* 802EA38C */ void setGX();
/* 802EA410 */ void createTevBlock(int, bool);
/* 802EA5C4 */ void createIndBlock(int, bool);
@ -20,6 +32,21 @@ struct J2DMaterial {
/* 802EAB0C */ void setAnimation(J2DAnmTevRegKey*);
/* 802EA89C */ void setAnimation(J2DAnmColor*);
/* 802EAC78 */ void animation();
/* 802EA2CC */ virtual ~J2DMaterial();
private:
/* 0x04 */ int field_0x4;
/* 0x08 */ int field_0x8;
/* 0x0C */ u16 mIndex;
/* 0x0E */ bool mVisible;
/* 0x0F */ u8 mMaterialAlphaCalc;
/* 0x10 */ J2DColorBlock mColorBlock;
/* 0x28 */ J2DTexGenBlock mTexGenBlock;
/* 0x70 */ J2DTevBlock* mTevBlock;
/* 0x74 */ J2DIndBlock* mIndBlock;
/* 0x78 */ J2DPEBlock mPEBlock;
/* 0x84 */ J2DMaterialAnmPointer* mAnmPointer;
};
#endif /* J2DMATERIAL_H */

View File

@ -1,6 +1,72 @@
#ifndef J2DMATERIALFACTORY_H
#define J2DMATERIALFACTORY_H
#include "JSystem/J2DGraph/J2DManage.h"
#include "JSystem/J2DGraph/J2DMaterial.h"
#include "JSystem/JKernel/JKRArchive.h"
#include "dolphin/types.h"
struct J2DMaterialBlock {};
struct J2DMaterialInitData;
struct J2DIndInitData;
struct J2DTevSwapModeTableInfo;
struct J2DAlphaCompInfo;
class J2DMaterialFactory {
public:
/* 802F2AD0 */ J2DMaterialFactory(J2DMaterialBlock const&);
/* 802F2C94 */ void countStages(int) const;
/* 802F2D1C */ void create(J2DMaterial*, int, u32, J2DResReference*, J2DResReference*,
JKRArchive*) const;
/* 802F362C */ void newMatColor(int, int) const;
/* 802F36CC */ void newColorChanNum(int) const;
/* 802F3704 */ void newColorChan(int, int) const;
/* 802F3758 */ void newTexGenNum(int) const;
/* 802F3790 */ void newTexCoord(int, int) const;
/* 802F3804 */ void newTexMtx(int, int) const;
/* 802F38E0 */ void newCullMode(int) const;
/* 802F3920 */ void newTexNo(int, int) const;
/* 802F3968 */ void newFontNo(int) const;
/* 802F39A8 */ void newTevOrder(int, int) const;
/* 802F3A1C */ void newTevColor(int, int) const;
/* 802F3AB4 */ void newTevKColor(int, int) const;
/* 802F3B54 */ void newTevStageNum(int) const;
/* 802F3B8C */ void newTevStage(int, int) const;
/* 802F3BEC */ void newTevSwapModeTable(int, int) const;
/* 802F3C88 */ void newIndTexStageNum(int) const;
/* 802F3CB8 */ void newIndTexOrder(int, int) const;
/* 802F3D20 */ void newIndTexMtx(int, int) const;
/* 802F3E24 */ void newIndTevStage(int, int) const;
/* 802F3F78 */ void newIndTexCoordScale(int, int) const;
/* 802F3FE0 */ void newAlphaComp(int) const;
/* 802F405C */ void newBlend(int) const;
/* 802F40D8 */ void newDither(int) const;
private:
/* 0x00 */ int field_0x0;
/* 0x04 */ J2DMaterialInitData* field_0x4;
/* 0x08 */ u16* field_0x8;
/* 0x0C */ J2DIndInitData* field_0xc;
/* 0x10 */ GXColor* field_0x10;
/* 0x14 */ u8* field_0x14;
/* 0x18 */ J2DColorChanInfo* field_0x18;
/* 0x1C */ u8* field_0x1c;
/* 0x20 */ J2DTexCoordInfo* field_0x20;
/* 0x24 */ J2DTexMtxInfo* field_0x24;
/* 0x28 */ u16* field_0x28;
/* 0x2C */ u16* field_0x2c;
/* 0x30 */ _GXCullMode* field_0x30;
/* 0x34 */ J2DTevOrderInfo* field_0x34;
/* 0x38 */ GXColorS10* field_0x38;
/* 0x3C */ GXColor* field_0x3c;
/* 0x40 */ u8* field_0x40;
/* 0x44 */ J2DTevStageInfo* field_0x44;
/* 0x48 */ J2DTevSwapModeInfo* field_0x48;
/* 0x4C */ J2DTevSwapModeTableInfo* field_0x4c;
/* 0x50 */ J2DAlphaCompInfo* field_0x50;
/* 0x54 */ J2DBlendInfo* field_0x54;
/* 0x58 */ u8* field_0x58;
};
#endif /* J2DMATERIALFACTORY_H */

View File

@ -1,6 +1,102 @@
#ifndef J2DPICTUREEX_H
#define J2DPICTUREEX_H
#include "JSystem/J2DGraph/J2DMaterial.h"
#include "JSystem/J2DGraph/J2DPicture.h"
#include "dolphin/types.h"
class J2DPictureEx : public J2DPicture {
public:
enum stage_enum {};
/* 803036EC */ J2DPictureEx(J2DPane*, JSURandomInputStream*, u32, J2DMaterial*);
/* 803040E4 */ void insertCommon(u8, f32);
/* 8030437C */ void isInsert(u8) const;
/* 80304728 */ void isRemove(u8) const;
/* 803052AC */ void setTevOrder(u8, u8, bool);
/* 803053E0 */ void setTevStage(u8, u8, bool);
/* 80305688 */ void setStage(J2DTevStage*, J2DPictureEx::stage_enum);
/* 80305928 */ void setTevKColor(u8);
/* 80305C70 */ void setTevKColorSel(u8);
/* 80305D18 */ void setTevKAlphaSel(u8);
/* 80305DC0 */ void shiftSetBlendRatio(u8, f32, bool, bool);
/* 80306664 */ void getBlackWhite(JUtility::TColor*, JUtility::TColor*) const;
/* 80306824 */ void isSetBlackWhite(JUtility::TColor, JUtility::TColor) const;
/* 8030393C */ virtual ~J2DPictureEx();
/* 80307168 */ virtual void setCullBack(bool);
/* 803069D8 */ virtual void setCullBack(_GXCullMode);
/* 803069B8 */ virtual void setAlpha(u8);
/* 80303AB4 */ virtual void drawSelf(f32, f32, f32 (*)[3][4]);
/* 80306A24 */ virtual void isUsed(ResTIMG const*);
/* 803071A4 */ virtual void isUsed(ResFONT const*);
/* 80306A0C */ virtual void rewriteAlpha();
/* 803071C4 */ virtual void setAnimation(J2DAnmBase*);
/* 80256064 */ virtual void setAnimation(J2DAnmTransform*);
/* 80306AC4 */ virtual void setAnimation(J2DAnmColor*);
/* 80306B1C */ virtual void setAnimation(J2DAnmTexPattern*);
/* 80306AF0 */ virtual void setAnimation(J2DAnmTextureSRTKey*);
/* 80306B48 */ virtual void setAnimation(J2DAnmTevRegKey*);
/* 80306B74 */ virtual void setAnimation(J2DAnmVisibilityFull*);
/* 80306B7C */ virtual void setAnimation(J2DAnmVtxColor*);
/* 80306C70 */ virtual void animationPane(J2DAnmTransform const*);
/* 80303640 */ virtual void initiate(ResTIMG const*, ResTLUT const*);
/* 803039CC */ virtual void prepareTexture(u8);
/* 80306ED4 */ virtual void append(ResTIMG const*, f32);
/* 80303E5C */ virtual void append(ResTIMG const*, JUTPalette*, f32);
/* 80306F04 */ virtual void append(char const*, f32);
/* 80303EA4 */ virtual void append(char const*, JUTPalette*, f32);
/* 80303EEC */ virtual void append(JUTTexture*, f32);
/* 80306FF4 */ virtual void prepend(ResTIMG const*, f32);
/* 80306FC4 */ virtual void prepend(ResTIMG const*, JUTPalette*, f32);
/* 80306F94 */ virtual void prepend(char const*, f32);
/* 80306F64 */ virtual void prepend(char const*, JUTPalette*, f32);
/* 80306F34 */ virtual void prepend(JUTTexture*, f32);
/* 80307058 */ virtual void insert(ResTIMG const*, u8, f32);
/* 80303F34 */ virtual void insert(ResTIMG const*, JUTPalette*, u8, f32);
/* 80307024 */ virtual void insert(char const*, u8, f32);
/* 80303FD8 */ virtual void insert(char const*, JUTPalette*, u8, f32);
/* 80304048 */ virtual void insert(JUTTexture*, u8, f32);
/* 8030446C */ virtual void remove(u8);
/* 80304608 */ virtual void remove();
/* 8030466C */ virtual void remove(JUTTexture*);
/* 8030708C */ virtual void draw(f32, f32, bool, bool, bool);
/* 8030477C */ virtual void draw(f32, f32, u8, bool, bool, bool);
/* 80304890 */ virtual void draw(f32, f32, f32, f32, bool, bool, bool);
/* 80304D88 */ virtual void drawOut(f32, f32, f32, f32, f32, f32);
/* 803070D0 */ virtual void drawOut(f32, f32, f32, f32, f32, f32, f32, f32);
/* 80304EF0 */ virtual void drawOut(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
/* 80305264 */ virtual void load(_GXTexMapID, u8);
/* 80307134 */ virtual void load(u8);
/* 80305ED4 */ virtual void setBlendColorRatio(f32, f32);
/* 80305F34 */ virtual void setBlendAlphaRatio(f32, f32);
/* 80305F94 */ virtual void changeTexture(ResTIMG const*, u8);
/* 803060DC */ virtual void changeTexture(char const*, u8);
/* 80306134 */ virtual void changeTexture(ResTIMG const*, u8, JUTPalette*);
/* 80306298 */ virtual void changeTexture(char const*, u8, JUTPalette*);
/* 803062F8 */ virtual void getTexture(u8) const;
/* 80306350 */ virtual void getTextureCount() const;
/* 80306370 */ virtual void setBlack(JUtility::TColor);
/* 803063F8 */ virtual void setWhite(JUtility::TColor);
/* 80306480 */ virtual void setBlackWhite(JUtility::TColor, JUtility::TColor);
/* 803068F8 */ virtual void getBlack() const;
/* 80306958 */ virtual void getWhite() const;
/* 80256034 */ virtual void getMaterial() const;
/* 80303B80 */ virtual void drawFullSet(f32, f32, f32, f32, f32 (*)[3][4]);
/* 80303BDC */ virtual void drawTexCoord(f32, f32, f32, f32, s16, s16, s16, s16, s16, s16, s16,
s16, f32 (*)[3][4]);
/* 80306DC8 */ virtual void getUsableTlut(u8);
private:
/* 0x150 */ J2DMaterial* mMaterial;
/* 0x154 */ u16 field_0x154;
/* 0x156 */ u16 field_0x156;
/* 0x158 */ u16 field_0x158[4];
/* 0x160 */ f32 field_0x160[6]; // related to blend color ratio
/* 0x178 */ f32 field_0x178[6]; // related to blend alpha ratio
/* 0x190 */ u8 field_0x190;
/* 0x194 */ int field_0x194;
/* 0x198 */ int field_0x198;
};
#endif /* J2DPICTUREEX_H */

View File

@ -1,6 +1,68 @@
#ifndef J2DPRINT_H
#define J2DPRINT_H
#include "JSystem/J2DGraph/J2DTextBox.h"
#include "JSystem/JUtility/TColor.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/Src/printf.h"
#include "dolphin/types.h"
class J2DPrint {
public:
struct TSize {
/* 0x0 */ f32 field_0x0;
/* 0x4 */ f32 field_0x4;
};
/* 802F4394 */ J2DPrint(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor);
/* 802F4658 */ static u8* setBuffer(size_t);
/* 802F46C4 */ void setFontSize();
/* 802F475C */ void locate(f32, f32);
/* 802F4778 */ void print(f32, f32, u8, char const*, ...);
/* 802F4828 */ void printReturn(char const*, f32, f32, J2DTextBoxHBinding, J2DTextBoxVBinding,
f32, f32, u8);
/* 802F4B4C */ void parse(u8 const*, int, int, u16*, J2DPrint::TSize&, u8, bool);
/* 802F52E8 */ void doCtrlCode(int);
/* 802F5410 */ void doEscapeCode(u8 const**, u8);
/* 802F594C */ void initchar();
/* 802F59C0 */ void getNumberS32(u8 const**, s32, s32, int);
/* 802F5AC4 */ void getNumberF32(u8 const**, f32, f32, int);
/* 802F4420 */ virtual ~J2DPrint();
static const u8* mStrBuff;
static size_t mStrBuffSize;
private:
/* 802F4468 */ void private_initiate(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor, bool);
/* 0x04 */ JUTFont* mFont;
/* 0x08 */ JUtility::TColor field_0x8;
/* 0x0C */ JUtility::TColor field_0xc;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
/* 0x20 */ s16 field_0x20;
/* 0x22 */ u8 field_0x22;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ f32 field_0x28;
/* 0x2C */ f32 field_0x2c;
/* 0x30 */ f32 mCursorV;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ JUtility::TColor field_0x38;
/* 0x3C */ JUtility::TColor field_0x3c;
/* 0x40 */ JUtility::TColor mCharColor;
/* 0x44 */ JUtility::TColor mGradColor;
/* 0x48 */ f32 field_0x48;
/* 0x4C */ f32 field_0x4c;
/* 0x50 */ f32 mFontSizeX;
/* 0x54 */ f32 mFontSizeY;
/* 0x58 */ s16 field_0x58;
/* 0x5A */ u8 field_0x5a;
}; // Size: 0x5C
f32 J2DPrint_print_alpha_va(J2DPrint*, u8, const char*, va_list);
#endif /* J2DPRINT_H */

View File

@ -1,6 +1,169 @@
#ifndef J2DTEVS_H
#define J2DTEVS_H
#include "dolphin/mtx/mtxvec.h"
#include "dolphin/types.h"
struct J2DTextureSRTInfo {
/* 0x00 */ f32 field_0x0;
/* 0x04 */ f32 field_0x4;
/* 0x08 */ f32 field_0x8;
/* 0x0C */ f32 field_0xc;
/* 0x10 */ f32 field_0x10;
}; // Size: 0x14
struct J2DTexMtxInfo {
/* 0x00 */ u8 field_0x0;
/* 0x01 */ u8 field_0x1;
/* 0x02 */ u8 field_0x2; // padding ?
/* 0x03 */ u8 field_0x3; // padding ?
/* 0x04 */ Vec field_0x4;
/* 0x10 */ J2DTextureSRTInfo mTexSRTInfo;
}; // Size: 0x24
class J2DTexMtx {
public:
/* 802E9C90 */ void load(u32);
/* 802E9CC4 */ void calc();
/* 802E9D2C */ void getTextureMtx(J2DTextureSRTInfo const&, Vec, f32 (*)[4]);
/* 802E9EBC */ void getTextureMtxMaya(J2DTextureSRTInfo const&, f32 (*)[4]);
private:
/* 0x00 */ J2DTexMtxInfo mTexMtxInfo;
/* 0x24 */ Mtx mTexMtx;
};
struct J2DIndTexOrderInfo {
/* 0x0 */ u8 field_0x0;
/* 0x1 */ u8 field_0x1;
};
class J2DIndTexOrder {
public:
/* 802EB378 */ J2DIndTexOrder();
/* 802EA0FC */ void load(u8);
private:
/* 0x0 */ J2DIndTexOrderInfo mIndTexOrderInfo;
};
struct J2DIndTexMtxInfo {
/* 0x00 */ Mtx23 mMtx;
/* 0x18 */ u8 field_0x18;
};
class J2DIndTexMtx {
public:
/* 802EB2E4 */ ~J2DIndTexMtx();
/* 802EB320 */ J2DIndTexMtx();
/* 802EA098 */ void load(u8);
/* 802E9C90 */ void load(u32);
/* 802E9CC4 */ void calc();
private:
/* 0x0 */ J2DIndTexMtxInfo mIndTexMtxInfo;
}; // Size: 0x1C
struct J2DIndTexCoordScaleInfo {
/* 0x0 */ u8 field_0x0;
/* 0x0 */ u8 field_0x1;
};
class J2DIndTexCoordScale {
public:
/* 802EB290 */ ~J2DIndTexCoordScale();
/* 802EB2CC */ J2DIndTexCoordScale();
/* 802EA0CC */ void load(u8);
private:
/* 0x0 */ J2DIndTexCoordScaleInfo mIndTexCoordScaleInfo;
}; // Size: 0x2
class J2DIndTevStage {
public:
/* 802EA044 */ void load(u8);
/* 802F18A0 */ J2DIndTevStage();
private:
/* 0x0 */ u32 mFlags;
};
struct J2DTexCoordInfo {
/* 0x0 */ u8 mTexGenType;
/* 0x1 */ u8 mTexGenSrc;
/* 0x2 */ u8 mTexGenMtx;
u8 padding; // ?
};
class J2DTexCoord {
public:
/* 802EB260 */ J2DTexCoord();
private:
/* 0x0 */ J2DTexCoordInfo mTexCoordInfo;
};
struct J2DTevOrderInfo {
/* 0x0 */ u8 mTexCoord;
/* 0x1 */ u8 mTexMap;
/* 0x2 */ u8 mColor;
};
class J2DTevOrder {
public:
/* 802F1B70 */ J2DTevOrder();
private:
/* 0x0 */ J2DTevOrderInfo mTevOrderInfo;
};
struct J2DTevStageInfo {
/* 0x00 */ u8 field_0x0;
/* 0x01 */ u8 field_0x1;
/* 0x02 */ u8 field_0x2;
/* 0x03 */ u8 field_0x3;
/* 0x04 */ u8 field_0x4;
/* 0x05 */ u8 field_0x5;
/* 0x06 */ u8 field_0x6;
/* 0x07 */ u8 field_0x7;
/* 0x08 */ u8 field_0x8;
/* 0x09 */ u8 field_0x9;
/* 0x0A */ u8 field_0xa;
/* 0x0B */ u8 field_0xb;
/* 0x0C */ u8 field_0xc;
/* 0x0D */ u8 field_0xd;
/* 0x0E */ u8 field_0xe;
/* 0x0F */ u8 field_0xf;
/* 0x10 */ u8 field_0x10;
/* 0x11 */ u8 field_0x11;
/* 0x12 */ u8 field_0x12;
};
class J2DTevStage {
public:
/* 802F4110 */ J2DTevStage(J2DTevStageInfo const&);
/* 802F1940 */ J2DTevStage();
/* 802F19A8 */ void setTevStageInfo(J2DTevStageInfo const&);
private:
/* 0x0 */ u8 field_0x0;
/* 0x1 */ u8 field_0x1;
/* 0x2 */ u8 field_0x2;
/* 0x3 */ u8 field_0x3;
/* 0x4 */ u8 field_0x4;
/* 0x5 */ u8 field_0x5;
/* 0x6 */ u8 field_0x6;
/* 0x7 */ u8 field_0x7;
};
struct J2DTevSwapModeInfo {};
class J2DTevSwapModeTable {
public:
/* 802F1934 */ J2DTevSwapModeTable();
private:
/* 0x0 */ u8 field_0x0;
};
#endif /* J2DTEVS_H */

View File

@ -1,6 +1,56 @@
#ifndef J2DTEXTBOXEX_H
#define J2DTEXTBOXEX_H
#include "JSystem/J2DGraph/J2DMaterial.h"
#include "JSystem/J2DGraph/J2DPrint.h"
#include "JSystem/J2DGraph/J2DTextBox.h"
#include "dolphin/types.h"
class J2DTextBoxEx : public J2DTextBox {
public:
enum stage_enum {};
/* 803071E4 */ J2DTextBoxEx(J2DPane*, JSURandomInputStream*, u32, J2DMaterial*);
/* 80307E0C */ void setTevOrder(bool);
/* 80307EF0 */ void setTevStage(bool);
/* 80307F94 */ void setStage(J2DTevStage*, J2DTextBoxEx::stage_enum);
/* 803084CC */ void getBlackWhite(JUtility::TColor*, JUtility::TColor*) const;
/* 80308668 */ void isSetBlackWhite(JUtility::TColor, JUtility::TColor) const;
/* 8030751C */ virtual ~J2DTextBoxEx();
/* 803089EC */ virtual void setCullBack(bool);
/* 803087DC */ virtual void setCullBack(_GXCullMode);
/* 803087BC */ virtual void setAlpha(u8);
/* 803075AC */ virtual void drawSelf(f32, f32, f32 (*)[3][4]);
/* 80308A28 */ virtual void isUsed(ResTIMG const*);
/* 80308828 */ virtual void isUsed(ResFONT const*);
/* 80308810 */ virtual void rewriteAlpha();
/* 80308A4C */ virtual void setAnimation(J2DAnmBase*);
/* 80256044 */ virtual void setAnimation(J2DAnmTransform*);
/* 803088B4 */ virtual void setAnimation(J2DAnmColor*);
/* 8030890C */ virtual void setAnimation(J2DAnmTexPattern*);
/* 803088E0 */ virtual void setAnimation(J2DAnmTextureSRTKey*);
/* 80308938 */ virtual void setAnimation(J2DAnmTevRegKey*);
/* 80308964 */ virtual void setAnimation(J2DAnmVisibilityFull*);
/* 80308A48 */ virtual void setAnimation(J2DAnmVtxColor*);
/* 8030896C */ virtual void animationPane(J2DAnmTransform const*);
/* 803078AC */ virtual void draw(f32, f32);
/* 80307AF0 */ virtual void draw(f32, f32, f32, J2DTextBoxHBinding);
/* 80307D5C */ virtual void setFont(JUTFont*);
/* 80307DC0 */ virtual void getFont() const;
/* 8030823C */ virtual void setBlack(JUtility::TColor);
/* 803082C4 */ virtual void setWhite(JUtility::TColor);
/* 8030834C */ virtual void setBlackWhite(JUtility::TColor, JUtility::TColor);
/* 803086FC */ virtual void getBlack() const;
/* 8030875C */ virtual void getWhite() const;
/* 80256024 */ virtual void getMaterial() const;
private:
/* 0x134 */ u8 field_0x134[4];
/* 0x138 */ J2DMaterial* mMaterial;
/* 0x13C */ u16 field_0x13c;
/* 0x13E */ u16 field_0x13e;
/* 0x140 */ u8 field_0x140;
}; // Size: 0x144
#endif /* J2DTEXTBOXEX_H */

View File

@ -1,6 +1,68 @@
#ifndef J2DWINDOWEX_H
#define J2DWINDOWEX_H
#include "JSystem/J2DGraph/J2DMaterial.h"
#include "JSystem/J2DGraph/J2DWindow.h"
#include "dolphin/types.h"
class J2DWindowEx : public J2DWindow {
public:
enum stage_enum {};
/* 80300C94 */ J2DWindowEx(J2DPane*, JSURandomInputStream*, u32, J2DMaterial*);
/* 80300F80 */ void setMinSize();
/* 803012CC */ void draw_private(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
/* 80301D74 */ void drawFrameTexture(f32, f32, f32, f32, u16, u16, u16, u16, J2DMaterial*,
bool);
/* 80302284 */ void setTevOrder(bool);
/* 80302388 */ void setTevStage(bool);
/* 803024B4 */ void setStage(J2DTevStage*, J2DWindowEx::stage_enum);
/* 80302A4C */ void getBlackWhite(JUtility::TColor*, JUtility::TColor*) const;
/* 80302BE8 */ void isSetBlackWhite(JUtility::TColor, JUtility::TColor) const;
/* 8030321C */ void isNeedSetAnm(u8);
/* 80301144 */ virtual ~J2DWindowEx();
/* 803035C0 */ virtual void setCullBack(bool);
/* 80302D98 */ virtual void setCullBack(_GXCullMode);
/* 80302D48 */ virtual void setAlpha(u8);
/* 8030122C */ virtual void drawSelf(f32, f32, f32 (*)[3][4]);
/* 80302EDC */ virtual void isUsed(ResTIMG const*);
/* 803035FC */ virtual void isUsed(ResFONT const*);
/* 80302DF4 */ virtual void rewriteAlpha();
/* 8030361C */ virtual void setAnimation(J2DAnmBase*);
/* 80256084 */ virtual void setAnimation(J2DAnmTransform*);
/* 80302FFC */ virtual void setAnimation(J2DAnmColor*);
/* 8030310C */ virtual void setAnimation(J2DAnmTexPattern*);
/* 80303084 */ virtual void setAnimation(J2DAnmTextureSRTKey*);
/* 80303194 */ virtual void setAnimation(J2DAnmTevRegKey*);
/* 80303274 */ virtual void setAnimation(J2DAnmVisibilityFull*);
/* 8030327C */ virtual void setAnimation(J2DAnmVtxColor*);
/* 80303370 */ virtual void animationPane(J2DAnmTransform const*);
/* 80301FC8 */ virtual void draw(JGeometry::TBox2<f32> const&);
/* 80302164 */ virtual void draw(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
/* 80303568 */ virtual void draw(f32, f32, f32, f32);
/* 80302764 */ virtual void setBlack(JUtility::TColor);
/* 803027EC */ virtual void setWhite(JUtility::TColor);
/* 80302874 */ virtual void setBlackWhite(JUtility::TColor, JUtility::TColor);
/* 80302C88 */ virtual void getBlack() const;
/* 80302CE8 */ virtual void getWhite() const;
/* 80302E0C */ virtual void getFrameTexture(u8, u8) const;
/* 80302E74 */ virtual void getContentsTexture(u8) const;
/* 8030353C */ virtual void getMaterial(J2DWindow::TMaterial&) const;
/* 80303510 */ virtual void getFrameMaterial(u8) const;
/* 80303534 */ virtual void getContentsMaterial() const;
/* 80301994 */ virtual void drawContents(JGeometry::TBox2<f32> const&);
private:
/* 0x148 */ J2DMaterial* mFrameMaterial[4];
/* 0x158 */ u16 field_0x158[4];
/* 0x160 */ J2DMaterial* mContentsMaterial;
/* 0x164 */ u16 field_0x164;
/* 0x166 */ u16 field_0x166;
/* 0x168 */ u16 field_0x168[4];
/* 0x170 */ u8 field_0x170;
/* 0x174 */ J2DAnmVisibilityFull* mAnmVisibilityFull;
/* 0x178 */ J2DAnmVtxColor* mAnmVtxColor;
};
#endif /* J2DWINDOWEX_H */

View File

@ -3,7 +3,7 @@
#include "JSystem/J3DGraphAnimator/J3DMaterialAttach.h"
#include "JSystem/J3DGraphAnimator/J3DModelData.h"
#include "dolphin/gx/GXTexture.h"
#include "dolphin/gx/GX.h"
#include "dolphin/types.h"
class J3DAnmBase {

View File

@ -4,7 +4,7 @@
#include "JSystem/J3DGraphBase/J3DStruct.h"
#include "JSystem/J3DGraphBase/J3DTevs.h"
#include "JSystem/J3DGraphBase/J3DTexture.h"
#include "dolphin/gx/GXTexture.h"
#include "dolphin/gx/GX.h"
#include "dolphin/mtx/mtx.h"
#include "dolphin/types.h"

View File

@ -2,7 +2,7 @@
#define J3DSTRUCT_H
#include "SSystem/SComponent/c_xyz.h"
#include "dolphin/gx/GXTexture.h"
#include "dolphin/gx/GX.h"
#include "dolphin/types.h"
class J3DLightInfo {

View File

@ -1,7 +1,7 @@
#ifndef J3DSYS_H
#define J3DSYS_H
#include "dolphin/gx/GXTexture.h"
#include "dolphin/gx/GX.h"
#include "dolphin/mtx/mtx.h"
#include "dolphin/types.h"
@ -11,8 +11,6 @@ enum J3DError {
kJ3DError_Alloc = 4,
};
struct _GXTexCacheSize {};
class J3DMtxCalc;
class J3DModel;
class J3DMatPacket;

View File

@ -6,33 +6,6 @@
enum JUTTransparency { UNK0, UNK1 };
enum _GXTlut {
/* 0x00 */ GX_TLUT0,
/* 0x01 */ GX_TLUT1,
/* 0x02 */ GX_TLUT2,
/* 0x03 */ GX_TLUT3,
/* 0x04 */ GX_TLUT4,
/* 0x05 */ GX_TLUT5,
/* 0x06 */ GX_TLUT6,
/* 0x07 */ GX_TLUT7,
/* 0x08 */ GX_TLUT8,
/* 0x09 */ GX_TLUT9,
/* 0x0A */ GX_TLUT10,
/* 0x0B */ GX_TLUT11,
/* 0x0C */ GX_TLUT12,
/* 0x0D */ GX_TLUT13,
/* 0x0E */ GX_TLUT14,
/* 0x0F */ GX_TLUT15,
/* 0x10 */ GX_BIGTLUT0,
/* 0x11 */ GX_BIGTLUT1,
/* 0x12 */ GX_BIGTLUT2,
/* 0x13 */ GX_BIGTLUT3,
};
enum _GXTlutFmt {
/* 0x00 */ UNK,
};
struct ResTLUT {
u8 format;
u8 transparency;

View File

@ -1,7 +1,7 @@
#ifndef TCOLOR_H
#define TCOLOR_H
#include "dolphin/gx/GXTexture.h"
#include "dolphin/gx/GX.h"
#include "dolphin/types.h"
namespace JUtility {

View File

@ -3,4 +3,8 @@
#include "dolphin/types.h"
extern "C" {
int tolower(int);
};
#endif /* MSL_COMMON_SRC_CTYPE_H */

View File

@ -5,6 +5,17 @@
extern "C" {
void* memcpy(void*, const void*, s32);
void* memset(void*, int, u32);
char* strrchr(const char*, int);
char* strchr(const char*, int);
int strncmp(const char*, const char*, u32);
int strcmp(const char*, const char*);
char* strcat(char*, const char*);
char* strncpy(char*, const char*, u32);
char* strcpy(char*, const char*);
u32 strlen(const char*);
int stricmp(const char*, const char*);
};
#endif /* MSL_COMMON_SRC_STRING_H */

View File

@ -7,7 +7,7 @@
#include "SSystem/SComponent/c_m3d_g_cyl.h"
#include "SSystem/SComponent/c_m3d_g_sph.h"
#include "SSystem/SComponent/c_m3d_g_tri.h"
#include "dolphin/gx/GXTexture.h"
#include "dolphin/gx/GX.h"
#include "f_op/f_op_actor.h"
#include "global.h"

View File

@ -8,7 +8,6 @@
#include "dolphin/types.h"
#include "f_op/f_op_actor.h"
#include "f_op/f_op_actor_mng.h"
#include "msl_c/string.h"
struct stage_vrboxcol_info_class {};

View File

@ -7,7 +7,7 @@
#include "JSystem/JParticle/JPAParticle.h"
#include "SSystem/SComponent/c_sxyz.h"
#include "SSystem/SComponent/c_xyz.h"
#include "dolphin/gx/GXTexture.h"
#include "dolphin/gx/GX.h"
#include "dolphin/types.h"
#include "m_Do/m_Do_ext.h"
@ -328,10 +328,6 @@ private:
/* 0x18 */ EVIL_EFF field_0x18[2000];
};
struct GXFogAdjTable {
u16 field_0x0[10];
};
class fopAc_ac_c;
class dScnKy_env_light_c {

View File

@ -1,9 +1,10 @@
#ifndef D_SAVE_D_SAVE_H
#define D_SAVE_D_SAVE_H
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/printf.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "SSystem/SComponent/c_xyz.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
#define DEFAULT_SELECT_ITEM_INDEX 0
#define MAX_SELECT_ITEM 4

View File

@ -2,49 +2,123 @@
#define GX_H_
#include "dolphin/gx/GXDisplayList.h"
#include "dolphin/gx/GXTexture.h"
#include "dolphin/mtx/mtx.h"
#include "dolphin/mtx/mtx44.h"
#include "dolphin/types.h"
// TODO: maybe split?
typedef struct _GXColor {
/* 0x0 */ u8 r;
/* 0x1 */ u8 g;
/* 0x2 */ u8 b;
/* 0x3 */ u8 a;
} GXColor;
typedef struct _GXColorS10 {
/* 0x0 */ s16 r;
/* 0x2 */ s16 g;
/* 0x4 */ s16 b;
/* 0x6 */ s16 a;
} GXColorS10;
typedef struct _GXRenderModeObj {
s32 vi_tv_mode;
u16 fb_width;
u16 efb_height;
u16 xfb_height;
u16 vi_x_origin;
u16 vi_y_origin;
u16 vi_width;
u16 vi_height;
s32 xfb_mode;
u8 field_rendering;
u8 antialiasing;
u8 sample_pattern[12][2];
u8 vfilter[7];
} GXRenderModeObj;
typedef struct _GXTexObj {
/* 0x00 */ u32 texture_filter;
/* 0x04 */ u32 texture_lod;
/* 0x08 */ u32 texture_size;
/* 0x0C */ u32 texture_address;
/* 0x10 */ u32 user_data;
/* 0x14 */ u32 texture_format;
/* 0x18 */ u32 tlut_name;
/* 0x1C */ u16 texture_time_count;
/* 0x1E */ u8 texture_tile_type;
/* 0x1F */ u8 texture_flags;
} GXTexObj;
typedef struct _GXTlutObj {
/* 0x0 */ u32 format;
/* 0x4 */ u32 address;
/* 0x8 */ u32 numEntries;
} GXTlutObj;
typedef struct _GXLightObj {
/* 0x0 */ u32 data[16];
} GXLightObj;
typedef struct _GXFogAdjTable {
/* 0x0 */ u16 r[10];
} GXFogAdjTable;
typedef enum _GXPrimitive {
/* 0x80 */ GX_QUADS = 0x80,
/* 0x90 */ GX_TRIANGLES = 0x90,
/* 0x98 */ GX_TRIANGLESTRIP = 0x98,
/* 0xA0 */ GX_TRIANGLEFAN = 0xA0,
/* 0xA8 */ GX_LINES = 0xA8,
/* 0xB0 */ GX_LINESTRIP = 0xB0,
/* 0xB8 */ GX_POINTS = 0xB8,
} GXPrimitive;
typedef enum _GXCullMode {
GX_CULL_NONE = 0,
GX_CULL_FRONT = 1,
GX_CULL_BACK = 2,
GX_CULL_ALL = 3
/* 0x0 */ GX_CULL_NONE,
/* 0x1 */ GX_CULL_FRONT,
/* 0x2 */ GX_CULL_BACK,
/* 0x3 */ GX_CULL_ALL
} GXCullMode;
typedef enum _GXBool {
/* 0x0 */ GX_FALSE,
/* 0x1 */ GX_TRUE,
/* 0x0 */ GX_DISABLE = 0,
/* 0x1 */ GX_ENABLE
} GXBool;
typedef enum _GXTexMapID {
GX_TEXMAP1 = 1,
GX_TEXMAP2 = 2,
GX_TEXMAP0 = 0,
GX_TEXMAP5 = 5,
GX_TEXMAP6 = 6,
GX_TEXMAP3 = 3,
GX_TEXMAP4 = 4,
GX_TEXMAP_NULL = 255,
GX_TEX_DISABLE = 256,
GX_TEXMAP7 = 7,
GX_MAX_TEXMAP = 8
/* 0x000 */ GX_TEXMAP0,
/* 0x001 */ GX_TEXMAP1,
/* 0x002 */ GX_TEXMAP2,
/* 0x003 */ GX_TEXMAP3,
/* 0x004 */ GX_TEXMAP4,
/* 0x005 */ GX_TEXMAP5,
/* 0x006 */ GX_TEXMAP6,
/* 0x007 */ GX_TEXMAP7,
/* 0x008 */ GX_MAX_TEXMAP,
/* 0x0FF */ GX_TEXMAP_NULL = 255,
/* 0x100 */ GX_TEXMAP_DISABLE,
} GXTexMapID;
typedef enum _GXTevStageID {
/* 0x0 */ GX_TEVSTAGE0,
/* 0x1 */ GX_TEVSTAGE1,
/* 0x2 */ GX_TEVSTAGE2,
/* 0x3 */ GX_TEVSTAGE3,
/* 0x4 */ GX_TEVSTAGE4,
/* 0x5 */ GX_TEVSTAGE5,
/* 0x6 */ GX_TEVSTAGE6,
/* 0x7 */ GX_TEVSTAGE7,
/* 0x8 */ GX_TEVSTAGE8,
/* 0x9 */ GX_TEVSTAGE9,
/* 0xA */ GX_TEVSTAGE10,
/* 0xB */ GX_TEVSTAGE11,
/* 0xC */ GX_TEVSTAGE12,
/* 0xD */ GX_TEVSTAGE13,
/* 0xE */ GX_TEVSTAGE14,
/* 0xF */ GX_TEVSTAGE15,
/* 0x00 */ GX_TEVSTAGE0,
/* 0x01 */ GX_TEVSTAGE1,
/* 0x02 */ GX_TEVSTAGE2,
/* 0x03 */ GX_TEVSTAGE3,
/* 0x04 */ GX_TEVSTAGE4,
/* 0x05 */ GX_TEVSTAGE5,
/* 0x06 */ GX_TEVSTAGE6,
/* 0x07 */ GX_TEVSTAGE7,
/* 0x08 */ GX_TEVSTAGE8,
/* 0x09 */ GX_TEVSTAGE9,
/* 0x0A */ GX_TEVSTAGE10,
/* 0x0B */ GX_TEVSTAGE11,
/* 0x0C */ GX_TEVSTAGE12,
/* 0x0D */ GX_TEVSTAGE13,
/* 0x0E */ GX_TEVSTAGE14,
/* 0x0F */ GX_TEVSTAGE15,
/* 0x10 */ GX_MAX_TEVSTAGE,
} GXTevStageID;
typedef enum _GXTexCoordID {
@ -56,6 +130,7 @@ typedef enum _GXTexCoordID {
/* 0x05 */ GX_TEXCOORD5,
/* 0x06 */ GX_TEXCOORD6,
/* 0x07 */ GX_TEXCOORD7,
/* 0x08 */ GX_MAXCOORD,
/* 0xFF */ GX_TEXCOORD_NULL = 255,
} GXTexCoordID;
@ -78,14 +153,16 @@ typedef enum _GXColorSrc {
} GXColorSrc;
typedef enum _GXLightID {
/* 0x00 */ GX_LIGHT0,
/* 0x02 */ GX_LIGHT1 = 0x2,
/* 0x04 */ GX_LIGHT2 = 0x4,
/* 0x08 */ GX_LIGHT3 = 0x8,
/* 0x10 */ GX_LIGHT4 = 0x10,
/* 0x20 */ GX_LIGHT5 = 0x20,
/* 0x40 */ GX_LIGHT6 = 0x40,
/* 0x80 */ GX_LIGHT7 = 0x80,
/* 0x000 */ GX_LIGHT_NULL,
/* 0x001 */ GX_LIGHT0,
/* 0x002 */ GX_LIGHT1,
/* 0x004 */ GX_LIGHT2 = 0x4,
/* 0x008 */ GX_LIGHT3 = 0x8,
/* 0x010 */ GX_LIGHT4 = 0x10,
/* 0x020 */ GX_LIGHT5 = 0x20,
/* 0x040 */ GX_LIGHT6 = 0x40,
/* 0x080 */ GX_LIGHT7 = 0x80,
/* 0x100 */ GX_MAX_LIGHT = 0x100,
} GXLightID;
typedef enum _GXDiffuseFn {
@ -100,6 +177,23 @@ typedef enum _GXAttnFn {
/* 0x2 */ GX_AF_NONE,
} GXAttnFn;
typedef enum _GXDistAttnFn {
/* 0x0 */ GX_DA_OFF,
/* 0x1 */ GX_DA_GENTLE,
/* 0x2 */ GX_DA_MEDIUM,
/* 0x3 */ GX_DA_STEEP
} GXDistAttnFn;
typedef enum _GXSpotFn {
/* 0x0 */ GX_SP_OFF,
/* 0x1 */ GX_SP_FLAT,
/* 0x2 */ GX_SP_COS,
/* 0x3 */ GX_SP_COS2,
/* 0x4 */ GX_SP_SHARP,
/* 0x5 */ GX_SP_RING1,
/* 0x6 */ GX_SP_RING2
} GXSpotFn;
typedef enum _GXTevMode {
/* 0x0 */ GX_MODULATE,
/* 0x1 */ GX_DECAL,
@ -113,13 +207,16 @@ typedef enum _GXBlendMode {
/* 0x1 */ GX_BM_BLEND,
/* 0x2 */ GX_BM_LOGIC,
/* 0x3 */ GX_BM_SUBTRACT,
/* 0x4 */ GX_MAX_BLENDMODE,
} GXBlendMode;
typedef enum _GXBlendFactor {
/* 0x0 */ GX_BL_ZERO,
/* 0x1 */ GX_BL_ONE,
/* 0x2 */ GX_BL_SRC_COLOR,
/* 0x2 */ GX_BL_DST_COLOR = 2,
/* 0x3 */ GX_BL_INV_SRC_COLOR,
/* 0x3 */ GX_BL_INV_DST_COLOR = 3,
/* 0x4 */ GX_BL_SRC_ALPHA,
/* 0x5 */ GX_BL_INV_SRC_ALPHA,
/* 0x6 */ GX_BL_DST_ALPHA,
@ -154,6 +251,7 @@ typedef enum _GXVtxFmt {
/* 0x5 */ GX_VTXFMT5,
/* 0x6 */ GX_VTXFMT6,
/* 0x7 */ GX_VTXFMT7,
/* 0x8 */ GX_MAX_VTXFMT,
} GXVtxFmt;
typedef enum _GXAttr {
@ -188,28 +286,28 @@ typedef enum _GXAttr {
} GXAttr;
typedef enum _GXCompCnt {
/* 0x0 */ GX_TEX_S,
/* 0x0 */ GX_NRM_XYZ = 0,
/* 0x0 */ GX_CLR_RGB = 0,
/* 0x0 */ GX_POS_XY = 0,
/* 0x1 */ GX_TEX_ST = 1,
/* 0x1 */ GX_NRM_NBT = 1,
/* 0x1 */ GX_CLR_RGBA = 1,
/* 0x1 */ GX_POS_XYZ = 1,
/* 0x2 */ GX_NRM_NBT3,
/* 0x0 */ GX_NRM_XYZ = 0,
/* 0x1 */ GX_NRM_NBT = 1,
/* 0x2 */ GX_NRM_NBT3 = 2,
/* 0x0 */ GX_CLR_RGB = 0,
/* 0x1 */ GX_CLR_RGBA = 1,
/* 0x0 */ GX_TEX_S = 0,
/* 0x1 */ GX_TEX_ST = 1,
} GXCompCnt;
typedef enum _GXCompType {
/* 0x0 */ GX_U8,
/* 0x0 */ GX_RGB565 = 0,
/* 0x1 */ GX_S8,
/* 0x1 */ GX_RGB8 = 1,
/* 0x2 */ GX_RGBX8,
/* 0x2 */ GX_U16 = 2,
/* 0x2 */ GX_U16,
/* 0x3 */ GX_S16,
/* 0x3 */ GX_RGBA4 = 3,
/* 0x4 */ GX_F32,
/* 0x0 */ GX_RGB565 = 0,
/* 0x1 */ GX_RGB8,
/* 0x2 */ GX_RGBX8,
/* 0x3 */ GX_RGBA4,
/* 0x4 */ GX_RGBA6,
/* 0x4 */ GX_F32 = 4,
/* 0x5 */ GX_RGBA8,
} GXCompType;
@ -239,6 +337,7 @@ typedef enum _GXTevBias {
/* 0x0 */ GX_TB_ZERO,
/* 0x1 */ GX_TB_ADDHALF,
/* 0x2 */ GX_TB_SUBHALF,
/* 0x3 */ GX_MAX_TEVBIAS,
} GXTevBias;
typedef enum _GXTevColorArg {
@ -272,6 +371,7 @@ typedef enum _GXTevScale {
/* 0x1 */ GX_CS_SCALE_2,
/* 0x2 */ GX_CS_SCALE_4,
/* 0x3 */ GX_CS_DIVIDE_2,
/* 0x4 */ GX_MAX_TEVSCALE
} GXTevScale;
typedef enum _GXTevRegID {
@ -279,6 +379,7 @@ typedef enum _GXTevRegID {
/* 0x1 */ GX_TEVREG0,
/* 0x2 */ GX_TEVREG1,
/* 0x3 */ GX_TEVREG2,
/* 0x4 */ GX_MAX_TEVREG
} GXTevRegID;
typedef enum _GXTevAlphaArg {
@ -287,178 +388,354 @@ typedef enum _GXTevAlphaArg {
/* 0x2 */ GX_CA_A1,
/* 0x3 */ GX_CA_A2,
/* 0x4 */ GX_CA_TEXA,
/* 0x5 */ GX_CA_TEXB,
/* 0x6 */ GX_CA_ZERO,
/* 0x5 */ GX_CA_RASA,
/* 0x6 */ GX_CA_KONST,
/* 0x7 */ GX_CA_ZERO,
} GXTevAlphaArg;
typedef struct _GXRenderModeObj {
s32 vi_tv_mode;
u16 fb_width;
u16 efb_height;
u16 xfb_height;
u16 vi_x_origin;
u16 vi_y_origin;
u16 vi_width;
u16 vi_height;
s32 xfb_mode;
u8 field_rendering;
u8 antialiasing;
u8 sample_pattern[12][2];
u8 vfilter[7];
} GXRenderModeObj;
typedef enum _GXTexFmt {
/* 0x0 */ GX_TF_I4,
/* 0x1 */ GX_TF_I8,
/* 0x2 */ GX_TF_IA4,
/* 0x3 */ GX_TF_IA8,
/* 0x4 */ GX_TF_RGB565,
/* 0x5 */ GX_TF_TGB5A3,
/* 0x6 */ GX_TF_RGBA8,
/* 0x7 */ GX_TF_CI4,
/* 0x8 */ GX_TF_CI8,
/* 0x9 */ GX_TF_CI14,
/* 0xE */ GX_TF_CMPR = 14,
struct _GXTexObj {
u32 texture_filter;
u32 texture_lod;
u32 texture_size;
u32 texture_address;
u32 user_data;
u32 texture_format;
u32 tlut_name;
u16 texture_time_count;
u8 texture_tile_type;
u8 texture_flags;
};
struct _GXTlutObj {
u32 format;
u32 address;
u32 numEntries;
};
typedef enum GXTexFmt8 { /* 8-bit version of GXTexFmt for use in structures */
GX_CTF_A8 = 39,
GX_CTF_B8 = 42,
GX_CTF_G8 = 41,
GX_CTF_GB8 = 44,
GX_CTF_R4 = 32,
GX_CTF_R8 = 40,
GX_CTF_RA4 = 34,
GX_CTF_RA8 = 35,
GX_CTF_RG8 = 43,
GX_CTF_YUVA8 = 38,
GX_CTF_Z16L = 60,
GX_CTF_Z4 = 48,
GX_CTF_Z8L = 58,
GX_CTF_Z8M = 57,
GX_TF_CMPR = 14,
GX_TF_I4 = 0,
GX_TF_I8 = 1,
GX_TF_IA4 = 2,
GX_TF_IA8 = 3,
GX_TF_RGB565 = 4,
GX_TF_RGB5A3 = 5,
GX_TF_RGBA8 = 6,
GX_TF_Z16 = 19,
GX_TF_Z24X8 = 22,
GX_TF_Z8 = 17
} GXTexFmt8;
typedef enum GXTexFmt {
_GX_TF_I4,
_GX_TF_I8,
_GX_TF_IA4,
_GX_TF_IA8,
_GX_TF_RGB565,
_GX_TF_TGB5A3,
_GX_TF_RGBA8,
_GX_TF_CMPR = 14,
_GX_TF_Z8 = 17,
_GX_TF_Z16 = 19,
_GX_TF_Z24X8 = 22,
_GX_CTF_R4 = 32,
_GX_CTF_RA4 = 34,
_GX_CTF_RA8,
_GX_CTF_YUVA8 = 38,
_GX_CTF_A8,
_GX_CTF_R8,
_GX_CTF_G8,
_GX_CTF_B8,
_GX_CTF_RG8,
_GX_CTF_GB8,
_GX_CTF_Z4 = 48,
_GX_CTF_Z8M = 57,
_GX_CTF_Z8L,
_GX_CTF_Z16L = 60
/* 0x10 */ _GX_TF_ZTF = 0x10,
/* 0x20 */ _GX_TF_CTF = 0x20
} GXTexFmt;
typedef enum GXTexWrapMode8 { /* Same as GXTexWrapMode, but as 1 byte for use inside structures */
GX_CLAMP = 0,
GX_MIRROR = 2,
GX_REPEAT = 1
} GXTexWrapMode8;
typedef enum _GXTlutFmt {
/* 0x0 */ GX_TL_IA8,
/* 0x1 */ GX_TL_RGB565,
/* 0x2 */ GX_TL_RGB5A3,
} GXTlutFmt;
typedef enum GXTexWrapMode {
_GX_CLAMP,
_GX_REPEAT,
_GX_MIRROR,
typedef enum _GXTlut {
/* 0x00 */ GX_TLUT0,
/* 0x01 */ GX_TLUT1,
/* 0x02 */ GX_TLUT2,
/* 0x03 */ GX_TLUT3,
/* 0x04 */ GX_TLUT4,
/* 0x05 */ GX_TLUT5,
/* 0x06 */ GX_TLUT6,
/* 0x07 */ GX_TLUT7,
/* 0x08 */ GX_TLUT8,
/* 0x09 */ GX_TLUT9,
/* 0x0A */ GX_TLUT10,
/* 0x0B */ GX_TLUT11,
/* 0x0C */ GX_TLUT12,
/* 0x0D */ GX_TLUT13,
/* 0x0E */ GX_TLUT14,
/* 0x0F */ GX_TLUT15,
/* 0x10 */ GX_BIGTLUT0,
/* 0x11 */ GX_BIGTLUT1,
/* 0x12 */ GX_BIGTLUT2,
/* 0x13 */ GX_BIGTLUT3,
} GXTlut;
/* 8-bit version of GXTexFmt for use in structures */
typedef enum _GXTexFmt8 {
/* 0x20 */ GX_CTF_R4 = (0x0 | _GX_TF_CTF),
/* 0x22 */ GX_CTF_RA4 = (0x2 | _GX_TF_CTF),
/* 0x23 */ GX_CTF_RA8 = (0x3 | _GX_TF_CTF),
/* 0x26 */ GX_CTF_YUVA8 = (0x6 | _GX_TF_CTF),
/* 0x27 */ GX_CTF_A8 = (0x7 | _GX_TF_CTF),
/* 0x28 */ GX_CTF_R8 = (0x8 | _GX_TF_CTF),
/* 0x29 */ GX_CTF_G8 = (0x9 | _GX_TF_CTF),
/* 0x2A */ GX_CTF_B8 = (0xA | _GX_TF_CTF),
/* 0x2B */ GX_CTF_RG8 = (0xB | _GX_TF_CTF),
/* 0x2C */ GX_CTF_GB8 = (0xC | _GX_TF_CTF),
} GXTexFmt8;
typedef enum _GXZTexFmt {
/* 0x11 */ GX_TF_Z8 = (0x1 | _GX_TF_ZTF),
/* 0x13 */ GX_TF_Z16 = (0x3 | _GX_TF_ZTF),
/* 0x16 */ GX_TF_Z24X8 = (0x6 | _GX_TF_ZTF),
/* 0x30 */ GX_CTF_Z4 = (0x0 | _GX_TF_ZTF | _GX_TF_CTF),
/* 0x39 */ GX_CTF_Z8M = (0x9 | _GX_TF_ZTF | _GX_TF_CTF),
/* 0x3A */ GX_CTF_Z8L = (0xA | _GX_TF_ZTF | _GX_TF_CTF),
/* 0x3C */ GX_CTF_Z16L = (0xC | _GX_TF_ZTF | _GX_TF_CTF),
} GXZTexFmt;
typedef enum _GXTexWrapMode {
/* 0x0 */ GX_CLAMP,
/* 0x1 */ GX_REPEAT,
/* 0x2 */ GX_MIRROR,
/* 0x3 */ GX_MAX_TEXWRAP_MODE,
} GXTexWrapMode;
typedef enum GXTexFilter8 { /* Same as GXTexFilter, but as 1 byte for use within structures that
store the value as a byte */
GX_LINEAR = 1,
GX_LIN_MIP_LIN = 5,
GX_LIN_MIP_NEAR = 3,
GX_NEAR = 0,
GX_NEAR_MIP_LIN = 4,
GX_NEAR_MIP_NEAR = 2
} GXTexFilter8;
typedef enum GXTexFilter {
_GX_NEAR,
_GX_LINEAR,
_GX_NEAR_MIP_NEAR,
_GX_LIN_MIP_NEAR,
_GX_NEAR_MIP_LIN,
_GX_LIN_MIP_LIN,
typedef enum _GXTexFilter {
/* 0x0 */ GX_NEAR,
/* 0x1 */ GX_LINEAR,
/* 0x2 */ GX_NEAR_MIP_NEAR,
/* 0x3 */ GX_LIN_MIP_NEAR,
/* 0x4 */ GX_NEAR_MIP_LIN,
/* 0x5 */ GX_LIN_MIP_LIN,
} GXTexFilter;
typedef enum GXAnisotropy {
GX_ANISO_1,
GX_ANISO_2,
GX_ANISO_4,
typedef enum _GXAnisotropy {
/* 0x0 */ GX_ANISO_1,
/* 0x1 */ GX_ANISO_2,
/* 0x2 */ GX_ANISO_4,
/* 0x3 */ GX_MAX_ANISOTROPY,
} GXAnisotropy;
typedef enum GXTlutFmt {
GX_TL_IA8,
GX_TL_RGB565,
GX_TL_RGB5A3,
} GXTlutFmt;
enum GXCITexFmt {
/* 0x8 */ GX_TF_C4 = 8,
/* 0x8 */ GX_TF_C8,
/* 0xA */ GX_TF_C14X2
};
typedef enum _GXTexMtxType {
/* 0x0 */ GX_MTX3x4,
/* 0x1 */ GX_MTX2x4
} GXTexMtxType;
typedef enum _GXCompare {
/* 0x0 */ GX_NEVER,
/* 0x1 */ GX_LESS,
/* 0x2 */ GX_EQUAL,
/* 0x3 */ GX_LEQUAL,
/* 0x4 */ GX_GREATER,
/* 0x5 */ GX_NEQUAL,
/* 0x6 */ GX_GEQUAL,
/* 0x7 */ GX_ALWAYS,
} GXCompare;
typedef enum _GXAlphaOp {
/* 0x0 */ GX_AOP_AND,
/* 0x1 */ GX_AOP_OR,
/* 0x2 */ GX_AOP_XOR,
/* 0x3 */ GX_AOP_XNOR,
/* 0x4 */ GX_MAX_ALPHAOP
} GXAlphaOp;
typedef enum _GXFogType {
/* 0x0 */ GX_FOG_NONE,
/* 0x2 */ GX_FOG_LIN = 2,
/* 0x2 */ GX_FOG_PERSP_LIN = 2,
/* 0x4 */ GX_FOG_EXP = 4,
/* 0x4 */ GX_FOG_PERSP_EXP = 4,
/* 0x5 */ GX_FOG_EXP2,
/* 0x5 */ GX_FOG_PERSP_EXP2 = 5,
/* 0x6 */ GX_FOG_REVEXP,
/* 0x6 */ GX_FOG_PERSP_REVEXP = 6,
/* 0x7 */ GX_FOG_REVEXP2,
/* 0x7 */ GX_FOG_PERSP_REVEXP2 = 7,
/* 0xA */ GX_FOG_ORTHO_LIN = 10,
/* 0xC */ GX_FOG_ORTHO_EXP = 12,
/* 0xD */ GX_FOG_ORTHO_EXP2,
/* 0xE */ GX_FOG_ORTHO_REVEXP,
/* 0xF */ GX_FOG_ORTHO_REVEXP2,
} GXFogType;
typedef enum _GXProjectionType {
/* 0x0 */ GX_PERSPECTIVE,
/* 0x1 */ GX_ORTHOGRAPHIC
} GXProjectionType;
typedef enum _GXTevKAlphaSel {
/* 0x00 */ GX_TEV_KASEL_1,
/* 0x01 */ GX_TEV_KASEL_7_8,
/* 0x02 */ GX_TEV_KASEL_3_4,
/* 0x03 */ GX_TEV_KASEL_5_8,
/* 0x04 */ GX_TEV_KASEL_1_2,
/* 0x05 */ GX_TEV_KASEL_3_8,
/* 0x06 */ GX_TEV_KASEL_1_4,
/* 0x07 */ GX_TEV_KASEL_1_8,
/* 0x10 */ GX_TEV_KASEL_K0_R = 0x10,
/* 0x11 */ GX_TEV_KASEL_K1_R,
/* 0x12 */ GX_TEV_KASEL_K2_R,
/* 0x13 */ GX_TEV_KASEL_K3_R,
/* 0x14 */ GX_TEV_KASEL_K0_G,
/* 0x15 */ GX_TEV_KASEL_K1_G,
/* 0x16 */ GX_TEV_KASEL_K2_G,
/* 0x17 */ GX_TEV_KASEL_K3_G,
/* 0x18 */ GX_TEV_KASEL_K0_B,
/* 0x19 */ GX_TEV_KASEL_K1_B,
/* 0x1A */ GX_TEV_KASEL_K2_B,
/* 0x1B */ GX_TEV_KASEL_K3_B,
/* 0x1C */ GX_TEV_KASEL_K0_A,
/* 0x1D */ GX_TEV_KASEL_K1_A,
/* 0x1E */ GX_TEV_KASEL_K2_A,
/* 0x1F */ GX_TEV_KASEL_K3_A,
} GXTevKAlphaSel;
typedef enum _GXTevKColorSel {
/* 0x00 */ GX_TEV_KCSEL_1,
/* 0x01 */ GX_TEV_KCSEL_7_8,
/* 0x02 */ GX_TEV_KCSEL_3_4,
/* 0x03 */ GX_TEV_KCSEL_5_8,
/* 0x04 */ GX_TEV_KCSEL_1_2,
/* 0x05 */ GX_TEV_KCSEL_3_8,
/* 0x06 */ GX_TEV_KCSEL_1_4,
/* 0x07 */ GX_TEV_KCSEL_1_8,
/* 0x0C */ GX_TEV_KCSEL_K0 = 0xC,
/* 0x0D */ GX_TEV_KCSEL_K1,
/* 0x0E */ GX_TEV_KCSEL_K2,
/* 0x0F */ GX_TEV_KCSEL_K3,
/* 0x10 */ GX_TEV_KCSEL_K0_R,
/* 0x11 */ GX_TEV_KCSEL_K1_R,
/* 0x12 */ GX_TEV_KCSEL_K2_R,
/* 0x13 */ GX_TEV_KCSEL_K3_R,
/* 0x14 */ GX_TEV_KCSEL_K0_G,
/* 0x15 */ GX_TEV_KCSEL_K1_G,
/* 0x16 */ GX_TEV_KCSEL_K2_G,
/* 0x17 */ GX_TEV_KCSEL_K3_G,
/* 0x18 */ GX_TEV_KCSEL_K0_B,
/* 0x19 */ GX_TEV_KCSEL_K1_B,
/* 0x1A */ GX_TEV_KCSEL_K2_B,
/* 0x1B */ GX_TEV_KCSEL_K3_B,
/* 0x1C */ GX_TEV_KCSEL_K0_A,
/* 0x1D */ GX_TEV_KCSEL_K1_A,
/* 0x1E */ GX_TEV_KCSEL_K2_A,
/* 0x1F */ GX_TEV_KCSEL_K3_A,
} GXTevKColorSel;
typedef enum _GXTevSwapSel {
/* 0x0 */ GX_TEV_SWAP0,
/* 0x1 */ GX_TEV_SWAP1,
/* 0x2 */ GX_TEV_SWAP2,
/* 0x3 */ GX_TEV_SWAP3,
/* 0x4 */ GX_MAX_TEVSWAP,
} GXTevSwapSel;
typedef enum _GXTexGenType {
/* 0x0 */ GX_TG_MTX3x4,
/* 0x1 */ GX_TG_MTX2x4,
/* 0x2 */ GX_TG_BUMP0,
/* 0x3 */ GX_TG_BUMP1,
/* 0x4 */ GX_TG_BUMP2,
/* 0x5 */ GX_TG_BUMP3,
/* 0x6 */ GX_TG_BUMP4,
/* 0x7 */ GX_TG_BUMP5,
/* 0x8 */ GX_TG_BUMP6,
/* 0x9 */ GX_TG_BUMP7,
/* 0xA */ GX_TG_SRTG,
} GXTexGenType;
typedef enum _GXTexGenSrc {
/* 0x00 */ GX_TG_POS,
/* 0x01 */ GX_TG_NRM,
/* 0x02 */ GX_TG_BINRM,
/* 0x03 */ GX_TG_TANGENT,
/* 0x04 */ GX_TG_TEX0,
/* 0x05 */ GX_TG_TEX1,
/* 0x06 */ GX_TG_TEX2,
/* 0x07 */ GX_TG_TEX3,
/* 0x08 */ GX_TG_TEX4,
/* 0x09 */ GX_TG_TEX5,
/* 0x0A */ GX_TG_TEX6,
/* 0x0B */ GX_TG_TEX7,
/* 0x0C */ GX_TG_TEXCOORD0,
/* 0x0D */ GX_TG_TEXCOORD1,
/* 0x0E */ GX_TG_TEXCOORD2,
/* 0x0F */ GX_TG_TEXCOORD3,
/* 0x10 */ GX_TG_TEXCOORD4,
/* 0x11 */ GX_TG_TEXCOORD5,
/* 0x12 */ GX_TG_TEXCOORD6,
} GXTexGenSrc;
typedef enum _GXZTexOp {
/* 0x0 */ GX_ZT_DISABLE,
/* 0x1 */ GX_ZT_ADD,
/* 0x2 */ GX_ZT_REPLACE,
/* 0x3 */ GX_MAX_ZTEXOP,
} GXZTexOp;
typedef enum _GXIndTexStageID {
/* 0x0 */ GX_INDTEXSTAGE0,
/* 0x1 */ GX_INDTEXSTAGE1,
/* 0x2 */ GX_INDTEXSTAGE2,
/* 0x3 */ GX_INDTEXSTAGE3,
/* 0x4 */ GX_MAX_INDTEXSTAGE,
} GXIndTexStageID;
typedef enum _GXIndTexScale {
/* 0x0 */ GX_ITS_1,
/* 0x1 */ GX_ITS_2,
/* 0x2 */ GX_ITS_4,
/* 0x3 */ GX_ITS_8,
/* 0x4 */ GX_ITS_16,
/* 0x5 */ GX_ITS_32,
/* 0x6 */ GX_ITS_64,
/* 0x7 */ GX_ITS_128,
/* 0x8 */ GX_ITS_256,
/* 0x9 */ GX_MAX_ITSCALE,
} GXIndTexScale;
typedef enum _GXIndTexMtxID {
/* 0x0 */ GX_ITM_OFF,
/* 0x1 */ GX_ITM_0,
/* 0x2 */ GX_ITM_1,
/* 0x3 */ GX_ITM_2,
/* 0x5 */ GX_ITM_S0 = 5,
/* 0x6 */ GX_ITM_S1,
/* 0x7 */ GX_ITM_S2,
/* 0x9 */ GX_ITM_T0 = 9,
/* 0xA */ GX_ITM_T1,
/* 0xB */ GX_ITM_T2,
} GXIndTexMtxID;
typedef enum _GXTexOffset {
/* 0x0 */ GX_TO_ZERO,
/* 0x1 */ GX_TO_SIXTEENTH,
/* 0x2 */ GX_TO_EIGHTH,
/* 0x3 */ GX_TO_FOURTH,
/* 0x4 */ GX_TO_HALF,
/* 0x5 */ GX_TO_ONE,
/* 0x6 */ GX_MAX_TEXOFFSET,
} GXTexOffset;
typedef enum _GXTevKColorID {
/* 0x0 */ GX_KCOLOR0,
/* 0x1 */ GX_KCOLOR1,
/* 0x2 */ GX_KCOLOR2,
/* 0x3 */ GX_KCOLOR3,
} GXTevKColorID;
typedef enum _GXTexCacheSize {
/* 0x0 */ GX_TEXCACHE_32K,
/* 0x1 */ GX_TEXCACHE_128K,
/* 0x2 */ GX_TEXCACHE_512K,
/* 0x3 */ GX_TEXCACHE_NONE,
} GXTexCacheSize;
extern "C" {
f32 GXGetYScaleFactor(u16 efb_height, u16 xfb_height);
u16 GXGetNumXfbLines(u32 efb_height, f32 y_scale);
void GXBegin(u8, u8, u16);
void GXLoadTexObj(_GXTexObj*, _GXTexMapID);
void GXInitTexObjLOD(_GXTexObj*, GXTexFilter, GXTexFilter, f32, f32, f32, s32, s32, GXAnisotropy);
void GXInitTexObj(_GXTexObj*, void*, u16, u16, GXTexFmt, GXTexWrapMode, GXTexWrapMode, s32);
void GXInitTlutObj(_GXTlutObj*, void*, GXTlutFmt, u16);
void GXLoadTlut(_GXTlutObj*, u32);
void GXInitTexObjCI(_GXTexObj*, void*, u16, u16, GXCITexFmt, GXTexWrapMode, GXTexWrapMode, s32,
void GXBegin(GXPrimitive, GXVtxFmt, u16);
void GXLoadTexObj(GXTexObj*, GXTexMapID);
void GXInitTexObjLOD(GXTexObj*, GXTexFilter, GXTexFilter, f32, f32, f32, GXBool, GXBool,
GXAnisotropy);
void GXInitTexObj(GXTexObj*, void*, u16, u16, GXTexFmt, GXTexWrapMode, GXTexWrapMode, GXBool);
void GXInitTlutObj(GXTlutObj*, void*, GXTlutFmt, u16);
void GXLoadTlut(GXTlutObj*, u32);
void GXInitTexObjCI(GXTexObj*, void*, u16, u16, GXCITexFmt, GXTexWrapMode, GXTexWrapMode, GXBool,
u32);
void GXSetNumChans(u32);
void GXSetNumTevStages(u32);
void GXSetNumTexGens(u32);
void GXSetTevOrder(u32, u32, u32, u32);
void GXSetChanCtrl(u32, u32, u32, u32, u32, u32, s32);
void GXSetTevOp(s32, s32);
void GXSetTevColor(s32, _GXColor);
void GXSetTevColorIn(s32, u32, u32, u32, u32);
void GXSetTevAlphaIn(s32, u32, u32, u32, u32);
void GXSetTevColorOp(s32, u32, u32, u32, u32, u32);
void GXSetTevAlphaOp(s32, u32, u32, u32, u32, u32);
void GXSetBlendMode(u32, u32, u32, u32);
void GXSetVtxAttrFmt(u32, u32, u32, u32, u32);
void GXSetNumChans(u8);
void GXSetNumTevStages(u8);
void GXSetNumTexGens(u8);
void GXSetTevOrder(GXTevStageID, GXTexCoordID, GXTexMapID, GXChannelID);
void GXSetChanCtrl(GXChannelID, GXBool, GXColorSrc, GXColorSrc, GXLightID, GXDiffuseFn, GXAttnFn);
void GXSetTevOp(GXTevStageID, GXTevMode);
void GXSetTevColor(GXTevRegID, GXColor);
void GXSetTevColorIn(GXTevStageID, GXTevColorArg, GXTevColorArg, GXTevColorArg, GXTevColorArg);
void GXSetTevAlphaIn(GXTevStageID, GXTevAlphaArg, GXTevAlphaArg, GXTevAlphaArg, GXTevAlphaArg);
void GXSetTevColorOp(GXTevStageID, GXTevOp, GXTevBias, GXTevScale, GXBool, GXTevRegID);
void GXSetTevAlphaOp(GXTevStageID, GXTevOp, GXTevBias, GXTevScale, GXBool, GXTevRegID);
void GXSetBlendMode(GXBlendMode, GXBlendFactor, GXBlendFactor, GXLogicOp);
void GXSetVtxAttrFmt(GXVtxFmt, GXAttr, GXCompCnt, GXCompType, u32);
void GXClearVtxDesc();
void GXSetVtxDesc(u32, u32);
void GXSetVtxDesc(GXAttr, GXAttrType);
typedef void (*GXDrawDoneCallback)(void);
void GXSetDrawDoneCallback(GXDrawDoneCallback);
void GXDrawDone(void);
@ -469,48 +746,55 @@ struct OSThread;
OSThread* GXSetCurrentGXThread(void);
OSThread* GXGetCurrentGXThread(void);
// Below needs proper symbols
void GXClearVtxDesc(void);
void GXCopyTex(void);
void GXGetProjectionv(void);
u32 GXGetTexBufferSize(u16 width, u16 height, u32 format, s32 is_mip_map, u8 max_lod);
void GXGetViewportv(void);
void GXInitLightColor(void);
void GXInitLightDir(void);
void GXInitLightDistAttn(void);
void GXInitLightPos(void);
void GXInitLightSpot(void);
void GXCopyTex(void*, GXBool);
void GXGetProjectionv(f32*);
u32 GXGetTexBufferSize(u16 width, u16 height, u32 format, GXBool is_mip_map, u8 max_lod);
void GXGetViewportv(f32*);
void GXInitLightColor(GXLightObj*, GXColor);
void GXInitLightDir(GXLightObj*, f32, f32, f32);
void GXInitLightDistAttn(GXLightObj*, f32, f32, GXDistAttnFn);
void GXInitLightPos(GXLightObj*, f32, f32, f32);
void GXInitLightSpot(GXLightObj*, f32, GXSpotFn);
void GXInvalidateTexAll(void);
void GXLoadLightObjImm(void);
void GXLoadPosMtxImm(void);
void GXLoadTexMtxImm(void);
void GXLoadLightObjImm(GXLightObj*, GXLightID);
void GXLoadPosMtxImm(Mtx, u32);
void GXLoadTexMtxImm(Mtx, u32, GXTexMtxType);
void GXPixModeSync(void);
void GXProject(void);
void GXSetAlphaCompare(void);
void GXSetAlphaUpdate(void);
void GXSetChanMatColor(void);
void GXSetClipMode(void);
void GXSetCoPlanar(void);
void GXSetCopyFilter(void);
void GXSetCullMode(void);
void GXSetCurrentMtx(void);
void GXSetDither(void);
void GXSetFog(void);
void GXSetFogRangeAdj(void);
void GXSetNumIndStages(void);
void GXSetProjection(void);
void GXSetScissor(void);
void GXSetTevColorS10(void);
void GXSetTevKAlphaSel(void);
void GXSetTevSwapMode(void);
void GXSetTevSwapModeTable(void);
void GXSetTexCoordGen2(void);
void GXSetTexCopyDst(void);
void GXSetTexCopySrc(void);
void GXSetViewport(void);
void GXSetZCompLoc(void);
void GXSetZMode(void);
void GXSetZTexture(void);
void GXProject(f32, f32, f32, Mtx, f32*, f32*, f32*, f32*, f32*);
void GXSetAlphaCompare(GXCompare, u8, GXAlphaOp, GXCompare, u8);
void GXSetAlphaUpdate(GXBool);
void GXSetChanMatColor(GXChannelID, GXColor);
void GXSetClipMode(GXBool);
void GXSetCoPlanar(GXBool);
void GXSetCopyFilter(GXBool, u8[12][2], GXBool, u8[7]);
void GXSetCullMode(GXCullMode);
void GXSetCurrentMtx(u32);
void GXSetDither(GXBool);
void GXSetFog(GXFogType, f32, f32, f32, f32, GXColor);
void GXSetFogRangeAdj(GXBool, u16, GXFogAdjTable*);
void GXSetNumIndStages(u8);
void GXSetProjection(Mtx44, GXProjectionType);
void GXSetScissor(u32, u32, u32, u32);
void GXSetTevColorS10(GXTevRegID, GXColorS10);
void GXSetTevKAlphaSel(GXTevStageID, GXTevKAlphaSel);
void GXSetTevSwapMode(GXTevStageID, GXTevSwapSel);
void GXSetTevSwapModeTable(GXTevSwapSel, GXTevColor, GXTevColor, GXTevColor, GXTevColor);
void GXSetTexCoordGen2(GXTexCoordID, GXTexGenType, GXTexGenSrc, u32, GXBool, u32);
void GXSetTexCopyDst(u16, u16, GXTexFmt, GXBool);
void GXSetTexCopySrc(u16, u16, u16, u16);
void GXSetViewport(f32, f32, f32, f32, f32, f32);
void GXSetZCompLoc(GXBool);
void GXSetZMode(GXBool, GXCompare, GXBool);
void GXSetZTexture(GXZTexOp, GXZTexFmt, u32);
void GXClearVtxDesc(void);
void GXSetLineWidth(u8, GXTexOffset);
void GXSetTevDirect(GXTevStageID);
void GXSetTevKColor(GXTevKColorID, GXColor);
void GXSetTevKColorSel(GXTevStageID, GXTevKColorSel);
void GXGetScissor(u32*, u32*, u32*, u32*);
void GXSetIndTexMtx(GXIndTexMtxID, Mtx23, s8);
void GXSetIndTexCoordScale(GXIndTexStageID, GXIndTexScale, GXIndTexScale);
void GXSetIndTexOrder(GXIndTexStageID, GXTexCoordID, GXTexMapID);
};
#endif

View File

@ -3,18 +3,4 @@
#include "dolphin/types.h"
typedef struct _GXColor {
u8 r;
u8 g;
u8 b;
u8 a;
} GXColor;
typedef struct _GXColorS10 {
s16 r;
s16 g;
s16 b;
s16 a;
} GXColorS10;
#endif /* GXTEXTURE_H */

View File

@ -1,27 +0,0 @@
#ifndef MSL_STRING_H_
#define MSL_STRING_H_
#include "Runtime.PPCEABI.H/__va_arg.h"
#include "dolphin/types.h"
// TODO: move to MSL_C.PPCEABI.bare.H/
extern "C" {
void memcpy(void*, const void*, s32);
void* memset(void* dest, int ch, u32 count);
char* strrchr(const char* s, int c);
char* strchr(const char* s, int c);
int strncmp(const char* s1, const char* s2, u32 n);
int strcmp(const char* s1, const char* s2);
int stricmp(const char*, const char*);
char* strcat(char* dest, const char* source);
char* strncpy(char* dest, const char* source, u32 n);
char* strcpy(char* dest, const char* source);
u32 strlen(const char* s);
int tolower(int);
int sprintf(char*, const char*, ...);
int printf(const char*, ...);
int snprintf(char*, u32, const char*, ...);
size_t vsnprintf(char* buffer, size_t buffer_size, const char* format, va_list args);
}
#endif

View File

@ -11,27 +11,12 @@
// Types:
//
struct _GXTlutFmt {};
struct _GXTlut {};
struct JUTTransparency {};
struct JKRArchive {};
struct JUTResReference {
/* 802DE120 */ void getResource(void const*, u32, JKRArchive*);
};
struct JUTPalette {
/* 802DE91C */ void storeTLUT(_GXTlut, _GXTlutFmt, JUTTransparency, u16, void*);
};
struct JUTNameTab {
/* 802DEA58 */ void getIndex(char const*) const;
/* 802DEAF8 */ void getName(u16) const;
};
struct J3DTransformInfo {};
struct J3DTextureSRTInfo {};
@ -406,7 +391,8 @@ SECTION_DATA extern void* __vt__16J2DAnmTexPattern[4] = {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DAnmTexPattern::~J2DAnmTexPattern() {
extern "C" asm void __dt__16J2DAnmTexPatternFv() {
// asm J2DAnmTexPattern::~J2DAnmTexPattern() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DAnimation/__dt__16J2DAnmTexPatternFv.s"
}
@ -434,7 +420,8 @@ SECTION_DATA extern void* __vt__17J2DAnmVtxColorKey[5] = {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DAnmVtxColorKey::~J2DAnmVtxColorKey() {
extern "C" asm void __dt__17J2DAnmVtxColorKeyFv() {
// asm J2DAnmVtxColorKey::~J2DAnmVtxColorKey() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DAnimation/__dt__17J2DAnmVtxColorKeyFv.s"
}
@ -454,7 +441,8 @@ SECTION_DATA extern void* __vt__18J2DAnmVtxColorFull[5] = {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DAnmVtxColorFull::~J2DAnmVtxColorFull() {
extern "C" asm void __dt__18J2DAnmVtxColorFullFv() {
// asm J2DAnmVtxColorFull::~J2DAnmVtxColorFull() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DAnimation/__dt__18J2DAnmVtxColorFullFv.s"
}
@ -492,7 +480,8 @@ SECTION_DATA extern void* __vt__11J2DAnmColor[5] = {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DAnmColorFull::~J2DAnmColorFull() {
extern "C" asm void __dt__15J2DAnmColorFullFv() {
// asm J2DAnmColorFull::~J2DAnmColorFull() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DAnimation/__dt__15J2DAnmColorFullFv.s"
}
@ -533,7 +522,8 @@ SECTION_DATA extern void* __vt__19J2DAnmTransformFull[5] = {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DAnmTransformFull::~J2DAnmTransformFull() {
extern "C" asm void __dt__19J2DAnmTransformFullFv() {
// asm J2DAnmTransformFull::~J2DAnmTransformFull() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DAnimation/__dt__19J2DAnmTransformFullFv.s"
}

View File

@ -4,6 +4,7 @@
//
#include "JSystem/J2DGraph/J2DAnmLoader.h"
#include "JSystem/J2DGraph/J2DAnimation.h"
#include "dol2asm.h"
#include "dolphin/types.h"
@ -11,15 +12,6 @@
// Types:
//
struct _GXColor {};
struct ResNTAB {};
struct JUTNameTab {
/* 802DE9A0 */ JUTNameTab();
/* 802DEA1C */ void setResource(ResNTAB const*);
};
struct J3DAnmVtxColorKeyData {};
struct J3DAnmVtxColorFullData {};
@ -42,79 +34,6 @@ struct J3DAnmColorFullData {};
struct J2DScreen {};
struct J2DAnmVtxColorKey {};
struct J2DAnmVtxColorFull {};
struct J2DAnmVtxColor {
/* 8030363C */ void getColor(u8, u16, _GXColor*) const;
/* 8030A358 */ ~J2DAnmVtxColor();
};
struct J2DAnmVisibilityFull {
/* 8030A3B4 */ ~J2DAnmVisibilityFull();
};
struct J2DAnmTransformKey {};
struct J2DAnmTransformFull {};
struct J2DAnmTextureSRTKey {};
struct J2DAnmTexPattern {};
struct J2DAnmTevRegKey {};
struct J2DAnmLoaderDataBase {
/* 80308A6C */ void load(void const*);
};
struct J2DAnmLoader {
/* 8030A410 */ ~J2DAnmLoader();
};
struct J2DAnmBase {
/* 800569B0 */ void searchUpdateMaterialID(J2DScreen*);
};
struct J2DAnmColorKey {};
struct J2DAnmKeyLoader_v15 {
/* 80309290 */ J2DAnmKeyLoader_v15();
/* 803092AC */ ~J2DAnmKeyLoader_v15();
/* 80309308 */ void load(void const*);
/* 80309414 */ void setResource(J2DAnmBase*, void const*);
/* 80309570 */ void readAnmTransform(J3DAnmTransformKeyData const*);
/* 80309598 */ void setAnmTransform(J2DAnmTransformKey*, J3DAnmTransformKeyData const*);
/* 80309634 */ void readAnmTextureSRT(J3DAnmTextureSRTKeyData const*);
/* 8030965C */ void setAnmTextureSRT(J2DAnmTextureSRTKey*, J3DAnmTextureSRTKeyData const*);
/* 80309848 */ void readAnmColor(J3DAnmColorKeyData const*);
/* 80309870 */ void setAnmColor(J2DAnmColorKey*, J3DAnmColorKeyData const*);
/* 8030995C */ void readAnmVtxColor(J3DAnmVtxColorKeyData const*);
/* 80309984 */ void setAnmVtxColor(J2DAnmVtxColorKey*, J3DAnmVtxColorKeyData const*);
/* 80309FDC */ void readAnmTevReg(J3DAnmTevRegKeyData const*);
/* 8030A004 */ void setAnmTevReg(J2DAnmTevRegKey*, J3DAnmTevRegKeyData const*);
};
struct J2DAnmColorFull {};
struct J2DAnmFullLoader_v15 {
/* 80309A80 */ void load(void const*);
/* 80309B8C */ void setResource(J2DAnmBase*, void const*);
/* 80309CE8 */ J2DAnmFullLoader_v15();
/* 80309D04 */ ~J2DAnmFullLoader_v15();
/* 80309D60 */ void readAnmTransform(J3DAnmTransformFullData const*);
/* 80309D88 */ void setAnmTransform(J2DAnmTransformFull*, J3DAnmTransformFullData const*);
/* 80309E1C */ void readAnmColor(J3DAnmColorFullData const*);
/* 80309E44 */ void setAnmColor(J2DAnmColorFull*, J3DAnmColorFullData const*);
/* 80309F10 */ void readAnmTexPattern(J3DAnmTexPatternFullData const*);
/* 80309F38 */ void setAnmTexPattern(J2DAnmTexPattern*, J3DAnmTexPatternFullData const*);
/* 8030A190 */ void readAnmVisibility(J3DAnmVisibilityFullData const*);
/* 8030A1B8 */ void setAnmVisibility(J2DAnmVisibilityFull*, J3DAnmVisibilityFullData const*);
/* 8030A234 */ void readAnmVtxColor(J3DAnmVtxColorFullData const*);
/* 8030A25C */ void setAnmVtxColor(J2DAnmVtxColorFull*, J3DAnmVtxColorFullData const*);
};
//
// Forward References:
//
@ -288,7 +207,8 @@ asm J2DAnmKeyLoader_v15::~J2DAnmKeyLoader_v15() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DAnmKeyLoader_v15::load(void const* param_0) {
extern "C" asm void load__19J2DAnmKeyLoader_v15FPCv() {
// asm void J2DAnmKeyLoader_v15::load(void const* param_0) {
nofralloc
#include "asm/JSystem/J2DGraph/J2DAnmLoader/load__19J2DAnmKeyLoader_v15FPCv.s"
}
@ -401,7 +321,8 @@ asm void J2DAnmKeyLoader_v15::setAnmVtxColor(J2DAnmVtxColorKey* param_0,
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DAnmFullLoader_v15::load(void const* param_0) {
extern "C" asm void load__20J2DAnmFullLoader_v15FPCv() {
// asm void J2DAnmFullLoader_v15::load(void const* param_0) {
nofralloc
#include "asm/JSystem/J2DGraph/J2DAnmLoader/load__20J2DAnmFullLoader_v15FPCv.s"
}

View File

@ -34,30 +34,6 @@ extern "C" void setLookat__14J2DGrafContextFv();
//
extern "C" void __dl__FPv();
extern "C" void GXSetVtxDesc();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetVtxAttrFmt();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXSetNumTexGens();
extern "C" void GXBegin();
extern "C" void GXSetLineWidth();
extern "C" void GXSetCullMode();
extern "C" void GXSetNumChans();
extern "C" void GXSetChanCtrl();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevOp();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetTevOrder();
extern "C" void GXSetNumTevStages();
extern "C" void GXSetBlendMode();
extern "C" void GXSetZMode();
extern "C" void GXSetZCompLoc();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void GXLoadTexMtxImm();
extern "C" void GXSetViewport(f32, f32, f32, f32, f32, f32);
extern "C" void GXSetScissor();
extern "C" void __cvt_fp2unsigned();
extern "C" void _savegpr_29();
extern "C" void _restgpr_29();

View File

@ -7,415 +7,6 @@
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct _GXTlut {};
struct _GXTexMapID {};
struct ResTLUT {};
struct ResTIMG {};
struct ResFONT {};
struct JUtility {
struct TColor {
/* 80193960 */ TColor();
};
};
struct JUTPalette {
/* 802DE890 */ void storeTLUT(_GXTlut, ResTLUT*);
};
struct JUTTexture {
/* 802DE234 */ ~JUTTexture();
/* 802DE2A8 */ void storeTIMG(ResTIMG const*, u8);
/* 802DE44C */ void storeTIMG(ResTIMG const*, JUTPalette*);
/* 802DE5B0 */ void attachPalette(JUTPalette*);
/* 802DE840 */ void load(_GXTexMapID);
};
struct JKRHeap {};
struct JUTResFont {
/* 802DEF94 */ JUTResFont(ResFONT const*, JKRHeap*);
};
struct JUTFont {};
struct J2DTexMtx {
/* 802E9C90 */ void load(u32);
/* 802E9CC4 */ void calc();
};
struct J2DTexGenBlock {
/* 802EB510 */ void initialize();
/* 802EB570 */ void setGX();
/* 802EB620 */ ~J2DTexGenBlock();
/* 802EB6A4 */ void setTexMtx(u32, J2DTexMtx&);
/* 802EB7E0 */ void getTexMtx(u32, J2DTexMtx&);
};
struct J2DTevSwapModeTable {
/* 802F1934 */ J2DTevSwapModeTable();
};
struct J2DTevSwapModeInfo {};
struct J2DTevStageInfo {};
struct J2DTevStage {
/* 802F1940 */ J2DTevStage();
/* 802F19A8 */ void setTevStageInfo(J2DTevStageInfo const&);
};
struct J2DTevOrder {
/* 802F1B70 */ J2DTevOrder();
};
struct J2DIndTevStage {
/* 802EA044 */ void load(u8);
/* 802F18A0 */ J2DIndTevStage();
};
struct J2DGXColorS10 {
/* 802F1B90 */ J2DGXColorS10();
};
struct J2DTevBlock8 {
/* 802EED64 */ J2DTevBlock8();
/* 802EEE8C */ ~J2DTevBlock8();
/* 802EEF6C */ void initialize();
/* 802EF1E0 */ void prepareTexture(u8);
/* 802EF2B0 */ void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802F21C4 */ void insertTexture(u32, ResTIMG const*);
/* 802EF67C */ void insertTexture(u32, JUTTexture*);
/* 802EF80C */ void setTexture(u32, ResTIMG const*);
/* 802EFA98 */ void setTexture(u32, JUTTexture*);
/* 802EFB48 */ void removeTexture(u32);
/* 802EFC40 */ void setFont(ResFONT*);
/* 802EFCEC */ void setFont(JUTFont*);
/* 802EFD68 */ void setPalette(u32, ResTLUT const*);
/* 802EFE40 */ void shiftDeleteFlag(u8, bool);
/* 802EFEAC */ void setGX();
/* 802F019C */ void loadTexture(_GXTexMapID, u32);
/* 802F1FB8 */ void getType();
/* 802F1FC4 */ s32 getMaxStage();
/* 802F1FCC */ void setTexNo(u32, u16);
/* 802F1FDC */ void getTexNo(u32) const;
/* 802F1FEC */ void setFontNo(u16);
/* 802F1FF4 */ void getFontNo() const;
/* 802F1FFC */ void setTevOrder(u32, J2DTevOrder);
/* 802F2020 */ void getTevOrder(u32);
/* 802F2034 */ void setTevColor(u32, J2DGXColorS10);
/* 802F2060 */ void getTevColor(u32);
/* 802F2074 */ void setTevKColor(u32, JUtility::TColor);
/* 802F20A0 */ void getTevKColor(u32);
/* 802F20B4 */ void setTevKColorSel(u32, u8);
/* 802F20C0 */ void getTevKColorSel(u32);
/* 802F20CC */ void setTevKAlphaSel(u32, u8);
/* 802F20D8 */ void getTevKAlphaSel(u32);
/* 802F20E4 */ void setTevStageNum(u8);
/* 802F20EC */ void getTevStageNum() const;
/* 802F20F4 */ void setTevStage(u32, J2DTevStage);
/* 802F2130 */ void getTevStage(u32);
/* 802F2144 */ void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F217C */ void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F218C */ void getTevSwapModeTable(u32);
/* 802F219C */ void setIndTevStage(u32, J2DIndTevStage);
/* 802F21B0 */ void getIndTevStage(u32);
/* 802F21F4 */ void getTexture(u32);
/* 802F2214 */ void getPalette(u32);
/* 802F2234 */ void getFont();
/* 802F223C */ void setUndeleteFlag(u8);
/* 802F224C */ void setFontUndeleteFlag();
};
struct J2DTevBlock4 {
/* 802ED8BC */ J2DTevBlock4();
/* 802ED9E4 */ ~J2DTevBlock4();
/* 802EDAC4 */ void initialize();
/* 802EDD34 */ void prepareTexture(u8);
/* 802EDE04 */ void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802EE1D4 */ void insertTexture(u32, JUTTexture*);
/* 802F2464 */ void insertTexture(u32, ResTIMG const*);
/* 802EE364 */ void setTexture(u32, ResTIMG const*);
/* 802EE5F0 */ void setTexture(u32, JUTTexture*);
/* 802EE6A0 */ void removeTexture(u32);
/* 802EE798 */ void setFont(ResFONT*);
/* 802EE84C */ void setFont(JUTFont*);
/* 802EE8CC */ void setPalette(u32, ResTLUT const*);
/* 802EE9A4 */ void shiftDeleteFlag(u8, bool);
/* 802EEA2C */ void setGX();
/* 802EED1C */ void loadTexture(_GXTexMapID, u32);
/* 802F2258 */ void getType();
/* 802F2264 */ s32 getMaxStage();
/* 802F226C */ void setTexNo(u32, u16);
/* 802F227C */ void getTexNo(u32) const;
/* 802F228C */ void setFontNo(u16);
/* 802F2294 */ void getFontNo() const;
/* 802F229C */ void setTevOrder(u32, J2DTevOrder);
/* 802F22C0 */ void getTevOrder(u32);
/* 802F22D4 */ void setTevColor(u32, J2DGXColorS10);
/* 802F2300 */ void getTevColor(u32);
/* 802F2314 */ void setTevKColor(u32, JUtility::TColor);
/* 802F2340 */ void getTevKColor(u32);
/* 802F2354 */ void setTevKColorSel(u32, u8);
/* 802F2360 */ void getTevKColorSel(u32);
/* 802F236C */ void setTevKAlphaSel(u32, u8);
/* 802F2378 */ void getTevKAlphaSel(u32);
/* 802F2384 */ void setTevStageNum(u8);
/* 802F238C */ void getTevStageNum() const;
/* 802F2394 */ void setTevStage(u32, J2DTevStage);
/* 802F23D0 */ void getTevStage(u32);
/* 802F23E4 */ void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F241C */ void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F242C */ void getTevSwapModeTable(u32);
/* 802F243C */ void setIndTevStage(u32, J2DIndTevStage);
/* 802F2450 */ void getIndTevStage(u32);
/* 802F2494 */ void getTexture(u32);
/* 802F24B4 */ void getPalette(u32);
/* 802F24D4 */ void getFont();
/* 802F24DC */ void setUndeleteFlag(u8);
/* 802F24EC */ void setFontUndeleteFlag();
};
struct J2DTevBlock2 {
/* 802EC5B8 */ J2DTevBlock2();
/* 802EC6C8 */ ~J2DTevBlock2();
/* 802EC7A0 */ void initialize();
/* 802ECA18 */ void prepareTexture(u8);
/* 802F2708 */ void insertTexture(u32, ResTIMG const*);
/* 802ECAE8 */ void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802ECDE8 */ void insertTexture(u32, JUTTexture*);
/* 802ECF48 */ void setTexture(u32, ResTIMG const*);
/* 802ED16C */ void setTexture(u32, JUTTexture*);
/* 802ED21C */ void removeTexture(u32);
/* 802ED3A4 */ void setFont(JUTFont*);
/* 802ED2F0 */ void setFont(ResFONT*);
/* 802ED424 */ void setPalette(u32, ResTLUT const*);
/* 802ED4FC */ void shiftDeleteFlag(u8, bool);
/* 802ED584 */ void setGX();
/* 802ED874 */ void loadTexture(_GXTexMapID, u32);
/* 802F24FC */ void getType();
/* 802F2508 */ s32 getMaxStage();
/* 802F2510 */ void setTexNo(u32, u16);
/* 802F2520 */ void getTexNo(u32) const;
/* 802F2530 */ void setFontNo(u16);
/* 802F2538 */ void getFontNo() const;
/* 802F2540 */ void setTevOrder(u32, J2DTevOrder);
/* 802F2564 */ void getTevOrder(u32);
/* 802F2578 */ void setTevColor(u32, J2DGXColorS10);
/* 802F25A4 */ void getTevColor(u32);
/* 802F25B8 */ void setTevKColor(u32, JUtility::TColor);
/* 802F25E4 */ void getTevKColor(u32);
/* 802F25F8 */ void setTevKColorSel(u32, u8);
/* 802F2604 */ void getTevKColorSel(u32);
/* 802F2610 */ void setTevKAlphaSel(u32, u8);
/* 802F261C */ void getTevKAlphaSel(u32);
/* 802F2628 */ void setTevStageNum(u8);
/* 802F2630 */ void getTevStageNum() const;
/* 802F2638 */ void setTevStage(u32, J2DTevStage);
/* 802F2674 */ void getTevStage(u32);
/* 802F2688 */ void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F26C0 */ void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F26D0 */ void getTevSwapModeTable(u32);
/* 802F26E0 */ void setIndTevStage(u32, J2DIndTevStage);
/* 802F26F4 */ void getIndTevStage(u32);
/* 802F2738 */ void getTexture(u32);
/* 802F2758 */ void getPalette(u32);
/* 802F2778 */ void getFont();
/* 802F2780 */ void setUndeleteFlag(u8);
/* 802F2790 */ void setFontUndeleteFlag();
};
struct J2DTevBlock16 {
/* 802F01E4 */ J2DTevBlock16();
/* 802F030C */ ~J2DTevBlock16();
/* 802F03EC */ void initialize();
/* 802F0660 */ void prepareTexture(u8);
/* 802F1F24 */ void insertTexture(u32, ResTIMG const*);
/* 802F0730 */ void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802F0AFC */ void insertTexture(u32, JUTTexture*);
/* 802F0C8C */ void setTexture(u32, ResTIMG const*);
/* 802F0F18 */ void setTexture(u32, JUTTexture*);
/* 802F0FC8 */ void removeTexture(u32);
/* 802F10C0 */ void setFont(ResFONT*);
/* 802F116C */ void setFont(JUTFont*);
/* 802F11E8 */ void setPalette(u32, ResTLUT const*);
/* 802F12C0 */ void shiftDeleteFlag(u8, bool);
/* 802F132C */ void setGX();
/* 802F161C */ void loadTexture(_GXTexMapID, u32);
/* 802F1D18 */ void getType();
/* 802F1D24 */ s32 getMaxStage();
/* 802F1D2C */ void setTexNo(u32, u16);
/* 802F1D3C */ void getTexNo(u32) const;
/* 802F1D4C */ void setFontNo(u16);
/* 802F1D54 */ void getFontNo() const;
/* 802F1D5C */ void setTevOrder(u32, J2DTevOrder);
/* 802F1D80 */ void getTevOrder(u32);
/* 802F1D94 */ void setTevColor(u32, J2DGXColorS10);
/* 802F1DC0 */ void getTevColor(u32);
/* 802F1DD4 */ void setTevKColor(u32, JUtility::TColor);
/* 802F1E00 */ void getTevKColor(u32);
/* 802F1E14 */ void setTevKColorSel(u32, u8);
/* 802F1E20 */ void getTevKColorSel(u32);
/* 802F1E2C */ void setTevKAlphaSel(u32, u8);
/* 802F1E38 */ void getTevKAlphaSel(u32);
/* 802F1E44 */ void setTevStageNum(u8);
/* 802F1E4C */ void getTevStageNum() const;
/* 802F1E54 */ void setTevStage(u32, J2DTevStage);
/* 802F1E90 */ void getTevStage(u32);
/* 802F1EA4 */ void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F1EDC */ void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F1EEC */ void getTevSwapModeTable(u32);
/* 802F1EFC */ void setIndTevStage(u32, J2DIndTevStage);
/* 802F1F10 */ void getIndTevStage(u32);
/* 802F1F54 */ void getTexture(u32);
/* 802F1F74 */ void getPalette(u32);
/* 802F1F94 */ void getFont();
/* 802F1F9C */ void setUndeleteFlag(u8);
/* 802F1FAC */ void setFontUndeleteFlag();
};
struct J2DTevBlock1 {
/* 802EB88C */ J2DTevBlock1();
/* 802EB998 */ ~J2DTevBlock1();
/* 802EBA50 */ void initialize();
/* 802EBC0C */ void prepareTexture(u8);
/* 802F29A8 */ void insertTexture(u32, ResTIMG const*);
/* 802EBCC0 */ void insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802EBDE4 */ void insertTexture(u32, JUTTexture*);
/* 802EBE8C */ void setTexture(u32, ResTIMG const*);
/* 802EC01C */ void setTexture(u32, JUTTexture*);
/* 802EC0A8 */ void removeTexture(u32);
/* 802EC124 */ void setFont(ResFONT*);
/* 802EC1D8 */ void setFont(JUTFont*);
/* 802EC258 */ void setPalette(u32, ResTLUT const*);
/* 802EC318 */ void shiftDeleteFlag(u8, bool);
/* 802EC328 */ void setGX();
/* 802EC570 */ void loadTexture(_GXTexMapID, u32);
/* 802F27A0 */ void getType();
/* 802F27AC */ bool getMaxStage();
/* 802F27B4 */ void setTexNo(u32, u16);
/* 802F27C4 */ void getTexNo(u32) const;
/* 802F27D4 */ void setFontNo(u16);
/* 802F27DC */ void getFontNo() const;
/* 802F27E4 */ void setTevOrder(u32, J2DTevOrder);
/* 802F2808 */ void getTevOrder(u32);
/* 802F281C */ void setTevColor(u32, J2DGXColorS10);
/* 802F2848 */ void getTevColor(u32);
/* 802F285C */ void setTevKColor(u32, JUtility::TColor);
/* 802F2888 */ void getTevKColor(u32);
/* 802F289C */ void setTevKColorSel(u32, u8);
/* 802F28A8 */ void getTevKColorSel(u32);
/* 802F28B4 */ void setTevKAlphaSel(u32, u8);
/* 802F28C0 */ void getTevKAlphaSel(u32);
/* 802F28CC */ void setTevStageNum(u8);
/* 802F28D0 */ bool getTevStageNum() const;
/* 802F28D8 */ void setTevStage(u32, J2DTevStage);
/* 802F2914 */ void getTevStage(u32);
/* 802F2928 */ void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F2960 */ void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F2970 */ void getTevSwapModeTable(u32);
/* 802F2980 */ void setIndTevStage(u32, J2DIndTevStage);
/* 802F2994 */ void getIndTevStage(u32);
/* 802F29D8 */ void getTexture(u32);
/* 802F29F8 */ void getPalette(u32);
/* 802F2A18 */ void getFont();
/* 802F2A20 */ void setUndeleteFlag(u8);
/* 802F2A30 */ void setFontUndeleteFlag();
};
struct J2DTevBlock {
/* 802EA12C */ bool getTevSwapModeTable(u32);
/* 802EA134 */ bool getTevStage(u32);
/* 802EA13C */ bool getTevColor(u32);
/* 802EA144 */ bool getTevOrder(u32);
/* 802EA14C */ bool getTevKAlphaSel(u32);
/* 802EA154 */ bool getTevKColorSel(u32);
/* 802EA15C */ bool getTevKColor(u32);
/* 802EA164 */ void getFontNo() const;
/* 802EA170 */ void getTexNo(u32) const;
/* 802EA17C */ bool getTevStageNum() const;
/* 802EA184 */ bool getIndTevStage(u32);
/* 802EB184 */ ~J2DTevBlock();
/* 802EB1D0 */ void setGX();
/* 802EB1D4 */ void setTevKColor(u32, JUtility::TColor);
/* 802EB1D8 */ void setTevColor(u32, J2DGXColorS10);
/* 802EB1DC */ void setTexNo(u32, u16);
/* 802EB87C */ bool getTexture(u32);
/* 802EB884 */ bool getPalette(u32);
/* 802F2A40 */ void initialize();
/* 802F2A44 */ void loadTexture(_GXTexMapID, u32);
/* 802F2A48 */ void setFontNo(u16);
/* 802F2A4C */ void setTevOrder(u32, J2DTevOrder);
/* 802F2A50 */ void setTevKColorSel(u32, u8);
/* 802F2A54 */ void setTevKAlphaSel(u32, u8);
/* 802F2A58 */ void setTevStageNum(u8);
/* 802F2A5C */ void setTevStage(u32, J2DTevStage);
/* 802F2A60 */ void setTevSwapModeInfo(u32, J2DTevSwapModeInfo);
/* 802F2A64 */ void setTevSwapModeTable(u32, J2DTevSwapModeTable);
/* 802F2A68 */ void setIndTevStage(u32, J2DIndTevStage);
/* 802F2A6C */ bool insertTexture(u32, JUTTexture*);
/* 802F2A74 */ bool insertTexture(u32, ResTIMG const*, JUTPalette*);
/* 802F2A7C */ bool insertTexture(u32, ResTIMG const*);
/* 802F2A84 */ bool setTexture(u32, JUTTexture*);
/* 802F2A8C */ bool setTexture(u32, ResTIMG const*);
/* 802F2A94 */ bool removeTexture(u32);
/* 802F2A9C */ bool setFont(JUTFont*);
/* 802F2AA4 */ bool setFont(ResFONT*);
/* 802F2AAC */ bool setPalette(u32, ResTLUT const*);
/* 802F2AB4 */ bool prepareTexture(u8);
/* 802F2ABC */ bool getFont();
/* 802F2AC4 */ void shiftDeleteFlag(u8, bool);
/* 802F2AC8 */ void setUndeleteFlag(u8);
/* 802F2ACC */ void setFontUndeleteFlag();
};
struct J2DPEBlock {
/* 802F17FC */ void initialize();
/* 802F1840 */ void setGX();
};
struct J2DIndTexOrder {
/* 802EA0FC */ void load(u8);
};
struct J2DIndTexMtx {
/* 802EA098 */ void load(u8);
/* 802EB2E4 */ ~J2DIndTexMtx();
};
struct J2DIndTexCoordScale {
/* 802EA0CC */ void load(u8);
/* 802EB290 */ ~J2DIndTexCoordScale();
};
struct J2DIndBlockFull {
/* 802F1664 */ void initialize();
/* 802F1730 */ void setGX();
/* 802F1B94 */ void getType();
/* 802F1BA0 */ void setIndTexStageNum(u8);
/* 802F1BA8 */ void getIndTexStageNum() const;
/* 802F1BB0 */ void setIndTexOrder(u32, J2DIndTexOrder);
/* 802F1BCC */ void getIndTexOrder(u32);
/* 802F1BE0 */ void setIndTexMtx(u32, J2DIndTexMtx);
/* 802F1C38 */ void getIndTexMtx(u32);
/* 802F1C4C */ void setIndTexCoordScale(u32, J2DIndTexCoordScale);
/* 802F1C68 */ void getIndTexCoordScale(u32);
/* 802F1C7C */ ~J2DIndBlockFull();
};
struct J2DColorBlock {
/* 802EB394 */ void initialize();
/* 802EB424 */ void setGX();
};
//
// Forward References:
//
@ -743,28 +334,6 @@ extern "C" void setTevColor__11J2DTevBlockFUl13J2DGXColorS10();
extern "C" void setTexNo__11J2DTevBlockFUlUs();
extern "C" void __dt__19J2DIndTexCoordScaleFv();
extern "C" void __dt__12J2DIndTexMtxFv();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXSetNumTexGens();
extern "C" void GXSetCullMode();
extern "C" void GXSetChanMatColor();
extern "C" void GXSetNumChans();
extern "C" void GXSetChanCtrl();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevColorIn();
extern "C" void GXSetTevAlphaIn();
extern "C" void GXSetTevColorOp();
extern "C" void GXSetTevAlphaOp();
extern "C" void GXSetTevColorS10();
extern "C" void GXSetTevKColor();
extern "C" void GXSetTevKColorSel();
extern "C" void GXSetTevKAlphaSel();
extern "C" void GXSetTevSwapMode();
extern "C" void GXSetTevSwapModeTable();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetTevOrder();
extern "C" void GXSetNumTevStages();
extern "C" void GXSetBlendMode();
extern "C" void GXSetDither();
extern "C" void __destroy_arr();
extern "C" void __construct_array();
extern "C" void _savegpr_25();
@ -1245,7 +814,8 @@ asm J2DTevBlock1::~J2DTevBlock1() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DTevBlock1::initialize() {
extern "C" asm void initialize__12J2DTevBlock1Fv() {
// asm void J2DTevBlock1::initialize() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__12J2DTevBlock1Fv.s"
}
@ -1403,7 +973,8 @@ asm J2DTevBlock2::~J2DTevBlock2() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DTevBlock2::initialize() {
extern "C" asm void initialize__12J2DTevBlock2Fv() {
// asm void J2DTevBlock2::initialize() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__12J2DTevBlock2Fv.s"
}
@ -1561,7 +1132,8 @@ asm J2DTevBlock4::~J2DTevBlock4() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DTevBlock4::initialize() {
extern "C" asm void initialize__12J2DTevBlock4Fv() {
// asm void J2DTevBlock4::initialize() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__12J2DTevBlock4Fv.s"
}
@ -1719,7 +1291,8 @@ asm J2DTevBlock8::~J2DTevBlock8() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DTevBlock8::initialize() {
extern "C" asm void initialize__12J2DTevBlock8Fv() {
// asm void J2DTevBlock8::initialize() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__12J2DTevBlock8Fv.s"
}
@ -1877,7 +1450,8 @@ asm J2DTevBlock16::~J2DTevBlock16() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DTevBlock16::initialize() {
extern "C" asm void initialize__13J2DTevBlock16Fv() {
// asm void J2DTevBlock16::initialize() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__13J2DTevBlock16Fv.s"
}
@ -2015,7 +1589,8 @@ asm void J2DTevBlock16::loadTexture(_GXTexMapID param_0, u32 param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DIndBlockFull::initialize() {
extern "C" asm void initialize__15J2DIndBlockFullFv() {
// asm void J2DIndBlockFull::initialize() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DMatBlock/initialize__15J2DIndBlockFullFv.s"
}
@ -3453,8 +3028,8 @@ asm void J2DTevBlock1::getType() {
#pragma pop
/* 802F27AC-802F27B4 2ED0EC 0008+00 1/0 0/0 0/0 .text getMaxStage__12J2DTevBlock1Fv */
bool J2DTevBlock1::getMaxStage() {
return true;
s32 J2DTevBlock1::getMaxStage() {
return 1;
}
/* 802F27B4-802F27C4 2ED0F4 0010+00 1/0 0/0 0/0 .text setTexNo__12J2DTevBlock1FUlUs */

View File

@ -11,117 +11,8 @@
// Types:
//
struct _GXTlut {};
struct ResTIMG {};
struct JUtility {
struct TColor {
/* 80193960 */ TColor();
};
};
struct JUTPalette {};
struct JUTTexture {
/* 802DE480 */ void storeTIMG(ResTIMG const*, JUTPalette*, _GXTlut);
};
struct J3DTextureSRTInfo {};
struct J2DTexMtx {};
struct J2DTexGenBlock {
/* 802EB510 */ void initialize();
/* 802EB570 */ void setGX();
/* 802EB620 */ ~J2DTexGenBlock();
/* 802EB6A4 */ void setTexMtx(u32, J2DTexMtx&);
/* 802EB7E0 */ void getTexMtx(u32, J2DTexMtx&);
};
struct J2DTexCoord {
/* 802EB260 */ J2DTexCoord();
};
struct J2DTevBlock8 {
/* 802EED64 */ J2DTevBlock8();
};
struct J2DTevBlock4 {
/* 802ED8BC */ J2DTevBlock4();
};
struct J2DTevBlock2 {
/* 802EC5B8 */ J2DTevBlock2();
};
struct J2DTevBlock16 {
/* 802F01E4 */ J2DTevBlock16();
};
struct J2DTevBlock1 {
/* 802EB88C */ J2DTevBlock1();
};
struct J2DGXColorS10 {};
struct J2DTevBlock {
/* 802EB184 */ ~J2DTevBlock();
/* 802EB1D0 */ void setGX();
/* 802EB1D4 */ void setTevKColor(u32, JUtility::TColor);
/* 802EB1D8 */ void setTevColor(u32, J2DGXColorS10);
/* 802EB1DC */ void setTexNo(u32, u16);
};
struct J2DPEBlock {
/* 802F17FC */ void initialize();
/* 802F1840 */ void setGX();
};
struct J2DIndTexOrder {
/* 802EB378 */ J2DIndTexOrder();
};
struct J2DIndTexMtx {
/* 802EB2E4 */ ~J2DIndTexMtx();
/* 802EB320 */ J2DIndTexMtx();
};
struct J2DIndTexCoordScale {
/* 802EB290 */ ~J2DIndTexCoordScale();
/* 802EB2CC */ J2DIndTexCoordScale();
};
struct J2DIndBlockNull {
/* 802EB1E0 */ void setGX();
/* 802EB1E4 */ void getType();
/* 802EB1F0 */ ~J2DIndBlockNull();
};
struct J2DIndBlock {
/* 802EA18C */ bool getIndTexCoordScale(u32);
/* 802EA194 */ bool getIndTexMtx(u32);
/* 802EA19C */ bool getIndTexOrder(u32);
/* 802EA1A4 */ bool getIndTexStageNum() const;
/* 802EB13C */ ~J2DIndBlock();
/* 802EB1CC */ void setGX();
/* 802EB24C */ void initialize();
/* 802EB250 */ void setIndTexStageNum(u8);
/* 802EB254 */ void setIndTexOrder(u32, J2DIndTexOrder);
/* 802EB258 */ void setIndTexMtx(u32, J2DIndTexMtx);
/* 802EB25C */ void setIndTexCoordScale(u32, J2DIndTexCoordScale);
};
struct J2DColorChan {
/* 802EB280 */ J2DColorChan();
};
struct J2DColorBlock {
/* 802EB0F4 */ ~J2DColorBlock();
/* 802EB394 */ void initialize();
/* 802EB424 */ void setGX();
};
//
// Forward References:
//
@ -280,7 +171,8 @@ asm J2DMaterial::J2DMaterial() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DMaterial::~J2DMaterial() {
extern "C" asm void __dt__11J2DMaterialFv() {
// asm J2DMaterial::~J2DMaterial() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DMaterial/__dt__11J2DMaterialFv.s"
}
@ -459,7 +351,7 @@ void J2DTevBlock::setTexNo(u32 param_0, u16 param_1) {
}
/* 802EB1E0-802EB1E4 2E5B20 0004+00 1/0 0/0 0/0 .text setGX__15J2DIndBlockNullFv */
void J2DIndBlockNull::setGX() {
extern "C" void setGX__15J2DIndBlockNullFv() {
/* empty function */
}
@ -484,7 +376,7 @@ asm J2DIndBlockNull::~J2DIndBlockNull() {
#pragma pop
/* 802EB24C-802EB250 2E5B8C 0004+00 2/0 0/0 0/0 .text initialize__11J2DIndBlockFv */
void J2DIndBlock::initialize() {
extern "C" void initialize__11J2DIndBlockFv() {
/* empty function */
}

View File

@ -11,74 +11,14 @@
// Types:
//
struct JKRArchive {};
struct JUTResReference {
/* 802DE120 */ void getResource(void const*, u32, JKRArchive*);
};
struct J2DTexMtx {
/* 802E9CC4 */ void calc();
};
struct J2DTevStageInfo {};
struct J2DTevStage {
/* 802F4110 */ J2DTevStage(J2DTevStageInfo const&);
/* 802F1940 */ J2DTevStage();
/* 802F19A8 */ void setTevStageInfo(J2DTevStageInfo const&);
};
struct J2DScreen {
static u8 mDataManage[4 + 4 /* padding */];
};
struct J2DResReference {
/* 8030CF10 */ void getResReference(u16) const;
/* 8030CF44 */ void getName(u16) const;
};
struct J2DMaterial {
/* 802EA410 */ void createTevBlock(int, bool);
/* 802EA5C4 */ void createIndBlock(int, bool);
};
struct J2DMaterialBlock {};
struct J2DMaterialFactory {
/* 802F2AD0 */ J2DMaterialFactory(J2DMaterialBlock const&);
/* 802F2C94 */ void countStages(int) const;
/* 802F2D1C */ void create(J2DMaterial*, int, u32, J2DResReference*, J2DResReference*,
JKRArchive*) const;
/* 802F362C */ void newMatColor(int, int) const;
/* 802F36CC */ void newColorChanNum(int) const;
/* 802F3704 */ void newColorChan(int, int) const;
/* 802F3758 */ void newTexGenNum(int) const;
/* 802F3790 */ void newTexCoord(int, int) const;
/* 802F3804 */ void newTexMtx(int, int) const;
/* 802F38E0 */ void newCullMode(int) const;
/* 802F3920 */ void newTexNo(int, int) const;
/* 802F3968 */ void newFontNo(int) const;
/* 802F39A8 */ void newTevOrder(int, int) const;
/* 802F3A1C */ void newTevColor(int, int) const;
/* 802F3AB4 */ void newTevKColor(int, int) const;
/* 802F3B54 */ void newTevStageNum(int) const;
/* 802F3B8C */ void newTevStage(int, int) const;
/* 802F3BEC */ void newTevSwapModeTable(int, int) const;
/* 802F3C88 */ void newIndTexStageNum(int) const;
/* 802F3CB8 */ void newIndTexOrder(int, int) const;
/* 802F3D20 */ void newIndTexMtx(int, int) const;
/* 802F3E24 */ void newIndTevStage(int, int) const;
/* 802F3F78 */ void newIndTexCoordScale(int, int) const;
/* 802F3FE0 */ void newAlphaComp(int) const;
/* 802F405C */ void newBlend(int) const;
/* 802F40D8 */ void newDither(int) const;
};
struct J2DDataManage {
/* 8030CE18 */ void get(char const*);
};
//
// Forward References:
//

View File

@ -41,9 +41,6 @@ extern "C" void func_802E9260();
extern "C" void func_802E9368();
extern "C" void func_802E9564();
extern "C" void place__14J2DGrafContextFffff();
extern "C" void C_MTXOrtho();
extern "C" void GXSetProjection();
extern "C" void GXLoadPosMtxImm();
extern "C" void _savegpr_29();
extern "C" void _restgpr_29();
extern "C" extern void* __vt__14J2DGrafContext[10];

View File

@ -113,7 +113,6 @@ extern "C" void setScissor__14J2DGrafContextFv();
extern "C" void func_802E90C0();
extern "C" void func_802E987C();
extern "C" void get__13J2DDataManageFP14JSUInputStream();
extern "C" void GXSetCullMode();
extern "C" void _savegpr_25();
extern "C" void _savegpr_27();
extern "C" void _savegpr_28();

View File

@ -138,15 +138,6 @@ extern "C" void setCullBack__7J2DPaneFb();
extern "C" void setConnectParent__7J2DPaneFb();
extern "C" void update__7J2DPaneFv();
extern "C" void getNameResource__9J2DScreenFPCc();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevKColor();
extern "C" void GXSetTevKColorSel();
extern "C" void GXSetTevKAlphaSel();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void __construct_array();
extern "C" void _savegpr_21();
extern "C" void _savegpr_22();

View File

@ -7,211 +7,6 @@
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct _GXTlut {};
struct _GXTexMapID {};
struct _GXCullMode {};
struct ResTLUT {};
struct ResTIMG {};
struct ResFONT {};
struct JUtility {
struct TColor {};
};
struct JUTPalette {};
struct JUTTexture {
/* 802DE2A8 */ void storeTIMG(ResTIMG const*, u8);
/* 802DE480 */ void storeTIMG(ResTIMG const*, JUTPalette*, _GXTlut);
};
struct JSUStreamSeekFrom {};
struct JSURandomInputStream {
/* 802DC458 */ void peek(void*, s32);
/* 802DC4DC */ void seek(s32, JSUStreamSeekFrom);
};
struct JSUInputStream {
/* 802DC298 */ void read(void*, s32);
};
struct JGeometry {
template <typename A1>
struct TBox2 {};
/* TBox2<f32> */
struct TBox2__template0 {};
template <typename A1>
struct TVec2 {};
/* TVec2<s16> */
struct TVec2__template0 {
/* 802FF204 */ void func_802FF204(void* _this);
};
};
struct J2DTexMtx {};
struct J2DTexGenBlock {
/* 802EB6A4 */ void setTexMtx(u32, J2DTexMtx&);
};
struct J2DTevStage {};
struct J2DScreen {
/* 802F9640 */ void getNameResource(char const*);
};
struct J2DAnmTexPattern {};
struct J2DAnmVisibilityFull {
/* 8030C048 */ void getVisibility(u16, u8*) const;
};
struct J2DAnmBase {};
struct J2DAnmTevRegKey {};
struct J2DAnmTextureSRTKey {};
struct J2DAnmVtxColor {};
struct J2DAnmTransform {};
struct J2DPane {
/* 80053BC0 */ void calcMtx();
/* 80053C00 */ void makeMatrix(f32, f32);
/* 802F7540 */ void makeMatrix(f32, f32, f32, f32);
/* 802F6F60 */ void move(f32, f32);
/* 802F6FB4 */ void add(f32, f32);
/* 802F6FF8 */ void resize(f32, f32);
/* 802F72E0 */ void search(u64);
/* 802F7388 */ void searchUserInfo(u64);
/* 802F7430 */ void isUsed(ResTIMG const*);
/* 802F74B8 */ void isUsed(ResFONT const*);
/* 802F7680 */ void setCullBack(_GXCullMode);
/* 802F7B18 */ void makePaneExStream(J2DPane*, JSURandomInputStream*);
/* 802F7EF4 */ void setAnimation(J2DAnmBase*);
/* 802F8004 */ void clearAnmTransform();
/* 802F8080 */ void animationTransform(J2DAnmTransform const*);
/* 802F8118 */ void setVisibileAnimation(J2DAnmVisibilityFull*);
/* 802F81A0 */ void setVtxColorAnimation(J2DAnmVtxColor*);
/* 802F8228 */ void animationPane(J2DAnmTransform const*);
/* 802F83D0 */ void setAnimationVF(J2DAnmVisibilityFull*);
/* 802F83FC */ void setAnimationVC(J2DAnmVtxColor*);
/* 802F8464 */ void setConnectParent(bool);
/* 802F8474 */ void update();
};
struct J2DAnmColor {};
struct J2DMaterial {
/* 802EA38C */ void setGX();
/* 802EAB0C */ void setAnimation(J2DAnmTevRegKey*);
/* 802EAA2C */ void setAnimation(J2DAnmTexPattern*);
/* 802EA94C */ void setAnimation(J2DAnmTextureSRTKey*);
/* 802EA89C */ void setAnimation(J2DAnmColor*);
};
struct J2DPictureEx {
struct stage_enum {};
/* 80256034 */ void getMaterial() const;
/* 80306B1C */ void setAnimation(J2DAnmTexPattern*);
/* 80306AC4 */ void setAnimation(J2DAnmColor*);
/* 803071C4 */ void setAnimation(J2DAnmBase*);
/* 80306B48 */ void setAnimation(J2DAnmTevRegKey*);
/* 80306B7C */ void setAnimation(J2DAnmVtxColor*);
/* 80256064 */ void setAnimation(J2DAnmTransform*);
/* 80306AF0 */ void setAnimation(J2DAnmTextureSRTKey*);
/* 80306B74 */ void setAnimation(J2DAnmVisibilityFull*);
/* 80303640 */ void initiate(ResTIMG const*, ResTLUT const*);
/* 803036EC */ J2DPictureEx(J2DPane*, JSURandomInputStream*, u32, J2DMaterial*);
/* 8030393C */ ~J2DPictureEx();
/* 803039CC */ void prepareTexture(u8);
/* 80303AB4 */ void drawSelf(f32, f32, f32 (*)[3][4]);
/* 80303B80 */ void drawFullSet(f32, f32, f32, f32, f32 (*)[3][4]);
/* 80303BDC */ void drawTexCoord(f32, f32, f32, f32, s16, s16, s16, s16, s16, s16, s16, s16,
f32 (*)[3][4]);
/* 80306F04 */ void append(char const*, f32);
/* 80303EA4 */ void append(char const*, JUTPalette*, f32);
/* 80306ED4 */ void append(ResTIMG const*, f32);
/* 80303E5C */ void append(ResTIMG const*, JUTPalette*, f32);
/* 80303EEC */ void append(JUTTexture*, f32);
/* 80307024 */ void insert(char const*, u8, f32);
/* 80303F34 */ void insert(ResTIMG const*, JUTPalette*, u8, f32);
/* 80304048 */ void insert(JUTTexture*, u8, f32);
/* 80303FD8 */ void insert(char const*, JUTPalette*, u8, f32);
/* 80307058 */ void insert(ResTIMG const*, u8, f32);
/* 803040E4 */ void insertCommon(u8, f32);
/* 8030437C */ void isInsert(u8) const;
/* 80304608 */ void remove();
/* 8030446C */ void remove(u8);
/* 8030466C */ void remove(JUTTexture*);
/* 80304728 */ void isRemove(u8) const;
/* 8030708C */ void draw(f32, f32, bool, bool, bool);
/* 80304890 */ void draw(f32, f32, f32, f32, bool, bool, bool);
/* 8030477C */ void draw(f32, f32, u8, bool, bool, bool);
/* 80304D88 */ void drawOut(f32, f32, f32, f32, f32, f32);
/* 803070D0 */ void drawOut(f32, f32, f32, f32, f32, f32, f32, f32);
/* 80304EF0 */ void drawOut(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
/* 80307134 */ void load(u8);
/* 80305264 */ void load(_GXTexMapID, u8);
/* 803052AC */ void setTevOrder(u8, u8, bool);
/* 803053E0 */ void setTevStage(u8, u8, bool);
/* 80305688 */ void setStage(J2DTevStage*, J2DPictureEx::stage_enum);
/* 80305928 */ void setTevKColor(u8);
/* 80305C70 */ void setTevKColorSel(u8);
/* 80305D18 */ void setTevKAlphaSel(u8);
/* 80305DC0 */ void shiftSetBlendRatio(u8, f32, bool, bool);
/* 80305ED4 */ void setBlendColorRatio(f32, f32);
/* 80305F34 */ void setBlendAlphaRatio(f32, f32);
/* 80305F94 */ void changeTexture(ResTIMG const*, u8);
/* 80306298 */ void changeTexture(char const*, u8, JUTPalette*);
/* 80306134 */ void changeTexture(ResTIMG const*, u8, JUTPalette*);
/* 803060DC */ void changeTexture(char const*, u8);
/* 803062F8 */ void getTexture(u8) const;
/* 80306350 */ void getTextureCount() const;
/* 80306370 */ void setBlack(JUtility::TColor);
/* 803063F8 */ void setWhite(JUtility::TColor);
/* 80306480 */ void setBlackWhite(JUtility::TColor, JUtility::TColor);
/* 80306664 */ void getBlackWhite(JUtility::TColor*, JUtility::TColor*) const;
/* 80306824 */ void isSetBlackWhite(JUtility::TColor, JUtility::TColor) const;
/* 803068F8 */ void getBlack() const;
/* 80306958 */ void getWhite() const;
/* 803069B8 */ void setAlpha(u8);
/* 803069D8 */ void setCullBack(_GXCullMode);
/* 80307168 */ void setCullBack(bool);
/* 80306A0C */ void rewriteAlpha();
/* 80306A24 */ void isUsed(ResTIMG const*);
/* 803071A4 */ void isUsed(ResFONT const*);
/* 80306C70 */ void animationPane(J2DAnmTransform const*);
/* 80306DC8 */ void getUsableTlut(u8);
/* 80306F94 */ void prepend(char const*, f32);
/* 80306F34 */ void prepend(JUTTexture*, f32);
/* 80306FC4 */ void prepend(ResTIMG const*, JUTPalette*, f32);
/* 80306F64 */ void prepend(char const*, JUTPalette*, f32);
/* 80306FF4 */ void prepend(ResTIMG const*, f32);
};
struct J2DPicture {
/* 800202CC */ void setBlendRatio(f32, f32);
/* 802FC050 */ J2DPicture();
/* 802FCFF0 */ ~J2DPicture();
/* 802FDB28 */ void drawSelf(f32, f32);
/* 802FF1D0 */ void getTlutID(ResTIMG const*, u8);
/* 802FF2E8 */ s32 getTypeID() const;
};
//
// Forward References:
//
@ -339,23 +134,6 @@ extern "C" void getTlutID__10J2DPictureFPC7ResTIMGUc();
extern "C" void func_802FF204(void* _this);
extern "C" s32 getTypeID__10J2DPictureCFv();
extern "C" void getVisibility__20J2DAnmVisibilityFullCFUsPUc();
extern "C" void PSMTXIdentity();
extern "C" void PSMTXConcat();
extern "C" void GXSetVtxDesc();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetVtxAttrFmt();
extern "C" void GXSetNumTexGens();
extern "C" void GXBegin();
extern "C" void GXSetChanMatColor();
extern "C" void GXSetChanCtrl();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevOp();
extern "C" void GXSetTevSwapModeTable();
extern "C" void GXSetTevOrder();
extern "C" void GXSetNumTevStages();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void __construct_array();
extern "C" void _savegpr_23();
extern "C" void _savegpr_25();
@ -496,7 +274,8 @@ asm J2DPictureEx::J2DPictureEx(J2DPane* param_0, JSURandomInputStream* param_1,
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DPictureEx::~J2DPictureEx() {
extern "C" asm void __dt__12J2DPictureExFv() {
// asm J2DPictureEx::~J2DPictureEx() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPictureEx/__dt__12J2DPictureExFv.s"
}

View File

@ -7,56 +7,11 @@
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct JUtility {
struct TColor {};
};
struct JUTFont {
/* 802DEDC4 */ void setGradColor(JUtility::TColor, JUtility::TColor);
};
struct JKRHeap {
static u8 sSystemHeap[4];
};
struct J2DTextBoxVBinding {};
struct J2DTextBoxHBinding {};
struct J2DPrint {
struct TSize {};
/* 802F4394 */ J2DPrint(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor);
/* 802F4420 */ ~J2DPrint();
/* 802F4468 */ void private_initiate(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor, bool);
/* 802F4658 */ void setBuffer(u32);
/* 802F46C4 */ void setFontSize();
/* 802F475C */ void locate(f32, f32);
/* 802F4778 */ void print(f32, f32, u8, char const*, ...);
/* 802F4828 */ void printReturn(char const*, f32, f32, J2DTextBoxHBinding, J2DTextBoxVBinding,
f32, f32, u8);
/* 802F4B4C */ void parse(u8 const*, int, int, u16*, J2DPrint::TSize&, u8, bool);
/* 802F52E8 */ void doCtrlCode(int);
/* 802F5410 */ void doEscapeCode(u8 const**, u8);
/* 802F594C */ void initchar();
/* 802F59C0 */ void getNumberS32(u8 const**, s32, s32, int);
/* 802F5AC4 */ void getNumberF32(u8 const**, f32, f32, int);
static u8 mStrBuff[4];
static u8 mStrBuffSize[4];
};
//
// Forward References:
//
extern "C" static void J2DPrint_print_alpha_va();
extern "C" f32 J2DPrint_print_alpha_va(J2DPrint* pPrint, u8 param_1, const char* fmt, va_list args);
extern "C" void
__ct__8J2DPrintFP7JUTFontffQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColor();
extern "C" void __dt__8J2DPrintFv();
@ -93,7 +48,6 @@ extern "C" void _restgpr_25();
extern "C" void _restgpr_26();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" void vsnprintf();
extern "C" void strlen();
extern "C" void strtol();
extern "C" void strtoul();
@ -105,13 +59,13 @@ extern "C" u8 sSystemHeap__7JKRHeap[4];
/* ############################################################################################## */
/* 80451580-80451584 000A80 0004+00 3/3 0/0 0/0 .sbss mStrBuff__8J2DPrint */
u8 J2DPrint::mStrBuff[4];
const u8* J2DPrint::mStrBuff;
/* 80451584-80451588 000A84 0004+00 1/1 0/0 0/0 .sbss None */
static u8 data_80451584[4];
static bool sStrBufInitialized;
/* 80451588-8045158C 000A88 0004+00 3/3 0/0 0/0 .sbss mStrBuffSize__8J2DPrint */
u8 J2DPrint::mStrBuffSize[4];
size_t J2DPrint::mStrBuffSize;
/* 8045158C-80451590 000A8C 0004+00 2/2 0/0 0/0 .sbss None */
static u8 data_8045158C[4];
@ -125,14 +79,20 @@ SECTION_SDATA2 static u8 lit_418[4] = {
};
/* 802F42F0-802F4394 2EEC30 00A4+00 1/1 0/0 0/0 .text J2DPrint_print_alpha_va */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void J2DPrint_print_alpha_va() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPrint/J2DPrint_print_alpha_va.s"
f32 J2DPrint_print_alpha_va(J2DPrint* pPrint, u8 param_1, const char* fmt, va_list args) {
pPrint->initchar();
s32 tmp = vsnprintf((char*)J2DPrint::mStrBuff, J2DPrint::mStrBuffSize, fmt, args);
J2DPrint::TSize size;
if (tmp < 0) {
return FLOAT_LABEL(lit_418);
} else if (tmp >= J2DPrint::mStrBuffSize) {
tmp = J2DPrint::mStrBuffSize - 1;
data_8045158C[0] = 1;
}
pPrint->parse(J2DPrint::mStrBuff, tmp, 0x80000000 - 1, NULL, size, param_1, true);
return size.field_0x0;
}
#pragma pop
/* ############################################################################################## */
/* 803CCF40-803CCFA0 -00001 0060+00 1/1 0/0 0/0 .data @938 */
@ -175,26 +135,13 @@ SECTION_DATA extern void* __vt__8J2DPrint[3 + 1 /* padding */] = {
/* 802F4394-802F4420 2EECD4 008C+00 0/0 6/6 0/0 .text
* __ct__8J2DPrintFP7JUTFontffQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColor
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DPrint::J2DPrint(JUTFont* param_0, f32 param_1, f32 param_2, JUtility::TColor param_3,
JUtility::TColor param_4, JUtility::TColor param_5,
JUtility::TColor param_6) {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPrint/func_802F4394.s"
J2DPrint::J2DPrint(JUTFont* pFont, f32 param_1, f32 param_2, JUtility::TColor param_3,
JUtility::TColor param_4, JUtility::TColor param_5, JUtility::TColor param_6) {
private_initiate(pFont, param_1, param_2, param_3, param_4, param_5, param_6, false);
}
#pragma pop
/* 802F4420-802F4468 2EED60 0048+00 1/0 6/6 0/0 .text __dt__8J2DPrintFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DPrint::~J2DPrint() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPrint/__dt__8J2DPrintFv.s"
}
#pragma pop
J2DPrint::~J2DPrint() {}
/* ############################################################################################## */
/* 804561CC-804561D0 0047CC 0004+00 1/1 0/0 0/0 .sdata2 @644 */
@ -206,6 +153,45 @@ SECTION_SDATA2 static f64 lit_650 = 4503601774854144.0 /* cast s32 to float */;
/* 802F4468-802F4658 2EEDA8 01F0+00 1/1 0/0 0/0 .text
* private_initiate__8J2DPrintFP7JUTFontffQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorb
*/
// close
#ifdef NONMATCHING
void J2DPrint::private_initiate(JUTFont* pFont, f32 param_1, f32 param_2, JUtility::TColor param_3,
JUtility::TColor param_4, JUtility::TColor param_5,
JUtility::TColor param_6, bool param_7) {
if (mStrBuff == NULL) {
setBuffer(0x400); // r4
}
mFont = pFont;
field_0x48 = param_1;
field_0x4c = 32.0f;
if (mFont != NULL) {
if (!param_7) {
param_2 = mFont->getLeading();
}
field_0x4c = param_2;
}
field_0x5a = 1;
locate(0.0f, 0.0f);
mCharColor = param_3;
mGradColor = param_4;
field_0x38 = param_5;
field_0x3c = param_6;
if (mFont == NULL) {
field_0x58 = 80;
} else {
field_0x58 = mFont->getWidth() << 2;
}
if (mFont != NULL) {
setFontSize();
mFont->setGX(field_0x38, field_0x3c);
}
initchar();
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@ -217,18 +203,31 @@ asm void J2DPrint::private_initiate(JUTFont* param_0, f32 param_1, f32 param_2,
#include "asm/JSystem/J2DGraph/J2DPrint/func_802F4468.s"
}
#pragma pop
#endif
/* 802F4658-802F46C4 2EEF98 006C+00 1/1 1/1 0/0 .text setBuffer__8J2DPrintFUl */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPrint::setBuffer(u32 param_0) {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPrint/setBuffer__8J2DPrintFUl.s"
u8* J2DPrint::setBuffer(size_t size) {
u8* tmp = (u8*)mStrBuff;
if (sStrBufInitialized) {
delete mStrBuff;
}
mStrBuff = new (JKRHeap::sSystemHeap, 0) u8[size];
mStrBuffSize = size;
sStrBufInitialized = true;
return tmp;
}
#pragma pop
/* 802F46C4-802F475C 2EF004 0098+00 1/1 0/0 0/0 .text setFontSize__8J2DPrintFv */
// matches with auto generated literal
#ifdef NONMATCHING
void J2DPrint::setFontSize() {
if (mFont) {
mFontSizeX = mFont->getCellWidth();
mFontSizeY = mFont->getCellHeight();
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@ -237,26 +236,26 @@ asm void J2DPrint::setFontSize() {
#include "asm/JSystem/J2DGraph/J2DPrint/setFontSize__8J2DPrintFv.s"
}
#pragma pop
#endif
/* 802F475C-802F4778 2EF09C 001C+00 2/2 2/2 0/0 .text locate__8J2DPrintFff */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPrint::locate(f32 param_0, f32 param_1) {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPrint/locate__8J2DPrintFff.s"
void J2DPrint::locate(f32 param_0, f32 param_1) {
field_0x24 = param_0;
field_0x28 = param_1;
field_0x2c = param_0;
mCursorV = param_1;
field_0x34 = FLOAT_LABEL(lit_418);
}
#pragma pop
/* 802F4778-802F4828 2EF0B8 00B0+00 0/0 2/2 0/0 .text print__8J2DPrintFffUcPCce */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPrint::print(f32 param_0, f32 param_1, u8 param_2, char const* param_3, ...) {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPrint/print__8J2DPrintFffUcPCce.s"
void J2DPrint::print(f32 param_0, f32 param_1, u8 param_2, char const* fmt, ...) {
locate(param_0, param_1);
va_list args;
va_start(args, fmt);
J2DPrint_print_alpha_va(this, param_2, fmt, args);
va_end(args);
}
#pragma pop
/* ############################################################################################## */
/* 804561D8-804561E0 0047D8 0004+04 2/2 0/0 0/0 .sdata2 @786 */
@ -323,14 +322,16 @@ asm void J2DPrint::doEscapeCode(u8 const** param_0, u8 param_1) {
#pragma pop
/* 802F594C-802F59C0 2F028C 0074+00 3/3 0/0 0/0 .text initchar__8J2DPrintFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPrint::initchar() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DPrint/initchar__8J2DPrintFv.s"
void J2DPrint::initchar() {
field_0x8 = mCharColor;
field_0xc = mGradColor;
field_0x10 = field_0x48;
field_0x14 = field_0x4c;
field_0x22 = field_0x5a;
field_0x20 = field_0x58;
field_0x18 = mFontSizeX;
field_0x1c = mFontSizeY;
}
#pragma pop
/* 802F59C0-802F5AC4 2F0300 0104+00 1/1 0/0 0/0 .text getNumberS32__8J2DPrintFPPCUclli */
#pragma push

View File

@ -160,11 +160,6 @@ extern "C" void __ct__11J2DWindowExFP7J2DPaneP20JSURandomInputStreamUlP11J2DMate
extern "C" void __ct__12J2DPictureExFP7J2DPaneP20JSURandomInputStreamUlP11J2DMaterial();
extern "C" void __ct__12J2DTextBoxExFP7J2DPaneP20JSURandomInputStreamUlP11J2DMaterial();
extern "C" void get__13J2DDataManageFPCc();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevSwapModeTable();
extern "C" void GXSetScissor();
extern "C" void GXGetScissor();
extern "C" void __destroy_new_array();
extern "C" void __construct_new_array();
extern "C" void _savegpr_25();

View File

@ -11,17 +11,6 @@
// Types:
//
struct Vec {};
struct J2DTextureSRTInfo {};
struct J2DTexMtx {
/* 802E9C90 */ void load(u32);
/* 802E9CC4 */ void calc();
/* 802E9D2C */ void getTextureMtx(J2DTextureSRTInfo const&, Vec, f32 (*)[4]);
/* 802E9EBC */ void getTextureMtxMaya(J2DTextureSRTInfo const&, f32 (*)[4]);
};
struct J2DTevBlock {
/* 802EA12C */ bool getTevSwapModeTable(u32);
/* 802EA134 */ bool getTevStage(u32);
@ -36,22 +25,6 @@ struct J2DTevBlock {
/* 802EA184 */ bool getIndTevStage(u32);
};
struct J2DIndTexOrder {
/* 802EA0FC */ void load(u8);
};
struct J2DIndTexMtx {
/* 802EA098 */ void load(u8);
};
struct J2DIndTexCoordScale {
/* 802EA0CC */ void load(u8);
};
struct J2DIndTevStage {
/* 802EA044 */ void load(u8);
};
struct J2DIndBlock {
/* 802EA18C */ bool getIndTexCoordScale(u32);
/* 802EA194 */ bool getIndTexMtx(u32);
@ -86,10 +59,10 @@ extern "C" bool getIndTexCoordScale__11J2DIndBlockFUl();
extern "C" bool getIndTexMtx__11J2DIndBlockFUl();
extern "C" bool getIndTexOrder__11J2DIndBlockFUl();
extern "C" bool getIndTexStageNum__11J2DIndBlockCFv();
extern "C" extern u8 const j2dDefaultTexCoordInfo[32];
extern "C" extern u8 const j2dDefaultTexMtxInfo[36];
extern "C" extern u8 const j2dDefaultIndTexMtxInfo[28];
extern "C" extern u8 const j2dDefaultTevStageInfo[20];
extern "C" extern J2DTexCoordInfo const j2dDefaultTexCoordInfo[8];
extern "C" extern J2DTexMtxInfo const j2dDefaultTexMtxInfo;
extern "C" extern J2DIndTexMtxInfo const j2dDefaultIndTexMtxInfo;
extern "C" extern J2DTevStageInfo const j2dDefaultTevStageInfo;
extern "C" extern u8 const j2dDefaultIndTevStageInfo[12];
extern "C" extern u32 j2dDefaultColInfo;
extern "C" extern u32 j2dDefaultTevOrderInfoNull;
@ -318,33 +291,21 @@ bool J2DIndBlock::getIndTexStageNum() const {
/* ############################################################################################## */
/* 803A1B80-803A1BA0 02E1E0 0020+00 0/0 3/3 0/0 .rodata j2dDefaultTexCoordInfo */
SECTION_RODATA extern u8 const j2dDefaultTexCoordInfo[32] = {
0x01, 0x04, 0x3C, 0x00, 0x01, 0x05, 0x3C, 0x00, 0x01, 0x06, 0x3C, 0x00, 0x01, 0x07, 0x3C, 0x00,
0x01, 0x08, 0x3C, 0x00, 0x01, 0x09, 0x3C, 0x00, 0x01, 0x0A, 0x3C, 0x00, 0x01, 0x0B, 0x3C, 0x00,
extern J2DTexCoordInfo const j2dDefaultTexCoordInfo[8] = {
{1, 4, 60, 0}, {1, 5, 60, 0}, {1, 6, 60, 0}, {1, 7, 60, 0},
{1, 8, 60, 0}, {1, 9, 60, 0}, {1, 10, 60, 0}, {1, 11, 60, 0},
};
COMPILER_STRIP_GATE(0x803A1B80, &j2dDefaultTexCoordInfo);
/* 803A1BA0-803A1BC4 02E200 0024+00 0/0 3/3 0/0 .rodata j2dDefaultTexMtxInfo */
SECTION_RODATA extern u8 const j2dDefaultTexMtxInfo[36] = {
0x01, 0x01, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x803A1BA0, &j2dDefaultTexMtxInfo);
extern J2DTexMtxInfo const j2dDefaultTexMtxInfo = {1, 1, 255, 255, 0.5f, 0.5f,
0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f};
/* 803A1BC4-803A1BE0 02E224 001C+00 0/0 3/3 0/0 .rodata j2dDefaultIndTexMtxInfo */
SECTION_RODATA extern u8 const j2dDefaultIndTexMtxInfo[28] = {
0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x803A1BC4, &j2dDefaultIndTexMtxInfo);
extern J2DIndTexMtxInfo const j2dDefaultIndTexMtxInfo = {{0.5f, 0.0f, 0.0f, 0.0f, 0.5f, 0.0f}, 1};
/* 803A1BE0-803A1BF4 02E240 0014+00 0/0 1/1 0/0 .rodata j2dDefaultTevStageInfo */
SECTION_RODATA extern u8 const j2dDefaultTevStageInfo[20] = {
0x04, 0x0A, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
0x05, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x803A1BE0, &j2dDefaultTevStageInfo);
extern J2DTevStageInfo const j2dDefaultTevStageInfo = {4, 10, 15, 15, 0, 0, 0, 0, 1,
0, 5, 7, 7, 0, 0, 0, 0, 1};
/* 803A1BF4-803A1C00 02E254 000C+00 0/0 7/7 0/0 .rodata j2dDefaultIndTevStageInfo */
SECTION_RODATA extern u8 const j2dDefaultIndTevStageInfo[12] = {

View File

@ -4,23 +4,10 @@
//
#include "JSystem/J2DGraph/J2DTextBox.h"
#include "JSystem/J2DGraph/J2DPrint.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
//
// Types:
//
struct J2DPrint {
/* 802F4394 */ J2DPrint(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor);
/* 802F4420 */ ~J2DPrint();
/* 802F475C */ void locate(f32, f32);
/* 802F4778 */ void print(f32, f32, u8, char const*, ...);
/* 802F4828 */ void printReturn(char const*, f32, f32, J2DTextBoxHBinding, J2DTextBoxVBinding,
f32, f32, u8);
};
//
// Forward References:
@ -109,11 +96,6 @@ extern "C" void setAnimationVF__7J2DPaneFP20J2DAnmVisibilityFull();
extern "C" void setAnimationVC__7J2DPaneFP14J2DAnmVtxColor();
extern "C" void setCullBack__7J2DPaneFb();
extern "C" void update__7J2DPaneFv();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void _savegpr_25();
extern "C" void _savegpr_26();
extern "C" void _savegpr_27();

View File

@ -7,145 +7,6 @@
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct _GXCullMode {};
struct ResTIMG {};
struct ResFONT {};
struct JUtility {
struct TColor {};
};
struct JUTFont {};
struct JSUStreamSeekFrom {};
struct JSURandomInputStream {
/* 802DC458 */ void peek(void*, s32);
/* 802DC4DC */ void seek(s32, JSUStreamSeekFrom);
};
struct JSUInputStream {
/* 802DC298 */ void read(void*, s32);
};
struct J2DTextBoxVBinding {};
struct J2DTextBoxHBinding {};
struct J2DAnmTexPattern {};
struct J2DAnmVisibilityFull {
/* 8030C048 */ void getVisibility(u16, u8*) const;
};
struct J2DAnmBase {};
struct J2DAnmTevRegKey {};
struct J2DAnmTextureSRTKey {};
struct J2DAnmVtxColor {};
struct J2DAnmTransform {};
struct J2DPane {
/* 80053BC0 */ void calcMtx();
/* 80053C00 */ void makeMatrix(f32, f32);
/* 802F7540 */ void makeMatrix(f32, f32, f32, f32);
/* 802F6F60 */ void move(f32, f32);
/* 802F6FB4 */ void add(f32, f32);
/* 802F72E0 */ void search(u64);
/* 802F7388 */ void searchUserInfo(u64);
/* 802F7430 */ void isUsed(ResTIMG const*);
/* 802F74B8 */ void isUsed(ResFONT const*);
/* 802F7680 */ void setCullBack(_GXCullMode);
/* 802F7B18 */ void makePaneExStream(J2DPane*, JSURandomInputStream*);
/* 802F7EF4 */ void setAnimation(J2DAnmBase*);
/* 802F8004 */ void clearAnmTransform();
/* 802F8080 */ void animationTransform(J2DAnmTransform const*);
/* 802F8118 */ void setVisibileAnimation(J2DAnmVisibilityFull*);
/* 802F81A0 */ void setVtxColorAnimation(J2DAnmVtxColor*);
/* 802F8228 */ void animationPane(J2DAnmTransform const*);
/* 802F83D0 */ void setAnimationVF(J2DAnmVisibilityFull*);
/* 802F83FC */ void setAnimationVC(J2DAnmVtxColor*);
/* 802F8474 */ void update();
};
struct J2DTevStage {};
struct J2DAnmColor {};
struct J2DMaterial {
/* 802EA38C */ void setGX();
/* 802EAB0C */ void setAnimation(J2DAnmTevRegKey*);
/* 802EAA2C */ void setAnimation(J2DAnmTexPattern*);
/* 802EA94C */ void setAnimation(J2DAnmTextureSRTKey*);
/* 802EA89C */ void setAnimation(J2DAnmColor*);
};
struct J2DTextBoxEx {
struct stage_enum {};
/* 80256024 */ void getMaterial() const;
/* 8030890C */ void setAnimation(J2DAnmTexPattern*);
/* 803088B4 */ void setAnimation(J2DAnmColor*);
/* 80308938 */ void setAnimation(J2DAnmTevRegKey*);
/* 80256044 */ void setAnimation(J2DAnmTransform*);
/* 80308A48 */ void setAnimation(J2DAnmVtxColor*);
/* 80308A4C */ void setAnimation(J2DAnmBase*);
/* 803088E0 */ void setAnimation(J2DAnmTextureSRTKey*);
/* 80308964 */ void setAnimation(J2DAnmVisibilityFull*);
/* 803071E4 */ J2DTextBoxEx(J2DPane*, JSURandomInputStream*, u32, J2DMaterial*);
/* 8030751C */ ~J2DTextBoxEx();
/* 803075AC */ void drawSelf(f32, f32, f32 (*)[3][4]);
/* 803078AC */ void draw(f32, f32);
/* 80307AF0 */ void draw(f32, f32, f32, J2DTextBoxHBinding);
/* 80307D5C */ void setFont(JUTFont*);
/* 80307DC0 */ void getFont() const;
/* 80307E0C */ void setTevOrder(bool);
/* 80307EF0 */ void setTevStage(bool);
/* 80307F94 */ void setStage(J2DTevStage*, J2DTextBoxEx::stage_enum);
/* 8030823C */ void setBlack(JUtility::TColor);
/* 803082C4 */ void setWhite(JUtility::TColor);
/* 8030834C */ void setBlackWhite(JUtility::TColor, JUtility::TColor);
/* 803084CC */ void getBlackWhite(JUtility::TColor*, JUtility::TColor*) const;
/* 80308668 */ void isSetBlackWhite(JUtility::TColor, JUtility::TColor) const;
/* 803086FC */ void getBlack() const;
/* 8030875C */ void getWhite() const;
/* 803087BC */ void setAlpha(u8);
/* 803087DC */ void setCullBack(_GXCullMode);
/* 803089EC */ void setCullBack(bool);
/* 80308810 */ void rewriteAlpha();
/* 80308828 */ void isUsed(ResFONT const*);
/* 80308A28 */ void isUsed(ResTIMG const*);
/* 8030896C */ void animationPane(J2DAnmTransform const*);
};
struct J2DTextBox {
/* 802FF660 */ J2DTextBox();
/* 803001E0 */ ~J2DTextBox();
/* 80300870 */ void setConnectParent(bool);
/* 803008E8 */ void drawSelf(f32, f32);
/* 80300AF8 */ void resize(f32, f32);
/* 80300C68 */ s32 getTypeID() const;
};
struct J2DPrint {
/* 802F4394 */ J2DPrint(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor);
/* 802F4420 */ ~J2DPrint();
/* 802F475C */ void locate(f32, f32);
/* 802F4778 */ void print(f32, f32, u8, char const*, ...);
/* 802F4828 */ void printReturn(char const*, f32, f32, J2DTextBoxHBinding, J2DTextBoxVBinding,
f32, f32, u8);
};
//
// Forward References:
//
@ -232,16 +93,6 @@ extern "C" void drawSelf__10J2DTextBoxFff();
extern "C" void resize__10J2DTextBoxFff();
extern "C" s32 getTypeID__10J2DTextBoxCFv();
extern "C" void getVisibility__20J2DAnmVisibilityFullCFUsPUc();
extern "C" void PSMTXIdentity();
extern "C" void PSMTXConcat();
extern "C" void GXSetVtxDesc();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetChanMatColor();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevSwapModeTable();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void _savegpr_25();
extern "C" void _savegpr_28();
extern "C" void _restgpr_25();
@ -334,7 +185,8 @@ asm J2DTextBoxEx::J2DTextBoxEx(J2DPane* param_0, JSURandomInputStream* param_1,
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DTextBoxEx::~J2DTextBoxEx() {
extern "C" asm void __dt__12J2DTextBoxExFv() {
// asm J2DTextBoxEx::~J2DTextBoxEx() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/__dt__12J2DTextBoxExFv.s"
}

View File

@ -95,12 +95,6 @@ extern "C" void setAnimationVC__7J2DPaneFP14J2DAnmVtxColor();
extern "C" void setCullBack__7J2DPaneFb();
extern "C" void setConnectParent__7J2DPaneFb();
extern "C" void update__7J2DPaneFv();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void _savegpr_25();
extern "C" void _savegpr_26();
extern "C" void _savegpr_28();

View File

@ -7,153 +7,6 @@
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct _GXCullMode {};
struct _GXColor {};
struct ResTIMG {};
struct ResFONT {};
struct JUtility {
struct TColor {};
};
struct JSUStreamSeekFrom {};
struct JSURandomInputStream {
/* 802DC458 */ void peek(void*, s32);
/* 802DC4DC */ void seek(s32, JSUStreamSeekFrom);
};
struct JSUInputStream {
/* 802DC298 */ void read(void*, s32);
};
struct JGeometry {
template <typename A1>
struct TBox2 {};
/* TBox2<f32> */
struct TBox2__template0 {};
};
struct J2DAnmTexPattern {};
struct J2DAnmVisibilityFull {
/* 8030C048 */ void getVisibility(u16, u8*) const;
};
struct J2DAnmColor {};
struct J2DAnmBase {};
struct J2DAnmTevRegKey {};
struct J2DAnmTextureSRTKey {};
struct J2DAnmVtxColor {
/* 8030363C */ void getColor(u8, u16, _GXColor*) const;
};
struct J2DAnmTransform {};
struct J2DPane {
/* 80053BC0 */ void calcMtx();
/* 80053C00 */ void makeMatrix(f32, f32);
/* 802F7540 */ void makeMatrix(f32, f32, f32, f32);
/* 802F6F60 */ void move(f32, f32);
/* 802F6FB4 */ void add(f32, f32);
/* 802F7264 */ void clip(JGeometry::TBox2<f32> const&);
/* 802F72E0 */ void search(u64);
/* 802F7388 */ void searchUserInfo(u64);
/* 802F7430 */ void isUsed(ResTIMG const*);
/* 802F74B8 */ void isUsed(ResFONT const*);
/* 802F7680 */ void setCullBack(_GXCullMode);
/* 802F7AFC */ void getParentPane();
/* 802F7B18 */ void makePaneExStream(J2DPane*, JSURandomInputStream*);
/* 802F7EF4 */ void setAnimation(J2DAnmBase*);
/* 802F8004 */ void clearAnmTransform();
/* 802F8080 */ void animationTransform(J2DAnmTransform const*);
/* 802F8118 */ void setVisibileAnimation(J2DAnmVisibilityFull*);
/* 802F81A0 */ void setVtxColorAnimation(J2DAnmVtxColor*);
/* 802F8228 */ void animationPane(J2DAnmTransform const*);
/* 802F83D0 */ void setAnimationVF(J2DAnmVisibilityFull*);
/* 802F83FC */ void setAnimationVC(J2DAnmVtxColor*);
/* 802F8464 */ void setConnectParent(bool);
/* 802F8474 */ void update();
};
struct J2DTevStage {};
struct J2DMaterial {
/* 802EA38C */ void setGX();
/* 802EAB0C */ void setAnimation(J2DAnmTevRegKey*);
/* 802EAA2C */ void setAnimation(J2DAnmTexPattern*);
/* 802EA94C */ void setAnimation(J2DAnmTextureSRTKey*);
/* 802EA89C */ void setAnimation(J2DAnmColor*);
};
struct J2DWindow {
struct TMaterial {};
/* 802F9A7C */ J2DWindow();
/* 802FA880 */ ~J2DWindow();
/* 802FB000 */ void resize(f32, f32);
/* 802FB1D8 */ void drawSelf(f32, f32);
/* 802FBF98 */ s32 getTypeID() const;
};
struct J2DWindowEx {
struct stage_enum {};
/* 8030327C */ void setAnimation(J2DAnmVtxColor*);
/* 80303084 */ void setAnimation(J2DAnmTextureSRTKey*);
/* 80256084 */ void setAnimation(J2DAnmTransform*);
/* 8030310C */ void setAnimation(J2DAnmTexPattern*);
/* 80303194 */ void setAnimation(J2DAnmTevRegKey*);
/* 8030361C */ void setAnimation(J2DAnmBase*);
/* 80303274 */ void setAnimation(J2DAnmVisibilityFull*);
/* 80302FFC */ void setAnimation(J2DAnmColor*);
/* 80300C94 */ J2DWindowEx(J2DPane*, JSURandomInputStream*, u32, J2DMaterial*);
/* 80300F80 */ void setMinSize();
/* 80301144 */ ~J2DWindowEx();
/* 8030122C */ void drawSelf(f32, f32, f32 (*)[3][4]);
/* 803012CC */ void draw_private(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
/* 80301994 */ void drawContents(JGeometry::TBox2<f32> const&);
/* 80301D74 */ void drawFrameTexture(f32, f32, f32, f32, u16, u16, u16, u16, J2DMaterial*,
bool);
/* 80301FC8 */ void draw(JGeometry::TBox2<f32> const&);
/* 80302164 */ void draw(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
/* 80303568 */ void draw(f32, f32, f32, f32);
/* 80302284 */ void setTevOrder(bool);
/* 80302388 */ void setTevStage(bool);
/* 803024B4 */ void setStage(J2DTevStage*, J2DWindowEx::stage_enum);
/* 80302764 */ void setBlack(JUtility::TColor);
/* 803027EC */ void setWhite(JUtility::TColor);
/* 80302874 */ void setBlackWhite(JUtility::TColor, JUtility::TColor);
/* 80302A4C */ void getBlackWhite(JUtility::TColor*, JUtility::TColor*) const;
/* 80302BE8 */ void isSetBlackWhite(JUtility::TColor, JUtility::TColor) const;
/* 80302C88 */ void getBlack() const;
/* 80302CE8 */ void getWhite() const;
/* 80302D48 */ void setAlpha(u8);
/* 80302D98 */ void setCullBack(_GXCullMode);
/* 803035C0 */ void setCullBack(bool);
/* 80302DF4 */ void rewriteAlpha();
/* 80302E0C */ void getFrameTexture(u8, u8) const;
/* 80302E74 */ void getContentsTexture(u8) const;
/* 803035FC */ void isUsed(ResFONT const*);
/* 80302EDC */ void isUsed(ResTIMG const*);
/* 8030321C */ void isNeedSetAnm(u8);
/* 80303370 */ void animationPane(J2DAnmTransform const*);
/* 80303510 */ void getFrameMaterial(u8) const;
/* 80303534 */ void getContentsMaterial() const;
/* 8030353C */ void getMaterial(J2DWindow::TMaterial&) const;
};
//
// Forward References:
//
@ -243,21 +96,6 @@ extern "C" void resize__9J2DWindowFff();
extern "C" void drawSelf__9J2DWindowFff();
extern "C" s32 getTypeID__9J2DWindowCFv();
extern "C" void getVisibility__20J2DAnmVisibilityFullCFUsPUc();
extern "C" void PSMTXIdentity();
extern "C" void PSMTXConcat();
extern "C" void GXSetVtxDesc();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetVtxAttrFmt();
extern "C" void GXSetNumTexGens();
extern "C" void GXBegin();
extern "C" void GXSetChanMatColor();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevOp();
extern "C" void GXSetTevSwapModeTable();
extern "C" void GXSetTevOrder();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void _savegpr_20();
extern "C" void _savegpr_25();
extern "C" void _savegpr_26();
@ -371,7 +209,8 @@ asm void J2DWindowEx::setMinSize() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J2DWindowEx::~J2DWindowEx() {
extern "C" asm void __dt__11J2DWindowExFv() {
// asm J2DWindowEx::~J2DWindowEx() {
nofralloc
#include "asm/JSystem/J2DGraph/J2DWindowEx/__dt__11J2DWindowExFv.s"
}

View File

@ -11,18 +11,6 @@
// Types:
//
struct _GXTevKColorID {};
struct _GXIndTexStageID {};
struct _GXIndTexScale {};
struct _GXIndTexMtxID {};
struct _GXFogType {};
struct _GXFogAdjTable {};
struct J3DSys {
static u8 sTexCoordScaleTable[64 + 4 /* padding */];
};

View File

@ -5,12 +5,12 @@
#include "JSystem/J3DGraphBase/J3DPacket.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "dolphin/gx/GX.h"
#include "dolphin/os/OSCache.h"
#include "dolphin/types.h"
#include "global.h"
#include "msl_c/string.h"
//
// Types:

View File

@ -7,12 +7,6 @@
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct _GXTexMapID {};
//
// Forward References:
//
@ -46,51 +40,12 @@ extern "C" void makeTexCoordTable__Fv();
extern "C" void makeAlphaCmpTable__Fv();
extern "C" void makeZModeTable__Fv();
extern "C" void makeTevSwapTable__Fv();
extern "C" void GXSetVtxAttrFmt();
extern "C" void GXInvalidateVtxCache();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXSetNumTexGens();
extern "C" void GXFlush();
extern "C" void GXSetCullMode();
extern "C" void GXSetCoPlanar();
extern "C" void GXSetChanAmbColor();
extern "C" void GXSetChanMatColor();
extern "C" void GXSetNumChans();
extern "C" void GXSetChanCtrl();
extern "C" void GXInitTexObj();
extern "C" void GXLoadTexObj();
extern "C" void GXInitTexCacheRegion();
extern "C" void GXSetTevIndirect();
extern "C" void GXSetIndTexMtx();
extern "C" void GXSetIndTexCoordScale();
extern "C" void GXSetIndTexOrder();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevDirect();
extern "C" void GXSetTevColorIn();
extern "C" void GXSetTevAlphaIn();
extern "C" void GXSetTevColorOp();
extern "C" void GXSetTevAlphaOp();
extern "C" void GXSetTevColor();
extern "C" void GXSetTevColorS10();
extern "C" void GXSetTevKColor();
extern "C" void GXSetTevKColorSel();
extern "C" void GXSetTevKAlphaSel();
extern "C" void GXSetTevSwapMode();
extern "C" void GXSetTevSwapModeTable();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetTevOrder();
extern "C" void GXSetNumTevStages();
extern "C" void GXSetFog();
extern "C" void GXSetFogRangeAdj();
extern "C" void GXSetBlendMode();
extern "C" void GXSetColorUpdate();
extern "C" void GXSetAlphaUpdate();
extern "C" void GXSetZMode();
extern "C" void GXSetZCompLoc();
extern "C" void GXSetDither();
extern "C" void GXSetCurrentMtx();
extern "C" void GXLoadTexMtxImm();
extern "C" void GXSetClipMode();
extern "C" void _savegpr_25();
extern "C" void _savegpr_28();
extern "C" void _restgpr_25();

View File

@ -8,11 +8,11 @@
#include "JSystem/JKernel/JKRDvdAramRipper.h"
#include "JSystem/JKernel/JKRDvdRipper.h"
#include "JSystem/JKernel/JKRFile.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "dolphin/os/OSCache.h"
#include "dolphin/types.h"
#include "msl_c/math.h"
#include "msl_c/string.h"
//
// Types:

View File

@ -5,9 +5,10 @@
#include "JSystem/JKernel/JKRArchive.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/ctype.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
//
// Declarations:

View File

@ -7,9 +7,10 @@
#include "JSystem/JKernel/JKRDvdFile.h"
#include "JSystem/JKernel/JKRFileFinder.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/ctype.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "global.h"
#include "msl_c/string.h"
//
// Forward References:

View File

@ -4,9 +4,9 @@
//
#include "JSystem/JKernel/JKRFileLoader.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "global.h"
#include "msl_c/string.h"
//
// Forward References:

View File

@ -7,9 +7,9 @@
#include "JSystem/JKernel/JKRDvdRipper.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JUtility/JUTException.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
//
// Types:

View File

@ -6,9 +6,9 @@
#include "JSystem/JKernel/JKRThread.h"
#include "JSystem/JKernel/JKRExpHeap.h"
#include "JSystem/JUtility/JUTAssert.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/printf.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
//
// Types:

View File

@ -11,8 +11,6 @@
// Types:
//
struct Vec {};
struct JPAEmitterWorkData {};
struct JPABaseParticle {
@ -55,7 +53,6 @@ extern "C" void createChild__14JPABaseEmitterFP15JPABaseParticle();
extern "C" void JPAGetYZRotateMtx__FssPA4_f();
extern "C" void __dl__FPv();
extern "C" void JMAVECScaleAdd__FPC3VecPC3VecP3Vecf();
extern "C" void PSMTXConcat();
extern "C" void PSMTXMultVecSR();
extern "C" void _savegpr_26();
extern "C" void _savegpr_29();

View File

@ -4,9 +4,9 @@
//
#include "JSystem/JSupport/JSUMemoryStream.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
//
// Declarations:

View File

@ -4,12 +4,12 @@
//
#include "JSystem/JUtility/JUTDirectPrint.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/printf.h"
#include "Runtime.PPCEABI.H/__va_arg.h"
#include "dol2asm.h"
#include "dolphin/os/OSCache.h"
#include "dolphin/types.h"
#include "global.h"
#include "msl_c/string.h"
//
// Forward References:

View File

@ -4,9 +4,9 @@
//
#include "JSystem/JUtility/JUTNameTab.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
JUTNameTab::JUTNameTab() {
setResource(NULL);

View File

@ -246,7 +246,8 @@ void JUTResFont::setGX() {
GXSetNumTevStages(1);
GXSetNumTexGens(1);
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0);
GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT0, GX_DF_NONE, GX_AF_NONE);
GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE,
GX_AF_NONE);
GXSetTevOp(GX_TEVSTAGE0, GX_MODULATE);
GXSetBlendMode(GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_SET);
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_CLR_RGBA, GX_RGBA4, 0);
@ -268,18 +269,19 @@ void JUTResFont::setGX(JUtility::TColor param_0, JUtility::TColor param_1) {
GXSetNumTevStages(2);
GXSetNumTexGens(1);
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL);
GXSetChanCtrl(GX_COLOR0A0, 0, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT0, GX_DF_NONE, GX_AF_NONE);
GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE,
GX_AF_NONE);
GXSetTevColor(GX_TEVREG0, param_0);
GXSetTevColor(GX_TEVREG1, param_1);
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_C0, GX_CC_C1, GX_CC_TEXC, GX_CC_ZERO);
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_A0, GX_CA_A1, GX_CA_TEXA, 7);
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV);
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV);
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_A0, GX_CA_A1, GX_CA_TEXA, GX_CA_ZERO);
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0);
GXSetTevColorIn(GX_TEVSTAGE1, GX_CC_ZERO, GX_CC_CPREV, GX_CC_RASC, GX_CC_ZERO);
GXSetTevAlphaIn(GX_TEVSTAGE1, 7, GX_CA_APREV, GX_CA_TEXB, 7);
GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV);
GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, 1, GX_TEVPREV);
GXSetTevAlphaIn(GX_TEVSTAGE1, GX_CA_ZERO, GX_CA_APREV, GX_CA_RASA, GX_CA_ZERO);
GXSetTevColorOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
GXSetTevAlphaOp(GX_TEVSTAGE1, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
GXSetBlendMode(GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_SET);
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_CLR_RGBA, GX_RGBA4, 0);
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0);

View File

@ -11,7 +11,6 @@
// Forward References:
//
extern "C" void tolower();
extern "C" extern u8 __upper_map[256];
//
@ -67,7 +66,7 @@ SECTION_DATA extern u8 __lower_map[256] = {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void tolower() {
asm int tolower(int) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/ctype/tolower.s"
}

View File

@ -7,19 +7,6 @@
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Forward References:
//
extern "C" void strrchr();
extern "C" void strchr();
extern "C" void strncmp();
extern "C" void strcmp();
extern "C" void strcat();
extern "C" void strncpy();
extern "C" void strcpy();
extern "C" void strlen();
//
// External References:
//
@ -34,7 +21,7 @@ extern "C" void _epilog();
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strrchr() {
asm char* strrchr(const char*, int) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strrchr.s"
}
@ -44,7 +31,7 @@ asm void strrchr() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strchr() {
asm char* strchr(const char*, int) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strchr.s"
}
@ -54,7 +41,7 @@ asm void strchr() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strncmp() {
asm int strncmp(const char*, const char*, u32) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strncmp.s"
}
@ -64,7 +51,7 @@ asm void strncmp() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strcmp() {
asm int strcmp(const char*, const char*) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strcmp.s"
}
@ -74,7 +61,7 @@ asm void strcmp() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strcat() {
asm char* strcat(char*, const char*) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strcat.s"
}
@ -84,7 +71,7 @@ asm void strcat() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strncpy() {
asm char* strncpy(char*, const char*, u32) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strncpy.s"
}
@ -94,7 +81,7 @@ asm void strncpy() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strcpy() {
asm char* strcpy(char*, const char*) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strcpy.s"
}
@ -104,7 +91,7 @@ asm void strcpy() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void strlen() {
asm u32 strlen(const char*) {
nofralloc
#include "asm/MSL_C.PPCEABI.bare.H/MSL_Common/Src/string/strlen.s"
}

View File

@ -5,13 +5,13 @@
#include "SSystem/SComponent/c_lib.h"
#include "JSystem/JMath/JMath.h"
#include "MSL_C.PPCEABI.bare.H/MSL_Common/src/string.h"
#include "SSystem/SComponent/c_math.h"
#include "SSystem/SComponent/c_xyz.h"
#include "dol2asm.h"
#include "dolphin/mtx/mtxvec.h"
#include "dolphin/types.h"
#include "msl_c/math.h"
#include "msl_c/string.h"
//
// Forward References:

View File

@ -3583,17 +3583,8 @@ extern "C" void entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey();
extern "C" void load__20J3DAnmLoaderDataBaseFPCv24J3DAnmLoaderDataBaseFlag();
extern "C" void JMAEulerToQuat__FsssP10Quaternion();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXSetCullMode();
extern "C" void GXLoadLightObjImm();
extern "C" void GXSetChanAmbColor();
extern "C" void GXSetChanMatColor();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetZMode();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXLoadNrmMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void __register_global_object();
extern "C" void __destroy_arr();
extern "C" void __construct_array();

View File

@ -133,9 +133,6 @@ extern "C" void __ct__19J3DAnmTextureSRTKeyFv();
extern "C" void __ct__16J3DAnmTexPatternFv();
extern "C" void load__20J3DAnmLoaderDataBaseFPCv24J3DAnmLoaderDataBaseFlag();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetNumIndStages();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void _savegpr_27();
extern "C" void _savegpr_29();
extern "C" void _restgpr_27();

View File

@ -9,7 +9,6 @@
#include "d/meter/d_meter2_info.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
//
// Types:

View File

@ -259,37 +259,15 @@ extern "C" void entryImm__13J3DDrawBufferFP9J3DPacketUs();
extern "C" void draw__13J3DDrawBufferCFv();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetArray();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXPixModeSync();
extern "C" void GXPeekZ();
extern "C" void GXSetLineWidth();
extern "C" void GXSetPointSize();
extern "C" void GXSetCullMode();
extern "C" void GXSetTexCopySrc();
extern "C" void GXSetTexCopyDst();
extern "C" void GXCopyTex();
extern "C" void GXSetChanMatColor();
extern "C" void GXGetTexObjWidth();
extern "C" void GXGetTexObjHeight();
extern "C" void GXGetTexObjWrapS();
extern "C" void GXGetTexObjWrapT();
extern "C" void GXGetTexObjTlut();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetTevSwapModeTable();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetFog();
extern "C" void GXSetColorUpdate();
extern "C" void GXSetAlphaUpdate();
extern "C" void GXSetZMode();
extern "C" void GXSetZCompLoc();
extern "C" void GXSetDither();
extern "C" void GXSetProjection();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void GXLoadTexMtxImm();
extern "C" void GXSetViewport();
extern "C" void GXSetScissor();
extern "C" void GXSetClipMode();
extern "C" void __destroy_arr();
extern "C" void __construct_array();
extern "C" void _savefpr_26();

View File

@ -39,8 +39,6 @@ struct dBgS_CamGndChk_Wtr {
struct color_RGB_class {};
struct _GXFogType {};
struct Z2SeMgr {
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
@ -349,15 +347,7 @@ extern "C" void setEffectMtx__13J3DTexMtxInfoFPA4_f();
extern "C" void simpleCalcMaterial__12J3DModelDataFUsPA4_f();
extern "C" void init__12J3DFrameCtrlFs();
extern "C" void GXInitLightAttn();
extern "C" void GXInitLightSpot();
extern "C" void GXInitLightDistAttn();
extern "C" void GXInitLightPos();
extern "C" void GXInitLightDir();
extern "C" void GXInitLightColor();
extern "C" void GXLoadLightObjImm();
extern "C" void GXSetChanAmbColor();
extern "C" void GXSetFog();
extern "C" void GXSetFogRangeAdj();
extern "C" void __register_global_object();
extern "C" void __destroy_arr();
extern "C" void __construct_array();

View File

@ -375,20 +375,7 @@ extern "C" void getTotalFreeSize__7JKRHeapFv();
extern "C" void* __nw__FUl();
extern "C" void __dl__FPv();
extern "C" void GXClearVtxDesc();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXPixModeSync();
extern "C" void GXSetCullMode();
extern "C" void GXSetTexCopySrc();
extern "C" void GXSetTexCopyDst();
extern "C" void GXCopyTex();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetFog();
extern "C" void GXSetFogRangeAdj();
extern "C" void GXSetZMode();
extern "C" void GXSetZCompLoc();
extern "C" void GXSetDither();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void __ptmf_scall();
extern "C" void _savegpr_28();
extern "C" void _savegpr_29();

View File

@ -8,7 +8,6 @@
#include "d/save/d_save.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "msl_c/string.h"
//
// Forward References:

View File

@ -562,23 +562,11 @@ extern "C" void entryTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern();
extern "C" void entryTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey();
extern "C" void GXClearVtxDesc();
extern "C" void GXInvalidateVtxCache();
extern "C" void GXSetTexCoordGen2();
extern "C" void GXFlush();
extern "C" void GXEnableTexOffsets();
extern "C" void GXSetCullMode();
extern "C" void GXSetCoPlanar();
extern "C" void GXSetChanAmbColor();
extern "C" void GXSetChanMatColor();
extern "C" void GXSetNumIndStages();
extern "C" void GXSetAlphaCompare();
extern "C" void GXSetColorUpdate();
extern "C" void GXSetAlphaUpdate();
extern "C" void GXSetZMode();
extern "C" void GXSetZCompLoc();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXLoadNrmMtxImm();
extern "C" void GXSetCurrentMtx();
extern "C" void GXSetClipMode();
extern "C" void __register_global_object();
extern "C" void __destroy_new_array();
extern "C" void __construct_array();

View File

@ -20,7 +20,6 @@
#include "m_Do/m_Do_ext.h"
#include "m_Do/m_Do_lib.h"
#include "msl_c/math.h"
#include "msl_c/string.h"
//
// Types:

View File

@ -33,7 +33,6 @@ SECTION_INIT void __init_registers();
SECTION_INIT void __init_data();
SECTION_INIT void __init_hardware();
SECTION_INIT void __flush_cache();
SECTION_INIT void memset();
SECTION_INIT void __fill_mem();
SECTION_INIT void TRK_memset();
SECTION_INIT void TRK_memcpy();
@ -147,7 +146,7 @@ SECTION_INIT asm void __flush_cache() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
SECTION_INIT asm void memset() {
SECTION_INIT asm void* memset(void*, int, u32) {
nofralloc
#include "asm/init/memset.s"
}

View File

@ -163,8 +163,6 @@ struct dDlst_list_c {
/* 800565EC */ void entryZSortXluDrawList(J3DDrawBuffer*, J3DPacket*, cXyz&);
};
struct _GXCompare {};
struct JAISoundID {};
struct Z2SoundHandlePool {};
@ -563,8 +561,6 @@ extern "C" void GXSetArray();
extern "C" void GXGetTexObjWidth();
extern "C" void GXGetTexObjHeight();
extern "C" void GXSetTexCoordScaleManually();
extern "C" void GXSetNumIndStages();
extern "C" void GXLoadPosMtxImm();
extern "C" void GXLoadNrmMtxImm();
extern "C" void __construct_new_array();
extern "C" void _savegpr_15();

View File

@ -17,7 +17,6 @@
#include "m_Do/m_Do_controller_pad.h"
#include "m_Do/m_Do_dvd_thread.h"
#include "m_Do/m_Do_graphic.h"
#include "msl_c/string.h"
//
// Types: