openMSX
Public Types | Public Member Functions | Friends | List of all members
openmsx::Counter Class Reference

Public Types

enum  ByteOrder { LOW, HIGH }
 

Public Member Functions

 Counter (Scheduler &scheduler, ClockPinListener *listener, EmuTime::param time)
 
void reset (EmuTime::param time)
 
byte readIO (EmuTime::param time)
 
byte peekIO (EmuTime::param time) const
 
void writeIO (byte value, EmuTime::param time)
 
void setGateStatus (bool status, EmuTime::param time)
 
void writeControlWord (byte value, EmuTime::param time)
 
void latchStatus (EmuTime::param time)
 
void latchCounter (EmuTime::param time)
 
template<typename Archive >
void serialize (Archive &ar, unsigned version)
 

Friends

class I8254
 

Detailed Description

Definition at line 19 of file I8254.cc.

Member Enumeration Documentation

◆ ByteOrder

Enumerator
LOW 
HIGH 

Definition at line 36 of file I8254.cc.

Constructor & Destructor Documentation

◆ Counter()

openmsx::Counter::Counter ( Scheduler scheduler,
ClockPinListener listener,
EmuTime::param  time 
)

Definition at line 182 of file I8254.cc.

References reset().

Member Function Documentation

◆ latchCounter()

void openmsx::Counter::latchCounter ( EmuTime::param  time)

Definition at line 363 of file I8254.cc.

References utf8::advance(), and LOW.

Referenced by writeControlWord().

◆ latchStatus()

void openmsx::Counter::latchStatus ( EmuTime::param  time)

Definition at line 353 of file I8254.cc.

References utf8::advance(), and openmsx::ClockPin::getState().

◆ peekIO()

byte openmsx::Counter::peekIO ( EmuTime::param  time) const

Definition at line 242 of file I8254.cc.

References utf8::advance().

◆ readIO()

byte openmsx::Counter::readIO ( EmuTime::param  time)

Definition at line 211 of file I8254.cc.

References utf8::advance().

◆ reset()

void openmsx::Counter::reset ( EmuTime::param  time)

Definition at line 193 of file I8254.cc.

References LOW.

Referenced by Counter().

◆ serialize()

template<typename Archive >
void openmsx::Counter::serialize ( Archive &  ar,
unsigned  version 
)

Definition at line 516 of file I8254.cc.

◆ setGateStatus()

void openmsx::Counter::setGateStatus ( bool  status,
EmuTime::param  time 
)

◆ writeControlWord()

void openmsx::Counter::writeControlWord ( byte  value,
EmuTime::param  time 
)

Definition at line 322 of file I8254.cc.

References utf8::advance(), latchCounter(), LOW, openmsx::ClockPin::setState(), and UNREACHABLE.

◆ writeIO()

void openmsx::Counter::writeIO ( byte  value,
EmuTime::param  time 
)

Friends And Related Function Documentation

◆ I8254

friend class I8254
friend

Definition at line 69 of file I8254.cc.


The documentation for this class was generated from the following file: