3D Words

Related Articles: 3D Letters for the 2068
Developer(s): W. E. Walker
Date: November 1985
Type: Program
Platform(s): TS 2068

Prints words in 3D.

Appears on

Capital Area Timex Sinclair User Group’s Library Tape.
Library tape from the Sinclair Computer Users Society (SINCUS).

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"
Scroll to Top