Maximizing your HST efficiency

                    Maximizing your HST efficiency.


      I frequent many BBS's around the United States and overseas.
On most everyone of these board there are at least 10 people who
post questions on what should they use as the "best" HST set-
tings.  There is usually around a dozen text files (yeah, like
this one) and programs that will try to help you get the most out
of your modem.  I've examined many of these and listened to the
advise of some so-called pro's.  I've been appalled at the gross
inaccuracies that are reported.  Well, I've decided to stop
complaining and do something about it.

      This text file will explain both in short and long form what
the best settings to use on your U.S. Robotics Courier HST and
HST Dual Standard modems (up to and including the newest version
with V.42/V.42bis and V.32bis).  The settings I will provide have
been tested over and over and I can assure you that they are
correct and WILL give you MAXIMUM THROUGHPUT.

      Before I get into it let me get a couple of things straight.
The settings I will provide give maximum downloading speed with a
very slight sacrifice (under 2%) to normal text that is sent by
the BBS to your system.  What does this mean?  Simple.  In the
settings below I will advise against using any data compression
settings.  Your downloads will be at full speed but things like
file listings which are text dumps from the host system to yours
will be at about 98-99% of what they could be with compression.



      O.K., now on to the nitty as well as the gritty.  Some
people don't like to read big technical explanations and just
want the facts.  My simple advice is to just set up to what I
describe below...I know it works cause I use it myself every
single day.

      First, the DIP switch settings.

      1 - Up.   Normal DTR operations.  Can be overridden via &D
                setting.  See technical explanation.
      2 - Up.   Verbal result codes.  Can be overridden via V set-
                ting.  See technical explanation.
      3 - Down. Result codes enabled.  Can be overridden via Q
                setting.  See technical explanation.
      4 - Up.   Command Mode Local Echo displayed.  Can be over-
                ridden via E setting.  See technical explanation.
      5 - Down  Auto Answer suppressed.  Can be overridden via S0
                register.  Only needed if you are running the BBS.
      6 - Up    Carrier Detect follows real.  Can be overridden
                via &C setting.  See technical explanation.
      7 - Up    Result codes displayed in both Originate and An-
                swer modes.
      8 - Down  Smart Command Set Recognition.
      9 - Down  Modem maintains connection when the Escape Code
                (+++) is received, returns to Command mode and
                sends OK result.
      10 - Up   Load from NRAM on Power-on and ATZ reset commands.

      What you will see next is the output from the "ATI4" com-
mand.  This shows all the settings I recommend as they appear on
my own modem.  If you change yours to match mine, bingo, you will
be blasting away at full speed.

ati4
USRobotics Courier 14400 HST Settings...

   B1  C1  E1  F1  M3  Q0  V1  X4
   BAUD=38400  PARITY=N  WORDLEN=8
   DIAL=HUNT   ON HOOK   TIMER

   &A1  &B1  &C1  &D2  &G0  &H1  &I0  &K0  &L0
   &M4  &N0  &P0  &R2  &S1  &T5  &X0  &Y1  %R0

   S00=000  S01=000  S02=043  S03=013  S04=010
   S05=008  S06=002  S07=060  S08=002  S09=006
   S10=007  S11=070  S12=050  S13=000  S14=000
   S15=000  S16=000  S17=000  S18=000  S19=000
   S20=000  S21=010  S22=017  S23=019  S24=150
   S25=000  S26=001  S27=000  S28=008  S29=020
   S30=000  S31=000  S32=001  S33=000  S34=000
   S35=000  S36=000  S37=000  S38=000

   LAST DIALED #:

OK

      Your current value for BAUD may be lower.  Change your
communications program to reflect the higher baud rate and the
HST will automatically change to match.  38400 is the highest
that the HST supports and most every PC supports it as well.  If
you are running under Windows then 19200 is the maximum.

      Let me save you some time too.  All the S registers are at
their default values.  I included them to be complete.

      Feel free to change the X and &A values as you like.  These
are the conservative ones.  In no case will these settings have
any effect on your speed.



      For the technically minded or for those that want to know
just why I chose the settings I did I could simply say, "Read
your manual, that's where I got it."  Instead I am going to go
through each of the settings one at a time so you can see for
yourself how they were chosen.


      "DIP switch settings"
      =====================
      Almost all of the DIP switch settings can be overridden by
software settings so I'm not going to duplicate the information
here.  Refer to the software commands that match the switch
setting in question for further information.


      "B1"
      ====
      This selects between HST and V.32 mode on modems (Dual
Standard) that have that option.  Always use the HST mode.  The
why on this is long and complicated but I will not leap into all
that.  Instead let me put it real simply:  HST mode runs at
14,400 bps and V.32 runs at 9,600 bps.  Which do you think would
be faster?  But you say that you need to connect with other V.32
modems and that's why you bought the Dual Standard.  No prob, the
modem is smart enough to automatically switch into V.32 mode if
the other side doesn't recognize the HST link request.

      "C1"
      ====
      This is a very technical setting.  If you had a second modem
on line and this one was the monitoring modem during a test,
using C0 would disable the transmitter on this modem.  Now, since
we obviously need to transmit we use the C1, transmitter on,
setting.  Simple eh?

      "E1"
      ====
      This tells the modem to echo back each character as you type
it WHILE IN COMMAND MODE ONLY.  This may be an E0 without affect-
ing speed.

      "F1"
      ====
      This means that the modem will NOT echo what you type WHILE
CONNECTED ONLY.  The receiving system does this for you.  This
can be F0 without affecting speed.

      "M3"
      ====
      This settings means speaker off during the dialing and after
connection but on while waiting for an answer.  You can change
this to whatever you like but I use this setting because it makes
a minimum amount of sound and let's me know when I've mis-dialed
and wake someone up in Alaska.  This doesn't affect speed.

      "Q0"
      ====
      This tells the modem to return result codes.  If the modem
doesn't return result codes your communications program won't
know what's going on.  You can change this without affecting
speed.

      "V1"
      ====
      This tells the modem to use verbal result codes instead of
numeric.  It's up to your communications program which you need.
You can use either without affecting speed.

      "X4"
      ====
      This determines just how much info you want returned via
result codes.  X4 is a safe medium.  It tells you everything
except "RINGING" and "VOICE" which almost no communications
programs use anyway.  If you choose another, try and make sure
it's higher.  This doesn't affect speed.


      "BAUD=38400"
      ============
      This setting is detected automatically by your modem and is
displayed here for reference.  You want to set your communica-
tions software at it's fastest rate (up to 38,400).  The name of
our game is speed so it doesn't make any sense to try and create
a bottleneck at the serial port.  All modern PC's support this
speed.  19,200 is the highest supported under Windows so either
live with the slower downloads or use Desqview instead.

      "Parity=N and WordLen=8"
      ========================
      This is the standard setting for connecting with most BBS's.
Your may be different to match certain systems.  This is O.K.
Also, the HST is smart enough to setup the Stop Bits value by
itself and therefore it isn't displayed here.

      "Dial=Hunt  On Hook  Timer"
      ===========================
      These are some other, non-speed related settings which I
won't go into here except briefly.  Dial=Hunt means that the HST
will try tone dialing first then pulse automatically.  On Hook
means the phone line is not in use.  Timer means that the modem
clock via the ATI3 command will return the call duration.  Don't
worry about these - it's the next batch that's important.


      "&A1"
      =====
      Sets just how much into you want to know when the modem
makes it connection.  &A1 gives you the basics.  Connect speed
and whether or not error correction, i.e. "/ARQ", is used.  If
you really want ALL the details and have the V.42 upgrade, use
&A3 and you will know the connect speed, link protocol, error
correction protocol and compression protocol.  NOTE:  Your HST
will report a CONNECT 9600 for any speed from 9600 and up.  This
means that a 12,000 or 14,400 bps connection will still report a
CONNECT 9600.  Complain to USR - maybe they'll do something about
it (&A4?).

      Guess what?  They did something about it!  HST's and Dual
Standards manufactured after 10/11/90 will now actually report
the correct CONNECT speed.  Not cause "we" asked for it but
because the V.32bis standard allowed for it.  Who cares how it
got there...it's there!


      "&B1"
      =====
      Here is a oft misunderstood setting that is actually very
simple.  &B1 tells the modem that no matter what speed we're
talking to the other modem, force communications between your
computer and your modem to always take place at the highest
possible speed.

      "&C1"
      =====
      This matches DIP switch 6 and takes precedence over it's
setting.  This setting tells the modem to send accurate Carrier
Detect signals to your communications program.

      "&D2"
      =====
      This matches DIP switch 1 and takes precedence over it's
setting.  This setting tells the modem to use the actual DTR
signals as sent by your computer and communications program.  If
this setting is forced on you may have problems with flow control
and overrunning your serial port.  Also, this allows communica-
tions programs to hang up the modem by simply dropping DTR
instead of fooling around with delays and codes.

      "&G0"
      =====
      This is country specific.  &G0 is for the U.S. and Canadian
phone system.  It sets the guard tone used.  Don't worry about
this - it's technical and doesn't affect speed.

      "&H1"  & "&I0"
      ==============
      These are two important settings.  These set the flow
control between your modem and computer.  &H1 says, use hardware
flow control for transmitted data and &I0 says, no flow control
for received data.  This all means, give it to me as fast as you
possibly can and I'll send it to you as fast as you can take it.
By the way, hardware flow control is MUCH faster than software
(XON/XOFF) control and is totally transparent.  Also, there is NO
advantage to using both at the same time (&H3) - in fact it's
slower.

      "&J0"
      =====
      This is the phone line interface type and is dependant on
what you've got your modem hooked up to.  Use the appropriate
setting.  &J0 is for standard, single line jacks like the RJ11.
This setting is no longer used on newer modems.

      "&K0"
      =====
      Ahh, data compression.  Now this setting is going to be one
of considerable controversy but let me assure you that this
setting, no compression, has been VERY THOROUGHLY checked out and
provides the MAXIMUM download speed in all cases INVOLVING
PRECOMPRESSED (.ZIP, .ARC, .LZH, etc.) files.  If you are going
to be downloading text and other uncompressed files then by all
means use &K3 if it's available, &K1 if you don't have the
V.42bis upgrade.

      Most people downloading from BBS's will be downloading
precompressed files (this includes .GIF files which are com-
pressed files).  If you try and use your modem's compression you
will only slow your download.

      Yes, I know that V.42bis was designed to minimize the impact
of precompressed files on throughput.  Minimize yes, eliminate
no.  We want max speed here.  So the 5-20% that we lose is
significant.  For example, with V.42bis compression on I get
downloads in the range of 1650-1690 cps.  With no compression
these exact same downloads over the exact same phone links give a
range of 1700-1740 (or higher in rare cases).

      The chart on page A-9 of the HST manual (A-2 in the older
manuals) gives the maximum cps you can expect at various link
rates.  Note that they list 1700 has the top speed to be had on
.ARC or Random 8-bit binary files.  Ho ho!  Guess V.42bis is not
all it's cracked up to be eh?  Right from the manufacturers own
manual.  The older manuals used to list speeds without compres-
sion.  With the &K0 setting you are permitting error control up
to MNP level 4 but disabling MNP 5 and V.42bis compression.  The
maximum you should be able to get is 1740 cps (this is documented
in the older manuals).  Rates higher than this do occasionally
happen but in 95% of the cases are the result of errors in the
rate calculations of the download protocol/program.  There is
math you can do to prove this maximum rate (as it is a topic of
much argument amongst so-called professionals).

      Now, I know your eyes made it to the 3840 cps figure and
saying, "Hey, I want to go that fast!"  Well, you are...actually
you can even go much faster.  How?  Well, don't forget, you are
receiving precompressed data that was compressed based on the
entire files' contents not just a 1024-2048 byte chunk the modem
uses.  Say you had a 100,000 byte text file that was only 25,000
bytes when .ZIPed.  If you downloaded it at 1720 cps your actual
transfer rate, based on the real number of bytes received, is
6880 cps!  This is not unusual for an assembler or Compiler
listing sent this way.  I've seen transfers hit over 8000 cps in
real bytes received.

      Back to the point.  Do NOT use compression on your HST.  Up
and Download compressed files instead.  There is NEVER a case
where a .ZIP or .GIF file (and most others) will transfer faster
with compression on then with it off.  I take any wager on this
because I'm sick of hearing others get it wrong.  Put your money
where your mouth is!

      "&L0"
      =====
      This set's leased line operation or not.  0 if not, 1 if.

      "&M4"
      =====
      This setups error control modes and Synchronous options.
We'll ignore the synchronous options because 99% of PC BBS's
don't use it and the IBM PC doesn't support it (normally).  &M4
says "use error correction, if the other side has got it, other-
wise just connect."  This is the most flexible mode.  There are
many types of error correction your HST uses: MNP 1-4, HST (there
is both a HST link protocol and a HST error correction protocol),
LAPM and V.42.  V.32 is a link protocol and has nothing to do
with error correction.  V.42bis is a compression protocol and has
nothing to do with error control or link protocol.  For example,
your HST could link at 14,400 bps using HST link protocol, any of
the error correction types and V.42bis compression.  Use the &A3
command if you'd like to see what your modem is using each call.

      "&N0"
      =====
      This tells the modem to negotiate the highest possible link
rate with the modem AND to fallback if there is significant line
noise and fallforward when things improve again, if they do.  If
you were to use &N8 (to force at 14.4K connection for example)
you would be disabling fallback/fallforward capability.

      "P0"
      ====
      This is the pulse dialing make/break ratio and &P0 is for
the U.S. and Canada.

      "&R2" and "&S1"
      ===============
      These two settings, duplicated on DIP switches 6 and 1,
control RTS flow control and DSR operation.  &R2 tells the modem
to only sent data to your serial port when your computer says it
is ready.  This helps prevent overruns and is VERY important if
your are multitasking or have a slow computer.  &S1 tells the
computer when the modem is ready for interaction and when the
call is disconnected.  The importance of the &R2 setting cannot
be overstated.  USE THIS SETTING if you intend to handle 1740 cps
downloads.

      "&T5"
      =====
      This is a technical test setting with nothing to do with
speed.  It means: Deny Digital Loop Back.  Don't worry about it.

      "&X0" and "&Y1"
      ===============
      Two technical settings which have nothing to do with speed.
&X is for synchronous connections and &Y handles the break
signal.  Neither is used by PC's so I won't get into them.

      "%R0"
      =====
      Disable RCU link request - trust me, you don't need to know.

      That's all folks.  If you use these settings you WILL get
the most out of your HST and of this I'm certain.

      Before I part let me add just a little more information to
complete this document.  Now that your modem is working at top
speed you should make sure your getting the most out of your
download protocol.

      The fastest protocol is YModem-g.  Simple as that.  It
doesn't do anything fancy.  It just blasts information down the
line and assumes that your modem is taking care of error checking
so don't use it if you don't have a MNP ("/ARQ") connection.

      There are many other protocols but I'll also mention ZModem
and especially ZModem-90 (also known as MobyTurbo).  ZModem in
itself is fast.  Using the compression option is not useful for
the same reasons using &K1 or &K3 isn't.  ZModem-90 is an im-
provement in nearly the same way as V.42bis is an improvement
over MNP level 5 (&K3 over &K1 in HST lingo).  It is better at
handling precompressed files but still not the best.

      If you are using DSZ remember to include the "handshake on"
option on the command line.  Do NOT use software handshaking, it
will slow things down.  DSZ's "handshake on" activates hardware
flow control and makes DSZ as fast as it's going to get.

      To squeeze the last bit of speed outta DSZ, use the .EXE
version and/or include the following option on the command line:
"pB4096".  This increases the buffer size.  If you have the .EXE
version of DSZ, use "pB16384" instead for 16K blocks.  ZModem
users add: "z pL1024" after the previous to get the packet size
up to maximum right from the start.  These tips are worth a
couple of cps.

      Last thing:  If you communications program and/or download
protocol supports it USE a NS16550A(F)N UART chip.  DSZ supports
it and it will go a long way towards helping your downloads get
there intact.

      This file was typed out during a Diet Pepsi buzz in the
middle of the night so cut me some grammatical and formatting
slack.

      My Name is:   Alex Boge
      You can reach me on CompuServe at 72470,402.
      Or on Rusty & Edie's BBS (216) 726-3589 as "Drestin Black"
      Or you can call me anytime (except between 4 a.m. and noon)
any day at (313) 781-2124.

      Please let me know what you think of this file.  I would be
happy to write on other topics of which I have knowledge if
someone needs the info.  Give me a call or send me some e-mail if
there is some computer mystery you'd like cleared up.

August 18, 1990
Slight revision March 22, 1991

Comments

Popular posts from this blog

BOTTOM LIVE script

Fawlty Towers script for "A Touch of Class"