From ac3f9079d25b2488b7c2e1c0e0ad7f0dfd00934d Mon Sep 17 00:00:00 2001 From: angelosa Date: Sat, 10 Feb 2018 17:59:31 +0100 Subject: [PATCH] model2.cpp: fix 2d priority over polygons (Virtua Cop level select, Dead or Alive chara select etc.) (nw) --- src/mame/video/model2.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/mame/video/model2.cpp b/src/mame/video/model2.cpp index e5685f91dfc..2ddea1a8695 100644 --- a/src/mame/video/model2.cpp +++ b/src/mame/video/model2.cpp @@ -2607,15 +2607,15 @@ VIDEO_START_MEMBER(model2_state,model2) uint32_t model2_state::screen_update_model2(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect) { //logerror("--- frame ---\n"); - + int layer; + bitmap.fill(m_palette->pen(0), cliprect); m_sys24_bitmap.fill(0, cliprect); segas24_tile_device *tile = machine().device("tile"); - tile->draw(screen, m_sys24_bitmap, cliprect, 7, 0, 0); - tile->draw(screen, m_sys24_bitmap, cliprect, 6, 0, 0); - tile->draw(screen, m_sys24_bitmap, cliprect, 5, 0, 0); - tile->draw(screen, m_sys24_bitmap, cliprect, 4, 0, 0); + + for(layer=3;layer>=0;layer--) + tile->draw(screen, m_sys24_bitmap, cliprect, layer<<1, 0, 0); copybitmap_trans(bitmap, m_sys24_bitmap, 0, 0, 0, 0, cliprect, 0); @@ -2629,10 +2629,9 @@ uint32_t model2_state::screen_update_model2(screen_device &screen, bitmap_rgb32 model2_3d_frame_end( bitmap, cliprect ); m_sys24_bitmap.fill(0, cliprect); - tile->draw(screen, m_sys24_bitmap, cliprect, 3, 0, 0); - tile->draw(screen, m_sys24_bitmap, cliprect, 2, 0, 0); - tile->draw(screen, m_sys24_bitmap, cliprect, 1, 0, 0); - tile->draw(screen, m_sys24_bitmap, cliprect, 0, 0, 0); + + for(layer=3;layer>=0;layer--) + tile->draw(screen, m_sys24_bitmap, cliprect, (layer<<1) | 1, 0, 0); copybitmap_trans(bitmap, m_sys24_bitmap, 0, 0, 0, 0, cliprect, 0);