camis..ajb@MITRE.ARPA (ajb@mitre) (02/13/86)
> I am eager to know whether you had any success or trouble downloading > to your Atari. The .HEX format I have been promoting has > come under criticism in the past for not providing check sums on each > line, to isolate problems to the line in which they occur. I am tempted > to redo BINHEX/HEXBIN adding this feature, and speed them up via machine > language assist. Dan, I am responding to your note publicly; perhaps we can get some constructive comments or some volunteers to assist in writing the new software. I used kermit to transfer the software to my atari via a 1030 modem. It appeared not to have been damaged in transit. You realize, of course, that kermit has a built-in check-summing for each transmitted packet. However, a more sophisticated check-sum built-in to the file would be useful to those transmitting files via a non error correcting/detecting route. In addition to a check-sum on a per-line basis, the extra bit real-estate remaining in each transmitted character could be used to provide extra safety. For example, each hex value is only 4-bits, another two bits in the same character could be used as a sequence counter, cycling 0,1,2,3,0,1... etc... Maybe this is excessive, but it seems to me, if the bits are there why not use them ? Another possibility is to translate each 3 binary bytes into 4 ascii printable bytes (as in uuencode, and also MacIntosh xbin), with a checksum every so often. This is more compact then your current scheme. And what about data-compression (as in unix "compact") ? Binary object code should compress at least 20% using an adaptive huffman code. However, the level of effort for implementing data compression may be too high. Anyway, regardless of the encoding technique chosen, I think that two sets of software are required. One to run on the atari and another for the host machine. For the host machine, the software should probably be written in C for portability. At the least, it should be able to read a hex format file and verify that there are no checksum errors. This would save users alot of time by letting them know the file was defective before transmitting it to their Ataris via a slow modem. It also might be useful to have the equivalent of hexbin and binhex running on the host. This would be good for those who have the ability to upload and download binary perhaps via Xmodem; the binhex'ed filed would be used only for transmission over arpanet. For the software on the Atari, a language faster than BASIC is definately called for. ACTION! is probably best. Someone out there with the run-time library could compile the program for distribution to those without the ACTION! cartridge. Lets hear some comments from the rest of you out there !!! Alan J. Broder ajb@mitre