30 #include "EventScheduler.h" 31 #include "c64/component.h" 110 static const char *credit;
113 event_clock_t last_clear;
203 void trigger(uint8_t interruptMask);
223 virtual void portA() {}
224 virtual void portB() {}
232 uint8_t
read(uint_least8_t addr);
242 void write(uint_least8_t addr, uint8_t data);
258 virtual void reset();
266 static const char *
credits() {
return credit; }
void bTick()
Definition: mos6526.cpp:346
uint8_t regs[0x10]
These are all CIA registers.
Definition: mos6526.h:120
uint8_t & ddrb
Ports.
Definition: mos6526.h:124
Definition: mos6526.h:103
EventCallback< MOS6526 > spEvent
Events.
Definition: mos6526.h:159
uint8_t idr
Interrupt data register.
Definition: mos6526.h:144
TimerB(EventContext *context, MOS6526 *parent)
Definition: mos6526.h:75
TimerA timerA
Timers A and B.
Definition: mos6526.h:129
int sdr_count
Serial Data Registers.
Definition: mos6526.h:137
uint8_t sdr_out
Serial Data Registers.
Definition: mos6526.h:135
void cascade()
Definition: mos6526.h:81
uint8_t read(uint_least8_t addr)
Definition: mos6526.cpp:158
void trigger()
Definition: mos6526.cpp:304
void setPeriod(event_clock_t clock)
Definition: tod.h:114
static const char * credits()
Definition: mos6526.h:266
EventCallback< MOS6526 > bTickEvent
Events.
Definition: mos6526.h:157
void clear()
Definition: mos6526.cpp:126
MOS6526 *const parent
Pointer to the MOS6526 which this Timer belongs to.
Definition: timer.h:88
uint8_t & ddra
Ports.
Definition: mos6526.h:124
void underflowA()
Definition: mos6526.cpp:351
EventCallback< MOS6526 > triggerEvent
Events.
Definition: mos6526.h:158
Tod tod
TOD.
Definition: mos6526.h:150
Definition: component.h:28
bool triggerScheduled
Have we already scheduled CIA->CPU interrupt transition?
Definition: mos6526.h:153
void serialPort()
Definition: mos6526.cpp:105
int_least32_t state
CRA/CRB control register / state.
Definition: timer.h:91
void underflowB()
Definition: mos6526.cpp:363
uint8_t & prb
Ports.
Definition: mos6526.h:124
bool sdr_buffered
Serial Data Registers.
Definition: mos6526.h:136
void write(uint_least8_t addr, uint8_t data)
Definition: mos6526.cpp:229
uint8_t icr
Interrupt control register.
Definition: mos6526.h:141
MOS6526(EventContext *context)
Definition: mos6526.cpp:86
virtual void reset()
Definition: mos6526.cpp:134
virtual void interrupt(bool state)=0
void syncWithCpu()
Definition: timer.cpp:34
void wakeUpAfterSyncWithCpu()
Definition: timer.cpp:57
TimerA(EventContext *context, MOS6526 *parent)
Definition: mos6526.h:56
EventContext & event_context
Event context.
Definition: mos6526.h:147
uint8_t & pra
Ports.
Definition: mos6526.h:124
void setDayOfTimeRate(unsigned int clock)
Definition: mos6526.h:273
bool started() const
Definition: mos6526.h:94
TimerB timerB
Timers A and B.
Definition: mos6526.h:130