diff --git a/src/mess/drivers/p8k.c b/src/mess/drivers/p8k.c index 01161e2fa1e..95010fe438e 100644 --- a/src/mess/drivers/p8k.c +++ b/src/mess/drivers/p8k.c @@ -367,8 +367,11 @@ void p8k_state::fdc_drq(bool state) void p8k_state::machine_start() { i8272a_device *fdc = machine().device("i8272"); - fdc->setup_intrq_cb(i8272a_device::line_cb(FUNC(p8k_state::fdc_irq), this)); - fdc->setup_drq_cb(i8272a_device::line_cb(FUNC(p8k_state::fdc_drq), this)); + if (fdc) + { + fdc->setup_intrq_cb(i8272a_device::line_cb(FUNC(p8k_state::fdc_irq), this)); + fdc->setup_drq_cb(i8272a_device::line_cb(FUNC(p8k_state::fdc_drq), this)); + } } static const floppy_format_type p8k_floppy_formats[] = { diff --git a/src/mess/includes/compis.h b/src/mess/includes/compis.h index bccce8e821a..c74c8f4a29a 100644 --- a/src/mess/includes/compis.h +++ b/src/mess/includes/compis.h @@ -139,7 +139,7 @@ public: m_centronics(*this, "centronics"), m_uart(*this, "uart"), m_rtc(*this, "mm58274c"), - m_fdc(*this, "upd765"), + m_fdc(*this, "i8272a"), m_crtc(*this, "upd7220"), m_video_ram(*this, "video_ram") { } @@ -152,7 +152,7 @@ public: required_device m_centronics; required_device m_uart; required_device m_rtc; - required_device m_fdc; + required_device m_fdc; required_device m_crtc; DECLARE_READ16_MEMBER(compis_usart_r); DECLARE_WRITE16_MEMBER(compis_usart_w); diff --git a/src/mess/includes/sg1000.h b/src/mess/includes/sg1000.h index 96553b4f1f6..bd34fd18982 100644 --- a/src/mess/includes/sg1000.h +++ b/src/mess/includes/sg1000.h @@ -101,12 +101,12 @@ public: : sc3000_state(mconfig, type, tag), m_fdc(*this, UPD765_TAG), m_centronics(*this, CENTRONICS_TAG), - m_floppy0(*this, FLOPPY_0) + m_floppy0(*this, UPD765_TAG ":0:525hd") { } required_device m_fdc; required_device m_centronics; - required_device m_floppy0; + required_device m_floppy0; virtual void machine_start(); virtual void machine_reset(); diff --git a/src/mess/machine/compis.c b/src/mess/machine/compis.c index eee3503983d..086e86befe2 100644 --- a/src/mess/machine/compis.c +++ b/src/mess/machine/compis.c @@ -159,7 +159,7 @@ static void compis_keyb_init(compis_state *state) /*-------------------------------------------------------------------------*/ static void compis_fdc_reset(running_machine &machine) { - machine.device("upd765")->reset(); + machine.device("i8272a")->reset(); } void compis_state::compis_fdc_tc(int state)