mirror of
https://github.com/zeldaret/tww.git
synced 2026-05-23 23:05:11 -04:00
71 lines
1.5 KiB
C++
71 lines
1.5 KiB
C++
#ifndef M_DO_M_DO_MEMCARD_H
|
|
#define M_DO_M_DO_MEMCARD_H
|
|
|
|
#include "dolphin/os/OSMutex.h"
|
|
#include "global.h"
|
|
|
|
class mDoMemCd_Ctrl_c {
|
|
public:
|
|
enum CardCommand {
|
|
CARD_NO_COMMAND,
|
|
CARD_RESTORE,
|
|
CARD_STORE,
|
|
CARD_FORMAT,
|
|
CARD_ATTACH,
|
|
CARD_DETACH,
|
|
};
|
|
|
|
mDoMemCd_Ctrl_c();
|
|
void ThdInit();
|
|
void main();
|
|
void update();
|
|
void load();
|
|
void load2();
|
|
void restore();
|
|
s32 LoadSync(void*, u32, u32);
|
|
s32 LoadSync2();
|
|
void save(void*, u32, u32);
|
|
void store();
|
|
s32 SaveSync();
|
|
u32 getStatus(u32);
|
|
void command_format();
|
|
void format();
|
|
s32 FormatSync();
|
|
void attach();
|
|
void command_attach();
|
|
void detach();
|
|
s32 mount();
|
|
s32 loadfile();
|
|
s32 checkspace();
|
|
void setCardState(s32);
|
|
|
|
bool isCardCommNone() { return mCardCommand == CARD_NO_COMMAND; }
|
|
|
|
/* 0x0000 */ u8 mData[0x1650];
|
|
/* 0x1650 */ s32 mCardCommand;
|
|
/* 0x1654 */ s32 mCardState;
|
|
/* 0x1658 */ s32 field_0x1658;
|
|
/* 0x165C */ s32 field_0x165c;
|
|
/* 0x1660 */ s32 field_0x1660;
|
|
/* 0x1664 */ OSMutex mMutex;
|
|
}; // Size: 0x167C
|
|
|
|
STATIC_ASSERT(sizeof(mDoMemCd_Ctrl_c) == 0x167C);
|
|
|
|
static int mDoMemCd_main(void*);
|
|
|
|
extern mDoMemCd_Ctrl_c g_mDoMemCd_control;
|
|
|
|
inline bool mDoMemCd_isCardCommNone() {
|
|
return g_mDoMemCd_control.isCardCommNone();
|
|
}
|
|
|
|
inline void mDoMemCd_ThdInit() {
|
|
g_mDoMemCd_control.ThdInit();
|
|
}
|
|
|
|
inline void mDoMemCd_save(void* i_data, u32 param_1, u32 param_2) {
|
|
g_mDoMemCd_control.save(i_data,param_1,param_2);
|
|
}
|
|
|
|
#endif /* M_DO_M_DO_MEMCARD_H */ |