ZXHawk: UPD ReadDiagnostic fix (more Alkatraz protected games now load)

This commit is contained in:
Asnivor 2018-05-01 13:42:21 +01:00
parent d891938d89
commit 462d66c549
1 changed files with 4 additions and 2 deletions

View File

@ -1313,7 +1313,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
// read the whole track // read the whole track
for (int i = 0; i < track.Sectors.Length; i++) for (int i = 0; i < track.Sectors.Length; i++)
{ {
if (secCount > ActiveCommandParams.EOT) if (secCount >= ActiveCommandParams.EOT)
{ {
break; break;
} }
@ -2821,7 +2821,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
{ {
// interrupt has been raised for this drive // interrupt has been raised for this drive
// acknowledge // acknowledge
ActiveDrive.SeekStatus = SEEK_INTACKNOWLEDGED; ActiveDrive.SeekStatus = SEEK_IDLE;// SEEK_INTACKNOWLEDGED;
// result length 2 // result length 2
ResLength = 2; ResLength = 2;
@ -2832,6 +2832,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
// second byte is the current track id // second byte is the current track id
ResBuffer[1] = ActiveDrive.CurrentTrackID; ResBuffer[1] = ActiveDrive.CurrentTrackID;
} }
/*
else if (ActiveDrive.SeekStatus == SEEK_INTACKNOWLEDGED) else if (ActiveDrive.SeekStatus == SEEK_INTACKNOWLEDGED)
{ {
// DriveA interrupt has already been acknowledged // DriveA interrupt has already been acknowledged
@ -2841,6 +2842,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
Status0 = 192; Status0 = 192;
ResBuffer[0] = Status0; ResBuffer[0] = Status0;
} }
*/
else if (ActiveDrive.SeekStatus == SEEK_IDLE) else if (ActiveDrive.SeekStatus == SEEK_IDLE)
{ {
// SIS with no interrupt // SIS with no interrupt