mirror of
				https://github.com/TomHarte/CLK.git
				synced 2025-11-04 00:16:26 +00:00 
			
		
		
		
	Permit 6502 to spin forever, doing nothing.
This commit is contained in:
		@@ -10,6 +10,8 @@
 | 
			
		||||
 | 
			
		||||
#include "Machines/MachineTypes.hpp"
 | 
			
		||||
 | 
			
		||||
#include "Processors/6502/6502.hpp"
 | 
			
		||||
 | 
			
		||||
#include "Analyser/Static/Acorn/Target.hpp"
 | 
			
		||||
 | 
			
		||||
namespace BBCMicro {
 | 
			
		||||
@@ -23,13 +25,28 @@ public:
 | 
			
		||||
	ConcreteMachine(
 | 
			
		||||
		const Analyser::Static::Acorn::BBCMicroTarget &target,
 | 
			
		||||
		const ROMMachine::ROMFetcher &rom_fetcher
 | 
			
		||||
	) {
 | 
			
		||||
	) :
 | 
			
		||||
		m6502_(*this)
 | 
			
		||||
	{
 | 
			
		||||
		set_clock_rate(2'000'000);
 | 
			
		||||
 | 
			
		||||
		(void)target;
 | 
			
		||||
		(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:
 | 
			
		||||
	// MARK: - ScanProducer.
 | 
			
		||||
	void set_scan_target(Outputs::Display::ScanTarget *) override {}
 | 
			
		||||
@@ -38,8 +55,12 @@ private:
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// 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