public void TestSetAndReadBytes() //MOV AL, BH { byte[] test; RegistersController registry = new IndexRegisters(); registry.SetBytesToRegistry("SI", 0, 1); test = registry.GetRegistry("SI"); Assert.AreEqual(BitConverter.ToUInt16(test), 256); registry.SetBytesToRegistry("DI", 0, 255); test = registry.GetRegistry("DI"); Assert.AreEqual(BitConverter.ToUInt16(test), 65280); registry.SetBytesToRegistry("SI", 1, 0, 1, 0, 1, 0); test = registry.GetRegistry("SI"); Assert.AreEqual(BitConverter.ToUInt16(test), 1); registry.SetBytesToRegistry("DI", 255); test = registry.GetRegistry("DI"); Assert.AreEqual(BitConverter.ToUInt16(test), 255); registry.SetBytesToRegistry("SI"); test = registry.GetRegistry("SI"); Assert.AreEqual(BitConverter.ToUInt16(test), 1); }
public MainWindow() { InitializeComponent(); MemoryModel.SetAddressBusLength = 20; MemoryModel.GetInstance().AddObserver(this); memoryView = new MemoryView(); Go_Click(null, null); generalPurposeRegisters = new GeneralPurposeRegisters(); indexRegisters = new IndexRegisters(); pointerRegisters = new PointerRegisters(); segmentRegisters = new SegmentRegisters(); commandInterpreter = InitDefaultRegistryCommander(); generalPurposeRegistersView = new GeneralPurposeRegistersView(new HexParser()); indexRegistersView = new IndexRegistersView(new HexParser()); pointerRegistersView = new PointerRegistersView(new HexParser()); segmentRegistersView = new SegmentRegistersView(new HexParser()); if (generalPurposeRegisters is Observable observableGeneralPurposeReg) { observableGeneralPurposeReg.AddObserver(generalPurposeRegistersView); } if (indexRegisters is Observable observableIndexReg) { observableIndexReg.AddObserver(indexRegistersView); } if (pointerRegisters is Observable observablePointersReg) { observablePointersReg.AddObserver(pointerRegistersView); } if (segmentRegisters is Observable observableSegmentsReg) { observableSegmentsReg.AddObserver(segmentRegistersView); } SetBlockDataContext(); }