2013-01-23 08:28:35 +00:00
|
|
|
struct BSXCartridge {
|
|
|
|
MappedRAM rom;
|
|
|
|
MappedRAM ram;
|
|
|
|
MappedRAM psram;
|
|
|
|
|
|
|
|
void init();
|
|
|
|
void load();
|
|
|
|
void unload();
|
|
|
|
void power();
|
|
|
|
void reset();
|
|
|
|
|
|
|
|
uint8 memory_access(bool write, Memory &memory, unsigned addr, uint8 data);
|
|
|
|
uint8 memory_read(Memory &memory, unsigned addr);
|
|
|
|
void memory_write(Memory &memory, unsigned addr, uint8 data);
|
|
|
|
|
|
|
|
uint8 mcu_access(bool write, unsigned addr, uint8 data = 0x00);
|
|
|
|
uint8 mcu_read(unsigned addr);
|
|
|
|
void mcu_write(unsigned addr, uint8 data);
|
|
|
|
|
|
|
|
uint8 mmio_read(unsigned addr);
|
|
|
|
void mmio_write(unsigned addr, uint8 data);
|
|
|
|
void mmio_commit();
|
|
|
|
|
|
|
|
void serialize(serializer&);
|
|
|
|
|
|
|
|
private:
|
|
|
|
uint8 r[16];
|
|
|
|
bool r00, r01, r02, r03;
|
|
|
|
bool r04, r05, r06, r07;
|
|
|
|
bool r08, r09, r0a, r0b;
|
|
|
|
bool r0c, r0d, r0e, r0f;
|
|
|
|
};
|
|
|
|
|
|
|
|
extern BSXCartridge bsxcartridge;
|