open window 640, 512
window origin "cc"
cs = cos(pi/900)
sn = sin(pi/900)
for d = 0 to 1
setdispbuf draw
draw = 1 - draw
setdrawbuf draw
setrgb 1, 255, 000, 000
setrgb 2, 255, 000, 000
setrgb 3, 000, 000, 000
gtriangle -320,000 to 320,000 to 320,-256
gtriangle -320,000 to 320,000 to 320, 256
setrgb 2, 000, 000, 000
gtriangle -320,000 to -320,-256 to 320,-256
gtriangle -320,000 to -320, 256 to 320, 256
setrgb 1, 000, 000, 255
setrgb 2, 000, 000, 000
setrgb 3, 000, 000, 000
gtriangle 000,-256 to -320,000 to 320,000
gtriangle 000, 256 to -320,000 to 320,000
next
00 c = c + 1
if (c > 27) exit
read message$
redim message$(len(message$))
length = token(message$, message$())
redim x(length), y(length)
for l = 1 to length
ang = l * (pi/length)
x(l) = cos(ang)*200
y(l) = sin(ang)*200
next
count = 0
10 setdispbuf draw
draw = 1 - draw
setdrawbuf draw
for l = 1 to length
x = cs*x(l) + sn*y(l)
y = cs*y(l) - sn*x(l)
if (y > 0) then
setrgb 1, y, y, 0
else
setrgb 1, -y, -y, 0
fi
fill box x-10,y-10 to x+10,y+10
setrgb 1, y, y, 0
text x,y-5, message$(l), "cc"
x(l) = x
y(l) = y
next
count = count + 1
if (count > 1800) goto 00
goto 10
data "R A I N S T O R M"
data "P R E S E N T S"
data "H I S . F I R S T"
data "I N T R O"
data "B I G . S H O U T S"
data "G O . O U T . T O"
data "A L L . T H E"
data "G U Y S & G I R L S"
data "F R O M . T H E"
data "F O R U M"
data "S P E C I A L"
data "M E N T I O N"
data "F O R . T H E"
data "G U Y S"
data "F R O M . T H E"
data "Y A B A S I C"
data "B O A R D"
data "B I K E M A D N E S S"
data ". . . C L A N K Y . . ."
data "R A I N S T O R M"
data "S A Y S . H I"
data "H O P E . Y O U"
data "L I K E D . T H I S"
data "I N T R O"
data "B E C A U S E"
data "I T S . O V E R"
data "G O O D - B Y E"