1
0
Fork
You've already forked SYNC-scroll
1
The sync scroll as used by SYNC since 2013, with code for all the 12 possible different line lengths working in all wakestates as well as on STE. This code matches well with the other repos for wakestate detection as well as sync table generation.
  • Assembly 100%
2025年09月08日 14:51:44 +02:00
default.tab initial commit 2025年09月08日 11:41:29 +02:00
LICENSE Slight usage update, added cc0 license 2025年09月08日 12:36:54 +02:00
README.md Corrected error in usage description 2025年09月08日 14:51:44 +02:00
sscrl.s Corrected error in usage description 2025年09月08日 14:51:44 +02:00

12 line-combo syncscroller by Troed/SYNC (thanks to Paulo Simoes, LJBK, for the research)

Supports different timings for STE, ST ws1, ws2, ws3 and ws4

Synclines can be blanked (no graphics, no bgcolor) - this means you don't need to set/re-set palette

Scanlines with odd word lengths try to clear the Shifter

Calling JSR takes 5 nops, RTS takes 4. Entered at cycle 504. Synclines expect $ffff820a in a0, $ffff8260 in a1 & #0 in d0

Note: Switches to 50Hz at cycle 24 to switch back from a top border 60Hz

caveat: Needs changes if your sync table uses more than 4 lines

USAGE

In your init code:

 jsr _detect_ws
 jsr _ws_patch
 jsr _ssinit

In your screen code, synclock, wait for cycle 484, then:

_jvar0: jsr _s230
_jvar1: jsr _s230
_jvar2: jsr _s230
_jvar3: jsr _s230

In your main-loop:

 jsr _setscr

Set _hscrladr to video mem, modify _hscrloff to scroll.