diff options
Diffstat (limited to 'src/devices/bus/ata/atahle.cpp')
| -rw-r--r-- | src/devices/bus/ata/atahle.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/devices/bus/ata/atahle.cpp b/src/devices/bus/ata/atahle.cpp index 2c6bb724d61..5d3e413dde2 100644 --- a/src/devices/bus/ata/atahle.cpp +++ b/src/devices/bus/ata/atahle.cpp @@ -464,8 +464,9 @@ void ata_hle_device::read_buffer_empty() m_status &= ~IDE_STATUS_DRQ; - if ((multi_word_dma_mode() >= 0) || (ultra_dma_mode() >= 0)) - set_dmarq(CLEAR_LINE); + // Doesn't matter if we're in dma or not, when the buffer is empty + // there's no more request to be had + set_dmarq(CLEAR_LINE); if (ultra_dma_mode() >= 0) { m_buffer_empty_timer->enable(true); @@ -481,8 +482,9 @@ void ata_hle_device::write_buffer_full() m_status &= ~IDE_STATUS_DRQ; - if ((multi_word_dma_mode() >= 0) || (ultra_dma_mode() >= 0)) - set_dmarq(CLEAR_LINE); + // Doesn't matter if we're in dma or not, when the buffer is full + // there's no more request to be had + set_dmarq(CLEAR_LINE); process_buffer(); } |
