Apple IIe lives (but doesn't get very far)

This commit is contained in:
Luigi Thirty 2017-08-13 01:59:32 -04:00
parent 0d0a093f4e
commit a732bae8f9
6 changed files with 12 additions and 9 deletions

View File

@ -37,7 +37,6 @@ class AppleIIBase: NSObject, EmulatedSystem {
var videoSoftswitches = VideoSoftswitches()
var videoMode: VideoMode = .Text
//let cg = A2CharacterGenerator(romPath: "/Users/luigi/apple2/apple2/a2.chr");
let keyboardController = KeyboardController()
var emulatorViewDelegate: ScreenDelegate
@ -97,7 +96,7 @@ class AppleIIBase: NSObject, EmulatedSystem {
for page in ramPages ..< 192 {
CPU.sharedInstance.memoryInterface.pages[page] = MemoryInterface.pageMode.null //not connected
}
for page in 208 ..< 256 {
for page in 192 ..< 256 {
CPU.sharedInstance.memoryInterface.pages[page] = MemoryInterface.pageMode.rw //Bankswitching area
}
}

View File

@ -28,9 +28,8 @@ class AppleIIe: AppleIIBase {
}
override func loadROMs() {
//Applesoft BASIC
CPU.sharedInstance.memoryInterface.loadBinary(path: "/Users/luigi/apple2/apple2e/342-0135-b.64", offset: 0xD000, length: 0x1000)
CPU.sharedInstance.memoryInterface.loadBinary(path: "/Users/luigi/apple2/apple2e/342-0134-a.64", offset: 0xE000, length: 0x1000)
CPU.sharedInstance.memoryInterface.loadBinary(path: "/Users/luigi/apple2/apple2e/342-0135-b.64", offset: 0xC000, length: 0x2000)
CPU.sharedInstance.memoryInterface.loadBinary(path: "/Users/luigi/apple2/apple2e/342-0134-a.64", offset: 0xE000, length: 0x2000)
}
override func installOverrides() {

View File

@ -49,11 +49,11 @@ class LanguageCard16K: NSObject, Peripheral, HasROM {
super.init()
RDLCBNKOverride = ReadOverride(start: UInt16(0xC011 + (0x10 * slotNumber)),
end: UInt16(0xC012 + (0x10 * slotNumber)),
end: UInt16(0xC011 + (0x10 * slotNumber)),
readAnyway: false,
action: actionRDLCBNK)
RDLCRAMOverride = ReadOverride(start: UInt16(0xC011 + (0x10 * slotNumber)),
RDLCRAMOverride = ReadOverride(start: UInt16(0xC012 + (0x10 * slotNumber)),
end: UInt16(0xC012 + (0x10 * slotNumber)),
readAnyway: false,
action: actionRDLCRAM)

View File

@ -45,7 +45,7 @@ class AppleIIViewController: NSViewController {
EmulatedSystemInstance = AppleII.sharedInstance
} else if(model == "Apple ][+") {
EmulatedSystemInstance = AppleIIPlus.sharedInstance
} else if(model == "Apple IIe") {
} else if(model == "Apple //e") {
EmulatedSystemInstance = AppleIIe.sharedInstance
} else {
/* ??? */

View File

@ -241,6 +241,9 @@
<items>
<menuItem title="Apple ][ (Original)" state="on" id="4DB-sZ-RHB"/>
<menuItem title="Apple ][+" id="lk3-qa-sTr"/>
<menuItem title="Apple //e" id="lv7-TL-Unl">
<modifierMask key="keyEquivalentModifierMask"/>
</menuItem>
</items>
</menu>
</popUpButtonCell>

View File

@ -35,7 +35,7 @@ class PreferencesWindowController: NSWindowController {
func setupDefaultsIfRequired() {
var model = defaults.string(forKey: "a2_Model")
if(model == nil) { model = "Apple ][+" }
if(model == nil) { model = "Apple //e" }
defaults.set(model, forKey: "a2_Model")
var slot0 = defaults.string(forKey: "a2_Peripherals_Slot0")
@ -87,6 +87,8 @@ class PreferencesWindowController: NSWindowController {
defaults.set(a2_Peripherals_Slot0.selectedItem?.title, forKey: "a2_Peripherals_Slot0")
defaults.set(a2_Peripherals_Slot6.selectedItem?.title, forKey: "a2_Peripherals_Slot6")
defaults.set(a2_Model.selectedItem?.title, forKey: "a2_Model")
defaults.synchronize()
NotificationCenter.default.post(name: EmulationNotifications.StartEmulation, object: nil)