FILE TRANSFERS


TABLE OF TOPICS


Sending files from one computer to another is one of the most useful things you can do with your modem. Telix supports a full assortment of the most popular file transfer protocols, including Xmodem, Xmodem-1k, Xmodem-1k-g, Zmodem, Compuserve Quick B, Kermit, Ymodem, Ymodem-g, SEAlink, Telink, Modem7, and ASCII. Telix's file transfers are very fast, surpassing most programs in speed by a respectable margin. All file transfers use a 10 Kbyte buffer, and full error detection is standard.

Telix allows you to define up to five external protocols, which are completely integrated into the file transfer menus. When you select one of these protocols, Telix executes a DOS batch file or Telix script file, which must then call the appropriate external driver for the protocol. In this way, you may add virtually any file transfer protocol to Telix. Adding external protocols is defined in the section on the Configuration Menu.


Downloading (Receiving) Files


To start downloading (receiving) a file from a remote host, you must usually inform the remote host of the files that you want it to send to you before starting the transfer on the Telix side. You must then start the download on the Telix side. Pressing the Alt-R key will display a menu asking which file transfer protocol you would like to use:
  +-| Download file |-+
  |                   |
  |  Which Protocol?  |
  |                   |
  |  ASCII            |
  |  CIS Quick B      |
  |  Kermit           |
  |  Modem7           |
  |  SEAlink          |
  |  Telink           |
  |  Xmodem           |
  |  1k-Xmodem        |
  |  G-1k-Xmodem      |
  |  Ymodem (Batch)   |
  |  YmodEm-g         |
  |  Zmodem           |
  |  Quit             |
  |                   |
  +-------------------+


If any external protocols are defined, they are also shown as part of the menu.

If you have selected Xmodem, Xmodem-1k, Xmodem-1k-g, or ASCII, as the protocol, Telix will ask you for the filename to save the file to. Telix always watches what you type while online, and will often know the name of the file you want to transfer, in which case this name will be displayed and all you have to do to accept it is press Return. Any legal DOS filename is valid, including a path. If the filename you supply already exists, Telix will ask you to confirm your choice or give another filename. If you select any other protocol, the remote sender of the file will supply the name to save the file to. If you have entered a download directory name in the Configuration Menu, Telix will automatically save download files there if you don't specify another path. Telix has automatic incoming file protection. If the name is supplied by the host and exists already the file is renamed by using numerals in the extension, as needed.

During the transfer, a full status window is displayed showing the elapsed time, the number of bytes received, and an approximate Character Per Second rating, which can give an idea of the effective speed of the transfer. Batch protocols will also display the expected file size and file transfer time. For ASCII transfers, a status window is not displayed, only a single status line at the top of the screen. To abort a file transfer at any time press the Escape key.

Table of Topics


Uploading (Sending) Files


To start uploading (sending) a file to a remote host you must also usually inform the host of the file you will be sending it before starting the upload on the Telix end. To start the upload on the Telix end press the Alt-S key. This will display a menu asking you which file transfer protocol you want to use to send the file. After you have selected the protocol, you will be asked for the file(s) to send by a dialog box:

   +-| Upload Files |--------------------------------------------------+
   |                                                                   |
   |  +-| Path/Directory |------------------------------------------+  |
   |  | D:\TELIX\                                                   |  |
   |  +-------------------------------------------------------------+  |
   |                                                                   |
   |  +-| Filelist |--+  +-| Tagged Files |---------+  +-| Drives |-+  |
   |  | ..\           |  |                          |  |     C:     |  |
   |  | DOWN\         |  |                          |  |     D:     |  |
   |  | SALT\         |  |                          |  |     X:     |  |
   |  | 1.FON         |  |                          |  |     Y:     |  |
   |  | ANSI.KEY      |  |                          |  |     Z:     |  |
   |  | TELIX.CNF     |  |                          |  |            |  |
   |  | TELIX.EXE     |  |                          |  |            |  |
   |  | TELIX.FON     |  |                          |  |            |  |
   |  | TELIX.KEY     |  |                          |  |            |  |
   |  +---------------+  +--------------------------+  +------------+  |
   |                                                                   |
   +-------------------------------------------------------------------+

This is a complex dialog, and deserves more detailed attention. Once mastered, this dialog will greatly streamline the uploading process. There are four separate windows in the dialog. The selected dialog will have a bar at the top, highlighting the name of the window. You may move from one window to the next using Tab and Shift-Tab to move forward or backward, respectively. In any window, pressing Up-Arrow or Down-Arrow move the highlight bar in that direction if possible. Pressing F10 closes the dialog and uploads the files selected.

Tagged Files:

This window contains a list of all of the files Telix is to upload. It will be blank when the dialog first appears. You may select files to be included in this list as described below. Files already listed may be removed from this window by highlighting the file and pressing Enter or Space.

Path/Dir:

This window is where the currently displayed upload path will be displayed. You may add files to the Tagged Files List from this window by typing in the exact name of the file. You may use the wildcard characters ? and * (see your DOS manual, for more information about wildcard characters). You may change the currently displayed upload path by entering a new path here.

Filelist:

This window contains the files in the currently displayed upload path. This window may contain a maximum of approximately 700 files. Files listed in this window may be added to the Tagged Files List by highlighting the file and pressing Enter or Space. If you wish to add or remove all files in this window (both those on and off the screen) to or from the Tagged File List, you may do so with F3 and F4 respectively.

Drives:

This window contains a list of all available disks in your system, except for floppy drives. Users of removable disks such as Bernoulli boxes may have to load a cartridge to upload a file. You may change the drive on which the Filelist is read from by selecting a new drive from this window.

During the file transfer, a full status window is displayed, unless you are using ASCII protocol, in which case only a status line is displayed. Information shown is the expected time the transfer will take, the time remaining, the number of bytes to send, the number of bytes left, and an approximate Character Per Second rating, which can give an idea of the effective speed of the transfer. To abort a transfer at any time press the Escape key.

Table of Topics


File Transfer Protocols


Xmodem - Xmodem is often called the "lowest common denominator" protocol, and is the father protocol of many others. Xmodem sends files in blocks of 128 characters at a time. When the receiving computer is satisfied that the block has arrived intact, it signals so and waits for the next block. Error checking is a checksum or a more sophisticated Cyclic Redundancy Check. Telix supports both and will automatically use the right one. During a download, Telix will attempt to use the CRC, but will switch to checksum if it seems the host does not support CRC. The Xmodem protocol also needs a setup of no parity, 8 data bits, and 1 stop bit. If your communications parameters are different from these when you start an Xmodem transfer, Telix will switch to the required setup for the transfer, and back to the original setup after it is finished. In the Configuration Menu, you may enabled Relaxed Xmodem timing. This is for use with remote services that can not tolerate strict timing during Xmodem transfers.

Xmodem-1k - This is a small variation of the above that uses blocks that are 1 Kilobyte (1024 bytes) in size. This protocol is still mistakenly called 'Ymodem' by many programs, but people are gradually moving over to the proper name.

Xmodem-1k-g - This is a variation of the above that is meant for error-free channels such as error correcting modems or null modem cable links between two computers. It achieves great speed by sending blocks one after another without waiting for acknowledgment from the receiver. Because of this however, it can not re-send blocks in case of errors (and thus the need for an error-free link). If an error is detected by the receiver, the transfer is aborted. This protocol is still mistakenly called 'Ymodem-g' by many programs, but people are gradually moving over to the proper name.

Compuserve Quick B - This protocol is used only on the Compuserve Information Service. It is quite fast and specially suited for the networks used in accessing CIS, which have large turnaround delays. This is a windowed protocol, which basically means that unless errors are detected, data is being sent at all times. A CIS Quick B transfer is totally controlled by Compuserve. After telling CIS what file(s) to send, the user does nothing. Telix, in terminal mode, then detects the command from CIS which tells it to start the transfer (note that CIS Quick B transfer must be enabled in the Configuration Menu, or they will not work).

Zmodem - This advanced protocol is very fast and very reliable, and offers many features. It can arguably called the most popular protocol in use today. Zmodem can transfer a group of files in one batch, and keeps the exact file sizes and dates. Zmodem can detect and recover from errors quickly, and can resume an interrupted transfer at a later time (this feature, called Crash Recovery, may be toggled in the 'Protocol options' page of the Configuration Menu). Zmodem is also very well suited for satellite links and packet switched networks.

SEAlink - SEAlink is an advanced version of Xmodem developed by System Enhancement Associates. It is a sliding window protocol SEAlink is 15 to 25 percent faster than regular Xmodem. SEAlink passes a file's name, size, and date when transferring it, and can be used to send more than one file at a time.

ASCII - in an ASCII transfer, it is as if the sender is actually typing the characters and the receiver is just recording them. There is no form of error detection used. Usually only ASCII files can be sent in this way, as binary files contain characters which would foulup the screen.

Ymodem - This protocol is a variation on Xmodem, which allows for multiple files to be sent per transfer. While transferring files, it keeps the correct name, size, and date, and may use 128 or 1024 byte block sizes.

Ymodem-g - This protocol is a variation on the above, which achieves very high transfer rates by sending blocks one after another without waiting for acknowledgment. This however means than an error-free link such as an error-correcting modem or null modem cable between two computers is needed. If an error is detected by the receiver, the transfer is aborted.

Telink - This protocol is mainly found on Fido BBS systems. It is basically the Xmodem protocol using CRC checking with an extra block sent ahead of the file telling its name, size, and date. This protocol allows more than one file to be sent at a time.

Modem7 - Modem7 is a close cousin to Xmodem that passes the filename before starting the transfer, thus taking away some of the user's work. It is common on CP/M systems. This protocol allows more than one file to be sent at a time.

Kermit - The Kermit protocol was developed to make it easier for computers of different types to send files to each other. Almost any computer using Kermit can be set up to send files to another computer using Kermit (the same can be said of Zmodem however). Various options in the Kermit protocol implemented in Telix can be tailored to the user's needs in the Configuration Menu, option 'Kermit transfers'. This implementation of Kermit does not include a Kermit "server" function, and cannot use "SEND", "GET", or other server commands.

Table of Topics


Which One to Use


Telix supports a large number of built in file transfer protocols. To this can be added external protocols. It can get confusing to decide which one to use. When both sides of the connection only support one protocol, then obviously that is the one to use, no matter what its deficiencies. Otherwise some protocols are a better choice than others. On Compuserve, CIS Quick B should be used. For most purposes, Zmodem is the best all around protocol. It is very fast and very reliable. Ymodem-g and Xmodem-1k-g are slightly faster. However these two protocols need an error-free link. After that, Ymodem, SEAlink, and Xmodem-1k are quite fast and pretty reliable. The last choice would be Xmodem and its close cousins Telink and Modem7. ASCII transfers are suitable only for text files and do not perform any error detection or correction, so they are to be avoided if possible.

Table of Topics


[Table of Contents]
Page layout by S. Spyrou, C. Polichroniadis
HTML Programming by C. Polichroniadis