1 REM HEXBIN 1.1, DECEMBER 1984 2 REM -- BY DAN FLEYSHER -- 3 REM (FLEYSHER.WBST@XEROX) 4 REM THIS BASIC PROGRAM CONVERTS A 5 REM HEXADECIMAL TEXT FILE CREATED 6 REM BY COMPANION PROGRAM BINHEX 7 REM BACK INTO ITS ORIGINAL BINARY 8 REM FILE FORMAT. THE CHECKSUM AT 9 REM THE END OF THE INPUT HEX FILE 10 REM IS VERIFIED. 11 REM 20 DIM FILEIN$(15),FILEOUT$(15) 30 BUFSIZ=37:DIM BUF$(BUFSIZ) 40 ASCA=ASC("A"):ASCF=ASC("F"):ASC0=ASC("0"):ASC9=ASC("9") 50 ? "} HEXBIN 1.0":? :? 60 TRAP 60:? "INPUT FILENAME";:INPUT FILEOUT$ 70 IF FILEOUT$<>"" THEN 90 80 FILEOUT$="D:HEXFILE.TXT":? " ";FILEOUT$:GOTO 100 90 GOSUB 1000 100 FILEIN$=FILEOUT$:? 110 TRAP 110:? "OUTPUT FILENAME";:INPUT FILEOUT$:GOSUB 1000:? 120 TRAP 40000:SUM=0 130 OPEN #4,4,0,FILEIN$:OPEN #5,8,0,FILEOUT$ 140 TRAP 310:INPUT #4,BUF$:? BUF$:LBUF=LEN(BUF$):IF LBUF<7 THEN 140 142 FOR I=1 TO LBUF-6:IF BUF$(I,I+6)=".START." THEN 146 144 NEXT I:GOTO 140 146 POP :? " STARTING FILE CONVERSION" 150 TRAP 310:INPUT #4,BUF$:? BUF$:LBUF=LEN(BUF$):EVENODD=0:REM EVEN=0 155 IF LBUF = 0 THEN 150 160 FOR I=1 TO LBUF 170 HEX1=ASC(BUF$(I,I)) 180 IF HEX1>=ASC0 AND HEX1<=ASC9 THEN HEX1=HEX1-ASC0:GOTO 200 190 IF HEX1>=ASCA AND HEX1<=ASCF THEN HEX1=HEX1-ASCA+10:GOTO 200 192 IF LBUF