this code generates a starscape. uses advanced 2d for 2d stuff.
enjoy ( hopefully

)
V 1.01
Rem Project: starscape
Rem Created: Friday, July 22, 2011
Rem ***** Main Source File *****
w = desktop width() : h = desktop height()
set display mode w,h,32
sync on
cls
for i = 1 to 1000
sync
cls
next
_start:
rr = 1
gg = 1
bb = 1
start = timer()
a2SetBlendMode 2, 2, 1
cls
a2startlinebatch 300
for i = 1 to 300
x = rnd(w) : y = rnd(h)
r = rnd(10)+3 : g = rnd(3)+3 : b = rnd(3)+3
s = rnd(rnd(rnd(sqrt(x/60.0))))+1
if# = s*15
for ii = 1 to s
a2circle x,y,ii/2.0,rgb(r,g,b)
next
for ii = 1 to s*15
iv# = ii/if#*5
a2circle x,y,ii/2.0,rgb(r/iv#,g/iv#,b/iv#)
next
next
a2endbatch
a2starttrianglebatch 12000
a2setblendmode 2,2,1
for i = 1 to 3000
a2fillcircle rnd(w),rnd(h),rnd(100),rgb(rr,gg,bb)
next
a2setblendmode 2,2,1
for i = 1 to 3000
a2fillcircle rnd(w),rnd(h),rnd(100),rgb(rr,gg,bb)
next
for i = 1 to 2000
a2fillcircle abs(sin(i)*w)-rnd(300),abs(cos(i)*h)-rnd(500),rnd(100),rgb(rr,gg,bb)
next
for i = 1 to 1000
a2fillcircle abs(sin(i)*w)-rnd(100)-100,abs(cos(i)*h)-rnd(100)-150,rnd(100),rgb(rr,gg,bb)
next
a2SetBlendMode 2, 2, 3
for i = 1 to 3000
a2fillcircle rnd(w),rnd(h),rnd(30),rgb(rnd(4),rnd(4),rnd(4))
next
a2SetBlendMode 2, 2, 1
a2endbatch
a2startlinebatch 80
for i = 1 to 15
x = abs(sin(i*30)*w)-rnd(300) : y = abs(cos(i*30)*h)-rnd(400)
r = rnd(rr*3)+rr*3+3+rnd(15): g = rnd(gg*3)+gg*3+3+rnd(15) : b =rnd(bb*3)+bb*3+3+rnd(15)
s = rnd(rnd(rnd(sqrt(x))))+2
if# = s*15
for ii = 1 to s
a2circle x,y,ii/2.0,rgb(r,g,b)
next
for ii = s*15 to 1 step -4
iv# = ii/if#*5
a2circle x,y,ii/2.0,rgb(r/iv#,g/iv#,b/iv#)
next
a2fillcircle x,y,s*5,rgb(r*2,g*2,b*2)
for ii = s*5 to 1 step -1
iv# = ii/if#*8
a2circle x,y,ii/2.0,rgb(r/iv#,g/iv#,b/iv#)
next
next
a2endbatch
a2setblendmode 2,2,3
a2fillbox 0,0,w,h,rgb(rnd(40),rnd(40),rnd(40)),rgb(0,0,0),rgb(rnd(40),rnd(40),rnd(40)),rgb(rr^3*10+5,gg^3*10+5,bb^3*10+5)
a2setblendmode 1,1,1
do
rem if spacekey() then nice wait 3000
fastsync
finnish = timer()
time = finnish-start
a2fillbox 0,0,100,20,rgb(0,0,0)
text 0,0," TIME "+str$(time)+" milliseconds"
fastsync
goto _start:
loop
i get 700 ms with that
-noobnerd