rlm@1: #ifndef VBA_GB_H rlm@1: #define VBA_GB_H rlm@1: rlm@1: #if _MSC_VER > 1000 rlm@1: #pragma once rlm@1: #endif // _MSC_VER > 1000 rlm@1: rlm@1: #include "zlib.h" rlm@1: #include "../Port.h" rlm@1: rlm@1: typedef union rlm@1: { rlm@1: struct rlm@1: { rlm@1: #ifdef WORDS_BIGENDIAN rlm@1: u8 B1, B0; rlm@1: #else rlm@1: u8 B0, B1; rlm@1: #endif rlm@1: } B; rlm@1: u16 W; rlm@1: } gbRegister; rlm@1: rlm@1: extern bool gbLoadRom(const char *); rlm@1: extern void gbEmulate(int); rlm@1: extern bool gbIsGameboyRom(const char *); rlm@1: extern void gbSoundReset(); rlm@1: extern void gbSoundSetQuality(int); rlm@1: extern void gbReset(bool userReset = false); rlm@1: extern void gbCleanUp(); rlm@1: extern bool gbWriteBatteryFile(const char *); rlm@1: extern bool gbWriteBatteryFile(const char *, bool); rlm@1: extern bool gbWriteBatteryToStream(gzFile); rlm@1: extern bool gbReadBatteryFile(const char *); rlm@1: extern bool gbReadBatteryFromStream(gzFile); rlm@1: extern bool gbWriteSaveState(const char *); rlm@1: extern bool gbWriteMemSaveState(char *, int); rlm@1: extern bool gbReadSaveState(const char *); rlm@1: extern bool gbReadMemSaveState(char *, int); rlm@1: extern bool gbReadSaveStateFromStream(gzFile); rlm@1: extern bool gbWriteSaveStateToStream(gzFile); rlm@1: extern void gbSgbRenderBorder(); rlm@1: extern bool gbWritePNGFile(const char *); rlm@1: extern bool gbWriteBMPFile(const char *); rlm@1: extern bool gbReadGSASnapshot(const char *); rlm@1: rlm@59: extern int getRamSize(); rlm@59: extern int getRomSize(); rlm@60: extern void storeRam(int32 *); rlm@59: rlm@1: extern struct EmulatedSystem GBSystem; rlm@1: extern struct EmulatedSystemCounters &GBSystemCounters; rlm@1: rlm@1: #endif // VBA_GB_H