megasys1 mosaic iq-style
This commit is contained in:
parent
6a86d841c0
commit
a70eaf8b50
|
@ -2899,7 +2899,8 @@ static inline void draw_16x16_priority_sprite(INT32 code, INT32 color, INT32 sx,
|
|||
|
||||
UINT8 *gfx = DrvGfxROM[3] + (code * 0x100);
|
||||
|
||||
INT32 flip = (flipy ? 0xf0 : 0) | (flipx ? 0x0f : 0);
|
||||
flipy = (flipy) ? 0x0f : 0;
|
||||
flipx = (flipx) ? 0x0f : 0;
|
||||
|
||||
color = (color * 16) + layer_color_config[3];
|
||||
|
||||
|
@ -2912,9 +2913,8 @@ static inline void draw_16x16_priority_sprite(INT32 code, INT32 color, INT32 sx,
|
|||
{
|
||||
if (sx < 0 || sy < 0 || sx >= nScreenWidth || sy >= nScreenHeight) continue;
|
||||
|
||||
INT32 pxl = gfx[((y*16)+x)^flip];
|
||||
if (mosaic) // ignore the warnings :) -dink
|
||||
pxl = gfx[((y*16+y^mosaic*16)+(mosaic&x)+(x^mosaic&mosaic))^flip];
|
||||
INT32 pxl = gfx[(((y ^ flipy) & ~mosaic)*16) + ((x ^ flipx) & ~mosaic)];
|
||||
|
||||
if (pxl != 0x0f) {
|
||||
if ((priority & (1 << (prio[x] & 0x1f))) == 0 && prio[x] < 0x80) {
|
||||
dest[x] = pxl + color;
|
||||
|
@ -2957,6 +2957,7 @@ static void System1A_draw_sprites()
|
|||
INT32 flipy = attr & 0x80;
|
||||
INT32 pri = (attr & 0x08) ? 0x0c : 0x0a;
|
||||
INT32 mosaic = (attr & 0x0f00)>>8;
|
||||
//INT32 mossol = (attr & 0x1000)>>8; //not yet
|
||||
code = (code & 0xfff) + ((sprite_bank & 1) << 12);
|
||||
if (DrvTransTab[3][code]) continue;
|
||||
|
||||
|
|
Loading…
Reference in New Issue