mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-22 22:35:43 -04:00
d_s_name equivalent except PAL
This commit is contained in:
+1
-1
@@ -661,7 +661,7 @@ config.libs = [
|
||||
Object(NonMatching, "d/d_picture_box.cpp"),
|
||||
Object(Matching, "d/d_s_logo.cpp"),
|
||||
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_s_menu.cpp"),
|
||||
Object(NonMatching, "d/d_s_name.cpp"),
|
||||
Object(EquivalentFor("D44J01", "GZLJ01", "GZLE01"), "d/d_s_name.cpp"), # stripped vtable padding
|
||||
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_s_open.cpp"),
|
||||
Object(NonMatching, "d/d_s_open_sub.cpp"),
|
||||
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_s_play.cpp"),
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
struct controller_pad_buttons {
|
||||
/* 0x00 (0x80 >> 7) */ bool left : 1;
|
||||
/* 0x00 (0x40 >> 6) */ bool right : 1;
|
||||
/* 0x00 (0x10 >> 5) */ bool down : 1;
|
||||
/* 0x00 (0x20 >> 5) */ bool down : 1;
|
||||
/* 0x00 (0x10 >> 4) */ bool up : 1;
|
||||
/* 0x00 (0x08 >> 3) */ bool z : 1;
|
||||
/* 0x00 (0x04 >> 2) */ bool r : 1;
|
||||
|
||||
@@ -1833,6 +1833,11 @@ inline void dComIfGs_initDan(s8 i_stageNo) {
|
||||
g_dComIfG_gameInfo.save.initDan(i_stageNo);
|
||||
}
|
||||
|
||||
// Name from TP
|
||||
inline void dComIfGs_resetDan() {
|
||||
g_dComIfG_gameInfo.save.resetDan();
|
||||
}
|
||||
|
||||
inline void dComIfGs_onActor(int i_no, int i_roomNo) {
|
||||
g_dComIfG_gameInfo.save.onActor(i_no, i_roomNo);
|
||||
}
|
||||
@@ -3091,7 +3096,7 @@ inline void dComIfGp_plusMiniGameRupee(s16 count) {
|
||||
inline s32 dComIfGp_getWindowNum() { return g_dComIfG_gameInfo.play.getWindowNum(); }
|
||||
inline void dComIfGp_setWindowNum(u8 num) { g_dComIfG_gameInfo.play.setWindowNum(num); }
|
||||
inline dDlst_window_c * dComIfGp_getWindow(int idx) { return g_dComIfG_gameInfo.play.getWindow(idx); }
|
||||
inline void dComIfGp_setWindow(int idx, f32 x, f32 y, f32 w, f32 h, f32 n, f32 f, int cameraID, int mode) {
|
||||
inline void dComIfGp_setWindow(u8 idx, f32 x, f32 y, f32 w, f32 h, f32 n, f32 f, int cameraID, int mode) {
|
||||
g_dComIfG_gameInfo.play.setWindow(idx, x, y, w, h, n, f, cameraID, mode);
|
||||
}
|
||||
inline J2DOrthoGraph* dComIfGp_getCurrentGrafPort() { return g_dComIfG_gameInfo.play.getCurrentGrafPort(); }
|
||||
|
||||
@@ -78,6 +78,9 @@ public:
|
||||
void _create();
|
||||
void initial();
|
||||
void _delete();
|
||||
#if VERSION == VERSION_DEMO
|
||||
void _deleteSp();
|
||||
#endif
|
||||
void setErrMessage(u32, int);
|
||||
void closeMessage();
|
||||
void resizeMsgBoard(int);
|
||||
|
||||
+38
-13
@@ -83,8 +83,27 @@ public:
|
||||
/* 0x50 */ u8 field_0x50;
|
||||
/* 0x51 */ u8 field_0x51;
|
||||
/* 0x52 */ u8 field_0x52;
|
||||
/* 0x54 */ float field_0x54;
|
||||
/* 0x58 */ float field_0x58;
|
||||
/* 0x54 */ f32 field_0x54;
|
||||
/* 0x58 */ f32 field_0x58;
|
||||
#if VERSION == VERSION_PAL
|
||||
/* 0x5C */ u8 field_0x5c;
|
||||
/* 0x5D */ u8 field_0x5d;
|
||||
/* 0x5E */ u8 field_0x5e;
|
||||
/* 0x5F */ u8 field_0x5f;
|
||||
/* 0x60 */ s16 field_0x60;
|
||||
/* 0x62 */ s16 field_0x62;
|
||||
/* 0x64 */ s16 field_0x64;
|
||||
/* 0x66 */ s16 field_0x66;
|
||||
/* 0x68 */ s16 field_0x68;
|
||||
/* 0x6A */ s16 field_0x6a;
|
||||
/* 0x6C */ s16 field_0x6c;
|
||||
/* 0x6E */ s16 field_0x6e;
|
||||
/* 0x70 */ s16 field_0x70;
|
||||
/* 0x72 */ s16 field_0x72;
|
||||
/* 0x74 */ s16 field_0x74;
|
||||
/* 0x76 */ s16 field_0x76;
|
||||
/* 0x78 */ u8 field_0x78;
|
||||
#endif
|
||||
};
|
||||
|
||||
class dDlst_FileSel_c : public dDlst_base_c {
|
||||
@@ -103,16 +122,18 @@ public:
|
||||
void setSavePicDataPtr(u8* dataPtr) { mSavePicDataPtr = dataPtr; }
|
||||
void setUseType(u8 useType) { mUseType = useType; }
|
||||
|
||||
void getErrType() {}
|
||||
void getSelectNum() {}
|
||||
void isDataExtra(u8) {}
|
||||
void isDataNew(u8) {}
|
||||
void isSelectEnd() {}
|
||||
u8 getErrType() { return errType; }
|
||||
u8 getSelectNum() { return selectNum; }
|
||||
BOOL isDataExtra(u8 idx) { return dataExtra[idx]; }
|
||||
BOOL isDataNew(u8 idx) { return dataNew[idx]; }
|
||||
u8 isSelectEnd() { return selectEnd; } // ?
|
||||
|
||||
dFile_select_c() {}
|
||||
void _create();
|
||||
void initial();
|
||||
#if VERSION == VERSION_DEMO
|
||||
void _deleteSp();
|
||||
#endif
|
||||
void _delete();
|
||||
void _move();
|
||||
bool _open();
|
||||
@@ -213,7 +234,8 @@ public:
|
||||
void ExErrorMsgPaneMove2();
|
||||
|
||||
public:
|
||||
/* 0x0000 */ JKRMemArchive* field_0x0;
|
||||
/* 0x0000 */ JKRMemArchive* archive;
|
||||
private:
|
||||
/* 0x0004 */ dDlst_FileSel_c fileSel;
|
||||
/* 0x0010 */ fopMsgM_pane_class field_0x10;
|
||||
/* 0x0048 */ fopMsgM_pane_class field_0x48;
|
||||
@@ -270,6 +292,9 @@ public:
|
||||
/* 0x3730 */ fopMsgM_pane_class field_0x3730;
|
||||
/* 0x3768 */ fopMsgM_pane_class field_0x3768;
|
||||
/* 0x37A0 */ fopMsgM_pane_class field_0x37a0;
|
||||
#if VERSION == VERSION_PAL
|
||||
fopMsgM_pane_class pad[0xF]; // TODO
|
||||
#endif
|
||||
/* 0x37D8 */ JUtility::TColor field_0x37d8[11];
|
||||
/* 0x3804 */ JUtility::TColor field_0x3804[11];
|
||||
/* 0x3830 */ JUtility::TColor field_0x3830[18];
|
||||
@@ -284,13 +309,13 @@ public:
|
||||
/* 0x3900 */ char* field_0x3900[3];
|
||||
/* 0x390C */ STControl* stick;
|
||||
/* 0x3910 */ STControl* stick2;
|
||||
/* 0x3914 */ u8 field_0x3914[3];
|
||||
/* 0x3914 */ u8 dataNew[3];
|
||||
/* 0x3917 */ u8 field_0x3917[3];
|
||||
/* 0x391A */ u8 saveStatus[3];
|
||||
/* 0x391A */ u8 dataExtra[3];
|
||||
/* 0x391D */ u8 field_0x391D[3];
|
||||
/* 0x3920 */ u8 field_0x3920;
|
||||
/* 0x3921 */ u8 field_0x3921;
|
||||
/* 0x3922 */ u8 saveSlot;
|
||||
/* 0x3922 */ u8 selectNum;
|
||||
/* 0x3923 */ s8 field_0x3923;
|
||||
/* 0x3924 */ u8 field_0x3924;
|
||||
/* 0x3925 */ u8 field_0x3925;
|
||||
@@ -300,10 +325,10 @@ public:
|
||||
/* 0x3929 */ u8 field_0x3929;
|
||||
/* 0x392A */ u8 field_0x392a;
|
||||
/* 0x392B */ u8 field_0x392b;
|
||||
/* 0x392C */ u8 field_0x392c;
|
||||
/* 0x392C */ u8 selectEnd;
|
||||
/* 0x392D */ u8 field_0x392d;
|
||||
/* 0x392E */ u8 field_0x392e;
|
||||
/* 0x392F */ u8 field_0x392f;
|
||||
/* 0x392F */ u8 errType;
|
||||
/* 0x3930 */ s16 field_0x3930;
|
||||
/* 0x3932 */ s16 field_0x3932;
|
||||
/* 0x3934 */ u8 field_0x3934[0x3936 - 0x3934];
|
||||
|
||||
@@ -68,8 +68,8 @@ public:
|
||||
u8* getDataBufPtr() { return dataBuf; }
|
||||
u8 getEndStatus() { return endStatus; }
|
||||
u8 getSaveStatus() { return saveStatus; }
|
||||
void setErrorFlag(u8) {}
|
||||
void setErrorType(u8) {}
|
||||
void setErrorFlag(u8 i_errorFlag) { errorFlag = i_errorFlag; }
|
||||
void setErrorType(u8 i_errorType) { errorType = i_errorType; }
|
||||
void setUseType(u8 i_useType) { useType = i_useType; }
|
||||
|
||||
virtual ~dMenu_save_c() {}
|
||||
@@ -156,7 +156,7 @@ public:
|
||||
BOOL PaneRotate(s16, u8, fopMsgM_pane_class*, f32, f32, f32, u8);
|
||||
BOOL PaneTranceMenu(s16, u8, fopMsgM_pane_class*, f32, f32, u8, int);
|
||||
|
||||
public:
|
||||
private:
|
||||
/* 0x0004 */ JKRArchive* archive;
|
||||
/* 0x0008 */ dDlst_MenuSave_c MenuSave;
|
||||
/* 0x0014 */ fopMsgM_pane_class field_0x14[8];
|
||||
@@ -193,8 +193,8 @@ public:
|
||||
/* 0x0539 */ u8 field_0x539;
|
||||
/* 0x053A */ u8 field_0x53a;
|
||||
/* 0x053B */ u8 field_0x53b;
|
||||
/* 0x053C */ u8 field_0x53c;
|
||||
/* 0x053D */ u8 field_0x53d;
|
||||
/* 0x053C */ u8 errorFlag;
|
||||
/* 0x053D */ u8 errorType;
|
||||
/* 0x0540 */ int field_0x540;
|
||||
/* 0x0544 */ s16 field_0x544;
|
||||
/* 0x0546 */ u8 field_0x546[0x0554 - 0x0546];
|
||||
|
||||
@@ -159,7 +159,9 @@ public:
|
||||
void displayInit();
|
||||
void NameStrSet();
|
||||
|
||||
#if VERSION == VERSION_DEMO
|
||||
void _deleteSp();
|
||||
#endif
|
||||
|
||||
#if VERSION <= VERSION_JPN
|
||||
BOOL checkDakuon(int, u8);
|
||||
|
||||
+33
-4
@@ -16,6 +16,7 @@ class dMenu_save_c;
|
||||
class dMCloth_c;
|
||||
class dName_c;
|
||||
class mDoDvdThd_toMainRam_c;
|
||||
class mDoDvdThd_mountXArchive_c;
|
||||
|
||||
class dScnName_camera_c : public camera_class {
|
||||
public:
|
||||
@@ -26,7 +27,7 @@ public:
|
||||
dSn_HIO_c();
|
||||
virtual ~dSn_HIO_c() {}
|
||||
|
||||
void genMessage(JORMContext* ctx);
|
||||
void genMessage(JORMContext* ctx) { UNUSED(ctx); }
|
||||
|
||||
public:
|
||||
/* 0x04 */ s8 mNo;
|
||||
@@ -74,10 +75,22 @@ class dScnName_c : public scene_class {
|
||||
public:
|
||||
~dScnName_c();
|
||||
cPhs_State create();
|
||||
#if VERSION == VERSION_PAL
|
||||
void bmg_data_read_all();
|
||||
void bmg_data_set();
|
||||
void tex_data_set();
|
||||
#endif
|
||||
void cloth_create();
|
||||
void cloth_move();
|
||||
void cloth2D_create();
|
||||
void buttonIconCreate();
|
||||
#if VERSION == VERSION_PAL
|
||||
void buttonIconTexChange(u8, u8);
|
||||
void PaneAlphaLangTxt(s16, u8);
|
||||
void languageTexChange();
|
||||
void langTexChg();
|
||||
void langTexChgFast();
|
||||
#endif
|
||||
BOOL paneTransButtonIcon(s16, u8, f32, f32, u8);
|
||||
BOOL execute();
|
||||
void setView();
|
||||
@@ -128,9 +141,21 @@ public:
|
||||
void NoneDraw();
|
||||
void changeGameScene();
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
/* 0x01C4 */ mDoDvdThd_mountXArchive_c* field_0x1c4;
|
||||
/* 0x01C8 */ mDoDvdThd_mountXArchive_c* field_0x1c8;
|
||||
/* 0x01CC */ mDoDvdThd_mountXArchive_c* field_0x1cc;
|
||||
/* 0x01D0 */ mDoDvdThd_mountXArchive_c* field_0x1d0;
|
||||
/* 0x01D4 */ mDoDvdThd_mountXArchive_c* field_0x1d4;
|
||||
u8 pad[0x14];
|
||||
#endif
|
||||
/* 0x01C4 */ request_of_phase_process_class mPhs;
|
||||
/* 0x01CC */ JKRHeap* heap;
|
||||
#if VERSION == VERSION_DEMO
|
||||
/* 0x01CC */ JKRSolidHeap* heap;
|
||||
#else
|
||||
/* 0x01CC */ JKRExpHeap* heap;
|
||||
/* 0x01D0 */ JKRHeap* oldHeap;
|
||||
#endif
|
||||
/* 0x01D4 */ dScnName_camera_c mCamera;
|
||||
/* 0x040C */ JKRMemArchive* mArchive;
|
||||
/* 0x0410 */ mDoDvdThd_toMainRam_c* field_0x410;
|
||||
@@ -146,9 +171,13 @@ public:
|
||||
/* 0x04AC */ fopMsgM_pane_class field_0x4ac;
|
||||
/* 0x04E4 */ fopMsgM_pane_class field_0x4e4;
|
||||
/* 0x051C */ fopMsgM_pane_class field_0x51c;
|
||||
#if VERSION == VERSION_PAL
|
||||
/* 0x0554 */ fopMsgM_pane_class field_0x554;
|
||||
/* 0x058C */ fopMsgM_pane_class field_0x58C;
|
||||
#endif
|
||||
/* 0x0554 */ u8 mMainProc;
|
||||
/* 0x0555 */ u8 field_0x555;
|
||||
/* 0x0556 */ u8 field_0x556;
|
||||
/* 0x0555 */ u8 mOpenProc;
|
||||
/* 0x0556 */ u8 mMemCardCheckProc;
|
||||
/* 0x0557 */ u8 mDrawProc;
|
||||
/* 0x0558 */ u8 field_0x558;
|
||||
/* 0x0559 */ u8 field_0x559;
|
||||
|
||||
+3
-1
@@ -736,6 +736,7 @@ public:
|
||||
BOOL isSwitch(int);
|
||||
BOOL revSwitch(int);
|
||||
|
||||
void reset() { mStageNo = -1; } // Name from TP
|
||||
u8 getGbaRupeeCount() { return mGbaRupeeCount; }
|
||||
void incGbaRupeeCount() { mGbaRupeeCount++; }
|
||||
|
||||
@@ -949,13 +950,14 @@ public:
|
||||
|
||||
void removeZone(int zoneNo) { mZone[zoneNo].reset(); }
|
||||
void initDan(s8 i_stage) { mDan.init(i_stage); }
|
||||
void resetDan() { mDan.reset(); } // Name from TP
|
||||
|
||||
u8 getDataNum() { return mDataNum; }
|
||||
void setDataNum(u8 num) { mDataNum = num; }
|
||||
u8 getNoFile() { return mNoFile; }
|
||||
void setNoFile(u8 no) { mNoFile = no; }
|
||||
u8 getNewFile() { return mNewFile; }
|
||||
void setNewFile(u8 file) {mNewFile = file; }
|
||||
void setNewFile(u8 file) { mNewFile = file; }
|
||||
u64 getMemCardCheckID() { return mMemCardCheckID; }
|
||||
void setMemCardCheckID(u64 id) { mMemCardCheckID = id; }
|
||||
|
||||
|
||||
+12
-10
@@ -20,16 +20,16 @@ public:
|
||||
};
|
||||
|
||||
enum CardStatus {
|
||||
CARD_STAT_WAIT,
|
||||
CARD_STAT_RESTORE,
|
||||
CARD_STAT_CREATE,
|
||||
CARD_STAT_FORMAT,
|
||||
CARD_STAT_READY,
|
||||
CARD_STAT_DETACH,
|
||||
CARD_STAT_ENCODING,
|
||||
CARD_STAT_ERROR,
|
||||
CARD_STAT_WRONG_DEVICE = 10,
|
||||
CARD_STAT_IOERROR = 12,
|
||||
/* 0x0 */ CARD_STAT_WAIT,
|
||||
/* 0x1 */ CARD_STAT_RESTORE,
|
||||
/* 0x2 */ CARD_STAT_CREATE,
|
||||
/* 0x3 */ CARD_STAT_FORMAT,
|
||||
/* 0x4 */ CARD_STAT_READY,
|
||||
/* 0x5 */ CARD_STAT_DETACH,
|
||||
/* 0x6 */ CARD_STAT_ENCODING,
|
||||
/* 0x7 */ CARD_STAT_ERROR,
|
||||
/* 0xA */ CARD_STAT_WRONG_DEVICE = 10,
|
||||
/* 0xC */ CARD_STAT_IOERROR = 12,
|
||||
};
|
||||
|
||||
mDoMemCd_Ctrl_c();
|
||||
@@ -81,7 +81,9 @@ public:
|
||||
/* 0x1658 */ u8 mCardSlot;
|
||||
/* 0x1659 */ u8 mCopyToPos;
|
||||
/* 0x165A */ u8 mProbeStat;
|
||||
#if VERSION == VERSION_PAL
|
||||
/* 0x165B */ u8 field_0x165B;
|
||||
#endif
|
||||
/* 0x165C */ s32 mCommand;
|
||||
/* 0x1660 */ s32 field_0x1660;
|
||||
/* 0x1664 */ OSMutex mMutex;
|
||||
|
||||
@@ -79,14 +79,14 @@ MyScreen::~MyScreen() {
|
||||
}
|
||||
|
||||
/* 8017DF04-8017E010 .text setErrMessage__13dFile_error_cFUli */
|
||||
void dFile_error_c::setErrMessage(u32 stringId, int param_2) {
|
||||
void dFile_error_c::setErrMessage(u32 msgNo, int param_2) {
|
||||
m2fa = (u8) param_2;
|
||||
|
||||
char message_buffer[512];
|
||||
|
||||
initial();
|
||||
|
||||
fopMsgM_messageGet(message_buffer, stringId);
|
||||
fopMsgM_messageGet(message_buffer, msgNo);
|
||||
int line_count = getLineCount(message_buffer);
|
||||
if (line_count + 2 < VERSION_SELECT(9, 9, 12, 12)) {
|
||||
resizeMsgBoard(line_count + 2);
|
||||
|
||||
+96
-75
@@ -86,6 +86,25 @@ dFs_HIO_c::dFs_HIO_c() {
|
||||
field_0x4C = 0x64;
|
||||
field_0x54 = 1.25f;
|
||||
field_0x58 = 12.0f;
|
||||
#if VERSION == VERSION_PAL
|
||||
field_0x5c = 7;
|
||||
field_0x5d = 0xA0;
|
||||
field_0x5e = 0x50;
|
||||
field_0x5f = 0xE;
|
||||
field_0x60 = 0;
|
||||
field_0x62 = 1;
|
||||
field_0x64 = 1;
|
||||
field_0x66 = 0;
|
||||
field_0x68 = 0;
|
||||
field_0x6a = 0;
|
||||
field_0x6c = 0;
|
||||
field_0x6e = -1;
|
||||
field_0x70 = -1;
|
||||
field_0x72 = 0;
|
||||
field_0x74 = 0;
|
||||
field_0x76 = 0;
|
||||
field_0x78 = 0xA;
|
||||
#endif
|
||||
}
|
||||
|
||||
/* 8017FA20-8017FCC0 .text _create__14dFile_select_cFv */
|
||||
@@ -96,7 +115,7 @@ void dFile_select_c::_create() {
|
||||
JUT_ASSERT(VERSION_SELECT(302, 302, 361, 361), stick != NULL);
|
||||
stick2 = new STControl(3, 1, 3, 2);
|
||||
JUT_ASSERT(VERSION_SELECT(305, 305, 364, 364), stick2 != NULL);
|
||||
fileSel.Scr->set("file_select.blo", (JKRArchive*)field_0x0);
|
||||
fileSel.Scr->set("file_select.blo", archive);
|
||||
fileSel.font = mDoExt_getMesgFont();
|
||||
JUT_ASSERT(VERSION_SELECT(311, 311, 370, 370), fileSel.font != NULL);
|
||||
g_fsHIO.mNo = mDoHIO_createChild("ファイルセレクト画面", &g_fsHIO);
|
||||
@@ -104,13 +123,13 @@ void dFile_select_c::_create() {
|
||||
mSavePicDataPtr = NULL;
|
||||
|
||||
for(int i = 0; i < 3; i++) {
|
||||
field_0x3914[i] = 0;
|
||||
dataNew[i] = 0;
|
||||
field_0x3917[i] = 0;
|
||||
saveStatus[i] = 0;
|
||||
dataExtra[i] = 0;
|
||||
field_0x391D[i] = 0;
|
||||
}
|
||||
|
||||
saveSlot = 0;
|
||||
selectNum = 0;
|
||||
screenSet();
|
||||
displayInit();
|
||||
paneTransInit();
|
||||
@@ -122,9 +141,11 @@ void dFile_select_c::initial() {
|
||||
paneTransInit();
|
||||
}
|
||||
|
||||
#if VERSION == VERSION_DEMO
|
||||
void dFile_select_c::_deleteSp() {
|
||||
mDoHIO_deleteChild(g_fsHIO.mNo);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* 8017FCF4-8017FD6C .text _delete__14dFile_select_cFv */
|
||||
void dFile_select_c::_delete() {
|
||||
@@ -184,14 +205,14 @@ void dFile_select_c::_move() {
|
||||
(this->*DataSelProc[field_0x392b])();
|
||||
#else
|
||||
#if VERSION <= VERSION_JPN
|
||||
if(g_mDoMemCd_control.mProbeStat == 1 && field_0x3941 == 0)
|
||||
if(mDoMemCd_getProbeStat() == 1 && field_0x3941 == 0)
|
||||
#else
|
||||
if((g_mDoMemCd_control.mProbeStat == 0 || g_mDoMemCd_control.mProbeStat == 1) && field_0x3941 == 0)
|
||||
if((mDoMemCd_getProbeStat() == 0 || mDoMemCd_getProbeStat() == 1) && field_0x3941 == 0)
|
||||
#endif
|
||||
{
|
||||
field_0x392e = 1;
|
||||
field_0x3930 = 0;
|
||||
field_0x392c = 2;
|
||||
selectEnd = 2;
|
||||
mIconMode = 3;
|
||||
field_0x392a = 7;
|
||||
field_0x392b = 0x26;
|
||||
@@ -200,7 +221,7 @@ void dFile_select_c::_move() {
|
||||
(this->*DataSelProc[field_0x392b])();
|
||||
}
|
||||
|
||||
g_mDoMemCd_control.mProbeStat = 2;
|
||||
mDoMemCd_clearProbeStat();
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -247,7 +268,7 @@ bool dFile_select_c::_close() {
|
||||
#endif
|
||||
}
|
||||
else {
|
||||
if(field_0x392c == 3) {
|
||||
if(selectEnd == 3) {
|
||||
result = closeBack();
|
||||
}
|
||||
else {
|
||||
@@ -264,7 +285,7 @@ bool dFile_select_c::_close() {
|
||||
int dFile_select_c::closeEnd() {
|
||||
int temp1 = PaneTranceTitle(field_0x3930, g_fsHIO.field_0x08, 0.0f, g_fsHIO.field_0x48, 0, 1);
|
||||
int temp2, temp3;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp2 = PaneTranceRecTlt1(field_0x3930, g_fsHIO.field_0x0C, 0.0f, 0.0f, -(float)g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
temp3 = PaneTranceRecInfo1(field_0x3930, g_fsHIO.field_0x11, 0.0f, 0.0f, -(float)g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
@@ -293,7 +314,7 @@ int dFile_select_c::closeEnd() {
|
||||
int dFile_select_c::closeCardErr() {
|
||||
int temp1 = PaneTranceTitle(field_0x3930, g_fsHIO.field_0x08, 0.0f, g_fsHIO.field_0x48, 0, 1);
|
||||
int temp2, temp3;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp2 = PaneTranceRecTlt1(field_0x3930, g_fsHIO.field_0x0C, 0.0f, 0.0f, -(float)g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
temp3 = PaneTranceRecInfo1(field_0x3930, g_fsHIO.field_0x11, 0.0f, 0.0f, -(float)g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
@@ -340,7 +361,7 @@ int dFile_select_c::closeErrErase() {
|
||||
int temp1 = PaneTranceTitle(field_0x3930, g_fsHIO.field_0x08, 0.0f, g_fsHIO.field_0x48, 0, 1);
|
||||
int temp4 = MessagePaneMove(0.0f, 0.0f, g_fsHIO.field_0x44, 0.0f, g_fsHIO.field_0x31, 0, 1);
|
||||
int temp2, temp3;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp2 = PaneTranceRecTlt1(field_0x3930, g_fsHIO.field_0x0C, 0.0f, 0.0f, -(float)g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
temp3 = PaneTranceRecInfo1(field_0x3930, g_fsHIO.field_0x11, 0.0f, 0.0f, -(float)g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
@@ -426,7 +447,7 @@ void dFile_select_c::dataSelect() {
|
||||
mDoAud_seStart(JA_SE_MSEL_OK_1);
|
||||
mIconMode = 4;
|
||||
field_0x2fc0[0].pane->hide();
|
||||
if(field_0x3917[saveSlot]) {
|
||||
if(field_0x3917[selectNum]) {
|
||||
fopMsgM_messageGet(field_0x38e8[field_0x392d ^ 1], 0x1C);
|
||||
}
|
||||
menuColorChange();
|
||||
@@ -434,9 +455,9 @@ void dFile_select_c::dataSelect() {
|
||||
field_0x392b = 0x2;
|
||||
}
|
||||
else if(stick2->checkUpTrigger()) {
|
||||
if(saveSlot != 0) {
|
||||
if(selectNum != 0) {
|
||||
mDoAud_seStart(JA_SE_MSEL_CURSOR);
|
||||
saveSlot--;
|
||||
selectNum--;
|
||||
field_0x3948 = 0.0f;
|
||||
field_0x3923 = 0xFF;
|
||||
field_0x3930 = 0;
|
||||
@@ -445,9 +466,9 @@ void dFile_select_c::dataSelect() {
|
||||
}
|
||||
}
|
||||
else if(stick2->checkDownTrigger()) {
|
||||
if(saveSlot != 2) {
|
||||
if(selectNum != 2) {
|
||||
mDoAud_seStart(JA_SE_MSEL_CURSOR);
|
||||
saveSlot++;
|
||||
selectNum++;
|
||||
field_0x3948 = 0.0f;
|
||||
field_0x3923 = 0x1;
|
||||
field_0x3930 = 0;
|
||||
@@ -462,7 +483,7 @@ void dFile_select_c::dataSelect() {
|
||||
/* 80181810-80181B7C .text menuColorChange__14dFile_select_cFv */
|
||||
void dFile_select_c::menuColorChange() {
|
||||
#if VERSION > VERSION_DEMO
|
||||
if(field_0x3914[saveSlot])
|
||||
if(dataNew[selectNum])
|
||||
#endif
|
||||
{
|
||||
((J2DPicture*)field_0x3618.pane)->setBlackWhite(JUtility::TColor(0x5A, 0x5A, 0x5A, field_0x38c0[0].a), JUtility::TColor(0xC8, 0xC8, 0xC8, field_0x38c8[0].a));
|
||||
@@ -485,7 +506,7 @@ void dFile_select_c::SelectTitAnime() {
|
||||
float temp1 = fopMsgM_valueIncrease(g_fsHIO.field_0x4F, field_0x3930, 5);
|
||||
field_0x3948 = g_fsHIO.field_0x4E * temp1 * field_0x3923;
|
||||
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
fopMsgM_paneTrans(field_0x1238, 0.0f, field_0x3948);
|
||||
if(field_0x10e8[0].pane->isVisible()) {
|
||||
@@ -512,7 +533,7 @@ void dFile_select_c::SelectTitAnime() {
|
||||
break;
|
||||
}
|
||||
|
||||
fopMsgM_paneTrans(field_0x2fc0, 0.0f, saveSlot * 85.0f + field_0x3948);
|
||||
fopMsgM_paneTrans(field_0x2fc0, 0.0f, selectNum * 85.0f + field_0x3948);
|
||||
field_0x3930++;
|
||||
if(field_0x3930 > g_fsHIO.field_0x4F) {
|
||||
field_0x3930 = 0;
|
||||
@@ -527,7 +548,7 @@ void dFile_select_c::SelectTitAnime() {
|
||||
|
||||
/* 80181D7C-80181DCC .text recCursorMove__14dFile_select_cFv */
|
||||
void dFile_select_c::recCursorMove() {
|
||||
fopMsgM_paneTrans(field_0x2fc0, 0.0f, saveSlot * 85.0f);
|
||||
fopMsgM_paneTrans(field_0x2fc0, 0.0f, selectNum * 85.0f);
|
||||
}
|
||||
|
||||
/* 80181DCC-80181E9C .text recCursorAnime__14dFile_select_cFv */
|
||||
@@ -561,7 +582,7 @@ void dFile_select_c::recCursorAlphaInit() {
|
||||
/* 80181ED0-80182490 .text recDataPaneMove__14dFile_select_cFv */
|
||||
int dFile_select_c::recDataPaneMove() {
|
||||
int temp1, temp2, temp3, temp4, temp5, temp6;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp1 = PaneTranceRecTlt2(field_0x3930 - g_fsHIO.field_0x29, g_fsHIO.field_0x28, 0.0f, 0.0f, g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
temp2 = PaneTranceRecInfo2(field_0x3930 - g_fsHIO.field_0x29, g_fsHIO.field_0x28, 0.0f, 0.0f, g_fsHIO.field_0x40, 0.0f, 0, 1);
|
||||
@@ -604,16 +625,16 @@ int dFile_select_c::recDataPaneMove() {
|
||||
/* 80182490-801824DC .text dataSelMoveSet__14dFile_select_cFv */
|
||||
void dFile_select_c::dataSelMoveSet() {
|
||||
field_0x3930 = 0;
|
||||
if(field_0x3917[saveSlot]) {
|
||||
if(field_0x3917[selectNum]) {
|
||||
fopMsgM_messageGet(field_0x38e8[2], 0x23);
|
||||
}
|
||||
else {
|
||||
makeRecInfo(saveSlot);
|
||||
makeRecInfo(selectNum);
|
||||
}
|
||||
}
|
||||
|
||||
/* 801824DC-801827A0 .text makeRecInfo__14dFile_select_cFUc */
|
||||
void dFile_select_c::makeRecInfo(u8 param_1) {
|
||||
void dFile_select_c::makeRecInfo(u8 i_dataNo) {
|
||||
static const char* amariheartTex[] = {
|
||||
"heart_03.bti",
|
||||
"heart_02.bti",
|
||||
@@ -622,7 +643,7 @@ void dFile_select_c::makeRecInfo(u8 param_1) {
|
||||
|
||||
int i;
|
||||
|
||||
u8* saveData = &mSaveDataPtr[param_1 * sizeof(card_gamedata)];
|
||||
u8* saveData = &mSaveDataPtr[i_dataNo * sizeof(card_gamedata)];
|
||||
|
||||
u16 curHealth = *(u16*)(saveData + 2);
|
||||
|
||||
@@ -718,7 +739,7 @@ void dFile_select_c::dataSelectPaneMove() {
|
||||
temp4 = 1;
|
||||
temp1 = recDataPaneMove();
|
||||
temp5 = 0;
|
||||
if(field_0x3917[saveSlot]) {
|
||||
if(field_0x3917[selectNum]) {
|
||||
temp2 = MessagePaneMove(g_fsHIO.field_0x44, 0.0f, 0.0f, 0.0f, g_fsHIO.field_0x30 + field_0x3920, 1, 0);
|
||||
temp3 = yesNoPaneMove(g_fsHIO.field_0x42, 0.0f, g_fsHIO.field_0x38 + field_0x3920, 1, 0);
|
||||
temp4 = PaneAlphaTitleTxt(field_0x3930 - g_fsHIO.field_0x29, g_fsHIO.field_0x09);
|
||||
@@ -738,7 +759,7 @@ void dFile_select_c::dataSelectPaneMove() {
|
||||
menuCursorAlphaInit();
|
||||
field_0x30d8.pane->show();
|
||||
|
||||
if(field_0x3917[saveSlot]) {
|
||||
if(field_0x3917[selectNum]) {
|
||||
field_0x3928 = 1;
|
||||
yesNoCursorMove();
|
||||
field_0x3930 = 0;
|
||||
@@ -770,11 +791,11 @@ void dFile_select_c::menuSelect() {
|
||||
stick->checkTrigger();
|
||||
if(CPad_CHECK_TRIG_A(0)) {
|
||||
if(field_0x3928 == 0) {
|
||||
if(field_0x3914[saveSlot]) {
|
||||
if(dataNew[selectNum]) {
|
||||
mDoAud_seStart(JA_SE_MSEL_OK_1);
|
||||
}
|
||||
else if(saveStatus[saveSlot]) {
|
||||
if(field_0x391D[saveSlot]) {
|
||||
else if(dataExtra[selectNum]) {
|
||||
if(field_0x391D[selectNum]) {
|
||||
mDoAud_seStart(JA_SE_MSEL_OK_1);
|
||||
}
|
||||
else {
|
||||
@@ -786,15 +807,15 @@ void dFile_select_c::menuSelect() {
|
||||
}
|
||||
field_0x3930 = 0;
|
||||
field_0x30d8.pane->hide();
|
||||
field_0x392c = 1;
|
||||
g_dComIfG_gameInfo.save.setDataNum(saveSlot);
|
||||
selectEnd = 1;
|
||||
g_dComIfG_gameInfo.save.setDataNum(selectNum);
|
||||
field_0x392b = 0x26;
|
||||
}
|
||||
else if(field_0x3928 == 1) {
|
||||
mDoAud_seStart(JA_SE_MSEL_OK_1);
|
||||
field_0x3930 = 0;
|
||||
field_0x30d8.pane->hide();
|
||||
field_0x3924 = saveSlot;
|
||||
field_0x3924 = selectNum;
|
||||
saveCopyBWColor();
|
||||
field_0x3944 = 85.0f;
|
||||
fopMsgM_messageGet(field_0x38e8[field_0x392d ^ 1], 0x1F);
|
||||
@@ -834,7 +855,7 @@ void dFile_select_c::menuSelect() {
|
||||
field_0x3928++;
|
||||
if(
|
||||
#if VERSION > VERSION_DEMO
|
||||
field_0x3914[saveSlot] &&
|
||||
dataNew[selectNum] &&
|
||||
#endif
|
||||
(field_0x3928 == 1 || field_0x3928 == 2)
|
||||
) {
|
||||
@@ -851,7 +872,7 @@ void dFile_select_c::menuSelect() {
|
||||
field_0x3928--;
|
||||
if(
|
||||
#if VERSION > VERSION_DEMO
|
||||
field_0x3914[saveSlot] &&
|
||||
dataNew[selectNum] &&
|
||||
#endif
|
||||
(field_0x3928 == 1 || field_0x3928 == 2)
|
||||
) {
|
||||
@@ -1724,7 +1745,7 @@ void dFile_select_c::yesNoCursorMove() {
|
||||
void dFile_select_c::CmdExecPaneMove0() {
|
||||
u8 temp;
|
||||
if(field_0x392a == 4) {
|
||||
temp = saveSlot;
|
||||
temp = selectNum;
|
||||
}
|
||||
else if(field_0x392a == 3) {
|
||||
temp = field_0x3926;
|
||||
@@ -1786,8 +1807,8 @@ void dFile_select_c::CmdExecPaneMove2() {
|
||||
/* 80187ADC-80187BF8 .text CommandExec__14dFile_select_cFv */
|
||||
void dFile_select_c::CommandExec() {
|
||||
if(field_0x392a == 4) {
|
||||
dComIfGs_setInitDataToCard(mSaveDataPtr, saveSlot);
|
||||
mDoMemCdRWm_SetCheckSumGameData(mSaveDataPtr, saveSlot);
|
||||
dComIfGs_setInitDataToCard(mSaveDataPtr, selectNum);
|
||||
mDoMemCdRWm_SetCheckSumGameData(mSaveDataPtr, selectNum);
|
||||
mDoMemCd_setPictWriteDataPtr(mSavePicDataPtr);
|
||||
mDoMemCd_setCopyToPos(0xFF);
|
||||
mDoMemCd_Save(mSaveDataPtr, 0x1650, 0);
|
||||
@@ -1865,7 +1886,7 @@ void dFile_select_c::DataCopyWait() {
|
||||
/* 80187DF0-80187FCC .text ErasePaneMoveOk__14dFile_select_cFv */
|
||||
void dFile_select_c::ErasePaneMoveOk() {
|
||||
int temp1;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp1 = PaneTranceRecInfo1(field_0x3930 - g_fsHIO.field_0x3A, g_fsHIO.field_0x11, 0.0f, 0.0f, 0.0f, g_fsHIO.field_0x3E, g_fsHIO.field_0x07, 1);
|
||||
|
||||
@@ -1893,7 +1914,7 @@ void dFile_select_c::ErasePaneMoveOk() {
|
||||
/* 80187FCC-801881A8 .text ErasePaneMoveOk2__14dFile_select_cFv */
|
||||
void dFile_select_c::ErasePaneMoveOk2() {
|
||||
int temp1;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp1 = PaneTranceRecInfo1(field_0x3930 - g_fsHIO.field_0x3B, g_fsHIO.field_0x11, g_fsHIO.field_0x3C, 0.0f, 0.0f, 0.0f, g_fsHIO.field_0x07, 0);
|
||||
|
||||
@@ -1924,15 +1945,15 @@ void dFile_select_c::ErrorMsgPaneMove() {
|
||||
if(temp1 == 1 && temp2 == 1) {
|
||||
field_0x392d ^= 1;
|
||||
|
||||
int id;
|
||||
int msgNo;
|
||||
if(field_0x392a == 4) {
|
||||
id = 0x26;
|
||||
msgNo = 0x26;
|
||||
}
|
||||
else if(field_0x392a == 3) {
|
||||
id = 0x27;
|
||||
msgNo = 0x27;
|
||||
}
|
||||
|
||||
fopMsgM_messageGet(field_0x38e8[2], id);
|
||||
fopMsgM_messageGet(field_0x38e8[2], msgNo);
|
||||
MessagePaneMoveSet(g_fsHIO.field_0x44, field_0x3944, 0.0f, field_0x3944, 1, 0);
|
||||
field_0x3930 = 0;
|
||||
field_0x392b = 0x16;
|
||||
@@ -2009,7 +2030,7 @@ void dFile_select_c::backDatSelWait2() {
|
||||
if(CPad_CHECK_TRIG_A(0) || CPad_CHECK_TRIG_B(0) || CPad_CHECK_TRIG_X(0) || CPad_CHECK_TRIG_Y(0) || CPad_CHECK_TRIG_L(0) || CPad_CHECK_TRIG_R(0) || CPad_CHECK_TRIG_Z(0) || CPad_CHECK_TRIG_START(0) || field_0x3932 == 0) {
|
||||
field_0x392e = 1;
|
||||
field_0x3930 = 0;
|
||||
field_0x392c = 2;
|
||||
selectEnd = 2;
|
||||
mIconMode = 3;
|
||||
field_0x392b = 0x26;
|
||||
}
|
||||
@@ -2018,7 +2039,7 @@ void dFile_select_c::backDatSelWait2() {
|
||||
/* 80188704-80188C70 .text DataSelectPaneBackMove__14dFile_select_cFsss */
|
||||
int dFile_select_c::DataSelectPaneBackMove(s16 param_1, s16 param_2, s16 param_3) {
|
||||
int temp1, temp2, temp3, temp4, temp5, temp6;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp1 = 1;
|
||||
temp2 = 1;
|
||||
@@ -3027,7 +3048,7 @@ void dFile_select_c::displayInit() {
|
||||
#endif
|
||||
mIconMode = 6;
|
||||
field_0x392d = 0;
|
||||
field_0x392c = 0;
|
||||
selectEnd = 0;
|
||||
field_0x392e = 0;
|
||||
field_0x38e8[2][0] = 0;
|
||||
field_0x3932 = g_fsHIO.field_0x4A;
|
||||
@@ -3079,11 +3100,11 @@ void dFile_select_c::setSaveData() {
|
||||
fopMsgM_paneTrans(pane[i], 0.0f, 0.0f);
|
||||
if(mDoMemCdRWm_TestCheckSumGameData(data)) {
|
||||
if(data[0x19B]) {
|
||||
saveStatus[i] = 1;
|
||||
dataExtra[i] = 1;
|
||||
field_0x391D[i] = ((data[0x64D] / 16) & 1) ^ 1;
|
||||
}
|
||||
else {
|
||||
saveStatus[i] = 0;
|
||||
dataExtra[i] = 0;
|
||||
field_0x391D[i] = 0;
|
||||
}
|
||||
|
||||
@@ -3110,7 +3131,7 @@ void dFile_select_c::setSaveData() {
|
||||
|
||||
strcpy(field_0x3900[i], "");
|
||||
|
||||
field_0x3914[i] = 1;
|
||||
dataNew[i] = 1;
|
||||
}
|
||||
else {
|
||||
strcpy(field_0x38f4[i], (char*)(&data[0x157]));
|
||||
@@ -3127,7 +3148,7 @@ void dFile_select_c::setSaveData() {
|
||||
#endif
|
||||
time.hours, time.minutes, time.seconds
|
||||
);
|
||||
field_0x3914[i] = 0;
|
||||
dataNew[i] = 0;
|
||||
}
|
||||
|
||||
field_0x3917[i] = 0;
|
||||
@@ -3157,7 +3178,7 @@ void dFile_select_c::setSaveData() {
|
||||
#endif
|
||||
strcpy(field_0x3900[i], "");
|
||||
field_0x3917[i] = 1;
|
||||
field_0x3914[i] = 0;
|
||||
dataNew[i] = 0;
|
||||
}
|
||||
|
||||
data += 0x770;
|
||||
@@ -3192,11 +3213,11 @@ void dFile_select_c::setSaveData() {
|
||||
fopMsgM_paneTrans(pane, 0.0f, 0.0f);
|
||||
if(mDoMemCdRWm_TestCheckSumGameData(data)) {
|
||||
if(data[0x19B]) {
|
||||
saveStatus[i] = 1;
|
||||
dataExtra[i] = 1;
|
||||
field_0x391D[i] = ((data[0x64D] / 16) & 1) ^ 1;
|
||||
}
|
||||
else {
|
||||
saveStatus[i] = 0;
|
||||
dataExtra[i] = 0;
|
||||
field_0x391D[i] = 0;
|
||||
}
|
||||
|
||||
@@ -3223,7 +3244,7 @@ void dFile_select_c::setSaveData() {
|
||||
|
||||
strcpy(field_0x3900[i], "");
|
||||
|
||||
field_0x3914[i] = 1;
|
||||
dataNew[i] = 1;
|
||||
}
|
||||
else {
|
||||
strcpy(field_0x38f4[i], (char*)(&data[0x157]));
|
||||
@@ -3240,7 +3261,7 @@ void dFile_select_c::setSaveData() {
|
||||
#endif
|
||||
time.hours, time.minutes, time.seconds
|
||||
);
|
||||
field_0x3914[i] = 0;
|
||||
dataNew[i] = 0;
|
||||
}
|
||||
|
||||
field_0x3917[i] = 0;
|
||||
@@ -3270,7 +3291,7 @@ void dFile_select_c::setSaveData() {
|
||||
#endif
|
||||
strcpy(field_0x3900[i], "");
|
||||
field_0x3917[i] = 1;
|
||||
field_0x3914[i] = 0;
|
||||
dataNew[i] = 0;
|
||||
}
|
||||
|
||||
data += 0x770;
|
||||
@@ -3296,7 +3317,7 @@ void dFile_select_c::changeExtraColor(int param_1) {
|
||||
field_0x11c8,
|
||||
};
|
||||
|
||||
if(saveStatus[param_1] == 1) {
|
||||
if(dataExtra[param_1] == 1) {
|
||||
for(int i = 2; i < 7; i++) {
|
||||
((J2DPicture*)pane0[param_1][i].pane)->setBlackWhite(JUtility::TColor(0x6E, 0x50, 0, 0), JUtility::TColor(0x96, 0x78, 0, 0xFF));
|
||||
((J2DPicture*)pane0[param_1][i + 5].pane)->setBlackWhite(JUtility::TColor(0xDC, 0xA0, 0, 0), JUtility::TColor(0xFF, 0xB4, 0x0F, 0xFF));
|
||||
@@ -3354,7 +3375,7 @@ void dFile_select_c::changeExtraColor(int param_1) {
|
||||
|
||||
((J2DPicture*)pane0[1].pane)->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0xDC, 0xFF, 0x64, 0xFF));
|
||||
|
||||
if(saveStatus[param_1] == 1) {
|
||||
if(dataExtra[param_1] == 1) {
|
||||
for(int i = 2; i < 7; i++) {
|
||||
((J2DPicture*)pane0[i].pane)->setBlackWhite(JUtility::TColor(0x6E, 0x50, 0, 0), JUtility::TColor(0x96, 0x78, 0, 0xFF));
|
||||
((J2DPicture*)pane0[i + 5].pane)->setBlackWhite(JUtility::TColor(0xDC, 0xA0, 0, 0), JUtility::TColor(0xFF, 0xB4, 0x0F, 0xFF));
|
||||
@@ -3490,14 +3511,14 @@ void dFile_select_c::dataSelectEx() {
|
||||
field_0x2fc0[0].pane->hide();
|
||||
field_0x3930 = 0;
|
||||
field_0x392e = 0;
|
||||
field_0x392c = 3;
|
||||
selectEnd = 3;
|
||||
mIconMode = 3;
|
||||
field_0x392b = 0x26;
|
||||
}
|
||||
else if(stick2->checkUpTrigger()) {
|
||||
if(saveSlot != 0) {
|
||||
if(selectNum != 0) {
|
||||
mDoAud_seStart(JA_SE_MSEL_CURSOR);
|
||||
saveSlot--;
|
||||
selectNum--;
|
||||
field_0x3948 = 0.0f;
|
||||
field_0x3923 = 0xFF;
|
||||
field_0x3930 = 0;
|
||||
@@ -3506,9 +3527,9 @@ void dFile_select_c::dataSelectEx() {
|
||||
}
|
||||
}
|
||||
else if(stick2->checkDownTrigger()) {
|
||||
if(saveSlot != 2) {
|
||||
if(selectNum != 2) {
|
||||
mDoAud_seStart(JA_SE_MSEL_CURSOR);
|
||||
saveSlot++;
|
||||
selectNum++;
|
||||
field_0x3948 = 0.0f;
|
||||
field_0x3923 = 0x1;
|
||||
field_0x3930 = 0;
|
||||
@@ -3524,7 +3545,7 @@ void dFile_select_c::dataSelectEx() {
|
||||
void dFile_select_c::ExSavePaneMove() {
|
||||
int temp1 = recDataPaneMove();
|
||||
int temp2;
|
||||
if(field_0x3917[saveSlot]) {
|
||||
if(field_0x3917[selectNum]) {
|
||||
temp2 = MessagePaneMove(g_fsHIO.field_0x44, 0.0f, 0.0f, 0.0f, g_fsHIO.field_0x30 + field_0x3920, 1, 0);
|
||||
}
|
||||
else {
|
||||
@@ -3554,9 +3575,9 @@ void dFile_select_c::YesNoSelectEx() {
|
||||
int result = ExCardCheck();
|
||||
if(result) {
|
||||
field_0x392e = 1;
|
||||
field_0x392f = result;
|
||||
errType = result;
|
||||
field_0x392a = 6;
|
||||
field_0x392c = 2;
|
||||
selectEnd = 2;
|
||||
mIconMode = 3;
|
||||
field_0x392b = 0x26;
|
||||
}
|
||||
@@ -3604,7 +3625,7 @@ void dFile_select_c::YesNoSelectEx() {
|
||||
/* 8018D0CC-8018D2F4 .text ExSavePaneMove0__14dFile_select_cFv */
|
||||
void dFile_select_c::ExSavePaneMove0() {
|
||||
int temp1;
|
||||
if(field_0x3917[saveSlot]) {
|
||||
if(field_0x3917[selectNum]) {
|
||||
temp1 = MessagePaneMove(0.0f, field_0x3944, g_fsHIO.field_0x46, field_0x3944, g_fsHIO.field_0x31, 0, 1);
|
||||
}
|
||||
else {
|
||||
@@ -3688,8 +3709,8 @@ void dFile_select_c::ExSavePaneMove1() {
|
||||
/* 8018D590-8018D654 .text ExDataSave__14dFile_select_cFv */
|
||||
void dFile_select_c::ExDataSave() {
|
||||
dComIfGs_reinit();
|
||||
dComIfGs_setMemoryToCard(mSaveDataPtr, saveSlot);
|
||||
mDoMemCdRWm_SetCheckSumGameData(mSaveDataPtr, saveSlot);
|
||||
dComIfGs_setMemoryToCard(mSaveDataPtr, selectNum);
|
||||
mDoMemCdRWm_SetCheckSumGameData(mSaveDataPtr, selectNum);
|
||||
|
||||
#if VERSION > VERSION_DEMO
|
||||
for(int i = 0; i < 3; i++) {
|
||||
@@ -3701,7 +3722,7 @@ void dFile_select_c::ExDataSave() {
|
||||
mDoMemCd_setCopyToPos(0xFF);
|
||||
mDoMemCd_setPictWriteDataPtr(mSavePicDataPtr);
|
||||
#else
|
||||
dComIfGs_setDataNum(saveSlot);
|
||||
dComIfGs_setDataNum(selectNum);
|
||||
mDoMemCd_setPictWriteDataPtr(NULL);
|
||||
#endif
|
||||
mDoMemCd_Save(mSaveDataPtr, 0x1650, 0);
|
||||
@@ -3736,7 +3757,7 @@ void dFile_select_c::ExDataSaveWait() {
|
||||
/* 8018D770-8018D9A0 .text ExDataSavePaneMoveOk__14dFile_select_cFv */
|
||||
void dFile_select_c::ExDataSavePaneMoveOk() {
|
||||
int temp1;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp1 = PaneTranceRecInfo1(field_0x3930 - g_fsHIO.field_0x3A, g_fsHIO.field_0x11, 0.0f, 0.0f, 0.0f, g_fsHIO.field_0x3E, g_fsHIO.field_0x07, 1);
|
||||
break;
|
||||
@@ -3763,7 +3784,7 @@ void dFile_select_c::ExDataSavePaneMoveOk() {
|
||||
/* 8018D9A0-8018DB74 .text ExDataSavePaneMoveOk2__14dFile_select_cFv */
|
||||
void dFile_select_c::ExDataSavePaneMoveOk2() {
|
||||
int temp1;
|
||||
switch(saveSlot) {
|
||||
switch(selectNum) {
|
||||
case 0:
|
||||
temp1 = PaneTranceRecInfo1(field_0x3930 - g_fsHIO.field_0x3B, g_fsHIO.field_0x11, g_fsHIO.field_0x3C, 0.0f, 0.0f, 0.0f, g_fsHIO.field_0x07, 0);
|
||||
break;
|
||||
@@ -3779,7 +3800,7 @@ void dFile_select_c::ExDataSavePaneMoveOk2() {
|
||||
field_0x3930++;
|
||||
|
||||
if(temp1 == 1 && temp2 == 1) {
|
||||
field_0x392c = 1;
|
||||
selectEnd = 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -142,8 +142,8 @@ BOOL dMenu_save_c::openNormal() {
|
||||
rt = openForGameover();
|
||||
break;
|
||||
case 3:
|
||||
if (field_0x53c != 0) {
|
||||
if (field_0x53d == 2) {
|
||||
if (errorFlag != 0) {
|
||||
if (errorType == 2) {
|
||||
rt = openForEnding2();
|
||||
} else {
|
||||
rt = TRUE;
|
||||
@@ -160,8 +160,8 @@ BOOL dMenu_save_c::openNormal() {
|
||||
field_0x394.pane->show();
|
||||
|
||||
if (useType == 3) {
|
||||
if (field_0x53c != 0) {
|
||||
if (field_0x53d == 2) {
|
||||
if (errorFlag != 0) {
|
||||
if (errorType == 2) {
|
||||
field_0x53a = 0;
|
||||
field_0x535 = 1;
|
||||
proc = PROC_CAN_NOT_SAVE;
|
||||
@@ -1648,8 +1648,8 @@ void dMenu_save_c::paneTransInit() {
|
||||
/* 801DA2C8-801DA3C4 .text displayInit__12dMenu_save_cFv */
|
||||
void dMenu_save_c::displayInit() {
|
||||
field_0x536 = 0;
|
||||
field_0x53c = 0;
|
||||
field_0x53d = 0;
|
||||
errorFlag = 0;
|
||||
errorType = 0;
|
||||
field_0x53b = 0;
|
||||
proc = PROC_SAVE_WAIT;
|
||||
saveStatus = 1;
|
||||
|
||||
+3
-1
@@ -115,12 +115,14 @@ void dName_c::_delete() {
|
||||
mDoExt_removeMesgFont();
|
||||
delete stick;
|
||||
archive->removeResourceAll();
|
||||
mDoHIO_deleteChild(g_nmHIO.id); // supposed to be _deleteSp?
|
||||
mDoHIO_deleteChild(g_nmHIO.id);
|
||||
}
|
||||
|
||||
#if VERSION == VERSION_DEMO
|
||||
void dName_c::_deleteSp() {
|
||||
mDoHIO_deleteChild(g_nmHIO.id);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* 80216248-80216268 .text _move__7dName_cFv */
|
||||
void dName_c::_move() {
|
||||
|
||||
+367
-58
@@ -19,6 +19,7 @@
|
||||
#include "f_op/f_op_overlap_mng.h"
|
||||
#include "f_op/f_op_scene_mng.h"
|
||||
#include "m_Do/m_Do_audio.h"
|
||||
#include "m_Do/m_Do_controller_pad.h"
|
||||
#include "m_Do/m_Do_dvd_thread.h"
|
||||
#include "m_Do/m_Do_graphic.h"
|
||||
#include "m_Do/m_Do_hostIO.h"
|
||||
@@ -100,17 +101,27 @@ cPhs_State resLoad(request_of_phase_process_class* phase, char* resName) {
|
||||
|
||||
/* 8022F9FC-802301C8 .text create__10dScnName_cFv */
|
||||
cPhs_State dScnName_c::create() {
|
||||
#if VERSION == VERSION_DEMO
|
||||
dComIfGp_setNextStage("Name", 0, -1);
|
||||
#else
|
||||
dComIfGp_offEnableNextStage();
|
||||
dComIfGp_setNextStage("Name", 0, 0);
|
||||
#endif
|
||||
dComIfGp_setStartStage(dComIfGp_getNextStartStage());
|
||||
dComIfGp_offEnableNextStage();
|
||||
|
||||
cPhs_State rt = resLoad(&mPhs, "Stage");
|
||||
if (rt == cPhs_COMPLEATE_e) {
|
||||
#if VERSION == VERSION_DEMO
|
||||
heap = mDoExt_createSolidHeapFromGameToCurrent(0x68000, 0);
|
||||
#else
|
||||
heap = JKRCreateExpHeap(0x68000, mDoExt_getGameHeap(), false);
|
||||
JUT_ASSERT(0x1c8, heap != NULL);
|
||||
#endif
|
||||
JUT_ASSERT(VERSION_SELECT(303, 305, 456, 459), heap != NULL);
|
||||
|
||||
#if VERSION > VERSION_DEMO
|
||||
oldHeap = mDoExt_setCurrentHeap(heap);
|
||||
#endif
|
||||
mArchive = new JKRMemArchive();
|
||||
mArchive->mountFixed(dComIfG_getStageRes("Stage", 0x17), JKRMEMBREAK_FLAG_UNKNOWN0);
|
||||
|
||||
@@ -118,48 +129,61 @@ cPhs_State dScnName_c::create() {
|
||||
buttonIconCreate();
|
||||
|
||||
dFs_c = new dFile_select_c();
|
||||
JUT_ASSERT(470, dFs_c != NULL);
|
||||
dFs_c->field_0x0 = mArchive;
|
||||
JUT_ASSERT(VERSION_SELECT(316, 319, 470, 473), dFs_c != NULL);
|
||||
dFs_c->archive = mArchive;
|
||||
savePicDatabuf = new (0x20) card_pictdata[3 * 3];
|
||||
JUT_ASSERT(476, savePicDatabuf != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(322, 325, 476, 483), savePicDatabuf != NULL);
|
||||
|
||||
if (fpcM_GetName(this) == fpcNm_NAME_SCENE_e) {
|
||||
dFs_c->setUseType(0);
|
||||
dNm_c = new dName_c();
|
||||
JUT_ASSERT(484, dNm_c != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(330, 333, 484, 491), dNm_c != NULL);
|
||||
dNm_c->_create();
|
||||
dFe_c = new dFile_error_c();
|
||||
JUT_ASSERT(489, dFe_c != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(335, 338, 489, 496), dFe_c != NULL);
|
||||
dFe_c->_create();
|
||||
#if VERSION > VERSION_DEMO
|
||||
dMs_c = NULL;
|
||||
#endif
|
||||
dComIfGs_setNewFile(0);
|
||||
dComIfGs_setNoFile(0);
|
||||
}
|
||||
|
||||
if (fpcM_GetName(this) == fpcNm_NAMEEX_SCENE_e) {
|
||||
#if VERSION > VERSION_DEMO
|
||||
dComIfGs_setClearCount(1);
|
||||
#endif
|
||||
dFs_c->setUseType(1);
|
||||
dMs_c = new dMenu_save_c();
|
||||
JUT_ASSERT(511, dMs_c != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(350, 360, 511, 518), dMs_c != NULL);
|
||||
dMs_c->setUseType(3);
|
||||
dMs_c->_create();
|
||||
dFe_c = NULL;
|
||||
#if VERSION > VERSION_DEMO
|
||||
dNm_c = NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
dFs_c->_create();
|
||||
|
||||
g_snHIO.mNo = mDoHIO_root.m_subroot.createChild("名前登録シーン", &g_snHIO);
|
||||
|
||||
#if VERSION == VERSION_DEMO
|
||||
mDoExt_restoreCurrentHeap();
|
||||
mDoExt_adjustSolidHeap(heap);
|
||||
#endif
|
||||
|
||||
dComIfGp_setWindowNum(1);
|
||||
dComIfGp_setWindow(0, 0.0f, 0.0f, mDoMch_render_c::getFbWidth(), mDoMch_render_c::getEfbHeight(), 0.0f, 1.0f, 0, 2);
|
||||
dComIfGp_setCamera(0, &mCamera);
|
||||
|
||||
dDlst_window_c* window = dComIfGp_getWindow(0);
|
||||
view_port_class* viewport = window->getViewPort();
|
||||
|
||||
fopCamM_SetNear(&mCamera, 5.0f);
|
||||
fopCamM_SetFar(&mCamera, 160000.0f);
|
||||
fopCamM_SetFovy(&mCamera, 60.0f);
|
||||
f32 aspect = dComIfGp_getWindow(0)->getViewPort()->mWidth / dComIfGp_getWindow(0)->getViewPort()->mHeight;
|
||||
fopCamM_SetAspect(&mCamera, aspect * fapGmHIO_getAspectRatio());
|
||||
fopCamM_SetAspect(&mCamera, fapGmHIO_getAspectRatio() * (viewport->mWidth / viewport->mHeight));
|
||||
fopCamM_SetEye(&mCamera, 9377.0f, 0.0f, 7644.0f);
|
||||
fopCamM_SetCenter(&mCamera, 0.0f, 6311.0f, 1000.0f);
|
||||
fopCamM_SetBank(&mCamera, 0);
|
||||
@@ -193,20 +217,51 @@ cPhs_State dScnName_c::create() {
|
||||
field_0x558 = g_snHIO.field_0x5;
|
||||
field_0x1bb8 = 0;
|
||||
|
||||
#if VERSION == VERSION_DEMO
|
||||
mMainProc = 0xE;
|
||||
mDrawProc = 4;
|
||||
#else
|
||||
if (fpcM_GetName(this) == fpcNm_NAME_SCENE_e) {
|
||||
mMainProc = 0;
|
||||
field_0x556 = 0;
|
||||
mMemCardCheckProc = 0;
|
||||
mDrawProc = 0;
|
||||
} else if (fpcM_GetName(this) == fpcNm_NAMEEX_SCENE_e) {
|
||||
mMainProc = 10;
|
||||
mDrawProc = 3;
|
||||
}
|
||||
#endif
|
||||
|
||||
JFWDisplay::getManager()->setTickRate(OS_TIMER_CLOCK / 30);
|
||||
}
|
||||
return rt;
|
||||
}
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::bmg_data_read_all() {
|
||||
/* Nonmatching */
|
||||
dComIfGp_getMsgDtArchive()->unmount();
|
||||
field_0x1c4 = mDoDvdThd_mountXArchive_c::create("/res/Msg/data0/bmgres.arc", 0, JKRArchive::MOUNT_MEM);
|
||||
field_0x1c8 = mDoDvdThd_mountXArchive_c::create("/res/Msg/data1/bmgres.arc", 0, JKRArchive::MOUNT_MEM);
|
||||
field_0x1cc = mDoDvdThd_mountXArchive_c::create("/res/Msg/data2/bmgres.arc", 0, JKRArchive::MOUNT_MEM);
|
||||
field_0x1d0 = mDoDvdThd_mountXArchive_c::create("/res/Msg/data3/bmgres.arc", 0, JKRArchive::MOUNT_MEM);
|
||||
field_0x1d4 = mDoDvdThd_mountXArchive_c::create("/res/Msg/data4/bmgres.arc", 0, JKRArchive::MOUNT_MEM);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::bmg_data_set() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::tex_data_set() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
#endif
|
||||
|
||||
/* 802301C8-802301FC .text cloth_create__10dScnName_cFv */
|
||||
void dScnName_c::cloth_create() {
|
||||
cloth2D_create();
|
||||
@@ -224,7 +279,7 @@ void dScnName_c::cloth_move() {
|
||||
void dScnName_c::cloth2D_create() {
|
||||
JKRArchive* clothRes = dComIfGp_getClothResArchive();
|
||||
cloth.cloth_c = new dMCloth_c();
|
||||
JUT_ASSERT(801, cloth.cloth_c != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(504, 517, 801, 805), cloth.cloth_c != NULL);
|
||||
cloth.cloth_c->setArchive(clothRes);
|
||||
cloth.cloth_c->setClothType(MENU_CLOTH_TYPE_FILE_SELECT);
|
||||
}
|
||||
@@ -239,7 +294,7 @@ static void dummy() {
|
||||
/* 802302F8-80230500 .text buttonIconCreate__10dScnName_cFv */
|
||||
void dScnName_c::buttonIconCreate() {
|
||||
btnIcon.scr = new J2DScreen();
|
||||
JUT_ASSERT(866, btnIcon.scr != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(569, 582, 866, 870), btnIcon.scr != NULL);
|
||||
btnIcon.scr->set("main_parts_fileselect.blo", mArchive);
|
||||
fopMsgM_setPaneData(&field_0x43c, btnIcon.scr->search('cent'));
|
||||
fopMsgM_setPaneData(&field_0x474, btnIcon.scr->search('bab'));
|
||||
@@ -251,6 +306,36 @@ void dScnName_c::buttonIconCreate() {
|
||||
field_0x1bb6 = 6;
|
||||
}
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::buttonIconTexChange(u8, u8) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::PaneAlphaLangTxt(s16, u8) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::languageTexChange() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::langTexChg() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
void dScnName_c::langTexChgFast() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
#endif
|
||||
|
||||
/* 80230500-802305E0 .text paneTransButtonIcon__10dScnName_cFsUcffUc */
|
||||
BOOL dScnName_c::paneTransButtonIcon(s16 param_1, u8 param_2, f32 param_3, f32 param_4, u8 param_5) {
|
||||
if (param_1 < 0) {
|
||||
@@ -332,9 +417,12 @@ BOOL dScnName_c::execute() {
|
||||
dComIfG_resetToOpening(this);
|
||||
}
|
||||
|
||||
#if VERSION > VERSION_DEMO
|
||||
if (mDoRst::isReset()) {
|
||||
return TRUE;
|
||||
}
|
||||
#endif
|
||||
|
||||
cloth_move();
|
||||
|
||||
if (dFe_c != NULL) {
|
||||
@@ -362,8 +450,10 @@ void dScnName_c::setView() {
|
||||
/* 80230714-802307EC .text draw__10dScnName_cFv */
|
||||
BOOL dScnName_c::draw() {
|
||||
setView();
|
||||
for (create_tag_class* pTag = fopDwIt_Begin(); pTag != NULL; pTag = fopDwIt_Next(pTag))
|
||||
fpcM_Draw(pTag->mpTagData);
|
||||
for (create_tag_class* pTag = fopDwIt_Begin(); pTag != NULL; pTag = fopDwIt_Next(pTag)) {
|
||||
void* process = pTag->mpTagData;
|
||||
fpcM_Draw(process);
|
||||
}
|
||||
if (field_0x55d && !g_snHIO.field_0xb) {
|
||||
dComIfGd_set2DOpa(&cloth);
|
||||
}
|
||||
@@ -374,6 +464,21 @@ BOOL dScnName_c::draw() {
|
||||
|
||||
/* 802307EC-80230A14 .text __dt__10dScnName_cFv */
|
||||
dScnName_c::~dScnName_c() {
|
||||
#if VERSION == VERSION_DEMO
|
||||
mArchive->unmountFixed();
|
||||
delete cloth.cloth_c;
|
||||
dNm_c->_deleteSp();
|
||||
dFs_c->_deleteSp();
|
||||
if (dFe_c) {
|
||||
dFe_c->_deleteSp();
|
||||
}
|
||||
s8 no = g_snHIO.mNo;
|
||||
mDoHIO_root.m_subroot.deleteChild(no);
|
||||
mDoExt_destroySolidHeap(heap);
|
||||
dComIfG_deleteStageRes("Stage");
|
||||
dComIfGp_setWindowNum(0);
|
||||
dComIfGs_setRestartOption(0);
|
||||
#else
|
||||
dFs_c->_delete();
|
||||
delete dFs_c;
|
||||
if (dNm_c) {
|
||||
@@ -392,42 +497,144 @@ dScnName_c::~dScnName_c() {
|
||||
delete btnIcon.scr;
|
||||
mArchive->unmountFixed();
|
||||
delete cloth.cloth_c;
|
||||
mDoHIO_root.m_subroot.deleteChild(g_snHIO.mNo);
|
||||
s8 no = g_snHIO.mNo;
|
||||
mDoHIO_root.m_subroot.deleteChild(no);
|
||||
JKRSetCurrentHeap(oldHeap);
|
||||
heap->destroy();
|
||||
dComIfG_deleteStageRes("Stage");
|
||||
dComIfGp_setWindowNum(0);
|
||||
dComIfGs_setRestartOption(0);
|
||||
#endif
|
||||
}
|
||||
|
||||
/* 80230A14-80230AD0 .text MemCardCheckMain__10dScnName_cFv */
|
||||
void dScnName_c::MemCardCheckMain() {
|
||||
/* Nonmatching */
|
||||
if (mDoMemCd_getProbeStat() == 0 || mDoMemCd_getProbeStat() == 1) {
|
||||
#if VERSION > VERSION_DEMO
|
||||
if (!mDoRst::isReset())
|
||||
#endif
|
||||
{
|
||||
if (field_0x1bb8 == 0 && dFe_c->getStatus() == 1) {
|
||||
dFe_c->closeMessage();
|
||||
field_0x55a = 0xFF;
|
||||
field_0x55b = 0;
|
||||
mMemCardCheckProc = 2;
|
||||
}
|
||||
mDoMemCd_clearProbeStat();
|
||||
}
|
||||
}
|
||||
(this->*MemCardCheckProc[mMemCardCheckProc])();
|
||||
}
|
||||
|
||||
/* 80230AD0-80230C78 .text MemCardStatCheck__10dScnName_cFv */
|
||||
void dScnName_c::MemCardStatCheck() {
|
||||
/* Nonmatching */
|
||||
if (field_0x558 > 0) {
|
||||
field_0x558--;
|
||||
return;
|
||||
}
|
||||
switch (mDoMemCd_getStatus(0)) {
|
||||
case mDoMemCd_Ctrl_c::CARD_STAT_WAIT:
|
||||
dFe_c->setErrMessage(9, 0);
|
||||
field_0x55b = 4;
|
||||
field_0x55a = 0x1A;
|
||||
mMemCardCheckProc = 2;
|
||||
break;
|
||||
case 8:
|
||||
dFe_c->setErrMessage(0xA, 0);
|
||||
field_0x55b = 4;
|
||||
field_0x55a = 0x1A;
|
||||
mMemCardCheckProc = 2;
|
||||
break;
|
||||
case 9:
|
||||
dFe_c->setErrMessage(0xB, 0);
|
||||
field_0x55b = 4;
|
||||
field_0x55a = 0x1A;
|
||||
mMemCardCheckProc = 2;
|
||||
break;
|
||||
case mDoMemCd_Ctrl_c::CARD_STAT_WRONG_DEVICE:
|
||||
dFe_c->setErrMessage(0xC, 0);
|
||||
field_0x55b = 4;
|
||||
field_0x55a = 0x1A;
|
||||
mMemCardCheckProc = 2;
|
||||
break;
|
||||
case mDoMemCd_Ctrl_c::CARD_STAT_ENCODING:
|
||||
case mDoMemCd_Ctrl_c::CARD_STAT_ERROR:
|
||||
dFe_c->setErrMessage(0x2D, 0);
|
||||
mMemCardCheckProc = 5;
|
||||
break;
|
||||
case 11:
|
||||
case mDoMemCd_Ctrl_c::CARD_STAT_IOERROR:
|
||||
dFe_c->setErrMessage(0xF, 0);
|
||||
mMemCardCheckProc = 3;
|
||||
field_0x55a = 0x60;
|
||||
field_0x55c = 0x61;
|
||||
field_0x55b = 0xD;
|
||||
break;
|
||||
case mDoMemCd_Ctrl_c::CARD_STAT_CREATE:
|
||||
mDoMemCd_setPictDataPtr((u8*)savePicDatabuf);
|
||||
mDoMemCd_Load();
|
||||
mMemCardCheckProc = 1;
|
||||
break;
|
||||
case mDoMemCd_Ctrl_c::CARD_STAT_RESTORE:
|
||||
dFe_c->setErrMessage(0x15, 0);
|
||||
mMemCardCheckProc = 9;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* 80230C78-80230D20 .text MemCardLoadWait__10dScnName_cFv */
|
||||
void dScnName_c::MemCardLoadWait() {
|
||||
/* Nonmatching */
|
||||
int rt = mDoMemCd_LoadSync(saveMemory, sizeof(saveMemory), 0);
|
||||
if (rt == 0)
|
||||
return;
|
||||
if (rt == 1) {
|
||||
dComIfGs_setMemCardCheckID(mDoMemCd_getCardSerialNo());
|
||||
#if VERSION > VERSION_JPN
|
||||
if (dComIfGs_getNoFile() != 0) {
|
||||
dComIfGs_setNoFile(0);
|
||||
}
|
||||
#endif
|
||||
mMainProc = 1;
|
||||
mDrawProc = 4;
|
||||
} else if (rt == 2) {
|
||||
mMemCardCheckProc = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* 80230D20-80230D74 .text MemCardErrMsgWaitKey__10dScnName_cFv */
|
||||
void dScnName_c::MemCardErrMsgWaitKey() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (field_0x55a != 0xFF) {
|
||||
dFe_c->setErrMessage(field_0x55a, 0);
|
||||
}
|
||||
mMemCardCheckProc = field_0x55b;
|
||||
}
|
||||
}
|
||||
|
||||
/* 80230D74-80230DE8 .text MemCardErrMsgWaitKey2__10dScnName_cFv */
|
||||
void dScnName_c::MemCardErrMsgWaitKey2() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (field_0x55a != 0xFF) {
|
||||
dFe_c->setErrMessage(field_0x55a, 0);
|
||||
field_0x55a = 0xFF;
|
||||
mMemCardCheckProc = 3;
|
||||
} else {
|
||||
dFe_c->setErrMessage(field_0x55c, 0);
|
||||
mMemCardCheckProc = field_0x55b;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80230DE8-80230E50 .text MemCardGotoIPLSelect__10dScnName_cFv */
|
||||
void dScnName_c::MemCardGotoIPLSelect() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (dFe_c->getYesNo() != 0) {
|
||||
mMemCardCheckProc = 0xE;
|
||||
} else {
|
||||
dFe_c->setErrMessage(0x1A, 0);
|
||||
mMemCardCheckProc = 4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80230E50-80230E7C .text MemCardGotoIPL__10dScnName_cFv */
|
||||
@@ -437,17 +644,53 @@ void dScnName_c::MemCardGotoIPL() {
|
||||
|
||||
/* 80230E7C-80230F4C .text MemCardErrMsgWaitNoSaveSel__10dScnName_cFv */
|
||||
void dScnName_c::MemCardErrMsgWaitNoSaveSel() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (dFe_c->getYesNo() != 0) {
|
||||
dComIfGs_setInitDataToCard(saveMemory, 0);
|
||||
mDoMemCdRWm_SetCheckSumGameData(saveMemory, 0);
|
||||
dComIfGs_setInitDataToCard(saveMemory, 1);
|
||||
mDoMemCdRWm_SetCheckSumGameData(saveMemory, 1);
|
||||
dComIfGs_setInitDataToCard(saveMemory, 2);
|
||||
mDoMemCdRWm_SetCheckSumGameData(saveMemory, 2);
|
||||
dComIfGs_setNoFile(1);
|
||||
mMainProc = 1;
|
||||
mDrawProc = 4;
|
||||
} else {
|
||||
mMemCardCheckProc = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80230F4C-80230FD0 .text MemCardErrMsgWaitFormatSel__10dScnName_cFv */
|
||||
void dScnName_c::MemCardErrMsgWaitFormatSel() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (dFe_c->getYesNo() != 0) {
|
||||
dFe_c->setErrMessage(0x11, 0);
|
||||
mMemCardCheckProc = 6;
|
||||
} else {
|
||||
dFe_c->setErrMessage(0x10, 0);
|
||||
field_0x55b = 4;
|
||||
field_0x55a = 0x1A;
|
||||
mMemCardCheckProc = 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80230FD0-8023106C .text MemCardErrMsgWaitFormatSel2__10dScnName_cFv */
|
||||
void dScnName_c::MemCardErrMsgWaitFormatSel2() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (dFe_c->getYesNo() != 0) {
|
||||
mDoMemCd_Format();
|
||||
dFe_c->setErrMessage(0x12, 1);
|
||||
mMemCardCheckProc = 7;
|
||||
field_0x1bb8 = 1;
|
||||
} else {
|
||||
dFe_c->setErrMessage(0x10, 0);
|
||||
field_0x55b = 4;
|
||||
field_0x55a = 0x1A;
|
||||
mMemCardCheckProc = 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 8023106C-802310C0 .text MemCardFormat__10dScnName_cFv */
|
||||
@@ -455,18 +698,51 @@ void dScnName_c::MemCardFormat() {
|
||||
field_0x1bbc = mDoMemCd_FormatSync();
|
||||
if (field_0x1bbc != 0) {
|
||||
dFe_c->closeMessage();
|
||||
field_0x556 = 8;
|
||||
mMemCardCheckProc = 8;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802310C0-8023117C .text MemCardFormatCheck__10dScnName_cFv */
|
||||
void dScnName_c::MemCardFormatCheck() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (field_0x1bbc == 2) {
|
||||
field_0x55a = 0xFF;
|
||||
field_0x55b = 0;
|
||||
dFe_c->setErrMessage(0x14, 0);
|
||||
mMemCardCheckProc = 2;
|
||||
} else if (field_0x1bbc == 1) {
|
||||
field_0x55a = 0xFF;
|
||||
field_0x55b = 0;
|
||||
dFe_c->setErrMessage(0x13, 0);
|
||||
dFe_c->setTimeCountDownMode();
|
||||
mMemCardCheckProc = 2;
|
||||
}
|
||||
field_0x1bb8 = 0;
|
||||
field_0x55a = 0xFF;
|
||||
}
|
||||
}
|
||||
|
||||
/* 8023117C-80231284 .text MemCardMakeGameFileSel__10dScnName_cFv */
|
||||
void dScnName_c::MemCardMakeGameFileSel() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (dFe_c->getYesNo() != 0) {
|
||||
dComIfGs_setInitDataToCard(saveMemory, 0);
|
||||
mDoMemCdRWm_SetCheckSumGameData(saveMemory, 0);
|
||||
dComIfGs_setInitDataToCard(saveMemory, 1);
|
||||
mDoMemCdRWm_SetCheckSumGameData(saveMemory, 1);
|
||||
dComIfGs_setInitDataToCard(saveMemory, 2);
|
||||
mDoMemCdRWm_SetCheckSumGameData(saveMemory, 2);
|
||||
mDoMemCd_Save(saveMemory, sizeof(saveMemory), 0);
|
||||
dFe_c->setErrMessage(0x17, 1);
|
||||
mMemCardCheckProc = 0xA;
|
||||
field_0x1bb8 = 1;
|
||||
} else {
|
||||
dFe_c->setErrMessage(0x16, 0);
|
||||
field_0x55b = 4;
|
||||
field_0x55a = 0x1A;
|
||||
mMemCardCheckProc = 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80231284-802312D8 .text MemCardMakeGameFile__10dScnName_cFv */
|
||||
@@ -474,13 +750,28 @@ void dScnName_c::MemCardMakeGameFile() {
|
||||
field_0x1bbc = mDoMemCd_SaveSync();
|
||||
if (field_0x1bbc != 0) {
|
||||
dFe_c->closeMessage();
|
||||
field_0x556 = 11;
|
||||
mMemCardCheckProc = 11;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802312D8-80231398 .text MemCardMakeGameFileCheck__10dScnName_cFv */
|
||||
void dScnName_c::MemCardMakeGameFileCheck() {
|
||||
/* Nonmatching */
|
||||
if (dFe_c->getStatus() == 2) {
|
||||
if (field_0x1bbc == 2) {
|
||||
field_0x55a = 0xFF;
|
||||
field_0x55b = 0;
|
||||
dFe_c->setErrMessage(0x18, 0);
|
||||
mMemCardCheckProc = 2;
|
||||
} else if (field_0x1bbc == 1) {
|
||||
dComIfGs_setNewFile(1);
|
||||
field_0x55a = 0xFF;
|
||||
field_0x55b = 0xC;
|
||||
dFe_c->setErrMessage(0x19, 0);
|
||||
mMemCardCheckProc = 2;
|
||||
}
|
||||
field_0x1bb8 = 0;
|
||||
field_0x55a = 0xFF;
|
||||
}
|
||||
}
|
||||
|
||||
/* 80231398-802313AC .text MemCardGotoFileSelect__10dScnName_cFv */
|
||||
@@ -494,6 +785,15 @@ void dScnName_c::MemCardCheckDbg() {}
|
||||
|
||||
/* 802313B0-80231428 .text MemCardCheckDbgWait__10dScnName_cFv */
|
||||
void dScnName_c::MemCardCheckDbgWait() {
|
||||
if (dFe_c->getStatus() == 0) {
|
||||
if (CPad_CHECK_TRIG_Y(0)) {
|
||||
dFe_c->initial();
|
||||
mMemCardCheckProc = 0xF;
|
||||
} else if (CPad_CHECK_TRIG_Z(0)) {
|
||||
mMainProc = 1;
|
||||
mDrawProc = 4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80231428-80231454 .text FileErrorDraw__10dScnName_cFv */
|
||||
@@ -533,14 +833,14 @@ void dScnName_c::NoteOpenWait() {
|
||||
}
|
||||
dFs_c->initial();
|
||||
mMainProc = 3;
|
||||
field_0x555 = 0;
|
||||
mOpenProc = 0;
|
||||
mDrawProc = 1;
|
||||
}
|
||||
}
|
||||
|
||||
/* 802315A8-802315E0 .text FileSelectOpen__10dScnName_cFv */
|
||||
void dScnName_c::FileSelectOpen() {
|
||||
(this->*(FileSelOpenProc[field_0x555]))();
|
||||
(this->*(FileSelOpenProc[mOpenProc]))();
|
||||
}
|
||||
|
||||
/* 802315E0-802319B4 .text buttonIconProc__10dScnName_cFv */
|
||||
@@ -666,28 +966,31 @@ void dScnName_c::FileSelectMain() {
|
||||
|
||||
/* 80231A8C-80231CB8 .text FileSelectMainNormal__10dScnName_cFv */
|
||||
void dScnName_c::FileSelectMainNormal() {
|
||||
/* Nonmatching */
|
||||
switch (dFs_c->field_0x392c) {
|
||||
switch (dFs_c->isSelectEnd()) {
|
||||
case 1:
|
||||
field_0x1bb9 = 0;
|
||||
if (dFs_c->field_0x3914[dFs_c->saveSlot] != 0) {
|
||||
if (dFs_c->isDataNew(dFs_c->getSelectNum())) {
|
||||
field_0x1bb6 = 3;
|
||||
mMainProc = 5;
|
||||
} else {
|
||||
dComIfGs_setCardToMemory(saveMemory, dFs_c->saveSlot);
|
||||
if (dFs_c->saveStatus[dFs_c->saveSlot] != 0 && !dComIfGs_isEventBit(dSv_event_flag_c::UNK_3510)) {
|
||||
dComIfGs_setCardToMemory(saveMemory, dFs_c->getSelectNum());
|
||||
if (dFs_c->isDataExtra(dFs_c->getSelectNum()) && !dComIfGs_isEventBit(dSv_event_flag_c::UNK_3510)) {
|
||||
field_0x1bb9 = 1;
|
||||
}
|
||||
|
||||
u8 pictureNum = dComIfGs_getPictureNum();
|
||||
if (dComIfGs_getPictureNum() != 0) {
|
||||
u8 failed = 0;
|
||||
u8 boxDataIdx = 0;
|
||||
u8 r25 = 0;
|
||||
card_pictdata* workBuf = &savePicDatabuf[dFs_c->saveSlot * 3];
|
||||
for (s32 i = 0; i < 3; i++) {
|
||||
u32 mask = 1 << i;
|
||||
if ((dComIfGs_getEventReg(dSv_event_flag_c::UNK_89FF) & mask)) {
|
||||
int i;
|
||||
u8 failed;
|
||||
u8 r25;
|
||||
u8 boxDataIdx;
|
||||
card_pictdata* workBuf;
|
||||
failed = 0;
|
||||
boxDataIdx = 0;
|
||||
r25 = 0;
|
||||
workBuf = &savePicDatabuf[dFs_c->getSelectNum() * 3];
|
||||
for (i = 0; i < 3; i++) {
|
||||
if ((dComIfGs_getEventReg(dSv_event_flag_c::UNK_89FF) & (1 << i))) {
|
||||
workBuf++;
|
||||
continue;
|
||||
}
|
||||
@@ -729,8 +1032,7 @@ void dScnName_c::FileSelectMainNormal() {
|
||||
|
||||
/* 80231CB8-80231D00 .text FileSelectMainExSave__10dScnName_cFv */
|
||||
void dScnName_c::FileSelectMainExSave() {
|
||||
/* Nonmatching */
|
||||
switch (dFs_c->field_0x392c) {
|
||||
switch (dFs_c->isSelectEnd()) {
|
||||
case 1:
|
||||
field_0x558 = 0x2d;
|
||||
mMainProc = 13;
|
||||
@@ -757,25 +1059,32 @@ void dScnName_c::ResetWait() {
|
||||
/* 80231D28-80231E9C .text FileSelectClose__10dScnName_cFv */
|
||||
void dScnName_c::FileSelectClose() {
|
||||
if (dFs_c->_close() == 1) {
|
||||
switch (dFs_c->field_0x392c) {
|
||||
switch (dFs_c->isSelectEnd()) {
|
||||
case 2:
|
||||
#if VERSION == VERSION_DEMO
|
||||
cloth.cloth_c->alpha_out();
|
||||
#endif
|
||||
if (fpcM_GetName(this) == fpcNm_NAMEEX_SCENE_e) {
|
||||
dMs_c->initialize();
|
||||
dMs_c->field_0x53c = 1;
|
||||
dMs_c->field_0x53d = dFs_c->field_0x392f; // getErrType?
|
||||
if (dFs_c->field_0x392f == 2) {
|
||||
dMs_c->setErrorFlag(1);
|
||||
dMs_c->setErrorType(dFs_c->getErrType());
|
||||
if (dFs_c->getErrType() == 2) {
|
||||
dMs_c->initializeEx();
|
||||
}
|
||||
mMainProc = 10;
|
||||
mDrawProc = 3;
|
||||
} else {
|
||||
#if VERSION > VERSION_DEMO
|
||||
field_0x55d = 0;
|
||||
cloth.cloth_c->init();
|
||||
#endif
|
||||
mMainProc = 0;
|
||||
field_0x556 = 0;
|
||||
mMemCardCheckProc = 0;
|
||||
mDrawProc = 0;
|
||||
}
|
||||
#if VERSION > VERSION_DEMO
|
||||
cloth.cloth_c->alpha_out();
|
||||
#endif
|
||||
break;
|
||||
case 3:
|
||||
cloth.cloth_c->alpha_out();
|
||||
@@ -791,7 +1100,7 @@ void dScnName_c::FileSelectClose() {
|
||||
}
|
||||
dNm_c->initial();
|
||||
mMainProc = 6;
|
||||
field_0x555 = 0;
|
||||
mOpenProc = 0;
|
||||
mDrawProc = 2;
|
||||
break;
|
||||
}
|
||||
@@ -805,7 +1114,7 @@ void dScnName_c::FileSelectDraw() {
|
||||
|
||||
/* 80231EC0-80231EF8 .text NameInOpen__10dScnName_cFv */
|
||||
void dScnName_c::NameInOpen() {
|
||||
(this->*(NameOpenProc[field_0x555]))();
|
||||
(this->*(NameOpenProc[mOpenProc]))();
|
||||
}
|
||||
|
||||
/* 80231EF8-80231F44 .text NameOpenMain__10dScnName_cFv */
|
||||
@@ -842,7 +1151,7 @@ void dScnName_c::NameInClose() {
|
||||
if ((BOOL)dNm_c->_close() == TRUE) {
|
||||
dFs_c->initial();
|
||||
mMainProc = 3;
|
||||
field_0x555 = 0;
|
||||
mOpenProc = 0;
|
||||
mDrawProc = 1;
|
||||
}
|
||||
}
|
||||
@@ -922,9 +1231,10 @@ void dScnName_c::changeGameScene() {
|
||||
return;
|
||||
|
||||
dComIfGs_gameStart();
|
||||
u32 procName = field_0x55f ? fpcNm_OPEN_SCENE_e : fpcNm_PLAY_SCENE_e;
|
||||
if (fopScnM_ChangeReq(this, procName, fpcNm_OVERLAP0_e, 5)) {
|
||||
g_dComIfG_gameInfo.save.getDan().mStageNo = -1;
|
||||
if (fopScnM_ChangeReq(this, field_0x55f ? fpcNm_OPEN_SCENE_e : fpcNm_PLAY_SCENE_e, fpcNm_OVERLAP0_e, 5)) {
|
||||
#if VERSION > VERSION_DEMO
|
||||
dComIfGs_resetDan();
|
||||
#endif
|
||||
dComIfGs_setRestartRoomParam(0);
|
||||
mDoAud_setSceneName(dComIfGp_getNextStageName(), dComIfGp_getNextStageRoomNo(), dComIfGp_getNextStageLayer());
|
||||
}
|
||||
@@ -968,8 +1278,7 @@ void dDlst_BTICN_c::draw() {
|
||||
void dDlst_FLSEL_CLOTH_c::draw() {
|
||||
Mtx44 mtx;
|
||||
view_port_class* viewport = dComIfGp_getCurrentViewport();
|
||||
f32 aspect = viewport->mWidth / viewport->mHeight;
|
||||
C_MTXPerspective(mtx, 30.0f, aspect * fapGmHIO_getAspectRatio(), 1.0f, 100000.0f);
|
||||
C_MTXPerspective(mtx, 30.0f, fapGmHIO_getAspectRatio() * (viewport->mWidth / viewport->mHeight), 1.0f, 100000.0f);
|
||||
GXSetProjection(mtx, GX_PERSPECTIVE);
|
||||
cloth_c->draw(0.0f, (GXColor){0xe3, 0xff, 0xb3, 0xff}, (GXColor){0x00, 0x00, 0x00, 0x00}, 0);
|
||||
dComIfGp_getCurrentGrafPort()->setPort();
|
||||
|
||||
Reference in New Issue
Block a user