BINARY FILE TRANSFERS WITH TALK A major deficiency of Bob Turkelson's TALK is that it cannot transfer binary files; it works only on ASCII files, and will not always properly transfer some ASCII files. See the article "Cheap (Free?) Networks", by David R. Birkenmeyer in the Spring 83 DECUS Proceedings. CBA and CAB (_Convert _Blocks to _ASCII, _Convert _ASCII to _Blocks) circumvent this difficulty by making it possible to convert any file into an ASCII file. The converted file may be sent to a host VAX/VMS system and can then be reconverted back into the original form. Both CAB and CBA will run under VMS in compatibility mode. CBA and CAB can be invoked just like any RSX utility and may be run either installed or uninstalled. When installed, they may be invoked by: CBA outfile=infile CAB outfile=infile If they are not installed, they may be run with the RUN command: RUN CBA CBA will respond with CBA> and the user may then enter the command line. CAB responds in a similar manner. The commands may also come from an indirect command file. There are no switches, and wild cards are not allowed. There are no defaults for any element of the command line. CBA reads a file in block mode and converts each block into twelve 57-byte ASCII records. The output file produced has a header record which contains information from the input-file file header. This record is followed by the ASCII translations of the input blocks. Each group of twelve output records is followed by a checksum record twelve bytes long written with a 2I6 format. The first field should always contain the value 512. The second field contains the checksum computed from the input block. The input file may be an ASCII file. This is useful, since some ASCII files may be scrambled by TALK . Output files from Digital Standard Runoff may be scrambled in transmission if they contain words emphasized by underlining or overstriking. CAB inverts the operation of CBA. It reads a file produced by CBA and converts it back to the original form. A checksum is computed for each block produced and is compared with the transmitted checksum. If the checksums do not match, an error message is produced. Page 2 LIMITATIONS: RMS files are not supported; only the part of the file header used by FCS is translated. ________________________________________________________________ Both CAB and CBA use subroutines from DECUS, without which it would have been much more difficult to write them. The command line processing is done with MACRO-11 modules from Robert K. Stodola. The source code is well commented and should be read for more information. Block mode I/O is done with routines from Philip H. Cannon. These are in the object library DLIB.OLB. Only the modules used are documented here. See INFO.DOC for that documentation. See the Spring '80 RSX SIG tape [300,052] for more details.