A little BASIC program by Dusty W. Murray that displays a swirling pattern. This is my conversion to ZX81 BASIC.
PROG : 16509
D-FILE: 17436
VARS : 18229
E-LINE: 18230
STKBOT: 18230
STKEND: 18230
9999 means line number
PRINT means treat as KEYWORD P
10 REM **BLACK HOLE*SLR/2023**
20 REM **BY: DUSTY W. MURRAY**
30 REM SET DEFAULTS
40 GOSUB 500
50 REM MAIN LOOP
60 FAST
70 GOSUB 600
80 FOR I=1 TO ITERATIONS
90 FOR T=0 TO 99
100 LET CH=INT (RND*5)
110 IF CH=0 THEN LET RD=RDS
120 IF CH=1 THEN LET RD=-RDS*0.
991
130 IF CH=2 THEN LET AD=ADS
140 IF CH=3 THEN LET AD=-ADS
150 LET R=R+RD
160 IF R<4 THEN LET R=4
170 IF R>W THEN LET R=MR
180 LET A=A+AD
190 IF A<0 THEN LET A=A+PI2
200 IF A>PI2 THEN LET A=A-PI2
210 LET AR=A+R/RS
220 LET X=INT (SIN (AR)*R)+MW
230 LET Y=INT (COS (AR)*R)+MH
240 IF X>=0 AND X<=W AND Y>=0
AND Y<=H THEN PLOT X,Y
250 NEXT T
260 PAUSE 100
270 NEXT I
280 PAUSE 4E4
290 IF INKEY$<>"Q" THEN GOTO 50
300 SLOW
310 STOP
400 REM SAVE
410 SAVE "BLKHOLE"
420 RUN
500 REM DEFAULTS
510 LET W=63
520 LET H=43
530 LET MW=INT (W/2)
540 LET MH=INT (H/2)
550 LET MR=MW*2
560 LET ITERATIONS=10
570 LET PI2=2*PI
580 RAND 0
590 RETURN
600 REM CLEAR VARS
610 LET ADS=0.04
620 LET RDS=1.0
630 LET R=5
640 LET RD=0
650 LET RS=3
660 LET A=0
670 LET AD=ADS
680 CLS
690 RETURN