public CpuReadParameterThenExecute(Die die) : base(die, createInstruction: false) { // turn off refresh logic - not a true M1 cycle. RefreshEnabled = false; // read d-offset that comes before the opcode _currentPart = new ReadT3InstructionPart(Die, MachineCycleNames.M1); }
protected override void OnClockNeg() { base.OnClockNeg(); if (ExecutionEngine.Cycles.CycleName == CycleNames.T3 && ExecutionEngine.Cycles.MachineCycle == MachineCycleNames.M1) { if (!_opcodeWasRead) { // read instruction opcode _currentPart = new ReadT3InstructionPart(Die, MachineCycleNames.M1); ExecutionEngine.Cycles.Continue(5); _opcodeWasRead = true; } else { // done reading opcode _currentPart = null; } } }