diff options
Diffstat (limited to 'src/mame/omron/luna_88k.cpp')
-rw-r--r-- | src/mame/omron/luna_88k.cpp | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/src/mame/omron/luna_88k.cpp b/src/mame/omron/luna_88k.cpp index 2faa903769e..cc72c591a8e 100644 --- a/src/mame/omron/luna_88k.cpp +++ b/src/mame/omron/luna_88k.cpp @@ -85,13 +85,13 @@ public: DECLARE_INPUT_CHANGED_MEMBER(abort) { irq(0, 7, newval); } protected: - virtual void machine_start() override; - virtual void machine_reset() override; + virtual void machine_start() override ATTR_COLD; + virtual void machine_reset() override ATTR_COLD; - virtual void cpu_map(address_map &map); + virtual void cpu_map(address_map &map) ATTR_COLD; - void iop_map_mem(address_map &map); - void iop_map_pio(address_map &map); + void iop_map_mem(address_map &map) ATTR_COLD; + void iop_map_pio(address_map &map) ATTR_COLD; u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, rectangle const &cliprect); @@ -160,7 +160,7 @@ public: void init(); protected: - virtual void cpu_map(address_map &map) override; + virtual void cpu_map(address_map &map) override ATTR_COLD; required_device<m48t02_device> m_rtc; required_device<mb89352_device> m_spc; @@ -185,8 +185,8 @@ public: void init(); protected: - virtual void machine_start() override; - virtual void cpu_map(address_map &map) override; + virtual void machine_start() override ATTR_COLD; + virtual void cpu_map(address_map &map) override ATTR_COLD; required_device<mc146818_device> m_rtc; required_device_array<mb89352_device, 2> m_spc; @@ -386,13 +386,11 @@ void luna_88k_state_base::common_config(machine_config &config, XTAL clock) { MC88100(config, m_cpu, clock.value()); m_cpu->set_addrmap(AS_PROGRAM, &luna_88k_state_base::cpu_map); + m_cpu->set_cmmu_code([this](u32 const address) -> mc88200_device & { return *m_cmmu[0]; }); + m_cpu->set_cmmu_data([this](u32 const address) -> mc88200_device & { return *m_cmmu[1]; }); - MC88200(config, m_cmmu[0], clock.value(), 0x07); // cpu0 cmmu i0 - m_cmmu[0]->set_mbus(m_cpu, AS_PROGRAM); - m_cpu->set_cmmu_i(m_cmmu[0]); - MC88200(config, m_cmmu[1], clock.value(), 0x06); // cpu0 cmmu d0 - m_cmmu[1]->set_mbus(m_cpu, AS_PROGRAM); - m_cpu->set_cmmu_d(m_cmmu[1]); + MC88200(config, m_cmmu[0], clock.value(), 0x07).set_mbus(m_cpu, AS_PROGRAM); // cpu0 cmmu i0 + MC88200(config, m_cmmu[1], clock.value(), 0x06).set_mbus(m_cpu, AS_PROGRAM); // cpu0 cmmu d0 // 6 SIMMs for RAM arranged as three groups of 2? RAM(config, m_ram); @@ -805,7 +803,7 @@ static INPUT_PORTS_START(luna88k) PORT_DIPSETTING(0x01, DEF_STR(On)) PORT_START("ABORT") - PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Abort") PORT_CODE(KEYCODE_SLASH_PAD) PORT_CHANGED_MEMBER(DEVICE_SELF, luna_88k_state_base, abort, 0) + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Abort") PORT_CODE(KEYCODE_SLASH_PAD) PORT_CHANGED_MEMBER(DEVICE_SELF, FUNC(luna_88k_state_base::abort), 0) INPUT_PORTS_END static INPUT_PORTS_START(luna88k2) @@ -863,7 +861,7 @@ static INPUT_PORTS_START(luna88k2) PORT_DIPSETTING(0x01, DEF_STR(On)) PORT_START("ABORT") - PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Abort") PORT_CODE(KEYCODE_SLASH_PAD) PORT_CHANGED_MEMBER(DEVICE_SELF, luna_88k_state_base, abort, 0) + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Abort") PORT_CODE(KEYCODE_SLASH_PAD) PORT_CHANGED_MEMBER(DEVICE_SELF, FUNC(luna_88k_state_base::abort), 0) INPUT_PORTS_END ROM_START(luna88k) |