OXYGENHUB
◆ main openmsx / src / MSXKanji12.hh
776 B · C++ · last changed chore(): initial commit 1 month ago source blame history raw
1
#ifndef MSXKANJI12_HH
2
#define MSXKANJI12_HH
3
4
#include "MSXDevice.hh"
5
#include "MSXSwitchedDevice.hh"
6
#include "Rom.hh"
7
8
namespace openmsx {
9
10
class MSXKanji12 final : public MSXDevice, public MSXSwitchedDevice
11
{
12
public:
13
	explicit MSXKanji12(DeviceConfig& config);
14
15
	// MSXDevice
16
	void reset(EmuTime time) override;
17
18
	// MSXSwitchedDevice
19
	[[nodiscard]] byte readSwitchedIO(uint16_t port, EmuTime time) override;
20
	[[nodiscard]] byte peekSwitchedIO(uint16_t port, EmuTime time) const override;
21
	void writeSwitchedIO(uint16_t port, byte value, EmuTime time) override;
22
23
	void getExtraDeviceInfo(TclObject& result) const override;
24
25
	template<typename Archive>
26
	void serialize(Archive& ar, unsigned version);
27
28
private:
29
	Rom rom;
30
	unsigned address;
31
};
32
33
} // namespace openmsx
34
35
#endif