CLK's 6502 - TomHarte/CLK GitHub Wiki
CLK's 6502 is provided as a template. It reproduces the behaviour of a real 6502: a particular concrete implementation must provide the bus on which the machine sits — subclasses must implement int perform_bus_operation(CPU::MOS6502::BusOperation operation, uint16_t address, uint8_t *value).
The class is organised so that concrete machines can be implemented with either an is-a or a has-a relationship with the 6502.