mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-08-17 20:43:07 -04:00
m_Do cleanup, d_resource, drawlist stuff (#145)
* d_resource / some d_stage * setup dDlst_list_c / d_select_icon OK * JUTXfb / some JUTVideo + various * some J2D classes / JUTVideo/Fader attempts * bunch of m_Do cleanup + matches / f_ap_game OK * mDoLib_clipper::setup OK * most of d_meter_HIO OK * pane_class / kantera_icon_meter
This commit is contained in:
+4
-10
@@ -603,12 +603,6 @@ struct dInsect_c {
|
||||
/* 80110648 */ void Insect_Release();
|
||||
};
|
||||
|
||||
struct dDlst_shadowControl_c {
|
||||
/* 80055F1C */ void addReal(u32, J3DModel*);
|
||||
|
||||
static u8 mSimpleTexObj[32];
|
||||
};
|
||||
|
||||
struct dDemo_object_c {
|
||||
/* 80039088 */ void getActor(u8);
|
||||
};
|
||||
@@ -5191,7 +5185,7 @@ COMPILER_STRIP_GATE(0x8038D658, &lit_3757);
|
||||
|
||||
/* 8038D664-8038D6BC 019CC4 0058+00 41/50 0/0 0/0 .rodata m__19daAlinkHIO_basic_c0 */
|
||||
daAlinkHIO_basic_c1 const daAlinkHIO_basic_c0::m = {
|
||||
0, 20000, -10000, 8000, 1, 30, 400, 600, 16384, 1.0f, 4.0f, 0.7f, 3.0f,
|
||||
false, 20000, -10000, 8000, 1, 30, 400, 600, 16384, 1.0f, 4.0f, 0.7f, 3.0f,
|
||||
60.0f, 85.0f, 300.0f, 200.0f, 20.0f, 30.0f, 23.0f, 41.0f, 0.7f, 0.5f, 0.7f, 400.0f, 5000.0f};
|
||||
|
||||
/* 8038D6BC-8038D714 019D1C 0058+00 34/47 0/0 0/0 .rodata m__18daAlinkHIO_move_c0 */
|
||||
@@ -16279,17 +16273,17 @@ asm void daAlink_c::setJumpMode() {
|
||||
|
||||
/* 800B4908-800B4918 0AF248 0010+00 0/0 0/0 1/1 .text getMetamorphoseNearDis__9daAlink_cCFv */
|
||||
float daAlink_c::getMetamorphoseNearDis() const {
|
||||
return daAlinkHIO_basic_c0::m.mMetamorphoseNearDis;
|
||||
return daAlinkHIO_basic_c0::m.mTransformBlockNearDis;
|
||||
}
|
||||
|
||||
/* 800B4918-800B4928 0AF258 0010+00 0/0 0/0 1/1 .text getMetamorphoseFarDis__9daAlink_cCFv */
|
||||
float daAlink_c::getMetamorphoseFarDis() const {
|
||||
return daAlinkHIO_basic_c0::m.mMetamorphoseFarDis;
|
||||
return daAlinkHIO_basic_c0::m.mTransformBlockFarDis;
|
||||
}
|
||||
|
||||
/* 800B4928-800B4938 0AF268 0010+00 0/0 0/0 1/1 .text getMetamorphoseFarAngle__9daAlink_cCFv */
|
||||
s16 daAlink_c::getMetamorphoseFarAngle() const {
|
||||
return daAlinkHIO_basic_c0::m.mMetamorphoseFarAngle;
|
||||
return daAlinkHIO_basic_c0::m.mTransformBlockFarAngle;
|
||||
}
|
||||
|
||||
/* 800B4938-800B4950 0AF278 0018+00 0/0 1/1 0/0 .text setMidnaMsg__9daAlink_cFv */
|
||||
|
||||
+96
-214
@@ -4,9 +4,11 @@
|
||||
//
|
||||
|
||||
#include "d/a/d_a_player.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/mtx/mtx.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_iter.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
//
|
||||
@@ -19,21 +21,6 @@ struct mDoMtx_stack_c {
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct daAlink_c {
|
||||
/* 800A0744 */ void setLookPosFromOut(cXyz*);
|
||||
/* 800BDF60 */ void startRestartRoom(u32, int, int, int);
|
||||
/* 800D72BC */ void setDamagePoint(int, int, int, int);
|
||||
/* 800E01CC */ void cancelBoomerangLock(fopAc_ac_c*);
|
||||
/* 800E0244 */ void checkBoomerangChargeEnd();
|
||||
/* 800E02B8 */ void checkBoomerangCarry(fopAc_ac_c*);
|
||||
/* 800E7AEC */ void setFmChainPosFromOut(fopAc_ac_c*, cXyz*, int);
|
||||
};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
/* 8003C400 */ void getIDRes(char const*, u16, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
@@ -161,9 +148,7 @@ extern "C" extern void* __vt__18mDoExt_transAnmBas[5];
|
||||
extern "C" extern void* __vt__18J3DAnmTransformKey[5];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mDemoArcName__20dStage_roomControl_c[10 + 2 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" u8 sOldVcdVatCmd__8J3DShape[4];
|
||||
|
||||
//
|
||||
@@ -373,52 +358,48 @@ asm void daPy_py_c::checkDrinkBottleItem(int param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 8015EB40-8015EB68 159480 0028+00 0/0 4/4 0/0 .text checkOilBottleItem__9daPy_py_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daPy_py_c::checkOilBottleItem(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkOilBottleItem__9daPy_py_cFi.s"
|
||||
BOOL daPy_py_c::checkOilBottleItem(int i_itemNo) {
|
||||
bool isOilBottleItem = false;
|
||||
if (i_itemNo == CHUCHU_YELLOW || i_itemNo == OIL_BOTTLE_2 || i_itemNo == OIL_BOTTLE) {
|
||||
isOilBottleItem = true;
|
||||
}
|
||||
return isOilBottleItem;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015EB68-8015EB90 1594A8 0028+00 0/0 2/2 0/0 .text checkOpenBottleItem__9daPy_py_cFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_py_c::checkOpenBottleItem(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkOpenBottleItem__9daPy_py_cFi.s"
|
||||
BOOL daPy_py_c::checkOpenBottleItem(int i_itemNo) {
|
||||
bool isOpenBottleItem = false;
|
||||
if (i_itemNo == WATER_BOTTLE || i_itemNo == WORM || i_itemNo == FAIRY) {
|
||||
isOpenBottleItem = true;
|
||||
}
|
||||
return isOpenBottleItem;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015EB90-8015EBB8 1594D0 0028+00 0/0 11/11 0/0 .text checkBowItem__9daPy_py_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_py_c::checkBowItem(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkBowItem__9daPy_py_cFi.s"
|
||||
BOOL daPy_py_c::checkBowItem(int i_itemNo) {
|
||||
bool isBowItem = false;
|
||||
if (i_itemNo == BOW || i_itemNo == BOMB_ARROW || i_itemNo == HAWK_ARROW) {
|
||||
isBowItem = true;
|
||||
}
|
||||
return isBowItem;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015EBB8-8015EBD8 1594F8 0020+00 0/0 23/23 0/0 .text checkHookshotItem__9daPy_py_cFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_py_c::checkHookshotItem(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkHookshotItem__9daPy_py_cFi.s"
|
||||
BOOL daPy_py_c::checkHookshotItem(int i_itemNo) {
|
||||
bool isHookshotItem = false;
|
||||
if (i_itemNo == HOOKSHOT || i_itemNo == W_HOOKSHOT) {
|
||||
isHookshotItem = true;
|
||||
}
|
||||
return isHookshotItem;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015EBD8-8015EC28 159518 0050+00 0/0 3/3 0/0 .text checkTradeItem__9daPy_py_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_py_c::checkTradeItem(int param_0) {
|
||||
asm BOOL daPy_py_c::checkTradeItem(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkTradeItem__9daPy_py_cFi.s"
|
||||
}
|
||||
@@ -426,35 +407,26 @@ asm void daPy_py_c::checkTradeItem(int param_0) {
|
||||
|
||||
/* 8015EC28-8015EC48 159568 0020+00 0/0 2/2 0/0 .text checkDungeonWarpItem__9daPy_py_cFi
|
||||
*/
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
BOOL daPy_py_c::checkDungeonWarpItem(int i_item_id) {
|
||||
BOOL daPy_py_c::checkDungeonWarpItem(int i_itemNo) {
|
||||
bool isDungeonWarpItem = false;
|
||||
if (i_item_id == DUNGEON_EXIT || i_item_id == DUNGEON_BACK) {
|
||||
if (i_itemNo == DUNGEON_EXIT || i_itemNo == DUNGEON_BACK) {
|
||||
isDungeonWarpItem = true;
|
||||
}
|
||||
return isDungeonWarpItem;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daPy_py_c::checkDungeonWarpItem(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkDungeonWarpItem__9daPy_py_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8015EC48-8015ECB8 159588 0070+00 0/0 10/10 3/3 .text setActor__16daPy_actorKeep_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_actorKeep_c::setActor() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/setActor__16daPy_actorKeep_cFv.s"
|
||||
void daPy_actorKeep_c::setActor() {
|
||||
if (mID != -1) {
|
||||
mActor = fopAcM_SearchByID(mID);
|
||||
|
||||
if (mActor == NULL) {
|
||||
mID = -1;
|
||||
}
|
||||
} else {
|
||||
mActor = NULL;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015ECB8-8015ECFC 1595F8 0044+00 0/0 59/59 4/4 .text setData__16daPy_actorKeep_cFP10fopAc_ac_c
|
||||
*/
|
||||
@@ -477,15 +449,11 @@ daPy_anmHeap_c::daPy_anmHeap_c(u32 pBufferSize) {
|
||||
mBufferSize = pBufferSize;
|
||||
}
|
||||
|
||||
/* 8015ED50-8015EDAC 159690 005C+00 0/0 2/2 2/2 .text __dt__14daPy_anmHeap_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daPy_anmHeap_c::~daPy_anmHeap_c() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/__dt__14daPy_anmHeap_cFv.s"
|
||||
daPy_anmHeap_c::~daPy_anmHeap_c() {
|
||||
if (mAnimeHeap != NULL) {
|
||||
mDoExt_destroySolidHeap(mAnimeHeap);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
void daPy_anmHeap_c::initData() {
|
||||
resetIdx();
|
||||
@@ -494,14 +462,22 @@ void daPy_anmHeap_c::initData() {
|
||||
}
|
||||
|
||||
/* 8015EDC4-8015EE00 159704 003C+00 0/0 1/1 1/1 .text mallocBuffer__14daPy_anmHeap_cFv */
|
||||
#ifdef NONMATCHING
|
||||
void* daPy_anmHeap_c::mallocBuffer() {
|
||||
void* buf = new (0x20) void*[mBufferSize];
|
||||
mBuffer = buf;
|
||||
return mBuffer;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_anmHeap_c::mallocBuffer() {
|
||||
asm void* daPy_anmHeap_c::mallocBuffer() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/mallocBuffer__14daPy_anmHeap_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8015EE00-8015EF84 159740 0184+00 0/0 1/1 1/1 .text
|
||||
* createHeap__14daPy_anmHeap_cFQ214daPy_anmHeap_c16daAlinkHEAP_TYPE */
|
||||
@@ -516,126 +492,43 @@ asm void daPy_anmHeap_c::createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE param_0) {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80453648-80453650 001C48 0008+00 1/0 0/0 0/0 .sdata2 sumouArcName$4614 */
|
||||
extern "C" u8 sumouArcName[8];
|
||||
extern "C" char sumouArcName[8];
|
||||
|
||||
/* 80453650-80453658 001C50 0005+03 1/0 0/0 0/0 .sdata2 ocArcName$4615 */
|
||||
extern "C" u8 ocArcName[5 + 3 /* padding */];
|
||||
extern "C" char ocArcName[8];
|
||||
|
||||
/* 80453658-80453660 001C58 0005+03 1/0 0/0 0/0 .sdata2 drArcName$4618 */
|
||||
extern "C" u8 drArcName[5 + 3 /* padding */];
|
||||
extern "C" char drArcName[8];
|
||||
|
||||
/* 80453660-80453668 001C60 0008+00 1/0 0/0 0/0 .sdata2 msDemoArcName$4619 */
|
||||
extern "C" u8 msDemoArcName[8];
|
||||
extern "C" char msDemoArcName[8];
|
||||
|
||||
/* 80453668-80453670 001C68 0006+02 1/0 0/0 0/0 .sdata2 lastGanonArcName$4620 */
|
||||
extern "C" u8 lastGanonArcName[6 + 2 /* padding */];
|
||||
extern "C" char lastGanonArcName[8];
|
||||
|
||||
/* 80453670-80453678 001C70 0006+02 1/0 0/0 0/0 .sdata2 pigGanonArcName$4621 */
|
||||
extern "C" u8 pigGanonArcName[6 + 2 /* padding */];
|
||||
extern "C" char pigGanonArcName[8];
|
||||
|
||||
/* 80393DA8-80393DB4 020408 000A+02 1/0 0/0 0/0 .rodata twglArcName$4616 */
|
||||
SECTION_RODATA static u8 const twglArcName[10 + 2 /* padding */] = {
|
||||
0x54,
|
||||
0x57,
|
||||
0x47,
|
||||
0x61,
|
||||
0x74,
|
||||
0x65,
|
||||
0x5F,
|
||||
0x4C,
|
||||
0x6B,
|
||||
0x00,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80393DA8, &twglArcName);
|
||||
SECTION_RODATA static char const twglArcName[12] = "TWGate_Lk";
|
||||
|
||||
/* 80393DB4-80393DC0 020414 000A+02 1/0 0/0 0/0 .rodata twgwArcName$4617 */
|
||||
SECTION_RODATA static u8 const twgwArcName[10 + 2 /* padding */] = {
|
||||
0x54,
|
||||
0x57,
|
||||
0x47,
|
||||
0x61,
|
||||
0x74,
|
||||
0x65,
|
||||
0x5F,
|
||||
0x57,
|
||||
0x66,
|
||||
0x00,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80393DB4, &twgwArcName);
|
||||
SECTION_RODATA static char const twgwArcName[12] = "TWGate_Wf";
|
||||
|
||||
/* 803BA0A0-803BA0C0 -00001 0020+00 1/1 0/0 0/0 .data arcName$4622 */
|
||||
SECTION_DATA static void* arcName[8] = {
|
||||
(void*)&sumouArcName, (void*)&ocArcName, (void*)&twglArcName, (void*)&twgwArcName,
|
||||
(void*)&drArcName, (void*)&msDemoArcName, (void*)&lastGanonArcName, (void*)&pigGanonArcName,
|
||||
SECTION_DATA static char* arcName[8] = {
|
||||
(char*)&sumouArcName, (char*)&ocArcName, (char*)&twglArcName, (char*)&twgwArcName,
|
||||
(char*)&drArcName, (char*)&msDemoArcName, (char*)&lastGanonArcName, (char*)&pigGanonArcName,
|
||||
};
|
||||
|
||||
/* 80453648-80453650 001C48 0008+00 1/0 0/0 0/0 .sdata2 sumouArcName$4614 */
|
||||
SECTION_SDATA2 static u8 sumouArcName[8] = {
|
||||
0x61, 0x6C, 0x53, 0x75, 0x6D, 0x6F, 0x75, 0x00,
|
||||
};
|
||||
SECTION_SDATA2 static char sumouArcName[8] = "alSumou";
|
||||
|
||||
/* 80453650-80453658 001C50 0005+03 1/0 0/0 0/0 .sdata2 ocArcName$4615 */
|
||||
SECTION_SDATA2 static u8 ocArcName[5 + 3 /* padding */] = {
|
||||
0x42,
|
||||
0x5F,
|
||||
0x6F,
|
||||
0x68,
|
||||
0x00,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
SECTION_SDATA2 static char ocArcName[8] = "B_oh";
|
||||
|
||||
/* 80453658-80453660 001C58 0005+03 1/0 0/0 0/0 .sdata2 drArcName$4618 */
|
||||
SECTION_SDATA2 static u8 drArcName[5 + 3 /* padding */] = {
|
||||
0x42,
|
||||
0x5F,
|
||||
0x44,
|
||||
0x52,
|
||||
0x00,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
SECTION_SDATA2 static char drArcName[8] = "B_DR";
|
||||
|
||||
/* 80453660-80453668 001C60 0008+00 1/0 0/0 0/0 .sdata2 msDemoArcName$4619 */
|
||||
SECTION_SDATA2 static u8 msDemoArcName[8] = {
|
||||
0x4C, 0x76, 0x36, 0x47, 0x61, 0x74, 0x65, 0x00,
|
||||
};
|
||||
SECTION_SDATA2 static char msDemoArcName[8] = "Lv6Gate";
|
||||
|
||||
/* 80453668-80453670 001C68 0006+02 1/0 0/0 0/0 .sdata2 lastGanonArcName$4620 */
|
||||
SECTION_SDATA2 static u8 lastGanonArcName[6 + 2 /* padding */] = {
|
||||
0x42,
|
||||
0x5F,
|
||||
0x67,
|
||||
0x6E,
|
||||
0x64,
|
||||
0x00,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
SECTION_SDATA2 static char lastGanonArcName[8] = "B_gnd";
|
||||
|
||||
/* 80453670-80453678 001C70 0006+02 1/0 0/0 0/0 .sdata2 pigGanonArcName$4621 */
|
||||
SECTION_SDATA2 static u8 pigGanonArcName[6 + 2 /* padding */] = {
|
||||
0x42,
|
||||
0x5F,
|
||||
0x6D,
|
||||
0x67,
|
||||
0x6E,
|
||||
0x00,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
SECTION_SDATA2 static char pigGanonArcName[8] = "B_mgn";
|
||||
|
||||
/* 8015EF84-8015F068 1598C4 00E4+00 3/3 0/0 0/0 .text loadData__14daPy_anmHeap_cFUs */
|
||||
#pragma push
|
||||
@@ -694,14 +587,10 @@ J3DAnmBase* daPy_anmHeap_c::loadDataDemoRID(u16 pID, u16 pArcNo) {
|
||||
}
|
||||
|
||||
/* 8015F168-8015F1A0 159AA8 0038+00 1/1 4/4 0/0 .text setAnimeHeap__14daPy_anmHeap_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_anmHeap_c::setAnimeHeap() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/setAnimeHeap__14daPy_anmHeap_cFv.s"
|
||||
void daPy_anmHeap_c::setAnimeHeap() {
|
||||
mAnimeHeap->freeAll();
|
||||
mDoExt_setCurrentHeap(mAnimeHeap);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803BA0C0-803BA14C 0171E0 0089+03 1/1 0/0 0/0 .data l_sightDL */
|
||||
@@ -891,14 +780,15 @@ asm void daPy_sightPacket_c::setSightImage(ResTIMG* param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 8015F398-8015F3C4 159CD8 002C+00 0/0 8/8 10/10 .text checkMasterSwordEquip__9daPy_py_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_py_c::checkMasterSwordEquip() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkMasterSwordEquip__9daPy_py_cFv.s"
|
||||
BOOL daPy_py_c::checkMasterSwordEquip() {
|
||||
u32 equipSword = dComIfGs_getSelectEquipSword();
|
||||
bool isMasterSword = false;
|
||||
|
||||
if (equipSword == MASTER_SWORD || equipSword == LIGHT_SWORD) {
|
||||
isMasterSword = true;
|
||||
}
|
||||
return isMasterSword;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015F3C4-8015F3FC 159D04 0038+00 0/0 4/4 0/0 .text checkWoodShieldEquip__9daPy_py_cFv
|
||||
*/
|
||||
@@ -911,38 +801,24 @@ asm void daPy_py_c::checkWoodShieldEquip() {
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80453684-80453688 001C84 0004+00 1/1 0/0 0/0 .sdata2 @4741 */
|
||||
SECTION_SDATA2 static f32 lit_4741 = -12.5f;
|
||||
|
||||
/* 80453688-80453690 001C88 0004+04 1/1 0/0 0/0 .sdata2 @4742 */
|
||||
SECTION_SDATA2 static f32 lit_4742[1 + 1 /* padding */] = {
|
||||
57.5f,
|
||||
/* padding */
|
||||
0.0f,
|
||||
};
|
||||
BOOL daPy_py_c::checkNowWolf() {
|
||||
return dComIfGp_getLinkPlayer()->i_checkWolf();
|
||||
}
|
||||
|
||||
/* 8015F3FC-8015F424 159D3C 0028+00 0/0 4/4 3/3 .text getAttentionOffsetY__9daPy_py_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_py_c::getAttentionOffsetY() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/getAttentionOffsetY__9daPy_py_cFv.s"
|
||||
f32 daPy_py_c::getAttentionOffsetY() {
|
||||
if (checkNowWolf()) {
|
||||
return -12.5f;
|
||||
}
|
||||
return 57.5f;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015F424-8015F438 159D64 0014+00 0/0 17/17 33/33 .text checkNowWolfEyeUp__9daPy_py_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_py_c::checkNowWolfEyeUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkNowWolfEyeUp__9daPy_py_cFv.s"
|
||||
s16 daPy_py_c::checkNowWolfEyeUp() {
|
||||
return daAlink_getAlinkActorClass()->checkWolfEyeUp();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8015F438-8015F478 159D78 0040+00 0/0 0/0 1/1 .text forceRestartRoom__9daPy_py_cFiUli
|
||||
*/
|
||||
@@ -957,6 +833,11 @@ asm void daPy_py_c::forceRestartRoom(int param_0, u32 param_1, int param_2) {
|
||||
|
||||
/* 8015F478-8015F4B8 159DB8 0040+00 0/0 0/0 3/3 .text
|
||||
* setFmChainPos__9daPy_py_cFP10fopAc_ac_cP4cXyzi */
|
||||
#ifdef NONMATCHING
|
||||
void daPy_py_c::setFmChainPos(fopAc_ac_c* param_0, cXyz* param_1, int param_2) {
|
||||
daAlink_getAlinkActorClass()->setFmChainPosFromOut(param_0, param_1, param_2);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -965,6 +846,7 @@ asm void daPy_py_c::setFmChainPos(fopAc_ac_c* param_0, cXyz* param_1, int param_
|
||||
#include "asm/d/a/d_a_player/setFmChainPos__9daPy_py_cFP10fopAc_ac_cP4cXyzi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8015F4B8-8015F4F0 159DF8 0038+00 0/0 0/0 1/1 .text cancelFmChainGrab__9daPy_py_cFv */
|
||||
#pragma push
|
||||
|
||||
@@ -17,12 +17,6 @@
|
||||
|
||||
struct scene_class {};
|
||||
|
||||
struct phaseParam_c {};
|
||||
|
||||
struct mDoRst {
|
||||
static u8 mResetData[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct mDoGph_gInf_c {
|
||||
static u8 mFader[4];
|
||||
};
|
||||
@@ -43,11 +37,6 @@ struct dMapInfo_n {
|
||||
/* 8003EE5C */ void getMapPlayerPos();
|
||||
};
|
||||
|
||||
struct dDlst_shadowControl_c {
|
||||
/* 80055C74 */ void setReal(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*);
|
||||
/* 80055F84 */ void setSimple(cXyz*, f32, f32, cXyz*, s16, f32, _GXTexObj*);
|
||||
};
|
||||
|
||||
struct dComIfG_resLoader_c {
|
||||
/* 8002F314 */ dComIfG_resLoader_c();
|
||||
/* 8002F328 */ ~dComIfG_resLoader_c();
|
||||
@@ -1417,15 +1406,14 @@ static int phase_1(char* arc_name) {
|
||||
|
||||
/* 8002CE38-8002CEB4 027778 007C+00 1/0 0/0 0/0 .text phase_2__FPc */
|
||||
static int phase_2(char* arc_name) {
|
||||
int tmp = dComIfG_syncObjectRes(arc_name);
|
||||
int syncStatus = dComIfG_syncObjectRes(arc_name);
|
||||
|
||||
if (tmp < 0) {
|
||||
if (syncStatus < 0) {
|
||||
OSReport_Error("%s.arc Sync Read Error !!\n", arc_name);
|
||||
tmp = 5;
|
||||
return 5;
|
||||
} else {
|
||||
tmp = tmp > 0 ? 0 : 2;
|
||||
return syncStatus > 0 ? 0 : 2;
|
||||
}
|
||||
return tmp;
|
||||
}
|
||||
|
||||
/* 8002CEB4-8002CEBC 0277F4 0008+00 1/0 0/0 0/0 .text phase_3__FPc */
|
||||
@@ -1434,6 +1422,7 @@ static int phase_3(char* param_0) {
|
||||
}
|
||||
|
||||
typedef int (*dComIfG_phaseMethod)(char*);
|
||||
typedef int (*dComIfG_phaseMethod0)(phaseParam_c*);
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803A71B8-803A71C4 -00001 000C+00 1/1 0/0 0/0 .data l_method$5017 */
|
||||
@@ -1445,6 +1434,16 @@ SECTION_DATA static dComIfG_phaseMethod l_method_5017[3] = {
|
||||
|
||||
/* 8002CEBC-8002CEFC 0277FC 0040+00 0/0 7/7 550/550 .text
|
||||
* dComIfG_resLoad__FP30request_of_phase_process_classPCc */
|
||||
#ifdef NONMATCHING
|
||||
int dComIfG_resLoad(request_of_phase_process_class* param_0, char const* param_1) {
|
||||
if (param_0->mPhaseStep == 2) {
|
||||
return 4;
|
||||
} else {
|
||||
dComLbG_PhaseHandler(param_0, &l_method_5017[0], (void*)param_1);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1453,38 +1452,38 @@ asm void dComIfG_resLoad(request_of_phase_process_class* param_0, char const* pa
|
||||
#include "asm/d/com/d_com_inf_game/dComIfG_resLoad__FP30request_of_phase_process_classPCc.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8002CEFC-8002CF5C 02783C 0060+00 1/0 0/0 0/0 .text phase_01__FP12phaseParam_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void phase_01(phaseParam_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/phase_01__FP12phaseParam_c.s"
|
||||
static int phase_01(phaseParam_c* param_0) {
|
||||
if (dComIfG_setObjectRes(param_0->field_0x0, 0, param_0->heap) == 0) {
|
||||
return 5;
|
||||
} else {
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8002CF5C-8002CFB8 02789C 005C+00 1/0 0/0 0/0 .text phase_02__FP12phaseParam_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void phase_02(phaseParam_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/phase_02__FP12phaseParam_c.s"
|
||||
static int phase_02(phaseParam_c* param_0) {
|
||||
int syncStatus = dComIfG_syncObjectRes(param_0->field_0x0);
|
||||
if (syncStatus < 0) {
|
||||
return 5;
|
||||
} else {
|
||||
return syncStatus > 0 ? 0 : 2;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8002CFB8-8002CFC0 0278F8 0008+00 1/0 0/0 0/0 .text phase_03__FP12phaseParam_c */
|
||||
static bool phase_03(phaseParam_c* param_0) {
|
||||
static int phase_03(phaseParam_c* param_0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803A71C4-803A71D0 -00001 000C+00 1/1 0/0 0/0 .data l_method$5051 */
|
||||
SECTION_DATA static void* l_method_5051[3] = {
|
||||
(void*)phase_01__FP12phaseParam_c,
|
||||
(void*)phase_02__FP12phaseParam_c,
|
||||
(void*)phase_03__FP12phaseParam_c,
|
||||
SECTION_DATA static dComIfG_phaseMethod0 l_method_5051[3] = {
|
||||
phase_01,
|
||||
phase_02,
|
||||
phase_03,
|
||||
};
|
||||
|
||||
/* 8002CFC0-8002D008 027900 0048+00 1/1 3/3 0/0 .text
|
||||
@@ -2331,39 +2330,15 @@ asm void dComIfG_resLoader_c::load(char const** param_0, JKRHeap* param_1) {
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378F38-80378F38 005598 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379098 = "Stg_00";
|
||||
#pragma pop
|
||||
|
||||
/* 8002F434-8002F478 029D74 0044+00 0/0 12/12 12/12 .text dComIfG_getStageRes__FPCc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dComIfG_getStageRes(char const* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/dComIfG_getStageRes__FPCc.s"
|
||||
void* dComIfG_getStageRes(char const* resName) {
|
||||
return dComIfG_getStageRes("Stg_00", resName);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378F38-80378F38 005598 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_8037909F = "Xtg_00";
|
||||
#pragma pop
|
||||
|
||||
/* 8002F478-8002F4BC 029DB8 0044+00 0/0 1/1 0/0 .text dComIfG_getOldStageRes__FPCc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dComIfG_getOldStageRes(char const* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/dComIfG_getOldStageRes__FPCc.s"
|
||||
void* dComIfG_getOldStageRes(char const* resName) {
|
||||
return dComIfG_getStageRes("Xtg_00", resName);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
static char buf[32];
|
||||
|
||||
|
||||
@@ -16,10 +16,6 @@ struct mDoCPd_c {
|
||||
static u8 m_cpadInfo[256];
|
||||
};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dAttDrawParam_c {
|
||||
/* 80070158 */ dAttDrawParam_c();
|
||||
/* 80073FC4 */ ~dAttDrawParam_c();
|
||||
|
||||
+131
-187
@@ -4,7 +4,8 @@
|
||||
//
|
||||
|
||||
#include "d/d_drawlist.h"
|
||||
#include "JSystem/J2DGraph/J2DScreen.h"
|
||||
#include "JSystem/J3DGraphBase/J3DShape.h"
|
||||
#include "JSystem/J3DGraphBase/J3DSys.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/mtx/mtx44.h"
|
||||
#include "dolphin/mtx/mtxvec.h"
|
||||
@@ -30,64 +31,6 @@ struct mDoGph_gInf_c {
|
||||
static u8 mBackColor[4];
|
||||
};
|
||||
|
||||
struct mDoExt_3DlineMatSortPacket {
|
||||
/* 80014E20 */ ~mDoExt_3DlineMatSortPacket();
|
||||
/* 800561C8 */ mDoExt_3DlineMatSortPacket();
|
||||
};
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct dDlst_shadowTri_c {
|
||||
/* 80056270 */ ~dDlst_shadowTri_c();
|
||||
/* 80056344 */ dDlst_shadowTri_c();
|
||||
};
|
||||
|
||||
struct dDlst_shadowSimple_c {
|
||||
/* 8005520C */ void draw();
|
||||
/* 800553EC */ void set(cXyz*, f32, f32, cXyz*, s16, f32, _GXTexObj*);
|
||||
/* 8005638C */ dDlst_shadowSimple_c();
|
||||
};
|
||||
|
||||
struct J3DModel {};
|
||||
|
||||
struct dDlst_shadowReal_c {
|
||||
/* 800544F0 */ void reset();
|
||||
/* 80054500 */ void imageDraw(f32 (*)[4]);
|
||||
/* 800545D4 */ void draw();
|
||||
/* 80054BD0 */ void setShadowRealMtx(cXyz*, cXyz*, f32, f32, f32, dKy_tevstr_c*);
|
||||
/* 80055028 */ void set(u32, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*, f32, f32);
|
||||
/* 800551D4 */ void add(J3DModel*);
|
||||
/* 800561F8 */ ~dDlst_shadowReal_c();
|
||||
/* 800562D0 */ dDlst_shadowReal_c();
|
||||
};
|
||||
|
||||
struct dDlst_shadowRealPoly_c {
|
||||
/* 800569A0 */ void getTri();
|
||||
/* 800569A8 */ s32 getTriMax();
|
||||
};
|
||||
|
||||
struct cM3dGPla {};
|
||||
|
||||
struct cBgD_Vtx_t {};
|
||||
|
||||
struct dDlst_shadowPoly_c {
|
||||
/* 80054288 */ void set(cBgD_Vtx_t*, u16, u16, u16, cM3dGPla*);
|
||||
/* 800543B4 */ void draw();
|
||||
};
|
||||
|
||||
struct dDlst_shadowControl_c {
|
||||
/* 80055684 */ void init();
|
||||
/* 80055768 */ void reset();
|
||||
/* 800557C8 */ void imageDraw(f32 (*)[4]);
|
||||
/* 80055A14 */ void draw(f32 (*)[4]);
|
||||
/* 80055C74 */ void setReal(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*);
|
||||
/* 80055F1C */ void addReal(u32, J3DModel*);
|
||||
/* 80055F84 */ void setSimple(cXyz*, f32, f32, cXyz*, s16, f32, _GXTexObj*);
|
||||
/* 80055FE8 */ void setSimpleTex(ResTIMG const*);
|
||||
|
||||
static u8 mSimpleTexObj[32];
|
||||
};
|
||||
|
||||
struct dDlst_effectLine_c {
|
||||
/* 80053E9C */ void draw();
|
||||
/* 800541F4 */ void update(cXyz&, _GXColor&, u16, u16, u16, u16, f32, f32, f32, f32);
|
||||
@@ -136,12 +79,17 @@ struct dDlst_2DM_c {
|
||||
/* 80052C58 */ void draw();
|
||||
};
|
||||
|
||||
struct cM_rnd_c {
|
||||
class cM_rnd_c {
|
||||
public:
|
||||
/* 80053CDC */ void init(int, int, int);
|
||||
/* 80053CEC */ void get();
|
||||
/* 80053DE0 */ void getF(f32);
|
||||
/* 80053E18 */ void getFX(f32);
|
||||
/* 80053E60 */ void getValue(f32, f32);
|
||||
/* 80053CEC */ f32 get();
|
||||
/* 80053DE0 */ f32 getF(f32);
|
||||
/* 80053E18 */ f32 getFX(f32);
|
||||
/* 80053E60 */ f32 getValue(f32, f32);
|
||||
|
||||
/* 0x0 */ int seed0;
|
||||
/* 0x4 */ int seed1;
|
||||
/* 0x8 */ int seed2;
|
||||
};
|
||||
|
||||
struct cBgS_ShdwDraw {
|
||||
@@ -167,12 +115,6 @@ struct J3DUClipper {
|
||||
/* 80273A44 */ void clip(f32 const (*)[4], Vec*, Vec*) const;
|
||||
};
|
||||
|
||||
struct J3DShape {
|
||||
/* 80315300 */ void loadPreDrawSetting() const;
|
||||
|
||||
static u8 sOldVcdVatCmd[4];
|
||||
};
|
||||
|
||||
struct J2DPicture {
|
||||
/* 800539DC */ void getTexture(u8) const;
|
||||
/* 80053C44 */ void setWhite(JUtility::TColor);
|
||||
@@ -395,26 +337,24 @@ extern "C" u8 sOldVcdVatCmd__8J3DShape[4];
|
||||
//
|
||||
|
||||
/* 80051AC0-80051ADC 04C400 001C+00 0/0 3/3 0/0 .text setViewPort__14dDlst_window_cFffffff */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_window_c::setViewPort(f32 param_0, f32 param_1, f32 param_2, f32 param_3,
|
||||
f32 param_4, f32 param_5) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/setViewPort__14dDlst_window_cFffffff.s"
|
||||
void dDlst_window_c::setViewPort(f32 param_0, f32 param_1, f32 param_2, f32 param_3, f32 param_4,
|
||||
f32 param_5) {
|
||||
mViewport = param_0;
|
||||
field_0x04 = param_1;
|
||||
field_0x08 = param_2;
|
||||
field_0x0C = param_3;
|
||||
field_0x10 = param_4;
|
||||
field_0x14 = param_5;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80051ADC-80051AF0 04C41C 0014+00 0/0 4/4 0/0 .text setScissor__14dDlst_window_cFffff
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_window_c::setScissor(f32 param_0, f32 param_1, f32 param_2, f32 param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/setScissor__14dDlst_window_cFffff.s"
|
||||
void dDlst_window_c::setScissor(f32 param_0, f32 param_1, f32 param_2, f32 param_3) {
|
||||
mScissor = param_0;
|
||||
field_0x1c = param_1;
|
||||
field_0x20 = param_2;
|
||||
field_0x24 = param_3;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80051AF0-80051CF0 04C430 0200+00 1/0 0/0 0/0 .text draw__13dDlst_2DTri_cFv */
|
||||
#pragma push
|
||||
@@ -448,7 +388,7 @@ asm void dDlst_2DPoint_c::draw() {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80450648-8045064C 0000C8 0004+00 1/1 0/0 0/0 .sdata l_color$4033 */
|
||||
SECTION_SDATA static u8 l_color_4033[4] = {
|
||||
SECTION_SDATA static _GXColor l_color_4033 = {
|
||||
0xFF,
|
||||
0xFF,
|
||||
0xFF,
|
||||
@@ -2062,16 +2002,16 @@ SECTION_DATA static u8 l_matDL[123 + 1 /* padding */] = {
|
||||
};
|
||||
|
||||
/* 803A8D7C-803A8D8C 005E9C 0010+00 1/1 0/0 0/0 .data l_imageDrawColor$5405 */
|
||||
SECTION_DATA static u8 l_imageDrawColor[16] = {
|
||||
0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF,
|
||||
};
|
||||
SECTION_DATA static _GXColor l_imageDrawColor[4] = {{0xFF, 0x00, 0x00, 0x00},
|
||||
{0x00, 0xFF, 0x00, 0x00},
|
||||
{0x00, 0x00, 0xFF, 0x00},
|
||||
{0x00, 0x00, 0x00, 0xFF}};
|
||||
|
||||
/* 803A8D8C-803A8D9C 005EAC 0010+00 0/1 0/0 0/0 .data l_tevColorChan$5438 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static u8 l_tevColorChan[16] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03,
|
||||
};
|
||||
SECTION_DATA static GXTevColor l_tevColorChan[4] = {GX_CH_RED, GX_CH_BLUE, GX_CH_GREEN,
|
||||
GX_CH_ALPHA};
|
||||
#pragma pop
|
||||
|
||||
/* 803A8D9C-803A8DCC 005EBC 0030+00 0/0 0/0 0/0 .data mtx_adj$5842 */
|
||||
@@ -2332,21 +2272,19 @@ asm void J2DPicture::setBlack(JUtility::TColor param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J2DAnmBase::~J2DAnmBase() {
|
||||
// asm J2DAnmBase::~J2DAnmBase() {
|
||||
extern "C" asm void __dt__10J2DAnmBaseFv() {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/__dt__10J2DAnmBaseFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80053CDC-80053CEC 04E61C 0010+00 0/0 2/2 0/0 .text init__8cM_rnd_cFiii */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cM_rnd_c::init(int param_0, int param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/init__8cM_rnd_cFiii.s"
|
||||
void cM_rnd_c::init(int s0, int s1, int s2) {
|
||||
seed0 = s0;
|
||||
seed1 = s1;
|
||||
seed2 = s2;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80452034-80452038 000634 0004+00 1/1 0/0 0/0 .sdata2 @4791 */
|
||||
@@ -2362,48 +2300,45 @@ SECTION_SDATA2 static f32 lit_4793 = 30307.0f;
|
||||
SECTION_SDATA2 static f64 lit_4794 = 1.0;
|
||||
|
||||
/* 80053CEC-80053DE0 04E62C 00F4+00 2/2 0/0 0/0 .text get__8cM_rnd_cFv */
|
||||
// reg swap
|
||||
#ifdef NONMATCHING
|
||||
f32 cM_rnd_c::get() {
|
||||
seed0 = seed0 * 171 % 30269;
|
||||
seed1 = seed1 * 172 % 30307;
|
||||
seed2 = seed2 * 170 % 30323;
|
||||
f32 rm = fmod((seed0 / 30269.0f) + (seed1 / 30307.0f) + (seed2 / 30323.0f), 1.0f);
|
||||
|
||||
return __fabs(rm);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cM_rnd_c::get() {
|
||||
asm f32 cM_rnd_c::get() {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/get__8cM_rnd_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80053DE0-80053E18 04E720 0038+00 1/1 0/0 0/0 .text getF__8cM_rnd_cFf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cM_rnd_c::getF(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/getF__8cM_rnd_cFf.s"
|
||||
f32 cM_rnd_c::getF(f32 param_0) {
|
||||
return get() * param_0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80452048-8045204C 000648 0004+00 5/5 0/0 0/0 .sdata2 @4806 */
|
||||
SECTION_SDATA2 static f32 lit_4806 = 2.0f;
|
||||
|
||||
/* 80053E18-80053E60 04E758 0048+00 1/1 0/0 0/0 .text getFX__8cM_rnd_cFf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cM_rnd_c::getFX(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/getFX__8cM_rnd_cFf.s"
|
||||
f32 cM_rnd_c::getFX(f32 param_0) {
|
||||
return ((get() - lit_4072) * param_0) * lit_4806;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80053E60-80053E9C 04E7A0 003C+00 1/1 0/0 0/0 .text getValue__8cM_rnd_cFff */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cM_rnd_c::getValue(f32 param_0, f32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/getValue__8cM_rnd_cFff.s"
|
||||
f32 cM_rnd_c::getValue(f32 param_0, f32 param_1) {
|
||||
return param_0 + getF(param_1);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8045204C-80452050 00064C 0004+00 1/1 0/0 0/0 .sdata2 @4876 */
|
||||
@@ -2455,24 +2390,23 @@ asm void dDlst_shadowPoly_c::draw() {
|
||||
#pragma pop
|
||||
|
||||
/* 80054478-800544F0 04EDB8 0078+00 1/1 0/0 0/0 .text J3DDrawBuffer__create__FUl */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void J3DDrawBuffer__create(u32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/J3DDrawBuffer__create__FUl.s"
|
||||
static J3DDrawBuffer* J3DDrawBuffer__create(u32 size) {
|
||||
J3DDrawBuffer* buffer = new J3DDrawBuffer();
|
||||
|
||||
if (buffer) {
|
||||
if (buffer->allocBuffer(size) == kJ3DError_Success) {
|
||||
return buffer;
|
||||
}
|
||||
delete buffer;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800544F0-80054500 04EE30 0010+00 2/2 0/0 0/0 .text reset__18dDlst_shadowReal_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_shadowReal_c::reset() {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/reset__18dDlst_shadowReal_cFv.s"
|
||||
void dDlst_shadowReal_c::reset() {
|
||||
mState = 0;
|
||||
mModelNum = 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80054500-800545D4 04EE40 00D4+00 1/1 0/0 0/0 .text imageDraw__18dDlst_shadowReal_cFPA4_f */
|
||||
#pragma push
|
||||
@@ -2634,14 +2568,16 @@ asm void dDlst_shadowReal_c::set(u32 param_0, J3DModel* param_1, cXyz* param_2,
|
||||
#pragma pop
|
||||
|
||||
/* 800551D4-8005520C 04FB14 0038+00 1/1 0/0 0/0 .text add__18dDlst_shadowReal_cFP8J3DModel */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_shadowReal_c::add(J3DModel* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/add__18dDlst_shadowReal_cFP8J3DModel.s"
|
||||
bool dDlst_shadowReal_c::add(J3DModel* pModel) {
|
||||
u8 curModelNum = mModelNum;
|
||||
|
||||
if (curModelNum == 0 || pModel == NULL) {
|
||||
return false;
|
||||
}
|
||||
mModelNum++;
|
||||
mpModels[curModelNum] = pModel;
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80450650-80450654 0000D0 0004+00 1/1 0/0 0/0 .sdata l_color$5326 */
|
||||
@@ -2707,14 +2643,17 @@ asm void dDlst_shadowControl_c::init() {
|
||||
#pragma pop
|
||||
|
||||
/* 80055768-800557C8 0500A8 0060+00 1/1 0/0 0/0 .text reset__21dDlst_shadowControl_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_shadowControl_c::reset() {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/reset__21dDlst_shadowControl_cFv.s"
|
||||
void dDlst_shadowControl_c::reset() {
|
||||
dDlst_shadowReal_c* shadowReal = &mReal[0];
|
||||
|
||||
for (int i = 0; i < 8; i++) {
|
||||
shadowReal->reset();
|
||||
shadowReal++;
|
||||
}
|
||||
mSimpleNum = 0;
|
||||
mRealNum = 0;
|
||||
field_0x4 = NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800557C8-80055A14 050108 024C+00 0/0 1/1 0/0 .text imageDraw__21dDlst_shadowControl_cFPA4_f */
|
||||
#pragma push
|
||||
@@ -2830,6 +2769,18 @@ asm void dDlst_peekZ_c::peekData() {
|
||||
#pragma pop
|
||||
|
||||
/* 800560F0-800561C8 050A30 00D8+00 0/0 1/1 0/0 .text __ct__12dDlst_list_cFv */
|
||||
#ifdef NONMATCHING
|
||||
dDlst_list_c::dDlst_list_c() {
|
||||
field_0x68 = &field_0x64;
|
||||
field_0xb0 = &field_0xac;
|
||||
field_0x1b8 = &field_0x1b4;
|
||||
field_0x240 = &field_0x23c;
|
||||
J3DDrawBuffer** tmp = &mOpaListSky;
|
||||
for (int i = 0; i < 0x15; i++) {
|
||||
*(tmp + i) = NULL;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -2838,6 +2789,7 @@ asm dDlst_list_c::dDlst_list_c() {
|
||||
#include "asm/d/d_drawlist/__ct__12dDlst_list_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800561C8-800561F8 050B08 0030+00 1/1 0/0 0/0 .text __ct__26mDoExt_3DlineMatSortPacketFv */
|
||||
#pragma push
|
||||
@@ -3024,70 +2976,62 @@ asm void dDlst_list_c::entryZSortXluDrawList(J3DDrawBuffer* param_0, J3DPacket*
|
||||
|
||||
/* 800566D4-80056710 051014 003C+00 1/1 1/1 0/0 .text
|
||||
* drawOpaDrawList__12dDlst_list_cFP13J3DDrawBuffer */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_list_c::drawOpaDrawList(J3DDrawBuffer* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/drawOpaDrawList__12dDlst_list_cFP13J3DDrawBuffer.s"
|
||||
void dDlst_list_c::drawOpaDrawList(J3DDrawBuffer* pDrawBuf) {
|
||||
J3DShape::resetVcdVatCache();
|
||||
j3dSys.setDrawModeOpaTexEdge();
|
||||
pDrawBuf->draw();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80056710-8005674C 051050 003C+00 1/1 1/1 0/0 .text
|
||||
* drawXluDrawList__12dDlst_list_cFP13J3DDrawBuffer */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_list_c::drawXluDrawList(J3DDrawBuffer* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/drawXluDrawList__12dDlst_list_cFP13J3DDrawBuffer.s"
|
||||
void dDlst_list_c::drawXluDrawList(J3DDrawBuffer* pDrawBuf) {
|
||||
J3DShape::resetVcdVatCache();
|
||||
j3dSys.setDrawModeXlu();
|
||||
pDrawBuf->draw();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8005674C-80056770 05108C 0024+00 0/0 1/1 0/0 .text drawOpaListItem3d__12dDlst_list_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_list_c::drawOpaListItem3d() {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/drawOpaListItem3d__12dDlst_list_cFv.s"
|
||||
void dDlst_list_c::drawOpaListItem3d() {
|
||||
drawOpaDrawList(mOpaListItem3d);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80056770-80056794 0510B0 0024+00 0/0 1/1 0/0 .text drawXluListItem3d__12dDlst_list_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_list_c::drawXluListItem3d() {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/drawXluListItem3d__12dDlst_list_cFv.s"
|
||||
void dDlst_list_c::drawXluListItem3d() {
|
||||
drawXluDrawList(mXluListItem3d);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80056794-800567C4 0510D4 0030+00 2/2 35/35 6/6 .text
|
||||
* set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c */
|
||||
#ifdef NONMATCHING
|
||||
int dDlst_list_c::set(dDlst_base_c**& param_0, dDlst_base_c**& param_1, dDlst_base_c* param_2) {
|
||||
if (*param_0 >= *param_1) {
|
||||
return 0;
|
||||
}
|
||||
*param_0 = param_2;
|
||||
*param_0++;
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_list_c::set(dDlst_base_c**& param_0, dDlst_base_c**& param_1,
|
||||
dDlst_base_c* param_2) {
|
||||
asm int dDlst_list_c::set(dDlst_base_c**& param_0, dDlst_base_c**& param_1, dDlst_base_c* param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800567C4-8005681C 051104 0058+00 0/0 1/1 0/0 .text
|
||||
* draw__12dDlst_list_cFPP12dDlst_base_cPP12dDlst_base_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_list_c::draw(dDlst_base_c** param_0, dDlst_base_c** param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_drawlist/draw__12dDlst_list_cFPP12dDlst_base_cPP12dDlst_base_c.s"
|
||||
void dDlst_list_c::draw(dDlst_base_c** pStart, dDlst_base_c** pEnd) {
|
||||
for (; pStart < pEnd; pStart++) {
|
||||
dDlst_base_c* base = *pStart;
|
||||
base->draw();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8037A1B0-8037A1B0 006810 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
||||
+46
-136
@@ -7,45 +7,6 @@
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct dKantera_icon_c {
|
||||
/* 801AE938 */ dKantera_icon_c();
|
||||
/* 801AE974 */ ~dKantera_icon_c();
|
||||
/* 801AEA68 */ void initiate();
|
||||
/* 801AEB7C */ void setAlphaRate(f32);
|
||||
/* 801AEBA0 */ void setPos(f32, f32);
|
||||
/* 801AEBF4 */ void setScale(f32, f32);
|
||||
/* 801AEC44 */ void setNowGauge(u16, u16);
|
||||
};
|
||||
|
||||
struct dDlst_KanteraIcon_c {
|
||||
/* 801AECB8 */ void draw();
|
||||
/* 801AED1C */ ~dDlst_KanteraIcon_c();
|
||||
};
|
||||
|
||||
struct JKRExpHeap {};
|
||||
|
||||
struct JKRArchive {};
|
||||
|
||||
struct J2DGrafContext {};
|
||||
|
||||
struct J2DScreen {
|
||||
/* 802F8498 */ J2DScreen();
|
||||
/* 802F8648 */ void setPriority(char const*, u32, JKRArchive*);
|
||||
/* 802F8ED4 */ void draw(f32, f32, J2DGrafContext const*);
|
||||
};
|
||||
|
||||
struct CPaneMgrAlpha {
|
||||
/* 802557D0 */ void setAlphaRate(f32);
|
||||
};
|
||||
|
||||
struct CPaneMgr {
|
||||
/* 80253984 */ CPaneMgr(J2DScreen*, u64, u8, JKRExpHeap*);
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
@@ -74,82 +35,57 @@ extern "C" void __ct__9J2DScreenFv();
|
||||
extern "C" void setPriority__9J2DScreenFPCcUlP10JKRArchive();
|
||||
extern "C" void draw__9J2DScreenFffPC14J2DGrafContext();
|
||||
extern "C" extern void* __vt__12dDlst_base_c[3];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_drawHIO[3880];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803BC218-803BC228 019338 0010+00 2/2 0/0 0/0 .data __vt__19dDlst_KanteraIcon_c */
|
||||
SECTION_DATA extern void* __vt__19dDlst_KanteraIcon_c[4] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)draw__19dDlst_KanteraIcon_cFv,
|
||||
(void*)__dt__19dDlst_KanteraIcon_cFv,
|
||||
};
|
||||
|
||||
/* 803BC228-803BC238 019348 000C+04 2/2 0/0 0/0 .data __vt__15dKantera_icon_c */
|
||||
SECTION_DATA extern void* __vt__15dKantera_icon_c[3 + 1 /* padding */] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__15dKantera_icon_cFv,
|
||||
/* padding */
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* 801AE938-801AE974 1A9278 003C+00 0/0 3/3 0/0 .text __ct__15dKantera_icon_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dKantera_icon_c::dKantera_icon_c() {
|
||||
nofralloc
|
||||
#include "asm/d/d_kantera_icon_meter/__ct__15dKantera_icon_cFv.s"
|
||||
dKantera_icon_c::dKantera_icon_c() {
|
||||
initiate();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801AE974-801AEA68 1A92B4 00F4+00 1/0 0/0 0/0 .text __dt__15dKantera_icon_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dKantera_icon_c::~dKantera_icon_c() {
|
||||
nofralloc
|
||||
#include "asm/d/d_kantera_icon_meter/__dt__15dKantera_icon_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
dKantera_icon_c::~dKantera_icon_c() {
|
||||
delete mpKanteraIcon->getScreen();
|
||||
delete mpKanteraIcon;
|
||||
mpKanteraIcon = NULL;
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80394F50-80394F50 0215B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80394F50 = "zelda_kantera_icon_mater.blo";
|
||||
/* @stringBase0 padding */
|
||||
SECTION_DEAD static char const* const pad_80394F6D = "\0\0";
|
||||
#pragma pop
|
||||
delete mpParent;
|
||||
mpParent = NULL;
|
||||
|
||||
delete mpGauge;
|
||||
mpGauge = NULL;
|
||||
}
|
||||
|
||||
/* 801AEA68-801AEB7C 1A93A8 0114+00 1/1 0/0 0/0 .text initiate__15dKantera_icon_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dKantera_icon_c::initiate() {
|
||||
nofralloc
|
||||
#include "asm/d/d_kantera_icon_meter/initiate__15dKantera_icon_cFv.s"
|
||||
void dKantera_icon_c::initiate() {
|
||||
mpKanteraIcon = new dDlst_KanteraIcon_c();
|
||||
|
||||
J2DScreen* scrn = new J2DScreen();
|
||||
scrn->setPriority("zelda_kantera_icon_mater.blo", 0x20000, dComIfGp_getMain2DArchive());
|
||||
dPaneClass_showNullPane(scrn);
|
||||
mpKanteraIcon->setScreen(scrn);
|
||||
|
||||
mpParent = new CPaneMgr(scrn, 'kan_m_n', 2, NULL);
|
||||
|
||||
mpGauge = new CPaneMgr(scrn, 'yellow_m', 0, NULL);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801AEB7C-801AEBA0 1A94BC 0024+00 0/0 4/4 0/0 .text setAlphaRate__15dKantera_icon_cFf
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dKantera_icon_c::setAlphaRate(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_kantera_icon_meter/setAlphaRate__15dKantera_icon_cFf.s"
|
||||
void dKantera_icon_c::setAlphaRate(f32 alphaRate) {
|
||||
mpParent->setAlphaRate(alphaRate);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801AEBA0-801AEBF4 1A94E0 0054+00 0/0 3/3 0/0 .text setPos__15dKantera_icon_cFff */
|
||||
// need g_drawHIO global setup
|
||||
#ifdef NONMATCHING
|
||||
void dKantera_icon_c::setPos(f32 x, f32 y) {
|
||||
mpParent->translate(x + g_drawHIO.mLanternIconMeterPosX, y + g_drawHIO.mLanternIconMeterPosY)
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -158,8 +94,15 @@ asm void dKantera_icon_c::setPos(f32 param_0, f32 param_1) {
|
||||
#include "asm/d/d_kantera_icon_meter/setPos__15dKantera_icon_cFff.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 801AEBF4-801AEC44 1A9534 0050+00 0/0 4/4 0/0 .text setScale__15dKantera_icon_cFff */
|
||||
// need g_drawHIO global setup
|
||||
#ifdef NONMATCHING
|
||||
void dKantera_icon_c::setScale(f32 h, f32 v) {
|
||||
mpParent->scale(h * g_drawHIO.mLanternIconMeterSize, v * g_drawHIO.mLanternIconMeterSize)
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -168,55 +111,22 @@ asm void dKantera_icon_c::setScale(f32 param_0, f32 param_1) {
|
||||
#include "asm/d/d_kantera_icon_meter/setScale__15dKantera_icon_cFff.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80453EF8-80453F00 0024F8 0004+04 1/1 0/0 0/0 .sdata2 @3759 */
|
||||
SECTION_SDATA2 static f32 lit_3759[1 + 1 /* padding */] = {
|
||||
1.0f,
|
||||
/* padding */
|
||||
0.0f,
|
||||
};
|
||||
|
||||
/* 80453F00-80453F08 002500 0008+00 1/1 0/0 0/0 .sdata2 @3761 */
|
||||
SECTION_SDATA2 static f64 lit_3761 = 4503599627370496.0 /* cast u32 to float */;
|
||||
#endif
|
||||
|
||||
/* 801AEC44-801AECB8 1A9584 0074+00 0/0 4/4 0/0 .text setNowGauge__15dKantera_icon_cFUsUs
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dKantera_icon_c::setNowGauge(u16 param_0, u16 param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_kantera_icon_meter/setNowGauge__15dKantera_icon_cFUsUs.s"
|
||||
void dKantera_icon_c::setNowGauge(u16 h, u16 v) {
|
||||
mpGauge->scale((f32)v / (f32)h, 1.0f);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80453F08-80453F10 002508 0004+04 1/1 0/0 0/0 .sdata2 @3776 */
|
||||
SECTION_SDATA2 static f32 lit_3776[1 + 1 /* padding */] = {
|
||||
0.0f,
|
||||
/* padding */
|
||||
0.0f,
|
||||
};
|
||||
|
||||
/* 801AECB8-801AED1C 1A95F8 0064+00 1/0 0/0 0/0 .text draw__19dDlst_KanteraIcon_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dDlst_KanteraIcon_c::draw() {
|
||||
nofralloc
|
||||
#include "asm/d/d_kantera_icon_meter/draw__19dDlst_KanteraIcon_cFv.s"
|
||||
void dDlst_KanteraIcon_c::draw() {
|
||||
J2DGrafContext* curGraf = dComIfGp_getCurrentGrafPort();
|
||||
curGraf->setup2D();
|
||||
mp_scrn->draw(0.0f, 0.0f, curGraf);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801AED1C-801AED64 1A965C 0048+00 1/0 0/0 0/0 .text __dt__19dDlst_KanteraIcon_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dDlst_KanteraIcon_c::~dDlst_KanteraIcon_c() {
|
||||
nofralloc
|
||||
#include "asm/d/d_kantera_icon_meter/__dt__19dDlst_KanteraIcon_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
dDlst_KanteraIcon_c::~dDlst_KanteraIcon_c() {}
|
||||
|
||||
/* 80394F50-80394F50 0215B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
||||
+331
-220
@@ -5,8 +5,10 @@
|
||||
|
||||
#include "d/d_resorce.h"
|
||||
#include "JSystem/JKernel/JKRSolidHeap.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/mtx/mtx.h"
|
||||
#include "dolphin/os/OSCache.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
@@ -26,52 +28,10 @@ struct mDoExt_transAnmBas {
|
||||
/* 8003C784 */ ~mDoExt_transAnmBas();
|
||||
};
|
||||
|
||||
struct mDoDvdThd_mountArchive_c {
|
||||
/* 80015E14 */ void create(char const*, u8, JKRHeap*);
|
||||
};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003BFB0 */ ~dRes_control_c();
|
||||
/* 8003C078 */ void setRes(char const*, dRes_info_c*, int, char const*, u8, JKRHeap*);
|
||||
/* 8003C160 */ void syncRes(char const*, dRes_info_c*, int);
|
||||
/* 8003C194 */ void deleteRes(char const*, dRes_info_c*, int);
|
||||
/* 8003C1E4 */ void getResInfo(char const*, dRes_info_c*, int);
|
||||
/* 8003C260 */ void newResInfo(dRes_info_c*, int);
|
||||
/* 8003C288 */ void getResInfoLoaded(char const*, dRes_info_c*, int);
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
/* 8003C37C */ void getRes(char const*, char const*, dRes_info_c*, int);
|
||||
/* 8003C400 */ void getIDRes(char const*, u16, dRes_info_c*, int);
|
||||
/* 8003C470 */ void syncAllRes(dRes_info_c*, int);
|
||||
/* 8003C4E4 */ void setObjectRes(char const*, void*, u32, JKRHeap*);
|
||||
/* 8003C5BC */ void setStageRes(char const*, JKRHeap*);
|
||||
/* 8003C638 */ void dump();
|
||||
/* 8003C6B8 */ void getObjectResName2Index(char const*, char const*);
|
||||
};
|
||||
|
||||
struct dBgWKCol {
|
||||
/* 8007E7D0 */ void initKCollision(void*);
|
||||
};
|
||||
|
||||
struct cBgS {
|
||||
/* 80074578 */ void ConvDzb(void*);
|
||||
};
|
||||
|
||||
struct _GXAttr {};
|
||||
|
||||
struct ResTIMG {};
|
||||
|
||||
struct JUTNameTab {
|
||||
/* 802DEAF8 */ void getName(u16) const;
|
||||
};
|
||||
|
||||
struct JKRMemBreakFlag {};
|
||||
|
||||
struct JKRMemArchive {
|
||||
/* 802D6A6C */ JKRMemArchive(void*, u32, JKRMemBreakFlag);
|
||||
};
|
||||
|
||||
struct J3DTransformInfo {};
|
||||
|
||||
struct J3DTexture {
|
||||
/* 8031221C */ void addResTIMG(u16, ResTIMG const*);
|
||||
};
|
||||
@@ -210,6 +170,7 @@ extern "C" s32 getKind__18J3DAnmTransformKeyCFv();
|
||||
extern "C" void getTransform__18J3DAnmTransformKeyCFUsP16J3DTransformInfo();
|
||||
extern "C" void calc__11J3DTexNoAnmCFPUs();
|
||||
extern "C" extern char const* const d_d_resorce__stringBase0;
|
||||
extern "C" void DCStoreRangeNoSync(void*, u32);
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -238,7 +199,7 @@ extern "C" void findIdxResource__10JKRArchiveCFUl();
|
||||
extern "C" void findNameResource__10JKRArchiveCFPCc();
|
||||
extern "C" void __ct__13JKRMemArchiveFPvUl15JKRMemBreakFlag();
|
||||
extern "C" void getName__10JUTNameTabCFUs();
|
||||
extern "C" void JUTReportConsole_f();
|
||||
extern "C" void JUTReportConsole_f(const char*, ...);
|
||||
extern "C" void addResTIMG__10J3DTextureFUsPC7ResTIMG();
|
||||
extern "C" void addTexMtxIndexInDL__8J3DShapeF7_GXAttrUl();
|
||||
extern "C" void addTexMtxIndexInVcd__8J3DShapeF7_GXAttr();
|
||||
@@ -254,7 +215,6 @@ extern "C" void load__24J3DClusterLoaderDataBaseFPCv();
|
||||
extern "C" void load__22J3DModelLoaderDataBaseFPCvUl();
|
||||
extern "C" void load__20J3DAnmLoaderDataBaseFPCv24J3DAnmLoaderDataBaseFlag();
|
||||
extern "C" void setResource__20J3DAnmLoaderDataBaseFP10J3DAnmBasePCv();
|
||||
extern "C" void DCStoreRangeNoSync();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void _savegpr_20();
|
||||
@@ -272,14 +232,9 @@ extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" void memcmp();
|
||||
extern "C" void snprintf();
|
||||
extern "C" void strncpy();
|
||||
extern "C" void strlen();
|
||||
extern "C" void stricmp();
|
||||
extern "C" extern u8 const j3dDefaultMtx[48];
|
||||
extern "C" extern void* __vt__14J3DMaterialAnm[4];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" u8 mFrameBufferTimg__13mDoGph_gInf_c[4];
|
||||
extern "C" u8 mZbufferTimg__13mDoGph_gInf_c[4];
|
||||
@@ -291,41 +246,47 @@ extern "C" extern u8 j3dDefaultTevSwapMode[4];
|
||||
//
|
||||
|
||||
/* 8003A260-8003A280 034BA0 0020+00 0/0 1/1 0/0 .text __ct__11dRes_info_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dRes_info_c::dRes_info_c() {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/__ct__11dRes_info_cFv.s"
|
||||
dRes_info_c::dRes_info_c() {
|
||||
mCount = 0;
|
||||
mDMCommand = NULL;
|
||||
mArchive = NULL;
|
||||
heap = NULL;
|
||||
mDataHeap = NULL;
|
||||
mRes = NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003A280-8003A348 034BC0 00C8+00 3/3 1/1 0/0 .text __dt__11dRes_info_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dRes_info_c::~dRes_info_c() {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/__dt__11dRes_info_cFv.s"
|
||||
dRes_info_c::~dRes_info_c() {
|
||||
if (mDMCommand != NULL) {
|
||||
delete mDMCommand;
|
||||
mDMCommand = NULL;
|
||||
} else if (mArchive != NULL) {
|
||||
deleteArchiveRes();
|
||||
if (mDataHeap != NULL) {
|
||||
mDoExt_destroySolidHeap(mDataHeap);
|
||||
mDataHeap = NULL;
|
||||
mArchive->unmount();
|
||||
}
|
||||
mRes = NULL;
|
||||
mArchive = NULL;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_803798B8 = "%s%s.arc";
|
||||
#pragma pop
|
||||
|
||||
/* 8003A348-8003A3F0 034C88 00A8+00 1/1 0/0 0/0 .text set__11dRes_info_cFPCcPCcUcP7JKRHeap */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_info_c::set(char const* param_0, char const* param_1, u8 param_2, JKRHeap* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/set__11dRes_info_cFPCcPCcUcP7JKRHeap.s"
|
||||
int dRes_info_c::set(char const* pArcName, char const* pArcPath, u8 param_2, JKRHeap* pHeap) {
|
||||
char path[40];
|
||||
|
||||
if (*pArcPath != NULL) {
|
||||
snprintf(path, 40, "%s%s.arc", pArcPath, pArcName);
|
||||
mDMCommand = mDoDvdThd_mountArchive_c::create(path, param_2, pHeap);
|
||||
|
||||
if (mDMCommand == NULL) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
strncpy(mArchiveName, pArcName, 10);
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003A3F0-8003A490 034D30 00A0+00 1/1 0/0 0/0 .text setAlpha__FP16J3DMaterialTable */
|
||||
#pragma push
|
||||
@@ -653,7 +614,7 @@ SECTION_DEAD static char const* const stringBase_80379912 = "<%s> res == NULL !!
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_info_c::loadResource() {
|
||||
asm int dRes_info_c::loadResource() {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/loadResource__11dRes_info_cFv.s"
|
||||
}
|
||||
@@ -694,7 +655,7 @@ asm void dRes_info_c::deleteArchiveRes() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void getArcHeader(JKRArchive* param_0) {
|
||||
static asm void* getArcHeader(JKRArchive* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/getArcHeader__FP10JKRArchive.s"
|
||||
}
|
||||
@@ -702,54 +663,86 @@ static asm void getArcHeader(JKRArchive* param_0) {
|
||||
|
||||
/* 8003BAC4-8003BAF8 036404 0034+00 1/1 0/0 0/0 .text setRes__11dRes_info_cFP10JKRArchiveP7JKRHeap
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_info_c::setRes(JKRArchive* param_0, JKRHeap* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/setRes__11dRes_info_cFP10JKRArchiveP7JKRHeap.s"
|
||||
int dRes_info_c::setRes(JKRArchive* pArchive, JKRHeap* pHeap) {
|
||||
mArchive = pArchive;
|
||||
heap = pHeap;
|
||||
mDataHeap = NULL;
|
||||
return loadResource() >> 0x1F;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379927 =
|
||||
"<%s.arc> setRes: archive mount error !!\n";
|
||||
SECTION_DEAD static char const* const stringBase_80379950 =
|
||||
"<%s.arc> mDMCommandsetRes: can't alloc memory\n";
|
||||
#pragma pop
|
||||
|
||||
/* 8003BAF8-8003BC98 036438 01A0+00 2/2 0/0 0/0 .text setRes__11dRes_info_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_info_c::setRes() {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/setRes__11dRes_info_cFv.s"
|
||||
int dRes_info_c::setRes() {
|
||||
if (mArchive == NULL) {
|
||||
if (mDMCommand == NULL) {
|
||||
return -1;
|
||||
}
|
||||
if ((int)mDMCommand->mIsDone == 0) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
mArchive = mDMCommand->getArchive();
|
||||
heap = mDMCommand->getHeap();
|
||||
|
||||
delete mDMCommand;
|
||||
mDMCommand = NULL;
|
||||
|
||||
if (mArchive == NULL) {
|
||||
OSReport_Error("<%s.arc> setRes: archive mount error !!\n", mArchiveName);
|
||||
return -1;
|
||||
}
|
||||
if (heap != NULL) {
|
||||
heap->lock();
|
||||
mDataHeap = mDoExt_createSolidHeapToCurrent(0, heap, 0x20);
|
||||
|
||||
int rt = loadResource();
|
||||
mDoExt_restoreCurrentHeap();
|
||||
mDoExt_adjustSolidHeap(mDataHeap);
|
||||
heap->unlock();
|
||||
|
||||
if (rt < 0) {
|
||||
return -1;
|
||||
}
|
||||
} else {
|
||||
mDataHeap = mDoExt_createSolidHeapFromGameToCurrent(0, 0);
|
||||
if (mDataHeap == NULL) {
|
||||
OSReport_Error("<%s.arc> mDMCommandsetRes: can't alloc memory\n", mArchiveName);
|
||||
return -1;
|
||||
}
|
||||
int rt = loadResource();
|
||||
mDoExt_restoreCurrentHeap();
|
||||
mDoExt_adjustSolidHeap(mDataHeap);
|
||||
|
||||
if (rt < 0) {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
u32 heapSize = mDataHeap->getHeapSize();
|
||||
void* heapStartAddr = mDataHeap->getStartAddr();
|
||||
DCStoreRangeNoSync(heapStartAddr, heapSize);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003BC98-8003BD00 0365D8 0068+00 1/1 0/0 0/0 .text myGetMemBlockSize__FPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void myGetMemBlockSize(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/myGetMemBlockSize__FPv.s"
|
||||
static s32 myGetMemBlockSize(void* param_0) {
|
||||
JKRHeap* heap = JKRHeap::findFromRoot(param_0);
|
||||
|
||||
if (heap->getHeapType() == 'EXPH') {
|
||||
return JKRHeap::getSize(param_0, heap);
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003BD00-8003BD2C 036640 002C+00 1/1 0/0 0/0 .text myGetMemBlockSize0__FPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void myGetMemBlockSize0(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/myGetMemBlockSize0__FPv.s"
|
||||
static s32 myGetMemBlockSize0(void* param_0) {
|
||||
s32 size = myGetMemBlockSize(param_0);
|
||||
|
||||
if (size < 0) {
|
||||
size = 0;
|
||||
}
|
||||
return size;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
@@ -765,6 +758,41 @@ SECTION_DEAD static char const* const stringBase_80379A09 =
|
||||
#pragma pop
|
||||
|
||||
/* 8003BD2C-8003BE38 03666C 010C+00 1/1 0/0 0/0 .text dump_long__11dRes_info_cFP11dRes_info_ci */
|
||||
#ifdef NONMATCHING
|
||||
void dRes_info_c::dump_long(dRes_info_c* param_0, int param_1) {
|
||||
void* header;
|
||||
int blockSize1;
|
||||
int blockSize2;
|
||||
|
||||
JUTReportConsole_f("dRes_info_c::dump_long %08x %d\n", param_0, param_1);
|
||||
JUTReportConsole_f(
|
||||
"No Command Archive ArcHeader(size) SolidHeap(size) Resource Cnt ArchiveName\n");
|
||||
|
||||
for (int i = 0; i < param_1; i++) {
|
||||
if (getCount() != 0) {
|
||||
JKRArchive* archive = getArchive();
|
||||
header = NULL;
|
||||
blockSize1 = 0;
|
||||
|
||||
if (archive != NULL) {
|
||||
header = getArcHeader(archive);
|
||||
blockSize1 = myGetMemBlockSize0(header);
|
||||
}
|
||||
|
||||
JKRSolidHeap* dataHeap = mDataHeap;
|
||||
blockSize2 = 0;
|
||||
if (dataHeap != NULL) {
|
||||
blockSize2 = myGetMemBlockSize0((void*)dataHeap);
|
||||
}
|
||||
|
||||
JUTReportConsole_f("%2d %08x %08x %08x(%6x) %08x(%5x) %08x %3d %s\n", i, getDMCommand(),
|
||||
archive, header, blockSize1, &mDataHeap, blockSize2, mRes,
|
||||
getArchiveName());
|
||||
}
|
||||
param_0++;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -773,6 +801,7 @@ asm void dRes_info_c::dump_long(dRes_info_c* param_0, int param_1) {
|
||||
#include "asm/d/d_resorce/dump_long__11dRes_info_cFP11dRes_info_ci.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
@@ -837,78 +866,128 @@ SECTION_DEAD static char const* const stringBase_80379B40 =
|
||||
|
||||
/* 8003C078-8003C160 0369B8 00E8+00 2/2 8/8 0/0 .text
|
||||
* setRes__14dRes_control_cFPCcP11dRes_info_ciPCcUcP7JKRHeap */
|
||||
// matches except resInfo destructor issues?
|
||||
#ifdef NONMATCHING
|
||||
int dRes_control_c::setRes(char const* arcName, dRes_info_c* pInfo, int infoSize,
|
||||
char const* arcPath, u8 param_4, JKRHeap* pHeap) {
|
||||
dRes_info_c* resInfo = getResInfo(arcName, pInfo, infoSize);
|
||||
|
||||
if (resInfo == NULL) {
|
||||
resInfo = newResInfo(pInfo, infoSize);
|
||||
|
||||
if (resInfo == NULL) {
|
||||
// "<%s.arc> dRes_control_c::setRes: 空きリソース情報ポインタがありません\n"
|
||||
// "<%s.arc> dRes_control_c::setRes: There isn't a free Resource Info pointer\n"
|
||||
OSReport_Error(
|
||||
"\x3C\x25\x73\x2E\x61\x72\x63\x3E\x20\x64\x52\x65\x73\x5F\x63\x6F\x6E\x74\x72\x6F"
|
||||
"\x6C\x5F\x63\x3A\x3A\x73\x65\x74\x52\x65\x73\x3A\x20\x8B\xF3\x82\xAB\x83\x8A\x83"
|
||||
"\x5C\x81\x5B\x83\x58\x8F\xEE\x95\xF1\x83\x7C\x83\x43\x83\x93\x83\x5E\x82\xAA\x82"
|
||||
"\xA0\x82\xE8\x82\xDC\x82\xB9\x82\xF1\x0A",
|
||||
arcName);
|
||||
delete resInfo;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int resStatus = resInfo->set(arcName, arcPath, param_4, pHeap);
|
||||
if (resStatus == 0) {
|
||||
OSReport_Error("<%s.arc> dRes_control_c::setRes: res info set error !!\n", arcName);
|
||||
delete resInfo;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
resInfo->incCount();
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::setRes(char const* param_0, dRes_info_c* param_1, int param_2,
|
||||
char const* param_3, u8 param_4, JKRHeap* param_5) {
|
||||
asm int dRes_control_c::setRes(char const* param_0, dRes_info_c* param_1, int param_2,
|
||||
char const* param_3, u8 param_4, JKRHeap* param_5) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/setRes__14dRes_control_cFPCcP11dRes_info_ciPCcUcP7JKRHeap.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8003C160-8003C194 036AA0 0034+00 0/0 10/10 1/1 .text
|
||||
* syncRes__14dRes_control_cFPCcP11dRes_info_ci */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::syncRes(char const* param_0, dRes_info_c* param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/syncRes__14dRes_control_cFPCcP11dRes_info_ci.s"
|
||||
int dRes_control_c::syncRes(char const* arcName, dRes_info_c* pInfo, int infoSize) {
|
||||
dRes_info_c* resInfo = getResInfo(arcName, pInfo, infoSize);
|
||||
|
||||
if (resInfo == NULL) {
|
||||
return -1;
|
||||
} else {
|
||||
return resInfo->setRes();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003C194-8003C1E4 036AD4 0050+00 1/1 7/7 0/0 .text
|
||||
* deleteRes__14dRes_control_cFPCcP11dRes_info_ci */
|
||||
#ifdef NONMATCHING
|
||||
int dRes_control_c::deleteRes(char const* arcName, dRes_info_c* pInfo, int infoSize) {
|
||||
dRes_info_c* resInfo = getResInfo(arcName, pInfo, infoSize);
|
||||
|
||||
if (resInfo == NULL) {
|
||||
return 0;
|
||||
} else {
|
||||
if (resInfo->decCount() == 0) {
|
||||
delete resInfo;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::deleteRes(char const* param_0, dRes_info_c* param_1, int param_2) {
|
||||
asm int dRes_control_c::deleteRes(char const* param_0, dRes_info_c* param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/deleteRes__14dRes_control_cFPCcP11dRes_info_ci.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8003C1E4-8003C260 036B24 007C+00 5/5 5/5 3/3 .text
|
||||
* getResInfo__14dRes_control_cFPCcP11dRes_info_ci */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::getResInfo(char const* param_0, dRes_info_c* param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/getResInfo__14dRes_control_cFPCcP11dRes_info_ci.s"
|
||||
dRes_info_c* dRes_control_c::getResInfo(char const* pArcName, dRes_info_c* pResInfo, int infoSize) {
|
||||
for (int i = 0; i < infoSize; i++) {
|
||||
if (pResInfo->getCount() != 0) {
|
||||
if (!stricmp(pArcName, pResInfo->getArchiveName())) {
|
||||
return pResInfo;
|
||||
}
|
||||
}
|
||||
pResInfo++;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003C260-8003C288 036BA0 0028+00 1/1 0/0 0/0 .text newResInfo__14dRes_control_cFP11dRes_info_ci
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::newResInfo(dRes_info_c* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/newResInfo__14dRes_control_cFP11dRes_info_ci.s"
|
||||
dRes_info_c* dRes_control_c::newResInfo(dRes_info_c* pResInfo, int infoSize) {
|
||||
for (int i = 0; i < infoSize; i++) {
|
||||
if (pResInfo->getCount() == 0) {
|
||||
return pResInfo;
|
||||
}
|
||||
pResInfo++;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379B78 =
|
||||
"<%s.arc> getRes: res during reading !!\n";
|
||||
#pragma pop
|
||||
|
||||
/* 8003C288-8003C2EC 036BC8 0064+00 4/4 0/0 0/0 .text
|
||||
* getResInfoLoaded__14dRes_control_cFPCcP11dRes_info_ci */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::getResInfoLoaded(char const* param_0, dRes_info_c* param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/getResInfoLoaded__14dRes_control_cFPCcP11dRes_info_ci.s"
|
||||
dRes_info_c* dRes_control_c::getResInfoLoaded(char const* arcName, dRes_info_c* pResInfo,
|
||||
int infoSize) {
|
||||
dRes_info_c* resInfo = getResInfo(arcName, pResInfo, infoSize);
|
||||
|
||||
if (resInfo == NULL) {
|
||||
resInfo = NULL;
|
||||
} else if (resInfo->getArchive() == NULL) {
|
||||
OSReport_Warning("<%s.arc> getRes: res during reading !!\n", arcName);
|
||||
resInfo = NULL;
|
||||
}
|
||||
return resInfo;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
@@ -921,27 +1000,65 @@ SECTION_DEAD static char const* const stringBase_80379BA0 =
|
||||
|
||||
/* 8003C2EC-8003C37C 036C2C 0090+00 1/1 54/54 894/894 .text
|
||||
* getRes__14dRes_control_cFPCclP11dRes_info_ci */
|
||||
// weird branching
|
||||
#ifdef NONMATCHING
|
||||
void* dRes_control_c::getRes(char const* arcName, s32 resIdx, dRes_info_c* pInfo, int infoSize) {
|
||||
dRes_info_c* resInfo = getResInfoLoaded(arcName, pInfo, infoSize);
|
||||
|
||||
if (resInfo == NULL) {
|
||||
JKRArchive* archive = resInfo->getArchive();
|
||||
u32 fileCount = archive->countFile();
|
||||
|
||||
if (resIdx >= (int)fileCount) {
|
||||
OSReport_Error("<%s.arc> getRes: res index over !! index=%d count=%d\n", arcName,
|
||||
resIdx, fileCount);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
return resInfo->getRes(resIdx);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::getRes(char const* param_0, s32 param_1, dRes_info_c* param_2,
|
||||
int param_3) {
|
||||
asm void* dRes_control_c::getRes(char const* param_0, s32 param_1, dRes_info_c* param_2,
|
||||
int param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/getRes__14dRes_control_cFPCclP11dRes_info_ci.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8003C37C-8003C400 036CBC 0084+00 0/0 18/18 109/109 .text
|
||||
* getRes__14dRes_control_cFPCcPCcP11dRes_info_ci */
|
||||
// same weird branch issue
|
||||
#ifdef NONMATCHING
|
||||
void* dRes_control_c::getRes(char const* arcName, char const* resName, dRes_info_c* pInfo,
|
||||
int infoSize) {
|
||||
dRes_info_c* resInfo = getResInfoLoaded(arcName, pInfo, infoSize);
|
||||
|
||||
if (resInfo == NULL) {
|
||||
JKRArchive* archive = resInfo->getArchive();
|
||||
JKRArchive::SDIFileEntry* entry = archive->findNameResource(resName);
|
||||
|
||||
if (entry != NULL) {
|
||||
return resInfo->getRes(entry - archive->mFiles);
|
||||
} else {
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::getRes(char const* param_0, char const* param_1, dRes_info_c* param_2,
|
||||
int param_3) {
|
||||
asm void* dRes_control_c::getRes(char const* param_0, char const* param_1, dRes_info_c* param_2,
|
||||
int param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/getRes__14dRes_control_cFPCcPCcP11dRes_info_ci.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8003C400-8003C470 036D40 0070+00 0/0 7/7 4/4 .text
|
||||
* getIDRes__14dRes_control_cFPCcUsP11dRes_info_ci */
|
||||
@@ -957,82 +1074,76 @@ asm void dRes_control_c::getIDRes(char const* param_0, u16 param_1, dRes_info_c*
|
||||
|
||||
/* 8003C470-8003C4E4 036DB0 0074+00 0/0 3/3 0/0 .text syncAllRes__14dRes_control_cFP11dRes_info_ci
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::syncAllRes(dRes_info_c* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/syncAllRes__14dRes_control_cFP11dRes_info_ci.s"
|
||||
int dRes_control_c::syncAllRes(dRes_info_c* pInfo, int infoSize) {
|
||||
for (int i = 0; i < infoSize; i++) {
|
||||
if (pInfo->getDMCommand() != NULL && pInfo->setRes() > 0) {
|
||||
return 1;
|
||||
}
|
||||
pInfo++;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379BD6 = "";
|
||||
#pragma pop
|
||||
|
||||
/* 8003C4E4-8003C5BC 036E24 00D8+00 1/1 0/0 0/0 .text
|
||||
* setObjectRes__14dRes_control_cFPCcPvUlP7JKRHeap */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::setObjectRes(char const* param_0, void* param_1, u32 param_2,
|
||||
JKRHeap* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/setObjectRes__14dRes_control_cFPCcPvUlP7JKRHeap.s"
|
||||
}
|
||||
#pragma pop
|
||||
int dRes_control_c::setObjectRes(char const* arcName, void* i_archiveRes, u32 param_2,
|
||||
JKRHeap* param_3) {
|
||||
if (!setRes(arcName, &mObjectInfo[0], 0x80, "", 0, NULL)) {
|
||||
return 0;
|
||||
} else {
|
||||
JKRMemArchive* memArchive =
|
||||
new JKRMemArchive(i_archiveRes, param_2, JKRMEMBREAK_FLAG_UNKNOWN0);
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379BD7 = "/res/Stage/%s/";
|
||||
#pragma pop
|
||||
if (memArchive == NULL || !memArchive->isMounted()) {
|
||||
return 0;
|
||||
} else {
|
||||
dRes_info_c* info = getResInfo(arcName, &mObjectInfo[0], 0x80);
|
||||
int resStatus = info->setRes(memArchive, param_3);
|
||||
return resStatus == 0 ? 1 : 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 8003C5BC-8003C638 036EFC 007C+00 0/0 2/2 0/0 .text setStageRes__14dRes_control_cFPCcP7JKRHeap
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::setStageRes(char const* param_0, JKRHeap* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/setStageRes__14dRes_control_cFPCcP7JKRHeap.s"
|
||||
}
|
||||
#pragma pop
|
||||
int dRes_control_c::setStageRes(char const* arcName, JKRHeap* pHeap) {
|
||||
char path[20];
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803798B8-803798B8 005F18 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379BE6 = "\ndRes_control_c::dump mObjectInfo\n";
|
||||
SECTION_DEAD static char const* const stringBase_80379C09 = "\ndRes_control_c::dump mStageInfo\n";
|
||||
/* @stringBase0 padding */
|
||||
SECTION_DEAD static char const* const pad_80379C2B = "\0\0\0\0";
|
||||
#pragma pop
|
||||
snprintf(path, 20, "/res/Stage/%s/", dComIfGp_getStartStageName());
|
||||
return setRes(arcName, &mStageInfo[0], 0x40, path, 1, pHeap);
|
||||
}
|
||||
|
||||
/* 8003C638-8003C6B8 036F78 0080+00 0/0 2/2 0/0 .text dump__14dRes_control_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::dump() {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/dump__14dRes_control_cFv.s"
|
||||
void dRes_control_c::dump() {
|
||||
JUTReportConsole_f("\ndRes_control_c::dump mObjectInfo\n");
|
||||
dRes_info_c::dump(&mObjectInfo[0], ARRAY_SIZE(mObjectInfo));
|
||||
dRes_info_c::dump_long(&mObjectInfo[0], ARRAY_SIZE(mObjectInfo));
|
||||
|
||||
JUTReportConsole_f("\ndRes_control_c::dump mStageInfo\n");
|
||||
dRes_info_c::dump(&mStageInfo[0], ARRAY_SIZE(mStageInfo));
|
||||
dRes_info_c::dump_long(&mStageInfo[0], ARRAY_SIZE(mStageInfo));
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003C6B8-8003C734 036FF8 007C+00 0/0 0/0 32/32 .text
|
||||
* getObjectResName2Index__14dRes_control_cFPCcPCc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_control_c::getObjectResName2Index(char const* param_0, char const* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/getObjectResName2Index__14dRes_control_cFPCcPCc.s"
|
||||
int dRes_control_c::getObjectResName2Index(char const* arcName, char const* param_1) {
|
||||
dRes_info_c* info = getResInfoLoaded(arcName, &mObjectInfo[0], ARRAY_SIZE(mObjectInfo));
|
||||
|
||||
if (info == NULL) {
|
||||
return -1;
|
||||
} else if (param_1 == NULL) {
|
||||
return -1;
|
||||
} else {
|
||||
JKRArchive* archive = info->getArchive();
|
||||
JKRArchive::SDIFileEntry* entry = archive->findNameResource(param_1);
|
||||
|
||||
if (entry != NULL) {
|
||||
return entry->file_id;
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8003C734-8003C77C 037074 0048+00 1/0 0/0 0/0 .text __dt__10J3DAnmBaseFv */
|
||||
#pragma push
|
||||
|
||||
+26
-144
@@ -1,158 +1,40 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: d/d_select_icon
|
||||
//
|
||||
|
||||
#include "d/d_select_icon.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
dSi_HIO_c::dSi_HIO_c() {}
|
||||
|
||||
struct dSi_HIO_c {
|
||||
/* 80195A2C */ dSi_HIO_c();
|
||||
/* 80195C1C */ ~dSi_HIO_c();
|
||||
};
|
||||
void dSelect_icon_c::animation() {
|
||||
if (field_0x10->getAlpha() != 0) {
|
||||
field_0x20 += field_0x2c;
|
||||
if (field_0x20 >= field_0x1c->getFrameMax()) {
|
||||
field_0x20 = 0.0f;
|
||||
}
|
||||
field_0x1c->setFrame(field_0x20);
|
||||
|
||||
struct J2DPane {};
|
||||
field_0x28 += field_0x2c;
|
||||
if (field_0x28 >= field_0x24->getFrameMax()) {
|
||||
field_0x28 = 0.0f;
|
||||
}
|
||||
|
||||
struct dSelect_icon_c {
|
||||
/* 80195A3C */ void animation();
|
||||
/* 80195B40 */ void setAlpha(u8);
|
||||
/* 80195B70 */ void setPos(J2DPane*, f32, f32);
|
||||
};
|
||||
|
||||
struct J2DScreen {
|
||||
/* 802F9690 */ void animation();
|
||||
};
|
||||
|
||||
struct CPaneMgr {
|
||||
/* 80254638 */ void paneScale(f32, f32);
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__9dSi_HIO_cFv();
|
||||
extern "C" void animation__14dSelect_icon_cFv();
|
||||
extern "C" void setAlpha__14dSelect_icon_cFUc();
|
||||
extern "C" void setPos__14dSelect_icon_cFP7J2DPaneff();
|
||||
extern "C" void __dt__9dSi_HIO_cFv();
|
||||
extern "C" void __sinit_d_select_icon_cpp();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void paneScale__8CPaneMgrFff();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void animation__9J2DScreenFv();
|
||||
extern "C" void __register_global_object();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803BB7B8-803BB7C8 0188D8 000C+04 2/2 0/0 0/0 .data __vt__9dSi_HIO_c */
|
||||
SECTION_DATA extern void* __vt__9dSi_HIO_c[3 + 1 /* padding */] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__9dSi_HIO_cFv,
|
||||
/* padding */
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* 80195A2C-80195A3C 19036C 0010+00 1/1 0/0 0/0 .text __ct__9dSi_HIO_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dSi_HIO_c::dSi_HIO_c() {
|
||||
nofralloc
|
||||
#include "asm/d/d_select_icon/__ct__9dSi_HIO_cFv.s"
|
||||
field_0x24->setFrame(field_0x28);
|
||||
field_0x8->animation();
|
||||
field_0x10->paneScale(field_0x14, field_0x14);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80453A70-80453A78 002070 0004+04 1/1 0/0 0/0 .sdata2 @3740 */
|
||||
SECTION_SDATA2 static f32 lit_3740[1 + 1 /* padding */] = {
|
||||
0.0f,
|
||||
/* padding */
|
||||
0.0f,
|
||||
};
|
||||
|
||||
/* 80453A78-80453A80 002078 0008+00 1/1 0/0 0/0 .sdata2 @3773 */
|
||||
SECTION_SDATA2 static f64 lit_3773 = 4503601774854144.0 /* cast s32 to float */;
|
||||
|
||||
/* 80195A3C-80195B40 19037C 0104+00 0/0 1/1 0/0 .text animation__14dSelect_icon_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dSelect_icon_c::animation() {
|
||||
nofralloc
|
||||
#include "asm/d/d_select_icon/animation__14dSelect_icon_cFv.s"
|
||||
void dSelect_icon_c::setAlpha(u8 param_0) {
|
||||
field_0x10->setAlpha(param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80195B40-80195B70 190480 0030+00 0/0 1/1 0/0 .text setAlpha__14dSelect_icon_cFUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dSelect_icon_c::setAlpha(u8 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_select_icon/setAlpha__14dSelect_icon_cFUc.s"
|
||||
void dSelect_icon_c::setPos(J2DPane* param_0, f32 transX, f32 transY) {
|
||||
field_0x14 = param_0->getWidth() / 100.0f;
|
||||
field_0x18 = param_0->getHeight() / 100.0f;
|
||||
|
||||
field_0x10->paneScale(field_0x14, field_0x14);
|
||||
field_0xc->getPanePtr()->translate(transX, transY);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80453A80-80453A88 002080 0004+04 1/1 0/0 0/0 .sdata2 @3814 */
|
||||
SECTION_SDATA2 static f32 lit_3814[1 + 1 /* padding */] = {
|
||||
100.0f,
|
||||
/* padding */
|
||||
0.0f,
|
||||
};
|
||||
dSi_HIO_c::~dSi_HIO_c() {}
|
||||
|
||||
/* 80195B70-80195C1C 1904B0 00AC+00 0/0 1/1 0/0 .text setPos__14dSelect_icon_cFP7J2DPaneff */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dSelect_icon_c::setPos(J2DPane* param_0, f32 param_1, f32 param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_select_icon/setPos__14dSelect_icon_cFP7J2DPaneff.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80195C1C-80195C64 19055C 0048+00 2/1 0/0 0/0 .text __dt__9dSi_HIO_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dSi_HIO_c::~dSi_HIO_c() {
|
||||
nofralloc
|
||||
#include "asm/d/d_select_icon/__dt__9dSi_HIO_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8042CA10-8042CA20 059730 000C+04 1/1 0/0 0/0 .bss @3648 */
|
||||
static u8 lit_3648[12 + 4 /* padding */];
|
||||
|
||||
/* 80451050-80451058 000550 0008+00 1/1 0/0 0/0 .sbss g_siHIO */
|
||||
static u8 g_siHIO[8];
|
||||
|
||||
/* 80195C64-80195C9C 1905A4 0038+00 0/0 1/0 0/0 .text __sinit_d_select_icon_cpp */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __sinit_d_select_icon_cpp() {
|
||||
nofralloc
|
||||
#include "asm/d/d_select_icon/__sinit_d_select_icon_cpp.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
REGISTER_CTORS(0x80195C64, __sinit_d_select_icon_cpp);
|
||||
#pragma pop
|
||||
static dSi_HIO_c g_siHIO;
|
||||
+248
-237
@@ -4,6 +4,7 @@
|
||||
//
|
||||
|
||||
#include "d/d_stage.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
@@ -28,14 +29,6 @@ struct dSvBit_HIO_c {
|
||||
/* 8025C1F8 */ void init();
|
||||
};
|
||||
|
||||
struct dRes_info_c {};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C160 */ void syncRes(char const*, dRes_info_c*, int);
|
||||
/* 8003C194 */ void deleteRes(char const*, dRes_info_c*, int);
|
||||
/* 8003C1E4 */ void getResInfo(char const*, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dDrawPath_c {
|
||||
struct room_class {};
|
||||
};
|
||||
@@ -45,28 +38,10 @@ struct dMpath_c {
|
||||
/* 8003FA40 */ void setPointer(s8, void*, int);
|
||||
};
|
||||
|
||||
struct dEvent_manager_c {
|
||||
/* 80046710 */ void create();
|
||||
/* 80046C0C */ void remove();
|
||||
};
|
||||
|
||||
struct dComIfG_play_c {
|
||||
/* 8002C97C */ void getLayerNo(int);
|
||||
};
|
||||
|
||||
struct cBgS_PolyInfo {};
|
||||
|
||||
struct dBgS {
|
||||
/* 80074B98 */ void GetExitId(cBgS_PolyInfo const&);
|
||||
/* 80075100 */ void GetRoomId(cBgS_PolyInfo const&);
|
||||
};
|
||||
|
||||
struct cMl {
|
||||
/* 80263228 */ void memalignB(int, u32);
|
||||
};
|
||||
|
||||
struct cBgS_GndChk {};
|
||||
|
||||
struct JKRAramArchive {};
|
||||
|
||||
//
|
||||
@@ -449,9 +424,7 @@ extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" void snprintf(char*, u32, char*, ...);
|
||||
extern "C" extern J3DLightInfo const j3dDefaultLightInfo;
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_save_bit_HIO[1184 + 4 /* padding */];
|
||||
extern "C" extern u8 data_804505F0[8];
|
||||
extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */];
|
||||
@@ -460,6 +433,10 @@ extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */];
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
inline dStage_stageDt_c& dComIfGp_getStage() {
|
||||
return g_dComIfG_gameInfo.play.getStage();
|
||||
}
|
||||
|
||||
void dStage_nextStage_c::set(const char* i_stage, s8 i_roomId, s16 i_point, s8 i_layer, s8 i_wipe,
|
||||
u8 i_speed) {
|
||||
if (!enabled) {
|
||||
@@ -561,8 +538,8 @@ static int dStage_RoomKeepDoorInit(dStage_dt_c* param_0, void* param_1, int para
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_RoomKeepDoorInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_RoomKeepDoorInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_RoomKeepDoorInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -600,18 +577,17 @@ u32 dStage_roomControl_c::mProcID;
|
||||
/* 80450D67 0001+00 data_80450D67 None */
|
||||
s8 struct_80450D64;
|
||||
|
||||
extern s8 sLastStayNo;
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
s8 sLastStayNo;
|
||||
|
||||
extern s8 sNextStayNo;
|
||||
s8 sNextStayNo;
|
||||
#pragma pop
|
||||
|
||||
extern bool sTimePass;
|
||||
bool sTimePass;
|
||||
s8 sTimePass;
|
||||
|
||||
/* 80450D68-80450D6C 000268 0004+00 2/2 2/2 1/1 .sbss None */
|
||||
extern u8 data_80450D68[4];
|
||||
u8 data_80450D68[4];
|
||||
u8 data_80450D68;
|
||||
|
||||
/* 80450D6C-80450D70 00026C 0004+00 1/1 2/2 0/0 .sbss mArcBankName__20dStage_roomControl_c */
|
||||
char* dStage_roomControl_c::mArcBankName;
|
||||
@@ -648,25 +624,24 @@ asm void dStage_roomControl_c::init() {
|
||||
|
||||
/* 80024338-80024384 01EC78 004C+00 1/1 1/1 0/7 .text initZone__20dStage_roomControl_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::initZone() {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/initZone__20dStage_roomControl_cFv.s"
|
||||
void dStage_roomControl_c::initZone() {
|
||||
dComIfGs_initZone();
|
||||
|
||||
dStage_roomStatus_c* status = &mStatus[0];
|
||||
for (int i = 0; i < 0x40; i++) {
|
||||
status->mZoneNo = -1;
|
||||
status++;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80024384-800243B0 01ECC4 002C+00 2/2 27/27 6/6 .text getStatusRoomDt__20dStage_roomControl_cFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::getStatusRoomDt(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/getStatusRoomDt__20dStage_roomControl_cFi.s"
|
||||
dStage_roomStatus_c* dStage_roomControl_c::getStatusRoomDt(int i_statusIdx) {
|
||||
if (i_statusIdx < 0 || i_statusIdx >= 0x40) {
|
||||
return NULL;
|
||||
}
|
||||
return &mStatus[i_statusIdx];
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803A3B18-803A65CC 000C38 2AB4+00 2/2 0/0 0/0 .data l_objectName */
|
||||
@@ -1067,14 +1042,25 @@ SECTION_DATA JKRExpHeap* dStage_roomControl_c::mMemoryBlock[19] = {
|
||||
};
|
||||
|
||||
/* 800243B0-800243E8 01ECF0 0038+00 0/0 3/3 1/1 .text getMemoryBlock__20dStage_roomControl_cFi */
|
||||
#ifdef NONMATCHING
|
||||
JKRExpHeap* dStage_roomControl_c::getMemoryBlock(int i_roomNo) {
|
||||
int blockId = getMemoryBlockID(i_roomNo);
|
||||
|
||||
if (blockId < 0) {
|
||||
return NULL;
|
||||
}
|
||||
return mMemoryBlock[blockId];
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::getMemoryBlock(int param_0) {
|
||||
asm JKRExpHeap* dStage_roomControl_c::getMemoryBlock(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/getMemoryBlock__20dStage_roomControl_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800243E8-80024424 01ED28 003C+00 2/2 0/0 0/0 .text setStayNo__20dStage_roomControl_cFi
|
||||
*/
|
||||
@@ -1101,21 +1087,9 @@ asm void dStage_roomControl_c::setStayNo(int param_0) {
|
||||
#endif
|
||||
|
||||
/* 80024424-8002442C 01ED64 0008+00 0/0 0/0 1/1 .text setNextStayNo__20dStage_roomControl_cFi */
|
||||
// matches but need to fix data
|
||||
#ifdef NONMATCHING
|
||||
void dStage_roomControl_c::setNextStayNo(int param_0) {
|
||||
sNextStayNo = param_0;
|
||||
void dStage_roomControl_c::setNextStayNo(int nextStayNo) {
|
||||
sNextStayNo = nextStayNo;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::setNextStayNo(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/setNextStayNo__20dStage_roomControl_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
static int stayRoomCheck(int param_0, u8* param_1, int param_2) {
|
||||
for (; param_0 > 0; param_0--) {
|
||||
@@ -1138,14 +1112,12 @@ static asm void createRoomScene(int param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 800244E8-8002451C 01EE28 0034+00 0/0 0/0 8/13 .text checkRoomDisp__20dStage_roomControl_cCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::checkRoomDisp(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/checkRoomDisp__20dStage_roomControl_cCFi.s"
|
||||
bool dStage_roomControl_c::checkRoomDisp(int i_roomNo) const {
|
||||
if (checkStatusFlag(i_roomNo, 8)) {
|
||||
return false;
|
||||
}
|
||||
return checkStatusFlag(i_roomNo, 16) ? true : false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8002451C-8002471C 01EE5C 0200+00 2/2 0/0 0/2 .text loadRoom__20dStage_roomControl_cFiPUcb */
|
||||
#pragma push
|
||||
@@ -1190,7 +1162,7 @@ void dStage_roomControl_c::destroyMemoryBlock() {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803A696C-803A6AAC 003A8C 0140+00 2/2 0/0 0/0 .data mArcBank__20dStage_roomControl_c */
|
||||
SECTION_DATA u8 dStage_roomControl_c::mArcBank[320] = {
|
||||
SECTION_DATA char dStage_roomControl_c::mArcBank[32][10] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -1214,24 +1186,14 @@ SECTION_DATA u8 dStage_roomControl_c::mArcBank[320] = {
|
||||
};
|
||||
|
||||
/* 8002490C-80024940 01F24C 0034+00 1/1 1/1 0/2 .text setArcBank__20dStage_roomControl_cFiPCc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::setArcBank(int param_0, char const* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/setArcBank__20dStage_roomControl_cFiPCc.s"
|
||||
void dStage_roomControl_c::setArcBank(int i_bank, char const* param_1) {
|
||||
strncpy(&mArcBank[i_bank][0], param_1, 9);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80024940-80024954 01F280 0014+00 1/1 1/1 0/1 .text getArcBank__20dStage_roomControl_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::getArcBank(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/getArcBank__20dStage_roomControl_cFi.s"
|
||||
char* dStage_roomControl_c::getArcBank(int i_bank) {
|
||||
return mArcBank[i_bank];
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378A50-80378A50 0050B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
@@ -1244,17 +1206,56 @@ SECTION_DEAD static char const* const stringBase_80378AF0 =
|
||||
|
||||
/* 80024954-80024A34 01F294 00E0+00 0/0 2/2 0/2 .text resetArchiveBank__20dStage_roomControl_cFi
|
||||
*/
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
int dStage_roomControl_c::resetArchiveBank(int i_bank) {
|
||||
for (; i_bank < 32; i_bank++) {
|
||||
char* bank = getArcBank(i_bank);
|
||||
|
||||
if (strcmp(bank, "")) {
|
||||
s32 syncStatus = dComIfG_syncObjectRes(bank);
|
||||
if (syncStatus < 0) {
|
||||
OSReport_Error("Bank[%d] : %s.arc Sync Read Error !!\n", bank, i_bank);
|
||||
} else {
|
||||
if (syncStatus > 0) {
|
||||
return 0;
|
||||
}
|
||||
dComIfG_deleteObjectResMain(bank);
|
||||
setArcBank(i_bank, "");
|
||||
}
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::resetArchiveBank(int param_0) {
|
||||
asm int dStage_roomControl_c::resetArchiveBank(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/resetArchiveBank__20dStage_roomControl_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80024A34-80024ABC 01F374 0088+00 1/1 0/0 0/2 .text
|
||||
* create__Q220dStage_roomControl_c9roomDzs_cFUc */
|
||||
#ifdef NONMATCHING
|
||||
void dStage_roomControl_c::roomDzs_c::create(u8 param_0) {
|
||||
JKRExpHeap* archeap = mDoExt_getArchiveHeap();
|
||||
JKRHeap** heap = new (archeap, -4) JKRHeap*[param_0];
|
||||
m_dzs = heap;
|
||||
|
||||
JKRHeap* heap2 = (JKRHeap*)m_dzs;
|
||||
|
||||
if (heap2 != NULL) {
|
||||
for (u8 i = 0; i < param_0; i++) {
|
||||
heap2 = heap[i];
|
||||
}
|
||||
m_num = param_0;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1263,6 +1264,7 @@ asm void dStage_roomControl_c::roomDzs_c::create(u8 param_0) {
|
||||
#include "asm/d/d_stage/create__Q220dStage_roomControl_c9roomDzs_cFUc.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80024ABC-80024B44 01F3FC 0088+00 1/1 0/0 0/0 .text remove__Q220dStage_roomControl_c9roomDzs_cFv
|
||||
*/
|
||||
@@ -1368,21 +1370,9 @@ static asm void dStage_roomInit(int param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 80024DB0-80024DB8 01F6F0 0008+00 2/2 0/0 0/0 .text SetTimePass__20dStage_roomControl_cFi */
|
||||
// matches but need to fix data
|
||||
#ifdef NONMATCHING
|
||||
void dStage_roomControl_c::SetTimePass(int isPassing) {
|
||||
sTimePass = isPassing;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::SetTimePass(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/SetTimePass__20dStage_roomControl_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
roomRead_class* dStage_stageDt_c::getRoom() const {
|
||||
return mRoom;
|
||||
@@ -1429,14 +1419,29 @@ const char* dStage_getName2(s16 procName, s8 subtype) {
|
||||
|
||||
/* 80024EFC-80024F98 01F83C 009C+00 7/7 0/0 0/0 .text
|
||||
* dStage_actorCreate__FP22stage_actor_data_classP16fopAcM_prm_class */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_actorCreate(stage_actor_data_class* param_0, fopAcM_prm_class* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_actorCreate__FP22stage_actor_data_classP16fopAcM_prm_class.s"
|
||||
static void dStage_actorCreate(stage_actor_data_class* param_0, fopAcM_prm_class* param_1) {
|
||||
dStage_objectNameInf* actorInf = dStage_searchName((char*)param_0);
|
||||
fopAc_ac_c* actor;
|
||||
|
||||
if (actorInf == NULL) {
|
||||
JKRHeap::free(param_1, NULL);
|
||||
} else {
|
||||
param_1->mSubtype = actorInf->mSubtype;
|
||||
s16 objName = actorInf->mProcName;
|
||||
|
||||
// "hider" actor
|
||||
if (objName == 0x30F) {
|
||||
actor = (fopAc_ac_c*)fopAcM_FastCreate(objName, 0, NULL, param_1);
|
||||
|
||||
if (actor != NULL) {
|
||||
fopAcM_delete(actor);
|
||||
}
|
||||
} else {
|
||||
layer_class* curLayer = fpcLy_CurrentLayer();
|
||||
fpcSCtRq_Request(curLayer, objName, 0, NULL, param_1);
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451C90-80451C94 000290 0004+00 2/2 0/0 0/0 .sdata2 @4270 */
|
||||
@@ -1477,43 +1482,43 @@ SECTION_DEAD static char const* const stringBase_80378B2B = "S_MV000";
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_playerInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
static asm int dStage_playerInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_playerInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800252B8-80025308 01FBF8 0050+00 1/0 0/0 0/0 .text dStage_cameraInit__FP11dStage_dt_cPviPv */
|
||||
#ifdef NONMATCHING
|
||||
static int dStage_cameraInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
unkTest* tmp = (unkTest*)param_1;
|
||||
param_0->setCamera((stage_camera_class*)tmp->field_0x4);
|
||||
dStage_cameraCreate((stage_camera2_data_class*)tmp->field_0x4, 0, 0);
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_cameraInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
static asm int dStage_cameraInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_cameraInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80025308-8002533C 01FC48 0034+00 1/0 0/0 0/0 .text dStage_RoomCameraInit__FP11dStage_dt_cPviPv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_RoomCameraInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_RoomCameraInit__FP11dStage_dt_cPviPv.s"
|
||||
static int dStage_RoomCameraInit(dStage_dt_c* i_stage, void* param_1, int param_2, void* param_3) {
|
||||
i_stage->setCamera((stage_camera_class*)param_1 + 4);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8002533C-80025370 01FC7C 0034+00 2/0 0/0 0/0 .text dStage_arrowInit__FP11dStage_dt_cPviPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_arrowInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_arrowInit__FP11dStage_dt_cPviPv.s"
|
||||
static int dStage_arrowInit(dStage_dt_c* i_stage, void* param_1, int param_2, void* param_3) {
|
||||
i_stage->setArrow((stage_arrow_class*)param_1 + 4);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80025370-800253FC 01FCB0 008C+00 1/0 0/0 0/0 .text getMapInfo2__15dStage_roomDt_cCFi
|
||||
*/
|
||||
@@ -1562,8 +1567,8 @@ asm stage_map_info_dummy_class* dStage_stageDt_c::getMapInfoBase() const {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_paletteInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_paletteInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_paletteInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1574,8 +1579,8 @@ static asm void dStage_paletteInfoInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_pselectInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_pselectInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_pselectInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1585,8 +1590,8 @@ static asm void dStage_pselectInfoInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_envrInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_envrInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_envrInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1597,8 +1602,8 @@ static asm void dStage_envrInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_filiInfo2Init(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_filiInfo2Init(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_filiInfo2Init__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1609,8 +1614,8 @@ static asm void dStage_filiInfo2Init(dStage_dt_c* param_0, void* param_1, int pa
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_fieldMapFiliInfo2Init(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_fieldMapFiliInfo2Init(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_fieldMapFiliInfo2Init__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1620,8 +1625,8 @@ static asm void dStage_fieldMapFiliInfo2Init(dStage_dt_c* param_0, void* param_1
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_filiInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_filiInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_filiInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1632,8 +1637,8 @@ static asm void dStage_filiInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_vrboxInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_vrboxInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_vrboxInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1644,8 +1649,8 @@ static asm void dStage_vrboxInfoInit(dStage_dt_c* param_0, void* param_1, int pa
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_vrboxcolInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_vrboxcolInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_vrboxcolInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1656,8 +1661,8 @@ static asm void dStage_vrboxcolInfoInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_plightInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_plightInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_plightInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1667,8 +1672,8 @@ static asm void dStage_plightInfoInit(dStage_dt_c* param_0, void* param_1, int p
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_lgtvInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_lgtvInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_lgtvInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1696,8 +1701,8 @@ SECTION_DEAD static char const* const stringBase_80378B33 = "Xtg_00";
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_stagInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_stagInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_stagInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1718,8 +1723,8 @@ asm void dStage_stageDt_c::resetOldMulti() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_sclsInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_sclsInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_sclsInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1730,8 +1735,8 @@ static asm void dStage_sclsInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_actorCommonLayerInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_actorCommonLayerInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_actorCommonLayerInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1742,8 +1747,8 @@ static asm void dStage_actorCommonLayerInit(dStage_dt_c* param_0, void* param_1,
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_tgscCommonLayerInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_tgscCommonLayerInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_tgscCommonLayerInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1753,7 +1758,7 @@ static asm void dStage_tgscCommonLayerInit(dStage_dt_c* param_0, void* param_1,
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_actorInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
static asm int dStage_actorInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_actorInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1764,8 +1769,8 @@ static asm void dStage_actorInit(dStage_dt_c* param_0, void* param_1, int param_
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_actorInit_always(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_actorInit_always(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_actorInit_always__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1775,8 +1780,8 @@ static asm void dStage_actorInit_always(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_tgscInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_tgscInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_tgscInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1786,8 +1791,8 @@ static asm void dStage_tgscInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_doorInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_doorInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_doorInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1797,8 +1802,8 @@ static asm void dStage_doorInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_roomReadInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_roomReadInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_roomReadInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1819,8 +1824,8 @@ asm u8 dStage_roomRead_dt_c_GetReverbStage(roomRead_class& param_0, int param_1)
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_ppntInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_ppntInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_ppntInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1830,8 +1835,8 @@ static asm void dStage_ppntInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_pathInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_pathInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_pathInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1841,8 +1846,8 @@ static asm void dStage_pathInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_rppnInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_rppnInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_rppnInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1852,8 +1857,8 @@ static asm void dStage_rppnInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_rpatInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_rpatInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_rpatInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1864,8 +1869,8 @@ static asm void dStage_rpatInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_soundInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_soundInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_soundInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1876,8 +1881,8 @@ static asm void dStage_soundInfoInit(dStage_dt_c* param_0, void* param_1, int pa
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_soundInfoInitCL(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_soundInfoInitCL(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_soundInfoInitCL__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1902,6 +1907,28 @@ SECTION_DEAD static char const* const stringBase_80378B3A = "dStage_dt_c_decode:
|
||||
|
||||
/* 800260B4-8002617C 0209F4 00C8+00 9/9 0/0 0/0 .text
|
||||
* dStage_dt_c_decode__FPvP11dStage_dt_cP9FuncTablei */
|
||||
// no idea
|
||||
#ifdef NONMATCHING
|
||||
static void dStage_dt_c_decode(void* i_data, dStage_dt_c* i_stage, FuncTable* param_2,
|
||||
int param_3) {
|
||||
int* ptr;
|
||||
|
||||
if (i_data != NULL) {
|
||||
int ivar4 = 0;
|
||||
ptr = (int*)i_data + 1;
|
||||
for (int i = 0; i < param_3; i += 12) {
|
||||
for (int j = 0; j < (int)ptr; j += 12) {
|
||||
if ((int)ptr == ivar4) {
|
||||
param_2->function(i_stage, (void*)ptr, param_3, i_data);
|
||||
}
|
||||
}
|
||||
ivar4++;
|
||||
}
|
||||
}
|
||||
|
||||
OSReport_Error("dStage_dt_c_decode: i_data is NULL\n");
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1911,14 +1938,15 @@ static asm void dStage_dt_c_decode(void* param_0, dStage_dt_c* param_1, FuncTabl
|
||||
#include "asm/d/d_stage/dStage_dt_c_decode__FPvP11dStage_dt_cP9FuncTablei.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8002617C-800261B0 020ABC 0034+00 1/0 0/0 0/0 .text dStage_stEventInfoInit__FP11dStage_dt_cPviPv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_stEventInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_stEventInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_stEventInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1929,8 +1957,8 @@ static asm void dStage_stEventInfoInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_mapEventInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_mapEventInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_mapEventInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1941,8 +1969,8 @@ static asm void dStage_mapEventInfoInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_floorInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_floorInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_floorInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1952,8 +1980,8 @@ static asm void dStage_floorInfoInit(dStage_dt_c* param_0, void* param_1, int pa
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_memaInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_memaInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_memaInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1963,8 +1991,8 @@ static asm void dStage_memaInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_mecoInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_mecoInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_mecoInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1975,8 +2003,8 @@ static asm void dStage_mecoInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_stageKeepTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_stageKeepTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_stageKeepTresureInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -1987,8 +2015,8 @@ static asm void dStage_stageKeepTresureInit(dStage_dt_c* param_0, void* param_1,
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_fieldMapTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_fieldMapTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_fieldMapTresureInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2008,8 +2036,7 @@ static asm void dStage_dt_c_offsetToPtr(void* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_mapPathInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_mapPathInit(dStage_dt_c* param_0, void* param_1, int param_2, void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_mapPathInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2020,8 +2047,8 @@ static asm void dStage_mapPathInit(dStage_dt_c* param_0, void* param_1, int para
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_mapPathInitCommonLayer(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_mapPathInitCommonLayer(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_mapPathInitCommonLayer__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2032,8 +2059,8 @@ static asm void dStage_mapPathInitCommonLayer(dStage_dt_c* param_0, void* param_
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_fieldMapMapPathInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_fieldMapMapPathInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_fieldMapMapPathInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2065,8 +2092,8 @@ static asm void readMult(dStage_dt_c* param_0, dStage_Multi_c* param_1, bool par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_multInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_multInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_multInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2076,8 +2103,8 @@ static asm void dStage_multInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_lbnkInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_lbnkInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_lbnkInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2088,8 +2115,8 @@ static asm void dStage_lbnkInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_roomTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_roomTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_roomTresureInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2100,8 +2127,8 @@ static asm void dStage_roomTresureInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_layerTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_layerTresureInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_layerTresureInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2111,8 +2138,8 @@ static asm void dStage_layerTresureInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_dmapInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_dmapInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_dmapInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2123,8 +2150,8 @@ static asm void dStage_dmapInfoInit(dStage_dt_c* param_0, void* param_1, int par
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_stageDrtgInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_stageDrtgInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_stageDrtgInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2135,8 +2162,8 @@ static asm void dStage_stageDrtgInfoInit(dStage_dt_c* param_0, void* param_1, in
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_roomDrtgInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_roomDrtgInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_roomDrtgInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2146,8 +2173,8 @@ static asm void dStage_roomDrtgInfoInit(dStage_dt_c* param_0, void* param_1, int
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_elstInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
static asm int dStage_elstInfoInit(dStage_dt_c* param_0, void* param_1, int param_2,
|
||||
void* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_elstInfoInit__FP11dStage_dt_cPviPv.s"
|
||||
}
|
||||
@@ -2164,25 +2191,18 @@ static asm void dKankyo_create() {
|
||||
#pragma pop
|
||||
|
||||
/* 80026914-80026940 021254 002C+00 1/1 0/0 0/0 .text layerMemoryInfoLoader__FPvP11dStage_dt_ci */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void layerMemoryInfoLoader(void* param_0, dStage_dt_c* param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/layerMemoryInfoLoader__FPvP11dStage_dt_ci.s"
|
||||
static void layerMemoryInfoLoader(void* i_data, dStage_dt_c* i_stage, int param_2) {
|
||||
dStage_dt_c_decode(i_data, i_stage, &l_layerFuncTable_5131[0], 2);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80026940-800269B4 021280 0074+00 1/1 0/0 0/0 .text
|
||||
* dStage_dt_c_stageInitLoader__FPvP11dStage_dt_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dStage_dt_c_stageInitLoader(void* param_0, dStage_dt_c* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_dt_c_stageInitLoader__FPvP11dStage_dt_c.s"
|
||||
static void dStage_dt_c_stageInitLoader(void* i_data, dStage_dt_c* i_stage) {
|
||||
dStage_dt_c_offsetToPtr(i_data);
|
||||
i_stage->init();
|
||||
dStage_dt_c_decode(i_data, i_stage, &l_funcTable_5136, 1);
|
||||
layerMemoryInfoLoader(i_data, i_stage, -1);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800269B4-80026AE8 0212F4 0134+00 2/2 0/0 0/0 .text layerTableLoader__FPvP11dStage_dt_ci */
|
||||
#pragma push
|
||||
@@ -2258,22 +2278,13 @@ asm void dStage_dt_c_fieldMapLoader(void* param_0, dStage_dt_c* param_1) {
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378A50-80378A50 0050B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80378B69 = "stage.dzs";
|
||||
#pragma pop
|
||||
|
||||
/* 80026CDC-80026D38 02161C 005C+00 0/0 1/1 0/0 .text dStage_infoCreate__Fv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_infoCreate() {
|
||||
nofralloc
|
||||
#include "asm/d/d_stage/dStage_infoCreate__Fv.s"
|
||||
void dStage_infoCreate() {
|
||||
void* stageRsrc = dComIfG_getStageRes("stage.dzs");
|
||||
|
||||
dComIfGp_roomControl_init();
|
||||
dStage_dt_c_stageInitLoader(stageRsrc, &dComIfGp_getStage());
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378A50-80378A50 0050B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
||||
+85
-55
@@ -170,6 +170,10 @@ inline dEvent_manager_c& dComIfGp_getEventManager() {
|
||||
return g_dComIfG_gameInfo.play.getEvtManager();
|
||||
}
|
||||
|
||||
inline dEvt_control_c& dComIfGp_getEvent() {
|
||||
return g_dComIfG_gameInfo.play.getEvent();
|
||||
}
|
||||
|
||||
/* 80041480-80041488 03BDC0 0008+00 1/1 0/0 0/0 .text event_debug_evnt__21@unnamed@d_event_cpp@Fv
|
||||
*/
|
||||
static bool func_80041480() {
|
||||
@@ -201,17 +205,17 @@ dEvt_order_c::dEvt_order_c() {
|
||||
|
||||
/* 800415D8-80041668 03BF18 0090+00 1/1 0/0 0/0 .text orderOld__14dEvt_control_cFUsUsUsUsPvPvPCv
|
||||
*/
|
||||
void dEvt_control_c::orderOld(u16 param_0, u16 param_1, u16 param_2, u16 param_3, void* param_4,
|
||||
bool dEvt_control_c::orderOld(u16 param_0, u16 param_1, u16 param_2, u16 param_3, void* param_4,
|
||||
void* param_5, void const* param_6) {
|
||||
s16 eventIdx = dComIfGp_getEventManager().getEventIdx((char*)param_6, -1, -1);
|
||||
order(param_0, param_1, param_2, param_3, param_4, param_5, eventIdx, -1);
|
||||
return order(param_0, param_1, param_2, param_3, param_4, param_5, eventIdx, -1);
|
||||
}
|
||||
|
||||
/* 80041668-80041804 03BFA8 019C+00 3/3 13/13 0/0 .text order__14dEvt_control_cFUsUsUsUsPvPvsUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_control_c::order(u16 param_0, u16 param_1, u16 param_2, u16 param_3, void* param_4,
|
||||
asm bool dEvt_control_c::order(u16 param_0, u16 param_1, u16 param_2, u16 param_3, void* param_4,
|
||||
void* param_5, s16 param_6, u8 param_7) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/order__14dEvt_control_cFUsUsUsUsPvPvsUc.s"
|
||||
@@ -268,7 +272,7 @@ asm void dEvt_control_c::afterFlagProc(dEvt_order_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_control_c::commonCheck(dEvt_order_c* param_0, u16 param_1, u16 param_2) {
|
||||
asm int dEvt_control_c::commonCheck(dEvt_order_c* param_0, u16 param_1, u16 param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/commonCheck__14dEvt_control_cFP12dEvt_order_cUsUs.s"
|
||||
}
|
||||
@@ -381,33 +385,54 @@ asm void dEvt_control_c::doorCheck(dEvt_order_c* param_0) {
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80379D80-80379D80 0063E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379DB3 = "DEFAULT_GETITEM";
|
||||
#pragma pop
|
||||
|
||||
/* 8004212C-800421C0 03CA6C 0094+00 1/1 0/0 0/0 .text itemCheck__14dEvt_control_cFP12dEvt_order_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_control_c::itemCheck(dEvt_order_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/itemCheck__14dEvt_control_cFP12dEvt_order_c.s"
|
||||
int dEvt_control_c::itemCheck(dEvt_order_c* param_0) {
|
||||
const char* event = "DEFAULT_GETITEM";
|
||||
|
||||
if (commonCheck(param_0, 8, 4)) {
|
||||
mMode = 2;
|
||||
mSpecifiedEvent = dComIfGp_getEventManager().getEventIdx(event, -1, -1);
|
||||
dComIfGp_getEventManager().order(mSpecifiedEvent);
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800421C0-80042254 03CB00 0094+00 1/1 0/0 0/0 .text endProc__14dEvt_control_cFv */
|
||||
#ifdef NONMATCHING
|
||||
int dEvt_control_c::endProc() {
|
||||
switch (mMode) {
|
||||
case 1:
|
||||
talkEnd();
|
||||
break;
|
||||
case 2:
|
||||
demoEnd();
|
||||
break;
|
||||
}
|
||||
|
||||
mMode = 0;
|
||||
field_0xea = 255;
|
||||
mMapToolId = 255;
|
||||
mStageEventDt = NULL;
|
||||
field_0xec = 255;
|
||||
field_0xed = 0;
|
||||
field_0xe0 = -1;
|
||||
mPreItemNo = 255;
|
||||
dComIfGp_getEventManager().setStartDemo(-2);
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_control_c::endProc() {
|
||||
asm int dEvt_control_c::endProc() {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/endProc__14dEvt_control_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80042254-800422C0 03CB94 006C+00 1/1 0/0 0/0 .text change__14dEvt_control_cFv */
|
||||
#pragma push
|
||||
@@ -481,14 +506,10 @@ void dEvt_control_c::clearSkipSystem() {
|
||||
}
|
||||
|
||||
/* 800425E8-8004261C 03CF28 0034+00 0/0 2/2 5/5 .text dEv_defaultSkipProc__FPvi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int dEv_defaultSkipProc(void* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/dEv_defaultSkipProc__FPvi.s"
|
||||
int dEv_defaultSkipProc(void* param_0, int param_1) {
|
||||
dComIfGp_getEvent().reset(param_0);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80379D80-80379D80 0063E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
@@ -518,14 +539,10 @@ asm int dEv_defaultSkipStb(void* param_0, int param_1) {
|
||||
#pragma pop
|
||||
|
||||
/* 800428DC-8004290C 03D21C 0030+00 0/0 1/1 33/33 .text dEv_noFinishSkipProc__FPvi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int dEv_noFinishSkipProc(void* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/dEv_noFinishSkipProc__FPvi.s"
|
||||
int dEv_noFinishSkipProc(void* param_0, int param_1) {
|
||||
dComIfGp_getEvent().offSkipFade();
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
char* dEvt_control_c::getSkipEventName() {
|
||||
return mSkipEventName;
|
||||
@@ -593,14 +610,30 @@ asm void dEvt_control_c::moveApproval(void* param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 8004316C-800431E8 03DAAC 007C+00 0/0 28/28 0/0 .text compulsory__14dEvt_control_cFPvPCcUs */
|
||||
#ifdef NONMATCHING
|
||||
bool dEvt_control_c::compulsory(void* param_0, char const* param_1, u16 param_2) {
|
||||
bool check = false;
|
||||
if (field_0xe5 == 0 || field_0xe5 == 2) {
|
||||
check = true;
|
||||
}
|
||||
|
||||
if (!check || mCompulsory) {
|
||||
return false;
|
||||
} else {
|
||||
mCompulsory = 1;
|
||||
return orderOld(3, 2, 0, param_2, param_0, NULL, param_1);
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_control_c::compulsory(void* param_0, char const* param_1, u16 param_2) {
|
||||
asm bool dEvt_control_c::compulsory(void* param_0, char const* param_1, u16 param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/compulsory__14dEvt_control_cFPvPCcUs.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
void dEvt_control_c::remove() {
|
||||
mMode = 0;
|
||||
@@ -682,38 +715,35 @@ dEvt_info_c::dEvt_info_c() {
|
||||
}
|
||||
|
||||
/* 80043428-80043480 03DD68 0058+00 0/0 0/0 4/4 .text setEventName__11dEvt_info_cFPc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_info_c::setEventName(char* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/setEventName__11dEvt_info_cFPc.s"
|
||||
void dEvt_info_c::setEventName(char* param_0) {
|
||||
if (param_0 == NULL) {
|
||||
mEventId = -1;
|
||||
} else {
|
||||
mEventId = dComIfGp_getEventManager().getEventIdx(param_0, -1, -1);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80043480-800434CC 03DDC0 004C+00 1/1 0/0 0/0 .text getEventName__11dEvt_info_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_info_c::getEventName() {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/getEventName__11dEvt_info_cFv.s"
|
||||
// fake match?
|
||||
s16 dEvt_info_c::getEventName() {
|
||||
if (mEventId == -1) {
|
||||
return 0;
|
||||
} else {
|
||||
dEvDtEvent_c* data = dComIfGp_getEventManager().getEventData(mEventId);
|
||||
if (data == NULL) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
void dEvt_info_c::beforeProc() {
|
||||
setCondition(2);
|
||||
}
|
||||
|
||||
/* 800434D8-80043500 03DE18 0028+00 0/0 4/4 1/1 .text searchMapEventData__14dEvt_control_cFUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvt_control_c::searchMapEventData(u8 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event/searchMapEventData__14dEvt_control_cFUc.s"
|
||||
void dEvt_control_c::searchMapEventData(u8 param_0) {
|
||||
searchMapEventData(param_0, (s32)struct_80450D64);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80043500-8004360C 03DE40 010C+00 3/3 7/7 5/5 .text searchMapEventData__14dEvt_control_cFUcl */
|
||||
#pragma push
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
//
|
||||
|
||||
#include "d/event/d_event_manager.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
@@ -11,26 +12,6 @@
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct dRes_info_c {};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C37C */ void getRes(char const*, char const*, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dEvt_control_c {
|
||||
/* 80042468 */ void reset();
|
||||
/* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int);
|
||||
/* 800429A8 */ void onSkipFade();
|
||||
/* 80043278 */ void getStageEventDt();
|
||||
/* 80043280 */ void sceneChange(int);
|
||||
/* 800432EC */ void convPId(unsigned int);
|
||||
/* 80043500 */ void searchMapEventData(u8, s32);
|
||||
/* 8004360C */ void runningEventID(s16);
|
||||
/* 8004365C */ void setPt2(void*);
|
||||
/* 800436BC */ void setPtI(void*);
|
||||
/* 800436F4 */ void setPtD(void*);
|
||||
};
|
||||
|
||||
struct dCamera_c {
|
||||
/* 80180A40 */ void EventRecoverNotime();
|
||||
/* 80181E98 */ void Center();
|
||||
@@ -40,8 +21,6 @@ struct Z2StatusMgr {
|
||||
/* 802B61E8 */ void setDemoName(char*);
|
||||
};
|
||||
|
||||
struct JAISoundID {};
|
||||
|
||||
struct Z2SeMgr {
|
||||
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
|
||||
};
|
||||
@@ -172,9 +151,7 @@ extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" u8 mDemoArcName__20dStage_roomControl_c[10 + 2 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
@@ -271,26 +248,7 @@ dEvDtBase_c::dEvDtBase_c() {
|
||||
/* ############################################################################################## */
|
||||
/* 80379F50-80379F60 0065B0 000F+01 6/6 0/0 0/0 .rodata
|
||||
* DataFileName__29@unnamed@d_event_manager_cpp@ */
|
||||
SECTION_RODATA static u8 const data_80379F50[15 + 1 /* padding */] = {
|
||||
0x65,
|
||||
0x76,
|
||||
0x65,
|
||||
0x6E,
|
||||
0x74,
|
||||
0x5F,
|
||||
0x6C,
|
||||
0x69,
|
||||
0x73,
|
||||
0x74,
|
||||
0x2E,
|
||||
0x64,
|
||||
0x61,
|
||||
0x74,
|
||||
0x00,
|
||||
/* padding */
|
||||
0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80379F50, &data_80379F50);
|
||||
SECTION_RODATA static char const data_80379F50[16] = "event_list.dat";
|
||||
|
||||
/* 80379F60-80379F60 0065C0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
@@ -299,24 +257,42 @@ SECTION_DEAD static char const* const stringBase_8037A07E = "Event";
|
||||
#pragma pop
|
||||
|
||||
/* 80046710-80046800 041050 00F0+00 0/0 1/1 0/0 .text create__16dEvent_manager_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvent_manager_c::create() {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event_manager/create__16dEvent_manager_cFv.s"
|
||||
int dEvent_manager_c::create() {
|
||||
mCameraPlay = 0;
|
||||
mEventException.init();
|
||||
mFlags.init();
|
||||
field_0x1b4 = 0;
|
||||
field_0x1aa = -1;
|
||||
field_0x1b8 = 0;
|
||||
field_0x1b0 = -1;
|
||||
mDataLoaded = 0;
|
||||
|
||||
for (int i = 4; i <= 9; i++) {
|
||||
mEventList[i].init();
|
||||
}
|
||||
char* res = (char*)dComIfG_getStageRes(data_80379F50);
|
||||
mEventList[3].init(res, -1);
|
||||
mEventList[10].init();
|
||||
|
||||
res = (char*)dComIfG_getObjectRes("Event", data_80379F50);
|
||||
mEventList[1].init(res, -1);
|
||||
mEventList[2].init();
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80046800-80046888 041140 0088+00 0/0 8/8 24/24 .text setObjectArchive__16dEvent_manager_cFPc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvent_manager_c::setObjectArchive(char* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event_manager/setObjectArchive__16dEvent_manager_cFPc.s"
|
||||
bool dEvent_manager_c::setObjectArchive(char* param_0) {
|
||||
char* rt = NULL;
|
||||
|
||||
if (param_0 != NULL) {
|
||||
char* res = (char*)dComIfG_getObjectRes(param_0, data_80379F50);
|
||||
rt = res;
|
||||
mEventList[2].init(res, -1);
|
||||
} else {
|
||||
mEventList[2].init();
|
||||
}
|
||||
return rt != NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80046888-80046904 0411C8 007C+00 0/0 1/1 0/0 .text demoInit__16dEvent_manager_cFv */
|
||||
#pragma push
|
||||
@@ -374,34 +350,22 @@ void dEvent_manager_c::remove() {
|
||||
}
|
||||
|
||||
/* 80046C74-80046C88 0415B4 0014+00 1/1 0/0 0/0 .text extraOnObjectCallBack__FP10fopAc_ac_cPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void extraOnObjectCallBack(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event_manager/extraOnObjectCallBack__FP10fopAc_ac_cPv.s"
|
||||
static int extraOnObjectCallBack(fopAc_ac_c* pActor, void* param_1) {
|
||||
fopAcM_OnStatus(pActor, 0x800);
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80046C88-80046C9C 0415C8 0014+00 1/1 0/0 0/0 .text extraOffObjectCallBack__FP10fopAc_ac_cPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void extraOffObjectCallBack(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event_manager/extraOffObjectCallBack__FP10fopAc_ac_cPv.s"
|
||||
static int extraOffObjectCallBack(fopAc_ac_c* pActor, void* param_1) {
|
||||
fopAcM_OffStatus(pActor, 0x800);
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80046C9C-80046CB8 0415DC 001C+00 1/1 0/0 0/0 .text allOffObjectCallBack__FP10fopAc_ac_cPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void allOffObjectCallBack(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event_manager/allOffObjectCallBack__FP10fopAc_ac_cPv.s"
|
||||
static int allOffObjectCallBack(fopAc_ac_c* pActor, void* param_1) {
|
||||
fopAcM_OffStatus(pActor, 0x9000);
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80046CB8-80046DA0 0415F8 00E8+00 1/1 0/0 0/0 .text
|
||||
* startProc__16dEvent_manager_cFP12dEvDtEvent_c */
|
||||
@@ -416,14 +380,9 @@ asm void dEvent_manager_c::startProc(dEvDtEvent_c* param_0) {
|
||||
|
||||
/* 80046DA0-80046DAC 0416E0 000C+00 2/2 0/0 0/0 .text
|
||||
* closeProc__16dEvent_manager_cFP12dEvDtEvent_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvent_manager_c::closeProc(dEvDtEvent_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event_manager/closeProc__16dEvent_manager_cFP12dEvDtEvent_c.s"
|
||||
void dEvent_manager_c::closeProc(dEvDtEvent_c* param_0) {
|
||||
param_0->field_0xa4 = 2;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80379F60-80379F60 0065C0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
@@ -527,7 +486,7 @@ asm dEvDtEvent_c* dEvent_manager_c::getEventData(s16 param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dEvent_manager_c::getEventData(s16 param_0) {
|
||||
asm dEvDtEvent_c* dEvent_manager_c::getEventData(s16 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/event/d_event_manager/getEventData__16dEvent_manager_cFs.s"
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
//
|
||||
|
||||
#include "d/kankyo/d_kankyo.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
@@ -13,8 +14,6 @@
|
||||
|
||||
struct sub_kankyo__class {};
|
||||
|
||||
struct stage_pure_lightvec_info_class {};
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
static u8 now[48];
|
||||
};
|
||||
@@ -27,88 +26,21 @@ struct mDoGph_gInf_c {
|
||||
static u8 m_bloom[20];
|
||||
};
|
||||
|
||||
struct daPy_py_c {
|
||||
/* 8015F424 */ void checkNowWolfEyeUp();
|
||||
};
|
||||
|
||||
struct dSv_player_status_b_c {
|
||||
/* 80032BB0 */ void isDarkClearLV(int) const;
|
||||
};
|
||||
|
||||
struct dSv_memBit_c {
|
||||
/* 80034860 */ void isSwitch(int) const;
|
||||
/* 80034934 */ void isDungeonItem(int) const;
|
||||
};
|
||||
|
||||
struct dSv_info_c {
|
||||
/* 80035360 */ void isSwitch(int, int) const;
|
||||
};
|
||||
|
||||
struct dSv_event_tmp_flag_c {
|
||||
static u8 const tempBitLabels[370 + 2 /* padding */];
|
||||
};
|
||||
|
||||
struct dSv_event_c {
|
||||
/* 800349A4 */ void offEventBit(u16);
|
||||
/* 800349BC */ void isEventBit(u16) const;
|
||||
};
|
||||
|
||||
struct dStage_roomControl_c {
|
||||
/* 80024384 */ void getStatusRoomDt(int);
|
||||
/* 8019F780 */ void GetTimePass();
|
||||
|
||||
static u8 mStatus[65792];
|
||||
};
|
||||
|
||||
struct dRes_info_c {};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
|
||||
struct dPa_control_c {
|
||||
/* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
|
||||
u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
|
||||
cXyz const*, f32);
|
||||
};
|
||||
|
||||
struct dMsgObject_c {
|
||||
/* 8023819C */ void getActor();
|
||||
};
|
||||
|
||||
struct dComIfG_play_c {
|
||||
/* 8002C950 */ void getLayerNo_common(char const*, int, int);
|
||||
/* 8002C97C */ void getLayerNo(int);
|
||||
};
|
||||
|
||||
struct dBgS_CamGndChk_Wtr {
|
||||
/* 80077A00 */ dBgS_CamGndChk_Wtr();
|
||||
/* 80077A98 */ ~dBgS_CamGndChk_Wtr();
|
||||
};
|
||||
|
||||
struct cBgS_PolyInfo {};
|
||||
|
||||
struct dBgS {
|
||||
/* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 80074EA0 */ void GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
};
|
||||
|
||||
struct color_RGB_class {};
|
||||
|
||||
struct cBgS_GndChk {
|
||||
/* 80267D28 */ void SetPos(cXyz const*);
|
||||
};
|
||||
|
||||
struct cBgS {
|
||||
/* 800744A0 */ void GroundCross(cBgS_GndChk*);
|
||||
};
|
||||
|
||||
struct _GXFogType {};
|
||||
|
||||
struct JAISoundID {};
|
||||
|
||||
struct Z2SeMgr {
|
||||
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
|
||||
};
|
||||
@@ -127,10 +59,6 @@ struct Z2AudioMgr {
|
||||
static u8 mAudioMgrPtr[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct JUTNameTab {
|
||||
/* 802DEAF8 */ void getName(u16) const;
|
||||
};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
@@ -345,7 +273,7 @@ extern "C" void dKy_shadow_mode_check__FUc();
|
||||
extern "C" void dKy_bg_MAxx_proc__FPv();
|
||||
extern "C" void __dt__18dScnKy_env_light_cFv();
|
||||
extern "C" void __sinit_d_kankyo_cpp();
|
||||
extern "C" static void dKankyo_DayProc__Fv();
|
||||
extern "C" void dKankyo_DayProc__Fv();
|
||||
extern "C" extern char const* const d_kankyo_d_kankyo__stringBase0;
|
||||
extern "C" extern u8 struct_80451070[8];
|
||||
|
||||
@@ -353,8 +281,6 @@ extern "C" extern u8 struct_80451070[8];
|
||||
// External References:
|
||||
//
|
||||
|
||||
SECTION_INIT void memset();
|
||||
SECTION_INIT void memcpy();
|
||||
extern "C" void mDoAud_setSceneName__FPCcll();
|
||||
extern "C" void __dt__4cXyzFv();
|
||||
extern "C" void create__Q213mDoGph_gInf_c7bloom_cFv();
|
||||
@@ -475,11 +401,7 @@ extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" void abs();
|
||||
extern "C" void memcmp();
|
||||
extern "C" void strcmp();
|
||||
extern "C" void cos();
|
||||
extern "C" void sin();
|
||||
extern "C" u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
|
||||
extern "C" extern u8 const j3dDefaultMtx[48];
|
||||
extern "C" extern void* __vt__12J3DFrameCtrl[3];
|
||||
@@ -488,12 +410,8 @@ extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" u8 m_bloom__13mDoGph_gInf_c[20];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mStatus__20dStage_roomControl_c[65792];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_meter2_info[248];
|
||||
extern "C" extern u8 g_Counter[12 + 4 /* padding */];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" extern u8 struct_80450D64[4];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
@@ -1583,7 +1501,7 @@ asm void dScnKy_env_light_c::setDaytime() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dStage_roomControl_c::GetTimePass() {
|
||||
asm s8 dStage_roomControl_c::GetTimePass() {
|
||||
nofralloc
|
||||
#include "asm/d/kankyo/d_kankyo/GetTimePass__20dStage_roomControl_cFv.s"
|
||||
}
|
||||
@@ -3527,14 +3445,9 @@ REGISTER_CTORS(0x801ADCA4, __sinit_d_kankyo_cpp);
|
||||
#pragma pop
|
||||
|
||||
/* 801ADD00-801ADD38 1A8640 0038+00 2/2 0/0 0/0 .text dKankyo_DayProc__Fv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dKankyo_DayProc() {
|
||||
nofralloc
|
||||
#include "asm/d/kankyo/d_kankyo/dKankyo_DayProc__Fv.s"
|
||||
void dKankyo_DayProc() {
|
||||
dComIfGs_offTmpBit(dSv_event_tmp_flag_c::tempBitLabels[91]);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451070-80451078 -00001 0008+00 0/0 1/1 0/0 .sbss None */
|
||||
|
||||
@@ -468,6 +468,31 @@ void dMeter2Info_c::decMsgKeyWaitTimer() {
|
||||
|
||||
/* 8021C250-8021C370 216B90 0120+00 0/0 16/16 0/0 .text
|
||||
* getString__13dMeter2Info_cFUlPcP14JMSMesgEntry_c */
|
||||
#ifdef NONMATCHING
|
||||
void dMeter2Info_c::getString(u32 param_0, char* param_1, JMSMesgEntry_c* param_2) {
|
||||
strcpy(param_1, "");
|
||||
|
||||
bmgHeader* res;
|
||||
if (mMsgResource == NULL) {
|
||||
JKRArchive* msgDtArc = dComIfGp_getMsgDtArchive(0);
|
||||
res = (bmgHeader*)JKRArchive::getGlbResource('ROOT', "zel_00.bmg", msgDtArc);
|
||||
if (res == NULL) {
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
for (u16 i = bmgHeader->unk1; i < bmgHeader->entrycount; i++) {
|
||||
JMSMesgEntry_c* entry = (JMSMesgEntry_c*)res + 0x20 + i;
|
||||
if (param_0 == entry->mStringId) {
|
||||
strcpy(param_1, (char*)&res + 0x20 + 0x24 + 8 + 0x14);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (mMsgResource == NULL) {
|
||||
dComIfGp_getMsgDtArchive(0)->removeResourceAll();
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -476,6 +501,7 @@ asm void dMeter2Info_c::getString(u32 param_0, char* param_1, JMSMesgEntry_c* pa
|
||||
#include "asm/d/meter/d_meter2_info/getString__13dMeter2Info_cFUlPcP14JMSMesgEntry_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8021C370-8021C544 216CB0 01D4+00 0/0 1/1 0/0 .text
|
||||
* getStringKana__13dMeter2Info_cFUlPcP14JMSMesgEntry_c */
|
||||
|
||||
+1465
-935
File diff suppressed because it is too large
Load Diff
+220
-125
@@ -6,6 +6,7 @@
|
||||
#include "d/pane/d_pane_class.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
@@ -18,18 +19,6 @@ struct JSUMemoryInputStream {
|
||||
|
||||
struct JKRAramArchive {};
|
||||
|
||||
struct J2DWindow {
|
||||
/* 80254000 */ void getBlack() const;
|
||||
/* 8025400C */ void getWhite() const;
|
||||
/* 802543E0 */ void setWhite(JUtility::TColor);
|
||||
/* 80254430 */ void setBlack(JUtility::TColor);
|
||||
/* 80254568 */ void setBlackWhite(JUtility::TColor, JUtility::TColor);
|
||||
};
|
||||
|
||||
struct J2DTextBox {
|
||||
/* 80254408 */ void setBlack(JUtility::TColor);
|
||||
};
|
||||
|
||||
struct J2DOrthoGraph {
|
||||
/* 802E96D0 */ J2DOrthoGraph(f32, f32, f32, f32, f32, f32);
|
||||
/* 802E980C */ void setOrtho(JGeometry::TBox2<f32> const&, f32, f32);
|
||||
@@ -65,7 +54,7 @@ extern "C" void getGlobalVtx__8CPaneMgrFP7J2DPanePA3_A4_fUcbs();
|
||||
extern "C" void getGlobalVtxCenter__8CPaneMgrFP7J2DPanebs();
|
||||
extern "C" void getBounds__8CPaneMgrFP7J2DPane();
|
||||
extern "C" void dPaneClass_showNullPane__FP9J2DScreen();
|
||||
extern "C" static void dPaneClass_showNullPane__FP7J2DPane();
|
||||
extern "C" void dPaneClass_showNullPane__FP7J2DPane();
|
||||
extern "C" void dPaneClass_setPriority__FPPvP7JKRHeapP9J2DScreenPCcUlP10JKRArchive();
|
||||
extern "C" void __dt__20JSUMemoryInputStreamFv();
|
||||
extern "C" void __dt__20JSURandomInputStreamFv();
|
||||
@@ -138,58 +127,156 @@ SECTION_DATA extern void* __vt__8CPaneMgr[4 + 1 /* padding */] = {
|
||||
};
|
||||
|
||||
/* 80253930-80253984 24E270 0054+00 0/0 11/11 0/0 .text __ct__8CPaneMgrFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm CPaneMgr::CPaneMgr() {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/__ct__8CPaneMgrFv.s"
|
||||
CPaneMgr::CPaneMgr() {
|
||||
mpFirstStackAlpha = NULL;
|
||||
mpFirstStackSize = NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80253984-80253A18 24E2C4 0094+00 0/0 58/58 2/2 .text
|
||||
* __ct__8CPaneMgrFP9J2DScreenUxUcP10JKRExpHeap */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm CPaneMgr::CPaneMgr(J2DScreen* param_0, u64 param_1, u8 param_2, JKRExpHeap* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/__ct__8CPaneMgrFP9J2DScreenUxUcP10JKRExpHeap.s"
|
||||
CPaneMgr::CPaneMgr(J2DScreen* pScrn, u64 tag, u8 flags, JKRExpHeap* pHeap) {
|
||||
J2DPane* pane = pScrn->search(tag);
|
||||
mFlags = flags;
|
||||
initiate(pane, pHeap);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80253A18-80253AB4 24E358 009C+00 1/0 11/11 0/0 .text __dt__8CPaneMgrFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm CPaneMgr::~CPaneMgr() {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/__dt__8CPaneMgrFv.s"
|
||||
CPaneMgr::~CPaneMgr() {
|
||||
if (mpFirstStackSize) {
|
||||
heap->free(mpFirstStackSize);
|
||||
mpFirstStackSize = NULL;
|
||||
}
|
||||
if (mpFirstStackAlpha) {
|
||||
heap->free(mpFirstStackAlpha);
|
||||
mpFirstStackAlpha = NULL;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80253AB4-80253B2C 24E3F4 0078+00 1/0 0/0 0/0 .text setAlpha__8CPaneMgrFUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void CPaneMgr::setAlpha(u8 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/setAlpha__8CPaneMgrFUc.s"
|
||||
void CPaneMgr::setAlpha(u8 alpha) {
|
||||
if (mFlags & 2) {
|
||||
field_0x10 = mpFirstStackAlpha;
|
||||
childPaneSetAlpha(getPanePtr()->getFirstChildPane(), alpha);
|
||||
}
|
||||
getPanePtr()->setAlpha(alpha);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80253B2C-80253C08 24E46C 00DC+00 0/0 3/3 0/0 .text reinit__8CPaneMgrFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void CPaneMgr::reinit() {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/reinit__8CPaneMgrFv.s"
|
||||
void CPaneMgr::reinit() {
|
||||
mInitPos.x = getPanePtr()->getBounds().i.x;
|
||||
mInitPos.y = getPanePtr()->getBounds().i.y;
|
||||
|
||||
mGlobalPos.x = getGlobalPosX();
|
||||
mGlobalPos.y = getGlobalPosY();
|
||||
|
||||
mInitSize.x = getPanePtr()->getWidth();
|
||||
mInitSize.y = getPanePtr()->getHeight();
|
||||
|
||||
mInitScale.x = getPanePtr()->getScaleX();
|
||||
mInitScale.y = getPanePtr()->getScaleY();
|
||||
|
||||
mInitTrans.x = getPanePtr()->getTranslateX();
|
||||
mInitTrans.y = getPanePtr()->getTranslateY();
|
||||
|
||||
mRotateZ = getPanePtr()->getRotateZ();
|
||||
mRotateOffset.x = getPanePtr()->getRotOffsetX();
|
||||
mRotateOffset.y = getPanePtr()->getRotOffsetY();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80253C08-80254000 24E548 03F8+00 1/1 0/0 0/0 .text initiate__8CPaneMgrFP7J2DPaneP10JKRExpHeap
|
||||
*/
|
||||
// switch issues
|
||||
#ifdef NONMATCHING
|
||||
void CPaneMgr::initiate(J2DPane* pPane, JKRExpHeap* pHeap) {
|
||||
(J2DPane*)mWindow = pPane;
|
||||
if (pHeap) {
|
||||
heap = pHeap;
|
||||
} else {
|
||||
heap = (JKRExpHeap*)mDoExt_getCurrentHeap();
|
||||
}
|
||||
|
||||
mpFirstStackAlpha = NULL;
|
||||
field_0x10 = NULL;
|
||||
mpFirstStackSize = NULL;
|
||||
field_0x20 = NULL;
|
||||
mChildPaneCount = 0;
|
||||
|
||||
if (mFlags) {
|
||||
childPaneCount(getPanePtr()->getFirstChildPane());
|
||||
if (mFlags & 1) {
|
||||
mpFirstStackSize = heap->alloc(mChildPaneCount * 12, 0x20);
|
||||
field_0x20 = mpFirstStackSize;
|
||||
childPaneGetSize(getPanePtr()->getFirstChildPane());
|
||||
}
|
||||
if (mFlags & 2) {
|
||||
mpFirstStackAlpha = heap->alloc(mChildPaneCount, 0x20);
|
||||
field_0x10 = mpFirstStackAlpha;
|
||||
childPaneGetSize(getPanePtr()->getFirstChildPane());
|
||||
}
|
||||
}
|
||||
|
||||
mInitPos.x = pPane->getBounds().i.x;
|
||||
mInitPos.y = pPane->getBounds().i.y;
|
||||
|
||||
mGlobalPos.x = getGlobalPosX();
|
||||
mGlobalPos.y = getGlobalPosY();
|
||||
|
||||
mInitSize.x = pPane->getWidth();
|
||||
mInitSize.y = pPane->getHeight();
|
||||
|
||||
mInitScale.x = getPanePtr()->getScaleX();
|
||||
mInitScale.y = getPanePtr()->getScaleY();
|
||||
|
||||
mInitTrans.x = getPanePtr()->getTranslateX();
|
||||
mInitTrans.y = getPanePtr()->getTranslateY();
|
||||
|
||||
mRotateZ = pPane->getRotateZ();
|
||||
mRotateOffset.x = pPane->getRotOffsetX();
|
||||
mRotateOffset.y = pPane->getRotOffsetY();
|
||||
|
||||
if (pPane->getKind() == 'PAN2') {
|
||||
mInitAlpha = 255;
|
||||
} else {
|
||||
mInitAlpha = pPane->getAlpha();
|
||||
}
|
||||
field_0x60 = 0;
|
||||
field_0x62 = 0;
|
||||
mScaleAnime = 0;
|
||||
field_0x66 = 0;
|
||||
field_0x68 = 0;
|
||||
mColorAnime = 0;
|
||||
mAlphaTimer = 0;
|
||||
|
||||
switch (getPanePtr()->getKind()) {
|
||||
case 'TBX3':
|
||||
case 'TBX4':
|
||||
case 'WIN3':
|
||||
JUtility::TColor white = mWindow->getWhite();
|
||||
mInitWhite.set(white.r, white.g, white.b, white.a);
|
||||
|
||||
JUtility::TColor black = mWindow->getBlack();
|
||||
mInitBlack.set(black.r, black.g, black.b, black.a);
|
||||
break;
|
||||
case 'PIC1':
|
||||
case 'PIC2':
|
||||
JUtility::TColor white2 = mWindow->getWhite();
|
||||
mInitWhite.set(white2.r, white2.g, white2.b, white2.a);
|
||||
|
||||
JUtility::TColor black2 = mWindow->getBlack();
|
||||
mInitBlack.set(black2.r, black2.g, black2.b, black2.a);
|
||||
break;
|
||||
case 'WIN1':
|
||||
JUtility::TColor white3 = mWindow->getWhite();
|
||||
mInitWhite.set(white3.r, white3.g, white3.b, white3.a);
|
||||
|
||||
JUtility::TColor black3 = mWindow->getBlack();
|
||||
mInitBlack.set(black3.r, black3.g, black3.b, black3.a);
|
||||
break;
|
||||
}
|
||||
mInitWhite.set(255, 255, 255, 255);
|
||||
mInitBlack.set(0, 0, 0, 0);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -198,26 +285,17 @@ asm void CPaneMgr::initiate(J2DPane* param_0, JKRExpHeap* param_1) {
|
||||
#include "asm/d/pane/d_pane_class/initiate__8CPaneMgrFP7J2DPaneP10JKRExpHeap.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80254000-8025400C 24E940 000C+00 0/0 1/0 0/0 .text getBlack__9J2DWindowCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DWindow::getBlack() const {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/getBlack__9J2DWindowCFv.s"
|
||||
JUtility::TColor J2DWindow::getBlack() const {
|
||||
return mBlack;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8025400C-80254018 24E94C 000C+00 0/0 1/0 0/0 .text getWhite__9J2DWindowCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DWindow::getWhite() const {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/getWhite__9J2DWindowCFv.s"
|
||||
JUtility::TColor J2DWindow::getWhite() const {
|
||||
return mWhite;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80254018-80254134 24E958 011C+00 1/1 0/0 0/0 .text childPaneGetSize__8CPaneMgrFP7J2DPane */
|
||||
#pragma push
|
||||
@@ -251,54 +329,42 @@ asm void CPaneMgr::childPaneSetSize(J2DPane* param_0, f32 param_1, f32 param_2)
|
||||
#pragma pop
|
||||
|
||||
/* 802542E8-80254364 24EC28 007C+00 2/2 18/18 0/0 .text getGlobalPosX__8CPaneMgrFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void CPaneMgr::getGlobalPosX() {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/getGlobalPosX__8CPaneMgrFv.s"
|
||||
f32 CPaneMgr::getGlobalPosX() {
|
||||
f32 posX = getPosX();
|
||||
for (J2DPane* pane = getPanePtr()->getParentPane(); pane != NULL;
|
||||
pane = pane->getParentPane()) {
|
||||
posX += pane->getBounds().i.x;
|
||||
}
|
||||
return posX;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80254364-802543E0 24ECA4 007C+00 2/2 15/15 0/0 .text getGlobalPosY__8CPaneMgrFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void CPaneMgr::getGlobalPosY() {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/getGlobalPosY__8CPaneMgrFv.s"
|
||||
f32 CPaneMgr::getGlobalPosY() {
|
||||
f32 posY = getPosY();
|
||||
for (J2DPane* pane = getPanePtr()->getParentPane(); pane != NULL;
|
||||
pane = pane->getParentPane()) {
|
||||
posY += pane->getBounds().i.y;
|
||||
}
|
||||
return posY;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 802543E0-80254408 24ED20 0028+00 0/0 1/0 0/0 .text setWhite__9J2DWindowFQ28JUtility6TColor */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DWindow::setWhite(JUtility::TColor param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/setWhite__9J2DWindowFQ28JUtility6TColor.s"
|
||||
bool J2DWindow::setWhite(JUtility::TColor white) {
|
||||
mWhite = white;
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80254408-80254430 24ED48 0028+00 0/0 1/0 0/0 .text setBlack__10J2DTextBoxFQ28JUtility6TColor */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DTextBox::setBlack(JUtility::TColor param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/setBlack__10J2DTextBoxFQ28JUtility6TColor.s"
|
||||
bool J2DTextBox::setBlack(JUtility::TColor black) {
|
||||
mBlackColor = black;
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80254430-80254458 24ED70 0028+00 0/0 1/0 0/0 .text setBlack__9J2DWindowFQ28JUtility6TColor */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DWindow::setBlack(JUtility::TColor param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/setBlack__9J2DWindowFQ28JUtility6TColor.s"
|
||||
bool J2DWindow::setBlack(JUtility::TColor black) {
|
||||
mBlack = black;
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80254458-80254568 24ED98 0110+00 1/1 7/7 0/0 .text
|
||||
* setBlackWhite__8CPaneMgrFQ28JUtility6TColorQ28JUtility6TColor */
|
||||
@@ -313,14 +379,11 @@ asm void CPaneMgr::setBlackWhite(JUtility::TColor param_0, JUtility::TColor para
|
||||
|
||||
/* 80254568-802545B0 24EEA8 0048+00 0/0 1/0 0/0 .text
|
||||
* setBlackWhite__9J2DWindowFQ28JUtility6TColorQ28JUtility6TColor */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void J2DWindow::setBlackWhite(JUtility::TColor param_0, JUtility::TColor param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/setBlackWhite__9J2DWindowFQ28JUtility6TColorQ28JUtility6TColor.s"
|
||||
bool J2DWindow::setBlackWhite(JUtility::TColor black, JUtility::TColor white) {
|
||||
mBlack = black;
|
||||
mWhite = white;
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80454E98-80454EA0 003498 0004+04 3/3 0/0 0/0 .sdata2 @4046 */
|
||||
@@ -331,6 +394,14 @@ SECTION_SDATA2 static f32 lit_4046[1 + 1 /* padding */] = {
|
||||
};
|
||||
|
||||
/* 802545B0-80254638 24EEF0 0088+00 0/0 51/51 3/3 .text paneTrans__8CPaneMgrFff */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
void CPaneMgr::paneTrans(f32 x, f32 y) {
|
||||
f32 moveX = x + getInitCenterPosX() - getSizeX() * 0.5f;
|
||||
f32 moveY = y + getInitCenterPosY() - getSizeY() * 0.5f;
|
||||
getPanePtr()->move(moveX, moveY);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -339,8 +410,28 @@ asm void CPaneMgr::paneTrans(f32 param_0, f32 param_1) {
|
||||
#include "asm/d/pane/d_pane_class/paneTrans__8CPaneMgrFff.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80254638-802547CC 24EF78 0194+00 0/0 5/5 0/0 .text paneScale__8CPaneMgrFff */
|
||||
// swapped float reg
|
||||
#ifdef NONMATCHING
|
||||
void CPaneMgr::paneScale(f32 x, f32 y) {
|
||||
f32 moveX = getPosX() + getSizeX() * 0.5f;
|
||||
f32 moveY = getPosY() + getSizeY() * 0.5f;
|
||||
|
||||
getPanePtr()->resize(mInitSize.x * x, mInitSize.y * y);
|
||||
getPanePtr()->move(moveX - getSizeY() * 0.5f, moveY - getSizeX() * 0.5f);
|
||||
|
||||
if (mRotateZ != 0.0f) {
|
||||
getPanePtr()->rotate(mRotateOffset.x * x, mRotateOffset.y * y, ROTATE_Z, getRotateZ());
|
||||
}
|
||||
|
||||
if (mFlags & 1) {
|
||||
field_0x20 = mpFirstStackSize;
|
||||
childPaneSetSize(getPanePtr()->getFirstChildPane(), x, y);
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -349,16 +440,22 @@ asm void CPaneMgr::paneScale(f32 param_0, f32 param_1) {
|
||||
#include "asm/d/pane/d_pane_class/paneScale__8CPaneMgrFff.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 802547CC-802548BC 24F10C 00F0+00 0/0 10/10 0/0 .text scaleAnime__8CPaneMgrFsffUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void CPaneMgr::scaleAnime(s16 param_0, f32 param_1, f32 param_2, u8 param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/scaleAnime__8CPaneMgrFsffUc.s"
|
||||
bool CPaneMgr::scaleAnime(s16 param_0, f32 param_1, f32 param_2, u8 param_3) {
|
||||
if (mScaleAnime < param_0 - 1) {
|
||||
mScaleAnime++;
|
||||
f32 rate = rateCalc(param_0, mScaleAnime, param_3);
|
||||
f32 tmp = param_1 + rate * (param_2 - param_1);
|
||||
getPanePtr()->scale(mInitScale.x * tmp, mInitScale.y * tmp);
|
||||
} else {
|
||||
mScaleAnime = param_0;
|
||||
getPanePtr()->scale(mInitScale.x * param_2, mInitScale.y * param_2);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80454EA0-80454EA8 0034A0 0008+00 1/1 0/0 0/0 .sdata2 @4349 */
|
||||
@@ -428,25 +525,23 @@ asm void CPaneMgr::getBounds(J2DPane* param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 802550E8-8025512C 24FA28 0044+00 0/0 54/54 3/3 .text dPaneClass_showNullPane__FP9J2DScreen */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dPaneClass_showNullPane(J2DScreen* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/dPaneClass_showNullPane__FP9J2DScreen.s"
|
||||
void dPaneClass_showNullPane(J2DScreen* pScrn) {
|
||||
if (pScrn) {
|
||||
dPaneClass_showNullPane(pScrn->search('ROOT'));
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8025512C-80255184 24FA6C 0058+00 1/1 0/0 0/0 .text dPaneClass_showNullPane__FP7J2DPane
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dPaneClass_showNullPane(J2DPane* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class/dPaneClass_showNullPane__FP7J2DPane.s"
|
||||
void dPaneClass_showNullPane(J2DPane* pPane) {
|
||||
if (pPane) {
|
||||
if (!pPane->isVisible()) {
|
||||
pPane->show();
|
||||
}
|
||||
dPaneClass_showNullPane(pPane->getFirstChildPane());
|
||||
dPaneClass_showNullPane(pPane->getNextChildPane());
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80255184-802552B8 24FAC4 0134+00 0/0 1/1 0/0 .text
|
||||
* dPaneClass_setPriority__FPPvP7JKRHeapP9J2DScreenPCcUlP10JKRArchive */
|
||||
|
||||
@@ -158,7 +158,7 @@ SECTION_SDATA2 static f64 lit_3694 = 4503601774854144.0 /* cast s32 to float */;
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void CPaneMgrAlpha::rateCalc(s16 param_0, s16 param_1, u8 param_2) {
|
||||
asm f32 CPaneMgrAlpha::rateCalc(s16 param_0, s16 param_1, u8 param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/pane/d_pane_class_alpha/rateCalc__13CPaneMgrAlphaFssUc.s"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user