diff options
Diffstat (limited to 'src/mame/includes/irobot.h')
-rw-r--r-- | src/mame/includes/irobot.h | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/mame/includes/irobot.h b/src/mame/includes/irobot.h index 9a3d72f529f..d068ab5f1aa 100644 --- a/src/mame/includes/irobot.h +++ b/src/mame/includes/irobot.h @@ -11,6 +11,7 @@ #pragma once #include "machine/timer.h" +#include "machine/x2212.h" #include "sound/pokey.h" #include "screen.h" @@ -35,12 +36,16 @@ public: irobot_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), - m_nvram(*this, "nvram") , m_videoram(*this, "videoram"), m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode"), m_screen(*this, "screen"), m_palette(*this, "palette"), +#if IR_TIMING + m_irvg_timer(*this, "irvg_timer"), + m_irmb_timer(*this, "irmb_timer"), +#endif + m_novram(*this, "nvram"), m_pokey(*this, "pokey%u", 1U), m_leds(*this, "led%u", 0U) { } @@ -50,12 +55,11 @@ public: void irobot(machine_config &config); protected: - virtual void machine_start() override { m_leds.resolve(); } + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; void irobot_map(address_map &map); - DECLARE_WRITE8_MEMBER(irobot_nvram_w); DECLARE_WRITE8_MEMBER(irobot_clearirq_w); DECLARE_WRITE8_MEMBER(irobot_clearfirq_w); DECLARE_READ8_MEMBER(irobot_sharedmem_r); @@ -82,7 +86,6 @@ protected: void irmb_run(); private: - required_shared_ptr<uint8_t> m_nvram; required_shared_ptr<uint8_t> m_videoram; uint8_t m_vg_clear; uint8_t m_bufsel; @@ -91,10 +94,6 @@ private: uint8_t m_irvg_vblank; uint8_t m_irvg_running; uint8_t m_irmb_running; -#if IR_TIMING - timer_device *m_irvg_timer; - timer_device *m_irmb_timer; -#endif uint8_t *m_comRAM[2]; uint8_t *m_mbRAM; uint8_t *m_mbROM; @@ -118,6 +117,11 @@ private: required_device<gfxdecode_device> m_gfxdecode; required_device<screen_device> m_screen; required_device<palette_device> m_palette; +#if IR_TIMING + required_device<timer_device> m_irvg_timer; + required_device<timer_device> m_irmb_timer; +#endif + required_device<x2212_device> m_novram; required_device_array<pokey_device, 4> m_pokey; output_finder<2> m_leds; }; |