1
0
mirror of https://github.com/livingcomputermuseum/ContrAlto.git synced 2026-01-17 08:34:15 +00:00

51 lines
1.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Contralto.CPU;
using Contralto.Memory;
namespace Contralto
{
/// <summary>
/// Encapsulates all Alto hardware; represents a complete Alto system.
/// Provides interfaces for controlling and debugging the system externally.
/// </summary>
public class AltoSystem
{
public AltoSystem()
{
_cpu = new AltoCPU(this);
_mem = new MemoryBus();
Reset();
}
public void Reset()
{
_cpu.Reset();
_mem.Reset();
}
public void SingleStep()
{
_mem.Clock();
_cpu.ExecuteNext();
}
public AltoCPU CPU
{
get { return _cpu; }
}
public MemoryBus MemoryBus
{
get { return _mem; }
}
private AltoCPU _cpu;
private MemoryBus _mem;
}
}