work on inlines

This commit is contained in:
LagoLunatic
2024-02-03 13:41:11 -05:00
parent 532e862b31
commit 0d3242ab22
15 changed files with 124 additions and 69 deletions
+18 -10
View File
@@ -138,9 +138,11 @@ JAIZelBasic::JAIZelBasic() {
field_0x0200 = 0;
field_0x0205 = 0;
field_0x0066 = 0;
#if VERSION != VERSION_JPN
field_0x00bf = 0;
field_0x0028 = 0;
field_0x0062 = 0;
#endif
}
/* 802A1EB4-802A2F48 .text zeldaGFrameWork__11JAIZelBasicFv */
@@ -250,7 +252,9 @@ void JAIZelBasic::resetRecover() {
field_0x0206 = 0;
field_0x0207 = 0;
field_0x0201 = 0;
#if VERSION != VERSION_JPN
field_0x00bf = 0;
#endif
}
/* 802A334C-802A33D0 .text bgmStreamPrepare__11JAIZelBasicFUl */
@@ -985,9 +989,11 @@ void JAIZelBasic::setCameraGroupInfo(u8 param_1) {
if (field_0x00bd) {
return;
}
#if VERSION != VERSION_JPN
if (field_0x00bf) {
return;
}
#endif
if (param_1 != mCameraSeaFloorGroupInfo) {
if ((param_1 & 0x80)) {
mIslandRoomNo = param_1 & 0x3f;
@@ -1141,10 +1147,10 @@ void JAIZelBasic::setScene(s32 param_1, s32 roomNo, s32 param_3, s32 layerNo) {
} else if (param_1 == 19 && checkEventBit(0x801) == 0) {
bgmNum = 0;
} else if (param_1 == 2 && field_0x0021 != 0) {
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[3].getBit().isDungeonItem(5)) {
if (dComIfGs_isStageBossDemoSaveBit(dSv_save_c::STAGE_DRC)) {
field_0x00cd = 1;
}
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[3].getBit().isDungeonItem(3)) {
if (dComIfGs_isStageBossEnemySaveBit(dSv_save_c::STAGE_DRC)) {
bgmNum = m_scene_info[1].bgmNum;
bgmNum = expandSceneBgmNum(bgmNum);
field_0x0204 = 1;
@@ -1153,10 +1159,10 @@ void JAIZelBasic::setScene(s32 param_1, s32 roomNo, s32 param_3, s32 layerNo) {
bgmNum = expandSceneBgmNum(bgmNum);
}
} else if (param_1 == 7 && field_0x0021 != 0) {
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[4].getBit().isDungeonItem(5)) {
if (dComIfGs_isStageBossDemoSaveBit(dSv_save_c::STAGE_FW)) {
field_0x00cd = 1;
}
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[4].getBit().isDungeonItem(3)) {
if (dComIfGs_isStageBossEnemySaveBit(dSv_save_c::STAGE_FW)) {
bgmNum = m_scene_info[3].bgmNum;
bgmNum = expandSceneBgmNum(bgmNum);
} else {
@@ -1164,10 +1170,10 @@ void JAIZelBasic::setScene(s32 param_1, s32 roomNo, s32 param_3, s32 layerNo) {
bgmNum = expandSceneBgmNum(bgmNum);
}
} else if (param_1 == 37 && field_0x0021 != 0) {
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[5].getBit().isDungeonItem(5)) {
if (dComIfGs_isStageBossDemoSaveBit(dSv_save_c::STAGE_TOTG)) {
field_0x00cd = 1;
}
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[5].getBit().isDungeonItem(3)) {
if (dComIfGs_isStageBossEnemySaveBit(dSv_save_c::STAGE_TOTG)) {
bgmNum = m_scene_info[10].bgmNum;
bgmNum = expandSceneBgmNum(bgmNum);
} else {
@@ -1175,24 +1181,24 @@ void JAIZelBasic::setScene(s32 param_1, s32 roomNo, s32 param_3, s32 layerNo) {
bgmNum = expandSceneBgmNum(bgmNum);
}
} else if (param_1 == 24 && field_0x0021 != 0) {
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[7].getBit().isDungeonItem(5)) {
if (dComIfGs_isStageBossDemoSaveBit(dSv_save_c::STAGE_WT)) {
field_0x00cd = 1;
}
if (layerNo == 8 || layerNo == 9 || layerNo == 10 || layerNo == 11) {
bgmNum = 0;
} else if (g_dComIfG_gameInfo.save.getSavedata().mMemory[7].getBit().isDungeonItem(3)) {
} else if (dComIfGs_isStageBossEnemySaveBit(dSv_save_c::STAGE_WT)) {
bgmNum = 0;
} else {
bgmNum = m_scene_info[param_1].bgmNum;
bgmNum = expandSceneBgmNum(bgmNum);
}
} else if (param_1 == 45 && field_0x0021 != 0) {
if (g_dComIfG_gameInfo.save.getSavedata().mMemory[6].getBit().isDungeonItem(5)) {
if (dComIfGs_isStageBossDemoSaveBit(dSv_save_c::STAGE_ET)) {
field_0x00cd = 1;
}
if (layerNo == 8 || layerNo == 9 || layerNo == 10 || layerNo == 11) {
bgmNum = 0;
} else if (g_dComIfG_gameInfo.save.getSavedata().mMemory[6].getBit().isDungeonItem(3)) {
} else if (dComIfGs_isStageBossEnemySaveBit(dSv_save_c::STAGE_ET)) {
bgmNum = 0;
} else {
bgmNum = m_scene_info[param_1].bgmNum;
@@ -1316,7 +1322,9 @@ void JAIZelBasic::setSceneName(char* param_1, s32 roomNo, s32 param_3) {
}
menuOut();
field_0x0066 = 1;
#if VERSION != VERSION_JPN
field_0x00bf = 0;
#endif
} else {
field_0x0066 = 0;
}
+1 -1
View File
@@ -129,7 +129,7 @@ JKRADCommand* JKRDvdAramRipper::callCommand_Async(JKRADCommand* command) {
if (command->mExpandSwitch == EXPAND_SWITCH_UNKNOWN1) {
if (command->mAddress == 0 && command->mBlock == NULL) {
command->mBlock =
JKRAram::getAramHeap()->alloc(uncompressedSize, JKRAramHeap::HEAD);
JKRAllocFromAram(uncompressedSize, JKRAramHeap::HEAD);
if (command->mBlock) {
command->mAddress = command->mBlock->getAddress();
}
+1 -1
View File
@@ -206,7 +206,7 @@ static BOOL medama_atari_check(am2_class* i_this) {
i_this->mState = 2;
} else {
dComIfGp_particle_set(0x10, &hitPos, &player->shape_angle);
// Using the fopAcM_seStart breaks the codegen.
// Using the fopAcM_seStart inline breaks the codegen.
// fopAcM_seStart(i_this, JA_SE_CM_AM2_PARALYZED, 0);
mDoAud_seStart(JA_SE_CM_AM2_PARALYZED, &i_this->mEyePos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(i_this)));
fopAcM_monsSeStart(i_this, JA_SE_CV_AM2_PARALYZED, 0x42);
+2 -2
View File
@@ -78,7 +78,7 @@ void daBg_btkAnm_c::entry(J3DModelData* modelData) {
/* 800D86C4-800D8728 .text play__13daBg_btkAnm_cFv */
void daBg_btkAnm_c::play() {
if (special == 1) {
anm->setFrame(g_dComIfG_gameInfo.play.mTimerInfo.mTimerType);
anm->setFrame(dComIfGp_getWaveFrame());
} else {
anm->play();
}
@@ -343,7 +343,7 @@ s32 daBg_c::create() {
fopAcM_SetupActor(this, daBg_c);
s32 roomNo = fopAcM_GetParam(this);
JKRExpHeap * roomHeap = g_dComIfG_gameInfo.play.getRoomControl()->getMemoryBlock(roomNo);
JKRExpHeap * roomHeap = dStage_roomControl_c::getMemoryBlock(roomNo);
if (roomHeap != NULL) {
heap = JKRSolidHeap::create(-1, roomHeap, false);
JUT_ASSERT(0x2fd, heap != 0);
+3 -3
View File
@@ -37,9 +37,9 @@ bool daMmusic::Act_c::create_heap() {
/* 000000A4-0000013C .text Macore_is_playing__Q28daMmusic5Act_cFv */
BOOL daMmusic::Act_c::Macore_is_playing() {
if (dComIfGs_isStageBossEnemy(dSv_save_c::STAGE_WT) ||
g_dComIfG_gameInfo.save.mSavedata.mEvent.isEventBit(0x2910) ||
g_dComIfG_gameInfo.save.mSavedata.mEvent.isEventBit(0x2e02) ||
g_dComIfG_gameInfo.save.mSavedata.mEvent.isEventBit(0x1610) ||
dComIfGs_isEventBit(0x2910) ||
dComIfGs_isEventBit(0x2e02) ||
dComIfGs_isEventBit(0x1610) ||
!dComIfGs_checkGetItem(LV3_SWORD))
return FALSE;
+1 -1
View File
@@ -152,7 +152,7 @@ void dComIfG_play_c::itemInit() {
mPlacenameState = 0;
mGameoverStatus = 0;
field_0x495a = 0;
field_0x495b = 0;
mPictureFlag = 0;
field_0x495c = 0;
field_0x495d = 0;
mPictureStatus = 0;
+7 -7
View File
@@ -108,7 +108,7 @@ void dEvt_control_c::afterFlagProc(dEvt_order_c* order) {
mPt2 = getPId(NULL);
if ((order->mFlag & dEvtFlag_STAFF_ALL_e))
g_dComIfG_gameInfo.play.getEvtManager().issueStaff("ALL");
dComIfGp_getPEvtManager()->issueStaff("ALL");
if ((order->mFlag & dEvtFlag_UNK8_e))
onEventFlag(0x20);
@@ -272,7 +272,7 @@ BOOL dEvt_control_c::talkEnd() {
if (actor2 != NULL)
actor2->mEvtInfo.setCommand(dEvtCmd_NONE_e);
if (mEventId != -1) {
g_dComIfG_gameInfo.play.getEvtManager().endProc(mEventId, 1);
dComIfGp_getPEvtManager()->endProc(mEventId, 1);
mEventId = -1;
}
fopAc_ac_c* itemPartner = fopAcM_getItemEventPartner(NULL);
@@ -324,10 +324,10 @@ BOOL dEvt_control_c::demoEnd() {
if (actor2 != NULL)
actor2->mEvtInfo.setCommand(dEvtCmd_NONE_e);
if (mEventId != -1) {
g_dComIfG_gameInfo.play.getEvtManager().endProc(mEventId, 1);
dComIfGp_getPEvtManager()->endProc(mEventId, 1);
mEventId = -1;
}
g_dComIfG_gameInfo.play.getEvtManager().cancelStaff("ALL");
dComIfGp_getPEvtManager()->cancelStaff("ALL");
return TRUE;
}
@@ -355,7 +355,7 @@ BOOL dEvt_control_c::doorCheck(dEvt_order_c* order) {
fopAc_ac_c* actor2 = getPt2();
if (mEventId == -1 && actor2 != NULL && actor2->mEvtInfo.getEventId() != -1)
mEventId = actor2->mEvtInfo.getEventId();
if (mEventId != -1 && g_dComIfG_gameInfo.play.getEvtManager().getEventData(mEventId) != NULL) {
if (mEventId != -1 && dComIfGp_getPEvtManager()->getEventData(mEventId) != NULL) {
if (!dComIfGp_evmng_order(mEventId))
JUT_ASSERT(0x2c0, 0);
} else {
@@ -700,7 +700,7 @@ dStage_Event_dt_c* dEvt_control_c::nextStageEventDt(void* idxp) {
}
/* 800715B8-800715DC .text getPId__14dEvt_control_cFPv */
int dEvt_control_c::getPId(void* ac) {
u32 dEvt_control_c::getPId(void* ac) {
if (ac == NULL)
return -1;
return fopAcM_GetID(ac);
@@ -745,7 +745,7 @@ char* dEvt_info_c::getEventName() {
if (mEventId == -1) {
return NULL;
} else {
dEvDtEvent_c* evtData = g_dComIfG_gameInfo.play.getEvtManager().getEventData(mEventId);
dEvDtEvent_c* evtData = dComIfGp_getPEvtManager()->getEventData(mEventId);
if (evtData == NULL)
return NULL;
return evtData->getName();
+10 -11
View File
@@ -609,9 +609,9 @@ BOOL dScnLogo_Delete(dScnLogo_c* i_this) {
mDoExt_getRubyFont();
#if VERSION == VERSION_JPN
if (g_msgDHIO.field_0x08 == 0 && g_dComIfG_gameInfo.play.mpFont0Archive != NULL) {
g_dComIfG_gameInfo.play.mpFont0Archive->unmount();
g_dComIfG_gameInfo.play.mpFont0Archive = NULL;
if (g_msgDHIO.field_0x08 == 0 && dComIfGp_getFontArchive() != NULL) {
dComIfGp_getFontArchive()->unmount();
dComIfGp_setFontArchive(NULL);
}
#endif
@@ -626,22 +626,21 @@ BOOL dScnLogo_Delete(dScnLogo_c* i_this) {
delete l_lodCommand;
ResTIMG * timg = (ResTIMG *)dComIfG_getObjectRes("Always", ALWAYS_I4_BALL128B);
g_dComIfG_gameInfo.drawlist.mShadowControl.setSimpleTex(timg);
dDlst_shadowControl_c::setSimpleTex(timg);
dComIfG_deleteObjectRes("Logo");
dComIfGp_setWindowNum(0);
for (s32 i = 0; i < 3; i++) {
g_dComIfG_gameInfo.play.mAramHeap0[i] = JKRAram::getAramHeap()->alloc(0x2000, JKRAramHeap::HEAD);
u8 mask = (1 << (u8)i);
g_dComIfG_gameInfo.play.field_0x495b &= ~mask;
dComIfGp_setPictureBoxData(JKRAllocFromAram(0x2000, JKRAramHeap::HEAD), i);
dComIfGp_offPictureFlag(i);
}
for (s32 i = 0; i < 4; i++) {
g_dComIfG_gameInfo.play.mAramHeap1[i] = JKRAram::getAramHeap()->alloc(0x70, JKRAramHeap::HEAD);
dComIfGp_setBossBattleData(JKRAllocFromAram(0x70, JKRAramHeap::HEAD), i);
}
#if VERSION == VERSION_PAL
g_dComIfG_gameInfo.play.field_0x4820 = JKRAram::getAramHeap()->alloc(0xB000, JKRAramHeap::HEAD);
g_dComIfG_gameInfo.play.field_0x4820 = JKRAllocFromAram(0xB000, JKRAramHeap::HEAD);
#endif
mDoExt_setSafeGameHeapSize();
@@ -752,7 +751,7 @@ s32 phase_2(dScnLogo_c* i_this) {
if (rt != 0)
return cPhs_INIT_e;
g_dComIfG_gameInfo.play.createParticle();
dComIfGp_particle_create();
ResTIMG * timg;
@@ -928,7 +927,7 @@ s32 phase_2(dScnLogo_c* i_this) {
l_fontCommand = onMemMount("/res/Msg/fontres.arc");
#endif
l_rubyCommand = onMemMount("/res/Msg/rubyres.arc");
l_particleCommand = mDoDvdThd_toMainRam_c::create("/res/Particle/common.jpc", JKRArchive::UNKNOWN_MOUNT_DIRECTION, g_dComIfG_gameInfo.play.getParticle()->getHeap());
l_particleCommand = mDoDvdThd_toMainRam_c::create("/res/Particle/common.jpc", JKRArchive::UNKNOWN_MOUNT_DIRECTION, dComIfGp_particle_getCommonHeap());
l_itemTableCommand = mDoDvdThd_toMainRam_c::create("/res/ItemTable/item_table.bin", JKRArchive::UNKNOWN_MOUNT_DIRECTION, NULL);
JUT_ASSERT(VERSION_SELECT(1418, 1743, 1783), l_itemTableCommand != 0);
l_ActorDataCommand = mDoDvdThd_toMainRam_c::create("/res/ActorDat/ActorDat.bin", JKRArchive::UNKNOWN_MOUNT_DIRECTION, NULL);
+1 -1
View File
@@ -169,7 +169,7 @@ s32 phase_0(room_of_scene_class* i_this) {
/* 80236D58-80236DE8 .text phase_1__FP19room_of_scene_class */
s32 phase_1(room_of_scene_class* i_this) {
s32 roomNo = fopScnM_GetParam(i_this);
JKRExpHeap * pHeap = g_dComIfG_gameInfo.play.getRoomControl()->getMemoryBlock(roomNo);
JKRExpHeap * pHeap = dStage_roomControl_c::getMemoryBlock(roomNo);
if (pHeap != NULL && pHeap->getTotalUsedSize() != 0)
return cPhs_INIT_e;
+1 -1
View File
@@ -52,7 +52,7 @@ void dispHeapInfo() {
JKRAram::getAramHeap()->dump();
}
DynamicModuleControlBase::dump();
g_dComIfG_gameInfo.mResControl.dump();
dComIfG_dumpResControl();
zelda->dump_sort();
game->dump_sort();
+1 -1
View File
@@ -321,7 +321,7 @@ bool Debug_console(JUTGamePad* i_pad) {
}
DynamicModuleControlBase::dump();
g_dComIfG_gameInfo.mResControl.dump();
dComIfG_dumpResControl();
}
if (i_pad->getTrigger() & CButton::DPAD_RIGHT) {