1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-12-27 01:31:42 +00:00

Attempts to use the other bit of disk drive control, the 5.25"/3.5" select.

For the record, the ROM thinks it finds some Smartport devices and then attempts to talk to them. Since none is present, it blocks forever.
This commit is contained in:
Thomas Harte 2020-11-11 17:55:50 -05:00
parent 6d511f01a4
commit a15af1df5e
2 changed files with 10 additions and 3 deletions

View File

@ -470,11 +470,18 @@ class ConcreteMachine:
iwm_->set_select(*value & 0x80);
// Presumably bit 6 selects between two 5.25" drives rather than the two 3.5"?
if(*value & 0x40) {
iwm_->set_drive(0, &drives_[0]);
iwm_->set_drive(1, &drives_[1]);
} else {
// TODO: add 5.25" drives.
// (and any Smartport devices?)
iwm_->set_drive(0, nullptr);
iwm_->set_drive(1, nullptr);
}
} else {
*value = disk_select_;
}
printf("TODO: Disk interface register [%d; %02x]\n", is_read, *value);
break;
default:

View File

@ -62,7 +62,7 @@
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Release"
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
enableASanStackUseAfterReturn = "YES"