SCREEN 9: CLS DIM B%(64, 64) FOR y = 0 TO 4 READ C$ FOR X = 0 TO 21 B%(X, y) = ASC(MID$(C$, X + 1, 1)) - 65 NEXT: NEXT SCREEN 7, 0, 0, 0 DO xx = xx + RND - .5 yy = yy + RND - .5 zz = zz + RND * .2 - .1 IF xx < -1 THEN xx = -1 IF xx > 1 THEN xx = 1 IF yy < -1 THEN yy = -1 IF yy > 1 THEN yy = 1 IF zz < -1 THEN zz = -1 IF zz > 1 THEN zz = 1 X = X + xx y = y + yy z = z + zz IF X < 0 THEN X = 0: xx = -xx IF y < 8 THEN y = 8: yy = -yy IF z < 1 THEN z = 1: zz = -zz IF X > 319 - ((63 * z) + X) THEN X = 319 - ((63 * z) + X): xx = -xx IF y > 199 THEN y = 199: yy = -yy IF z > 5 THEN z = 5: zz = -zz C% = C% + 1: IF C% > 15 THEN C% = 1 COLOR C% GOSUB WAT LOCATE 1: PRINT TIME$ GOSUB putit LOOP WAT: T = TIMER: WHILE TIMER < T + .5 D% = D% + 1 IF D% > 15 THEN D% = 1 PALETTE D%, 15 IF C% = D% THEN CL% = 15 ELSE CL% = 0 IF D% = 1 THEN PALETTE 15, CL% ELSE PALETTE D% - 1, CL% WEND RETURN putit: FOR lx = 0 TO 63 FOR ly = 0 TO 7 IF POINT(lx, ly) <> 0 THEN LINE ((lx * z) + X, (ly * z) + y)-((lx * z) + X + z, ly * z + y + z), POINT(lx, ly), BF NEXT: NEXT RETURN DATA "BBBABBBBABABBBAABABBBA" DATA "BAAAABABABABABBABABAAB" DATA "BBBAABABABABAABABABAAB" DATA "AABAABABABABBBAABABAAB" DATA "BBBAABABBBABAAAABABBBA"