As mentioned, I did test on real hardware.troed wrote: ↑Sun Sep 04, 2022 7:07 amI'm confused by all the "just like regular lower border just with frequencies swapped" comments. You can read the table above top down:troed wrote: ↑Thu Sep 01, 2022 1:06 pmCode: Select all
Line: 16: 60Hz vBLANK = false; 25: 50Hz vBLANK = false; 34: 60Hz and mono screen start 47/63: 50Hz screen start (short/regular top border GLUE) 234: 60Hz screen end 247/263: 50Hz screen end 258: 60Hz BLANK 308: 50Hz BLANK
If you're in 60Hz at line 34 the screen will start to display. If you're in 60Hz at line 234 it will stop displaying.
= you must be in 50Hz at the correct position on line 234 to keep displaying a "bottom border".
A 60Hz screen stops displaying (blanks) at line 258. You can enable a few more extra lines by doing a 60-50-60 switch there.
If you're using timers instead of counting lines, you need to count 234 lines of 508 cycles instead of 263 lines of 512 cycles to get to the right place.
Always test on real hardware. I know when I released "Fullast Vinner" Steem SSE did not emulate 60Hz VBLANK.
With Timer B as you certainly know, it will count "open" scanlines, and that's 200 with 50 or 60 Hz, so same MFP setup.
Then at the interrupt, instead of 60-50, it's 50-60.
It adds 23 lines in Hatari and the same on my STe+Medusa.
However, lines 1-3 are deformed both with my program and Neo Master. Not sure if it's my STe, scandoubler(s) or lame code.
As can be seen here: https://ae.dhs.nu/pics/low60ste_medusa.jpg