mirror of
https://github.com/holub/mame
synced 2025-05-04 05:23:22 +03:00
01670: kungfum, kungfud, spartanx, kungfub, kungfub2: Main character sprite not hidden at end of level.
01686: ldrun3, ldrun3jp: visible area problem
This commit is contained in:
parent
830c238cf0
commit
c000fcf52f
@ -281,7 +281,7 @@ static ADDRESS_MAP_START( ldrun3_writeport, ADDRESS_SPACE_IO, 8 )
|
|||||||
AM_RANGE(0x00, 0x00) AM_WRITE(irem_sound_cmd_w)
|
AM_RANGE(0x00, 0x00) AM_WRITE(irem_sound_cmd_w)
|
||||||
AM_RANGE(0x01, 0x01) AM_WRITE(m62_flipscreen_w) /* + coin counters */
|
AM_RANGE(0x01, 0x01) AM_WRITE(m62_flipscreen_w) /* + coin counters */
|
||||||
AM_RANGE(0x80, 0x80) AM_WRITE(m62_vscroll_low_w)
|
AM_RANGE(0x80, 0x80) AM_WRITE(m62_vscroll_low_w)
|
||||||
/* 0x81 used too, don't know what for */
|
AM_RANGE(0x81, 0x81) AM_WRITE(ldrun3_topbottom_mask_w)
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
|
|
||||||
@ -1391,7 +1391,7 @@ static MACHINE_DRIVER_START( ldrun3 )
|
|||||||
/* video hardware */
|
/* video hardware */
|
||||||
MDRV_GFXDECODE(ldrun3)
|
MDRV_GFXDECODE(ldrun3)
|
||||||
MDRV_VIDEO_START(ldrun2)
|
MDRV_VIDEO_START(ldrun2)
|
||||||
MDRV_VIDEO_UPDATE(ldrun)
|
MDRV_VIDEO_UPDATE(ldrun3)
|
||||||
MACHINE_DRIVER_END
|
MACHINE_DRIVER_END
|
||||||
|
|
||||||
|
|
||||||
|
@ -18,6 +18,7 @@ WRITE8_HANDLER( m62_hscroll_low_w );
|
|||||||
WRITE8_HANDLER( m62_hscroll_high_w );
|
WRITE8_HANDLER( m62_hscroll_high_w );
|
||||||
WRITE8_HANDLER( m62_vscroll_low_w );
|
WRITE8_HANDLER( m62_vscroll_low_w );
|
||||||
WRITE8_HANDLER( m62_vscroll_high_w );
|
WRITE8_HANDLER( m62_vscroll_high_w );
|
||||||
|
WRITE8_HANDLER( ldrun3_topbottom_mask_w );
|
||||||
extern UINT8 *m62_tileram;
|
extern UINT8 *m62_tileram;
|
||||||
extern UINT8 *m62_textram;
|
extern UINT8 *m62_textram;
|
||||||
|
|
||||||
@ -30,6 +31,8 @@ VIDEO_UPDATE( ldrun );
|
|||||||
|
|
||||||
VIDEO_START( ldrun2 );
|
VIDEO_START( ldrun2 );
|
||||||
|
|
||||||
|
VIDEO_UPDATE( ldrun3 );
|
||||||
|
|
||||||
VIDEO_START( battroad );
|
VIDEO_START( battroad );
|
||||||
VIDEO_UPDATE( battroad );
|
VIDEO_UPDATE( battroad );
|
||||||
|
|
||||||
|
@ -28,6 +28,8 @@ static const UINT8 *sprite_height_prom;
|
|||||||
static INT32 m62_background_hscroll;
|
static INT32 m62_background_hscroll;
|
||||||
static INT32 m62_background_vscroll;
|
static INT32 m62_background_vscroll;
|
||||||
|
|
||||||
|
static int ldrun3_topbottom_mask;
|
||||||
|
|
||||||
static UINT8 *irem_textram;
|
static UINT8 *irem_textram;
|
||||||
static size_t irem_textram_size;
|
static size_t irem_textram_size;
|
||||||
|
|
||||||
@ -406,9 +408,6 @@ static void m62_start( tile_get_info_func tile_get_info, int rows, int cols, int
|
|||||||
m62_background_hscroll = 0;
|
m62_background_hscroll = 0;
|
||||||
m62_background_vscroll = 0;
|
m62_background_vscroll = 0;
|
||||||
|
|
||||||
tilemap_set_transmask(m62_background,0,0xffff,0x0000); /* split type 0 is totally transparent in front half */
|
|
||||||
tilemap_set_transmask(m62_background,1,0x0001,0xfffe); /* split type 1 has pen 0 transparent in front half */
|
|
||||||
|
|
||||||
register_savestate();
|
register_savestate();
|
||||||
|
|
||||||
if( rows != 0 )
|
if( rows != 0 )
|
||||||
@ -458,14 +457,19 @@ static TILE_GET_INFO( get_kungfum_bg_tile_info )
|
|||||||
/* is the following right? */
|
/* is the following right? */
|
||||||
if( ( tile_index / 64 ) < 6 || ( ( color & 0x1f ) >> 1 ) > 0x0c )
|
if( ( tile_index / 64 ) < 6 || ( ( color & 0x1f ) >> 1 ) > 0x0c )
|
||||||
{
|
{
|
||||||
tileinfo->group = 1;
|
tileinfo->category = 1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
tileinfo->group = 0;
|
tileinfo->category = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( kungfum )
|
||||||
|
{
|
||||||
|
m62_start( get_kungfum_bg_tile_info, 32, 0, 8, 8, 64, 32 );
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( kungfum )
|
VIDEO_UPDATE( kungfum )
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
@ -477,16 +481,12 @@ VIDEO_UPDATE( kungfum )
|
|||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, i, m62_background_hscroll );
|
tilemap_set_scrollx( m62_background, i, m62_background_hscroll );
|
||||||
}
|
}
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER1, 0 );
|
tilemap_draw( bitmap, cliprect, m62_background, 0, 0 );
|
||||||
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER0, 0 );
|
tilemap_draw( bitmap, cliprect, m62_background, 1, 0 );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( kungfum )
|
|
||||||
{
|
|
||||||
m62_start( get_kungfum_bg_tile_info, 32, 0, 8, 8, 64, 32 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static TILE_GET_INFO( get_ldrun_bg_tile_info )
|
static TILE_GET_INFO( get_ldrun_bg_tile_info )
|
||||||
@ -512,6 +512,13 @@ static TILE_GET_INFO( get_ldrun_bg_tile_info )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( ldrun )
|
||||||
|
{
|
||||||
|
m62_start( get_ldrun_bg_tile_info, 1, 1, 8, 8, 64, 32 );
|
||||||
|
tilemap_set_transmask(m62_background,0,0xffff,0x0000); /* split type 0 is totally transparent in front half */
|
||||||
|
tilemap_set_transmask(m62_background,1,0x0001,0xfffe); /* split type 1 has pen 0 transparent in front half */
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( ldrun )
|
VIDEO_UPDATE( ldrun )
|
||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
||||||
@ -524,11 +531,6 @@ VIDEO_UPDATE( ldrun )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( ldrun )
|
|
||||||
{
|
|
||||||
m62_start( get_ldrun_bg_tile_info, 1, 1, 8, 8, 64, 32 );
|
|
||||||
}
|
|
||||||
|
|
||||||
static TILE_GET_INFO( get_ldrun2_bg_tile_info )
|
static TILE_GET_INFO( get_ldrun2_bg_tile_info )
|
||||||
{
|
{
|
||||||
int code;
|
int code;
|
||||||
@ -555,8 +557,38 @@ static TILE_GET_INFO( get_ldrun2_bg_tile_info )
|
|||||||
VIDEO_START( ldrun2 )
|
VIDEO_START( ldrun2 )
|
||||||
{
|
{
|
||||||
m62_start( get_ldrun2_bg_tile_info, 1, 1, 8, 8, 64, 32 );
|
m62_start( get_ldrun2_bg_tile_info, 1, 1, 8, 8, 64, 32 );
|
||||||
|
tilemap_set_transmask(m62_background,0,0xffff,0x0000); /* split type 0 is totally transparent in front half */
|
||||||
|
tilemap_set_transmask(m62_background,1,0x0001,0xfffe); /* split type 1 has pen 0 transparent in front half */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
WRITE8_HANDLER( ldrun3_topbottom_mask_w )
|
||||||
|
{
|
||||||
|
ldrun3_topbottom_mask = data & 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
VIDEO_UPDATE( ldrun3 )
|
||||||
|
{
|
||||||
|
VIDEO_UPDATE_CALL(ldrun);
|
||||||
|
|
||||||
|
if (ldrun3_topbottom_mask)
|
||||||
|
{
|
||||||
|
rectangle my_cliprect = *cliprect;
|
||||||
|
|
||||||
|
my_cliprect.min_y = 0*8;
|
||||||
|
my_cliprect.max_y = 1*8-1;
|
||||||
|
fillbitmap(bitmap,get_black_pen(screen->machine),&my_cliprect);
|
||||||
|
|
||||||
|
my_cliprect.min_y = 31*8;
|
||||||
|
my_cliprect.max_y = 32*8-1;
|
||||||
|
fillbitmap(bitmap,get_black_pen(screen->machine),&my_cliprect);
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static TILE_GET_INFO( get_battroad_bg_tile_info )
|
static TILE_GET_INFO( get_battroad_bg_tile_info )
|
||||||
{
|
{
|
||||||
int code;
|
int code;
|
||||||
@ -589,6 +621,14 @@ static TILE_GET_INFO( get_battroad_fg_tile_info )
|
|||||||
SET_TILE_INFO( 2, code | ( ( color & 0x40 ) << 3 ) | ( ( color & 0x10 ) << 4 ), color & 0x0f, 0 );
|
SET_TILE_INFO( 2, code | ( ( color & 0x40 ) << 3 ) | ( ( color & 0x10 ) << 4 ), color & 0x0f, 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( battroad )
|
||||||
|
{
|
||||||
|
m62_start( get_battroad_bg_tile_info, 1, 1, 8, 8, 64, 32 );
|
||||||
|
m62_textlayer( get_battroad_fg_tile_info, 1, 1, 8, 8, 32, 32 );
|
||||||
|
tilemap_set_transmask(m62_background,0,0xffff,0x0000); /* split type 0 is totally transparent in front half */
|
||||||
|
tilemap_set_transmask(m62_background,1,0x0001,0xfffe); /* split type 1 has pen 0 transparent in front half */
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( battroad )
|
VIDEO_UPDATE( battroad )
|
||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
||||||
@ -605,12 +645,6 @@ VIDEO_UPDATE( battroad )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( battroad )
|
|
||||||
{
|
|
||||||
m62_start( get_battroad_bg_tile_info, 1, 1, 8, 8, 64, 32 );
|
|
||||||
m62_textlayer( get_battroad_fg_tile_info, 1, 1, 8, 8, 32, 32 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* almost identical but scrolling background, more characters, */
|
/* almost identical but scrolling background, more characters, */
|
||||||
/* no char x flip, and more sprites */
|
/* no char x flip, and more sprites */
|
||||||
@ -623,20 +657,20 @@ static TILE_GET_INFO( get_ldrun4_bg_tile_info )
|
|||||||
SET_TILE_INFO( 0, code | ( ( color & 0xc0 ) << 2 ) | ( ( color & 0x20 ) << 5 ), color & 0x1f, 0 );
|
SET_TILE_INFO( 0, code | ( ( color & 0xc0 ) << 2 ) | ( ( color & 0x20 ) << 5 ), color & 0x1f, 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( ldrun4 )
|
||||||
|
{
|
||||||
|
m62_start( get_ldrun4_bg_tile_info, 1, 0, 8, 8, 64, 32 );
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( ldrun4 )
|
VIDEO_UPDATE( ldrun4 )
|
||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
||||||
|
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_OPAQUE, 0 );
|
tilemap_draw( bitmap, cliprect, m62_background, 0, 0 );
|
||||||
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( ldrun4 )
|
|
||||||
{
|
|
||||||
m62_start( get_ldrun4_bg_tile_info, 1, 0, 8, 8, 64, 32 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static TILE_GET_INFO( get_lotlot_bg_tile_info )
|
static TILE_GET_INFO( get_lotlot_bg_tile_info )
|
||||||
{
|
{
|
||||||
@ -662,6 +696,12 @@ static TILE_GET_INFO( get_lotlot_fg_tile_info )
|
|||||||
SET_TILE_INFO( 2, code | ( ( color & 0xc0 ) << 2 ), color & 0x1f, 0 );
|
SET_TILE_INFO( 2, code | ( ( color & 0xc0 ) << 2 ), color & 0x1f, 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( lotlot )
|
||||||
|
{
|
||||||
|
m62_start( get_lotlot_bg_tile_info, 1, 1, 12, 10, 32, 64 );
|
||||||
|
m62_textlayer( get_lotlot_fg_tile_info, 1, 1, 12, 10, 32, 64 );
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( lotlot )
|
VIDEO_UPDATE( lotlot )
|
||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll - 64 );
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll - 64 );
|
||||||
@ -670,18 +710,12 @@ VIDEO_UPDATE( lotlot )
|
|||||||
tilemap_set_scrolly( m62_foreground, 0, 32 );
|
tilemap_set_scrolly( m62_foreground, 0, 32 );
|
||||||
tilemap_set_transparent_pen( m62_foreground, 0 );
|
tilemap_set_transparent_pen( m62_foreground, 0 );
|
||||||
|
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_OPAQUE, 0 );
|
tilemap_draw( bitmap, cliprect, m62_background, 0, 0 );
|
||||||
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
||||||
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( lotlot )
|
|
||||||
{
|
|
||||||
m62_start( get_lotlot_bg_tile_info, 1, 1, 12, 10, 32, 64 );
|
|
||||||
m62_textlayer( get_lotlot_fg_tile_info, 1, 1, 12, 10, 32, 64 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
WRITE8_HANDLER( kidniki_text_vscroll_low_w )
|
WRITE8_HANDLER( kidniki_text_vscroll_low_w )
|
||||||
{
|
{
|
||||||
@ -721,20 +755,6 @@ static TILE_GET_INFO( get_kidniki_fg_tile_info )
|
|||||||
SET_TILE_INFO( 2, code | ( ( color & 0xc0 ) << 2 ), color & 0x1f, 0 );
|
SET_TILE_INFO( 2, code | ( ( color & 0xc0 ) << 2 ), color & 0x1f, 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( kidniki )
|
|
||||||
{
|
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
|
||||||
tilemap_set_scrollx( m62_foreground, 0, -64 );
|
|
||||||
tilemap_set_scrolly( m62_foreground, 0, kidniki_text_vscroll + 128 );
|
|
||||||
tilemap_set_transparent_pen( m62_foreground, 0 );
|
|
||||||
|
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER1, 0 );
|
|
||||||
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER0, 0 );
|
|
||||||
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
VIDEO_START( kidniki )
|
VIDEO_START( kidniki )
|
||||||
{
|
{
|
||||||
m62_background = tilemap_create( get_kidniki_bg_tile_info, tilemap_scan_rows, 8, 8, 64, 32 );
|
m62_background = tilemap_create( get_kidniki_bg_tile_info, tilemap_scan_rows, 8, 8, 64, 32 );
|
||||||
@ -750,6 +770,20 @@ VIDEO_START( kidniki )
|
|||||||
m62_textlayer( get_kidniki_fg_tile_info, 1, 1, 12, 8, 32, 64 );
|
m62_textlayer( get_kidniki_fg_tile_info, 1, 1, 12, 8, 32, 64 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_UPDATE( kidniki )
|
||||||
|
{
|
||||||
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
||||||
|
tilemap_set_scrollx( m62_foreground, 0, -64 );
|
||||||
|
tilemap_set_scrolly( m62_foreground, 0, kidniki_text_vscroll + 128 );
|
||||||
|
tilemap_set_transparent_pen( m62_foreground, 0 );
|
||||||
|
|
||||||
|
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER1, 0 );
|
||||||
|
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
||||||
|
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER0, 0 );
|
||||||
|
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
WRITE8_HANDLER( spelunkr_palbank_w )
|
WRITE8_HANDLER( spelunkr_palbank_w )
|
||||||
{
|
{
|
||||||
@ -780,6 +814,12 @@ if (color&0xe0) popmessage("fg tilemap %x %x",tile_index,color&0xe0);
|
|||||||
SET_TILE_INFO( 2, code | ( ( color & 0x10 ) << 4 ), ( color & 0x0f ) | ( spelunkr_palbank << 4 ), 0 );
|
SET_TILE_INFO( 2, code | ( ( color & 0x10 ) << 4 ), ( color & 0x0f ) | ( spelunkr_palbank << 4 ), 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( spelunkr )
|
||||||
|
{
|
||||||
|
m62_start( get_spelunkr_bg_tile_info, 1, 1, 8, 8, 64, 64 );
|
||||||
|
m62_textlayer( get_spelunkr_fg_tile_info, 1, 1, 12, 8, 32, 32 );
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( spelunkr )
|
VIDEO_UPDATE( spelunkr )
|
||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
||||||
@ -788,18 +828,12 @@ VIDEO_UPDATE( spelunkr )
|
|||||||
tilemap_set_scrolly( m62_foreground, 0, 0 );
|
tilemap_set_scrolly( m62_foreground, 0, 0 );
|
||||||
tilemap_set_transparent_pen( m62_foreground, 0 );
|
tilemap_set_transparent_pen( m62_foreground, 0 );
|
||||||
|
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_OPAQUE, 0 );
|
tilemap_draw( bitmap, cliprect, m62_background, 0, 0 );
|
||||||
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
||||||
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( spelunkr )
|
|
||||||
{
|
|
||||||
m62_start( get_spelunkr_bg_tile_info, 1, 1, 8, 8, 64, 64 );
|
|
||||||
m62_textlayer( get_spelunkr_fg_tile_info, 1, 1, 12, 8, 32, 32 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
WRITE8_HANDLER( spelunk2_gfxport_w )
|
WRITE8_HANDLER( spelunk2_gfxport_w )
|
||||||
{
|
{
|
||||||
@ -822,6 +856,12 @@ static TILE_GET_INFO( get_spelunk2_bg_tile_info )
|
|||||||
SET_TILE_INFO( 0, code | ( ( color & 0xf0 ) << 4 ), ( color & 0x0f ) | ( spelunkr_palbank << 4 ), 0 );
|
SET_TILE_INFO( 0, code | ( ( color & 0xf0 ) << 4 ), ( color & 0x0f ) | ( spelunkr_palbank << 4 ), 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( spelunk2 )
|
||||||
|
{
|
||||||
|
m62_start( get_spelunk2_bg_tile_info, 1, 1, 8, 8, 64, 64 );
|
||||||
|
m62_textlayer( get_spelunkr_fg_tile_info, 1, 1, 12, 8, 32, 32 );
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( spelunk2 )
|
VIDEO_UPDATE( spelunk2 )
|
||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll - 1);
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll - 1);
|
||||||
@ -830,18 +870,12 @@ VIDEO_UPDATE( spelunk2 )
|
|||||||
tilemap_set_scrolly( m62_foreground, 0, 0 );
|
tilemap_set_scrolly( m62_foreground, 0, 0 );
|
||||||
tilemap_set_transparent_pen( m62_foreground, 0 );
|
tilemap_set_transparent_pen( m62_foreground, 0 );
|
||||||
|
|
||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_OPAQUE, 0 );
|
tilemap_draw( bitmap, cliprect, m62_background, 0, 0 );
|
||||||
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
draw_sprites( screen->machine, bitmap, cliprect, 0x1f, 0x00, 0x00 );
|
||||||
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
tilemap_draw( bitmap, cliprect, m62_foreground, 0, 0 );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( spelunk2 )
|
|
||||||
{
|
|
||||||
m62_start( get_spelunk2_bg_tile_info, 1, 1, 8, 8, 64, 64 );
|
|
||||||
m62_textlayer( get_spelunkr_fg_tile_info, 1, 1, 12, 8, 32, 32 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static TILE_GET_INFO( get_youjyudn_bg_tile_info )
|
static TILE_GET_INFO( get_youjyudn_bg_tile_info )
|
||||||
{
|
{
|
||||||
@ -869,6 +903,14 @@ static TILE_GET_INFO( get_youjyudn_fg_tile_info )
|
|||||||
SET_TILE_INFO( 2, code | ( ( color & 0xc0 ) << 2 ), ( color & 0x0f ), 0 );
|
SET_TILE_INFO( 2, code | ( ( color & 0xc0 ) << 2 ), ( color & 0x0f ), 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( youjyudn )
|
||||||
|
{
|
||||||
|
m62_start( get_youjyudn_bg_tile_info, 1, 0, 8, 16, 64, 16 );
|
||||||
|
m62_textlayer( get_youjyudn_fg_tile_info, 1, 1, 12, 8, 32, 32 );
|
||||||
|
tilemap_set_transmask(m62_background,0,0xffff,0x0000); /* split type 0 is totally transparent in front half */
|
||||||
|
tilemap_set_transmask(m62_background,1,0x0001,0xfffe); /* split type 1 has pen 0 transparent in front half */
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( youjyudn )
|
VIDEO_UPDATE( youjyudn )
|
||||||
{
|
{
|
||||||
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
tilemap_set_scrollx( m62_background, 0, m62_background_hscroll );
|
||||||
@ -883,12 +925,6 @@ VIDEO_UPDATE( youjyudn )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( youjyudn )
|
|
||||||
{
|
|
||||||
m62_start( get_youjyudn_bg_tile_info, 1, 0, 8, 16, 64, 16 );
|
|
||||||
m62_textlayer( get_youjyudn_fg_tile_info, 1, 1, 12, 8, 32, 32 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
WRITE8_HANDLER( horizon_scrollram_w )
|
WRITE8_HANDLER( horizon_scrollram_w )
|
||||||
{
|
{
|
||||||
@ -912,6 +948,13 @@ static TILE_GET_INFO( get_horizon_bg_tile_info )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( horizon )
|
||||||
|
{
|
||||||
|
m62_start( get_horizon_bg_tile_info, 32, 0, 8, 8, 64, 32 );
|
||||||
|
tilemap_set_transmask(m62_background,0,0xffff,0x0000); /* split type 0 is totally transparent in front half */
|
||||||
|
tilemap_set_transmask(m62_background,1,0x0001,0xfffe); /* split type 1 has pen 0 transparent in front half */
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_UPDATE( horizon )
|
VIDEO_UPDATE( horizon )
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
@ -924,8 +967,3 @@ VIDEO_UPDATE( horizon )
|
|||||||
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER0, 0 );
|
tilemap_draw( bitmap, cliprect, m62_background, TILEMAP_DRAW_LAYER0, 0 );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( horizon )
|
|
||||||
{
|
|
||||||
m62_start( get_horizon_bg_tile_info, 32, 0, 8, 8, 64, 32 );
|
|
||||||
}
|
|
||||||
|
Loading…
Reference in New Issue
Block a user