summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2024-11-21 23:55:13 +0100
committer hap <happppp@users.noreply.github.com>2024-11-21 23:55:13 +0100
commit366aaf99a95e3850ff31955702e237e56978594a (patch)
treec3ae1678db581e1c68181db5db92255bff45cf1c /src
parente5c0f789319a67d40f9dbd472d9e4c2d9830eef0 (diff)
chanbara: no need to check attr & 0x08
Diffstat (limited to 'src')
-rw-r--r--src/mame/dataeast/chanbara.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/mame/dataeast/chanbara.cpp b/src/mame/dataeast/chanbara.cpp
index 1ebb04a2cac..a4417fedc5a 100644
--- a/src/mame/dataeast/chanbara.cpp
+++ b/src/mame/dataeast/chanbara.cpp
@@ -186,8 +186,8 @@ void chanbara_state::draw_sprites(screen_device &screen, bitmap_ind16& bitmap, c
int sx = (240 - m_spriteram[offs + 3]) & 0xff;
int sy = (240 - m_spriteram[offs + 2]) & 0xff;
- // hidden or invalid?
- if (~attr & 0x01 || attr & 0x08)
+ // invalid?
+ if (~attr & 0x01)
continue;
if (flip_screen())
@@ -205,14 +205,17 @@ void chanbara_state::draw_sprites(screen_device &screen, bitmap_ind16& bitmap, c
if (attr & 0x10)
{
+ // 16x32
+ code &= ~1;
if (flip_screen())
sy += 16;
- m_gfxdecode->gfx(1)->prio_transpen(bitmap, cliprect, code + (flipy ^ 1), color, flipx, flipy, sx, sy, screen.priority(), pri_mask, 0);
- m_gfxdecode->gfx(1)->prio_transpen(bitmap, cliprect, code + flipy, color, flipx, flipy, sx, sy - 16, screen.priority(), pri_mask, 0);
+ m_gfxdecode->gfx(1)->prio_transpen(bitmap, cliprect, code | (flipy ^ 1), color, flipx, flipy, sx, sy, screen.priority(), pri_mask, 0);
+ m_gfxdecode->gfx(1)->prio_transpen(bitmap, cliprect, code | flipy, color, flipx, flipy, sx, sy - 16, screen.priority(), pri_mask, 0);
}
else
{
+ // 16x16
m_gfxdecode->gfx(1)->prio_transpen(bitmap, cliprect, code, color, flipx, flipy, sx, sy, screen.priority(), pri_mask, 0);
}
}