diff options
author | Olivier Galibert <galibert@pobox.com> | 2021-01-23 14:14:46 +0100 |
---|---|---|
committer | Olivier Galibert <galibert@pobox.com> | 2021-01-23 14:17:17 +0100 |
commit | 098fea5f56719297cce4579510cf38d0198d2372 (patch) | |
tree | a3c002af6be0dc51bf370f9faef817d5962533e4 /src/devices/machine | |
parent | 2efc649c73c5c3bb80042bf8671640b9666f1b8f (diff) |
iwm: motor/devsel is a little weird, hope this works
Diffstat (limited to 'src/devices/machine')
-rw-r--r-- | src/devices/machine/iwm.cpp | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/src/devices/machine/iwm.cpp b/src/devices/machine/iwm.cpp index 982371840ff..9c9525fc9a2 100644 --- a/src/devices/machine/iwm.cpp +++ b/src/devices/machine/iwm.cpp @@ -111,7 +111,7 @@ void iwm_device::set_floppy(floppy_image_device *floppy) if(m_floppy && !m_disable_mon) m_floppy->mon_w(true); m_floppy = floppy; - if(m_active && !m_disable_mon) + if(m_floppy && !m_disable_mon) m_floppy->mon_w(false); update_phases(); } @@ -168,21 +168,15 @@ u8 iwm_device::control(int offset, u8 data) changed ^= m_control | (m_phases & 0xf); if(changed & 0x20) - m_devsel_cb(m_disable_mon && !(m_control & 0x10) ? 0 : m_control & 0x20 ? 2 : 1); + m_devsel_cb(m_control & 0x20 ? 2 : 1); if(changed & 0x10) { if(m_control & 0x10) { m_active = MODE_ACTIVE; - if(m_floppy && !m_disable_mon) - m_floppy->mon_w(false); m_status |= 0x20; } else { if(m_mode & 0x04) { m_active = MODE_IDLE; - if(m_floppy && !m_disable_mon) { - m_floppy->mon_w(true); - m_floppy->seek_phase_w(0); - } m_status &= ~0x20; } else { m_active = MODE_DELAY; |