home *** CD-ROM | disk | FTP | other *** search
/ PC Open 18 / pcopen18_giallo.iso / Msdos / MODEMD / MDR7DOC.TXT < prev    next >
Encoding:
Text File  |  1997-10-01  |  198.9 KB  |  4,801 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.                     __________________________________________________
  9.                                           T H E 
  10.                                         M O D E M
  11.                                        D O C T O R
  12.                                     Version 7.0S / 7.0R
  13.                   Hank Volpe copyright 1989,1990,1991,1992,1993,1994, 1996
  14.                                       P.O. Box 43214
  15.                                     Baltimore MD 21236      
  16.                     __________________________________________________
  17.  
  18.  
  19.      What's New  . . . . . . . . . . . . . . . . . . . . . . . . .    Page 4
  20.  
  21.      Forward . . . . . . . . . . . . . . . . . . . . . . . . . . .    Page 5
  22.  
  23.      Section 1. Introduction . . . . . . . . . . . . . . . . . . .    Page 7
  24.  
  25.      Section 2. Starting MDR . . . . . . . . . . . . . . . . . . .    Page 9
  26.           The /B switch  . . . . . . . . . . . . . . . . . . . . .   Page 10
  27.           The /D Switch  . . . . . . . . . . . . . . . . . . . . .   Page 10
  28.           The /E switch  . . . . . . . . . . . . . . . . . . . . .   Page 10
  29.           The /Q switch  . . . . . . . . . . . . . . . . . . . . .   Page 10
  30.           The /S switch  . . . . . . . . . . . . . . . . . . . . .   Page 11
  31.           The /X switch  . . . . . . . . . . . . . . . . . . . . .   Page 11
  32.           The /F switch  . . . . . . . . . . . . . . . . . . . . .   Page 11
  33.  
  34.      Section 3. First Time Setup . . . . . . . . . . . . . . . . .   Page 12
  35.           A. Test Modem/ Uart      . . . . . . . . . . . . . . . .   Page 14
  36.           B. Uart Tests  . . . . . . . . . . . . . . . . . . . . .   Page 17
  37.           C. Return to main menu . . . . . . . . . . . . . . . . .   Page 18
  38.  
  39.      Section 4.0 The Main Menu . . . . . . . . . . . . . . . . . .   Page 18
  40.           4.01 Hot-Key selection   . . . . . . . . . . . . . . . .   Page 18
  41.                ALT-F . . . . . . . . . . . . . . . . . . . . . . .   Page 19
  42.                ALT-T . . . . . . . . . . . . . . . . . . . . . . .   Page 19
  43.                ALT-H . . . . . . . . . . . . . . . . . . . . . . .   Page 19
  44.           4.1 Login In Comm ports  . . . . . . . . . . . . . . . .   Page 19
  45.           4.11 What do IRQ's and COMM Ports do ? . . . . . . . . .   Page 20
  46.           4.12 Port assignments and their meaning  . . . . . . . .   Page 20
  47.           4.13 Testing defective Ports   . . . . . . . . . . . . .   Page 22
  48.           4.2 Regs       . . . . . . . . . . . . . . . . . . . . .   Page 23
  49.                Line Control Register . . . . . . . . . . . . . . .   Page 24
  50.                Line Status Register  . . . . . . . . . . . . . . .   Page 25
  51.                Modem Control Register  . . . . . . . . . . . . . .   Page 26
  52.                Modem Status Register . . . . . . . . . . . . . . .   Page 27
  53.                Interrupt ID Register . . . . . . . . . . . . . . .   Page 28
  54.                Interrupt Enable Register . . . . . . . . . . . . .   Page 30
  55.                Interrupt Mask Register . . . . . . . . . . . . . .   Page 31
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  71.  
  72.  
  73.                Interrupt Mask Register . . . . . . . . . . . . . .   Page 31
  74.           4.30 Handshaking tests . . . . . . . . . . . . . . . . .   Page 32
  75.           4.30A S-Register Displays  . . . . . . . . . . . . . . .   Page 33
  76.           4.31 Carrier Tests   . . . . . . . . . . . . . . . . . .   Page 34
  77.           4.31 Modem Driver Modules  . . . . . . . . . . . . . . .   Page 34
  78.           4.32 Types of Carrier Tests  . . . . . . . . . . . . . .   Page 36
  79.           4.33 AT Instruction Set Tests  . . . . . . . . . . . . .   Page 36
  80.           4.34 Uart or Dumb Modem Tests  . . . . . . . . . . . . .   Page 37
  81.           4.35 Error Messages  . . . . . . . . . . . . . . . . . .   Page 38
  82.           4.36 IRQ Failures  . . . . . . . . . . . . . . . . . . .   Page 39
  83.           4.38 Burst Mode Tests  . . . . . . . . . . . . . . . . .   Page 39
  84.           4.4 Loopback Tests . . . . . . . . . . . . . . . . . . .   Page 41
  85.           4.41 Loopback Test Error messages  . . . . . . . . . . .   Page 43
  86.  
  87.      4.42 Burst Mode Tests . . . . . . . . . . . . . . . . . . . .   Page 43
  88.  
  89.      4.5 Options Mode  . . . . . . . . . . . . . . . . . . . . . .   Page 45
  90.           4.51 Interactive Mode  . . . . . . . . . . . . . . . . .   Page 45
  91.                ALT-B . . . . . . . . . . . . . . . . . . . . . . .   Page 45
  92.                ALT-C . . . . . . . . . . . . . . . . . . . . . . .   Page 45
  93.                ALT-N . . . . . . . . . . . . . . . . . . . . . . .   Page 45
  94.                ALT-R . . . . . . . . . . . . . . . . . . . . . . .   Page 45
  95.                ALT-H . . . . . . . . . . . . . . . . . . . . . . .   Page 46
  96.                ALT-X . . . . . . . . . . . . . . . . . . . . . . .   Page 46
  97.           4.51A Testing for Interrupt Latency  . . . . . . . . . .   Page 46
  98.           4.51B View Fax Mode Settings . . . . . . . . . . . . . .   Page 47
  99.           4.52 View Current Statistics . . . . . . . . . . . . . .   Page 47
  100.           4.53 Print Current Statistics  . . . . . . . . . . . . .   Page 47
  101.           4.54 Reset Current Statistics  . . . . . . . . . . . . .   Page 47
  102.           4.55 Generate MDRD Windows File  . . . . . . . . . . . .   Page 48
  103.           4.6 Setup Mode . . . . . . . . . . . . . . . . . . . . .   Page 49
  104.                Mdr Color Selection Screen  . . . . . . . . . . . .   Page 49
  105.           4.7 Exit Program . . . . . . . . . . . . . . . . . . . .   Page 50
  106.  
  107.      5.0 Error Messages and their Meanings . . . . . . . . . . . .   Page 51
  108.           General Program Errors or Warnings . . . . . . . . . . .   Page 51
  109.           Setup Mode Diagnostics . . . . . . . . . . . . . . . . .   Page 52
  110.           Uart diagnostics . . . . . . . . . . . . . . . . . . . .   Page 56
  111.           Report Generator Messages  . . . . . . . . . . . . . . .   Page 57
  112.           Static DTR/DSR   RTS/CTS . . . . . . . . . . . . . . . .   Page 57
  113.           Carrier and Dynamic tests  . . . . . . . . . . . . . . .   Page 58
  114.           General program warnings . . . . . . . . . . . . . . . .   Page 60
  115.  
  116.  
  117.                                       Page 2
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  133.  
  134.  
  135.      Section 6. Special Modes and Information  . . . . . . . . . .   Page 64
  136.           6.1 Using Modem Drivers  . . . . . . . . . . . . . . . .   Page 64
  137.                6.11 External Modem Drivers . . . . . . . . . . . .   Page 65
  138.           6.2 Using the Command Line Mode switch /S  . . . . . . .   Page 65
  139.           6.3 Using the Hot-Keys   . . . . . . . . . . . . . . . .   Page 67
  140.                ALT-B Change Baud rate  . . . . . . . . . . . . . .   Page 67
  141.                ALT-C Clear Screen  . . . . . . . . . . . . . . . .   Page 68
  142.                ALT-F Force Microprocessor  . . . . . . . . . . . .   Page 68
  143.                ALT-H Help  . . . . . . . . . . . . . . . . . . . .   Page 68
  144.                ALT-R Register Display  . . . . . . . . . . . . . .   Page 68
  145.                ALT-X Exit Mode . . . . . . . . . . . . . . . . . .   Page 68
  146.                Control -Break  . . . . . . . . . . . . . . . . . .   Page 68
  147.           6.4 Logging in Defective Ports   . . . . . . . . . . . .   Page 69
  148.           6.5 What tests cannot Do . . . . . . . . . . . . . . . .   Page 69
  149.           6.6 Quirks with Some Modems  . . . . . . . . . . . . . .   Page 70
  150.           6.7 Buffered vs Direct Connect Modems  . . . . . . . . .   Page 71
  151.           6.8 Using Digiboard Serial Ports . . . . . . . . . . . .   Page 72
  152.           6.9 Running Modem Doctor under Windows 3.1 . . . . . . .   Page 74
  153.           6.91 Modem Doctor for Windows  . . . . . . . . . . . . .   Page 74
  154.           6.92 Running Modem Doctor on Networks  . . . . . . . . .   Page 75
  155.  
  156.      Section 7. Benefits of Registration . . . . . . . . . . . . .   Page 75
  157.  
  158.      Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . .   Page 76
  159.  
  160.      Disclaimer  . . . . . . . . . . . . . . . . . . . . . . . . .   Page 76
  161.  
  162.      Modem Doctor History
  163.      . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   Page 77
  164.  
  165.  
  166.      All of  the documentation  text contained in  this file  is copyrighted
  167.      1989-1994 by  Hank Volpe. This  file is the technical  reference manual
  168.      that accompanies the Modem Doctor. This manual has been written for the
  169.      expert user who  would like to  have background information on  how the
  170.      Modem  Doctor conducts  its various  tests. It  also catalogs  the many
  171.      error messages and their meanings,  explains some of the mnemonics used
  172.      in testing, and  contains a brief history of the  different versions of
  173.      the  program.  Distribution  of  this text  without  the  Modem  Doctor
  174.      shareware version and its support files is prohibited by the author.
  175.  
  176.  
  177.  
  178.  
  179.                                       Page 3
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  195.  
  196.  
  197.  
  198.                       -------------------------------------------
  199.                          What's New in Modem Doctor Version 7.0
  200.                       -------------------------------------------
  201.  
  202.      For  those of you familiar  with Modem Doctor, here  is a brief look at
  203.      the improved and added features of version 7. If you are new to Modem
  204.      Doctor, take a look at the users manual file (MDRFIRST.TXT) that
  205.      accompanies your Modem Doctor package.
  206.  
  207.       1) Adds Modem "SNOOP" feature that detects active devices attached 
  208.          to your serial port.
  209.       2) Generates a Windows-type .INI file (MDRD.INI) which can be used
  210.          stand alone or together with Modem Doctor for Windows. 
  211.       3) Improved comm buffer communication routines. Handles modems that
  212.           send NULL characters for delays
  213.       4) Updated internal driver table now supports modems with speeds
  214.           up to 115.2kbps.
  215.  
  216.      In addition to these new features, existing commands have been enhanced
  217.      or   rewritten  to  accommodate  the  changing  technical  features  of
  218.      contemporary hardware.
  219.  
  220.       1) Improves 16550AFN tests. Buffers are tested 14 levels deep (instead
  221.          of 8) in both normal and new "burst mode" tests.
  222.       3) Tests for FAX modems, indicates Fax Group and Class.
  223.       4) Increase Baud Rate to 115200 in registered version.
  224.       5) Diagnostic Toggle mode for DTR and RTS signals, helpful in finding
  225.           bad cables or missing signals in cables.
  226.       6) Burst and Signature Rate Tests for Analog loop and Carrier.
  227.       7) Support for DIGIBOARD Comm ports via the Digiboard Driver.
  228.       8) Improve FOSSIL throughput routines.
  229.       9) Detects AT, PS-2 and Dual Bus Computers, Supports Dual 8259 PIC's.
  230.      10) Support for Digiboard Intelligent Serial ports that use Digiboard's
  231.          TSR comm port driver. Modem Doctor can test and support up to 4
  232.          boards with a maximum of 16 serial ports on each board.
  233.      11) Manual Login feature active in both shareware and registered
  234.          versions.
  235.      12) New /E switch to accommodate older display adapters (IBM 8541's)
  236.          that use Com4's address as a video display adapter address.
  237.      13) Improved interrupt stack routines for PS/2 machines.
  238.      14) Support for 33.6kbps modems.
  239.      15) Improved uart hardware I/O routines.
  240.  
  241.                                       Page 4
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  257.  
  258.  
  259.      16) Default startup mode uses polled TX operations. Some uarts in
  260.          inexpensive modems have a well-know defect detected by Modem Doctor
  261.          and other communication program authors that cause transmit
  262.          interrupt problems. You can change this selection with the ALT-T
  263.          command at any time.
  264.      17) Accommodations for BOCA modems with non-standard uarts. The Line
  265.          Status registers of most uarts are meant to be read only except for
  266.          bit 1. In the BOCA uarts, all bits are read/write, causing
  267.          communication lockups. Uart routines in Modem Doctor have been
  268.          changed to work with this problem.
  269.  
  270.      Thanks to many fine people that participated in the beta testing, Modem
  271.      Doctor is a better program today than in any previous version. To these
  272.      people go  my thanks  for helping  improve the  program and  make me  a
  273.      better programmer.
  274.  
  275.      Forward
  276.      -------
  277.      Welcome to the Modem Doctor.  This documentation along with the program
  278.      is a good source  of information about how Uarts and  Serial Ports work
  279.      with modems in your Personal Computer.
  280.               
  281.      There are two versions of the Modem Doctor;  The shareware version 7.0S
  282.      and the registered Version 7.0R. There are some differences between the
  283.      two.   Both   however  are   full-functioned  diagnostics   tools.  The
  284.      differences between the  two are as follows;
  285.               
  286.               Version 7.0S supports speeds to 2400 bps
  287.               Version 7.0R supports speeds to 115,200 bps
  288.               Version 7.0S does not include the Digital or the Analog 
  289.                 Loopback testing, or any of the dynamic handshaking tests 
  290.                 supported in version 7.0R, or the /s or /x  command-line 
  291.                 modes of operation.
  292.  
  293.      The  remaining 65+  tests of your  modem and  uart system  hardware are
  294.      fully functional. Although many people register for the higher DTE baud
  295.      rates,the  shareware version  of Modem  Doctor  is just  as capable  at
  296.      detecting your problems  as the registered  version. The higher  speeds
  297.      and uart tests serve as incentives for you to register your copy. 
  298.      Modem Doctor  has been featured  in many reviews  and included  in many
  299.      technical manuals. You can find background information in; 
  300.  
  301.  
  302.  
  303.                                       Page 5
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  319.  
  320.  
  321.  
  322.             Killer PC Utilities                     QUE
  323.             Upgrading and Repairing PC's            QUE
  324.             Modems Made Easy                        Bantam
  325.             PC-Secrets                              IDG Books
  326.             Dos 6.0 Powertools                      Bantam
  327.  
  328.      Reviews of early versions of Modem Doctor can be found in many national
  329.      computer columns and also in many publications. The two best known are
  330.      PC-World and the German weekly "Der Speigel". 
  331.  
  332.      The best way to find out about Modem Doctor and Modem Doctor support 
  333.      is our BBS. We're up and running 24hrs a day at 410-256-3631. There are
  334.      hundreds  of hard-to-find communication  utilities and free  advice for
  335.      those who  call. The BBS  is free to  all who  call, no fees  or upload
  336.      requirements. The  BBS, and improvement  to Modem Doctor  are supported
  337.      totally by those who register. I sincerely wish Modem Doctor could be a
  338.      full time occupation,  but the reality is that Modem Doctor is a labor-
  339.      of-love. This is why I appreciate your support of the program. It makes
  340.      communication problems simpler for all  who are just setting forth into
  341.      Cyberspace.  This  documentation  covers  both  versions,  however  the
  342.      feature differences above are provided for your  reference. This manual
  343.      is  provided as a  technical reference for advanced  users or for those
  344.      wishing to  get more  background information on  tests. For  first time
  345.      users  I would  suggest reading  the Getting  started Manual  text file
  346.      MDR7FST.TXT, which is a  little more basic in its approach.  If you are
  347.      using the  shareware version and  wish to  order, please use  the Order
  348.      form  included  with  this  package  or  see  Section  7,  Benefits  of
  349.      registration  at the end of this  documentation. You can always get the
  350.      latest version of Modem Doctor from the Modem Doctor BBS (410-256-3631,
  351.      24 hrs, speeds to 28.8kbps). 
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.                                       Page 6
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  381.  
  382.  
  383.      Section 1. Introduction - 
  384.      ------------------------- 
  385.      The Modem  Doctor is  a professional diagnostic  tool designed  to work
  386.      with  IBM-PC's and  compatibles. There  are two  versions of  the Modem
  387.      Doctor,  the  shareware   version  and  the  registered   version.  The
  388.      registered  version of the  Modem Doctor contains  complete diagnostics
  389.      for  8250-B,  8250-A,  16450,16550, 16550A(x),  and  compatible  Uarts,
  390.      RS-232  data lines,  and carrier  tests.  Some of  the many  diagnostic
  391.      features of the registered version are;            
  392.       **  Support for COM 1 through COM 8 using system IRQ's 2,3,4,5 or 7.
  393.       **  Baud Rates from 300 to 115200 bps
  394.       **  Support for Courier HST/Dual Standard/V.32 Modems [+],
  395.           US Robotics Sportster, V.34 28.8kbps modems,
  396.           Hayes 1200, 2400, Ultra and V9600 series Modems [+*],
  397.           Hayes 28.8kbps Optima modems, ZyXEL E, E+, Practical Peripherals, 
  398.           Intel, and Sierra Semiconductor modems. A Generic Driver 
  399.           is provided for all others.
  400.       **  Auto-detection of modems that use &T0 (CCITT V.54) diagnostics
  401.       **  Auto log-in of COMM ports 1 - 4 to DOS for use by other programs.
  402.       **  Manual log-in of up to 8 COMM ports for non-standard hardware,
  403.           including those with defective Uarts (on manual selection). 
  404.       **  On-screen display of all 8250 /16450/ 16550 Uart registers.
  405.       **  On-screen display of modem S-Registers.
  406.       **  Full Diagnostic tests of Uart and RS-232 Channels including;
  407.             -- ALL Uart registers.
  408.             -- ALL RS-232 handshaking Signals.
  409.             -- 8259 Interrupt Controller mask registers 
  410.                including dual-pic environments.
  411.             -- Digital loopback Uart tests including chips with Tri-stated 
  412.                OUT2 signals.
  413.             -- Analog loopback data tests.
  414.        **  Full diagnostic checks of "AT" instruction set modems;
  415.             -- Carrier tests on both originate and answer frequencies.
  416.             -- Carrier test interface for "dumb" modems or data channels.   
  417.             -- Burst mode tests that stress modulation requirements and
  418.                measure system throughput.
  419.             -- Modem microprocessor command channel diagnostics.
  420.             -- Support for high speed modems.           
  421.             -- Support for modems that use the alternate &T0 self test mode.
  422.             -- Dynamic simulated on-line testing of RTS/CTS and XON/XOFF 
  423.                handshaking.
  424.             -- Static DTR/DSR and RTS/CTS uart handshaking tests.
  425.             -- Ability to display any S-Register pairs
  426.  
  427.                                       Page 7
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  443.  
  444.  
  445.        **  Interactive Mode with 16K communications buffer for;    
  446.            -- TTY mode interactive communications over serial port or modem 
  447.                while on-line.
  448.            -- Interrupt latency test, you can use this to determine if your
  449.               display adapter is too slow for your high-speed modem.
  450.            -- Custom designed tests...help menu included.
  451.            -- On-line "Hot-key" viewing of 8250 Uart registers.
  452.        **  Hot-Keys for selecting the baud rate, to force a modem
  453.               microprocessor test mode, and to enable/disable transmitter
  454.               driven interrupts.
  455.        **  User Selection of modem drivers. Like printer drivers, these
  456.               software modules add more selections and more test capability
  457.               to The Modem Doctor. 
  458.        **  Ability to use external modem drivers. External modem drivers
  459.               make it possible to add special modems that might not use
  460.               standard AT conventions to the Modem Doctor without you having
  461.               to update to a new version of the program.
  462.        **  Built in report generator that displays the results of all tests
  463.               run on all serial ports and modems. Report can be printed at
  464.               any time and reset at any time by the user. 
  465.        **  Status bar that continuously displays the port, speed,
  466.               microprocessor status, Transmitter Interrupt enable status
  467.               and modem driver selections.
  468.        **  User defined Colors for all screens
  469.        **  Compatibility with mouse drivers. Mouse drivers also properly
  470.                enabled after exiting Modem Doctor.
  471.        **  Command Line Mode interface for setting up a modem to an
  472.                initialization string contained in a user created file;
  473.           -- A small text file contains the port (and optional address), the
  474.             speed, and the string to send to the modem. Any text editor can
  475.             create the file at any time!
  476.        **  Automatic detection of incorrect Com1 and Com2 port assignments,
  477.            IRQ assignment errors, missing IRQ signals, and missing handshake
  478.            signals.
  479.  
  480.      The Modem Doctor and all of its documentation is copyrighted by Hank
  481.      Volpe. The shareware version of this program may be distributed on
  482.      not charged for its duplication or acquisition (except for BBS systems
  483.      that charge a user fee for system access). 
  484.  
  485.      Important for Shareware Distributors. Like version 6.0, version
  486.      7.0 can be freely distributed  via these channels. The only requirement
  487.      that  I  absolutely insist  upon is  that you  mail us  a copy  of your
  488.  
  489.                                       Page 8
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  505.  
  506.  
  507.      catalog for  our files and that you encourage  users of your service to
  508.      register this and all other shareware that you distribute.
  509.  
  510.      Under no conditions  can anyone accept registration fees  for the Modem
  511.      Doctor but  Hank Volpe or agents  authorized for resale by  Hank Volpe.
  512.      The Modem Doctor is distributed on as "as-is" basis, with no warranties
  513.      for  usefulness  or suitability  expressed  or  implied. Users  of  the
  514.      shareware version are granted a limited license to use this program for
  515.      a trial  period only. Please  let your conscience  be your guide  as to
  516.      what you believe has been a fair trial period, for without  the support
  517.      of users who have registered, the Modem Doctor would not be the product
  518.      that it is today.
  519.  
  520.      The Modem Doctor is  a very flexible package for both  the new user and
  521.      for the experienced technician. The focus of this manual is to give you
  522.      a technical reference regarding how the Modem Doctor works, what is the
  523.      meaning of error messages you may encounter, and how the tests are
  524.      constructed to operate between your PC and your modem. First time users
  525.      or those unfamiliar with how the Modem Doctor operates should read  the
  526.      file  MDR7FST.TXT. MDR7FST  explains how  to  start and  use the  Modem
  527.      Doctor, how the  pulldowns operate, and how to use the menu and control
  528.      system.      
  529.  
  530.      Section 2. Starting MDR     
  531.      ------------------------     
  532.      The Modem Doctor  has been designed to  work with PC-Type  serial ports
  533.      and  "AT" instruction set (so called  Hayes compatible[++]) modems. The
  534.      Modem Doctor requires at least 1 serial port to operate. MDR is written
  535.      to  run under  MS  or PC  DOS 2.2  or higher,  and  will work  with any
  536.      standard display adaptor  in normal text mode. The  program requires at
  537.      least 200K of program memory space. 
  538.  
  539.      When MDR is started, it will use your current text mode. If you have
  540.      created a custom color file (see Options mode), your screen colors will
  541.      be displayed  as you  selected  them. If  not, default  colors will  be
  542.      loaded depending  on the  mode you  are  currently in  (Color or  Black
  543.      /White). Modem Doctor  starts just like any other program. From the dos
  544.      prompt, type MDR.  There are however several command  line switches you
  545.      might need to use from time to time.
  546.  
  547.  
  548.  
  549.  
  550.  
  551.                                       Page 9
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  567.  
  568.  
  569.      The /B switch
  570.      -------------
  571.      Code  has  been  included to  work  with  hardware-incompatible display
  572.      adapters as long as they are at least IBM-PC Bios compatible.  For most
  573.      computers, this  is not necessary  and will slow down  screen displays,
  574.      plus it will change the appearance of the input windows. The reason for
  575.      using this switch is (for example), if you wish to  route the output of
  576.      the program through  a voice synthesizer or operate  it under a program
  577.      that requires all screen writes to go through your Bios. If you wish to
  578.      use this bios  compatible mode instead of direct  display writes, start
  579.      the program using the Bios switch ;   MDR /B 
  580.  
  581.      The /D Switch
  582.      --------------
  583.      Starting MDR  with this  switch active  enables  support for  Digiboard
  584.      intelligent serial ports  (ComXi series) using Digiboard's  TSR support
  585.      driver. Support  includes many  diagnostic  and configuration  options.
  586.      Support is  included for  4 boards simultaneously  containing up  to 16
  587.      serial ports on  each board. See the section  entitled "Using Digiboard
  588.      Serial Ports".
  589.  
  590.      The /E switch
  591.      --------------
  592.      Certain  video adapters, mainly those attempting compatibility with IBM
  593.      8541 display adapters, use an address that is identical to the industry
  594.      standard address for Com4. The /E switch allows Modem Doctor to operate
  595.      on these machines. To start in this manner type; MDR /E
  596.  
  597.      The /Q switch
  598.      -------------
  599.      Starting in version 5.x tests were included to verify the accuracy of
  600.      IRQ settings. However this self-testing might not be desirable in some
  601.      computer environments. The  /Q switch makes it possible  to defeat this
  602.      self  test of  IRQ  assignments.  Using /Q,  Modem  Doctor will  report
  603.      "Standard Assignments" and not  verify the proper configuration  of IRQ
  604.      settings.  Use this  switch  if  you experience  a  "freeze-up" of  the
  605.      program  at the  initial sign-on  screen.  To bypass  IRQ verification,
  606.      start  the program with the IRQ switch; MDR  /Q.  If your computer is a
  607.      PS/2, Modem Doctor will now detect  this problem and switch in code  to
  608.      accommodate this peculiarity without the need for the /Q  switch.  NOTE
  609.      - IF  You wish to run Modem  Doctor under Windows, you  need to include
  610.      this  /Q switch  in  your  .PIF file  command  line. For  Windows  comm
  611.      problems, use Modem Doctor for Windows.     
  612.  
  613.                                      Page 10
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  629.  
  630.  
  631.      The /S switch
  632.      --------------
  633.      Registered versions 4.0 and  higher also can be run  to quickly program
  634.      and setup a Modem.  To use this mode  start the program with  the setup
  635.      switch ; MDR /S (see Section 3). 
  636.  
  637.      The /X switch
  638.      --------------
  639.      Registered versions 4.0 and higher have the ability to swap the
  640.      communication  pointers for COM1 and COM2 in  memory. To use this mode,
  641.      type MDR /X. Com1's  pointer will be swapped to COM2  (and visa versa).
  642.      You can specify any one of the 4 comm ports used by dos by typing; 
  643.      MDR /X [port] [port], where each [port] is a different comm port..ie to
  644.      swap Com1 and Com3, type MDR /X  1 3. MDR /X without port numbers flips
  645.      com1  and com2  by default.  This condition  is not permanent.  To flip
  646.      these again, just type MDR /X  or if you used comm numbers, type MDR /X
  647.      [port]  [port].  The  reason  for  this  command  line  switch  is  for
  648.      convenience and  also to make  it easier for  technicians to  swap port
  649.      assignments without  having to  change port jumpers.  This mode  is not
  650.      generally  useful  except when  you  believe  you  have  addresses  set
  651.      incorrectly or if you wish to use a serial device that is normally Com2
  652.      as Com1 (such as a serial printer) from a high-level language that does
  653.      not support 2 comm ports.  These changes are temporary. Permanent fixes
  654.      can only be  done in these cases if you physically change the addresses
  655.      on your serial card.
  656.  
  657.      The /F switch
  658.      -------------
  659.      Normally,  Modem Doctor  and most  comm programs  directly  control the
  660.      hardware of your  computer. Uart registers, interrupt  controllers, and
  661.      system hooks  are all  involved. Another  way to perform  control in  a
  662.      machine-independent way is by using kernels. Kernels are small programs
  663.      that reside  as TSR's (Terminate  Stay Resident) in your  computer. You
  664.      can  instruct Modem Doctor  to operate in  this manner,  and instead of
  665.      assuming  complete  control over  your system,  Modem Doctor  will work
  666.      through system  kernels. X00  and BNU  are  two such  kernel or  FOSSIL
  667.      programs. If you use Modem Doctor in this manner, some uart programming
  668.      and error trapping  is not possible (because the FOSSIL  drivers do not
  669.      support function  calls to handle  all test conditions).  However, this
  670.      command can  be useful if  you wish to test  the proper operation  of a
  671.      FOSSIL  driver  in your  system.  Other  Int14  type kernels  are  also
  672.      supported. To start Modem Doctor in this mode, type MDR /F.
  673.  
  674.  
  675.                                      Page 11
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  691.  
  692.  
  693.  
  694.      Section 3. First Time Setup     
  695.      ---------------------------     
  696.      The first time you start the Modem Doctor, it will begin several system
  697.      checks. These checks are not repeated until you start the program over
  698.      again from the Dos prompt. First, the Modem Doctor checks to see what
  699.      hardware is available and reports its results to you. Displayed on the
  700.      bottom  line is  the  serial  number unique  to  each copy  (registered
  701.      version). If  incorrect  COMM  addresses  are detected  or  if  swapped
  702.      addresses are  detected, an  Alert-bar will be  displayed, warning  you
  703.      that a non-standard  assignment was detected, and you are  asked if you
  704.      wish to have this fixed for testing purposes only.    
  705.  
  706.      ┌───────────────────────── The Modem Doctor──────────────────────────┐
  707.      │                    Welcome to the Modem Doctor                     │
  708.      └────────────────────────────────────────────────────────────────────┘
  709.      ╒[ Modem / Uart Hardware Detection ]══════════════════════════════════╕
  710.      │ Port assignments  Base(hex)    Irq   Port Usage        MODEM        │
  711.      │ Com port 1   [ ]     3f8        4                                   │
  712.      │ Com port 2   [ ]     2f8        3    IRQ/MOUSE                      │
  713.      │ Com port 3   [ ]     3e8        4                      Modem On     │
  714.      │ Com port 4   [ ]     2e8        3    IRQ/MOUSE                      │
  715.      │ Com port 5   [ ]                                                    │
  716.      │ Com port 6   [ ]                                                    │
  717.      │ Com port 7   [ ]                                                    │
  718.      │ Com port 8   [ ]                                                    │
  719.      │   Bus type: AT Bus    Interrupt Levels: 15   HD uses DMA Ch3?: NO   │
  720.      │   Interrupt Status :  15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0         │
  721.      └─────────────────────────────────────────────────────────────────────┘
  722.  
  723.      ╔[  Serial Port Detection ]═══════════════════════════════════════════╗
  724.      ║                       Serial port detection                         ║
  725.      ║           Searching for other standard active Comm ports            ║
  726.      ║                                                                     ║
  727.      ║                          Total Comm ports  =2                       ║
  728.      ║                    PRESS ANY KEY TO START TESTING                   ║
  729.      ║                                                                     ║
  730.      ║                                                                     ║
  731.      ║                                                                     ║
  732.       ═════════════════════════════════════════════════════════════════════╝
  733.  
  734.  
  735.  
  736.  
  737.                                      Page 12
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  753.  
  754.  
  755.      Modem Doctor 7.0 uses a heads-up display  that shows you the Comm port 
  756.      assignment number, the base i/o address, and the interrupt line in use.
  757.      Unlike other  IRQ mapping  utilities, Modem  Doctor actually  creates a
  758.      system interrupt and traps its ID. Running under DOS, Modem Doctor will
  759.      always identify the correct IRQ line. In multi-tasking situations, this
  760.      test may  not be valid, which is  why a new window has  been created to
  761.      allow you to easily select any IRQ line you wish to use.
  762.  
  763.      Version 7.0 includes a new "SNOOP" feature that looks for active serial
  764.      ports. If a  modem is found with an  active CTS line, the  words "Modem
  765.      On" are  displayed under  "MODEM". Also, Modem  Doctor looks  for IRQ's
  766.      used  by a  serial mouse. If  one is  found, the words  "IRQ/MOUSE" are
  767.      displayed under "Port Usage". Port Usage also  will display information
  768.      about FOSSIL drivers as well (as explained later in this document).
  769.  
  770.      Modem Doctor  also identifies  the Computer  BUS type  in use  (PC, AT,
  771.      PS/2), the maximum number of  system hardware interrupts, the status of
  772.      DMA channel  3 (sometimes used  for Hard Drive access,   sometimes free
  773.      for use by  intelligent serial board DMA transfers),  and the status of
  774.      all interrupts (gray means inactive, white means active).
  775.         ╔[  Ports  ]═╗   ╔[  IRQ's  ]═╗  ╔[  Baud  ]══╗
  776.         ║ Use COM 1  ║   ║ Use IRQ 2  ║  ║   300 BPS  ║
  777.         ║ Use COM 2  ║   ║ Use IRQ 3  ║  ║  1200 BPS  ║
  778.         ║ Use COM 3  ║   ║ Use IRQ 4  ║  ║  2400 BPS  ║
  779.         ║ Use COM 4  ║   ║ Use IRQ 5  ║  ║  4800 BPS  ║ *               
  780.         ╚════════════╝   ║ Use IRQ 7  ║  ║  9600 BPS  ║ * 
  781.                          ║ Use IRQ 9  ║  ║ 19200 BPS  ║ *
  782.                          ║ Use IRQ10  ║  ║ 38400 BPS  ║ Registered Versions
  783.                          ║ Use IRQ11  ║  ║ 57600 BPS  ║ * only
  784.                          ║ Use IRQ12  ║  ║115200 BPS  ║ *                 
  785.                          ║ Use IRQ15  ║  ╚════════════╝  
  786.                          ╚════════════╝
  787.      Next, you are instructed to pick from  a list of valid Comm ports.  The
  788.      only ports that are listed are valid ports that MDR found when it first
  789.      started, or ports you logged in using the manual login mode. 
  790.      Use the  arrow keys to  find your selection,  and then press  return to
  791.      select.
  792.  
  793.      A window now opens showing you  your IRQ line choices. The sliding  bar
  794.      will pick the IRQ line Modem Doctor found valid during the first set of
  795.      tests. You  can change this to any IRQ line you wish. A note of caution
  796.      though, if you pick an incorrect IRQ line, the following tests will not
  797.      be valid.
  798.  
  799.                                      Page 13
  800.  
  801.  
  802.  
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.  
  814.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  815.  
  816.  
  817.      A window  now opens showing you valid Comm  port speeds. Select a speed
  818.      fromthis menu. Please note, don't select a speed faster than your modem
  819.      can  handle. The reason for faster speeds is so communication links can
  820.      also be tested.   Use  the arrow  keys and  press return  to make  your
  821.      selection.
  822.               
  823.      At this point you are in the options menu. If  you select "Test Modem",
  824.      a series of commands and tests will  be performed. Please check to make
  825.      sure  the modem  is  on line  and  running. If  you  select "Test  Uart
  826.      Hardware", only  the Uart will be tested. The  modem will not be setup.
  827.      This selection is useful only  if you wish to test an RS-232  line or a
  828.      "dumb" modem.Selection  3 aborts to  the main menu. (NOTE:  Version 5.0
  829.      and higher include "hot-keys" to force the Modem Doctor to  believe you
  830.      are using a modem with a microprocessor and for changing the baud rate.
  831.      Read Section 4 on the menu system for more details).       
  832.  
  833.      A. Test Modem/ Uart     
  834.        ---------------------
  835.      ╒[ Modem / Uart System Diagnostics ]══════════════════════════════════╕
  836.      │ Comm port /IRQ in use [ ] Port = 3  Address = 3E8  IRQ = 4          │
  837.      │ Int 14 interface      [ ] Inactive                                  │
  838.      │ Uart type             [ ] 16550AN/AF/AFN buffered Uart detected     │
  839.      │ Baud rate selected    [ ] 2400                                      │
  840.      │ Baud Rate reg test    [ ] Confirmed correct baud rate               │
  841.      │ Modem Microprocessor  [ ] Diagnostics passed                        │
  842.      │ Modem ID Type         [ ] 16800+ bps modem                          │
  843.      │ Modem Fax Ability     [ ] G3 EIA Class 2 Fax Capable                │
  844.      │ Modem Memory/Rom      [ ] Memory /Rom test passed                   │
  845.      └─────────────────────────────────────────────────────────────────────┘
  846.      ╒[ Diagnostic Dialog]═════════════════════════════════════════════════╕
  847.      │              Modem microprocessor command bus active                │
  848.      │ Modem ID reports a 16800 ZyXel U-1496 Series &T1  modem installed   │
  849.      │                    Modem uses EIA Fax Commands                      │
  850.      │                Modem microprocessor memory tests OK                 │
  851.      │            Modem microprocessor accepts setup commands              │
  852.      │                    Modem microprocessor ON-LINE                     │
  853.      │                Modem - uart status appears correct                  │
  854.      │                     Press any key to continue                       │
  855.      └─────────────────────────────────────────────────────────────────────┘
  856.  
  857.  
  858.      The preceding page shows you the results of a normal test with a modem.
  859.      The first  step tests  the uart  to modem  hardware. If any  connection
  860.  
  861.                                      Page 14
  862.  
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  877.  
  878.  
  879.      errors  are discovered, they  are reported to the  screen. If no errors
  880.      are detected, the Modem Doctor will check to see what type of uart is
  881.      installed. 
  882.  
  883.      There are differences between the different types of uarts, and
  884.      the Modem  Doctor uses this test to determine  how to test the uart and
  885.      what registers to display to the screen.  Next, the uart is set to  the
  886.      desired baud rate, and the uart speed  register is queried to make sure
  887.      it did set  up properly. Next, the  modem command bus is  tested and if
  888.      its  compatible, the  modem ID  information is  queried from  the modem
  889.      microprocessor. The Modem Doctor then  issues a command that forces the
  890.      modem to run a checksum of its ram or rom memory. If your modem returns
  891.      an OK, then the Modem Doctor assumes your modem passed properly.  If an
  892.      error is returned, you  will receive an error message  stating that the
  893.      modem  reported  a  rom/ram  check  failure.   If  your  modem  has fax
  894.      capabilities, Modem  Doctor attempts  to determine  is Group  (command)
  895.      capabilities. Finally, the modem is setup  for diagnostics. Note: These
  896.      setup strings do not overwrite any non-volatile storage. 
  897.  
  898.      If your modem setup properly, all the uart registers and the First 16
  899.      Modem S registers  are displayed.  This display is  not shown the  next
  900.      time you  log in a  Comm port unless  you press  the space bar.  If the
  901.      modem  does not respond  to certain parts of  the tests, error messages
  902.      are reported. 
  903.  
  904.                               Testing Modem Microprocessor
  905.                               ---------------------------- 
  906.                      Modem Microprocessor Command Mode Not Detected 
  907.                               Software Reset Initiated      
  908.               
  909.      This message  is displayed if the modem did  not respond the first time
  910.      for a query to its status. This could happen for any number of reasons,
  911.      including that the modem was still on-line and not in the command mode.
  912.      A  soft-reset  is  performed,  which  essentially  tries  to  wake  the
  913.      processor up. 
  914.  
  915.              No Response...resetting Modem Microprocessor ...attempt #1
  916.              No Response...resetting Modem Microprocessor ...attempt #2
  917.              No Response...resetting Modem Microprocessor ...attempt #3
  918.               
  919.      After 3 soft-resets, the Modem Doctor assumes that the modem is  jammed
  920.      and needs  a hardware reset. A hardware reset is the program equivalent
  921.      of  turning the modem on and  off again. This is  the only way to reset
  922.  
  923.                                      Page 15
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  939.  
  940.  
  941.      some  internal modems   that get  "jammed" when  the computer  is first
  942.      turned on. Clearing a "jam" usually takes no more than 2 attempts.   
  943.  
  944.  
  945.                    Trying Hardware reset of the Modem Microprocessor
  946.               
  947.      The Hardware reset is performed, and again the modem microprocessor is
  948.      strobed for its status.  
  949.               
  950.                              Software Reset Initiated
  951.               
  952.      After a hardware reset, a soft reset is performed again, attempting to
  953.      wake  the  processor up.  If  this fails,  the    following message  is
  954.      displayed; 
  955.               
  956.                    Modem Microprocessor Did Not Accept Setup Commands 
  957.                    Trying a Hardware reset of the Modem Microprocessor
  958.        
  959.  
  960.      After one more attempt at waking the modem up, the Modem Doctor assumes
  961.      that the modem is  not compatible  and based on the  status given it by
  962.      the Uart, it will report if the device is off or not connected.  
  963.               
  964.                WARNING..This unit does not have a Compatible Modem attached
  965.                WARNING..The Modem Device appears to be off or not connected
  966.  
  967.      The registers are now displayed for diagnostic tests, and a conclusion
  968.      based  on  the status  of the  registers is  displayed. There  are many
  969.      reasons  why the modem/uart could fail.  See the error code section for
  970.      details.  If the  Uart is fine,  but the  modem is not  compatible, the
  971.      program will tell you that the Uart hardware tests ok and  display this
  972.      in a window to the right of the register display.        
  973.  
  974.      Note: The reason for testing the modem command set so extensively is so
  975.      there can be no doubt about the modem accepting commands. You can force
  976.      The Modem Doctor to believe it has a modem with a compatible
  977.      microprocessor by  using the  hot-key Alt-F. See  Section 4  about Menu
  978.      system commands.
  979.         
  980.  
  981.  
  982.  
  983.  
  984.  
  985.                                      Page 16
  986.  
  987.  
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997.  
  998.  
  999.  
  1000.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1001.  
  1002.  
  1003.      B. Uart Tests     
  1004.      ---------------     
  1005.      The uart test is performed every time either the modem or the uart test
  1006.      is selected. Essentially,  the uart test programs all  of the registers
  1007.      of the uart  and looks to see that the correct  values have been placed
  1008.      in them. If  any one of the  registers fails to  set, the Modem  Doctor
  1009.      will display all of the registers and a diagnostic message. After that,
  1010.      it looks to see that an RS-232  loop is active. If not, it displays  an
  1011.      error message saying that the loop is either disconnected or a register
  1012.      in  the uart is  defective. If all  checks well, the  type of uart chip
  1013.      that is installed is  returned. The type of uart chip  is important for
  1014.      the  way the Modem  Doctor will test and  display the uart. Essentially
  1015.      there are 3 types it can detect;      
  1016.  
  1017.      8250-B
  1018.      This is the original uart installed in many PC's and serial port add-on
  1019.      cards.      
  1020.               
  1021.      16450/8250-A
  1022.      This is  an upgraded  uart that  fixes a  bug in  the interrupt  enable
  1023.      register of  the 8250-B and  also tri-stated the  OUT2 pin of  the chip
  1024.      during loopbacks.  It also adds  a scratch-pad register as  the highest
  1025.      register. This register is tested by the Modem Doctor but not displayed
  1026.      because it never  has what you  would consider as a  "correct" setting.
  1027.      The 16450 is    used primarily in 80286 (AT) systems.
  1028.  
  1029.      16550
  1030.      This chip is essentially a faster 16450. However, it cannot be  used in
  1031.      a  FIFO  buffering mode,  but it  does  allow for  a programmer  to use
  1032.      multiple DMA channels  and thus increase throughput on  an AT or higher
  1033.      class computer system.      
  1034.  
  1035.      16550A(x)
  1036.      This chip is a faster 16450 with a built in transmit and receive FIFO
  1037.      buffer. It also allows multiple DMA channel access. You should see this
  1038.      chip in your 80386, 80486, Pentium, or RISC type machine. You should 
  1039.      also consider installing this chip if you do any serious communications
  1040.      at 9600 bps or higher while you are multi-tasking. Whenever a 16450,
  1041.      16550 or 16550AN is displayed, different diagnostics and/or different 
  1042.      register mnemonics are displayed. The 16550AN's ability to enable 
  1043.      and disable FIFO mode is also tested. In any case and with any uart, 
  1044.      each register is checked for proper values. If anyone of them fail, 
  1045.      a window will open and display a possible cause for the problem. 
  1046.  
  1047.                                      Page 17
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1063.  
  1064.  
  1065.                         Preliminary Diagnostic Checks of Hardware 
  1066.                         ----------------------------------------- 
  1067.                                Testing Uart Hardware Only  
  1068.                                -------------------------- 
  1069.                              A 8250-B Uart has been detected 
  1070.                            Modem - Uart Status appears correct
  1071.               
  1072.      The first time through these tests, the registers will display for
  1073.      diagnostics. Unlike the modem tests, only the uart registers are
  1074.      displayed. From then on, if the test results are correct, you will be
  1075.      prompted if you wish  to have the registers displayed. If  a test fails
  1076.      at any time, you will always see the registers displayed along with an 
  1077.      appropriate diagnostic message.        
  1078.               
  1079.      C. Return to main menu     
  1080.      ----------------------     
  1081.      Selecting this returns you to the main  menu, this allows you to change
  1082.      an entry made in error without having to wait for the diagnostic checks
  1083.      to fail. In any event, after any of these tests have been run, you will
  1084.      then enter the Modem Doctor's Main Menu.
  1085.  
  1086.      Section 4.0 The Main Menu
  1087.      -------------------------
  1088.      The main  menu  consists of  a sliding  bar from  which  you make  your
  1089.      selections.  Using the  arrow keys  you slide  left or  right. Pressing
  1090.      ENTER selects a  feature. If the feature has a pulldown window, you use
  1091.      the up  or  down arrows  to navigate,  and then  ENTER  to select  that
  1092.      feature.
  1093.  
  1094.      4.01 Hot-Key selection 
  1095.      ----------------------  
  1096.      In addition to these menu selections, there are three hot-keys that are
  1097.      active at nearly  all times in the Modem Doctor.  The ALT-B combination
  1098.      can be used to  change the baud  rate from the  main menu, from  inside
  1099.      pulldowns and Manual  test section. A  window will pop-up  and you  can
  1100.      pick your  desired serial port speed. This can save  a lot of time when
  1101.      you  wish to test  a modem at  various speeds.  Using the Setup  / Test
  1102.      Modem & Uart  mode is  the safest  way (because it  verifies the  modem
  1103.      microprocessor  accepts  commands  properly  at  the  selected  speed),
  1104.      however if you  use the ALT-B command,  you will take a  short-cut that
  1105.      can help you when testing your modem. 
  1106.  
  1107.  
  1108.  
  1109.                                      Page 18
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1125.  
  1126.  
  1127.      The next hot-key is ALT-F,  or FORCE Micro on-line. Actually, there  is
  1128.      no "force" involved.  By pressing this  key, you make the  Modem Doctor
  1129.      believe there is  a AT Instruction set compatible  modem attached. This
  1130.      can be handy  for troubleshooting a modem that doesn't work properly at
  1131.      certain speeds  or under certain  conditions.   The Setup Test  Modem &
  1132.      Uart section will  not allow any  AT Instruction  set Carrier tests  on
  1133.      modems that  it cannot properly  setup. The ALT-F  combination bypasses
  1134.      this and allows such testing. When you press ALT-F, you will notice the
  1135.      Status Bar will say that  a modem microprocessor is on-line.   Starting
  1136.      with Version 4,  this key can be  operated as a toggle  between on-line
  1137.      and off-line. This key is active inside of any menu at any time.
  1138.  
  1139.      Another  hot-key is  ALT-T. It allows  you to  toggle how  Modem Doctor
  1140.      treats  the  transmission of characters.  Most times, interrupt  driven
  1141.      transmissions  are  used because  they  are  fast,  waste no  CPU  time
  1142.      looping,  and give the best  throughput. However, some early 8250 uarts
  1143.      cannot handle interrupt-driven transmits without errors. When you start
  1144.      Modem Doctor,  transmit-driven interrupts  are disabled.  If you  would
  1145.      like  to enable  and test  your  system for  transmit driven  interrupt
  1146.      capability,  press  ALT-T.  If  you  experience  errors  when  transmit
  1147.      interrupts are  active and your   errors go  away when this  feature is
  1148.      inactive, you either  have a uart  that  cannot handle interrupt-driven
  1149.      transmit routines, or your  system is  too slow to  process and support
  1150.      this feature.
  1151.  
  1152.      The last hot-key is the ALT-H for help. This key will give you varying
  1153.      levels of help. From the main menu, it gives a terse help just like
  1154.      pressing the down arrow key does. Inside of a pulldown, it gives you
  1155.      expanded help, just as selecting the appropriate help section of the
  1156.      pulldown also does.
  1157.  
  1158.      4.1 Login In Comm ports     
  1159.      -----------------------     
  1160.      When you select this menu, you are offered these choices               
  1161.        
  1162.  
  1163.      ╔[  Comm Port Login  ]═══════════╗
  1164.      ║ Let me Auto Detect COMM Ports  ║ <- Searches for all Comm ports
  1165.      ║ You Manually Enter COMM Ports  ║ <- You enter port addresses
  1166.      ║ Help with Auto login Commands  ║ <- Detailed help or ALT-H
  1167.      ║      Return To Main Menu       ║
  1168.      ╚════════════════════════════════╝                              
  1169.  
  1170.  
  1171.                                      Page 19
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1187.  
  1188.  
  1189.      Option 1 repeats what the Modem Doctor does when you first begin to run
  1190.      the program. Option 2 allows you to enter a "non" standard port address
  1191.      and assign one  of the two Interrupt lines to use with the Uart. Option
  1192.      3  gives you  an expanded,  on-line  help description  of these  tests.
  1193.      Option 4 returns to the main menu.      
  1194.  
  1195.  
  1196.  
  1197.  
  1198.      4.11 What do IRQ's and COMM Ports do ? 
  1199.      ---------------------------------------      
  1200.      Each time  a  character is  received by  a  modem, it  has  to get  the
  1201.      attention of the  computer by raising an interrupt  request line (IRQ).
  1202.      PC-type computers  have 8 of  these lines, AT-type  (ISA bus), MCA  and
  1203.      EISA computers  have at  least 16. The  8259 Interrupt  controller chip
  1204.      handles these  requests for  attention. By design,  COM1 uses  IRQ4 and
  1205.      COM2 uses IRQ3. IRQ7 is assigned to a printer, IRQ5 to the Hard Drives.
  1206.      It is possible to use COM1 and COM2 or COM3 and COM4 at the same  time,
  1207.      but  you cannot use  COM1 and COM3  or COM2 and  COM4 at  the same time
  1208.      because these  share IRQ lines.  If you  needed to use  3 or more  COMM
  1209.      ports at the same  time, you would  need to use  another IRQ line.  The
  1210.      best  bets are IRQ7  and IRQ5, because  they may be  available when you
  1211.      need  them. IRQ7 is  really only  needed by  programs that  use printer
  1212.      interrupts (background  type spoolers  for example).  IRQ5  is used  by
  1213.      fixed disks. It  may or may not  cause a conflict  if you use this  IRQ
  1214.      line with your  modem. PC type computers are quite limited because they
  1215.      only have 8 IRQ lines and most  are reserved. AT type computers have 16
  1216.      IRQ lines. 
  1217.  
  1218.      A good tip would be to consult your hardware manual to find out if  you
  1219.      can or can't use  these other IRQ's. However, if you do not need to use
  1220.      3  or more  COMM ports at  one time,  then it is  best to  stick to the
  1221.      reserved IRQ4 and IRQ3 for all of your activity. 
  1222.                      
  1223.      4.12 Port assignments and their meaning 
  1224.      ---------------------------------------  
  1225.      Like IRQ lines, certain port addresses  were reserved to work with  the
  1226.      PC's  external hardware  devices. Two  of  these were  reserved by  all
  1227.      manufacturers; 3F8 (HEX) and  2F8 (HEX).  Although only two  COMM ports
  1228.      were supported by the original  ROM-BIOS, there are two additional port
  1229.      memory locations  available for use by MS-DOS  and PC-DOS applications.
  1230.      These  reserved  port addresses  are  3E8  (HEX)  and 2E8  (HEX).  Most
  1231.      internal  modems come  with  these  4 ports  as  selections along  with
  1232.  
  1233.                                      Page 20
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1249.  
  1250.  
  1251.      several IRQ line combinations.  There is  a "quirk" in the way that the
  1252.      ROM-BIOS logs in these ports. If the  Power on self-tests (POST) do not
  1253.      find a 3F8 serial port but they do find a 2F8, then the 2F8 serial port
  1254.      is mistakenly  assigned to COM1. To add  to this, the reserved IRQ line
  1255.      for COM1 is IRQ4. But this serial Port of 2F8 is using COM2's  address,
  1256.      which means it needs IRQ3 instead of IRQ4. So, if you are trying to use
  1257.      Basic, Pascal,  or DOS for  COM1 operations, the  serial port  or modem
  1258.      will not be able  to work. The  general rule thus  is "No COM1  without
  1259.      COM2". 
  1260.  
  1261.      The Modem Doctor when it is run will detect this log-in problem and
  1262.      display an  "alert-bar"  with a  message to  you that  points out  this
  1263.      error. You can then elect to correct this for the purposes  of testing.
  1264.      Remember  though, you  can  only  fix  these addresses  permanently  by
  1265.      changing the settings  on your serial port  or internal modem.  You can
  1266.      run Modem Doctor  with the /X switch  to fix this problem at  boot time
  1267.      until you do change the address settings permanently. The addresses for
  1268.      PC's  are standardized in order for  communication programs to properly
  1269.      work. As stated above, the industry standards are;      
  1270.  
  1271.               COMM 1  3F8   COMM 2  2F8    COMM 3  3E8    COMM 4 2E8
  1272.               IRQ4          IRQ3           IRQ4           IRQ3      
  1273.  
  1274.               
  1275.               COMM 5  3F8   COMM 6  2F8    COMM 7  3E8    COMM 8  2E8
  1276.               IRQ7          IRQ7           IRQ5           IRQ5      
  1277.              
  1278.      The port  addresses for serial ports (1-4) are  held in a reserved area
  1279.      of  memory.  The "base  port"  of each  of these  uarts  is saved  in a
  1280.      distinct  area. When  you first  start  the Modem  Doctor, the  program
  1281.      checks  these locations  to see  if there  are  any Comm  ports already
  1282.      logged  in by Dos. If  not, a search is  conducted for the PC's default
  1283.      Comm 1  and Comm 2 port values and these  are logged in. Next, a search
  1284.      is  performed for  the other  industry standard  Comm ports.  Some PC's
  1285.      already log  these in,  however IBM-PC's and  those that  mimic exactly
  1286.      their ROM-BIOS routines do not log  in a COMM 3 or a COMM  4. The Modem
  1287.      doctor  does log these in, and as  a side benefit, these stay logged in
  1288.      until the next warm or  cold boot is   performed on your computer.  Why
  1289.      would  Dos  not  log  in  a port?  Well,  some  multi-tasking  programs
  1290.      overwrite this area to prevent "swapping" of communication programs and
  1291.      it is possible that they might not  be properly restored on exit. Next,
  1292.      a  search is made for  the custom comm  ports 5-8. These  ports are not
  1293.      held in DOS at all, but are held in program  memory by the Modem Doctor
  1294.  
  1295.                                      Page 21
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1311.  
  1312.  
  1313.      after a user logs the port in using the Manual log-in mode (see below).
  1314.      If one  of these  ports is  found, it will  be added  to the  comm port
  1315.      option menu for you to use when you test the modem.  The reason
  1316.      for  the custom  ports is  to  help users  who  are using  non-standard
  1317.      interrupt  lines (IRQ7,IRQ5).  Unlike the  Dos  logged-in ports,  these
  1318.      assignments disappear when the Modem Doctor is exited. The Modem Doctor
  1319.      follows the accepted arraignment of these comm Port /IRQ line pairings.
  1320.      However, you do have full control at  all times over all port addresses
  1321.      and IRQ assignments and can change them  using the Manual Login mode.  
  1322.      As far as the  2 Options presented by the  Login Mode, option 2 is  the
  1323.      only  real option available. Please use  it with caution. The only need
  1324.      for this  option is for logging in a comm port that does not use any of
  1325.      the  listed industry  standards as its  base port  address or  IRQ line
  1326.      assignments. Consult  your serial port  or Modem's user manual  to make
  1327.      sure you enter  the exact port address and select the correct Interrupt
  1328.      line to  use with it. Otherwise the Modem  Doctor will not recognize or
  1329.      be able to test any device hooked  to this port. Protection is included
  1330.      in this routine to keep someone from accidentally entering  a port that
  1331.      is used by  the system board, display adapters,  or fixed disk adaptor.
  1332.      Entering any of these values, or an error, will result in the display;
  1333.  
  1334.                       "WARNING...RESERVED port...RETRY ENTRY"      
  1335.  
  1336.      After running option 1 or 2 , you must tell the Modem Doctor which comm
  1337.      port you wish to use so that testing can begin. Pressing the ESCAPE key
  1338.      or pressing a left or right arrow key works the same as Option # 3 and
  1339.      returns you to the main menu.              
  1340.  
  1341.      4.13 Testing defective Ports 
  1342.      ----------------------------  
  1343.      Whenever the Modem Doctor checks to see if a port is  working properly,
  1344.      it checks the status  of several registers. If  a uart appears  "dead",
  1345.      the Modem Doctor will tell you that  the port was not "found". You  can
  1346.      use the Manual mode and override this determination. This allows you to
  1347.      test a defective port to find out  what is wrong. If you tell the Modem
  1348.      Doctor for  example to use serial Port 2F8 as COM2  and you do not have
  1349.      a COM2, the  message "COM2 not Found"  will be returned with  an option
  1350.      "Override [Y/N]  ?". Answering "Y" will  force the login of  this port.
  1351.      Certainly there is  no benefit to  testing a  non-existent port, but  a
  1352.      port that  is defective  may not  be logged-in.  So, you  now have  the
  1353.      option  to test  this defective  port hardware  to pinpoint  a problem.
  1354.      Combined  with the  register  display and  diagnostics,  you will  most
  1355.      likely be able to pin-point any uart problem quickly and easily. 
  1356.  
  1357.                                      Page 22
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1373.  
  1374.  
  1375.      4.2 Regs     
  1376.      -------------      
  1377.        ╔[  Register Tests  ]══════════════╗
  1378.        ║ Quick uart register diagnostics  ║  <- Displays all registers
  1379.        ║ DTR/DSR  RTS/CTS echo test       ║  <- Tests handshake lines
  1380.        ║ DTR Continuous Pulse test        ║  <- New, Pulses DTR line on/off
  1381.        ║ RTS Continuous Pulse test        ║  <- New, Pulses RTS line on/off
  1382.        ║ Dynamic  RTS/CTS handshake test  ║ +<-|Handshakes under simulated
  1383.        ║ Dynamic Xon/Xoff handshake test  ║ +<-|on-line conditions.
  1384.        ║ Display any 10 S-registers       ║  <- Display S-registers
  1385.        ║ Help and info on these tests     ║  <- Help or ALT-H
  1386.        ║       Return to main menu        ║
  1387.        ╚══════════════════════════════════╝
  1388.                                                   + registered version only
  1389.  
  1390.      The register display section can be an invaluable diagnostic tool. What
  1391.      this does is "poll" all of the status registers of the uart, and the
  1392.      interrupt controller to  tell you exactly what  is going on.   When you
  1393.      use the setup mode, the Modem Doctor checks all of these  registers for
  1394.      correct   information. If something  wrong is discovered, a  warning is
  1395.      displayed  on the screen telling you what  the Modem Doctor believes is
  1396.      wrong. Many different error conditions  are checked, see the error code
  1397.      section for a listing. Each  register contains a Mnemonic for each  one
  1398.      of the data bits.   Bits that are  a logic low ( = 0) are displayed  in
  1399.      low intensity, those that are a logic high (=  1) are displayed in high
  1400.      intensity.  On a color monitor, this is easy to see. On a Mono Monitor,
  1401.      make  sure you  have the    brightness and  contrast controls  properly
  1402.      adjusted to  see  the difference  between  the two  status  conditions.
  1403.      (Note: Version 4 allows you to pick your own custom colors, however, it
  1404.      will still alternate between high intensity and low intensity shades of
  1405.      the colors you select for the uart register displays).
  1406.  
  1407.  
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.  
  1418.  
  1419.                                      Page 23
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1435.  
  1436.  
  1437.  
  1438.      -[ Line Control Register ]----------      
  1439.      |  DLB STB STP EPS PEN STB WS1 WS0  |     
  1440.      ------------------------------------      
  1441.      This register controls  many of the setup characteristics  of your uart
  1442.      and how it behaves to your PC. This register is responsible for setting
  1443.      baud rate, setting  break code transmission, parity, and  the length of
  1444.      the serial stream  word. 
  1445.               
  1446.      DLB    Divisor Latch          Used to access the baud rate registers.  
  1447.                                    Should be low for all displays.
  1448.               
  1449.      STB    Set Break              If high, the modem transmits a
  1450.                                    break signal, should be low normally.    
  1451.      STP    Stick Parity           Should be low normally    
  1452.      EPS    Even Parity select     High = even parity..should be low
  1453.                                    normally.   
  1454.      PEN    Parity Enable          Enable parity checks, should be low
  1455.                                    normally.
  1456.      STB    Stop Bits              Number of stop bits, should be low
  1457.                                    normally to indicate 1 stop bit character
  1458.                                    only.
  1459.      WS1    Word Length Select 1     
  1460.      WS0    Word Length Select 0   These two bits are used to determine the
  1461.                                    serial data word length. Both should be
  1462.                                    high normally to indicate a length of 8
  1463.                                    bits.
  1464.               
  1465.  
  1466.  
  1467.  
  1468.  
  1469.  
  1470.  
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.  
  1481.                                      Page 24
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1497.  
  1498.  
  1499.  
  1500.      -[ Line Status Register ]----------- 
  1501.      |      TSE THE BI  FE  PE  OE  DR   |      
  1502.       ___________________________________      
  1503.               
  1504.      The  line status  register  reports error  conditions  that might  have
  1505.      occurred between the PC and the Uart.      
  1506.  
  1507.      TSE    TX Shift Register      A high indicates that all characters
  1508.                                    sent to the Uart were transmitted. Should
  1509.                                    be High Normally.      
  1510.  
  1511.      THE    TX Holding Register    A high indicates that the Uart can now   
  1512.             Empty                  accept a new character from the PC.Should
  1513.                                    be high normally. 
  1514.  
  1515.      BI     Break Interrupt        A high indicates that a break signal was 
  1516.                                    received. Should be low normally.      
  1517.  
  1518.      FE     Framing Error          A high indicates that a serial data train
  1519.                                    did not have a proper stop bit. Should be
  1520.                                    low normally.   
  1521.  
  1522.      PE     Parity Error           A high indicates that the received serial
  1523.                                    data's parity did not match what the uart
  1524.                                    was programmed to receive. Should be low 
  1525.                                    normally.     
  1526.  
  1527.      OE     Overrun Error          A high indicates that a character in the 
  1528.                                    receive buffer was not read by the PC in 
  1529.                                    time, and another character overwrote and
  1530.                                    destroyed it. Should be low normally. 
  1531.  
  1532.      DR     Data Ready             A High indicates that a character has
  1533.                                    been received and is ready to be read by 
  1534.                                    the PC from the receiver buffer. Should
  1535.                                    be low normally for these test, but can
  1536.                                    vary while data is coming in from the
  1537.                                    modem. 
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.                                      Page 25
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1559.  
  1560.  
  1561.  
  1562.  
  1563.      -[ Modem Control Register ]---------
  1564.      |              LP  OT2 OT1 RTS DTR  |     
  1565.      ------------------------------------       
  1566.               
  1567.      The Modem Control register handles all of the interfacing between the  
  1568.      Uart  and  the modem.  Only  5 signals  are  needed for  this  level of
  1569.      control.   
  1570.       
  1571.               
  1572.      LP     LOOP                   A high indicates that the loopback
  1573.                                    digital diagnostic has been activated.
  1574.                                    This feature only works with 8250 uarts
  1575.                                    or those that are 100% compatible. This
  1576.                                    is used in the digital loopback test. 
  1577.  
  1578.      OT2    OUT 2                  A high enables the uart to generate
  1579.                                    interrupts. A low disables interrupts.
  1580.                                    This should always be high for testing
  1581.                                    purposes.  
  1582.         
  1583.      OT1    OUT 1                  On 100% compatible modems, a high on this
  1584.                                    pin will perform a hardware reset of the
  1585.                                    modem in some compatible designs.Normally
  1586.                                    this is a low.
  1587.  
  1588.      RTS    Request to Send        A Handshaking signal that is used by some
  1589.                                    modems to enable data transfer between
  1590.                                    the modem and the Uart. Should be high
  1591.                                    for testing purposes.
  1592.  
  1593.      DTR    Data Terminal Ready    A Handshaking signal that is used by some
  1594.                                    modems to enable data transfer between
  1595.                                    the modem and the uart. Should be high 
  1596.                                    for testing purposes.
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603.  
  1604.  
  1605.                                      Page 26
  1606.  
  1607.  
  1608.  
  1609.  
  1610.  
  1611.  
  1612.  
  1613.  
  1614.  
  1615.  
  1616.  
  1617.  
  1618.  
  1619.  
  1620.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1621.  
  1622.  
  1623.  
  1624.      -[ Modem Status Register ]----------      
  1625.      |  RLS RI  DSR CTS DRD TER DDR DCS  |     
  1626.      ------------------------------------      
  1627.      The Modem  Status Register  returns the status  of the  control signals
  1628.      sent by the modem to the Uart.      
  1629.               
  1630.      RLS    Received Line Detect   A high indicates that a carrier has been 
  1631.                                    received by the modem. When the Analog
  1632.                                    tests are run, this should be high. If
  1633.                                    it is not, it is still possible that the
  1634.                                    modem is ok, however the cable from the
  1635.                                    modem to the uart (for externals only)
  1636.                                    might not have a complete circuit due to
  1637.                                    faulty wiring of the RS-232 cable. This
  1638.                                    signal is very important for some
  1639.                                    communications programs to operate
  1640.                                    properly.      
  1641.  
  1642.      RI     Ring Indicator         A high indicates that the modem detected 
  1643.                                    a ringing signal on the phone line. 
  1644.                  
  1645.      DSR    Data Set Ready         This is part of the DTR/DSR Handshaking
  1646.                                    pair that is used by some modems to
  1647.                                    control the flow of data. Normally it
  1648.                                    will be a high. 
  1649.  
  1650.      CTS    Clear to Send          This is part of the RTS/CTS Handshaking
  1651.                                    pair that is used by some modems to
  1652.                                    control the flow of data. Should normally
  1653.                                    be a high.
  1654.  
  1655.      DRD    Delta Received         Line Signal Detect. A high indicates that
  1656.                                    the Received Line Signal has changed
  1657.                                    state. Some communications programs use
  1658.                                    this also as an indication that a carrier
  1659.                                    was detected by the modem. 
  1660.      TER    Trailing Edge
  1661.               Indicator            A high indicates that the Ring Indicator 
  1662.                                    changed state. Some communications
  1663.                                    programs use this as an indication that
  1664.                                    the phone has rung.      
  1665.  
  1666.  
  1667.                                      Page 27
  1668.  
  1669.  
  1670.  
  1671.  
  1672.  
  1673.  
  1674.  
  1675.  
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.  
  1682.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1683.  
  1684.  
  1685.      DDR    Delta Data Set Ready   Indicates that the DSR signal has changed
  1686.                                    state.      
  1687.  
  1688.      DCS    Delta Clear to Send    Indicates that the CTS signal has changed
  1689.                                    state. 
  1690.               
  1691.      If a 8250-B / 16450 or 8250A Uart was detected, the following is
  1692.      displayed;      
  1693.             
  1694.      -[ Interrupt ID Register ]----------
  1695.      |                      ID1 ID0 ITP  |     
  1696.      ------------------------------------       
  1697.               
  1698.      The  Interrupt  ID  Register is  used  to  tell the  CPU  what  kind of
  1699.      interrupt occurred.      
  1700.  
  1701.      ID0    Interrupt Bit 2     
  1702.      ID1    Interrupt Bit 1        These two signals are a binary code which
  1703.                                    can be read by the CPU to tell what kind
  1704.                                    of interrupt occurred. Both bits high
  1705.                                    indicates an error occurred or a break
  1706.                                    interrupt wasreceived.  Bit 2 high and
  1707.                                    Bit 1 low indicates that data is ready to
  1708.                                    be read by the CPU. Bit 1 high and bit 2
  1709.                                    low indicates that a ring signal or
  1710.                                    carrier signal was received. For testing
  1711.                                    purposes, only the Data ready mode is
  1712.                                    used. 
  1713.  
  1714.      ITP    Interrupt Pending      A Low indicates that an interrupt has
  1715.                                    occurred. For testing purposes, this
  1716.                                    should always be high if data was
  1717.                                    successfully read by the Modem Doctor. If
  1718.                                    it is not, then an interrupt did occur
  1719.                                    but the CPU did not respond. Suspect a
  1720.                                    problem with an interrupt controller chip
  1721.                                    or the uart interrupt generating
  1722.                                    capability. If a 16550 or
  1723.                                    16550A(x) chip was detected, the register
  1724.                                    selection uses the enhanced register
  1725.                                    display.             
  1726.               
  1727.  
  1728.  
  1729.                                      Page 28
  1730.  
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736.  
  1737.  
  1738.  
  1739.  
  1740.  
  1741.  
  1742.  
  1743.  
  1744.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1745.  
  1746.  
  1747.  
  1748.      If  a  16550A(x) was  detected,  the  appearance  of the  Interrupt  ID
  1749.      register changes and the following is displayed;
  1750.  
  1751.      -[ Interrupt ID Register ]----------
  1752.      | FEM FEL          ID2 ID1 ID0 ITP  |     
  1753.      ------------------------------------   
  1754.      FEM   FIFO Enable MSB         This is the most significant bit of the
  1755.                                    FIFO register. It should be high on both
  1756.                                    the 16550 and 16550AN if the FIFO
  1757.                                    buffering is enabled. Normal Modem Doctor
  1758.                                    status shows this as a logic low (unless
  1759.                                    testing is performed).  
  1760.  
  1761.      FEL   FIFO Enable LSB         This is the least significant bit of the
  1762.                                    FIFO Register. It should be a high on the
  1763.                                    16550A(x) only! The 16550 always displays
  1764.                                    this bit low. Again, the normal Modem
  1765.                                    Doctor status  will show this as a logic
  1766.                                    low (unless testing is performed).
  1767.  
  1768.      ID2   FIFO Timeout            This signal is raise high by a 16550A(x)
  1769.                                    to indicate that it is holding characters
  1770.                                    for the CPU to read, but it is less than
  1771.                                    what the CPU has requested to be
  1772.                                    interrupted for. The FIFO buffer can be
  1773.                                    as deep as 14 characters. If only 8 have
  1774.                                    come in, the CPU will not be interrupted.
  1775.                                    The 16550A(x) is programmed to interrupt
  1776.                                    after a period of time has gone by during
  1777.                                    which no characters were received in
  1778.                                    order to force the CPU to get what it is
  1779.                                    currently storing. Normal operation
  1780.                                    should keep this line low, if it
  1781.                                    is high at any time there is a problem
  1782.                                    with the uart.  
  1783.  
  1784.  
  1785.  
  1786.  
  1787.  
  1788.  
  1789.  
  1790.  
  1791.                                      Page 29
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.  
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1807.  
  1808.  
  1809.               
  1810.      -[ Interrupt Enable Register ]------      
  1811.      |                  ESI ELI ETI ERI  |     
  1812.      ------------------------------------      
  1813.               
  1814.      The Interrupt Enable register is programmed to allow certain types of  
  1815.      interrupts to occur.      
  1816.  
  1817.      ESI    Enable Status          A high causes the uart to generate an
  1818.                                    interrupt whenever RI or RSD signals in
  1819.                                    the Modem Status register go high. Should
  1820.                                    be low for testing.
  1821.  
  1822.      ELI    Enable Line            A high causes the uart to generate an 
  1823.                                    Interrupt whenever an error or break
  1824.                                    interrupt is detected in the Line Status
  1825.                                    Register. Should be low for testing.
  1826.  
  1827.      ETI    Enable Transmitter     A high causes the uart to generate a
  1828.                                    holding register interrupt whenever the
  1829.                                    THE signal of the empty interrupt line
  1830.                                    status register goes high. Should be low
  1831.                                    for testing.        
  1832.                                    
  1833.  
  1834.      ERI    Enable Receive Data    A high causes the uart to generate a
  1835.                                    ready interrupt whenever data is ready to
  1836.                                    be read by the CPU. The DR line of the
  1837.                                    line status register going to a high
  1838.                                    state generates this  condition. This
  1839.                                    signal should be high for testing
  1840.                                    purposes, since it is the only interrupt
  1841.                                    needed by the Modem Doctor.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.                                      Page 30
  1854.  
  1855.  
  1856.  
  1857.  
  1858.  
  1859.  
  1860.  
  1861.  
  1862.  
  1863.  
  1864.  
  1865.  
  1866.  
  1867.  
  1868.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1869.  
  1870.  
  1871.  
  1872.      -[ Interrupt Mask Register ]--------      
  1873.      |  IQ7 IQ6 IQ5 IQ4 IQ3 IQ2 IQ1 IQ0  |     
  1874.      ------------------------------------      
  1875.      The interrupt mask register is contained on the 8259 priority interrupt
  1876.      controller on your computer's motherboard. Each one of these hardware
  1877.      interrupts corresponds to an external device.      
  1878.  
  1879.      IQ7   Printer Interrupt (can be used by Custom COM5 or COM6)
  1880.      IQ6   Floppy Disk Interrupt     
  1881.      IQ5   Hard Drive interrupt (can be used by Custom COM7 or COM8)
  1882.      IQ4   COM1 Interrupt (also COM3)     
  1883.      IQ3   COM2 Interrupt (also COM4)     
  1884.      IQ2   reserved by IBM (Gateway to second 8259 on AT's)     
  1885.      IQ1   Keyboard Interrupt     
  1886.      IQ0   Timer Interrupt      
  1887.           
  1888.  
  1889.  
  1890.      Under Normal  Conditions, IQ0,IQ1 and IQ6 should be lit, along with IQ4
  1891.      if  testing COM1  (or  COM3)   or IQ3  if  testing COM2  (or COM4).  In
  1892.      addition, other lines could be lit depending on your computer. The only
  1893.      line the  Modem Doctor looks for is the IQ4  or IQ3 lines (depending on
  1894.      which serial port you are testing).   
  1895.  
  1896.      -[ Interrupt Mask Register ]--------      
  1897.      |  I15 I14 I13 I12 I11 I10 IQ9 IQ8  |     
  1898.      ------------------------------------      
  1899.  
  1900.      If you are using an  IRQ line above 7, this alternate  display is shown
  1901.      above.  In normal  use, only IRQ9,  IRQ10, IRQ11, IRQ12,  and IRQ15 are
  1902.      free to be  assigned to other hardware devices. 
  1903.  
  1904.      I15 - free, normally assigned to BIOS
  1905.      I14 - used by hard disk controllers
  1906.      I13 - Redirected NMI interrupt or coprocessor
  1907.      I12 - free, normally assigned to BIOS
  1908.      I11 - free, normally assigned to BIOS
  1909.      I10 - free, normally assigned to BIOS
  1910.      IQ9 - Redirected IRQ 2
  1911.      IQ8 - Real time clock interrupt
  1912.  
  1913.  
  1914.  
  1915.                                      Page 31
  1916.  
  1917.  
  1918.  
  1919.  
  1920.  
  1921.  
  1922.  
  1923.  
  1924.  
  1925.  
  1926.  
  1927.  
  1928.  
  1929.  
  1930.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1931.  
  1932.  
  1933.      Although the status  of all interrupt lines are  shown, only 9,10,11,12
  1934.      and 15 can be accessed by Modem Doctor.
  1935.  
  1936.  
  1937.      4.30 Handshaking tests
  1938.      ----------------------
  1939.      Just like  a handshake between  friends, the Modem Doctor  tests to see
  1940.      that  your  computer  uart  and  the   modem  are  properly  exchanging
  1941.      handshaking for  data  communication.  There  are 4  tests  for  proper
  1942.      operation.  Two of  them are  static  (meaning that  the control  lines
  1943.      between the computer and modem are raised and lowered), and two of them
  1944.      are  dynamic (meaning that  the modem is placed  in a self-connect mode
  1945.      and data is sent to the modem). 
  1946.      Static test results can  vary modem to modem. Some  modems echo control
  1947.      line   toggles...in other words,  if DTR goes  low, so will  DSR. Other
  1948.      modems do not. So, it would  be considered normal for a modem *not*  to
  1949.      pass this particular  test.  However, if you wish to test  a cable, and
  1950.      at the end you place a  loopback plug, then the static echo test should
  1951.      pass. Otherwise, your cable  is wired incorrectly!
  1952.  
  1953.      The static RTS/CTS tests are conducted the same way, however this
  1954.      handshake pair is important for high-speed modem users. Again, working 
  1955.      through a modem, you will see a failure (unless using the modem for 
  1956.      Synchronous  Communications, something  most users never  do). However,
  1957.      with a  loopback plug, you should see the  static test pass. The static
  1958.      tests above   are designed to  show that your  cabling to the  modem is
  1959.      proper, when verified with a loopback plug. However, these tests cannot
  1960.      verify  if  your  modem    microprocessor will  act  properly  on  this
  1961.      handshaking information. 
  1962.  
  1963.      New in version  7.0, DTR and  RTS pulse tests are  added to aid  you in
  1964.      finding problems with cables or connectors. If DTR is selected, the DTR
  1965.      line is raised and lowered every 2 seconds. If RTS is selected, the RTS
  1966.      line  is  raised  and lowered  every 2  seconds. Using  modem indicator
  1967.      lights or  Modem Doctor's status display  and a loopback cable, you can
  1968.      find out if a cable has the proper wiring for handshaking signals. With
  1969.      some simple test equipment (like a logic probe), you can use  this mode
  1970.      to trace a problem to its source.
  1971.  
  1972.      The dynamic  tests force your  modem to self-connect. Next  the RTS (or
  1973.      DTR)   lines are  dropped (depending  on which  test is  run). Then  20
  1974.      characters are   sent  to the  modem. If  the modem  is properly  using
  1975.      handshaking, no characters will  be sent back to  the computer. If  any
  1976.  
  1977.                                      Page 32
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.  
  1988.  
  1989.  
  1990.  
  1991.  
  1992.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  1993.  
  1994.  
  1995.      characters are  received,  then  your    modem  ignored  the  handshake
  1996.      request. In most  cases, if the  static tests   passed but the  dynamic
  1997.      failed, it means your modem needs to be setup for  testing. 
  1998.  
  1999.      The Modem  Doctor offers you  the choice  of programming your  modem to
  2000.      test its ability to  handshake. Using this mode requires that  you have
  2001.      selected the  proper modem  driver from the  Carrier mode  before hand,
  2002.      otherwise incorrect commands will  be sent to  your modem. If you  know
  2003.      you have the right driver, then you can go ahead and see if your  modem
  2004.      is set properly or not.
  2005.  
  2006.      None of the commands sent to the modem are permanently stored in the
  2007.      modem. If the Modem Doctor enables handshaking and it works, but your
  2008.      setup in the modem does not work, then you have to reprogram the modem
  2009.      yourself. You can use the Interactive  terminal mode to do this if  you
  2010.      wish without leaving  the Modem Doctor. Also, in order  for these tests
  2011.      to  be  valid you  must  be using  a  modem that  supports  RTS/CTS and
  2012.      XON/XOFF handshaking  modes of operation.
  2013.  
  2014.      4.30A S-Register Displays
  2015.      -------------------------
  2016.      The most important  S-registers are the first 16.  These determine many
  2017.      of  the  abilities   and  options  that  your  modem   can  use  during
  2018.      communication  sessions. However,  today's high-speed modems  have many
  2019.      more registers, in fact  some  have up  to 200! After the first  16, no
  2020.      one  really follows  any sort  of  "plan", each  modem manufacturer  is
  2021.      pretty free to do what they  wish. From a  diagnostic standpoint,  this
  2022.      is a  nightmare scenario. Even  with the same   manufacturer, different
  2023.      ROM  versions change  how these  registers are  used.  The "compromise"
  2024.      position is allow for the viewing of S-registers  in groups  of 10. You
  2025.      pick the starting register, and the next 10 are displayed. Values  of 0
  2026.      (appearing slowly) usually indicate that the selected register doesn't 
  2027.      exist. As  with all  Modem Doctor  routines, you  cannot change  any of
  2028.      these S- register settings, unless you go into the Interactive Mode and
  2029.      use the AT  commands that allow you to change register settings. 
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.  
  2037.  
  2038.  
  2039.                                      Page 33
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2055.  
  2056.  
  2057.      4.31 Carrier Tests     
  2058.      -----------------  
  2059.        ╔[  Modem Tests  ]═══════╗
  2060.        ║ Carrier Self-tests     ║  <- Simulate on-line tests
  2061.        ║ Burst Mode Self-Test   ║  <- New, Sends data in Bursts
  2062.        ║ Burst Signature Test   ║  <- New, Sends a modulation test pattern
  2063.        ║ Burst Alt Data Test    ║  <- New, Sends an alternating pattern
  2064.        ║ Select modem drivers   ║  <- Pick a modem driver
  2065.        ║ Help with carrier test ║  <- Help
  2066.        ║  Return to main menu   ║
  2067.        ╚════════════════════════╝
  2068.  
  2069.      The carrier test section is used to test your modem's ability to detect
  2070.      a  carrier, demodulate  signals on the  originate frequency  and answer
  2071.      frequency, and to  properly control the RLS (Received  Line Signal) and
  2072.      CD  (carrier  detect) modem  status/control  lines.  All of  these  are
  2073.      essential  elements  for  good data  communication.    When you  select
  2074.      carrier tests, a pulldown menu is displayed. Option 1,2,3 and 4 prompts
  2075.      you to run different carrier tests (see types of carrier tests later in
  2076.      this section). Option 5  offers you the chance to select a custom modem
  2077.      driver. Option  7 allows   you  to return  to the  main menu  (pressing
  2078.      ESCAPE or a  left/right arrow  key  also does the same  thing as option
  2079.      7).  
  2080.               
  2081.      4.31 Modem Driver Modules    
  2082.      --------------------------  
  2083.      Although your AT instruction set modem is based on a defacto standard
  2084.      developed by Hayes,  there are several "supersets" of  this instruction
  2085.      set  for  various modems.  Currently,  the    Modem Doctor  supports  9
  2086.      different software Modem  Drivers for testing; Generic  Compatible, &T0
  2087.      (CCITT V.54  test sequence)  instruction set,  Hayes 9600,14400,  Hayes
  2088.      28800 bps,  Courier   HST/V.32, Sportster 14440,  USR 28800  bps, ZyXEL
  2089.      1496 E and E+,  Practical Peripherals, Intel, and Sierra  Semiconductor
  2090.      modems.  If your modem  is not included,  you can easily  pick a driver
  2091.      that will work for you following these simple guidelines;
  2092.  
  2093.        a) If it is a high speed modem (over 2400 bps), select Hayes 9600.
  2094.        b) If it is a 2400 bps modem, select &T0 instruction set.
  2095.        c) If these do not work, use Generic driver.
  2096.  
  2097.      When the Modem Doctor is running the setup mode, it queries the 
  2098.      microprocessor  for its type identification. Based on this information,
  2099.      a  modem driver is selected for use.  Basically, all 2400 bps and lower
  2100.  
  2101.                                      Page 34
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2117.  
  2118.  
  2119.      modems   are assigned  the Generic Driver,  and all  supported 9600 and
  2120.      higher modems  are assigned their  proper ID, based on  the information
  2121.      your modem  returns  via its  ROM code.  If Modem  Doctor  knows its  a
  2122.      high-speed  modem but can't  determine the  type, the  Courier HST/V.32
  2123.      driver is assigned  by default. The &T0 instruction  set modems, (those
  2124.      that  use  the CCITT  V.54 test  sequence), are  tested in  a different
  2125.      manner with a  different set of instructions. Previous  versions of the
  2126.      Modem Doctor would automatically switch to the &T0  instruction set  if
  2127.      the modem was a 2400 bps  modem and if it failed to   properly detect a
  2128.      carrier during  testing. This  function is still  built into  the Modem
  2129.      Doctor, but  you can optionally  select the &T0 driver  yourself before
  2130.      beginning  your testing  in order  to speed  things up.  Auto-selection
  2131.      added about  10 seconds  a pass  that can now  be eliminated.   If  you
  2132.      desire to  select the &T0  set for your modem  instead of letting   the
  2133.      Modem Doctor do it for you. 
  2134.  
  2135.      NOTE: Don't select this  instruction set unless you know for  sure that
  2136.      your modem  is 100% instruction  set compatible with the  Hayes 2400 or
  2137.      2400B. Hayes  1200 bps  and lower, and  almost all  other 2400  bps and
  2138.      lower modems use  the Generic  Driver. You  will find that  99% of  all
  2139.      modems  will  work properly  with this    assignment, in  fact,  if you
  2140.      disable all data  compression and Fixed link assignments  from any high
  2141.      speed modem (including  28800+'s), the generic  driver will test  these
  2142.      modems properly  also! This allows  people with high-speed  modems that
  2143.      are not supported currently to use the Modem Doctor for testing. If you
  2144.      have  a  high-speed  modem  that is  not  supported,  you  can   use  a
  2145.      Combination of  the Manual mode  and the  Generic Modem Driver  to test
  2146.      these modems also.  
  2147.  
  2148.      All of the modem drivers used by the Modem Doctor are built into the
  2149.      program, however version 7.0, like earlier versions, has the ability 
  2150.      to recognize an external driver file. If the Modem Doctor finds and 
  2151.      external driver file when it starts, it uses those command instead of 
  2152.      the  built-in  drivers. The  format  for  drivers has  changed  between
  2153.      version 4.0x, 5.0, 7.0  and any future drivers will be  released in all
  2154.      formats  for users of all versions of Modem Doctor.
  2155.  
  2156.      What purpose is  there in external drivers?  Well, first off, if  a new
  2157.      modem  command set is  adopted, or  a bug is  discovered in  one of the
  2158.      built-in modems, you  will be able to  receive a free driver  file from
  2159.      any bbs or by mail. This  means that your copy of the Modem  Doctor can
  2160.      stay current  for some  time to  come. The second  reason for  external
  2161.      drivers is to  allow you,  if you desire,  to have us  custom design  a
  2162.  
  2163.                                      Page 35
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2179.  
  2180.  
  2181.      modem driver for a particular modem. These drivers would be designed at
  2182.      a  modest charge and would be for your  use only. In any case, external
  2183.      drivers insure your investment in the Modem Doctor.
  2184.  
  2185.      4.32 Types of Carrier Tests  
  2186.      -----------------------------     
  2187.      The carrier tests are designed to test your modem under actual use
  2188.      conditions (minus a telephone line). Your modem uses two different
  2189.      frequency bands for communication. These are the originate and answer
  2190.      frequencies. AT Compatible modems can select these under command of the
  2191.      Modem Doctor via the appropriate Modem Driver module. So called "Dumb"
  2192.      Modems have front-panel switches that you must use to properly test the
  2193.      modem. The Modem Doctor supports both types of tests, one of which is
  2194.      automatically selected by the Modem Doctor depending on the hardware it
  2195.      detects.  
  2196.               
  2197.      4.33 AT Instruction Set Tests 
  2198.      -----------------------------     
  2199.      If you selected  the Test Modem/Uart option  from the setup menu  and a
  2200.      Modem with  a compatible  microprocessor was detected,  or if  you have
  2201.      forced the  Modem Doctor to  use the AT  instruction set tests  via the
  2202.      hot-key  ALT-F, the  Modem Doctor  will test  the originate  and answer
  2203.      frequencies of your modem automatically. Before running this test, make
  2204.      sure you have  disconnected the modem from the  telephone line, because
  2205.      the modem will go  off-hook and sometimes the  dial-tone will interfere
  2206.      with  testing. If you press ESCAPE in this menu, you return to the main
  2207.      menu. Any other  key continues. You will  be prompted to enter  a "Loop
  2208.      Count".  If you  select a  count of  1, you  will be  able to  hear the
  2209.      connecting tones on your speaker. If you select a count greater than 1,
  2210.      then the speaker is turned off.  
  2211.  
  2212.      After you make your  selection, two windows will  open on your  screen.
  2213.      One contains data that is being sent to the modem,  the other data that
  2214.      has been  received by the modem. All of the characters from binary 0 to
  2215.      binary 255  are transmitted.  Some of these  will look  strange because
  2216.      they are  characters of  the extended character  set. The  Modem Doctor
  2217.      takes a  great deal of care in preserving  the normal condition of your
  2218.      modem before testing, and sends  all the character strings necessary to
  2219.      test without disturbing  any non-volatile memory settings.  If you have
  2220.      an external  modem, you will  see the data being  sent and acknowledged
  2221.      before testing begins. 
  2222.  
  2223.  
  2224.  
  2225.                                      Page 36
  2226.  
  2227.  
  2228.  
  2229.  
  2230.  
  2231.  
  2232.  
  2233.  
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2241.  
  2242.  
  2243.      While it is setting up, the Modem Doctor tells you what is going
  2244.      on, including that  the modem is  reset, that commands are  being sent,
  2245.      and  that it is waiting for a carrier.  The Modem Doctor waits up to 15
  2246.      seconds for either the word CONNECT or the  RLS signal to go active. If
  2247.      this does not happen, the Modem Doctor  switches to the &T0 command set
  2248.      that is  used by Hayes  2400's and several  other clones. This  test is
  2249.      just as  valid as a  full carrier test  for these types of  modems, and
  2250.      verifies  both  the  modem  and  the  uart  signal  paths  as  does the
  2251.      traditional  carrier test.  If you  switch to  this  mode, you  will be
  2252.      informed  via  the  screen and  the  message  "CCITT  V.54  "  will  be
  2253.      displayed.  Also, if  you have  an external  modem, you  might see  the
  2254.      "modem ready" light flashing throughout  this test. If you selected the
  2255.      &T0 instruction set yourself from the Modem Driver selection menu, then
  2256.      the  &T0 set  will  be used  exclusively.  This selection  is  mainly a
  2257.      convenience for some users  (because the auto-detection method takes  a
  2258.      little  longer), however  it  will not  test any  other  kind of  modem
  2259.      properly. If you  are unsure, let  the Modem Doctor  figure it out  for
  2260.      you. Note, if you select more  than 1 iteneration and change you  mind,
  2261.      press ESCAPE anytime during the test. At the next available loop-repeat
  2262.      time the  Modem Doctor  will abort  testing and give  you your  current
  2263.      status.  
  2264.  
  2265.      4.34 Uart or Dumb Modem Tests 
  2266.      ----------------------------- 
  2267.      This test works the same as the AT instruction set modem test with two
  2268.      main exceptions. First, Your modem must  be able to generate a  carrier
  2269.      on  its own  on the  answer  and originate  frequencies. Most  external
  2270.      "dumb"  modems  have front panel switches  for this function. Most  are
  2271.      marked as  AL (for Analog  Loopback). If your modem  can generate this,
  2272.      answer yes    and follow  the prompts  on the  screen.  All testing  is
  2273.      performed  as above,  except you setup  the modem instead  of the Modem
  2274.      Doctor  using its modem driver software.   Whenever the Modem Doctor is
  2275.      working with the  micro in the "Off-line" mode, the dumb mode tests are
  2276.      used. You are prompted if your modem can generate a carrier. Answer yes
  2277.      to start  the testing.  You are then  told to place  your modem  in the
  2278.      analog loop mode and force the carrier detect on. Most dumb modems will
  2279.      light the CD light  on the front panel of the modem  when you press the
  2280.      AL switch. This  CD light sends  a RLS (Received   Line Signal)  status
  2281.      word  to the uart. The Modem Doctor looks for this before it will allow
  2282.      testing in  this dumb mode.  If your  modem cannot  generate a  carrier
  2283.      indication, you  can still test  an analog loopback using  the loopback
  2284.      function in the registered version and select the analog loopback tests
  2285.      (this is explained later in the documentation).  
  2286.  
  2287.                                      Page 37
  2288.  
  2289.  
  2290.  
  2291.  
  2292.  
  2293.  
  2294.  
  2295.  
  2296.  
  2297.  
  2298.  
  2299.  
  2300.  
  2301.  
  2302.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2303.  
  2304.  
  2305.               
  2306.      4.35 Error Messages 
  2307.      -------------------     
  2308.      If A RLS (Received Line Detect) signal is not received before testing
  2309.      begins, this indicates that either a carrier is not being generated (or
  2310.      properly received in self test) by the modem, or an RS-232 Cable to an
  2311.      external modem  is improperly  wired. Although  RS-232 loops  will work
  2312.      fine without an RLS signal  being wired, there is no way for  the Modem
  2313.      Doctor to detect on a  dumb modem if a carrier  was generated. On a  AT
  2314.      instruction set modem, the Modem  Doctor alternately looks for the word
  2315.      "CONNECT"  to  be  sent  from the  modem  if  there  is  no RLS  signal
  2316.      available. If you wish your all of your communications programs to work
  2317.      properly, you should get a cable with this signal wired. If an error is
  2318.      detected during  the analog  test,  the error  counter is  incremented.
  2319.      There are two error counters; one  is used for the originate mode,  and
  2320.      the other for the answer mode. If you receive an error, it could be due
  2321.      to a problem with a uart or a modem at a certain baud rate. Try testing
  2322.      at other  baud rates to  determine if  the errors  repeat. Also  errors
  2323.      could occur on only the originate or the answer frequency. This is more
  2324.      prevalent at higher baud rates.  Finally, make sure that the  modem was
  2325.      disconnected   from  the  phone  line  before  testing.  The  dial-tone
  2326.      interferes with some modems. One other possibility exists, that
  2327.      there could be a problem with a cable or interrupts not properly being
  2328.      generated or  properly handled  by the  CPU.  Run the  digital/loopback
  2329.      tests  and  if  the problem  repeats,  you  might have  a  bad  uart or
  2330.      motherboard problem. Although it is  unlikely, if power is removed from
  2331.      the modem  or a  cable falls off  (or who knows  what else),  the Modem
  2332.      Doctor waits a pre-determined period of time for an interrupt to occur.
  2333.      If  none is  detected,  the  warning "Modem  Queue  Failure" or  "Modem
  2334.      Receiver Failure"  will be displayed in one of the windows. These might
  2335.      also be  displayed if  the modem never  acknowledged a  character being
  2336.      transmitted, or  never sent one  back. Again, the only  conditions that
  2337.      would cause this would be a  cable being removed between the modem  and
  2338.      the uart,  the power being removed to the  modem, or the modem "blowing
  2339.      up" via some unnatural means during the test. If the RLS (Received Line
  2340.      Signal) is constantly active from the modem, the Modem Doctor will tell
  2341.      you that you might have  a problem with a cable  or the modem and  that
  2342.      the test results might not be valid. Reason for  this is that the Modem
  2343.      Doctor never did  detect a carrier because the uart said it was already
  2344.      there. This can be traced in nearly  all cases to the modem. Change the
  2345.      setting  of the modem to let the carrier   Detect (CD) act normally. It
  2346.      should never be set to be forced on for a PC. If so, not only the Modem
  2347.      Doctor, but other communications programs will  not operate properly. 
  2348.  
  2349.                                      Page 38
  2350.  
  2351.  
  2352.  
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2365.  
  2366.  
  2367.      4.36 IRQ Failures
  2368.      -----------------
  2369.      The Modem Doctor will allow you to test a modem that might not have a
  2370.      proper IRQ  assignment. Such errors  in jumper settings on  your serial
  2371.      cards or internal  modems are  tough to  trace. If you  see this  error
  2372.      message  displayed,  it  means that  your  modem  is  receiving signals
  2373.      properly, but  it cannot communicate  back to the computer  over normal
  2374.      interrupt assignments. This  normally results  from using  an IRQ  line
  2375.      reserved for  one comm port with  another. See the  section above about
  2376.      IRQ's if you get this error, and use  the table above as a guide to how
  2377.      to correct  your problem. IRQ failures  will be displayed in  the setup
  2378.      mode, the  Regs Quick Uart  Diagnostics mode, the Analog  Loopback mode
  2379.      and the Carrier Tests mode.
  2380.  
  2381.      4.38 Burst Mode Tests
  2382.      ----------------------
  2383.      Burst Mode tests  have been added to  Modem Doctor. Unlike the  carrier
  2384.      self tests  (which transmit  1 character  at a  time and  wait for  the
  2385.      character to be received), the Burst Mode tests send all characters  at
  2386.      once, and  then clock  how long  it takes  for these  characters to  be
  2387.      received. There are 3 different Burst Mode Tests.
  2388.  
  2389.        1) Burst Mode Self-Test - All 255 characters are sent in a burst. 
  2390.        2) Burst Signature test - designed to detect shift register and
  2391.                                  modulation problems.
  2392.        3) Burst Alt Data test  - another test pattern used for similar
  2393.                                  purposes as test #1.
  2394.  
  2395.      Modem Doctor clocks how long it takes to receive them all. This 
  2396.      information is displayed in a bar between windows like this;
  2397.  
  2398.      --------------------------------------------------------------------
  2399.      16550A TR14 TX Time = 1.21sec  210 cps RX Time = 1.00sec   255 cps
  2400.      --------------------------------------------------------------------
  2401.  
  2402.      Between  the windows  (sent  to and  received from  modem),Modem Doctor
  2403.      calculated  the send  and return  time  and approximate  characters per
  2404.      second. Also,  since this particular test was run  on a computer with a
  2405.      16550AFN uart,   Modem  Doctor also displays  the buffer  trigger level
  2406.      (14). A  16550AFN uart   will usually return  characters faster  than a
  2407.      regular uart. Transmit times   however depend  on the type of  computer
  2408.      more than the type of uart.  Faster machines can send data faster.
  2409.  
  2410.  
  2411.                                      Page 39
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.  
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2427.  
  2428.  
  2429.  
  2430.      After the test runs, you will see this window;
  2431.  
  2432.         ╒[  Burst Test ]══════════════════════════════════════════╕
  2433.         │ The results of the burst mode data tests shows that     │
  2434.         │ approximately 465 characters per second can be safely   │
  2435.         │ moved between modem and uart without handshaking        │
  2436.         │                                                         │
  2437.         │ You do not need any handshaking at this DTE speed       │
  2438.         │               Press Any Key to Continue                 │
  2439.         │                                                         │
  2440.         └─────────────────────────────────────────────────────────┘
  2441.  
  2442.      This  value is  calculated by  adding  the receive  and transmit  times
  2443.      together. If  Modem Doctor  calculates the round  trip time to  be more
  2444.      than it should  be at the chosen  baud rate, you will see  this message
  2445.      instead;
  2446.  
  2447.         ╒[  Burst Test ]══════════════════════════════════════════╕
  2448.         │ The results of the burst mode data tests shows that     │
  2449.         │ approximately  210 characters per second can be safely  │
  2450.         │ moved between modem and uart without handshaking        │
  2451.         │                                                         │
  2452.         │ You will need some sort of handshaking at this speed    │
  2453.         │               Press Any Key to Continue                 │
  2454.         │                                                         │
  2455.         └─────────────────────────────────────────────────────────┘
  2456.  
  2457.      At  2400 bps,  240  characters  are transmitted  each  second. If  your
  2458.      computer can only  handle 210 cps total, then  your computer could drop
  2459.      characters.  Therefore hardware handshaking is needed. Now, no computer
  2460.      made will have this problem until you exceed baud rates of 4800 bps. At
  2461.      9600  bps, 960  characters  need to  be received  per  second. If  your
  2462.      computer can only  handle 930, you will need  handshaking. At 19200bps,
  2463.      you need to  be able  to handle  1920 cps. Most  computers under  50mhz
  2464.      cannot do this without handshaking.
  2465.  
  2466.      The Burst Signature Mode tests are  useful in detecting Modem or serial
  2467.      link modulation/demodulation problems. As with the previous Burst test,
  2468.      Modem  Doctor  calculates  the  tx  and rx  times.  However,  only  one
  2469.      character  is sent, an A5 hex or  .  This character in binary is broken
  2470.      into  two halves;    1010  (A)  and  0101  (5).  Since  modulation  and
  2471.      demodulation  in modems   depends  on correctly  phasing changing  data
  2472.  
  2473.                                      Page 40
  2474.  
  2475.  
  2476.  
  2477.  
  2478.  
  2479.  
  2480.  
  2481.  
  2482.  
  2483.  
  2484.  
  2485.  
  2486.  
  2487.  
  2488.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2489.  
  2490.  
  2491.      packets,  this  A5 character    swings  the  modem between  worst  case
  2492.      repeating bit states.  If you find   errors here, you may  have located
  2493.      the source of your "line noise" problems.
  2494.  
  2495.      Burst  Alt Signature  Test -  Another  useful test  in determining  the
  2496.      condition of  the modulator/demodulator in  a modem. In this  case, two
  2497.      characters are alternated; the   or A5  hex and the letter Z or 5A hex.
  2498.      The modem sees these data bits  1010 (A) 0101(5) 0101 (5) 1010 (A).
  2499.  
  2500.      Additionally, Modem  Doctor  stresses the  first  few data  packets  by
  2501.      sending the sequence  5A A5 5A A5 5A  A5 A5 5A 5A A5 A5  5A A5 5A. Many
  2502.      times,   initial packets  of data  are garbled  (beginning of  a line).
  2503.      Again, if  you    have a  failure,  this  may  be the  source  of  your
  2504.      intermittent line noise.
  2505.  
  2506.      The analog burst tests in the registered version work in the identical
  2507.      manner, except no modulation from a modem is used. This enables you to
  2508.      test the shift registers and serial/parallel decoder features of your
  2509.      serial port.
  2510.  
  2511.      4.4 Loopback Tests     
  2512.      -------------------      
  2513.      The loopback tests were designed for two purposes. First, to test an
  2514.      RS-232  loop  including  cables that  are  properly  terminated  with a
  2515.      loopback plug,  and second, to run a digital  loopback test on 8250 and
  2516.      100% compatible uarts.  Additionally, the analog  portion of this  test
  2517.      can be used to test a  dumb modem that does not generate a  CD (carrier
  2518.      detect)  signal  when the  AL  switch  is thrown  on  the  front panel.
  2519.      Selecting loopback and pressing return fetches this menu;      
  2520.  
  2521.  
  2522.      ╔[  Loopback Tests  ]═══════════╗
  2523.      ║ Analog Loopback using a PLUG  ║ +<- test Uart & Cables
  2524.      ║ Digital Loopback 8250 UARTS   ║ +<- Uart test only
  2525.      ║ Burst Mode Self-Test          ║ +<- New, Sends data in a burst
  2526.      ║ Burst Signature Test          ║ +<- New, Sends Burst signature data
  2527.      ║ Burst Alt Data Test           ║ +<- New, Sends alternate burst data
  2528.      ║ Loopback Plug Technical Data  ║ +<- How to build a
  2529.      ║ Help with Loopback Tests      ║     loopback plug
  2530.      ║     Return To Main Menu       ║
  2531.      ╚═══════════════════════════════╝
  2532.                                        +registered version only
  2533.  
  2534.  
  2535.                                      Page 41
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.  
  2542.  
  2543.  
  2544.  
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2551.  
  2552.  
  2553.      Analog loopback tests require that you attach a Loopback plug either to
  2554.      the back of the Comm port connector on your computer, or at the end  of
  2555.      a  RS-232 Cable. This test is designed for external modems, however you
  2556.      could run this on an internal modem as  a test of the command channel's
  2557.      ability     to receive characters.  Caution should be used  on internal
  2558.      modems,  for  some will  fail  this  test. If  this  happens,  don't be
  2559.      concerned. However  this test should  NEVER fail with a  loopback plug,
  2560.      unless  you  were trying  to  drive  the  line at  an  excessive  rate.
  2561.      Remember, the  faster the data rate,  the shorter the  lines should be,
  2562.      and  the faster the  computer should be  to handle it.  With a loopback
  2563.      plug on  the back of the  serial port, speeds  of 56000 bps  should run
  2564.      fine even  on a slower PC (as long as it is not multi- tasking). If you
  2565.      experience  problems  at 56000  but  not at  19200,   chances  are your
  2566.      hardware is  fine (if you  are using an  8250-B). In extensive  testing
  2567.      with PC's at 4.77 mhz, the original 8250-B performed flawlessly at
  2568.      56000 bps.  Dumb modems can use this test  also (as explained above and
  2569.      in the section carrier tests).  Digital loopback tests require that you
  2570.      have    an  8250-B,  8250A,16450,  16550,    16550A(x)  or  other  100%
  2571.      compatible uart in your system. These uart's have built-in diagnostics.
  2572.      If you are  using a  PC compatible  internal modem or  a PC  compatible
  2573.      serial card, then you will definitely have a compatible uart installed.
  2574.  
  2575.      There is  a design difference  between the 8250-B and  other compatible
  2576.      chips in this series. Some of the differences were explained above, but
  2577.      the important difference for the loopback test is the way the different
  2578.      uarts will  respond.   The 8250-B  allowed its  OUT2  signal to  become
  2579.      active  during  loopback  testing.  The  OUT2  signal  is  used  by  PC
  2580.      compatible  machines to  gate the  interrupt signal  off of  the serial
  2581.      board  (or internal modem). Later designs (8250A, 16450, 16550,16550AN)
  2582.      tri-stated this line.  As a result, the self-test  diagnostics will not
  2583.      allow the interrupt signal to gate off the board and interrupt the CPU.
  2584.      This would cause all  digital loopback tests on these improved chips to
  2585.      fail. The Modem Doctor handles this by a brute-force read of the uarts.
  2586.      By sampling the Interrupt ID register, the presence  of an interrupt is
  2587.      detected, then the receiver buffer register is read. This method is not
  2588.      as  efficient as  a  true interrupt-driven  test  would be,  but  it is
  2589.      accurate. The Uart does generate the ID for an interrupt, the character
  2590.      is pulled out of the  uart. In version 4.0,  the speed of this  routine
  2591.      was significantly  enhanced so that  it runs approximately at  the same
  2592.      speed as a true interrupt driven 8250-B.
  2593.  
  2594.  
  2595.  
  2596.  
  2597.                                      Page 42
  2598.  
  2599.  
  2600.  
  2601.  
  2602.  
  2603.  
  2604.  
  2605.  
  2606.  
  2607.  
  2608.  
  2609.  
  2610.  
  2611.  
  2612.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2613.  
  2614.  
  2615.  
  2616.      When running this test on an 8250-B, you will see the true speed of the
  2617.      interrupt handling and processing. On others, you  will see the
  2618.      brute-force method.  Each is an accurate test of  the uart and valid at
  2619.      any baud rate  selected. If this test does not run,  but yet the analog
  2620.      test and all other  tests  run fine,  it means that  you do not have  a
  2621.      compatible uart   installed.   Some uarts  that are  not 8250's  have a
  2622.      problem entering this  mode properly.  If  the test does not  start, do
  2623.      not be alarmed,  because  only 8250 and true compatibles will pass this
  2624.      test. However this  test will NEVER start  and then fail unless  you do
  2625.      have a  hardware problem. You  should never  pick up a  character error
  2626.      using this test. If  you do, you  have a bad uart  or  CPU  motherboard
  2627.      problem. Both tests open up windows (like the analog test) and send and
  2628.      receive characters  to the  uart. If you  wish to know  how to  build a
  2629.      loopback  plug,  select  the  Loopback  Plug  technical  data  section.
  2630.      Pressing ESCAPE or  the left/right arrows is  the same as Option  4 and
  2631.      returns you to the main menu.  
  2632.            
  2633.      4.41 Loopback Test Error messages         
  2634.      ---------------------------------           
  2635.      Essentially  the error  messages for  these  tests are  simple. In  the
  2636.      loopback test mode,  if a character is received  incorrectly, the error
  2637.      counter is advanced and a report is issued at the end. If the analog or
  2638.      digital tests fail to receive or transmit characters, the messages will
  2639.      explain that  either the transmit  queue, the receive queue  failed, or
  2640.      that the uart  did not respond  to the tests.  The last message  may be
  2641.      displayed if you have a non-compatible uart. If the uart fails to setup
  2642.      properly for the digital loopback  test (does not program its registers
  2643.      properly), a warning is      displayed that there is an error in one of
  2644.      the  registers. The  message will  explain  what is  wrong and  what it
  2645.      expects.  Also, if you are using the wrong IRQ line for your comm port,
  2646.      you will receive an  IRQ failure error. See the warning message section
  2647.      for more details.                    
  2648.  
  2649.      4.42 Burst Mode Tests
  2650.      ----------------------
  2651.      Like the  Carrier mode,  Burst Mode  tests have  been  included in  the
  2652.      Loopback   tests.  Unlike  the regular  analog  loopback  tests  (which
  2653.      transmit  1 character  at  a time  and  wait for  the  character to  be
  2654.      received), the Burst Mode tests  send all characters at once,  and then
  2655.      clock how long  it takes for these   characters to be  received. Please
  2656.      refer section 4.38  for a description of these tests. Used with a Uart,
  2657.      these burst  mode diagnostics are used to test  serial ports and do not
  2658.  
  2659.                                      Page 43
  2660.  
  2661.  
  2662.  
  2663.  
  2664.  
  2665.  
  2666.  
  2667.  
  2668.  
  2669.  
  2670.  
  2671.  
  2672.  
  2673.  
  2674.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2675.  
  2676.  
  2677.      use any modem  modulation techniques. However, burst tests  will detect
  2678.      bad buffer chips or serializes in a uart just as it detected modulation
  2679.      problems in  a modem.  As with  the  carrier mode  tests, Modem  Doctor
  2680.      calculates the system throughput and displays it in this manner;
  2681.  
  2682.      --------------------------------------------------------------------
  2683.       16550A TR14 TX Time = 1.21sec   210 cps RX Time = 1.00sec   255 cps
  2684.      --------------------------------------------------------------------
  2685.      Between  the windows  (sent  to and  received from  modem),Modem Doctor
  2686.      calculated  the send  and return  time  and approximate  characters per
  2687.      second. Also, since this  particular test was run on a  computer with a
  2688.      16550AFN  uart, Modem  Doctor also  displays the  buffer trigger  level
  2689.      (14). A 16550AFN  uart  will  usually return characters  faster than  a
  2690.      regular  uart. Transmit times   however depend on  the type of computer
  2691.      more  than the  type of uart.   Faster  machines can send  data faster.
  2692.      After the test runs, you will see this window;
  2693.  
  2694.                 ╒[  Burst Test ]══════════════════════════════════════════╕
  2695.                 │ The results of the burst mode data tests shows that     │
  2696.                 │ approximately 465 characters per second can be safely   │
  2697.                 │ moved between modem and uart without handshaking        │
  2698.                 │                                                         │
  2699.                 │ You do not need any handshaking at this DTE speed       │
  2700.                 │               Press Any Key to Continue                 │
  2701.                 │                                                         │
  2702.                 └─────────────────────────────────────────────────────────┘
  2703.  
  2704.      This  value is  calculated by  adding  the receive  and transmit  times
  2705.      together. If  Modem Doctor calculates  the round trip  time to  be more
  2706.      than it should be  at the chosen baud  rate, you will see  this message
  2707.      instead;
  2708.  
  2709.                 ╒[  Burst Test ]══════════════════════════════════════════╕
  2710.                 │ The results of the burst mode data tests shows that     │
  2711.                 │ approximately  210 characters per second can be safely  │
  2712.                 │ moved between modem and uart without handshaking        │
  2713.                 │                                                         │
  2714.                 │ You will need some sort of handshaking at this speed    │
  2715.                 │               Press Any Key to Continue                 │
  2716.                 │                                                         │
  2717.                 └─────────────────────────────────────────────────────────┘
  2718.  
  2719.  
  2720.  
  2721.                                      Page 44
  2722.  
  2723.  
  2724.  
  2725.  
  2726.  
  2727.  
  2728.  
  2729.  
  2730.  
  2731.  
  2732.  
  2733.  
  2734.  
  2735.  
  2736.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2737.  
  2738.  
  2739.  
  2740.      4.5 Options Mode
  2741.      ---------------------              
  2742.  
  2743.        ╔[  User Options Selection  ]╗
  2744.        ║ Interactive Terminal Mode  ║  <- A Built-in mini-terminal 
  2745.        ║ View FAX Mode Settings     ║  <- New, List Current Fax settings
  2746.        ║ View Current Statistics    ║  <- Status of all tests
  2747.        ║ Reset Current Statistics   ║  <- Reset all tests to 0 
  2748.        ║ Print Current Statistics   ║  <- Send results to printer
  2749.        ║ Generate MDRD Windows file ║  <- Generates a special Windows file
  2750.        ║ Help with these options    ║
  2751.        ║    Return to main menu     ║
  2752.        ╚════════════════════════════╝
  2753.  
  2754.      The options mode allows you access to the built-in 16k communications
  2755.      terminal (Interactive Mode), and the report generator features. 
  2756.  
  2757.      4.51 Interactive Mode
  2758.      ----------------------
  2759.      As well written as  the Modem Doctor is,  there exists the  possibility
  2760.      that a modem or a system might not be compatible with  the diagnostics.
  2761.      The manual section allows  you to send your own string  commands to the
  2762.      modem,  read  back   data,  and  in  fact  you  could  use  this  as  a
  2763.      mini-communications program.   If you select this mode,  a window opens
  2764.      with  the  banner  Interactive  Mode.  At the  Bottom  are  listed  the
  2765.      "Hot-Keys" you can use;
  2766.  
  2767.            ALT-B   This opens a window for you to change the baud rate.     
  2768.                Note: if you are on-line with a service this might cause an  
  2769.                error between the computer and the modem. Off-line conditions
  2770.                should work properly. 
  2771.               
  2772.            ALT-C   Clears the screen. This only clears the window of data,
  2773.                and leaves all your prompts.   
  2774.  
  2775.            ALT-N   Add Nulls, this is new with Modem Doctor 5.0, and can be
  2776.                used to determine if your display adapter is causing
  2777.                "Interrupt Latency".
  2778.               
  2779.            ALT-R   This displays the Uart registers...handy for real-time   
  2780.                troubleshooting of RS-232 loops.      
  2781.          
  2782.  
  2783.                                      Page 45
  2784.  
  2785.  
  2786.  
  2787.  
  2788.  
  2789.  
  2790.  
  2791.  
  2792.  
  2793.  
  2794.  
  2795.  
  2796.  
  2797.  
  2798.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2799.  
  2800.  
  2801.           
  2802.            ALT-H   Help..this displays the basic AT Command set instructions
  2803.                that  you could use to control your modem. Note that this is
  2804.                only a basic set. Some modems have many extensions to this,
  2805.                so for advanced work, consult your owners manual.      
  2806.               
  2807.            ALT-X   Exits the interactive mode and returns to the main menu. 
  2808.        
  2809.  
  2810.      4.51A Testing for Interrupt Latency
  2811.      -----------------------------------
  2812.      Interrupt Latency is caused by  a hardware device (usually a hard  disk
  2813.      or a   video display adapter) taking longer  to process a function that
  2814.      the time it   takes to receive  a character over your  modem. Normally,
  2815.      interrupt latency is  not a  problem until you use DTE/DCE speeds  over
  2816.      19200bps. With today's high- speed  modems, its not uncommon for people
  2817.      to be running speeds of 38400 or   57600bps between computer and modem.
  2818.      Older display adapter, most notably  early EGA's  with "Auto-detection"
  2819.      circuitry, cause  interrupt  latency. The    symptoms will  range  from
  2820.      loosing characters occasionally  to excessive errors   when downloading
  2821.      files. 
  2822.  
  2823.      There is  no  real test  for  interrupt latency,  because such  a  wide
  2824.      variety of  situations  can cause it. The  only "cure" is to acquire  a
  2825.      faster display  adapter or  a 16550AFN uart. Now,  there is a way  that
  2826.      you can use Modem Doctor to verify such an error is happening, and that
  2827.      is by using ALT-N. When you add  nulls, you are telling Modem Doctor to
  2828.      wait a bit longer inside of a routine that talks to your video adapter,
  2829.      looking  for more  interrupts before  exiting the  display  routine. If
  2830.      adding nulls improves the error  rate that you see characters displayed
  2831.      (while on-line via the Interactive mode to a BBS), then you know you do
  2832.      indeed  have an  interrupt latency problem.  There are  two "short-cut"
  2833.      keys associated with  ALT-N, and they are ALT+ and  ALT-. ALT-N prompts
  2834.      you for a number, while ALT+ adds 1 to that number, and ALT-  subtracts
  2835.      1 from that number.
  2836.  
  2837.  
  2838.  
  2839.  
  2840.  
  2841.  
  2842.  
  2843.  
  2844.  
  2845.                                      Page 46
  2846.  
  2847.  
  2848.  
  2849.  
  2850.  
  2851.  
  2852.  
  2853.  
  2854.  
  2855.  
  2856.  
  2857.  
  2858.  
  2859.  
  2860.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2861.  
  2862.  
  2863.  
  2864.      4.51B View Fax Mode Settings
  2865.      ----------------------------
  2866.  
  2867.      If you have a fax modem, Modem Doctor will give you more detailed  info
  2868.      on its features than the setup menu initially displayed.
  2869.  
  2870.      ╒[ Fax Modem Information]═══════════════════════════════════════╕
  2871.      │ Current Fax Class       : 0                                   │
  2872.      │ Permissible Fax Classes : 0,2,8                               │ 
  2873.      │ DCE Model Information   : U1496E  V 6.01 M                    │
  2874.      │ DCE Manufacturer        : ZyXEL                               │
  2875.      │ DCE Revision Number     : U1496E  V 6.01 M                    │
  2876.      │ Auto Answer Mode        : DCE answers/auto-determines         │
  2877.      │                     Press Any Key To Continue                 │
  2878.      └───────────────────────────────────────────────────────────────┘
  2879.  
  2880.      If your modem  is a Class 1, none of this  information can be displayed
  2881.      since the modem lacks the ability to accept T.30 commands. However,  if
  2882.      you  do have a Class 2 or higher  modem (as most are), you will see the
  2883.      display above. This information, especially Permissible class faxes and
  2884.      Auto Answer mode are important for some fax software.
  2885.  
  2886.  
  2887.      4.52 View Current Statistics
  2888.      ----------------------------
  2889.      Whenever you  log-in a comm  port for  testing, the Modem  Doctor keeps
  2890.      tabs  on how many tests were run, the  baud rates that were tested, and
  2891.      how many errors you accumulated. You can view these statistics by using
  2892.      this selection. These results are  also displayed whenever you quit the
  2893.      Modem Doctor.
  2894.  
  2895.      4.53 Print Current Statistics
  2896.      -----------------------------
  2897.      If you wish a hard-copy of your  test results, just select this option.
  2898.      You will  be able to  send this to  any one  of the printers  the modem
  2899.      doctor finds available or to a file called MDR.RPT.
  2900.  
  2901.      4.54 Reset Current Statistics
  2902.      -----------------------------
  2903.      Use this mode to reset all test results back to zero at any time.     
  2904.  
  2905.  
  2906.  
  2907.                                      Page 47
  2908.  
  2909.  
  2910.  
  2911.  
  2912.  
  2913.  
  2914.  
  2915.  
  2916.  
  2917.  
  2918.  
  2919.  
  2920.  
  2921.  
  2922.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2923.  
  2924.  
  2925.  
  2926.      4.55 Generate MDRD Windows File
  2927.      -------------------------------
  2928.      Windows  introduces a  layer between  your  communication hardware  and
  2929.      software.  This layer  is  managed  by a  special  driver. The  default
  2930.      Windows  driver, Comm.drv, needs  information contained in  two special
  2931.      Windows  files, system.ini and  win.ini. Unfortunately, Windows  has no
  2932.      way to check if this information is valid or not.
  2933.  
  2934.      When you select this  feature, Modem Doctor Ver 7.0 generates a special
  2935.      .INI type file that declares all of the communication hardware settings
  2936.      using Windows-style variables. The file takes the following format;
  2937.  
  2938.      [mdrd]            ; a section applet for Windows
  2939.  
  2940.      Com1Base=03F8     ; Com1's base address is 03F8 hex
  2941.      Com1Irq=4         ; Com1's IRQ is IRQ4
  2942.      Com1FIFO=0        ; Com1 has a 8250/16450 uart installed
  2943.      Com2Base=02F8     ; Com2's base address is 02F8 hex
  2944.      Com2Irq=3         ; Com2's IRQ is IRQ3
  2945.      Com2FIFO=1        ; Com2 has a 16550AFN Buffered Uart installed
  2946.      Com4Base=02E8     ; Com4's base address is 02E8 hex
  2947.      Com4Irq=3         ; Com4's IRQ is IRQ3
  2948.      Com4FIFO=0        ; Com4 has a 8250/16450 uart installed
  2949.  
  2950.      Notice  there is  no readings  for  Com3. Modem  Doctor  will only  log
  2951.      hardware it was able to  identify. Also, unlike Windows, Modem Doctor's
  2952.      MDRD.INI  file   contains  VERIFIED   information  from   the  hardware
  2953.      diagnostics. You can now use this information in two ways; First, print
  2954.      it out and  compare it to the  contents of your system.ini  and win.ini
  2955.      files. Second, you  can use Modem Doctor  for Windows to do  a side-by-
  2956.      side comparison of your Windows settings and Modem Doctor for Dos 7.0's
  2957.      findings.  You can  then use  the built-in  .INI file  editor in  Modem
  2958.      Doctor  for Windows to  make your corrections.  Troubleshooting Windows
  2959.      communication problems are now easier than ever before. For information
  2960.      about Modem Doctor for Windows,  see the section entitled "Modem Doctor
  2961.      for Windows" in this document.
  2962.  
  2963.      The file  created, MDRD.INI  is placed in  your default  directory (the
  2964.      current directory  you are using  with Modem Doctor  7.0. In  order for
  2965.      Modem Doctor for  Windows to use  this file, you  must copy it to  your
  2966.      Windows  subdirectory (the directory  that contains you  Windows files,
  2967.      usually C:\WINDOWS.
  2968.  
  2969.                                      Page 48
  2970.  
  2971.  
  2972.  
  2973.  
  2974.  
  2975.  
  2976.  
  2977.  
  2978.  
  2979.  
  2980.  
  2981.  
  2982.  
  2983.  
  2984.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  2985.  
  2986.  
  2987.      4.6 Setup Mode     
  2988.      --------------      
  2989.      The setup  mode consists  of 2  sections.  The first,  the setup  modem
  2990.      section was  covered above.  Use this to  change the serial  port under
  2991.      test, the baud rate, and the type of test to be run.        
  2992.  
  2993.      The  second section allows  you to select  the colors that  you wish to
  2994.      work with while using the Modem Doctor. You can select default colors,
  2995.      Monochrome (black and white), or create your own custom colors.
  2996.  
  2997.      If you are using a color monitor, you can use window selections to pick
  2998.      the colors you  like and optionally save  them to a file  (MDR.CFG). If
  2999.      you  save them, then as long as this file exists, the Modem Doctor will
  3000.      use those colors  in place of the  default ones. To return  to default,
  3001.      either erase the  MDR.CFG file, or select default colors and save it to
  3002.      disk. When  you enter the color  selection mode, you will  be presented
  3003.      with three different  windows that will allow  you to make legal  color
  3004.      selections.
  3005.  
  3006.      [ Mdr Color Selection Screen ]
  3007.      Select from this menu the color of normal window and error backgrounds
  3008.      Background
  3009.      Black 
  3010.      Blue  
  3011.      Green 
  3012.      Cyan 
  3013.      Red 
  3014.      Magenta 
  3015.      Brown 
  3016.      Gray 
  3017.  
  3018.      Select from this  menu the  color of all  window foregrounds &  sliding
  3019.      bars
  3020.      foreground colors;
  3021.      Darkgray 
  3022.      Lightblue 
  3023.      Lightgreen 
  3024.      Lightcyan 
  3025.      Lightred 
  3026.      Lightmagenta
  3027.      Yellow 
  3028.      White 
  3029.  
  3030.  
  3031.                                      Page 49
  3032.  
  3033.  
  3034.  
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.  
  3041.  
  3042.  
  3043.  
  3044.  
  3045.  
  3046.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3047.  
  3048.  
  3049.      If  you select two  colors the same (or  different intensities that are
  3050.      the same), the Modem Doctor will tell you your selections  are invalid.
  3051.      After you have made your choices,  you will be presented with a  window
  3052.      that allows you to save your choices to a file, use the choices without
  3053.      saving  or reselect.  If you  save them to  a file,  a file  MDR.CFG is
  3054.      created or  updated. When Modem Doctor loads the next time, it will use
  3055.      these colors again.
  3056.  
  3057.  
  3058.      4.7 Exit Program     
  3059.      ----------------     
  3060.      This is  the  only way  to exit  the Modem  Doctor.  This is  necessary
  3061.      because  the  interrupt tables  and  controllers  of  your PC  must  be
  3062.      returned to their original  state in order to avoid  problems after you
  3063.      use the Modem  Doctor.  Pressing Control-C or  Control-Break during the
  3064.      Modem  Doctor will cause  one of two  things to happen.  First, it will
  3065.      ignore what you  have done if  it is critical that  the program not  be
  3066.      interrupted,  or second,  if  it is  at  all possible  to exit  without
  3067.      damage, a window will open telling you that you can Control-Break abort
  3068.      if you wish..answer yes or  no. You can Control-Break during  all tests
  3069.      and at times from menus. If you choose to quit, the Modem Doctor cleans
  3070.      things up properly  and exits to Dos.  Please remember this is  just an
  3071.      emergency way of  doing an exit. Use the  Exit function from   the main
  3072.      menu as the correct way to end the program.
  3073.  
  3074.  
  3075.  
  3076.  
  3077.  
  3078.  
  3079.  
  3080.  
  3081.  
  3082.  
  3083.  
  3084.  
  3085.  
  3086.  
  3087.  
  3088.  
  3089.  
  3090.  
  3091.  
  3092.  
  3093.                                      Page 50
  3094.  
  3095.  
  3096.  
  3097.  
  3098.  
  3099.  
  3100.  
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.  
  3107.  
  3108.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3109.  
  3110.  
  3111.  
  3112.      5.0 Error Messages and their Meanings     
  3113.      -------------------------------------     
  3114.      The Modem Doctor, if presented with an error, will make a  diagnosis of
  3115.      the problem. In most cases, this should be enough for you to figure out
  3116.      what is wrong and go on from there to correct it.      
  3117.               
  3118.      General Program Errors or Warnings
  3119.      ----------------------------------
  3120.      1)   ABORT PROGRAM Control Break Key pressed..Aborting Program Run. 
  3121.           Do you wish to abort? [Y/N] : 
  3122.           - This means you have pressed the Control Break Key sometime
  3123.           during the program run. The Modem Doctor, unlike most programs,
  3124.           does not drop to dos with a Control-Break without cleaning up
  3125.           after itself. Answering Yes will clean up and stop the program.
  3126.           Answering no keeps the program running at the spot you left off
  3127.           at.
  3128.  
  3129.           If you answer Yes, you will see this message;
  3130.           Flushing Buffers.......Restoring Comm Port and Interrupt Vectors
  3131.           Program Aborted..all vectors restore.
  3132.  
  3133.      2)   You Must SETUP a COMM PORT first....Press any key to continue 
  3134.           - If you do not select at least 1 comm port when the program first
  3135.           starts running, you cannot run any tests. This message explains
  3136.           why.
  3137.  
  3138.      3)   Exchanging COM1 and COM2 Base Addresses in Memory
  3139.           COM1 Address was    %x   COM2 Address was    %x
  3140.           COM1 Address now is %x   COM2 Address now is %x
  3141.           Run MDR /X again to exchange again, these changes are gone when
  3142.           you reboot!
  3143.           - This messages is displayed when Modem Doctor is run in the
  3144.           exchange mode (MDR /x).
  3145.  
  3146.      4)   Sorry...but I cant find a modem to use... Use Login Feature to
  3147.           Manually Log in a comm port.
  3148.           - The Modem Doctor needs at least 1 comm port installed at a
  3149.           conventional port address to run. If none are available, you have
  3150.           to use the manual login mode to start testing. You should never
  3151.           see this  error message with a computer unless it has no serial
  3152.           ports whatsoever.
  3153.  
  3154.  
  3155.                                      Page 51
  3156.  
  3157.  
  3158.  
  3159.  
  3160.  
  3161.  
  3162.  
  3163.  
  3164.  
  3165.  
  3166.  
  3167.  
  3168.  
  3169.  
  3170.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3171.  
  3172.  
  3173.      5)   Resetting modem to your default settings...please wait
  3174.           - Whenever you exit Modem Doctor and a microprocessor-based modem
  3175.           was detected, it will clean up after itself and restore your modem
  3176.           to initial settings. Uart only tests do not display this message.
  3177.  
  3178.      6)   Your foreground color equals  background..please retry
  3179.      7)   Your foreground low intensity equals background, please retry
  3180.           - These messages are displayed when you make color selection
  3181.           choices that would not be proper for the type of display monitor
  3182.           you are using.
  3183.  
  3184.      8)   Warning..I could not create the MDR.CFG file. No colors saved to
  3185.           disk.
  3186.           - Modem Doctor could not save the file to disk, perhaps there is
  3187.           no more space on the disk or the disk is write-protected.
  3188.  
  3189.      9)   Warning..I could not read the MDR.CFG file. No colors read to disk
  3190.           - You asked Modem Doctor to load the color configuration, however
  3191.           there was none found on your disk or in the current working
  3192.           directory.
  3193.  
  3194.      Setup Mode Diagnostics
  3195.      -----------------------
  3196.      1)   No Response...resetting modem microprocessor ...attempt #%d
  3197.           - The Modem Doctor tried sending a simple AT command to your modem
  3198.           but it did not respond with a valid answer.
  3199.  
  3200.      2)   Modem microprocessor command mode not detected
  3201.           - The Modem did not respond to a valid, simple AT command either
  3202.           because it is on-line, jammed, or not completely compatible.
  3203.  
  3204.      3)   Modem microprocessor command bus active
  3205.           - The Modem Doctor received a correct response from the modem and
  3206.           placed it into the command mode.
  3207.  
  3208.      4)   Software reset initiated
  3209.           - A software reset clears all test registers and resets the modem.
  3210.  
  3211.      5)   Modem microprocessor memory tests OK
  3212.           - The Modem Doctor instructed your modem to run a self-test of its
  3213.           RAM/ROM contents. It responded successfully.
  3214.  
  3215.  
  3216.  
  3217.                                      Page 52
  3218.  
  3219.  
  3220.  
  3221.  
  3222.  
  3223.  
  3224.  
  3225.  
  3226.  
  3227.  
  3228.  
  3229.  
  3230.  
  3231.  
  3232.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3233.  
  3234.  
  3235.  
  3236.      6)   Modem microprocessor memory may have a problem
  3237.           - The Modem Doctor instructed your modem to run a self-test of its
  3238.           RAM/ROM contents and did not receive the proper response. Your
  3239.           modem may or may not have a problem depending on the results of
  3240.           all the rest of the testing. If all other tests are ok, chances
  3241.           are your modem might have a memory problem. If other tests fail,
  3242.           it could be because your modem is not completely compatible.
  3243.  
  3244.      7)   Modem ID reports a 1200 bps modem installed
  3245.           Modem ID reports a 2400 bps modem installed
  3246.           Modem reports a 9600+ bps modem installed
  3247.           Modem reports a 9600 /1440 bps modem installed
  3248.           - All of these messages are based on receiving correct product
  3249.           codes from your modem. Some modem manufacturers however do not
  3250.           place valid product codes in their modems, so it is possible that
  3251.           you might see the Modem Doctor give you the incorrect type of
  3252.           modem. This does not affect testing, however it does affect the
  3253.           type of Modem Driver that is automatically selected. You can
  3254.           override automatic selections from the Carrier Menu by selecting
  3255.           the proper driver for your modem.
  3256.  
  3257.      8)   No modem ID received...using Generic driver
  3258.           - No product code was received, so defaults are being used.
  3259.  
  3260.      9)   Modem microprocessor accepts setup commands
  3261.           Modem microprocessor did not accept setup commands
  3262.           - The Modem Doctor sends setup commands for all of its tests to
  3263.           your modem. If they were not received properly, you get an error
  3264.           message.
  3265.  
  3266.      10)  An 8250-B Uart has been detected
  3267.           A 16450 / 8250A Uart has been detected
  3268.           A 16550AN/AF/AFN Buffered Uart has been detected
  3269.           A 16550 Non-buffered Uart has been detected
  3270.           - The Modem Doctor programs uarts differently depending on the
  3271.           type and the test running. This will tell you what type of uart
  3272.           chip you have installed in your serial port.
  3273.  
  3274.  
  3275.  
  3276.  
  3277.  
  3278.  
  3279.                                      Page 53
  3280.  
  3281.  
  3282.  
  3283.  
  3284.  
  3285.  
  3286.  
  3287.  
  3288.  
  3289.  
  3290.  
  3291.  
  3292.  
  3293.  
  3294.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3295.  
  3296.  
  3297.  
  3298.      11)  Modem Control Register reading show that either the LOOP, OUT2,
  3299.           DTR, RTS did not set properly to test. OUT2 and DTR are essential
  3300.           for proper-functioning communications. LOOP is necessary for the
  3301.           digital test to run.
  3302.           -Either the Modem Control Register is bad, or their is a problem
  3303.           with the serial port or modem.
  3304.  
  3305.      12)  Modem Status Register readings show that there is no status coming
  3306.           back from the modem to the Uart. Neither RTS/CTS or DTR/DSR Pairs
  3307.           are active. Most comm programs can work without RTS/CTS, but
  3308.           DTR/DSR are needed by most. RTS/CTS are needed by most hi-speed
  3309.           modems for handshaking.
  3310.           -Your external cable may be wired wrong, or if this is an external
  3311.           modem, check that the cable is plugged in and that the modem is
  3312.           turned on.
  3313.  
  3314.      13)  Line Control Register readings show that the word length selected
  3315.           is incorrect or you have a parity error. WS1 and WS0 should both
  3316.           be on indicating that 8 bit words are to be used. All other
  3317.           readings should be low. Parity errors could happen once but not
  3318.           every time. 
  3319.           -If either persists, then the Uart is defective or communications
  3320.           to the Uart are suspect.
  3321.  
  3322.      14)  Line Status Register readings show a problem. The Tx Holding
  3323.           register THE and the Tx Shift register TSE should be the only
  3324.           active signals. No other signals should be active. If either TSE
  3325.           or THE are not active then the Uart is not resetting properly.
  3326.           Uart is suspect. If any other signal is high, and TSE/THE are both
  3327.           active, then you have a data overrun or framing error. 
  3328.           -If this repeats, you should then suspect the Uart or connections
  3329.           to the Uart from the computer.
  3330.  
  3331.      15)  Modem Control Register readings show that either DTR,RTS or OT2
  3332.           signals are not set properly. DTR & RTS are needed by most comm
  3333.           programs. OT2 is essential for interrupts to occur. 
  3334.           - Uart is suspect or the interface to the Uart from the computer
  3335.            bus.
  3336.  
  3337.      16)  Interrupt ID Register readings show that an interrupt is pending
  3338.           when none should be. This can be caused by a modem being turned on
  3339.           and off as testing was conducted or if data was waiting to be read
  3340.  
  3341.                                      Page 54
  3342.  
  3343.  
  3344.  
  3345.  
  3346.  
  3347.  
  3348.  
  3349.  
  3350.  
  3351.  
  3352.  
  3353.  
  3354.  
  3355.  
  3356.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3357.  
  3358.  
  3359.           by a prior  running application, or you are not using the correct
  3360.           IRQ line.
  3361.            -If this does not clear when you display the registers again,
  3362.            then the Uart is suspect or connections to the Uart from the
  3363.            computer, or you are using the wrong IRQ line for this comm port
  3364.            assignment.
  3365.  
  3366.      17)  Interrupt Enable Register readings show that ERI Enable Receiver
  3367.           ints is not set properly. As a result, you might not get proper
  3368.           recognition of any interrupts being generated when a character is
  3369.           received. 
  3370.           -Suspect the Uart or connections to the Uart from the computer
  3371.           bus.
  3372.  
  3373.      18)  Interrupt Controller has not responded to setting the IRQ4 line.
  3374.           This problem is on the system board of your computer. Run your
  3375.           computer diagnostics program to locate the error.
  3376.           -Normally IRQ4 is used for COM1 you might have a usage conflict.
  3377.  
  3378.      19)  Interrupt Controller has not responded to setting the IRQ3 line.
  3379.           This problem is on the system board of your computer. Run your
  3380.           computer diagnostics program to locate the error.
  3381.           -Normally IRQ3 is used by COM2 you might have a usage conflict.
  3382.  
  3383.      20)  Interrupt Controller has not responded to setting the IRQ7 line.
  3384.           This problem is on the system board of your computer. Run your
  3385.           computer diagnostics program to locate the error.
  3386.           -Normally IRQ7 is used by the printer you might have a usage
  3387.           conflict.
  3388.  
  3389.      21)  Interrupt Controller has not responded to setting the IRQ5 line.
  3390.           This problem is on the system board of your computer. Run your
  3391.           computer diagnostics program to locate the error.
  3392.           -Normally IRQ5 is used by the Hard Drive Controller you might have
  3393.           a usage conflict.
  3394.  
  3395.      22)  WARNING...This COMM PORT MODEM STATUS & ID REGISTERS ARE DEFECTIVE
  3396.           - This is a severe error. It means that one or more of the uart
  3397.           registers are defective. This could also be caused by logging in a
  3398.           non-existent comm port in the manual mode. You should never
  3399.           see this message displayed in an auto-detected mode unless your
  3400.           uart is definitely defective.
  3401.  
  3402.  
  3403.                                      Page 55
  3404.  
  3405.  
  3406.  
  3407.  
  3408.  
  3409.  
  3410.  
  3411.  
  3412.  
  3413.  
  3414.  
  3415.  
  3416.  
  3417.  
  3418.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3419.  
  3420.  
  3421.      Uart diagnostics
  3422.      -----------------
  3423.      1)   Confirmed Uart setup to proper baud rate
  3424.           - The uart Dlab (divisor latch) settings are polled to make sure
  3425.           they match what the Modem Doctor intended. If not, you see the
  3426.            following displayed;
  3427.           ERROR..Uart did not set to desired baud rate
  3428.           (you should not see this message unless the divisor latch in your
  3429.           uart is defective).
  3430.  
  3431.      2)   Trying a hardware reset of the modem microprocessor
  3432.           - None of the attention commands or soft-resets to the modem have
  3433.           worked to place the modem microprocessor on-line. A hardware reset
  3434.           simulates turning the power on and off to the modem and uart.
  3435.  
  3436.      3)   WARNING...This unit does not have a compatible modem attached
  3437.           - After many tests and hardware/software resets, the Modem Doctor
  3438.           finally deduces it cannot work with this modem because it is not
  3439.           compatible. If you have a compatible modem, then you might have
  3440.           selected the wrong baud rate to work with, or you forgot to turn
  3441.           the external modem on. If there is a hardware problem, the next
  3442.           screen you will receive will be the uart diagnostics pointing out
  3443.           the problem. 
  3444.  
  3445.      4)   Modem microprocessor ON-LINE
  3446.           - The Modem Doctor successfully communicated to the modem
  3447.           microprocessor.
  3448.  
  3449.      5)   Testing Uart hardware only
  3450.           - You are running uart-only tests.
  3451.  
  3452.      6)   WARNING...The Modem Device appears to be off or not connected
  3453.           - No status is being received from the modem indicating it is on.
  3454.           If it is on, you might have a bad cable. If you are testing a uart
  3455.           that is hooked up to a serial mouse, then you will always see this
  3456.           message displayed, for a serial mouse does not use traditional
  3457.           uart status.
  3458.  
  3459.  
  3460.  
  3461.  
  3462.  
  3463.  
  3464.  
  3465.                                      Page 56
  3466.  
  3467.  
  3468.  
  3469.  
  3470.  
  3471.  
  3472.  
  3473.  
  3474.  
  3475.  
  3476.  
  3477.  
  3478.  
  3479.  
  3480.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3481.  
  3482.  
  3483.  
  3484.      Report Generator Messages
  3485.      --------------------------
  3486.  
  3487.      1)   You selected to clear the report stats.This means that any errors
  3488.           found will not be reported in a final report format. 
  3489.           Are you sure [Y/N]: ? 
  3490.           - All report statistics will be cleared if you respond Yes.
  3491.  
  3492.      2)   Send to file MDR.RPT 
  3493.           Send to printer LPT1:
  3494.           Send to printer LPT2:
  3495.           Send to printer LPT3:
  3496.           Do not Print /Return
  3497.           - The printed form of your report can be sent to any one of 3 dos
  3498.           printers (if the Modem Doctor detects they are installed) or to a
  3499.           file called MDR.RPT.
  3500.           
  3501.      3)   Print Buffer full or Printer off-line
  3502.           - If the Modem Doctor cannot communicate with the printer, it is
  3503.           either receiving a busy signal from the printer (which clears when
  3504.           the busy signal is lifted) or the printer is off-line.
  3505.  
  3506.      Static DTR/DSR   RTS/CTS  Handshaking tests
  3507.      -------------------------------------------
  3508.  
  3509.      1)   Lowering DTR Signal..waiting for DSR to follow
  3510.           DSR did not follow DTR dropping or is set as a permanent ON
  3511.           DSR followed DTR drop...normal for all devices
  3512.           DSR did not follow DTR raising..possible cable or modem setup
  3513.           problem
  3514.           DSR followed DTR raise or is set as a permanent ON
  3515.           - The DTR/DSR tests work by lowering the DTR (Data terminal ready)
  3516.           signal from the computer to the modem. If the modem uses this type
  3517.           of handshaking, it should respond by lowering its signal that is
  3518.           picked up in the uart modem status register as a DSR (Data set
  3519.           ready) signal. If not, then either the modem is not set up
  3520.           properly according to standard handshaking protocol or you have a
  3521.           bad cable. Please note, a failure to follow DTR/DSR handshaking
  3522.           might keep some communication programs from working with your
  3523.           modem. If you get an error, consult your modem manual or have the
  3524.           Modem Doctor test your cable to an external modem with a loopback
  3525.           plug.
  3526.  
  3527.                                      Page 57
  3528.  
  3529.  
  3530.  
  3531.  
  3532.  
  3533.  
  3534.  
  3535.  
  3536.  
  3537.  
  3538.  
  3539.  
  3540.  
  3541.  
  3542.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3543.  
  3544.  
  3545.           
  3546.      2)   Lowering RTS signal..waiting for CTS to follow
  3547.           Dropping RTS Signal to modem
  3548.           Modem is using RTS/CTS Handshaking properly
  3549.           Modem is not using RTS/CTS Handshake hold
  3550.           Raising RTS line    
  3551.           CTS did not follow RTS dropping...usually normal for modems
  3552.           CTS followed RTS drop...usually normal for serial devices
  3553.           CTS did not follow RTS raising...you could have a cable problem
  3554.           CTS followed RTS raise or is set as a permanent ON
  3555.           - Like DTR/DSR, RTS/CTS handshaking tests check that if the
  3556.           computer lowers its RTS (Ready to send) line, that the modem
  3557.           responds in kind and that the CTS (Clear to send) status is echoed
  3558.           to the uart modem status register. This signal is not as important
  3559.           as the DTR/DSR, unless you have a high speed modem. In this case
  3560.           RTS/CTS handshaking is critical for proper high-speed transfers.
  3561.  
  3562.      Carrier and Dynamic tests
  3563.      ---------------------------
  3564.      1)   Sending Carrier Test info to modem
  3565.           - Commands to self-connect are beings sent to your modem.
  3566.  
  3567.      2)   T1 Loopback commands sent waiting 5 seconds till start of test
  3568.           - The alternate &T0/&T1 instruction set is being used for self
  3569.           tests.
  3570.  
  3571.      3)   Carrier Detected...waiting 5 seconds to the start of the test
  3572.           - The RLS (Received line signal) went to an active state or the
  3573.           Modem Doctor received the words CONNECT from the modem during
  3574.           self-testing. The 5 second delay is necessary to allow some modems
  3575.           to settle down for proper reception of characters during
  3576.           self-tests.
  3577.  
  3578.      4)   Using &T1 Loopback command set to modem for this test
  3579.           - If you selected the Generic driver and the Modem Doctor failed
  3580.           to connect, it uses this &T0/&T1 instruction set automatically for
  3581.           its testing. 
  3582.  
  3583.      5)   Sending 20 Characters to the modem
  3584.           - All Dynamic DTR/DSR and RTS/CTS tests force the modem to self
  3585.           connect. Next either the DTR or RTS lines are dropped, and 20
  3586.           characters are sent to the modem. If no characters are received
  3587.           back to the computer from the modem, then the Modem Doctor reports
  3588.  
  3589.                                      Page 58
  3590.  
  3591.  
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3605.  
  3606.  
  3607.           that the dynamic handshaking works. If a character is received,
  3608.           then it means that type of dynamic handshaking does not work.
  3609.  
  3610.      6)   Sending Xoff Signal to modem
  3611.           - An ASCII character that tells the modem NOT to send data has
  3612.           been transmitted to the modem for dynamic Xon/Xoff testing.
  3613.  
  3614.      7)   Modem is using Xon/Xoff Handshaking properly
  3615.           - 20 characters were sent to the modem, and it properly did not
  3616.           send anything back to the computer.
  3617.  
  3618.  
  3619.      8)   Modem is not using Xon/Xoff Handshake hold
  3620.           - 20 characters were sent to the modem, but it send them back to
  3621.           the computer, indicating it did not recognize the dynamic Xon/Xoff
  3622.           handshake test. Normally most modems do not need this handshake.
  3623.  
  3624.      9)   Sending Xon Signal to the modem
  3625.           - This restores the modem to proper operation and clears its
  3626.           internal data buffers.
  3627.  
  3628.      10)  Warning...I can't test this modem because there is no RTS/CTS
  3629.           signals. If this is an external modem, you may not have a proper
  3630.           cable or the modem is off. If you have an internal, you might have
  3631.           a port conflict or a configuration switch set improperly.
  3632.           - Most times this message is due to an improperly wired cable or a
  3633.           improper configuration of some modem switches. See your modem
  3634.           manual for setup, or use a loopback plug and the Analog loopback
  3635.           mode to test the cable.
  3636.  
  3637.      11)  Setting up the modem for the Originate Mode Carrier Test..please
  3638.           wait.
  3639.           Setting up the modem for the Answer Mode Carrier Test.....please
  3640.           wait.
  3641.            -Self tests commands are being sent to your modem for the
  3642.             different connect modes and frequencies.
  3643.  
  3644.  
  3645.  
  3646.  
  3647.  
  3648.  
  3649.  
  3650.  
  3651.                                      Page 59
  3652.  
  3653.  
  3654.  
  3655.  
  3656.  
  3657.  
  3658.  
  3659.  
  3660.  
  3661.  
  3662.  
  3663.  
  3664.  
  3665.  
  3666.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3667.  
  3668.  
  3669.  
  3670.      General program warnings
  3671.      ------------------------
  3672.      1)   Note...you hit the Escape Key during testing. This means the
  3673.           results of this test is inconclusive. You should run these tests
  3674.           again without escaping for a valid performance check.
  3675.           - You can press escape during nearly all tests that the Modem
  3676.           Doctor runs (except during crucial communication modes between the
  3677.           modem and computer, in which case as soon as this communication is
  3678.           completed, the Modem Doctor will escape with this warning.
  3679.  
  3680.      2)   INTERRUPT FAILURE Warning
  3681.           Note...No interrupts were detected or generated during testing.
  3682.           This could be due to a failure of your serial port to generate
  3683.           interrupts or you have selected an IRQ line or Comm assignment in
  3684.           error on the serial card or in a custom assignment from the Login
  3685.           menu manual mode. Check your settings and if all is ok, suspect
  3686.           the Uart or serial port card.
  3687.           - This warning can be received anytime that the Modem Doctor tries
  3688.           to talk to a modem or a uart (in analog loopback test). The most
  3689.           common cause of this problem is an incorrect jumper or comm port
  3690.           assignment on your modem or serial port. See the section on IRQ's
  3691.           and their meanings to select the proper IRQ line for your port.
  3692.  
  3693.      3)   Fixed Rate Advisory
  3694.           Note...I had to lower the baud rate to match the connect rate.
  3695.           What this means is that you are using a high speed modem with a
  3696.           fixed link rate in a variable rate mode. You might want to check
  3697.           your DTE/DCE settings in your modem Nram if this is not desired.  
  3698.          - Most high-speed modems keep the link between the computer and
  3699.           the modem running at a fixed rate, while the connection between
  3700.           the modem and the remote modem (bbs or service) operates at
  3701.           another rate. This method allows data compression and greater
  3702.           throughput (characters per second) to be received by the computer.
  3703.           If you have a high-speed modem, check your settings. It is
  3704.           recommended you run in the fixed link rate whenever possible so
  3705.           you can gain all the benefits of data compression with the new
  3706.           data protocols.
  3707.  
  3708.  
  3709.  
  3710.  
  3711.  
  3712.  
  3713.                                      Page 60
  3714.  
  3715.  
  3716.  
  3717.  
  3718.  
  3719.  
  3720.  
  3721.  
  3722.  
  3723.  
  3724.  
  3725.  
  3726.  
  3727.  
  3728.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3729.  
  3730.  
  3731.  
  3732.      4)   Failure Report 
  3733.           RLS (Received Line Signal Detect) indicates that a carrier has not
  3734.           been received by the UART. Check modem or connector wiring 
  3735.           - This is an advisory that you might have a cable wired      
  3736.           incorrectly between your computer and external modem or that your
  3737.           modem does not raise the RLS signal. This is only critical if your
  3738.           communication  programs never display the words "ON-LINE".
  3739.  
  3740.      5)   Modem not responding to the Analog originate test
  3741.           - Modem never went into the self-test mode. 
  3742.  
  3743.      6)   Carrier Not Detected..5 Sec Sync Delay till start of Answer test  
  3744.           Modem not responding for Analog answer test
  3745.           - A carrier should have been received by the RLS signal or the
  3746.           words CONNECT from the modem, if not, the &T0/&T1 instructions are
  3747.           sent and the test is performed. If the modem does not respond to
  3748.           this test, then the last message is displayed indicating a problem
  3749.           getting the modem to self-test itself.
  3750.  
  3751.      7)   RLS Warning
  3752.           The Received Line Signal of your modem stayed active throughout
  3753.           the testing. Some modems have a jumper or switch that should be
  3754.           set to carrier is active only when a signal is detected. Check
  3755.           your manual to change this setting so the Modem Doctor and comm
  3756.           programs will work properly. Check your modem to make sure that
  3757.           Carrier isn't forced high 
  3758.  
  3759.      8)   NOTE.Carrier (RLS Line) active, it should not be..test may not be
  3760.           valid.
  3761.           - The RLS signal was always active. This means the Modem Doctor
  3762.           cannot figure out if the modem ever entered the self-test mode.
  3763.           Also, your communications program probably will always display the
  3764.           "ON-LINE" status. Unfortunately, this type of situation is the
  3765.           default setting from the factory of most 2400 bps modems. It can
  3766.           be reprogrammed by a simple setup command. See your modem manual
  3767.           for instructions.
  3768.  
  3769.      9)   SET YOUR MODEM TO ORIGINATE CARRIER FREQUENCY...PRESS TO CONTINUE
  3770.           SET YOUR MODEM TO ANSWER CARRIER FREQUENCY...PRESS TO CONTINUE
  3771.           - Dumb modem tests require you to flip switches on your modem.
  3772.           Usually this is the AL button. After you do this, the Modem Doctor
  3773.           should see a carrier and continue proper testing.
  3774.  
  3775.                                      Page 61
  3776.  
  3777.  
  3778.  
  3779.  
  3780.  
  3781.  
  3782.  
  3783.  
  3784.  
  3785.  
  3786.  
  3787.  
  3788.  
  3789.  
  3790.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3791.  
  3792.  
  3793.      10)  Loopback Transmit Error
  3794.           Loopback Queue Failure
  3795.           ESCAPE KEY PRESSED....ABORTING ALL LOOPBACK TESTS
  3796.           UART Control Lines set...waiting 2 seconds for CTS Handshake
  3797.           NO CTS Handshake Detected .Continuing test even though plug/line
  3798.           maybe bad
  3799.           Loopback Queue Failure 
  3800.           UART not responding using Analog Loopback Plug mode
  3801.           No Loopback Plug or General Failure of the Hardware
  3802.           Analog Loopback Test passed without any errors
  3803.           - If the analog loopback did not return characters or generate an
  3804.           interrupt, then the uart may have been tested without a loopback
  3805.           plug attached or there is a failure of the uart. If all was ok, a
  3806.           passed message is displayed.
  3807.  
  3808.      11)  Loopback Transmit Error
  3809.           UART not responding to the Digital Loopback test
  3810.           UART Registers did not set for Loop back test 
  3811.           UART Digital Test passed without any errors
  3812.           - If no characters were received, then either the uart you are
  3813.           working with is not 100% 8250-B compatible or defective. If
  3814.           everything was ok, a passed message is displayed.
  3815.  
  3816.      12)  Warning, Comm Port 1 is using Com Port 2's address.You should
  3817.           reconfigure your Serial Card to the correct Address.
  3818.           Otherwise,Communication programs won't properly operate.
  3819.  
  3820.      13)  Warning, Comm Port 2 is using Com Port 1's address.
  3821.           Do you want me to correct this for testing purposes only? [Y/N]: 
  3822.           - These error messages are received if the Modem Doctor found a
  3823.           Com2 reserved address as Com1, or visa versa. Many PC owners that
  3824.           do not have built-in serial ports make the mistake of assigning a
  3825.           Com2 address without having a Com1 installed. The ROM-BIOS cannot
  3826.           correct this problem or even detect it. The Modem Doctor does and
  3827.           will point out the error to you.
  3828.  
  3829.      14)  Flopping COM1/COM2 pointers in Memory only. Note..this is only
  3830.           valid till the next warmboot of your system. You must change your
  3831.           serial card settings to keep this permanent. Note...tests may not
  3832.           work  properly because of this error.
  3833.           - This message is displayed either in the exchange mode or when
  3834.           the Modem Doctor is asked to fix the problem of addresses in
  3835.           memory for testing only.
  3836.  
  3837.                                      Page 62
  3838.  
  3839.  
  3840.  
  3841.  
  3842.  
  3843.  
  3844.  
  3845.  
  3846.  
  3847.  
  3848.  
  3849.  
  3850.  
  3851.  
  3852.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3853.  
  3854.  
  3855.      15)  Logging out incorrect COM1 for testing purposes.
  3856.           Logging out incorrect COM2 for testing purposes.
  3857.           - If you decide not to fix a problem, the incorrect assignment is
  3858.           logged out of Dos and your choices for testing.
  3859.  
  3860.      16)  ALL Available COMM ports are in use...Press to Return
  3861.           - If 4 comm ports (shareware) or 8 comm ports (registered) are
  3862.           already in use, you cannot add any more in the auto-login mode to
  3863.           the Modem Doctor. Use the manual mode to override your choices for
  3864.           testing comm ports higher than 8.
  3865.  
  3866.      17)  Comm (x) Not Found ... override ? :
  3867.           - You told the Modem Doctor in manual mode that a port existed
  3868.           with a certain base port address. It was not found. If you
  3869.           override, this  address is logged in for testing. This allows you
  3870.           to test a defective uart chip that might not be recognized by dos
  3871.           or the Modem Doctor as valid.
  3872.  
  3873.      18)  Sorry...your Modem.dat file has an invalid Comm port
  3874.           Sorry...I cannot find Modemdr.dat file in this directory
  3875.           
  3876.           WARNING...RESERVED PORT ADDRESS in Mdr.dat file
  3877.           correct address in hex must be between [ ]..ie [2F8]
  3878.  
  3879.           Sorry...your Modem.dat file has an invalid Speed..using 300 baud
  3880.  
  3881.           Modem Did not respond to setup string..run the Modem Doctor to
  3882.           check your modem.
  3883.  
  3884.           Programming according to file Mdr.dat
  3885.           Modem Responded to setup string and is ready for use
  3886.  
  3887.           - Running Modem Doctor in the setup (/s) mode, the file MDR.DAT is
  3888.           queried for the proper comm port, address, speed and setup string.
  3889.           If any of this is invalid, one of the messages above is received.
  3890.           If it is valid you receive the message that Modem Doctor is
  3891.           programming according to the Mdr.dat file.
  3892.  
  3893.  
  3894.  
  3895.  
  3896.  
  3897.  
  3898.  
  3899.                                      Page 63
  3900.  
  3901.  
  3902.  
  3903.  
  3904.  
  3905.  
  3906.  
  3907.  
  3908.  
  3909.  
  3910.  
  3911.  
  3912.  
  3913.  
  3914.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3915.  
  3916.  
  3917.  
  3918.      19) Standard Assignment Not Verified
  3919.           When Modem Doctor 6 starts, it automatically verifies all comm
  3920.           port base addresses and IRQ settings. However, some environments
  3921.           may not tolerate self-testing of IRQ selections. To defeat this
  3922.           setting,  Modem Doctor is started with the /Q switch. When
  3923.           operating in this mode, Modem Doctor displays the above message
  3924.           next to the IRQ assignments to indicate that the program has not
  3925.           verified any IRQ assignments.
  3926.  
  3927.      Section 6. Special Modes and Information     
  3928.      ---------------------------------------- 
  3929.      The Modem Doctor supports a wide range of "AT" instruction set modems.
  3930.      There are however  "supersets" of instructions that  manufacturers have
  3931.      used to enhance the capability of their modems. Although there is some
  3932.      structure  in this area, not all commands intermix between different
  3933.      brands and lines of modems. This situation is analogous to PC computer
  3934.      printers, and it  calls for a similar approach. The Modem Doctor now
  3935.      supports the use of "Modem Drivers" to meet these special needs. 
  3936.      Additionally, due to the increase in computers using the ISA bus, there
  3937.      are more interrupt lines  free to be used  by modem manufacturers.  For
  3938.      test purposes, you can use IRQ2-15 for your hardware testing. Using the
  3939.      special /S switch, you can send initialization codes to your modem from
  3940.      a batch  file or other  command-line need to  setup the modem  for use.
  3941.      Finally, to  add some  flexibility to  the Modem  Doctor's diagnostics,
  3942.      some  special  "Hot-keys" have  been added.  These have  been discussed
  3943.      above in  an operational sense,  however in  this section you  will get
  3944.      some idea of how these can help you speed up testing and test defective
  3945.      or non-compatible hardware.   
  3946.              
  3947.      6.1 Using Modem Drivers 
  3948.      -----------------------  
  3949.      Most Modem's today are built on  the original "AT" instruction set that
  3950.      was developed by Hayes Micromodems  in their 1200B series. This driver,
  3951.      named the Generic  Driver in the  Modem Doctor, is used  exclusively if
  3952.      the modem returns an ID indicating it is a 300,1200 or 2400  bps modem.
  3953.      Also, if the modem  does not return an ID, this Generic Driver is used.
  3954.      The Generic Driver can be used to test nearly all modems, however there
  3955.      are some 2400 bps modems that  were  built using the command  structure
  3956.      that Hayes Micromodems put into their 2400B line. These  modems used an
  3957.      "&" for some  modem setup and command functions. The Modem Doctor has a
  3958.      driver for these modems called the "&T0/&T1" driver. Using this driver,
  3959.      the Modem Doctor  can perform  a simulated   carrier test. During  your
  3960.  
  3961.                                      Page 64
  3962.  
  3963.  
  3964.  
  3965.  
  3966.  
  3967.  
  3968.  
  3969.  
  3970.  
  3971.  
  3972.  
  3973.  
  3974.  
  3975.  
  3976.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  3977.  
  3978.  
  3979.      testing of  this type  of modem, you  will notice  the MB  (Modem Busy)
  3980.      light flashing on your    external modem. This driver  (and all others)
  3981.      is user selectable, however the  Modem Doctor will automatically switch
  3982.      to it when performing the carrier tests if the Modem was detected to be
  3983.      a 2400 bps modem.
  3984.  
  3985.      Most high speed modem will work properly with one of two drivers; The
  3986.      Hayes Ultra or  US Robotics  (Courier) V.32.  So if your  modem is  not
  3987.      listed, use one of these two drivers in its place.
  3988.  
  3989.      6.11 External Modem Drivers
  3990.      ---------------------------
  3991.      Supported starting with version 4.0 is the ability to read a specially
  3992.      created  external modem  driver file.  This file  makes it  possible to
  3993.      handle any future  changes in modems by  simply releasing a  new driver
  3994.      file.  When the  Modem Doctor  first begins,  it looks  in the  default
  3995.      directory for the existence of this driver  file. If it exists, a valid
  3996.      checksum is performed  to see that it is indeed a  modem driver. If so,
  3997.      this external set of  commands is inserted  in place of the  internally
  3998.      contained modem  drivers. As of the  initial release of  7.0, there are
  3999.      two external driver files in  circulation. These drivers are built into
  4000.      the latest  release of  Modem Doctor  (ver 7.0).  Driver files  will be
  4001.      released under 2 conditions; first, if a bug is detected in any  of the
  4002.      driver  routines, a  shareware  driver  file will  be  released on  the
  4003.      bulletin boards at no cost. Registered users will be mailed at  no cost
  4004.      the  updated driver  file. Second,  if a  registered user would  like a
  4005.      custom modem driver file written, we will create one at  minimal charge
  4006.      as long as proper documentation for the type of modem is  submitted. If
  4007.      you wish  to have an  interface written, please contact  us for pricing
  4008.      and appropriate  information that we will need to do this for you.
  4009.               
  4010.               
  4011.      6.2 Using the Command Line Mode switch /S 
  4012.      ----------------------------------------  
  4013.      There can be special occasions where you need to initialize and test a
  4014.      modem  before another program can be run. The Modem Doctor now supports
  4015.      a method to do this. Using the command line switch /S, you can instruct
  4016.      the Modem Doctor to "wake-up" a Modem and send an initialization string
  4017.      to it.
  4018.  
  4019.      Although similar to our product Comset, it offers some additional
  4020.      flexibility but does not allow the serial port only setup that Comset
  4021.      does.    To use  this special mode, you  need to have  a companion file
  4022.  
  4023.                                      Page 65
  4024.  
  4025.  
  4026.  
  4027.  
  4028.  
  4029.  
  4030.  
  4031.  
  4032.  
  4033.  
  4034.  
  4035.  
  4036.  
  4037.  
  4038.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4039.  
  4040.  
  4041.      named MDR.DAT that you create  with any ASCII text editor  that follows
  4042.      this format;  
  4043.  
  4044.           1) All information must start on the first space on each line     
  4045.              and can consist of up to 3 lines. Line 1 and Line 2 are 
  4046.              required.  
  4047.               
  4048.           2) Line 1 = Port Number 1 through 8 and an optional port address
  4049.              in  [] ( For settings greater than Port 4, this address is
  4050.              required).
  4051.  
  4052.           3) Line 2 = the Baud Rate you wish to use (300-115200 or 3-1152
  4053.              are acceptable).  
  4054.              
  4055.           4) Line 3 = the initialization string you wish to send. This
  4056.              string must start with AT and can be up to 80 characters long.
  4057.              If no string is included in the file, or if it does not begin
  4058.              with the letters AT, then ATZ is automatically sent to the
  4059.              modem.   
  4060.               
  4061.           Example..to setup Port 2 to 19200 and set S7 to 255;  
  4062.           Make a file called MDR.DAT that looks like this;        
  4063.  
  4064.               2 [2F8]<--note for Port 1-4 unless it is non-standard [2F8] 
  4065.                         is not needed   
  4066.               192   
  4067.               AT S7= 255  
  4068.           Next, start the Modem Doctor by typing  MDR /S. As long as the
  4069.           MDR.DAT file is in the current working directory, these commands
  4070.           will be sent. If not, you will get an error message stating that
  4071.           MDR.DAT could not be found.  
  4072.  
  4073.           Why not have the Modem Doctor search all directories for the file?
  4074.           Well, the reason is so that you can put MDR.EXE in a Dos path but
  4075.           have individualized setup MDR.DAT files in different
  4076.           subdirectories for different programming needs. Instead of
  4077.           constantly changing the file, make different ones and call
  4078.           MDR.EXE. It will only use the MDR.DAT file in the current working
  4079.           directory.
  4080.               
  4081.      After the initialization string is sent, the Modem Doctor will wait
  4082.      up to 10 seconds for the word "OK" to return from  the modem. If it
  4083.      does not, you will get a message saying the modem failed to setup. In
  4084.  
  4085.                                      Page 66
  4086.  
  4087.  
  4088.  
  4089.  
  4090.  
  4091.  
  4092.  
  4093.  
  4094.  
  4095.  
  4096.  
  4097.  
  4098.  
  4099.  
  4100.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4101.  
  4102.  
  4103.      either case, whatever your modem sent to the Modem Doctor will be
  4104.      displayed. If you see the word "ERROR", that was sent from the modem,
  4105.      it probably means that your initialization string was not correct. No
  4106.      message returning could indicate a problem with the modem, or an
  4107.      invalid baud rate. When it finishes executing, the Modem Doctor
  4108.      returns an errorlevel to the calling program. An errorlevel of 0 is
  4109.      normal, an errorlevel of 99 indicates a failure. You can use these
  4110.      errorlevels to control batch processes if you wish to.  
  4111.      Also, this mode of the Modem Doctor uses bios screen writes, so all
  4112.      of the information displayed can be redirected to a printer, a file,
  4113.      or whatever other DOS device you wish.  Example...to send the output
  4114.      of this test to a file called Test.txt...  
  4115.  
  4116.                MDR /S  > TEST.TXT or    MDR /S >> TEST.TXT (if you wish to
  4117.                append an existing Test.txt file.  
  4118.  
  4119.      If the Modem Doctor setup was successful, the modem's DTR and RTS lines
  4120.      stay active, if not, they are dropped.  If you need more specialized
  4121.      command-line  modes of  operation, you  might  consider Comset.  Comset
  4122.      allows Serial Ports and  Modems to be setup at various  rates and under
  4123.      various conditions. Registered  Modem Doctor users get  a 15% discount!
  4124.      You can find Comset on most BBS's as COMSET12.ZIP.   
  4125.          
  4126.      6.3 Using the Hot-Keys 
  4127.      ----------------------  
  4128.      Hot-Keys are  combinations of  the ALT  key plus  a  letter. The  Modem
  4129.      Doctor adds several of these Hot-keys to make it easier to test  modems
  4130.      at different  baud rates and to  circumvent  some of the error checking
  4131.      that the program performs under normal circumstances.  
  4132.               
  4133.      ALT-B Change Baud rate - 
  4134.      If you are testing a system that you  suspect has a problem, it is best
  4135.      to use the setup mode when changing the baud rate.  The Setup mode will
  4136.      test all the registers, and  the modem microprocessor (if selected) and
  4137.      assure you that all the hardware is communicating properly at each baud
  4138.      rate. However, if  you feel a system  is running fine, using  the ALT-B
  4139.      from the  main menu can save time when  running tests at different baud
  4140.      rates. Press ALT-B  and select the baud rate (taking care not to select
  4141.      a rate higher that what your modem is  rated for if you are doing modem
  4142.      tests). ALT-B  works from the  main menu,  and from  inside the  Manual
  4143.      interactive mode.   
  4144.               
  4145.  
  4146.  
  4147.                                      Page 67
  4148.  
  4149.  
  4150.  
  4151.  
  4152.  
  4153.  
  4154.  
  4155.  
  4156.  
  4157.  
  4158.  
  4159.  
  4160.  
  4161.  
  4162.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4163.  
  4164.  
  4165.      ALT-C Clear Screen - 
  4166.      This key is  only active inside of  the Manual interactive mode  and is
  4167.      used to clear the text window of any characters.                     
  4168.  
  4169.      ALT-F Force Microprocessor on-line - 
  4170.      The  Modem  Doctor  has  many  tests built-in  to  verify  the  working
  4171.      condition of a microprocessor-based modem and will not allow a modem to
  4172.      be tested  in the  "AT" instruction  set mode  if it  has not  properly
  4173.      addressed and setup a modem microprocessor. Using the ALT-F combination
  4174.      forces the Modem Doctor to perform tests as if it had properly  setup a
  4175.      modem. This  feature should  be used  with care,  however   its primary
  4176.      benefit is to  help you test a malfunctioning modem to see exactly what
  4177.      commands it will respond to. Pressing ALT-F also updates the status bar
  4178.      to  indicate that the modem microprocessor is on-line (which may or may
  4179.      not be the  case after this command  was issued). Version 4.0  of Modem
  4180.      Doctor makes this hot-key a toggle, so pressing 1 time will  change the
  4181.      on-line status. Pressing again returns it back to normal.
  4182.  
  4183.      ALT-H Help -
  4184.      You can  press this key at any  time to get help on  a topic or general
  4185.      help depending on  if you are in  a menu or at the  main menu selection
  4186.      bar.
  4187.  
  4188.      ALT-R Register Display - 
  4189.      This is  only active inside of the Manual  interactive mode and is used
  4190.      to  display  the status  of  all  Uart  registers  on  the  screen  for
  4191.      diagnostic purposes.  
  4192.  
  4193.      ALT-X Exit Mode - 
  4194.      This is only active inside of  the Manual interactive mode and is  used
  4195.      to exit this mode. 
  4196.  
  4197.      Control -Break
  4198.      --------------
  4199.      This  allows  an immediate  exit from  anywhere permissible  inside the
  4200.      Modem  Doctor,  however  it offers  you  a  choice to  clean  up  or to
  4201.      continue. You should not  use this mode, it  is better to exit via  the
  4202.      Main menu selection.
  4203.  
  4204.  
  4205.  
  4206.  
  4207.  
  4208.  
  4209.                                      Page 68
  4210.  
  4211.  
  4212.  
  4213.  
  4214.  
  4215.  
  4216.  
  4217.  
  4218.  
  4219.  
  4220.  
  4221.  
  4222.  
  4223.  
  4224.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4225.  
  4226.  
  4227.  
  4228.      6.4 Logging in Defective Ports 
  4229.      ------------------------------  
  4230.      If a serial port Uart is defective, the Modem Doctor will refuse to log
  4231.      it in for testing. This is necessary because there is no way  for it to
  4232.      know  what  ports  are defective  and  what  are  non-existent. However
  4233.      starting with  Version 4.0, you  can now  log-in a  defective chip  for
  4234.      testing. The procedure to do so is explained above under Manual  Login.
  4235.      The reason for  doing so however might  not have been apparent.  If any
  4236.      register of a serial port is defective, it might not function properly.
  4237.      Logging in this  defective port will give  you the full benefit  of the
  4238.      Uart and Serial port diagnostics.  Error messages will be displayed, in
  4239.      most  cases  there will  be  multiple  error  messages. There  are  two
  4240.      possible causes of a defective port; the  Uart chip and the Serial Port
  4241.      address system. If  it is a chip,  simply replacing the chip  fixes the
  4242.      problem.  If it is  a serial port  instead, then the  same problem will
  4243.      repeat. How do  you approach this?  Well for  starters, check that  the
  4244.      strapping  on your  serial port  board  matches the  correct COMM  port
  4245.      assignment (ie strapped for COM1 for COM1..etc). Next, if there is user
  4246.      selectable IRQ  assignments, make sure  it again matches the  COMM port
  4247.      assignment (IRQ4 for COM1/3, IRQ3 for COM2/4, IRQ5 for COM7/8, IRQ7 for
  4248.      COM6/7). If all  this is set properly,  then you can suspect  the chip,
  4249.      but also the Serial Port hardware that gates the address of the chip to
  4250.      the computer.  Finally, if you get warnings  about status, but the chip
  4251.      logs in, then  you might just have a bad cable from the computer to the
  4252.      modem (NOTE:  The Modem  Doctor does  not consider  this  an error  but
  4253.      simply displays a warning and allows the Uart to be logged-in for use).
  4254.           
  4255.               
  4256.      6.5 What tests cannot Do     
  4257.      ------------------------     
  4258.      Although  I  tried to  be extremely  thorough  in my  tests,  there are
  4259.      somethings that  tests just cannot  do or  pinpoint. If you  are having
  4260.      problems with  excessive line-noise,  you might  have a  bad connection
  4261.      between  your modem  and your  telephone wiring  in the  house. Another
  4262.      possibility, although  remote, is  that your modem  does not  offer the
  4263.      correct input  impedance to  the telephone line.  This can cause  poor 
  4264.      connections. The  problem is with  the electronic design of  the modem,
  4265.      and  again, it  is more  prevalent in  inexpensive modems.  Also, tests
  4266.      cannot check  that the communications  program you are using  is set up
  4267.      correctly.
  4268.  
  4269.  
  4270.  
  4271.                                      Page 69
  4272.  
  4273.  
  4274.  
  4275.  
  4276.  
  4277.  
  4278.  
  4279.  
  4280.  
  4281.  
  4282.  
  4283.  
  4284.  
  4285.  
  4286.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4287.  
  4288.  
  4289.      At times,  installing a  communications package can be very challenging
  4290.      for a novice  user. Tests also cannot  check the wiring in  your serial
  4291.      Cable. The Modem Doctor will tell you if a handshaking pair is missing,
  4292.      but it cant tell you why. It could be because the Uart is bad, but more
  4293.      than likely,  your RS-232  Cable doesn't carry  all of  the handshaking
  4294.      signals to  or from the  external modem or  serial device. This  can be
  4295.      important if you  are using a high-speed modem.  Most High-speed modems
  4296.      will  drop the  CTS line  when  their communication  buffers are  full.
  4297.      Previous  Modems ignored   the  RTS/CTS  signals and  instead used  the
  4298.      DTR/DCE pair. What this  means is that if you buy a new modem, it might
  4299.      not work with  the older-cable (yet  at the same  time the older  modem
  4300.      will  work..which might lead  you to believe that  you have a defective
  4301.      modem).      
  4302.               
  4303.      6.6 Quirks with Some Modems     
  4304.      ---------------------------      
  4305.      Carrier tests - 
  4306.      Some  Modems have  two "AT"  instruction sets,  usually referred  to as
  4307.      Compatible and Enhanced. If your modem does not perform a carrier  test
  4308.      at speeds  below 4800,  then  this is  usually  the case.  Some  modems
  4309.      provide a dip-switch or  a toggle switch to select either mode. Setting
  4310.      your  modem to  the Standard  Compatible Mode  should get  rid of  your
  4311.      problems  below  4800 bps.  Also,  make  sure  you select  the  Generic
  4312.      Compatible  Modem Driver  unless you  are sure  your modem  matches the
  4313.      modem's that have special drivers  written especially for their use. At
  4314.      speeds above  4800 bps,  the Modem Doctor  is only compatible  with USR
  4315.      V.32, Dual  Standards (V.32  and HST)  and HST  brand of  modems, Hayes
  4316.      V9600 and  Ultra 9600,  and Courier 2400  modems. If  you wish  to test
  4317.      another brand  of modem that  is not  compatible, simply  turn off  any
  4318.      modem-hardware error correcting using the Manual mode and following the
  4319.      information in your  modem users manual. Then select  the Generic Modem
  4320.      Driver and you should be able to test your modem properly. 
  4321.  
  4322.      Finally, if only one of the tests (Originate or Answer) runs and NO    
  4323.      CARRIER is displayed for the other, the problem lies with the Enhanced
  4324.      Command  settings of  your  modem.  Hayes Modems  use  &T1 through  &T8
  4325.      commands for their 2400 and also  have other special switches. The  &T0
  4326.      command set is tried by this version of the Modem Doctor automatically,
  4327.      however there  is no compensation for any other type of modems that use
  4328.      non-standard  commands. Again for  the sake  of compatibility  with the
  4329.      widest range of  modems at speeds below 4800,  this cannot be corrected
  4330.      for in  this version. Considering  the vast numbers of  "AT" compatible
  4331.      modems in the marketplace,  these two exceptions are minor and will not
  4332.  
  4333.                                      Page 70
  4334.  
  4335.  
  4336.  
  4337.  
  4338.  
  4339.  
  4340.  
  4341.  
  4342.  
  4343.  
  4344.  
  4345.  
  4346.  
  4347.  
  4348.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4349.  
  4350.  
  4351.      affect most users. Finally, users of 8250 compatible  Uarts that do not
  4352.      support the  Digital (Chip) Loopback will get  an error. This should be
  4353.      of no concern.   However if the test runs  for a while, then fails,  it
  4354.      could indicate  a problem  with your  Uart. This  is  explained in  the
  4355.      pull-down window  in the program. The  Modem Doctor has been  tested on
  4356.      about 25 Modems from Major Manufacturers and on a variety of Clones and
  4357.      Compatibles  (plus the  "Real Thing").  It is  possible that  a certain
  4358.      combination of hardware still might give problems, however if you are a
  4359.      registered user, I will find a way to make it work.  
  4360.  
  4361.      6.7 Buffered vs Direct Connect Modems
  4362.      -------------------------------------
  4363.      When testing  high speed  modems,  you should  note that  some of  them
  4364.      cannot test in the a "buffered mode", which means that they will not be
  4365.      able to  self-test in  carrier mode  above speeds  of  9600. The  Hayes
  4366.      Ultra's fall into  this category. The highest DTE/DCE rate  you can use
  4367.      and still generate  a successful carrier test  is 9600 bps. Any  higher
  4368.      DTE rate will cause Modem Doctor to return errors that are not valid. 
  4369.               
  4370.  
  4371.  
  4372.  
  4373.  
  4374.  
  4375.  
  4376.  
  4377.  
  4378.  
  4379.  
  4380.  
  4381.  
  4382.  
  4383.  
  4384.  
  4385.  
  4386.  
  4387.  
  4388.  
  4389.  
  4390.  
  4391.  
  4392.  
  4393.  
  4394.  
  4395.                                      Page 71
  4396.  
  4397.  
  4398.  
  4399.  
  4400.  
  4401.  
  4402.  
  4403.  
  4404.  
  4405.  
  4406.  
  4407.  
  4408.  
  4409.  
  4410.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4411.  
  4412.  
  4413.  
  4414.      6.8 Using Digiboard Serial Ports
  4415.      --------------------------------
  4416.      Modem Doctor now supports Digiboard  Intelligent Serial Ports that  use
  4417.      the "X"  series drivers (XIDOS). To  test these serial ports,  you must
  4418.      start Modem  Doctor with  the /D command...ie  from the  dos prompt....
  4419.      MDR /d (or MDR /D).
  4420.  
  4421.      The /D switch  instructs Modem Doctor to ignore  traditional comm ports
  4422.      and instead test Digiboards. When  started in this manner, Modem Doctor
  4423.      looks  for an  installed  driver. If  one is  not  found, Modem  Doctor
  4424.      defaults to the INT14 support mode (pretty useless unless you also have
  4425.      an INT14 driver running).
  4426.  
  4427.      ╒[ DigiBoard Hardware Detection ]═════════════════════════════════════╕
  4428.      │ Driver Version :  409   Supported Channels:  4   Total Boards:  1   │
  4429.      │ Lowest Channel :    4    Highest Channel  :  7                      │
  4430.      │                                                                     │
  4431.      │ Board # 0   IRQ: 5    Board Type:    1    DP Memory Seg : D800      │
  4432.      │        Channels: 4   I/O Address:  320h   First Channel :    4      │
  4433.      │                                                                     │
  4434.      │                                                                     │
  4435.      │   Bus type: AT Bus    Interrupt Levels: 15   HD uses DMA Ch3?: NO   │
  4436.      │   Interrupt Status :  15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0         │
  4437.      │                     Press Any Key to Continue                       │
  4438.      └─────────────────────────────────────────────────────────────────────┘
  4439.  
  4440.      Modem Doctor can test up to 4 Digiboards that contain up to 16 channels
  4441.      each. When in the setup mode,  you will get this screen instead of  the
  4442.      traditional PORT, IRQ, SPEED selections;
  4443.  
  4444.            ╔[  Digboard  ]╗ ╔[  Channel  ]╗   ╔[  Baud  ]══╗
  4445.            ║ Use Board 1  ║ ║ Use Ch 1    ║   ║   300 BPS  ║
  4446.            ╚══════════════╝ ║ Use Ch 2    ║   ║  1200 BPS  ║
  4447.                             ║ Use Ch 3    ║   ║  2400 BPS  ║ 
  4448.                             ║ Use Ch 4    ║   ╚════════════╝ Higher speeds
  4449.                             ╚═════════════╝                  with registered
  4450.                                                          version to 57.6kbps
  4451.  
  4452.  
  4453.  
  4454.  
  4455.  
  4456.  
  4457.                                      Page 72
  4458.  
  4459.  
  4460.  
  4461.  
  4462.  
  4463.  
  4464.  
  4465.  
  4466.  
  4467.  
  4468.  
  4469.  
  4470.  
  4471.  
  4472.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4473.  
  4474.  
  4475.  
  4476.      If more than 1 board is found, it will be displayed (max is 4). If more
  4477.      than 4 channels are found on the selected board, they will be displayed
  4478.      (max 16).
  4479.  
  4480.      As with  any fossil or comm driver, Modem Doctor may or may not be able
  4481.      to fully  test the hardware.  In these modes,  Modem Doctor  depends on
  4482.      your communication driver (a fossil, the digiboard driver or some INT14
  4483.      driver TSR) to correctly handle  comm ports. Only when Modem  Doctor is
  4484.      started without any  "switches" will it directly control  the hardware.
  4485.      This  is  indicated by  the  Int14  interface  indicator in  the  setup
  4486.      section;
  4487.  
  4488.      ╒[ Modem / Uart System Diagnostics ]══════════════════════════════════╕
  4489.      │ Comm port /IRQ in use [ ] Port = 5  Address = 320  IRQ = 5          │
  4490.      │ Int 14 interface      [ ] DigiFossil                                │
  4491.      │ Uart type             [ ] 16450/8250A detected                      │
  4492.      │ Baud rate selected    [ ] 2400                                      │
  4493.      │ Baud Rate reg test    [ ] Not supported with Fossil or INT14        │
  4494.      │ Modem Microprocessor  [ ]                                           │
  4495.      │ Modem ID Type         [ ]                                           │
  4496.      │ Modem Fax Ability     [ ]                                           │
  4497.      │ Modem Memory/Rom      [ ]                                           │
  4498.      └─────────────────────────────────────────────────────────────────────┘
  4499.  
  4500.      In  this case,  Modem Doctor  shows  it is  using  the DigiFossil.  For
  4501.      regular FOSSIL  routines,  the  words  FOSSIL or  EXTENDED  FOSSIL  are
  4502.      displayed.  During  direct   mode  testing,  the  words   INACTIVE  are
  4503.      displayed. Once you  are logged into using Digiboard  ports, you cannot
  4504.      access normal Dos ports without exiting the program and restarting. All
  4505.      tests described  in  earlier sections  above  work with  the  Digiboard
  4506.      without modification. 
  4507.  
  4508.  
  4509.  
  4510.  
  4511.  
  4512.  
  4513.  
  4514.  
  4515.  
  4516.  
  4517.  
  4518.  
  4519.                                      Page 73
  4520.  
  4521.  
  4522.  
  4523.  
  4524.  
  4525.  
  4526.  
  4527.  
  4528.  
  4529.  
  4530.  
  4531.  
  4532.  
  4533.  
  4534.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4535.  
  4536.  
  4537.  
  4538.      6.9 Running Modem Doctor under Windows 3.1
  4539.      ------------------------------------------
  4540.      Modem Doctor was designed to work directly with system hardware.
  4541.      Unfortunately, Windows seizes control of all hardware in order to allow
  4542.      for the virtualization of comm ports and interrupts. Nonetheless, Modem
  4543.      Doctor can run under Windows if you take the following precautions;
  4544.  
  4545.      1) Never run Modem Doctor without the /Q switch. Interrupt results
  4546.         under Windows are not predictable or accurate. Crashes to system
  4547.         operation may result.
  4548.  
  4549.      2) Make sure you have optimized your system.ini to allow a minimum
  4550.         ComxBoostTime of 6.
  4551.  
  4552.      3) Make sure all your comm ports are configured to NEVER WARN during
  4553.         a device contention. Modem Doctor will occasionally "fight" Windows
  4554.         for control of the comm ports. NEVER WARN can be selected from the
  4555.         control panel "ports" option.
  4556.  
  4557.      6.91 Modem Doctor for Windows
  4558.      -----------------------------
  4559.      Modem Doctor  now has  a companion program,  Modem Doctor  for Windows.
  4560.      Written  specifically for  the Windows  environment,  Modem Doctor  for
  4561.      Windows contains most of  the same tests in Modem  Doctor 7.0. However,
  4562.      it  contains additional  tests specifically  designed  for testing  the
  4563.      Windows Communications Interface. Included in this program;
  4564.  
  4565.        * Visual display of all commands and responses to/from your modem
  4566.        * Extensive, Interactive Help system 
  4567.        * Detection of over 20 specific Windows setup problems in addition
  4568.           to the over 60 tests of your system hardware done in both
  4569.           versions.
  4570.        * Built in .INI file editor makes maintaining communications
  4571.           parameters simple and easy.
  4572.        
  4573.      Modem  Doctor for  Windows is  distributed as  shareware. You  can find
  4574.      Modem Doctor  for  Windows  on the  Modem  Doctor  BBS  (410-256-3631).
  4575.      Registration  fee is  $24.95.  You can  purchase  both programs  (Modem
  4576.      Doctor for Dos  7.0 and Modem Doctor  for Windows) for $40.00.  See the
  4577.      order form for more information.
  4578.  
  4579.  
  4580.  
  4581.                                      Page 74
  4582.  
  4583.  
  4584.  
  4585.  
  4586.  
  4587.  
  4588.  
  4589.  
  4590.  
  4591.  
  4592.  
  4593.  
  4594.  
  4595.  
  4596.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4597.  
  4598.  
  4599.      6.92 Running Modem Doctor on Networks
  4600.      ---------------------------------------
  4601.      Modem Doctor is not designed to run on a network. It can run on client
  4602.      machines that are  connected to a network.  For safety, use the  MDR /Q
  4603.      command. Some Network cards use IRQ's assigned to comm ports. IRQ tests
  4604.      in a network environment can cause serious problems to communications. 
  4605.      When running on a network, Modem Doctor can only test local comm ports.
  4606.      No TCP/IP or other protocol access is currently supported.
  4607.  
  4608.               
  4609.      Section 7. Benefits of Registration     
  4610.      ------------------------------------      
  4611.      Thank you  for your registration.  The Current Registered Version  # of
  4612.      the Modem Doctor is 7.0R. All Registered Users are entitled to free
  4613.      Maintenance  updates and  these will  be  reflected by  changes in  the
  4614.      decimal fraction number..ie   7.01, 7.02. Minor  upgrades are indicated
  4615.      by changes in the  tenths digit..ie 7.10. Minor upgrades are  not free,
  4616.      but cost no more than major upgrades.
  4617.  
  4618.      If  a new  super-duper version comes  out (8.X or  9.X), all registered
  4619.      users  will be able to  update for only $7 (plus shipping,handling  and
  4620.      tax where applicable). Currently registered users of versions 2 through
  4621.      5  can  update    for  $5  (plus  shipping,   handling  and  tax  where
  4622.      applicable). If you have  trouble with the Modem Doctor,  or questions,
  4623.      feel free to call or write.   
  4624.  
  4625.      When doing either you will need to have the Version Number, your serial
  4626.      number,   and  in  some  cases the  Module  Identification Number.  The
  4627.      Version   number is displayed  when you first  start the  program along
  4628.      with  the serial   Number.  The  Module Identification  numbers can  be
  4629.      displayed at any time   from the main menu  after you pass the  initial
  4630.      setup mode. Simply type  a # sign, and all of the  modules that make up
  4631.      the Modem  Doctor will   display their  version numbers on  the screen.
  4632.      Right now, all Modules have  identical version  numbers from program to
  4633.      program,  but in  the  future,    there could  be  custom  modules  for
  4634.      registered users, so in this case the Module ID could become important.
  4635.  
  4636.  
  4637.  
  4638.  
  4639.  
  4640.  
  4641.  
  4642.  
  4643.                                      Page 75
  4644.  
  4645.  
  4646.  
  4647.  
  4648.  
  4649.  
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4659.  
  4660.  
  4661.       You can reach us with your questions at 410-256-5767 or write to ;
  4662.  
  4663.                                      Hank Volpe
  4664.                                     PO Box 43214
  4665.                                   Baltimore MD 21236
  4666.               
  4667.                     Thanks again for registering the Modem Doctor.
  4668.  
  4669.      You  can  always  download  the  latest  shareware  version  and  other
  4670.      communication  utilities  from  the Modem  Doctor  BBS  at 410-256-3631
  4671.      (300 -> 19.2kbps).  Also, if you write  your questions on the  BBS, you
  4672.      will get a faster response than if you had written via the mail. 
  4673.  
  4674.      Notes -  [+] References to USR /Courier/Dual Standard/HST
  4675.                           Copyrighted by US Robotics     
  4676.               
  4677.               [++] References to AT Instruction Set ,Smartmodem,Hayes
  4678.                    Copyrighted by Hayes Inc.
  4679.               
  4680.               References to MNP refer to An error free protocol 
  4681.               Copyrighted by Microcom Inc.     
  4682.  
  4683.              References to dos, microsoft, Windows copyrighted by IBM
  4684.              or Microsoft.
  4685.              References to 8250B or other uarts are copyrighted by a 
  4686.              variety of manufacturers including (but not limited to ) 
  4687.                  Intel, National Semiconductor.
  4688.        
  4689.         
  4690.      Disclaimer -  
  4691.      It is not the intent of the author to recommend any brand of modem over
  4692.      another nor to infringe on the copyrights of the manufacturers by
  4693.      mentioning their products. A modem fits  a need, and whatever one works
  4694.      for you is the one you  should have. As time goes on, more  modems will
  4695.      be added to the list of "special enhanced " tests. The modems mentioned
  4696.      are done so only because of the popularity they enjoy and for  no other
  4697.      reason.  All programming  of modems  for  testing is  done with  simple
  4698.      character strings, similar to any  type of data that  can be sent to  a
  4699.      modem or a serial port. Any modem, whether AT compatible or not, can be
  4700.      handled  by  the  Modem  Doctor with  special  software  drivers. These
  4701.      software  drivers will  be distributed  free  of charge  as needed  for
  4702.      general  use.  Custom  drivers created  by  Hank  Volpe  for particular
  4703.      clients however will require a fee for handling and programming time.
  4704.  
  4705.                                      Page 76
  4706.  
  4707.  
  4708.  
  4709.  
  4710.  
  4711.  
  4712.  
  4713.  
  4714.  
  4715.  
  4716.  
  4717.  
  4718.  
  4719.  
  4720.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4721.  
  4722.  
  4723.      Modem Doctor History
  4724.  
  4725.               Ver 7.0  - New SNOOP feature detects active modems.
  4726.  
  4727.                        - New MDRD.INI file capabilty links Modem Doctor
  4728.                          for Dos together with Modem Doctor for Windows
  4729.                          and allows for easier communication diagnostics
  4730.                          in the Windows program enviromnent.
  4731.                          
  4732.                        - Improved Comm buffer routines that strip off
  4733.                          NULL codes sent by some modems for delay. These
  4734.                          codes caused problems in the command mode with
  4735.                          the buffer and some modems, returning incomplete
  4736.                          information
  4737.  
  4738.                        - Updated internal drivers to match current modem
  4739.                          hardware. Supports newer 33.6kbps and 57.6kbps
  4740.                          modems.
  4741.  
  4742.                        - Improved 16550AFN Uart routines, primarily
  4743.                          buffer purges.
  4744.                       
  4745.  
  4746.               Ver 6.0  - Improved PS/2 IRQ test support - PS/2's 
  4747.                          would halt or have their stack run-away during 
  4748.                          IRQ tests. The /Q switch from the command line
  4749.                          bypasses these tests. However, I've 
  4750.                          written some routines in assembler to create 
  4751.                          interrupt stacks that handle this 5.2 problem.
  4752.  
  4753.                        - Improved 16550AFN diagnostics - Modem Doctor 6
  4754.                          tests 16550AFN's, however after these tests, the 
  4755.                          buffers were shut down and not used (since no tests
  4756.                          existed that stressed their ability to perform).
  4757.                          These registers are now enabled to a trigger level
  4758.                          of 14 during all burst mode tests.
  4759.  
  4760.                        - Improved FOSSIL tests - FOSSIL routines have been 
  4761.                          streamlined to increase throughput during the burst
  4762.                          mode tests.
  4763.  
  4764.                        - Improved Modem Driver Detection - Modem Doctor now 
  4765.                          holds an exact-match table for supported modems. 
  4766.  
  4767.                                      Page 77
  4768.  
  4769.  
  4770.  
  4771.  
  4772.  
  4773.  
  4774.  
  4775.  
  4776.  
  4777.  
  4778.  
  4779.  
  4780.  
  4781.  
  4782.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4783.  
  4784.  
  4785.                          If no match is found, Modem Doctor "guesses" for
  4786.                          the best match. This will make it easier to support
  4787.                          future modems.
  4788.                        
  4789.                        - Adds IRQ support for IRQ's 7-15
  4790.                        - Improves 16550AFN tests.
  4791.                        - Tests for FAX modems, indicates Fax Group and
  4792.                          Class.
  4793.  
  4794.                        - Increase Baud Rate to 115200 in registered version.
  4795.                        - Diagnostic Toggle mode for DTR and RTS signals, 
  4796.                          helpful in finding bad cables or missing signals in
  4797.                          cables.
  4798.  
  4799.                        - Burst and Signature Rate Tests for Analog loop and
  4800.                          Carrier. 
  4801.                        - Support for DIGIBOARD Comm ports via the Digiboard
  4802.                          Driver.
  4803.                        - Improve FOSSIL throughput routines
  4804.                        - Detects AT, PS-2 and Dual Bus Computers, Supports 
  4805.                          Dual 8259 PIC chips.
  4806.  
  4807.  
  4808.            
  4809.               Ver 5.2 -  The /Q switch was added to the command line
  4810.                          interface to allow for the user to bypass the IRQ
  4811.                          self-tests. Some computer environments may freeze
  4812.                          when self-tests of IRQ lines are performed. In this
  4813.                          case, running with the /Q switch will bypass these
  4814.                          tests. No other changes were made to the program.
  4815.                         
  4816.               Ver 5.1 -  Program was recompiled to remove Borland C++
  4817.                          optimizations which were found to cause STACK 
  4818.                          problems running under Digital Research's DR/DOS
  4819.                          6.0. No other changes were made to the program.
  4820.  
  4821.               Ver 5.0 -  New tests added to verify IRQ operation, verify
  4822.                          proper COMM port/IRQ selection, added NULL tests to
  4823.                          Interactive selection. Structure changed for
  4824.                          drivers to include handling all modem
  4825.                          identification codes. All window routines changed
  4826.                          to directly drive displays (vs working through
  4827.                          standard C library interfaces), S-register window 
  4828.  
  4829.                                      Page 78
  4830.  
  4831.  
  4832.  
  4833.  
  4834.  
  4835.  
  4836.  
  4837.  
  4838.  
  4839.  
  4840.  
  4841.  
  4842.  
  4843.  
  4844.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4845.  
  4846.  
  4847.                          display added to REGS menu, interfaces added to
  4848.                          handle generic INT14 and FOSSIL drivers, bypassing
  4849.                          all direct control of hardware while in that mode. 
  4850.  
  4851.                          Other updates include identification of mouse
  4852.                          drivers and re-activation upon exit, ability to
  4853.                          handle accurate timing loops on machines with a
  4854.                          system speed of 50mhz+, addition of interrupt
  4855.                          driven transmit routines. Addition of 5 new uart
  4856.                          internal tests.
  4857.            
  4858.               Ver 4.0 -  New tests added for dynamic handshaking and static 
  4859.                          handshaking. New report generator features, new
  4860.                          exchange mode. Higher baud rates, cleaner windows
  4861.                          that grow to meet commands. Recognition of mouse
  4862.                          inputs via a compatible mouse driver. Expansion of
  4863.                          internal modem drivers and ability to read external
  4864.                          modem drivers. Improved brute-force reading for
  4865.                          faster digital loopback tests. Automatic aborting
  4866.                          of modem tests when IRQ failures are detected. New
  4867.                          advisories for fixed-link rate, IRQ failures, wrong
  4868.                          comm port assignments, swapped comm port
  4869.                          assignments. Addition of custom
  4870.                          color selections, pulldown windows that stay when
  4871.                          left-right arrow keys are moved. Updating of 16550
  4872.                          AN  support for resetting and clearing buffers.
  4873.                          Replacement of all internal comm drivers with new
  4874.                          dos independent routines. Correction of many (and
  4875.                          hopefully all) spelling errors.
  4876.  
  4877.               Ver 3.0 - New tests added for 16450/16550/16550AN Uarts.
  4878.                         Improved Control-Abort handling, Regs command now 
  4879.                         performs a full diagnostic call when activated. 
  4880.                         Hot-Keys added (Force Micro, Baud Rate Select). 
  4881.                         Modem Driver software added to program, Status Bar 
  4882.                         added to program. Support for IRQ 3,4,5,7 added 
  4883.                         via COM1 through COM8 log-ins. Speed increased to 
  4884.                         38.4KB. /S Command line option added for setup of 
  4885.                         a modem including batch file errorlevel support. 
  4886.                         Escape key functionality added to Carrier Tests 
  4887.                         and the loopback tests.
  4888.  
  4889.              Ver 2.2 - Corrects a bug in Ver 2.1 Communication routines
  4890.  
  4891.                                      Page 79
  4892.  
  4893.  
  4894.  
  4895.  
  4896.  
  4897.  
  4898.  
  4899.  
  4900.  
  4901.  
  4902.  
  4903.  
  4904.  
  4905.  
  4906.         Modem Doctor 7.0 Technical Reference (c) Copyright 1996 Hank Volpe
  4907.  
  4908.  
  4909.                         that caused some modems to lock-out because they 
  4910.                         were waiting for two carriage returns to begin. 
  4911.                         Also it added 4 diagnostic Uart tests
  4912.               
  4913.               Ver 2.1 - This version was a Beta test. A Beta tester 
  4914.                         accidentally uploaded this to several boards. 
  4915.                         Please remove all Ver 2.1S software that you may 
  4916.                         find.
  4917.               
  4918.               Ver 2.0 - This version also was a Beta test with support
  4919.                         for COM1-2 and 2400 bps maximum
  4920.               
  4921.               Ver 1.0 - First test version
  4922.  
  4923.  
  4924.  
  4925.  
  4926.  
  4927.  
  4928.  
  4929.  
  4930.  
  4931.  
  4932.  
  4933.  
  4934.  
  4935.  
  4936.  
  4937.  
  4938.  
  4939.  
  4940.  
  4941.  
  4942.  
  4943.  
  4944.  
  4945.  
  4946.  
  4947.  
  4948.  
  4949.  
  4950.  
  4951.  
  4952.  
  4953.                                      Page 80
  4954.  
  4955.  
  4956.  
  4957.  
  4958.  
  4959.  
  4960.  
  4961.