projects
/
Mograsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Made main memory access via the Memory view work
[Mograsim.git]
/
plugins
/
net.mograsim.plugin.core
/
src
/
net
/
mograsim
/
plugin
/
launch
/
MachineDebugTarget.java
diff --git
a/plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/launch/MachineDebugTarget.java
b/plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/launch/MachineDebugTarget.java
index
5270c76
..
357fe82
100644
(file)
--- a/
plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/launch/MachineDebugTarget.java
+++ b/
plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/launch/MachineDebugTarget.java
@@
-15,6
+15,8
@@
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.debug.core.model.IDebugElement;
import org.eclipse.debug.core.model.IDebugTarget;
import org.eclipse.debug.core.model.IMemoryBlock;
import org.eclipse.debug.core.model.IDebugElement;
import org.eclipse.debug.core.model.IDebugTarget;
import org.eclipse.debug.core.model.IMemoryBlock;
+import org.eclipse.debug.core.model.IMemoryBlockExtension;
+import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
import org.eclipse.debug.core.model.IProcess;
import org.eclipse.debug.core.model.IStepFilters;
import org.eclipse.debug.core.model.IThread;
import org.eclipse.debug.core.model.IProcess;
import org.eclipse.debug.core.model.IStepFilters;
import org.eclipse.debug.core.model.IThread;
@@
-22,7
+24,7
@@
import org.eclipse.debug.core.model.IThread;
import net.mograsim.machine.Machine;
import net.mograsim.plugin.MograsimActivator;
import net.mograsim.machine.Machine;
import net.mograsim.plugin.MograsimActivator;
-public class MachineDebugTarget extends PlatformObject implements IDebugTarget
+public class MachineDebugTarget extends PlatformObject implements IDebugTarget
, IMemoryBlockRetrievalExtension
{
private final MachineProcess process;
{
private final MachineProcess process;
@@
-183,12
+185,19
@@
public class MachineDebugTarget extends PlatformObject implements IDebugTarget
return true;
}
return true;
}
+ @SuppressWarnings("deprecation") // TODO can we throw a DebugException instead?
@Override
public IMemoryBlock getMemoryBlock(long startAddress, long length) throws DebugException
{
return new MainMemoryBlock(this, startAddress, length);
}
@Override
public IMemoryBlock getMemoryBlock(long startAddress, long length) throws DebugException
{
return new MainMemoryBlock(this, startAddress, length);
}
+ @Override
+ public IMemoryBlockExtension getExtendedMemoryBlock(String expression, Object context) throws DebugException
+ {
+ return new MainMemoryBlockExtension(this, expression, context);
+ }
+
@Override
public MachineProcess getProcess()
{
@Override
public MachineProcess getProcess()
{