TD Line: wyłączenie i włączenie z poziomu programu
From Atariki
TD Line jest programem dla SpartaDOS i SpartaDOS X, wyświetlającym na dodatkowej linii ekranu bieżący czas i datę. Niekiedy zachodzi potrzeba tymczasowego, automatycznego wyłączenia działania TD Line, na przykład na czas ładowania programu wyświetlającego jakąś czołówkę.
SpartaDOS 3.x
W SpartaDOS 3.x służy do tego celu umieszczony pod adresem $FFC6 (pod ROM-em) wektor VTDON. Wywołanie wygląda następująco:
portb = $D301
vtdon = $FFC6
;
td_off lda portb
       pha
       and #$fe
       sta portb
       ldy #$00      ;$00 - OFF, $01 - ON
       jsr vtdon
       pla
       sta portb
       rts
SpartaDOS X
W SpartaDOS X powyższy sposób też działa, ale tylko pod następującymi warunkami:
- że pamięć pod ROM-em istnieje;
 - że wektory się tam znajdujące nie zostały zniszczone przez program korzystający z tej pamięci (np. Turbo BASIC XL).
 
Dlatego najlepiej, zamiast wspomnianym wektorem, posłużyć się symbolem I_TDON. Robi się to następująco:
jext_on  = $07f1
jext_off = $07f4
jfsymbol = $07eb
;
td_off lda #<sym
       ldx #>sym
       jsr jfsymbol
       beq exit        ;exit if no symbol found (= no TD loaded)
       sta ptr+1
       stx ptr+2
       tya
       jsr jext_on
       ldy #$00        ;$00 - off, $01 - on
ptr    jsr $0000
       jmp jext_off
exit   rts
; symbol name, space-padded to 8 characters
sym   .byte 'I_TDON  '
Należy zadbać, żeby podprogram znalazł się poza obszarem przełączania banków pamięci ($4000-$7FFF). Dodatkowo, sposób ten będzie działał dopiero w SpartaDOS X w wersji 4.40 albo nowszej.
