Prints words in 3D.
Content
Image Gallery
Source Code
1 REM 3D PRINT W.E. Walker TSUG Newsletter V.III No.3
2 CLS : RANDOMIZE
4 PRINT AT 10,12;"3D WORDS"
5 PRINT AT 21,4;"PRESS SPACE TO CONTINUE"
6 PAUSE 0
8 POKE 23609,30
9 BORDER 7: PAPER 7: INK 0: CLS
10 PRINT AT 4,10; INK 2; PAPER 6;"MAIN MENU"
11 PRINT AT 6,0;"1. Change Size of Letter."
12 PRINT "2. Instructions."
13 PRINT "3. Print 3D Words."
14 PRINT "4. LPRINT Menu."
15 PRINT "5. NEW Program."
16 PRINT "6. LPRINT Instructions.": PRINT "7. LOAD """" SCREEN$ ": PRINT AT 18,0;"Program is in medium size mode."
17 IF INKEY$="1" THEN GO TO 300
18 IF INKEY$="2" THEN GO TO 200
19 IF INKEY$="3" THEN GO TO 45
20 IF INKEY$="4" THEN COPY : GO TO 10
21 IF INKEY$="5" THEN STOP
22 IF INKEY$="6" THEN GO TO 200
23 IF INKEY$="7" THEN GO TO 600
24 GO TO 17
45 CLS
50 PRINT '' PAPER 0; INK 7;AT 0,1;"Now please follow the prompts."
64 PRINT AT 21,4; INK 7; PAPER 2;"PRESS SPACE TO CONTINUE"
65 PAUSE 0
67 BORDER 7: PAPER 7: INK 0: CLS
70 CLS : FOR n=0 TO 10: BEEP .02,n: NEXT n
80 INPUT "Pixels from top? ";p
90 INPUT "Letters? (7 max) ";a$: IF LEN a$>7 OR LEN a$<1 THEN BEEP 1,-30: GO TO 90
91 INPUT "Color (0-6) ";p$
92 IF p$="1" THEN INK 1
93 IF p$="2" THEN INK 2
94 IF p$="3" THEN INK 3
95 IF p$="4" THEN INK 4
96 IF p$="5" THEN INK 5
97 IF p$="6" THEN INK 6
98 IF p$="0" THEN INK 0
99 IF p$="7" THEN INK 7: IF p$>"7" OR p$<"0" THEN GO TO 91
100 LET a=LEN a$: PRINT INK 7;AT 21,0;a$: BEEP .1,1: BEEP .1,2: BEEP .1,3: BEEP .1,4: BEEP .1,5: BEEP .1,6
110 FOR f=0 TO 8*a-1: FOR n=0 TO 7
120 IF POINT (f,n)=0 THEN GO TO 160
130 PLOT f*4,n*4+135-p: DRAW 4,0: DRAW 0,4: DRAW -4,0: DRAW 0,-3: DRAW 3,0: DRAW 0,2: DRAW -2,0: DRAW 0,-1: DRAW 2,0: DRAW -2,-2
140 DRAW 5,5: DRAW 0,4: DRAW 0,-4: DRAW 4,0: DRAW 0,4: DRAW 0,-4: DRAW -5,-5
150 DRAW 0,4: DRAW 5,5: DRAW -4,0: DRAW -5,-5
160 NEXT n: NEXT f
170 IF a$="3D WORD" THEN PAUSE 50: GO TO 40
180 INPUT "Write some more? (y/n) ";w$
181 IF w$="n" OR w$="N" THEN GO TO 240
182 IF w$="y" OR w$="Y" THEN GO TO 185
185 INPUT "Clear Screen? ";t$
186 IF t$="y" OR t$="Y" THEN CLS : GO TO 80
187 IF t$="n" OR t$="N" THEN GO TO 80
188 GO TO 185
200 CLS
202 PRINT AT 0,0; INK 2; PAPER 6;"JOHN HUNTON -- 3D WORDS"
203 PRINT AT 2,0;"This program allows you to "
205 PRINT "generate 3D letters on your"
206 PRINT "T/S 2068 or Z.X. Spectrum."
208 PRINT
209 PRINT "First you must select the size "
210 PRINT "that you want your letters to be"
211 PRINT "then type your letters in and "
212 PRINT "the computer will do the rest"
213 PRINT
215 PRINT ; INK 2;"Size 1 = Small 20 pixels high."
216 PRINT ; INK 2;"Size 2 = Medium 30 pixels high."
217 PRINT ; INK 2;"Size 3 = Large 40 pixels high."
218 PRINT
219 PRINT INK 1;"Size 1 = 9 Characters per line."
220 PRINT INK 1;"Size 2 = 7 Characters per line."
221 PRINT INK 1;"Size 3 = 6 Characters per line."
223 PRINT AT 19,0; INK 4;"R=RETURN Z=COPY"
224 IF INKEY$="r" OR INKEY$="R" THEN RUN 10
225 IF INKEY$="z" OR INKEY$="Z" THEN PRINT AT 19,0;" ": COPY : GO TO 200
226 GO TO 224
240 BORDER 7: PAPER 7: INK 0
250 INPUT "Copy to Z.X. Printer? ";s$
251 IF s$="y" OR s$="Y" THEN GO TO 260
252 IF s$="n" OR s$="N" THEN GO TO 270
260 INPUT "How Many Copies? ";a$
261 IF a$="1" THEN COPY : GO TO 180
262 IF a$="2" THEN COPY : COPY
263 IF a$="3" THEN COPY : COPY : COPY
264 IF a$="4" THEN COPY : COPY : COPY : COPY
265 GO TO 270
270 INPUT "Save SCREEN$? ";a$
271 IF a$="y" OR a$="Y" THEN GO TO 273
272 IF a$="n" OR a$="N" THEN GO TO 275
273 SAVE "3D"SCREEN$
275 INPUT "Return to Menu ? ";w$
276 IF w$="y" OR w$="Y" THEN GO TO 9
277 IF w$="n" OR w$="N" THEN GO TO 180
278 GO TO 275
300 BORDER 7: PAPER 7: INK 0: CLS
301 PRINT AT 0,0; INK 2; PAPER 6;"JOHN HUNTON -- 3D WORDS"
302 PRINT AT 2,0;"With this program you can "
303 PRINT "have three different sizes of"
304 PRINT "letters."
305 PRINT
306 PRINT "(Refer to Instructions.)"
307 PRINT
308 PRINT INK 2;"Enter Size Of Characters Wanted"
309 PRINT
310 PRINT INK 4;"1. Small"
311 PRINT INK 4;"2. Medium"
312 PRINT INK 4;"3. Large"
313 INPUT "Size 1, 2 or 3 ? ";q$
314 IF q$="1" THEN CLS : GO TO 400
315 IF q$="2" THEN CLS : GO TO 45
316 IF q$="3" THEN CLS : GO TO 500
317 GO TO 313
400 INPUT "Pixels from top? ";p
402 INPUT "Letters? (9 max) ";a$: IF LEN a$>9 OR LEN a$<1 THEN BEEP 1,-30: GO TO 402
404 INPUT "Color (0-6)";p$
406 IF p$="1" THEN INK 1
407 IF p$="2" THEN INK 2
408 IF p$="3" THEN INK 3
409 IF p$="4" THEN INK 4
410 IF p$="5" THEN INK 5
411 IF p$="6" THEN INK 6
412 IF p$="0" THEN INK 0
413 IF p$="7" THEN INK 7: IF p$>"7" OR p$<"0" THEN GO TO 404
420 LET a=LEN a$: PRINT INK 7;AT 21,0;a$: BEEP .1,1: BEEP .1,2: BEEP .1,3: BEEP .1,4: BEEP .1,5: BEEP .1,6
421 FOR f=0 TO 8*a-1: FOR n=0 TO 7
422 IF POINT (f,n)=0 THEN GO TO 430
424 PLOT f*3.5,n*4+140-p: DRAW 4,0: DRAW 0,4: DRAW -4,0: DRAW 0,-3: DRAW 3,0: DRAW 0,2: DRAW -2,0: DRAW 0,-1: DRAW 2,0: DRAW -2,-2
426 DRAW 5,5: DRAW 0,4: DRAW 0,-4: DRAW 4,0: DRAW 0,4: DRAW 0,-4: DRAW -5,-5
428 DRAW 0,4: DRAW 5,5: DRAW -4,0: DRAW -5,-5
430 NEXT n: NEXT f
432 INPUT "Write some more? (y/n)";w$
433 IF w$="n" OR w$="N" THEN GO TO 445
434 IF w$="y" OR w$="Y" THEN GO TO 436
436 INPUT "Clear Screen? ";t$
437 IF t$="y" OR t$="Y" THEN CLS : GO TO 400
438 IF t$="n" OR t$="N" THEN GO TO 400
439 GO TO 436
440 CLS
445 INPUT "Copy to Z.X. Printer? ";s$
446 IF s$="y" OR s$="Y" THEN GO TO 448
447 IF s$="n" OR s$="N" THEN GO TO 460
448 INPUT "How many copies? ";a$
449 IF a$="1" THEN COPY : GO TO 180
450 IF a$="2" THEN COPY : COPY
452 IF a$="3" THEN COPY : COPY : COPY
453 IF a$="4" THEN COPY : COPY : COPY : COPY
460 INPUT "Save SCREEN$? ";a$
461 IF a$="y" OR a$="Y" THEN GO TO 465
462 IF a$="n" OR a$="N" THEN GO TO 470
465 SAVE "3D"SCREEN$
470 INPUT "Return to Menu? ";w$
471 IF w$="y" OR w$="Y" THEN GO TO 9
472 IF w$="n" OR w$="N" THEN GO TO 432
473 GO TO 470
500 INPUT "Pixels from the top? ";p
502 INPUT "Letters (6 max) ";a$: IF LEN a$>6 OR LEN a$<1 THEN BEEP 1,-30: GO TO 90
505 INPUT "Color (0-6) ";p$
506 IF p$="1" THEN INK 1
507 IF p$="2" THEN INK 2
508 IF p$="3" THEN INK 3
509 IF p$="4" THEN INK 4
510 IF p$="5" THEN INK 5
511 IF p$="6" THEN INK 6
512 IF p$="0" THEN INK 0
513 IF p$="7" THEN INK 7: IF p$>"7" OR p$<"0" THEN GO TO 505
515 LET a=LEN a$: PRINT INK 7;AT 21,0;a$: BEEP .1,1: BEEP .1,2: BEEP .1,3: BEEP .1,4: BEEP .1,5: BEEP .1,6
516 FOR f=0 TO 8*a-1: FOR n=0 TO 7
517 IF POINT (f,n)=0 THEN GO TO 522
518 PLOT f*5,n*5+140-p: DRAW 4,0: DRAW 0,4: DRAW -4,0: DRAW 0,-3: DRAW 3,0: DRAW 0,2: DRAW -2,0: DRAW 0,-1: DRAW 2,0: DRAW -2,-2
520 DRAW 5,5: DRAW 0,4: DRAW 0,-4: DRAW 4,0: DRAW 0,4: DRAW 0,-4: DRAW -5,-5
521 DRAW 0,4: DRAW 5,5: DRAW -4,0: DRAW -5,-5
522 NEXT n: NEXT f
523 IF a$="3D WORD" THEN PAUSE 60: GO TO 40
525 INPUT "Write some more? (y/n)";w$
526 IF w$="n" THEN GO TO 535
527 IF w$="y" THEN GO TO 500
530 INPUT "Clear Screen (y/n) ?";t$
531 IF t$="y" OR t$="Y" THEN CLS : GO TO 500
532 IF t$="n" OR t$="N" THEN GO TO 500
533 GO TO 525
535 INPUT "Copy to Z.X. Printer? ";s$
536 IF s$="y" OR s$="Y" THEN GO TO 540
537 IF s$="n" OR s$="N" THEN GO TO 550
538 GO TO 535
540 INPUT "How Many Copies? ";a$
541 IF a$="1" THEN COPY : GO TO 550
542 IF a$="2" THEN COPY : COPY
543 IF a$="3" THEN COPY : COPY : COPY
544 IF a$="4" THEN COPY : COPY : COPY : COPY
545 GO TO 540
550 INPUT "Save SCREEN$ ? ";a$
551 IF a$="y" OR a$="Y" THEN SAVE "3D"SCREEN$ : GO TO 560
552 IF a$="n" OR a$="N" THEN GO TO 560
553 GO TO 550
560 INPUT "Return to Menu? ";a$
561 IF a$="y" OR a$="Y" THEN GO TO 9
562 IF a$="n" OR a$="N" THEN GO TO 525
563 GO TO 560
600 CLS : PRINT AT 0,3; INK 1; PAPER 5;"SCORPIO SOFTWARE 3D WORDS"
601 PRINT AT 3,0; INK 1; FLASH 1;"LOAD """"SCREEN$ MODE"
602 PRINT AT 5,0;"Change to size of print required"
603 PRINT "then LOAD the SCREEN$ you want"
604 PRINT "to work on."
605 PRINT AT 12,0; INK 2;"R=Return to Menu J=LOAD SCREEN$ "
606 IF INKEY$="r" OR INKEY$="R" THEN GO TO 9
607 IF INKEY$="j" OR INKEY$="J" THEN CLS : LOAD ""SCREEN$ : BEEP .1,0: GO TO 80
608 GO TO 606
700 SAVE "3D WORDS" LINE 1
701 VERIFY "3D WORDS"