CDROM: Don't allow deferred INT1 after Pause ACK

This commit is contained in:
Stenzek 2024-08-06 13:34:05 +10:00
parent e499f9052a
commit 0517aef5bd
No known key found for this signature in database

View file

@ -1933,6 +1933,9 @@ void CDROM::ExecuteCommand(void*, TickCount ticks, TickCount ticks_late)
}
else
{
// Small window of time when another INT1 could sneak in, don't let it.
ClearAsyncInterrupt();
// Stop reading.
s_drive_state = DriveState::Idle;
s_drive_event.Deactivate();
@ -1951,6 +1954,7 @@ void CDROM::ExecuteCommand(void*, TickCount ticks, TickCount ticks_late)
case Command::Stop:
{
const TickCount stop_time = GetTicksForStop(IsMotorOn());
ClearAsyncInterrupt();
ClearCommandSecondResponse();
SendACKAndStat();