**JBEV - Sin Wave demo for different systems.** \\
**IBM**
Original: \\
5 D$="................................................................................*"
10 PRINT "sinus (c) jbev 2022"
90 W=79
100 W=W/2:H=W-1
110 T=T+.125
115 I=I+.001
120 A=INT(W+W*SIN(T))
130 B=INT(W+W*COS(T*I))
140 IF AB THEN L=B:R=A
155 IF A=B THEN L=A:M=0:R=0:GOTO 190
160 M=(L+R)/2
170 M=M-L
180 R=R-(M+L)
190 PRINT TAB(L);LEFT$(D$,M);"*";LEFT$(D$,R)
240 IF I<.9690001 THEN 110
270 I=0:T=0:GOTO 110
Condensed 1
10 W=38:T=0:I=0
20 A=INT(W+W*SIN(T)):B=INT(W+W*COS(T*I)):IF A>B THEN SWAP A,B
30 PRINT TAB(A);STRING$(B-A,".");"*"
40 T=T+.125:I=I+.001:IF I<.97 GOTO 20
50 I=0:T=0:GOTO 20
Condensed Qbasic
10 A=38+38*SIN(T):B=38+38*COS(T*I):IF A>B THEN SWAP A,B
20 PRINT TAB(A);STRING$(B-A,".");"*":T=T+.125:I=I+.001:GOTO 10
1 line
1 A=40+40*SIN(T):B=40+40*COS(T*I):IF A>B THEN SWAP A,B:?TAB(A)STRING$(B-A,".")"*":T=T+.1:I=I+.001:GOTO
1 A=39+39*SIN(T):B=39+39*COS(T*I):IF A>B SWAP A,B:?TAB(A)STRING$(B-A,46)"*":T=T+.1:I=I+.001:GOTO 1
**VAX VMS Basic** \\
10 ! Centered Asterisk Ribbon Pattern
20 D$ = "................................................................................"
30 W = 38
40 T = 0.0
50 I = 0.0
60 A = INT(W + W * SIN(T))
70 B = INT(W + W * COS(T * I))
80 L = A
90 R = B
100 IF L <= R GOTO 130
110 L = B
120 R = A
130 M1 = INT((R - L) / 2)
140 M2 = (R - L) - M1
150 PRINT TAB(L); LEFT$(D$, M1); "*"; LEFT$(D$, M2)
160 CALL LIB$WAIT(0.05)
170 T = T + 0.125
180 I = I + 0.001
190 IF I < 0.97 GOTO 60
200 GOTO 40
**TRS-80 (Tested on a MDL3)**
5 D$="................................................................"
90 W=63
100 W=W/2:H=W-1
110 T=T+.125
120 I=I+.001
121 A=INT(W+H*SIN(T))
130 B=INT(W+H*COS(T*I))
140 IF AB THEN L=B:R=A
155 IF A=B THEN PRINT TAB(L);"*":GOTO 240
156 M=INT((L+R)/2)
160 M=M-L
180 R=R-(M+L)
185 IF M=0 THEN PRINT TAB(L);"*";LEFT$(D$,R):GOTO 240
190 PRINT TAB(L);LEFT$(D$,M);"*";LEFT$(D$,R)
240 IF I<.9690001 THEN 110
270 I=0:T=0:GOTO 110