summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/megazone.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/video/megazone.c')
-rw-r--r--src/mame/video/megazone.c45
1 files changed, 22 insertions, 23 deletions
diff --git a/src/mame/video/megazone.c b/src/mame/video/megazone.c
index 94012039155..03fa8cc0771 100644
--- a/src/mame/video/megazone.c
+++ b/src/mame/video/megazone.c
@@ -110,23 +110,22 @@ void megazone_state::video_start()
}
-SCREEN_UPDATE_IND16( megazone )
+UINT32 megazone_state::screen_update_megazone(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
- megazone_state *state = screen.machine().driver_data<megazone_state>();
int offs;
int x, y;
/* for every character in the Video RAM */
- for (offs = state->m_videoram.bytes() - 1; offs >= 0; offs--)
+ for (offs = m_videoram.bytes() - 1; offs >= 0; offs--)
{
int sx, sy, flipx, flipy;
sx = offs % 32;
sy = offs / 32;
- flipx = state->m_colorram[offs] & (1 << 6);
- flipy = state->m_colorram[offs] & (1 << 5);
+ flipx = m_colorram[offs] & (1 << 6);
+ flipy = m_colorram[offs] & (1 << 5);
- if (state->m_flipscreen)
+ if (m_flipscreen)
{
sx = 31 - sx;
sy = 31 - sy;
@@ -134,9 +133,9 @@ SCREEN_UPDATE_IND16( megazone )
flipy = !flipy;
}
- drawgfx_opaque(*state->m_tmpbitmap, state->m_tmpbitmap->cliprect(), screen.machine().gfx[1],
- ((int)state->m_videoram[offs]) + ((state->m_colorram[offs] & (1 << 7) ? 256 : 0) ),
- (state->m_colorram[offs] & 0x0f) + 0x10,
+ drawgfx_opaque(*m_tmpbitmap, m_tmpbitmap->cliprect(), screen.machine().gfx[1],
+ ((int)m_videoram[offs]) + ((m_colorram[offs] & (1 << 7) ? 256 : 0) ),
+ (m_colorram[offs] & 0x0f) + 0x10,
flipx,flipy,
8*sx,8*sy);
}
@@ -146,26 +145,26 @@ SCREEN_UPDATE_IND16( megazone )
int scrollx;
int scrolly;
- if (state->m_flipscreen)
+ if (m_flipscreen)
{
- scrollx = *state->m_scrolly;
- scrolly = *state->m_scrollx;
+ scrollx = *m_scrolly;
+ scrolly = *m_scrollx;
}
else
{
- scrollx = - *state->m_scrolly + 4 * 8; // leave space for credit&score overlay
- scrolly = - *state->m_scrollx;
+ scrollx = - *m_scrolly + 4 * 8; // leave space for credit&score overlay
+ scrolly = - *m_scrollx;
}
- copyscrollbitmap(bitmap, *state->m_tmpbitmap, 1, &scrollx, 1, &scrolly, cliprect);
+ copyscrollbitmap(bitmap, *m_tmpbitmap, 1, &scrollx, 1, &scrolly, cliprect);
}
/* Draw the sprites. */
{
- UINT8 *spriteram = state->m_spriteram;
- for (offs = state->m_spriteram.bytes() - 4; offs >= 0; offs -= 4)
+ UINT8 *spriteram = m_spriteram;
+ for (offs = m_spriteram.bytes() - 4; offs >= 0; offs -= 4)
{
int sx = spriteram[offs + 3];
int sy = 255 - ((spriteram[offs + 1] + 16) & 0xff);
@@ -173,7 +172,7 @@ SCREEN_UPDATE_IND16( megazone )
int flipx = ~spriteram[offs + 0] & 0x40;
int flipy = spriteram[offs + 0] & 0x80;
- if (state->m_flipscreen)
+ if (m_flipscreen)
{
sx = sx - 11;
sy = sy + 2;
@@ -200,10 +199,10 @@ SCREEN_UPDATE_IND16( megazone )
sx = x;
sy = y;
- flipx = state->m_colorram2[offs] & (1 << 6);
- flipy = state->m_colorram2[offs] & (1 << 5);
+ flipx = m_colorram2[offs] & (1 << 6);
+ flipy = m_colorram2[offs] & (1 << 5);
- if (state->m_flipscreen)
+ if (m_flipscreen)
{
sx = 35 - sx;
sy = 31 - sy;
@@ -215,8 +214,8 @@ SCREEN_UPDATE_IND16( megazone )
drawgfx_opaque(bitmap, cliprect, screen.machine().gfx[1],
- ((int)state->m_videoram2[offs]) + ((state->m_colorram2[offs] & (1 << 7) ? 256 : 0) ),
- (state->m_colorram2[offs] & 0x0f) + 0x10,
+ ((int)m_videoram2[offs]) + ((m_colorram2[offs] & (1 << 7) ? 256 : 0) ),
+ (m_colorram2[offs] & 0x0f) + 0x10,
flipx,flipy,
8*sx,8*sy);
offs++;