Compucolor.org – Virtual Media

Listing of file='LABELP.BAS;01' on disk='vmedia/invoice_order-sector.ccvf'

0 REM  GENERAL LABEL PRINT PROGRAM *EIKE MUELLER*
5 REM  VERS.811225
6 REM  THIS PROGRAM IS SET UP FOR THE PAPERTIGER PRINTER FAMILY
10 CLEAR 2000
20 PLOT 12,14,6,38,3,15,1
30 PRINT " GENERAL LABEL PRINT PROGRAM "
40 PLOT 15,6,2
42 PRINT :PRINT TAB( 15):INPUT "DO YOU WANT TO GENERATE A DATA BASE? ";DD$
44 IF LEFT$ (DD$,1)= "Y"THEN 4000
50 POKE 33289,120
60 M= 4
65 GOSUB 6000
70 PRINT TAB( 15):INPUT "DO YOU WANT TO USE THE DATA BASE? ";DB$
75 PLOT 28,11:PRINT
80 IF LEFT$ (DB$,1)< > "Y"THEN 170
90 P= 0
95 PRINT
100 PRINT TAB( 8):PRINT "1 - PROGRAM AND DATABASE ON SAME DISK (CD 0:)"
105 PRINT TAB( 8):PRINT "2 - PROGRAM AND DATABASE ON SEPERATE DISKS,"
110 PRINT TAB( 8):PRINT "    BUT USING ONE DISK DRIVE (CD 0:)"
115 PRINT TAB( 8):PRINT "3 - PROGRAM DISK IN DISK DRIVE CD 0:"
120 PRINT TAB( 8):PRINT "    DATABASE DISK IN DISK DRIVE CD 1:"
125 PRINT TAB( 8):PRINT
130 PRINT TAB( 8):INPUT "    PLEASE SELECT OPTION # ";CD
160 GOTO 2000
165 REM 

169 REM  INPUT MODE
170 GOSUB 6000
180 PRINT TAB( 15)"PLEASE ENTER THE TEXT:"
190 PRINT
200 INPUT "1ST LINE: ";L1$
205 IF CH< > 0THEN 525
210 INPUT "2ND LINE: ";L2$
215 IF CH< > 0THEN 525
220 INPUT "3RD LINE: ";L3$
225 IF CH< > 0THEN 525
230 INPUT "4TH LINE: ";L4$
235 IF CH< > 0THEN 525
236 INPUT "5TH LINE: ";L5$
237 IF CH< > 0THEN 525
240 N= 0
242 IF LEFT$ (P$,1)< > "Y"THEN 250
245 INPUT "CHANGE LINE START & PRINT DENSITY? ";LD$
247 IF LEFT$ (LD$,1)< > "Y"THEN 440
250 PRINT :PRINT TAB( 14)"ENTER LINE START AND PRINT DENSITY"
255 PRINT
260 L1= 0:L2= 0:L3= 0:L4= 0:L5= 0
280 PRINT TAB( 14)"     1 - 16.5 CHAR/IN "
290 PRINT TAB( 14)"     2 - 12.0 CHAR/IN "
300 PRINT TAB( 14)"     3 - 10.0 CHAR/IN "
310 PRINT TAB( 14)"     4 -  8.3 CHAR/IN "
320 PRINT TAB( 14)"     5 - 16.5 CHAR/IN & ENH. "
330 PRINT TAB( 14)"     6 - 12.0 CHAR/IN & ENH. "
340 PRINT TAB( 14)"     7 - 10.0 CHAR/IN & ENH. "
350 PRINT TAB( 14)"     8 -  8.3 CHAR/IN & ENH. "
355 PRINT
360 INPUT "LINE 1: ";P1
362 PRINT TAB( 12):PLOT 28:INPUT "";L1
364 INPUT "LINE 2: ";P2
366 PRINT TAB( 12):PLOT 28:INPUT "";L2
368 INPUT "LINE 3: ";P3
370 PRINT TAB( 12):PLOT 28:INPUT "";L3
372 IF L4$> " "THEN 380
374 GOTO 400
380 INPUT "LINE 4: ";P4
382 PRINT TAB( 12):PLOT 28:INPUT "";L4
384 IF L5$> " "THEN 390
386 GOTO 400
390 INPUT "LINE 5: ";P5
392 PRINT TAB( 12):PLOT 28:INPUT "";L5
400 REM
408 IF L1= 0THEN L1= 2
410 IF L2= 0THEN L2= 2
411 IF L3= 0THEN L3= 2
412 IF L4= 0THEN L4= 2
413 IF L5= 0THEN L5= 2
414 PRINT
415 IF LEFT$ (ST$,1)= "Y"THEN M= 9:GOSUB 6000:GOTO 525
416 M= 3
418 IF LEFT$ (DL$,1)= "Y"THEN 440
419 IF LEFT$ (P$,1)= "Y"THEN 440
420 INPUT "PRINTER DIP S4: 6 ON AND S3: 1,3,4,5,6,7 ON? ";P$
430 IF LEFT$ (P$,1)< > "Y"THEN PLOT 7,28,11:GOTO 420
440 M= 3:GOSUB 6000
450 PRINT TAB( 15)"THIS WILL BE YOUR LABEL: "
460 PRINT :PRINT :PRINT
470 PRINT "";L1TAB( 5+ P1)""+ L1$
480 PRINT "";L2TAB( 5+ P2)""+ L2$
490 PRINT "";L3TAB( 5+ P3)""+ L3$
495 IF L4$< "!"THEN 502
500 PRINT "";L4TAB( 5+ P4)""+ L4$
502 IF L5$< "!"THEN 510
505 PRINT "";L5TAB( 5+ P5)""+ L5$
510 PRINT :PRINT
520 PRINT
525 REM
530 INPUT "ENTER LINE # TO BE CHANGED OR 0 IF NO CHANGE REQUIRED ";CH
540 ON CHGOTO 200,210,220,230,236
550 REM 

590 REM  PRINT
600 PLOT 28,11:PRINT TAB( 15):INPUT "HOW MANY LABELS? ";N
610 PRINT
630 PRINT TAB( 20)"P R I N T I N G"
700 PLOT 27,18,4:REM  BAUDRATE= 1200
710 POKE 33265,14:OUT 8,199:REM   OUTPUT TO RS 232 I/F
720 PLOT 17:REM  SELECT PRINTER
730 ON L1GOSUB 1110,1120,1130,1140,1150,1160,1170,1180
740 PRINT TAB( P1);L1$
750 ON L2GOSUB 1110,1120,1130,1140,1150,1160,1170,1180
760 PRINT TAB( P2);L2$
770 ON L3GOSUB 1110,1120,1130,1140,1150,1160,1170,1180
780 PRINT TAB( P3);L3$
790 IF L4$> "!"THEN 810
800 GOTO 840
810 ON L4GOSUB 1110,1120,1130,1140,1150,1160,1170,1180
820 PRINT TAB( P4);L4$
825 IF L5$> "!"THEN 832
830 GOTO 850
832 ON L5GOSUB 1110,1120,1130,1140,1150,1160,1170,1180
834 PRINT TAB( P5);L5$
836 GOTO 855
840 PRINT
850 PRINT
855 PRINT
860 N= N- 1
870 IF N= 0THEN 900
875 X= 0
880 GOTO 730
900 REM  END OF PRINT ROUTINE
910 PLOT 19:REM  DESELECT PRINTER
920 WAIT 1,128,128:OUT 8,207:POKE 33265,0:REM  CRT OUTPUT
930 M= 3:GOSUB 6000
935 X= 0
940 PRINT TAB( 15):INPUT "DO YOU WANT MORE LABELS? ";ML$
950 IF LEFT$ (ML$,1)< > "N"THEN 600
960 PLOT 28,11,7
970 PRINT TAB( 5):INPUT "DO YOU WANT DIFFERENT LABELS WITH THE SAME TEXT? ";ST$
972 IF LEFT$ (ST$,1)< > "N"THEN 1050
973 PLOT 28,11,7
974 PRINT TAB( 8):INPUT "DO YOU WANT TO PUT THIS LABEL ON A FILE? ";FL$
975 IF LEFT$ (FL$,1)= "Y"THEN 3000
976 GOSUB 6000
978 PRINT TAB( 10):INPUT "DO YOU WANT TOTALLY DIFFERENT LABELS? ";DL$
980 IF LEFT$ (DL$,1)= "Y"THEN RUN
990 PLOT 12,3,15,12
995 PRINT "A U F   W I E D E R S E H E N "
999 PLOT 3,0,0:INPUT "";EN:RUN
1000 REM
1025 PRINT
1050 M= 3:GOSUB 6000
1060 PRINT TAB( 2)"";P1TAB( 6)"";L1TAB( 11)""+ L1$
1062 PRINT TAB( 2)"";P2TAB( 6)"";L2TAB( 11)""+ L2$
1064 PRINT TAB( 2)"";P3TAB( 6)"";L3TAB( 11)""+ L3$
1066 PRINT TAB( 2)"";P4TAB( 6)"";L4TAB( 11)""+ L4$
1068 PRINT TAB( 2)"";P5TAB( 6)"";L5TAB( 11)""+ L5$
1070 PRINT :GOTO 245
1110 PLOT 31,2:RETURN
1120 PLOT 30,2:RETURN
1130 PLOT 29,2:RETURN
1140 PLOT 28,2:RETURN
1150 PLOT 31,1:RETURN
1160 PLOT 30,1:RETURN
1170 PLOT 29,1:RETURN
1180 PLOT 28,1:RETURN
1190 REM 

2000 REM  GET DATA FROM DATA BASE
2010 GOSUB 6000
2015 PRINT
2020 PRINT TAB( 15):PRINT "THE FOLLOWING FILES EXIST:"
2025 PRINT
2028 PRINT TAB( 19)"0 - ENTER LABEL TEXT"
2030 PRINT TAB( 19)"1 - PERSONAL LABELS"
2040 PRINT TAB( 19)"2 - BUSINESS LABELS"
2050 PRINT TAB( 19)"3 - OTHERS"
2060 REM
2070 PRINT
2080 PRINT TAB( 15):INPUT "ENTER # AND HIT RETURN ";DF
2085 IF DF< 0OR DF> 4THEN PLOT 7,28,11:GOTO 2080
2086 IF DF= 0THEN GOSUB 6000:GOTO 180
2090 IF DF= 1THEN DF$= "PERS"
2100 IF DF= 2THEN DF$= "BUSI"
2110 IF DF= 3THEN DF$= "OTHE"
2120 GOSUB 6000
2130 IF CD= 3THEN PLOT 27,4:PRINT "DEV 1:":PLOT 27,27
2135 FILE "T",6100
2140 FILE "R",1,DF$,8
2145 IF P= 1THEN 3020
2150 P= 0:R= 0:P1= 0:C1= 0
2160 R= R+ 1:IF R> 50THEN 2250
2170 GET 1,R;P1,P2,P3,P4,P5,L1,L2,L3,L4,L5,B1
2180 IF B1< 2THEN 2250
2190 GET 1,R;P1,P2,P3,P4,P5,L1,L2,L3,L4,L5,B1,B2,B3,B4,B5,L1$[B1]
2200 REM 
2220 PRINT "";RTAB( 5)""+ L1$
2230 C1= C1+ 1:IF C1> 25THEN C1= 0:GOTO 2250
2240 GOTO 2160
2250 PRINT :INPUT "ENTER # OF LABEL, 0 FOR NEXT DISPLAY, -# TO DELETE LABEL ";Z
2260 GOSUB 6000
2265 IF Z< 0THEN 2400
2270 IF R= > 50THEN R= 0
2280 IF Z= 0THEN 2160
2290 GET 1,Z;P1,P2,P3,P4,P5,L1,L2,L3,L4,L5,B1,B2,B3,B4,B5,L1$[B1],L2$[B2],L3$[B3],L4$[B4],L5$[B5]
2300 FILE "C",1
2305 IF CD= 3THEN PLOT 27,4:PRINT "DEV 0:":PLOT 27,27
2310 IF LEFT$ (P$,1)< > "Y"THEN 420
2320 GOTO 440
2390 REM  

2400 REM  DELETE LABEL
2410 Z= ABS (Z)
2420 AZ$= " "
2430 PUT 1,Z;AZ$[255]
2440 FILE "C",1
2450 PRINT TAB( 15)"LABEL #";Z;" DELETED "
2460 FOR X= 1TO 2000:NEXT X
2470 GOTO 2000
2990 REM

3000 REM  STORE ON FILE
3010 P= 1:GOTO 2000
3020 Z= 0
3030 Z= Z+ 1:IF Z> 50THEN PRINT "NO MORE ROOM IN THIS CATEGORY":FILE "C",1:GOTO 3000
3040 GET 1,Z;A$[40],B
3050 IF B> 1THEN 3030
3100 REM
3101 B1= LEN (L1$):B2= LEN (L2$):B3= LEN (L3$):B4= LEN (L4$):B5= LEN (L5$)
3102 IF B4= 0THEN B4= 1
3103 IF B5= 0THEN B5= 1
3107 PRINT TAB( 12)P1,P2,P3,P4,P5
3108 PRINT TAB( 12)L1,L2,L3,L4,L5
3109 PRINT TAB( 12)B1,B2,B3,B4,B5
3110 PUT 1,Z;P1,P2,P3,P4,P5,L1,L2,L3,L4,L5,B1,B2,B3,B4,B5,L1$[B1],L2$[B2],L3$[B3],L4$[B4],L5$[B5]
3120 FILE "C",1
3125 IF CD= 3THEN PLOT 27,4:PRINT "DEV 0:":PLOT 27,27
3130 GOTO 976
3990 REM

4000 REM  GENERATING DATA FILES
4005 CLEAR 500
4010 PLOT 12,3,15,1,14,6,38
4020 PRINT " GENERATE DATA FILES FOR LABELS "
4025 PLOT 15,6,2
4027 PRINT TAB( 15):INPUT "HIT ENTER WHEN DATA DISK INSERTED ";EN
4028 PLOT 28,11:PRINT TAB( 15)"THIS WILL TAKE A WHILE...."
4029 PRINT :PRINT TAB( 15)"I WILL CALL YOU WHEN FINISHED"
4030 FILE "T",6200
4040 FILE "N","PERS",50,256,1
4045 DF$= "PERS"
4050 GOSUB 4400
4060 FILE "N","BUSI",50,256,1
4065 DF$= "BUSI"
4070 GOSUB 4400
4100 FILE "N","OTHE",50,256,1
4105 DF$= "OTHE"
4110 GOSUB 4400
4115 DF$= ""
4120 FOR X= 30TO 3STEP - 1:PLOT 3,0,X,11:NEXT X
4130 PRINT "THE FOLLOWING DATA FILES HAVE BEEN GENERATED:"
4135 PRINT
4140 PRINT TAB( 5)"PERS FOR PERSONAL LABELS"
4150 PRINT TAB( 5)"BUSI FOR BUSINESS LABELS"
4170 PRINT TAB( 5)"OTHE FOR ALL OTHER CATEGORIES"
4180 FOR X= 1TO 1000:PLOT 7:NEXT X
4184 FOR X= 1TO 1000:NEXT X
4188 FOR X= 1TO 1000:PLOT 7:NEXT X
4190 RUN
4390 REM 

4400 REM  CLEAR DATA FILES
4410 FILE "R",1,DF$,8
4420 AZ$= " "
4430 FOR X= 1TO 50
4440 PUT 1,X;AZ$[255]
4450 NEXT X
4460 FILE "C",1
4470 RETURN
5980 REM 

5990 REM  FILE T ROUTINES
6000 FOR X= 30TO MSTEP - 1:PLOT 3,0,X,11:NEXT X:RETURN
6100 PRINT "THERE IS NOT THE DATABASE DISK IN THE DISK DRIVE"
6110 PRINT :INPUT "DO YOU WANT TO CREATE THE DATABASE FILES? ";CD$
6120 IF LEFT$ (CD$,1)= "Y"THEN 4000
6130 PLOT 28,28,11:INPUT "PLEASE CHECK FOR THE RIGHT DISK & HIT RETURN ";EN
6140 M= 10:GOSUB 6000
6150 GOTO 2140
6200 PRINT "THERE IS NOT ENOUGH ROOM ON THIS DISK!"
6210 PRINT :INPUT "PLEASE INSERT ANOTHER ONE AND HIT RETURN ";EN
6220 GOTO 4000