libsidplayfp  1.8.7
Public Member Functions | Protected Member Functions | List of all members
c64cia2 Class Reference

#include <c64cia.h>

Inheritance diagram for c64cia2:
MOS6526 Bank component

Public Member Functions

 c64cia2 (c64env *env)
 
void poke (uint_least16_t address, uint8_t value)
 
uint8_t peek (uint_least16_t address)
 
- Public Member Functions inherited from MOS6526
virtual void reset ()
 
void setDayOfTimeRate (unsigned int clock)
 

Protected Member Functions

void interrupt (bool state)
 
- Protected Member Functions inherited from MOS6526
 MOS6526 (EventContext *context)
 
void bTick ()
 
void trigger ()
 
void underflowA ()
 
void underflowB ()
 
void trigger (uint8_t interruptMask)
 
void clear ()
 
void serialPort ()
 
virtual void portA ()
 
virtual void portB ()
 
uint8_t read (uint_least8_t addr)
 
void write (uint_least8_t addr, uint8_t data)
 

Additional Inherited Members

- Static Public Member Functions inherited from MOS6526
static const char * credits ()
 
- Protected Attributes inherited from MOS6526
uint8_t regs [0x10]
 These are all CIA registers.
 
uint8_t icr
 Interrupt control register.
 
uint8_t idr
 Interrupt data register.
 
EventContextevent_context
 Event context.
 
Tod tod
 TOD.
 
bool triggerScheduled
 Have we already scheduled CIA->CPU interrupt transition?
 
uint8_t & pra
 Ports.
 
uint8_t & prb
 Ports.
 
uint8_t & ddra
 Ports.
 
uint8_t & ddrb
 Ports.
 
TimerA timerA
 Timers A and B.
 
TimerB timerB
 Timers A and B.
 
uint8_t sdr_out
 Serial Data Registers.
 
bool sdr_buffered
 Serial Data Registers.
 
int sdr_count
 Serial Data Registers.
 
EventCallback< MOS6526bTickEvent
 Events.
 
EventCallback< MOS6526triggerEvent
 Events.
 

Detailed Description

CIA 2

Generates NMIs

Located at $DD00-$DDFF

Member Function Documentation

§ interrupt()

void c64cia2::interrupt ( bool  state)
inlineprotectedvirtual

Signal interrupt.

Parameters
stateinterrupt state

Implements MOS6526.

§ peek()

uint8_t c64cia2::peek ( uint_least16_t  address)
inlinevirtual

Bank read. You probably should override this method, except if the Bank is only used in write context.

Parameters
addressvalue to read from
Returns
value at address

Implements Bank.

§ poke()

void c64cia2::poke ( uint_least16_t  address,
uint8_t  value 
)
inlinevirtual

Bank write.

Override this method if you expect write operations on your bank. Leave unimplemented if it's logically/operationally impossible for writes to ever arrive to bank.

Parameters
addressaddress to write to
valuevalue to write

Implements Bank.


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