From 3f1699b5948acd080d80269d2f233b6c0530c0fe Mon Sep 17 00:00:00 2001 From: Olivier Galibert Date: Sun, 25 Jun 2023 22:41:01 +0200 Subject: [PATCH] cdimono: fix cdrom regions --- src/mame/philips/cdi.cpp | 9 +++++---- src/mame/philips/cdi.h | 3 ++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/mame/philips/cdi.cpp b/src/mame/philips/cdi.cpp index 6b06ce6a8dc..fa410220e17 100644 --- a/src/mame/philips/cdi.cpp +++ b/src/mame/philips/cdi.cpp @@ -458,9 +458,8 @@ void cdi_state::cdimono1_base(machine_config &config) CDI_SLAVE_HLE(config, m_slave_hle, 0); m_slave_hle->int_callback().set(m_maincpu, FUNC(scc68070_device::in2_w)); - cdrom_image_device &cdrom(CDROM(config, "cdrom")); - cdrom.set_interface("cdi_cdrom"); - cdrom.add_region("cdrom"); + CDROM(config, m_cdrom); + m_cdrom->set_interface("cdi_cdrom"); /* sound hardware */ SPEAKER(config, "lspeaker").front_left(); @@ -504,7 +503,7 @@ void cdi_state::cdimono2(machine_config &config) M68HC05C8(config, m_servo, 4_MHz_XTAL); M68HC05C8(config, m_slave, 4_MHz_XTAL); - CDROM(config, "cdrom").set_interface("cdi_cdrom"); + CDROM(config, m_cdrom).set_interface("cdi_cdrom"); SOFTWARE_LIST(config, "cd_list").set_original("cdi").set_filter("!DVC"); /* sound hardware */ @@ -579,6 +578,8 @@ void cdi_state::cdimono1(machine_config &config) void quizard_state::quizard(machine_config &config) { cdimono1_base(config); + m_cdrom->add_region("cdrom"); + m_maincpu->set_addrmap(AS_PROGRAM, &quizard_state::cdimono1_mem); m_maincpu->uart_rtsn_callback().set(FUNC(quizard_state::mcu_rtsn_from_cpu)); m_maincpu->uart_tx_callback().set(FUNC(quizard_state::mcu_rx_from_cpu)); diff --git a/src/mame/philips/cdi.h b/src/mame/philips/cdi.h index 2c56e066465..fbece9d34bf 100644 --- a/src/mame/philips/cdi.h +++ b/src/mame/philips/cdi.h @@ -29,6 +29,7 @@ public: , m_servo(*this, "servo") , m_slave(*this, "slave") , m_cdic(*this, "cdic") + , m_cdrom(*this, "cdrom") , m_mcd212(*this, "mcd212") , m_dmadac(*this, "dac%u", 1U) { } @@ -48,7 +49,6 @@ protected: optional_device m_lcd; optional_device m_slave_hle; -private: enum servo_portc_bit_t { INV_JUC_OUT = (1 << 2), @@ -77,6 +77,7 @@ private: optional_device m_servo; optional_device m_slave; optional_device m_cdic; + required_device m_cdrom; required_device m_mcd212; required_device_array m_dmadac;