10 REM Label-IT - The Label Printer 20 REM by David Bradforth 30 REM (c) David Bradforth 1995 40 : 50 REM NOTE! 60 REM -> This utility is FREEWARE 70 REM in that you are FREE to 80 REM WARE it however you like! 90 REM (But don't blame me if you 100 REM get caught wearing a floppy 110 REM disc!) 120 REM <- Enjoy it! 130 : 140 ON ERROR VDU 22,7:HIMEM=&3000:REPORT:PRINT " at line ";ERL:END 150 PROCsetup 160 MODE 7:VDU 23;8202;0;0;0; 170 PROCtitle 180 PRINTTAB(0,6)""; 190 PRINTSPC(2)"1 ... Change COMPANY field" 200 PRINT'SPC(2)"2 ... Change NAME field" 210 PRINT'SPC(2)"3 ... Change ADDRESS 1 field" 220 PRINT'SPC(2)"4 ... Change ADDRESS 2 field" 230 PRINT'SPC(2)"5 ... Change ADDRESS 3 field" 240 PRINT'SPC(2)"6 ... Change POSTCODE field" 250 PRINT'SPC(2)"P ... Print a Label" 260 PRINT'SPC(2)"Q ... Quit Label-IT" 270 REPEAT 280 A$=GET$ 290 IFA$="p" A$="P" 300 IFA$="a" A$="Q" 310 IF A$="1" PROCchcomp 320 IF A$="2" PROCchname 330 IF A$="3" PROCchadd1 340 IF A$="4" PROCchadd2 350 IF A$="5" PROCchadd3 360 IF A$="6" PROCchpcde 370 IF A$="P" PROCprintl 380 UNTIL A$="Q" 390 CLS 400 END 410 : 420 DEFPROCsetup 430 company$="Joe Bloggs" 440 name$= "Joe Bloggs Enterprises" 450 addrssa$="15 Victoria Street" 460 addrssb$="Albianshire" 470 addrssc$="Cheshire" 480 postcde$="AB4 123" 490 ENDPROC 500 : 510 DEFPROCtitle 520 FOR N=1 TO 2 530 PRINTTAB(4,N)CHR$141;CHR$130;"Label-IT - The Label Printer" 540 NEXT 550 PRINTTAB(7,3)CHR$131;"(c) David Bradforth 1994" 560 ENDPROC 570 : 580 DEFPROCprintl 590 CLS 600 PROCtitle 610 PRINTTAB(0,6)""; 620 PRINT "How many copies would you like?" 630 INPUT ":"numcps 640 IF numcps=0PRINT:PRINT "Return to the Main Menu":PRINT "Press any key to continue":A$=GET$:RUN 650 PRINT "How many spaces between each label?" 660 INPUT ":"numspcs 670 PRINT:PRINT "Place paper/labels in printer, and pressany key to continue." 680 A$=GET$ 690 PRINT:PRINT 700 VDU 2 710 FORn=1 TO numcps 720 PRINTname$ 730 PRINT company$ 740 PRINT addrssa$ 750 PRINT addrssb$ 760 PRINT addrssc$ 770 PRINT postcde$ 780 FOR n=1 TO numspcs 790 PRINT 800 NEXT 810 NEXT 820 VDU 3 830 CLS:GOTO 170 840 ENDPROC 850 : 860 DEFPROCchcomp 870 CLS 880 PROCtitle 890 PRINTTAB(0,6)"Current COMPANY name for label:" 900 PRINTSPC(7);company$ 910 PRINT'"New COMPANY name for label:" 920 INPUT ":"company$ 930 IF company$="" THEN company$=" -- -- -- -- -- " 940 CLS:GOTO 170 950 ENDPROC 960 : 970 DEFPROCchname 980 CLS 990 PROCtitle 1000 PRINTTAB(0,6)"Current NAME on label:" 1010 PRINTSPC(7);name$ 1020 PRINT'"New NAME for label:" 1030 INPUT ":"name$ 1040 IF name$="" THEN VDU 7:PRINT "The label MUST have a name!":GOTO 1020 1050 CLS:GOTO 170 1060 ENDPROC 1070 : 1080 DEFPROCchadd1 1090 CLS 1100 PROCtitle 1110 PRINTTAB(0,6)"Current ADDRESS 1 section on label:" 1120 PRINTSPC(7);addrssa$ 1130 PRINT'"New ADDRESS 1 for label:" 1140 INPUT ":"addrssa$ 1150 IF addrssa$="" THEN VDU 7:PRINT "The label MUST have an address!":GOTO 1130 1160 CLS:GOTO 170 1170 ENDPROC 1180 : 1190 DEFPROCchadd2 1200 CLS 1210 PROCtitle 1220 PRINTTAB(0,6)"Current ADDRESS 2 section on label:" 1230 PRINTSPC(7);addrssb$ 1240 PRINT'"New ADDRESS 2 for label:" 1250 INPUT ":"addrssb$ 1260 IF addrssb$="" THEN VDU 7:PRINT "The label MUST have an address!":GOTO 1240 1270 CLS:GOTO 170 1280 ENDPROC 1290 : 1300 DEFPROCchadd3 1310 CLS 1320 PROCtitle 1330 PRINTTAB(0,6)"Current ADDRESS 3 section on label:" 1340 PRINTSPC(7);addrssc$ 1350 PRINT'"New ADDRESS 3 for label:" 1360 INPUT ":"addrssc$ 1370 IF addrssc$="" THEN VDU 7:PRINT "The label MUST have an address!":GOTO 1350 1380 CLS:GOTO 170 1390 ENDPROC 1400 : 1410 DEFPROCchpcde 1420 CLS 1430 PROCtitle 1440 PRINTTAB(0,6)"Current POSTCODE on label:" 1450 PRINTSPC(7);postcde$ 1460 PRINT'"New POSTCODE for label:" 1470 INPUT ":"postcde$ 1480 IF postcde$="" postcde$=" " 1490 CLS:GOTO 170 1500 ENDPROC