public TestSystemWithMultiportDevice(IDictionary<byte, IList<byte>> valuesForPortAddresses) { // Initialize components clock = new _Clock(3500000L); cpu = new __Z80CPU(); memory = new _TestMemory(65536, 0); multiportDevice = new _TestMultiportDevice(); multiportDevice.ReadValuesForPortAddresses = valuesForPortAddresses; // Connect buses cpu.Address.ConnectTo(addressBus); cpu.Data.ConnectTo(dataBus); memory.Address.ConnectTo(addressBus); memory.Data.ConnectTo(dataBus); multiportDevice.Address.ConnectTo(addressBus); multiportDevice.Data.ConnectTo(dataBus); // Connect individual PINs ((_Clock)clock).ConnectTo(cpu, (TestMemory)memory); ((__Z80CPU)cpu).ConnectTo(clock, (TestMemory)memory, multiportDevice); ((_TestMemory)memory).ConnectTo(clock, cpu); ((_TestMultiportDevice)multiportDevice).ConnectTo(cpu); }
public TestSystemWithMultiportDevice(IDictionary <byte, IList <byte> > valuesForPortAddresses) { // Initialize components clock = new _Clock(3500000L); cpu = new __Z80CPU(); memory = new _TestMemory(65536, 0); multiportDevice = new _TestMultiportDevice(); multiportDevice.ReadValuesForPortAddresses = valuesForPortAddresses; // Connect buses cpu.Address.ConnectTo(addressBus); cpu.Data.ConnectTo(dataBus); memory.Address.ConnectTo(addressBus); memory.Data.ConnectTo(dataBus); multiportDevice.Address.ConnectTo(addressBus); multiportDevice.Data.ConnectTo(dataBus); // Connect individual PINs ((_Clock)clock).ConnectTo(cpu, (TestMemory)memory); ((__Z80CPU)cpu).ConnectTo(clock, (TestMemory)memory, multiportDevice); ((_TestMemory)memory).ConnectTo(clock, cpu); ((_TestMultiportDevice)multiportDevice).ConnectTo(cpu); }
public void ConnectTo(Clock clock, TestMemory memory, TestMultiportDevice multiportDevice) { base.ConnectTo(clock, memory); this.multiportDevice = multiportDevice; }