summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/go2000.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/go2000.c')
-rw-r--r--src/mame/drivers/go2000.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/mame/drivers/go2000.c b/src/mame/drivers/go2000.c
index 1f0b5d90a6c..890ae0747c4 100644
--- a/src/mame/drivers/go2000.c
+++ b/src/mame/drivers/go2000.c
@@ -53,6 +53,7 @@ public:
DECLARE_WRITE8_MEMBER(go2000_pcm_1_bankswitch_w);
virtual void machine_start();
virtual void video_start();
+ UINT32 screen_update_go2000(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
};
@@ -174,9 +175,8 @@ void go2000_state::video_start()
{
}
-static SCREEN_UPDATE_IND16(go2000)
+UINT32 go2000_state::screen_update_go2000(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
- go2000_state *state = screen.machine().driver_data<go2000_state>();
int x,y;
int count = 0;
@@ -185,8 +185,8 @@ static SCREEN_UPDATE_IND16(go2000)
{
for (y = 0; y < 32; y++)
{
- int tile = state->m_videoram[count];
- int attr = state->m_videoram2[count];
+ int tile = m_videoram[count];
+ int attr = m_videoram2[count];
drawgfx_opaque(bitmap, cliprect, screen.machine().gfx[0], tile, attr, 0, 0, x * 8, y * 8);
count++;
}
@@ -197,8 +197,8 @@ static SCREEN_UPDATE_IND16(go2000)
{
for (y = 0; y < 32; y++)
{
- int tile = state->m_videoram[count];
- int attr = state->m_videoram2[count];
+ int tile = m_videoram[count];
+ int attr = m_videoram2[count];
drawgfx_transpen(bitmap, cliprect, screen.machine().gfx[0], tile, attr, 0, 0, x * 8, y * 8, 0xf);
count++;
}
@@ -219,9 +219,9 @@ static SCREEN_UPDATE_IND16(go2000)
int dx, dy;
int flipx, y0;
- int y = state->m_videoram[offs + 0 + 0x00000 / 2];
- int x = state->m_videoram[offs + 1 + 0x00000 / 2];
- int dim = state->m_videoram2[offs + 0 + 0x00000 / 2];
+ int y = m_videoram[offs + 0 + 0x00000 / 2];
+ int x = m_videoram[offs + 1 + 0x00000 / 2];
+ int dim = m_videoram2[offs + 0 + 0x00000 / 2];
int bank = (x >> 12) & 0xf;
@@ -270,8 +270,8 @@ static SCREEN_UPDATE_IND16(go2000)
for (dx = 0; dx < dimx * 8; dx += 8)
{
int addr = (srcpg * 0x20 * 0x20) + ((srcx + tile_x) & 0x1f) * 0x20 + ((srcy + tile_y) & 0x1f);
- int tile = state->m_videoram[addr + 0x00000 / 2];
- int attr = state->m_videoram2[addr + 0x00000 / 2];
+ int tile = m_videoram[addr + 0x00000 / 2];
+ int attr = m_videoram2[addr + 0x00000 / 2];
int sx = x + dx;
int sy = (y + dy) & 0xff;
@@ -282,7 +282,7 @@ static SCREEN_UPDATE_IND16(go2000)
if (flipx)
tile_flipx = !tile_flipx;
- if (state->flip_screen())
+ if (flip_screen())
{
sx = max_x - sx;
sy = max_y - sy;
@@ -340,7 +340,7 @@ static MACHINE_CONFIG_START( go2000, go2000_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_UPDATE_STATIC(go2000)
+ MCFG_SCREEN_UPDATE_DRIVER(go2000_state, screen_update_go2000)
MCFG_PALETTE_LENGTH(0x800)