#ifndef POKEPLATINUM_CONSTANTS_SAVE_TABLE_H
#define POKEPLATINUM_CONSTANTS_SAVE_TABLE_H

enum SaveBlockID {
    SAVE_BLOCK_ID_NORMAL = 0,
    SAVE_BLOCK_ID_BOXES,

    SAVE_BLOCK_ID_MAX
};

enum SaveTableEntryID {
    SAVE_TABLE_ENTRY_SYSTEM = 0,
    SAVE_TABLE_ENTRY_PLAYER,
    SAVE_TABLE_ENTRY_PARTY,
    SAVE_TABLE_ENTRY_BAG,
    SAVE_TABLE_ENTRY_VARS_FLAGS,
    SAVE_TABLE_ENTRY_POKETCH,
    SAVE_TABLE_ENTRY_FIELD_PLAYER_STATE,
    SAVE_TABLE_ENTRY_POKEDEX,
    SAVE_TABLE_ENTRY_DAYCARE,
    SAVE_TABLE_ENTRY_PAL_PAD,
    SAVE_TABLE_ENTRY_MISC,
    SAVE_TABLE_ENTRY_FIELD_OVERWORLD_STATE,
    SAVE_TABLE_ENTRY_UNDERGROUND,
    SAVE_TABLE_ENTRY_REGULATION_BATTLES,
    SAVE_TABLE_ENTRY_IMAGE_CLIPS,
    SAVE_TABLE_ENTRY_MAILBOX,
    SAVE_TABLE_ENTRY_POFFINS,
    SAVE_TABLE_ENTRY_RECORD_MIXED_RNG,
    SAVE_TABLE_ENTRY_JOURNAL,
    SAVE_TABLE_ENTRY_TRAINER_CARD,
    SAVE_TABLE_ENTRY_GAME_RECORDS,
    SAVE_TABLE_ENTRY_SEAL_CASE,
    SAVE_TABLE_ENTRY_CHATOT,
    SAVE_TABLE_ENTRY_FRONTIER,
    SAVE_TABLE_ENTRY_RIBBONS,
    SAVE_TABLE_ENTRY_ENCOUNTERS,
    SAVE_TABLE_ENTRY_GLOBAL_TRADE,
    SAVE_TABLE_ENTRY_TV_BROADCAST,
    SAVE_TABLE_ENTRY_RANKINGS,
    SAVE_TABLE_ENTRY_WIFI_LIST,
    SAVE_TABLE_ENTRY_WIFI_HISTORY,
    SAVE_TABLE_ENTRY_MYSTERY_GIFT,
    SAVE_TABLE_ENTRY_PAL_PARK_TRANSFER,
    SAVE_TABLE_ENTRY_CONTESTS,
    SAVE_TABLE_ENTRY_SENTENCE,
    SAVE_TABLE_ENTRY_EMAIL,
    SAVE_TABLE_ENTRY_WIFI_QUESTIONS,
    SAVE_TABLE_ENTRY_PC_BOXES,

    SAVE_TABLE_ENTRY_MAX
};

enum ExtraSaveTableEntryID {
    EXTRA_SAVE_TABLE_ENTRY_HALL_OF_FAME = 0,
    EXTRA_SAVE_TABLE_ENTRY_FRONTIER,
    EXTRA_SAVE_TABLE_ENTRY_MY_RECORDINGS,
    EXTRA_SAVE_TABLE_ENTRY_DL_RECORDINGS_0,
    EXTRA_SAVE_TABLE_ENTRY_DL_RECORDINGS_1,
    EXTRA_SAVE_TABLE_ENTRY_DL_RECORDINGS_2,

    EXTRA_SAVE_TABLE_ENTRY_MAX
};

#define SAVE_PAGE_MAX    32
#define SAVE_SECTOR_SIZE (0x1000)

#define EXTRA_SAVE_TABLE_ENTRY_NONE 0xFFFFFFFF

#endif // POKEPLATINUM_CONSTANTS_SAVE_TABLE_H
