Here's a start:
Graphics 640, 480 Cls Dim colors(16,2) For iter = 1 To 16 For byte = 0 To 2 Read colors(iter, byte) Next Next SeedRnd MilliSecs() For dots = 1 To 2000 colr = Rnd(16) col = Rnd(480) row = Rnd(640) Color colors(colr,0), colors(colr,1), colors(colr,2) Plot row, col Next For cnt = 1 To 60 centerCol = Rnd(639) + 1 centerRow = Rnd(479) + 1 radius = Rnd(100) + 1 CIRCLE (centerCol, centerRow, radius) Next Color colors(12,0), colors(12,1), colors(12,2) Locate 12*8, 34*8 Print "Space FX v1.0" Locate 13*8, 28*8 Print "(c)2005, Robert A. Morin" ;For i = 1 To 35 ; freq = Int(Rnd*2700) + 500 ; dur = Int(Rnd*3) + 1 ; SOUND freq, dur ;Next ;For freq = 800 To 400 Step -7 ; SOUND freq, 1 ; SOUND 900 - freq, 1 ;Next Color colors(10,0), colors(10,1), colors(10,2) Locate 25*8, 1*8 ent$ = Input("Press <ENTER> to Quit Demo: ") End ;CIRCLE COMMAND Function CIRCLE(xCenter, yCenter, rad) x = 0 y = rad Plot xCenter + x, yCenter + y Plot xCenter - x, yCenter + y Plot xCenter + x, yCenter - y Plot xCenter - x, yCenter - y Plot xCenter + y, yCenter + x Plot xCenter - y, yCenter + x Plot xCenter + y, yCenter - x Plot xCenter - y, yCenter - x p = 1 - rad While x < y If p < 0 x = x + 1 Else x = x + 1 y = y - 1 EndIf If p < 0 p = p + (x Shl 1) + 1 Else p = p + ((x - y) Shl 1) + 1 EndIf Plot xCenter + x, yCenter + y Plot xCenter - x, yCenter + y Plot xCenter + x, yCenter - y Plot xCenter - x, yCenter - y Plot xCenter + y, yCenter + x Plot xCenter - y, yCenter + x Plot xCenter + y, yCenter - x Plot xCenter - y, yCenter - x Wend End Function ;color data Data 0,0,0 ;black Data 0,0,255 ;blue Data 0,255,0 ;green Data 0,255,255 ;cyan Data 255,0,0 ;red Data 255,0,255 ;magenta Data 128,64,0 ;brown Data 192,192,192;white Data 128,128,128;gray Data 128,128,255;light blue Data 128,255,128;light green Data 128,255,255;light cyan Data 255,128,128;light red Data 255,128,255;light magenta Data 255,255,0 ;yellow Data 255,255,255;intense white