diff options
author | Miodrag Milanovic <mmicko@gmail.com> | 2012-04-03 07:01:48 +0000 |
---|---|---|
committer | Miodrag Milanovic <mmicko@gmail.com> | 2012-04-03 07:01:48 +0000 |
commit | 3783cf95515491d961776534fb5937b76accd464 (patch) | |
tree | dc81476844b0b7308d5ecac1debbe6f1cc8c7443 /src/mame/drivers/koftball.c | |
parent | 03c583747e9e7475522d1a2ceb5a454a1bc4a5e4 (diff) |
MAME going modern part 3 (no whatsnew)
Diffstat (limited to 'src/mame/drivers/koftball.c')
-rw-r--r-- | src/mame/drivers/koftball.c | 77 |
1 files changed, 39 insertions, 38 deletions
diff --git a/src/mame/drivers/koftball.c b/src/mame/drivers/koftball.c index 5c624556306..2256a449be8 100644 --- a/src/mame/drivers/koftball.c +++ b/src/mame/drivers/koftball.c @@ -51,6 +51,14 @@ public: UINT16 m_prot_data; required_device<cpu_device> m_maincpu; + DECLARE_WRITE16_MEMBER(bmc_RAMDAC_offset_w); + DECLARE_WRITE16_MEMBER(bmc_RAMDAC_color_w); + DECLARE_READ16_MEMBER(bmc_RAMDAC_color_r); + DECLARE_READ16_MEMBER(random_number_r); + DECLARE_READ16_MEMBER(prot_r); + DECLARE_WRITE16_MEMBER(prot_w); + DECLARE_WRITE16_MEMBER(bmc_1_videoram_w); + DECLARE_WRITE16_MEMBER(bmc_2_videoram_w); }; @@ -93,36 +101,32 @@ static SCREEN_UPDATE_IND16( koftball ) return 0; } -static WRITE16_HANDLER( bmc_RAMDAC_offset_w ) +WRITE16_MEMBER(koftball_state::bmc_RAMDAC_offset_w) { - koftball_state *state = space->machine().driver_data<koftball_state>(); - state->m_clr_offset=data*3; + m_clr_offset=data*3; } -static WRITE16_HANDLER( bmc_RAMDAC_color_w ) +WRITE16_MEMBER(koftball_state::bmc_RAMDAC_color_w) { - koftball_state *state = space->machine().driver_data<koftball_state>(); - state->m_bmc_colorram[state->m_clr_offset]=data; - palette_set_color_rgb(space->machine(),state->m_clr_offset/3,pal6bit(state->m_bmc_colorram[(state->m_clr_offset/3)*3]),pal6bit(state->m_bmc_colorram[(state->m_clr_offset/3)*3+1]),pal6bit(state->m_bmc_colorram[(state->m_clr_offset/3)*3+2])); - state->m_clr_offset=(state->m_clr_offset+1)%768; + m_bmc_colorram[m_clr_offset]=data; + palette_set_color_rgb(machine(),m_clr_offset/3,pal6bit(m_bmc_colorram[(m_clr_offset/3)*3]),pal6bit(m_bmc_colorram[(m_clr_offset/3)*3+1]),pal6bit(m_bmc_colorram[(m_clr_offset/3)*3+2])); + m_clr_offset=(m_clr_offset+1)%768; } -static READ16_HANDLER( bmc_RAMDAC_color_r ) +READ16_MEMBER(koftball_state::bmc_RAMDAC_color_r) { - koftball_state *state = space->machine().driver_data<koftball_state>(); - return state->m_bmc_colorram[state->m_clr_offset]; + return m_bmc_colorram[m_clr_offset]; } -static READ16_HANDLER(random_number_r) +READ16_MEMBER(koftball_state::random_number_r) { - return space->machine().rand(); + return machine().rand(); } -static READ16_HANDLER(prot_r) +READ16_MEMBER(koftball_state::prot_r) { - koftball_state *state = space->machine().driver_data<koftball_state>(); - switch(state->m_prot_data) + switch(m_prot_data) { case 0x0000: return 0x0d00; case 0xff00: return 0x8d00; @@ -130,56 +134,53 @@ static READ16_HANDLER(prot_r) case 0x8000: return 0x0f0f; } - logerror("unk prot r %x %x\n",state->m_prot_data, cpu_get_previouspc(&space->device())); - return space->machine().rand(); + logerror("unk prot r %x %x\n",m_prot_data, cpu_get_previouspc(&space.device())); + return machine().rand(); } -static WRITE16_HANDLER(prot_w) +WRITE16_MEMBER(koftball_state::prot_w) { - koftball_state *state = space->machine().driver_data<koftball_state>(); - COMBINE_DATA(&state->m_prot_data); + COMBINE_DATA(&m_prot_data); } -static WRITE16_HANDLER(bmc_1_videoram_w) +WRITE16_MEMBER(koftball_state::bmc_1_videoram_w) { - koftball_state *state = space->machine().driver_data<koftball_state>(); - COMBINE_DATA(&state->m_bmc_1_videoram[offset]); - state->m_tilemap_1->mark_tile_dirty(offset); + COMBINE_DATA(&m_bmc_1_videoram[offset]); + m_tilemap_1->mark_tile_dirty(offset); } -static WRITE16_HANDLER(bmc_2_videoram_w) +WRITE16_MEMBER(koftball_state::bmc_2_videoram_w) { - koftball_state *state = space->machine().driver_data<koftball_state>(); - COMBINE_DATA(&state->m_bmc_2_videoram[offset]); - state->m_tilemap_2->mark_tile_dirty(offset); + COMBINE_DATA(&m_bmc_2_videoram[offset]); + m_tilemap_2->mark_tile_dirty(offset); } static ADDRESS_MAP_START( koftball_mem, AS_PROGRAM, 16, koftball_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x220000, 0x22ffff) AM_RAM AM_BASE(m_main_ram) - AM_RANGE(0x260000, 0x260fff) AM_WRITE_LEGACY(bmc_1_videoram_w) AM_BASE(m_bmc_1_videoram) - AM_RANGE(0x261000, 0x261fff) AM_WRITE_LEGACY(bmc_2_videoram_w) AM_BASE(m_bmc_2_videoram) + AM_RANGE(0x260000, 0x260fff) AM_WRITE(bmc_1_videoram_w) AM_BASE(m_bmc_1_videoram) + AM_RANGE(0x261000, 0x261fff) AM_WRITE(bmc_2_videoram_w) AM_BASE(m_bmc_2_videoram) AM_RANGE(0x262000, 0x26ffff) AM_RAM AM_RANGE(0x280000, 0x28ffff) AM_RAM /* unused ? */ AM_RANGE(0x2a0000, 0x2a001f) AM_WRITENOP - AM_RANGE(0x2a0000, 0x2a001f) AM_READ_LEGACY(random_number_r) - AM_RANGE(0x2b0000, 0x2b0003) AM_READ_LEGACY(random_number_r) - AM_RANGE(0x2d8000, 0x2d8001) AM_READ_LEGACY(random_number_r) + AM_RANGE(0x2a0000, 0x2a001f) AM_READ(random_number_r) + AM_RANGE(0x2b0000, 0x2b0003) AM_READ(random_number_r) + AM_RANGE(0x2d8000, 0x2d8001) AM_READ(random_number_r) /*sound chip or mcu comm ? maybe just i/o (offset 0xe=lamps?)*/ AM_RANGE(0x2da000, 0x2da001) AM_WRITENOP /* offset ? */ AM_RANGE(0x2da002, 0x2da003) AM_WRITENOP /* data ? */ - AM_RANGE(0x2db000, 0x2db001) AM_WRITE_LEGACY(bmc_RAMDAC_offset_w) - AM_RANGE(0x2db002, 0x2db003) AM_READWRITE_LEGACY(bmc_RAMDAC_color_r, bmc_RAMDAC_color_w) + AM_RANGE(0x2db000, 0x2db001) AM_WRITE(bmc_RAMDAC_offset_w) + AM_RANGE(0x2db002, 0x2db003) AM_READWRITE(bmc_RAMDAC_color_r, bmc_RAMDAC_color_w) AM_RANGE(0x2db004, 0x2db005) AM_WRITENOP AM_RANGE(0x2dc000, 0x2dc001) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0xff00) AM_RANGE(0x2f0000, 0x2f0003) AM_READ_PORT("INPUTS") AM_RANGE(0x300000, 0x300001) AM_WRITENOP AM_RANGE(0x320000, 0x320001) AM_WRITENOP - AM_RANGE(0x340000, 0x340001) AM_READ_LEGACY(prot_r) - AM_RANGE(0x360000, 0x360001) AM_WRITE_LEGACY(prot_w) + AM_RANGE(0x340000, 0x340001) AM_READ(prot_r) + AM_RANGE(0x360000, 0x360001) AM_WRITE(prot_w) ADDRESS_MAP_END |