mirror of
https://github.com/zeldaret/tp
synced 2026-06-09 20:50:45 -04:00
Various JSystem work (#2383)
* JKernel and JStudio cleanup * JMessage cleanup * JAudio cleanup * JASBNKParser work * functionvalue work * fvb work * J2D and J3D cleanup * steal from tww * J2DPictureEx mostly done * fix build
This commit is contained in:
@@ -774,48 +774,12 @@ public:
|
||||
void setTexGenNum(u32 num) { mTexGenNum = num; }
|
||||
void setTexCoord(u32 i, J2DTexCoord coord) { mTexGenCoord[i] = coord; }
|
||||
void setTexMtx(u32 i, J2DTexMtx* mtx) { mTexMtx[i] = mtx; }
|
||||
J2DTexMtx& getTexMtx(u32 i) { return *mTexMtx[i]; }
|
||||
J2DTexCoord& getTexCoord(u32 i) { return mTexGenCoord[i]; }
|
||||
|
||||
/* 802EB620 */ virtual ~J2DTexGenBlock();
|
||||
}; // Size: 0x48
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-j2d
|
||||
*
|
||||
*/
|
||||
struct J2DColorChanInfo {
|
||||
/* 0x0 */ u8 field_0x0;
|
||||
/* 0x0 */ u8 field_0x1;
|
||||
/* 0x0 */ u8 field_0x2;
|
||||
/* 0x0 */ u8 field_0x3;
|
||||
};
|
||||
|
||||
inline u8 J2DCalcColorChanID(const J2DColorChanInfo& info) { return info.field_0x1; }
|
||||
extern const J2DColorChanInfo j2dDefaultColorChanInfo;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-j2d
|
||||
*
|
||||
*/
|
||||
class J2DColorChan {
|
||||
public:
|
||||
/* 802EB280 */ J2DColorChan() {
|
||||
setColorChanInfo(j2dDefaultColorChanInfo);
|
||||
}
|
||||
J2DColorChan(const J2DColorChanInfo& info) {
|
||||
mColorChan = J2DCalcColorChanID(info);
|
||||
}
|
||||
|
||||
void setColorChanInfo(const J2DColorChanInfo& info) {
|
||||
mColorChan = J2DCalcColorChanID(info);
|
||||
}
|
||||
|
||||
u16 getMatSrc() const { return mColorChan & 1; }
|
||||
|
||||
private:
|
||||
/* 0x0 */ u16 mColorChan;
|
||||
};
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-j2d
|
||||
*
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
#define J2DPICTURE_H
|
||||
|
||||
#include "JSystem/J2DGraph/J2DPane.h"
|
||||
#include "JSystem/JUtility/JUTTexture.h"
|
||||
#include "JSystem/JUtility/TColor.h"
|
||||
|
||||
class J2DMaterial;
|
||||
class JUTPalette;
|
||||
class JUTTexture;
|
||||
struct ResTIMG;
|
||||
struct ResTLUT;
|
||||
|
||||
@@ -55,28 +55,42 @@ struct J2DScrnBlockPictureParameter {
|
||||
class J2DPicture : public J2DPane {
|
||||
public:
|
||||
/* 802FCFF0 */ virtual ~J2DPicture();
|
||||
/* 802FF2E8 */ virtual u16 getTypeID() const;
|
||||
/* 802FF2E8 */ virtual u16 getTypeID() const { return 18; }
|
||||
/* 802FDB28 */ virtual void drawSelf(f32, f32);
|
||||
/* 802FDB90 */ virtual void drawSelf(f32, f32, Mtx*);
|
||||
/* 802FF09C */ virtual bool isUsed(ResTIMG const*);
|
||||
/* 802FF63C */ virtual bool isUsed(ResFONT const*);
|
||||
/* 802FF65C */ virtual void rewriteAlpha();
|
||||
/* 802FCCDC */ virtual void initiate(ResTIMG const*, ResTLUT const*);
|
||||
/* 802FD098 */ virtual bool prepareTexture(u8);
|
||||
/* 801BDD40 */ virtual bool append(ResTIMG const*, f32);
|
||||
/* 802FF238 */ virtual bool append(ResTIMG const*, JUTPalette*, f32);
|
||||
/* 801BDD40 */ virtual bool append(ResTIMG const* param_0, f32 param_1) {
|
||||
return insert(param_0, mTextureNum, param_1);
|
||||
}
|
||||
/* 802FF238 */ virtual bool append(ResTIMG const* param_0, JUTPalette* param_1, f32 param_2) {
|
||||
return insert(param_0, param_1, mTextureNum, param_2);
|
||||
}
|
||||
/* 80020338 */ virtual bool append(char const* param_0, f32 param_1) {
|
||||
return insert(param_0, mTextureNum, param_1);
|
||||
}
|
||||
|
||||
/* 802FF2F0 */ virtual bool append(char const*, JUTPalette*, f32);
|
||||
/* 802FF208 */ virtual bool append(JUTTexture*, f32);
|
||||
/* 802FF3E0 */ virtual void prepend(ResTIMG const*, f32);
|
||||
/* 802FF3B0 */ virtual void prepend(ResTIMG const*, JUTPalette*, f32);
|
||||
/* 802FF380 */ virtual void prepend(char const*, f32);
|
||||
/* 802FF350 */ virtual void prepend(char const*, JUTPalette*, f32);
|
||||
/* 802FF320 */ virtual void prepend(JUTTexture*, f32);
|
||||
/* 801BDD70 */ virtual void insert(ResTIMG const*, u8, f32);
|
||||
/* 802FF2F0 */ virtual bool append(char const* param_0, JUTPalette* param_1, f32 param_2) {
|
||||
return insert(param_0, param_1, mTextureNum, param_2);
|
||||
}
|
||||
/* 802FF208 */ virtual bool append(JUTTexture* param_0, f32 param_1) {
|
||||
return insert(param_0, mTextureNum, param_1);
|
||||
}
|
||||
/* 802FF3E0 */ virtual void prepend(ResTIMG const* param_0, f32 param_1) {
|
||||
insert(param_0, 0, param_1);
|
||||
}
|
||||
/* 802FF3B0 */ virtual void prepend(ResTIMG const* param_0, JUTPalette* param_1, f32 param_2) {
|
||||
insert(param_0, param_1, 0, param_2);
|
||||
}
|
||||
/* 802FF380 */ virtual void prepend(char const* param_0, f32 param_1) {
|
||||
insert(param_0, 0, param_1);
|
||||
}
|
||||
/* 802FF350 */ virtual void prepend(char const* param_0, JUTPalette* param_1, f32 param_2) {
|
||||
insert(param_0, param_1, 0, param_2);
|
||||
}
|
||||
/* 802FF320 */ virtual void prepend(JUTTexture* param_0, f32 param_1) {
|
||||
insert(param_0, 0, param_1);
|
||||
}
|
||||
/* 801BDD70 */ virtual bool insert(ResTIMG const*, u8, f32);
|
||||
/* 802FD168 */ virtual bool insert(ResTIMG const*, JUTPalette*, u8, f32);
|
||||
/* 80020368 */ virtual bool insert(char const* param_0, u8 param_1, f32 param_2) {
|
||||
return insert(param_0, NULL, param_1, param_2);
|
||||
@@ -84,16 +98,40 @@ public:
|
||||
/* 802FD4B4 */ virtual bool insert(char const*, JUTPalette*, u8, f32);
|
||||
/* 802FD524 */ virtual bool insert(JUTTexture*, u8, f32);
|
||||
/* 802FD6F4 */ virtual bool remove(u8);
|
||||
/* 802FF410 */ virtual bool remove();
|
||||
/* 802FF410 */ virtual bool remove() { return remove(mTextureNum - 1); }
|
||||
/* 802FD814 */ virtual bool remove(JUTTexture*);
|
||||
/* 802FF4E0 */ virtual void draw(f32, f32, bool, bool, bool);
|
||||
/* 802FF448 */ virtual void draw(f32, f32, u8, bool, bool, bool);
|
||||
/* 802FF4E0 */ virtual void draw(f32 param_0, f32 param_1, bool param_2, bool param_3,
|
||||
bool param_4) {
|
||||
draw(param_0, param_1, 0, param_2, param_3, param_4);
|
||||
}
|
||||
/* 802FF448 */ virtual void draw(f32 param_0, f32 param_1, u8 param_2, bool param_3,
|
||||
bool param_4, bool param_5) {
|
||||
if (param_2 < mTextureNum && mTexture[param_2] != NULL) {
|
||||
draw(param_0, param_1, mTexture[param_2]->getWidth(), mTexture[param_2]->getHeight(),
|
||||
param_3, param_4, param_5);
|
||||
}
|
||||
}
|
||||
/* 802FDC70 */ virtual void draw(f32, f32, f32, f32, bool, bool, bool);
|
||||
/* 802FF588 */ virtual void drawOut(f32, f32, f32, f32, f32, f32);
|
||||
/* 802FF524 */ virtual void drawOut(f32, f32, f32, f32, f32, f32, f32, f32);
|
||||
/* 802FF588 */ virtual void drawOut(f32 param_0, f32 param_1, f32 param_2, f32 param_3,
|
||||
f32 param_4, f32 param_5) {
|
||||
if (mTexture[0] != NULL) {
|
||||
drawOut(JGeometry::TBox2<f32>(param_0, param_1, param_0 + param_2, param_1 + param_3),
|
||||
JGeometry::TBox2<f32>(param_4, param_5, param_4 + mTexture[0]->getWidth(),
|
||||
param_5 + mTexture[0]->getHeight()));
|
||||
}
|
||||
}
|
||||
/* 802FF524 */ virtual void drawOut(f32 param_0, f32 param_1, f32 param_2, f32 param_3,
|
||||
f32 param_4, f32 param_5, f32 param_6, f32 param_7) {
|
||||
drawOut(JGeometry::TBox2<f32>(param_0, param_1, param_0 + param_2, param_1 + param_3),
|
||||
JGeometry::TBox2<f32>(param_4, param_5, param_4 + param_6, param_5 + param_7));
|
||||
}
|
||||
/* 802FDF88 */ virtual void drawOut(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
|
||||
/* 802FF29C */ virtual void load(_GXTexMapID, u8);
|
||||
/* 802FF268 */ virtual void load(u8);
|
||||
/* 802FF29C */ virtual void load(_GXTexMapID param_0, u8 param_1) {
|
||||
if (param_1 < mTextureNum && param_1 < 2 && mTexture[param_1] != NULL) {
|
||||
mTexture[param_1]->load(param_0);
|
||||
}
|
||||
}
|
||||
/* 802FF268 */ virtual void load(u8 param_0) { load((_GXTexMapID)param_0, param_0); }
|
||||
/* 800202CC */ virtual void setBlendRatio(f32 param_0, f32 param_1) {
|
||||
setBlendColorRatio(param_0, param_1);
|
||||
setBlendAlphaRatio(param_0, param_1);
|
||||
@@ -105,7 +143,7 @@ public:
|
||||
/* 802FD9BC */ virtual const ResTIMG* changeTexture(ResTIMG const*, u8, JUTPalette*);
|
||||
/* 802FDAC8 */ virtual const ResTIMG* changeTexture(char const*, u8, JUTPalette*);
|
||||
/* 800539DC */ virtual JUTTexture* getTexture(u8) const;
|
||||
/* 802FF634 */ virtual u8 getTextureCount() const;
|
||||
/* 802FF634 */ virtual u8 getTextureCount() const { return mTextureNum; }
|
||||
/* 80053C6C */ virtual bool setBlack(JUtility::TColor i_black) {
|
||||
mBlack = i_black;
|
||||
return true;
|
||||
@@ -130,6 +168,9 @@ public:
|
||||
/* 802FE380 */ virtual void drawTexCoord(f32, f32, f32, f32, s16, s16, s16, s16, s16, s16, s16,
|
||||
s16, Mtx*);
|
||||
/* 802FF100 */ virtual u8 getUsableTlut(u8);
|
||||
/* 802FF09C */ virtual bool isUsed(ResTIMG const*);
|
||||
/* 802FF63C */ virtual bool isUsed(ResFONT const* param_0) { return J2DPane::isUsed(param_0); }
|
||||
/* 802FF65C */ virtual void rewriteAlpha() {}
|
||||
|
||||
/* 802FC800 */ J2DPicture(u64, JGeometry::TBox2<f32> const&, ResTIMG const*, ResTLUT const*);
|
||||
/* 802FC708 */ J2DPicture(ResTIMG const*);
|
||||
|
||||
@@ -12,7 +12,16 @@ class J2DMaterial;
|
||||
*/
|
||||
class J2DPictureEx : public J2DPicture {
|
||||
public:
|
||||
enum stage_enum {};
|
||||
enum stage_enum {
|
||||
STAGE_0,
|
||||
STAGE_1,
|
||||
STAGE_2,
|
||||
STAGE_3,
|
||||
STAGE_4,
|
||||
STAGE_5,
|
||||
STAGE_6,
|
||||
STAGE_7,
|
||||
};
|
||||
|
||||
/* 803036EC */ J2DPictureEx(J2DPane*, JSURandomInputStream*, u32, J2DMaterial*);
|
||||
/* 803040E4 */ void insertCommon(u8, f32);
|
||||
@@ -57,7 +66,7 @@ public:
|
||||
/* 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);
|
||||
/* 80307058 */ virtual bool insert(ResTIMG const*, u8, f32);
|
||||
/* 80303F34 */ virtual bool insert(ResTIMG const*, JUTPalette*, u8, f32);
|
||||
/* 80307024 */ virtual bool insert(char const*, u8, f32);
|
||||
/* 80303FD8 */ virtual bool insert(char const*, JUTPalette*, u8, f32);
|
||||
@@ -100,8 +109,9 @@ private:
|
||||
/* 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;
|
||||
/* 0x194 */ J2DAnmVisibilityFull* field_0x194;
|
||||
/* 0x198 */ J2DAnmVtxColor* field_0x198;
|
||||
/* 0x19C */ u8 field_0x19c;
|
||||
};
|
||||
|
||||
#endif /* J2DPICTUREEX_H */
|
||||
|
||||
@@ -279,11 +279,11 @@ extern J2DTexCoordInfo const j2dDefaultTexCoordInfo[8];
|
||||
class J2DTexCoord {
|
||||
public:
|
||||
/* 802EB260 */ inline J2DTexCoord() {
|
||||
*(J2DTexCoordInfo*)this = j2dDefaultTexCoordInfo[0];
|
||||
mTexCoordInfo = j2dDefaultTexCoordInfo[0];
|
||||
}
|
||||
|
||||
J2DTexCoord(const J2DTexCoordInfo& info) {
|
||||
*(J2DTexCoordInfo*)this = info;
|
||||
mTexCoordInfo = info;
|
||||
}
|
||||
void setTexCoordInfo(const J2DTexCoordInfo& info) { mTexCoordInfo = info; }
|
||||
void setTexGenMtx(u8 texGenMtx) { mTexCoordInfo.mTexGenMtx = texGenMtx; }
|
||||
@@ -553,6 +553,43 @@ private:
|
||||
/* 0x0 */ u8 field_0x0;
|
||||
};
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-j2d
|
||||
*
|
||||
*/
|
||||
struct J2DColorChanInfo {
|
||||
/* 0x0 */ u8 field_0x0;
|
||||
/* 0x0 */ u8 field_0x1;
|
||||
/* 0x0 */ u8 field_0x2;
|
||||
/* 0x0 */ u8 field_0x3;
|
||||
};
|
||||
|
||||
inline u8 J2DCalcColorChanID(const J2DColorChanInfo& info) { return info.field_0x1; }
|
||||
extern const J2DColorChanInfo j2dDefaultColorChanInfo;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-j2d
|
||||
*
|
||||
*/
|
||||
class J2DColorChan {
|
||||
public:
|
||||
/* 802EB280 */ J2DColorChan() {
|
||||
setColorChanInfo(j2dDefaultColorChanInfo);
|
||||
}
|
||||
J2DColorChan(const J2DColorChanInfo& info) {
|
||||
mColorChan = J2DCalcColorChanID(info);
|
||||
}
|
||||
|
||||
void setColorChanInfo(const J2DColorChanInfo& info) {
|
||||
mColorChan = J2DCalcColorChanID(info);
|
||||
}
|
||||
|
||||
u16 getMatSrc() const { return mColorChan & 1; }
|
||||
|
||||
private:
|
||||
/* 0x0 */ u16 mColorChan;
|
||||
};
|
||||
|
||||
extern const GXColor j2dDefaultColInfo;
|
||||
extern const GXColorS10 j2dDefaultTevColor;
|
||||
extern const GXColor j2dDefaultTevKColor;
|
||||
|
||||
Reference in New Issue
Block a user