5 CLS:KEY OFF:SCREEN 0,0,0:WIDTH 80:CLEAR:FOR I=1 TO 10:KEY I,"":NEXT:KEY 2,"GOTO 60"+CHR$(13):KEY 10,"RUN"+CHR$(34)+"BLUEMENU"+CHR$(34)+CHR$(13):LIST 10-57 10 '***************** NEC 8023 MULTI-LABEL PROGRAM **************************** 16 '?????????????????????????????????????????????????????????????????????????? 18 '? WRITTEN FOR SPECIALIZED USE OF NEC 8023A PRINTER ? 20 '? ? 22 '? This program is designed for use with the NEC 8023 dot matrix printer. ? 24 '? Codes may be modified to fit other printers. Also, print statements ? 26 '? are written to LPT1:. If you are using LPT2, change the statement in ? 28 '? line 110 so that "LPT1:" reads "LPT2:" All or part of this program ? 29 '? may be used without license or attribution. An EPSON/GEMINI version ? 30 '? is also included on this disk. ? 31 '? ? 32 '? NOTE:NOTE:NOTE: Do not run this program on an EPSON/MX-80 printer. The ? 33 '? control codes can cause the printer to print "garbage" and LOCK UP. ? 34 '? ? 35 '? (c) G I N A C O -- 1983 Ver 5.1/160/320 ? 36 '?????????????????????????????????????????????????????????????????????????? 55 ' ***** < F2 > to RUN ******* < F10 > For BLUEMENU ***** 57 ' ====== To avoid DOCUMENTATION BOX each time, REM or DELETE line 5 ====== 60 CLS:SCREEN 0,0,0:WIDTH 80:CLEAR:FOR I=1 TO 10:KEY I,"":NEXT 100 CLOSE 110 OPEN "LPT1:" FOR OUTPUT AS #2 120 CLS:LOCATE 6,16 130 PRINT "THIS WILL PRINT LABELS ON STANDARD LABEL STOCK." 140 PRINT TAB( 10)"YOU MAY PRINT AT 10,12,OR 16.5 CPI BASED ON YOUR SELECTION." 150 PRINT 160 PRINT 170 PRINT TAB( 22)"SELECT PITCH ANDCHOICE" 180 PRINT 190 PRINT TAB( 22)"PICA -- 10 CPS................1" 200 PRINT TAB( 22)"ELITE -- 12 CPS...............2" 210 PRINT TAB( 22)"CONDENSED --- 17.0 CPS........3" 220 PRINT TAB( 22)"FIRST LINE ONLY EXPANDED......4" 230 PRINT TAB( 22)"ALL LINES EXPANDED............5" 240 PRINT TAB( 22)"END PROGRAM...................6" 250 PRINT 260 PRINT 270 PRINT TAB( 22)"CHOOSE........"; 280 INPUT X! 290 IF X! < 0 OR X! > 6 THEN 280 ELSE 300 300 ON X! GOTO 310,330,350,1150,1560,2000 310 PRINT #2, CHR$(27); CHR$(78); CHR$(27); CHR$(33); 320 GOTO 370 330 PRINT #2, CHR$(27); CHR$(69); 340 GOTO 370 350 PRINT #2, CHR$(27); CHR$(81); 360 GOTO 370 370 CLS 380 LOCATE 10,10 390 PRINT "WAS THAT PITCH SETTING OK " 400 GOSUB 1000 410 IF Q! = 1 THEN 430 420 IF Q! = 2 THEN 120 430 CLS 440 LOCATE 8,10 450 LINE INPUT "LINE 1:> ";L1$ 460 LOCATE 9,10 470 LINE INPUT "LINE 2:> ";L2$ 480 LOCATE 10,10 490 LINE INPUT "LINE 3:> ";L3$ 500 LOCATE 11,10 510 LINE INPUT "LINE 4:> ";L4$ 520 LOCATE 12,10 530 LINE INPUT "LINE 5:> ";L5$ 540 PRINT 550 PRINT TAB( 10)"IS INPUT CORRECT ? " 560 GOSUB 1000 570 IF Q! = 1 THEN 590 580 IF Q! = 2 THEN 430 590 REM *************** LABEL PRINT ROUTINE ****************************** 600 CLS 610 LOCATE 11,10 620 INPUT "HOW MANY LABELS ";X! 630 LOCATE 13,10 640 INPUT "LEFT PRINT MARGIN ";Z! 650 LOCATE 15,10 660 PRINT "ARE THESE SETTINGS CORRECT? " 670 GOSUB 1000 680 IF Q! = 1 THEN 700 690 IF Q! = 2 THEN 590 700 PRINT #2, CHR$(27); CHR$(76);"000"; 710 CLS 720 LOCATE 10,10 730 INPUT "PRESS ENTER WHEN PRINTER READY. ";R! 740 ON R! GOTO 750 750 FOR NL! = 1 TO X! 760 PRINT #2, CHR$(13); 770 PRINT #2, TAB( Z!);L1$ 780 PRINT #2, TAB( Z!);L2$ 790 PRINT #2, TAB( Z!);L3$ 800 PRINT #2, TAB( Z!);L4$ 810 PRINT #2, TAB( Z!);L5$; CHR$(13); 820 NEXT NL! 830 :REM PRINT #2, CHR$(27); CHR$(76);"000"; 840 CLS 850 :REM ********************* TERMINATION ROUTE ******************** 860 LOCATE 10,10 870 PRINT "REPRINT THIS LABEL " 880 GOSUB 1000 890 IF Q! = 1 THEN 910 900 IF Q! = 2 THEN 940 910 X! = 0 920 Z! = 0 930 GOTO 600 940 CLS 950 LOCATE 12,10 960 PRINT "ENTER ANOTHER LABEL " 970 GOSUB 1000 980 IF Q! = 1 THEN 120 990 IF Q! = 2 THEN 1130 1000 COLOR 0,7 1010 LOCATE 20,10 1020 PRINT " YES OR NO ? " 1030 COLOR 7,0 1032 A$=INKEY$:IF A$="" THEN 1032 1040 IF (LEFT$(A$,1)=CHR$(89) OR LEFT$(A$,1)=CHR$(121)) THEN Q! = 1 : RETURN 1050 IF (LEFT$(A$,1)=CHR$(78) OR LEFT$(A$,1)=CHR$(110)) THEN Q! = 2 : RETURN 1060 SOUND 400,4:GOTO 1032 1130 CLOSE 1140 END 1150 PRINT #2, CHR$(27); CHR$(78); 1160 CLS 1170 LOCATE 9,20 1180 COLOR 7,0 1190 PRINT "CHECK LABEL POSITION IN PRINTER" 1200 COLOR 7,0 1210 FOR I! = 1 TO 2000 1220 NEXT 1230 CLS 1240 LOCATE 8,20 1250 PRINT "THIS WILL PRINT FIRST LINE ONLY IN EXPANDED PRINT" 1260 LOCATE 11,20 1270 LINE INPUT "LINE ONE ";A$(1) 1280 LOCATE 12,20 1290 LINE INPUT "LINE TWO ";A$(2) 1300 LOCATE 13,20 1310 LINE INPUT "LINE THREE ";A$(3) 1320 LOCATE 14,20 1330 LINE INPUT "LINE FOUR ";A$(4) 1340 LOCATE 15,20 1350 LINE INPUT "LINE FIVE ";A$(5) 1360 PRINT 1370 LOCATE 17,20 1380 PRINT "ENTER <1> IF OK <2> TO REDO "; 1390 INPUT X! 1400 ON X! GOTO 1410,1230 1410 CLS 1420 LOCATE 19,20 1430 INPUT "HOW MANY LABELS ";PN! 1440 FOR K! = 1 TO PN! 1450 PRINT #2, CHR$(27); CHR$(76);"000"; 1460 PRINT #2, CHR$(27); CHR$(33); CHR$(14);A$(1); CHR$(15) 1470 FOR I! = 2 TO 5 1480 PRINT #2,A$(I!) 1490 NEXT 1500 PRINT #2, CHR$(13); 1510 NEXT K! 1520 LOCATE 19,20 1530 PRINT "TO REPRINT ENTER <1> FOR NEW <2> "; 1540 INPUT X! 1550 ON X! GOTO 1370,1980 1560 PRINT #2, CHR$(27); CHR$(76);"000"; 1570 CLS 1580 LOCATE 9,20 1590 COLOR 7,0 1600 PRINT "CHECK LABEL POSITION IN PRINTER" 1610 COLOR 7,0 1620 FOR I! = 1 TO 2000 1630 NEXT 1640 CLS 1650 LOCATE 8,20 1660 PRINT "THIS WILL PRINT ALL LINES IN EXPANDED PRINT." 1670 LOCATE 12,20 1680 LINE INPUT "LINE ONE ";A$(1) 1690 LOCATE 13,20 1700 LINE INPUT "LINE TWO ";A$(2) 1710 LOCATE 14,20 1720 LINE INPUT "LINE THREE ";A$(3) 1730 LOCATE 15,20 1740 LINE INPUT "LINE FOUR ";A$(4) 1750 LOCATE 16,20 1760 LINE INPUT "LINE FIVE ";A$(5) 1770 PRINT 1780 LOCATE 18,20 1790 PRINT "ENTER <1> IF OK <2> TO REDO "; 1800 INPUT X! 1810 ON X! GOTO 1820,1570 1820 LOCATE 20,20 1830 INPUT "HOW MANY LABELS ";PN! 1840 FOR K! = 1 TO PN! 1850 PRINT #2, CHR$(27); CHR$(76);"000"; 1860 PRINT #2, CHR$(27); CHR$(33); CHR$(14); 1870 PRINT #2,A$(1) 1880 FOR I! = 2 TO 5 1890 PRINT #2,A$(I!) 1900 NEXT 1910 PRINT #2, CHR$(15) 1920 NEXT K! 1930 LOCATE 22,20 1940 PRINT "TO REPRINT ENTER <1> FOR NEW <2> "; 1950 INPUT X! 1960 CLS 1970 ON X! GOTO 1780,1980 1980 PRINT #2, CHR$(15); CHR$(27); CHR$(78); 1990 GOTO 100 2000 END 65000 REM ******************** SAVE ROUTINE *********************************** 65100 SAVE "B:NECLABEL.BAS"