Merge pull request #12 from Reonu/savefile2

auto savefile padding
This commit is contained in:
CrashOveride95
2021-07-14 20:43:13 -04:00
committed by GitHub
3 changed files with 13 additions and 4 deletions

View File

@@ -28,6 +28,6 @@ ALIGNED8 u8 gGfxSPTaskStack[SP_DRAM_STACK_SIZE8];
// 0xc00 bytes for f3dex, 0x900 otherwise
ALIGNED8 u8 gGfxSPTaskYieldBuffer[OS_YIELD_DATA_SIZE];
// 0x200 bytes
ALIGNED8 struct SaveBuffer gSaveBuffer;
struct SaveBuffer __attribute__ ((aligned (8))) gSaveBuffer;
// 0x190a0 bytes
struct GfxPool gGfxPools[2];

View File

@@ -20,7 +20,7 @@
#define MENU_DATA_MAGIC 0x4849
#define SAVE_FILE_MAGIC 0x4441
STATIC_ASSERT(sizeof(struct SaveBuffer) == EEPROM_SIZE, "eeprom buffer size must match");
//STATIC_ASSERT(sizeof(struct SaveBuffer) == EEPROM_SIZE, "eeprom buffer size must match");
extern struct SaveBuffer gSaveBuffer;

View File

@@ -8,7 +8,14 @@
#include "course_table.h"
#define EEPROM_SIZE 0x200
#if defined(SRAM)
#define EEPROM_SIZE 0x8000
#elif defined(EEP16K)
#define EEPROM_SIZE 0x800
#else
#define EEPROM_SIZE 0x200
#endif
#define NUM_SAVE_FILES 4
struct SaveBlockSignature
@@ -61,7 +68,7 @@ struct MainMenuSaveData
#endif
// Pad to match the EEPROM size of 0x200 (10 bytes on JP/US, 8 bytes on EU)
u8 filler[EEPROM_SIZE / 2 - SUBTRAHEND - NUM_SAVE_FILES * (4 + sizeof(struct SaveFile))];
//u8 filler[EEPROM_SIZE / 2 - SUBTRAHEND - NUM_SAVE_FILES * (4 + sizeof(struct SaveFile))];
struct SaveBlockSignature signature;
};
@@ -74,6 +81,8 @@ struct SaveBuffer
struct MainMenuSaveData menuData[2];
};
STATIC_ASSERT(sizeof(struct SaveBuffer) <= EEPROM_SIZE, "ERROR: Save struct too big for specified save type");
extern u8 gLastCompletedCourseNum;
extern u8 gLastCompletedStarNum;
extern s8 sUnusedGotGlobalCoinHiScore;