Ejemplo n.º 1
0
        protected override void HandleInstruction(InstructionDefinition insn, byte[] bytes)
        {
            if (insn.DefProcessorCallbackContext == null)
                return;

            var boundInsn = insn.Bind(bytes, _curIndex, _section);
            boundInsn.InvokeCallback(this);
        }
Ejemplo n.º 2
0
 public BoundInstruction(InstructionDefinition insn, byte[] bytes, int curOffset, SectionInfo section)
 {
     _section = section;
     _curAbsoluteOffset = curOffset + _section.SectionOffset;
     this.Instruction = insn;
     InitializeBoundData(bytes);
     _boundValues['A'] = curOffset;
     _pcRelBranchExpr = new Expression("A+o*2");
 }
Ejemplo n.º 3
0
 protected abstract void HandleInstruction(InstructionDefinition insn, byte[] bytes);
Ejemplo n.º 4
0
        protected override void HandleInstruction(InstructionDefinition insn, byte[] bytes)
        {
            string s;

            if (_section.ObjectDefLocations.TryGetValue(CurAbsoluteIndex, out s))
                ASM += "\r\n" + s + "\r\n";
            if (_section.LabelDefLocations.TryGetValue(CurAbsoluteIndex, out s))
                ASM += s + ":\r\n";

            var boundInsn = insn.Bind(bytes, _curIndex, _section);
            //ASM += _curIndex.ToString("0000") + " ";
            ASM += "\t";
            ASM += boundInsn.GetText(this);
            //ASM += "    ; " + GetBytecode(bytes);
            ASM += "\r\n";
            ASM += GetBinary(bytes);
            ASM += "\r\n";
        }