mirror of
https://github.com/holub/mame
synced 2025-05-23 14:19:01 +03:00
02641: strider and clones: Problem with graphics layer
This commit is contained in:
parent
0801d1254c
commit
2e97ff9c21
@ -44,8 +44,6 @@
|
|||||||
This special mode can be used to save memory in games that require several different
|
This special mode can be used to save memory in games that require several different
|
||||||
handlings of the same ROM data (e.g. metro.c can use both 4bpp and 8bpp tiles, and both
|
handlings of the same ROM data (e.g. metro.c can use both 4bpp and 8bpp tiles, and both
|
||||||
8x8 and 16x16; cps.c has 8x8, 16x16 and 32x32 tiles all fetched from the same ROMs).
|
8x8 and 16x16; cps.c has 8x8, 16x16 and 32x32 tiles all fetched from the same ROMs).
|
||||||
Note, however, that performance will suffer in rotated games, since the gfx data will
|
|
||||||
not be prerotated and will rely on GFX_SWAPXY.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
enum
|
enum
|
||||||
|
@ -1945,6 +1945,7 @@ static TILEMAP_MAPPER( tilemap2_scan )
|
|||||||
return (row & 0x07) + ((col & 0x3f) << 3) + ((row & 0x38) << 6);
|
return (row & 0x07) + ((col & 0x3f) << 3) + ((row & 0x38) << 6);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static UINT8 empty_tile8x8[8*8];
|
||||||
static UINT8 empty_tile[32*32/2];
|
static UINT8 empty_tile[32*32/2];
|
||||||
|
|
||||||
static TILE_GET_INFO( get_tile0_info )
|
static TILE_GET_INFO( get_tile0_info )
|
||||||
@ -1970,7 +1971,7 @@ static TILE_GET_INFO( get_tile0_info )
|
|||||||
// for out of range tiles, switch to fully transparent data
|
// for out of range tiles, switch to fully transparent data
|
||||||
// (but still call SET_TILE_INFO, otherwise problems might occur on boot e.g. unsquad)
|
// (but still call SET_TILE_INFO, otherwise problems might occur on boot e.g. unsquad)
|
||||||
if (code == -1)
|
if (code == -1)
|
||||||
tileinfo->pen_data = empty_tile;
|
tileinfo->pen_data = empty_tile8x8;
|
||||||
}
|
}
|
||||||
|
|
||||||
static TILE_GET_INFO( get_tile1_info )
|
static TILE_GET_INFO( get_tile1_info )
|
||||||
@ -2046,7 +2047,8 @@ static VIDEO_START( cps )
|
|||||||
/* front masks will change at runtime to handle sprite occluding */
|
/* front masks will change at runtime to handle sprite occluding */
|
||||||
cps1_update_transmasks();
|
cps1_update_transmasks();
|
||||||
|
|
||||||
memset(empty_tile,0xff,sizeof(empty_tile));
|
memset(empty_tile8x8,0x0f,sizeof(empty_tile8x8));
|
||||||
|
memset(empty_tile,0xff,sizeof(empty_tile)); // 16x16 and 32x32 use packed graphics, 8x8 does not
|
||||||
|
|
||||||
for (i = 0;i < cps1_palette_entries*16;i++)
|
for (i = 0;i < cps1_palette_entries*16;i++)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user