1 ! ********************************************************************* 2 ! * Encode.bas implemented by Trygve Lode (7/25/85) * 3 ! * Lode Data Corporation * 4 ! * 6450 E. Hampden Ave. (303) 781-6309 * 5 ! * Denver, CO 80222 * 6 ! * * 7 ! * Encodes sequential text files * 8 ! * Use numerical key: 5.1551, 1023.6612, or similar * 9 ! ********************************************************************* 10 STRSIZ 250 15 MAP1 FLOAT,F,6 20 MAP1 BIN(6),B,1,@FLOAT 30 J = 2^19 + 3 : M = 2^39 40 INPUT "Unencoded source: ";FILE1$ 50 LOOKUP FILE1$,BLOCKS1 60 IF BLOCKS1=0 THEN ? "File not found." : END 70 IF BLOCKS1<0 THEN ? "File is of wrong type." : END 80 INPUT "Encoded destination: ";FILE2$ 90 LOOKUP FILE2$,BLOCKS2 100 IF BLOCKS2=0 THEN 110 105 INPUT "File exists. Delete it?";Z$:IF Z$[1,1]<>"Y" THEN END 110 OPEN #1,FILE1$,INPUT 120 OPEN #2,FILE2$,OUTPUT 130 INPUT "Key: ";FLOAT : FLOAT = LOG(FLOAT) 140 FOR K=1 TO 47:FLOAT=(J*FLOAT)-M*INT(J*FLOAT/M):NEXT K 150 N=2 160 ? "Processing file." 170 INPUT LINE #1,Z$ : IF EOF(1) THEN 240 ELSE IF LEN(Z$) = 0 THEN 220 180 FOR K = 1 TO LEN(Z$) 190 N=N+1:IF N>4 THEN FLOAT=(J*FLOAT)-M*INT(J*FLOAT/M):N=3 200 Z = ASC(Z$[K,K]) + BIN(N) : Z$[K,K]=CHR$(Z-96*INT((Z-32)/96)) 210 NEXT K 220 PRINT #2,Z$ 230 GOTO 170 240 CLOSE #1 : CLOSE #2 250 ? "Done." : END