From 451d5654ce5e409544fd65d35047bb04a93bacb6 Mon Sep 17 00:00:00 2001 From: Asnivor Date: Tue, 1 May 2018 08:03:14 +0100 Subject: [PATCH] ZXHawk: modifications to UPD sense interrupt status instruction --- .../SinclairSpectrum/Hardware/Disk/NECUPD765.FDC.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/BizHawk.Emulation.Cores/Computers/SinclairSpectrum/Hardware/Disk/NECUPD765.FDC.cs b/BizHawk.Emulation.Cores/Computers/SinclairSpectrum/Hardware/Disk/NECUPD765.FDC.cs index 83269135d3..38a74ca56a 100644 --- a/BizHawk.Emulation.Cores/Computers/SinclairSpectrum/Hardware/Disk/NECUPD765.FDC.cs +++ b/BizHawk.Emulation.Cores/Computers/SinclairSpectrum/Hardware/Disk/NECUPD765.FDC.cs @@ -2669,7 +2669,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum { // interrupt has been raised for this drive // acknowledge - ActiveDrive.SeekStatus = SEEK_INTACKNOWLEDGED; + ActiveDrive.SeekStatus = SEEK_IDLE;// SEEK_INTACKNOWLEDGED; // result length 2 ResLength = 2; @@ -2680,6 +2680,7 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum // second byte is the current track id ResBuffer[1] = ActiveDrive.CurrentTrackID; } + /* else if (ActiveDrive.SeekStatus == SEEK_INTACKNOWLEDGED) { // DriveA interrupt has already been acknowledged @@ -2689,7 +2690,8 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum Status0 = 192; ResBuffer[0] = Status0; } - else if (ActiveDrive.SeekStatus == SEEK_IDLE) + */ + else //if (ActiveDrive.SeekStatus == SEEK_IDLE) { // SIS with no interrupt ResLength = 1;