import from github
This commit is contained in:
58
include/load_save.h
Normal file
58
include/load_save.h
Normal file
@ -0,0 +1,58 @@
|
||||
#ifndef GUARD_LOAD_SAVE_H
|
||||
#define GUARD_LOAD_SAVE_H
|
||||
|
||||
#include "pokemon_storage_system.h"
|
||||
|
||||
#define SAVEBLOCK_MOVE_RANGE 128
|
||||
|
||||
/**
|
||||
* These structs are to prevent them from being reordered on newer or modern
|
||||
* toolchains. If this is not done, the ClearSav functions will end up erasing
|
||||
* the wrong memory leading to various glitches.
|
||||
*/
|
||||
struct SaveBlock2DMA {
|
||||
struct SaveBlock2 block;
|
||||
u8 dma[SAVEBLOCK_MOVE_RANGE];
|
||||
};
|
||||
|
||||
struct SaveBlock1DMA {
|
||||
struct SaveBlock1 block;
|
||||
u8 dma[SAVEBLOCK_MOVE_RANGE];
|
||||
};
|
||||
|
||||
struct PokemonStorageDMA {
|
||||
struct PokemonStorage block;
|
||||
u8 dma[SAVEBLOCK_MOVE_RANGE];
|
||||
};
|
||||
|
||||
extern struct SaveBlock1DMA gSaveblock1;
|
||||
extern struct SaveBlock2DMA gSaveblock2;
|
||||
extern struct PokemonStorageDMA gPokemonStorage;
|
||||
|
||||
extern bool32 gFlashMemoryPresent;
|
||||
extern struct SaveBlock1 *gSaveBlock1Ptr;
|
||||
extern struct SaveBlock2 *gSaveBlock2Ptr;
|
||||
extern struct PokemonStorage *gPokemonStoragePtr;
|
||||
|
||||
void CheckForFlashMemory(void);
|
||||
void ClearSav2(void);
|
||||
void ClearSav1(void);
|
||||
void SetSaveBlocksPointers(u16 offset);
|
||||
void MoveSaveBlocks_ResetHeap(void);
|
||||
u32 UseContinueGameWarp(void);
|
||||
void ClearContinueGameWarpStatus(void);
|
||||
void SetContinueGameWarpStatus(void);
|
||||
void SetContinueGameWarpStatusToDynamicWarp(void);
|
||||
void ClearContinueGameWarpStatus2(void);
|
||||
void SavePlayerParty(void);
|
||||
void LoadPlayerParty(void);
|
||||
void SaveObjectEvents(void);
|
||||
void LoadObjectEvents(void);
|
||||
void CopyPartyAndObjectsToSave(void);
|
||||
void CopyPartyAndObjectsFromSave(void);
|
||||
void LoadPlayerBag(void);
|
||||
void SavePlayerBag(void);
|
||||
void ApplyNewEncryptionKeyToHword(u16 *hWord, u32 newKey);
|
||||
void ApplyNewEncryptionKeyToWord(u32 *word, u32 newKey);
|
||||
|
||||
#endif // GUARD_LOAD_SAVE_H
|
Reference in New Issue
Block a user