14#if COMPONENT_LASERDISC
27 virtual void setMotor(
bool status, EmuTime::param time) = 0;
36 virtual void cassetteOut(
bool output, EmuTime::param time) = 0;
42 [[nodiscard]]
virtual bool lastOut()
const = 0;
54#if COMPONENT_LASERDISC
68 void setMotor(
bool status, EmuTime::param time)
override;
69 void cassetteOut(
bool output, EmuTime::param time)
override;
71#if COMPONENT_LASERDISC
74 [[nodiscard]]
bool lastOut()
const override;
78 [[nodiscard]] std::string_view
getClass()
const override;
80 template<
typename Archive>
81 void serialize(Archive& ar,
unsigned version);
88#if COMPONENT_LASERDISC
93 bool lastOutput =
false;
94 bool motorControl =
false;
101 void setMotor(
bool status, EmuTime::param time)
override;
102 void cassetteOut(
bool output, EmuTime::param time)
override;
103 bool cassetteIn(EmuTime::param time)
override;
104#if COMPONENT_LASERDISC
107 [[nodiscard]]
bool lastOut()
const override;
virtual ~CassettePortInterface()=default
virtual void cassetteOut(bool output, EmuTime::param time)=0
Writes one bit to the cassette port.
virtual void setMotor(bool status, EmuTime::param time)=0
Sets the cassette motor relay false = off true = on.
virtual bool cassetteIn(EmuTime::param time)=0
Reads one bit from the cassette port.
virtual bool lastOut() const =0
last bit written to CasOut.
bool cassetteIn(EmuTime::param time) override
Reads one bit from the cassette port.
void cassetteOut(bool output, EmuTime::param time) override
Writes one bit to the cassette port.
bool lastOut() const override
last bit written to CasOut.
void serialize(Archive &ar, unsigned version)
std::string_view getClass() const override
A Connector belong to a certain class.
void setMotor(bool status, EmuTime::param time) override
Sets the cassette motor relay false = off true = on.
std::string_view getDescription() const override
Get a description for this connector.
Represents something you can plug devices into.
bool lastOut() const override
last bit written to CasOut.
bool cassetteIn(EmuTime::param time) override
Reads one bit from the cassette port.
void cassetteOut(bool output, EmuTime::param time) override
Writes one bit to the cassette port.
void setMotor(bool status, EmuTime::param time) override
Sets the cassette motor relay false = off true = on.
This file implemented 3 utility functions: