mirror of
https://github.com/ksherlock/ample.git
synced 2024-06-02 22:41:29 +00:00
commit all changes in progress
This commit is contained in:
parent
8886e7b2c7
commit
75b3dd3749
|
@ -7,7 +7,13 @@
|
||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
|
B60A6E0C24ECE23F004B7EEF /* apple2gs.plist in Resources */ = {isa = PBXBuildFile; fileRef = B60A6E0B24ECE23F004B7EEF /* apple2gs.plist */; };
|
||||||
B64E15A624E9B34700E8AD3D /* Models.plist in Resources */ = {isa = PBXBuildFile; fileRef = B64E15A424E9B34700E8AD3D /* Models.plist */; };
|
B64E15A624E9B34700E8AD3D /* Models.plist in Resources */ = {isa = PBXBuildFile; fileRef = B64E15A424E9B34700E8AD3D /* Models.plist */; };
|
||||||
|
B64E15A924EA1D5300E8AD3D /* ROMBrowserDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = B64E15A824EA1D5300E8AD3D /* ROMBrowserDelegate.m */; };
|
||||||
|
B64E15AC24EA1FD400E8AD3D /* SlotBrowserDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = B64E15AB24EA1FD400E8AD3D /* SlotBrowserDelegate.m */; };
|
||||||
|
B64E15B524EA383F00E8AD3D /* apple2gs in Resources */ = {isa = PBXBuildFile; fileRef = B64E15B424EA383F00E8AD3D /* apple2gs */; };
|
||||||
|
B64E15B824EC912200E8AD3D /* SlotView.xib in Resources */ = {isa = PBXBuildFile; fileRef = B64E15B624EC912200E8AD3D /* SlotView.xib */; };
|
||||||
|
B65593B124ECB61800722E0C /* SlotViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B65593B024ECB61800722E0C /* SlotViewController.m */; };
|
||||||
B6BA258024E99BE9005FB8FF /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = B6BA257F24E99BE9005FB8FF /* AppDelegate.m */; };
|
B6BA258024E99BE9005FB8FF /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = B6BA257F24E99BE9005FB8FF /* AppDelegate.m */; };
|
||||||
B6BA258224E99BEB005FB8FF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B6BA258124E99BEB005FB8FF /* Assets.xcassets */; };
|
B6BA258224E99BEB005FB8FF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B6BA258124E99BEB005FB8FF /* Assets.xcassets */; };
|
||||||
B6BA258524E99BEB005FB8FF /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = B6BA258324E99BEB005FB8FF /* MainMenu.xib */; };
|
B6BA258524E99BEB005FB8FF /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = B6BA258324E99BEB005FB8FF /* MainMenu.xib */; };
|
||||||
|
@ -15,7 +21,16 @@
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
|
B60A6E0B24ECE23F004B7EEF /* apple2gs.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = apple2gs.plist; sourceTree = "<group>"; };
|
||||||
B64E15A524E9B34700E8AD3D /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Base; path = Base.lproj/Models.plist; sourceTree = "<group>"; };
|
B64E15A524E9B34700E8AD3D /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Base; path = Base.lproj/Models.plist; sourceTree = "<group>"; };
|
||||||
|
B64E15A724EA1D5300E8AD3D /* ROMBrowserDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ROMBrowserDelegate.h; sourceTree = "<group>"; };
|
||||||
|
B64E15A824EA1D5300E8AD3D /* ROMBrowserDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ROMBrowserDelegate.m; sourceTree = "<group>"; };
|
||||||
|
B64E15AA24EA1FD400E8AD3D /* SlotBrowserDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SlotBrowserDelegate.h; sourceTree = "<group>"; };
|
||||||
|
B64E15AB24EA1FD400E8AD3D /* SlotBrowserDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SlotBrowserDelegate.m; sourceTree = "<group>"; };
|
||||||
|
B64E15B424EA383F00E8AD3D /* apple2gs */ = {isa = PBXFileReference; lastKnownFileType = folder; path = apple2gs; sourceTree = "<group>"; };
|
||||||
|
B64E15B724EC912200E8AD3D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = MA2ME/Base.lproj/SlotView.xib; sourceTree = "<group>"; };
|
||||||
|
B65593AF24ECB61800722E0C /* SlotViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SlotViewController.h; sourceTree = "<group>"; };
|
||||||
|
B65593B024ECB61800722E0C /* SlotViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SlotViewController.m; sourceTree = "<group>"; };
|
||||||
B6BA257B24E99BE9005FB8FF /* MA2ME.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MA2ME.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
B6BA257B24E99BE9005FB8FF /* MA2ME.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MA2ME.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
B6BA257E24E99BE9005FB8FF /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
|
B6BA257E24E99BE9005FB8FF /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
|
||||||
B6BA257F24E99BE9005FB8FF /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
|
B6BA257F24E99BE9005FB8FF /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
|
||||||
|
@ -37,9 +52,21 @@
|
||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
|
B64E15AF24EA365E00E8AD3D /* Resources */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
B60A6E0B24ECE23F004B7EEF /* apple2gs.plist */,
|
||||||
|
B64E15B424EA383F00E8AD3D /* apple2gs */,
|
||||||
|
B64E15A424E9B34700E8AD3D /* Models.plist */,
|
||||||
|
);
|
||||||
|
path = Resources;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
B6BA257224E99BE9005FB8FF = {
|
B6BA257224E99BE9005FB8FF = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
B65593AF24ECB61800722E0C /* SlotViewController.h */,
|
||||||
|
B65593B024ECB61800722E0C /* SlotViewController.m */,
|
||||||
B6BA257D24E99BE9005FB8FF /* MA2ME */,
|
B6BA257D24E99BE9005FB8FF /* MA2ME */,
|
||||||
B6BA257C24E99BE9005FB8FF /* Products */,
|
B6BA257C24E99BE9005FB8FF /* Products */,
|
||||||
);
|
);
|
||||||
|
@ -58,12 +85,17 @@
|
||||||
children = (
|
children = (
|
||||||
B6BA257E24E99BE9005FB8FF /* AppDelegate.h */,
|
B6BA257E24E99BE9005FB8FF /* AppDelegate.h */,
|
||||||
B6BA257F24E99BE9005FB8FF /* AppDelegate.m */,
|
B6BA257F24E99BE9005FB8FF /* AppDelegate.m */,
|
||||||
B64E15A424E9B34700E8AD3D /* Models.plist */,
|
|
||||||
B6BA258124E99BEB005FB8FF /* Assets.xcassets */,
|
B6BA258124E99BEB005FB8FF /* Assets.xcassets */,
|
||||||
B6BA258324E99BEB005FB8FF /* MainMenu.xib */,
|
B64E15A724EA1D5300E8AD3D /* ROMBrowserDelegate.h */,
|
||||||
|
B64E15A824EA1D5300E8AD3D /* ROMBrowserDelegate.m */,
|
||||||
|
B64E15AA24EA1FD400E8AD3D /* SlotBrowserDelegate.h */,
|
||||||
|
B64E15AB24EA1FD400E8AD3D /* SlotBrowserDelegate.m */,
|
||||||
|
B64E15AF24EA365E00E8AD3D /* Resources */,
|
||||||
B6BA258624E99BEB005FB8FF /* Info.plist */,
|
B6BA258624E99BEB005FB8FF /* Info.plist */,
|
||||||
B6BA258724E99BEB005FB8FF /* main.m */,
|
B6BA258724E99BEB005FB8FF /* main.m */,
|
||||||
B6BA258924E99BEB005FB8FF /* MA2ME.entitlements */,
|
B6BA258924E99BEB005FB8FF /* MA2ME.entitlements */,
|
||||||
|
B6BA258324E99BEB005FB8FF /* MainMenu.xib */,
|
||||||
|
B64E15B624EC912200E8AD3D /* SlotView.xib */,
|
||||||
);
|
);
|
||||||
path = MA2ME;
|
path = MA2ME;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
|
@ -127,6 +159,9 @@
|
||||||
files = (
|
files = (
|
||||||
B6BA258224E99BEB005FB8FF /* Assets.xcassets in Resources */,
|
B6BA258224E99BEB005FB8FF /* Assets.xcassets in Resources */,
|
||||||
B6BA258524E99BEB005FB8FF /* MainMenu.xib in Resources */,
|
B6BA258524E99BEB005FB8FF /* MainMenu.xib in Resources */,
|
||||||
|
B64E15B824EC912200E8AD3D /* SlotView.xib in Resources */,
|
||||||
|
B64E15B524EA383F00E8AD3D /* apple2gs in Resources */,
|
||||||
|
B60A6E0C24ECE23F004B7EEF /* apple2gs.plist in Resources */,
|
||||||
B64E15A624E9B34700E8AD3D /* Models.plist in Resources */,
|
B64E15A624E9B34700E8AD3D /* Models.plist in Resources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
@ -139,7 +174,10 @@
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
B6BA258824E99BEB005FB8FF /* main.m in Sources */,
|
B6BA258824E99BEB005FB8FF /* main.m in Sources */,
|
||||||
|
B64E15AC24EA1FD400E8AD3D /* SlotBrowserDelegate.m in Sources */,
|
||||||
|
B64E15A924EA1D5300E8AD3D /* ROMBrowserDelegate.m in Sources */,
|
||||||
B6BA258024E99BE9005FB8FF /* AppDelegate.m in Sources */,
|
B6BA258024E99BE9005FB8FF /* AppDelegate.m in Sources */,
|
||||||
|
B65593B124ECB61800722E0C /* SlotViewController.m in Sources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
|
@ -154,6 +192,14 @@
|
||||||
name = Models.plist;
|
name = Models.plist;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
B64E15B624EC912200E8AD3D /* SlotView.xib */ = {
|
||||||
|
isa = PBXVariantGroup;
|
||||||
|
children = (
|
||||||
|
B64E15B724EC912200E8AD3D /* Base */,
|
||||||
|
);
|
||||||
|
name = SlotView.xib;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
B6BA258324E99BEB005FB8FF /* MainMenu.xib */ = {
|
B6BA258324E99BEB005FB8FF /* MainMenu.xib */ = {
|
||||||
isa = PBXVariantGroup;
|
isa = PBXVariantGroup;
|
||||||
children = (
|
children = (
|
||||||
|
|
|
@ -7,13 +7,19 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "AppDelegate.h"
|
#import "AppDelegate.h"
|
||||||
|
#import "SlotBrowserDelegate.h"
|
||||||
|
#import "SlotViewController.h"
|
||||||
|
|
||||||
@interface AppDelegate ()
|
@interface AppDelegate ()
|
||||||
|
|
||||||
@property (weak) IBOutlet NSWindow *window;
|
@property (weak) IBOutlet NSWindow *window;
|
||||||
|
@property (strong) IBOutlet SlotBrowserDelegate *slotDelegate;
|
||||||
|
@property (strong) IBOutlet SlotViewController *slotController;
|
||||||
|
|
||||||
|
|
||||||
|
@property (weak) IBOutlet NSView *modelView;
|
||||||
|
@property (weak) IBOutlet NSView *slotView;
|
||||||
|
|
||||||
/* kvo */
|
/* kvo */
|
||||||
@property NSString *commandLine;
|
@property NSString *commandLine;
|
||||||
|
|
||||||
|
@ -42,22 +48,38 @@ static NSString *kMyContext = @"kMyContext";
|
||||||
|
|
||||||
NSView *view = [_window contentView];
|
NSView *view = [_window contentView];
|
||||||
|
|
||||||
NSRect frame = [view frame];
|
NSRect frame;
|
||||||
frame.origin.y += frame.size.height - 200;
|
NSBrowser *browser = nil;
|
||||||
frame.size.height = 200;
|
|
||||||
|
|
||||||
NSBrowser *browser = [[NSBrowser alloc] initWithFrame: frame];
|
frame = [_modelView frame];
|
||||||
|
browser = [[NSBrowser alloc] initWithFrame: frame];
|
||||||
|
|
||||||
[browser setMaxVisibleColumns: 2];
|
[browser setMaxVisibleColumns: 2];
|
||||||
[browser setTakesTitleFromPreviousColumn: YES];
|
[browser setTakesTitleFromPreviousColumn: YES];
|
||||||
[browser setTitled: NO];
|
[browser setTitled: NO];
|
||||||
|
[browser setAllowsEmptySelection: NO];
|
||||||
[browser setDelegate: self];
|
[browser setDelegate: self];
|
||||||
[browser setAction: @selector(modelClick:)];
|
[browser setAction: @selector(modelClick:)];
|
||||||
|
|
||||||
|
[view addSubview: browser];
|
||||||
|
[browser setTitled: YES]; // NSBrowser title bug.
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
frame = [_slotView frame];
|
||||||
|
browser = [[NSBrowser alloc] initWithFrame: frame];
|
||||||
|
|
||||||
|
[browser setMaxVisibleColumns: 2];
|
||||||
|
[browser setTakesTitleFromPreviousColumn: YES];
|
||||||
|
[browser setTitled: NO];
|
||||||
|
[browser setDelegate: _slotDelegate];
|
||||||
|
//[browser setAction: @selector(modelClick:)];
|
||||||
|
|
||||||
[view addSubview: browser];
|
[view addSubview: browser];
|
||||||
[browser setTitled: YES]; // NSBrowser title bug.
|
[browser setTitled: YES]; // NSBrowser title bug.
|
||||||
|
[_slotDelegate setBrowser: browser];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_slotView addSubview: [_slotController view]];
|
||||||
|
|
||||||
|
|
||||||
[self addObserver: self forKeyPath: @"mameROM" options:0 context: (__bridge void * _Nullable)(kMyContext)];
|
[self addObserver: self forKeyPath: @"mameROM" options:0 context: (__bridge void * _Nullable)(kMyContext)];
|
||||||
|
@ -106,6 +128,7 @@ static NSString *kMyContext = @"kMyContext";
|
||||||
// -nounevenstretch -video soft
|
// -nounevenstretch -video soft
|
||||||
if (_mameWindow && _mameSquarePixels) {
|
if (_mameWindow && _mameSquarePixels) {
|
||||||
|
|
||||||
|
[argv addObject: @"-nomax"];
|
||||||
if ([_mameROM hasPrefix: @"apple2gs"]) {
|
if ([_mameROM hasPrefix: @"apple2gs"]) {
|
||||||
[argv addObject: @"-resolution"];
|
[argv addObject: @"-resolution"];
|
||||||
[argv addObject: @"704x462"];
|
[argv addObject: @"704x462"];
|
||||||
|
@ -128,8 +151,12 @@ static NSString *kMyContext = @"kMyContext";
|
||||||
-(IBAction)modelClick:(id)sender {
|
-(IBAction)modelClick:(id)sender {
|
||||||
|
|
||||||
NSDictionary *item = [self itemForBrowser: sender];
|
NSDictionary *item = [self itemForBrowser: sender];
|
||||||
[self setMameROM: [item objectForKey: @"Mame"]];
|
NSString *model = [item objectForKey: @"Mame"];
|
||||||
|
|
||||||
|
[self setMameROM: model];
|
||||||
// [self buildCommandLine];
|
// [self buildCommandLine];
|
||||||
|
|
||||||
|
[_slotDelegate setModel: model];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark NSBrowser
|
#pragma mark NSBrowser
|
||||||
|
@ -184,9 +211,14 @@ static NSString *kMyContext = @"kMyContext";
|
||||||
return column == 0 ? @"Model" : @"Submodel";
|
return column == 0 ? @"Model" : @"Submodel";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
- (id)browser:(NSBrowser *)browser child:(NSInteger)index ofItem:(id)item {
|
- (id)browser:(NSBrowser *)browser child:(NSInteger)index ofItem:(id)item {
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
-(id)rootItemForBrowser:(NSBrowser *)browser {
|
||||||
|
return _browserItems;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
- (NSInteger)browser:(NSBrowser *)sender numberOfRowsInColumn:(NSInteger)column {
|
- (NSInteger)browser:(NSBrowser *)sender numberOfRowsInColumn:(NSInteger)column {
|
||||||
|
|
||||||
|
@ -195,4 +227,5 @@ static NSString *kMyContext = @"kMyContext";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -15,6 +15,10 @@
|
||||||
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
|
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
|
||||||
<customObject id="Voe-Tx-rLC" customClass="AppDelegate">
|
<customObject id="Voe-Tx-rLC" customClass="AppDelegate">
|
||||||
<connections>
|
<connections>
|
||||||
|
<outlet property="modelView" destination="jf6-4d-ms1" id="HUy-kg-cCk"/>
|
||||||
|
<outlet property="slotController" destination="CYF-Xd-EdF" id="14d-v7-98c"/>
|
||||||
|
<outlet property="slotDelegate" destination="xmI-g8-lsK" id="hrE-aS-P30"/>
|
||||||
|
<outlet property="slotView" destination="cFJ-CO-Dzm" id="u9o-0O-D5i"/>
|
||||||
<outlet property="window" destination="QvC-M9-y7g" id="gIp-Ho-8D9"/>
|
<outlet property="window" destination="QvC-M9-y7g" id="gIp-Ho-8D9"/>
|
||||||
</connections>
|
</connections>
|
||||||
</customObject>
|
</customObject>
|
||||||
|
@ -684,18 +688,18 @@
|
||||||
<window title="MA2ME" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" animationBehavior="default" id="QvC-M9-y7g">
|
<window title="MA2ME" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" animationBehavior="default" id="QvC-M9-y7g">
|
||||||
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES"/>
|
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES"/>
|
||||||
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
|
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
|
||||||
<rect key="contentRect" x="335" y="390" width="718" height="547"/>
|
<rect key="contentRect" x="335" y="390" width="718" height="947"/>
|
||||||
<rect key="screenRect" x="0.0" y="0.0" width="2560" height="1417"/>
|
<rect key="screenRect" x="0.0" y="0.0" width="2560" height="1417"/>
|
||||||
<view key="contentView" id="EiT-Mj-1SZ">
|
<view key="contentView" id="EiT-Mj-1SZ">
|
||||||
<rect key="frame" x="0.0" y="0.0" width="718" height="547"/>
|
<rect key="frame" x="0.0" y="0.0" width="718" height="947"/>
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
<autoresizingMask key="autoresizingMask"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<customView fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="jf6-4d-ms1">
|
<customView fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="jf6-4d-ms1">
|
||||||
<rect key="frame" x="0.0" y="347" width="718" height="200"/>
|
<rect key="frame" x="0.0" y="747" width="718" height="200"/>
|
||||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
|
||||||
</customView>
|
</customView>
|
||||||
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Ymx-Ml-AsE">
|
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Ymx-Ml-AsE">
|
||||||
<rect key="frame" x="18" y="323" width="71" height="18"/>
|
<rect key="frame" x="18" y="102" width="71" height="18"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="check" title="Window" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="McP-bf-5Zu">
|
<buttonCell key="cell" type="check" title="Window" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="McP-bf-5Zu">
|
||||||
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
||||||
|
@ -706,7 +710,7 @@
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="bkv-BK-7TC">
|
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="bkv-BK-7TC">
|
||||||
<rect key="frame" x="18" y="303" width="62" height="18"/>
|
<rect key="frame" x="18" y="82" width="62" height="18"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="check" title="Debug" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="WPk-zw-UFD">
|
<buttonCell key="cell" type="check" title="Debug" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="WPk-zw-UFD">
|
||||||
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
||||||
|
@ -718,7 +722,7 @@
|
||||||
</button>
|
</button>
|
||||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" textCompletion="NO" translatesAutoresizingMaskIntoConstraints="NO" id="g2S-iX-zTe">
|
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" textCompletion="NO" translatesAutoresizingMaskIntoConstraints="NO" id="g2S-iX-zTe">
|
||||||
<rect key="frame" x="0.0" y="0.0" width="718" height="52"/>
|
<rect key="frame" x="0.0" y="0.0" width="718" height="52"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||||
<textFieldCell key="cell" selectable="YES" allowsUndo="NO" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="vbg-gA-6dg">
|
<textFieldCell key="cell" selectable="YES" allowsUndo="NO" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="vbg-gA-6dg">
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
|
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
@ -730,14 +734,14 @@
|
||||||
</textField>
|
</textField>
|
||||||
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="ug9-kz-ZSS">
|
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="ug9-kz-ZSS">
|
||||||
<rect key="frame" x="621" y="53" width="85" height="32"/>
|
<rect key="frame" x="621" y="53" width="85" height="32"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
|
||||||
<buttonCell key="cell" type="push" title="Launch" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="evD-kp-H2u">
|
<buttonCell key="cell" type="push" title="Launch" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="evD-kp-H2u">
|
||||||
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
</buttonCell>
|
</buttonCell>
|
||||||
</button>
|
</button>
|
||||||
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="QSr-Gw-xV3">
|
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="QSr-Gw-xV3">
|
||||||
<rect key="frame" x="18" y="283" width="91" height="18"/>
|
<rect key="frame" x="18" y="62" width="91" height="18"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="check" title="No Throttle" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="Kgs-UM-HeU">
|
<buttonCell key="cell" type="check" title="No Throttle" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="Kgs-UM-HeU">
|
||||||
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
||||||
|
@ -748,7 +752,7 @@
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="PUB-So-kAo">
|
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="PUB-So-kAo">
|
||||||
<rect key="frame" x="131" y="323" width="104" height="18"/>
|
<rect key="frame" x="131" y="102" width="104" height="18"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="check" title="Square Pixels" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="Bj2-i5-4h1">
|
<buttonCell key="cell" type="check" title="Square Pixels" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="Bj2-i5-4h1">
|
||||||
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
||||||
|
@ -758,9 +762,22 @@
|
||||||
<binding destination="Voe-Tx-rLC" name="value" keyPath="self.mameSquarePixels" id="rNk-1d-QZl"/>
|
<binding destination="Voe-Tx-rLC" name="value" keyPath="self.mameSquarePixels" id="rNk-1d-QZl"/>
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
|
<pathControl verticalHuggingPriority="750" fixedFrame="YES" allowsExpansionToolTips="YES" translatesAutoresizingMaskIntoConstraints="NO" id="4bN-As-LRL">
|
||||||
|
<rect key="frame" x="398" y="96" width="204" height="25"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
|
<pathCell key="cell" selectable="YES" editable="YES" alignment="left" placeholderString="Floppy 1" pathStyle="popUp" id="3aA-ge-m45">
|
||||||
|
<font key="font" metaFont="system"/>
|
||||||
|
</pathCell>
|
||||||
|
</pathControl>
|
||||||
|
<customView fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="cFJ-CO-Dzm">
|
||||||
|
<rect key="frame" x="20" y="169" width="306" height="570"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
|
</customView>
|
||||||
</subviews>
|
</subviews>
|
||||||
</view>
|
</view>
|
||||||
<point key="canvasLocation" x="754" y="211.5"/>
|
<point key="canvasLocation" x="769" y="196.5"/>
|
||||||
</window>
|
</window>
|
||||||
|
<customObject id="xmI-g8-lsK" customClass="SlotBrowserDelegate"/>
|
||||||
|
<viewController title="Slot View" nibName="SlotView" id="CYF-Xd-EdF" customClass="SlotViewController"/>
|
||||||
</objects>
|
</objects>
|
||||||
</document>
|
</document>
|
||||||
|
|
524
MA2ME/MA2ME/Base.lproj/SlotView.xib
Normal file
524
MA2ME/MA2ME/Base.lproj/SlotView.xib
Normal file
|
@ -0,0 +1,524 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="15705" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
|
||||||
|
<dependencies>
|
||||||
|
<deployment identifier="macosx"/>
|
||||||
|
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="15705"/>
|
||||||
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||||
|
</dependencies>
|
||||||
|
<objects>
|
||||||
|
<customObject id="-2" userLabel="File's Owner" customClass="SlotViewController">
|
||||||
|
<connections>
|
||||||
|
<outlet property="aux_menu" destination="3kq-qn-7YR" id="wic-Ry-yAf"/>
|
||||||
|
<outlet property="exp_menu" destination="San-wP-1ez" id="X7u-dM-xrI"/>
|
||||||
|
<outlet property="game_menu" destination="K8G-bZ-6mZ" id="IeQ-ZT-5F6"/>
|
||||||
|
<outlet property="modem_menu" destination="KHf-kC-BpZ" id="Qab-mA-anC"/>
|
||||||
|
<outlet property="printer_menu" destination="sTp-en-8Wd" id="zeu-LF-6mV"/>
|
||||||
|
<outlet property="ram_array" destination="RPu-My-wum" id="nZz-MO-ovx"/>
|
||||||
|
<outlet property="ram_menu" destination="Yks-M5-vi0" id="h5y-Un-jYJ"/>
|
||||||
|
<outlet property="rs232_menu" destination="6ln-U2-0Pi" id="7CT-OE-idV"/>
|
||||||
|
<outlet property="sl0_menu" destination="Jw1-t7-YyU" id="BB5-6y-zyf"/>
|
||||||
|
<outlet property="sl1_menu" destination="bta-RS-JT4" id="cpI-db-kzX"/>
|
||||||
|
<outlet property="sl2_menu" destination="cDU-b1-x5a" id="WtL-Fo-Q1B"/>
|
||||||
|
<outlet property="sl3_menu" destination="aSh-cs-0Nn" id="24o-66-LjH"/>
|
||||||
|
<outlet property="sl4_menu" destination="kU5-cR-hPZ" id="STc-6r-nxH"/>
|
||||||
|
<outlet property="sl5_menu" destination="8z4-8f-kLU" id="cLl-Ee-LUD"/>
|
||||||
|
<outlet property="sl6_menu" destination="GLb-F4-PWe" id="ubk-pt-e1Q"/>
|
||||||
|
<outlet property="sl7_menu" destination="IV2-3M-qfw" id="s5k-4G-w4r"/>
|
||||||
|
<outlet property="sl8_menu" destination="gOI-9u-PBt" id="02F-U5-Ipi"/>
|
||||||
|
<outlet property="view" destination="OM3-7F-wiN" id="yre-ts-aHj"/>
|
||||||
|
</connections>
|
||||||
|
</customObject>
|
||||||
|
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
|
||||||
|
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
|
||||||
|
<gridView autoresizesSubviews="NO" xPlacement="leading" yPlacement="bottom" rowAlignment="none" translatesAutoresizingMaskIntoConstraints="NO" id="OM3-7F-wiN">
|
||||||
|
<rect key="frame" x="0.0" y="0.0" width="306" height="570"/>
|
||||||
|
<rows>
|
||||||
|
<gridRow yPlacement="center" height="30" id="tHD-ui-hIL"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="Ccd-U2-Gx5">
|
||||||
|
<connections>
|
||||||
|
<binding destination="-2" name="hidden" keyPath="machine.sl0" id="YsR-kI-yrh">
|
||||||
|
<dictionary key="options">
|
||||||
|
<string key="NSValueTransformerName">NSIsNil</string>
|
||||||
|
</dictionary>
|
||||||
|
</binding>
|
||||||
|
</connections>
|
||||||
|
</gridRow>
|
||||||
|
<gridRow yPlacement="center" height="30" id="JGU-aq-3uw"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="gVW-Ya-phU">
|
||||||
|
<connections>
|
||||||
|
<binding destination="-2" name="hidden" keyPath="machine.sl2" id="AgS-hm-ePr">
|
||||||
|
<dictionary key="options">
|
||||||
|
<string key="NSValueTransformerName">NSIsNil</string>
|
||||||
|
</dictionary>
|
||||||
|
</binding>
|
||||||
|
</connections>
|
||||||
|
</gridRow>
|
||||||
|
<gridRow yPlacement="center" height="30" id="3fP-qp-zmi"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="86u-5p-UT6"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="Wdg-xb-xQx"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="ein-Fe-vBw"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="qjB-2w-AWE"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="n86-b0-b40"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="EEX-dh-jwn">
|
||||||
|
<connections>
|
||||||
|
<binding destination="-2" name="hidden" keyPath="machine.exp" id="EOZ-lS-QHF">
|
||||||
|
<dictionary key="options">
|
||||||
|
<string key="NSValueTransformerName">NSIsNil</string>
|
||||||
|
</dictionary>
|
||||||
|
</binding>
|
||||||
|
</connections>
|
||||||
|
</gridRow>
|
||||||
|
<gridRow yPlacement="center" height="30" id="OaZ-ZQ-gKK">
|
||||||
|
<connections>
|
||||||
|
<binding destination="-2" name="hidden" keyPath="machine.aux" id="OlF-v7-JZx">
|
||||||
|
<dictionary key="options">
|
||||||
|
<string key="NSValueTransformerName">NSIsNil</string>
|
||||||
|
</dictionary>
|
||||||
|
</binding>
|
||||||
|
</connections>
|
||||||
|
</gridRow>
|
||||||
|
<gridRow yPlacement="center" height="30" id="wQi-Oz-7Ye"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="gr2-eY-995"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="1xN-lm-s4l"/>
|
||||||
|
<gridRow yPlacement="center" height="30" id="M2s-qn-SIT"/>
|
||||||
|
</rows>
|
||||||
|
<columns>
|
||||||
|
<gridColumn xPlacement="fill" width="100" id="zpB-Rf-dWg"/>
|
||||||
|
<gridColumn xPlacement="fill" width="200" id="6Vn-yh-FoQ"/>
|
||||||
|
</columns>
|
||||||
|
<gridCells>
|
||||||
|
<gridCell row="tHD-ui-hIL" column="zpB-Rf-dWg" id="deJ-sv-Hb7">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="nHa-QG-HjJ">
|
||||||
|
<rect key="frame" x="-2" y="547" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="RAM" id="CvY-8m-Ni9">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="tHD-ui-hIL" column="6Vn-yh-FoQ" id="dak-Ha-01u">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Yks-M5-vi0">
|
||||||
|
<rect key="frame" x="104" y="542" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="92u-m2-3yN" id="XFo-KF-ueS">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="k8O-sG-Qld">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="92u-m2-3yN"/>
|
||||||
|
<menuItem title="Item 2" id="dPG-tR-M4A"/>
|
||||||
|
<menuItem title="Item 3" id="q2n-oZ-46s"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
<connections>
|
||||||
|
<action selector="ram_menu_action:" target="-2" id="j5h-42-bcI"/>
|
||||||
|
</connections>
|
||||||
|
</popUpButtonCell>
|
||||||
|
<connections>
|
||||||
|
<binding destination="-2" name="content" keyPath="machine.RAM" id="1PS-Q2-Ky4"/>
|
||||||
|
</connections>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="Ccd-U2-Gx5" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="QI6-Cz-URX">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="v8c-Rp-Mnt">
|
||||||
|
<rect key="frame" x="-2" y="511" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 0" id="EF7-NX-RMW">
|
||||||
|
<font key="font" metaFont="system"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="Ccd-U2-Gx5" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="0KQ-Qt-8KP">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Jw1-t7-YyU">
|
||||||
|
<rect key="frame" x="104" y="506" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="8Iv-mH-mEI" id="47g-IO-4Xt">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="nrR-Tr-UaW">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="8Iv-mH-mEI"/>
|
||||||
|
<menuItem title="Item 2" id="Prr-6W-NWp"/>
|
||||||
|
<menuItem title="Item 3" id="xz3-bi-5IM"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
<connections>
|
||||||
|
<binding destination="-2" name="content" keyPath="machine.sl0" id="2aW-3q-Mvt"/>
|
||||||
|
</connections>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="JGU-aq-3uw" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="Y1R-Ob-g2b">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="0gP-wH-DVr">
|
||||||
|
<rect key="frame" x="-2" y="475" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 1" id="bfg-tf-E34">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="JGU-aq-3uw" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="v8q-Rj-E4q">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="bta-RS-JT4">
|
||||||
|
<rect key="frame" x="104" y="470" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="dXO-at-nGw" id="kNn-6b-ysf">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="4ah-BI-RD5">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="dXO-at-nGw"/>
|
||||||
|
<menuItem title="Item 2" id="UZY-8b-qmE"/>
|
||||||
|
<menuItem title="Item 3" id="zxA-OM-BIY"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
<connections>
|
||||||
|
<binding destination="-2" name="content" keyPath="machine.sl1" id="wQI-oy-SYz"/>
|
||||||
|
</connections>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="gVW-Ya-phU" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="tpv-Yc-qii">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="EHZ-ol-QVz">
|
||||||
|
<rect key="frame" x="-2" y="439" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 2" id="FlL-pN-rn7">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="gVW-Ya-phU" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="OzN-rM-Pgi">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="cDU-b1-x5a">
|
||||||
|
<rect key="frame" x="104" y="434" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="vCY-qF-aB3" id="jvL-SH-nvG">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="Hp6-Gt-pVV">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="vCY-qF-aB3"/>
|
||||||
|
<menuItem title="Item 2" id="pbR-nc-itb"/>
|
||||||
|
<menuItem title="Item 3" id="L8Z-vH-OCa"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="3fP-qp-zmi" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="LbW-TT-AQ7">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="zGs-8d-L0S">
|
||||||
|
<rect key="frame" x="-2" y="403" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 3" id="KZK-h8-8cw">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="3fP-qp-zmi" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="h8H-TB-p2z">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="aSh-cs-0Nn">
|
||||||
|
<rect key="frame" x="104" y="398" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="2yS-4z-8OR" id="HaE-TD-5Wx">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="zka-z5-hPa">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="2yS-4z-8OR"/>
|
||||||
|
<menuItem title="Item 2" id="q4H-Fz-zVr"/>
|
||||||
|
<menuItem title="Item 3" id="HtQ-6y-S25"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="86u-5p-UT6" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="hJR-nJ-yYi">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="zsX-jd-6ba">
|
||||||
|
<rect key="frame" x="-2" y="367" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 4" id="WXv-RF-e7f">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="86u-5p-UT6" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="dHu-cL-FyO">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="kU5-cR-hPZ">
|
||||||
|
<rect key="frame" x="104" y="362" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="NaS-CV-XQm" id="rOP-eY-UKe">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="Iwv-z3-oJb">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="NaS-CV-XQm"/>
|
||||||
|
<menuItem title="Item 2" id="ovb-SG-Eg4"/>
|
||||||
|
<menuItem title="Item 3" id="GVh-L4-3Cp"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="Wdg-xb-xQx" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="dsM-t5-8ng">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="ANg-c1-hGf">
|
||||||
|
<rect key="frame" x="-2" y="331" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 5" id="EhN-EV-65V">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="Wdg-xb-xQx" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="ffm-pA-jjo">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="8z4-8f-kLU">
|
||||||
|
<rect key="frame" x="104" y="326" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="gH7-4J-xsg" id="cmc-Gf-Slp">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="Cma-00-qCY">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="gH7-4J-xsg"/>
|
||||||
|
<menuItem title="Item 2" id="meM-WH-GgP"/>
|
||||||
|
<menuItem title="Item 3" id="ILg-Ld-9Ri"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="ein-Fe-vBw" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="PSw-Jx-eS2">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Cr1-RK-Z7V">
|
||||||
|
<rect key="frame" x="-2" y="295" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 6" id="uzy-th-5Yc">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="ein-Fe-vBw" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="FsV-vO-KAs">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="GLb-F4-PWe">
|
||||||
|
<rect key="frame" x="104" y="290" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="VaX-M9-Op0" id="CjU-rC-HUT">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="3xq-Hn-icN">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="VaX-M9-Op0"/>
|
||||||
|
<menuItem title="Item 2" id="Fhy-5D-e6z"/>
|
||||||
|
<menuItem title="Item 3" id="9jw-LA-666"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="qjB-2w-AWE" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="1WE-Mm-0O3">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="3Ia-XB-C6D">
|
||||||
|
<rect key="frame" x="-2" y="259" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 7" id="32J-6e-nRV">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="qjB-2w-AWE" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="Yvr-uR-Hr5">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="IV2-3M-qfw">
|
||||||
|
<rect key="frame" x="104" y="254" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="8nb-Bq-4R4" id="nKb-Ar-bCb">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="R2a-Mg-LsY">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="8nb-Bq-4R4"/>
|
||||||
|
<menuItem title="Item 2" id="rFT-bC-KE9"/>
|
||||||
|
<menuItem title="Item 3" id="4jB-gp-lYT"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="n86-b0-b40" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="BVb-xz-z6n">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Mv0-Yd-EQg">
|
||||||
|
<rect key="frame" x="-2" y="223" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Slot 8" id="dCR-2L-b9S">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="n86-b0-b40" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="HTD-dN-P6S">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="gOI-9u-PBt">
|
||||||
|
<rect key="frame" x="104" y="218" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="sDW-p4-zeV" id="CiO-8J-xSZ">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="WDv-1D-6zB">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="sDW-p4-zeV"/>
|
||||||
|
<menuItem title="Item 2" id="cam-cj-JZX"/>
|
||||||
|
<menuItem title="Item 3" id="ERp-dw-eVV"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="EEX-dh-jwn" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="iRl-IX-FSD">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Avf-lX-f2Q">
|
||||||
|
<rect key="frame" x="-2" y="187" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Expansion" id="PEU-OV-910">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="EEX-dh-jwn" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="Ehv-aA-Llc">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="San-wP-1ez">
|
||||||
|
<rect key="frame" x="104" y="182" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="jtv-Qx-oVD" id="42u-b4-3kx">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="1hM-MS-UEz">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="jtv-Qx-oVD"/>
|
||||||
|
<menuItem title="Item 2" id="UeB-A1-nyv"/>
|
||||||
|
<menuItem title="Item 3" id="GyZ-dv-MS4"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="OaZ-ZQ-gKK" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="wRB-Wh-7kG">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="EMz-7i-H38">
|
||||||
|
<rect key="frame" x="-2" y="151" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Auxiliary" id="SoV-Qy-h2g">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="OaZ-ZQ-gKK" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="bx6-Rc-x2V">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="3kq-qn-7YR">
|
||||||
|
<rect key="frame" x="104" y="146" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="vWX-Cb-ldP" id="NqP-Uq-Knv">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="7Ef-KS-ulj">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="vWX-Cb-ldP"/>
|
||||||
|
<menuItem title="Item 2" id="Yg1-xZ-vXq"/>
|
||||||
|
<menuItem title="Item 3" id="BwC-w9-hBy"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="wQi-Oz-7Ye" column="zpB-Rf-dWg" xPlacement="fill" yPlacement="center" id="KoQ-xV-fQu">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="JAG-sJ-u2B">
|
||||||
|
<rect key="frame" x="-2" y="115" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="RS 232" id="iG2-rY-VDv">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="wQi-Oz-7Ye" column="6Vn-yh-FoQ" xPlacement="fill" yPlacement="center" id="zWk-jd-i0V">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="6ln-U2-0Pi">
|
||||||
|
<rect key="frame" x="104" y="110" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="uu3-rr-iD8" id="daT-eX-4Vu">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="fMw-mh-Qfi">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="uu3-rr-iD8"/>
|
||||||
|
<menuItem title="Item 2" id="f1r-MS-itp"/>
|
||||||
|
<menuItem title="Item 3" id="WhP-Di-CHP"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="gr2-eY-995" column="zpB-Rf-dWg" id="xIE-bJ-mzr">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Svb-pu-WPf">
|
||||||
|
<rect key="frame" x="-2" y="79" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Game I/O" id="2Gc-mV-zCZ">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="gr2-eY-995" column="6Vn-yh-FoQ" id="nhy-Gp-GLL">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="K8G-bZ-6mZ">
|
||||||
|
<rect key="frame" x="104" y="74" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="GOm-Tf-6qc" id="Mig-Nu-gZB">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="faU-zS-LgN">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="GOm-Tf-6qc"/>
|
||||||
|
<menuItem title="Item 2" id="XgG-U0-2G7"/>
|
||||||
|
<menuItem title="Item 3" id="4Ea-aE-sB1"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="1xN-lm-s4l" column="zpB-Rf-dWg" id="vPV-KN-NNp">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="31K-iE-RCe">
|
||||||
|
<rect key="frame" x="-2" y="43" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Printer" id="QZI-H7-i8m">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="1xN-lm-s4l" column="6Vn-yh-FoQ" id="KRc-Z8-drK">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="sTp-en-8Wd">
|
||||||
|
<rect key="frame" x="104" y="38" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="TU9-ed-ofw" id="1OL-aw-xNL">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="MSP-Iu-ix3">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="TU9-ed-ofw"/>
|
||||||
|
<menuItem title="Item 2" id="7wI-Tn-rE0"/>
|
||||||
|
<menuItem title="Item 3" id="bQc-pc-ccM"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="M2s-qn-SIT" column="zpB-Rf-dWg" id="8R2-aA-mLq">
|
||||||
|
<textField key="contentView" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="MH0-Nk-5Py">
|
||||||
|
<rect key="frame" x="-2" y="7" width="104" height="16"/>
|
||||||
|
<textFieldCell key="cell" lineBreakMode="clipping" title="Modem" id="HQq-VN-Ju9">
|
||||||
|
<font key="font" usesAppearanceFont="YES"/>
|
||||||
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</textFieldCell>
|
||||||
|
</textField>
|
||||||
|
</gridCell>
|
||||||
|
<gridCell row="M2s-qn-SIT" column="6Vn-yh-FoQ" id="idI-pW-e7v">
|
||||||
|
<popUpButton key="contentView" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="KHf-kC-BpZ">
|
||||||
|
<rect key="frame" x="104" y="2" width="205" height="25"/>
|
||||||
|
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="CxO-3g-va1" id="jDr-6p-C7y">
|
||||||
|
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
|
||||||
|
<font key="font" metaFont="menu"/>
|
||||||
|
<menu key="menu" id="lxi-Z0-ya6">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Item 1" state="on" id="CxO-3g-va1"/>
|
||||||
|
<menuItem title="Item 2" id="OpR-vy-iL5"/>
|
||||||
|
<menuItem title="Item 3" id="xvH-9B-ge5"/>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</popUpButtonCell>
|
||||||
|
</popUpButton>
|
||||||
|
</gridCell>
|
||||||
|
</gridCells>
|
||||||
|
<point key="canvasLocation" x="268" y="71"/>
|
||||||
|
</gridView>
|
||||||
|
<arrayController id="RPu-My-wum" userLabel="RAM Array Controller"/>
|
||||||
|
<customObject id="aRt-yJ-VXG" customClass="NSArray"/>
|
||||||
|
</objects>
|
||||||
|
</document>
|
20
MA2ME/ROMBrowserDelegate.h
Normal file
20
MA2ME/ROMBrowserDelegate.h
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
//
|
||||||
|
// ROMBrowserDelegate.h
|
||||||
|
// MA2ME
|
||||||
|
//
|
||||||
|
// Created by Kelvin Sherlock on 8/16/2020.
|
||||||
|
// Copyright © 2020 Kelvin Sherlock. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <Cocoa/Cocoa.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface ROMBrowserDelegate : NSObject <NSBrowserDelegate>
|
||||||
|
|
||||||
|
@property NSString *model;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
98
MA2ME/ROMBrowserDelegate.m
Normal file
98
MA2ME/ROMBrowserDelegate.m
Normal file
|
@ -0,0 +1,98 @@
|
||||||
|
//
|
||||||
|
// ROMBrowserDelegate.m
|
||||||
|
// MA2ME
|
||||||
|
//
|
||||||
|
// Created by Kelvin Sherlock on 8/16/2020.
|
||||||
|
// Copyright © 2020 Kelvin Sherlock. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "ROMBrowserDelegate.h"
|
||||||
|
|
||||||
|
@interface ROMBrowserDelegate()
|
||||||
|
|
||||||
|
@property NSArray *data;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation ROMBrowserDelegate
|
||||||
|
|
||||||
|
|
||||||
|
-(void)awakeFromNib {
|
||||||
|
|
||||||
|
NSBundle *bundle = [NSBundle mainBundle];
|
||||||
|
NSString *path = [bundle pathForResource: @"Models" ofType: @"plist"];
|
||||||
|
_data = [NSArray arrayWithContentsOfFile: path];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(IBAction)click:(id)sender {
|
||||||
|
|
||||||
|
NSDictionary *item = [self itemForBrowser: sender];
|
||||||
|
[self setModel: [item objectForKey: @"Mame"]];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark NSBrowser
|
||||||
|
|
||||||
|
-(NSDictionary *)itemForBrowser: (NSBrowser *)browser {
|
||||||
|
|
||||||
|
NSIndexPath *path = [browser selectionIndexPath];
|
||||||
|
|
||||||
|
NSArray *data = _data;
|
||||||
|
NSDictionary *item = nil;
|
||||||
|
|
||||||
|
NSUInteger l = [path length];
|
||||||
|
for (NSUInteger i = 0; i < l; ++i) {
|
||||||
|
NSUInteger ix = [path indexAtPosition: i];
|
||||||
|
if (ix > [data count]) return nil;
|
||||||
|
item = [data objectAtIndex: ix];
|
||||||
|
data = [item objectForKey: @"Children"];
|
||||||
|
}
|
||||||
|
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
-(NSArray *)itemsForBrowser: (NSBrowser *)browser column: (NSInteger) column {
|
||||||
|
|
||||||
|
NSArray *data = _data;
|
||||||
|
for (unsigned i = 0; i < column; ++i) {
|
||||||
|
NSInteger ix = [browser selectedRowInColumn: i];
|
||||||
|
if (ix < 0) return 0;
|
||||||
|
|
||||||
|
NSDictionary *item = [data objectAtIndex: ix];
|
||||||
|
data = [item objectForKey: @"Children"];
|
||||||
|
if (!data) return 0;
|
||||||
|
}
|
||||||
|
return data;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)browser:(NSBrowser *)sender willDisplayCell:(id)cell atRow:(NSInteger)row column:(NSInteger)column {
|
||||||
|
NSArray *data = [self itemsForBrowser: sender column: column];
|
||||||
|
if (!data || row >= [data count]) return;
|
||||||
|
|
||||||
|
NSDictionary *item = [data objectAtIndex: row];
|
||||||
|
|
||||||
|
NSBrowserCell *bc = (NSBrowserCell *)cell;
|
||||||
|
|
||||||
|
[bc setStringValue: [item objectForKey: @"Name"]];
|
||||||
|
[bc setLeaf: ![item objectForKey: @"Children"]];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (NSString *)browser:(NSBrowser *)sender titleOfColumn:(NSInteger)column {
|
||||||
|
return column == 0 ? @"Model" : @"";
|
||||||
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
- (id)browser:(NSBrowser *)browser child:(NSInteger)index ofItem:(id)item {
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- (NSInteger)browser:(NSBrowser *)sender numberOfRowsInColumn:(NSInteger)column {
|
||||||
|
|
||||||
|
NSArray *data = [self itemsForBrowser: sender column: column];
|
||||||
|
return [data count];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@end
|
|
@ -134,6 +134,12 @@
|
||||||
<string>apple3</string>
|
<string>apple3</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
|
||||||
|
<dict>
|
||||||
|
<key>Name</key>
|
||||||
|
<string>Laser //c</string>
|
||||||
|
<key>Mame</key>
|
||||||
|
<string>laser2c</string>
|
||||||
|
</dict>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Name</key>
|
<key>Name</key>
|
||||||
<string>Laser 128</string>
|
<string>Laser 128</string>
|
||||||
|
@ -151,16 +157,21 @@
|
||||||
<key>Name</key>
|
<key>Name</key>
|
||||||
<string>Laser 128 EX</string>
|
<string>Laser 128 EX</string>
|
||||||
<key>Mame</key>
|
<key>Mame</key>
|
||||||
<string>laser128ex</string>
|
<string>las128ex</string>
|
||||||
</dict>
|
</dict>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Name</key>
|
<key>Name</key>
|
||||||
<string>Laser 128 EX2</string>
|
<string>Laser 128 EX2</string>
|
||||||
<key>Mame</key>
|
<key>Mame</key>
|
||||||
<string>laser128e2</string>
|
<string>las128e2</string>
|
||||||
</dict>
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>Name</key>
|
||||||
|
<string>Franklin Ace 100</string>
|
||||||
|
<key>Mame</key>
|
||||||
|
<string>ace100</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
</plist>
|
</plist>
|
2193
MA2ME/Resources/ace100.plist
Normal file
2193
MA2ME/Resources/ace100.plist
Normal file
File diff suppressed because it is too large
Load Diff
105
MA2ME/Resources/apple1.plist
Normal file
105
MA2ME/Resources/apple1.plist
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>apple1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple I</string>
|
||||||
|
<key>RAM</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>4096</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>4K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>8192</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>8K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>12288</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>12K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>16384</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>16K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>20480</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>20K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>24576</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>24K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>28672</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>28K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>32768</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>32K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>36864</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>36K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>40960</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>40K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>45056</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>44K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>49152</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>48K</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>Resolution</key>
|
||||||
|
<array>
|
||||||
|
<integer>560</integer>
|
||||||
|
<integer>384</integer>
|
||||||
|
</array>
|
||||||
|
<key>exp</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA Compact Flash for Apple I</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cassette</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple I cassette board</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
2193
MA2ME/Resources/apple2.plist
Normal file
2193
MA2ME/Resources/apple2.plist
Normal file
File diff suppressed because it is too large
Load Diff
171
MA2ME/Resources/apple2c.plist
Normal file
171
MA2ME/Resources/apple2c.plist
Normal file
|
@ -0,0 +1,171 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>apple2c</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple //c</string>
|
||||||
|
<key>RAM</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>131072</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>128K</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>Resolution</key>
|
||||||
|
<array>
|
||||||
|
<integer>560</integer>
|
||||||
|
<integer>384</integer>
|
||||||
|
</array>
|
||||||
|
<key>gameio</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>compeyes</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>paddles</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II paddles</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>joy</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II analog joysticks</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>printer</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>modem</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
195
MA2ME/Resources/apple2cp.plist
Normal file
195
MA2ME/Resources/apple2cp.plist
Normal file
|
@ -0,0 +1,195 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>apple2cp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple //c Plus</string>
|
||||||
|
<key>RAM</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>131072</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>128K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>393216</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>384K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>655360</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>640K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>917504</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>896K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>1179648</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>1152K</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>Resolution</key>
|
||||||
|
<array>
|
||||||
|
<integer>560</integer>
|
||||||
|
<integer>384</integer>
|
||||||
|
</array>
|
||||||
|
<key>gameio</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>compeyes</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>paddles</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II paddles</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>joy</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II analog joysticks</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>printer</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>modem</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
2313
MA2ME/Resources/apple2e.plist
Normal file
2313
MA2ME/Resources/apple2e.plist
Normal file
File diff suppressed because it is too large
Load Diff
2313
MA2ME/Resources/apple2ee.plist
Normal file
2313
MA2ME/Resources/apple2ee.plist
Normal file
File diff suppressed because it is too large
Load Diff
2313
MA2ME/Resources/apple2eefr.plist
Normal file
2313
MA2ME/Resources/apple2eefr.plist
Normal file
File diff suppressed because it is too large
Load Diff
2313
MA2ME/Resources/apple2ees.plist
Normal file
2313
MA2ME/Resources/apple2ees.plist
Normal file
File diff suppressed because it is too large
Load Diff
2313
MA2ME/Resources/apple2eeuk.plist
Normal file
2313
MA2ME/Resources/apple2eeuk.plist
Normal file
File diff suppressed because it is too large
Load Diff
2313
MA2ME/Resources/apple2ep.plist
Normal file
2313
MA2ME/Resources/apple2ep.plist
Normal file
File diff suppressed because it is too large
Load Diff
2313
MA2ME/Resources/apple2euk.plist
Normal file
2313
MA2ME/Resources/apple2euk.plist
Normal file
File diff suppressed because it is too large
Load Diff
2124
MA2ME/Resources/apple2gs.plist
Normal file
2124
MA2ME/Resources/apple2gs.plist
Normal file
File diff suppressed because it is too large
Load Diff
24
MA2ME/Resources/apple2gs/printer.plist
Normal file
24
MA2ME/Resources/apple2gs/printer.plist
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>Name</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
<key>Mame</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>Name</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
<key>Mame</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>Name</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
<key>Mame</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</plist>
|
2148
MA2ME/Resources/apple2gsr0.plist
Normal file
2148
MA2ME/Resources/apple2gsr0.plist
Normal file
File diff suppressed because it is too large
Load Diff
2148
MA2ME/Resources/apple2gsr1.plist
Normal file
2148
MA2ME/Resources/apple2gsr1.plist
Normal file
File diff suppressed because it is too large
Load Diff
2157
MA2ME/Resources/apple2jp.plist
Normal file
2157
MA2ME/Resources/apple2jp.plist
Normal file
File diff suppressed because it is too large
Load Diff
2157
MA2ME/Resources/apple2p.plist
Normal file
2157
MA2ME/Resources/apple2p.plist
Normal file
File diff suppressed because it is too large
Load Diff
231
MA2ME/Resources/apple3.plist
Normal file
231
MA2ME/Resources/apple3.plist
Normal file
|
@ -0,0 +1,231 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>apple3</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple ///</string>
|
||||||
|
<key>RAM</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>131072</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>128K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>524288</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>512K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>262144</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>256K</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>Resolution</key>
|
||||||
|
<array>
|
||||||
|
<integer>560</integer>
|
||||||
|
<integer>384</integer>
|
||||||
|
</array>
|
||||||
|
<key>sl1</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>sl2</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>sl3</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>sl4</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>rs232</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
1267
MA2ME/Resources/devices.plist
Normal file
1267
MA2ME/Resources/devices.plist
Normal file
File diff suppressed because it is too large
Load Diff
195
MA2ME/Resources/las128e2.plist
Normal file
195
MA2ME/Resources/las128e2.plist
Normal file
|
@ -0,0 +1,195 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>las128e2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Laser 128ex2 (version 6.1)</string>
|
||||||
|
<key>RAM</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>131072</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>128K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>393216</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>384K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>655360</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>640K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>917504</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>896K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>1179648</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>1152K</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>Resolution</key>
|
||||||
|
<array>
|
||||||
|
<integer>560</integer>
|
||||||
|
<integer>384</integer>
|
||||||
|
</array>
|
||||||
|
<key>gameio</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>compeyes</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>paddles</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II paddles</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>joy</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II analog joysticks</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>printer</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>modem</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
837
MA2ME/Resources/las128ex.plist
Normal file
837
MA2ME/Resources/las128ex.plist
Normal file
|
@ -0,0 +1,837 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>las128ex</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Laser 128ex (version 4.5)</string>
|
||||||
|
<key>RAM</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>131072</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>128K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>393216</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>384K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>655360</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>640K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>917504</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>896K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>1179648</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>1152K</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>Resolution</key>
|
||||||
|
<array>
|
||||||
|
<integer>560</integer>
|
||||||
|
<integer>384</integer>
|
||||||
|
</array>
|
||||||
|
<key>sl5</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>byte8251</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>BYTE Serial Interface (8251 based)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applesurance</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applesurance Diagnostic Controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ceyes2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes/2</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssprite</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Synetix SuperSprite</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9958</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9958)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9938</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9938)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dx1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Decillonix DX-1</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swyft</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IAI SwyftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 1)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>scsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>corvus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Corvus Flat Cable interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aevm80</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Viewmaster 80</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>hsscsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II High-Speed SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultratermenh</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (enhanced //e)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoiiplus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiiiwm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II IWM controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>parallel</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Parallel Interface Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>zipdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Zip Technologies ZipDrive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>themill</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Stellation Two The Mill</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>4play</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>4play Joystick Card (rev. B)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vulcan</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Vulcan IDE controller (//e version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa202</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>arcbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Third Millenium Engineering Arcade Board</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vtc1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>unknown Videoterm clone</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>videoterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx Videoterm 80 Column Display</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>softcard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Microsoft SoftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>twarp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TransWarp</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>memexp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Memory Expansion Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aesms</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Super Music Synthesizer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ramfactor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering RamFactor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>alfam2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ALF MC1 / Apple Music II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssc</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Super Serial Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing13</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (13-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mockingboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sweet Micro Systems Mockingboard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultraterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (original)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (65C02 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssbapple</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Multitech Industrial SSB Apple speech card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sam</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Don't Ask Software S.A.M.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>phasor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Phasor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>midi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>6850 MIDI card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (16-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16alt</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card (alt. version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pcxport</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering PC Transporter</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>tm2ho</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TimeMaster H.O.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 2)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>sl7</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>byte8251</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>BYTE Serial Interface (8251 based)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applesurance</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applesurance Diagnostic Controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ceyes2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes/2</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssprite</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Synetix SuperSprite</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9958</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9958)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9938</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9938)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dx1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Decillonix DX-1</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swyft</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IAI SwyftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 1)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>scsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>corvus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Corvus Flat Cable interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aevm80</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Viewmaster 80</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>hsscsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II High-Speed SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultratermenh</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (enhanced //e)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoiiplus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiiiwm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II IWM controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>parallel</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Parallel Interface Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>zipdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Zip Technologies ZipDrive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>themill</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Stellation Two The Mill</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>4play</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>4play Joystick Card (rev. B)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vulcan</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Vulcan IDE controller (//e version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa202</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>arcbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Third Millenium Engineering Arcade Board</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vtc1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>unknown Videoterm clone</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>videoterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx Videoterm 80 Column Display</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>softcard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Microsoft SoftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>twarp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TransWarp</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>memexp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Memory Expansion Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aesms</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Super Music Synthesizer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ramfactor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering RamFactor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>alfam2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ALF MC1 / Apple Music II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssc</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Super Serial Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing13</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (13-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mockingboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sweet Micro Systems Mockingboard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultraterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (original)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (65C02 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssbapple</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Multitech Industrial SSB Apple speech card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sam</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Don't Ask Software S.A.M.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>phasor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Phasor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>midi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>6850 MIDI card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (16-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16alt</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card (alt. version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pcxport</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering PC Transporter</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>tm2ho</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TimeMaster H.O.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 2)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>gameio</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>compeyes</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>paddles</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II paddles</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>joy</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II analog joysticks</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>printer</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>modem</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
837
MA2ME/Resources/laser128.plist
Normal file
837
MA2ME/Resources/laser128.plist
Normal file
|
@ -0,0 +1,837 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>laser128</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Laser 128 (version 4.2)</string>
|
||||||
|
<key>RAM</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>131072</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>128K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>393216</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>384K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>655360</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>640K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>917504</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>896K</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<integer>1179648</integer>
|
||||||
|
<key>description</key>
|
||||||
|
<string>1152K</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>Resolution</key>
|
||||||
|
<array>
|
||||||
|
<integer>560</integer>
|
||||||
|
<integer>384</integer>
|
||||||
|
</array>
|
||||||
|
<key>sl5</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>byte8251</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>BYTE Serial Interface (8251 based)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applesurance</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applesurance Diagnostic Controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ceyes2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes/2</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssprite</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Synetix SuperSprite</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9958</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9958)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9938</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9938)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dx1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Decillonix DX-1</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swyft</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IAI SwyftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 1)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>scsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>corvus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Corvus Flat Cable interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aevm80</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Viewmaster 80</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>hsscsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II High-Speed SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultratermenh</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (enhanced //e)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoiiplus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiiiwm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II IWM controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>parallel</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Parallel Interface Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>zipdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Zip Technologies ZipDrive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>themill</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Stellation Two The Mill</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>4play</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>4play Joystick Card (rev. B)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vulcan</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Vulcan IDE controller (//e version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa202</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>arcbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Third Millenium Engineering Arcade Board</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vtc1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>unknown Videoterm clone</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>videoterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx Videoterm 80 Column Display</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>softcard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Microsoft SoftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>twarp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TransWarp</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>memexp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Memory Expansion Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aesms</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Super Music Synthesizer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ramfactor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering RamFactor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>alfam2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ALF MC1 / Apple Music II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssc</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Super Serial Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing13</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (13-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mockingboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sweet Micro Systems Mockingboard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultraterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (original)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (65C02 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssbapple</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Multitech Industrial SSB Apple speech card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sam</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Don't Ask Software S.A.M.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>phasor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Phasor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>midi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>6850 MIDI card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (16-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16alt</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card (alt. version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pcxport</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering PC Transporter</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>tm2ho</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TimeMaster H.O.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 2)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>sl7</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>byte8251</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>BYTE Serial Interface (8251 based)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applesurance</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applesurance Diagnostic Controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ceyes2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes/2</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssprite</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Synetix SuperSprite</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9958</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9958)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi9938</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface (TMS9938)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mouse</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Mouse Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dx1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Decillonix DX-1</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swyft</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IAI SwyftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 1)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>scsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>applicard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>PCPI Applicard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>corvus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Corvus Flat Cable interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aevm80</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Viewmaster 80</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>hsscsi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II High-Speed SCSI Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ezcgi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>E-Z Color Graphics Interface</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultratermenh</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (enhanced //e)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoiiplus</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiiiwm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II IWM controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>parallel</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Parallel Interface Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>zipdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Zip Technologies ZipDrive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>themill</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Stellation Two The Mill</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>4play</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>4play Joystick Card (rev. B)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vulcan</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Vulcan IDE controller (//e version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa202</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (6502 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>arcbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Third Millenium Engineering Arcade Board</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>focusdrive</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Parsons Engineering Focus Drive</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>vtc1</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>unknown Videoterm clone</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>echoii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Street Electronics Echo II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>videoterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx Videoterm 80 Column Display</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>softcard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Microsoft SoftCard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>twarp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TransWarp</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>thclock</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ThunderWare ThunderClock Plus</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>memexp</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II Memory Expansion Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>aesms</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Super Music Synthesizer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ramfactor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering RamFactor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>alfam2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>ALF MC1 / Apple Music II</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssc</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Super Serial Card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing13</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (13-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mockingboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sweet Micro Systems Mockingboard</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ultraterm</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Videx UltraTerm (original)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskii</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II controller</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>cffa2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>CFFA2000 Compact Flash (65C02 firmware, www.dreher.net)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ssbapple</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Multitech Industrial SSB Apple speech card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sam</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Don't Ask Software S.A.M.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>phasor</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering Phasor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>midi</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>6850 MIDI card</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>diskiing</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple Disk II NG controller (16-sector)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ap16alt</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IBS AP-16 80 column card (alt. version)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pcxport</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering PC Transporter</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>tm2ho</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Applied Engineering TimeMaster H.O.</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>mcms2</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Mountain Computer Music System (card 2)</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>gameio</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>compeyes</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Digital Vision ComputerEyes</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>paddles</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II paddles</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>joy</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Apple II analog joysticks</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>printer</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>modem</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>ie15</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>IE15 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>terminal</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>pty</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Pseudo terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>dec_loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback (DEC 12-15336-00)</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>null_modem</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Null Modem</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>loopback</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>RS232 Loopback</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>swtpc8212</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>SWTPC8212 Terminal</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>sunkbd</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Sun Keyboard Adaptor</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>printer</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Printer</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>value</key>
|
||||||
|
<string>keyboard</string>
|
||||||
|
<key>description</key>
|
||||||
|
<string>Serial Keyboard</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
2157
MA2ME/Resources/laser2c.plist
Normal file
2157
MA2ME/Resources/laser2c.plist
Normal file
File diff suppressed because it is too large
Load Diff
39
MA2ME/SlotBrowserDelegate.h
Normal file
39
MA2ME/SlotBrowserDelegate.h
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
//
|
||||||
|
// SlotBrowserDelegate.h
|
||||||
|
// MA2ME
|
||||||
|
//
|
||||||
|
// Created by Kelvin Sherlock on 8/16/2020.
|
||||||
|
// Copyright © 2020 Kelvin Sherlock. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <Cocoa/Cocoa.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface SlotBrowserDelegate : NSObject <NSBrowserDelegate>
|
||||||
|
|
||||||
|
@property (nonatomic) NSString *model;
|
||||||
|
|
||||||
|
@property (weak) NSBrowser *browser;
|
||||||
|
|
||||||
|
@property NSString *slot0;
|
||||||
|
@property NSString *slot1;
|
||||||
|
@property NSString *slot2;
|
||||||
|
@property NSString *slot3;
|
||||||
|
@property NSString *slot4;
|
||||||
|
@property NSString *slot5;
|
||||||
|
@property NSString *slot6;
|
||||||
|
@property NSString *slot7;
|
||||||
|
@property NSString *slot8;
|
||||||
|
|
||||||
|
@property NSString *exp;
|
||||||
|
@property NSString *aux;
|
||||||
|
|
||||||
|
@property NSString *gameio;
|
||||||
|
@property NSString *printer;
|
||||||
|
@property NSString *modem;
|
||||||
|
@property NSString *rs232;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
160
MA2ME/SlotBrowserDelegate.m
Normal file
160
MA2ME/SlotBrowserDelegate.m
Normal file
|
@ -0,0 +1,160 @@
|
||||||
|
//
|
||||||
|
// SlotBrowserDelegate.m
|
||||||
|
// MA2ME
|
||||||
|
//
|
||||||
|
// Created by Kelvin Sherlock on 8/16/2020.
|
||||||
|
// Copyright © 2020 Kelvin Sherlock. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "SlotBrowserDelegate.h"
|
||||||
|
|
||||||
|
@interface SlotBrowserDelegate () {
|
||||||
|
|
||||||
|
NSString *_model;
|
||||||
|
NSMutableArray *_data;
|
||||||
|
}
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation SlotBrowserDelegate
|
||||||
|
|
||||||
|
-(void)awakeFromNib {
|
||||||
|
_data = [NSMutableArray new];
|
||||||
|
}
|
||||||
|
|
||||||
|
@synthesize model = _model;
|
||||||
|
|
||||||
|
static NSString *Mame[] = {
|
||||||
|
@"-sl0", @"-sl1", @"-sl2", @"-sl3",
|
||||||
|
@"-sl4", @"-sl5", @"-sl6", @"-sl7",
|
||||||
|
@"-sl8", @"-exp", @"-aux",
|
||||||
|
@"-gameio", @"-printer", @"-modem", @"-rs232"
|
||||||
|
};
|
||||||
|
|
||||||
|
static NSString *Keys[] = {
|
||||||
|
@"slot0", @"slot1", @"slot2", @"slot3",
|
||||||
|
@"slot4", @"slot5", @"slot6", @"slot7",
|
||||||
|
@"slot8", @"exp", @"aux",
|
||||||
|
@"gameio", @"printer", @"modem", @"rs232"
|
||||||
|
};
|
||||||
|
|
||||||
|
static NSString *Names[] = {
|
||||||
|
@"Slot 0", @"Slot 1", @"Slot 2", @"Slot 3",
|
||||||
|
@"Slot 4", @"Slot 5", @"Slot 6", @"Slot 7",
|
||||||
|
@"Slot 8", @"Expansion", @"Auxiliary",
|
||||||
|
@"Game I/O", @"Printer", @"Modem", @"RS232"
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
-(void)setModel:(NSString *)model {
|
||||||
|
|
||||||
|
|
||||||
|
if (_model == model) return;
|
||||||
|
if ([_model isEqualToString: model]) return;
|
||||||
|
_model = model;
|
||||||
|
|
||||||
|
[_data removeAllObjects];
|
||||||
|
|
||||||
|
if (!model) return;
|
||||||
|
|
||||||
|
NSBundle *bundle = [NSBundle mainBundle];
|
||||||
|
|
||||||
|
NSDictionary *none = @{ @"Name": @"None", @"Mame": @"" };
|
||||||
|
|
||||||
|
for (unsigned i = 0; i < sizeof(Keys)/sizeof(Keys[0]); ++i) {
|
||||||
|
NSString *key = Keys[i];
|
||||||
|
|
||||||
|
NSString *path = [bundle pathForResource: key ofType: @"plist" inDirectory: model];
|
||||||
|
if (!path) {
|
||||||
|
[self setValue: nil forKey: key];
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
NSMutableArray *data = [NSMutableArray arrayWithContentsOfFile: path];
|
||||||
|
|
||||||
|
if (![data count]) {
|
||||||
|
[self setValue: nil forKey: key];
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data insertObject: none atIndex: 0];
|
||||||
|
|
||||||
|
NSString *value = [self valueForKey: key];
|
||||||
|
if (value) {
|
||||||
|
BOOL found = NO;
|
||||||
|
for (NSDictionary *item in data) {
|
||||||
|
if ([value isEqualToString: [item objectForKey: @"Mame"]]) {
|
||||||
|
found = YES;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!found) [self setValue: nil forKey: key];
|
||||||
|
}
|
||||||
|
|
||||||
|
NSDictionary *item = @{
|
||||||
|
@"Children": data,
|
||||||
|
@"Name": Names[i],
|
||||||
|
@"Mame": key
|
||||||
|
};
|
||||||
|
[_data addObject: item];
|
||||||
|
}
|
||||||
|
// needs to call [NSBrowser reloadColumn0];
|
||||||
|
[_browser loadColumnZero];
|
||||||
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
-(id)rootItemForBrowser:(NSBrowser *)browser {
|
||||||
|
return _data;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (BOOL)browser:(NSBrowser *)browser isLeafItem:(id)item {
|
||||||
|
|
||||||
|
if (!item) return YES;
|
||||||
|
if (item == _data) return NO;
|
||||||
|
|
||||||
|
return ![(NSDictionary *)item objectForKey: @"Children"];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (id)browser:(NSBrowser *)browser child:(NSInteger)index ofItem:(id)item {
|
||||||
|
|
||||||
|
if (!item) return nil;
|
||||||
|
if (item == _data) return [item objectAtIndex: index];
|
||||||
|
|
||||||
|
NSArray *data = [item objectForKey: @"Children"];
|
||||||
|
return [data objectAtIndex: index];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
-(id)browser:(NSBrowser *)browser objectValueForItem:(id)item {
|
||||||
|
if (item == _data) return @"Root";
|
||||||
|
return [item objectForKey: @"Name"];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (NSInteger)browser:(NSBrowser *)browser numberOfChildrenOfItem:(id)item {
|
||||||
|
NSArray *data = item == _data ? item : [item objectForKey: @"Children"];
|
||||||
|
return [data count];
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-(void)browser:(NSBrowser *)sender willDisplayCell:(id)cell atRow:(NSInteger)row column:(NSInteger)column {
|
||||||
|
[(NSBrowserCell *)cell set];
|
||||||
|
[(NSBrowserCell *)cell setLeaf: YES];
|
||||||
|
[(NSBrowserCell *)cell setStringValue: @"Hello"];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
-(NSArray *)args {
|
||||||
|
NSMutableArray *array = [NSMutableArray new];
|
||||||
|
|
||||||
|
for (unsigned i = 0; i < sizeof(Keys)/sizeof(Keys[0]); ++i) {
|
||||||
|
NSString *key = Keys[i];
|
||||||
|
|
||||||
|
NSString *value = [self valueForKey: key];
|
||||||
|
if (!value || ![value length]) continue;
|
||||||
|
[array addObject: Mame[i]];
|
||||||
|
[array addObject: value];
|
||||||
|
}
|
||||||
|
return array;
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
21
MA2ME/machines.py
Normal file
21
MA2ME/machines.py
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
MACHINES = (
|
||||||
|
"apple1",
|
||||||
|
"apple2", "apple2p", "apple2jp",
|
||||||
|
"apple3",
|
||||||
|
"apple2e", "apple2ees", "apple2euk", "apple2ep",
|
||||||
|
"apple2ee", "apple2eeuk", "apple2eefr",
|
||||||
|
"apple2gs", "apple2gsr0", "apple2gsr1",
|
||||||
|
"apple2c", "apple2cp",
|
||||||
|
"laser128", "laser2c", "las128ex", "las128e2",
|
||||||
|
"ace100"
|
||||||
|
)
|
||||||
|
|
||||||
|
SLOTS = (
|
||||||
|
"sl0", "sl1", "sl2", "sl3",
|
||||||
|
"sl4", "sl5", "sl6", "sl7",
|
||||||
|
"exp", "aux",
|
||||||
|
"rs232",
|
||||||
|
"gameio",
|
||||||
|
"printer",
|
||||||
|
"modem"
|
||||||
|
)
|
38
MA2ME/mkdevices.py
Normal file
38
MA2ME/mkdevices.py
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
from plist import to_plist
|
||||||
|
|
||||||
|
import xml.etree.ElementTree as ET
|
||||||
|
|
||||||
|
from machines import MACHINES
|
||||||
|
|
||||||
|
|
||||||
|
devices = {}
|
||||||
|
|
||||||
|
for m in MACHINES:
|
||||||
|
|
||||||
|
|
||||||
|
st = subprocess.run(["mame", m, "-listxml"], capture_output=True)
|
||||||
|
if st.returncode != 0:
|
||||||
|
print("mame error: {}".format(m))
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
xml = st.stdout
|
||||||
|
root = ET.fromstring(xml)
|
||||||
|
|
||||||
|
nodes = root.findall("machine[@isdevice='yes']")
|
||||||
|
for d in nodes:
|
||||||
|
|
||||||
|
name = d.get("name") # devname
|
||||||
|
desc = d.find("description").text
|
||||||
|
|
||||||
|
tmp = {
|
||||||
|
"Name": name,
|
||||||
|
"Description": desc
|
||||||
|
}
|
||||||
|
devices[name] = tmp
|
||||||
|
|
||||||
|
|
||||||
|
with open("Resources/devices.plist", "w") as f:
|
||||||
|
f.write(to_plist(devices))
|
72
MA2ME/mkmachines.py
Normal file
72
MA2ME/mkmachines.py
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
from plist import to_plist
|
||||||
|
|
||||||
|
import xml.etree.ElementTree as ET
|
||||||
|
|
||||||
|
from machines import MACHINES, SLOTS
|
||||||
|
|
||||||
|
devices = {}
|
||||||
|
|
||||||
|
for m in MACHINES:
|
||||||
|
|
||||||
|
print(m)
|
||||||
|
|
||||||
|
st = subprocess.run(["mame", m, "-listxml"], capture_output=True)
|
||||||
|
if st.returncode != 0:
|
||||||
|
print("mame error: {}".format(m))
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
d = { }
|
||||||
|
|
||||||
|
xml = st.stdout
|
||||||
|
root = ET.fromstring(xml)
|
||||||
|
|
||||||
|
path = 'machine[@name="{}"]'.format(m)
|
||||||
|
machine = root.find(path)
|
||||||
|
|
||||||
|
d["value"] = m
|
||||||
|
d["description"] = machine.find("description").text
|
||||||
|
d["RAM"] = [
|
||||||
|
{
|
||||||
|
"value": int(x.text),
|
||||||
|
"description": x.get("name")
|
||||||
|
}
|
||||||
|
for x in machine.findall('ramoption')
|
||||||
|
]
|
||||||
|
|
||||||
|
node = machine.find('display[@tag="screen"]')
|
||||||
|
d["Resolution"] = [int(node.get("width")), int(node.get("height")) * 2]
|
||||||
|
|
||||||
|
mm = {}
|
||||||
|
for x in root.findall("machine[@isdevice='yes']"):
|
||||||
|
name = x.get("name")
|
||||||
|
mm[name] = x.find("description").text
|
||||||
|
|
||||||
|
# print(mm)
|
||||||
|
|
||||||
|
# ss = {}
|
||||||
|
for s in SLOTS:
|
||||||
|
path = 'slot[@name="{}"]/slotoption'.format(s)
|
||||||
|
nodes = machine.findall(path)
|
||||||
|
if not nodes: continue
|
||||||
|
|
||||||
|
tmp = []
|
||||||
|
for x in nodes:
|
||||||
|
name = x.get("name")
|
||||||
|
devname = x.get("devname")
|
||||||
|
desc = mm[devname]
|
||||||
|
tmp.append({ "value": name, "description": desc })
|
||||||
|
d[s] = tmp
|
||||||
|
# d[s] = [(x.get("name"), x.get("devname")) for x in nodes]
|
||||||
|
|
||||||
|
# d["Slots"] = ss
|
||||||
|
|
||||||
|
|
||||||
|
path = "Resources/{}.plist".format(m)
|
||||||
|
with open(path, "w") as f:
|
||||||
|
f.write(to_plist(d))
|
||||||
|
|
||||||
|
|
||||||
|
|
126
MA2ME/plist.py
Normal file
126
MA2ME/plist.py
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
|
||||||
|
|
||||||
|
__all__ = ['to_plist']
|
||||||
|
|
||||||
|
from xml.sax.saxutils import escape
|
||||||
|
from base64 import b64encode
|
||||||
|
from datetime import date, datetime, timezone
|
||||||
|
|
||||||
|
_header = (
|
||||||
|
'<?xml version="1.0" encoding="UTF-8"?>\n'
|
||||||
|
'<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">\n'
|
||||||
|
'<plist version="1.0">\n'
|
||||||
|
)
|
||||||
|
_trailer = '</plist>\n'
|
||||||
|
|
||||||
|
INDENT = " "
|
||||||
|
|
||||||
|
def _bad(x, indent=0):
|
||||||
|
raise ValueError("plist: bad type: {} ({})".format(type(x), x))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def _encode_array(x, akku, indent=""):
|
||||||
|
|
||||||
|
indent2 = indent + INDENT
|
||||||
|
|
||||||
|
akku.append(indent + "<array>\n")
|
||||||
|
|
||||||
|
for v in x:
|
||||||
|
_encoder.get(type(v), _bad)(v, akku, indent2)
|
||||||
|
|
||||||
|
akku.append(indent + "</array>\n")
|
||||||
|
|
||||||
|
|
||||||
|
def _encode_dict(x, akku, indent=""):
|
||||||
|
|
||||||
|
indent2 = indent + INDENT
|
||||||
|
|
||||||
|
akku.append(indent + "<dict>\n")
|
||||||
|
for k,v in x.items():
|
||||||
|
# key must be string?
|
||||||
|
if type(k) != str:
|
||||||
|
raise ValueError("plist: dictionary key must be string: {}: {}".format(type(k), k))
|
||||||
|
akku.append("{}<key>{}</key>\n".format(indent2, escape(k)))
|
||||||
|
_encoder.get(type(v), _bad)(v, akku, indent2)
|
||||||
|
|
||||||
|
akku.append(indent + "</dict>\n")
|
||||||
|
|
||||||
|
|
||||||
|
def _encode_bool(x, akku, indent=""):
|
||||||
|
if x: akku.append(indent + "<true/>\n")
|
||||||
|
else: akku.append(indent + "<false/>\n")
|
||||||
|
|
||||||
|
def _encode_integer(x, akku, indent=""):
|
||||||
|
akku.append("{}<integer>{}</integer>\n".format(indent, x))
|
||||||
|
|
||||||
|
def _encode_real(x, akku, indent=""):
|
||||||
|
akku.append("{}<real>{}</real>\n".format(indent, x))
|
||||||
|
|
||||||
|
def _encode_string(x, akku, indent=""):
|
||||||
|
akku.append("{}<string>{}</string>\n".format(indent, escape(x)))
|
||||||
|
|
||||||
|
|
||||||
|
# data is YYYY-MM-DD T HH:MM:SS Z
|
||||||
|
def _encode_date(x, akku, indent=""):
|
||||||
|
s = x.strftime('%Y-%m-%d')
|
||||||
|
akku.append("{}<date>{}</date>\n".format(indent, s))
|
||||||
|
|
||||||
|
def _encode_datetime(x, akku, indent=""):
|
||||||
|
# if not x.tzinfo
|
||||||
|
# raise ValueError("plist: datetime must have tzinfo: {}".format(x))
|
||||||
|
|
||||||
|
# if x.tzinfo.utcoffset(x) == None:
|
||||||
|
# raise ValueError("plist: datetime must have utc offset: {}".format(x))
|
||||||
|
|
||||||
|
utc = x.astimezone(timezone.utc)
|
||||||
|
s = utc.strftime('%Y-%m-%dT%H:%M:%SZ')
|
||||||
|
akku.append("{}<date>{}</date>\n".format(indent, s))
|
||||||
|
|
||||||
|
def _encode_data(x, akku, indent=""):
|
||||||
|
# data is base64 encoded
|
||||||
|
|
||||||
|
CHUNKSIZE = 32
|
||||||
|
if len(x) < CHUNKSIZE:
|
||||||
|
akku.append("{}<data>{}</data>\n".format(indent, b64encode(x).encode('ascii')))
|
||||||
|
return
|
||||||
|
|
||||||
|
indent2 = indent + INDENT
|
||||||
|
akku.append(indent + "<data>\n")
|
||||||
|
|
||||||
|
for i in range(0, len(x), CHUNKSIZE):
|
||||||
|
akku.append(
|
||||||
|
"{}{}\n".format(
|
||||||
|
indent2,
|
||||||
|
b64encode(x[i:i+CHUNKSIZE]).encode('ascii')
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
akku.append(indent + "</data>\n")
|
||||||
|
|
||||||
|
# data, data not yet supported.
|
||||||
|
_encoder = {
|
||||||
|
str: _encode_string,
|
||||||
|
float: _encode_real,
|
||||||
|
int: _encode_integer,
|
||||||
|
bool: _encode_bool,
|
||||||
|
|
||||||
|
tuple: _encode_array,
|
||||||
|
list: _encode_array,
|
||||||
|
dict: _encode_dict,
|
||||||
|
bytes: _encode_data,
|
||||||
|
bytearray: _encode_data,
|
||||||
|
date: _encode_date,
|
||||||
|
datetime: _encode_datetime,
|
||||||
|
}
|
||||||
|
|
||||||
|
def to_plist(x):
|
||||||
|
|
||||||
|
akku = []
|
||||||
|
akku.append(_header)
|
||||||
|
_encoder.get(type(x), _bad)(x, akku, INDENT)
|
||||||
|
akku.append(_trailer)
|
||||||
|
|
||||||
|
return ''.join(akku)
|
||||||
|
|
||||||
|
|
31
MA2ME/slots.py
Normal file
31
MA2ME/slots.py
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
# from xml.dom.minidom import parseString
|
||||||
|
import xml.etree.ElementTree as ET
|
||||||
|
|
||||||
|
st = subprocess.run(["mame", "apple1", "-listxml"], capture_output=True)
|
||||||
|
|
||||||
|
if st.returncode != 0: exit(1)
|
||||||
|
|
||||||
|
xml = st.stdout
|
||||||
|
# print(xml)
|
||||||
|
|
||||||
|
dom = ET.fromstring(xml)
|
||||||
|
|
||||||
|
machine = dom.find('machine[@name="apple1"]')
|
||||||
|
|
||||||
|
ramoptions = [int(x.text) for x in machine.findall('ramoption')]
|
||||||
|
|
||||||
|
# display
|
||||||
|
display = []
|
||||||
|
|
||||||
|
x = machine.find('display[@tag="screen"]')
|
||||||
|
print(x)
|
||||||
|
|
||||||
|
if x != None:
|
||||||
|
display = [int(x.get("width")), int(x.get("height")) * 2]
|
||||||
|
|
||||||
|
|
||||||
|
print(display)
|
||||||
|
print(ramoptions)
|
41
SlotViewController.h
Normal file
41
SlotViewController.h
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
//
|
||||||
|
// SlotViewController.h
|
||||||
|
// MA2ME
|
||||||
|
//
|
||||||
|
// Created by Kelvin Sherlock on 8/18/2020.
|
||||||
|
// Copyright © 2020 Kelvin Sherlock. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Cocoa/Cocoa.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface SlotViewController : NSViewController
|
||||||
|
|
||||||
|
@property (nonatomic) NSString *model;
|
||||||
|
//@property (nonatomic) NSDictionary *machine;
|
||||||
|
|
||||||
|
@property unsigned memory;
|
||||||
|
|
||||||
|
@property NSString *sl0;
|
||||||
|
@property NSString *sl1;
|
||||||
|
@property NSString *sl2;
|
||||||
|
@property NSString *sl3;
|
||||||
|
@property NSString *sl4;
|
||||||
|
@property NSString *sl5;
|
||||||
|
@property NSString *sl6;
|
||||||
|
@property NSString *sl7;
|
||||||
|
|
||||||
|
@property NSString *rs232;
|
||||||
|
@property NSString *aux;
|
||||||
|
@property NSString *exp;
|
||||||
|
@property NSString *gameio;
|
||||||
|
@property NSString *printer;
|
||||||
|
@property NSString *modem;
|
||||||
|
|
||||||
|
|
||||||
|
//-(void)setMachine: (NSDictionary *)machine;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
129
SlotViewController.m
Normal file
129
SlotViewController.m
Normal file
|
@ -0,0 +1,129 @@
|
||||||
|
//
|
||||||
|
// SlotViewController.m
|
||||||
|
// MA2ME
|
||||||
|
//
|
||||||
|
// Created by Kelvin Sherlock on 8/18/2020.
|
||||||
|
// Copyright © 2020 Kelvin Sherlock. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "SlotViewController.h"
|
||||||
|
|
||||||
|
@interface SlotViewController () {
|
||||||
|
//NSDictionary *_machine;
|
||||||
|
}
|
||||||
|
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *ram_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl0_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl1_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl2_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl3_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl4_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl5_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl6_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl7_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *sl8_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *exp_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *aux_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *rs232_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *game_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *printer_menu;
|
||||||
|
@property (weak) IBOutlet NSPopUpButton *modem_menu;
|
||||||
|
|
||||||
|
@property (strong) IBOutlet NSArrayController *ram_array;
|
||||||
|
|
||||||
|
@property NSArray *ram_menu_values;
|
||||||
|
|
||||||
|
@property NSDictionary *machine;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation SlotViewController
|
||||||
|
|
||||||
|
|
||||||
|
- (void)viewDidLoad {
|
||||||
|
[super viewDidLoad];
|
||||||
|
// Do view setup here.
|
||||||
|
|
||||||
|
[self setRam_menu_values: @[]];
|
||||||
|
|
||||||
|
NSBundle *bundle = [NSBundle mainBundle];
|
||||||
|
NSURL *url= [bundle URLForResource: @"apple2gs" withExtension: @"plist"];
|
||||||
|
|
||||||
|
NSDictionary *d = [NSDictionary dictionaryWithContentsOfURL: url];
|
||||||
|
[self setMachine: d];
|
||||||
|
|
||||||
|
//[self update_ram_menu];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)reset {
|
||||||
|
|
||||||
|
}
|
||||||
|
- (IBAction)ram_menu_action:(id)sender {
|
||||||
|
NSLog(@"%@", sender);
|
||||||
|
}
|
||||||
|
|
||||||
|
static NSMenuItem *MemoryMenuItem(unsigned size) {
|
||||||
|
|
||||||
|
NSMenuItem *m;
|
||||||
|
NSString *s;
|
||||||
|
|
||||||
|
if (size >= 1024 * 1024)
|
||||||
|
s = [NSString stringWithFormat: @"%fM", (double)size / (1024 * 1024)];
|
||||||
|
else
|
||||||
|
s = [NSString stringWithFormat: @"%uK", size / 1024];
|
||||||
|
|
||||||
|
m = [[NSMenuItem alloc] initWithTitle: s action: nil keyEquivalent: @""];
|
||||||
|
|
||||||
|
[m setTag: size];
|
||||||
|
return m;
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)update_ram_menu {
|
||||||
|
#if 0
|
||||||
|
NSMenu *menu = [_ram_menu menu];
|
||||||
|
|
||||||
|
[menu removeAllItems];
|
||||||
|
|
||||||
|
[menu addItem: MemoryMenuItem(4096)];
|
||||||
|
[menu addItem: MemoryMenuItem(1310720)];
|
||||||
|
[menu addItem: MemoryMenuItem(5242880)];
|
||||||
|
|
||||||
|
[_ram_array setContent: @[
|
||||||
|
@{ @"description" : @"4K" },
|
||||||
|
@{ @"description" : @"8K" },
|
||||||
|
@{ @"description" : @"16K" }
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
#endif
|
||||||
|
[self setRam_menu_values: [_machine objectForKey: @"RAM"]];
|
||||||
|
//[_ram_array setContent: [_machine objectForKey: @"RAM"]];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)setModel:(NSString *)model {
|
||||||
|
|
||||||
|
if (model == _model) return;
|
||||||
|
if ([model isEqualToString: _model]) return;
|
||||||
|
|
||||||
|
_model = model;
|
||||||
|
_machine = nil;
|
||||||
|
|
||||||
|
NSGridView *view = (NSGridView *)[self view];
|
||||||
|
if (!_model) {
|
||||||
|
[view setHidden: YES];
|
||||||
|
[self setMemory: 0];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* load ... */
|
||||||
|
|
||||||
|
/* ram menu */
|
||||||
|
[_ram_menu removeAllItems];
|
||||||
|
[self update_ram_menu];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
Loading…
Reference in New Issue
Block a user