[net.micro.atari] BINHEX 1.0

Fleysher.WBST@XEROX.ARPA (11/20/85)

--------------

1 REM BINHEX 1.0, OCTOBER 1984
2 REM -- BY DAN FLEYSHER --
3 REM (FLEYSHER.WBST@XEROX)
4 REM THIS BASIC PROGRAM CONVERTS A
5 REM BINARY DISK FILE TO THE EQUIV-
6 REM VALENT TEXT FILE CONTAINING
7 REM HEXIDECIMAL CHARACTERS.  THIS
8 REM FILE IS SUITABLE FOR LONG
9 REM DISTANCE (MODEM) TRANSMISSION,
10 REM AND CONTAINS A FULL CHECKSUM.
11 REM A COMPANION PROGRAM, HEXBIN,
12 REM CONVERTS THE HEX FILE BACK TO
13 REM THE ORIGINAL BINARY FORMAT.
14 REM 
20 DIM FILEIN$(15),FILEOUT$(15),BYTE$(2)
30 BUFSIZ=37:DIM BUF$(BUFSIZ),HEX$(16)
40 HEX$="0123456789ABCDEF"
50 ? "}             BINHEX 1.0":? :? 
60 TRAP 60:? "INPUT FILENAME";:INPUT FILEOUT$
70 GOSUB 1000:FILEIN$=FILEOUT$:? 
80 TRAP 80:? "OUTPUT FILENAME";:INPUT FILEOUT$
90 IF FILEOUT$<>"" THEN 110
100 FILEOUT$="D:HEXFILE.TXT":? "                ";FILEOUT$:GOTO 120
110 GOSUB 1000:? 
120 TRAP 40000:SUM=0
130 OPEN #4,4,0,FILEIN$:OPEN #5,8,0,FILEOUT$
140 PRINT #5:PRINT #5;".START."
150 BUF$=""
160 TRAP 300:FOR I=1 TO INT(BUFSIZ/2)
170 GET #4,BYTE:SUM=SUM+BYTE
180 NIBBLE=INT(BYTE/16)
190 INDEX=1+NIBBLE
200 BYTE$(1)=HEX$(INDEX,INDEX)
210 INDEX=1+BYTE-(16*NIBBLE)
220 BYTE$(2)=HEX$(INDEX,INDEX)
230 BUF$(LEN(BUF$)+1)=BYTE$
240 NEXT I:TRAP 40000
250 ? BUF$:PRINT #5;BUF$:GOTO 150
300 ? BUF$:PRINT #5;BUF$:POP 
310 ? "CHECK SUM = ";SUM
320 PRINT #5;".STOP.";SUM
330 CLOSE #4:CLOSE #5
340 END 
1000 IF LEN(FILEOUT$)<3 THEN GOTO 1040
1010 IF FILEOUT$(1,2)="D:" THEN RETURN 
1020 IF LEN(FILEOUT$)<4 THEN GOTO 1040
1030 IF FILEOUT$(1,1)="D" AND FILEOUT$(3,3)=":" THEN RETURN 
1040 BUF$=FILEOUT$:FILEOUT$="D:":FILEOUT$(3)=BUF$:RETURN 

jimomura@lsuc.UUCP (Jim Omura) (11/28/85)

In article <851120-115731-2948@Xerox> Fleysher.WBST@XEROX.ARPA writes:
>--------------
>
>1 REM BINHEX 1.0, OCTOBER 1984
>2 REM -- BY DAN FLEYSHER --
>3 REM (FLEYSHER.WBST@XEROX)
>4 REM THIS BASIC PROGRAM CONVERTS A
>5 REM BINARY DISK FILE TO THE EQUIV-
>6 REM VALENT TEXT FILE CONTAINING
>7 REM HEXIDECIMAL CHARACTERS.  THIS
>8 REM FILE IS SUITABLE FOR LONG

     Guys, this is *not* a flame.  It's just an observation.  If you
keep reinventing wheels at this rate, you'll never get anywhere.
Is this by any chance compatible with the any of the hundreds of other
Hexbin/binex programs around?  I don't recognize the format myself
but if it isn't then why not?  The protocols are easily obtained and
no secret.  The programs aren't much harder to write.  Why not try
for a bit of compatibility?

                                     Cheers! -- Jim O.
>9 REM DISTANCE (MODEM) TRANSMISSION,
-- 
James Omura, Barrister & Solicitor, Toronto
ihnp4!utzoo!lsuc!jimomura
Byte Information eXchange: jimomura
Compuserve: 72205,541
MTS at WU: GKL6