view src/gb/GB.h @ 536:c2ee7222a3c4

investigating a problem with bad sound when writing RAM with bootstrapping program
author Robert McIntyre <rlm@mit.edu>
date Mon, 25 Jun 2012 14:23:16 -0500
parents fa7676dbf6f2
children
line wrap: on
line source
1 #ifndef VBA_GB_H
2 #define VBA_GB_H
4 #if _MSC_VER > 1000
5 #pragma once
6 #endif // _MSC_VER > 1000
8 #include "zlib.h"
9 #include "../Port.h"
11 typedef union
12 {
13 struct
14 {
15 #ifdef WORDS_BIGENDIAN
16 u8 B1, B0;
17 #else
18 u8 B0, B1;
19 #endif
20 } B;
21 u16 W;
22 } gbRegister;
24 extern bool gbLoadRom(const char *);
25 extern int gbEmulate(int);
26 extern bool gbIsGameboyRom(const char *);
27 extern void gbSoundReset();
28 extern void gbSoundSetQuality(int);
29 extern void gbReset(bool userReset = false);
30 extern void gbCleanUp();
31 extern bool gbWriteBatteryFile(const char *);
32 extern bool gbWriteBatteryFile(const char *, bool);
33 extern bool gbWriteBatteryToStream(gzFile);
34 extern bool gbReadBatteryFile(const char *);
35 extern bool gbReadBatteryFromStream(gzFile);
36 extern bool gbWriteSaveState(const char *);
37 extern bool gbWriteMemSaveState(char *, int);
38 extern bool gbReadSaveState(const char *);
39 extern bool gbReadMemSaveState(char *, int);
40 extern bool gbReadSaveStateFromStream(gzFile);
41 extern bool gbWriteSaveStateToStream(gzFile);
42 extern void gbSgbRenderBorder();
43 extern bool gbWritePNGFile(const char *);
44 extern bool gbWriteBMPFile(const char *);
45 extern bool gbReadGSASnapshot(const char *);
47 extern void getPixels32(int32 *);
49 extern int getRamSize();
50 extern int getRomSize();
52 extern void storeMemory(int32 *);
53 extern void writeMemory(int32 *);
55 extern void storeRam(int32 *);
56 extern void storeRom(int32 *);
57 extern void writeRom(int32 *);
59 extern void storeWRam(int32 *);
60 extern void storeVRam(int32 *);
61 extern void storeRegisters(int32 *);
62 extern void setRegisters(int32 *);
64 extern long gbWriteMemSaveStatePos(char *, int);
66 extern u8 gbReadMemory(u16 address);
68 extern u16 soundFrameSound[735 * 30 * 2];
69 extern u16 soundFinalWave[1470];
70 extern int32 soundFrameSoundWritten;
71 extern u8 soundCopyBuffer[1470 * 2];
74 extern struct EmulatedSystem GBSystem;
75 extern struct EmulatedSystemCounters &GBSystemCounters;
77 #endif // VBA_GB_H