diff -Nru srcold\devices\bus/coco/coco_fdc.cpp src\devices\bus/coco/coco_fdc.cpp --- srcold\devices\bus/coco/coco_fdc.cpp 2017-08-01 21:20:16.000000000 +0200 +++ src\devices\bus/coco/coco_fdc.cpp 2017-08-02 09:28:58.056055200 +0200 @@ -273,12 +273,8 @@ else if (data & 0x40) drive = 3; - for (int i = 0; i < 4; i++) - { - floppy_image_device *floppy = m_floppies[i]->get_device(); - if (floppy) - floppy->mon_w(((i == drive) && (data & 0x08)) ? CLEAR_LINE : ASSERT_LINE); - } + floppy_image_device *floppy = m_floppies[drive]->get_device(); + floppy->mon_w((data & 0x08) ? CLEAR_LINE : ASSERT_LINE); head = ((data & 0x40) && (drive != 3)) ? 1 : 0;