summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/debugger/osx/memoryviewer.m
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/modules/debugger/osx/memoryviewer.m')
-rw-r--r--src/osd/modules/debugger/osx/memoryviewer.m38
1 files changed, 36 insertions, 2 deletions
diff --git a/src/osd/modules/debugger/osx/memoryviewer.m b/src/osd/modules/debugger/osx/memoryviewer.m
index 044f0f442df..5412cc6457d 100644
--- a/src/osd/modules/debugger/osx/memoryviewer.m
+++ b/src/osd/modules/debugger/osx/memoryviewer.m
@@ -11,10 +11,12 @@
#import "memoryviewer.h"
+#import "debugconsole.h"
#import "debugview.h"
#import "memoryview.h"
#include "debug/debugcpu.h"
+#include "debug/dvmemory.h"
@implementation MAMEMemoryViewer
@@ -22,7 +24,7 @@
- (id)initWithMachine:(running_machine &)m console:(MAMEDebugConsole *)c {
NSScrollView *memoryScroll;
NSView *expressionContainer;
- NSPopUpButton *actionButton, *subviewButton;
+ NSPopUpButton *actionButton;
NSRect contentBounds, expressionFrame;
if (!(self = [super initWithMachine:m title:@"Memory" console:c]))
@@ -97,7 +99,7 @@
[actionButton release];
// set default state
- [memoryView selectSubviewForCPU:debug_cpu_get_visible_cpu(*machine)];
+ [memoryView selectSubviewForDevice:debug_cpu_get_visible_cpu(*machine)];
[memoryView setExpression:@"0"];
[expressionField setStringValue:@"0"];
[expressionField selectText:self];
@@ -127,6 +129,38 @@
}
+- (IBAction)debugNewMemoryWindow:(id)sender {
+ debug_view_memory_source const *source = [memoryView source];
+ [console debugNewMemoryWindowForSpace:source->space()
+ device:source->device()
+ expression:[memoryView expression]];
+}
+
+
+- (IBAction)debugNewDisassemblyWindow:(id)sender {
+ debug_view_memory_source const *source = [memoryView source];
+ [console debugNewDisassemblyWindowForSpace:source->space()
+ device:source->device()
+ expression:[memoryView expression]];
+}
+
+
+- (BOOL)selectSubviewForDevice:(device_t *)device {
+ BOOL const result = [memoryView selectSubviewForDevice:device];
+ [subviewButton selectItemAtIndex:[subviewButton indexOfItemWithTag:[memoryView selectedSubviewIndex]]];
+ [window setTitle:[NSString stringWithFormat:@"Memory: %@", [memoryView selectedSubviewName]]];
+ return result;
+}
+
+
+- (BOOL)selectSubviewForSpace:(address_space *)space {
+ BOOL const result = [memoryView selectSubviewForSpace:space];
+ [subviewButton selectItemAtIndex:[subviewButton indexOfItemWithTag:[memoryView selectedSubviewIndex]]];
+ [window setTitle:[NSString stringWithFormat:@"Memory: %@", [memoryView selectedSubviewName]]];
+ return result;
+}
+
+
- (IBAction)changeSubview:(id)sender {
[memoryView selectSubviewAtIndex:[[sender selectedItem] tag]];
[window setTitle:[NSString stringWithFormat:@"Memory: %@", [memoryView selectedSubviewName]]];