19class Expert final :
public Cartridge {
21 CartridgeTraits traits = {
35 .switchNeutral =
"Off",
39 virtual const CartridgeTraits &getCartridgeTraits()
const override {
return traits; }
51 using Cartridge::Cartridge;
58 void _dump(Category category, std::ostream& os)
const override;
67 Expert& operator= (
const Expert& other) {
69 Cartridge::operator=(other);
75 virtual void clone(
const Cartridge &other)
override { *
this = (
const Expert &)other; }
78 void serialize(T& worker)
80 if (isResetter(worker))
return;
86 } CARTRIDGE_SERIALIZERS(serialize);
93 void loadChip(isize nr,
const CRTFile &crt)
override;
100 void updatePeekPokeLookupTables()
override;
101 u8 peek(u16 addr)
override;
102 u8 peekIO1(u16 addr)
override;
103 u8 spypeekIO1(u16 addr)
const override;
104 void poke(u16 addr, u8 value)
override;
105 void pokeIO1(u16 addr, u8 value)
override;
107 bool cartridgeRamIsVisible(u16 addr)
const;
108 bool cartridgeRamIsWritable(u16 addr)
const;
115 isize numButtons()
const override {
return 2; }
116 const char *getButtonTitle(isize nr)
const override;
117 void pressButton(isize nr)
override;
124 const char *getSwitchDescription(isize pos)
const override;
125 bool switchInPrgPosition()
const {
return switchIsLeft(); }
126 bool switchInOffPosition()
const {
return switchIsNeutral(); }
127 bool switchInOnPosition()
const {
return switchIsRight(); }
134 void nmiWillTrigger()
override;
VirtualC64 project namespace.
Definition CmdQueue.cpp:16