const w=800: const h=600
screenres w, h, 8
Dim pal(0 To 255) As Integer
dim as single x, y, c, sx, sy, sc
c=1.0
for i as integer=1 to 300
x=w/2: y=h/2
sx=(rnd()*2.0)-1.0
sy=(rnd()*2.0)-1.0
sc=rnd()
do
x+=sx: y+=sy: c+=sc
if c>255.0 then c-=254.0
pset (x,y), c
loop until x<0 orelse x>w orelse y<0 orelse y>h
next
dim t as single
dim speed as single=.01
do
palette using pal
dim d as integer=&hFF0000-(speed *100)
for i as integer=1 to 255
if pal(i) then pal(i)=pal(i)/20*19 and &hFF0000
next
t= (t+speed)
if t>=255.0 then t-=254.0
pal (t+.5)=&hFFFFFF
if multikey(&h49) andalso speed <1 then speed+=.001
if multikey(&h51) andalso speed >0.001 then speed-=.001
'screensync
sleep 1
loop until multikey(1)
var rad = .01 + 250 * rnd
var ang = rnd * tau
sx = cos(ang)
sy = sin(ang)
x=w/2 + rad * sx
y=h/2 + rad * sy
rad = rnd + .1
sx *= rad
sy *= rad
'sx = (rnd()*2.0)-1.0
'sy = (rnd()*2.0)-1.0
var rad = .01 + 250 * rnd
var ang = rnd * tau
sx = cos(ang)
sy = sin(ang)
x=w/2 + rad * sx
y=h/2 + rad * sy
rad = rnd + .1
sx *= rad
sy *= rad
'sx = (rnd()*2.0)-1.0
'sy = (rnd()*2.0)-1.0
Just curious.
What is your initial value for "tau"?