mirror of
https://github.com/zeldaret/tp
synced 2026-08-13 20:24:57 -04:00
Work on J2DMaterialFactory (#394)
* Work on J2DMaterialFactory * J3DUClipper OK * Work on JAISoundStarter * JAISoundHandles OK * JAISoundInfo OK * Fix JAISound::isStopping * Work on J2DTextBoxEx * dspproc OK * osdsp OK * osdsp_task OK * Work on dsptask * Import some JASCalc code * JASCallback OK * JASOscillator OK * JASLfo OK
This commit is contained in:
@@ -351,22 +351,17 @@ extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern J2DTexCoordInfo const j2dDefaultTexCoordInfo[8];
|
||||
extern "C" extern u8 const j2dDefaultIndTexMtxInfo[28];
|
||||
extern "C" extern J2DTevStageInfo const j2dDefaultTevStageInfo;
|
||||
extern "C" extern J2DIndTevStageInfo const j2dDefaultIndTevStageInfo;
|
||||
extern "C" extern void* __vt__11J2DIndBlock[14];
|
||||
extern "C" extern GXColor j2dDefaultColInfo;
|
||||
extern "C" extern J2DTevOrderInfo j2dDefaultTevOrderInfoNull;
|
||||
extern "C" extern u16 j2dDefaultIndTexOrderNull[1 + 1 /* padding */];
|
||||
extern "C" extern J2DGXColorS10 j2dDefaultTevColor;
|
||||
extern "C" extern u8 j2dDefaultIndTexCoordScaleInfo[2 + 2 /* padding */];
|
||||
extern "C" extern GXColor j2dDefaultTevKColor;
|
||||
extern "C" extern J2DTevSwapModeInfo j2dDefaultTevSwapMode;
|
||||
extern "C" extern J2DTevSwapModeTableInfo j2dDefaultTevSwapModeTable;
|
||||
extern "C" extern u8 data_804561A4;
|
||||
extern "C" extern J2DColorChanInfo j2dDefaultColorChanInfo;
|
||||
extern "C" extern u8 data_804561AC;
|
||||
extern "C" extern u16 j2dDefaultAlphaCmp;
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -2583,7 +2578,7 @@ void J2DPEBlock::setGX() {
|
||||
}
|
||||
|
||||
/* 802F18A0-802F1934 2EC1E0 0094+00 5/5 0/0 0/0 .text __ct__14J2DIndTevStageFv */
|
||||
// missing instruction
|
||||
// should be inline
|
||||
#ifdef NONMATCHING
|
||||
J2DIndTevStage::J2DIndTevStage() {
|
||||
mFlags = J2DCalcIndTevStage(j2dDefaultIndTevStageInfo);
|
||||
@@ -2592,7 +2587,7 @@ J2DIndTevStage::J2DIndTevStage() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DIndTevStage::J2DIndTevStage() {
|
||||
asm void __ct__14J2DIndTevStageFv() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMatBlock/__ct__14J2DIndTevStageFv.s"
|
||||
}
|
||||
@@ -2600,9 +2595,16 @@ asm J2DIndTevStage::J2DIndTevStage() {
|
||||
#endif
|
||||
|
||||
/* 802F1934-802F1940 2EC274 000C+00 5/5 0/0 0/0 .text __ct__19J2DTevSwapModeTableFv */
|
||||
// Should be inline
|
||||
#ifdef NONMATCHING
|
||||
J2DTevSwapModeTable::J2DTevSwapModeTable() {
|
||||
field_0x0 = data_804561AC;
|
||||
}
|
||||
#else
|
||||
asm void __ct__19J2DTevSwapModeTableFv() {
|
||||
#include "asm/JSystem/J2DGraph/J2DMatBlock/__ct__19J2DTevSwapModeTableFv.s"
|
||||
}
|
||||
#endif
|
||||
|
||||
/* 802F1940-802F19A8 2EC280 0068+00 5/5 1/1 0/0 .text __ct__11J2DTevStageFv */
|
||||
J2DTevStage::J2DTevStage() {
|
||||
@@ -2620,12 +2622,27 @@ void J2DTevStage::setTevStageInfo(J2DTevStageInfo const& info) {
|
||||
}
|
||||
|
||||
/* 802F1B70-802F1B90 2EC4B0 0020+00 5/5 0/0 0/0 .text __ct__11J2DTevOrderFv */
|
||||
// Matching but should be inline
|
||||
#ifdef NONMATCHING
|
||||
J2DTevOrder::J2DTevOrder() {
|
||||
mTevOrderInfo = j2dDefaultTevOrderInfoNull;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
// J2DTevOrder::J2DTevOrder() {
|
||||
asm void __ct__11J2DTevOrderFv() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMatBlock/__ct__11J2DTevOrderFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 802F1B90-802F1B94 2EC4D0 0004+00 5/5 0/0 0/0 .text __ct__13J2DGXColorS10Fv */
|
||||
J2DGXColorS10::J2DGXColorS10() {
|
||||
// Most likely inlined
|
||||
//J2DGXColorS10::J2DGXColorS10() {
|
||||
void __ct__13J2DGXColorS10Fv() {
|
||||
/* empty function */
|
||||
}
|
||||
|
||||
@@ -2687,7 +2704,7 @@ u32 J2DTevBlock16::getType() {
|
||||
}
|
||||
|
||||
/* 802F1D24-802F1D2C 2EC664 0008+00 1/0 0/0 0/0 .text getMaxStage__13J2DTevBlock16Fv */
|
||||
s32 J2DTevBlock16::getMaxStage() {
|
||||
u8 J2DTevBlock16::getMaxStage() {
|
||||
return 16;
|
||||
}
|
||||
|
||||
@@ -2707,7 +2724,7 @@ void J2DTevBlock16::setFontNo(u16 fontNo) {
|
||||
}
|
||||
|
||||
/* 802F1D54-802F1D5C 2EC694 0008+00 1/0 0/0 0/0 .text getFontNo__13J2DTevBlock16CFv */
|
||||
u32 J2DTevBlock16::getFontNo() const {
|
||||
u16 J2DTevBlock16::getFontNo() const {
|
||||
return mFontNo;
|
||||
}
|
||||
|
||||
@@ -2869,7 +2886,7 @@ u32 J2DTevBlock8::getType() {
|
||||
}
|
||||
|
||||
/* 802F1FC4-802F1FCC 2EC904 0008+00 1/0 0/0 0/0 .text getMaxStage__12J2DTevBlock8Fv */
|
||||
s32 J2DTevBlock8::getMaxStage() {
|
||||
u8 J2DTevBlock8::getMaxStage() {
|
||||
return 8;
|
||||
}
|
||||
|
||||
@@ -2889,7 +2906,7 @@ void J2DTevBlock8::setFontNo(u16 fontNo) {
|
||||
}
|
||||
|
||||
/* 802F1FF4-802F1FFC 2EC934 0008+00 1/0 0/0 0/0 .text getFontNo__12J2DTevBlock8CFv */
|
||||
u32 J2DTevBlock8::getFontNo() const {
|
||||
u16 J2DTevBlock8::getFontNo() const {
|
||||
return mFontNo;
|
||||
}
|
||||
|
||||
@@ -3051,7 +3068,7 @@ u32 J2DTevBlock4::getType() {
|
||||
}
|
||||
|
||||
/* 802F2264-802F226C 2ECBA4 0008+00 1/0 0/0 0/0 .text getMaxStage__12J2DTevBlock4Fv */
|
||||
s32 J2DTevBlock4::getMaxStage() {
|
||||
u8 J2DTevBlock4::getMaxStage() {
|
||||
return 4;
|
||||
}
|
||||
|
||||
@@ -3071,7 +3088,7 @@ void J2DTevBlock4::setFontNo(u16 fontNo) {
|
||||
}
|
||||
|
||||
/* 802F2294-802F229C 2ECBD4 0008+00 1/0 0/0 0/0 .text getFontNo__12J2DTevBlock4CFv */
|
||||
u32 J2DTevBlock4::getFontNo() const {
|
||||
u16 J2DTevBlock4::getFontNo() const {
|
||||
return mFontNo;
|
||||
}
|
||||
|
||||
@@ -3233,7 +3250,7 @@ u32 J2DTevBlock2::getType() {
|
||||
}
|
||||
|
||||
/* 802F2508-802F2510 2ECE48 0008+00 1/0 0/0 0/0 .text getMaxStage__12J2DTevBlock2Fv */
|
||||
s32 J2DTevBlock2::getMaxStage() {
|
||||
u8 J2DTevBlock2::getMaxStage() {
|
||||
return 2;
|
||||
}
|
||||
|
||||
@@ -3253,7 +3270,7 @@ void J2DTevBlock2::setFontNo(u16 fontNo) {
|
||||
}
|
||||
|
||||
/* 802F2538-802F2540 2ECE78 0008+00 1/0 0/0 0/0 .text getFontNo__12J2DTevBlock2CFv */
|
||||
u32 J2DTevBlock2::getFontNo() const {
|
||||
u16 J2DTevBlock2::getFontNo() const {
|
||||
return mFontNo;
|
||||
}
|
||||
|
||||
@@ -3415,7 +3432,7 @@ u32 J2DTevBlock1::getType() {
|
||||
}
|
||||
|
||||
/* 802F27AC-802F27B4 2ED0EC 0008+00 1/0 0/0 0/0 .text getMaxStage__12J2DTevBlock1Fv */
|
||||
s32 J2DTevBlock1::getMaxStage() {
|
||||
u8 J2DTevBlock1::getMaxStage() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -3435,7 +3452,7 @@ void J2DTevBlock1::setFontNo(u16 fontNo) {
|
||||
}
|
||||
|
||||
/* 802F27DC-802F27E4 2ED11C 0008+00 1/0 0/0 0/0 .text getFontNo__12J2DTevBlock1CFv */
|
||||
u32 J2DTevBlock1::getFontNo() const {
|
||||
u16 J2DTevBlock1::getFontNo() const {
|
||||
return mFontNo;
|
||||
}
|
||||
|
||||
|
||||
@@ -86,16 +86,10 @@ extern "C" void getTevKonstReg__15J2DAnmTevRegKeyCFUsP8_GXColor();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" extern u8 const j2dDefaultTexCoordInfo[32];
|
||||
extern "C" extern u8 const j2dDefaultTexMtxInfo[36];
|
||||
extern "C" extern u8 const j2dDefaultIndTexMtxInfo[28];
|
||||
extern "C" extern void* __vt__15J2DIndBlockFull[14];
|
||||
extern "C" extern void* __vt__11J2DTevBlock[47];
|
||||
extern "C" extern void* __vt__14J2DTexGenBlock[3 + 1 /* padding */];
|
||||
extern "C" extern u16 j2dDefaultIndTexOrderNull[1 + 1 /* padding */];
|
||||
extern "C" extern u8 j2dDefaultIndTexCoordScaleInfo[2 + 2 /* padding */];
|
||||
extern "C" extern u32 j2dDefaultColorChanInfo;
|
||||
extern "C" extern u16 j2dDefaultAlphaCmp;
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -561,7 +555,8 @@ void J2DIndBlock::setIndTexCoordScale(u32 param_0, J2DIndTexCoordScale param_1)
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DTexCoord::J2DTexCoord() {
|
||||
//asm J2DTexCoord::J2DTexCoord() {
|
||||
asm void __ct__11J2DTexCoordFv() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterial/__ct__11J2DTexCoordFv.s"
|
||||
}
|
||||
@@ -571,17 +566,20 @@ asm J2DTexCoord::J2DTexCoord() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DColorChan::J2DColorChan() {
|
||||
asm void __ct__12J2DColorChanFv() {
|
||||
//asm J2DColorChan::J2DColorChan() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterial/__ct__12J2DColorChanFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802EB290-802EB2CC 2E5BD0 003C+00 1/1 1/1 0/0 .text __dt__19J2DIndTexCoordScaleFv */
|
||||
// Most likely inline
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DIndTexCoordScale::~J2DIndTexCoordScale() {
|
||||
// asm J2DIndTexCoordScale::~J2DIndTexCoordScale() {
|
||||
asm void __dt__19J2DIndTexCoordScaleFv() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterial/__dt__19J2DIndTexCoordScaleFv.s"
|
||||
}
|
||||
@@ -591,7 +589,8 @@ asm J2DIndTexCoordScale::~J2DIndTexCoordScale() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DIndTexCoordScale::J2DIndTexCoordScale() {
|
||||
//asm J2DIndTexCoordScale::J2DIndTexCoordScale() {
|
||||
asm void __ct__19J2DIndTexCoordScaleFv() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterial/__ct__19J2DIndTexCoordScaleFv.s"
|
||||
}
|
||||
@@ -601,7 +600,8 @@ asm J2DIndTexCoordScale::J2DIndTexCoordScale() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DIndTexMtx::~J2DIndTexMtx() {
|
||||
asm void __dt__12J2DIndTexMtxFv() {
|
||||
//asm J2DIndTexMtx::~J2DIndTexMtx() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterial/__dt__12J2DIndTexMtxFv.s"
|
||||
}
|
||||
@@ -611,17 +611,20 @@ asm J2DIndTexMtx::~J2DIndTexMtx() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DIndTexMtx::J2DIndTexMtx() {
|
||||
//asm J2DIndTexMtx::J2DIndTexMtx() {
|
||||
asm void __ct__12J2DIndTexMtxFv() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterial/__ct__12J2DIndTexMtxFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802EB378-802EB390 2E5CB8 0018+00 1/1 0/0 0/0 .text __ct__14J2DIndTexOrderFv */
|
||||
// Most likely inline
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DIndTexOrder::J2DIndTexOrder() {
|
||||
//asm J2DIndTexOrder::J2DIndTexOrder() {
|
||||
asm void __ct__14J2DIndTexOrderFv() {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterial/__ct__14J2DIndTexOrderFv.s"
|
||||
}
|
||||
|
||||
@@ -5,6 +5,9 @@
|
||||
|
||||
#include "JSystem/J2DGraph/J2DMaterialFactory.h"
|
||||
#include "JSystem/J2DGraph/J2DMaterial.h"
|
||||
#include "JSystem/J2DGraph/J2DScreen.h"
|
||||
#include "JSystem/JSupport/JSupport.h"
|
||||
#include "JSystem/JUtility/JUTResource.h"
|
||||
#include "MSL_C/string.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
@@ -13,14 +16,6 @@
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct JUTResReference {
|
||||
/* 802DE120 */ void getResource(void const*, u32, JKRArchive*);
|
||||
};
|
||||
|
||||
struct J2DScreen {
|
||||
static u8 mDataManage[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
@@ -88,17 +83,8 @@ extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern u8 const j2dDefaultTexCoordInfo[32];
|
||||
extern "C" extern u8 const j2dDefaultIndTexMtxInfo[28];
|
||||
extern "C" extern u8 const j2dDefaultIndTevStageInfo[12];
|
||||
extern "C" u8 mDataManage__9J2DScreen[4 + 4 /* padding */];
|
||||
extern "C" extern u32 j2dDefaultTevOrderInfoNull;
|
||||
extern "C" extern u16 j2dDefaultIndTexOrderNull[1 + 1 /* padding */];
|
||||
extern "C" extern u8 j2dDefaultIndTexCoordScaleInfo[2 + 2 /* padding */];
|
||||
extern "C" extern u8 j2dDefaultTevSwapMode[4];
|
||||
extern "C" extern u32 j2dDefaultTevSwapModeTable;
|
||||
extern "C" extern u32 j2dDefaultColorChanInfo;
|
||||
extern "C" extern u16 j2dDefaultAlphaCmp;
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -106,6 +92,39 @@ extern "C" extern u16 j2dDefaultAlphaCmp;
|
||||
|
||||
/* 802F2AD0-802F2C94 2ED410 01C4+00 0/0 1/1 0/0 .text
|
||||
* __ct__18J2DMaterialFactoryFRC16J2DMaterialBlock */
|
||||
// JSUConvertOffsetToPtr issues. Probably function order.
|
||||
#ifdef NONMATCHING
|
||||
J2DMaterialFactory::J2DMaterialFactory(J2DMaterialBlock const& param_0) {
|
||||
field_0x0 = param_0.field_0x8;
|
||||
field_0x4 = JSUConvertOffsetToPtr<J2DMaterialInitData>(¶m_0, (void*)param_0.field_0xc);
|
||||
field_0x8 = JSUConvertOffsetToPtr<u16>(¶m_0, (void*)param_0.field_0x10);
|
||||
if (param_0.field_0x18 && param_0.field_0x18 - param_0.field_0x14 > 4) {
|
||||
field_0xc = JSUConvertOffsetToPtr<J2DIndInitData>(¶m_0, (void*)param_0.field_0x18);
|
||||
}
|
||||
else {
|
||||
field_0xc = NULL;
|
||||
}
|
||||
field_0x30 = JSUConvertOffsetToPtr<_GXCullMode>(¶m_0, (void*)param_0.field_0x1c);
|
||||
field_0x10 = JSUConvertOffsetToPtr<GXColor>(¶m_0, (void*)param_0.field_0x20);
|
||||
field_0x14 = JSUConvertOffsetToPtr<u8>(¶m_0, (void*)param_0.field_0x24);
|
||||
field_0x18 = JSUConvertOffsetToPtr<J2DColorChanInfo>(¶m_0, (void*)param_0.field_0x28);
|
||||
field_0x1c = JSUConvertOffsetToPtr<u8>(¶m_0, (void*)param_0.field_0x2c);
|
||||
field_0x20 = JSUConvertOffsetToPtr<J2DTexCoordInfo>(¶m_0, (void*)param_0.field_0x30);
|
||||
field_0x24 = JSUConvertOffsetToPtr<J2DTexMtxInfo>(¶m_0, (void*)param_0.field_0x34);
|
||||
field_0x28 = JSUConvertOffsetToPtr<u16>(¶m_0, (void*)param_0.field_0x38);
|
||||
field_0x2c = JSUConvertOffsetToPtr<u16>(¶m_0, (void*)param_0.field_0x3c);
|
||||
field_0x34 = JSUConvertOffsetToPtr<J2DTevOrderInfo>(¶m_0, (void*)param_0.field_0x40);
|
||||
field_0x38 = JSUConvertOffsetToPtr<J2DGXColorS10>(¶m_0, (void*)param_0.field_0x44);
|
||||
field_0x3c = JSUConvertOffsetToPtr<GXColor>(¶m_0, (void*)param_0.field_0x48);
|
||||
field_0x40 = JSUConvertOffsetToPtr<u8>(¶m_0, (void*)param_0.field_0x4c);
|
||||
field_0x44 = JSUConvertOffsetToPtr<J2DTevStageInfo>(¶m_0, (void*)param_0.field_0x50);
|
||||
field_0x48 = JSUConvertOffsetToPtr<J2DTevSwapModeInfo>(¶m_0, (void*)param_0.field_0x54);
|
||||
field_0x4c = JSUConvertOffsetToPtr<J2DTevSwapModeTableInfo>(¶m_0, (void*)param_0.field_0x58);
|
||||
field_0x50 = JSUConvertOffsetToPtr<J2DAlphaCompInfo>(¶m_0, (void*)param_0.field_0x5c);
|
||||
field_0x54 = JSUConvertOffsetToPtr<J2DBlendInfo>(¶m_0, (void*)param_0.field_0x60);
|
||||
field_0x58 = JSUConvertOffsetToPtr<u8>(¶m_0, (void*)param_0.field_0x64);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -114,283 +133,421 @@ asm J2DMaterialFactory::J2DMaterialFactory(J2DMaterialBlock const& param_0) {
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/__ct__18J2DMaterialFactoryFRC16J2DMaterialBlock.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 802F2C94-802F2D1C 2ED5D4 0088+00 1/1 0/0 0/0 .text countStages__18J2DMaterialFactoryCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::countStages(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/countStages__18J2DMaterialFactoryCFi.s"
|
||||
u32 J2DMaterialFactory::countStages(int param_0) const {
|
||||
J2DMaterialInitData* iVar5 = &field_0x4[field_0x8[param_0]];
|
||||
u32 uVar4 = 0;
|
||||
u32 uVar3 = 0;
|
||||
if (iVar5->field_0x4 != 0xff) {
|
||||
uVar3 = field_0x40[iVar5->field_0x4];
|
||||
}
|
||||
for (int i = 0; i < 8; i++) {
|
||||
if (iVar5->field_0x38[i] != 0xffff) {
|
||||
uVar4++;
|
||||
}
|
||||
}
|
||||
if ((uVar3 != uVar4 && uVar4 != 0)) {
|
||||
if (uVar3 > uVar4) {
|
||||
return uVar3;
|
||||
}
|
||||
return uVar4;
|
||||
}
|
||||
return uVar3;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F2D1C-802F362C 2ED65C 0910+00 0/0 1/1 0/0 .text
|
||||
* create__18J2DMaterialFactoryCFP11J2DMaterialiUlP15J2DResReferenceP15J2DResReferenceP10JKRArchive
|
||||
*/
|
||||
// Stack issues
|
||||
#ifdef NONMATCHING
|
||||
J2DMaterial* J2DMaterialFactory::create(J2DMaterial* param_0, int index, u32 param_2,
|
||||
J2DResReference* param_3, J2DResReference* param_4,
|
||||
JKRArchive* param_5) const {
|
||||
u32 stages = countStages(index);
|
||||
u32 uVar1 = ((param_2 & 0x1f0000) >> 16);
|
||||
u32 r28 = stages > uVar1 ? stages : uVar1;
|
||||
|
||||
u32 r25 = r28 <= 8 ? r28 : 8;
|
||||
|
||||
s32 local_3bc = ((param_2 & 0x1000000) != 0);
|
||||
s32 local_3c0 = (param_2 & 0x1f0000) ? local_3bc : 0;
|
||||
bool temp = (param_2 & 0x1f0000);
|
||||
u16 tevBlockNum = r28;
|
||||
param_0->mTevBlock = J2DMaterial::createTevBlock(tevBlockNum, temp);
|
||||
param_0->mIndBlock = J2DMaterial::createIndBlock(local_3c0, temp);
|
||||
param_0->mIndex = index;
|
||||
param_0->field_0x8 = getMaterialMode(index);
|
||||
param_0->getColorBlock()->setColorChanNum(newColorChanNum(index));
|
||||
param_0->getColorBlock()->setCullMode(newCullMode(index));
|
||||
param_0->getTexGenBlock()->setTexGenNum(newTexGenNum(index));
|
||||
param_0->getPEBlock()->setAlphaComp(newAlphaComp(index));
|
||||
param_0->getPEBlock()->setBlend(newBlend(index));
|
||||
param_0->getPEBlock()->setDither(newDither(index));
|
||||
param_0->getTevBlock()->setTevStageNum(newTevStageNum(index));
|
||||
param_0->mMaterialAlphaCalc = getMaterialAlphaCalc(index);
|
||||
|
||||
JUTResReference aJStack_12c;
|
||||
for (u8 i = 0; i < r25; i++) {
|
||||
u16 texNo = newTexNo(index, i);
|
||||
s8* local_37c = param_3->getResReference(texNo);
|
||||
void* local_380 = NULL;
|
||||
if (local_37c != NULL) {
|
||||
local_380 = aJStack_12c.getResource(local_37c, 'TIMG', param_5);
|
||||
if (local_380 == NULL && param_5 != NULL) {
|
||||
local_380 = aJStack_12c.getResource(local_37c, 'TIMG', NULL);
|
||||
}
|
||||
if (local_380 == NULL && J2DScreen::getDataManage() != NULL) {
|
||||
char acStack_230[256];
|
||||
strcpy(acStack_230, param_3->getName(texNo));
|
||||
local_380 = J2DScreen::getDataManage()->get(acStack_230);
|
||||
}
|
||||
}
|
||||
param_0->getTevBlock()->insertTexture(i, (ResTIMG*)local_380);
|
||||
param_0->getTevBlock()->setTexNo(i, texNo);
|
||||
}
|
||||
u16 fontNo = newFontNo(index);
|
||||
param_0->getTevBlock()->setFontNo(fontNo);
|
||||
|
||||
s8* local_384 = param_4->getResReference(param_0->getTevBlock()->getFontNo());
|
||||
void* local_388 = NULL;
|
||||
if (local_384 != NULL) {
|
||||
local_388 = aJStack_12c.getResource(local_384, 'FONT', param_5);
|
||||
if (local_388 == NULL && param_5 != NULL) {
|
||||
local_388 = aJStack_12c.getResource(local_384, 'FONT', NULL);
|
||||
}
|
||||
if (local_388 == NULL && J2DScreen::getDataManage() != NULL) {
|
||||
char* pcVar9 = param_4->getName(param_0->getTevBlock()->getFontNo());
|
||||
char acStack_334[256];
|
||||
strcpy(acStack_334, pcVar9);
|
||||
local_388 = J2DScreen::getDataManage()->get(acStack_334);
|
||||
}
|
||||
}
|
||||
|
||||
param_0->getTevBlock()->setFont((ResFONT*)local_388);
|
||||
for (u8 i = 0; i < r28; i++) {
|
||||
param_0->getTevBlock()->setTevOrder(i, newTevOrder(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < r28; i++) {
|
||||
J2DMaterialInitData* local_38c = &field_0x4[field_0x8[index]];
|
||||
param_0->getTevBlock()->setTevStage(i, newTevStage(index, i));
|
||||
if (local_38c->field_0xba[i] != 0xffff) {
|
||||
param_0->getTevBlock()->getTevStage(i)->setTexSel(field_0x48[local_38c->field_0xba[i]].field_0x1);
|
||||
param_0->getTevBlock()->getTevStage(i)->setRasSel(field_0x48[local_38c->field_0xba[i]].field_0x0);
|
||||
}
|
||||
}
|
||||
for (u8 i = 0; i < 4; i++) {
|
||||
param_0->getTevBlock()->setTevKColor(i, newTevKColor(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < 4; i++) {
|
||||
J2DTevBlock* block = param_0->getTevBlock();
|
||||
block->setTevColor(i, newTevColor(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < 4; i++) {
|
||||
param_0->getTevBlock()->setTevSwapModeTable(i, newTevSwapModeTable(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < 2; i++) {
|
||||
param_0->getColorBlock()->setMatColor(i, newMatColor(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < 4; i++) {
|
||||
param_0->getColorBlock()->setColorChan(i, newColorChan(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < 8; i++) {
|
||||
param_0->getTexGenBlock()->setTexCoord(i, newTexCoord(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < 8; i++) {
|
||||
param_0->getTexGenBlock()->setTexMtx(i, newTexMtx(index, i));
|
||||
}
|
||||
J2DMaterialInitData* local_394 = &field_0x4[field_0x8[index]];
|
||||
for (u8 i = 0; i < r28; i++) {
|
||||
param_0->getTevBlock()->setTevKColorSel(i, local_394->field_0x52[i]);
|
||||
}
|
||||
for (u8 i = 0; i < r28; i++) {
|
||||
param_0->getTevBlock()->setTevKAlphaSel(i, local_394->field_0x62[i]);
|
||||
}
|
||||
if (field_0xc != NULL || local_3c0 != 0) {
|
||||
u8 local_410 = newIndTexStageNum(index);
|
||||
param_0->mIndBlock->setIndTexStageNum(local_410);
|
||||
for (u8 i = 0; i < local_410; i++) {
|
||||
param_0->getIndBlock()->setIndTexMtx(i, newIndTexMtx(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < local_410; i++) {
|
||||
param_0->getIndBlock()->setIndTexOrder(i, newIndTexOrder(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < local_410; i++) {
|
||||
param_0->getIndBlock()->setIndTexCoordScale(i, newIndTexCoordScale(index, i));
|
||||
}
|
||||
for (u8 i = 0; i < r28; i++) {
|
||||
param_0->getTevBlock()->setIndTevStage(i, newIndTevStage(index, i));
|
||||
}
|
||||
}
|
||||
return param_0;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::create(J2DMaterial* param_0, int param_1, u32 param_2,
|
||||
asm J2DMaterial* J2DMaterialFactory::create(J2DMaterial* param_0, int param_1, u32 param_2,
|
||||
J2DResReference* param_3, J2DResReference* param_4,
|
||||
JKRArchive* param_5) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/func_802F2D1C.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804561C0-804561C4 0047C0 0004+00 1/1 0/0 0/0 .sdata2 @1887 */
|
||||
SECTION_SDATA2 static u32 lit_1887 = 0xFFFFFFFF;
|
||||
|
||||
/* 802F362C-802F36CC 2EDF6C 00A0+00 1/1 0/0 0/0 .text newMatColor__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newMatColor(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newMatColor__18J2DMaterialFactoryCFii.s"
|
||||
JUtility::TColor J2DMaterialFactory::newMatColor(int param_0, int param_1) const {
|
||||
GXColor color = {0xff,0xff,0xff,0xff};
|
||||
JUtility::TColor local_20 = GXColor(color);
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x8[param_1] != 0xffff) {
|
||||
return field_0x10[iVar2->field_0x8[param_1]];
|
||||
}
|
||||
return local_20;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F36CC-802F3704 2EE00C 0038+00 1/1 0/0 0/0 .text newColorChanNum__18J2DMaterialFactoryCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newColorChanNum(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newColorChanNum__18J2DMaterialFactoryCFi.s"
|
||||
u8 J2DMaterialFactory::newColorChanNum(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x2 != 0xff) {
|
||||
return field_0x14[iVar2->field_0x2];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3704-802F3758 2EE044 0054+00 1/1 0/0 0/0 .text newColorChan__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newColorChan(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newColorChan__18J2DMaterialFactoryCFii.s"
|
||||
J2DColorChan J2DMaterialFactory::newColorChan(int param_0, int param_1) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0xc[param_1] != 0xffff) {
|
||||
return J2DColorChan(field_0x18[iVar2->field_0xc[param_1]]);
|
||||
}
|
||||
return J2DColorChan();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3758-802F3790 2EE098 0038+00 1/1 0/0 0/0 .text newTexGenNum__18J2DMaterialFactoryCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTexGenNum(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTexGenNum__18J2DMaterialFactoryCFi.s"
|
||||
u32 J2DMaterialFactory::newTexGenNum(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x3 != 0xff) {
|
||||
return field_0x1c[iVar2->field_0x3];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3790-802F3804 2EE0D0 0074+00 1/1 0/0 0/0 .text newTexCoord__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTexCoord(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTexCoord__18J2DMaterialFactoryCFii.s"
|
||||
J2DTexCoord J2DMaterialFactory::newTexCoord(int param_0, int param_1) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x14[param_1] != 0xffff) {
|
||||
return J2DTexCoord(field_0x20[iVar2->field_0x14[param_1]]);
|
||||
}
|
||||
return J2DTexCoord();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3804-802F38E0 2EE144 00DC+00 1/1 0/0 0/0 .text newTexMtx__18J2DMaterialFactoryCFii
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTexMtx(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTexMtx__18J2DMaterialFactoryCFii.s"
|
||||
J2DTexMtx* J2DMaterialFactory::newTexMtx(int param_0, int param_1) const {
|
||||
J2DTexMtx* rv = NULL;
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x24[param_1] != 0xffff) {
|
||||
rv = new J2DTexMtx(field_0x24[iVar2->field_0x24[param_1]]);
|
||||
rv->calc();
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F38E0-802F3920 2EE220 0040+00 1/1 0/0 0/0 .text newCullMode__18J2DMaterialFactoryCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newCullMode(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newCullMode__18J2DMaterialFactoryCFi.s"
|
||||
u8 J2DMaterialFactory::newCullMode(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x1 != 0xff) {
|
||||
return field_0x30[iVar2->field_0x1];
|
||||
}
|
||||
return 0xff;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3920-802F3968 2EE260 0048+00 1/1 0/0 0/0 .text newTexNo__18J2DMaterialFactoryCFii
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTexNo(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTexNo__18J2DMaterialFactoryCFii.s"
|
||||
u16 J2DMaterialFactory::newTexNo(int param_0, int param_1) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x38[param_1] != 0xffff) {
|
||||
return field_0x28[iVar2->field_0x38[param_1]];
|
||||
}
|
||||
return 0x1FFFF;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3968-802F39A8 2EE2A8 0040+00 1/1 0/0 0/0 .text newFontNo__18J2DMaterialFactoryCFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newFontNo(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newFontNo__18J2DMaterialFactoryCFi.s"
|
||||
u16 J2DMaterialFactory::newFontNo(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x48 != 0xffff) {
|
||||
return field_0x2c[iVar2->field_0x48];
|
||||
}
|
||||
return 0x1FFFF;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F39A8-802F3A1C 2EE2E8 0074+00 1/1 0/0 0/0 .text newTevOrder__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTevOrder(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTevOrder__18J2DMaterialFactoryCFii.s"
|
||||
J2DTevOrder J2DMaterialFactory::newTevOrder(int param_0, int param_1) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x72[param_1] != 0xffff) {
|
||||
return J2DTevOrder(field_0x34[iVar2->field_0x72[param_1]]);
|
||||
}
|
||||
return J2DTevOrder();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80456BB0-80456BB4 000050 0004+00 1/1 0/0 0/0 .sbss2 @2018 */
|
||||
SECTION_SBSS2 static u8 lit_2018[4];
|
||||
|
||||
/* 80456BB4-80456BB8 000054 0004+00 1/1 0/0 0/0 .sbss2 None */
|
||||
SECTION_SBSS2 static u8 data_80456BB4[4];
|
||||
SECTION_SBSS2 static GXColorS10 lit_2018;
|
||||
|
||||
/* 802F3A1C-802F3AB4 2EE35C 0098+00 1/1 0/0 0/0 .text newTevColor__18J2DMaterialFactoryCFii */
|
||||
// J2DGXColorS10 init issues
|
||||
#ifdef NONMATCHING
|
||||
J2DGXColorS10 J2DMaterialFactory::newTevColor(int param_0, int param_1) const {
|
||||
GXColorS10 x = lit_2018;
|
||||
J2DGXColorS10 rv = J2DGXColorS10(x);
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x92[param_1] != 0xffff) {
|
||||
return field_0x38[iVar2->field_0x92[param_1]];
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTevColor(int param_0, int param_1) const {
|
||||
asm J2DGXColorS10 J2DMaterialFactory::newTevColor(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTevColor__18J2DMaterialFactoryCFii.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804561C4-804561C8 0047C4 0004+00 1/1 0/0 0/0 .sdata2 @2039 */
|
||||
SECTION_SDATA2 static u32 lit_2039 = 0xFFFFFFFF;
|
||||
|
||||
/* 802F3AB4-802F3B54 2EE3F4 00A0+00 1/1 0/0 0/0 .text newTevKColor__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTevKColor(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTevKColor__18J2DMaterialFactoryCFii.s"
|
||||
JUtility::TColor J2DMaterialFactory::newTevKColor(int param_0, int param_1) const {
|
||||
GXColor x = {0xFF, 0xFF, 0xFF, 0xFF};
|
||||
JUtility::TColor local_20 = GXColor(x);
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x4a[param_1] != 0xffff) {
|
||||
return field_0x3c[iVar2->field_0x4a[param_1]];
|
||||
}
|
||||
return local_20;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3B54-802F3B8C 2EE494 0038+00 1/1 0/0 0/0 .text newTevStageNum__18J2DMaterialFactoryCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTevStageNum(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTevStageNum__18J2DMaterialFactoryCFi.s"
|
||||
u8 J2DMaterialFactory::newTevStageNum(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x4 != 0xff) {
|
||||
return field_0x40[iVar2->field_0x4];
|
||||
}
|
||||
return 0xFF;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3B8C-802F3BEC 2EE4CC 0060+00 1/1 0/0 0/0 .text newTevStage__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTevStage(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTevStage__18J2DMaterialFactoryCFii.s"
|
||||
J2DTevStage J2DMaterialFactory::newTevStage(int param_0, int param_1) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x9a[param_1] != 0xffff) {
|
||||
return J2DTevStage(field_0x44[iVar2->field_0x9a[param_1]]);
|
||||
}
|
||||
return J2DTevStage();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3BEC-802F3C88 2EE52C 009C+00 1/1 0/0 0/0 .text
|
||||
* newTevSwapModeTable__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newTevSwapModeTable(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newTevSwapModeTable__18J2DMaterialFactoryCFii.s"
|
||||
J2DTevSwapModeTable J2DMaterialFactory::newTevSwapModeTable(int param_0, int param_1) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0xda[param_1] != 0xffff) {
|
||||
return J2DTevSwapModeTable(field_0x4c[iVar2->field_0xda[param_1]]);
|
||||
}
|
||||
return J2DTevSwapModeTable(j2dDefaultTevSwapModeTable);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3C88-802F3CB8 2EE5C8 0030+00 1/1 0/0 0/0 .text newIndTexStageNum__18J2DMaterialFactoryCFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newIndTexStageNum(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newIndTexStageNum__18J2DMaterialFactoryCFi.s"
|
||||
u8 J2DMaterialFactory::newIndTexStageNum(int param_0) const {
|
||||
if (field_0xc != NULL) {
|
||||
if (field_0xc[param_0].field_0x0 == 1) {
|
||||
return field_0xc[param_0].field_0x1;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3CB8-802F3D20 2EE5F8 0068+00 1/1 0/0 0/0 .text newIndTexOrder__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newIndTexOrder(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newIndTexOrder__18J2DMaterialFactoryCFii.s"
|
||||
J2DIndTexOrder J2DMaterialFactory::newIndTexOrder(int param_0, int param_1) const {
|
||||
J2DIndTexOrder rv;
|
||||
if (field_0xc != NULL) {
|
||||
if (field_0xc[param_0].field_0x0 == 1) {
|
||||
return J2DIndTexOrder(field_0xc[param_0].field_0x4[param_1]);
|
||||
}
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3D20-802F3E24 2EE660 0104+00 1/1 0/0 0/0 .text newIndTexMtx__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newIndTexMtx(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newIndTexMtx__18J2DMaterialFactoryCFii.s"
|
||||
J2DIndTexMtx J2DMaterialFactory::newIndTexMtx(int param_0, int param_1) const {
|
||||
J2DIndTexMtx rv;
|
||||
if (field_0xc != NULL) {
|
||||
if (field_0xc[param_0].field_0x0 == 1) {
|
||||
return J2DIndTexMtx(field_0xc[param_0].field_0xc[param_1]);
|
||||
}
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3E24-802F3F78 2EE764 0154+00 1/1 0/0 0/0 .text newIndTevStage__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newIndTevStage(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newIndTevStage__18J2DMaterialFactoryCFii.s"
|
||||
J2DIndTevStage J2DMaterialFactory::newIndTevStage(int param_0, int param_1) const {
|
||||
J2DIndTevStage rv;
|
||||
if (field_0xc != NULL) {
|
||||
if (field_0xc[param_0].field_0x0 == 1) {
|
||||
return J2DIndTevStage(field_0xc[param_0].field_0x68[param_1]);
|
||||
}
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3F78-802F3FE0 2EE8B8 0068+00 1/1 0/0 0/0 .text
|
||||
* newIndTexCoordScale__18J2DMaterialFactoryCFii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newIndTexCoordScale(int param_0, int param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newIndTexCoordScale__18J2DMaterialFactoryCFii.s"
|
||||
J2DIndTexCoordScale J2DMaterialFactory::newIndTexCoordScale(int param_0, int param_1) const {
|
||||
J2DIndTexCoordScale rv;
|
||||
if (field_0xc != NULL) {
|
||||
if (field_0xc[param_0].field_0x0 == 1) {
|
||||
return J2DIndTexCoordScale(field_0xc[param_0].field_0x60[param_1]);
|
||||
}
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F3FE0-802F405C 2EE920 007C+00 1/1 0/0 0/0 .text newAlphaComp__18J2DMaterialFactoryCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newAlphaComp(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newAlphaComp__18J2DMaterialFactoryCFi.s"
|
||||
J2DAlphaComp J2DMaterialFactory::newAlphaComp(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0xe2 != 0xffff) {
|
||||
return J2DAlphaComp(field_0x50[iVar2->field_0xe2]);
|
||||
}
|
||||
return J2DAlphaComp();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F405C-802F40D8 2EE99C 007C+00 1/1 0/0 0/0 .text newBlend__18J2DMaterialFactoryCFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newBlend(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newBlend__18J2DMaterialFactoryCFi.s"
|
||||
J2DBlend J2DMaterialFactory::newBlend(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0xe4 != 0xffff) {
|
||||
return J2DBlend(field_0x54[iVar2->field_0xe4]);
|
||||
}
|
||||
return J2DBlend();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F40D8-802F4110 2EEA18 0038+00 1/1 0/0 0/0 .text newDither__18J2DMaterialFactoryCFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DMaterialFactory::newDither(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DMaterialFactory/newDither__18J2DMaterialFactoryCFi.s"
|
||||
u8 J2DMaterialFactory::newDither(int param_0) const {
|
||||
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
|
||||
if (iVar2->field_0x5 != 0xff) {
|
||||
return field_0x58[iVar2->field_0x5];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802F4110-802F4170 2EEA50 0060+00 1/1 0/0 0/0 .text __ct__11J2DTevStageFRC15J2DTevStageInfo */
|
||||
#pragma push
|
||||
|
||||
@@ -20,7 +20,7 @@ struct J2DTevBlock {
|
||||
/* 802EA14C */ bool getTevKAlphaSel(u32);
|
||||
/* 802EA154 */ bool getTevKColorSel(u32);
|
||||
/* 802EA15C */ bool getTevKColor(u32);
|
||||
/* 802EA164 */ u32 getFontNo() const;
|
||||
/* 802EA164 */ u16 getFontNo() const;
|
||||
/* 802EA170 */ u32 getTexNo(u32) const;
|
||||
/* 802EA17C */ bool getTevStageNum() const;
|
||||
/* 802EA184 */ bool getIndTevStage(u32);
|
||||
@@ -64,20 +64,14 @@ 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;
|
||||
extern "C" extern u16 j2dDefaultIndTexOrderNull[1 + 1 /* padding */];
|
||||
extern "C" extern u8 j2dDefaultTevColor[8];
|
||||
extern "C" extern u8 j2dDefaultIndTexCoordScaleInfo[2 + 2 /* padding */];
|
||||
extern "C" extern u32 j2dDefaultTevKColor;
|
||||
extern "C" extern u8 j2dDefaultTevSwapMode[4];
|
||||
extern "C" extern u32 j2dDefaultTevSwapModeTable;
|
||||
extern "C" extern u32 j2dDefaultBlendInfo;
|
||||
extern "C" extern u8 data_804561A4[4];
|
||||
extern "C" extern u32 j2dDefaultColorChanInfo;
|
||||
extern "C" extern u16 data_804561AC;
|
||||
extern "C" extern u16 j2dDefaultAlphaCmp;
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -211,7 +205,7 @@ bool J2DTevBlock::getTevKColor(u32 param_0) {
|
||||
}
|
||||
|
||||
/* 802EA164-802EA170 2E4AA4 000C+00 0/0 1/0 0/0 .text getFontNo__11J2DTevBlockCFv */
|
||||
u32 J2DTevBlock::getFontNo() const {
|
||||
u16 J2DTevBlock::getFontNo() const {
|
||||
return 0xFFFF;
|
||||
}
|
||||
|
||||
@@ -270,8 +264,8 @@ extern J2DTevStageInfo const j2dDefaultTevStageInfo = {4, 10, 15, 15, 0, 0, 0, 0
|
||||
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] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
SECTION_RODATA extern const J2DIndTevStageInfo j2dDefaultIndTevStageInfo = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x803A1BF4, &j2dDefaultIndTevStageInfo);
|
||||
|
||||
@@ -279,14 +273,10 @@ COMPILER_STRIP_GATE(0x803A1BF4, &j2dDefaultIndTevStageInfo);
|
||||
SECTION_SDATA2 extern u32 j2dDefaultColInfo = 0xFFFFFFFF;
|
||||
|
||||
/* 80456180-80456184 004780 0004+00 0/0 7/7 0/0 .sdata2 j2dDefaultTevOrderInfoNull */
|
||||
SECTION_SDATA2 extern u32 j2dDefaultTevOrderInfoNull = 0xFFFFFF00;
|
||||
SECTION_SDATA2 extern J2DTevOrderInfo j2dDefaultTevOrderInfoNull = {0xFF, 0xFF, 0xFF, 0x00};
|
||||
|
||||
/* 80456184-80456188 004784 0002+02 0/0 3/3 0/0 .sdata2 j2dDefaultIndTexOrderNull */
|
||||
SECTION_SDATA2 extern u16 j2dDefaultIndTexOrderNull[1 + 1 /* padding */] = {
|
||||
0xFFFF,
|
||||
/* padding */
|
||||
0x0000,
|
||||
};
|
||||
SECTION_SDATA2 extern const J2DIndTexOrderInfo j2dDefaultIndTexOrderNull = { 0xFF, 0xFF, };
|
||||
|
||||
/* 80456188-80456190 004788 0008+00 0/0 5/5 0/0 .sdata2 j2dDefaultTevColor */
|
||||
SECTION_SDATA2 extern u8 j2dDefaultTevColor[8] = {
|
||||
@@ -294,10 +284,7 @@ SECTION_SDATA2 extern u8 j2dDefaultTevColor[8] = {
|
||||
};
|
||||
|
||||
/* 80456190-80456194 004790 0002+02 0/0 3/3 0/0 .sdata2 j2dDefaultIndTexCoordScaleInfo */
|
||||
SECTION_SDATA2 extern u8 j2dDefaultIndTexCoordScaleInfo[2 + 2 /* padding */] = {
|
||||
0x00,
|
||||
0x00,
|
||||
/* padding */
|
||||
SECTION_SDATA2 extern const J2DIndTexCoordScaleInfo j2dDefaultIndTexCoordScaleInfo = {
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
@@ -314,7 +301,7 @@ SECTION_SDATA2 extern u8 j2dDefaultTevSwapMode[4] = {
|
||||
};
|
||||
|
||||
/* 8045619C-804561A0 00479C 0004+00 0/0 6/6 0/0 .sdata2 j2dDefaultTevSwapModeTable */
|
||||
SECTION_SDATA2 extern u32 j2dDefaultTevSwapModeTable = 0x00010203;
|
||||
SECTION_SDATA2 extern const J2DTevSwapModeTableInfo j2dDefaultTevSwapModeTable = {0x00, 0x01, 0x02, 0x03};
|
||||
|
||||
/* 804561A0-804561A4 0047A0 0004+00 0/0 3/3 0/0 .sdata2 j2dDefaultBlendInfo */
|
||||
SECTION_SDATA2 extern u32 j2dDefaultBlendInfo = 0x01040505;
|
||||
|
||||
@@ -372,6 +372,28 @@ 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) {
|
||||
local_18[0] = 4;
|
||||
local_18[1] = 0xffff;
|
||||
} else {
|
||||
local_18[0] = 0xff;
|
||||
local_18[1] = 0xff04;
|
||||
}
|
||||
for (u8 i = 0; i < 2; i++) {
|
||||
if (mMaterial->getTevBlock()->getMaxStage() > i) {
|
||||
J2DTevOrderInfo info;
|
||||
info.mTexCoord = (local_18[i]) >> 8;
|
||||
info.mTexMap = (local_18[i]) >> 8;
|
||||
info.mColor = local_18[i] & 0xff;
|
||||
mMaterial->getTevBlock()->setTevOrder(i, J2DTevOrder(info));
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -380,6 +402,7 @@ asm void J2DTextBoxEx::setTevOrder(bool param_0) {
|
||||
#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) {
|
||||
@@ -498,7 +521,6 @@ bool J2DTextBoxEx::setWhite(JUtility::TColor white) {
|
||||
|
||||
/* 8030834C-803084CC 302C8C 0180+00 1/0 0/0 0/0 .text
|
||||
* setBlackWhite__12J2DTextBoxExFQ28JUtility6TColorQ28JUtility6TColor */
|
||||
#ifdef NONMATCHING
|
||||
bool J2DTextBoxEx::setBlackWhite(JUtility::TColor param_0, JUtility::TColor param_1) {
|
||||
if (mMaterial == NULL) {
|
||||
return false;
|
||||
@@ -522,36 +544,48 @@ bool J2DTextBoxEx::setBlackWhite(JUtility::TColor param_0, JUtility::TColor para
|
||||
setTevStage(bvar);
|
||||
|
||||
if (bvar) {
|
||||
J2DGXColorS10 color0;
|
||||
color0.r = param_0.r;
|
||||
color0.g = param_0.g;
|
||||
color0.b = param_0.b;
|
||||
color0.a = param_0.a;
|
||||
mMaterial->getTevBlock()->setTevColor(0, color0);
|
||||
J2DGXColorS10 color;
|
||||
color.r = param_0.r;
|
||||
color.g = param_0.g;
|
||||
color.b = param_0.b;
|
||||
color.a = param_0.a;
|
||||
mMaterial->getTevBlock()->setTevColor(0, color);
|
||||
|
||||
J2DGXColorS10 color1;
|
||||
color1.r = param_1.r;
|
||||
color1.g = param_1.g;
|
||||
color1.b = param_1.b;
|
||||
color1.a = param_1.a;
|
||||
mMaterial->getTevBlock()->setTevColor(1, color1);
|
||||
color.r = param_1.r;
|
||||
color.g = param_1.g;
|
||||
color.b = param_1.b;
|
||||
color.a = param_1.a;
|
||||
mMaterial->getTevBlock()->setTevColor(1, color);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool J2DTextBoxEx::setBlackWhite(JUtility::TColor param_0, JUtility::TColor param_1) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/setBlackWhite__12J2DTextBoxExFQ28JUtility6TColorQ28JUtility6TColor.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 803084CC-80308668 302E0C 019C+00 4/4 0/0 0/0 .text
|
||||
* getBlackWhite__12J2DTextBoxExCFPQ28JUtility6TColorPQ28JUtility6TColor */
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
bool J2DTextBoxEx::getBlackWhite(JUtility::TColor* param_0, JUtility::TColor* param_1) const {
|
||||
if (mMaterial == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (mMaterial->getTevBlock() == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool tevStageNum = mMaterial->getTevBlock()->getTevStageNum() != 1;
|
||||
*param_0 = JUtility::TColor(0);
|
||||
*param_1 = JUtility::TColor(0xffffffff);
|
||||
if (tevStageNum) {
|
||||
J2DGXColorS10 local_30(*mMaterial->getTevBlock()->getTevColor(0));
|
||||
J2DGXColorS10 local_38(*mMaterial->getTevBlock()->getTevColor(1));
|
||||
*param_0 = JUtility::TColor((((u8)local_30.r) << 24) | (((u8)local_30.g) << 16) | (((u8)local_30.b) << 8) | ((u8)local_30.a));
|
||||
*param_1 = JUtility::TColor((((u8)local_38.r) << 24) | (((u8)local_38.g) << 16) | (((u8)local_38.b) << 8) | ((u8)local_38.a));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -560,37 +594,40 @@ asm bool J2DTextBoxEx::getBlackWhite(JUtility::TColor* param_0, JUtility::TColor
|
||||
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/getBlackWhite__12J2DTextBoxExCFPQ28JUtility6TColorPQ28JUtility6TColor.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80308668-803086FC 302FA8 0094+00 1/1 0/0 0/0 .text
|
||||
* isSetBlackWhite__12J2DTextBoxExCFQ28JUtility6TColorQ28JUtility6TColor */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool J2DTextBoxEx::isSetBlackWhite(JUtility::TColor param_0, JUtility::TColor param_1) const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/isSetBlackWhite__12J2DTextBoxExCFQ28JUtility6TColorQ28JUtility6TColor.s"
|
||||
bool J2DTextBoxEx::isSetBlackWhite(JUtility::TColor param_0, JUtility::TColor param_1) const {
|
||||
if ((u32)param_0 == 0 && (u32)param_1 == 0xffffffff) {
|
||||
return 1;
|
||||
}
|
||||
mMaterial->getTevBlock()->getTevStageNum();
|
||||
if (mMaterial->getTevBlock()->getMaxStage() == 1) {
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 803086FC-8030875C 30303C 0060+00 1/0 0/0 0/0 .text getBlack__12J2DTextBoxExCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JUtility::TColor J2DTextBoxEx::getBlack() const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/getBlack__12J2DTextBoxExCFv.s"
|
||||
JUtility::TColor J2DTextBoxEx::getBlack() const {
|
||||
JUtility::TColor black;
|
||||
JUtility::TColor white;
|
||||
if (getBlackWhite(&black, &white) == 0) {
|
||||
return JUtility::TColor(0);
|
||||
}
|
||||
return black;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8030875C-803087BC 30309C 0060+00 1/0 0/0 0/0 .text getWhite__12J2DTextBoxExCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm JUtility::TColor J2DTextBoxEx::getWhite() const {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/getWhite__12J2DTextBoxExCFv.s"
|
||||
JUtility::TColor J2DTextBoxEx::getWhite() const {
|
||||
JUtility::TColor black;
|
||||
JUtility::TColor white;
|
||||
if (getBlackWhite(&black, &white) == 0) {
|
||||
return JUtility::TColor(0xffffffff);
|
||||
}
|
||||
return white;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 803087BC-803087DC 3030FC 0020+00 1/0 0/0 0/0 .text setAlpha__12J2DTextBoxExFUc */
|
||||
void J2DTextBoxEx::setAlpha(u8 alpha) {
|
||||
@@ -677,24 +714,23 @@ void J2DTextBoxEx::setAnimation(J2DAnmVisibilityFull* anm) {
|
||||
|
||||
/* 8030896C-803089EC 3032AC 0080+00 1/0 0/0 0/0 .text
|
||||
* animationPane__12J2DTextBoxExFPC15J2DAnmTransform */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm const J2DAnmTransform* J2DTextBoxEx::animationPane(J2DAnmTransform const* param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/animationPane__12J2DTextBoxExFPC15J2DAnmTransform.s"
|
||||
const J2DAnmTransform* J2DTextBoxEx::animationPane(J2DAnmTransform const* param_0) {
|
||||
if (mVisibilityAnm != NULL && field_0x13c != 0xffff) {
|
||||
u8 visibility;
|
||||
mVisibilityAnm->getVisibility(field_0x13c, &visibility);
|
||||
if (visibility != 0) {
|
||||
show();
|
||||
} else {
|
||||
hide();
|
||||
}
|
||||
}
|
||||
return J2DPane::animationPane(param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 803089EC-80308A28 30332C 003C+00 1/0 0/0 0/0 .text setCullBack__12J2DTextBoxExFb */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DTextBoxEx::setCullBack(bool param_0) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/J2DGraph/J2DTextBoxEx/setCullBack__12J2DTextBoxExFb.s"
|
||||
void J2DTextBoxEx::setCullBack(bool param_0) {
|
||||
setCullBack(param_0 ? GX_CULL_BACK : GX_CULL_NONE);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80308A28-80308A48 303368 0020+00 1/0 0/0 0/0 .text isUsed__12J2DTextBoxExFPC7ResTIMG
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user