Task

Write/display a language's name in 3D ASCII.



(We can leave the definition of "3D ASCII" fuzzy,
so long as the result is interesting or amusing,
not a cheap hack to satisfy the task.)



Related tasks

 draw a sphere
 draw a cuboid
 draw a rotating cube
 draw a Deathstar


10 S$ = "BASIC" : REM OUR LANGUAGE NAME
20 DIM B(5,5) : REM OUR BIGMAP CHARACTERS
30 FOR L = 1 TO 5 : REM 5 CHARACTERS
40     FOR M = 1 TO 5 : REM 5 ROWS
50         READ B(L,M)
60 NEXT M, L
 
100 GR : REM BLACK BACKGROUND
110 COLOR = 1 : REM OUR SHADOW WILL BE RED
120 HOME : REM CLS
130 R = 9 : REM SHADOW WILL START ON ROW 5
140 C = 2 : REM SHADOW WILL START AT COLUMN 2
150 GOSUB 2000"DRAW SHADOW
160 COLOR = 13 : REM OUR FOREGROUND WILL BE YELLOW
170 R = 10 : REM FOREGROUND WILL START ON ROW 6
180 C = 3 : REM FOREGROUND WILL START ON COLUMN 3
190 GOSUB 2000"DISPLAY THE LANGUAGE NAME
 
999 STOP
 
1000 REM CONVERT TO BINARY BIGMAP
1010 T = N : REM TEMPORARY VARIABLE
1020 G$ = "" : REM THIS WILL CONTAIN OUR 5 CHARACTER BINARY BIGMAP
1040 FOR Z = 5 TO 0 STEP -1
1050     D$ = " " : REM ASSUME NEXT DIGIT IS ZERO (DRAW A SPACE)
1055     S = 2 ^ Z
1060     IF T >= S THEN D$ = "*" : T = T - S : REM IS A BLOCK
1070     G$ = G$ + D$
1080 NEXT Z
1090 RETURN
 
2000 REM DISPLAY THE BIG LETTERS
2010 FOR L = 1 TO 5 : REM OUR 5 ROWS
2020     X = C : Y = R + L - 1 : REM PRINT AT R+L-1,C;
2030     FOR M = 1 TO 5 : REM BIGMAP FOR EACH CHARACTER
2040         N = B(M, L)
2050         GOSUB 1000
2060         FOR I = 1 TO LEN(G$) : IF MID$(G$, I, 1) <> " " THEN PLOT X,Y :REM 5 CHARACTER BIGMAP
2070             X = X + 1 : NEXT I
2080         X = X + 1 : REM PRINT " ";: REM SPACE BETWEEN EACH LETTER
2090 NEXT M, L
2100 RETURN
 
9000 DATA 30,17,30,17,30: REM B
9010 DATA 14,17,31,17,17: REM A
9020 DATA 15,16,14,1,30: REM S
9030 DATA 31,4,4,4,31: REM I
9040 DATA 14,17,16,17,14: REM C
 