From 2340ce2a45763cc2827781cdf321f161b08ab172 Mon Sep 17 00:00:00 2001 From: AJR Date: Tue, 5 Jun 2018 12:35:13 -0400 Subject: fmtowns.cpp, hp9k_3xx.cpp: Eliminate machine().device (nw) --- src/mame/drivers/fmtowns.cpp | 56 ++++++++++++++++++++----------------------- src/mame/drivers/hp9k_3xx.cpp | 8 +++---- src/mame/includes/fmtowns.h | 19 ++++++++------- src/mame/video/fmtowns.cpp | 12 +++++----- 4 files changed, 46 insertions(+), 49 deletions(-) diff --git a/src/mame/drivers/fmtowns.cpp b/src/mame/drivers/fmtowns.cpp index cd1262a52ac..46fab8b21ef 100644 --- a/src/mame/drivers/fmtowns.cpp +++ b/src/mame/drivers/fmtowns.cpp @@ -492,12 +492,12 @@ READ8_MEMBER(towns_state::towns_floppy_r) { case 1: ret |= 0x0c; - if(m_flop0->get_device()->exists()) + if(m_flop[0]->get_device()->exists()) ret |= 0x03; break; case 2: ret |= 0x0c; - if(m_flop1->get_device()->exists()) + if(m_flop[1]->get_device()->exists()) ret |= 0x03; break; case 3: @@ -510,9 +510,9 @@ READ8_MEMBER(towns_state::towns_floppy_r) case 0x0e: // DRVCHG logerror("FDC: read from offset 0x0e\n"); if(m_towns_selected_drive == 1) - return m_flop0->get_device()->dskchg_r(); + return m_flop[0]->get_device()->dskchg_r(); if(m_towns_selected_drive == 2) - return m_flop1->get_device()->dskchg_r(); + return m_flop[1]->get_device()->dskchg_r(); return 0x00; default: logerror("FDC: read from invalid or unimplemented register %02x\n",offset); @@ -522,7 +522,7 @@ READ8_MEMBER(towns_state::towns_floppy_r) WRITE8_MEMBER(towns_state::towns_floppy_w) { - floppy_image_device* sel[4] = { m_flop0->get_device(), m_flop1->get_device(), nullptr, nullptr }; + floppy_image_device* sel[4] = { m_flop[0]->get_device(), m_flop[1]->get_device(), nullptr, nullptr }; switch(offset) { @@ -1147,7 +1147,7 @@ WRITE8_MEMBER(towns_state::towns_pad_mask_w) READ8_MEMBER( towns_state::towns_cmos_low_r ) { if(m_towns_mainmem_enable != 0) - return m_messram->pointer()[offset + 0xd8000]; + return m_ram->pointer()[offset + 0xd8000]; if(m_nvram) return m_nvram[offset]; @@ -1158,7 +1158,7 @@ READ8_MEMBER( towns_state::towns_cmos_low_r ) WRITE8_MEMBER( towns_state::towns_cmos_low_w ) { if(m_towns_mainmem_enable != 0) - m_messram->pointer()[offset+0xd8000] = data; + m_ram->pointer()[offset+0xd8000] = data; else if(m_nvram) m_nvram[offset] = data; @@ -1188,42 +1188,42 @@ void towns_state::towns_update_video_banks(address_space& space) if(m_towns_mainmem_enable != 0) // first MB is RAM { -// membank(1)->set_base(m_messram->pointer()+0xc0000); -// membank(2)->set_base(m_messram->pointer()+0xc8000); -// membank(3)->set_base(m_messram->pointer()+0xc9000); -// membank(4)->set_base(m_messram->pointer()+0xca000); -// membank(5)->set_base(m_messram->pointer()+0xca000); -// membank(10)->set_base(m_messram->pointer()+0xca800); - m_bank_cb000_r->set_base(m_messram->pointer()+0xcb000); - m_bank_cb000_w->set_base(m_messram->pointer()+0xcb000); +// membank(1)->set_base(m_ram->pointer()+0xc0000); +// membank(2)->set_base(m_ram->pointer()+0xc8000); +// membank(3)->set_base(m_ram->pointer()+0xc9000); +// membank(4)->set_base(m_ram->pointer()+0xca000); +// membank(5)->set_base(m_ram->pointer()+0xca000); +// membank(10)->set_base(m_ram->pointer()+0xca800); + m_bank_cb000_r->set_base(m_ram->pointer()+0xcb000); + m_bank_cb000_w->set_base(m_ram->pointer()+0xcb000); if(m_towns_system_port & 0x02) - m_bank_f8000_r->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_r->set_base(m_ram->pointer()+0xf8000); else m_bank_f8000_r->set_base(ROM+0x238000); - m_bank_f8000_w->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_w->set_base(m_ram->pointer()+0xf8000); return; } else // enable I/O ports and VRAM { // membank(1)->set_base(towns_gfxvram+(towns_vram_rplane*0x8000)); // membank(2)->set_base(towns_txtvram); -// membank(3)->set_base(m_messram->pointer()+0xc9000); +// membank(3)->set_base(m_ram->pointer()+0xc9000); // if(towns_ankcg_enable != 0) // membank(4)->set_base(ROM+0x180000+0x3d000); // ANK CG 8x8 // else // membank(4)->set_base(towns_txtvram+0x2000); // membank(5)->set_base(towns_txtvram+0x2000); -// membank(10)->set_base(m_messram->pointer()+0xca800); +// membank(10)->set_base(m_ram->pointer()+0xca800); if(m_towns_ankcg_enable != 0) m_bank_cb000_r->set_base(ROM+0x180000+0x3d800); // ANK CG 8x16 else - m_bank_cb000_r->set_base(m_messram->pointer()+0xcb000); - m_bank_cb000_w->set_base(m_messram->pointer()+0xcb000); + m_bank_cb000_r->set_base(m_ram->pointer()+0xcb000); + m_bank_cb000_w->set_base(m_ram->pointer()+0xcb000); if(m_towns_system_port & 0x02) - m_bank_f8000_r->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_r->set_base(m_ram->pointer()+0xf8000); else m_bank_f8000_r->set_base(ROM+0x238000); - m_bank_f8000_w->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_w->set_base(m_ram->pointer()+0xf8000); return; } } @@ -2658,7 +2658,7 @@ void towns_state::driver_start() memset(&m_towns_cd,0,sizeof(struct towns_cdrom_controller)); m_towns_cd.status = 0x01; // CDROM controller ready m_towns_cd.buffer_ptr = -1; - m_towns_cd.read_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(towns_state::towns_cdrom_read_byte),this), (void*)machine().device("dma_1")); + m_towns_cd.read_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(towns_state::towns_cdrom_read_byte),this), (void*)m_dma_1.target()); save_pointer(m_video.towns_crtc_reg,"CRTC registers",32); save_pointer(m_video.towns_video_reg,"Video registers",2); @@ -2675,17 +2675,13 @@ void marty_state::driver_start() void towns_state::machine_start() { - m_flop0->get_device()->set_rpm(360); - m_flop1->get_device()->set_rpm(360); + m_flop[0]->get_device()->set_rpm(360); + m_flop[1]->get_device()->set_rpm(360); } void towns_state::machine_reset() { address_space &program = m_maincpu->space(AS_PROGRAM); - m_messram = m_ram; - m_cdrom = machine().device("cdrom"); - m_cdda = machine().device("cdda"); - m_scsi = machine().device("fmscsi"); m_ftimer = 0x00; m_freerun_timer = 0x00; m_nmi_mask = 0x00; diff --git a/src/mame/drivers/hp9k_3xx.cpp b/src/mame/drivers/hp9k_3xx.cpp index 552520d74b7..5c9e7feacc9 100644 --- a/src/mame/drivers/hp9k_3xx.cpp +++ b/src/mame/drivers/hp9k_3xx.cpp @@ -356,13 +356,13 @@ READ16_MEMBER(hp9k3xx_state::buserror16_r) { m_maincpu->set_input_line(M68K_LINE_BUSERROR, ASSERT_LINE); m_maincpu->set_input_line(M68K_LINE_BUSERROR, CLEAR_LINE); - m_lastpc = machine().device("maincpu")->pc(); + m_lastpc = m_maincpu->pc(); return 0; } WRITE16_MEMBER(hp9k3xx_state::buserror16_w) { - if (m_lastpc == machine().device("maincpu")->pc()) { + if (m_lastpc == m_maincpu->pc()) { logerror("%s: ignoring r-m-w double bus error\n", __FUNCTION__); return; } @@ -375,13 +375,13 @@ READ32_MEMBER(hp9k3xx_state::buserror_r) { m_maincpu->set_input_line(M68K_LINE_BUSERROR, ASSERT_LINE); m_maincpu->set_input_line(M68K_LINE_BUSERROR, CLEAR_LINE); - m_lastpc = machine().device("maincpu")->pc(); + m_lastpc = m_maincpu->pc(); return 0; } WRITE32_MEMBER(hp9k3xx_state::buserror_w) { - if (m_lastpc == machine().device("maincpu")->pc()) { + if (m_lastpc == m_maincpu->pc()) { logerror("%s: ignoring r-m-w double bus error\n", __FUNCTION__); return; } diff --git a/src/mame/includes/fmtowns.h b/src/mame/includes/fmtowns.h index ca7376ab6d7..79f33755834 100644 --- a/src/mame/includes/fmtowns.h +++ b/src/mame/includes/fmtowns.h @@ -99,13 +99,16 @@ class towns_state : public driver_device , m_palette16(*this, "palette16_%u", 0U) , m_ram(*this, RAM_TAG) , m_fdc(*this, "fdc") - , m_flop0(*this, "fdc:0") - , m_flop1(*this, "fdc:1") + , m_flop(*this, "fdc:%u", 0U) , m_icmemcard(*this, "icmemcard") , m_i8251(*this, "i8251") , m_rs232(*this, "rs232c") , m_screen(*this, "screen") , m_rtc(*this, "rtc58321") + , m_dma_1(*this, "dma_1") + , m_cdrom(*this, "cdrom") + , m_cdda(*this, "cdda") + , m_scsi(*this, "fmscsi") , m_bank_cb000_r(*this, "bank_cb000_r") , m_bank_cb000_w(*this, "bank_cb000_w") , m_bank_f8000_r(*this, "bank_f8000_r") @@ -140,24 +143,22 @@ class towns_state : public driver_device required_device_array m_palette16; required_device m_ram; required_device m_fdc; - required_device m_flop0; - required_device m_flop1; + required_device_array m_flop; required_device m_icmemcard; required_device m_i8251; required_device m_rs232; required_device m_screen; required_device m_rtc; + required_device m_dma_1; + required_device m_cdrom; + required_device m_cdda; + required_device m_scsi; required_memory_bank m_bank_cb000_r; required_memory_bank m_bank_cb000_w; required_memory_bank m_bank_f8000_r; required_memory_bank m_bank_f8000_w; - ram_device* m_messram; - cdrom_image_device* m_cdrom; - cdda_device* m_cdda; - class fmscsi_device* m_scsi; - uint16_t m_ftimer; uint16_t m_freerun_timer; emu_timer* m_towns_freerun_counter; diff --git a/src/mame/video/fmtowns.cpp b/src/mame/video/fmtowns.cpp index 2acf9e8b7fc..65a3e33f664 100644 --- a/src/mame/video/fmtowns.cpp +++ b/src/mame/video/fmtowns.cpp @@ -161,7 +161,7 @@ READ8_MEMBER( towns_state::towns_gfx_r ) uint8_t ret = 0; if(m_towns_mainmem_enable != 0) - return m_messram->pointer()[offset+0xc0000]; + return m_ram->pointer()[offset+0xc0000]; offset = offset << 2; @@ -184,7 +184,7 @@ WRITE8_MEMBER( towns_state::towns_gfx_w ) { if(m_towns_mainmem_enable != 0) { - m_messram->pointer()[offset+0xc0000] = data; + m_ram->pointer()[offset+0xc0000] = data; return; } offset = offset << 2; @@ -350,7 +350,7 @@ WRITE8_MEMBER( towns_state::towns_video_cff80_w ) READ8_MEMBER( towns_state::towns_video_cff80_mem_r ) { if(m_towns_mainmem_enable != 0) - return m_messram->pointer()[offset+0xcff80]; + return m_ram->pointer()[offset+0xcff80]; return towns_video_cff80_r(space,offset); } @@ -359,7 +359,7 @@ WRITE8_MEMBER( towns_state::towns_video_cff80_mem_w ) { if(m_towns_mainmem_enable != 0) { - m_messram->pointer()[offset+0xcff80] = data; + m_ram->pointer()[offset+0xcff80] = data; return; } towns_video_cff80_w(space,offset,data); @@ -662,7 +662,7 @@ READ8_MEMBER(towns_state::towns_video_unknown_r) */ READ8_MEMBER(towns_state::towns_spriteram_low_r) { - uint8_t* RAM = m_messram->pointer(); + uint8_t* RAM = m_ram->pointer(); uint8_t* ROM = m_user->base(); if(offset < 0x1000) @@ -700,7 +700,7 @@ READ8_MEMBER(towns_state::towns_spriteram_low_r) WRITE8_MEMBER(towns_state::towns_spriteram_low_w) { - uint8_t* RAM = m_messram->pointer(); + uint8_t* RAM = m_ram->pointer(); if(offset < 0x1000) { // 0xc8000-0xc8fff -- cgit v1.2.3