                     What You Need To Know About Modems
     
December 25, 1991
Version 1.0
------------------------------------------------------------------------------
Copyright (c) 1991 Patrick Chen. All rights reserved.

Distribution Notice: This document may be distributed by electronic bulletin 
boards and commercial on-line services. This document may not be edited or 
changed in any way for redistribution.
 
This article is Part One of a three-part report entitled "The Joy of 
Telecomputing." As a plain ASCII file, it cannot contain any of the 
illustrations and graphic elements provided in the printed version. For 
further information about "The Joy of Telecomputing," see Appendix C.
     
This article should be useful to anyone interested in high-speed modems (or 
2400 bps modems with MNP-5 or V.42bis). Most modems mentioned in this article 
are external units. These modems can be used on any microcomputer system, be 
it a PC, a Macintosh or an Amiga. Although only certain communication programs 
are used as examples, the discussions about setting up software apply to 
packages not covered herein.

It is assumed that the reader knows the basics about going online. For 
example, we would not discuss how to connect an external modem to your 
computer, nor would we explain what 8-N-1 means.

This file is in the IBM ASCII format. Each line ends with a linefeed and a 
carriage return. If you use a Macintosh, open the file with a text editor and 
get rid of the linefeeds. (I recommend McSink, a shareware text editor widely 
available. Just launch McSink and open the file, then choose the Convert menu 
and select Strip Linefeeds.)

To print this document, use a 10-pitch (12 characters per inch) mono-spaced 
font such as Courier.

Every effort has been made to supply complete and accurate information. 
However, information contained herein is subject to change without notice and 
should not be construed as a commitment by the author who assumes no 
responsibilities for any errors that may appear.

Trademarks: The author has attempted throughout this document to distinguish 
proprietary trademarks from discriptive terms by following the capitalization 
style used by the manufacturer.

-----------------------------------------------------------------------------
CONTENTS

Introduction
Modulation Protocols
     2400 bps modems
     High-speed modems
          V.32
          V.32bis
          U.S. Robotics HST
          Telebit PEP
          Hayes Express 96
          CompuCom CSP
     Things to come
          V.fast
          ISDN
Error Control Protocols
     V.42 and MNP-4
     V.42 & MNP-4 can provide error-free connections
     V.42 and MNP-4 can improve throughput
     Are MNP 4/V.42 useful?
Data Compression Protocols
     MNP-5 & V.42bis
     Are MNP-5 & V.42bis useful?
     Compression by Software vs. MNP-5/V.42bis
     Local Flow Control and Data Buffering
     Macintosh and high-speed modems
     PC and UART
Profiles of High-speed modems
     ATI 9600etc/e
     CompuCom SpeedModem Champ/Star/Storm
     Hayes modems
     Image Communications: Twincom 96/42
     Intel 9600EX & 14.4EX
     Practical peripherals PM9600SA & PM9600
     Prometheus modems
     Telebit modems 
     U.S. Robotics modems
     Zoom V.32 Turbo Modems
     Things to come
Buying a High-speed Modem
     Should you pay the extra for a V.32bis modem?
     Should you buy a modem with a proprietary modulation protocol?
     Should you buy a 2400 bps modem with V.42bis?
     Beware of the ads
Setting Up Software to Work with High-speed Modems
     The Proper Software Setup    
     Does Your Software Initialize the Modem Properly?
     Does Your Software Configure Itself to Match the Modem Settings?
     Why You May Need to Change the Initialization String
     Editing the Initialization String
     Match Software Settings To the Modem Settings
Configuring Popular Communications Software to Work with High-speed Modems
     Procomm 2.0
     Telix
     Qmodem
     HyperAccess 5
     Crosstalk for Windows
     MicroPhone II (for Macintosh)
     ZTerm (for Macintosh)
Other Settings for Your Communications Software
     Telephone Number
     Dial String: ATDT
     8-N-1 or 7-E-1 (data bits-parity-stop bits)
     Half vs. Full Duplex: Local Echo
     Terminal Emulation
     Comm Port 
     File Transfer Protocols
          ASCII
          Xmodem
          Xmodem-1K
          Ymodem
          Ymodem-g
          Zmodem
          Kermit
          Sealink
          Which file transfer protocol should you use?
Appendix A: Resources
Appendix B: How to reach the author
Appendix C: About "The Joy of Telecomputing"
      
      
     
-------------------------------------------------------------------------


Introduction
     
     Buying and using a modem used to be relatively easy. Not so long ago, 
     almost all modems are 1200 or 2400 bps units and they are all compatible 
     with the Hayes Smartmodems (although some are more Hayes-compatible than 
     others). How time has changed. 
     
     Today, modems not only run faster, they are also loaded with features 
     like error control and data compression. Suddenly, you are confronted 
     with all the buzzwords: V.32, V.32bis, V.42, V.42bis, MNP-5, LAP-M, etc. 
     What do they mean? And what do they mean to you?
      
     To make the most of a high-speed modem, you need to understand three 
     different kinds of protocols and the relationships among them. They are 
     the modulation protocols, error control protocols and data compression 
     protocols.
     
Modulation Protocols
     
     Modem stands for MOdulator/DEModulator. A modem converts digital signals 
     generated by the computer into analog signals which can be transmitted 
     over a telephone line and transforms incoming analog signals into their 
     digital equivalents.
     
     The specific techniques used to encode the digital bits into analog 
     signals are called modulation protocols. The various modulation 
     protocols define the exact methods of encoding and the data transfer 
     speed. In fact, you cannot have a modem without modulation protocols. A 
     modem typically supports more than one modulation protocols.
     
     The raw speed (the speed without data compression) of a modem is 
     determined by the modulation protocols. High-speed modems are modems 
     that feature modulation protocols at 9600 bps or higher. A 2400 bps 
     modem with data compression that can theoretically yield a 9600 bps 
     throughput is not a high-speed modem.
     
     "CCITT" is a French acronym for the International Telegraph and 
     Telephone Consultative Committee. CCITT, a United Nations agency, is an 
     international telecommunications standards committee that makes 
     recommendations on a broad range of subjects concerning data 
     communications.
     
  2400 bps Modems
     
     A 2400 bps Hayes-compatible modem typically supports the following 
     modulation protocols:
     
     Bell 103         (300 bps U.S. Standard)
     Bell 212A        (1200 bps U.S. Standard)
     CCITT V.22       (1200 bps standard used outside the U.S.)
     CCITT V.22bis    (2400 bps International Standard)
     
     Some 2400 bps modems also support the following protocols:
     
     CCITT V.21       (300 bps standard used outside the U.S.)
     CCITT V.23       (1200/75 and 75/1200 bps, used in Europe)
     
     In the past, most 2400 bps modems do not support any error correction or 
     data compression protocols. Recently, however, many modem manufacturers 
     have introduced 2400 bps modems with extra features like data 
     compression, error correction and fax capability. 
     

  High-speed Modems
  
     There are two standard modulation protocols for high-speed modems: V.32 
     and V.32bis. Both are standards established by the CCITT.
     
     V.32
     
     This is the standard for 9600 (and 4800) bps modems. CCITT V.32 is 
     adopted by the CCITT in 1984. But the market has not taken off until 
     recently. V.32 modems used to cost more than modems using proprietary 
     modulation protocols (Hayes introduced the Smartmodem 9600, a V.32 
     modem, in 1988 with a $1999 price tag). But it is no longer true. At 
     present, street prices for most V.32 modem are below $500. Every modem 
     manufacturer is making V.32 modems now. Packet-switching networks like 
     Sprintnet (Telenet) and CompuServe are also starting to support V.32 
     modems. Companies that make modems with proprietary modulation protocols 
     are making modems with "dual standard." U.S. Robotics, Telebit, Hayes 
     and CompuCom all have modems that support V.32 and their own proprietary 
     protocols.
     
     V.32bis
     
     V.32bis, established in early 1991, is the CCITT standard for 14400 bps 
     modems. A V.32bis modem also can fall back to 12000, 9600, 7200 and 4800 
     bps. V.32bis is downwardly compatible with V.32.
     
     Unlike 2400 bps modems where a single modulation protocol (V.22bis) is 
     supported by all modem makers, there are several proprietary modulation 
     protocols used by modems from different manufacturers. 
     
     U.S. Robotics HST (High Speed Technology)
     
     Until the recent surge of V.32 modems, the U.S. Robotics HST was the de 
     facto standard in the PC-based BBS community. U.S. Robotics introduced 
     the Courier HST modem in 1986 and pioneered the market for high-speed 
     modems in the IBM PC environment. The immense popularity of the HST 
     modems was partly due to the generous discount program U.S. Robotics 
     offered to the BBS Sysops (SYStem OPerators). Many modem manufacturers 
     have implemented similar Sysop discount programs, but most BBS sysops 
     remain loyal to the U.S. Robotics modems.
     
     The original Courier HST modem ran at 9600 bps. U.S. Robotics later 
     improved the speed of the Courier HST to 14400 bps.
     
     Although U.S. Robotics remains committed to the HST modems, there are 
     now three different high-speed Courier modems available: the Courier HST 
     (which only supports the HST protocol), the Courier V.32bis (which only 
     supports V.32bis) and the Courier HST Dual Standard (which supports both 
     the HST and the V.32bis protocols). 
     
     Telebit PEP (Packetized Ensemble Protocol)
     
     Telebit introduced the TrailBlazer in 1985 that employed a proprietary 
     modulation protocol called PEP. While the Courier HST is popular among 
     BBS, Telebit modems dominate the UNIX UUCP and Usenet communities. 
     (Usenet, UUCP and the Internet are discussed in Part II of "The Joy of 
     Telecomputing"). 
     
     The TrailBlazer Plus owes its success partly to its built-in support for 
     the UUCP g-protocol, thus allowing efficient and flawless UUCP session. 
     PEP also performs well even with noisy telephone lines. The actual 
     throughput is around 14400 bps. The TrailBlazer Plus has an installed 
     base of more than 120,000 units.
     
     Telebit also introduced a cheaper (and slower) PEP modem, the T1000, in 
     1988.
     
     Hayes Express 96
     
     Hayes entered the high-speed modem arena in 1987 with the introduction 
     of the V-series Smartmodem 9600. The modem used a proprietary modulation 
     protocol called Express 96 (also known as Hayes "Ping Pong" protocol). 
     The V-series modems have not been as successful as the U.S. Robotics or 
     the Telebit modems.
     
     CompuCom CSP (CompuCom Speed Protocol)
     
     While every modem manufacturer is jumping on the V.32 bandwagon, 
     CompuCom bucked the trend and came out with the SpeedModem Champ in 
     early 1991. It's a 9600 bps modem with a proprietary modulation 
     protocol called CSP. The SpeedModem Champ has one strong selling point. 
     It is the only modem with a proprietary protocol that costs less than a 
     generic V.32 modem. The internal SpeedModem Champ is priced at $169. An 
     external version is available for $199. Hundreds of PC-based bulletin 
     board systems have installed the SpeedModem Champ. The Champ also works 
     as a Hayes-compatible 2400 bps modem with MNP 2-4 error control and 
     MNP-5 data compression.
     
     Two modems can establish a connection only when they share a common 
     modulation protocol. To connect at high speed, two modems have to 
     support the same high-speed modulation protocol. Therefore, a modem with 
     a proprietary modulation protocol can only establish a high-speed 
     connection with another modem from the same manufacturer. A U.S. 
     Robotics HST modem can only establish a high-speed connection (at 9600 
     or 14400 bps) with another HST or an USR Dual Standard modem. A Courier 
     HST modem cannot establish a high-speed connection with a Courier 
     V.32bis modem. They can only connect at 2400 bps. (All high-speed modems 
     in the market support the CCITT V.22bis modulation protocol).
     
     On the other hand, two V.32 modems can talk to each other at 9600 bps. 
     They do not have to be from the same manufacturer. Two V.32bis modems 
     can talk to each other at 14400 bps. A V.32 modem can talk to a V.32bis 
     modem at 9600 bps.
     
     
  Things to come
     
     V.fast

     CCITT is working on a new modem standard, dubbed V.fast. If all goes 
     well, the next modem standard can materialize before 1993. A V.fast 
     modem is expected to reach a raw speed of 19,200-24,000 bps over 
     standard dial-up telephone lines.
     
     ISDN

     In a couple of years we may not need modems at all. Integrated Services 
     Digital Network (ISDN) has been coming for years. When will ISDN really 
     become available for the rest of us? It depends on your local telephone 
     company. It is estimated that by the end of 1994 about half the 
     telephone connections in the U.S. will has access to it. With ISDN, you 
     won't need a modem since no modulation or demodulation will be 
     necessary. You will need an ISDN adapter instead.
     
     An ISDN line carries three digital channels: two "B" channels that carry 
     various kinds of data at 64,000 bps and a "D" channel at 16,000 bps that 
     can carry control signals or serve as a third data channel.
     
     A single ISDN channel can transfer uncompressed data bidirectionally at 
     64,000 bps. Combine that with a data compression scheme and you will be 
     able to transfer data at hundreds of kilobits per second.
     
     Eventually, ISDN will provide widely available, low-cost digital 
     communications for voice and data communication. Until ISDN is firmly in 
     place, high-speed modems will be with us for a while. 
     
Error Control (Error-Correcting, Error Correction) Protocols
     
     Besides high-speed modulation protocols, all current models of 
     high-speed modems also support error control and data compression 
     protocols. 
     
  V.42 and MNP-4
     
     There are two standards for error control protocols: MNP 4 and V.42. The 
     Microcom Networking Protocol, MNP, is developed by Microcom. MNP 2 to 4 
     are error correction protocols. MNP-5 is a data compression protocol. 
     V.42 is established by CCITT. V.42 actually incorporates two error 
     control schemes. V.42 uses LAP-M (Link Access Procedure for Modems) as 
     the primary scheme and includes MNP-4 as the alternate scheme. 
     Therefore, a V.42 modem will be able to establish an error-controlled 
     connection with a modem that only supports MNP 4.
  
     A modem that uses a proprietary modulation protocol may also use a 
     non-standard error control protocol. For example, Hayes V-series 
     Smartmodem 9600 supports an error control protocol called LAP-B. 
     CompuCom's SpeedModem Champ also uses a non-standard error control 
     protocol.
     
     
  V.42 & MNP-4 can provide error-free connections
     
     Modems without error control protocols, such as most 2400 bps 
     Hayes-compatible modems, cannot provide error-free data communications. 
     The noise and other phone line anomalies are beyond the capabilities of 
     any standard modem to deliver error-free data. 
     
     V.42 (and MNP 2-4) copes with the phone line impairments by filtering 
     out the line noise and automatically retransmitting corrupted data. If 
     you have used a standard Hayes-compatible modem, you probably notice 
     some garbled characters (like "@8d_\nw`[ce") show up on your screen from 
     time to time. When two modems establish an error-controlled connection, 
     they are said to have a reliable link and are capable of filtering out 
     those garbled characters caused by the line noise. Notice that the line 
     noise is still there, it just does not show up on your screen or the 
     screen on the remote system.
     
     The filtering process used by V.42 (and MNP 2-4) is similar to the error 
     correction scheme used by file transfer protocols (such as Xmodem). The 
     two modems use a sophisticated algorithm to make sure that the data 
     received match with the data sent. If there is a discrepancy, the data 
     is resent.
     
     What is the difference between error control protocols (such as V.42) 
     and file transfer protocols (such as Xmodem)? 
     
     For one thing, file transfer protocols provide error detection and 
     correction only during file transfers. File transfer protocols do not 
     provide any error control when you are reading e-mail messages or 
     chatting with other people online. In other words, an error control 
     protocol is "on" all the time during your online session and file 
     transfer protocols are "on" only some of the times, namely when you are 
     sending or receiving files.
     
     Even though an error control protocol is "on" all the time, we still 
     need file transfer protocols when two modems establish a reliable link. 
     A modem works with bit streams, timing and tones. It does not understand 
     what a file is. When you download or upload a file, your communications 
     software needs to take care of the details related to the file: the 
     filename, file size, etc. This is handled by the file transfer protocol 
     which does more than error-checking.
     
     Some file transfer protocols, most notably Ymodem-g and Imodem, are 
     developed to handle file transfer without performing any error-checking. 
     The idea of using a protocol like Ymodem-g is to eliminate the 
     redundancy thus improve the transfer speed. Ymodem-g and Imodem should 
     only be used with modems that provide built-in error control protocols. 
     These file transfer protocols do not provide any error-detection or 
     recovery capability. If a problem occurs during the file transfer, the 
     transfer session will be aborted.
     
     Protocols like Ymodem-g or Imodem depend on the modems to provide 
     assurance for the integrity of data being transferred. However, you 
     should know that a reliable link between two modems does not provide 
     absolute guarantee for the data integrity during file transfer. When you 
     call a remote computer, there are really three links involved in the 
     process. Besides the link between the two modems, there are still one 
     link between your computer and your modem and another link between the 
     remote modem and the remote computer. When two modems make a reliable 
     connection using V.42 or MNP 4, only the data integrity between the two 
     modems is ensured. It is still possible for errors to occur at either 
     end between the serial port and the modem (in the cable) or in the 
     computer itself. (Fortunately, such errors are rare.)
     
     For extra protection, you may still want to use a file transfer protocol 
     - such as Zmodem - which also performs error checking even if you have a 
     reliable link with the remote system. There is a common misconception 
     that Ymodem-g is much faster than other file transfer protocols. 
     Although Ymodem-g is significantly faster than Ymodem, it offers little 
     over Zmodem. Zmodem has proven to be extremely efficient. (See benchmark 
     below) 
     
        
        Filename          Ymodem      Ymodem-g      Zmodem
        -------------------------------------------------------
        the-wave.txt      1527 cps    3261 cps      3296 cps
        dayrpt.arc         761        1042          1025  
        dayrpt.wks        1244        2314          2337
        sunset.arc         745         987           965
        sunset.pic        1297        2594          2588
        text109k.arc       814        1089          1064
        text109k.txt      1351        2812          2885
        
        
        Note: The seven test files used throughout this article are available 
        on the Hayes BBS (800-874-2937). It is an excellent source for 
        information about Hayes products. The BBS also provides a database 
        for thousands of BBS in the U.S. Best of all, it is free.
        
        Unless noted otherwise, the results are obtained by using the 
        following:
        
        Computer: Mac SE with Mobius Two Page Display with 68030 accelerator
        Modem: ATI 9600etc/e (the modem is set as V.32 with V.42bis enabled)
        Operating System: System 7.0
        Communication Software: ZTerm (Comm port speed set to 38400 bps)
        File Transfer Protocol: Zmodem
        
        All results are reported by ZTerm. (I use several communication 
        programs on both IBM PC and Mac. All of them show the average 
        throughput while file transfer is in progress, but ZTerm actually 
        produces a report after the transfer is completed).
     
     
  V.42 & MNP-4 can improve throughput
     
     The other benefit of V.42 (or MNP 4) is that it can improve throughput. 
     Before sending the data to a remote system, a modem with V.42 (or MNP 4) 
     assembles the data into packets and during that process it is able to 
     reduce the size of the data by stripping out the start and stop bits.
     
     A character typically takes up 1 start bit, 8 data bits and 1 stop bit 
     for a total of 10 bits. When two modems establish a reliable link using 
     V.42 or MNP 4, the sending modem strips the start and stop bits (which 
     subtracts 20% of the data) and sends the data to the other end. The 
     receiving modem then reinserts the start and stop bits and pass the data 
     to the remote computer.
     
     Therefore, even without compressing the data you can expect to see as 
     much as 1150 characters per second on a 9600 bps connection. (Although 
     the modem subtracts 20% of the data, the speed increase is less than 20% 
     due to the overhead incurred by the error control protocol.) Here are 
     the test results obtained by downlaoding the same file (1) without any 
     error control protocol, (2) with MNP-4, and (3) with V.42. No data 
     compression protocol is used.
     
     
        Filename               No EC        MNP-4        V.42
        ------------------------------------------------------------------
        the-wave.txt           935 cps      1151 cps     1128 cps
        dayrpt.arc             863          1023         1002
        dayrpt.wks             898          1071         1052
        sunset.arc             838           971          953
        sunset.pic             903          1080         1065
        text109k.arc           908          1085         1064
        text109k.txt           937          1150         1127
             
     
     
  Are MNP4 and V.42 useful?

     Absolutely. Anyone that has ever used a standard modem can appreciate 
     the benefit of an error-free connection. And the increase in data 
     throughput, though modest, is nothing to sneeze at.
     
     
Data Compression Protocols
     
     Besides error control protocols, all current high-speed modems also 
     support data compression protocols. That means the sending modem will 
     compress the data on-the-fly and the receiving modem will decompress the 
     data to its original form. 
     
  MNP-5 and V.42bis
     
     There are two standards for data compression protocols, MNP-5 and CCITT 
     V.42bis. Some modems also use proprietary data compression protocols.
     
     A modem cannot support data compression without utilizing an error 
     control protocol, although it is possible to have a modem that only 
     supports an error control protocol but not any data compression 
     protocol. A MNP-5 modem requires MNP 4 error control protocol and a 
     V.42bis modem requires V.42 error control protocol.
     
     Also note that although V.42 include MNP-4, V.42bis does not include 
     MNP-5. However, virtually all high-speed modems that support CCITT 
     V.42bis also incorporate MNP-5.
     
     The maximum compression ratio that a MNP-5 modem can achieve is 2:1. 
     That is to say, a 9600 bps MNP-5 modem can transfer data up to 19200 
     bps. The maximum compression ratio for a V.42bis modem is 4:1. That is 
     why all those V.32 modem manufacturers claim that their modems provide 
     throughput up to 38400 bps.
     
  Are MNP-5 and V.42bis useful?
     
     Don't be fooled by the claim. It is extremely rare, if ever, that you 
     will be able to transfer files at 38400 bps. In fact, V.42bis and MNP-5 
     are not very useful when you are downloading files from online services. 
     Why?
     
     How well the modem compression works depends on what kind of files are 
     being transferred. In general, you will be able to achieve twice the 
     speed for transferring a standard text file (like the one you are 
     reading right now). Decreasing by 50% means that you can double the 
     throughput on the line so that a 9600 bps modem can effectively transmit 
     19200 bps.
     
     V.42bis and MNP-5 modem cannot compress a file which is already 
     compressed by software. In the case of MNP-5, it will even try to 
     compress a precompressed file and actually expand it, thus slow down the 
     file transfer! Here are the test results obtained by downloading the 
     three compressed files using (1) MNP-4 without data compression, (2) 
     MNP-5, (3) V.42 without data compression, and (4) V.42bis. 
     
     
        Filename          MNP-4         MNP-5         V.42         V.42bis
        -------------------------------------------------------------------
        dayrpt.arc        1023 cps      946           1002         1010
        sunset.arc         971          935            953          950 
        text109k.arc      1085          988           1064         1053 
        
     
     
     If you have ever downloaded files from a BBS or online service, you know 
     that almost all files are in a compressed format. Therefore, you should 
     only expect to see an actual throughput between 950 to 1100 cps even if 
     your V.32/V.42bis modem is supposed to offer throughput "up to" 38400 
     bps. 
     
     Most PC files are in the ZIP format. Macintosh files are typically in 
     the .SIT (Stuffit) or .CPT (Compact Pro) format. Amiga files are usually 
     in the ZOO, ARC or LZH format. Note that GIF files are also in a 
     compressed format.
     
  
  Compression by Software vs. MNP-5/V.42bis
     
     There are several reasons why compression software programs (such as 
     PKZIP or Stuffit) are superior to MNP-5 or V.42bis.
     
     1. Compressed files save disk storage space.
     
     2. Compression software programs are more versatile. Most of them allow 
        you to group several files in a compressed file archive to ensure 
        that all the related files get transferred at the same time. 
     
     3. Software compression is more efficient than on-the-fly modem 
        compression. In the case of a small file, this may not make much 
        difference. But the difference can be significant when you are 
        transferring large files.
     
        Filename          Size               Time           Throughput
        -----------------------------------------------------------------
        the-wave.txt      143579 bytes       43 seconds     3296 cps
        dayrpt.arc          8423 bytes        8 seconds     1010 cps
        dayrpt.wks         19712 bytes        8 seconds     2337 cps
        sunset.arc          5084 bytes        5 seconds      950 cps
        sunset.pic         16391 bytes        6 seconds     2643 cps
        text109k.arc       29775 bytes       28 seconds     1053 cps
        text109k.txt      111386 bytes       39 seconds     2822 cps
     
     
     As we can see from the test results, it is about 30% faster to transfer 
     the compressed file text109k.arc than to download the text file with 
     V.42bis.
     
     Hayes BBS does not provide a compressed version for the file 
     the-wave.txt. Using PKZIP (for PC) and Stuffit (for Macintosh), we 
     obtain the following results:
     
     the-wave.zip: 6812 bytes (PKZIP)
     the-wave.sit: 6081 bytes (Stuffit)
     
     Assuming a transfer speed of 1000 cps, the compressed file can be 
     downloaded in 7 seconds. That's six times faster than downloading the 
     text file with V.42bis!
     
     Here is another example. Spider Island Software BBS (714-730-5785) has a 
     test file called One-Minute Max. It is a Macintosh TIFF file (file size 
     206,432 bytes). According to Spider Island Software, the file can be 
     downloaded in 56 seconds (with an effective throughput of 3745cps) with 
     a V.32/V.42bis modem.
     
     The result may seem impressive at first. However, the file can be 
     compressed to 6065 bytes (with Compact Pro) or 7385 bytes (with 
     Stuffit). Assuming a transfer speed of 1000 cps, it would only take 6-8 
     seconds to transfer. Again, it is seven to nine times faster than 
     downloading the file with V.42bis.
     
     On-the-fly modem compression does have one advantage. It is more 
     convenient. You can send a file without compressing it first and the 
     recipient does not need to decompress the file.

     
  Local Flow Control and Data Buffering
     
     To get the most from a modem with data compression, you'll want to send 
     data from your PC to the modem as quickly as possible. If the modem is 
     idle and waiting for the computer to send data, you are not getting the 
     maximum performance from the modem. 
     
     For example, you have a V.32/V.42bis modem and you want to send a text 
     file to a remote system which also has a V.32/V.42bis modem. Let's 
     assume the modem is able to send the file at 20000 bps using V.42bis. If 
     your computer is sending data to your modem at 9600 bps, your modem will 
     have to stop and wait to receive data from your computer.
     
     To get the maximum performance, you want to set the computer to send 
     data to the modem at 38400 bps (the maximum a V.32/V.42bis modem can 
     achieve). Since the modem can only send the file to the other modem at 
     20000 bps, it will never have to wait.
     
     Here are the test results for downloading the text file the-wave.txt by 
     setting the communication port at different speeds:
     
     the-wave.txt:    946 cps (modem port speed 9600 bps)
                      1885 cps (modem port speed 19200 bps)
                      3296 cps (modem port speed 38400 bps)
     
     
     However, there is a new problem. Since your computer is sending data 
     faster than the modem can handle, there needs to be some ways for the 
     modem to ask the computer to stop sending data. Otherwise, data loss is 
     sure to occur. This is where local flow control comes into play.
     
     A high-speed modem typically supports two kinds of local flow control: 
     hardware handshaking (CTS/RTS) and software handshaking (XON/XOFF). Of 
     the two, hardware flow control is the preferred method.
     
     We have mentioned earlier that there are three links involved when you 
     are connected to a remote system:
     
     1. The link between your computer and your modem
     2. The link between the modems
     3. The link between the remote modem and the remote computer
     
     Local flow control is used for the first and third links. Notice that 
     the first link may not use the same kind of flow control as the third 
     link.
     
     Hardware flow control (or hardware handshaking) works by altering 
     voltage levels on the RTS (Request To Send) and CTS (Clear To Send) 
     signal lines at the RS232 serial interface between the modem and the 
     computer.
     
     CTS is used by the modem on the sending end of a transmission. When the 
     local modem is ready to receive data, it sends the CTS signal to the 
     local computer and the computer starts transferring data. If the modem 
     is unable to accept the data as fast as it is received from the 
     computer, the modem will disable the CTS to inform the computer that the 
     modem buffer is almost full (A high-speed modem typically contains a 
     small amount of RAM which is used to provide data buffers). The computer 
     will then suspend data transfer. Once the local modem has emptied its 
     buffer by transmitting data to the remote modem, it will enable CTS 
     again.
     
     RTS is used by the computer on the receiving end of a transmission. When 
     the computer cannot accept data at the rate at which the modem is 
     passing data, it will disable RTS. The computer enables RTS again when 
     it is ready to resume receiving data from the modem.
     
     Software flow control (or software handshaking) is achieved by embedding 
     control character in the data stream. XON and XOFF are the most commonly 
     used control characters. XON is also known as Control-Q or DC3 (ASCII 
     19) while XOFF is known as Control-S or DC1 (ASCII 17).
     
     The use of XON and XOFF during data transfer can create problem when a 
     binary file contain the Control-S (^S) character as a legitimate part of 
     the data. Do not use this method if ^S and ^Q are part of the 
     transmitted data.
     
     
  Macintosh and High-speed Modems
     
     If you use a Macintosh with a high-speed modem, you will need a special 
     modem cable that is wired correctly to support hardware handshaking. You 
     can order the cable from most mail-order companies that sell high-speed 
     modems. I got mine from Maya Computer (800-541-2318) for $10 (plus $2.50 
     for shipping & handling).
     
     Unfortunately, the cable did not work with my SE. The cable is good 
     since it worked fine on a Mac IIsi. It just refused to work on my SE. I 
     was disappointed but not surprised. After all, my SE is equipped with a 
     25 Mhz 68030 accelerator. (Well, it is actually both an accelerator and 
     a video adapter for a 19 inch dual-page monitor.) Since I will never 
     want to run my SE without the accelerator, I have no choice but to use 
     software handshaking.
     

  PC and UART (8250, 16450, 16550)
     
     Your PC's serial port has a UART (Universal Asynchronous 
     Receiver/Transmitter) chip to control the input/output. The XT usually 
     has an 8250 UART, the AT usually has a 16450 UART. If you are running 
     Windows, Desqview, OS/2 or any other multitasking environment, you 
     should upgrade your UART with the 16550 (if your PC does not already 
     have one). The 16550 is standard in most IBM PS/2 and many 386-based 
     computers. The 16550 UART has a 16 bytes FIFO (first in, first out) 
     buffer that helps to prevent degradation when several programs are 
     running at the same time.
     
     If you use an external modem, the UART is in your computer (either on 
     the motherboard or on an I/O card that has the serial port). If you use 
     an internal modem, the UART is on the modem. (Both internal modems from 
     Practical Peripherals and Zoom use the 16550 UART. The Twincom 96/42 
     uses a 16450. The CompuCom SpeedModem Champ, due to its unique design, 
     does not use a standard UART.)
     
     Even if you have a 16550 UART, the communication software that you use 
     will need to support it. Fortunately, the most recent versions of 
     popular communications programs are all designed to support the 16550 
     UART.
     
     Hayes ESP (Enhanced Serial Port)
     Hayes makes an adapter called Enhanced Serial Port (ESP) that has two 
     serial ports complete with an on-board coprocessor. The ESP can save 
     your PC's CPU from having to manage the work load. If a 16550 UART is 
     not good enough for you, the ESP may be the only answer.
     
     
Profiles of High-speed Modems

Here are profiles of some high-speed modems. The list is not comprehensive, 
nor is it intended to be. Unless noted otherwise, the street price quoted are 
from PC Connection (800-243-8088) in PC Magazine (12/31/91). PC Connection 
generally does not offer the lowest price, but the service is excellent. I 
have dealt with PC Connection and MacConnection (800-800-4444) for years 
and have yet to be disappointed with their services.

Unless noted otherwise, a V.32/V.42bis modem supports V.32, MNP2-5, 
V.42/V.42bis. And a V.32bis/V.42bis modem supports V.32bis, MNP 2-5, 
V.42/V.42bis. Most modems listed here are introduced in the past eighteen 
months.
     
     
  ATI 9600etc/e
     
     ATI Technologies is well known for their video adapters. But they also 
     make a V.32/V.42bis external modem. As of this writing, it is the least 
     expensive external modem from an established manufacturer. It is a 
     generic high-speed modem that works well. The street price for the ATI 
     9600etc/e is $379.
     
     I have been using an ATI 9600etc/e for several months now and I am very 
     pleased with it. I will not hesitate to recommend it to anyone looking 
     for an affordable V.32/V.42bis modem.
     
     There are two things I really like about the ATI modem: 
     * It has a slide volume control on the outside so you can easily adjust 
       the volume by hand.
     * It has factory settings for three different modes: V.32 only, V.32 
       with MNP-5, V.32 with V.42bis. It is very convenient if you need to 
       initialize the modem in different ways.
     
  CompuCom SpeedModem Champ/Star/Storm

     The SpeedModem Champ is a 9600 bps high-speed modem with CompuCom's 
     proprietary CSP modulation protocol. It is introduced in early 1991. It 
     can be ordered from CompuCom directly at a discount price of $169. The 
     CompuCom Champ is supported by hundreds of BBS in the U.S., including 
     heavyweights such as EXEC-PC and Channel 1.

     CompuCom also markets the SpeedModem Combo which is a SpeedModem Champ 
     with fax and voice mail capabilities. The current price is $269.

     The SpeedModem Storm is a dual-mode modem. It supports both CSP and 
     V.32/V.42bis. The discount price is $299 (internal) and $339 (external). 
     The Storm is also available with fax and voice mail options for an 
     additional $90.

     The SpeedModem Star is also a dual-mode modem. It supports both CSP and 
     V.32bis/V.42bis. The discount price is $499 (internal) and $539 
     (external). The Star is also available with fax and voice mail options 
     for an additional $90.

  Hayes Modems
     
     V-series Smartmodem 9600. Introduced in 1987, this is a high-speed modem 
     that supports the proprietary Hayes Express 96 modulation protocol. The 
     V-series Smartmodem 9600 is still available from various mail order 
     vendors. There is also an internal unit called V-series Smartmodem 
     9600B.
     
     Smartmodem 9600. Introduced in 1988, the Smartmodem 9600 is a V.32 
     modem. It does not support any error control or data compression 
     protocol. Don't confuse this unit with the V-series Smartmodem 9600.
     
     Ultra 96 is a dual-mode modem from Hayes. Introduced in 1990, the Ultra 
     96 supports both V.32/V.42bis and the Hayes Express 96 modulation 
     protocol. Ultra 96 has many unique features that are not needed if you 
     are calling BBS or online services. The current street price is $669.
     
     Introduced in Fall 1991, Ultra 144 is a dual-mode modem that supports 
     both V.32bis/V.42bis and the Hayes Express 96 protocol. The current 
     street price is $799.
     
     Optima 96 is a plain vanilla V.32/V.42bis modem. This is Hayes' answer 
     to the "generic" V.32/V.42bis modem. The current street price is $479.
     
  Image Communications: Twincom 96/42
     
     The Twincom 96/42 is an internal V.32/V.42bis modem. It lists for $299. 
     (Don't expect to get discount on the price.) It just won a 1991 Best Buy 
     Award from Computer Shopper. Notice that it has a 16450 UART, not a 
     16550. Furthermore, you cannot replace the 16450 with a 16550, the 
     Twincom 96/42 will not support a 16550 UART at all.
     
  Intel 9600EX & 14.4EX

     The 9600EX is a V.32/V.42bis modem. The 14.4EX is a V.32bis/V.42bis 
     modem. PC Connection is selling the 9600EX for $499 and the 14.4EX for 
     $549. If you decide to buy an Intel modem, the 14.4EX is obviously a 
     better deal.
     
  Practical Peripherals PM9600SA & PM9600
     
     The PM9600SA is a V.32/V.42bis modem. It is designed to be compatible 
     with the Hayes Ultra 96. That means you can tell your communications 
     software that you have a Hayes Ultra 96. However, the PM9600SA only 
     responds to a subset of the commands supported by the Hayes Ultra 96. 
     Any commands specific to the Hayes Ultra 96 that are not implemented in 
     the PM9600SA will be ignored. 
     
     Some early PM9600SA units have quite a few problems connecting to other 
     V.32 modems. (Make sure you send in the warranty card.) Practical 
     Peripheral has since sent out several ROM upgrades and the current 
     shipping units seem to be working fine.
     
     Practical Peripherals also makes an internal modem that features a 16550 
     UART. You can get the PM9600SA for $469 and the internal PM9600 for 
     $399. 

  Prometheus Modems

     Prometheus modems are available from many Macintosh mail order 
     companies. Until recently, Prometheus is the only manufacturer that 
     makes high-speed modems with fax capability.
     
     Promodem 9600 Plus is a V.32/V.42bis modem. It can also send and receive 
     Group III fax at 9600 bps.
     
     Prometheus Ultima is a V.32bis/V.42bis fax modem. It can also send and 
     receive Group III fax at 9600 bps. MacConnection sells the Ultima for 
     $689.

     
  Telebit Modems
     
     Telebit makes several modems. The prices quoted for the Telebit modems 
     are their new list prices.
     
     TrailBlazer Plus. $849. Introduced in 1985, the Trailblazer has been the 
     de facto standard in the UNIX UUCP and Usenet communities. With the new 
     pricing, you should consider the T2500 or the T3000 instead of the 
     TrailBlazer Plus if you need to connect to a Telebit PEP modem.
     
     T1000. Introduced in 1988, the T1000 is the little brother of the 
     TrailBlazer Plus. The T1000 supports PEP at a slower speed. The actual 
     throughput is about 9600 cps. The current list price is $699. Unlike the 
     TrailBlazer Plus, the T1000 does not have callback or password security.
     
     T2500. $949. Introduced in 1989 when V.32 modems started to enter the 
     market, the T2500 supports both V.32/V.42bis and PEP. The maximum 
     throughput is 19,200 bps due to the limitation imposed by the older 
     Rockwell chipset used.
     
     T1600. $699. The T1600 is a V.32/V.42bis modem introduced in 1991. It 
     provides built-in support for UUCP and offers password and callback 
     security.
     
     T3000. $949. This is the top of the line model from Telebit. The T3000 
     is a V.32bis/V.42bis modem. PEP upgrade is available for $99 until 
     3/31/92. After that date, the upgrade will be $199.
     
     QBlazer. $745. If I am going to buy another high-speed modem today, this 
     will be it. (I use a notebook computer). QBlaser is the first portable 
     V.32/V.42bis modem (2.3"x2.4"x2.4"). It works with a 9-volt battery for 
     about two hours.
     
     Note that T1600, T2500, T3000 all offer the following features:
     * Built-in support for UNIX UUCP, Xmodem, Ymodem, Kermit file transfer 
       protocols 
     * Two types of dial-access security: password security and callback 
       security
     * Remote management and diagnostics     
     
  U.S. Robotics Modems
     
     Courier HST. This is the modem that made U.S. Robotics the king of 
     PC-based BBS communities. Unless you are only going to communicate with 
     other USR HST modems, it is probably not a good idea to purchase this 
     unit. The street price for a 14400 bps HST is $550-$600. Telemart 
     (800-521-1973) sells either the internal or the external version for 
     $559.
     
     Courier V.32bis. Introduced in 1990, this is a V.32bis/V.42bis modem. It 
     does not support HST. Telemart offers the external version for $565 and 
     the internal version for $535.
     
     Courier HST Dual Standard. This unit is introduced in 1990. If you need 
     to connect to HST modems and also want to be able to talk to other 
     V.32/V.32bis modems, this is the modem to buy. Its current street price 
     is around $800. Telemart sells the HST Dual Standard for $799. (Note 
     that earlier HST Dual Standard modems only support V.32 and not 
     V.32bis.) The HST Dual Standard is considered by many PC users as the 
     best modem money can buy.
     
     The only reservation I have about the Courier modems is their size. The 
     external Courier modems are rather bulky: 8.3" wide, 12.65" deep, 1.57" 
     tall. I would not want to carry one of these with me when I travel. 
     (It's bigger than my notebook computer.)
     
     Sportster 9600 V.42bis. This unit is introduced in 1991. The Sportster 
     9600 is an entry level V.32/V.42bis modem from U.S. Robotics. The list 
     price is $645 for the external version. ($595 for the Internal version). 
     
     WorldPort 9600 V.32. The WorldPort 9600 is a portable pocket modem. 
     Originally made by Touchbase Systems, the WorldPort 9600 is a V.32/MNP-5 
     modem. It does not support V.42/V.42bis. The WorldPort 9600 works with a 
     9-volt battery. The list price is $699.
  
  Zoom V.32 Turbo Modems

     Zoom has been making Hayes-compatible modems for a long time. The V.32 
     Turbo is their entry into the high-speed modem arena. The V.32 Turbo is 
     a V.32/V.42bis with a 12000 bps turbo mode which is compatible with a 
     V.32bis modem at 12000 bps. Zoom also makes an internal version of the 
     V.32 Turbo that features a 16550 UART. PC Connection sells the internal 
     model for $399.
     
  Things to come
  
     Every modem manufacturer makes at least one V.32/V.42bis modem now. And 
     soon every manufacturer will also make a V.32bis/V.42bis modem. The 
     price for V.32 and V.32bis modems will continue to drop.
     
     In fact, Supra has announced an external V.32 fax modem (SupraFaxModem 
     V.32) for $299 and an external V.32bis fax modem (SupraFaxModem V.32bis) 
     for $399. These prices are for the modems only. Communication and fax 
     software will be bundled with the modem for an additional $50-$70. 
     (These modems won't be available at least until January 1992.)
     

Buying a High-speed Modem
     
     V.32 and V.32bis modems are clearly the standards of high-speed modems 
     today. You should buy a V.32 or a V.32bis modem unless
     
     1. Your application requires a high-speed modem with a proprietary 
        modulation protocol. In this case, you should consider a dual-mode 
        modem that support both the proprietary protocol and V.32 (or 
        V.32bis).
     
     2. You cannot afford a V.32 modem. In this case, your only choice for a 
        high-speed modem is the CompuCom SpeedModem Champ.
     
  
  Should you pay the extra for a V.32bis modem?
     
     A V.32bis modem is faster than a V.32 modem but it also costs more. 
     Should you pay the extra for the speed difference? That depends on two 
     factors: what's the price difference and how do you want to reach the 
     remote system. If the price difference is $50, I would buy the V.32bis 
     modem. But what if the price difference is $200?
     
     Assuming the remote system support V.32bis, a V.32bis modem will pay for 
     itself rather quickly if you are placing long distance calls to the 
     remote system. However, it may be more cost-effective for you to use 
     some packet-switching networks to reach the remote system by calling a 
     local number. A V.32bis modem will be wasted since none of the 
     packet-switching networks currently support V.32bis. In fact, they are 
     just starting to offer 9600 bps access service. Part III of "The Joy of 
     Telecomputing" provides a comprehensive discussion of the issues 
     involved.
     
     
  Should you buy a modem with a proprietary modulation protocol?

     With the exception of the CompuCom SpeedModem Champ, it is generally not 
     a good idea to purchase a modem which only supports a proprietary 
     modulation protocol. If you have to connect to a modem that uses a 
     proprietary modulation protocol, you should consider getting a modem 
     that supports dual modulation protocols (USR Courier Dual Standard, 
     Telebit 2500 or 3000, Hayes Ultra).
     
     Should you buy the SpeedModem Champ? It certainly costs much less than 
     even the least expensive generic V.32 modem in the market today. 
     Assuming the systems you are calling support both V.32 and the CompuCom 
     Champ modems, should you save the money and buy the Champ?
     
     Unfortunately, there is no clear-cut answer to the question. The answer 
     again depends on how you are going to reach the remote systems. If you 
     want to reach the remote systems via a packet-switching network, the 
     CompuCom Champ may not be a good choice. 
     
     The CompuCom Champ is generally not supported by packet-switching 
     networks (The only company that supports the CompuCom Champ is 
     Connect-USA). As a result, you will only be able to connect at 2400 bps 
     with the packet-switching networks. You would be forced to place a long 
     distance call if you want to connect at 9600 bps. See Part III of "The 
     Joy of Telecomputing" for the various issues involved.
     
     
  Should you buy a 2400 bps modem with V.42bis?

     If you are thinking of purchasing a 2400 bps modem with V.42bis data 
     compression, think again.
     
     We have mentioned earlier that V.42bis and MNP-5 are useless for 
     downloading compressed files. There is one more reason why a 2400 bps 
     with V.42bis is generally not useful when you are calling commercial 
     online services or BBS. 
     
     Online services and BBS usually have separate phone numbers for 2400 bps 
     and high-speed modems. Most of them do not support V.42bis on their 2400 
     bps lines. Therefore, you won't be able to make a connection with 
     V.42bis if you call their 2400 bps modem lines.
     
     Couldn't you call their 9600 bps lines? Well, not really. Commercial 
     online services, as well as many bulletin board systems, typically do 
     not allow you to call their high-speed modem lines with a 2400 bps 
     modem. You won't be able to make a connection even if you try.
     
     You should seriously consider the CompuCom SpeedModem Champ instead of a 
     2400 bps modem with V.42bis. The CompuCom Champ will probably give you 
     much more for your money (especially if you need to pay more than $100 
     for the V.22bis/V.42bis modem).
     
  
  Beware of the Ads
  
     Current V.32 modems typically support MNP 2-5 and V.42/V.42bis. However, 
     there are still some earlier models of V.32 modems in the market which
     1. may not support any error control or data compression protocol (Hayes 
        Smartmodem 9600).
     2. may support MNP 2-5 but not V.42/V.42bis. 
     3. may support proprietary data compression protocol (Microcom MNP-9).
     4. may support V.42 but not V.42bis (Prometheus).
     
     
     When a modem is said to offer a 38400 bps speed (or throughput), it may 
     mean that
     1. it is a V.32 or V.32bis modem with V.42bis
     2. it is a V.32 modem with proprietary data compression protocol (some 
        Microcom modems)
     3. it is a high-speed modem with proprietary modulation protocol and 
        V.42bis (U.S. Robotics Courier HST)
     4. it is a high-speed modem with proprietary modulation protocol and 
        proprietary data compression protocol (CompuCom Champ)
     
     An ad that says "USR modem, 38400 bps throughput, V.42bis" does not tell 
     us anything except that the modem is made by U.S. Robotics. It could be 
     any one of the three Courier modems. It could even be a Sportster 9600.
     
     
     When a modem is said to offer a 9600 bps speed (or throughput), it may 
     mean several things:
     1. it is a V.32 modem
     2. it is a high-speed modem using proprietary modulation protocol (Hayes 
        V-series Smartmodem 9600, Telebit 1000, etc).
     3. it is a 2400 bps modem with V.42bis data compression.
     4. it is a 2400 bps modem with 9600 bps fax
     5. it is a 2400 bps modem both V.42bis and fax
     
     
     
Setting Up Software To Work With High-speed Modems
     
     Getting a high-speed modem is only half the battle. You will need to get 
     it to work with your communications program. Most communications 
     programs still come with settings configured for standard 2400 bps 
     modems.
     
     Since all 2400 bps modems are Hayes-compatible, it is relatively easy to 
     set up the software. You simply install the software as if you had a 
     Hayes modem. The software usually will work flawlessly. And you don't 
     really have to worry about things like the initialization string.
     
     Getting a high-speed modem to work with your software is a different 
     story. There is no longer a Hayes standard that everyone follows. Here 
     are some of the reasons why you need to know how to configure your 
     high-speed modem to work with your communications program.
     
     First, your high-speed modem may not be supported by your software.
     
     Secondly, even if your software supports your high-speed modem, the 
     software may not be set up properly.
     
     Finally, even if your software is set up properly, the settings may not 
     work all the times.
     
  The Proper Software Setup
     
     When we say that the software is set up properly, we mean that
     
     1. the modem is initialized properly by the communications software, and
     2. the settings of your software match those of the modem
     
     What is the proper way to initialize a high-speed modem? In general, 
     your modem needs to be initialized to:
     
     * Enable V.42bis Data Compression
     * Enable hardware flow control
     * Handle the DTR and CD signals properly (by adding &C1&D2 to the modem 
       initialization string)
     
     We'll use the ATI 9600etc/e modem as an example for our discussions 
     below. The initialization string described here is for the ATI modem 
     only. Refer to your modem manual for the equivalent initialization 
     string for your modem.
     
     The ATI modem is supported by two popular communications programs: 
     Qmodem and HyperAccess 5. Qmodem initializes the modem and also 
     configures itself to use hardware flow control. HyperAccess 5 also 
     initializes the modem properly, however it does not configure itself to 
     use hardware flow control. 
     
     All modems come with default settings pre-configured from the factory. 
     Many V.32 high-speed modems are preset to use V.42bis and hardware flow 
     control when they are turned on. This optimal configuration enables the 
     modem to automatically negotiate a connection with either another V.32 
     modem supporting V.42bis or MNP protocols (or even a standard modem).
     
     Interestingly enough, not all high-speed modems are configured this way. 
     The ATI 9600 etc/e modem, for example, is preset to use V.32 without 
     error control or data compression at power-on. (Why? Good question.)
     
     As a result, your communications program needs to issue the appropriate 
     initialization string (AT&F2) to set up the ATI modem to use V.32 with 
     V.42bis and hardware flow control.
     
     There is another change required. And it has to do with the parameters 
     controlling how the modem deals with two of the RS232 signals: DTR (Data 
     Terminal Ready) and CD (Carrier Detect). 
     
     CD is a signal generated by the modem which is used to indicate its 
     connection status. DTR is a signal generated by your computer. DTR is 
     used to enable the modem to accept commands from your communications 
     program, it is also used by most modems to determine when to disconnect 
     a call.
     
     The factory default setting for DTR tells the modem to ignore change in 
     DTR (&D0), and the setting for CD forces CD always on (&C0). These 
     specific settings are required by some dedicated dumb terminals in order 
     to communicate with the modem. (Virtually all modems use &C0&D0 as the 
     default setting.) However, these settings will often cause problems when 
     hanging up the phone lines or produce an error message which says the 
     modem is online when it is not.
     
     Most communications software programs expect the modem to follow DTR and 
     expects CD to follow carrier. &C1&D2 set the parameters for the modem to 
     handle the DTR and CD signals as expected by most communications 
     programs.
     
     Therefore, the proper initialization string to use for the ATI modem 
     should be AT&F2&C1&D2.
     
  Does Your Software Initialize the Modem Properly?
     
     Let's take a look at the initialization strings used by Qmodem and 
     HyperAccess 5 for the ATI 9600etc/e modem. 
     
     HyperAccess 5 use the following initialization string
       
     AT&F2E1V1L0Q0W2X4&C1&D2S11=55
     
     This string is longer than the one we suggest. But does it do more? 
     Actually it doesn't. Many of the commands in the string are redundant or 
     not necessary. Only AT&F2&C1&D2 are crucial.
     
     Four of the commands - E1, V1, Q0 and X4 - are redundant since they are 
     duplications of the factory default settings. (Check your modem manual 
     to find out what they mean. Since you would most likely need to read it 
     sooner or later, you might as well get started now.)
     
     L0 does not apply to the ATI modem. L0 normally is used to set modem 
     speaker volume to the lowest level. However, the ATI 9600etc/e modem 
     does not respond to the L0 command. Unlike most modems, the ATI modem 
     has a slide volume control on the right side for adjusting the volume 
     level.
     
     The other two commands (W2 and S11=55) are not redundant, but they are 
     not necessary.
     
     W2 sets the modem to report Negotiation result codes in single line 
     format instead of the default three line format (W1).
     
        Three line format:              Single line format:
        -----------------               ------------------
        CARRIER 9600                    CONNECT 9600/LAP-M
        PROTOCOL: LAP-M
        CONNECT 38400
           
     
     S11=55 (default is 95) sets the modem to dial at a faster speed than the 
     factory setting.
     
     Despite the fact that its initialization string contains some redundant 
     commands, HyperAccess 5 does properly initialize the ATI modem.
     
     Although HyperAccess 5 will initialize the modem with the string every 
     time you dial a remote system, the program does not change the factory 
     default settings for the ATI modem (which is V.32 without error control 
     or data compression). Every time you turn the modem off and back on, the 
     modem will revert to its factory defaults.
     
     Unlike HyperAccess 5 (and other communications programs), Qmodem does it 
     in a different way. It actually replaces the old factory default setting 
     (AT&F) of the ATI modem with a new default configuration (AT&F2&C1&D2).
     
     When you first install Qmodem to work with an ATI 9600 etc/e modem, the 
     program sends the following two strings to the modem (make sure the 
     modem is connected to your PC and is turned on):
           
     AT&F2^M
     AT&C1&D2&W^M
     
     The first string sets the modem as V.32 with V.42bis enabled, hardware 
     flow control enabled (among other things). Note that ^M is equivalent to 
     sending a Carriage Return to the modem.
     
     The second string changes the factory settings of the CD and DTR 
     (&C0&D0) and then write (&W) all the new active configuration settings 
     to the nonvolatile memory of the modem. The new settings are now stored 
     by the modem and become the new default configuration when the modem is 
     powered on (or when it received the ATZ command).
     
     Thus, Qmodem simply sends the initialization string "ATZ^M" (which 
     resets the modem to its default state, now AT&F2&C1&D2) to the modem 
     whenever you load the program.
     
     Although the two programs use different techniques, the result is the 
     same. The modem is initialized as V.32/V.42bis with hardware flow 
     control enabled, which is normally the optimum setting.
     
  Does Your Software Configure Itself to Match the Modem Settings?
     
     Besides sending the right initialization string to the modem, the 
     communications software will also need to match the modem setting. 
     Specifically, the communications software should also use hardware flow 
     control since the modem is initialized with hardware flow control 
     enabled.
     
     One would expect that when a software initializes the modem to use 
     hardware flow control, the software itself would also use hardware flow 
     control. But it is not always true. As we mentioned earlier, HyperAccess 
     5 initializes the modem with hardware flow control enabled, but expect 
     you to change the flow control settings in each individual dialing 
     entry.
     
  Why You May Need to Change the Initialization String
     
     In general, the string AT&F2&C1&D2 should work without any problem. But 
     there is no guarantee that it will always work. When it does not work, 
     you'll normally need to change the initialization string to solve the 
     problems.
     
     Here are a few reasons why the initialization string used by your 
     communications program may not work:
     
     1. The settings need adjustments to work with the system you are 
        calling.
     
        Case 1: When I called the Hayes BBS, the modem would abort and failed 
        to make a connection. It turned out that the default setting (30 
        seconds) of the S7 register is not long enough for the ATI modem to 
        make a connection with the Hayes Ultra 96 modem on the other end. 
     
        Solution: To establish a connection to the Hayes BBS, I need to add 
        "S7=60" to the modem initialization string and also change the 
        setting in the communications software to wait 60 seconds for a 
        connection.
        
        By initializing the modem with the string AT&F2&C1&D2S7=60, I was 
        able to connect without any problem. (The default setting for the S7 
        register is not universal, the Hayes Ultra and Practical Peripheral 
        use 50 seconds as the default value.) Note that there is nothing 
        special about the number 60. In my particular case, any number larger 
        than 45 will work.
        
        Case 2: When I call a system that uses the Telebit T1600 modems, I 
        cannot make a connection if the ATI modem is set to use V.42bis or 
        MNP-5. The ATI modem will only connect reliably when it is set to use 
        MNP-4.
     
        Solution: To connect successfully, I have to set up the modem as V.32 
        with MNP-4 by sending the string AT&F1&U0 to the ATI modem. (AT&F1 
        sets the ATI modem as V.32 with MNP-5, &U0 turns off data 
        compression.)
     
     2. Your communication software may not be compatible with the setting. 
        For example, America Online implemented an error-correcting scheme in 
        the software (both the PC and the Mac versions) which is not 
        compatible with the modem's error correction protocol.
     
        Solution: To use America Online, you need to turn off error control 
        on the modem. AT&F configures the ATI modem as V.32 without error 
        control.
     
     3. Your computer hardware may not work with the setting. As I mention 
        earlier, you need a properly wired cable for the Mac to use hardware 
        flow control. If you do not have the right cable or if your Mac 
        simply won't work with the cable, you will need to use software flow 
        control. (&K4 tells the ATI modem to use software flow control.)
     
        Solution: To use the ATI modem in V.32/V.42bis mode with my Mac, I 
        need to disable hardware flow control and use XON/XOFF software flow 
        control instead. The string AT&F2&K4&C1&D2S7=60 sets up the modem 
        properly (again, S7=60 is for calling the Hayes BBS).
     
     4. You may need to change the setting to achieve better performance. It 
        is advisable that you turn off MNP-5 while downloading pre-compressed 
        files from a remote system that has a MNP-5 modem. You can initialize 
        the ATI modem to turn off MNP-5 data compression with the string 
        AT&F1&U0.
     
     
     Again, the initialization string used here is for the ATI modem only. If 
     you use a different modem, you would need to check with the modem manual 
     to find out the equivalent commands to use.
                 
                 
  Editing the Initialization String
     
     If the initialization string provided by your software does not work (or 
     if your software does not support your modem at all), you'll need to 
     edit the initialization string in your communications program.
     
     The modem initialization string consists of a series of commands (called 
     the AT commands). They can be divided into three groups:
      
     1. A capital character followed by a digit. For example, M1.
     2. An ampersand & and a capital character followed by a digit. For 
        example, &M1. Note that M1 is different from &M1.
     3. Sr=n where "r" is the number of the register to be changed and "n" is 
        the new value that is being assigned. For example, S7=60.
     
     There are some other characters that may also appear in the modem 
     initialization string. These characters normally should not be changed.
     
        AT      tells the modem that modem commands follow.
        
        Z       resets the modem to default state
        
        ~       makes your software pause for half a second. You can use 
                more than one ~ in a row. For example, ~~~~ tells the       
                software to pause two seconds.
        
        ^M      sends the terminating Carriage Return character to the 
                modem. This is a control code that most communication       
                software translate as a "carriage return."
     
     
     Let's assume that the appropriate initialization string to use is 
     AT&F2&C1&D2S7=60 (for the ATI modem). You'll need to replace this string 
     with the one provided by your communications software.
     
     If your software does not support your modem, you can install the 
     program by telling it that you have a Hayes modem. After the 
     installation, you'll simply edit the initialization string with the 
     appropriate one. Please make sure you do not delete any ~ or ^M.
     
     Here are some examples, 
     
     1. To change the string provided by Procomm Plus
      
            ATE1 S7=60 S11=60 V1 X1 Q0 S0=0^M
     
        Use the string 
        
            AT&F2&C1&D2S7=60^M
     
     2. To edit the string used by Telix
           
            ATZ^M~~~AT S7=45 S0=0 V1 X4^M
     
        change it to 
     
            ATZ^M~~~AT&F2&C1&D2S7=60^M 
         
     3. To replace the initialization string provided by ZTerm (Macintosh)
     
            ATE1M1 V1^M 
     
        use the following string
     
            AT&F2&C1&D2S7=60^M
     
     
  Match Software Settings To the Modem Settings 

     Besides using the right initialization string, you also need to make 
     sure that the settings in your communications program match those of the 
     modem.
     
     Speed setting
     
     If you have a modem that supports data compression. You want to make 
     sure that the speed setting for the entries in your dialing directory is 
     the maximum throughput. Here are the general rules of thumb:
     
     For a V.32bis/V.42bis modem, set speed to 38400 or 57600 bps (check your 
     modem manual).
     For a V.32/V.42bis modem, set speed to 38400 bps. 
     For a V.32/MNP-5 modem, set speed to 19200 bps. 
     For a V.22bis/V.42bis modem, set speed to 9600 bps. 
     For a V.22bis/MNP-5 modem, set speed to 4800 bps.
     
     Note: Your computer may not be fast enough to work reliably at 38400 or 
     57600 bps. Also, the communications programs you use may not support 
     speed higher than 19200 bps.
     
     
     Hardware flow control
  
     Note that you will need to configure your software to use hardware 
     handshaking if the modem is initialized to use hardware flow control.
     
     
     Dialing Time-out Value
  
     Independent from your modem setting, your software may also impose a 
     limit on how long it will wait for a connection. If you initialize the 
     modem with the command S7=60, you'll need to change the time-out value 
     used by your software to 60 seconds accordingly.
     
Configuring Popular Communications Software to Work with High-speed Modems
     
     Below are brief instructions for configuring some popular communications 
     programs to work with a high-speed modem. The particular initialization 
     string is for the ATI 9600etc/e modem. It is assumed that the 
     appropriate initialization string to use is AT&F2&C1&D2S7=60.
     
     Make sure you save the changes you make. 
  
  
  Procomm Plus 2.0
  
     To change the modem initialization string: (Global, i.e. it works with 
     every dialing entry)
     1. Load Procomm, press Alt-S
     2. Select Modem Options
     3. Select Modem Commands
     4. Press A 
     5. Change the initialization string to AT&F2&C1&D2S7=60^M
     
     To set the software to wait 60 seconds for connection: (Global)
     1. Load Procomm, press Alt-S
     2. Select Modem Options
     3. Select General Options
     4. Press A
     5. Type 60 and press Return
     
     To enable hardware flow control: (Global)
     1. Load Procomm, press Alt-S
     2. Select Terminal Options
     3. Press D (hardware flow control)
     4. Press Space Bar to toggle, press Return to accept
     5. Press C (software flow control)
     6. Press Space Bar to toggle, press Return to accept
     
  Telix
     
     To change the modem initialization string: (Global)
     1. Press Alt-O
     2. Select Modem and dialing
     3. Select A (Init String)
     4. Change the initialization string to ATZ^M~~~AT&F2&C1&D2S7=60^M
     
     To set the software to wait 60 seconds for connection: (Global)
     1. Press Alt-O
     2. Select Modem and dialing
     3. Select K (Dial time) and enter 60 press Return
     
     To enable hardware flow control (Global)
     1. Press Alt-O
     2. Select Terminal options
     3. Press J (XON/XOFF software flow control)
     4. Select Off
     5. Select K (CTS/RTS hardware flow control)
     6. Select On 
     7. Press ESC to exit
     
  Qmodem
  
     To change the modem initialization string: (Global)
     1. Press Alt-N
     2. Press M to select Modem menu
     3. Select Modem Commands
     4. Press Return
     5. Change the initialization string to AT&F2&C1&D2S7=60^M
     
     To set the software to wait 60 seconds for connection: (Global)
     1. Press Alt-N
     2. Press M to select Modem menu and Press Return to select Communication 
        Parameters
     3. Press H to select Timeout delay
     4. Type 60 and press Return
     5. ESC to exit
     
     To enable hardware flow control: (Global)
     
     1. Press Alt-N
     2. Select Toggles
     3. Press Return to toggle XON/XOFF flow
     4. Select CTS/RTS flow
     5. Press Return to toggle
     6. ESC
     7. ESC
     8. Press E for Exit
     9. Save Changes
     
     
  HyperAccess 5
  
  Note: HyperAccess 5 supports the ATI 9600etc/e. However, HyperAccess 5 does 
  not let you edit the initialization string directly. You can add additional 
  setup commands to change the modem settings for each individual dialing 
  entry.
     
     To change the modem initialization string: (Individual, i.e. it works 
     only with the particular dialing entry)
     1. Select Define system settings from the Main menu
     2. Select Modify
     3. Use cursor to select the system to modify and press Enter
     4. Select Hardware from the System settings menu
     5. Select Modem
     6. Select Additional modem setup commands
     7. Type S7=60
     8. Press ESC twice to go back the Main menu
     
     To set the software to wait 60 seconds for connection:
     N/A
     
     To enable hardware flow control: (Individual)
     1. Select Define system settings from the Main menu
     2. Select Modify
     3. Use cursor to select the system to modify and press Enter
     4. Select Hardware from the System settings menu
     5. Make sure that Data terminal ready signal is output on DTR, delete 
        RTS if it is listed
     6. Select Communications port
     7. Select Incoming hardware handshaking and type CTS
     8. Select Outgoing hardware handshaking and type RTS
     
     
  Crosstalk for Windows
  
     To change the modem initialization string: (Global)
     1. Pull down Setup menu and select Modem...
     2. Select Custom and click on Settings
     3. Change the initialization string to ^M~AT&F2&C1&D2S7=60^M
     4. Click OK
     
     To set the software to wait 60 seconds for connection: (Individual)
     1. Pull down File menu and select Open a phone book entry 
     2. Open the phone book entry
     3. Pull down Setup menu and select Session
     4. Click on More
     5. Change the value in Allow xx seconds for the host to answer
     
     To enable hardware flow control: (Individual)
     1. Pull down File menu and select Open a phone book entry 
     2. Open the phone book entry
     3. Pull down Setup menu and select Device
     4. Click on RTS/CTS and click OK 
     
  
  MicroPhone II (for Macintosh)
  
     To change the modem initialization string: (Individual)
     1. Choose Settings Menu
     2. Select Communications
     3. Choose V.32 Standard from the Modem Driver list box
     4. Click OK
     5. Hold down the Command key and choose Scripts menu
     6. Select Modify Script
     7. Click the Modem Scripts button
     8. Double-click on Modem_Init
     9. Double-click on the first line that says 
             Set Variable * mcmd from Expression "'AT....'"
     10. Change the initialization string in the lower right box to   
             'AT&F2&C1&D2S7=60^M'
     11. Double-click on the second line that says
             Set Variable * mcmd from Expression "'AT....'"
     12. Change the initialization string in the lower right box to   
             'AT&F2&C1&D2S7=60^M'
     13. Click OK
     14. Press the Option key and choose the File menu
     15. Select Save Modem Driver (If you want to save the driver under a new 
         name, select Save Modem Driver As... in the File Menu. Name the new 
         driver, and save it into the Modem Folder.)
           
     To set the software to wait 60 seconds for connection:
     N/A
     
     To enable hardware flow control: (Individual)
     1. Pull down Settings Menu
     2. Select Communications
     3. Click on the Hardware Handshake box
     
  ZTerm (for Macintosh)
  
     To change the modem initialization string: (Global)
     1. Choose Settings Menu and select Modem
     2. Change Init String to AT&F2&C1&D2S7=60^M
     
     To set the software to wait 60 seconds for connection: (Individual)
     1. Choose Settings Menu and select Modem
     2. Edit Dial Timeout
     
     To enable hardware flow control: (Global)
     1. Choose Settings Menu and Select Flow Control
     2. Uncheck Xon-Xoff Receive
     3. Uncheck Xon-Xoff Send
     4. Check HW Handshake 
     
     
Other Settings for Your Communications Software
  
  Telephone Number
  
     Online services use different phone numbers for different kinds of 
     modems. To get the best throughput, make sure you dial the right phone 
     number. Note that many bulletin board systems do not allow calling their 
     high-speed modem lines with 2400 bps modems. You would be disconnected.
     
     For example: 

     EXEC-PC, the largest BBS in the United States, has the following 
     telephone numbers:
     
     #1: Standard 2400 bps modems                        414-789-4210 
     #2: US Robotics HST 9600 MNP5                       414-789-4337
     #3: US Robotics HST 14400 & V.32/V.42bis/MNP5       414-789-4352
     #4: US Robotics V.32bis/V.42bis & HST               414-789-4360
     #5: CompuCom Speedmodem 9600 MNP5 modems            414-789-4450
     #6: Hayes 9600B V-series modems, NON-V.32           414-789-4315
     
     
     If you have a 9600 bps HST modem, call #2.
     If you have a 14400 bps HST modem, call #3 or #4. You can also call #2 
     but you won't be able to get the best throughput.
     If you have a V.32 modem, call #3 or #4.
     If you have a V.32bis modem, call #4. You can also call #3 but you won't 
     get the best throughput.
     If you have a CompuCom SpeedModem Champ, call #5
     If you have a CompuCom SpeedModem Storm, call #3 or #4 (V.32), #5 (CSP)
     If you have a CompuCom SpeedModem Star, call #4 (V.32bis), you can also 
     call #3 or #5 but you can only connect at 9600 bps.
     If you have a Hayes V-series Smartmodem 9600 (or 9600B) modem, call #6.
     
     
  Dial String: ATDT
  
     You don't have change the dialing string unless you use a PBX system or 
     have call waiting service.

     PBX
     If you have to dial the digit 9 to obtain an outside line, Use ATDT9, 
     (the comma , instructs the modem to pause two seconds). This allows 
     enough time for the dial tone to occur before the modem dials. You can 
     use as many commas as you like.

     Call Waiting
     Call waiting service will disrupt modem sessions. If your telephone 
     company supports the ability to disable call waiting, use the dial 
     string ATDT*70, (make sure you add the comma ,) instead of ATDT.
     
     ATDT*70,123-4567
     
     Also, adding 1170 after the ATDP dial command can be used to disable 
     call-waiting on some pulse-dialing phone systems. Check with your phone 
     company to see if these features are supported.
     
     
  8-N-1 or 7-E-1 (data bits-parity-stop bits)
     
     In general, set the parameters to 8-N-1. If you are calling a commercial 
     online service (such as GEnie), you may need to set the parameters to 
     7-E-1.
     
  Half vs. Full Duplex: Local Echo
     
     The only popular on-line service that uses half duplex is GEnie.
     
  Terminal Emulation
     
     If you are using an IBM compatible, choose IBM PC or ANSI.
     Otherwise, try VT102, VT100, VT52, TTY.
     
  Comm Port 
     
     For your computer to talk to your modem, you need to tell the software 
     where to find the modem. If you use a PC with an external modem, you 
     need to specify which serial port the modem is connected to. If you have 
     an internal modem, you need to configure the modem and tell the software 
     which COM port the modem is configured for.
     
     If you use a Macintosh, specify whether your modem is connected to the 
     modem port or the printer port.
     
  File Transfer Protocols

     Errors that occur during file transfer are automatically detected and 
     corrected by file transfer protocols. If a block of data is received 
     incorrectly, the receiving system sends a message to the sending system 
     and requests the re-transmission. This process is automatic. When errors 
     occur during file transfer, the communication program shows an error in 
     the file transfer status window.
     
     ASCII
     
     This is designed to work with ASCII text files only. Notice that you do 
     not have to use this protocol when transferring text files. The ASCII 
     protocol is useful for uploading a text file when you are composing 
     e-mail online.
     
     Xmodem
     
     Xmodem is one of the most widely used file transfer protocols. The 
     original Xmodem protocol uses 128-byte packets and a simple "checksum" 
     method of error detection. A later enhancement, Xmodem-CRC, uses a more 
     secure Cyclic Redundancy Check (CRC) method for error detection. Xmodem 
     protocol always attempts to use CRC first. If the sender does not 
     acknowledge the requests for CRC, the receiver shifts to the checksum 
     mode and continues its request for transmission.
     
     Xmodem-1K
     
     Xmodem 1K is essentially Xmodem CRC with 1K (1024 byte) packets. On some 
     systems and bulletin boards it may also be referred to as Ymodem. Some 
     communication software programs, most notably Procomm Plus 1.x, also 
     list Xmodem-1K as Ymodem. Procomm Plus 2.0 no longer refers to Xmodem-1K 
     as Ymodem. 
     
     Ymodem
     
     Ymodem is essentially Xmodem 1K that allows multiple batch file 
     transfer. On some systems it is listed as Ymodem Batch.
     
     Ymodem-g
     
     Ymodem-g is a variant of Ymodem. It is designed to be used with modems 
     that support error control. This protocol does not provide software 
     error correction or recovery, but expects the modem to provide the 
     service. It is a streaming protocol that sends and receives 1K packets 
     in a continuous stream until instructed to stop. It does not wait for 
     positive acknowledgement after each block is sent, but rather sends 
     blocks in rapid succession. If any block is unsuccessfully transferred, 
     the entire transfer is canceled.
     
     Zmodem
     
     This is generally the best protocol to use if the electronic service you 
     are calling supports it. Zmodem has two significant features: it is 
     extremely efficient and it provides crash recovery.
     
     Like Ymodem-g, Zmodem does not wait for positive acknowledgement after 
     each block is sent, but rather sends blocks in rapid succession. If a 
     Zmodem transfer is canceled or interrupted for any reason, the transfer 
     can be resurrected later and the previously transferred information need 
     not be resent.
     
     Kermit
     
     Kermit was developed at Columbia University. It was designed to 
     facilitate the exchange of data among very different types of computers 
     (mainly minicomputers and mainframes). You probably will not need to use 
     Kermit unless you are calling a minicomputer or mainframe at an 
     educational institution.
     
     Sealink
     
     Sealink is a variant of Xmodem. It was developed to overcome the 
     transmission delays caused by satellite relays or packet-switching 
     networks.
     
     Which file transfer protocol should you use?
     
     In general, I recommend Zmodem. If Zmodem is not supported by the system 
     you are calling, use Ymodem-g. (If you are connecting to a UNIX system 
     in a university, you may have to use Kermit or Xmodem to transfer 
     files.)
     
     Here are the test results obtained by downloading the files using 
     various file transfer protocols. The number before the parentheses is 
     the transfer speed (in cps) and the number in the parentheses is the 
     time elapsed (in seconds).
     
     Protocol         Xmodem    Xmodem-1K   Ymodem     Ymodem-g    Zmodem
     ---------------------------------------------------------------------
     the-wave.txt     429(334)  1508(95)    1527(94)   3261(44)    3296(43)
     dayrpt.arc       314(26)    758(11)     761(11)   1042(8)     1025(8)  
     dayrpt.wks       415(47)   1252(15)    1244(15)   2314(8)     2337(8)
     sunset.arc       337(15)    771(6)      745(6)     987(5)      965(5)
     sunset.pic       399(41)   1337(12)    1297(12)   2594(6)     2588(6)
     text109k.arc     343(86)    817(36)     814(36)   1089(27)    1064(27)
     text109k.txt     410(271)  1379(80)    1351(82)   2812(39)    2885(38)
     
     
     



************************************************************************


Appendix A: Resources

Here is a list of selected modem manufacturers.

Manufacturer           Information      Tech Support     Support BBS 
--------------------------------------------------------------------------
ATI Technologies       (416) 756-0718   (416) 756-0711   (416) 756-4591
Cardinal               (800) 233-0187   (717) 293-3124   (717) 293-3074
Compucom               (800) 228-6648   (408) 732-4500   (408) 738-4990
Hayes                  (404) 441-1617   (404) 441-1617   (800) 874-2937
Image Communications   (201) 935-8880   (201) 935-8880   n/a
Intel                  (800) 538-3373   (503) 629-7000   (503) 645-6275
Microcom               (800) 822-8224   (617) 551-1313   (617) 551-1655
Multi-Tech             (800) 328-9717   (800) 328-9717   (612) 785-9875
Practical Peripherals  (800) 442-4774   (818) 991-8200   (818) 706-2467
Prometheus             (800) 477-3473   (503) 624-0571   (503) 691-5199
Supra                  (800) 727-8772   (503) 967-2440   (503) 967-2444
Telebit                (800) 835-3248   (800) 835-3248   n/a
U.S. Robotics          (800) 342-5877   (800) 982-5151   (708) 982-5092
Zoom                   (800) 666-6191   (617) 423-1076   (617) 451-5284




Support BBS for Communications Programs
--------------------------------------------------------------------------
Procomm Plus (Datastorm Technologies, Inc.)              (314) 875-0523
Telix (Exis Inc.)                                        (416) 439-9399
Qmodem (The Forbin Project, Inc.)                        (319) 233-6157
HyperAccess 5 (Hilgraeve Inc.)                           (313) 243-5915
Crosstalk for Windows (DCA)                              (404) 740-8428
MicroPhone II (Software Ventures)                        (415) 849-1912
ZTerm                                                    n/a



************************************************************************


Appendix B: How to reach the author

If you have any comments or suggestions, I'll love to hear from you. You can 
reach me via

America Online:  Pat Chen
CompuServe:      70754,3162
DELPHI:          POC
FidoNet:         1:161/444.38
GEnie:           p.chen2
MCI Mail:        445-6669
Internet:        445-6669@mcimail.com
                 70754.3162@compuserve.com
                 pchen@cup.portal.com

U.S. Mail:       Patrick Chen
                 P.O. Box 5325
                 Irvine, CA 92716

     
************************************************************************


Appendix C: About "The Joy of Telecomputing"

What is "The Joy of Telecomputing?"
     
     "The Joy of Telecomputing" is a 200-page (and growing), three-part 
     report consisting of the following articles: "What you need to know 
     about modems,""Life beyond CompuServe" and "Is AT&T the right choice?" A 
     glossary and an index are also provided.
     
     The discussions in "The Joy of Telecomputing" are devoted to the 
     following online activities: file transfer (downloading shareware, 
     exchanging files with colleagues or friends), electronic mail, 
     conferences (forums, newsgroups, SIGs), chatting. You won't find 
     discussions on stock quotes, shopping malls, online databases, etc.
     
     Going online has become a way of life for many computer users. It is 
     undeniably fascinating, fulfilling and fun. But there is also a down 
     side to it: the cost can be prohibitive. I have yet to meet an avid 
     modem user who didn't wish that he could afford to be online longer. 
     
     To get the most mileage from your online dollars, you need to know the 
     answers to the following three questions:
     
     1. What is the right modem to use?
     2. What online services are available and how do they compare?
     3. What is the most cost-effective way to reach those services?
     
     These are not isolated questions. The answers to these questions will 
     help you decide what online systems are right for you.
     
     People live in different cities, use different kinds of computers and do 
     different things online. It should come as no surprise that there isn't 
     a single online system that is right for everyone.
     
     The goal of "The Joy of Telecomputing" is to help you get the most from 
     telecomputing. Our goal is not to tell you that so-and-so is the best 
     but to present you with enough information so that you will be able to 
     determine what is right for you. We'll provide you a survey that is both 
     comprehensive and specific.
     
     To be comprehensive, we'll cover the three main groups of online 
     systems: commercial online services (CompuServe and others), bulletin 
     board systems and the Internet.
     
     To be specific, we'll present you all the necessary information to help 
     you make a decision. Take electronic mail, for example. Virtually all 
     online systems offer electronic mail service. However, listing dozens of 
     services and saying that they all offer e-mail would do little to help 
     you make an intelligent decision. We'll also provide specific details 
     about each service such as
     
     * How much does it cost?
     * How fast does a message get delivered?
     * Is the e-mail message protected? (Can someone else besides the 
       recipient read your mail messages?)
     * Can you send e-mail to people that are not subscribers of the 
       service?
     * Can you send a file with your message?
     * Is there a limit on the size of the file you can send with your 
       message?
     * How can you reach the service?
     * Can you read and reply messages offline?
     
     I use MCI Mail, CompuServe and the Internet for e-mail on a daily basis. 
     Do I need all these accounts? Not really. Theoretically I only need one 
     of them. (Yes, you can send e-mail from MCI Mail to a CompuServe or an 
     Internet user, and vice versa.) Why do I have three accounts then? 
     Because each has its pros and cons. And I use e-mail so much so that the 
     three accounts combined offer me the best solution.
     
     (Note: CompuServe is a good deal for e-mail only if you join the Basic 
     Service Plan. To join this experimental program, type GO NEWBASIC at any 
     ! prompt. For $7.95 per month, you are allowed to send 60 messages. Each 
     message can have up to 7500 characters. Note that there is a surcharge 
     for sending e-mail to MCI Mail users. Also, reading e-mail sent to you 
     from Internet also count against your monthly allowance.)
  
     For the past eight years, I've worked as a computer consultant. I 
     decided to pursue my career as a computer writer a few months ago. In 
     the past three months, I have signed contracts for two computer books to 
     be published in 1992. 
     
     "The Joy of Telecomputing" is a project that I believe is sorely needed. 
     Initially I have considered submitting it to the computer book 
     publishers. However, I have learned that it can easily take six to nine 
     months (if no longer) to get a book published. As a result, by the time 
     the book gets to the readers, it is probably obsolete. (It may not be 
     too bad if this is a book on C programming. But a book on the 
     online world?) Therefore, I decide to try it on my own to see whether 
     the online community would support such a project. 
     
     The online world is constantly changing and it will remain one of the 
     hottest growing area in microcomputing for many years to come. By 
     keeping the project under my own control, I'll be able to provide you 
     the information you need on a timely basis.
  
     "The Joy of Telecomputing" is an ongoing project. It will be updated 
     every quarter. Future updates of "What you need to know about modems" 
     will remain available on BBS and other online services. 
      
     If there are enough supporters for this project, I would like to set up 
     a BBS. (What else?) You will be able to exchange informations, download 
     files and participate in discussions about the ever evolving online 
     world.
     
      
What's in "Life Beyond CompuServe?"
     
     Part II of "The Joy of Telecomputing" provides a comprehensive survey of 
     the online world. It covers the three major groups of online systems:
     
     * Commercial online services (America Online, BIX, CompuServe, DELPHI, 
       GEnie, MCI Mail, Prodigy, etc).
     * BBS (including discussions on FidoNet, RIME, etc)
     * The Internet (including discussions on UUCP, Usenet, Bitnet, etc).
     
     
     Commercial Online Services
     
     In general, commercial online services do not offer good 
     price/performance, though some of them excel in certain areas (such as 
     e-mail). We'll look at the major commercial online services (CompuServe, 
     GEnie, Prodigy, etc.) and see what they offer and what they are good 
     for. Major topics covered are:
     
     * What are the major commercial online services?
     * How much do they cost?
     * How can you access those services?
     * What do they offer? How do they compare with each other? 
     * How do they compare with BBS?
     
     
     The World of BBS
     
     It is estimated that more than 30,000 bulletin boards exist in the 
     United States. If you live in a metropolitan area, you'll probably find 
     hundreds of BBS that are local. Most BBS operate as a hobby by their 
     owners and without charge to their users. There are many BBS that have 
     members all over the United States (and the world).
     
     The world of BBS has become a phenomenon. BBS are no longer isolated 
     systems. Fidonet, the network linking thousands of BBS around the world, 
     allows users on one BBS to communicate with those on other BBS. 
     Recently, with gateways to the UUCP network, many BBS has allowed their 
     members to exchange e-mail with users of the Internet and to participate 
     in Usenet newsgroups.
     
     We'll cover the following topics:
     
     * How many BBS are there? How do they compare?
     * How much does it cost to become a member?
     * What are the limitations?
     * How to find BBS numbers?
     * Which BBS offers the latest and greatest files for PC users? 
       Macintosh users? Amiga users?
     * Which BBS are good for chatting? Which are good for conferences?
     * What is Fidonet? How does it work? What does it offer?
     * How to join Fidonet as a node? 
     * How to become a point on Fidonet?
     * How to send e-mail from Fidonet to Internet (and from Internet to 
       Fidonet)?
     * What is RIME?
     * What are the major BBS software available? 
     * How to use BBS effectively?
     * What software tools you need and where to find them? 
     * BBS Etiquette
     * Why ZTerm is the best program to use for calling BBS? (For Macintosh 
       users only)
     * What are MacBinary files? How to download a Macintosh file to a PC? 
       How to download a PC file to a Macintosh? (For Mac users or people 
       who use both Mac and PC.)
     
     
  Internet
  
     If you want someone to learn UNIX, show him the Internet. (You don't 
     need to be a UNIX expert to use the Internet though. Besides, UNIX is 
     not really that hard.) 
     
     Internet is a global computer network linking hundreds of thousands of 
     computers (mainly UNIX computers) at universities, research institutions 
     and government agencies. Internet is unsurpassed for e-mail and 
     conferences (called newsgroups in the UNIX world). It is also an 
     invaluable resource for free software. Some major topics covered are: 
     
     * What is Internet
     * What is UUCP? What is Usenet? What is Bitnet?
     * What can you do on the Internet?
     * How to send e-mail on the Internet?
     * How to send e-mail from Internet to CompuServe, MCI Mail, Fidonet 
       (and vice versa)?
     * How to send binary files?
     * What newsgroups are available?
     * How to participate in a newsgroup?
     * Etiquette
     * What is FTP?
     * What is Anonymous FTP?
     * How to use FTP?
     * What are the FTP sites available?
     * How to find the files you need?
     * What is telnet?
     * What can you do with telnet? (Read "The Cuckoo's Egg" by Cliff Stoll 
       for a first-hand account on how a German hacker use telnet to break 
       into computers on Internet.)
     * How to use telnet?
     * How can you get an Internet account?
     * What services are available? What kind of access level do they offer? 
     * How much do they cost?
     * How to transfer files from a UNIX host to your personal computer?
     * What are uuencode and uudecode?
     * What are compress, tar and shar?
     
     
What's in "Is AT&T The Right Choice?"
  
  Part III of "The Joy of Telecomputing" provides detailed discussions on the 
  various ways you can reach a remote system (i.e., a system which is not 
  local to you). What is the most cost-effective way to reach those systems?
  
  There are generally two options you have to reach a remote system:
    
     1. You can place a distance call using AT&T, MCI, etc.
     2. You can reach the system via some packet-switching networks by 
        dialing a local number (the system you are calling may already have a 
        deal with a packet-switching network and charge you accordingly, or 
        you may subscribe to one of the packet-switching networks yourself).
     
     However, packet-switching networks differ widely in what they offer, how 
     much they charge, and how well they perform. We'll look at some of the 
     services available (PC Pursuit, Connect-USA, Accu*Link, Tymnet, 
     REDI-Access, etc.).
     
     * How many ways can you reach a remote system? What are the pros and 
       cons?
     * What are packet-switching networks?
     * How do they work?
     * What services are available?
     * What do they offer?
     * What kinds of modems do they support?
     * What are the differences in performance among different 
       packet-switching network?
     * How much do they cost?
     * Are packet-switching networks cost-effective?
     
     
     
  
==============================================================================
  
How to order "The Joy of Telecomputing"

     30-Day Money-Back Guarantee: If you are not satisfied with your purchase 
     of "The Joy of Telecomputing," return it in resalable condition with all 
     the original packaging within the guarantee period for a refund check. 
     Shipping cost is not refundable.
     
     To order a printed copy of "The Joy of Telecomputing," send a check or 
     money order to the following address:
     
     Patrick Chen
     P.O. Box 5325
     Irvine, CA 92716  (USA)
     
     
     "The Joy of Telecomputing"..................................$19.95
     Shipping & Handling (see below).............................$_____
     California residents please add 7.75% tax ($1.55)...........$_____
     
                                                     Total.......$_____
     
     
     Note: Shipping to 48 continental states is $5.00. Alaska, Hawaii, and
     Canada is $10.00. Other countries, please send e-mail before ordering. 
     Please allow 2-4 weeks for delivery.
     
     There is no need to fill out the order form if you are sending a check 
     with your name and address printed on it.
     
     Non U.S. residents: please send checks or money orders drawn on U.S. 
     Banks in U.S. Funds.
     
     
     Name:                                    Phone:                                   
     ______________________________________   ______________________________
     Company:  
     ________________________________________________________________________
     Address:  
     ________________________________________________________________________
               
     ________________________________________________________________________
     
     Comments/Suggestions:
       
     ________________________________________________________________________
     
     ________________________________________________________________________
     
     ________________________________________________________________________
     
     ________________________________________________________________________
     
     ________________________________________________________________________
     
     ________________________________________________________________________
  
     
