esb: Direct update for slapstic gone too [O. Galibert]

This commit is contained in:
Olivier Galibert 2016-05-23 17:19:15 +02:00
parent 95b5dfe00e
commit a2f2deb532
2 changed files with 0 additions and 41 deletions

View File

@ -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));
}

View File

@ -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;