summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/mrflea.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/mrflea.c')
-rw-r--r--src/mame/drivers/mrflea.c72
1 files changed, 32 insertions, 40 deletions
diff --git a/src/mame/drivers/mrflea.c b/src/mame/drivers/mrflea.c
index 44963f8bfed..fbd31d1e86c 100644
--- a/src/mame/drivers/mrflea.c
+++ b/src/mame/drivers/mrflea.c
@@ -75,51 +75,45 @@ Stephh's notes (based on the games Z80 code and some tests) :
*
*************************************/
-static WRITE8_HANDLER( mrflea_main_w )
+WRITE8_MEMBER(mrflea_state::mrflea_main_w)
{
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
- state->m_status |= 0x01; // pending command to main CPU
- state->m_main = data;
+ m_status |= 0x01; // pending command to main CPU
+ m_main = data;
}
-static WRITE8_HANDLER( mrflea_io_w )
+WRITE8_MEMBER(mrflea_state::mrflea_io_w)
{
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
- state->m_status |= 0x08; // pending command to IO CPU
- state->m_io = data;
- device_set_input_line(state->m_subcpu, 0, HOLD_LINE );
+ m_status |= 0x08; // pending command to IO CPU
+ m_io = data;
+ device_set_input_line(m_subcpu, 0, HOLD_LINE );
}
-static READ8_HANDLER( mrflea_main_r )
+READ8_MEMBER(mrflea_state::mrflea_main_r)
{
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
- state->m_status &= ~0x01; // main CPU command read
- return state->m_main;
+ m_status &= ~0x01; // main CPU command read
+ return m_main;
}
-static READ8_HANDLER( mrflea_io_r )
+READ8_MEMBER(mrflea_state::mrflea_io_r)
{
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
- state->m_status &= ~0x08; // IO CPU command read
- return state->m_io;
+ m_status &= ~0x08; // IO CPU command read
+ return m_io;
}
-static READ8_HANDLER( mrflea_main_status_r )
+READ8_MEMBER(mrflea_state::mrflea_main_status_r)
{
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
/* 0x01: main CPU command pending
0x08: io cpu ready */
- return state->m_status ^ 0x08;
+ return m_status ^ 0x08;
}
-static READ8_HANDLER( mrflea_io_status_r )
+READ8_MEMBER(mrflea_state::mrflea_io_status_r)
{
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
/* 0x08: IO CPU command pending
0x01: main cpu ready */
- return state->m_status ^ 0x01;
+ return m_status ^ 0x01;
}
static TIMER_DEVICE_CALLBACK( mrflea_slave_interrupt )
@@ -131,32 +125,30 @@ static TIMER_DEVICE_CALLBACK( mrflea_slave_interrupt )
device_set_input_line(state->m_subcpu, 0, HOLD_LINE);
}
-static READ8_HANDLER( mrflea_interrupt_type_r )
+READ8_MEMBER(mrflea_state::mrflea_interrupt_type_r)
{
/* there are two interrupt types:
1. triggered (in response to sound command)
2. heartbeat (for music timing)
*/
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
- if (state->m_status & 0x08 )
+ if (m_status & 0x08 )
return 0x00; /* process command */
return 0x01; /* music/sound update? */
}
-static WRITE8_HANDLER( mrflea_select1_w )
+WRITE8_MEMBER(mrflea_state::mrflea_select1_w)
{
- mrflea_state *state = space->machine().driver_data<mrflea_state>();
- state->m_select1 = data;
+ m_select1 = data;
}
-static READ8_HANDLER( mrflea_input1_r )
+READ8_MEMBER(mrflea_state::mrflea_input1_r)
{
return 0x00;
}
-static WRITE8_HANDLER( mrflea_data1_w )
+WRITE8_MEMBER(mrflea_state::mrflea_data1_w)
{
}
@@ -177,9 +169,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mrflea_master_io_map, AS_IO, 8, mrflea_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog? */
- AM_RANGE(0x40, 0x40) AM_WRITE_LEGACY(mrflea_io_w)
- AM_RANGE(0x41, 0x41) AM_READ_LEGACY(mrflea_main_r)
- AM_RANGE(0x42, 0x42) AM_READ_LEGACY(mrflea_main_status_r)
+ AM_RANGE(0x40, 0x40) AM_WRITE(mrflea_io_w)
+ AM_RANGE(0x41, 0x41) AM_READ(mrflea_main_r)
+ AM_RANGE(0x42, 0x42) AM_READ(mrflea_main_status_r)
AM_RANGE(0x43, 0x43) AM_WRITENOP /* 0xa6,0x0d,0x05 */
AM_RANGE(0x60, 0x60) AM_WRITE_LEGACY(mrflea_gfx_bank_w)
ADDRESS_MAP_END
@@ -195,16 +187,16 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mrflea_slave_io_map, AS_IO, 8, mrflea_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog */
- AM_RANGE(0x10, 0x10) AM_READ_LEGACY(mrflea_interrupt_type_r) AM_WRITENOP /* ? / irq ACK */
+ AM_RANGE(0x10, 0x10) AM_READ(mrflea_interrupt_type_r) AM_WRITENOP /* ? / irq ACK */
AM_RANGE(0x11, 0x11) AM_WRITENOP /* 0x83,0x00,0xfc */
- AM_RANGE(0x20, 0x20) AM_READ_LEGACY(mrflea_io_r)
- AM_RANGE(0x21, 0x21) AM_WRITE_LEGACY(mrflea_main_w)
- AM_RANGE(0x22, 0x22) AM_READ_LEGACY(mrflea_io_status_r)
+ AM_RANGE(0x20, 0x20) AM_READ(mrflea_io_r)
+ AM_RANGE(0x21, 0x21) AM_WRITE(mrflea_main_w)
+ AM_RANGE(0x22, 0x22) AM_READ(mrflea_io_status_r)
AM_RANGE(0x23, 0x23) AM_WRITENOP /* 0xb4,0x09,0x05 */
AM_RANGE(0x40, 0x40) AM_DEVREAD_LEGACY("ay1", ay8910_r)
AM_RANGE(0x40, 0x41) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
- AM_RANGE(0x42, 0x42) AM_READWRITE_LEGACY(mrflea_input1_r, mrflea_data1_w)
- AM_RANGE(0x43, 0x43) AM_WRITE_LEGACY(mrflea_select1_w)
+ AM_RANGE(0x42, 0x42) AM_READWRITE(mrflea_input1_r, mrflea_data1_w)
+ AM_RANGE(0x43, 0x43) AM_WRITE(mrflea_select1_w)
AM_RANGE(0x44, 0x44) AM_DEVREAD_LEGACY("ay2", ay8910_r)
AM_RANGE(0x44, 0x45) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
AM_RANGE(0x46, 0x46) AM_DEVREAD_LEGACY("ay3", ay8910_r)