41 WUT_CHECK_OFFSET(
PlayDiary, 0x00, title_id);
42 WUT_CHECK_OFFSET(
PlayDiary, 0x08, playtime);
63 WUT_CHECK_OFFSET(
PlayStats, 0x00, title_id);
64 WUT_CHECK_OFFSET(
PlayStats, 0x08, playtime);
65 WUT_CHECK_OFFSET(
PlayStats, 0x0c, times_played);
66 WUT_CHECK_OFFSET(
PlayStats, 0x0e, first_time_played);
67 WUT_CHECK_OFFSET(
PlayStats, 0x10, last_time_played);
73 WUT_UNKNOWN_BYTES(12);
75 WUT_CHECK_OFFSET(
PlayEvent, 0x00, title_id);
81 WUT_UNKNOWN_BYTES(16);
83 WUT_CHECK_OFFSET(
PlayLog, 0x00, title_id);
94 asm("Initialize__Q2_2nn3pdmFv");
101 asm("Finalize__Q2_2nn3pdmFv");
108 asm("CloseAllFiles__Q2_2nn3pdmFv");
118 asm("Convert__Q2_2nn3pdmFi");
128 asm("WaitForConvertDone__Q2_2nn3pdmFv");
142 asm("GetPlayDiaryMaxLength__Q2_2nn3pdmFPi");
158 asm("GetPlayDiaryLength__Q2_2nn3pdmFPii");
174 asm("GetPlayDiaryStart__Q2_2nn3pdmFPii");
199 asm("GetPlayDiary__Q2_2nn3pdmFPiPQ3_2nn3pdm9PlayDiaryiT3");
221 asm("GetPlayDiary__Q2_2nn3pdmFPQ3_2nn3pdm9PlayDiaryiT2");
235 asm("GetPlayEventMaxLength__Q2_2nn3pdmFPi");
260 asm("GetPlayEvent__Q2_2nn3pdmFPiPQ3_2nn3pdm9PlayEventiT3");
274 asm("GetPlayLogMaxLength__Q2_2nn3pdmFPi");
290 asm("GetPlayLogLength__Q2_2nn3pdmFPii");
306 asm("GetPlayLogStart__Q2_2nn3pdmFPii");
331 asm("GetPlayLog__Q2_2nn3pdmFPiPQ3_2nn3pdm7PlayLogiT3");
353 asm("GetPlayLog__Q2_2nn3pdmFPQ3_2nn3pdm7PlayLogiT2");
367 asm("GetPlayStatsMaxLength__Q2_2nn3pdmFPi");
383 asm("GetPlayStatsLength__Q2_2nn3pdmFPii");
403 asm("GetPlayStatsOfTitleId__Q2_2nn3pdmFPQ3_2nn3pdm9PlayStatsiUL");
428 asm("GetPlayStats__Q2_2nn3pdmFPiPQ3_2nn3pdm9PlayStatsiT3");
450 asm("GetPlayStats__Q2_2nn3pdmFPQ3_2nn3pdm9PlayStatsiT2");
454 asm("NotifySetTimeBeginEvent__Q2_2nn3pdmFv");
458 asm("NotifySetTimeEndEvent__Q2_2nn3pdmFv");
uint64_t title_id
Title ID of the title.
uint16_t times_played
Total amount of times played.
uint32_t GetPlayStats(uint32_t *outAmount, PlayStats *outPlayStats, uint32_t userId, uint32_t amount) asm("GetPlayStats__Q2_2nn3pdmFPiPQ3_2nn3pdm9PlayStatsiT3")
Gets an array of PlayStats entries.
uint32_t GetPlayStatsMaxLength(uint32_t *outMaxLength) asm("GetPlayStatsMaxLength__Q2_2nn3pdmFPi")
The max amount of PlayStats that can be written into the save.
uint32_t GetPlayDiaryStart(uint32_t *outStart, uint32_t userId) asm("GetPlayDiaryStart__Q2_2nn3pdmFPii")
void Finalize() asm("Finalize__Q2_2nn3pdmFv")
Finalize PDM.
PlayDiaryFlags flags
flags PlayDiaryFlags
uint32_t GetPlayLogMaxLength(uint32_t *outMaxLength) asm("GetPlayLogMaxLength__Q2_2nn3pdmFPi")
The max amount of PlayLog that can be written into the save.
uint16_t date
Date in days since 01/01/2000.
uint32_t GetPlayLogStart(uint32_t *outStart, uint32_t userId) asm("GetPlayLogStart__Q2_2nn3pdmFPii")
PlayDiaryFlags
Flags for PlayDiary.
@ PLAYDIARY_FLAG_PLAYED_IN_WII_MODE
Set when the user played in Wii Mode Note: Title Id should be ffff ffff ffff ffff when set.
@ PLAYDIARY_FLAG_UNKNOWN_0A00
uint32_t Convert(uint32_t userId) asm("Convert__Q2_2nn3pdmFi")
Convert an users PDM Save to a newer save version.
uint16_t last_time_played
Date when the title was last played in days since 01/01/2000.
uint32_t WaitForConvertDone() asm("WaitForConvertDone__Q2_2nn3pdmFv")
Wait until convert is done.
uint32_t GetPlayLog(uint32_t *outAmount, PlayLog *outPlayLogs, uint32_t userId, uint32_t amount) asm("GetPlayLog__Q2_2nn3pdmFPiPQ3_2nn3pdm7PlayLogiT3")
Gets an array of PlayLog entries.
uint32_t GetPlayDiaryLength(uint32_t *outLength, uint32_t userId) asm("GetPlayDiaryLength__Q2_2nn3pdmFPii")
Gets the amount of an users PlayDiary entries.
void CloseAllFiles() asm("CloseAllFiles__Q2_2nn3pdmFv")
Close all opened PDM Files.
uint32_t Initialize() asm("Initialize__Q2_2nn3pdmFv")
Initializes PDM.
void NotifySetTimeEndEvent() asm("NotifySetTimeEndEvent__Q2_2nn3pdmFv")
uint32_t GetPlayDiary(uint32_t *outAmount, PlayDiary *outPlayDiaries, uint32_t userId, uint32_t amount) asm("GetPlayDiary__Q2_2nn3pdmFPiPQ3_2nn3pdm9PlayDiaryiT3")
Gets an array of PlayDiary entries.
uint32_t GetPlayStatsOfTitleId(PlayStats *outPlayStats, uint32_t userId, uint64_t titleId) asm("GetPlayStatsOfTitleId__Q2_2nn3pdmFPQ3_2nn3pdm9PlayStatsiUL")
Gets PlayLog entry of a Title ID.
uint32_t GetPlayStatsLength(uint32_t *outLength, uint32_t userId) asm("GetPlayStatsLength__Q2_2nn3pdmFPii")
Gets the amount of an users PlayStats entries.
uint32_t GetPlayEvent(uint32_t *outAmount, PlayEvent *outPlayEvents, uint32_t userId, uint32_t amount) asm("GetPlayEvent__Q2_2nn3pdmFPiPQ3_2nn3pdm9PlayEventiT3")
Gets an array of PlayEvent entries.
uint16_t first_time_played
Date when the title was first played in days since 01/01/2000.
uint32_t GetPlayDiaryMaxLength(uint32_t *outMaxLength) asm("GetPlayDiaryMaxLength__Q2_2nn3pdmFPi")
The max amount of PlayDiary that can be written into the save.
void NotifySetTimeBeginEvent() asm("NotifySetTimeBeginEvent__Q2_2nn3pdmFv")
uint32_t GetPlayEventMaxLength(uint32_t *outMaxLength) asm("GetPlayEventMaxLength__Q2_2nn3pdmFPi")
The max amount of PlayEvent that can be written into the save.
uint32_t playtime
Playtime in Minutes.
uint32_t GetPlayLogLength(uint32_t *outLength, uint32_t userId) asm("GetPlayLogLength__Q2_2nn3pdmFPii")
Gets the amount of an users PlayLog entries.
Stores PlayData for each Day.