diff options
author | Peter Ferrie <peter.ferrie@gmail.com> | 2017-08-22 15:45:57 -0700 |
---|---|---|
committer | Peter Ferrie <peter.ferrie@gmail.com> | 2017-08-22 15:45:57 -0700 |
commit | 38254b6379660ebe28191ca7901b898ab5cf8b69 (patch) | |
tree | 85edc54c0b09ebbb8332c345335a54c4c81eb957 | |
parent | 4792c5a8cb3b60a6b2b099fe8404f54ced13d715 (diff) |
apple2: update screen on mode-switch only if really switching [Peter Ferrie]
-rw-r--r-- | src/mame/drivers/apple2.cpp | 9 | ||||
-rw-r--r-- | src/mame/drivers/apple2e.cpp | 7 |
2 files changed, 11 insertions, 5 deletions
diff --git a/src/mame/drivers/apple2.cpp b/src/mame/drivers/apple2.cpp index 81d61115441..6caba17e4ad 100644 --- a/src/mame/drivers/apple2.cpp +++ b/src/mame/drivers/apple2.cpp @@ -520,9 +520,12 @@ void napple2_state::do_io(address_space &space, int offset) WRITE_LINE_MEMBER(napple2_state::txt_w) { - // select graphics or text mode - machine().first_screen()->update_now(); - m_video->m_graphics = !state; + if (m_video->m_graphics == state) // avoid flickering from II+ refresh polling + { + // select graphics or text mode + machine().first_screen()->update_now(); + m_video->m_graphics = !state; + } } WRITE_LINE_MEMBER(napple2_state::mix_w) diff --git a/src/mame/drivers/apple2e.cpp b/src/mame/drivers/apple2e.cpp index dc0ea99767e..732a525b6d5 100644 --- a/src/mame/drivers/apple2e.cpp +++ b/src/mame/drivers/apple2e.cpp @@ -1319,8 +1319,11 @@ void apple2e_state::do_io(address_space &space, int offset, bool is_iic) break; case 0x50: // graphics mode - machine().first_screen()->update_now(); - m_video->m_graphics = true; + if (m_video->m_graphics == false) // avoid flickering from II+ refresh polling + { + machine().first_screen()->update_now(); + m_video->m_graphics = true; + } break; case 0x51: // text mode |