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

View File

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

View File

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

View File

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

View File

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

View File

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