summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2016-05-23 17:19:15 +0200
committer Olivier Galibert <galibert@pobox.com>2016-05-25 17:21:25 +0200
commita2f2deb532da37b90f5e84e336ab905276bc7724 (patch)
treec96ef2ed709e5a10a5b104b02c3a2cdc3d95f993 /src
parent95b5dfe00e920b3a24384d6cd7899af09e12ec62 (diff)
esb: Direct update for slapstic gone too [O. Galibert]
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/starwars.cpp38
-rw-r--r--src/mame/includes/starwars.h3
2 files changed, 0 insertions, 41 deletions
diff --git a/src/mame/drivers/starwars.cpp b/src/mame/drivers/starwars.cpp
index 1b3b0ac35b1..536c138c0c4 100644
--- a/src/mame/drivers/starwars.cpp
+++ b/src/mame/drivers/starwars.cpp
@@ -125,38 +125,6 @@ WRITE8_MEMBER(starwars_state::esb_slapstic_w)
}
-
-/*************************************
- *
- * ESB Opcode base handler
- *
- *************************************/
-
-DIRECT_UPDATE_MEMBER(starwars_state::esb_setdirect)
-{
- /* if we are in the slapstic region, process it */
- if ((address & 0xe000) == 0x8000)
- {
- offs_t pc = direct.space().device().safe_pc();
-
- /* filter out duplicates; we get these because the handler gets called for
- multiple reasons:
- 1. Because we have read/write handlers backing the current address
- 2. Because the CPU core executed a jump to a new address
- */
- if (pc != m_slapstic_last_pc || address != m_slapstic_last_address)
- {
- m_slapstic_last_pc = pc;
- m_slapstic_last_address = address;
- esb_slapstic_tweak(direct.space(), address & 0x1fff);
- }
- return ~0;
- }
- return address;
-}
-
-
-
/*************************************
*
* Main CPU memory handlers
@@ -568,10 +536,6 @@ DRIVER_INIT_MEMBER(starwars_state,esb)
m_slapstic_source = &rom[0x14000];
m_slapstic_base = &rom[0x08000];
- /* install an opcode base handler */
- address_space &space = m_maincpu->space(AS_PROGRAM);
- space.set_direct_update_handler(direct_update_delegate(FUNC(starwars_state::esb_setdirect), this));
-
/* install read/write handlers for it */
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x8000, 0x9fff, read8_delegate(FUNC(starwars_state::esb_slapstic_r),this), write8_delegate(FUNC(starwars_state::esb_slapstic_w),this));
@@ -590,8 +554,6 @@ DRIVER_INIT_MEMBER(starwars_state,esb)
/* additional globals for state saving */
save_item(NAME(m_slapstic_current_bank));
- save_item(NAME(m_slapstic_last_pc));
- save_item(NAME(m_slapstic_last_address));
}
diff --git a/src/mame/includes/starwars.h b/src/mame/includes/starwars.h
index 77c94f31c04..5782a873cb3 100644
--- a/src/mame/includes/starwars.h
+++ b/src/mame/includes/starwars.h
@@ -28,8 +28,6 @@ public:
UINT8 *m_slapstic_source;
UINT8 *m_slapstic_base;
UINT8 m_slapstic_current_bank;
- offs_t m_slapstic_last_pc;
- offs_t m_slapstic_last_address;
UINT8 m_is_esb;
required_shared_ptr<UINT8> m_mathram;
UINT8 m_control_num;
@@ -67,7 +65,6 @@ public:
DECLARE_WRITE8_MEMBER(starwars_main_wr_w);
DECLARE_WRITE8_MEMBER(starwars_soundrst_w);
DECLARE_WRITE8_MEMBER(quad_pokeyn_w);
- DECLARE_DIRECT_UPDATE_MEMBER(esb_setdirect);
DECLARE_DRIVER_INIT(esb);
DECLARE_DRIVER_INIT(starwars);
virtual void machine_reset() override;