As seen here, the signal should be generated on both even frames and odd frames, giving ~60Hz rate:
|
assign vblank_pulse = h_last && (vcnt == 524 || vcnt == 1049); |
However, since
vcnt counts twice per line,
h_last is only true when
vcnt is odd. This can be fixed by replacing
h_last with
h_half_line_last just like in the field toggling logic.
Here is a measurement confirming the bug:
