1 #ifndef GBA_CHEATS_H 2 #define GBA_CHEATS_H 3 4 struct CheatsData { 5 int code; 6 int size; 7 int status; 8 bool enabled; 9 uint32_t rawaddress; 10 uint32_t address; 11 uint32_t value; 12 uint32_t oldValue; 13 char codestring[20]; 14 char desc[32]; 15 }; 16 17 void cheatsAdd(const char *codeStr, const char *desc, uint32_t rawaddress, uint32_t address, uint32_t value, int code, int size); 18 void cheatsAddCheatCode(const char *code, const char *desc); 19 void cheatsAddGSACode(const char *code, const char *desc, bool v3); 20 void cheatsAddCBACode(const char *code, const char *desc); 21 bool cheatsImportGSACodeFile(const char *name, int game, bool v3); 22 void cheatsDelete(int number, bool restore); 23 void cheatsDeleteAll(bool restore); 24 void cheatsEnable(int number); 25 void cheatsDisable(int number); 26 void cheatsSaveCheatList(const char *file); 27 bool cheatsLoadCheatList(const char *file); 28 void cheatsWriteMemory(uint32_t address, uint32_t value); 29 void cheatsWriteHalfWord(uint32_t address, uint16_t value); 30 void cheatsWriteByte(uint32_t address, uint8_t value); 31 int cheatsCheckKeys(uint32_t keys, uint32_t extended); 32 33 extern int cheatsNumber; 34 extern CheatsData cheatsList[100]; 35 36 #endif // CHEATS_H 37