diff options
| author | 2016-06-25 22:02:28 +0100 | |
|---|---|---|
| committer | 2016-06-25 22:02:28 +0100 | |
| commit | f5c01d30141053210136e7f26adcebd6c0365646 (patch) | |
| tree | a1dfb3ed48bfc07e83775e878f178dae2df39830 | |
| parent | 7f22918675bbac5012d88f6ac97921066414b03f (diff) | |
Added kludges for mjjoship display areas - now pixel correct vs PCB
| -rw-r--r-- | src/mame/video/homedata.cpp | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/mame/video/homedata.cpp b/src/mame/video/homedata.cpp index 4ca9e496cf2..355cf3411c7 100644 --- a/src/mame/video/homedata.cpp +++ b/src/mame/video/homedata.cpp @@ -946,8 +946,10 @@ UINT32 homedata_state::screen_update_pteacher(screen_device &screen, bitmap_ind1 width 3 4 5 6 33*8 = a6 00 ef db (mjikaga) + 246 = 96 17 ef db (mjjoship) 35*8 = bc 0b ef f0 51*8 = a6 07 ef db (mjikaga) + 414 = b7 10 ef db (mjjoship, db becomes e8 after first loss) 54*8 = bc 07 ef e8 but in mjkinjas it's @@ -968,6 +970,12 @@ UINT32 homedata_state::screen_update_pteacher(screen_device &screen, bitmap_ind1 screen.set_visible_area(0*8, 42*8-1, 2*8, 30*8-1); scroll_low = 0; } + else if (m_vreg[0x4] == 0x17) + { + /* kludge for mjjoship */ + screen.set_visible_area(0*8, 61*4+1, 2*8, 30*8-1); + scroll_low = 0; + } else { if (m_vreg[0x3] == 0xa6) @@ -979,11 +987,21 @@ UINT32 homedata_state::screen_update_pteacher(screen_device &screen, bitmap_ind1 } else { - if (m_vreg[0x3] == 0xa6) + if (m_vreg[0x3] == 0xa6) + { screen.set_visible_area(0*8, 51*8-1, 2*8, 30*8-1); - else + scroll_low = 7 - (m_vreg[0x4] & 0x0f); + } + else if (m_vreg[0x3] == 0xb7) + { + screen.set_visible_area(0*8, 52*8-3, 2*8, 30*8-1); + scroll_low = 0; + } + else + { screen.set_visible_area(0*8, 54*8-1, 2*8, 30*8-1); - scroll_low = 7 - (m_vreg[0x4] & 0x0f); + scroll_low = 7 - (m_vreg[0x4] & 0x0f); + } } scroll_high = m_vreg[0xb] >> 2; |
