atahle.c: call fill_buffer using a timer only when ultra dma is enabled (nw)

Otherwise some drivers have problems.
This commit is contained in:
yz70s 2015-10-27 23:44:43 +01:00
parent 1a165ff7d3
commit cc8b7c6f11

View File

@ -470,8 +470,12 @@ void ata_hle_device::read_buffer_empty()
if ((multi_word_dma_mode() >= 0) || (ultra_dma_mode() >= 0))
set_dmarq(CLEAR_LINE);
m_buffer_empty_timer->enable(true);
m_buffer_empty_timer->adjust(attotime::zero);
if (ultra_dma_mode() >= 0) {
m_buffer_empty_timer->enable(true);
m_buffer_empty_timer->adjust(attotime::zero);
}
else
fill_buffer();
}
void ata_hle_device::write_buffer_full()