diff options
Diffstat (limited to 'src/mame/drivers/pacland.c')
-rw-r--r-- | src/mame/drivers/pacland.c | 64 |
1 files changed, 31 insertions, 33 deletions
diff --git a/src/mame/drivers/pacland.c b/src/mame/drivers/pacland.c index 2ccfb58f897..f03001a41eb 100644 --- a/src/mame/drivers/pacland.c +++ b/src/mame/drivers/pacland.c @@ -178,61 +178,59 @@ Notes: #include "sound/namco.h" #include "includes/pacland.h" -static WRITE8_HANDLER( pacland_subreset_w ) +WRITE8_MEMBER(pacland_state::pacland_subreset_w) { int bit = !BIT(offset,11); - cputag_set_input_line(space->machine(), "mcu", INPUT_LINE_RESET, bit ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(machine(), "mcu", INPUT_LINE_RESET, bit ? CLEAR_LINE : ASSERT_LINE); } -static WRITE8_HANDLER( pacland_flipscreen_w ) +WRITE8_MEMBER(pacland_state::pacland_flipscreen_w) { int bit = !BIT(offset,11); - /* can't use flip_screen_set(space->machine(), ) because the visible area is asymmetrical */ - flip_screen_set_no_update(space->machine(), bit); - space->machine().tilemap().set_flip_all(flip_screen_get(space->machine()) ? (TILEMAP_FLIPX | TILEMAP_FLIPY) : 0); + /* can't use flip_screen_set(machine(), ) because the visible area is asymmetrical */ + flip_screen_set_no_update(machine(), bit); + machine().tilemap().set_flip_all(flip_screen_get(machine()) ? (TILEMAP_FLIPX | TILEMAP_FLIPY) : 0); } -static READ8_HANDLER( pacland_input_r ) +READ8_MEMBER(pacland_state::pacland_input_r) { int shift = 4 * (offset & 1); int port = offset & 2; static const char *const portnames[] = { "DSWA", "DSWB", "IN0", "IN1" }; - int r = (input_port_read(space->machine(), portnames[port]) << shift) & 0xf0; - r |= (input_port_read(space->machine(), portnames[port+1]) >> (4 - shift)) & 0x0f; + int r = (input_port_read(machine(), portnames[port]) << shift) & 0xf0; + r |= (input_port_read(machine(), portnames[port+1]) >> (4 - shift)) & 0x0f; return r; } -static WRITE8_HANDLER( pacland_coin_w ) +WRITE8_MEMBER(pacland_state::pacland_coin_w) { - coin_lockout_global_w(space->machine(), data & 1); - coin_counter_w(space->machine(), 0, ~data & 2); - coin_counter_w(space->machine(), 1, ~data & 4); + coin_lockout_global_w(machine(), data & 1); + coin_counter_w(machine(), 0, ~data & 2); + coin_counter_w(machine(), 1, ~data & 4); } -static WRITE8_HANDLER( pacland_led_w ) +WRITE8_MEMBER(pacland_state::pacland_led_w) { - set_led_status(space->machine(), 0, data & 0x08); - set_led_status(space->machine(), 1, data & 0x10); + set_led_status(machine(), 0, data & 0x08); + set_led_status(machine(), 1, data & 0x10); } -static WRITE8_HANDLER( pacland_irq_1_ctrl_w ) +WRITE8_MEMBER(pacland_state::pacland_irq_1_ctrl_w) { - pacland_state *state = space->machine().driver_data<pacland_state>(); int bit = !BIT(offset, 11); - state->m_main_irq_mask = bit; + m_main_irq_mask = bit; if (!bit) - cputag_set_input_line(space->machine(), "maincpu", 0, CLEAR_LINE); + cputag_set_input_line(machine(), "maincpu", 0, CLEAR_LINE); } -static WRITE8_HANDLER( pacland_irq_2_ctrl_w ) +WRITE8_MEMBER(pacland_state::pacland_irq_2_ctrl_w) { - pacland_state *state = space->machine().driver_data<pacland_state>(); int bit = !BIT(offset, 13); - state->m_mcu_irq_mask = bit; + m_mcu_irq_mask = bit; if (!bit) - cputag_set_input_line(space->machine(), "mcu", 0, CLEAR_LINE); + cputag_set_input_line(machine(), "mcu", 0, CLEAR_LINE); } @@ -246,11 +244,11 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pacland_state ) AM_RANGE(0x3c00, 0x3c00) AM_WRITE_LEGACY(pacland_bankswitch_w) AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank1") AM_RANGE(0x6800, 0x6bff) AM_DEVREADWRITE_LEGACY("namco", namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */ - AM_RANGE(0x7000, 0x7fff) AM_WRITE_LEGACY(pacland_irq_1_ctrl_w) + AM_RANGE(0x7000, 0x7fff) AM_WRITE(pacland_irq_1_ctrl_w) AM_RANGE(0x7800, 0x7fff) AM_READ_LEGACY(watchdog_reset_r) AM_RANGE(0x8000, 0xffff) AM_ROM - AM_RANGE(0x8000, 0x8fff) AM_WRITE_LEGACY(pacland_subreset_w) - AM_RANGE(0x9000, 0x9fff) AM_WRITE_LEGACY(pacland_flipscreen_w) + AM_RANGE(0x8000, 0x8fff) AM_WRITE(pacland_subreset_w) + AM_RANGE(0x9000, 0x9fff) AM_WRITE(pacland_flipscreen_w) ADDRESS_MAP_END static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, pacland_state ) @@ -258,24 +256,24 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, pacland_state ) AM_RANGE(0x0080, 0x00ff) AM_RAM AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE_LEGACY("namco", namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */ AM_RANGE(0x2000, 0x3fff) AM_WRITE_LEGACY(watchdog_reset_w) /* watchdog? */ - AM_RANGE(0x4000, 0x7fff) AM_WRITE_LEGACY(pacland_irq_2_ctrl_w) + AM_RANGE(0x4000, 0x7fff) AM_WRITE(pacland_irq_2_ctrl_w) AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM - AM_RANGE(0xd000, 0xd003) AM_READ_LEGACY(pacland_input_r) + AM_RANGE(0xd000, 0xd003) AM_READ(pacland_input_r) AM_RANGE(0xf000, 0xffff) AM_ROM ADDRESS_MAP_END -static READ8_HANDLER( readFF ) +READ8_MEMBER(pacland_state::readFF) { return 0xff; } static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, pacland_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ_PORT("IN2") - AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE_LEGACY(pacland_coin_w) - AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ_LEGACY(readFF) /* leds won't work otherwise */ - AM_RANGE(M6801_PORT2, M6801_PORT2) AM_WRITE_LEGACY(pacland_led_w) + AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(pacland_coin_w) + AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */ + AM_RANGE(M6801_PORT2, M6801_PORT2) AM_WRITE(pacland_led_w) ADDRESS_MAP_END |