mirror of
https://github.com/TomHarte/CLK.git
synced 2024-11-26 08:49:37 +00:00
Clamps 16-bit positioning values.
This commit is contained in:
parent
c3f5fbd300
commit
96e79301f3
@ -190,8 +190,10 @@ Flywheel::SyncEvent CRT::get_next_horizontal_sync_event(bool hsync_is_requested,
|
|||||||
Outputs::Display::ScanTarget::Scan::EndPoint CRT::end_point(uint16_t data_offset) {
|
Outputs::Display::ScanTarget::Scan::EndPoint CRT::end_point(uint16_t data_offset) {
|
||||||
Display::ScanTarget::Scan::EndPoint end_point;
|
Display::ScanTarget::Scan::EndPoint end_point;
|
||||||
|
|
||||||
end_point.x = uint16_t(horizontal_flywheel_->get_current_output_position());
|
// Clamp the available range on endpoints. These will almost always be within range, but may go
|
||||||
end_point.y = uint16_t(vertical_flywheel_->get_current_output_position() / vertical_flywheel_output_divider_);
|
// out during times of resync.
|
||||||
|
end_point.x = uint16_t(std::min(horizontal_flywheel_->get_current_output_position(), 65535));
|
||||||
|
end_point.y = uint16_t(std::min(vertical_flywheel_->get_current_output_position() / vertical_flywheel_output_divider_, 65535));
|
||||||
end_point.data_offset = data_offset;
|
end_point.data_offset = data_offset;
|
||||||
|
|
||||||
// Ensure .composite_angle is sampled at the location indicated by .cycles_since_end_of_horizontal_retrace.
|
// Ensure .composite_angle is sampled at the location indicated by .cycles_since_end_of_horizontal_retrace.
|
||||||
|
Loading…
Reference in New Issue
Block a user