void DisassemblyControl_StateChange(object sender, EventArgs e) { if (program == null || topAddress == null) { Model = new EmptyEditorModel(); } else { ImageSegment segment; if (!program.SegmentMap.TryFindSegment(topAddress, out segment) || segment.MemoryArea == null) { Model = new EmptyEditorModel(); } else { var addr = topAddress; this.dasmModel = new DisassemblyTextModel(program, segment); Model = dasmModel; Model.MoveToLine(addr, 0); } } RecomputeLayout(); base.UpdateScrollbar(); }
public override Tuple <Address, LineSpan> GenerateSpan() { if (offset >= instrs.Length || offset < 0) { return(null); } var instr = instrs[offset]; ++offset; var asmLine = DisassemblyTextModel.RenderAsmLine(program, instr); if (offset == instrs.Length) { DecorateLastLine(asmLine); } return(Tuple.Create(instr.Address + instr.Length, asmLine)); }
private void Given_Model() { Given_Image(1000); model = new DisassemblyTextModel(program); }
void DisassemblyControl_StateChange(object sender, EventArgs e) { if (program == null || topAddress == null) { Model = new EmptyEditorModel(); } else { ImageSegment segment; if (!program.SegmentMap.TryFindSegment(topAddress, out segment) || segment.MemoryArea == null) { Model = new EmptyEditorModel(); } else { var addr = topAddress; Model = new DisassemblyTextModel(program, segment); Model.MoveToLine(addr, 0); } } RecomputeLayout(); base.UpdateScrollbar(); }
private void Given_Model() { var seg = Given_Image(1000); model = new DisassemblyTextModel(program, seg); }