mirror of
https://github.com/holub/mame
synced 2025-04-24 09:20:02 +03:00
upd765.cpp: Partially revert 9eae436524
to unbreak x68000 floppy loading (nw)
This commit is contained in:
parent
761f003328
commit
058a748ee8
@ -474,9 +474,13 @@ uint8_t upd765_family_device::read_fifo()
|
||||
memmove(result, result+1, result_pos);
|
||||
if(!result_pos)
|
||||
main_phase = PHASE_CMD;
|
||||
else if(result_pos == 1)
|
||||
else if(result_pos == 1) {
|
||||
// clear drive busy bit after the first sense interrupt status result byte is read
|
||||
for(floppy_info &fi : flopi)
|
||||
if((fi.main_state == RECALIBRATE || fi.main_state == SEEK) && fi.sub_state == IDLE && fi.st0_filled == false)
|
||||
fi.main_state = IDLE;
|
||||
clr_drive_busy();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
LOGFIFO("read_fifo in phase %d\n", main_phase);
|
||||
@ -1468,11 +1472,11 @@ void upd765_family_device::command_end(floppy_info &fi, bool data_completion)
|
||||
{
|
||||
LOGCOMMAND("command done (%s) - %s\n", data_completion ? "data" : "seek", results());
|
||||
fi.main_state = fi.sub_state = IDLE;
|
||||
fi.st0_filled = true;
|
||||
if(data_completion)
|
||||
data_irq = true;
|
||||
else {
|
||||
other_irq = true;
|
||||
fi.st0_filled = true;
|
||||
}
|
||||
check_irq();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user