From ed7f171736fb60a9450916246c27ef2a9a2de2d2 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Thu, 19 Dec 2019 22:20:43 -0500 Subject: [PATCH] Moves address reload to end of vertical sync. I have no information as to when it should be, so this is as valid a guess as any other. --- Machines/Atari/ST/Video.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Machines/Atari/ST/Video.cpp b/Machines/Atari/ST/Video.cpp index 22e41770b..94446c59b 100644 --- a/Machines/Atari/ST/Video.cpp +++ b/Machines/Atari/ST/Video.cpp @@ -262,6 +262,11 @@ void Video::advance(HalfCycles duration) { next_vertical_.enable = false; } else if(next_y_ == vertical_timings.height) { next_y_ = 0; + } else if(y_ == 0) { + next_vertical_.sync_schedule = VerticalState::SyncSchedule::Begin; + } else if(y_ == 3) { + next_vertical_.sync_schedule = VerticalState::SyncSchedule::End; + current_address_ = base_address_ >> 1; reset_fifo(); // TODO: remove this, I think, once otherwise stable. @@ -272,10 +277,6 @@ void Video::advance(HalfCycles duration) { range_observer_->video_did_change_access_range(this); } } - } else if(y_ == 0) { - next_vertical_.sync_schedule = VerticalState::SyncSchedule::Begin; - } else if(y_ == 3) { - next_vertical_.sync_schedule = VerticalState::SyncSchedule::End; } }