public void Execute(Instruction instruction, ICpu cpu, IMmu mmu) { // Only call the routine if the zero flag is set if (!cpu.Registers.F.ZeroFlag) { IncrementProgramCounter = true; return; } cpu.Stack.Call(cpu.ReadImmediateNN(), cpu.Registers, mmu); IncrementProgramCounter = false; }
public void Execute(Instruction instruction, ICpu cpu, IMmu mmu) { var nn = cpu.ReadImmediateNN(); mmu.WriteByte(nn, cpu.Registers.A.Value); }
public void Execute(Instruction instruction, ICpu cpu, IMmu mmu) { cpu.Registers.HL.Value = cpu.ReadImmediateNN(); }
public void Execute(Instruction instruction, ICpu cpu, IMmu mmu) { var nn = cpu.ReadImmediateNN(); cpu.Stack.Call(nn, cpu.Registers, mmu); }