class SDD1 {
public:
void init();
void load();
void unload();
void power();
void reset();
uint8 mmio_read(unsigned addr);
void mmio_write(unsigned addr, uint8 data);
uint8 rom_read(unsigned addr);
uint8 mcu_read(unsigned addr);
void mcu_write(unsigned addr, uint8 data);
void serialize(serializer&);
SDD1();
~SDD1();
private:
uint8 sdd1_enable;
uint8 xfer_enable;
bool dma_ready;
unsigned mmc[4];
struct {
unsigned addr;
uint16 size;
} dma[8];
public:
#include "decomp.hpp"
Decomp decomp;
};
extern SDD1 sdd1;