summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/bladestl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/bladestl.c')
-rw-r--r--src/mame/drivers/bladestl.c35
1 files changed, 16 insertions, 19 deletions
diff --git a/src/mame/drivers/bladestl.c b/src/mame/drivers/bladestl.c
index 1e378507736..63662590fb5 100644
--- a/src/mame/drivers/bladestl.c
+++ b/src/mame/drivers/bladestl.c
@@ -54,47 +54,44 @@ static TIMER_DEVICE_CALLBACK( bladestl_scanline )
*
*************************************/
-static READ8_HANDLER( trackball_r )
+READ8_MEMBER(bladestl_state::trackball_r)
{
- bladestl_state *state = space->machine().driver_data<bladestl_state>();
static const char *const port[] = { "TRACKBALL_P1_1", "TRACKBALL_P1_2", "TRACKBALL_P2_1", "TRACKBALL_P1_2" };
int curr, delta;
- curr = input_port_read(space->machine(), port[offset]);
- delta = (curr - state->m_last_track[offset]) & 0xff;
- state->m_last_track[offset] = curr;
+ curr = input_port_read(machine(), port[offset]);
+ delta = (curr - m_last_track[offset]) & 0xff;
+ m_last_track[offset] = curr;
return (delta & 0x80) | (curr >> 1);
}
-static WRITE8_HANDLER( bladestl_bankswitch_w )
+WRITE8_MEMBER(bladestl_state::bladestl_bankswitch_w)
{
- bladestl_state *state = space->machine().driver_data<bladestl_state>();
/* bits 0 & 1 = coin counters */
- coin_counter_w(space->machine(), 0,data & 0x01);
- coin_counter_w(space->machine(), 1,data & 0x02);
+ coin_counter_w(machine(), 0,data & 0x01);
+ coin_counter_w(machine(), 1,data & 0x02);
/* bits 2 & 3 = lamps */
- set_led_status(space->machine(), 0,data & 0x04);
- set_led_status(space->machine(), 1,data & 0x08);
+ set_led_status(machine(), 0,data & 0x04);
+ set_led_status(machine(), 1,data & 0x08);
/* bit 4 = relay (???) */
/* bits 5-6 = bank number */
- memory_set_bank(space->machine(), "bank1", (data & 0x60) >> 5);
+ memory_set_bank(machine(), "bank1", (data & 0x60) >> 5);
/* bit 7 = select sprite bank */
- state->m_spritebank = (data & 0x80) << 3;
+ m_spritebank = (data & 0x80) << 3;
}
-static WRITE8_HANDLER( bladestl_sh_irqtrigger_w )
+WRITE8_MEMBER(bladestl_state::bladestl_sh_irqtrigger_w)
{
- bladestl_state *state = space->machine().driver_data<bladestl_state>();
soundlatch_w(space, offset, data);
- device_set_input_line(state->m_audiocpu, M6809_IRQ_LINE, HOLD_LINE);
+ device_set_input_line(m_audiocpu, M6809_IRQ_LINE, HOLD_LINE);
//logerror("(sound) write %02x\n", data);
}
@@ -132,10 +129,10 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bladestl_state )
AM_RANGE(0x2e02, 0x2e02) AM_READ_PORT("P2") /* 2P controls */
AM_RANGE(0x2e03, 0x2e03) AM_READ_PORT("DSW2") /* DISPW #2 */
AM_RANGE(0x2e40, 0x2e40) AM_READ_PORT("DSW1") /* DIPSW #1 */
- AM_RANGE(0x2e80, 0x2e80) AM_WRITE_LEGACY(bladestl_sh_irqtrigger_w) /* cause interrupt on audio CPU */
+ AM_RANGE(0x2e80, 0x2e80) AM_WRITE(bladestl_sh_irqtrigger_w) /* cause interrupt on audio CPU */
AM_RANGE(0x2ec0, 0x2ec0) AM_WRITE_LEGACY(watchdog_reset_w) /* watchdog reset */
- AM_RANGE(0x2f00, 0x2f03) AM_READ_LEGACY(trackball_r) /* Trackballs */
- AM_RANGE(0x2f40, 0x2f40) AM_WRITE_LEGACY(bladestl_bankswitch_w) /* bankswitch control */
+ AM_RANGE(0x2f00, 0x2f03) AM_READ(trackball_r) /* Trackballs */
+ AM_RANGE(0x2f40, 0x2f40) AM_WRITE(bladestl_bankswitch_w) /* bankswitch control */
AM_RANGE(0x2f80, 0x2f9f) AM_DEVREADWRITE_LEGACY("k051733", k051733_r, k051733_w) /* Protection: 051733 */
AM_RANGE(0x2fc0, 0x2fc0) AM_WRITENOP /* ??? */
AM_RANGE(0x4000, 0x5fff) AM_RAM /* Work RAM */