diff options
author | Olivier Galibert <galibert@pobox.com> | 2021-03-18 15:44:56 +0100 |
---|---|---|
committer | Olivier Galibert <galibert@pobox.com> | 2021-03-18 15:45:06 +0100 |
commit | 1e0c736f537f1b2a2f22c900db343180113ef3ca (patch) | |
tree | 3750b18f221a7dff93c527c09ef67d6044e47b2f | |
parent | 866a814e9fbfb97b8605780e39c9ad96a2ebcd14 (diff) |
namconb1: Making the clip registers signed, fixes vshoot MT#6789. The underlying issue may be weirder though...
-rw-r--r-- | src/mame/video/namconb1.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/mame/video/namconb1.cpp b/src/mame/video/namconb1.cpp index b926b6569ea..a6a7c2ecc5f 100644 --- a/src/mame/video/namconb1.cpp +++ b/src/mame/video/namconb1.cpp @@ -124,10 +124,11 @@ u32 namconb1_state::screen_update_namconb1(screen_device &screen, bitmap_ind16 & /* compute window for custom screen blanking */ rectangle clip; //004a 016a 0021 0101 0144 0020 (nebulas ray) - clip.min_x = m_c116->get_reg(0) - 0x4a; - clip.max_x = m_c116->get_reg(1) - 0x4a - 1; - clip.min_y = m_c116->get_reg(2) - 0x21; - clip.max_y = m_c116->get_reg(3) - 0x21 - 1; + clip.min_x = int16_t(m_c116->get_reg(0)) - 0x4a; + clip.max_x = int16_t(m_c116->get_reg(1)) - 0x4a - 1; + clip.min_y = int16_t(m_c116->get_reg(2)) - 0x21; + clip.max_y = int16_t(m_c116->get_reg(3)) - 0x21 - 1; + /* intersect with master clip rectangle */ clip &= cliprect; |