diff options
| author | TakaRikka <38417346+TakaRikka@users.noreply.github.com> | 2022-04-12 13:44:06 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-04-12 16:44:06 -0400 |
| commit | a1099217d65362f16dd90284670a7dd37702a3ca (patch) | |
| tree | 60c793775b1ce6d1a7d6191ff6a0df877e64d358 /include | |
| parent | 4270643931a2e384929a1af339d45a5221915bf3 (diff) | |
J2DScreen / some J2DMaterial (#191)
* j2dscreen
* some j2dmaterial work
* remove asm
Diffstat (limited to 'include')
| -rw-r--r-- | include/JSystem/J2DGraph/J2DAnimation.h | 18 | ||||
| -rw-r--r-- | include/JSystem/J2DGraph/J2DMatBlock.h | 300 | ||||
| -rw-r--r-- | include/JSystem/J2DGraph/J2DMaterial.h | 20 | ||||
| -rw-r--r-- | include/JSystem/J2DGraph/J2DScreen.h | 42 | ||||
| -rw-r--r-- | include/JSystem/J3DGraphAnimator/J3DAnimation.h | 10 | ||||
| -rw-r--r-- | include/JSystem/JSupport/JSUMemoryStream.h | 4 |
6 files changed, 240 insertions, 154 deletions
diff --git a/include/JSystem/J2DGraph/J2DAnimation.h b/include/JSystem/J2DGraph/J2DAnimation.h index bc4d9a94bc..3a99422819 100644 --- a/include/JSystem/J2DGraph/J2DAnimation.h +++ b/include/JSystem/J2DGraph/J2DAnimation.h @@ -189,6 +189,8 @@ public: /* 80184274 */ virtual ~J2DAnmTextureSRTKey() {} /* 8030BC60 */ virtual void searchUpdateMaterialID(J2DScreen*); u16 getUpdateMaterialNum() const { return mUpdateMaterialNum / 3; } + u16 getUpdateMaterialID(u16 i) const { return mUpdateMaterialID[i]; } + u8 getUpdateTexMtxID(u16 i) const { return mUpdateTexMtxID[i]; } /* 0x10 */ int field_0x10; /* 0x14 */ J3DAnmTransformKeyTable* mInfoTable; @@ -233,7 +235,7 @@ public: mAnmTable = NULL; mKind = KIND_TEX_PATTERN; mUpdateMaterialNum = 0; - mUpdaterMaterialID = NULL; + mUpdateMaterialID = NULL; mTIMGPtrArray = NULL; } @@ -244,12 +246,14 @@ public: /* 8030CB90 */ virtual ~J2DAnmTexPattern() { delete[] mTIMGPtrArray; } /* 8030BD10 */ virtual void searchUpdateMaterialID(J2DScreen*); u16 getUpdateMaterialNum() const { return mUpdateMaterialNum; } + u16 getUpdateMaterialID(u16 i) const { return mUpdateMaterialID[i]; } + J3DAnmTexPatternFullTable* getAnmTable() const { return mAnmTable; } /* 0x10 */ u16* mValues; /* 0x14 */ J3DAnmTexPatternFullTable* mAnmTable; /* 0x18 */ u16 field_0x18; /* 0x1A */ u16 mUpdateMaterialNum; - /* 0x1C */ u16* mUpdaterMaterialID; + /* 0x1C */ u16* mUpdateMaterialID; /* 0x20 */ JUTNameTab field_0x20; /* 0x30 */ J2DAnmTexPatternTIMGPointer* mTIMGPtrArray; }; @@ -285,6 +289,15 @@ public: /* 801841EC */ virtual ~J2DAnmTevRegKey() {} /* 8030C678 */ virtual void searchUpdateMaterialID(J2DScreen* pScreen); + u16 getCRegUpdateMaterialNum() const { return mCRegUpdateMaterialNum; } + u16 getCRegUpdateMaterialID(u16 i) const { return mCRegUpdateMaterialID[i]; } + + u16 getKRegUpdateMaterialNum() const { return mKRegUpdateMaterialNum; } + u16 getKRegUpdateMaterialID(u16 i) const { return mKRegUpdateMaterialID[i]; } + + J3DAnmCRegKeyTable* getAnmCRegKeyTable() const { return mAnmCRegKeyTable; } + J3DAnmKRegKeyTable* getAnmKRegKeyTable() const { return mAnmKRegKeyTable; } + /* 0x10 */ u16 mCRegUpdateMaterialNum; /* 0x12 */ u16 mKRegUpdateMaterialNum; /* 0x14 */ u16 field_0x14; @@ -326,6 +339,7 @@ public: /* 8030AF24 */ virtual void searchUpdateMaterialID(J2DScreen*); /* 802EB390 */ virtual void getColor(u16, _GXColor*) const; u16 getUpdateMaterialNum() const { return mUpdateMaterialNum; } + u16 getUpdateMaterialID(u16 i) const { return mUpdateMaterialID[i]; } /* 0x10 */ u16 field_0x10; /* 0x12 */ u16 field_0x12; diff --git a/include/JSystem/J2DGraph/J2DMatBlock.h b/include/JSystem/J2DGraph/J2DMatBlock.h index 810fccc091..5b80a90f18 100644 --- a/include/JSystem/J2DGraph/J2DMatBlock.h +++ b/include/JSystem/J2DGraph/J2DMatBlock.h @@ -21,9 +21,9 @@ public: virtual void getType() = 0; virtual s32 getMaxStage() = 0; /* 802EB1DC */ virtual void setTexNo(u32, u16); - /* 802EA170 */ virtual void getTexNo(u32) const; + /* 802EA170 */ virtual u32 getTexNo(u32) const; /* 802F2A48 */ virtual void setFontNo(u16); - /* 802EA164 */ virtual void getFontNo() const; + /* 802EA164 */ virtual u32 getFontNo() const; /* 802F2A4C */ virtual void setTevOrder(u32, J2DTevOrder); /* 802EA144 */ virtual bool getTevOrder(u32); /* 802EB1D8 */ virtual void setTevColor(u32, J2DGXColorS10); @@ -72,41 +72,41 @@ public: /* 802F27A0 */ virtual void getType(); /* 802F27AC */ virtual s32 getMaxStage(); /* 802F27B4 */ virtual void setTexNo(u32, u16); - /* 802F27C4 */ virtual void getTexNo(u32) const; + /* 802F27C4 */ virtual u32 getTexNo(u32) const; /* 802F27D4 */ virtual void setFontNo(u16); - /* 802F27DC */ virtual void getFontNo() const; + /* 802F27DC */ virtual u32 getFontNo() const; /* 802F27E4 */ virtual void setTevOrder(u32, J2DTevOrder); - /* 802F2808 */ virtual void getTevOrder(u32); + /* 802F2808 */ virtual bool getTevOrder(u32); /* 802F281C */ virtual void setTevColor(u32, J2DGXColorS10); - /* 802F2848 */ virtual void getTevColor(u32); + /* 802F2848 */ virtual bool getTevColor(u32); /* 802F285C */ virtual void setTevKColor(u32, JUtility::TColor); - /* 802F2888 */ virtual void getTevKColor(u32); + /* 802F2888 */ virtual bool getTevKColor(u32); /* 802F289C */ virtual void setTevKColorSel(u32, u8); - /* 802F28A8 */ virtual void getTevKColorSel(u32); + /* 802F28A8 */ virtual bool getTevKColorSel(u32); /* 802F28B4 */ virtual void setTevKAlphaSel(u32, u8); - /* 802F28C0 */ virtual void getTevKAlphaSel(u32); + /* 802F28C0 */ virtual bool getTevKAlphaSel(u32); /* 802F28CC */ virtual void setTevStageNum(u8); /* 802F28D0 */ virtual bool getTevStageNum() const; /* 802F28D8 */ virtual void setTevStage(u32, J2DTevStage); - /* 802F2914 */ virtual void getTevStage(u32); + /* 802F2914 */ virtual bool getTevStage(u32); /* 802F2928 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo); /* 802F2960 */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable); - /* 802F2970 */ virtual void getTevSwapModeTable(u32); + /* 802F2970 */ virtual bool 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(); + /* 802F2994 */ virtual bool getIndTevStage(u32); + /* 802F29A8 */ virtual bool insertTexture(u32, ResTIMG const*); + /* 802EBCC0 */ virtual bool insertTexture(u32, ResTIMG const*, JUTPalette*); + /* 802EBDE4 */ virtual bool insertTexture(u32, JUTTexture*); + /* 802EBE8C */ virtual bool setTexture(u32, ResTIMG const*); + /* 802EC01C */ virtual bool setTexture(u32, JUTTexture*); + /* 802EC0A8 */ virtual bool removeTexture(u32); + /* 802EC124 */ virtual bool setFont(ResFONT*); + /* 802EC1D8 */ virtual bool setFont(JUTFont*); + /* 802EC258 */ virtual bool setPalette(u32, ResTLUT const*); + /* 802EBC0C */ virtual bool prepareTexture(u8); + /* 802F29D8 */ virtual bool getTexture(u32); + /* 802F29F8 */ virtual bool getPalette(u32); + /* 802F2A18 */ virtual bool getFont(); /* 802EC318 */ virtual void shiftDeleteFlag(u8, bool); /* 802F2A20 */ virtual void setUndeleteFlag(u8); /* 802F2A30 */ virtual void setFontUndeleteFlag(); @@ -139,41 +139,41 @@ public: /* 802F24FC */ virtual void getType(); /* 802F2508 */ virtual s32 getMaxStage(); /* 802F2510 */ virtual void setTexNo(u32, u16); - /* 802F2520 */ virtual void getTexNo(u32) const; + /* 802F2520 */ virtual u32 getTexNo(u32) const; /* 802F2530 */ virtual void setFontNo(u16); - /* 802F2538 */ virtual void getFontNo() const; + /* 802F2538 */ virtual u32 getFontNo() const; /* 802F2540 */ virtual void setTevOrder(u32, J2DTevOrder); - /* 802F2564 */ virtual void getTevOrder(u32); + /* 802F2564 */ virtual bool getTevOrder(u32); /* 802F2578 */ virtual void setTevColor(u32, J2DGXColorS10); - /* 802F25A4 */ virtual void getTevColor(u32); + /* 802F25A4 */ virtual bool getTevColor(u32); /* 802F25B8 */ virtual void setTevKColor(u32, JUtility::TColor); - /* 802F25E4 */ virtual void getTevKColor(u32); + /* 802F25E4 */ virtual bool getTevKColor(u32); /* 802F25F8 */ virtual void setTevKColorSel(u32, u8); - /* 802F2604 */ virtual void getTevKColorSel(u32); + /* 802F2604 */ virtual bool getTevKColorSel(u32); /* 802F2610 */ virtual void setTevKAlphaSel(u32, u8); - /* 802F261C */ virtual void getTevKAlphaSel(u32); + /* 802F261C */ virtual bool getTevKAlphaSel(u32); /* 802F2628 */ virtual void setTevStageNum(u8); - /* 802F2630 */ virtual void getTevStageNum() const; + /* 802F2630 */ virtual bool getTevStageNum() const; /* 802F2638 */ virtual void setTevStage(u32, J2DTevStage); - /* 802F2674 */ virtual void getTevStage(u32); + /* 802F2674 */ virtual bool getTevStage(u32); /* 802F2688 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo); /* 802F26C0 */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable); - /* 802F26D0 */ virtual void getTevSwapModeTable(u32); + /* 802F26D0 */ virtual bool 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(); + /* 802F26F4 */ virtual bool getIndTevStage(u32); + /* 802F2708 */ virtual bool insertTexture(u32, ResTIMG const*); + /* 802ECAE8 */ virtual bool insertTexture(u32, ResTIMG const*, JUTPalette*); + /* 802ECDE8 */ virtual bool insertTexture(u32, JUTTexture*); + /* 802ECF48 */ virtual bool setTexture(u32, ResTIMG const*); + /* 802ED16C */ virtual bool setTexture(u32, JUTTexture*); + /* 802ED21C */ virtual bool removeTexture(u32); + /* 802ED2F0 */ virtual bool setFont(ResFONT*); + /* 802ED3A4 */ virtual bool setFont(JUTFont*); + /* 802ED424 */ virtual bool setPalette(u32, ResTLUT const*); + /* 802ECA18 */ virtual bool prepareTexture(u8); + /* 802F2738 */ virtual bool getTexture(u32); + /* 802F2758 */ virtual bool getPalette(u32); + /* 802F2778 */ virtual bool getFont(); /* 802ED4FC */ virtual void shiftDeleteFlag(u8, bool); /* 802F2780 */ virtual void setUndeleteFlag(u8); /* 802F2790 */ virtual void setFontUndeleteFlag(); @@ -207,41 +207,41 @@ public: /* 802F2258 */ virtual void getType(); /* 802F2264 */ virtual s32 getMaxStage(); /* 802F226C */ virtual void setTexNo(u32, u16); - /* 802F227C */ virtual void getTexNo(u32) const; + /* 802F227C */ virtual u32 getTexNo(u32) const; /* 802F228C */ virtual void setFontNo(u16); - /* 802F2294 */ virtual void getFontNo() const; + /* 802F2294 */ virtual u32 getFontNo() const; /* 802F229C */ virtual void setTevOrder(u32, J2DTevOrder); - /* 802F22C0 */ virtual void getTevOrder(u32); + /* 802F22C0 */ virtual bool getTevOrder(u32); /* 802F22D4 */ virtual void setTevColor(u32, J2DGXColorS10); - /* 802F2300 */ virtual void getTevColor(u32); + /* 802F2300 */ virtual bool getTevColor(u32); /* 802F2314 */ virtual void setTevKColor(u32, JUtility::TColor); - /* 802F2340 */ virtual void getTevKColor(u32); + /* 802F2340 */ virtual bool getTevKColor(u32); /* 802F2354 */ virtual void setTevKColorSel(u32, u8); - /* 802F2360 */ virtual void getTevKColorSel(u32); + /* 802F2360 */ virtual bool getTevKColorSel(u32); /* 802F236C */ virtual void setTevKAlphaSel(u32, u8); - /* 802F2378 */ virtual void getTevKAlphaSel(u32); + /* 802F2378 */ virtual bool getTevKAlphaSel(u32); /* 802F2384 */ virtual void setTevStageNum(u8); - /* 802F238C */ virtual void getTevStageNum() const; + /* 802F238C */ virtual bool getTevStageNum() const; /* 802F2394 */ virtual void setTevStage(u32, J2DTevStage); - /* 802F23D0 */ virtual void getTevStage(u32); + /* 802F23D0 */ virtual bool getTevStage(u32); /* 802F23E4 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo); /* 802F241C */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable); - /* 802F242C */ virtual void getTevSwapModeTable(u32); + /* 802F242C */ virtual bool 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(); + /* 802F2450 */ virtual bool getIndTevStage(u32); + /* 802F2464 */ virtual bool insertTexture(u32, ResTIMG const*); + /* 802EDE04 */ virtual bool insertTexture(u32, ResTIMG const*, JUTPalette*); + /* 802EE1D4 */ virtual bool insertTexture(u32, JUTTexture*); + /* 802EE364 */ virtual bool setTexture(u32, ResTIMG const*); + /* 802EE5F0 */ virtual bool setTexture(u32, JUTTexture*); + /* 802EE6A0 */ virtual bool removeTexture(u32); + /* 802EE798 */ virtual bool setFont(ResFONT*); + /* 802EE84C */ virtual bool setFont(JUTFont*); + /* 802EE8CC */ virtual bool setPalette(u32, ResTLUT const*); + /* 802EDD34 */ virtual bool prepareTexture(u8); + /* 802F2494 */ virtual bool getTexture(u32); + /* 802F24B4 */ virtual bool getPalette(u32); + /* 802F24D4 */ virtual bool getFont(); /* 802EE9A4 */ virtual void shiftDeleteFlag(u8, bool); /* 802F24DC */ virtual void setUndeleteFlag(u8); /* 802F24EC */ virtual void setFontUndeleteFlag(); @@ -275,41 +275,41 @@ public: /* 802F1FB8 */ virtual void getType(); /* 802F1FC4 */ virtual s32 getMaxStage(); /* 802F1FCC */ virtual void setTexNo(u32, u16); - /* 802F1FDC */ virtual void getTexNo(u32) const; + /* 802F1FDC */ virtual u32 getTexNo(u32) const; /* 802F1FEC */ virtual void setFontNo(u16); - /* 802F1FF4 */ virtual void getFontNo() const; + /* 802F1FF4 */ virtual u32 getFontNo() const; /* 802F1FFC */ virtual void setTevOrder(u32, J2DTevOrder); - /* 802F2020 */ virtual void getTevOrder(u32); + /* 802F2020 */ virtual bool getTevOrder(u32); /* 802F2034 */ virtual void setTevColor(u32, J2DGXColorS10); - /* 802F2060 */ virtual void getTevColor(u32); + /* 802F2060 */ virtual bool getTevColor(u32); /* 802F2074 */ virtual void setTevKColor(u32, JUtility::TColor); - /* 802F20A0 */ virtual void getTevKColor(u32); + /* 802F20A0 */ virtual bool getTevKColor(u32); /* 802F20B4 */ virtual void setTevKColorSel(u32, u8); - /* 802F20C0 */ virtual void getTevKColorSel(u32); + /* 802F20C0 */ virtual bool getTevKColorSel(u32); /* 802F20CC */ virtual void setTevKAlphaSel(u32, u8); - /* 802F20D8 */ virtual void getTevKAlphaSel(u32); + /* 802F20D8 */ virtual bool getTevKAlphaSel(u32); /* 802F20E4 */ virtual void setTevStageNum(u8); - /* 802F20EC */ virtual void getTevStageNum() const; + /* 802F20EC */ virtual bool getTevStageNum() const; /* 802F20F4 */ virtual void setTevStage(u32, J2DTevStage); - /* 802F2130 */ virtual void getTevStage(u32); + /* 802F2130 */ virtual bool getTevStage(u32); /* 802F2144 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo); /* 802F217C */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable); - /* 802F218C */ virtual void getTevSwapModeTable(u32); + /* 802F218C */ virtual bool 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(); + /* 802F21B0 */ virtual bool getIndTevStage(u32); + /* 802F21C4 */ virtual bool insertTexture(u32, ResTIMG const*); + /* 802EF2B0 */ virtual bool insertTexture(u32, ResTIMG const*, JUTPalette*); + /* 802EF67C */ virtual bool insertTexture(u32, JUTTexture*); + /* 802EF80C */ virtual bool setTexture(u32, ResTIMG const*); + /* 802EFA98 */ virtual bool setTexture(u32, JUTTexture*); + /* 802EFB48 */ virtual bool removeTexture(u32); + /* 802EFC40 */ virtual bool setFont(ResFONT*); + /* 802EFCEC */ virtual bool setFont(JUTFont*); + /* 802EFD68 */ virtual bool setPalette(u32, ResTLUT const*); + /* 802EF1E0 */ virtual bool prepareTexture(u8); + /* 802F21F4 */ virtual bool getTexture(u32); + /* 802F2214 */ virtual bool getPalette(u32); + /* 802F2234 */ virtual bool getFont(); /* 802EFE40 */ virtual void shiftDeleteFlag(u8, bool); /* 802F223C */ virtual void setUndeleteFlag(u8); /* 802F224C */ virtual void setFontUndeleteFlag(); @@ -344,47 +344,47 @@ public: /* 802F1D18 */ virtual void getType(); /* 802F1D24 */ virtual s32 getMaxStage(); /* 802F1D2C */ virtual void setTexNo(u32, u16); - /* 802F1D3C */ virtual void getTexNo(u32) const; + /* 802F1D3C */ virtual u32 getTexNo(u32) const; /* 802F1D4C */ virtual void setFontNo(u16); - /* 802F1D54 */ virtual void getFontNo() const; + /* 802F1D54 */ virtual u32 getFontNo() const; /* 802F1D5C */ virtual void setTevOrder(u32, J2DTevOrder); - /* 802F1D80 */ virtual void getTevOrder(u32); + /* 802F1D80 */ virtual bool getTevOrder(u32); /* 802F1D94 */ virtual void setTevColor(u32, J2DGXColorS10); - /* 802F1DC0 */ virtual void getTevColor(u32); + /* 802F1DC0 */ virtual bool getTevColor(u32); /* 802F1DD4 */ virtual void setTevKColor(u32, JUtility::TColor); - /* 802F1E00 */ virtual void getTevKColor(u32); + /* 802F1E00 */ virtual bool getTevKColor(u32); /* 802F1E14 */ virtual void setTevKColorSel(u32, u8); - /* 802F1E20 */ virtual void getTevKColorSel(u32); + /* 802F1E20 */ virtual bool getTevKColorSel(u32); /* 802F1E2C */ virtual void setTevKAlphaSel(u32, u8); - /* 802F1E38 */ virtual void getTevKAlphaSel(u32); + /* 802F1E38 */ virtual bool getTevKAlphaSel(u32); /* 802F1E44 */ virtual void setTevStageNum(u8); - /* 802F1E4C */ virtual void getTevStageNum() const; + /* 802F1E4C */ virtual bool getTevStageNum() const; /* 802F1E54 */ virtual void setTevStage(u32, J2DTevStage); - /* 802F1E90 */ virtual void getTevStage(u32); + /* 802F1E90 */ virtual bool getTevStage(u32); /* 802F1EA4 */ virtual void setTevSwapModeInfo(u32, J2DTevSwapModeInfo); /* 802F1EDC */ virtual void setTevSwapModeTable(u32, J2DTevSwapModeTable); - /* 802F1EEC */ virtual void getTevSwapModeTable(u32); + /* 802F1EEC */ virtual bool 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(); + /* 802F1F10 */ virtual bool getIndTevStage(u32); + /* 802F1F24 */ virtual bool insertTexture(u32, ResTIMG const*); + /* 802F0730 */ virtual bool insertTexture(u32, ResTIMG const*, JUTPalette*); + /* 802F0AFC */ virtual bool insertTexture(u32, JUTTexture*); + /* 802F0C8C */ virtual bool setTexture(u32, ResTIMG const*); + /* 802F0F18 */ virtual bool setTexture(u32, JUTTexture*); + /* 802F0FC8 */ virtual bool removeTexture(u32); + /* 802F10C0 */ virtual bool setFont(ResFONT*); + /* 802F116C */ virtual bool setFont(JUTFont*); + /* 802F11E8 */ virtual bool setPalette(u32, ResTLUT const*); + /* 802F0660 */ virtual bool prepareTexture(u8); + /* 802F1F54 */ virtual bool getTexture(u32); + /* 802F1F74 */ virtual bool getPalette(u32); + /* 802F1F94 */ virtual bool getFont(); /* 802F12C0 */ virtual void shiftDeleteFlag(u8, bool); /* 802F1F9C */ virtual void setUndeleteFlag(u8); /* 802F1FAC */ virtual void setFontUndeleteFlag(); /* 802F030C */ virtual ~J2DTevBlock16(); -private: +public: /* 0x004 */ u16 mTexNo[8]; /* 0x014 */ u16 mFontNo; /* 0x016 */ J2DTevOrder mTevOrder[16]; @@ -396,33 +396,58 @@ private: /* 0x118 */ u8 mTevKAlphaSel[16]; /* 0x128 */ J2DTevSwapModeTable mTevSwapModeTable[4]; /* 0x12C */ J2DIndTevStage mIndTevStage[16]; - /* 0x16C */ JUTTexture* mTexture[16]; - /* 0x18C */ JUTPalette* mPalette[16]; + /* 0x16C */ JUTTexture* mTexture[8]; + /* 0x18C */ JUTPalette* mPalette[8]; /* 0x1AC */ JUTFont* mFont; /* 0x1B0 */ u8 mUndeleteFlag; /* 0x1B1 */ bool mFontUndeleteFlag; }; // Size: 0x1B4 +extern u16 j2dDefaultAlphaCmp; + struct J2DAlphaComp { - /* 0x0 */ u8 field_0x0; - /* 0x1 */ u8 field_0x1; + J2DAlphaComp() { + mAlphaCmp = j2dDefaultAlphaCmp; + mRef0 = 0; + mRef1 = 0; + } + + /* 0x0 */ u16 mAlphaCmp; /* 0x2 */ u8 mRef0; /* 0x3 */ u8 mRef1; }; struct J2DBlendInfo { + void operator=(J2DBlendInfo const& other) { + mType = other.mType; + mSrcFactor = other.mSrcFactor; + mDstFactor = other.mDstFactor; + //mOp = other.mOp; + } + /* 0x0 */ u8 mType; /* 0x1 */ u8 mSrcFactor; /* 0x2 */ u8 mDstFactor; + }; +extern J2DBlendInfo j2dDefaultBlendInfo; + struct J2DBlend { + J2DBlend() { + mBlendInfo = j2dDefaultBlendInfo; + } + /* 0x0 */ J2DBlendInfo mBlendInfo; /* 0x3 */ u8 mOp; }; class J2DPEBlock { public: + J2DPEBlock() { + initialize(); + } + /* 802F17FC */ void initialize(); /* 802F1840 */ void setGX(); @@ -450,17 +475,21 @@ public: class J2DIndBlockFull : public J2DIndBlock { public: + J2DIndBlockFull() { + initialize(); + } + /* 802F1664 */ virtual void initialize(); /* 802F1730 */ virtual void setGX(); /* 802F1B94 */ virtual void getType(); /* 802F1BA0 */ virtual void setIndTexStageNum(u8); - /* 802F1BA8 */ virtual void getIndTexStageNum() const; + /* 802F1BA8 */ virtual bool getIndTexStageNum() const; /* 802F1BB0 */ virtual void setIndTexOrder(u32, J2DIndTexOrder); - /* 802F1BCC */ virtual void getIndTexOrder(u32); + /* 802F1BCC */ virtual bool getIndTexOrder(u32); /* 802F1BE0 */ virtual void setIndTexMtx(u32, J2DIndTexMtx); - /* 802F1C38 */ virtual void getIndTexMtx(u32); + /* 802F1C38 */ virtual bool getIndTexMtx(u32); /* 802F1C4C */ virtual void setIndTexCoordScale(u32, J2DIndTexCoordScale); - /* 802F1C68 */ virtual void getIndTexCoordScale(u32); + /* 802F1C68 */ virtual bool getIndTexCoordScale(u32); /* 802F1C7C */ virtual ~J2DIndBlockFull(); private: @@ -471,6 +500,9 @@ private: }; class J2DIndBlockNull : public J2DIndBlock { +public: + J2DIndBlockNull() {} + /* 802EB1E0 */ virtual void setGX(); /* 802EB1E4 */ virtual void getType(); /* 802EB1F0 */ virtual ~J2DIndBlockNull(); @@ -483,6 +515,10 @@ private: /* 0x24 */ J2DTexMtx* mTexMtx[8]; public: + J2DTexGenBlock() { + initialize(); + } + /* 802EB510 */ void initialize(); /* 802EB570 */ void setGX(); /* 802EB6A4 */ void setTexMtx(u32, J2DTexMtx&); @@ -511,6 +547,10 @@ private: /* 0x12 */ u8 mCullMode; public: + J2DColorBlock() { + initialize(); + } + /* 802EB394 */ void initialize(); /* 802EB424 */ void setGX(); diff --git a/include/JSystem/J2DGraph/J2DMaterial.h b/include/JSystem/J2DGraph/J2DMaterial.h index baaee0fd61..fbf30353d0 100644 --- a/include/JSystem/J2DGraph/J2DMaterial.h +++ b/include/JSystem/J2DGraph/J2DMaterial.h @@ -11,10 +11,10 @@ public: struct J2DMaterialAnmPointer { /* 802EA79C */ J2DMaterialAnmPointer(); - /* 0x00 */ int field_0x0; - /* 0x04 */ int field_0x4; - /* 0x08 */ int field_0x8; - /* 0x0C */ int field_0xc; + /* 0x00 */ J2DAnmBase* field_0x0; + /* 0x04 */ J2DAnmBase* field_0x4; + /* 0x08 */ J2DAnmBase* field_0x8; + /* 0x0C */ J2DAnmBase* field_0xc; /* 0x10 */ u16 field_0x10; /* 0x12 */ u16 field_0x12[8]; /* 0x22 */ u16 field_0x22[8]; @@ -24,8 +24,8 @@ public: /* 802EA1AC */ J2DMaterial(); /* 802EA38C */ void setGX(); - /* 802EA410 */ void createTevBlock(int, bool); - /* 802EA5C4 */ void createIndBlock(int, bool); + /* 802EA410 */ static J2DTevBlock* createTevBlock(int, bool); + /* 802EA5C4 */ static J2DIndBlock* createIndBlock(int, bool); /* 802EA84C */ void makeAnmPointer(); /* 802EA94C */ void setAnimation(J2DAnmTextureSRTKey*); /* 802EAA2C */ void setAnimation(J2DAnmTexPattern*); @@ -35,6 +35,14 @@ public: /* 802EA2CC */ virtual ~J2DMaterial(); + u16 getIndex() const { return mIndex; } + J2DColorBlock* getColorBlock() { return &mColorBlock; } + J2DTexGenBlock* getTexGenBlock() { return &mTexGenBlock; } + J2DPEBlock* getPEBlock() { return &mPEBlock; } + J2DTevBlock* getTevBlock() { return mTevBlock; } + J2DIndBlock* getIndBlock() { return mIndBlock; } + + private: /* 0x04 */ int field_0x4; /* 0x08 */ int field_0x8; diff --git a/include/JSystem/J2DGraph/J2DScreen.h b/include/JSystem/J2DGraph/J2DScreen.h index 486f1164c2..3ba1f4499c 100644 --- a/include/JSystem/J2DGraph/J2DScreen.h +++ b/include/JSystem/J2DGraph/J2DScreen.h @@ -7,7 +7,26 @@ #include "JSystem/JUtility/JUTNameTab.h" #include "dolphin/types.h" -struct J2DScrnBlockHeader {}; +struct J2DScrnHeader { + /* 0x00 */ u32 mTag; + /* 0x04 */ u32 mType; + /* 0x08 */ u32 mFileSize; + /* 0x0C */ u32 mBlockNum; + /* 0x10 */ u8 padding[0x10]; +}; + +struct J2DScrnInfoHeader { + /* 0x0 */ u32 mTag; + /* 0x4 */ u32 mSize; + /* 0x8 */ u16 mWidth; + /* 0xA */ u16 mHeight; + /* 0xC */ u32 mColor; +}; + +struct J2DScrnBlockHeader { + /* 0x00 */ u32 mTag; + /* 0x04 */ s32 mSize; +}; class J2DScreen : public J2DPane { public: @@ -30,22 +49,22 @@ public: /* 802F9A54 */ virtual void setAnimation(J2DAnmBase*); /* 802F9A74 */ virtual void setAnimationVF(J2DAnmVisibilityFull*); /* 802F9A78 */ virtual void setAnimationVC(J2DAnmVtxColor*); - /* 802F99E8 */ virtual void createPane(J2DScrnBlockHeader const&, JSURandomInputStream*, + /* 802F99E8 */ virtual J2DPane* createPane(J2DScrnBlockHeader const&, JSURandomInputStream*, J2DPane*, u32); - /* 802F8B98 */ virtual void createPane(J2DScrnBlockHeader const&, JSURandomInputStream*, + /* 802F8B98 */ virtual J2DPane* createPane(J2DScrnBlockHeader const&, JSURandomInputStream*, J2DPane*, u32, JKRArchive*); /* 802F8498 */ J2DScreen(); /* 802F85A8 */ void clean(); - /* 802F8648 */ void setPriority(char const*, u32, JKRArchive*); + /* 802F8648 */ bool setPriority(char const*, u32, JKRArchive*); /* 802F8748 */ bool setPriority(JSURandomInputStream*, u32, JKRArchive*); /* 802F8778 */ bool private_set(JSURandomInputStream*, u32, JKRArchive*); /* 802F8834 */ bool checkSignature(JSURandomInputStream*); - /* 802F8894 */ void getScreenInformation(JSURandomInputStream*); - /* 802F8990 */ void makeHierarchyPanes(J2DPane*, JSURandomInputStream*, u32, JKRArchive*); + /* 802F8894 */ bool getScreenInformation(JSURandomInputStream*); + /* 802F8990 */ s32 makeHierarchyPanes(J2DPane*, JSURandomInputStream*, u32, JKRArchive*); /* 802F8ED4 */ void draw(f32, f32, J2DGrafContext const*); - /* 802F9280 */ void getResReference(JSURandomInputStream*, u32); - /* 802F937C */ void createMaterial(JSURandomInputStream*, u32, JKRArchive*); + /* 802F9280 */ J2DResReference* getResReference(JSURandomInputStream*, u32); + /* 802F937C */ bool createMaterial(JSURandomInputStream*, u32, JKRArchive*); /* 802F9640 */ static void* getNameResource(char const*); /* 802F9690 */ void animation(); @@ -53,14 +72,13 @@ public: static J2DDataManage* mDataManage; - // private: /* 0x100 */ bool mScissor; /* 0x102 */ u16 mMaterialNum; /* 0x104 */ J2DMaterial* mMaterials; - /* 0x108 */ J2DResReference* field_0x108; - /* 0x10C */ J2DResReference* field_0x10c; + /* 0x108 */ J2DResReference* mTexRes; + /* 0x10C */ J2DResReference* mFontRes; /* 0x110 */ JUTNameTab* mNameTable; - /* 0x114 */ u32 field_0x114; + /* 0x114 */ JUtility::TColor mColor; }; #endif /* J2DSCREEN_H */ diff --git a/include/JSystem/J3DGraphAnimator/J3DAnimation.h b/include/JSystem/J3DGraphAnimator/J3DAnimation.h index 77d82db311..d36523f54a 100644 --- a/include/JSystem/J3DGraphAnimator/J3DAnimation.h +++ b/include/JSystem/J3DGraphAnimator/J3DAnimation.h @@ -55,7 +55,7 @@ struct J3DAnmTransformFullTable { struct J3DAnmTexPatternFullTable { /* 0x00 */ u16 mMaxFrame; /* 0x02 */ u16 mOffset; - /* 0x04 */ u16 _4; + /* 0x04 */ u8 _4; /* 0x06 */ u16 _6; }; // Size = 0x8 @@ -64,7 +64,8 @@ struct J3DAnmCRegKeyTable { /* 0x06 */ J3DAnmKeyTableBase mGTable; /* 0x0C */ J3DAnmKeyTableBase mBTable; /* 0x12 */ J3DAnmKeyTableBase mATable; - /* 0x18 */ u8 _18[4]; + /* 0x18 */ u8 _18; + u8 padding[3]; }; // Size = 0x1C struct J3DAnmKRegKeyTable { @@ -72,7 +73,8 @@ struct J3DAnmKRegKeyTable { /* 0x06 */ J3DAnmKeyTableBase mGTable; /* 0x0C */ J3DAnmKeyTableBase mBTable; /* 0x12 */ J3DAnmKeyTableBase mATable; - /* 0x18 */ u8 _18[4]; + /* 0x18 */ u8 _18; + u8 padding[3]; }; // Size = 0x1C struct J3DAnmDataBlockHeader { // actual name unknown @@ -217,7 +219,7 @@ struct J3DAnmTexPatternFullData { /* 0x0E */ u16 field_0xe; /* 0x10 */ s32 mTableOffset; /* 0x14 */ s32 mValuesOffset; - /* 0x18 */ s32 mUpdaterMaterialIDOffset; + /* 0x18 */ s32 mUpdateMaterialIDOffset; /* 0x1C */ s32 mNameTabOffset; }; // Size = 0x20 diff --git a/include/JSystem/JSupport/JSUMemoryStream.h b/include/JSystem/JSupport/JSUMemoryStream.h index 5ce4fcb170..ca69f91472 100644 --- a/include/JSystem/JSupport/JSUMemoryStream.h +++ b/include/JSystem/JSupport/JSUMemoryStream.h @@ -6,6 +6,10 @@ class JSUMemoryInputStream : JSURandomInputStream { public: + JSUMemoryInputStream(const void* res, u32 size) { + setBuffer(res, size); + } + /* 802552B8 */ ~JSUMemoryInputStream() {} /* 802DC520 */ void setBuffer(void const*, s32); /* 802DC534 */ u32 readData(void*, s32); |
