bsnes/higan/sfc/chip/msu1/msu1.hpp

49 lines
826 B
C++
Executable File

struct MSU1 : Coprocessor {
static void Enter();
void enter();
void init();
void load();
void unload();
void power();
void reset();
void data_open();
void audio_open();
uint8 mmio_read(unsigned addr);
void mmio_write(unsigned addr, uint8 data);
void serialize(serializer&);
private:
bool boot;
file datafile;
file audiofile;
enum Flag {
DataBusy = 0x80,
AudioBusy = 0x40,
AudioRepeating = 0x20,
AudioPlaying = 0x10,
AudioError = 0x08,
Revision = 0x01,
};
struct MMIO {
uint32 data_offset;
uint32 audio_offset;
uint32 audio_loop_offset;
uint16 audio_track;
uint8 audio_volume;
bool data_busy;
bool audio_busy;
bool audio_repeat;
bool audio_play;
bool audio_error;
} mmio;
};
extern MSU1 msu1;