home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Interactive Guide / c-cplusplus-interactive-guide.iso / c_ref / csource4 / 216_01 / progs.doc < prev    next >
Encoding:
Text File  |  1979-12-31  |  33.8 KB  |  859 lines

  1.  
  2.  
  3.  
  4.      UUUUNNNNDDDDOOOOSSSS((((1111))))              XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))              UUUUNNNNDDDDOOOOSSSS((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           undos,tounix,todos,tocpm,tomac,unmac,unparity - Change ASCII
  10.           file format for target operating system
  11.  
  12.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.           uuuunnnnddddoooossss [ ----ssss ] file ...
  14.           ttttoooouuuunnnniiiixxxx [ ----ssss ] file ...
  15.           ttttooooddddoooossss [ ----ssss ] file ...
  16.           ttttooooccccppppmmmm [ ----ssss ] file ...
  17.           uuuunnnnmmmmaaaacccc [ ----ssss ] file ...
  18.           ttttoooommmmaaaacccc [ ----ssss ] file ...
  19.           uuuunnnnppppaaaarrrriiiittttyyyy file ...
  20.  
  21.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  22.           UUUUnnnnddddoooossss and ttttoooouuuunnnniiiixxxx convert DOS or CP/M format source files to
  23.           Unix format by deleting carriage returns preceding linefeeds
  24.           and eliminating characters starting with CPMEOF (^Z).
  25.  
  26.           TTTTooooddddoooossss converts Unix format source files to DOS format by
  27.           adding a carriage return (if not already present) before
  28.           each linefeed, and eliminates characters starting with
  29.           CPMEOF (^Z).  TTTTooooccccppppmmmm additionally appends CPMEOF (^Z)
  30.           characters to the resulting file to make the file length a
  31.           multiple of the 128 byte CP/M record length.
  32.  
  33.           Any combination of uuuunnnnddddoooossss,,,, ttttooooddddoooossss,,,, or ttttooooccccppppmmmm (without flags)
  34.           may be applied to a proper ASCII file without destroying
  35.           information.  Lone carriage returns used to force
  36.           overprinting are not translated to CR/LF pairs.
  37.  
  38.           UUUUnnnnmmmmaaaacccc converts files with lines terminated only by carriage
  39.           return to Unix format.  UUUUnnnnmmmmaaaacccc should only be used to
  40.           translate files whose lines are terminated by lone carriage
  41.           returns.
  42.  
  43.           TTTToooommmmaaaacccc converts Unix format files to Macintosh format (lines
  44.           terminated by carriage return only).
  45.  
  46.           The optional flag ----ssss Strips the parity bit on all characters
  47.           and discards all resulting characters with values less than
  48.           7.
  49.  
  50.           UUUUnnnnppppaaaarrrriiiittttyyyy merely strips the parity bit from the files.
  51.  
  52.           The access and modification times of the modified files are
  53.           set to those of the original files.
  54.  
  55.      DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  56.           Refuses to translate files in which "binary" characters
  57.           (less than 7 or greater than 127) are seen before CPMEOF.
  58.           Refuses to translate files with ultra long lines.  Refuses
  59.           to translate special files.
  60.  
  61.  
  62.  
  63.      Page 1                                           (printed 1/9/87)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      UUUUNNNNDDDDOOOOSSSS((((1111))))              XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))              UUUUNNNNDDDDOOOOSSSS((((1111))))
  71.  
  72.  
  73.  
  74.      NNNNOOOOTTTTEEEESSSS
  75.           Should be executed with the current directory in the same
  76.           filesystem as the target files for minimum disk i/o.
  77.  
  78.      BBBBUUUUGGGGSSSS
  79.           Does not detect short files without linefeeds.  UUUUnnnnmmmmaaaacccc and
  80.           ttttoooommmmaaaacccc cannot handle files with CR-only overprinting.  (ASCII
  81.           allows either LF or CR/LF to delimit lines, but not CR.)
  82.  
  83.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  84.           lar(1), yam(1), sq(1), usq(1), rb(omen), sb(omen)
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.      Page 2                                           (printed 1/9/87)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      RRRRZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 RRRRZZZZ((((1111))))
  137.  
  138.  
  139.  
  140.      NNNNAAAAMMMMEEEE
  141.           rb, rz - XMODEM, YMODEM, ZMODEM (Batch) file receive
  142.  
  143.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  144.           rrrrzzzz [- ++++1111aaaabbbbppppqqqqttttuuuuvvvv]
  145.           rrrrbbbb [- ++++1111aaaabbbbqqqqttttuuuuvvvv]
  146.           rrrrzzzz [- 1111aaaabbbbccccqqqqttttuuuuvvvv] _f_i_l_e
  147.           ggggzzzz _f_i_l_e ...
  148.           [----][vvvv]rrrrzzzzCCCCOOOOMMMMMMMMAAAANNNNDDDD
  149.  
  150.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  151.           This program uses error correcting protocol to receive files
  152.           over a serial port from a variety of programs running under
  153.           PC-DOS, CP/M, Unix, and other operating systems.
  154.  
  155.           The first form of _r_z (Receive ZMODEM) receives files with
  156.           the ZMODEM batch protocol.  If the sending program does not
  157.           support ZMODEM, _r_z steps down to YMODEM protocol after 50
  158.           seconds.  This delay can be eliminated by calling the
  159.           program as _r_b .
  160.  
  161.           When receiving with XMODEM or YMODEM, _R_z accepts either
  162.           standard 128 byte sectors or 1024 byte sectors (YAM ----kkkk
  163.           option).  The user should determine when the longer block
  164.           length actually improves throughput without causing
  165.           problems.
  166.  
  167.           If extended file information (file length, etc.) is
  168.           received, the file length controls the number of bytes
  169.           written to the output dataset (YMODEM only), and the modify
  170.           time and file mode (iff non zero) are set accordingly.
  171.  
  172.           If no extended file information is received, slashes in the
  173.           pathname are changed to underscore, and any trailing period
  174.           in the pathname is eliminated.  This conversion is useful
  175.           for files received from CP/M systems.  With YMODEM, each
  176.           file name is converted to lower case unless it contains one
  177.           or more lower case letters.
  178.  
  179.  
  180.           The second form of _r_z receives a single _f_i_l_e with XMODEM
  181.           protocol.  The user must supply the file name to both
  182.           sending and receiving programs.
  183.  
  184.           _G_z is a shell script which calls _s_z to command a Pro-YAM or
  185.           compatible program to transmit the specified files.
  186.           Pathnames used with _g_z must be escaped if they have special
  187.           significance to the Unix shell.
  188.           EXAMPLE: gz "-1 C:*.c D:*.h"
  189.  
  190.  
  191.           The third form of _r_z is invoked as rrrrzzzzCCCCOOOOMMMMMMMMAAAANNNNDDDD (with an
  192.  
  193.  
  194.  
  195.      Page 1                                           (printed 1/9/87)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      RRRRZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 RRRRZZZZ((((1111))))
  203.  
  204.  
  205.  
  206.           optional leading - as generated by login(1)).  For each
  207.           received file, rz will pipe the file to ``COMMAND filename''
  208.           where filename is the name of the transmitted file with the
  209.           file contents as standard input.
  210.  
  211.           Each file transfer is acknowledged when COMMAND exits with 0
  212.           status.  A non zero exit status terminates transfers.
  213.  
  214.           A typical use for this form is _r_z_r_m_a_i_l which calls rmail(1)
  215.           to post mail to the user specified by the transmitted file
  216.           name.  For example, sending the file "caf" from a PC-DOS
  217.           system to _r_z_r_m_a_i_l on a Unix system would result in the
  218.           contents of the DOS file "caf" being mailed to user "caf".
  219.  
  220.           On some Unix systems, the login directory must contain a
  221.           link to COMMAND as login sets SHELL=rsh which disallows
  222.           absolute pathnames.  If invoked with a leading ``v'', _r_z
  223.           will report progress to /tmp/rzlog.  The following entry
  224.           works for Unix 3.0:
  225.                      rzrmail::5:1::/bin:/usr/local/rzrmail
  226.           If the SHELL environment variable includes _r_s_h or _r_k_s_h
  227.           (restricted shell), rz will not accept absolute pathnames or
  228.           references to a parent directory, will not modify an
  229.           existing file, and removes any files received in error.
  230.  
  231.           If rrrrzzzz is invoked with stdout and stderr to different
  232.           datasets, Verbose is set to 2, causing frame by frame
  233.           progress reports to stderr.  This may be disabled with the qqqq
  234.           option.
  235.  
  236.  
  237.           The meanings of the available options are:
  238.  
  239.           1111    Use file descriptor 1 for ioctls and reads (Unix only).
  240.                By default, file descriptor 0 is used.  This option
  241.                allows _r_z to be used with the _c_u ~$ command.  If the
  242.                calling program has spawned a separate process to read
  243.                characters from the modem, that process must be
  244.                disabled for _r_z to operate properly.
  245.           aaaa    Convert files to Unix conventions by stripping carriage
  246.                returns and all characters beginning with the first
  247.                Control Z (CP/M end of file).
  248.           bbbb    Binary (tell it like it is) file transfer override.
  249.           cccc    Request 16 bit CRC.  XMODEM file transfers default to 8
  250.                bit checksum.  YMODEM and ZMODEM normally use 16 bit
  251.                CRC.
  252.           DDDD    Output file data to /dev/null; for testing.
  253.           pppp    (ZMODEM) Protect: skip file if destination file exists.
  254.           qqqq    Quiet suppresses verbosity.
  255.           tttt ttttiiiimmmm
  256.                Change timeout to _t_i_m tenths of seconds.
  257.           vvvv    Verbose causes a list of file names to be appended to
  258.  
  259.  
  260.  
  261.      Page 2                                           (printed 1/9/87)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      RRRRZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 RRRRZZZZ((((1111))))
  269.  
  270.  
  271.  
  272.                /tmp/rzlog .  More v's generate more output.
  273.  
  274.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  275.           (Pro-YAM command)
  276.           <_A_L_T-_2>
  277.           Pro-YAM Command: _s_z *._h *._c
  278.           (This automatically invokes _r_z on the connected system.)
  279.  
  280.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  281.           ZMODEM.DOC, YMODEM.DOC, IMP(CP/M), cu(1), Professional-YAM
  282.           manual, sz(omen), usq(omen), undos(omen)
  283.  
  284.           Compile time options required for various operating systems
  285.           are described in the source file.
  286.  
  287.      NNNNOOOOTTTTEEEESSSS
  288.           The Unix "ulimit" parameter must be set high enough to
  289.           permit large file transfers.
  290.  
  291.           The TTY input buffering on some systems may not allow long
  292.           blocks or streaming input, especially at high baud rates.
  293.           The Pro-YAM zzzzmmmmooooddddeeeemmmm llll numeric parameter may be set to a value
  294.           between 64 and 1024 to limit the burst length ("zmodem
  295.           pl100").
  296.  
  297.      BBBBUUUUGGGGSSSS
  298.           Pathnames are restricted to 127 characters.  In XMODEM
  299.           single file mode, the pathname given on the command line is
  300.           still processed as described above.  The ASCII option's
  301.           CR/LF to NL translation merely deletes CR's; undos(omen)
  302.           performs a more intelligent translation.
  303.  
  304.      VVVVMMMMSSSS VVVVEEEERRRRSSSSIIIIOOOONNNN
  305.           Some of the #includes with file names enclosed with angle
  306.           brackets <> may need to have the angle brackets changed to
  307.           "", or vice versa.
  308.  
  309.           The VMS version does not set binary mode according to the
  310.           incoming file type.  Non binary file processing consists of
  311.           stripping all characters beginning with CPMEOF (^Z).
  312.  
  313.           The VMS version does not set the file time.
  314.  
  315.           At high speeds, VMS sometimes loses incoming characters,
  316.           resulting in retries and degradation of throughput.
  317.  
  318.           The mysterious VMS C Standard I/O Package and RMS may
  319.           interact to modify file contents unexpectedly.
  320.  
  321.           The VMS version does not support invocation as rrrrzzzzCCCCOOOOMMMMMMMMAAAANNNNDDDD ....
  322.           ZMODEM has not yet been implemented on the VMS version.
  323.  
  324.  
  325.  
  326.  
  327.      Page 3                                           (printed 1/9/87)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      RRRRZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 RRRRZZZZ((((1111))))
  335.  
  336.  
  337.  
  338.      ZZZZMMMMOOOODDDDEEEEMMMM CCCCAAAAPPPPAAAABBBBIIIILLLLIIIITTTTIIIIEEEESSSS
  339.           _R_z supports incoming ZMODEM binary (-b), ASCII (-a), protect
  340.           (-p), and append (-+) requests, and ZMODEM command
  341.           execution.
  342.  
  343.      FFFFIIIILLLLEEEESSSS
  344.           rz.c, rbsb.c, zm.c, zmodem.h source files.
  345.  
  346.           /tmp/rzlog stores debugging output generated with -vv
  347.           option.
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.      Page 4                                           (printed 1/9/87)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      SSSSZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 SSSSZZZZ((((1111))))
  401.  
  402.  
  403.  
  404.      NNNNAAAAMMMMEEEE
  405.           sz - XMODEM, YMODEM, ZMODEM Batch file Send
  406.  
  407.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  408.           sz [-++++1111aaaabbbbddddeeeeffffkkkkLLLLllllNNNNnnnnppppqqqqTTTTttttuuuuvvvvyyyy] _f_i_l_e ...
  409.           sz -X [-1111kkkkqqqqttttuuuuvvvv] _f_i_l_e
  410.           sz [-1111qqqqttttvvvv] ----cccc CCCCOOOOMMMMMMMMAAAANNNNDDDD
  411.           sz [-1111qqqqttttvvvv] ----iiii CCCCOOOOMMMMMMMMAAAANNNNDDDD
  412.  
  413.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  414.           SSSSzzzz uses the ZMODEM, YMODEM or XMODEM error correcting
  415.           protocol to send one or more files over a serial port to a
  416.           variety of programs running under PC-DOS, CP/M, Unix, VMS,
  417.           and other operating systems.
  418.  
  419.  
  420.           The first form of sssszzzz sends one or more files with ZMODEM or
  421.           YMODEM batch protocol.  Normally, only the file name part of
  422.           the pathname is transmitted.  On Unix systems, additional
  423.           information about the file is transmitted.  If the receiving
  424.           program uses this information, the transmitted file length
  425.           controls the exact number of bytes written to the output
  426.           dataset, and the modify time and file mode are set
  427.           accordingly.
  428.  
  429.           Output from another program may be piped to sssszzzz for
  430.           transmission by specifying the ----1111 option and denoting
  431.           standard input by "-":
  432.                                  ps -ef | sz -
  433.           The program output is transmitted with the filename sPID.sz
  434.           where PID is the process ID of the sssszzzz program.  If the
  435.           environment variable OOOONNNNAAAAMMMMEEEE is set, that is used instead.  In
  436.           this case, the Unix command:
  437.                            ONAME=con ps -ef|sz -ay -
  438.           will send a "file" to the PC-DOS console display.  The ----yyyy
  439.           option instructs the receiver to open the file for writing
  440.           unconditionally.  The ----aaaa option causes the receiver to
  441.           convert Unix newlines to PC-DOS carriage returns and
  442.           linefeeds.
  443.  
  444.           Unix sssszzzz supports YYYYMMMMOOOODDDDEEEEMMMM----gggg with "cbreak" tty mode, XON/XOFF
  445.           flow control, and the interrupt character set to CAN.
  446.           YYYYMMMMOOOODDDDEEEEMMMM----gggg (Professional-YAM gggg option) increases throughput
  447.           over error free channels (direct connection, X.PC, etc.) by
  448.           not acknowledging each transmitted sector.
  449.  
  450.  
  451.           The second form of sssszzzz uses the ----XXXX flag to send a single _f_i_l_e
  452.           with XXXXMMMMOOOODDDDEEEEMMMM or XXXXMMMMOOOODDDDEEEEMMMM----1111kkkk protocol.  The user must supply the
  453.           file name to both sending and receiving programs.
  454.  
  455.           Iff sssszzzz is invoked with $SHELL set and iff that variable
  456.  
  457.  
  458.  
  459.      Page 1                                           (printed 1/9/87)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      SSSSZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 SSSSZZZZ((((1111))))
  467.  
  468.  
  469.  
  470.           contains the string _r_s_h or _r_k_s_h (restricted shell), sz
  471.           operates in restricted mode.  Restricted mode restricts
  472.           pathnames to the current directory and PUBDIR (usually
  473.           /usr/spool/uucppublic) and/or subdirectories thereof.
  474.  
  475.  
  476.           The third form sends a single COMMAND to the receiver for
  477.           execution.  SSSSzzzz exits with the COMMAND return value.  If
  478.           COMMAND includes spaces or characters special to the shell,
  479.           it must be quoted.
  480.  
  481.           The fourth form sends a single COMMAND to the receiver for
  482.           execution.  SSSSzzzz exits as soon as the receiver has correctly
  483.           received the command, before it is executed.
  484.  
  485.  
  486.           If sz is invoked with stdout and stderr to different
  487.           datasets, Verbose is set to 2, causing frame by frame
  488.           progress reports to stderr.  This may be disabled with the qqqq
  489.           option.
  490.  
  491.           The meanings of the available options are:
  492.  
  493.           ++++    Instruct the receiver to append transmitted data to an
  494.                existing file (ZMODEM only).
  495.           1111    Use file descriptor 1 for ioctls and reads (Unix only).
  496.                By default, file descriptor 0 is used.  This option
  497.                allows sssszzzz to be used with the _c_u ~$ command.  If the
  498.                calling program has spawned a separate process to read
  499.                characters from the modem, that process must be
  500.                disabled for _r_z to operate properly.
  501.           aaaa    Convert NL characters in the transmitted file to CR/LF.
  502.                This is done by the sender for XMODEM and YMODEM, by
  503.                the receiver for ZMODEM.
  504.           bbbb    (ZMODEM) Binary override: transfer file without any
  505.                translation.
  506.           cccc CCCCOOOOMMMMMMMMAAAANNNNDDDD
  507.                Send COMMAND to the receiver for execution, return with
  508.                COMMAND's exit status.
  509.           dddd    Change all instances of "." to "/" in the transmitted
  510.                pathname.  Thus, C.omenB0000 (which is unacceptable to
  511.                MSDOS or CP/M) is transmitted as C/omenB0000.  If the
  512.                resultant filename has more than 8 characters in the
  513.                stem, a "." is inserted to allow a total of eleven.
  514.           EEEE    Escape only Ctrl-X control characters; normally XON,
  515.                XOFF, CR-@-CR, and Ctrl-X are escaped.
  516.           eeee    Escape all control characters; normally XON, XOFF, CR-
  517.                @-CR, and Ctrl-X are escaped.
  518.           ffff    Send Full pathname.  Normally directory prefixes are
  519.                stripped from the transmitted filename.
  520.           iiii CCCCOOOOMMMMMMMMAAAANNNNDDDD
  521.                Send COMMAND to the receiver for execution, return
  522.  
  523.  
  524.  
  525.      Page 2                                           (printed 1/9/87)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      SSSSZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 SSSSZZZZ((((1111))))
  533.  
  534.  
  535.  
  536.                Immediately upon the receiving program's successful
  537.                recption of the command.
  538.           kkkk    (XMODEM/YMODEM) Send files using 1024 byte blocks
  539.                rather than the default 128 byte blocks.  1024 byte
  540.                packets speed file transfers at high bit rates.
  541.                (ZMODEM streams the data for the best possible
  542.                throughput.)
  543.           LLLL NNNN  Use ZMODEM sub-packets of length N.  A larger N (32 <=
  544.                N <= 1024) gives slightly higher throughput, a smaller
  545.                N speeds error recovery.  The default is 128 below 300
  546.                baud, 256 above 300 baud, or 1024 above 2400 baud.
  547.           llll NNNN  Wait for the receiver to acknowledge correct data every
  548.                NNNN (32 <= N <= 1024) characters.  This may be used to
  549.                avoid network overrun when XOFF flow control is
  550.                lacking.
  551.           nnnn    (ZMODEM) Send each file if destination file does not
  552.                exist.  Overwrite destination file if source file is
  553.                newer or longer than the destination file.
  554.           NNNN    (ZMODEM) Send each file if destination file does not
  555.                exist.  Overwrite destination file if source file has
  556.                different length or date.
  557.           pppp    (ZMODEM) Protect existing destination files by skipping
  558.                transfer if the destination file exists.
  559.           qqqq    Quiet suppresses verbosity.
  560.           rrrr    Resume interrupted file transfer.  If the source file
  561.                is longer than the destination file, the transfer
  562.                commences at the offset in the source file that equals
  563.                the length of the destination file.
  564.           tttt ttttiiiimmmm
  565.                Change timeout to _t_i_m tenths of seconds.
  566.           uuuu    Unlink the file after successful transmission.
  567.           vvvv    Verbose causes a list of file names to be appended to
  568.                /tmp/szlog .  More v's generate more output.
  569.           XXXX    Send a single file with XXXXMMMMOOOODDDDEEEEMMMM or XXXXMMMMOOOODDDDEEEEMMMM----1111kkkk protocol.
  570.           yyyy    Instruct a ZMODEM receiving program to overwrite any
  571.                existing file with the same name.
  572.  
  573.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  574.           ZZZZMMMMOOOODDDDEEEEMMMM FFFFiiiilllleeee TTTTrrrraaaannnnssssffffeeeerrrr
  575.           $$$$ sssszzzz ----aaaa ****....cccc
  576.           This single command transfers all .c files in the current
  577.           Unix directory with conversion (----aaaa) to end of line
  578.           conventions appropriate to the receiving environment.  With
  579.           ZMODEM AutoDownload enabled, Professional-YAM automatically
  580.           recieves the files after performing a security challenge.
  581.  
  582.           ZZZZMMMMOOOODDDDEEEEMMMM CCCCoooommmmmmmmaaaannnndddd DDDDoooowwwwnnnnllllooooaaaadddd
  583.            cpszall:all
  584.               sz -c "c:;cd /yam/dist"
  585.               sz -ya $(YD)/*.me
  586.               sz -yqb y*.exe
  587.               sz -c "cd /yam"
  588.  
  589.  
  590.  
  591.      Page 3                                           (printed 1/9/87)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      SSSSZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 SSSSZZZZ((((1111))))
  599.  
  600.  
  601.  
  602.               sz -i "!insms"
  603.           This Makefile fragment uses sssszzzz to issue commands to
  604.           Professional-YAM to change current disk and directory.
  605.           Next, sssszzzz transfers the ._m_e files from the $YD directory,
  606.           commanding the receiver to overwrite the old files and to
  607.           convert from Unix end of line conventions to PC-DOS
  608.           conventions.  The third line transfers some ._e_x_e files.  The
  609.           fourth and fifth lines command Pro-YAM to change directory
  610.           and execute a PC-DOS batch file _i_n_s_m_s . Since the batch file
  611.           takes considerable time, the ----iiii form is used to allow sssszzzz to
  612.           exit immediately.
  613.  
  614.           XXXXMMMMOOOODDDDEEEEMMMM FFFFiiiilllleeee TTTTrrrraaaannnnssssffffeeeerrrr
  615.           $ sssszzzz ----XXXXaaaa ffffoooooooo....cccc
  616.           EEEESSSSCCCC
  617.           rrrrxxxx ffffoooooooo....cccc
  618.           The above three commands transfer a single file from Unix to
  619.           a PC and Crosstalk XVI 3.6, translating Unix newlines to DOS
  620.           CR/LF.
  621.  
  622.  
  623.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  624.           rz(omen), ZMODEM.DOC, YMODEM.DOC, Professional-YAM manual,
  625.           IMP(CP/M), cu(1), sq(omen), todos(omen), tocpm(omen),
  626.           tomac(omen), yam(omen)
  627.  
  628.           Compile time options required for various operating systems
  629.           are described in the source file.
  630.  
  631.      VVVVMMMMSSSS VVVVEEEERRRRSSSSIIIIOOOONNNN
  632.           The VMS version does not transmit the file date.  The VMS
  633.           version calculates the file length by reading the file and
  634.           counting the bytes.
  635.  
  636.           The VMS version does not support YMODEM-g or ZMODEM.
  637.  
  638.           When VMS is lightly loaded, the response time may be too
  639.           quick for MODEM7 unless the MODEM7 qqqq modifier is used.
  640.  
  641.           The VMS C standard i/o package and RMS sometimes interact to
  642.           modify file contents unexpectedly.
  643.  
  644.      FFFFIIIILLLLEEEESSSS
  645.           sz.c, rbsb.c, zm.c, zmodem.h source files
  646.  
  647.           /tmp/szlog stores debugging output (sz -vv)
  648.  
  649.      TTTTEEEESSSSTTTTIIIINNNNGGGG FFFFEEEEAAAATTTTUUUURRRREEEE
  650.           The command "sz -T file" exercises the AAAAttttttttnnnn sequence error
  651.           recovery by commanding errors with unterminated packets.
  652.           The receiving program should complain five times about
  653.           binary data packets being too long.  Each time sssszzzz is
  654.  
  655.  
  656.  
  657.      Page 4                                           (printed 1/9/87)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      SSSSZZZZ((((1111))))                 XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                 SSSSZZZZ((((1111))))
  665.  
  666.  
  667.  
  668.           interrupted, it should send a ZDATA header followed by
  669.           another defective packet.  If the receiver does not detect
  670.           five long data packets, the AAAAttttttttnnnn sequence is not
  671.           interrupting the sender, and the MMMMyyyyaaaattttttttnnnn string in sssszzzz....cccc must
  672.           be modified.
  673.  
  674.           After 5 packets, sssszzzz stops the "transfer" and prints the
  675.           total number of characters "sent" (Tcount).  The difference
  676.           between Tcount and 5120 represents the number of characters
  677.           stored in various buffers when the Attn sequence is
  678.           generated.
  679.  
  680.      BBBBUUUUGGGGSSSS
  681.           XMODEM transfers add up to 127 garbage bytes per file (1023
  682.           bytes with XMODEM-k).  Most YMODEM programs use the file
  683.           length transmitted at the beginning of the transfer to prune
  684.           the file to the correct length; this may cause problems with
  685.           source files that grow during the course of the transfer.
  686.           This problem does not pertain to ZMODEM transfers, which
  687.           preserve the exact file length unconditionally.
  688.  
  689.           Most ZMODEM options are merely passed to the receiving
  690.           program; some do not implement all these options.
  691.  
  692.           Circular buffering and a ZMODEM sliding window should be
  693.           used when input is from pipes instead of acknowledging
  694.           frames each 1024 bytes.  If no files can be opened, sssszzzz sends
  695.           a ZMODEM command to echo a suitable complaint; perhaps it
  696.           should check for the presence of at least one accessible
  697.           file before getting hot and bothered.  The test mode leaves
  698.           a zero length file on the receiving system.
  699.  
  700.           Some high speed modems have a firmware bug that drops
  701.           characters when the direction of high speed transmissson is
  702.           reversed.  The environment variable ZNULLS may be used to
  703.           specify the number of nulls to send before a ZDATA frame.
  704.           Values of 101 for a 4.77 mHz PC and 124 for an AT are
  705.           typical.
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.      Page 5                                           (printed 1/9/87)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      DDDDSSSSZZZZ((((1111))))                XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                DDDDSSSSZZZZ((((1111))))
  731.  
  732.  
  733.  
  734.      NNNNAAAAMMMMEEEE
  735.           dsz - YMODEM, ZMODEM file transfer subprogram
  736.  
  737.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  738.           ddddsssszzzz [ppppoooorrrrtttt NNNN] [ssssppppeeeeeeeedddd SSSS] [dddd] [rrrreeeessssttttrrrriiiicccctttt] _c_o_m_m_a_n_d
  739.  
  740.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  741.           Dsz uses the YMODEM or ZMODEM error correcting batch
  742.           protocol to transfer files over a serial port with a variety
  743.           of programs.  Dsz is designed to be called from a
  744.           communications program or bulletin board to perform file
  745.           transfers.
  746.  
  747.           Dsz uses its own modem I/O.  The original interrupt vector
  748.           and UART interrupt configuration are restored on normal
  749.           exit.  Dsz expects its standard output to point to the
  750.           console or a logging file, not a modem port.
  751.  
  752.           The available commands are:
  753.  
  754.           ppppoooorrrrtttt NNNN
  755.                select port N (n = 1,2,3 or 4) Default is port 1 (COM1)
  756.                or read from the DDDDSSSSZZZZPPPPOOOORRRRTTTT dos environment variable.
  757.           ssssppppeeeeeeeedddd SSSS
  758.                Set specified speed, default is current speed.
  759.           dddd    Disables carrier dropout monitoring, for modems that do
  760.                not properly drive the "Data Carrier Detect" input on
  761.                the PC.
  762.           LLLLAAAARRRRGGGG Convert ARG to lowercase, then parse arg.
  763.           rrrreeeessssttttrrrriiiicccctttt
  764.                Restrict pathnames to current disk and directory tree.
  765.           sssszzzz   [-Vabnpr+y] [PREFIX=p | ONAME=n] afn ...
  766.           ssssbbbb   [-Vk] [PREFIX=p | ONAME=n] afn ...
  767.           rrrrzzzz   [-Vabnpr+y]
  768.           rrrrzzzz   [-Vabnpr+y] file1 file2 ...  (filename override)
  769.           rrrrbbbb   [-Vab+y]
  770.           rrrrbbbb   [-Vab+y] file1 file2 ...  (filename override)
  771.           ----VVVV   Dsiplay debugging information.  More V's give more
  772.                detailed information.
  773.  
  774.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  775.           dsz sz -r b:zcom*.arc c:foo.bar
  776.  
  777.           dsz port 2 speed 19200 restrict rz
  778.  
  779.           dsz rz -y newprog.arc
  780.  
  781.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  782.           Consult the Professional-YAM manual or ZCOMMDOC.ARC chapter
  783.           "Options for File Transfers" for option meanings.
  784.  
  785.      NNNNOOOOTTTTEEEESSSS
  786.  
  787.  
  788.  
  789.      PPPPaaaaggggeeee 1111                                           ((((pppprrrriiiinnnntttteeeedddd 1111////9999////88887777))))
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      DDDDSSSSZZZZ((((1111))))                XXXXEEEENNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((OOOOMMMMEEEENNNN))))                DDDDSSSSZZZZ((((1111))))
  797.  
  798.  
  799.  
  800.           Dsz sets the UART shift register to 8 bits no parity; the
  801.           original parity setting is lost.
  802.  
  803.           Dsz may be freely used and copied, but not modified or sold
  804.           without the written permission of Omen Technology Inc.
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.      Page 2                                           (printed 1/9/87)
  856.  
  857.  
  858.  
  859.