/* All floppy motors are operated by the same line. */ void ti_fdc_device::set_floppy_motors_running(bool run) { if (run) { if (TRACE_MOTOR) if (m_DVENA==CLEAR_LINE) logerror("tifdc: Motor START\n"); m_DVENA = ASSERT_LINE; m_motor_on_timer->adjust(attotime::from_msec(4230)); } else { if (TRACE_MOTOR) if (m_DVENA==ASSERT_LINE) logerror("tifdc: Motor STOP\n"); m_DVENA = CLEAR_LINE; } // The monoflop is connected to the READY line m_fd1771->set_force_ready(run); // Set all motors for (auto & elem : m_floppy) if (elem != nullptr) elem->mon_w((run)? 0 : 1); // The motor-on line also connects to the wait state logic operate_ready_line(); }
void snug_bwg_device::drq_w(bool state) { if (TRACE_SIGNALS) logerror("bwg: set drq = %d\n", state); m_DRQ = (line_state)state; // We need to explicitly set the READY line to release the datamux operate_ready_line(); }
/* Callbacks from the WD1773 chip */ void snug_bwg_device::irq_w(bool state) { if (TRACE_SIGNALS) logerror("bwg: set intrq = %d\n", state); m_IRQ = (line_state)state; // Unlike the TI FDC, the BwG does not set the INTB line. Anyway, no one cares. // We need to explicitly set the READY line to release the datamux operate_ready_line(); }