IDE BusMaster IRQ status is no longer automatically cleared on IRQ lower.

This commit is contained in:
OBattler
2021-08-20 16:50:39 +02:00
parent 02cbef3274
commit 8d3a7583de

View File

@@ -370,8 +370,10 @@ void
sff_bus_master_set_irq(int channel, void *priv)
{
sff8038i_t *dev = (sff8038i_t *) priv;
dev->status &= ~4;
dev->status |= (channel >> 4);
if (!(dev->status & 0x04) || (channel & 0x40)) {
dev->status &= ~4;
dev->status |= (channel >> 4);
}
channel &= 0x01;
if (dev->status & 0x04) {