diff options
Diffstat (limited to 'src/mess/video/nubus_specpdq.c')
-rw-r--r-- | src/mess/video/nubus_specpdq.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/mess/video/nubus_specpdq.c b/src/mess/video/nubus_specpdq.c index a2e4befcd40..5c4236b1197 100644 --- a/src/mess/video/nubus_specpdq.c +++ b/src/mess/video/nubus_specpdq.c @@ -80,14 +80,18 @@ const rom_entry *nubus_specpdq_device::device_rom_region() const nubus_specpdq_device::nubus_specpdq_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : device_t(mconfig, NUBUS_SPECPDQ, "SuperMac Spectrum PDQ video card", tag, owner, clock, "nb_spdq", __FILE__), + device_video_interface(mconfig, *this), device_nubus_card_interface(mconfig, *this) { + m_screen_tag = SPECPDQ_SCREEN_NAME; } nubus_specpdq_device::nubus_specpdq_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : device_t(mconfig, type, name, tag, owner, clock, shortname, source), + device_video_interface(mconfig, *this), device_nubus_card_interface(mconfig, *this) { + m_screen_tag = SPECPDQ_SCREEN_NAME; } //------------------------------------------------- @@ -112,7 +116,7 @@ void nubus_specpdq_device::device_start() m_nubus->install_device(slotspace+0x400000, slotspace+0xfbffff, read32_delegate(FUNC(nubus_specpdq_device::specpdq_r), this), write32_delegate(FUNC(nubus_specpdq_device::specpdq_w), this)); m_timer = timer_alloc(0, NULL); - m_screen = NULL; // can we look this up now? + m_timer->adjust(m_screen->time_until_pos(843, 0), 0); } //------------------------------------------------- @@ -156,11 +160,6 @@ UINT32 nubus_specpdq_device::screen_update(screen_device &screen, bitmap_rgb32 & UINT8 pixels, *vram; // first time? kick off the VBL timer - if (!m_screen) - { - m_screen = &screen; - m_timer->adjust(m_screen->time_until_pos(843, 0), 0); - } vram = m_vram + 0x9000; switch (m_mode) |