From de4403e02124a27ff2a20460b6b4e8349d6cf5ef Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Tue, 10 Dec 2019 22:17:57 -0500 Subject: [PATCH] Corrects blank timing. --- Machines/Atari/ST/Video.cpp | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/Machines/Atari/ST/Video.cpp b/Machines/Atari/ST/Video.cpp index 1eee97234..dbf9cbf12 100644 --- a/Machines/Atari/ST/Video.cpp +++ b/Machines/Atari/ST/Video.cpp @@ -58,9 +58,9 @@ const struct HorizontalParams { const int length; } horizontal_params[3] = { - {56*2, 376*2, 450*2, 28*2, 512*2}, - {52*2, 372*2, 450*2, 24*2, 508*2}, - {4*2, 164*2, 184*2, 2*2, 224*2} + {56*2, 376*2, 448*2, 28*2, 512*2}, + {52*2, 372*2, 448*2, 24*2, 508*2}, + {4*2, 164*2, 999*2, 999*2, 224*2} // 72Hz mode doesn't set or reset blank. }; const HorizontalParams &horizontal_parameters(Video::FieldFrequency frequency) { @@ -73,10 +73,16 @@ struct Checker { for(int c = 0; c < 3; ++c) { // Expected horizontal order of events: reset blank, enable display, disable display, enable blank (at least 50 before end of line), end of line const auto horizontal = horizontal_parameters(Video::FieldFrequency(c)); - assert(horizontal.reset_blank < horizontal.set_enable); - assert(horizontal.set_enable < horizontal.reset_enable); - assert(horizontal.reset_enable < horizontal.set_blank); - assert(horizontal.set_blank+50 < horizontal.length); + + if(c < 2) { + assert(horizontal.reset_blank < horizontal.set_enable); + assert(horizontal.set_enable < horizontal.reset_enable); + assert(horizontal.reset_enable < horizontal.set_blank); + assert(horizontal.set_blank+50 < horizontal.length); + } else { + assert(horizontal.set_enable < horizontal.reset_enable); + assert(horizontal.set_enable+50