mirror of
https://github.com/TomHarte/CLK.git
synced 2024-11-26 08:49:37 +00:00
Subtracts retrace periods from output scale.
This commit is contained in:
parent
3045e85004
commit
2adf3d353e
@ -68,7 +68,7 @@
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
enableASanStackUseAfterReturn = "YES"
|
||||
|
@ -54,12 +54,12 @@ void CRT::set_new_timing(int cycles_per_line, int height_of_display, Outputs::Di
|
||||
vertical_flywheel_.reset(new Flywheel(multiplied_cycles_per_line * height_of_display, scanlinesVerticalRetraceTime * multiplied_cycles_per_line, (multiplied_cycles_per_line * height_of_display) >> 3));
|
||||
|
||||
// Figure out the divisor necessary to get the horizontal flywheel into a 16-bit range.
|
||||
const int real_clock_scan_period = multiplied_cycles_per_line * height_of_display;
|
||||
const int real_clock_scan_period = vertical_flywheel_->get_scan_period();
|
||||
vertical_flywheel_output_divider_ = (real_clock_scan_period + 65534) / 65535;
|
||||
|
||||
// Communicate relevant fields to the scan target.
|
||||
scan_target_modals_.output_scale.x = uint16_t(time_multiplier_ * cycles_per_line);
|
||||
scan_target_modals_.output_scale.y = uint16_t((multiplied_cycles_per_line * height_of_display) / vertical_flywheel_output_divider_);
|
||||
scan_target_modals_.output_scale.x = uint16_t(horizontal_flywheel_->get_scan_period());
|
||||
scan_target_modals_.output_scale.y = uint16_t(real_clock_scan_period / vertical_flywheel_output_divider_);
|
||||
scan_target_modals_.expected_vertical_lines = height_of_display;
|
||||
scan_target_modals_.composite_colour_space = colour_space;
|
||||
scan_target_->set_modals(scan_target_modals_);
|
||||
|
Loading…
Reference in New Issue
Block a user