diff options
author | Miodrag Milanovic <mmicko@gmail.com> | 2012-04-04 15:08:19 +0000 |
---|---|---|
committer | Miodrag Milanovic <mmicko@gmail.com> | 2012-04-04 15:08:19 +0000 |
commit | 7dabd8b524510582d7f6ee96f430395d2f60cb78 (patch) | |
tree | 9641ea5111636c5963ac77e7130ace2773ddd1a3 /src/mame/drivers/finalizr.c | |
parent | 62d9c8ba4fd4be6fc3225e8a3850526db7d78357 (diff) |
MAME going modern part 5 (no whatsnew)
Tomorrow and next days just bug fixing from my side, no big changes
Diffstat (limited to 'src/mame/drivers/finalizr.c')
-rw-r--r-- | src/mame/drivers/finalizr.c | 48 |
1 files changed, 22 insertions, 26 deletions
diff --git a/src/mame/drivers/finalizr.c b/src/mame/drivers/finalizr.c index 93d5d2c42d7..6db218559fc 100644 --- a/src/mame/drivers/finalizr.c +++ b/src/mame/drivers/finalizr.c @@ -34,30 +34,27 @@ static TIMER_DEVICE_CALLBACK( finalizr_scanline ) } -static WRITE8_HANDLER( finalizr_coin_w ) +WRITE8_MEMBER(finalizr_state::finalizr_coin_w) { - 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); } -static WRITE8_HANDLER( finalizr_flipscreen_w ) +WRITE8_MEMBER(finalizr_state::finalizr_flipscreen_w) { - finalizr_state *state = space->machine().driver_data<finalizr_state>(); - state->m_nmi_enable = data & 0x01; - state->m_irq_enable = data & 0x02; + m_nmi_enable = data & 0x01; + m_irq_enable = data & 0x02; - flip_screen_set(space->machine(), ~data & 0x08); + flip_screen_set(machine(), ~data & 0x08); } -static WRITE8_HANDLER( finalizr_i8039_irq_w ) +WRITE8_MEMBER(finalizr_state::finalizr_i8039_irq_w) { - finalizr_state *state = space->machine().driver_data<finalizr_state>(); - device_set_input_line(state->m_audio_cpu, 0, ASSERT_LINE); + device_set_input_line(m_audio_cpu, 0, ASSERT_LINE); } -static WRITE8_HANDLER( i8039_irqen_w ) +WRITE8_MEMBER(finalizr_state::i8039_irqen_w) { - finalizr_state *state = space->machine().driver_data<finalizr_state>(); /* bit 0x80 goes active low, indicating that the external IRQ being serviced is complete @@ -65,12 +62,11 @@ static WRITE8_HANDLER( i8039_irqen_w ) */ if ((data & 0x80) == 0) - device_set_input_line(state->m_audio_cpu, 0, CLEAR_LINE); + device_set_input_line(m_audio_cpu, 0, CLEAR_LINE); } -static READ8_HANDLER( i8039_T1_r ) +READ8_MEMBER(finalizr_state::i8039_T1_r) { - finalizr_state *state = space->machine().driver_data<finalizr_state>(); /* I suspect the clock-out from the I8039 T0 line should be connected here (See the i8039_T0_w handler below). @@ -82,12 +78,12 @@ static READ8_HANDLER( i8039_T1_r ) based on the I8039 main xtal clock input frequency of 9.216MHz */ - state->m_T1_line++; - state->m_T1_line %= 16; - return (!(state->m_T1_line % 3) && (state->m_T1_line > 0)); + m_T1_line++; + m_T1_line %= 16; + return (!(m_T1_line % 3) && (m_T1_line > 0)); } -static WRITE8_HANDLER( i8039_T0_w ) +WRITE8_MEMBER(finalizr_state::i8039_T0_w) { /* This becomes a clock output at a frequency of 3.072MHz (derived by internally dividing the main xtal clock input by a factor of 3). @@ -100,7 +96,7 @@ static WRITE8_HANDLER( i8039_T0_w ) static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, finalizr_state ) AM_RANGE(0x0001, 0x0001) AM_WRITEONLY AM_BASE(m_scroll) AM_RANGE(0x0003, 0x0003) AM_WRITE_LEGACY(finalizr_videoctrl_w) - AM_RANGE(0x0004, 0x0004) AM_WRITE_LEGACY(finalizr_flipscreen_w) + AM_RANGE(0x0004, 0x0004) AM_WRITE(finalizr_flipscreen_w) // AM_RANGE(0x0020, 0x003f) AM_WRITEONLY AM_BASE(m_scroll) AM_RANGE(0x0800, 0x0800) AM_READ_PORT("DSW3") AM_RANGE(0x0808, 0x0808) AM_READ_PORT("DSW2") @@ -109,10 +105,10 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, finalizr_state ) AM_RANGE(0x0812, 0x0812) AM_READ_PORT("P2") AM_RANGE(0x0813, 0x0813) AM_READ_PORT("DSW1") AM_RANGE(0x0818, 0x0818) AM_WRITE_LEGACY(watchdog_reset_w) - AM_RANGE(0x0819, 0x0819) AM_WRITE_LEGACY(finalizr_coin_w) + AM_RANGE(0x0819, 0x0819) AM_WRITE(finalizr_coin_w) AM_RANGE(0x081a, 0x081a) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) /* This address triggers the SN chip to read the data port. */ AM_RANGE(0x081b, 0x081b) AM_WRITENOP /* Loads the snd command into the snd latch */ - AM_RANGE(0x081c, 0x081c) AM_WRITE_LEGACY(finalizr_i8039_irq_w) /* custom sound chip */ + AM_RANGE(0x081c, 0x081c) AM_WRITE(finalizr_i8039_irq_w) /* custom sound chip */ AM_RANGE(0x081d, 0x081d) AM_WRITE_LEGACY(soundlatch_w) /* custom sound chip */ AM_RANGE(0x2000, 0x23ff) AM_RAM AM_BASE(m_colorram) AM_RANGE(0x2400, 0x27ff) AM_RAM AM_BASE_SIZE(m_videoram, m_videoram_size) @@ -132,9 +128,9 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, finalizr_state ) AM_RANGE(0x00, 0xff) AM_READ_LEGACY(soundlatch_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w) - AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE_LEGACY(i8039_irqen_w) - AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_WRITE_LEGACY(i8039_T0_w) - AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ_LEGACY(i8039_T1_r) + AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_w) + AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_WRITE(i8039_T0_w) + AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(i8039_T1_r) ADDRESS_MAP_END |