#bbcmicrobot 🚀
REM Inspired by @generiyaki
MODE1
FORI%=0TO999
X%=4*RND(320)-1
Y%=4*RND(256)-1
fac=SIN(X%/100)
R%=4*INT(5+15*(1+fac))
IFRND(1)<(1+fac)/2 PROCCIRC ELSE PROCSQUARE
NEXT
END
DEFPROCCIRC
FORL%=-8TO8STEP4
IFL%=0GCOL0,3ELSEGCOL0,0
MOVEX%,Y%
PLOT&95,X%+R%+L%,Y%
NEXT
ENDPROC
DEFPROCSQUARE
FORL%=-8TO8STEP4
IFL%=0GCOL0,3ELSEGCOL0,0
MOVEX%-R%-L%,Y%-R%-L%
DRAWX%-R%-L%,Y%+R%+L%
DRAWX%+R%+L%,Y%+R%+L%
DRAWX%+R%+L%,Y%-R%-L%
DRAWX%-R%-L%,Y%-R%-L%
NEXT
ENDPROC

@DazedAndDiffused @generiyaki
The Graphics Etension ROM isn't included in Rocket (or Clapperboard) mode. You'll need your own circle drawing algorithm.

Edit: Six hours later I spot the typo.

@geoffl Ah yep, bit more squeezing will be needed to fit that in :)
@DazedAndDiffused #bbcmicrobot 🚀
MO.1
A=RAD(5):S=SIN A:C=COS A
FOR K=1TO1000
X=RND(320)*4-2
Y=RND(256)*4-2
R=RND(32)*4
REM
FOR L=-10TO10STEP4
GCOL0,-(ABSL<3)
U=0:V=R+L
MOVEX+U,Y+V
FOR I=1TO72
T=V*C-U*S
U=V*S+U*C
V=T
DRAWX+U,Y+V
N.,,
V.5,1
I ran @geoffl's program and got this.
Source: https://bbcmic.ro/?t=9PcI4 #bbcbasic
Owlet BBC BASIC Editor

@bbcmicrobot @geoffl #bbcmicrobot 🚀

ë1
ãI%=0¸999
X%=4*³(320)-1
Y%=4*³(256)-1
fac=µ(X%/100)
R%=4*¨(5+15*(1+fac))
ç³(1)<(1+fac)/2 òC Ƌ òS
í
à
ÝòC
ãL%=-8¸8ƈ4
S=R%+L%
çL%=0æ0,3Ƌæ0,0
òB
í
á
ÝòS
ãL%=-8¸8ƈ4
çL%=0æ0,3Ƌæ0,0
ìX%-R%-L%,Y%-R%-L%
ßX%-R%-L%,Y%+R%+L%
ßX%+R%+L%,Y%+R%+L%
ßX%+R%+L%,Y%-R%-L%
ßX%-R%-L%,Y%-R%-L%
í
á
ÝòB
X=-S
Y=0
E=2-2*S
õ
ð69,X%-X,Y%+Y
ð69,X%-Y,Y%-X
ð69,X%+X,Y%-Y
ð69,X%+Y,Y%+X
R=E
ç R<=Y Y=Y+4:E=E+Y*2+1
ç R>X Ƅ E>Y X=X+4:E=E+X*2+1
ý X>=0
á

I ran @DazedAndDiffused's program and got this.
Source: https://bbcmic.ro/?t=9PfjZ #bbcbasic
Owlet BBC BASIC Editor

@bbcmicrobot @DazedAndDiffused Looks Great. I headed off in a different direction and reused the circle code with various angles and steps to generate squares, triangles, etc. too.
https://mastodon.me.uk/@bbcmicrobot/112367816065338539
BBC Micro Bot :mastodon: (@[email protected])

Attached: 1 image I ran @geoffl's program and got this. Source: https://bbcmic.ro/?t=9PfFJ #bbcbasic

mastodon.me.uk
#bbcmicrobot 🚀 MO.1
FOR K=1TO1000
Q=RND(5)+2:IFQ=7Q=30
A=RAD(360/Q):S=SIN A:C=COS A
X=RND(320)*4-2
Y=RND(256)*4-2
R=RND(SQR(Y+X)/20)*40+16
FOR L=-R/5TOR/5
GCOL0,-(ABSL<R/10)
U=R+L:V=R+L
MOVEX+U,Y+V
FOR I=1TOQ
T=V*C-U*S
U=V*S+U*C
V=T
DRAWX+U,Y+V
N.,,
V.5,1
I ran @geoffl's program and got this.
Source: https://bbcmic.ro/?t=9PfFJ #bbcbasic
Owlet BBC BASIC Editor

#bbcmicrobot 🚀 MO.0
F.K=1TO1000
Q=RND(5)+2:IFQ=7Q=30
A=RAD(360/Q):S=SIN A:C=COS A
X=RND(320)*4-2
Y=RND(256)*4-2
R=RND(SQR(Y+X)/20)*40+16
F.L=-R/5TOR/5
GC.0,-(ABSL<R/8)*RND(2)
U=R+L:V=U
MOVEX+U,Y+V
F.I=1TOQ
T=V*C-U*S
U=V*S+U*C
V=T
DR.X+U,Y+V
N.,,
V.5,1
I ran @geoffl's program and got this.
Source: https://bbcmic.ro/?t=9PgJO #bbcbasic
Owlet BBC BASIC Editor