// $Id: MSXFmPac.hh 4909 2005-12-03 18:58:10Z arnoldmnl $ #ifndef MSXFMPAC_HH #define MSXFMPAC_HH #include "MSXMusic.hh" #include namespace openmsx { class SRAM; class MSXFmPac : public MSXMusic { public: MSXFmPac(MSXMotherBoard& motherBoard, const XMLElement& config, const EmuTime& time); virtual ~MSXFmPac(); virtual void reset(const EmuTime& time); virtual void writeIO(word port, byte value, const EmuTime& time); virtual byte readMem(word address, const EmuTime& time); virtual void writeMem(word address, byte value, const EmuTime& time); virtual const byte* getReadCacheLine(word address) const; virtual byte* getWriteCacheLine(word address) const; private: void checkSramEnable(); const std::auto_ptr sram; byte enable; byte bank; byte r1ffe, r1fff; bool sramEnabled; }; } // namespace openmsx #endif