1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
|
#ifndef D_FILE_D_FILE_SELECT_H
#define D_FILE_D_FILE_SELECT_H
#include "d/d_com_inf_game.h"
#include "m_Do/m_Do_MemCard.h"
#include "d/d_file_sel_warning.h"
#include "d/d_msg_string.h"
#include "d/d_name.h"
#include "JSystem/J3DGraphLoader/J3DModelLoader.h"
#include "JSystem/J3DGraphLoader/J3DAnmLoader.h"
class dFile_info_c;
class dDlst_FileSel_c : public dDlst_base_c {
public:
void draw();
virtual ~dDlst_FileSel_c() {
delete Scr;
delete mMessageString;
}
dDlst_FileSel_c() {
font[0] = mDoExt_getMesgFont();
JUT_ASSERT(104, font[0] != NULL);
font[1] = mDoExt_getSubFont();
JUT_ASSERT(107, font[1] != NULL);
mMessageString = new dMsgString_c();
JUT_ASSERT(110, mMessageString != NULL);
}
/* 0x04 */ J2DScreen* Scr;
/* 0x08 */ JUTFont* font[2];
/* 0x0C */ dMsgString_c* mMessageString;
};
class dFile_select3D_c {
public:
dFile_select3D_c();
virtual ~dFile_select3D_c();
void _create(u8, u8);
void _delete();
void freeHeap();
void _move();
void draw();
void setJ3D(char const*, char const*, char const*);
void set_mtx();
void animePlay();
void animeEntry();
void createMaskModel();
void createMirrorModel();
void toItem3Dpos(f32, f32, f32, cXyz*);
void calcViewMtx(Mtx);
void drawOff() { mpModel = 0; }
void setBasePane(CPaneMgr* paneMgr) { mPaneMgr = paneMgr; }
void setBase2Pane(J2DPane* pane) { mPane = pane; }
/* 0x0004 */ JKRSolidHeap* mpSolidHeap;
/* 0x0008 */ J3DModel* mpModel;
/* 0x000C */ mDoExt_bckAnm* mBckAnm;
/* 0x0010 */ mDoExt_brkAnm* mBrkAnm;
/* 0x0014 */ dKy_tevstr_c mTevstr;
/* 0x039C */ CPaneMgr* mPaneMgr;
/* 0x03A0 */ J2DPane* mPane;
/* 0x03A4 */ cXyz field_0x03a4;
/* 0x03B0 */ csXyz field_0x03b0;
/* 0x03B6 */ u8 padding[2];
/* 0x03B8 */ cXyz field_0x03b8;
/* 0x03C4 */ f32 field_0x03c4;
/* 0x03C8 */ f32 field_0x03c8;
/* 0x03CC */ u8 field_0x03CC[0x03CE - 0x03CC];
/* 0x03CE */ u8 mMirrorIdx;
/* 0x03CF */ u8 mMaskIdx;
};
class dDlst_FileSelYn_c : public dDlst_base_c {
public:
void draw();
virtual ~dDlst_FileSelYn_c() { delete ScrYn; }
/* 0x04 */ J2DScreen* ScrYn;
/* 0x08 */ u8 field_0x08[4];
};
class dDlst_FileSelDt_c : public dDlst_base_c {
public:
void draw();
virtual ~dDlst_FileSelDt_c() { delete ScrDt; }
/* 0x04 */ J2DScreen* ScrDt;
/* 0x08 */ J2DPane* mpPane;
/* 0x0C */ J2DPane* mpPane2;
};
class dDlst_FileSelCp_c : public dDlst_base_c {
public:
void draw();
virtual ~dDlst_FileSelCp_c() { delete Scr; }
/* 0x04 */ J2DScreen* Scr;
/* 0x08 */ bool isShow;
/* 0x0C */ J2DPane* mpPane1;
/* 0x10 */ J2DPane* mpPane2;
};
class dDlst_FileSel3m_c : public dDlst_base_c {
public:
void draw();
virtual ~dDlst_FileSel3m_c() { delete Scr3m; }
/* 0x04 */ J2DScreen* Scr3m;
};
class dFs_HIO_c : public JORReflexible {
public:
dFs_HIO_c();
virtual ~dFs_HIO_c() {}
void genMessage(JORMContext*);
/* 0x0000 */ // void* vtable;
/* 0x0004 */ s8 no;
/* 0x0005 */ u8 select_icon_appear_frames;
/* 0x0006 */ u8 base_effect_appear_frames;
/* 0x0007 */ u8 char_switch_frames;
/* 0x0008 */ u8 select_box_appear_frames;
/* 0x0009 */ u8 copy_erase_frames;
/* 0x000A */ u8 field_0x000a;
/* 0x000B */ u8 appear_display_wait_frames;
/* 0x000C */ u8 card_wait_frames;
/* 0x000D */ u8 field_0x000d;
/* 0x000E */ u8 field_0x000e[2];
/* 0x0010 */ f32 test_frame_counts[3];
#if VERSION == VERSION_GCN_PAL
u8 temp_padding[0x1D];
#endif
/* 0x001C */ u8 title_mesg_check;
/* 0x001D */ u8 title_msg_check_sel;
/* 0x001E */ u8 error_mesg_check;
/* 0x001F */ u8 error_msg_check_sel;
/* 0x0020 */ u8 mask_mirror_test_display;
/* 0x0021 */ u8 test_mask_display;
/* 0x0022 */ u8 test_mirror_display;
/* 0x0023 */ u8 field_0x0023;
};
// Trying to define this using dSv_save_c causes alignment issues
typedef u8 SaveDataBuf[SAVEDATA_SIZE];
class dFile_select_c {
public:
typedef void (dFile_select_c::*DispFunc)();
enum DataSelProc_e {
DATASELPROC_MEMCARD_CHECK_MAIN,
DATASELPROC_DATA_SELECT_IN,
DATASELPROC_DATA_SELECT_INIT,
DATASELPROC_DATA_SELECT,
DATASELPROC_DATA_SELECT_MOVE_ANIME,
DATASELPROC_SELECT_DATA_OPEN_MOVE,
DATASELPROC_SELECT_DATA_NAME_MOVE,
DATASELPROC_SELECT_DATA_OPENERASE_MOVE,
DATASELPROC_MENU_SELECT,
DATASELPROC_MENU_SELECT_MOVE_ANM,
DATASELPROC_TO_NAME_MOVE,
DATASELPROC_TO_COPY_PANE_MOVE,
DATASELPROC_TO_ERASE_PANE_MOVE,
DATASELPROC_BACK_SELECT_MOVE,
DATASELPROC_NAME_TO_DATA_SELECT_MOVE,
DATASELPROC_NAME_INPUT_WAIT,
DATASELPROC_NAME_INPUT,
DATASELPROC_NAME_INPUT_FADE,
DATASELPROC_NAME_INPUT2_MOVE,
DATASELPROC_NAME_INPUT2,
DATASELPROC_BACK_NAME_INPUT_MOVE0,
DATASELPROC_BACK_NAME_INPUT_MOVE,
DATASELPROC_COPY_DATA_TO_SELECT,
DATASELPROC_COPY_DATA_TO_SELECT_MOVE_ANM,
DATASELPROC_COPY_TO_SEL_BACK,
DATASELPROC_COPY_TO_SEL_PANE_MOVE,
DATASELPROC_YES_NO_SELECT,
DATASELPROC_YES_NO_CANCEL_MOVE,
DATASELPROC_YES_NO_CURSOR_MOVE_ANM,
DATASELPROC_CMD_EXEC_PANE_MOVE0,
DATASELPROC_COMMAND_EXEC,
DATASELPROC_DATA_ERASE_WAIT,
DATASELPROC_DATA_ERASE_WAIT2,
DATASELPROC_DATA_COPY_WAIT,
DATASELPROC_DATA_COPY_WAIT2,
DATASELPROC_COPY_PANE_MOVE_OK,
DATASELPROC_COPY_PANE_MOVE_OK2,
DATASELPROC_ERASE_PANE_MOVE_OK,
DATASELPROC_ERASE_PANE_MOVE_OK2,
DATASELPROC_ERROR_MSG_PANE_MOVE,
DATASELPROC_ERASE_END_BACK_SELECT_WAIT,
DATASELPROC_ERASE_END_BACK_SELECT,
DATASELPROC_BACK_DAT_SEL_WAIT,
DATASELPROC_BACK_DAT_SEL_WAIT2,
DATASELPROC_BACK_DAT_SEL_PANE_MOVE,
DATASELPROC_TO_NAME_MOVE2,
DATASELPROC_NEXT_MODE_WAIT,
#if PLATFORM_WII || PLATFORM_SHIELD
DATASELPROC_DATA_SELECT_IN_COPY,
DATASELPROC_CARD_TO_NAND_DATA_COPY,
DATASELPROC_CARD_TO_NAND_DATA_COPY_WAIT,
DATASELPROC_CARD_TO_NAND_DATA_COPY_WAIT2,
DATASELPROC_CARD_TO_NAND_DATA_COPY_OK_DISP,
DATASELPROC_CARD_TO_NAND_DATA_COPY_OK_DISP2,
DATASELPROC_CARD_TO_NAND_DATA_COPY_OK_DISP3,
DATASELPROC_CARD_TO_NAND_DATA_COPY_ERR_DISP,
DATASELPROC_CARD_TO_NAND_DATA_COPY_ERR_DISP2,
DATASELPROC_CARD_TO_NAND_DATA_COPY_ERR_DISP3,
#endif
};
enum MemCardCheckProc_e {
MEMCARDCHECKPROC_STAT_CHECK,
MEMCARDCHECKPROC_LOAD_WAIT,
MEMCARDCHECKPROC_ERRMSG_WAIT_KEY,
MEMCARDCHECKPROC_NO_SAVE_SEL_DISP,
MEMCARDCHECKPROC_ERRMSG_WAIT_NO_SAVE_SEL,
MEMCARDCHECKPROC_ERRMSG_WAIT_FORMAT_SEL,
MEMCARDCHECKPROC_FORMAT_YES_SEL_DISP,
MEMCARDCHECKPROC_FORMAT_NO_SEL_DISP,
MEMCARDCHECKPROC_ERRMSG_WAIT_FORMAT_SEL2,
MEMCARDCHECKPROC_FORMAT_YES_SEL2_DISP,
MEMCARDCHECKPROC_FORMAT,
MEMCARDCHECKPROC_FORMAT_WAIT,
MEMCARDCHECKPROC_FORMAT_CHECK,
MEMCARDCHECKPROC_MAKE_GAMEFILE_SEL,
MEMCARDCHECKPROC_MAKE_GAMEFILE_SEL_DISP,
MEMCARDCHECKPROC_MAKE_GAMEFILE,
MEMCARDCHECKPROC_MAKE_GAMEFILE_WAIT,
MEMCARDCHECKPROC_MAKE_GAMEFILE_CHECK,
MEMCARDCHECKPROC_NO_FILESPACE_DISP,
MEMCARDCHECKPROC_GOTO_IPL_SELECT_DISP,
MEMCARDCHECKPROC_GOTO_IPL_SELECT,
MEMCARDCHECKPROC_GOTO_IPL,
MEMCARDCHECKPROC_MSG_WINDOW_INIT_OPEN,
MEMCARDCHECKPROC_MSG_WINDOW_OPEN,
MEMCARDCHECKPROC_MSG_WINDOW_CLOSE,
MEMCARDCHECKPROC_ERR_YESNO_CURSOR_MOVE_ANM,
MEMCARDCHECKPROC_SAVEDATA_CLEAR,
#if PLATFORM_WII || PLATFORM_SHIELD
MEMCARDCHECKPROC_NAND_STAT_CHECK,
MEMCARDCHECKPROC_GAMEFILE_INIT_SEL,
MEMCARDCHECKPROC_GAMEFILE_INIT_SEL_DISP,
MEMCARDCHECKPROC_GAMEFILE_INIT,
MEMCARDCHECKPROC_GAMEFILE_INIT_CHECK,
MEMCARDCHECKPROC_LOAD_WAIT_CARD,
MEMCARDCHECKPROC_CARD_DATA_COPY_SEL,
MEMCARDCHECKPROC_CARD_DATA_COPY_SEL2_DISP,
MEMCARDCHECKPROC_CARD_DATA_COPY_SEL2,
MEMCARDCHECKPROC_LOAD_WAIT_NAND,
MEMCARDCHECKPROC_LOAD_NAND_FILE,
#endif
};
dFile_select_c(JKRArchive*);
virtual ~dFile_select_c();
void _create();
void _move();
void selFileWakuAnm();
void bookIconAnm();
void selCopyFileWakuAnm();
void copyBookIconAnm();
void dataDelEffAnm();
void dataCopyEffAnm();
void selectDataBaseMoveAnmInitSet(int, int);
bool selectDataBaseMoveAnm();
void dataSelectInAnmSet();
void dataSelectIn();
void dataSelectInit();
void dataSelect();
void dataSelectStart();
void selectDataMoveAnmInitSet(int, int);
bool selectDataMoveAnm();
void dataSelectAnmSet();
void dataSelectMoveAnime();
void makeRecInfo(u8);
void selectDataOpenMove();
void selectDataNameMove();
void selectDataOpenEraseMove();
void menuSelect();
void menuSelectStart();
void menuSelectCansel();
void menuMoveAnmInitSet(int, int);
bool menuMoveAnm();
void menuSelectAnmSet();
void menuSelectMoveAnm();
void ToNameMove();
void ToNameMove2();
void nameInputWait();
void nameInput();
void nameToDataSelectMove();
void nameInputFade();
void nameInput2Move();
void nameInput2();
void backNameInputMove0();
void backNameInputMove();
void ToCopyPaneMove();
void ToErasePaneMove();
void backSelectMove();
void copySelMoveAnmInitSet(int, int);
void setSaveDataForCopySel();
void copyDataToSelect();
void copyDataToSelectStart();
void copyDataToSelectCansel();
void copyDataToSelectMoveAnmSet();
void copyDataToSelectMoveAnm();
void copySelectWakuAlpahAnmInit(u8, u8, u8, u8);
bool copySelectWakuAlpahAnm(u8);
u8 getCptoNum(u8);
void copyToSelBack();
void copyToSelPaneMove();
void yesnoMenuMoveAnmInitSet(int, int);
bool yesnoMenuMoveAnm();
bool yesnoSelectMoveAnm();
void yesnoCursorShow();
void YesNoSelect();
void yesNoSelectStart();
void yesnoSelectAnmSet();
void yesnoCancelAnmSet();
void YesNoCancelMove();
void yesNoCursorMoveAnm();
void CmdExecPaneMove0();
void CommandExec();
void DataEraseWait();
void DataEraseWait2();
void ErasePaneMoveOk();
void ErasePaneMoveOk2();
void eraseEndBackSelectWait();
void eraseEndBackSelect();
void DataCopyWait();
void DataCopyWait2();
void copyPaneMoveOk();
void copyPaneMoveOk2();
void ErrorMsgPaneMove();
void backDatSelPaneMove();
void backDatSelWait();
void backDatSelWait2();
void nextModeWait();
void screenSet();
void screenSetCopySel();
void screenSetYesNo();
void screenSet3Menu();
void screenSetDetail();
void setWakuAnm();
void displayInit();
void setSaveData();
void headerTxtSet(u16, u8, u8);
bool headerTxtChangeAnm();
void modoruTxtChange(u8);
void modoruTxtDispAnmInit(u8);
bool modoruTxtDispAnm();
void ketteiTxtDispAnmInit(u8);
bool ketteiTxtDispAnm();
void selectWakuAlpahAnmInit(u8, u8, u8, u8);
bool selectWakuAlpahAnm(u8);
void selFileCursorShow();
void menuWakuAlpahAnmInit(u8, u8, u8, u8);
bool menuWakuAlpahAnm(u8);
void menuCursorShow();
void yesnoWakuAlpahAnmInit(u8, u8, u8, u8);
bool yesnoWakuAlpahAnm(u8);
void _draw();
void errorMoveAnmInitSet(int, int);
bool errorMoveAnm();
void errDispInitSet(int, int);
void MemCardCheckMain();
void MemCardStatCheck();
void MemCardLoadWait();
void MemCardErrMsgWaitKey();
void noFileSpaceDispInit();
void MemCardNoFileSpaceDisp();
void iplSelDispInit();
void MemCardGotoIPLSelectDisp();
void MemCardGotoIPLSelect();
void MemCardGotoIPL();
void noSaveSelDispInit();
void MemCardNoSaveSelDisp();
void MemCardErrMsgWaitNoSaveSel();
void formatYesSelDispInitSet();
void formatNoSelDispInitSet();
void MemCardFormatYesSelDisp();
void MemCardFormatNoSelDisp();
void MemCardErrMsgWaitFormatSel();
void formatYesSel2DispInitSet();
void MemCardErrMsgWaitFormatSel2();
void MemCardFormatYesSel2Disp();
void MemCardFormat();
void MemCardFormatWait();
void MemCardFormatCheck();
void MemCardMakeGameFileSel();
void MemCardMakeGameFileSelDisp();
void MemCardMakeGameFile();
void MemCardMakeGameFileWait();
void MemCardMakeGameFileCheck();
void MemCardMsgWindowInitOpen();
void MemCardMsgWindowOpen();
void MemCardMsgWindowClose();
bool errYesNoSelect();
void errCurMove(u8);
void MemCardErrYesNoCursorMoveAnm();
void errorTxtSet(u16);
bool errorTxtChangeAnm();
bool fileRecScaleAnm();
void fileRecScaleAnmInitSet2(f32, f32);
bool fileRecScaleAnm2();
bool fileInfoScaleAnm();
void nameMoveAnmInitSet(int, int);
bool nameMoveAnm();
void MemCardSaveDataClear();
void setInitSaveData();
void dataSave();
#if PLATFORM_WII || PLATFORM_SHIELD
bool GCtoWiiTimeConvert();
void dataSelectInCopy();
void cardToNandDataCopy();
void cardToNandDataCopyWait();
void cardToNandDataCopyWait2();
void cardToNandDataCopyOkDisp();
void cardToNandDataCopyOkDisp2();
void cardToNandDataCopyOkDisp3();
void cardToNandDataCopyErrDisp();
void cardToNandDataCopyErrDisp2();
void cardToNandDataCopyErrDisp3();
void loadFileNAND();
void errDispInitSet(char*);
void nandStatCheck();
void MemCardLoadWaitCard();
void cardDataCopySel();
void cardDataCopySel2Disp();
void cardDataCopySel2();
void cardDataCopyNoSelect();
void loadWaitNand();
void loadNandFile();
void gameFileInitSel();
void gameFileInitSelDisp();
void gameFileInit();
void gameFileInitCheck();
void saveDataClearInit();
#endif
#if DEBUG
void titleMsgCheck();
void errorMsgCheck();
#endif
void draw() {
_draw();
}
u8 getFadeFlag() { return mFadeFlag; }
int isDataNew(u8 i) { return mIsDataNew[i]; }
int isSelectEnd() { return mIsSelectEnd; }
int getSelectNum() { return mSelectNum; }
void setUseType(u8 type) { mUseType = type; }
/* 0x0004 */ u8 field_0x04[4];
/* 0x0008 */ JKRArchive* mpArchive;
/* 0x000C */ dFile_select3D_c* mpFileSelect3d;
/* 0x0010 */ dDlst_FileSel_c fileSel;
/* 0x0024 */ dDlst_FileSelDt_c mSelDt;
/* 0x0034 */ dDlst_FileSelCp_c mCpSel;
/* 0x0048 */ dDlst_FileSelYn_c mYnSel;
/* 0x0054 */ dDlst_FileSel3m_c m3mSel;
/* 0x005C */ u8 field_0x005c[4];
/* 0x0060 */ dSelect_cursor_c* mSelIcon;
/* 0x0064 */ dSelect_cursor_c* mSelIcon2;
/* 0x0068 */ dName_c* mpName;
/* 0x006C */ dFile_warning_c* mpFileWarning;
/* 0x0070 */ dFile_info_c* mFileInfo[3];
/* 0x007C */ dFile_info_c* mCpFileInfo[2];
/* 0x0084 */ J2DAnmTransform* mBaseMoveAnm;
/* 0x0088 */ J2DAnmTransform* field_0x0088;
/* 0x008C */ J2DAnmTransform* mYnSelBck3;
/* 0x0090 */ J2DAnmTransform* field_0x0090;
/* 0x0094 */ J2DAnmTransform* field_0x0094;
/* 0x0098 */ J2DAnmTransform* field_0x0098;
/* 0x009C */ J2DAnmTransform* field_0x009c;
/* 0x00A0 */ s32 field_0x00a0;
/* 0x00A4 */ CPaneMgr* mBaseMovePane;
/* 0x00A8 */ u8 field_0x00a8[0xb0-0xa8];
/* 0x00B0 */ s32 mBaseMoveAnmFrame;
/* 0x00B4 */ s32 mBaseMoveAnmFrameMax;
/* 0x00B8 */ u8 field_0x00b8;
/* 0x00B9 */ u8 field_0x00b9;
/* 0x00BA */ u8 field_0x00ba;
/* 0x00BB */ u8 field_0x00bb;
/* 0x00BC */ CPaneMgr* mSelFilePanes[3];
/* 0x00C8 */ f32 field_0x00c8[3];
/* 0x00D4 */ f32 field_0x00d4[3];
/* 0x00E0 */ s32 field_0x00e0[3];
/* 0x00EC */ s32 field_0x00ec;
/* 0x00F0 */ CPaneMgr* mYnSelPane[2];
/* 0x00F8 */ s32 field_0x00f8[2];
/* 0x0100 */ s32 field_0x0100;
/* 0x0104 */ s32 field_0x0104;
/* 0x0108 */ bool field_0x0108;
/* 0x0109 */ bool field_0x0109;
/* 0x010A */ u8 field_0x10a[2];
/* 0x010C */ J2DPane* mBaseSubPane;
/* 0x0110 */ int field_0x0110;
/* 0x0114 */ int field_0x0114;
/* 0x0118 */ J2DPane* m3mMenuPane;
/* 0x011C */ J2DPane* mNameBasePane;
/* 0x0120 */ int field_0x0120;
/* 0x0124 */ int field_0x0124;
/* 0x0128 */ bool field_0x0128;
/* 0x0129 */ u8 field_0x0129[0x012C - 0x0129];
/* 0x012C */ J2DPane* mErrorMsgPane;
/* 0x0130 */ int field_0x0130;
/* 0x0134 */ int field_0x0134;
/* 0x0138 */ CPaneMgrAlpha* mErrorMsgTxtPane[2];
/* 0x0140 */ char* mErrorMsgStringPtr[2];
/* 0x0148 */ u8 mErrorTxtDispIdx;
/* 0x0149 */ u8 field_0x0149;
/* 0x014A */ bool field_0x014a;
/* 0x014B */ bool field_0x014b;
/* 0x014C */ CPaneMgrAlpha* mDeleteEfPane[3];
/* 0x0158 */ CPaneMgrAlpha* mCopyEfPane[3];
/* 0x0164 */ CPaneMgr* mSelFileMoyoPane[3];
/* 0x0170 */ CPaneMgr* mSelFileGoldPane[3];
/* 0x017C */ CPaneMgr* mSelFileGold2Pane[3];
/* 0x0188 */ CPaneMgr* mSelFilePane_Book_l[3];
/* 0x0194 */ u8 field_0x0194[3];
/* 0x0197 */ u8 field_0x0197[3];
/* 0x019A */ u8 field_0x019a[3];
/* 0x019D */ u8 field_0x019d[3];
/* 0x01A0 */ CPaneMgrAlpha* mYnSelPane_m[2];
/* 0x01A8 */ CPaneMgrAlpha* mYnSelPane_g[2];
/* 0x01B0 */ CPaneMgrAlpha* mYnSelPane_gr[2];
/* 0x01B8 */ u8 field_0x01b8[2];
/* 0x01BA */ u8 field_0x01ba[2];
/* 0x01BC */ u8 field_0x01bc[2];
/* 0x01BE */ u8 field_0x01be[2];
/* 0x01C0 */ CPaneMgr* mYnSelTxtPane[2];
/* 0x01C8 */ J2DAnmColor* mFileSelBpk;
/* 0x01CC */ s32 mSelFileBpkFrame;
/* 0x01D0 */ J2DAnmTextureSRTKey* mFileSel05Btk;
/* 0x01D4 */ s32 mSelFileBtk05Frame;
/* 0x01D8 */ J2DAnmColor* mSelFileBookBpk;
/* 0x01DC */ s32 mSelFileBookBpkFrame;
/* 0x01E0 */ J2DAnmTextureSRTKey* mSelFileBookBtk;
/* 0x01E4 */ s32 mSelFileBookBtkFrame;
/* 0x01E8 */ J2DAnmTevRegKey* mSelFileBookBrk;
/* 0x01EC */ s32 mSelFileBookBrkFrame;
/* 0x01F0 */ J2DAnmTextureSRTKey* mDtEffBtk;
/* 0x01F4 */ s32 mDtEffBtkFrame;
/* 0x01F8 */ J2DAnmTextureSRTKey* mCpEffBtk;
/* 0x01FC */ s32 mCpEffBtkFrame;
/* 0x0200 */ J2DAnmTevRegKey* mCpDtEffBrk;
/* 0x0204 */ s32 mCpDtEffBrkFrame;
/* 0x0208 */ u8 field_0x0208;
/* 0x0209 */ u8 field_0x0209;
/* 0x020A */ u8 mFadeTimer;
/* 0x020B */ u8 field_0x020b;
/* 0x020C */ CPaneMgrAlpha* mHeaderTxtPane[2];
/* 0x0214 */ char* mHeaderStringPtr[2];
/* 0x021C */ u8 mHeaderTxtDispIdx;
/* 0x021D */ u8 field_0x021d;
/* 0x021E */ u8 field_0x021e;
/* 0x021F */ u8 field_0x021f;
/* 0x0220 */ CPaneMgrAlpha* mFileInfoDatBasePane[3];
/* 0x022C */ CPaneMgrAlpha* mFileInfoNoDatBasePane[3];
/* 0x0238 */ CPaneMgrAlpha* mBbtnPane;
/* 0x023C */ CPaneMgrAlpha* mAbtnPane;
/* 0x0240 */ CPaneMgrAlpha* mModoruTxtPane;
/* 0x0244 */ CPaneMgrAlpha* mKetteiTxtPane;
/* 0x024A */ bool field_0x0248;
/* 0x024A */ bool field_0x0249;
/* 0x024A */ u8 field_0x024a;
/* 0x024B */ u8 field_0x024b;
/* 0x024C */ u8 field_0x024c;
/* 0x024B */ u8 field_0x024d[3];
/* 0x0250 */ char* mModoruStringPtr;
/* 0x0254 */ STControl* stick;
/* 0x0258 */ u8 mIsDataNew[3];
/* 0x025B */ u8 mIsNoData[3];
/* 0x025C */ u8 field_0x025e[0x0264 - 0x025e];
/* 0x0264 */ u8 mLastSelectNum; // previously selected quest log
/* 0x0265 */ u8 mSelectNum; // currently selected quest log
/* 0x0266 */ u8 mLastSelectMenuNum; // previously select menu number (for copy / start / delete)
/* 0x0267 */ u8 mSelectMenuNum; // currently selected menu number (for copy / start / delete)
/* 0x0268 */ u8 field_0x0268;
/* 0x0269 */ u8 field_0x0269;
/* 0x026A */ u8 mCpDataNum;
/* 0x026B */ u8 field_0x026b;
/* 0x026C */ u8 field_0x026c;
/* 0x026D */ u8 mCpDataToNum;
/* 0x026E */ u8 mCommand;
/* 0x026F */ u8 mDataSelProc;
/* 0x0270 */ bool mIsSelectEnd;
/* 0x0271 */ u8 mCardCheckProc;
/* 0x0272 */ u8 field_0x0272;
/* 0x0273 */ u8 mNextCardCheckProc;
/* 0x0274 */ u8 mKeyWaitCardCheckProc;
/* 0x0272 */ u8 field_0x0275[0x0280 - 0x0275];
/* 0x0281 */ bool field_0x0280;
/* 0x0281 */ bool field_0x0281;
/* 0x0282 */ bool field_0x0282;
/* 0x0283 */ bool field_0x0283;
/* 0x0284 */ DispFunc mWindowCloseMsgDispCb;
/* 0x0290 */ DispFunc mKeyWaitMsgDispCb;
/* 0x029C */ J2DAnmTransform* mCpSelBck;
/* 0x02A0 */ J2DAnmTransform* mCpSelBck2;
/* 0x02A4 */ CPaneMgr* mCpSelPane[3];
/* 0x02B0 */ u8 field_0x02b0[0x2b4-0x2b0];
/* 0x02B4 */ int field_0x02b4[3];
/* 0x02C0 */ CPaneMgr* mCpSelPane_moyo[2];
/* 0x02C8 */ CPaneMgr* mCpSelPane_gold[2];
/* 0x02D0 */ CPaneMgr* mCpSelPane_gold2[2];
/* 0x02D8 */ CPaneMgr* mCpSelPane_book[2];
/* 0x02E0 */ u8 field_0x02e0[2];
/* 0x02E2 */ u8 field_0x02e2[2];
/* 0x02E4 */ u8 field_0x02e4[2];
/* 0x02E4 */ u8 field_0x02e6[0x2e8-0x2e6];
/* 0x02E8 */ J2DAnmColor* mCpSelBpk;
/* 0x02EC */ s32 mCpSelBpkFrame;
/* 0x02F0 */ J2DAnmTextureSRTKey* mCpSel03Btk;
/* 0x02F4 */ s32 mCpSel03BtkFrame;
/* 0x02F8 */ J2DAnmColor* mCpSelBookBpk;
/* 0x02FC */ s32 mCpSelBookBpkFrame;
/* 0x0300 */ J2DAnmTextureSRTKey* mCpSelBookBtk;
/* 0x0304 */ s32 mCpSelBookBtkFrame;
/* 0x0308 */ J2DAnmTevRegKey* mCpSelBookBrk;
/* 0x030C */ s32 mCpSelBookBrkFrame;
/* 0x0310 */ J2DAnmTransform* mYnSelBck;
/* 0x0314 */ J2DAnmTransform* mYnSelBck2;
/* 0x0318 */ J2DAnmColor* mYnSelBpk;
/* 0x031C */ s32 mYnSelBpkFrame;
/* 0x0320 */ J2DAnmTextureSRTKey* mYnSelBtk;
/* 0x0324 */ s32 mYnSelBtkFrame;
/* 0x0328 */ J2DAnmTransform* m3mBck;
/* 0x032C */ J2DAnmTransform* m3mBck2;
/* 0x0330 */ J2DAnmColor* m3mBpk;
/* 0x0334 */ s32 m3mBpkFrame;
/* 0x0338 */ J2DAnmTextureSRTKey* m3mBtk;
/* 0x033C */ s32 m3mBtkFrame;
/* 0x0340 */ CPaneMgr* m3mSelPane[3];
/* 0x034C */ s32 field_0x034c[3];
/* 0x0358 */ int field_0x0358;
/* 0x035C */ int field_0x035c;
/* 0x0360 */ bool field_0x0360;
/* 0x0361 */ u8 field_0x0361[3];
/* 0x0364 */ CPaneMgr* m3mSelPane_mo[3];
/* 0x0370 */ CPaneMgr* m3mSelPane_g[3];
/* 0x037C */ CPaneMgr* m3mSelPane_gr[3];
/* 0x0388 */ u8 field_0x0388[3];
/* 0x038B */ u8 field_0x038b[3];
/* 0x038E */ u8 field_0x038e[3];
/* 0x0390 */ u8 field_0x0391[3];
/* 0x0394 */ CPaneMgr* m3mSelTextPane[3];
/* 0x03A0 */ J2DAnmTextureSRTKey* mSelDtBtk;
/* 0x03A4 */ s32 mSelDtBtkFrame;
/* 0x03A8 */ CPaneMgr* mSelDtPane_mset;
/* 0x03AC */ s16 mWaitTimer;
/* 0x03AE */ u8 field_0x03AE[0x03B0 - 0x03AE];
/* 0x03B0 */ u8 mUseType;
/* 0x03B1 */ u8 field_0x03b1;
/* 0x03B2 */ u16 field_0x03b2;
/* 0x03B4 */ s32 field_0x03b4;
/* 0x03B8 */ SaveDataBuf mSaveData[SAVEDATA_NUM];
/* 0x2374 */ u8 mFadeFlag;
/* 0x2375 */ bool mHasDrawn;
#if PLATFORM_GCN
/* 0x2378 */ J2DPicture* mpFadePict;
#endif
#if PLATFORM_WII || PLATFORM_SHIELD
/* 0x2376 */ u8 field_0x2376[SAVEFILE_SIZE];
/* 0x4332 */ u8 field_0x4332;
/* 0x4333 */ u8 field_0x4333;
#endif
};
STATIC_ASSERT(sizeof(dFile_select_c) == 0x237C);
#endif /* D_FILE_D_FILE_SELECT_H */
|