diff options
author | 2015-08-14 14:37:25 +0200 | |
---|---|---|
committer | 2015-08-18 20:12:39 +0200 | |
commit | 304ab3bbacf0c3f8382ed815c22eaa2071f0b38a (patch) | |
tree | 3fa89b64fbd896fe92e975dff09d1b464631dd38 /src | |
parent | c9d255b26f295343ed577eda97f485959c9d2e06 (diff) |
wgp.c: reduce tagmap lookups (nw)
Diffstat (limited to 'src')
-rw-r--r-- | src/mame/drivers/wgp.c | 10 | ||||
-rw-r--r-- | src/mame/includes/wgp.h | 11 |
2 files changed, 15 insertions, 6 deletions
diff --git a/src/mame/drivers/wgp.c b/src/mame/drivers/wgp.c index 5727594dee5..e8ce89b5983 100644 --- a/src/mame/drivers/wgp.c +++ b/src/mame/drivers/wgp.c @@ -516,12 +516,12 @@ WRITE16_MEMBER(wgp_state::rotate_port_w) READ16_MEMBER(wgp_state::wgp_adinput_r) { int steer = 0x40; - int fake = ioport(FAKE_PORT_TAG)->read_safe(0x00); + int fake = m_fake ? m_fake->read() : 0; if (!(fake & 0x10)) /* Analogue steer (the real control method) */ { /* Reduce span to 0x80 */ - steer = (ioport(STEER_PORT_TAG)->read_safe(0x00) * 0x80) / 0x100; + steer = ((m_steer ? m_steer->read() : 0) * 0x80) / 0x100; } else /* Digital steer */ { @@ -566,7 +566,7 @@ READ16_MEMBER(wgp_state::wgp_adinput_r) } case 0x05: - return ioport(UNKNOWN_PORT_TAG)->read_safe(0x00); /* unknown */ + return m_unknown ? m_unknown->read() : 0; /* unknown */ } logerror("CPU #0 PC %06x: warning - read unmapped a/d input offset %06x\n",space.device().safe_pc(),offset); @@ -590,7 +590,7 @@ WRITE16_MEMBER(wgp_state::wgp_adinput_w) WRITE8_MEMBER(wgp_state::sound_bankswitch_w) { - membank("z80bank")->set_entry(data & 3); + m_z80bank->set_entry(data & 3); } WRITE16_MEMBER(wgp_state::wgp_sound_w) @@ -909,7 +909,7 @@ void wgp_state::machine_reset() void wgp_state::machine_start() { - membank("z80bank")->configure_entries(0, 4, memregion("audiocpu")->base(), 0x4000); + m_z80bank->configure_entries(0, 4, memregion("audiocpu")->base(), 0x4000); save_item(NAME(m_cpua_ctrl)); save_item(NAME(m_port_sel)); diff --git a/src/mame/includes/wgp.h b/src/mame/includes/wgp.h index 6f2416a4326..c306b52ba2d 100644 --- a/src/mame/includes/wgp.h +++ b/src/mame/includes/wgp.h @@ -34,7 +34,12 @@ public: m_tc0140syt(*this, "tc0140syt"), m_tc0220ioc(*this, "tc0220ioc"), m_gfxdecode(*this, "gfxdecode"), - m_palette(*this, "palette") { } + m_palette(*this, "palette"), + m_z80bank(*this, "z80bank"), + m_steer(*this, "STEER"), + m_unknown(*this, "UNKNOWN"), + m_fake(*this, "FAKE") + { } /* memory pointers */ required_shared_ptr<UINT16> m_spritemap; @@ -66,6 +71,10 @@ public: required_device<tc0220ioc_device> m_tc0220ioc; required_device<gfxdecode_device> m_gfxdecode; required_device<palette_device> m_palette; + required_memory_bank m_z80bank; + optional_ioport m_steer; + optional_ioport m_unknown; + optional_ioport m_fake; DECLARE_WRITE16_MEMBER(cpua_ctrl_w); DECLARE_READ16_MEMBER(lan_status_r); |