summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/taito_helper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/video/taito_helper.cpp')
-rw-r--r--src/mame/video/taito_helper.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/mame/video/taito_helper.cpp b/src/mame/video/taito_helper.cpp
index 067bf9f80e5..58c2b3a666c 100644
--- a/src/mame/video/taito_helper.cpp
+++ b/src/mame/video/taito_helper.cpp
@@ -7,10 +7,10 @@
void taitoic_drawscanline( bitmap_ind16 &bitmap, const rectangle &cliprect, int x, int y,
- const uint16_t *src, int transparent, uint32_t orient, bitmap_ind8 &priority, int pri)
+ const u16 *src, bool transparent, u32 orient, bitmap_ind8 &priority, u8 pri, u8 primask)
{
- uint16_t *dsti = &bitmap.pix16(y, x);
- uint8_t *dstp = &priority.pix8(y, x);
+ u16 *dsti = &bitmap.pix16(y, x);
+ u8 *dstp = &priority.pix8(y, x);
int length = cliprect.width();
src += cliprect.min_x;
@@ -20,12 +20,12 @@ void taitoic_drawscanline( bitmap_ind16 &bitmap, const rectangle &cliprect, int
{
while (length--)
{
- uint32_t spixel = *src++;
+ u32 spixel = *src++;
if (spixel < 0x7fff)
{
*dsti = spixel;
- *dstp = pri;
+ *dstp = (*dstp & primask) | pri;
}
dsti++;
@@ -37,7 +37,8 @@ void taitoic_drawscanline( bitmap_ind16 &bitmap, const rectangle &cliprect, int
while (length--)
{
*dsti++ = *src++;
- *dstp++ = pri;
+ *dstp = (*dstp & primask) | pri;
+ dstp++;
}
}
}