home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / telecomm / xyz202b / xyz201.doc < prev   
Text File  |  1994-08-22  |  59KB  |  1,601 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                           STARFALL SOFTWARE PRESENTS
  8.                                XYZ version 2.0
  9.                                ===============
  10.                                By Alan Hamilton
  11.                    Copyright (C) 1991, all rights reserved
  12.  
  13.  
  14. 1 WHAT IT IS
  15.  
  16. Here it is.... all you need for transferring files with your ST. I was
  17. frustrated by the limitations that the ST version of RZ.TTP and SZ.TTP had, so
  18. I wrote my own, and I'm willing to fix any bugs that turn up in it.
  19.  
  20. XYZ version 2.0 is SHAREWARE and copyrighted.  You may freely pass it around
  21. and post it on private or public BBSs.  If you like it, please help out by
  22. making a contribution.  I suggest $10, but if you think XYZ is worth less, or
  23. more, send whatever you think is fair.  The previous version, v1.43, is not
  24. copyrighted and still free, so if it serves your needs, feel free to continue
  25. using it.  If you have registered an earlier version of XYZ version 2, you do
  26. not need to reregister.
  27.  
  28. Send comments, contributions, etc. to:   Alan Hamilton
  29.                                          6202 N. 16th St. #202
  30.                                          Phoenix, AZ  85016-1734
  31.  
  32.  
  33. Features include:
  34. 1.  Transfers all files unchanged -- "binary" mode.
  35. 2.  Transfers files at the maximum speed the system you are connected to can
  36. support.  No "wait states."
  37. 3.  The timestamps on the files are preserved, unless you don't want them to
  38. be.  You are told, in regular calendar format, what the timestamp is.
  39. 4.  Interrupted transfers can be restarted where they left off (in ZMODEM).
  40. 5.  You are kept informed as to how much of the file has actually been
  41. received, not how many bytes have been received in the current session.  If
  42. you tried to restart a transfer with RZ.TTP, you wouldn't know where you
  43. were.
  44. 6.  There is no feature six.
  45. 7.  Filenames that aren't compatible with the ST are transformed into ones
  46. that are, not just truncated at the first illegal character.  If they can't be
  47. converted, a random filename is chosen.  These transformed filenames are
  48. unique -- no more losing a file because after being truncated because it was
  49. the same as a previous filename.
  50. 8.  Works with all ST, STe and Mega ST configurations.
  51. 9.  Includes versions of XMODEM and YMODEM for completeness.
  52.  
  53.  
  54. 2  LEGAL STUFF
  55.  
  56. XYZ is copyright (C) 1991 by Alan Hamilton, all rights reserved.  It may be
  57. copied and distributed freely provided that the XYZ.TTP, XYZ.DOC, and READ.ME
  58. files are all included.  If distributed for a fee, it should be made clear to
  59. the purchaser that the fee does not include the shareware fee (see above).
  60.  
  61.  
  62.  
  63.  
  64.  
  65.                                     - 1 -
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73. XYZ is shareware.  If you use XYZ, please register it.  I suggest a $10
  74. registration fee, but if you think it's worth more, or less, send that
  75. amount.
  76.  
  77. Although I've done my best to test XYZ, it's offered "as is" with no guarantee
  78. at all.  You use it at your own risk.  I will not be responsible for any
  79. losses you may suffer from using it.
  80.  
  81.  
  82. 3  ACKNOWLEDGMENTS
  83.  
  84. XMODEM was developed by Ward Christenson.
  85. YMODEM and ZMODEM were developed by Chuck Forsberg of Omen Technology.
  86. CRC code by Stephen Satchell of Satchell Evaluations, and Chuck Forsberg of
  87. Omen Technology.
  88. Flash is a trademark of Antic Publishing.
  89. C library code copyright (C)1988 by the Mark Williams Company.
  90. 520ST, 1040ST, STe, Mega ST and Mega STe are trademarks of Atari, Inc.
  91. GEnie is a trademark of GEISCO/General Electric.
  92. GEM and GEM Desktop are trademarks of Digital Research.
  93.  
  94. 4  WHAT IT ISN'T
  95.  
  96. Although XYZ supports the most useful parts of the ZMODEM protocol, there are
  97. a few things that aren't.
  98.  
  99. 1.  Commands.  This part of the ZMODEM protocol was intended to allow you to
  100. remotely control a system.  Since XYZ is intended to be manually operated, and
  101. the ST doesn't have a standard command line interface, commands are not
  102. accepted.
  103. 2.  Compression.  Neither run-length encoding (RLE) nor Lempel-Ziv-Welch (LZW)
  104. compression is supported.  You can use a separate utility to compress files
  105. and then send them with XYZ if you want.
  106. 3.  Challenges.  XYZ does not try to verify that it is connected to a system
  107. that is ready for ZMODEM.  It assumes that you have already told that system
  108. to go to ZMODEM.
  109. 4.  Pathnames.  XYZ does not send any path information to the remote system,
  110. and strips off any it receives.
  111. 5.  Selective file replacement.  The ZMODEM protocol lets you selectively
  112. transfer files based on whether they exist or don't exist at the receiver, or
  113. whether they are different in file size, date, or CRC.  XYZ only does one of
  114. two things while downloading:  If a file does not exist, it is transferred in
  115. its entirety.  If it does exists, it assumes that you are resuming a file
  116. transfer that was aborted, and tries to resume at the end of what you have.
  117. When uploading, the remote system will decide which files to accept.
  118. 6.  File transmission resumption.  Do not try to download a file that already
  119. exists on your disk unless you are trying to recover an aborted transfer.  The
  120. file will be damaged if it is a different file, despite having the same name.
  121. If the file was previously received in its entirety, and you try to restart a
  122. download on it, it probably won't be damaged, but this depends on how the
  123. sender reacts, so be careful.
  124. 7.  Disk space check.  If the sender tries to check on how much space you have
  125. available on your disk, XYZ will always tell it that you have an unlimited
  126. amount.  This was done because checking the disk space is a very slow
  127.  
  128.  
  129.  
  130.  
  131.                                     - 2 -
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139. operation on hard drives.
  140. 8.  Encrypting.  File encryption is not supported.
  141. 9.  Seven bit transfers.  Transferring eight bit files (non-text files) over
  142. lines that only support seven bits per character is not supported.  This is
  143. something you'd only run into with a mainframe.
  144. 10.  Sparse files.  Transferring selected portions of a file that's mostly
  145. zeros is not supported.  The entire file must be sent.
  146. 11.  32 bit CRCs.  XYZ only uses 16 bit CRCs, which should be sufficient
  147. unless you are really paranoid about data integrity.
  148. 12.  CRC checks on files.  Some systems will do this to determine whether or
  149. not they have the same version of a file as the one you are sending.  XYZ
  150. doesn't support this check at this time.
  151.  
  152. 5  HOW TO USE IT
  153.  
  154. 5.1  Configuration
  155. XYZ is mainly intended to be run from inside a regular telecommunications
  156. terminal program.  Because of this, it does not alter the settings of your
  157. ST's RS232 port from what the terminal program has set them to.  For XYZ the
  158. RS232 port should be set as follows:
  159.  
  160. Baud (or bits per second or BPS):
  161. This should match what the system you are connecting with requires, and what
  162. your modem is capable of.
  163. Data bits:     8
  164. Parity:        None
  165. Stop bits:     1 or 2
  166. Flow control:  XOFF/XON (also called DC2/DC4):  OFF
  167.                RTS/CTS:  OFF, unless you are using a high-speed modem that
  168. requires it to be on.
  169.  
  170. These settings are very common, so you probably won't have to change them.
  171.  
  172. 5.2  Running from the Desktop
  173. If you can't run programs from within your terminal program, or your memory
  174. space is limited, you will have to exit to the Desktop to run XYZ.  Set the
  175. remote system up for the transfer, then exit your terminal program.  Open XYZ,
  176. and a dialog box will appear.  Type in the options (see below for the options
  177. available), click on OK, and the transfer will start.  One of the options you
  178. will want to specify is -p which will make XYZ pause before it returns to the
  179. GEM Desktop.  If you don't specify a folder to download to, the files will go
  180. into the same folder that XYZ is in.  After XYZ finishes, it will exit back to
  181. the Desktop.  You may then rerun your terminal program and continue.
  182.  
  183. 5.3  Running from within a terminal program
  184. If you can run programs from within your terminal program, life gets much
  185. easier.  If, however, your terminal program doesn't let you pass parameters to
  186. a .TTP program, you will only be able to download only with ZMODEM and to the
  187. default folder.  See the manual for your terminal program for directions on
  188. running other programs.
  189.  
  190. In Flash, the command is "exec xyz.ttp" (omit the quote marks).  Any options
  191. go after the program name.  If you are keeping XYZ in a different folder than
  192. the default one (set with Flash's DP or CD commands), you will have to specify
  193.  
  194.  
  195.  
  196.  
  197.                                     - 3 -
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205. it:  "exec c:\telecom\xyz.ttp".  You can even program a function key to run
  206. XYZ, and download with the push of one button.  Program the key you want with
  207. ">exec xyz.ttp|", along with any options you want before the |.  (See the
  208. Flash manual on setting function keys.)  After XYZ completes, you will be
  209. returned to Flash.
  210.  
  211. 5.4  Aborting a transfer
  212. If you want to stop a transfer before it is complete, press the UNDO key.  XYZ
  213. will send an abort sequence to the remote system and terminate.  Keep in mind
  214. that some mainframes take their own sweet time responding to abort sequences,
  215. so you may see a long string of garbage on your screen, or the mainframe may
  216. seem to have locked up.  If you are using ZMODEM, you can restart the transfer
  217. of a partially transferred file later.
  218.  
  219. 5.5  Second chance file save
  220. In case of a disk error while saving a downloaded file, XYZ will give you a
  221. second chance to save the file, with the limitation that the entire file must
  222. fit in XYZ's buffer, and that you respond to the error message within 30
  223. seconds.  The time delay only applies to your first response.  After that, XYZ
  224. will wait any amount of time for your input.  To cancel the time out, press
  225. any key.
  226.  
  227. You have three options.
  228.  
  229. Retry save, selected by typing 'R', makes XYZ try the operation again.  If the
  230. problem that caused the first failure hasn't been fixed, the error will happen
  231. again.
  232.  
  233. New path, selected by typing 'N', lets you enter a different folder or drive
  234. to save to. For example, to save to the root directory of drive B:, you'd
  235. enter "B:\" (without the quote marks).  If you select a path that doesn't
  236. exist, you will get another error.
  237.  
  238. Abort, selected by typing 'A', makes XYZ abort the save.  You will lose
  239. anything that was in XYZ's buffer, and the file transfer will be aborted.
  240. If you don't respond to the error message within 30 seconds, XYZ will choose
  241. Abort for you.  This happens so that if XYZ is running unattended, it won't
  242. get stuck.
  243.  
  244. 5.6  Downloading
  245. 5.6.1  ZMODEM
  246. The -z option selects ZMODEM, but since this is what XYZ defaults to, the -z
  247. may be omitted.  You can specify a folder to download to on the command line.
  248. If you don't specify a folder, XYZ will put the files in the current default
  249. folder.  This is either the folder that XYZ was run from or the folder your
  250. terminal program was run from, unless you've explicitly changed it with
  251. something like Flash's DP command.
  252.  
  253. Examples:                           No options means download ZMODEM
  254.                                     to the default folder
  255.           c:\download               Download ZMODEM to the DOWNLOAD folder
  256.                                     on drive C:
  257.  
  258. The RZ ZMODEM program supports some extra options that can be set by XYZ when
  259.  
  260.  
  261.  
  262.  
  263.                                     - 4 -
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271. it is uploading to a system that is running RZ.  These options are passed
  272. along to it.  If the other system is not running RZ, they will be ignored.
  273. Since the option flags mimic those of RZ, they must be in the same case as
  274. they are given -- upper or lower.  Unless you are having problems with the
  275. other system, you probably should not need these.  The options should be
  276. stacked right after the -z command, like -zaY.
  277.   a  Convert newlines to local format
  278.   b  Binary file -- no conversion
  279.   n  Transfer if source newer
  280.   N  Transfer if newer or longer
  281.   p  Protect file -- don't overwrite
  282.   r  resume interrupted transfer
  283.   y  Clobber (replace) file
  284.   Y  Send file if not present
  285.   +  Append to existing file
  286.  
  287. 5.6.2  YMODEM
  288. The -y option selects the YMODEM batch protocol.  You should know that some
  289. BBSs call XMODEM-1K (XMODEM with 1K blocks) "YMODEM," and call YMODEM "YMODEM
  290. batch."  If the system offers both those options, select YMODEM batch to use
  291. with XYZ's YMODEM.
  292.  
  293. You can specify a folder to download to on the command line.  If you don't
  294. specify a folder, XYZ will put the files in the current default folder.  This
  295. is either the folder that XYZ was run from or the folder your terminal program
  296. was run from, unless you've explicitly changed it with something like Flash's
  297. DP command.
  298.  
  299. Examples:  -y                        Download YMODEM to the default folder
  300.            -y c:\download            Download YMODEM to the DOWNLOAD folder
  301.                                      on drive C:
  302.  
  303. 5.6.3  XMODEM
  304. The -x option selects an XMODEM file transfer.  You should know that some BBSs
  305. call XMODEM-1K (XMODEM with 1K blocks) "YMODEM," and call YMODEM "YMODEM
  306. batch."  If the system offers both those options, select YMODEM to use with
  307. XYZ's XMODEM with 1K blocks, or XMODEM to use with XYZ's XMODEM with 128 byte
  308. blocks.
  309.  
  310. XMODEM does not provide a way for the remote system to tell XYZ what the name
  311. of the file being transferred is, so you must put the file name on the command
  312. line.  If you want the file to go into a folder other than the default one,
  313. you should specify the path name also.  See the examples below.
  314.  
  315. You do not need to tell XYZ if the remote system will be using 1K blocks or
  316. not.  XYZ will get that information by itself from the other system.
  317.  
  318. If you want to transfer an XMODEM file from a very old system that is still
  319. using the original XMODEM with checksum error checking, use the -xc option
  320. instead of -x on the command line.  You should only use this if it's all the
  321. system will support.  The newer CRC error checking is much more reliable.
  322.  
  323. Examples:  -x forbush.txt          Download with XMODEM the file FORBUSH.TXT
  324.                                    to the default folder
  325.  
  326.  
  327.  
  328.  
  329.                                     - 5 -
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.            -x a:\pdq\phred.txt     Download with XMODEM the file PHRED.TXT
  338.                                    to the PDQ folder on drive A:
  339.            -xc oldfile.txt       Download with XMODEM using checksum error
  340.                                    detection the file OLDFILE.TXT
  341.  
  342. 5.7  Uploading
  343. 5.7.1  Wildcards
  344. When uploading with YMODEM or ZMODEM, you can transfer more than one file at
  345. once.  You can put the names of the files to send on the command line, but you
  346. are limited by the length of the line, and in any case, XYZ will only take 10
  347. filenames that way.  By using wildcards, you can give XYZ a partial filename,
  348. and it will upload all the filenames that match it.
  349.  
  350. The two wildcard characters are ? and *.  The question mark will match exactly
  351. one character, and the asterisk will match zero, one, or more characters.
  352. Suppose you have the following files on your disk:
  353.  
  354. THING1.PRG
  355. THING2.PRG
  356. THING.PRG
  357. THING44.TXT
  358.  
  359. THING?.PRG would match THING1.PRG and THING2.PRG.  THING*.PRG would match
  360. THING1.PRG, THING2.PRG, and THING.PRG.  *.TXT would match THING44.TXT only.
  361. The wildcard combination *.* will match all of them.  You should be careful
  362. about using *.*, as it will send every file in the folder, including XYZ,
  363. should it be in that folder.
  364.  
  365. 5.7.2  ZMODEM
  366. The options -u -z select ZMODEM uploading.  ZMODEM is the default, so you can
  367. just specify -u if you want.  Place the filenames of the files you want to
  368. transfer (up to ten) on the command line.  You can also specify filenames in
  369. an input file using the -i command (see below).  Wildcards are allowed, and
  370. XYZ will send every file that matches, even if there are more than ten files.
  371.  
  372. Examples:  -u c:\uploads\*.*        Upload using ZMODEM every file in the
  373.                                     UPLOADS folder on drive C:
  374.            -u file1 file2           Upload using ZMODEM FILE1 and FILE2 from
  375.                                     the default folder
  376.            -u a:\*.arc              Upload using ZMODEM every ARC file in
  377.                                     the root directory of drive A:
  378.            -u -ifile.lst            Upload the files listed in the FILE.LST
  379.                                     file
  380.  
  381. 5.7.3  YMODEM
  382. The options -u -y select YMODEM uploading.  You should know that some BBSs
  383. call XMODEM-1K (XMODEM with 1K blocks) "YMODEM," and call YMODEM "YMODEM
  384. batch."  If the system offers both those options, select YMODEM batch to use
  385. with XYZ's YMODEM.
  386.  
  387. Place the filenames of the files you want to transfer (up to ten) on the
  388. command line.  You can also specify filenames in an input file list using the
  389. -i command (see below).  Wildcards are allowed, and XYZ will send every file
  390. that matches, even if there are more than ten files.
  391.  
  392.  
  393.  
  394.  
  395.                                     - 6 -
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404. Examples:  -u -y c:\uploads\*.*   Send using YMODEM all the files in the
  405.                                   UPLOADS folder on drive C:
  406.            -u -y file1 file2      Send using YMODEM FILE1 and FILE2 from
  407.                                   the default folder
  408.            -u -y a:\*.arc         Send using YMODEM all the ARC files from
  409.                                   the root directory of drive A:
  410.            -u -y -ifile.lst       Send using YMODEM all the files listed
  411.                                   in the FILE.LST list
  412.  
  413. 5.7.4  XMODEM
  414. The options -u -x select XMODEM uploading.  Using the option -x1k instead of
  415. -x makes XYZ use 1K blocks rather than the default 128 byte blocks.  1K blocks
  416. make the transfer go faster, but the remote system has to support them.  You
  417. should know that some BBSs call XMODEM-1K (XMODEM with 1K blocks) "YMODEM,"
  418. and call YMODEM "YMODEM batch."  If the system offers both those options,
  419. select "YMODEM" to use with XYZ's XMODEM with 1K blocks, or "XMODEM" to use
  420. 128 byte blocks.
  421.  
  422. You don't need to tell XYZ whether to use CRC or checksum error detection
  423. while uploading.  It will get that information directly from the remote
  424. system.
  425.  
  426. XMODEM can only transfer one file per session.  Put the name of the file to
  427. send on the command line.  You can also specify the filename in an input file
  428. list using the -i command.  If you use wildcards, only the first file that
  429. matches will be sent.  This may be any one of the matching files, and there's
  430. no good way to tell in advance which one it will be.  Using wildcards with
  431. XMODEM is *not* recommended for this reason.
  432.  
  433. Examples:  -u -x snowball.arc    Send using XMODEM the file SNOWBALL.ARC
  434.                                  from the default folder
  435.            -u -x1k ako.gif       Send using XMODEM-1K the file AKO.GIF
  436.                                  from the default folder
  437.            -u -x1k a:\b\c.arc    Send using XMODEM-1K the file C.ARC
  438.                                  from the B folder on drive A:
  439.            -u -x1k -ifile.lst    Send using XMODEM-1K the file listed in
  440.                                  the FILE.LST file
  441.  
  442. 5.8  Options
  443. 5.8.1  -1  Disable batch mode (1 file)
  444. If you are downloading, and only want to accept one file using YMODEM or
  445. ZMODEM, use this option.  If the other system tries to send more than one
  446. file, XYZ will reject the extra files.  You have the option of specifying the
  447. name that the one file will be saved under.  If you specify a filename right
  448. after the -1 option, the one file that is accepted will be saved under that
  449. name, not the name the other system gave it.  Note that the -1 is the number
  450. one, not a lowercase L.
  451.  
  452. Examples:  -1          Only accept one file in transfer
  453.            -1afile.arc Only accept one file, and save it under the name
  454.                        AFILE.ARC, regardless of what the other system called
  455.                        it.
  456.  
  457.  
  458.  
  459.  
  460.  
  461.                                     - 7 -
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469. 5.8.2  -a  Alarm
  470. Normally, XYZ will ring the terminal bell when it has completed transferring
  471. all the selected files.  Putting -a on the command line makes XYZ ring the
  472. bell after each and every file.
  473.  
  474. 5.8.3  -c  Detect modem carrier
  475. This makes XYZ constantly check the status of the modem's carrier detect line.
  476. If the modem loses the carrier from the remote system, and this option is
  477. specified, XYZ will abort the transfer.
  478.  
  479. 5.8.4  -h  Help
  480. This causes a short description of the available options to print out, along
  481. with the current version number.  Giving an invalid option gets you this
  482. display, too.
  483.  
  484. 5.8.5  -i  Input file list
  485. This lets you specify a text file containing the names of files to be
  486. uploaded.  Each filename should be separated by any combination of spaces,
  487. tabs, cursor returns, or line feeds.  The name of the file should come right
  488. after the -i option.
  489. Examples:  -ifile.lst    Upload files listed in the file FILE.LST
  490.            -ia:\file.lst  Upload files listed in the file FILE.LST on drive
  491.                          A:
  492.  
  493. 5.8.6  -o  Output file list
  494. This option will make XYZ make a text file containing the filename of all
  495. files that were uploaded or downloaded successfully.  If a transfer was
  496. aborted, the name of the file not sent will not be listed.
  497. Example:   -olist.txt    List files transferred in the file LIST.TXT
  498.  
  499. 5.8.7  -p  Pause
  500. If you are running XYZ from the Desktop, you won't be able to see any error
  501. messages when it exits, as the Desktop wipes them out.  Putting -p on the
  502. command line will make XYZ prompt you to press a key before it exits.
  503.  
  504. 5.8.8  -q   Quiet
  505. This option lets you suppress XYZ's messages.  Using -q suppresses the status
  506. messages, but still allows error messages.  Using -qq prevents any messages
  507. from being generated.  Note that the -v option will not work with the -qq
  508. option.
  509.  
  510. 5.8.9  -r   Set retry limit
  511. Ordinarily, XYZ will abort a transfer if more than ten errors occur.  When you
  512. have had that many errors, the chances of an error slipping through undetected
  513. become greater.  If, however, you want to take your chances, you can set the
  514. retry limit with this command.  It can be set anywhere from the default 10 up
  515. to 1000.  There must not be any spaces between the -r and the number.
  516. Example:  -r50     Set XYZ's retry limit to 50
  517.  
  518. 5.8.0  -s  Return status
  519. This option is only useful if you are having some other program call up XYZ.
  520. The -s option makes XYZ return a status code that indicates how the file
  521. transfer went.  Use this only with a program that expects XYZ to return status
  522. codes.  See the error messages section for details on what the errors mean.
  523.  
  524.  
  525.  
  526.  
  527.                                     - 8 -
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535. The codes are:
  536.   0  No error
  537.  -1  Missing block number
  538.  -2  Missing or bad header
  539.  -3  Synchronization error
  540.  -4  Timed out
  541.  -5  Checksum error
  542.  -6  User aborted
  543.  -7  File error
  544.  -8  Too many retries
  545.  -9  CRC error
  546. -10  Filename must be specified
  547. -11  Bad escape character
  548. -12  Bad or unsupported packet type
  549. -13  Bad hexadecimal character
  550. -14  Sender not ready or set to receive
  551. -15  Subpacket too long
  552. -16  Sender aborted
  553. -17  File position error
  554. -18  Sender indicates end of file, but file length is wrong
  555. -19  Receiver canceled
  556. -20  End of transmission not acknowledged
  557. -21  Bad option on command line
  558. -22  Not enough memory to allocate buffers
  559. -23  Modem carrier lost
  560. -24  Batch mode disabled -- file skipped
  561.  
  562. 5.8.1  -t  Touch
  563. This makes XYZ "touch" (set the time and date to the current time and date)
  564. files that it downloads.  If the sender specifies a creation time and date for
  565. a file, that is normally retained.  The -t option makes XYZ use the current
  566. time and date instead.  If the creation time and date isn't specified by the
  567. sender, the current time and date is put on the file.  XMODEM will always use
  568. the current time and date.
  569.  
  570. 5.8.2  -v<file>  Verbose mode
  571. This causes XYZ to output special debugging information.  If no file is
  572. specified, the output goes to the screen.  If a file is specified, it should
  573. be directly after the "v" (no spaces), and output will go to it, along with
  574. any error messages you might get.  If you have problems with XYZ, run it with
  575. the -v option, and send the file it creates along with any comments to me.
  576. When using a file, there must not be any spaces between the -v and the file
  577. name.
  578. Examples:  -v             Download ZMODEM, sending debug info to screen
  579.            -ve:\log.txt   Download ZMODEM, sending debug info to "log.txt"
  580.                           on drive E:
  581.  
  582.  
  583. 6  PROBLEMS
  584. If you have problems with XYZ, look up the error messages here in the manual.
  585. If you can't resolve your problems using that information, run it using the
  586. -vlog.txt command, and send the log.txt, along with any other information that
  587. seems relevant, to me on the GEnie computer service, at STARFALL.  You can
  588. also contact me at the mail address given at the start of this document.
  589.  
  590.  
  591.  
  592.  
  593.                                     - 9 -
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603. 7  REVISION HISTORY
  604.  
  605. 5-31-91:  v2.01  A lot of bug fixes!  The error recovery for ZMODEM uploads
  606. has, with any luck, been fixed.  A bug that would cause bombs when aborting a
  607. YMODEM transfer has been fixed.  New features are a vastly improved transfer
  608. status display, and the ability to abort the transfer if the modem drops
  609. carrier.  The -b command has been removed, due to a more reliable method of
  610. detecting the transfer speed.  New command line options:
  611.  -1  (one file) Disable batch mode in Y/ZMODEM.  Only accept one file.
  612.  -c  (detect carrier) Abort transfer if modem drops carrier.
  613.  -i  (input file list) Files to send can be listed in a text file.
  614.  -o  (output file list)  Files transferred can be listed in a text file.
  615.  -q  (quiet)  Status messages can be suppressed.
  616.  
  617. 11-19-90:  v2.0:  I knew I'd get back to it eventually.
  618. New command line options:
  619.  -u  (upload)  Yes, uploading is here finally!
  620.  -s  (status)  If you are running XYZ from another program, like a BBS, you
  621. can have XYZ return error codes.
  622.  -b  (baud rate) sets rate that file transfer times are based on.  See below.
  623. New features:
  624.     Transfer time estimation.  XYZ will estimate the time it will take to send
  625. a file, based on the speed that the serial port is set at, or on the rate you
  626. specify with the -b option.
  627.     Second chance save.  If XYZ encounters a disk error while saving a file,
  628. and the file will fit entirely within XYZ's buffer, XYZ will give you a second
  629. chance to save it.
  630.     Bugs relating to changing incompatible filenames have been fixed.  The -v
  631. option no longer has to be the last one on the command line.  YMODEM doesn't
  632. bomb on some errors anymore.  ZMODEM handles resending packets better.
  633. Sometimes you would get a GEM dialog box in response to a disk error, but the
  634. mouse was disabled so you couldn't select anything.  XYZ now handles its own
  635. errors.
  636.  
  637. 12-6-89:  v1.43:  More bug fixes!  When trying to rename some incompatible
  638. filenames, XYZ would bomb.  If you tried to download more than one file in a
  639. ZMODEM session, and the first file was a restarted transfer (already partially
  640. downloaded), the characters per second speed rating would be wrong on
  641. subsequent files.  A new option "-a" has been added.  This will make the
  642. terminal bell ring after every file in YMODEM and ZMODEM, not just at the end
  643. of a complete session.  XYZ now shows its version and creation date whenever
  644. you run it.  A byte count is now shown along with the block count in XMODEM
  645. and YMODEM.  XMODEM and YMODEM can now recover from a timeout error on the
  646. first block.  XMODEM and YMODEM now will retry the correct number of times; it
  647. was only retrying half as many as it should have.  A few typos have been fixed
  648. in the program and this doc file (how come nobody told me "transferred" had
  649. two r's?).
  650.  
  651. 11-3-89:  v1.42:  In 1.41, if you were disconnected while using ZMODEM, XYZ
  652. would not time out, and you would not be able to use the UNDO key to abort.
  653. The only way out would be to reset the computer.  The console bell now rings
  654. at the end of a file transfer session.
  655.  
  656.  
  657.  
  658.  
  659.                                     - 10 -
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668. 10-21-89:  v1.41:  Lots o' changes this time:
  669. 1.  If v1.3 of XYZ was started before the sender started up, XYZ would bomb.
  670. Fixed.
  671. 2.  A bug in handling of file creation dates in YMODEM has been fixed.
  672. 3.  XMODEM and YMODEM now use disk buffering.
  673. 4.  File errors are now more explicit as to what the problem is.
  674. 5.  ZMODEM now can handle speeds over 9600 baud.
  675. 6.  XMODEM and YMODEM now indicate how fast the files were transferred.
  676. ZMODEM no longer overstates the transfer rate if you are restarting a
  677. transfer.
  678. 7.  Handling of retries is different.  In earlier versions, the retry limit
  679. (before aborting) was supposed to be ten, but a bug made it only five.  This
  680. has been fixed, and a new option has been added to let you specify a retry
  681. limit.  Put -r<n> on the command line, with <n> replaced by the number of
  682. retries (up to 1000).  For example, -r25 would give you 25 retries.
  683. 8.  Some messages that were similar in YMODEM and ZMODEM were changed to be
  684. exactly the same.
  685. 9.  Some of the C library code has been replaced with code of my own, making
  686. XYZ about 4k smaller.
  687.  
  688. 10-1-89:  v1.3  At long last, disk buffering is here!  Rather than saving
  689. after every packet, XYZ only does a disk write after all available memory has
  690. been filled up.  XYZ now lets you start it before the sender has started.
  691. This was attempted in v1.2, but a bug in the code would make XYZ bomb if you
  692. tried it.  That has been fixed.  A disk full condition is now reported, rather
  693. than just a generic "File error" if the disk doesn't have enough room for the
  694. file.  A new option -p will make XYZ wait for you to press a key before
  695. exiting.  This can be handy if you are running XYZ from the Desktop.
  696.  
  697. 9-19-89:  v1.2  Up to now, if XYZ got five CTRL-X's while waiting for a ZMODEM
  698. frame to start, it would abort with a "Sender aborted" error.  Now it only
  699. aborts if it gets five *consecutive* CTRL-X's.  Unexpected aborts most often
  700. happened during recovery of CRC errors.  Now sends hardware break signal
  701. correctly.  XYZ now handles timeout errors better.
  702.  
  703. 9-15-89:  v1.1:  A rather stupid error regarding filename conversion has been
  704. fixed.  XYZ would sometimes insert a '.' in the seventh or eighth position of
  705. a filename, regardless of whether it was appropriate or not.  The help screen
  706. (printed in response to the -h option) has been rearranged.
  707.  
  708. 9-13-89:  XYZ v1.0 released.  Implements ZMODEM for the first time.  Buffer
  709. overflow at high bps rates fixed.  Synchronization error in YMODEM fixed
  710. (again!).  UNDO key handling improved.  The documentation file, XYZ.DOC, is
  711. totally new.  XY.DOC is no longer applicable.
  712.  
  713. 7-2-89:  XY.TTP v0.5 released.  Handles only XMODEM and YMODEM.  Early release
  714. to accommodate changes made to GEnie software that Flash(tm) could not
  715. handle.
  716.  
  717.  
  718. 8  ERROR MESSAGES
  719.  
  720. Something that has always ticked me off is getting an error message from the
  721.  
  722.  
  723.  
  724.  
  725.                                     - 11 -
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733. program I'm using, looking it up in the manual, and finding that IT'S NOT
  734. THERE!  So, what follows is a complete listing, in alphabetical order, of
  735. every possible message that XYZ can produce, along with an explanation.
  736.  
  737. Access denied
  738. The ST could not open a file either because the file is set to read only
  739. status, or a folder exists with that same name.
  740.  
  741. Attn string:  <hex bytes>
  742. This details the string the sender wants XYZ to use to interrupt it.
  743.  
  744. Average transfer rate = <number> cps
  745. This gives the average throughput in characters per second.
  746.  
  747. Bad escape char <hex byte>
  748. An invalid escape sequence was received.  Probably caused by line noise.
  749.  
  750. Bad escape character
  751. An invalid escape sequence was received.  Probably caused by line noise.
  752.  
  753. Bad hexadecimal character
  754. XYZ was expecting a hexadecimal digit but got an character that wasn't 0-9 or
  755. a-f.  Probably caused by line noise.
  756.  
  757. Bad option on command line
  758. An option that XYZ doesn't recognize was in the command line.
  759.  
  760. Bad or unsupported packet type
  761. An unrecognized packet was received.  Either caused by line noise, the sender
  762. being set to upload when XYZ is downloading or vice versa, or using ZMODEM
  763. features XYZ doesn't support.  See "WHAT IT ISN'T" section.
  764.  
  765. Bad packet type <number>
  766. Same as above.  The type number of the packet is printed.
  767.  
  768. Bad request
  769. A serious error within either the ST's operating system or within XYZ has
  770. occurred.  You may have to reset your computer.
  771.  
  772. Batch mode disabled -- file skipped
  773. More than one file was received, but the -1 command had been specified.  The
  774. extra files are skipped.
  775.  
  776. Bombs
  777. Not the word "Bombs", but the little cartoon bombs on the left side of your
  778. screen.  The ST's processor has encountered an instruction that it can't
  779. process.  This can be caused by a bad copy of XYZ, a conflict with a desk
  780. accessory or program in the AUTO folder, or (most likely) a coding  boo-boo of
  781. mine.
  782.  
  783. Block #<block number>  (<number> bytes, <speed> cps)
  784. Number of the block being received, the number of bytes already transferred,
  785. and the number of characters per second that were transferred for this block.
  786.  
  787.  
  788.  
  789.  
  790.  
  791.                                     - 12 -
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799. Block resent, but not requested.
  800. A block was retransmitted that XYZ did not request.  Caused either by line
  801. noise, or very slow responses by the sender.
  802.  
  803. Buffer size = <size>
  804. The number of bytes of memory that XYZ will use as a buffer.
  805.  
  806. Bytes transferred     CPS: now / avg   Time left
  807. Under this header are specified:  the number of bytes transferred, the
  808. percentage of the file transferred, the transfer rate for the most recent
  809. block, and overall for the entire file, and the estimated time it will take to
  810. transfer the remainder of the file.
  811.  
  812. Can't convert filename "<filename>", will use "<filename>"
  813. The sender specified a filename that XYZ couldn't make compatible with the
  814. Atari ST's operating system.  A random filename with the extension .XYZ will
  815. be used.
  816.  
  817. Can't find any files matching "<filename>"
  818. XYZ couldn't find one of the files you specified for uploading, or if you used
  819. wildcards, there were no matching files.  Make sure that the filename is
  820. correct, and that you've specified the path if the file isn't in the default
  821. folder
  822.  
  823. Can't open error log
  824. The filename specified with the -v (verbose) option can't be opened.  The
  825. output will go to the screen instead.
  826.  
  827. Can't open "<filename>" for input file list: <error>
  828. XYZ couldn't open the file specified in the -i command.  Look up the <error>
  829. for the reason why.
  830.  
  831. Can't open "<filename>" for output file list: <error>
  832. XYZ couldn't create the file specified in the -o command.  Look up the <error>
  833. for the reason why.
  834.  
  835. Can't read from input file list
  836. XYZ wasn't able to read in the file specified in the -i command, possibly due
  837. to a disk error.
  838.  
  839. Caught a <number> signal
  840. The remote system is interrupting XYZ's upload with the indicated packet
  841. type.
  842.  
  843. Checksum error
  844. The checksum on the last block was invalid.  Probably caused by line noise.
  845.  
  846. Command received, but commands not supported
  847. XYZ does not accept commands from remote systems.  See "WHAT IT ISN'T"
  848. section.
  849.  
  850. Command: <command>
  851. Text of command received.  See above.
  852.  
  853.  
  854.  
  855.  
  856.  
  857.                                     - 13 -
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865. CRC error
  866. The CRC error detection code on the last block was invalid.  Probably caused
  867. by line noise.
  868.  
  869. Crc error (as part of file error message)
  870. The ST detected an error while accessing the disk.  The disk may be damaged.
  871.  
  872. Created on <date>
  873. Gives time and date that the file was created.
  874.  
  875. Disk full!
  876. There isn't enough room on your disk to hold the file.  The transfer is
  877. aborted, with as much of the file as the disk will hold saved.  You can resume
  878. the transfer in ZMODEM if you move the partial file to another disk that has
  879. more room, or if you delete some files on the disk.  If the entire file fits
  880. in the disk buffer, you can use the second chance save feature to save it to a
  881. different disk.
  882.  
  883. Downloading YMODEM
  884. A YMODEM session has started.
  885.  
  886. Drive not ready
  887. The disk drive isn't responding.  Make sure the drive is attached, turned on,
  888. and has a formatted disk in it.
  889.  
  890. Duplicate YMODEM header received.  Ignored.
  891. A file specification block was retransmitted by the remote system, but it was
  892. not requested.  Caused by line noise, very slow responses from the sender, or
  893. operating XYZ in XMODEM mode when the sender is using YMODEM.
  894.  
  895. End of transmission not acknowledged
  896. XYZ finished sending a file using XMODEM or YMODEM, but the remote system did
  897. not answer XYZ's end of file signal.  Caused by line noise, or the remote
  898. system going down.
  899.  
  900. Enter new path:
  901. Enter the path that you want XYZ to retry the save operation on.  Hit <RETURN>
  902. without entering anything to retry on the same path.
  903.  
  904. Error closing file: <error type>
  905. XYZ closed a file that it was finished with, but a disk error occurred.  Look
  906. up the error type in this section for an explanation.
  907.  
  908. Error closing input file:  <error type>
  909. Same as above.
  910.  
  911. Error in positioning file pointer:  <error type>
  912. XYZ tries to find the end of the file after it opens it.  If it can't, you get
  913. this message.  Look up the error type that prints out to find out what error
  914. occurred.
  915.  
  916. Error in seeking to end of file
  917. Same as above.
  918.  
  919.  
  920.  
  921.  
  922.  
  923.                                     - 14 -
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931. Error opening file:  <error type>
  932. XYZ could not open a file.  Look up the error type in this section to find out
  933. what error occurred.
  934.  
  935. Error opening input file: <error type>
  936. Same as above
  937.  
  938. Error reading input file: <error type>
  939. A disk error occurred while XYZ was reading from a file.  Look up the error
  940. type in this section for an explanation.
  941.  
  942. Error seeking to end of file
  943. XYZ tries to find the end of the file after it opens it.  If it can't, you get
  944. this message.
  945.  
  946. Error seeking to offset <offset>
  947. An error occurred when XYZ tried to reference the indicated position in a
  948. file.
  949.  
  950. Error writing to file:  <error type>
  951. An error occurred while XYZ was trying to write to a file.  Look up the error
  952. type in this section to find out what error occurred.
  953.  
  954. File created on <time & date>
  955. The time the file being received was created.
  956.  
  957. File created on <time & date>, reset to <time & date>
  958. The time the file being received was created.  This will be changed to the
  959. current time and date.
  960.  
  961. File creation date not specified, reset to <time & date>
  962. The sender did not specify a creation time; therefore the current time will be
  963. put on the file.
  964.  
  965. File error
  966. A file error occurred while writing to the disk.  Caused by a full disk, a bad
  967. filename, specifying a folder that doesn't exist, or a disk error.
  968.  
  969. File error at sender
  970. A file error occurred at the remote system, so it is aborting the transfer.
  971.  
  972. File exists -- transfer resuming at offset <offset>
  973. The file that is being transferred already exists, so it is assumed that an
  974. aborted transfer is being resumed.
  975.  
  976. File <filename> exists!
  977. XMODEM and YMODEM will not overwrite a file that already exists.  Specify a
  978. different file name (XMODEM) or path (YMODEM), or delete the file that
  979. already exists.
  980.  
  981. File name is <filename>
  982. Specifies what file was being accessed when a disk error occurred.
  983.  
  984. File not found
  985.  
  986.  
  987.  
  988.  
  989.                                     - 15 -
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997. XYZ tried to read from a file that didn't exist.  Make sure that the filenames
  998. you put on the command line exist and are in the correct folder.
  999.  
  1000. File pos = <position>, sender = <position>
  1001. XYZ and the sender disagree over how much of the file has been sent.  The
  1002. position each claims is specified.
  1003.  
  1004. File position error
  1005. XYZ and the sender disagree over how much of the file has been sent.
  1006.  
  1007. File name is <filename>
  1008. The name of one of the current open file is printed.
  1009.  
  1010. Filename must be specified
  1011. When doing an XMODEM download, you have to put the filename on the command
  1012. line.
  1013.  
  1014. <number> files to send, <size> total size
  1015. Gives the total number of files that have been selected for uploading, and the
  1016. total number of bytes they take up.
  1017.  
  1018. Function domain
  1019. Function range
  1020. XYZ has made a request of the ST's operating system that the ST can't handle.
  1021. Either the operating system has been corrupted, or there is a bug in XYZ.
  1022. Reset the computer and try again.
  1023.  
  1024. Fundamental error
  1025. The disk drive is not responding.  Make sure that it is connected, turned on,
  1026. and has a formatted disk in it.
  1027.  
  1028. General error
  1029. This is an internal error in the ST's operating system.  You will probably
  1030. have to reset the computer.
  1031.  
  1032. Got <type> after ZEOF
  1033. The indicated packet type was received after XYZ sent a ZEOF packet.
  1034.  
  1035. Got a GOTCAN
  1036. The remote system sent a session abort sequence (a series of CTRL-X's, or
  1037. "CANcels") while XYZ was waiting for a character.
  1038.  
  1039. Got a session abort while waiting for ZPAD
  1040. The sender sent a series of CTRL-X's, or "CANcels," while XYZ was waiting for
  1041. the start of a ZMODEM frame.
  1042.  
  1043. Got a ZRPOS!
  1044. This packet type is used for uploading, but XYZ got one when it was
  1045. downloading.  Make sure that XYZ and the remote system are set to send files
  1046. in the same direction.
  1047.  
  1048. Got a ZSKIP?!?
  1049. This packet type is used for uploading, but XYZ got one when it was
  1050. downloading.  Make sure that XYZ and the remote system are set to send files
  1051.  
  1052.  
  1053.  
  1054.  
  1055.                                     - 16 -
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063. in the same direction.
  1064.  
  1065. Got: <frame type> <header> <hex bytes> CRC <CRC value>
  1066. This details a ZMODEM packet that was received.
  1067.  
  1068. Got ZCRC '%c'
  1069. This indicates tells the CRC type at the end of the last data subpacket.
  1070.  
  1071. "<filename>" has been renamed to "<filename>"
  1072. The remote system specified a filename that the ST cannot handle, so XYZ
  1073. changed it to the specified name.
  1074.  
  1075. Insufficient memory
  1076. Either your computer does not have enough memory for XYZ to run, or something
  1077. has gone wrong with the way the memory is being managed.  Try removing desk
  1078. accessories and/or programs in the AUTO folder to free up some memory.  If you
  1079. are running XYZ from within another program, you may have to run it from the
  1080. Desktop to get enough memory.
  1081.  
  1082. Internal error
  1083. An error has occurred within the ST's operating system.  You will probably
  1084. have to reset the computer.
  1085.  
  1086. Interrupted by packet type <type>
  1087. The remote system is trying to get XYZ's attention with an error recovery
  1088. message
  1089.  
  1090. Invalid drive specified
  1091. You specified a drive in the path name that does not exist.  Be sure the drive
  1092. letter you specified was correct, and the disk is connected and turned on.
  1093.  
  1094. Invalid function number
  1095. Invalid handle
  1096. Invalid memory block address
  1097. A serious internal error in XYZ or the ST's operating system has occurred.
  1098.  
  1099. Invalid option <option>
  1100. You put an option on the command line that XYZ does not recognize.  A list of
  1101. the valid options is printed out.
  1102.  
  1103. <filename> matches <filename>, <number> bytes
  1104. The filename (possibly with wildcards) for uploading matches the specified
  1105. file.
  1106.  
  1107. Media change
  1108. You removed the disk from the drive while XYZ was using it.  NEVER remove a
  1109. floppy disk until after XYZ has finished running.
  1110.  
  1111. Memory free: <# of bytes>
  1112. Shows the amount of memory left free before XYZ allocates its buffers.
  1113.  
  1114. Message: <text>
  1115. The remote system sent a message.
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.                                     - 17 -
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129. Missing block number
  1130. A valid block number was not received.  Probably caused by line noise.
  1131.  
  1132. Missing or bad header
  1133. The block header was not sent completely or was garbled.  Probably caused by
  1134. line noise.
  1135.  
  1136. Modem lost carrier
  1137. The carrier detect line from the modem dropped.  This usually means the remote
  1138. system was disconnected.
  1139.  
  1140. No files to upload were specified
  1141. You selected upload, but didn't specify which files to send.  Put the
  1142. filenames on the command line.
  1143.  
  1144. No handles left
  1145. The ST has too many files open.  If you are running XYZ from within another
  1146. program that opens files without closing them, this error might occur.
  1147. Otherwise, it indicates an internal error in the ST's operating system.
  1148.  
  1149. Not enough memory to allocate buffers
  1150. There isn't enough free memory to run XYZ.  Remove some of your desk
  1151. accessories and/or programs in the AUTO folder, or run XYZ from the desktop
  1152. rather than from within a terminal program.
  1153.  
  1154. Only one input file list allowed
  1155. Only one file can contain an input file list.
  1156.  
  1157. Only one output file list allowed
  1158. XYZ can create only one output file listing.
  1159.  
  1160. Only specify one path for downloading
  1161. You can only download to a single path (YMODEM and ZMODEM) or download a
  1162. single file (XMODEM).
  1163.  
  1164. Path not found
  1165. The path you specified on the command line does not exist.  All the folders in
  1166. the path must have already been created before you run XYZ.  If you are using
  1167. XMODEM, be sure the filename isn't the same as a folder's name.
  1168.  
  1169. Press any key to exit....
  1170. The -p option was put on the command line, and XYZ is about to terminate.
  1171. Press a key to let it complete its termination.
  1172.  
  1173. Range error
  1174. A serious internal error has occurred within either the ST's operating system
  1175. or within XYZ.
  1176.  
  1177. Read <number> chars from offset <offset>
  1178. The amount and location of data read from a disk file is indicated.
  1179.  
  1180. Read fault
  1181. An error occurred while the ST was trying to read from a disk.  The disk may
  1182. be damaged.
  1183.  
  1184.  
  1185.  
  1186.  
  1187.                                     - 18 -
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.  
  1196. Receiver canceled
  1197. The remote system has aborted the transfer.
  1198.  
  1199. Receiver requests retransmission
  1200. The remote system wants a packet resent.  Probably caused by line noise.
  1201.  
  1202. Receiver wants a CRC on this file but I can't do it
  1203. Doing CRC checks on files isn't supported.  See WHAT IT ISN'T section.
  1204.  
  1205. Receiving file "<filename>", <size> bytes
  1206. The transfer of a file has begun.  The size is specified by the sender, and
  1207. may not be the actual size of the file.
  1208.  
  1209. Receiving file "<filename>", size not specified
  1210. The transfer of a file has begun.  The size of the file was not specified.
  1211.  
  1212. Repositioning to offset <offset>
  1213. The remote system wants XYZ to back up to the specified offset in the file.
  1214. Probably caused by line noise.
  1215.  
  1216. Retrying save....
  1217. XYZ is making a second attempt to save the file.
  1218.  
  1219. RS232 output buffer size = <size>
  1220. The number of bytes that the ST's output buffer can hold is specified.
  1221.  
  1222. Sector not found
  1223. The ST is unable to read from the disk drive.  Make sure it is connected,
  1224. turned on, and has a formatted disk in it.
  1225.  
  1226. Seek error
  1227. The ST is unable to read from the disk drive.  Make sure it is connected,
  1228. turned on, and has a formatted disk in it.
  1229.  
  1230. Sender aborted
  1231. The remote system is aborting the transfer.
  1232.  
  1233. Sender indicates end of file, but file length is wrong
  1234. The remote system has come to the end of the file, but the number of bytes it
  1235. says it sent does not match the number of bytes XYZ has received.
  1236.  
  1237. Sender not ready or set to receive
  1238. The remote system is echoing back XYZ's packets, or it is set to upload when
  1239. XYZ is set to download.  Make sure the remote system is started, and that it
  1240. and XYZ are set to transfer files in the same direction.
  1241.  
  1242. Sender requested CRC?!?
  1243. The remote system requested a file CRC check while XYZ is downloading, but
  1244. that's only allowed while uploading.  Make sure the remote system and XYZ are
  1245. set to transfer files in the same direction.
  1246.  
  1247. Sender requests retransmission
  1248. The sender wants XYZ to resend a packet.  Probably due to line noise.
  1249.  
  1250.  
  1251.  
  1252.  
  1253.                                     - 19 -
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262. Sender sent ZCHALLENGE?!?
  1263. The remote system issued a challenge while downloading, but this is only
  1264. allowed during uploading.  Make sure XYZ and the remote system are set up to
  1265. transfer files in the same direction.
  1266.  
  1267. Sender sent ZCOMPL -- ignored
  1268. The sender indicates it completed a command, but XYZ doesn't issue commands.
  1269.  
  1270. Sending <number> subpacket chars:
  1271. XYZ is sending a data subpacket containing the indicated number of bytes.
  1272.  
  1273. Sending file "<filename>", <size> bytes
  1274. XYZ has started to upload the indicated file.
  1275.  
  1276. Sent ZBIN <type> <hex bytes> CRC <CRC value>
  1277. Details of a binary-style packet that XYZ sent
  1278.  
  1279. Sent ZCRC '<type>' CRC <CRC value>
  1280. A CRC packet was sent.
  1281.  
  1282. Sent ZHEX <type> <hex bytes> CRC <CRC value>
  1283. Details of a hex-style packet that XYZ sent
  1284.  
  1285. Setblock failure due to growth restrictions
  1286. Something has gone wrong with the ST's memory management.
  1287.  
  1288. Skipping file at request of other system
  1289. The remote system has requested that XYZ not send a particular file.
  1290.  
  1291. Starting transfer at offset <offset>
  1292. The remote system wants XYZ to restart the transfer of a partly transferred
  1293. file
  1294.  
  1295. Subpacket bad CRC: <CRC value>
  1296. An invalid CRC was received at the end of a data subpacket.  Probably due to
  1297. line noise.
  1298.  
  1299. Subpacket too long
  1300. A data subpacket has exceeded 1k in length, or an attention string is over 32
  1301. bytes long.  Probably due to line noise.
  1302.  
  1303. Synchronization error
  1304. The sender is sending the wrong packet.  Probably caused by either line noise
  1305. or very slow responses from the sender.
  1306.  
  1307. Timed out
  1308. Too much time has passed since the last character was received.  Probably
  1309. caused by line noise, very slow responses from the sender, or failure of the
  1310. sender.
  1311.  
  1312. To abort, press UNDO at any time
  1313. This just informs you that you can abort a transfer by pressing the UNDO key.
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.                                     - 20 -
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327. Too many retries
  1328. Too many errors have occurred.  The session is aborted.
  1329.  
  1330. Transfer of <filename> complete, <size> bytes
  1331. Transfer of a file complete successfully.  The filename and actual size is
  1332. indicated.
  1333.  
  1334. Unexpected ZACK from sender!
  1335. This packet type is used for uploading, but XYZ got one while downloading.
  1336. Make sure XYZ and the remote system are set to transfer files in the same
  1337. direction.
  1338.  
  1339. Unknown device
  1340. You didn't specify a valid drive letter in the pathname on the command line.
  1341.  
  1342. Unknown media
  1343. The disk you are trying to use is not formatted correctly.
  1344.  
  1345. Usage:  xyz.ttp [options] <path>
  1346. Prints in response to the -h (help) option, or an invalid option.  A list of
  1347. all possible options follows.
  1348.  
  1349. User aborted
  1350. You have pressed the UNDO key, and the session has been aborted.
  1351.  
  1352. Verbose mode is on!
  1353. The -v option was specified.  Special debugging information will be written to
  1354. the screen or a specified file.
  1355.  
  1356. Write fault
  1357. An error occurred while XYZ was trying to write to the disk.  The disk may be
  1358. damaged.
  1359.  
  1360. Write protect
  1361. The write protect window on the floppy disk is open.
  1362.  
  1363. <number> XMODEM blocks
  1364. <number> XMODEM-1k blocks
  1365. The number of blocks it will take to send the file is given.
  1366.  
  1367. <number> YMODEM blocks
  1368. The number of blocks it will take to send the current file is given.
  1369.  
  1370. YMODEM complete!
  1371. YMODEM session has completed.
  1372.  
  1373. YMODEM file transfer
  1374. A YMODEM session is beginning.
  1375.  
  1376. YMODEM packet received, but doing XMODEM
  1377. A YMODEM file specification was received, but XYZ is set to do an XMODEM
  1378. transfer.  Make sure you select the same mode for both XYZ and the remote
  1379. system.
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.                                     - 21 -
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393. YMODEM transfer aborted!
  1394. An error has occurred, and the YMODEM session is being aborted.
  1395.  
  1396. ZBIN Bad CRC: <CRC value>
  1397. An invalid CRC was at the end of a binary-style packet.  The CRC value is
  1398. specified.
  1399.  
  1400. ZEOF = 0x%lx, f_offset = 0x%lx
  1401. The sender is claiming end-of-file, but XYZ hasn't received all of it.  The
  1402. file size the sender specifies and the amount XYZ has received is printed.
  1403.  
  1404. ZFILE acked with <type>
  1405. The remote system sent the indicated packet type in response to XYZ's ZFILE
  1406. (file specification) packet.
  1407.  
  1408. ZFIN acked with <type>
  1409. The remote system sent the indicated packet type in response to XYZ's ZFIN
  1410. (end of transaction) packet.
  1411.  
  1412. ZHEX Bad CRC: <CRC value>
  1413. An invalid CRC was at the end of a hex-style packet.  The CRC value is
  1414. specified.
  1415.  
  1416. ZMODEM file transfer
  1417. A ZMODEM session has started.
  1418.  
  1419. ZMODEM transfer complete.
  1420. A ZMODEM session has completed.
  1421.  
  1422. ZRINIT expected prior to ZFIN, but got <type>
  1423. The remote system is trying to end the session, but it didn't complete sending
  1424. the last file.
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.                                     - 22 -
  1452.  
  1453.  
  1454.  
  1455.  
  1456.    ======================================================================
  1457.  
  1458.                        XYZ v2.01 Quick Reference
  1459.  
  1460. You should have the following files:
  1461. XYZ.TTP         The program itself
  1462. XYZ.DOC         Full documentation
  1463. READ.ME         This file
  1464.  
  1465. Here it is at last -- XYZ with uploading!
  1466.  
  1467. XYZ v2.01 is shareware.  If you use it, please contribute.  I suggest $10.
  1468. Send contributions, along with any other comments, to:
  1469.  
  1470. Alan Hamilton
  1471. 6202 N. 16th St. #202
  1472. Phoenix, AZ 85016-1734
  1473.  
  1474. If you have already contributed for an earlier version of XYZ, you don't
  1475. need to register again.
  1476.  
  1477. I can also be reached on the GEnie network at STARFALL.
  1478.  
  1479. XYZ version 2.01 is an enhanced version of v2.0.  New features:
  1480.  
  1481.  o More detailed status display
  1482.  o Files to be sent can be specified in a text file
  1483.  o Files transferred successfully can be listed in a text file
  1484.  o Modem carrier detect can be monitored
  1485.  o Status messages can be suppressed
  1486.  o Extended ZMODEM options can be sent to systems that use the UNIX
  1487.    RZ and SZ programs
  1488.  
  1489. The new status display shows the bytes left to transfer, the percent
  1490. transferred, the characters per second (cps) for both the current
  1491. block, and the average for the whole file, plus the estimated time left
  1492. for the transfer.  Since the estimated transfer time is now figured on
  1493. the fly, XYZ does not have to know the modem port baud rate, so the
  1494. -b command has been deleted.
  1495.  
  1496. New commands:
  1497. Remember, any option that takes a parameter must have the parameter right
  1498. after the option.  Do not put a space between them.
  1499.  
  1500. RIGHT:  -iFILELIST.TXT
  1501. WRONG:  -i FILELIST.TXT
  1502.  
  1503. -i<filename>    This option lets you specify files to upload in a text file,
  1504.         rather than on the command line.  The files listed in the
  1505.         file will be uploaded in addition to any files on the
  1506.         command line.  There is a limit of 100 filenames, but
  1507.         they can contain wildcards.  Any wildcarded name will match
  1508.         and send any number of files.  The filenames should be
  1509.         separated by any combination of tabs, spaces, cursor returns,
  1510.         or linefeeds.
  1511.  
  1512. -o<filename>    This option makes XYZ create a text file containing the names
  1513.         of all the files transferred successfully.  Any files that
  1514.         were not transferred will not be listed.  The filenames are
  1515.         separated by a cursor return/linefeed pair.  If XYZ was
  1516.         not using the default folder, the filenames will have
  1517.         the path in front of them.
  1518.  
  1519. -q[q]        Quiet.  This option keeps XYZ from printing the status
  1520.         messages that it normally prints.  Error messages will still
  1521.         be printed.  To suppress all messages, use the -qq option.
  1522.  
  1523. -c        Carrier detect.  This monitors the carrier detect line
  1524.         on the modem port (pin 8).  If the carrier is lost (the
  1525.         other system hangs up, etc.) XYZ will abort.  For this
  1526.         to work, the modem must generate the carrier detect signal,
  1527.         and the modem cable must connect pin 8 to the ST.
  1528.  
  1529. -1[filename]    One file -- no batch transfers.  For YMODEM and ZMODEM
  1530.         downloads, this makes XYZ only accept the first file sent.
  1531.         Any other files sent are rejected.  If a filename is
  1532.         specified, the one file is saved under that name, not
  1533.         under the one the other system gave.  Do not include any
  1534.         path information in this command -- just give the
  1535.         FILENAME.EXT.  Use the regular folder specification on
  1536.         the command line to direct it into a folder other than
  1537.         the default one.  Note that -1 is a number one, not
  1538.         the letter el.  -l will not work.
  1539.  
  1540. -z[options]    This allows you to specified UNIX-style ZMODEM options to
  1541.         the remote system while uploading.  The options letters
  1542.         are the same as the SZ commands.  To conform with the UNIX
  1543.         style of parameters, the option letters must be in
  1544.         the proper case, upper or lower.  For example, -zy tells
  1545.         RZ to overwrite any file that exists with the same name as
  1546.         the one being sent.  XYZ does *not* use these commands;
  1547.         only use them when sending files to a system that uses the
  1548.         UNIX conventions.
  1549.  
  1550. See XYZ.DOC for full information on all of the new features.
  1551.  
  1552. Command line examples:
  1553.  
  1554.                         No options means do a ZMODEM download to the
  1555.                         current default folder
  1556.  
  1557. c:\download             Do a ZMODEM download to the DOWNLOAD folder on
  1558.                         drive C
  1559.  
  1560. -y                      Do a YMODEM download to the default folder
  1561.  
  1562. -y c:\download          Do a YMODEM download to the DOWNLOAD folder on
  1563.                         drive C
  1564.  
  1565. -x file1.arc            Do a XMODEM download of FILE1.ARC to the default
  1566.                         folder (a filename must always be used with XMODEM)
  1567.  
  1568. To upload, put -u on the command line, along with the filename or filenames
  1569. (up to ten) to be uploaded.  They may contain wildcards, and all files that
  1570. match a wildcard pattern will be sent.
  1571.  
  1572. Examples:
  1573.  
  1574. -u e:\uploads\*.*       Do a ZMODEM upload of all files in the UPLOADS folder
  1575.  
  1576. -u afile.txt            Do a ZMODEM upload of AFILE.TXT that's in the default
  1577.                         folder
  1578.  
  1579. -u *.*                  Do a ZMODEM upload of all files in the default folder
  1580.                         NOTE: If this is the folder XYZ.TTP is in, it will
  1581.                         send itself, so watch out.
  1582.  
  1583. -u -iFILELIST.TXT    Do a ZMODEM upload of all the files listed in the
  1584.             text file FILELIST.TXT
  1585.  
  1586. -y -u e:\uploads\*.ARC      Send all ARC files in the UPLOADS folder
  1587.                                 using YMODEM
  1588.  
  1589. XMODEM can only send one file.  If you use wildcards, only the first file
  1590. that matches will be sent.
  1591.  
  1592. -x -u afile.txt             Send AFILE.TXT from the default folder using
  1593.                                 XMODEM
  1594.  
  1595. -x1k -u a:\bfile.txt        Send BFILE.TXT from the root directory on drive
  1596.                                 A using XMODEM with 1k blocks
  1597.  
  1598. If you have any problems, run XYZ with the -vlog.txt command, and send me
  1599. the LOG.TXT file, along with any comments you may have.  I can be reached as
  1600. STARFALL on GEnie.
  1601.