From 121e61ff9427f128f14d6b13fa5dd686014b867c Mon Sep 17 00:00:00 2001 From: AJR Date: Sat, 3 Mar 2018 15:30:29 -0500 Subject: [PATCH] gba_lcd, spectrum, etc.: Convenient first_screen removal (nw) --- src/devices/video/gba_lcd.cpp | 14 +++++++------- src/mame/drivers/pentagon.cpp | 4 ++-- src/mame/drivers/spec128.cpp | 2 +- src/mame/drivers/spectrum.cpp | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/devices/video/gba_lcd.cpp b/src/devices/video/gba_lcd.cpp index 92ef5b360b5..0829d70a044 100644 --- a/src/devices/video/gba_lcd.cpp +++ b/src/devices/video/gba_lcd.cpp @@ -1560,7 +1560,7 @@ READ32_MEMBER(gba_lcd_device::video_r) switch (offset) { case 0x0004/4: - retval = DISPSTAT | (machine().first_screen()->vpos() << 16); + retval = DISPSTAT | (screen().vpos() << 16); break; default: if (ACCESSING_BITS_0_15) @@ -1652,7 +1652,7 @@ WRITE32_MEMBER(gba_lcd_device::gba_oam_w) TIMER_CALLBACK_MEMBER(gba_lcd_device::perform_hbl) { - int scanline = machine().first_screen()->vpos(); + int scanline = screen().vpos(); // reload LCD controller internal registers from I/O ones at vblank if (scanline == 0) @@ -1688,7 +1688,7 @@ TIMER_CALLBACK_MEMBER(gba_lcd_device::perform_scan) clear(dispstat::hblank); clear(dispstat::vcount); - int scanline = machine().first_screen()->vpos(); + int scanline = screen().vpos(); // VBLANK is set for scanlines 160 through 226 (but not 227, which is the last line) if (scanline >= 160 && scanline < 227) @@ -1725,8 +1725,8 @@ TIMER_CALLBACK_MEMBER(gba_lcd_device::perform_scan) } } - m_hbl_timer->adjust(machine().first_screen()->time_until_pos(scanline, 240)); - m_scan_timer->adjust(machine().first_screen()->time_until_pos((scanline + 1) % 228, 0)); + m_hbl_timer->adjust(screen().time_until_pos(scanline, 240)); + m_scan_timer->adjust(screen().time_until_pos((scanline + 1) % 228, 0)); } PALETTE_INIT_MEMBER(gba_lcd_device, gba) @@ -1768,7 +1768,7 @@ void gba_lcd_device::device_start() /* create a timer to fire scanline functions */ m_scan_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(gba_lcd_device::perform_scan),this)); m_hbl_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(gba_lcd_device::perform_hbl),this)); - m_scan_timer->adjust(machine().first_screen()->time_until_pos(0, 0)); + m_scan_timer->adjust(screen().time_until_pos(0, 0)); save_item(NAME(m_regs)); @@ -1800,7 +1800,7 @@ void gba_lcd_device::device_reset() m_bg3x = { 0, false }; m_bg3y = { 0, false }; - m_scan_timer->adjust(machine().first_screen()->time_until_pos(0, 0)); + m_scan_timer->adjust(screen().time_until_pos(0, 0)); m_hbl_timer->adjust(attotime::never); } diff --git a/src/mame/drivers/pentagon.cpp b/src/mame/drivers/pentagon.cpp index ddcb9af8e34..cc9444cae04 100644 --- a/src/mame/drivers/pentagon.cpp +++ b/src/mame/drivers/pentagon.cpp @@ -242,10 +242,10 @@ VIDEO_START_MEMBER(pentagon_state,pentagon) m_previous_border_x = 0; m_previous_border_y = 0; - machine().first_screen()->register_screen_bitmap(m_border_bitmap); + m_screen->register_screen_bitmap(m_border_bitmap); m_previous_screen_x = 0; m_previous_screen_y = 0; - machine().first_screen()->register_screen_bitmap(m_screen_bitmap); + m_screen->register_screen_bitmap(m_screen_bitmap); m_screen_location = m_ram->pointer() + (5 << 14); } diff --git a/src/mame/drivers/spec128.cpp b/src/mame/drivers/spec128.cpp index a5d5be4fb96..4c0d9c1f1a5 100644 --- a/src/mame/drivers/spec128.cpp +++ b/src/mame/drivers/spec128.cpp @@ -228,7 +228,7 @@ void spectrum_state::spectrum_128_update_memory() READ8_MEMBER( spectrum_state::spectrum_128_ula_r ) { - int vpos = machine().first_screen()->vpos(); + int vpos = m_screen->vpos(); return vpos<193 ? m_screen_location[0x1800|(vpos&0xf8)<<2]:0xff; } diff --git a/src/mame/drivers/spectrum.cpp b/src/mame/drivers/spectrum.cpp index 18b00d805f5..b88fcbcb47c 100644 --- a/src/mame/drivers/spectrum.cpp +++ b/src/mame/drivers/spectrum.cpp @@ -424,7 +424,7 @@ READ8_MEMBER(spectrum_state::spectrum_port_fe_r) READ8_MEMBER(spectrum_state::spectrum_port_ula_r) { - int vpos = machine().first_screen()->vpos(); + int vpos = m_screen->vpos(); return vpos<193 ? m_video_ram[(vpos&0xf8)<<2]:0xff; }