Code: Select all
10 SCREEN 128
20 XCENTER = 159:XLIMIT = 319
30 YCENTER = 119:YLIMIT = 239
35 PC = 4
40 BO = 0
41 IF INT(RND(1) * 50) > 40 THEN BO = 1
45 GOSUB 500
50 FOR Y2 = YCENTER TO 0 STEP -PC
60 LINE XCENTER, YCENTER, 0, Y2, C
70 NEXT Y2
75 GOSUB 500
80 FOR X2 = 0 TO XCENTER STEP PC
90 LINE XCENTER, YCENTER,X2, 0, C
100 NEXT X2
110 GOSUB 500
120 FOR X2 = XCENTER TO XLIMIT STEP PC
130 LINE XCENTER,YCENTER, X2, 0, C
140 NEXT X2
145 GOSUB 500
150 FOR Y2 = 0 TO YCENTER STEP PC
160 LINE XCENTER,YCENTER,XLIMIT, Y2, C
170 NEXT Y2
180 GOSUB 500
190 FOR Y2 = YCENTER TO YLIMIT STEP PC
200 LINE XCENTER,YCENTER, XLIMIT, Y2, C
210 NEXT Y2
215 GOSUB 500
220 FOR X2 = XLIMIT TO XCENTER STEP -PC
230 LINE XCENTER,YCENTER,X2,YLIMIT,C
240 NEXT X2
250 GOSUB 500
260 FOR X2 = XCENTER TO 0 STEP -PC
270 LINE XCENTER,YCENTER,X2,YLIMIT,C
280 NEXT X2
285 GOSUB 500
290 FOR Y2 = YLIMIT TO YCENTER STEP -PC
300 LINE XCENTER,YCENTER,0,Y2,C
310 NEXT Y2
400 GOTO 40
500 IF BO = 1 THEN PC = 1:CC = CC + 1
510 IF BO = 1 AND FC = 0 THEN C = C + 1:IF C > 255 THEN C = 1
520 IF BO = 1 AND FC = 1 AND CC = 1 THEN RETURN
530 IF CC > 1 THEN C = C + 2:IF C > 255 THEN C = 200:CC = 0:RETURN
535 FC = INT(RND(1)*2)
540 IF BO =1 THEN RETURN
570 C = INT(RND(1)*256)
580 PC = INT(RND(1)*8)+ 1
585 FC = 0:CC = 0
590 RETURN