ZXHawk: disk drivelight now active for all operations that it should be

This commit is contained in:
Asnivor 2018-06-19 14:41:54 +01:00
parent 6a3377417e
commit ae0543d1f3
1 changed files with 7 additions and 0 deletions

View File

@ -1172,6 +1172,8 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
// was that the last parameter byte? // was that the last parameter byte?
if (CommCounter == ActiveCommand.ParameterByteCount) if (CommCounter == ActiveCommand.ParameterByteCount)
{ {
DriveLight = true;
// all parameter bytes received // all parameter bytes received
ClearResultBuffer(); ClearResultBuffer();
Status0 = 0; Status0 = 0;
@ -1392,6 +1394,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
ExecCounter = byteCounter; ExecCounter = byteCounter;
ExecLength = byteCounter; ExecLength = byteCounter;
ActivePhase = Phase.Execution; ActivePhase = Phase.Execution;
DriveLight = true;
break; break;
} }
} }
@ -1493,6 +1496,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
if (CommCounter == ActiveCommand.ParameterByteCount) if (CommCounter == ActiveCommand.ParameterByteCount)
{ {
// all parameter bytes received - setup for execution phase // all parameter bytes received - setup for execution phase
DriveLight = true;
// clear exec buffer and status registers // clear exec buffer and status registers
ClearExecBuffer(); ClearExecBuffer();
@ -1683,6 +1687,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
ExecCounter = byteCounter; ExecCounter = byteCounter;
ExecLength = byteCounter; ExecLength = byteCounter;
ActivePhase = Phase.Execution; ActivePhase = Phase.Execution;
DriveLight = true;
break; break;
} }
} }
@ -1991,6 +1996,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
if (CommCounter == ActiveCommand.ParameterByteCount) if (CommCounter == ActiveCommand.ParameterByteCount)
{ {
// all parameter bytes received // all parameter bytes received
DriveLight = true;
ActivePhase = Phase.Execution; ActivePhase = Phase.Execution;
ActiveCommand.CommandDelegate(); ActiveCommand.CommandDelegate();
} }
@ -2068,6 +2074,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
if (CommCounter == ActiveCommand.ParameterByteCount) if (CommCounter == ActiveCommand.ParameterByteCount)
{ {
// all parameter bytes received // all parameter bytes received
DriveLight = true;
ActivePhase = Phase.Execution; ActivePhase = Phase.Execution;
ActiveCommand.CommandDelegate(); ActiveCommand.CommandDelegate();
} }