51 lines
1.1 KiB
C
51 lines
1.1 KiB
C
#ifndef GB_H
|
|
#define GB_H
|
|
|
|
const int GB_C_FLAG = 0x10;
|
|
const int GB_H_FLAG = 0x20;
|
|
const int GB_N_FLAG = 0x40;
|
|
const int GB_Z_FLAG = 0x80;
|
|
|
|
typedef union {
|
|
struct {
|
|
#ifdef WORDS_BIGENDIAN
|
|
uint8_t B1, B0;
|
|
#else
|
|
uint8_t B0, B1;
|
|
#endif
|
|
} B;
|
|
uint16_t W;
|
|
} gbRegister;
|
|
|
|
extern gbRegister AF, BC, DE, HL, SP, PC;
|
|
extern uint16_t IFF;
|
|
int gbDis(char*, uint16_t);
|
|
|
|
bool gbLoadRom(const char*);
|
|
bool gbUpdateSizes();
|
|
void gbEmulate(int);
|
|
void gbWriteMemory(register uint16_t, register uint8_t);
|
|
void gbDrawLine();
|
|
bool gbIsGameboyRom(const char*);
|
|
void gbGetHardwareType();
|
|
void gbReset();
|
|
void gbCleanUp();
|
|
void gbCPUInit(const char*, bool);
|
|
bool gbWriteBatteryFile(const char*);
|
|
bool gbWriteBatteryFile(const char*, bool);
|
|
bool gbReadBatteryFile(const char*);
|
|
bool gbWriteSaveState(const char*);
|
|
bool gbWriteMemSaveState(char*, int, long&);
|
|
bool gbReadSaveState(const char*);
|
|
bool gbReadMemSaveState(char*, int);
|
|
void gbSgbRenderBorder();
|
|
bool gbWritePNGFile(const char*);
|
|
bool gbWriteBMPFile(const char*);
|
|
bool gbReadGSASnapshot(const char*);
|
|
|
|
extern int gbHardware;
|
|
|
|
extern struct EmulatedSystem GBSystem;
|
|
|
|
#endif // GB_H
|