DECLARE SUB Input2 (t$, otp$, cl$, c1%, c2%, c3%, pr!, cr!)
DECLARE SUB COMPRESS (fil$, fil2$)
SCREEN 0: WIDTH 80, 25
CLS
Input2 "&Compress, or &Decompress? ", Cod$, "&", 15, 0, 14, 1, 1
30 INPUT "Input file-->"; fil$
IF fil$ = "" THEN GOTO 30
40 INPUT "Output File-->"; fil2$
IF fil2$ = "" THEN GOTO 40
OPEN fil$ FOR BINARY SHARED AS #1
OPEN fil2$ FOR BINARY SHARED AS #2
IF UCASE$(Cod$) = "C" THEN COMPRESS fil$, fil2$
IF UCASE$(Cod$) = "D" THEN DECOMPRESS fil$, fil2$

SUB COMPRESS (fil$, fil2$)
Input2 "&Are &you &crazy &or &something&!?&!?&!?", Cod$, "&", 15, 0, 14, 1, 1
END SUB

SUB Input2 (t$, otp$, cl$, c1%, c2%, c3%, pr, cr)
COLOR c1%, c2%
IF cr = 1 THEN LOCATE , , 1
FOR q = 1 TO LEN(t$)
IF d = 2 THEN d = 0: COLOR c1%, c2%
IF MID$(t$, q, 1) = cl$ THEN COLOR c3%, c2%: d = 2: q = q + 1: tmp$ = tmp$ + MID$(t$, q, 1)
PRINT MID$(t$, q, 1);
NEXT q
20 otp$ = INPUT$(1)
FOR z = 1 TO LEN(tmp$)
IF UCASE$(otp$) = UCASE$(MID$(tmp$, z, 1)) THEN GOTO 10
NEXT z
BEEP: GOTO 20
10 IF pr = 1 THEN PRINT UCASE$(otp$) ELSE PRINT ""
END SUB

