summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/igs009.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/igs009.c')
-rw-r--r--src/mame/drivers/igs009.c28
1 files changed, 14 insertions, 14 deletions
diff --git a/src/mame/drivers/igs009.c b/src/mame/drivers/igs009.c
index 6180ad33491..5628d599733 100644
--- a/src/mame/drivers/igs009.c
+++ b/src/mame/drivers/igs009.c
@@ -89,6 +89,7 @@ public:
virtual void machine_reset();
virtual void video_start();
DECLARE_VIDEO_START(gp98);
+ UINT32 screen_update_jingbell(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
};
@@ -281,10 +282,9 @@ VIDEO_START_MEMBER(igs009_state,gp98)
}
-static SCREEN_UPDATE_IND16(jingbell)
+UINT32 igs009_state::screen_update_jingbell(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
- igs009_state *state = screen.machine().driver_data<igs009_state>();
- int layers_ctrl = state->m_video_enable ? -1 : 0;
+ int layers_ctrl = m_video_enable ? -1 : 0;
#ifdef MAME_DEBUG
if (screen.machine().input().code_pressed(KEYCODE_Z))
@@ -306,10 +306,10 @@ static SCREEN_UPDATE_IND16(jingbell)
for (i= 0;i < 0x80;i++)
{
- state->m_gp98_reel1_tilemap->set_scrolly(i, state->m_bg_scroll[i]*2);
- state->m_gp98_reel2_tilemap->set_scrolly(i, state->m_bg_scroll[i+0x80]*2);
- state->m_gp98_reel3_tilemap->set_scrolly(i, state->m_bg_scroll[i+0x100]*2);
- state->m_gp98_reel4_tilemap->set_scrolly(i, state->m_bg_scroll[i+0x180]*2);
+ m_gp98_reel1_tilemap->set_scrolly(i, m_bg_scroll[i]*2);
+ m_gp98_reel2_tilemap->set_scrolly(i, m_bg_scroll[i+0x80]*2);
+ m_gp98_reel3_tilemap->set_scrolly(i, m_bg_scroll[i+0x100]*2);
+ m_gp98_reel4_tilemap->set_scrolly(i, m_bg_scroll[i+0x180]*2);
}
@@ -318,7 +318,7 @@ static SCREEN_UPDATE_IND16(jingbell)
for (zz=0;zz<0x80-8;zz++) // -8 because of visible area (2*8 = 16)
{
rectangle clip;
- int rowenable = state->m_bg_scroll2[zz];
+ int rowenable = m_bg_scroll2[zz];
/* draw top of screen */
clip.set(visarea.min_x, visarea.max_x, startclipmin, startclipmin+2);
@@ -327,19 +327,19 @@ static SCREEN_UPDATE_IND16(jingbell)
if (rowenable==0)
{ // 0 and 1 are the same? or is there a global switchoff?
- state->m_gp98_reel1_tilemap->draw(bitmap, clip, 0,0);
+ m_gp98_reel1_tilemap->draw(bitmap, clip, 0,0);
}
else if (rowenable==1)
{
- state->m_gp98_reel2_tilemap->draw(bitmap, clip, 0,0);
+ m_gp98_reel2_tilemap->draw(bitmap, clip, 0,0);
}
else if (rowenable==2)
{
- state->m_gp98_reel3_tilemap->draw(bitmap, clip, 0,0);
+ m_gp98_reel3_tilemap->draw(bitmap, clip, 0,0);
}
else if (rowenable==3)
{
- state->m_gp98_reel4_tilemap->draw(bitmap, clip, 0,0);
+ m_gp98_reel4_tilemap->draw(bitmap, clip, 0,0);
}
@@ -350,7 +350,7 @@ static SCREEN_UPDATE_IND16(jingbell)
else bitmap.fill(get_black_pen(screen.machine()), cliprect);
- if (layers_ctrl & 2) state->m_fg_tilemap->draw(bitmap, cliprect, 0, 0);
+ if (layers_ctrl & 2) m_fg_tilemap->draw(bitmap, cliprect, 0, 0);
return 0;
}
@@ -756,7 +756,7 @@ static MACHINE_CONFIG_START( jingbell, igs009_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-16-1)
- MCFG_SCREEN_UPDATE_STATIC(jingbell)
+ MCFG_SCREEN_UPDATE_DRIVER(igs009_state, screen_update_jingbell)
MCFG_GFXDECODE(jingbell)
MCFG_PALETTE_LENGTH(0x400)