Merge remote-tracking branch 'origin/GP-2305_Dan_dbgDisassemblerHelp--SQUASHED'

This commit is contained in:
Ryan Kurtz
2022-08-02 11:14:54 -04:00
5 changed files with 46 additions and 0 deletions
@@ -43,6 +43,7 @@ src/main/help/help/topics/DebuggerConsolePlugin/DebuggerConsolePlugin.html||GHID
src/main/help/help/topics/DebuggerConsolePlugin/images/DebuggerConsolePlugin.png||GHIDRA||||END|
src/main/help/help/topics/DebuggerCopyActionsPlugin/DebuggerCopyActionsPlugin.html||GHIDRA||||END|
src/main/help/help/topics/DebuggerCopyActionsPlugin/images/DebuggerCopyIntoProgramDialog.png||GHIDRA||||END|
src/main/help/help/topics/DebuggerDisassemblerPlugin/DebuggerDisassemblerPlugin.html||GHIDRA||||END|
src/main/help/help/topics/DebuggerEmulationServicePlugin/DebuggerEmulationServicePlugin.html||GHIDRA||||END|
src/main/help/help/topics/DebuggerInterpreterPlugin/DebuggerInterpreterPlugin.html||GHIDRA||||END|
src/main/help/help/topics/DebuggerListingPlugin/DebuggerListingPlugin.html||GHIDRA||||END|
@@ -115,6 +115,10 @@
sortgroup="i"
target="help/topics/DebuggerListingPlugin/DebuggerListingPlugin.html" />
<tocdef id="DebuggerDisassemblerPlugin" text="Disassembly and Assembly"
sortgroup="i1"
target="help/topics/DebuggerDisassemblerPlugin/DebuggerDisassemblerPlugin.html" />
<tocdef id="DebuggerStackPlugin" text="Stack"
sortgroup="j"
target="help/topics/DebuggerStackPlugin/DebuggerStackPlugin.html" />
@@ -0,0 +1,37 @@
<!DOCTYPE doctype PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">
<HTML>
<HEAD>
<META name="generator" content=
"HTML Tidy for Java (vers. 2009-12-01), see jtidy.sourceforge.net">
<TITLE>Debugger Disassembler</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
<LINK rel="stylesheet" type="text/css" href="../../shared/Frontpage.css">
</HEAD>
<BODY lang="EN-US">
<H1>Debugger: Disassembler and Assembler</H1>
<P>The Debugger provides specialized disassemble and assemble ("patch instruction") actions.
These actions operate on a smaller scope of instructions, disassembling linearly from the
cursor or program counter up to and including the next branching instruction. They also allow
the user a selection of languages configured on the current trace.</P>
<H2>Actions:</H2>
<H3><A name="disassemble"></A> Disassemble</H3>
<P>This action disassembles from the cursor up to the next branching instruction for the
selected language. One action is presented per language configured at the current location.
Other languages may also be presented if the only thing that varies is the default disassembly
context, e.g., configuring ARM will also allow THUMB disassembly.</P>
<H3><A name="patch_instruction"></A> Patch Instruction / Assemble</H3>
<P>This action assembles an instruction at the cursor. One action is presented per language
configured at the current location. Other languages may also be presented if the only thing
that varies is the default disassembly context, e.g., configuring ARM will also allow THUMB
assembly.</P>
</BODY>
</HTML>
@@ -24,6 +24,7 @@ import ghidra.program.model.listing.Program;
import ghidra.program.util.ProgramSelection;
import ghidra.trace.model.guest.TracePlatform;
import ghidra.trace.model.program.TraceProgramView;
import ghidra.util.HelpLocation;
public abstract class AbstractTraceDisassembleAction extends DockingAction {
protected final DebuggerDisassemblerPlugin plugin;
@@ -31,6 +32,7 @@ public abstract class AbstractTraceDisassembleAction extends DockingAction {
public AbstractTraceDisassembleAction(DebuggerDisassemblerPlugin plugin, String name) {
super(name, plugin.getName());
this.plugin = plugin;
setHelpLocation(new HelpLocation(plugin.getName(), "disassemble"));
}
protected abstract TracePlatform getPlatform(TraceProgramView view);
@@ -30,6 +30,7 @@ import ghidra.trace.model.program.TraceProgramView;
import ghidra.trace.model.target.TraceObject;
import ghidra.trace.model.thread.TraceObjectThread;
import ghidra.trace.model.thread.TraceThread;
import ghidra.util.HelpLocation;
import ghidra.util.task.TaskMonitor;
public class CurrentPlatformTraceDisassembleAction extends DockingAction {
@@ -45,6 +46,7 @@ public class CurrentPlatformTraceDisassembleAction extends DockingAction {
setPopupMenuData(new MenuData(new String[] { NAME }, MENU_GROUP));
setKeyBindingData(KEY_BINDING);
setHelpLocation(new HelpLocation(plugin.getName(), "disassemble"));
}
protected TraceObject getObject(TraceThread thread) {