'Program Name : Barcode.bas 'Author : Lloyd L. Smith for Spectra Technical Support 'Date : 10-25-90 'Compuserve # : GO PCVENB, Vendor #12/Spectra, Tech Support ID 71530,2640 'Tech Support BBS: 813-625-1721, PC-Board, 8,N,1 USR HST 300 - 14.4, 24hrs 'Tech Support Fax: 813-625-1698 G2 & G3 compatible 'Tech Support Voc: 813-625-1172 Voice 'Develop Date : 01-11-87 'Illustrative : Program for use and creation of barcodes DIM CHUNG(5, 450) , barcode(44, 19) SCREEN 9 'read barcode info into the array RESTORE barcode1: FOR d = 1 TO 44 FOR e = 1 TO 19 READ barcode(d, e) NEXT e NEXT d 'constants BUFF = 0 'Ascii String to print<<<<<<<<<<<<<<<<< A$ = "*THIS IS A TEST 1010*" PRINT A$ GOSUB INITARRAY GOSUB STUFFBAR GOSUB LINEADJ GOSUB PBAR GOSUB PSCREEN GOSUB INITARRAY GOSUB resetprt END PSCREEN: LOCATE 11, 27: PRINT A$ COUNT = 1 FOR Y = 1 TO 20 FOR X = 1 TO 300 IF CHUNG(1, X) = 0 THEN PSET (150 + X, 160 + Y), 0 ELSE PSET (150 + X, 160 + Y), 15 COUNT = COUNT + 1 NEXT X COUNT = 0 NEXT Y LINEADJ: 'LPRINT CHR$(27); "~0"; CHR$(14): REM CITIZEN MEMORY LINE FEED INCREMENT LPRINT CHR$(27); CHR$(51); CHR$(20); : REM EPSON MEMORY LINE FEED INCREMENT RETURN STUFFBAR: 'IF LEN(a$) > 15 THEN GOTO stuffbuff ' FOR C = 1 TO LEN(A$) CHAR$ = MID$(A$, C, 1) A = INSTR(1, "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-+* .$/%", CHAR$) GOSUB setbar IF CP >= 20 THEN GOTO STUFFBAR NEXT C RETURN setbar: REM BUFFER FOR J = 1 TO 3 ' make the bars three tall FOR I = 1 TO 19 CHUNG(J, I + BUFF) = barcode(A, I) NEXT I NEXT J BUFF = BUFF + 20 RETURN PBAR: REM PRINT THE CHARACTER BUFFER TO THE PRINTER FOR J = 1 TO 3 LPRINT CHR$(27); "K"; CHR$(194); CHR$(1); FOR I = 1 TO 450 LPRINT CHR$(CHUNG(J, I)); NEXT I LPRINT NEXT J LPRINT : LPRINT BUFF = 0 RETURN INITARRAY: 'CLEAR THE PRINT ARRAY BUFFER FOR J = 1 TO 5: FOR I = 1 TO 450: CHUNG(J, I) = 0: NEXT I: NEXT J RETURN resetprt: 'RESET THE PRINTER TO THE POWER ON CONDITION LPRINT CHR$(27); "@" RETURN barcode1: 'BARCODE DATA FILES ' the char - A DATA 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - B DATA 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - C DATA 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255 ' the char - D DATA 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - E DATA 255, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255 ' the char - F DATA 255, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255 ' the char - G DATA 255, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255 ' the char - H DATA 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255 ' the char - I DATA 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255 ' the char - J DATA 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255 ' the char - K DATA 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255 ' the char - L DATA 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255 ' the char - M DATA 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255 ' the char - N DATA 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255 ' the char - O DATA 255, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255 ' the char - P DATA 255, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255 ' the char - Q DATA 255, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255 ' the char - R DATA 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255 ' the char - S DATA 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255 ' the char - T DATA 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255 ' the char - U DATA 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - V DATA 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - W DATA 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 255 ' the char - X DATA 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - Y DATA 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255 ' the char - Z DATA 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255 ' the char - 0 DATA 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 255 ' the char - 1 DATA 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - 2 DATA 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - 3 DATA 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 255 ' the char - 4 DATA 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255 ' the char - 5 DATA 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255 ' the char - 6 DATA 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255 ' the char - 7 DATA 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255 ' the char - 8 DATA 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255 ' the char - 9 DATA 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255 ' the char "-" DATA 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255 ' the char - + DATA 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 0, 0, 255 ' the char - * DATA 255, 0, 0, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 255 ' the char - " " -s pace DATA 255, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255 'the char - . DATA 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255 'the char - $ DATA 255, 0, 0, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255 ' the char - / DATA 255, 0, 0, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255 ' the char - % DATA 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 0, 0, 255