diff options
Diffstat (limited to 'src/mame/dataeast/decocass_v.cpp')
| -rw-r--r-- | src/mame/dataeast/decocass_v.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mame/dataeast/decocass_v.cpp b/src/mame/dataeast/decocass_v.cpp index 02bd4a91e51..b38908ac7a7 100644 --- a/src/mame/dataeast/decocass_v.cpp +++ b/src/mame/dataeast/decocass_v.cpp @@ -167,6 +167,7 @@ static const uint32_t tile_offset[32*32] = { ********************************************/ void decocass_state::decocass_video_state_save_init() { + save_item(NAME(m_watchdog_flip)); save_item(NAME(m_color_missiles)); save_item(NAME(m_color_center_bot)); save_item(NAME(m_mode_set)); @@ -389,12 +390,14 @@ void decocass_state::decocass_watchdog_count_w(uint8_t data) LOG(1,("decocass_watchdog_count_w: $%02x\n", data)); m_watchdog->set_vblank_count(m_screen, (data & 0x0f) + 1); m_watchdog->watchdog_reset(); + } void decocass_state::decocass_watchdog_flip_w(uint8_t data) { LOG(1,("decocass_watchdog_flip_w: $%02x\n", data)); - m_watchdog->watchdog_enable(BIT(data, 2)); + m_watchdog->watchdog_enable(BIT(data, 3)); + m_watchdog_flip = data; } void decocass_state::decocass_color_missiles_w(uint8_t data) @@ -735,6 +738,9 @@ uint32_t decocass_state::screen_update_decocass(screen_device &screen, bitmap_in } #endif + // flip screen flag only has effect if cocktail dsw is on + flip_screen_set(m_watchdog_flip & BIT(m_dsw[0]->read(), 6)); + bitmap_ind8 &priority = screen.priority(); bitmap.fill(8, cliprect); priority.fill(0, cliprect); |
