示例#1
0
        private void InstructionView_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (InstructionView.SelectedIndices.Count <= 0)
            {
                return;
            }
            if (InstructionView.SelectedIndices.Count <= 0)
            {
                return;
            }
            int             idx         = InstructionView.SelectedIndices[0];
            BaseInstruction Instruction = SelectedStub.Instructions[idx];

            if (!Instruction.Implemented())
            {
                AbsAVal.Text     = "Not Impl";
                AbsBVal.Text     = "Not Impl";
                AbsCVal.Text     = "Not Impl";
                CurOpPseudo.Text = "Not Yet Implemented";
                return;
            }
            StringBuilder PCode = new StringBuilder();

            Instruction.AttainPseudoCode(PCode);
            CurOpPseudo.Text = PCode.ToString();
            SetABCField(Instruction.GetAUsage(), AbsAVal, Instruction.AStringify, Instruction.A);
            SetABCField(Instruction.GetBUsage(), AbsBVal, Instruction.BStringify, Instruction.B);
            if (Instruction.HasC())
            {
                SetABCField(Instruction.GetCUsage(), AbsCVal, Instruction.CStringify, Instruction.C);
            }
            else
            {
                AbsCVal.Text = "";
            }
        }
示例#2
0
 public String DecompileInstruction_C(BaseInstruction BI)
 {
     return(DecompileInstruction(BI.GetCUsage(), BI.CStringify, BI.C));
 }
示例#3
0
 public String StringifyInstruction_C(BaseInstruction BI)
 {
     return(StringifyInstruction(BI.GetCUsage(), BI.CStringify, BI.C));
 }