DiskII: C0E8 (DRIVES OFF): Improve logging & comments (#926)

This commit is contained in:
tomcw 2024-09-20 21:57:51 +01:00
parent ec90ebf156
commit 8739b6ba08

View File

@ -494,9 +494,16 @@ void __stdcall Disk2InterfaceCard::ControlMotor(WORD, WORD address, BYTE, BYTE,
BOOL newState = address & 1; BOOL newState = address & 1;
bool stateChanged = (newState != m_floppyMotorOn); bool stateChanged = (newState != m_floppyMotorOn);
// "2. [...] (DRIVES OFF forces the control flipflops to clear.)" (UTAIIe page 9-12) // "2. [...] (DRIVES OFF forces the control flip-flops to clear.)" (UTAIIe page 9-12)
// - so m_magnetStates = 0.
// "5. Causes the ENABLE1' or the ENABLE2' signal to go low depending on which drive is selected by the drive1/drive2 switch."
// - so m_currDrive not affected.
// TODO: what about m_seqFunc.function?
if (newState == FALSE) if (newState == FALSE)
{
m_magnetStates = 0; // GH#926, GH#1315 m_magnetStates = 0; // GH#926, GH#1315
ControlStepperLogging(address, g_nCumulativeCycles);
}
if (stateChanged) if (stateChanged)
{ {
@ -1776,7 +1783,7 @@ void Disk2InterfaceCard::DumpTrackWOZ(FloppyDisk floppy) // pass a copy of m_flo
void Disk2InterfaceCard::Reset(const bool bIsPowerCycle) void Disk2InterfaceCard::Reset(const bool bIsPowerCycle)
{ {
// RESET forces all switches off (UTAIIe Table 9.1) // RESET' forces all switches off (UTAIIe Table 9.1)
ResetSwitches(); ResetSwitches();
m_formatTrack.Reset(); m_formatTrack.Reset();