diff --git a/src/mame/drivers/laserbat.c b/src/mame/drivers/laserbat.c index 992edf5ba16..8b051288f9d 100644 --- a/src/mame/drivers/laserbat.c +++ b/src/mame/drivers/laserbat.c @@ -29,7 +29,6 @@ TODO: WRITE8_MEMBER(laserbat_state::laserbat_videoram_w) { - if (m_video_page == 0) { m_videoram[offset] = data; @@ -44,7 +43,6 @@ WRITE8_MEMBER(laserbat_state::laserbat_videoram_w) WRITE8_MEMBER(laserbat_state::video_extra_w) { - m_video_page = (data & 0x10) >> 4; m_sprite_enable = (data & 1) ^ 1; m_sprite_code = (data & 0xe0) >> 5; @@ -53,7 +51,6 @@ WRITE8_MEMBER(laserbat_state::video_extra_w) WRITE8_MEMBER(laserbat_state::sprite_x_y_w) { - if (offset == 0) m_sprite_x = 256 - data; else @@ -62,7 +59,6 @@ WRITE8_MEMBER(laserbat_state::sprite_x_y_w) WRITE8_MEMBER(laserbat_state::laserbat_input_mux_w) { - m_input_mux = (data & 0x30) >> 4; flip_screen_set_no_update(data & 0x08); @@ -185,6 +181,7 @@ static ADDRESS_MAP_START( laserbat_io_map, AS_IO, 8, laserbat_state ) AM_RANGE(0x06, 0x06) AM_WRITE(laserbat_input_mux_w) AM_RANGE(0x07, 0x07) AM_WRITE(laserbat_csound2_w) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") + AM_RANGE(S2650_FO_PORT, S2650_FO_PORT) AM_RAM AM_SHARE("fo_state") ADDRESS_MAP_END @@ -197,6 +194,7 @@ static ADDRESS_MAP_START( catnmous_io_map, AS_IO, 8, laserbat_state ) AM_RANGE(0x06, 0x06) AM_WRITE(laserbat_input_mux_w) AM_RANGE(0x07, 0x07) AM_WRITENOP // unknown AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") + AM_RANGE(S2650_FO_PORT, S2650_FO_PORT) AM_RAM AM_SHARE("fo_state") ADDRESS_MAP_END // the same as in zaccaria.c ? @@ -256,10 +254,10 @@ static INPUT_PORTS_START( laserbat ) PORT_DIPSETTING( 0x10, "3" ) PORT_DIPSETTING( 0x20, "5" ) PORT_DIPSETTING( 0x30, "6" ) - PORT_DIPSETTING( 0x40, "Infinites" ) -// PORT_DIPSETTING( 0x50, "Infinites" ) -// PORT_DIPSETTING( 0x60, "Infinites" ) -// PORT_DIPSETTING( 0x70, "Infinites" ) + PORT_DIPSETTING( 0x40, "Infinite" ) +// PORT_DIPSETTING( 0x50, "Infinite" ) +// PORT_DIPSETTING( 0x60, "Infinite" ) +// PORT_DIPSETTING( 0x70, "Infinite" ) PORT_DIPNAME( 0x80, 0x80, "Collision Detection" ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( On ) ) @@ -409,10 +407,10 @@ static INPUT_PORTS_START( catnmous ) PORT_DIPSETTING( 0x10, "3" ) PORT_DIPSETTING( 0x20, "4" ) PORT_DIPSETTING( 0x30, "5" ) - PORT_DIPSETTING( 0x40, "Infinites" ) -// PORT_DIPSETTING( 0x50, "Infinites" ) -// PORT_DIPSETTING( 0x60, "Infinites" ) -// PORT_DIPSETTING( 0x70, "Infinites" ) + PORT_DIPSETTING( 0x40, "Infinite" ) +// PORT_DIPSETTING( 0x50, "Infinite" ) +// PORT_DIPSETTING( 0x60, "Infinite" ) +// PORT_DIPSETTING( 0x70, "Infinite" ) PORT_DIPNAME( 0x80, 0x80, "Game Over Melody" ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( On ) ) @@ -698,7 +696,6 @@ static MACHINE_START( laserbat ) { laserbat_state *state = machine.driver_data(); - state->m_audiocpu = machine.device("audiocpu"); state->m_s2636_1 = machine.device("s2636_1"); state->m_s2636_2 = machine.device("s2636_2"); state->m_s2636_3 = machine.device("s2636_3"); diff --git a/src/mame/includes/laserbat.h b/src/mame/includes/laserbat.h index ab1fc02733a..82b6e8026f8 100644 --- a/src/mame/includes/laserbat.h +++ b/src/mame/includes/laserbat.h @@ -10,7 +10,15 @@ class laserbat_state : public driver_device { public: laserbat_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag) { } + : driver_device(mconfig, type, tag), + m_maincpu(*this, "maincpu"), + m_audiocpu(*this, "audiocpu"), + m_fo_state(*this, "fo_state") + { } + + required_device m_maincpu; + optional_device m_audiocpu; + required_shared_ptr m_fo_state; /* video-related */ tilemap_t *m_bg_tilemap; @@ -42,7 +50,6 @@ public: int m_bit14; /* device */ - device_t *m_audiocpu; device_t *m_s2636_1; device_t *m_s2636_2; device_t *m_s2636_3;