OXYGENHUB
◆ main openmsx / src / memory / RomAscii16_2.hh
764 B · C++ · last changed chore(): initial commit 1 month ago source blame history raw
e8555c89 Andy McCall 1
#ifndef ROMASCII16_2_HH
2
#define ROMASCII16_2_HH
3
4
#include "RomAscii16kB.hh"
5
6
#include <cstdint>
7
8
namespace openmsx {
9
10
class RomAscii16_2 final : public RomAscii16kB
11
{
12
public:
13
	enum class SubType : uint8_t { ASCII16_2, ASCII16_8 };
14
	RomAscii16_2(const DeviceConfig& config, Rom&& rom, SubType subType);
15
16
	void reset(EmuTime time) override;
17
	[[nodiscard]] byte readMem(uint16_t address, EmuTime time) override;
18
	[[nodiscard]] const byte* getReadCacheLine(uint16_t address) const override;
19
	void writeMem(uint16_t address, byte value, EmuTime time) override;
20
	[[nodiscard]] byte* getWriteCacheLine(uint16_t address) override;
21
22
	template<typename Archive>
23
	void serialize(Archive& ar, unsigned version);
24
25
private:
26
	byte sramEnabled;
27
};
28
29
} // namespace openmsx
30
31
#endif