10 REM    *********  PRINT.BAS  ********** REV 2.O ********** 08/20/83 ********
20 '
30 '                by STEVE CUTTER & PAT WATTERS
40 '
50 PRINT CHR$(26)
60 INPUT "52 or 80 column";COLUMN%
70 IF COLUMN%=52 THEN WIDTH 52
80 IF COLUMN%=80 THEN WIDTH 80
90 '
100 PRINT CHR$(26)
110 PRINT:PRINT TAB(14); "     ****************************************"
120 PRINT TAB(14);"*****                                          *****"
130 PRINT:PRINT:PRINT TAB(14); "           T U R N   O N   P R I N T E R      "
140 PRINT:PRINT:PRINT TAB(14);"*****                                          *****"
150 PRINT TAB(14);"     ******************************************"
160 PRINT:PRINT:INPUT "     PRESS RETURN WHEN READY";Y$
170 '
180 LPRINT CHR$(27)"@";
190 A1$="  ":A2$="  ":A3$="  ":A4$="  ":A5$="  ":A6$="  ":A7$="  ":A8$="  "
200 B1$="OFF":B2$="OFF":B3$="OFF":B4$="OFF":B5$="OFF":B6$="OFF"
210 B7$="OFF":B8$="OFF"
220 PRINT CHR$(26)
230 PRINT TAB(18);"PRINT MODE MENU"
240 PRINT :PRINT 
250 PRINT TAB(14);"["A1$"]";TAB(19);"["B1$"]";"  1  COMPRESSED"
260 PRINT TAB(14);"["A2$"]";TAB(19);"["B2$"]";"  2  DOUBLE WIDTH"
270 PRINT TAB(14);"["A3$"]";TAB(19);"["B3$"]";"  3  DOUBLE STRIKE"
280 PRINT TAB(14);"["A4$"]";TAB(19);"["B4$"]";"  4  EMPHASIZED"
290 PRINT TAB(14);"["A5$"]";TAB(19);"["B5$"]";"  5  SUPERSCRIPT"
300 PRINT TAB(14);"["A6$"]";TAB(19);"["B6$"]";"  6  SUBSCRIPT"
310 PRINT TAB(14);"["A7$"]";TAB(19);"["B7$"]";"  7  UNDERLINE"
320 PRINT TAB(14);"["A8$"]";TAB(19);"["B8$"]";"  8  ITALICS" 
330 PRINT:PRINT TAB(26);"9 GO TO FORMAT MENU"
340 PRINT:PRINT TAB(25);"10 TO EXIT"
350 PRINT:PRINT "Scripts do not work with DOUBLE WIDTH or EMPHASIZED."
360 PRINT "Turning off scripts leaves printer in DOUBLE STRIKE."
370 PRINT:INPUT "ENTER OPTION NUMBERS AND PRESS RETURN AFTER EACH ONE";SELECT%
380 ON SELECT% GOTO 410,450,490,530,570,610,640,680,730,1300
390 PRINT "Enter only  1 THROUGH 10": GOTO 370
400 '
410 IF A1$="ON" THEN 430
420 LPRINT CHR$(15);:A1$="ON":B1$="   ":GOTO 220
430 LPRINT CHR$(18);:A1$="  ":B1$="OFF":GOTO 220
440 '
450 IF A2$="ON" THEN 470
460 LPRINT CHR$(27) "W" CHR$(1);:A2$="ON":B2$="   ":GOTO 220
470 LPRINT CHR$(27)"W"CHR$(0);:A2$="  ":B2$="OFF":GOTO 220
480 '
490 IF A3$="ON" THEN 510
500 LPRINT CHR$(27) "G";:A3$="ON":B3$="   ":GOTO 220
510 LPRINT CHR$(27) "H";:A3$="  ":B3$="OFF":GOTO 220
520 '
530 IF A4$="ON" THEN 550
540 LPRINT CHR$(27) "E";:A4$="ON":B4$="   ": GOTO 220
550 LPRINT CHR$(27) "F";:A4$="  ":B4$="OFF": GOTO 220
560 '
570 IF A5$="ON" THEN 590
580 LPRINT CHR$(27) "S"CHR$(O);:A5$="ON":B5$="   ":GOTO 220
590 LPRINT CHR$(27) "T";:A5$="  ":B5$="OFF":A3$="ON":B3$="   ":A6$="  ":B6$="OFF":GOTO 220
600 '
610 IF A6$="ON" THEN 590
620 LPRINT CHR$(27) "S"CHR$(1);:A6$="ON":B6$="   ": GOTO 220
630 '
640 IF A7$="ON" THEN 660
650 LPRINT CHR$(27) "-" CHR$(1);:A7$="ON":B7$="   ": GOTO 220
660 LPRINT CHR$(27) "-" CHR$(0);:A7$="  ":B7$="OFF": GOTO 220
670 '
680 IF A8$="ON" THEN 700
690 LPRINT CHR$(27) "4";:A8$="ON":B8$="   ":GOTO 220
700 LPRINT CHR$(27) "5";:A8$="  ":B8$="OFF": GOTO 220
710 '
720 '
730 C1$=" 0":C2$="80":C3$="11":C4$="66":C5$="36"
740 D1$="   ":D2$="   ":D3$="   ":D4$="   ":D5$="   "
750 PRINT :PRINT:PRINT CHR$(26)
760 PRINT TAB(18);"PAGE FORMAT MENU"
770 PRINT:PRINT :PRINT TAB(4);"Standard "
780 PRINT TAB(5);"Values"
790 PRINT TAB(6);"["C1$"]";TAB(14);"["D1$"]";"  1  SKIP PERFORATION"
800 PRINT TAB(6);"["C2$"]";TAB(14);"["D2$"]";"  2  SET PAPER WIDTH"
810 PRINT TAB(6);"["C3$"]";TAB(14);"["D3$"]";"  3  SET PAPER LENGTH IN INCHES"
820 PRINT TAB(22);"OR"
830 PRINT TAB(6);"["C4$"]";TAB(14);"["D4$"]";"  4  SET PAPER LENGTH IN LINES"
840 PRINT TAB(6);"["C5$"]";TAB(14);"["D5$"]";"  5  SET LINE SPACING"
850 PRINT:PRINT TAB(21);"6 GO TO PRINT MODE MENU"
860 PRINT: PRINT TAB(21);"7 TO EXIT"
870 PRINT:INPUT "ENTER OPTION NUMBERS AND PRESS RETURN AFTER EACH ONE";CHOICE%
880 ON CHOICE% GOTO 910,980,1060,1140,1210,220,1300
890 PRINT "ENTER ONLY 1 THROUGH 7":GOTO 870
900 '
910 INPUT "Spaces to skip";P
920 IF P=0 THEN LPRINT CHR$(27)"O";:D1$="   ":GOTO 750
930 IF P>0 AND P<10 THEN D1$=" "+STR$(P)
940 IF P>9 AND P<100 THEN D1$=STR$(P)
950 IF P>99 THEN D1$=RIGHT$(STR$(P+1000),3)
960 LPRINT CHR$(27)"N"CHR$(P);:GOTO 750
970 '
980 INPUT "Number of spaces for paper width";W
990 IF W=0 THEN PRINT "ZERO WIDTH IS NOT POSSIBLE":GOTO 980
1000 IF W>0 AND W<10 THEN D2$=" "+STR$(W)
1010 IF W>9 AND W<100 THEN D2$=STR$(W)
1020 IF W>99 THEN D2$=RIGHT$(STR$(W+1000),3)
1030 LPRINT CHR$(27)"Q"CHR$(W);:GOTO 750
1040 '
1050 PRINT "Number of inches for paper length"
1060 INPUT "Enter a number from 1 to 22";I
1070 IF I=0 THEN PRINT "ZERO LENGTH IS NOT POSSIBLE":GOTO 1050
1080 IF I>0 AND I<10 THEN D3$=" "+STR$(I)
1090 IF I>9 AND I<100 THEN D3$=STR$(I)
1100 IF I>99 THEN D3$=RIGHT$(STR$(I+1000),3)
1110 LPRINT CHR$(27)"C"CHR$(0)CHR$(I);:GOTO 750
1120 '
1130 PRINT "Number of lines for paper length"
1140 INPUT "Enter a number from 1 to 127";L
1150 IF L=0 THEN PRINT "ZERO LENGTH IS NOT POSSIBLE":GOTO 1130
1160 IF L>0 AND L<10 THEN D4$=" "+STR$(L)
1170 IF L>9 AND L<100 THEN D4$=STR$(L)
1180 IF L>99 THEN D4$=RIGHT$(STR$(L+1000),3)
1190 LPRINT CHR$(27)"C"CHR$(L);:GOTO 750
1200 '
1210 PRINT "Sets line spacing in 1/216ths of an inch."
1220 PRINT "3/216= 1/72; 21/216= 7/72; 27/216=1/8"
1230 INPUT "Enter a number between 1 and 255";S
1240 IF S=0 THEN PRINT "ZERO SPACING IS NOT POSSIBLE":GOTO 1230
1250 IF S>0 AND S<10 THEN D5$=" "+STR$(S)
1260 IF S>9 AND S<100 THEN D5$=STR$(S)
1270 IF S>99 THEN D5$=RIGHT$(STR$(S+1000),3)
1280 LPRINT CHR$(27)"3"CHR$(S);:GOTO 750
1290 '
1300 IF A1$="ON" THEN LPRINT "COMPRESSED"
1310 IF A2$="ON" THEN LPRINT "DOUBLE WIDTH"
1320 IF A3$="ON" THEN LPRINT "DOUBLE STRIKE"
1330 IF A4$="ON" THEN LPRINT "EMPHASIZED"
1340 IF A5$="ON" THEN LPRINT "SUPERSCRIPT"
1350 IF A6$="ON" THEN LPRINT "SUBSCRIPT"
1360 IF A7$="ON" THEN LPRINT "UNDERLINE"
1370 IF A8$="ON" THEN LPRINT "ITALICS"
1380 PRINT CHR$(26):PRINT 
1390 INPUT "DO YOU WANT TO EXIT TO CP/M"; S$
1400 IF S$<>"Y" THEN 1420
1410 LPRINT CHR$(12): SYSTEM
1420 PRINT:PRINT "EXIT FROM PROGRAM"
1430 END
TO EXIT TO CP/M"; S$
1400 IF S$<>"Y" THEN 1420
1410 LPRINT CHR$(12): SYSTEM
1420 PRINT:PRINT "EXIT