Thank you Obese!
You have inspired me! Here's my snoflake thing. It takes a while to load by the snow builds up at the bottom realistically( wel kind of) and it's got Merry Xmas in snoflakes!
Here it is:
sync on
randomize timer()
snows=1000
dim snowx(snows)
dim snowy(snows)
snow2s=400
dim snowx2(snow2s)
dim snowy2(snow2s)
dim snow2(snow2s)
dim base(640,105)
dim basestati(640,105)
dim basecompline(100)
for i=1 to snows
snowx(i)=rnd(640)
snowy(i)=rnd(480)+00
next i
for x=0 to 640
base(x,100)=1
next x
textosay$="Merry Xmas!"
ink rgb(150,150,150),0
print "Loading ";
for i=1 to text width(textosay$)
print "|";
next i
get image 1,0,0,500,25
cls
paste image 1,0,0
ink rgb(255,255,255),0
text 250,240,textosay$
ink rgb(255,255,255),0
print "Loading ";
for x=250 to text width(textosay$)+250
for y=240 to text height(textosay$)+240
if point(x,y)>0
snow2=snow2+1
snow2(snow2)=1
snowx2(snow2)=(x-250)*5+100
snowy2(snow2)=(y-240)*5+100
endif
next y
print "|";
next x
firsttimeloop=1
do
cls
countw=countw-1
if countw<0 then wind=rnd(2)-1 : countw=10
for i=1 to snows
snowy(i)=snowy(i)+1
x=snowx(i)
y=snowy(i)-380
if y>0
if base(x,y)=1 or snowy(i)>479
base(x,y-1)=1
base(x,y-2)=1
base(x,y-3)=1
base(x-1,y-2)=1
base(x+1,y-2)=1
snowx(i)=rnd(640)
snowy(i)=000
else
if snowy(i)<snowline then snowx(i)=snowx(i)+rnd(2)-1
if snowx(i)<0 then snowx(i)=0
if snowx(i)>639 then snowx(i)=639
endif
else
if snowy(i)<snowline then snowx(i)=snowx(i)+rnd(2)-1
if snowx(i)<0 then snowx(i)=0
if snowx(i)>639 then snowx(i)=639
endif
next i
for i=1 to snow2s
if snow2(i)=1
snowy2(i)=snowy2(i)+1
x=snowx2(i)
y=snowy2(i)-380
if y>0
if base(x,y)=1 or snowy2(i)>479
base(x,y-1)=1
base(x,y-2)=1
base(x,y-3)=1
base(x-1,y-2)=1
base(x+1,y-2)=1
snow2(i)=0
else
if snowy2(i)<snowline then snowx2(i)=snowx2(i)+rnd(2)-1
if snowx2(i)<0 then snowx2(i)=0
if snowx2(i)>639 then snowx2(i)=639
endif
else
if snowy2(i)<snowline then snowx2(i)=snowx2(i)+rnd(2)-1
if snowx2(i)<0 then snowx2(i)=0
if snowx2(i)>639 then snowx2(i)=639
endif
endif
next i
snowline=480
for x=0 to 640
for y=0 to 100
if base(x,y)=1
if basestati(x,y)=0
rand=rnd(2)-1
if base(x+rand,y)=0
base(x+rand,y)=1
base(x,y)=0
if base(x+rand,y+1)=0
base(x+rand,y+1)=1
base(x+rand,y)=0
else
base(x+rand,y)=0
base(x,y)=1
endif
endif
if base(x,y+1)=0 and y+1<100
base(x,y+1)=1
base(x,y)=0
endif
endif
if base(x+1,y)=1 and base(x-1,y)=1 and base(x,y+1)=1
basestati(x,y)=1
else
basestati(x,y)=0
endif
if y+380<snowline then snowline=y+380
endif
next y
next x
for y=0 to 100
compline=1
for x=0 to 640
if base(x,y)=0 then compline=0
next x
if compline=1 then basecompline(y)=1
next y
ink rgb(255,255,255),0
for i=1 to snows
dot snowx(i),snowy(i)
dot snowx(i),snowy(i)-1
dot snowx(i),snowy(i)-2
dot snowx(i)+1,snowy(i)-1
dot snowx(i)-1,snowy(i)-1
next i
ink rgb(255,255,255),0
for i=1 to snow2s
if snow2(i)=1
dot snowx2(i),snowy2(i)
dot snowx2(i),snowy2(i)-1
dot snowx2(i),snowy2(i)-2
dot snowx2(i)+1,snowy2(i)-1
dot snowx2(i)-1,snowy2(i)-1
endif
next i
for y=0 to 100
if basecompline(y)=0
for x=0 to 640
if base(x,y)=1
dot x,y+380
endif
next x
else
line 0,y+380,640,y+380
endif
next y
sync
if firsttimeloop=1
sleep 1000
firsttimeloop=0
endif
loop
please tell me if there are any glitches.
Merry Chrismas!

Nothing is impossible...
No really, it is.