mirror of
https://github.com/TomHarte/CLK.git
synced 2025-11-06 14:17:27 +00:00
Permit 6502 to spin forever, doing nothing.
This commit is contained in:
@@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
#include "Machines/MachineTypes.hpp"
|
#include "Machines/MachineTypes.hpp"
|
||||||
|
|
||||||
|
#include "Processors/6502/6502.hpp"
|
||||||
|
|
||||||
#include "Analyser/Static/Acorn/Target.hpp"
|
#include "Analyser/Static/Acorn/Target.hpp"
|
||||||
|
|
||||||
namespace BBCMicro {
|
namespace BBCMicro {
|
||||||
@@ -23,13 +25,28 @@ public:
|
|||||||
ConcreteMachine(
|
ConcreteMachine(
|
||||||
const Analyser::Static::Acorn::BBCMicroTarget &target,
|
const Analyser::Static::Acorn::BBCMicroTarget &target,
|
||||||
const ROMMachine::ROMFetcher &rom_fetcher
|
const ROMMachine::ROMFetcher &rom_fetcher
|
||||||
) {
|
) :
|
||||||
|
m6502_(*this)
|
||||||
|
{
|
||||||
set_clock_rate(2'000'000);
|
set_clock_rate(2'000'000);
|
||||||
|
|
||||||
(void)target;
|
(void)target;
|
||||||
(void)rom_fetcher;
|
(void)rom_fetcher;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MARK: - 6502 bus.
|
||||||
|
Cycles perform_bus_operation(
|
||||||
|
const CPU::MOS6502::BusOperation operation,
|
||||||
|
const uint16_t address,
|
||||||
|
uint8_t *const value
|
||||||
|
) {
|
||||||
|
(void)operation;
|
||||||
|
(void)address;
|
||||||
|
(void)value;
|
||||||
|
|
||||||
|
return Cycles(1);
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// MARK: - ScanProducer.
|
// MARK: - ScanProducer.
|
||||||
void set_scan_target(Outputs::Display::ScanTarget *) override {}
|
void set_scan_target(Outputs::Display::ScanTarget *) override {}
|
||||||
@@ -38,8 +55,12 @@ private:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// MARK: - TimedMachine.
|
// MARK: - TimedMachine.
|
||||||
void run_for(const Cycles) override {
|
void run_for(const Cycles cycles) override {
|
||||||
|
m6502_.run_for(cycles);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MARK: - Components.
|
||||||
|
CPU::MOS6502::Processor<CPU::MOS6502::Personality::P6502, ConcreteMachine, false> m6502_;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user