예제 #1
0
 public SubtractOrCompare(Z80Cpu cpu, IAddressMode <byte> addressMode, bool withCarry = false, bool updateAccumulator = true)
 {
     _cpu               = cpu;
     _addressMode       = addressMode;
     _withCarry         = withCarry;
     _updateAccumulator = updateAccumulator;
 }
예제 #2
0
파일: RLx_RRx.cs 프로젝트: dolbz/Z80Sharp
 public RotateShiftBase(Z80Cpu cpu, IAddressMode <byte> addressMode, bool circular = false, bool is8080Compatible = false)
 {
     _cpu              = cpu;
     _addressMode      = addressMode;
     _circular         = circular;
     _is8080Compatible = is8080Compatible;
 }
예제 #3
0
파일: CALL.cs 프로젝트: dolbz/Z80Sharp
 public CALL(Z80Cpu cpu, IAddressMode <ushort> addressMode, JumpCondition jumpCondition)
 {
     _cpu           = cpu;
     _addressMode   = addressMode;
     _internalCycle = new InternalCycle(1);
     _jumpCondition = jumpCondition;
 }
예제 #4
0
파일: SET_RES.cs 프로젝트: dolbz/Z80Sharp
 public SetOrResetBit(Z80Cpu cpu, IAddressMode <byte> addressMode, int bitNumber, bool isSet)
 {
     _cpu         = cpu;
     _addressMode = addressMode;
     _bitNumber   = bitNumber;
     _isSet       = isSet;
 }
예제 #5
0
        protected OpCodeTest()
        {
            cpu         = A.Fake <ICpu>();
            addressMode = A.Fake <IAddressMode>();

            cpu.Accumulator = Accumulator;

            A.CallTo(() => addressMode.Fetch()).Returns(FetchedData);
        }
예제 #6
0
 public LD_Generic(Z80Cpu cpu, IAddressMode <T> destination, IAddressMode <T> source, int additionalM1TCycles, bool setsFlags = false)
 {
     _cpu = cpu;
     _additionalM1TCycles    = additionalM1TCycles;
     _remainingM1Cycles      = additionalM1TCycles;
     _destinationAddressMode = destination;
     _sourceAddressMode      = source;
     _setsFlags = setsFlags;
 }
예제 #7
0
 public Jump(Z80Cpu cpu, IAddressMode <ushort> addressMode, JumpCondition condition, bool requiresConditionalInternalCycle = false, int additionalM1TCycles = 0, string mnemomic = "JP")
 {
     _cpu         = cpu;
     _addressMode = addressMode;
     _condition   = condition;
     _requiresConditionalInternalCycle = requiresConditionalInternalCycle;
     _internalCycle       = new InternalCycle(5);
     _additionalM1TCycles = additionalM1TCycles;
     _remainingM1Cycles   = additionalM1TCycles;
     Mnemonic             = mnemomic;
 }
예제 #8
0
 public Jump(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #9
0
 public LogicalShiftRight(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #10
0
 public LoadXRegister(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #11
0
 protected SettingFlag(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #12
0
 public BranchIfOverFlowSet(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #13
0
 public CompareXRegister(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
 public PopAccumulatorOffStack(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #15
0
 public TransferXRegisterToStackPointer(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #16
0
 public SettingCarryFlag(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #17
0
 public IncrementXRegister(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #18
0
 protected LoadingValue(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #19
0
 public ClearCarryFlag(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #20
0
 public BranchIfNotEqual(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #21
0
 public BranchIfPositive(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #22
0
 public BranchIfCarry(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #23
0
 protected WithCarryOpCode(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #24
0
 public ClearDecimalFlag(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #25
0
 protected OpCode(ICpu cpu, IAddressMode addressMode)
 {
     this.cpu         = cpu;
     this.addressMode = addressMode;
 }
예제 #26
0
 public RotateLeft(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #27
0
 public Break(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #28
0
 public DecrementValueAtMemory(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #29
0
 public StoreYRegisterAtAddress(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }
예제 #30
0
 public BitOpCode(ICpu cpu, IAddressMode addressMode) : base(cpu, addressMode)
 {
 }