home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Hacker Chronicles 2
/
HACKER2.BIN
/
883.PRMAUX.98T
/
ATOB-22.ARC
/
ATOB-22.DOC
< prev
next >
Wrap
Text File
|
1986-05-31
|
10KB
|
192 lines
**************************************************************************
************** The Radio Amateur Telecommunications Society **************
**************************************************************************
FINAL Form (I hope!)
-----------------------------------------
ATOB - Documentation REV 2.2 - 30 May 86
-----------------------------------------
1. These are a series of two programs from usenet (thanks to Brian Lloyd
wb6rqn) whose purpose is to permit transmission of binary (256) valued data
across printable-ASCII only pathes. Their user interfaces have been al
tered to conform to packet radio requirements.
2. Source listings have been included for both programs. They will compile
with only 5 warning level errors which may be ignored under either system.
3. The BTOA program is used to take a binary file of any type and convert
into a file of all printable ASCII characters. This is done by taking 4
byte 'chunks' of the binary file and considering it a 'long integer'. This
large number is then expressed in the number base 85. The 85 'digits' of
this new number base are represented by an 85 digit sub-set of the ASCII
character set. The new expression of those 4 bytes is written out as a 5
'digit' number, base 85.
4. Each line of the resulting ASCII file is 78 bytes long( nominal
value, may be altered, as will be explained further on), plus a CR and
an LF. The CR is not part of the original spec. It was added for the benefit
of the packet radio transmission. If no CRs are included, the 'packets' will
consist of multiple lines and some lines will be broken across packets. The
PBBSes now 'filter' out ' *** connect request from N2XYZ ' messages, when
they appear as the start of a new line - such messages would pop up in the
middle of a ASCII coded binary line and would contaminate the file.
5. The BTOA program checks the specified output file name against the
files already existing in the logged drive and if the name already
exists, prompts the user for permission to overwrite, which, if denied,
causes a prompt for an alternate name which is also checked til no
collision occurrs or permission is given to overwrite.
6. There are two line length options in BTOA. '-H' and '-L xxx'. The '-H'
option is for HF users who generally run PACLEN = 64. This produces a 62
byte (plus CR LF) output line so the lines do not bridge a packet. The
'-L xxx' option allows the user to specify a line length between 4 and
250 which allows the user to optimize line length for maximum throughput
for a given transmission path and environmnet and conditions.
7. The BTOA program writes the name of the original file in the header
of the output file. The ATOB program will be used to take this ASCII-
coded binary and recover the file to its original form and then verify
the checksum. The name of the original input file will be recovered from
the file header and checked against existing files on the logged drive
and the user will be prompted for permission to overwrite if there is
already a file by that name. If permission is denied, the user is
prompted for an alternate name.
8. ATOB will display appropriate error messages for discrepancies in file
length and chacksum.
9. The format for direct use of the programs is as follows:
btoa-pc [-H or -L xxx] inputfile outputfile
atob-pc inputfile
10. Two batch files have been included in the MSDOS version to allow a
single command line entry to be used to gather a bunch of files to
gether compressed into an ARC file and then BtoA it for transmission.
This first .BAT file is BA.BAT. Its corresponding member is AB.BAT which
will take the received file AtoB it and then un-ARC it. The usage of
these files is as follows:
C> BA [-H or -L xxx] ARCFILENAME FILE1 FILE2 FILE3 FILE4
ARCFILENAME - file name only , NO extension (i.e. .ARC)
FILEx - wildcards accepted here (max 8 specifications)
C> AB ATOBFILENAME
ATOBFILENAME - filename only, do not put .AA it is assumed
I am working on a similar scheme for CPM using SQ,USQ and NULU with
SUBMIT. I hope to have some results in early June.
11. There will be two forms of the files, one for IBM PCDOS/MSDOS and one for
CPM-80. They will each be uploaded in ASCII HEX form and may be downloaded
in that form. The MSDOS versions will require HC.COM (if you do not have it,
download MAKEHC.BAS, run it under BASICA and it will create HC.COM), and
the CPM-80 versions may be reconstructed from LOAD.COM or DDT.COM.
** NOTE ** the cpm versions will be available around the second or third
week in June 86, possibly sooner. Not enough hours in the day - jes'
can't figger how to add 3 more hours to my 32 hour day! (|br| - 19 may
86 )
*********** HOW to GET ATOB-XX and use it *********************
If you have a telephone modem and Xmodem protocol with checksum -
then look below and read the explanation how to get it from my landline
bulletin board.
If you do not and have access to a bbs where it is posted, here is
what to do.
You will first need HC.COM. It is gotten, if you do not have it. By
doing an ASCII capture of the file MAKEHC.BAS. This file runs under
BASICA and produces the HC.COM.
Next you will need to download ATOB-PC.HEX also as an ASCII
capture. The you will do the following from a DOS prompt;
A> HC ATOB-PC.HEX
this will produce ATOB-PC.EXE
A> ATOB-PC ATOB-XX.AA
which will produce ATOB-XX.ARC
A> ARC -X ATOB-XX.ARC
which will un-ARC and give you
BTOA-PC.EXE
BA.BAT
AB.BAT
ATOB-XX.C
BTOA-XX.c
** - whereever -XX appeares fill in the appropriate version
number, which rght now is 2.2 so ==> ATOB-22.ARC, etc
** - The files ATOB-PC.EXE and ATOB-XX.DOC are not in the ARC/AA file
since you are now reading the .DOC file you obviously have it!
and to get the ARC file out you already have ATOB-PC.EXE !!!
In the .ARC file that will be on my landline BBS these files will
be included, however.
----------------------
Alan Adamson, NE1H has tested REV 1.0 in conjunction with ARC and
found significant advantage ( 20% or more ) to this scheme over the current
existing alternative - BSQ by W1GOH. While I am sure optimization of BSQ
would bring it back into a more competitive range with the ARC/ATOB team,
it would not be as flexible. ARC is an existing utility with many other
uses. The size of the ATOB.EXE and BTOA.EXE is sufficiently small that in
concert with the ARC.EXE they take little space. BSQ is somewhat larger and
you would need to have ARC around anyway for non-Packet use.
As always feel free to throw rocks, flowers, and or money. I can be
reached at @ka2bqe (which, in case your local PBBS has not heard of me, is
reached by shooting mail in the general direction of WB2RVX, WA2SNA, W3IWI
and/or KD6TH - they all know how to forward to me.)
I have made the code available on my landline BBS - it can be reached
by dialing 609-268-9597 (24 hours 300/1200). Type L to login - password is
'packetradio' - which is a guest account. Type H for help and it will tell
you how to find the 'Ham radio' and 'Packet Radio' areas. To download type
'.Help Files' and read the short blurb on how to down load - warning this
system supports Xmodem Checksum only (not CRC!)
--------------------
For those interested the source code has been compiled under MANX
Software AZTEC-C Compiler. I have settled on it as it is a full and rigid
K&R and is quite uniform across CPM/MSDOS/Mac/Amiga/ST etc. It is a royal
pain in the wazoo to learn 14 different compilers invocations. In addition
the much vaunted Microsoft C Compiler is not as compete as it might be -
for starters it does not support 'unsigned long' and its DOS function
invocations are just slightly different enough to cause migraine!!
--------------------
Since I wrote the above criticism of Microsoft C compiler I have
been informed that the latest versions have a lot of the 'missing
stuff'. I am waiting to see how 'tight' the code is. In my experience so
far, no C compiler has 'tighter' code on MSDOS than Aztec. [Ward
Christiansen's CBC (curly brace checker), which I ported from CPM to
XENIX and MSDOS, is 5008 bytes on Aztec and 12k to 18k on the other
compilers I have used.] I would be happy to offer the source code to
anyone having the latest Microsoft for a size check.
--------------------
A moment here to thank the people who made it possible. Brian
Lloyd, wb6rqn, who got me the source from which it all came. He and I
tag teamed a 'file transfer discussion' at the Trenton Computer Faire
1986 and this system came out of that. Jon Pearce, wb2mnf has been my
guinea pig and 'user/tester' - an admitted 'only once in a while
programmer' he gave me invaluable input about the user interfaces. Last
but certainly not least was Alan Adamson, ne1h (my condolences on your
phone bill) who tested and shook baby around a lot and bench marked it
against BSQ.
--------------------
Brian B. Riley , KA2BQE
RATS-SOUTH
86 Burnt House Road
Indian Mills, New Jersey 08088