|
libsidplayfp 2.6.0
|
#include <mos6510.h>

Classes | |
| class | haltInstruction |
Public Member Functions | |
| void | reset () |
| void | debug (bool enable, FILE *out) |
| void | setRDY (bool newRDY) |
| void | triggerRST () |
| void | triggerNMI () |
| void | triggerIRQ () |
| void | clearIRQ () |
Static Public Member Functions | |
| static const char * | credits () |
Static Public Attributes | |
| static const int | SR_INTERRUPT = 2 |
| Status register interrupt bit. | |
Protected Member Functions | |
| MOS6510 (EventScheduler &scheduler) | |
| virtual uint8_t | cpuRead (uint_least16_t addr)=0 |
| virtual void | cpuWrite (uint_least16_t addr, uint8_t data)=0 |
Cycle-exact 6502/6510 emulation core.
Code is based on work by Simon A. White sidpl.nosp@m.ay2@.nosp@m.yahoo.nosp@m..com. Original Java port by Ken Händel. Later on, it has been hacked to improve compatibility with Lorenz suite on VICE's test suite.
|
protected |
Create new CPU emu.
| context | The Event Context |
| void libsidplayfp::MOS6510::clearIRQ | ( | ) |
Inform CPU that IRQ is no longer pulled low.
|
protectedpure virtual |
Get data from system environment.
| address |
Implemented in libsidplayfp::c64cpu.
|
protectedpure virtual |
| void libsidplayfp::MOS6510::reset | ( | ) |
Reset CPU Emulation.
Handle bus access signals. When RDY line is asserted, the CPU will pause when executing the next read operation.
| newRDY | new state for RDY signal |
| void libsidplayfp::MOS6510::triggerIRQ | ( | ) |
Pull IRQ line low on CPU.
| void libsidplayfp::MOS6510::triggerNMI | ( | ) |
Trigger NMI interrupt on the CPU. Calling this method flags that CPU must enter the NMI routine at earliest opportunity. There is no way to cancel NMI request once given.
| void libsidplayfp::MOS6510::triggerRST | ( | ) |
This forces the CPU to abort whatever it is doing and immediately enter the RST interrupt handling sequence. The implementation is not compatible: instructions actually get aborted mid-execution. However, there is no possible way to trigger this signal from programs, so it's OK.