Ejemplo n.º 1
0
        private Opcode ExecuteDecode(byte singleByteInstruction, byte parameter)
        {
            _builder.Clear();
            _builder.Add(singleByteInstruction);
            _builder.Add(parameter);

            return(_builder.Opcode);
        }
Ejemplo n.º 2
0
        private Opcode ExecuteDecode(byte singleByteInstruction, UInt16 parameter)
        {
            _builder.Clear();
            _builder.Add(singleByteInstruction);
            _builder.Add((byte)(parameter & 0xFF));
            _builder.Add((byte)(parameter >> 8));

            return(_builder.Opcode);
        }
Ejemplo n.º 3
0
        public bool AddOpcodeByte(OpcodeByte opcodeByte)
        {
            var valid = _opcodeBuilder.Add(opcodeByte);

            if (valid)
            {
                _cycles.OpcodeDefinition = _opcodeBuilder.Opcode.Definition;
            }

            return(valid);
        }
Ejemplo n.º 4
0
        public bool AddOpcodeByte(OpcodeByte opcodeByte)
        {
            if (_opcodeBuilder.IsEmpty)
            {
                _instructionAddress = (ushort)(Cpu.Registers.PC - 1);
            }

            var valid = _opcodeBuilder.Add(opcodeByte);

            if (valid)
            {
                _opcodeBuilder.Opcode.Address = _instructionAddress;
                _cycles.OpcodeDefinition      = _opcodeBuilder.Opcode.Definition;
            }

            return(valid);
        }