summaryrefslogtreecommitdiff
path: root/libs/JSystem/J2DGraph/J2DTextBoxEx.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/JSystem/J2DGraph/J2DTextBoxEx.cpp')
-rw-r--r--libs/JSystem/J2DGraph/J2DTextBoxEx.cpp215
1 files changed, 31 insertions, 184 deletions
diff --git a/libs/JSystem/J2DGraph/J2DTextBoxEx.cpp b/libs/JSystem/J2DGraph/J2DTextBoxEx.cpp
index c7244c8bd9..693e0bf706 100644
--- a/libs/JSystem/J2DGraph/J2DTextBoxEx.cpp
+++ b/libs/JSystem/J2DGraph/J2DTextBoxEx.cpp
@@ -1,110 +1,13 @@
//
-// Generated By: dol2asm
-// Translation Unit: J2DTextBoxEx
+// J2DTextBoxEx
//
#include "JSystem/J2DGraph/J2DTextBoxEx.h"
#include "JSystem/J2DGraph/J2DPrint.h"
#include "JSystem/JSupport/JSURandomInputStream.h"
#include "JSystem/JUtility/JUTResFont.h"
-#include "dol2asm.h"
#include "dolphin/types.h"
-//
-// Forward References:
-//
-
-extern "C" void __ct__12J2DTextBoxExFP7J2DPaneP20JSURandomInputStreamUlP11J2DMaterial();
-extern "C" void __dt__12J2DTextBoxExFv();
-extern "C" void drawSelf__12J2DTextBoxExFffPA3_A4_f();
-extern "C" void draw__12J2DTextBoxExFff();
-extern "C" void draw__12J2DTextBoxExFfff18J2DTextBoxHBinding();
-extern "C" void setFont__12J2DTextBoxExFP7JUTFont();
-extern "C" void getFont__12J2DTextBoxExCFv();
-extern "C" void setTevOrder__12J2DTextBoxExFb();
-extern "C" void setTevStage__12J2DTextBoxExFb();
-extern "C" void setStage__12J2DTextBoxExFP11J2DTevStageQ212J2DTextBoxEx10stage_enum();
-extern "C" void setBlack__12J2DTextBoxExFQ28JUtility6TColor();
-extern "C" void setWhite__12J2DTextBoxExFQ28JUtility6TColor();
-extern "C" void setBlackWhite__12J2DTextBoxExFQ28JUtility6TColorQ28JUtility6TColor();
-extern "C" void getBlackWhite__12J2DTextBoxExCFPQ28JUtility6TColorPQ28JUtility6TColor();
-extern "C" void isSetBlackWhite__12J2DTextBoxExCFQ28JUtility6TColorQ28JUtility6TColor();
-extern "C" void getBlack__12J2DTextBoxExCFv();
-extern "C" void getWhite__12J2DTextBoxExCFv();
-extern "C" void setAlpha__12J2DTextBoxExFUc();
-extern "C" void setCullBack__12J2DTextBoxExF11_GXCullMode();
-extern "C" void rewriteAlpha__12J2DTextBoxExFv();
-extern "C" void isUsed__12J2DTextBoxExFPC7ResFONT();
-extern "C" void setAnimation__12J2DTextBoxExFP11J2DAnmColor();
-extern "C" void setAnimation__12J2DTextBoxExFP19J2DAnmTextureSRTKey();
-extern "C" void setAnimation__12J2DTextBoxExFP16J2DAnmTexPattern();
-extern "C" void setAnimation__12J2DTextBoxExFP15J2DAnmTevRegKey();
-extern "C" void setAnimation__12J2DTextBoxExFP20J2DAnmVisibilityFull();
-extern "C" void animationPane__12J2DTextBoxExFPC15J2DAnmTransform();
-extern "C" void setCullBack__12J2DTextBoxExFb();
-extern "C" void isUsed__12J2DTextBoxExFPC7ResTIMG();
-extern "C" void setAnimation__12J2DTextBoxExFP14J2DAnmVtxColor();
-extern "C" void setAnimation__12J2DTextBoxExFP10J2DAnmBase();
-extern "C" extern char const* const J2DTextBoxEx__stringBase0;
-
-//
-// External References:
-//
-
-extern "C" void calcMtx__7J2DPaneFv();
-extern "C" void makeMatrix__7J2DPaneFff();
-extern "C" void getMaterial__12J2DTextBoxExCFv();
-extern "C" void setAnimation__12J2DTextBoxExFP15J2DAnmTransform();
-extern "C" void* __nwa__FUl();
-extern "C" void __dl__FPv();
-extern "C" void read__14JSUInputStreamFPvl();
-extern "C" void peek__20JSURandomInputStreamFPvl();
-extern "C" void seek__20JSURandomInputStreamFl17JSUStreamSeekFrom();
-extern "C" void setGX__11J2DMaterialFv();
-extern "C" void setAnimation__11J2DMaterialFP11J2DAnmColor();
-extern "C" void setAnimation__11J2DMaterialFP19J2DAnmTextureSRTKey();
-extern "C" void setAnimation__11J2DMaterialFP16J2DAnmTexPattern();
-extern "C" void setAnimation__11J2DMaterialFP15J2DAnmTevRegKey();
-extern "C" void
-__ct__8J2DPrintFP7JUTFontffQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColor();
-extern "C" void __dt__8J2DPrintFv();
-extern "C" void locate__8J2DPrintFff();
-extern "C" void print__8J2DPrintFffUcPCce();
-extern "C" void printReturn__8J2DPrintFPCcff18J2DTextBoxHBinding18J2DTextBoxVBindingffUc();
-extern "C" void move__7J2DPaneFff();
-extern "C" void add__7J2DPaneFff();
-extern "C" void search__7J2DPaneFUx();
-extern "C" void searchUserInfo__7J2DPaneFUx();
-extern "C" void isUsed__7J2DPaneFPC7ResTIMG();
-extern "C" void isUsed__7J2DPaneFPC7ResFONT();
-extern "C" void makeMatrix__7J2DPaneFffff();
-extern "C" void setCullBack__7J2DPaneF11_GXCullMode();
-extern "C" void makePaneExStream__7J2DPaneFP7J2DPaneP20JSURandomInputStream();
-extern "C" void setAnimation__7J2DPaneFP10J2DAnmBase();
-extern "C" void clearAnmTransform__7J2DPaneFv();
-extern "C" void animationTransform__7J2DPaneFPC15J2DAnmTransform();
-extern "C" void setVisibileAnimation__7J2DPaneFP20J2DAnmVisibilityFull();
-extern "C" void setVtxColorAnimation__7J2DPaneFP14J2DAnmVtxColor();
-extern "C" void animationPane__7J2DPaneFPC15J2DAnmTransform();
-extern "C" void setAnimationVF__7J2DPaneFP20J2DAnmVisibilityFull();
-extern "C" void setAnimationVC__7J2DPaneFP14J2DAnmVtxColor();
-extern "C" void update__7J2DPaneFv();
-extern "C" void __ct__10J2DTextBoxFv();
-extern "C" void __dt__10J2DTextBoxFv();
-extern "C" void setConnectParent__10J2DTextBoxFb();
-extern "C" void drawSelf__10J2DTextBoxFff();
-extern "C" void resize__10J2DTextBoxFff();
-extern "C" s32 getTypeID__10J2DTextBoxCFv();
-extern "C" void getVisibility__20J2DAnmVisibilityFullCFUsPUc();
-extern "C" void _savegpr_25();
-extern "C" void _savegpr_28();
-extern "C" void _restgpr_25();
-extern "C" void _restgpr_28();
-
-//
-// Declarations:
-//
-
/* 803071E4-8030751C 301B24 0338+00 0/0 1/1 0/0 .text
* __ct__12J2DTextBoxExFP7J2DPaneP20JSURandomInputStreamUlP11J2DMaterial */
J2DTextBoxEx::J2DTextBoxEx(J2DPane* p_pane, JSURandomInputStream* p_stream, u32 param_2,
@@ -371,8 +274,6 @@ JUTFont* J2DTextBoxEx::getFont() const {
}
/* 80307E0C-80307EF0 30274C 00E4+00 1/1 0/0 0/0 .text setTevOrder__12J2DTextBoxExFb */
-// Stack issue
-#ifdef NONMATCHING
void J2DTextBoxEx::setTevOrder(bool param_0) {
u16 local_18[2];
if (!param_0) {
@@ -388,20 +289,11 @@ void J2DTextBoxEx::setTevOrder(bool param_0) {
info.mTexCoord = (local_18[i]) >> 8;
info.mTexMap = (local_18[i]) >> 8;
info.mColor = local_18[i] & 0xff;
- mMaterial->getTevBlock()->setTevOrder(i, J2DTevOrder(info));
+ J2DTevOrder tevOrder = info;
+ mMaterial->getTevBlock()->setTevOrder(i, tevOrder);
}
}
}
-#else
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void J2DTextBoxEx::setTevOrder(bool param_0) {
- nofralloc
-#include "asm/JSystem/J2DGraph/J2DTextBoxEx/setTevOrder__12J2DTextBoxExFb.s"
-}
-#pragma pop
-#endif
/* 80307EF0-80307F94 302830 00A4+00 1/1 0/0 0/0 .text setTevStage__12J2DTextBoxExFb */
void J2DTextBoxEx::setTevStage(bool param_0) {
@@ -415,82 +307,37 @@ void J2DTextBoxEx::setTevStage(bool param_0) {
}
}
-/* ############################################################################################## */
-/* 803A1DB8-803A1DC4 02E418 000C+00 1/1 0/0 0/0 .rodata @1953 */
-SECTION_RODATA static u8 const lit_1953[12] = {
- 0x0F, 0x08, 0x0A, 0x0F, 0x02, 0x04, 0x08, 0x0F, 0x0F, 0x0A, 0x00, 0x0F,
-};
-COMPILER_STRIP_GATE(0x803A1DB8, &lit_1953);
-
-/* 803A1DC4-803A1DD0 02E424 000C+00 0/1 0/0 0/0 .rodata @1954 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_1954[12] = {
- 0x07, 0x04, 0x05, 0x07, 0x01, 0x02, 0x04, 0x07, 0x07, 0x05, 0x00, 0x07,
-};
-COMPILER_STRIP_GATE(0x803A1DC4, &lit_1954);
-#pragma pop
-
-/* 803A1DD0-803A1DE0 02E430 000F+01 0/1 0/0 0/0 .rodata @1955 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_1955[15 + 1 /* padding */] = {
- 0x00,
- 0x00,
- 0x00,
- 0x01,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x01,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x01,
- 0x00,
- /* padding */
- 0x00,
-};
-COMPILER_STRIP_GATE(0x803A1DD0, &lit_1955);
-#pragma pop
-
-/* 803A1DE0-803A1DF0 02E440 000F+01 0/1 0/0 0/0 .rodata @1956 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_1956[15 + 1 /* padding */] = {
- 0x00,
- 0x00,
- 0x00,
- 0x01,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x01,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x01,
- 0x00,
- /* padding */
- 0x00,
-};
-COMPILER_STRIP_GATE(0x803A1DE0, &lit_1956);
-#pragma pop
-
/* 80307F94-8030823C 3028D4 02A8+00 1/1 0/0 0/0 .text
* setStage__12J2DTextBoxExFP11J2DTevStageQ212J2DTextBoxEx10stage_enum */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void J2DTextBoxEx::setStage(J2DTevStage* param_0, J2DTextBoxEx::stage_enum param_1) {
- nofralloc
-#include "asm/JSystem/J2DGraph/J2DTextBoxEx/setStage__12J2DTextBoxExFP11J2DTevStageQ212J2DTextBoxEx10stage_enum.s"
+void J2DTextBoxEx::setStage(J2DTevStage* param_0, J2DTextBoxEx::stage_enum param_1) {
+ const u8 tevColors[3][4] = {
+ {0x0F, 0x08, 0x0A, 0x0F}, {0x02, 0x04, 0x08, 0x0F}, {0x0F, 0x0A, 0x00, 0x0F},
+ };
+ const u8 tevAlpha[3][4] = {
+ {0x07, 0x04, 0x05, 0x07}, {0x01, 0x02, 0x04, 0x07}, {0x07, 0x05, 0x00, 0x07},
+ };
+
+ const u8 tevColorOps[3][5] = {
+ {0x00, 0x00, 0x00, 0x01, 0x00},
+ {0x00, 0x00, 0x00, 0x01, 0x00},
+ {0x00, 0x00, 0x00, 0x01, 0x00},
+ };
+
+ const u8 tevAlphaOps[3][5] = {
+ {0x00, 0x00, 0x00, 0x01, 0x00},
+ {0x00, 0x00, 0x00, 0x01, 0x00},
+ {0x00, 0x00, 0x00, 0x01, 0x00},
+ };
+
+ param_0->setTevColorAB(tevColors[param_1][0], tevColors[param_1][1]);
+ param_0->setTevColorCD(tevColors[param_1][2], tevColors[param_1][3]);
+ param_0->setTevColorOp(
+ tevColorOps[param_1][0], tevColorOps[param_1][1], tevColorOps[param_1][2], tevColorOps[param_1][3], tevColorOps[param_1][4]);
+ param_0->setAlphaABCD(
+ tevAlpha[param_1][0], tevAlpha[param_1][1], tevAlpha[param_1][2], tevAlpha[param_1][3]);
+ param_0->setTevAlphaOp(
+ tevAlphaOps[param_1][0], tevAlphaOps[param_1][1], tevAlphaOps[param_1][2], tevAlphaOps[param_1][3], tevAlphaOps[param_1][4]);
}
-#pragma pop
/* 8030823C-803082C4 302B7C 0088+00 1/0 0/0 0/0 .text setBlack__12J2DTextBoxExFQ28JUtility6TColor
*/