home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 19 / CD_ASCQ_19_010295.iso / vrac / izm100.zip / IZM.DOC < prev    next >
Text File  |  1994-11-23  |  36KB  |  721 lines

  1.                   IceZmodem File Transfer Protocol Documentation
  2.  
  3.                                 By Alan Caruana
  4.  
  5.                        Copyright (C) 1994 IceSoft Software
  6.                                All Rights Reserved
  7.  
  8.                          Documentation for Version 1.00
  9.  
  10.      Mail:  IceSoft Software       E-Mail: IceNET......: 3@1 or 1@3
  11.             215 Labelle Ave.               WWIV/WW4net.: 3@12180
  12.             Blasdell, NY 14219             Internet....: Icefreezr@delphi.com
  13.  
  14.                   IceSoft Software Support BBS: (716) 823-0424
  15.  
  16. ----------------------------< Table of Contents >-----------------------------
  17.  
  18.  Introduction...:  1. Shareware Notice
  19.                       License
  20.  
  21.                    2. Disclaimer
  22.                       Description
  23.  
  24.                    3. What is included
  25.                       Distribution
  26.                       Getting Started
  27.  
  28.  IceZmodem Usage:  4. The IceZmodem Command Line
  29.  
  30.                    6. Hardware Requirements
  31.                       The IZMSETUP Program
  32.  
  33.                    7. IceZmodem Functions
  34.  
  35.  You Should Know: 10. TurboTrans
  36.                       Handshaking
  37.  
  38.                   11. The 16550A UART
  39.                       Acknowledgements
  40.  Appendixes.....:     Appendix A: Freeing Your Memory
  41.  
  42.                   12. Appendix B: Error Messages
  43.  
  44.                   13. Appendix C: IceZmodem Command Line Examples
  45.                       Appendix D: Performance
  46.  
  47.                   14. Appendix E: Revision History
  48.  
  49. --- PAGE 1 -----------------< Shareware Notice >------------------------------
  50.  
  51.  IceZmodem is distributed as an unregistered shareware product. This means
  52.  that an unregistered copy of IceZmodem may be freely distributed to any
  53.  individuals, businesses or organizations for evaluation purposes to decide
  54.  if the product is worth purchasing. If you like IceZmodem and decide to use
  55.  it, you must register (purchase) it. IceZmodem is NOT free software!
  56.  
  57.  Using this shareware system, you will be able to try out the software before
  58.  you make a commitment to purchase it. If you have paid any money for this
  59.  program, it has gone to the distributor of the program and not to IceSoft
  60.  Software.
  61.  
  62.  BENEFITS OF REGISTRATION (Purchase)
  63.  """""""""""""""""""""""""""""""""""
  64.  Registration costs only $25 and will remove all annoying screens and sounds
  65.  and will enable enhanced features such as extended system information and
  66.  other future features. You also get telephone technical support. The best
  67.  part is, $25 will register this and ALL future versions of IceZmodem. You
  68.  will NEVER have to pay for an upgrade! To register, print the file
  69.  REGISTER.FRM or send a check or money order of $25 to:
  70.  
  71.                                 IceSoft Software
  72.                                 215 Labelle Ave.
  73.                                 Blasdell, NY 14219
  74.  
  75. ---------------------------------< License >----------------------------------
  76.  
  77.  IceZmodem, although it is on this computer, is not the property of the owner
  78.  of the computer. It is the property of IceSoft Software. It may be freely
  79.  distributed as long as all files are intact in the original ZIP package.
  80.  This distribution is for evaluation purposes only. Once it is established
  81.  that the operator of the computer is going to use IceZmodem continuously,
  82.  it must be registered. This applies to home, school, business or government
  83.  use.
  84.  
  85.  An UNREGISTERED VERSION (as freely distributed) may be shared freely.
  86.  
  87.  A REGISTERED VERSION of IceZmodem may NOT be distributed. A registered
  88.  version is for use on only ONE computer and may not be shared freely.
  89.  
  90.  If this program is to be used on more than one computer (such as in a
  91.  school or business) then the copies should be purchased in volume or a
  92.  site license should be obtained. Please contact IceSoft Software for more
  93.  information on volume discounts and site licenses.
  94.  
  95. --- PAGE 2 --------------------< Disclaimer >--------------------------------
  96.  
  97.  IceSoft Software is not responsible for any damages to your computer as a
  98.  result of using (or inability to use) IceZmodem. This includes loss of data,
  99.  files, and disk drives. This also includes loss of profit, savings and other
  100.  various damages aroused by the use of IceZmodem.
  101.  
  102.  IceZmodem is thoroughly tested on a variety of computer platforms before
  103.  beta or initial release to perform as stated in the documentation. However,
  104.  no warranty or guarantee may be stated due to the varying hardware systems
  105.  the software will run on.
  106.  
  107. -------------------------------< Description >--------------------------------
  108.  
  109.  IceZmodem is a 100% Zmodem compatible external file transfer protocol with
  110.  several enhancements that will increase your productivity while transfering
  111.  files and make the file transfer process less boring:
  112.  
  113.             * You can chat with the remote user during the file transfer.
  114.  
  115.             * You can shell to DOS and execute DOS commands and programs.
  116.                        (transfer pauses while programs are executed)
  117.  
  118.             * You can edit text files during the file transfer.
  119.  
  120.             * You can play MOD digital music files through a Sound Blaster,
  121.               DAC, or PC Speaker.
  122.  
  123.             * You can get 2 pages of system information about the remote
  124.               computer that you are transfering files with.
  125.  
  126.             * You can play built-in arcade games during the file transfer.
  127.  
  128.  It doesn't end here! IceZmodem also boasts:
  129.  
  130.             * A Screen Saver which shows, in large numbers, the percentage
  131.               the transfer has completed.
  132.  
  133.             * TurboTrans, a Zmodem speed booster which has helped to get
  134.               peaks of 99% efficiency during some file transfers.
  135.  
  136.             * Maximum Block size of 6144 bytes, compared to the standard
  137.               Zmodem maximum size of 1024 bytes.
  138.  
  139.             * An option for BBS Sysops to view information within their
  140.               BBS dropfile.
  141.  
  142.             * One of the most informative status displays found on any
  143.               file transfer protocol.
  144.  
  145. --- PAGE 3 ----------------< What is included >------------------------------
  146.  
  147.    IZM.DOC      - The IceZmodem documentation you are reading now
  148.    IZM.EXE      - The actual IceZmodem protocol
  149.    IZMSETUP.EXE - The setup program which reads/writes the configuration to
  150.                   IZM.EXE.
  151.    INSTALL.DOC  - A text file that explains how to set up IceZmodem with
  152.                   many popular BBS systems and terminal programs.
  153.    REGISTER.FRM - A text file that you can print out to simplify registration
  154.                   of IceZmodem
  155.    IZM-U.BAT,
  156.    IZM-D.BAT    - Batch files for uploading and downloading files using
  157.                   IceZmodem. These batch files will work with most terminal
  158.                   programs, however you may need to modify the batch file.
  159.                   (Refer to INSTALL.DOC for more information)
  160.  
  161. -------------------------------< Distribution >-------------------------------
  162.  
  163.  The unregistered version of IceZmodem may be freely distributed unmodified
  164.  in its original ZIP package. You may charge a fee of no more than $5 for
  165.  distribution costs of IceZmodem. IceZmodem may not be bundled with any
  166.  hardware or software unless written permission is obtained from IceSoft
  167.  Software. IceZmodem program code and IceZmodem setup program may not be
  168.  edited, modified, disassembled or reverse-engineered by any means
  169.  whatsoever. IceZmodem documentation may not be modified, reproduced, edited
  170.  or translated by any means whatsoever.
  171.  
  172. -----------------------------< Getting Started >------------------------------
  173.  
  174.  IceZmodem can easily be configured to work with any BBS or terminal program.
  175.  The command lines that are used to operate IceZmodem are similar to the
  176.  popular DSZ external protocol. INSTALL.DOC contains instructions on how to
  177.  set up IceZmodem with many popular BBS and terminal programs. Refer to this
  178.  file now if you do not know how to get started with your particular BBS or
  179.  Terminal program. Also, be sure to run IZMSETUP.EXE! (see page 6)
  180.  
  181. --- PAGE 4 -------------< The IceZmodem Command Line >------------------------
  182.  
  183.                IZM [OPTIONS] <File Transfer Type> <File/Pathname>
  184.  
  185.  OPTIONS    (See Appendix C for examples on using IceZmodem)
  186.  """""""
  187.    O    -  Put O on the the command line by itself to switch IceZmodem
  188.            into offline mode. This will let you use IceZmodem features
  189.            without having a modem connection.
  190.  
  191.    port - This tells IceZmodem what COM PORT you would like to communicate
  192.           with. It can be any value from 1 to 4.  You do not need to specify
  193.           the port if you have already set up your default port in IZMSETUP
  194.           and the default port is the one you would like to use. Specifying
  195.           this option will override your default port in IZMSETUP, but it
  196.           will NOT override your default address/IRQ nonstandard port in
  197.           IZMSETUP.
  198.  
  199.            * Do not use the PORT option combined with the adrirq option *
  200.  
  201.           Below are the standard addresses and IRQs that IceZmodem recognizes
  202.           when you specify the port command. If your address/IRQ is different
  203.           than these, you need to use the adrirq option or set up your
  204.           default address/IRQ in IZMSETUP.
  205.  
  206.                            PORT 1:  Address 3F8   Irq 4
  207.                            PORT 2:  Address 2F8   Irq 3
  208.                            PORT 3:  Address 3E8   Irq 4
  209.                            PORT 4:  Address 2E8   Irq 3
  210.  
  211.    **** EXAMPLE FOR PORT: IZM port 2
  212.  
  213.  adrirq -  This tells IceZmodem the ADDRESS and the IRQ of your NONSTANDARD
  214.            COM PORT if you have one. If upon examining the chart above, you
  215.            do not find your port address/IRQ, you use this command to specify
  216.            the address/IRQ of your port. It uses the syntax:
  217.  
  218.                             adrirq address,irq
  219.  
  220.            This option will override the address/IRQ you specify in IZMSETUP
  221.                   * DO NOT USE ADRIRQ COMBINED WITH THE PORT OPTION *
  222.  
  223.    **** EXAMPLE FOR ADRIRQ: IZM adrirq 3F8,4
  224.  
  225.  speed  - This tells IceZmodem the speed (bits per second) that the COM PORT
  226.           is operating at. If this option is not specified, IceZmodem will
  227.           assume that the COM PORT is already set at the proper speed (which
  228.           it always should be before IceZmodem is executed) and should work
  229.           properly.
  230.  
  231.    **** EXAMPLE FOR SPEED: IZM port 2 speed 2400
  232.  
  233. --- PAGE 5 ------------------------------------------------------------------
  234.  
  235.  node   - If you are running a multi-node BBS and you have specified the
  236.           location of your BBS dropfile in IZMSETUP with the * macro, you
  237.           must use this command line to tell IceZmodem what node you would
  238.           like to replace the * macro with.
  239.  
  240.    **** EXAMPLE FOR NODE: IZM port 2 speed 38400 node 5 rz C:\BBS\UPLOADS\
  241.  
  242.    flow - After the word flow, you may use SLOW or HARD. Specifying SLOW
  243.           will cause IceZmodem to stop the sender from sending data during
  244.           disk writes. This is good if the receiver is writing the file to
  245.           a floppy disk or a slow hard disk. Specifying HARD will turn the
  246.           hardware handshaking on. This means if the sender is sending data
  247.           too fast and the receiver can't keep up, the receiver will tell the
  248.           sender to stop sending data until the receiver catches up. ALL high
  249.           speed modems MUST use flow hard.  These options override the
  250.           defaults that you specify in IZMSETUP.
  251.  
  252.           To make this plain and simple, if the receiver is writing to a slow
  253.           hard disk or floppy disk, you MUST use flow slow. If you are using
  254.           greater than 2400 bps, you MUST use flow hard.
  255.  
  256.           You may combine both flow slow and flow hard. See below:
  257.  
  258.      **** EXAMPLE FOR FLOW: IZM port 2 speed 2400 flow slow
  259.      **** EXAMPLE FOR FLOW: IZM speed 19200 flow hard
  260.      **** EXAMPLE FOR FLOW: IZM speed 38400 flow slow flow hard
  261.  
  262.    page - Use either PAGE ON or PAGE OFF to allow the remote to page you with
  263.           a loud beep or not. This will override your default selection in
  264.           IZMSETUP. If PAGE OFF is specified, the screen will flash on and
  265.           off instead of making an audible noise.
  266.  
  267.  File Transfer Type
  268.  """"""""""""""""""
  269.      RZ - Use this to receive data. If you do not specify anything after the
  270.           RZ, all files received will go into the current directory. After
  271.           the RZ you may specify a pathname and/or a filename. If a pathname
  272.           is specified, all files will go into that directory. If a filename
  273.           is specified, all received files will be renamed to that filename.
  274.           If a pathname AND filename is specified, all files will go into
  275.           that path and be renamed to the filename specified.
  276.  
  277.      SZ - This is the command to send data. This command must always be
  278.           followed by either:
  279.  
  280.                   A filename: SZ program.zip
  281.                   A pathname: SZ c:\bbs\dloads\sysop\program.zip
  282.                   Many Names: SZ program.zip c:\bbs\log.txt a:\program.exe
  283.                   Wildcards : SZ *.zip
  284.                   File Lists: SZ @file.lst
  285.  
  286. --- PAGE 6 ------------------------------------------------------------------
  287.  
  288.           OR a combination of ANY of the above things. The File List at the
  289.           end is an @ sign followed by a filename. In this file is a list of
  290.           path/filenames to send - one on each line of the file.
  291.  
  292.               For example, if the file LIST.TXT contained the following:
  293.                               \PROGRAMS\QUADL10.ZIP
  294.                               \BBS\DLOADS\SYSOP\MAIL.ZIP
  295.                               IZM110.ZIP
  296.                 ...You could send all 3 of those files with the line:
  297.                          IZM port 1 speed 2400 sz @list.txt
  298.  
  299.    Environment Variables
  300.    """""""""""""""""""""
  301.    If you set the environment variable DSZLOG equal to a filename, IceZmodem
  302.    will create a DSZ-compatible log for programs which require it to run.
  303.                   Example: SET DSZLOG=C:\BBS\DSZLOG.TXT
  304.  
  305. ----------------------------< Hardware Requirements >-------------------------
  306.  
  307.    Processor: 8086 or better. You will need at least an 80286 to use the
  308.               Digital MOD Music or to utilize 16800+ bps reliably.
  309.  
  310.    DOS......: Version 3.0 or better. Any earlier versions will not work.
  311.               IceZmodem will work under DesqView, OS/2, and Windows however
  312.               some features (such as MOD player) will not work.
  313.  
  314.    Memory...: At least 200k to transfer files. To play music, edit text files
  315.               and shell to dos, you must have from 200k-300k. This amount of
  316.               memory must be present on top of all the other memory taken by
  317.               terminal programs or BBS systems. (See Appendix A for
  318.               information on gaining more memory)
  319.  
  320.    Display..: Any display will work, but a color monitor is highly
  321.               recommended.
  322.  
  323.    Optional.: Sound Blaster, Disney Sound Source, or a parallel port D/A
  324.               converter for best sounding Digital Music.
  325.  
  326. ----------------------------< The IZMSETUP Program >--------------------------
  327.  
  328.  The IZMSETUP program included with the IceZmodem package lets you set up
  329.  many of the default options in IceZmodem and sets several options which are
  330.  not adjustable anywhere else in the program. I recommend that you run the
  331.  IZMSETUP.EXE program when you first install your IceZmodem and whenever you
  332.  upgrade to a newer version of IceZmodem. The configuration options are
  333.  stored within the IZM.EXE file itself - eliminating the need for more files
  334.  cluttering up your hard disk and causing more headaches. The only problem
  335.  with this is that you will need to run IZMSETUP whenever you receive an
  336.  IZM.EXE upgrade.
  337.  
  338. --- PAGE 7 --------------------------------------------------------------------------
  339.  
  340.  When you first execute IZMSETUP, it will want to know where the IZM.EXE
  341.  file is located. If it is in the current directory, simply hit enter
  342.  otherwise tell it where it is. I am not going to document each option in
  343.  IZMSETUP because there is already documentation within the program. I
  344.  suggest that you go through each option and read what each option does and
  345.  choose wisely to get the best performance and reliability out of IceZmodem.
  346.  
  347. -----------------------------< IceZmodem Functions >--------------------------
  348.  
  349.  Alt-A - Abort File Transfer
  350.  """""""""""""""""""""""""""
  351.     This will abort the file transfer and return an Exit Code of 1.
  352.  
  353.  F1 - Main Screen
  354.  """"""""""""""""
  355.     The main screen is the heart of IceZmodem. Here you will see how the
  356.     transfer is progressing by the numerous indicators and graphs.
  357.  
  358.   Download/Upload Status Window
  359.   """""""""""""""""""""""""""""
  360.     Block Size - This is the number of bytes that are transferred before a
  361.                  checksum takes place. The greater this number, the more
  362.                  efficient the transfer will be. IceZmodem uses up to 6144
  363.                  byte blocks when connected to another IceZmodem. You may
  364.                  increase this number in IZMSETUP. Whatever block size that
  365.                  the SENDING compiter has specified is what will be used.
  366.  
  367.     CPS - This stands for characters per second, how efficient your file
  368.           transfer is going. Please be aware that this is an estimate and
  369.           is NOT very accurate. The actual CPS is usually a bit higher.
  370.  
  371.     TurboTrans - This tells wether TurboTrans is in use or not. (See page 10)
  372.  
  373.       Messages - Information about the transfers progress and remote user
  374.                  status appears here.
  375.  
  376.     Completion - A graph and a percentage that tells how complete the file
  377.                  transfer is.
  378.  
  379.         Method - Usually CRC-32 or CRC-16. Tells what method of CRC is being
  380.                  used to check each block. The CRC-16 method is barely
  381.                  faster and offers half the protection against data errors.
  382.  
  383.     Efficiency - A percentage that will tell how efficient the transfer is
  384.                  going. 99% is the highest ever obtained with IceZmodem. If
  385.                  you are using locked com ports, this feature will read N/A.
  386.  
  387. --- PAGE 8 ------------------------------------------------------------------
  388.  
  389.       Time Total - IceZmodem analyzes the rate of characters comming in to the
  390.                  computer to predict the total time of the transfer, giving
  391.                  IceZmodem very accurate total time prediction.
  392.  
  393.     Batch Status Window - This window contains the same as above with the
  394.                           exception that the Batch is the information on
  395.                           all the files you are transferring if you are
  396.                           transferring multiple files.
  397.  
  398.       User Status Window
  399.       """"""""""""""""""
  400.            User - The name of the person who is operating the IceZmodem
  401.            Regs - Their registration name (if registered)
  402.            Vers - The version of Zmodem or IceZmodem being used
  403.  
  404.  F2 - Chat
  405.  """""""""
  406.      You may chat with the remote user on this screen. If they are not in
  407.      chat, hit F10 to page them. When somebody is paged in IceZmodem, either
  408.      a beeping noise will come out their speaker or (if the page is turned
  409.      off) the screen will flash. Once both people are in chat, just type a
  410.      sentence and hit enter. The message will appear in the upper window.
  411.  
  412.  
  413.  F3 - DOS Shell
  414.  """"""""""""""
  415.      Using DOS Shell, you may execute any DOS commands or small programs
  416.      without greatly disturbing the transfer. Whenever you execute a
  417.      command or program in the DOS Shell, the file transfer temporarily
  418.      stops and then resumes when the prompt reappears. Knowing this,
  419.      you can execute small commands like DIR, RENAME, DEL, COPY, etc. and
  420.      the transfer wouldn't be harmed at all. You can load small utility
  421.      programs as well providing you dont remain in them for too long.
  422.      I wouldn't recommend staying in any executable file for more than
  423.      15-25 seconds. Especially if you are paying for long distance charges.
  424.      IceZmodem DOS Shell does not multitask. You cannot load up your favorite
  425.      text editor and expect the transfer to continue. There will be a certain
  426.      point where the buffer can no longer hold the incomming data and you
  427.      will loose data. This wont affect the file you are transfering.
  428.  
  429.  F4 - Screen Saver
  430.  """""""""""""""""
  431.      This will print the percentage complete in large numbers on a black
  432.      screen. To exit it, hit F1-F7.
  433.  
  434. --- PAGE 9 ------------------------------------------------------------------
  435.  
  436.  F5 - Text Editor
  437.  """"""""""""""""
  438.      This is a simple text editor that I threw in at the last minute to see
  439.      if it could be done. There are some bugs in the text editor and I am
  440.      going to completely re-write the text editor in a future version.
  441.      Select a file to load. If you wish to create a new file, hit T and then
  442.      type in a filename. If you get an error message, refer to Appendix B.
  443.      The text editor can currently only load files 64k or less. The file must
  444.      not contain more than 78 characters per line. When you are done editing
  445.      the file, hit F9 to save it. If you dont want to save it, hit F8 to
  446.      unload the text file. You must either save or unload the text file
  447.      before IceZmodem will exit when the transfer is complete.
  448.  
  449.  F6 - Module Player
  450.  """"""""""""""""""
  451.      The Module Player will play Amiga Digital MOD music files. These should
  452.      be available on one of your local BBSs or any information service. They
  453.      are quite popular on many platforms these days, especially on the PC.
  454.      You may play the files using a PC Speaker, a D/A converter, a Sound
  455.      Blaster, or a Disney Sound Source. The PC Speaker provides very poor
  456.      sound reproduction and some sort of additional hardware is required to
  457.      hear true high fidelity sound. Assuming you have enough memory and you
  458.      have correctly configured your sound device and sampling rate in
  459.      IZMSETUP, you will now be able to select a file to play. If you get an
  460.      error message, refer to Appendix B. You may adjust the MOD volume, turn
  461.      channels 1,2,3,4 on and off and skip forward/backward in the song while
  462.      it is playing. You can go to any of the other functions in IceZmodem
  463.      and the MOD will continue playing (the sound will stop during DOS Shell)
  464.      including System Info, text editor and Chat. The MOD Player may not work
  465.      properly with LANtastic software or other Local Area Network Operating
  466.      Systems.
  467.  
  468.  F7 - System Information
  469.  """""""""""""""""""""""
  470.      This will present a page or two of system information about the local
  471.      and remote computers. Find out what kind of computer that guy REALLY is
  472.      using. Great for online technical support. Registered users can also
  473.      view the remote device drivers, TSRs, and open file handles. Future
  474.      versions may be expanded in this area even further.
  475.  
  476.  F8 - Games
  477.  """"""""""
  478.      Just for fun, this will give you something to do during the transfer!
  479.      Speedboat Willy is a simple game where you use the left and right arrow
  480.      keys to avoid the bouys and other obstacles comming at you as you speed
  481.      down the river. There are four waves, if you complete the first group of
  482.      four waves you will go back to wave 1, although the game will be faster
  483.      this time! Good luck. WARNING: Excessive playing of this game will make
  484.      the room look like it is elevating when the game ends!
  485.  
  486. --- PAGE 10 -----------------------------------------------------------------
  487.  
  488.  F9 - User Screen
  489.  """"""""""""""""
  490.      If you are a sysop of a BBS and have told IceZmodem the filename of
  491.      your BBS dropfile in IZMSETUP, you may view your BBS dropfile using
  492.      this option. If you have used the * macro in the path/name, be sure
  493.      you are using the node option on the command line!
  494.  
  495. --------------------------------< TurboTrans >--------------------------------
  496.  
  497.   TurboTrans is a Zmodem speed booster which will enhance the efficiency of
  498.   your file transfer from 2 to 5 percent over standard Zmodem. It does this
  499.   by eliminating a 'feature' built into the original Zmodem standard. This
  500.   feature will not allow certain characters to flow through to avoid problems
  501.   with packet switching networks. These illegal characters must be sent as
  502.   TWO legal characters. This adds a decent amount of overhead to the file
  503.   transfer. When two IceZmodems are connected together they will usually be
  504.   connected by a direct modem connection, not a packet switching network.
  505.   Knowing this, IceZmodem will allow all but 2 characters to be sent through
  506.   as one character when TurboTrans is set to on. TurboTrans automatically
  507.   turns itself on when connected to another IceZmodem.
  508.  
  509. -------------------------------< Handshaking >--------------------------------
  510.  
  511.   There are thousands of different types of PCs out there, and along with
  512.   that, there are thousands of different speeds of PCs. Speed is dependant
  513.   on not only the processor and computer architecture, but also the software
  514.   that is running. For example, a memory manager slows down the speed of your
  515.   PC by a noticeable factor. Because modems allow us to hook faster PCs up
  516.   to slower ones, we need some way to let the slower PCs tell the faster
  517.   ones that they are sending data too fast for them to handle. That is
  518.   basically what Handshaking is. If the receiver cannot receive data as
  519.   fast as the sender is sending it, it has to tell the receiver to stop.
  520.   Handshaking is needed on ALL modems that run faster than 2400 bps. If
  521.   you use 2400 bps, you don't need to read this (now). If you are using
  522.   9600 bps or faster, you MUST understand handshaking. There are two
  523.   types of handshaking - hardware and software. All modems can use
  524.   software handshaking, but IceZmodem doesn't because it is inefficient
  525.   and adds overhead to the transfer, so lets ignore that for right now.
  526.   Hardware Handshaking. Most high speed modems transmit the CTS/RTS
  527.   (clear to send/request to send) signal on the phone line along with the
  528.   data that is being transmitted/received.  IceZmodem can manipulate this
  529.   signal to tell the sender to stop sending data when the receiver cannot
  530.   keep up. When the receiver catches up, it will resume the data
  531.   transmission. So, if you are using a high speed modem, BE SURE to set
  532.   HARDWARE HANDSHAKING to on - otherwise you will get a lot of errors
  533.   in the data transmission.
  534.  
  535. --- PAGE 11 ----------------< The 16550A UART >------------------------------
  536.  
  537.   If you are going to use over 9600 bps, I recommend you use a 16550A UART
  538.   chip. This will eliminate a lot of errors and problems you may have down
  539.   the road. You will be able to use over 9600 bps without a 16550A, but
  540.   in practice, it is not a good idea - especially on slower computers.
  541.  
  542. -----------------------------< Acknowledgements >-----------------------------
  543.  
  544.  IceZmodem as it is today would not have been possible without the code that
  545.  has been written by 1) the person who wrote the Source Code for Pascal
  546.  Zmodem. There was no author listed in the public domain code. 2) Mark J. Cox
  547.  who wrote the module playing routines. 3) Chuck Forsberg who developed the
  548.  original Zmodem protocol which is pretty much the standard protocol for
  549.  file transfers now. 4) TurboPower Software
  550.  
  551.  I would like to thank all Beta testers, including Jim Nunn, Mark Niedziela,
  552.  Yaser Behbehani, Tony Jones, George Wheeler, and all others who have helped
  553.  to make IceZmodem what it is today. And for support from God, Mom, and all
  554.  IceZmodem users who support this product.
  555.  
  556. -----------------------< Appendix A: Freeing your Memory >--------------------
  557.  
  558.     IceZmodem is by no means a memory hog - however, when you load up a 200k
  559.     MOD file and a 50k text file and expect to shell to DOS you better have
  560.     a sufficient amount of memory available! If you dont have at least 400k
  561.     of free memory when you start up IceZmodem, your terminal program or BBS
  562.     program is chewing up all your memory. To get around this, set your
  563.     terminal program or BBS program to 'Maximum DOS Shell' or 'Shrink BBS' or
  564.     'Swap to Disk/EMS' or something to that effect. If your Terminal Program
  565.     or BBS doesn't support a shrink feature, tell the author to include one.
  566.     Most BBS and terminal programs have one nowadays anyway.
  567.  
  568. --- PAGE 12 -----------< Appendix B: Error Messages >------------------------
  569.  
  570. Error 45    This error means you are trying to tell IceZmodem to use both a
  571. """"""""    standard and a nonstandard COM port. You are probably using the
  572. PORT option on the command line when you already have an IRQ and ADDRESS set
  573. up in IZMSETUP. To get around this, set up a standard port in IZMSETUP and
  574. use the ADRIRQ option on the command line. Another cause of this problem
  575. is trying to use the PORT and ADRIRQ options at the same time.
  576.  
  577. Cannot load file. The file size is greater than 64k!
  578. """"""""""""""""""""""""""""""""""""""""""""""""""""
  579. The text editor is currently limited to editing files 64k or less. This will
  580. be corrected in a future version of IceZmodem.
  581.  
  582. Cannot load file. Line length is greater than 78 characters!
  583. """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
  584. The text editor is currently limited to editing files with a line length of
  585. 78 characters or less. This will be corrected in a future version of
  586. IceZmodem.
  587.  
  588. You have reached the maximum text file size. No more data may be added!
  589. """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
  590. You are attempting to add more than 64k of data to a large text file.
  591.  
  592. Not a valid ASCII text file!
  593. """"""""""""""""""""""""""""
  594. The text file cannot be parsed as a standard text file would. Either it is
  595. too intricate or it is not a text file.
  596.  
  597. Cannot LOAD or CREATE the filename you have specified!
  598. """"""""""""""""""""""""""""""""""""""""""""""""""""""
  599. An invalid filename has been specified. You may have accidentally typed in
  600. a pathname instead of a filename.
  601.  
  602. Not enough memory to load file
  603. """"""""""""""""""""""""""""""
  604. You must free up some memory by closing an open text file or turn off a MOD
  605. file. If nothing is open, then refer to Appendix A - suggestions for gaining
  606. more free memory.
  607.  
  608. Not enough memory to shell out to DOS!
  609. """"""""""""""""""""""""""""""""""""""
  610. You must free up some memory by closing an open text file or turn off a MOD
  611. file. If nothing is open, then refer to Appendix A - suggestions for gaining
  612. more free memory.
  613.  
  614. Not a 31 instrument MOD file!
  615. """""""""""""""""""""""""""""
  616. The MOD file that you are trying to load either 1) doesn't exist, 2) is not
  617. a MOD music file, or more commonly 3) Is an older 15 instrument MOD. If you
  618. run across a 15 instrument MOD, you will need to convert it to a newer 31
  619. instrument MOD before it can be played with IceZmodem. This can be done very
  620. easily with the program MODEDIT by Norman Lin. Simply load the MOD into this
  621. program (as if you were going to modify it) and then save it. The resulting
  622. save will be a 31 channel version of your older 15 channel MOD.
  623.  
  624. Runtime Error 005
  625. """""""""""""""""
  626. IZM.EXE cannot be modified by itself or IZMSETUP.EXE. You probably have the
  627. file attributes set to read-only or a network is not allowing write access.
  628.  
  629. Disk Read Error
  630. """""""""""""""
  631. Either there is something wrong with your disk drive or you do not have
  632. enough FILES specified in your CONFIG.SYS. Add the line FILES=25 to correct.
  633.  
  634. --- PAGE 13 ---------< Appendix C: Command Line Examples >-------------------
  635.  
  636.  
  637. IZM RZ  - Will open the COM port specified in IZMSETUP at the baud rate that
  638.           the port is currently at. It will then receive files and put them
  639.           in the current directory.
  640.  
  641. IZM port 1 speed 2400 RZ c:\downloads - Will open COM1 at 2400 baud and
  642.                                         receive files into the directory
  643.                                         C:\DOWNLOADS.
  644.  
  645. IZM port 2 SZ F.TXT F2.EXE C.COM - Opens COM2 at the current baud rate and
  646.                                    sends F.TXT, F2.EXE, and C.COM.
  647.  
  648. IZM SZ @FILE.LST - Opens the COM port specified in IZMSETUP at the current
  649.                    baud rate. It then opens the file called FILE.LST and
  650.                    reads the path/filenames stored within and proceeds to
  651.                    send all files.
  652.  
  653. IZM port 3 speed 9600 SZ *.EXE - Opens COM3 at 9600 baud and transmits all
  654.                                  the files ending with EXE.
  655.  
  656. IZM adrirq 3e8,2 RZ - Opens a nonstandard port located at address 3E8(hex)
  657.                       using IRQ 2. It then receives files into the current
  658.                       directory.
  659.  
  660. IZM port 2 speed 57600 flow hard SZ C:\UPLOADS\START???.EXE - Opens COM2 at
  661.             57600 baud and turns hardware handshaking on. It will then send
  662.             all EXE files in the directory C:\UPLOADS that begin with
  663.             START.
  664.  
  665. --------------------------< Appendix D: Performance >-------------------------
  666.  
  667.  On a 2400 bps modem connection, IceZmodem averages about 238 CPS with peaks
  668.  of 239 CPS on 80386 class systems transferring a maximally compressed ZIP
  669.  file.
  670.  
  671.  On a 14400 bps modem connection with the com ports locked at 38400 bps,
  672.  IceZmodem averages about 1640-1660 CPS on 80386 class systems transfering
  673.  a maximally compressed ZIP file.
  674.  
  675.  On a 57600 bps direct null-modem cable connection, IceZmodem averages
  676.  about 5300 CPS on 80386 class systems transferring a maximally compressed
  677.  ZIP file.
  678.  
  679. --- PAGE 14 ----------< Appendix E: Revision History >-----------------------
  680.  
  681.  6/1/1994  Version Beta1 - First public Beta Test Release
  682.  
  683.  7/08/1994 Version Beta2 - Second Beta Test Release (LIMITED RELEASE)
  684.                 BUGS - Corrected too many bugs to mention here (over 30)
  685.             FEATURES - Added large number percent complete in Screen Saver
  686.                      - Added extended system information
  687.                      - Improved CPS
  688.                      - Added Turbo Options
  689.                      - Added Overwrite/Recover/Don't transfer options
  690.  
  691.  7/09/1994 Version Beta3 - Fixed major bug in version Beta2 (LIMITED RELEASE)
  692.  
  693.  7/15/1994 Version Beta4 - Fixed major bug in version Beta3 (Public Release)
  694.  
  695.  7/27/1994 Version Beta5 - Fixed minor bugs in version Beta4 (Public Release)
  696.                          - Fixed Crash Recovery
  697.                          - Fixed Chat Screen Flash
  698.                          - Efficiency "N/A" with locked baud rates
  699.                          - Added Speedboat Willy Game
  700.                          - Added adjustable block size
  701.  
  702.  9/14/1994 Version Beta6 - **** NEW MODEM ROUTINES!
  703.                            Reliability/Stability Greatly Improved
  704.                            Now uploads to DELPHI work
  705.                            DesqView, OS/2, and Windows Time Slice Aware
  706.                            BBS Dropfile Support (F9)
  707.                            Offline Interactive Mode (O on the command line)
  708.                            BIOS Video Support
  709.                            Startup Screen Selection
  710.                            IRQ Rotation
  711.                            System Information Disabling Permitted
  712.                            16550A FIFO Trigger Level Select
  713.  
  714.  11/24/1994 Version 1.00 - First OFFICIAL Release
  715.                            Now works with Procomm Plus v2.01
  716.                            Now works with MajorBBS
  717.                            Doesn't "freeze" up anymore
  718.                            Searches other directories for duplicate files
  719.                            Reg Code Auto Save to IZM.KEY
  720.  
  721.