home *** CD-ROM | disk | FTP | other *** search
/ Boink! 1995 May/June / Image.bin / df_ / tools / modemdoc / modemd51.exe / MDR5DOC.EXE / MDR5DOC.TXT < prev    next >
Text File  |  1993-04-25  |  156KB  |  3,565 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                __________________________________________________
  8.                                      T H E 
  9.                                    M O D E M
  10.                                   D O C T O R
  11.                                Version 5.0S / 5.0R
  12.                    Hank Volpe copyr. 1989,1990,1991,1992,1993
  13.                                  P.O. Box 43214
  14.                                Baltimore MD 21236      
  15.                __________________________________________________
  16.  
  17.      What's New  . . . . . . . . . . . . . . . . . . . . . . . . . . .    Page 3
  18.  
  19.      Forward . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    Page 4
  20.  
  21.      Section 1. Introduction . . . . . . . . . . . . . . . . . . . . .    Page 5
  22.  
  23.      Section 2. Starting MDR . . . . . . . . . . . . . . . . . . . . .    Page 7
  24.           The /B switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 7
  25.           The /S switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 8
  26.           The /X switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 8
  27.           The /F switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 8
  28.  
  29.      Section 3. First Time Setup . . . . . . . . . . . . . . . . . . .    Page 9
  30.           A. Test Modem/ Uart      . . . . . . . . . . . . . . . . . .   Page 11
  31.           B. Uart Tests  . . . . . . . . . . . . . . . . . . . . . . .   Page 13
  32.           C. Return to main menu . . . . . . . . . . . . . . . . . . .   Page 14
  33.  
  34.      Section 4.0 The Main Menu . . . . . . . . . . . . . . . . . . . .   Page 14
  35.           4.01 Hot-Key selection   . . . . . . . . . . . . . . . . . .   Page 14
  36.                ALT-F . . . . . . . . . . . . . . . . . . . . . . . . .   Page 14
  37.                ALT-T . . . . . . . . . . . . . . . . . . . . . . . . .   Page 15
  38.                ALT-H . . . . . . . . . . . . . . . . . . . . . . . . .   Page 15
  39.           4.1 Login In Comm ports  . . . . . . . . . . . . . . . . . .   Page 15
  40.           4.11 What do IRQ's and COMM Ports do ? . . . . . . . . . . .   Page 15
  41.           4.12 Port assignments and their meaning  . . . . . . . . . .   Page 16
  42.           4.13 Testing defective Ports   . . . . . . . . . . . . . . .   Page 18
  43.           4.2 Regs       . . . . . . . . . . . . . . . . . . . . . . .   Page 18
  44.                Line Control Register . . . . . . . . . . . . . . . . .   Page 19
  45.                Line Status Register  . . . . . . . . . . . . . . . . .   Page 19
  46.                Modem Control Register  . . . . . . . . . . . . . . . .   Page 20
  47.                Modem Status Register . . . . . . . . . . . . . . . . .   Page 21
  48.                Interrupt ID Register . . . . . . . . . . . . . . . . .   Page 22
  49.                Interrupt Enable Register . . . . . . . . . . . . . . .   Page 23
  50.                Interrupt Mask Register . . . . . . . . . . . . . . . .   Page 24
  51.           4.30 Handshaking tests . . . . . . . . . . . . . . . . . . .   Page 24
  52.           4.30A S-Register Displays  . . . . . . . . . . . . . . . . .   Page 25
  53.           4.31 Carrier Tests   . . . . . . . . . . . . . . . . . . . .   Page 25
  54.           4.31 Modem Driver Modules  . . . . . . . . . . . . . . . . .   Page 26
  55.           4.32 Types of Carrier Tests  . . . . . . . . . . . . . . . .   Page 27
  56.           4.33 AT Instruction Set Tests  . . . . . . . . . . . . . . .   Page 27
  57.           4.34 Uart or Dumb Modem Tests  . . . . . . . . . . . . . . .   Page 28
  58.           4.35 Error Messages  . . . . . . . . . . . . . . . . . . . .   Page 29
  59.           4.36 IRQ Failures  . . . . . . . . . . . . . . . . . . . . .   Page 29
  60.           4.4 Loopback Tests . . . . . . . . . . . . . . . . . . . . .   Page 30
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 2
  74.  
  75.  
  76.           4.41 Loopback Test Error messages  . . . . . . . . . . . . .   Page 31
  77.           4.5 Options Mode . . . . . . . . . . . . . . . . . . . . . .   Page 32
  78.           4.51 Interactive Mode  . . . . . . . . . . . . . . . . . . .   Page 32
  79.                ALT-B . . . . . . . . . . . . . . . . . . . . . . . . .   Page 32
  80.                ALT-C . . . . . . . . . . . . . . . . . . . . . . . . .   Page 32
  81.                ALT-N . . . . . . . . . . . . . . . . . . . . . . . . .   Page 32
  82.                ALT-R . . . . . . . . . . . . . . . . . . . . . . . . .   Page 32
  83.                ALT-H . . . . . . . . . . . . . . . . . . . . . . . . .   Page 32
  84.                ALT-X . . . . . . . . . . . . . . . . . . . . . . . . .   Page 32
  85.           4.51A Testing for Interrupt Latency  . . . . . . . . . . . .   Page 33
  86.           4.52 View Current Statistics . . . . . . . . . . . . . . . .   Page 33
  87.           4.53 Print Current Statistics  . . . . . . . . . . . . . . .   Page 33
  88.           4.54 Reset Current Statistics  . . . . . . . . . . . . . . .   Page 33
  89.           4.6 Setup Mode . . . . . . . . . . . . . . . . . . . . . . .   Page 34
  90.                Mdr Color Selection Screen  . . . . . . . . . . . . . .   Page 34
  91.           4.7 Exit Program . . . . . . . . . . . . . . . . . . . . . .   Page 35
  92.  
  93.      5.0 Error Messages and their Meanings . . . . . . . . . . . . . .   Page 35
  94.           General Program Errors or Warnings . . . . . . . . . . . . .   Page 35
  95.           Setup Mode Diagnostics . . . . . . . . . . . . . . . . . . .   Page 36
  96.           Uart diagnostics . . . . . . . . . . . . . . . . . . . . . .   Page 39
  97.           Report Generator Messages  . . . . . . . . . . . . . . . . .   Page 40
  98.           Static DTR/DSR   RTS/CTS . . . . . . . . . . . . . . . . . .   Page 40
  99.           Carrier and Dynamic tests  . . . . . . . . . . . . . . . . .   Page 41
  100.           General program warnings . . . . . . . . . . . . . . . . . .   Page 42
  101.  
  102.      Section 6. Special Modes and Information  . . . . . . . . . . . .   Page 45
  103.           6.1 Using Modem Drivers  . . . . . . . . . . . . . . . . . .   Page 46
  104.                6.11 External Modem Drivers . . . . . . . . . . . . . .   Page 47
  105.           6.2 Using the Command Line Mode switch /S  . . . . . . . . .   Page 47
  106.           6.3 Using the Hot-Keys   . . . . . . . . . . . . . . . . . .   Page 49
  107.                ALT-B Change Baud rate  . . . . . . . . . . . . . . . .   Page 49
  108.                ALT-C Clear Screen  . . . . . . . . . . . . . . . . . .   Page 49
  109.                ALT-F Force Microprocessor  . . . . . . . . . . . . . .   Page 49
  110.                ALT-H Help  . . . . . . . . . . . . . . . . . . . . . .   Page 50
  111.                ALT-R Register Display  . . . . . . . . . . . . . . . .   Page 50
  112.                ALT-X Exit Mode . . . . . . . . . . . . . . . . . . . .   Page 50
  113.                Control -Break  . . . . . . . . . . . . . . . . . . . .   Page 50
  114.           6.4 Logging in Defective Ports   . . . . . . . . . . . . . .   Page 50
  115.           6.5 What tests cannot Do . . . . . . . . . . . . . . . . . .   Page 51
  116.           6.6 Quirks with Some Modems  . . . . . . . . . . . . . . . .   Page 51
  117.           6.7 Buffered vs Direct Connect Modems  . . . . . . . . . . .   Page 52
  118.  
  119.      Section 7. Benefits of Registration . . . . . . . . . . . . . . .   Page 52
  120.  
  121.      Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   Page 53
  122.  
  123.      Disclaimer  . . . . . . . . . . . . . . . . . . . . . . . . . . .   Page 53
  124.  
  125.      Modem Doctor History  . . . . . . . . . . . . . . . . . . . . . .   Page 53
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 3
  140.  
  141.  
  142. All of the documentation text contained in this file is copyrighted 1989-
  143. 1993 by Hank Volpe. This file is the technical reference manual that
  144. accompanies the Modem Doctor. This manual has been written for the expert
  145. user who would like to have background information on how the Modem Doctor
  146. conducts its various tests. It also catalogs the many error messages and
  147. their meanings, explains some of the mnemonics used in testing, and
  148. contains a brief history of the different versions of the program.
  149. Distribution of this text without the Modem Doctor shareware version and
  150. its support files is prohibited by the author.
  151.  
  152.  
  153.                  -------------------------------------------
  154.                     What's New in Modem Doctor Version 5.0
  155.                   -------------------------------------------
  156.  
  157. For those of you familiar with Modem Doctor, here is a brief look at the
  158. improved and added features of version 5.0. If you are new to Modem
  159. Doctor, take a look at the users manual file (MDRFIRST.TXT) that
  160. accompanies your Modem Doctor package.
  161.  
  162. 1) Screen presentations have been enhanced to make it easier to spot 
  163. potential problems and areas of concerns. 
  164.  
  165. 2) Login in and Startup sequence. 
  166. Modem Doctor now finds, identifies, and verifies interrupts from all comm 
  167. ports under test. A new interrupt selection window has also been added, even 
  168. though Modem Doctor automatically displays the correct IRQ line.
  169.  
  170. 3) Regs- The ability to read and modify any S-register exists in a pulldown  
  171. menu. I cannot give all registers names, because there is such a discrepancy 
  172. between modem vendors.
  173.  
  174. 4) Carrier and Loopback   
  175. The previous incarnation of the C language had a problem with properly 
  176. running delays on machines with system clocks greater than 33 megahertz. As a 
  177. result, the timer-tick routines did not accurately count 1 second intervals 
  178. on these machines. As a result, I have new code installed to detect proper 
  179. timing sequences. 
  180.  
  181. 5) Interactive mode now has a new test for interrupt latency. You can vary 
  182. the amount of time that Modem Doctor stays in a loop waiting for characters, 
  183. thus confirming if the speed of your display adapter is causing a 
  184. communication problem. 
  185.  
  186. 6) FOSSIL and INT 14 support   
  187. A new primitive module has been added that works with FOSSIL drivers, and INT 
  188. 14 kernels. I know it doesn't make much sense to put a kernel in the way of a 
  189. testing program, but then again, it does extend what Modem Doctor can do. To 
  190. start in this mode, type mdr /f. It will automatically find a driver or 
  191. report what it can or can't do. Important to note. The Fossil driver 
  192. determines if a port gets fossil support or INT 14 support. The FOSSIL driver 
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 4
  206.  
  207.  
  208. must be loaded to support the desired number of ports, otherwise Modem Doctor 
  209. grabs the first port and makes it the FOSSIL supported port, making any 
  210. others supported by INT 14.
  211.  
  212. 7) A new "heads-up" display shows you the status of all your serial ports, 
  213. handles and identifies Mircosoft Compatible mouse drivers, allows easy 
  214. control over interrupt lines, and adds new built-in modem drivers.
  215.  
  216. 8) A new Hot-Key to select or disable transmitter-driven interrupts. Some
  217. Uarts, most notably early 8250's, have a problem with transmitter interrupts. 
  218. With this feature enabled, you can test your chips ability to handle high-
  219. speed interrupts, and if errors are detected, you can switch this feature off 
  220. and test again.
  221.  
  222.  
  223. Forward
  224. -------
  225. Welcome to the Modem Doctor. This documentation along with the program is
  226. a good source of information about how Uarts and Serial Ports work with
  227. Modems in your Personal Computer.
  228.          
  229. There are two versions of the Modem Doctor; The shareware version 5.0S and
  230. the registered Version 5.0R. There are some differences between the two.
  231. Both however are full-functioned diagnostics tools. The differences
  232. between the  two are as follows;
  233.          
  234.          Version 5.0S & 5.0R supports COM1 through COM8 
  235.          Version 5.0R allows custom port selections 
  236.  
  237.          Version 5.0S supports speeds to 2400 bps
  238.          Version 5.0R supports speeds to 57,600 bps
  239.          
  240.      Version 5.0S does not include Manual Log-in of Comm ports, the
  241.      Digital or the Analog Loopback testing, or any of the dynamic
  242.      handshaking tests supported in version 5.0R, or the /s or /x 
  243.      command-line modes of operation.
  244.          
  245. This documentation covers both versions, however the feature differences
  246. above are provided for your reference.
  247.           
  248. This manual is provided as a technical reference for advanced users or for
  249. those wishing to get more background information on tests. For first time
  250. users I would suggest reading the Getting started Manual text file
  251. MDRFIRST.TXT, which is a little more basic in its approach.
  252.  
  253. I sincerely hope that you take a good look at the program and the
  254. documentation. The Modem Doctor is about as complete a diagnostic tool you
  255. can find for your serial port and modem. A complete program history
  256. follows the documentation. The Modem Doctor versions 2.2, 3.0 , and 4.0 were
  257. received very well nationally and internationally, Version 5.0 now adds
  258. more tests, more user features and more flexibility for you to use. Thanks
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 5
  272.  
  273.  
  274. to those that have registered and have made the Modem Doctor a viable
  275. package for all of us that sincerely enjoy using modems.
  276.          
  277. If you are using the shareware version and wish to order, please use the
  278. Order form included with this package or see Section 7, Benefits of
  279. registration at the end of this documentation. You can always get the latest 
  280. version of Modem Doctor from the Modem Doctor BBS (410-256-3631, 24 hrs, 
  281. speeds to 16.8kbps). There is no requirement to register Modem Doctor in 
  282. order to use the BBS or to have your questions answered. Access is easy, and 
  283. downloads are available on the first call for many hard-to-find shareware 
  284. communication utilities.
  285.  
  286.  
  287. Section 1. Introduction - 
  288. ------------------------- 
  289. The Modem Doctor is a professional diagnostic tool designed to work with
  290. IBM-PC's and compatibles. There are two versions of the Modem Doctor, the
  291. shareware version and the registered version. The registered version of
  292. the Modem Doctor contains complete diagnostics for 8250-B, 8250-A, 16450,
  293. 16550, 16550A(x), and compatible Uarts, RS-232 data lines, and carrier
  294. tests. Some of the many diagnostic features of the registered version are; 
  295.              
  296.  **  Support for COM 1 through COM 8 using system IRQ's 2,3,4,5 or 7.
  297.  **  Baud Rates from 300 to 57600 bps
  298.  **  Support for Courier HST/Dual Standard/V.32 Modems [+],
  299.      Hayes 1200, 2400, Ultra and V9600 series Modems [+*],
  300.      ZyXEL, Practical Periperals, Intel, and Sierra Semiconductor
  301.      modems. A Generic Driver is provided for all others.
  302.  
  303.  **  Auto-detection of modems that use &T0 (CCITT V.54) diagnostics
  304.  **  Auto log-in of COMM ports 1 - 4 to DOS for use by other programs.
  305.  
  306.  **  Manual log-in of up to 8 COMM ports for non-standard hardware,
  307.      including those with defective Uarts (on manual selection). 
  308.  **  On-screen display of all 8250 /16450/ 16550 Uart registers.
  309.  **  On-screen display of modem S-Registers.
  310.  **  Full Diagnostic tests of Uart and RS-232 Channels including;
  311.        -- ALL Uart registers.
  312.        -- ALL RS-232 handshaking Signals.
  313.        -- 8259 Interrupt Controller mask registers 
  314.        -- Digital loopback Uart tests including chips with Tri-stated 
  315.           OUT2 signals.
  316.        -- Analog loopback data tests.
  317.   **  Full diagnostic checks of "AT" instruction set modems;
  318.        -- Carrier tests on both originate and answer frequencies.
  319.        -- Carrier test interface for "dumb" modems or data channels.       
  320.        -- Modem microprocessor command channel diagnostics.
  321.        -- Support for high speed modems.           
  322.        -- Support for modems that use the alternate &T0 self test mode. 
  323.        -- Dynamic simulated on-line testing of RTS/CTS and XON/XOFF 
  324.           handshaking.
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 6
  338.  
  339.  
  340.        -- Static DTR/DSR and RTS/CTS uart handshaking tests.
  341.        -- Ability to display any S-Register pairs
  342.           
  343.   **  Interactive Mode with 16K communications buffer for;    
  344.       -- TTY mode interactive communications over serial port or modem 
  345.           while on-line.
  346.       -- Interrupt latency test, you can use this to determine if your
  347.          display adapter is too slow for your high-speed modem.
  348.       -- Custom designed tests...help menu included.
  349.       -- On-line "Hot-key" viewing of 8250 Uart registers.
  350.  
  351.   **  Hot-Keys for selecting the baud rate, to force a modem
  352.           microprocessor test mode, and to enable/disable transmitter
  353.           driven interrupts.
  354.  
  355.   **  User Selection of modem drivers. Like printer drivers, these
  356.           software modules add more selections and more test capability to
  357.           The Modem Doctor. 
  358.  
  359.   **  Ability to use external modem drivers. External modem drivers
  360.           make it possible to add special modems that might not use
  361.           standard AT conventions to the Modem Doctor without you having
  362.           to update to a new version of the program.
  363.  
  364.   **  Built in report generator that displays the results of all tests run
  365.           on all serial ports and modems. Report can be printed at any
  366.           time and reset at any time by the user. 
  367.  
  368.   **  Status bar that continuously displays the port, speed,
  369.           microprocessor status, Transmitter Interrupt enable status
  370.           and modem driver selections.
  371.  
  372.  
  373.   **  User defined Colors for all screens
  374.   **  Compatibility with mouse drivers. Mouse drivers also properly
  375.           enabled after exiting Modem Doctor.
  376.  
  377.   **  Command Line Mode interface for setting up a modem to an
  378.           initialization string contained in a user created file;
  379.      -- A small text file contains the port (and optional address), the
  380.      speed, and the string to send to the modem. Any text editor can
  381.      create the file at any time!
  382.  
  383.   **  Automatic detection of incorrect Com1 and Com2 port assignments,
  384.       IRQ assignment errors, missing IRQ signals, and missing handshake
  385.       signals.
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 7
  404.  
  405.  
  406.          
  407. The Modem Doctor and all of its documentation is copyrighted by Hank
  408. Volpe. The shareware version of this program may be distributed on
  409. not charged for its duplication or acquisition (except for BBS systems
  410. that charge a user fee for system access). If you are a shareware
  411. distributor and have received permission to distribute past versions of
  412. the Modem Doctor, you are granted permission also for version 5.0 as long
  413. as you follow the same guidelines for distribution as before. Under 
  414. no conditions can anyone accept payment for the Modem Doctor but Hank
  415. Volpe or agents authorized for resale by Hank Volpe. The Modem Doctor is
  416. distributed on as "as-is" basis, with no warranties for usefulness or
  417. suitability expressed or implied. Users of the shareware version are
  418. granted a limited license to use this program for a trial period only.    
  419. Please let your conscience be your guide as to what you believe has been a
  420. fair trial period, for without the support of users who have registered,
  421. the Modem Doctor would not be the product that it is today.
  422.  
  423. The Modem Doctor is a very flexible package for both the new user and for
  424. the experienced technician. The focus of this manual is to give you a
  425. technical reference regarding how the Modem Doctor works, what is the
  426. meaning of error messages you may encounter, and how the tests are
  427. constructed to operate between your PC and your modem. First time users or
  428. those unfamiliar with how the Modem Doctor operates should read the file
  429. MDRFIRST.TXT. MDRFIRST explains how to start and use the Modem Doctor, how
  430. the pulldowns operate, and how to use the menu and control system.      
  431.  
  432. Section 2. Starting MDR     
  433. ------------------------     
  434. The Modem Doctor has been designed to work with PC-Type serial ports and
  435. "AT" instruction set (so called Hayes compatible[++]) modems. The Modem
  436. Doctor requires at least 1 serial port to operate. MDR is written to run
  437. under MS or PC DOS 2.2 or higher, and will work with any standard display
  438. adaptor in normal text mode. The program requires at least 200K of program
  439. memory space. When MDR is started, it will use the last text mode that the
  440. display adaptor was in before the Modem Doctor started. If you have
  441. created a custom color file (see Options mode), your screen colors will be
  442. displayed as you selected them. If not, default colors will be loaded
  443. depending on the mode you are currently in (Color or Black /White). 
  444. Modem Doctor starts just like any other program. From the dos prompt, type
  445. MDR. There are however several command line switches you might need to use
  446. from time to time.
  447.  
  448. The /B switch
  449. -------------
  450. Code has been included to work with hardware-incompatible display adapters
  451. as long as they are at least IBM-PC Bios compatible. For most computers,
  452. this is not necessary and will slow down screen displays, plus it will
  453. change the appearance of the input windows. The reason for using this
  454. switch is (for example), if you wish to route the output of the program
  455. through a voice synthesizer or operate it under a program that requires
  456. all screen writes to go through your Bios. If you wish to use this bios
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 8
  470.  
  471.  
  472. compatible mode instead of direct display writes, start the program using
  473. the Bios switch ;   MDR /B 
  474.          
  475. The /S switch
  476. --------------
  477. Registered versions 4.0 and higher also can be run to quickly program and
  478. setup a Modem. To use this mode start the program with the setup switch ;
  479. MDR /S (see Section 3). 
  480.  
  481. The /X switch
  482. --------------
  483. Registered versions 4.0 and higher have the ability to swap the
  484. communication pointers for COM1 and COM2 in memory. To use this mode, type
  485. MDR /X. Com1's pointer will be swapped to COM2 (and visa versa).  You can 
  486. specify any one of the 4 comm ports used by dos by typing;
  487.  
  488. MDR /X [port] [port], 
  489. where each [port] is a different comm port..ie to swap Com1 and Com3, type 
  490. MDR /X 1 3. MDR /X without port numbers flips com1 and com2 by default. This 
  491. condition is not permament. To flip these again, just type MDR /X  or if you 
  492. used comm numbers, type MDR /X [port] [port]. The reason for this command 
  493. line switch  is for convienence  and also to make  it easier for  technicians to swap
  494. port assignments without  having to change port  jumpers. This mode is  not generally
  495. useful except when you believe you have addresses set incorrectly or if you wish
  496. to use a serial device  that is normally Com2 as Com1 (such as a serial printer) from
  497. a  high-level  language  that  does not  support  2  comm  ports.  These changes  are
  498. temporary. Permanent fixes can  only be done in these cases  if you physically change
  499. the addresses on your serial card.
  500.  
  501. The /F switch
  502. -------------
  503. Normally, Modem Doctor and most comm programs directly control the hardware 
  504. of your computer. Uart registers, interrupt controllers, and system hooks are 
  505. all involved. Another way to perform control in a machine-independant way is 
  506. by using kernels. Kernels are small programs that reside as TSR's (Terminate 
  507. Stay Resident) in your computer. You can instruct Modem Doctor to operate in 
  508. this manner, and instead of assuming complete control over your system, Modem 
  509. Doctor will work through system kernels. X00 and BNU are two such kernel or 
  510. FOSSIL programs. If you use Modem Doctor in this manner, some uart 
  511. programming and error trapping is not possible (because the FOSSIL drivers do 
  512. not support function calls to handle all test conditions). However, this 
  513. command can be useful if you wish to test the proper operation of a FOSSIL 
  514. driver in your system. Other Int14 type kernels are also supported. To start 
  515. Modem Doctor in this mode, type MDR /F.
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                        Page 9
  536.  
  537.  
  538.  
  539. Section 3. First Time Setup     
  540. ---------------------------     
  541. The first time you start the Modem Doctor, it will begin several system
  542. checks. These checks are not repeated until you start the program over
  543. again from the Dos prompt. First, the Modem Doctor checks to see what
  544. hardware is available and reports its results to you. Displayed on the
  545. bottom line is the serial number unique to each copy (registered version).
  546. If incorrect COMM addresses are detected or if swapped addresses are
  547. detected, an Alert-bar will be displayed, warning you that a non-standard
  548. assignment was detected, and you are asked if you wish to have this fixed
  549. for testing purposes only.    
  550.  
  551. ┌───────────────────────────── The Modem Doctor─────────────────────────────┐
  552. │                         Welcome to the Modem Doctor                       │
  553. └───────────────────────────────────────────────────────────────────────────┘
  554.     ╒[ Modem / Uart Hardware Detection]══════════════════════════════════╕
  555.     │ Port assignments  Base(hex)    Irq       Special Port Usage        │
  556.     │ Com port 1   [ ]     3f8        4                                  │
  557.     │ Com port 2   [ ]     2f8        3    IRQ assigned to a mouse driver│
  558.     │ Com port 3   [ ]  not found                                        │
  559.     │ Com port 4   [ ]  not found                                        │
  560.     │ Com port 5   [ ]                                                   │
  561.     │ Com port 6   [ ]                                                   │
  562.     │ Com port 7   [ ]                                                   │
  563.     │ Com port 8   [ ]                                                   │
  564.     └────────────────────────────────────────────────────────────────────┘
  565.  
  566.  ╔[  Serial Port Detection ]═══════════════════════════════════════════════╗
  567.  ║                          Serial port detection                          ║
  568.  ║                Searching for other standard active Comm ports           ║
  569.  ║                                                                         ║
  570.  ║                              Total Comm ports  =2                       ║
  571.  ║                        PRESS ANY KEY TO START TESTING                   ║
  572.  ║                                                                         ║
  573.  ║                                                                         ║
  574.  ║                                                                         ║
  575.  ══════════════════════════════════════════════════════════════════════════╝ 
  576.  
  577. Modem Doctor 5.0 uses a heads-up display that shows you the Comm port 
  578. assignment number, the base i/o address, and the interrupt line in use. 
  579. Unlike previous versions, Modem Doctor actually creates a system interrupt 
  580. and traps its ID. Running under DOS, Modem Doctor will always identify the 
  581. correct IRQ line. In multi-tasking situations, this test may not be valid, 
  582. which is why a new window has been created to allow you to easily select any 
  583. IRQ line you wish to use.
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 10
  602.  
  603.  
  604.  
  605.  ╔[  Ports  ]═╗   ╔[  IRQ's  ]═╗    ╔[  Baud  ]══╗  
  606.  ║ Use COM 1  ║   ║ Use IRQ 2  ║    ║   300 BPS  ║  
  607.  ║ Use COM 2  ║   ║ Use IRQ 3  ║    ║  1200 BPS  ║  
  608.  ╚════════════╝   ║ Use IRQ 4  ║    ║  2400 BPS  ║  
  609.                   ║ Use IRQ 5  ║    ║  4800 BPS  ║ * 
  610.                   ║ Use IRQ 7  ║    ║  9600 BPS  ║ * 
  611.                   ╚════════════╝    ║ 19200 BPS  ║ * 
  612.                                     ║ 38400 BPS  ║ * Registered Versions
  613.                                     ║ 57600 BPS  ║ * only
  614.                                     ╚════════════╝  
  615.         
  616. Next, you are instructed to pick from a list of valid Comm ports. The only
  617. ports that are listed are valid ports that MDR found when it first
  618. started. The registered version allows you to add ports that are not
  619. "standard" ports, (check the section on Login). Use the arrow keys to find
  620. your selection, and then press return to select.
  621.  
  622. A window now opens showing you your IRQ line choices. The sliding bar will 
  623. pick the IRQ line Modem Doctor found valid during the first set of tests. You 
  624. can change this to any IRQ line you wish. A note of caution though, if you 
  625. pick an incorrect IRQ line, the following tests will not be valid.
  626.  
  627. A window now opens showing you valid Comm port speeds. Select a speed from
  628. this menu. Please note, don't select a speed faster than your modem can
  629. handle. The reason for faster speeds is so communication links can also be
  630. tested.  Use the arrow keys and press return to make your selection.
  631.          
  632. At this point you are in the options menu. If you select "Test Modem", a
  633. series of commands and tests will be performed. Please check to make sure
  634. the modem is on line and running. If you select "Test Uart Hardware", only
  635. the Uart will be tested. The modem will not be setup. This selection is
  636. useful only if you wish to test an RS-232 line or a "dumb" modem.
  637. Selection 3 aborts to the main menu. (NOTE: Version 5.0 includes "hot-
  638. keys" to force the Modem Doctor to believe you are using a modem with a
  639. microprocessor and for changing the baud rate. Read Section 4 on the menu
  640. system for more details).       
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 11
  668.  
  669.  
  670.  
  671.  
  672. A. Test Modem/ Uart     
  673.   ---------------------
  674.     ╒[ Modem / Uart System Diagnostics]══════════════════════════════════╕
  675.     │ Comm port /IRQ in use [ ] Port = 1  Address = 3F8  IRQ = 4         │
  676.     │ Int 14 interface      [ ] Inactive                                 │
  677.     │ Uart type             [ ] 16450/8250A detected                     │
  678.     │ Baud rate selected    [ ]  2400                                    │
  679.     │ Baud Rate reg test    [ ] Confirmed correct baud rate              │
  680.     │ Modem Microprocessor  [ ] Modem Microprocessor On-Line             │
  681.     │ Modem ID Type         [ ] 9600 bps modem                           │
  682.     │ Modem Memory/Rom      [ ] Memory tests OK                          │
  683.     └────────────────────────────────────────────────────────────────────┘
  684.  
  685. ╒[ Diagnostic Dialog]═══════════════════════════════════════════════════════╕
  686. │                  Preliminary diagnostic checks of hardware                │
  687. │                  -----------------------------------------                │
  688. │                   Confirmed uart setup to proper baud rate                │
  689. │                          Testing Modem Microprocessor                     │
  690. │                          --------------------------                       │
  691. │                                                                           │
  692. │                   Modem microprocessor command bus active                 │
  693. │                Modem ID reports a 9600 bps modem installed                │
  694. │                    Modem microprocessor memory tests OK                   │
  695. │                Modem microprocessor accepts setup commands                │
  696. │                     Modem - Uart status appears correct                   │
  697. │              Press any key to see register status and diagnosis           │
  698. │                                                                           │
  699. └───────────────────────────────────────────────────────────────────────────┘
  700.  
  701. The preceding page shows you the results of a normal test with a modem. 
  702. The first step tests the uart to modem hardware. If any connection errors
  703. are discovered, they are reported to the screen. If no errors are
  704. detected, the Modem Doctor will check to see what type of uart is
  705. installed. 
  706.  
  707. There are differences between the different types of uarts, and
  708. the Modem Doctor uses this test to determine how to test the uart and what
  709. registers to display to the screen. Next, the uart is set to the desired
  710. baud rate, and the uart speed register is queried to make sure it did set
  711. up properly. Next, the modem command bus is tested and if its compatible,
  712. the modem ID information is queried from the modem microprocessor. The
  713. Modem Doctor then issues a command that forces the modem to run a checksum
  714. of its ram or rom memory. If your modem returns an OK, then the Modem
  715. Doctor assumes your modem passed properly. If an error is returned, you
  716. will receive an error message stating that the modem reported a rom/ram
  717. check failure.  Finally, the modem is setup for diagnostics. Note: These
  718. setup strings do not overwrite any non-volatile storage. 
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 12
  734.  
  735.  
  736. If your modem setup properly, all the uart registers and the First 16
  737. Modem S registers are displayed. This display is not shown the next time
  738. you log in a Comm port unless you press the space bar. If the modem does
  739. not respond to certain parts of the tests, error messages are reported. 
  740.  
  741.                          Testing Modem Microprocessor
  742.                          ---------------------------- 
  743.                 Modem Microprocessor Command Mode Not Detected 
  744.                          Software Reset Initiated      
  745.          
  746. This message is displayed if the modem did not respond the first time for
  747. a query to its status. This could happen for any number of reasons,
  748. including that the modem was still on-line and not in the command mode. A
  749. soft-reset is performed, which essentially tries to wake the processor up. 
  750.  
  751.         No Response...resetting Modem Microprocessor ...attempt #1
  752.         No Response...resetting Modem Microprocessor ...attempt #2
  753.         No Response...resetting Modem Microprocessor ...attempt #3
  754.          
  755. After 3 soft-resets, the Modem Doctor assumes that the modem is jammed and
  756. needs a hardware reset. A hardware reset is the program equivalent of
  757. turning the modem on and off again. This is the only way to reset some
  758. internal modems  that get "jammed" when the computer is first turned on. 
  759. Clearing a "jam" usually takes no more than 2 attempts.   
  760.  
  761.  
  762.               Trying Hardware reset of the Modem Microprocessor
  763.          
  764. The Hardware reset is performed, and again the modem microprocessor is
  765. strobed for its status.  
  766.          
  767.                         Software Reset Initiated
  768.          
  769. After a hardware reset, a soft reset is performed again, attempting to
  770. wake the processor up. If this fails, the  following message is displayed; 
  771.          
  772.               Modem Microprocessor Did Not Accept Setup Commands 
  773.               Trying a Hardware reset of the Modem Microprocessor
  774.   
  775.  
  776. After one more attempt at waking the modem up, the Modem Doctor assumes
  777. that the modem is not compatible  and based on the status given it by the
  778. Uart, it will report if the device is off or not connected.  
  779.          
  780.           WARNING..This unit does not have a Compatible Modem attached
  781.          
  782.           WARNING..The Modem Device appears to be off or not connected
  783.          
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 13
  800.  
  801.  
  802. The registers are now displayed for diagnostic tests, and a conclusion
  803. based on the status of the registers is displayed. There are many reasons
  804. why the modem/uart could fail. See the error code section for details. If
  805. the Uart is fine, but the modem is not compatible, the program will tell
  806. you that the Uart hardware tests ok and display this in a window to the
  807. right of the register display.        
  808.  
  809. Note: The reason for testing the modem command set so extensively is so
  810. there can be no doubt about the modem accepting commands. You can force
  811. The Modem Doctor to believe it has a modem with a compatible
  812. microprocessor by using the hot-key Alt-F. See Section 4 about Menu system
  813. commands.
  814.          
  815. B. Uart Tests     
  816. ---------------     
  817. The uart test is performed every time either the modem or the uart test is
  818. selected. Essentially, the uart test programs all of the registers of the
  819. uart and looks to see that the correct values have been placed in them. If
  820. any one of the registers fails to set, the Modem Doctor will display all
  821. of the registers and a diagnostic message. After that, it looks to see
  822. that an RS-232 loop is active. If not, it displays an error message saying
  823. that the loop is either disconnected or a register in the uart is
  824. defective. If all checks well, the type of uart chip that is installed is
  825. returned. The type of uart chip is important for the way the Modem Doctor
  826. will test and display the uart. Essentially there are 3 types it can
  827. detect;      
  828.          
  829. 8250-B
  830. This is the original uart installed in many PC's and serial port add-on
  831. cards.      
  832.          
  833. 16450/8250-A
  834. This is an upgraded uart that fixes a bug in the interrupt enable register
  835. of the 8250-B and also tri-stated the OUT2 pin of the chip during
  836. loopbacks. It also adds a scratch-pad register as the highest register.
  837. This register is tested by the Modem Doctor but not displayed because it
  838. never has what you would consider as a "correct" setting. The 16450 is   
  839. used primarily in 80286 (AT) systems.
  840.  
  841. 16550
  842. This chip is essentially a faster 16450. However, it cannot be used in a
  843. FIFO buffering mode, but it does allow for a programmer to use multiple
  844. DMA channels and thus increase throughput on an AT or higher class
  845. computer system.      
  846.  
  847. 16550A(x)
  848. This chip is a faster 16450 with a built in transmit and receive FIFO
  849. buffer. It also allows multiple DMA channel access. You should see this
  850. chip in your 80386 or RISC type machine. You should also consider
  851. installing this chip if you do any serious communications at 9600 bps or
  852. higher while you are multi-tasking. Whenever a 16450,16550 or 16550AN is
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 14
  866.  
  867.  
  868. displayed, different diagnostics and/or different register mnemonics are
  869. displayed. The 16550AN's ability to enable and disable FIFO mode is also
  870. tested. In any case and with any uart, each register is checked for proper
  871. values. If anyone of them fail, a window will open and display a possible
  872. cause for the problem. 
  873.  
  874.                    Preliminary Diagnostic Checks of Hardware 
  875.                    ----------------------------------------- 
  876.                           Testing Uart Hardware Only  
  877.                           -------------------------- 
  878.                         A 8250-B Uart has been detected 
  879.                       Modem - Uart Status appears correct
  880.          
  881. The first time through these tests, the registers will display for
  882. diagnostics. Unlike the modem tests, only the uart registers are
  883. displayed. From then on, if the test results are correct, you will be
  884. prompted if you wish to have the registers displayed. If a test fails at
  885. any time, you will always see the registers displayed along with an        
  886. appropriate diagnostic message.        
  887.          
  888. C. Return to main menu     
  889. ----------------------     
  890. Selecting this returns you to the main menu, this allows you to change an
  891. entry made in error without having to wait for the diagnostic checks to
  892. fail. In any event, after any of these tests have been run, you will then
  893. enter the Modem Doctor's Main Menu.
  894.  
  895.  
  896. Section 4.0 The Main Menu
  897. -------------------------
  898. The main menu consists of a sliding bar from which you make your selections. 
  899. Using the arrow keys you slide left or right. Pressing ENTER selects a 
  900. feature. If the feature has a pulldown window, you use the up or down arrows 
  901. to navigate, and then ENTER to select that feature.
  902.  
  903. 4.01 Hot-Key selection 
  904. ----------------------  
  905. In addition to these menu selections, there are three hot-keys that are
  906. active at nearly all times in the Modem Doctor. The ALT-B combination can
  907. be used to change the baud rate from the main menu, from inside pulldowns
  908. and Manual test section. A window will pop-up and you can pick your
  909. desired serial port speed. This can save a lot of time when you wish to
  910. test a modem at various speeds. Using the Setup / Test Modem & Uart
  911. mode is the safest way (because it verifies the modem microprocessor
  912. accepts commands properly at the selected speed), however if you use the
  913. ALT-B command, you will take a short-cut that can help you when testing
  914. your modem. 
  915.        
  916. The next hot-key is ALT-F, or FORCE Micro on-line. Actually, there is no
  917. "force" involved. By pressing this key, you make the Modem Doctor believe
  918. there is a AT Instruction set compatible modem attached. This can be handy
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 15
  932.  
  933.  
  934. for troubleshooting a modem that doesn't work properly at certain speeds
  935. or under certain conditions.  The Setup Test Modem & Uart section will not
  936. allow any AT Instruction set Carrier tests on modems that it cannot
  937. properly setup. The ALT-F combination bypasses this and allows such
  938. testing. When you press ALT-F, you will notice the Status Bar will say
  939. that a modem microprocessor is on-line.  Version 4.0 now allows this key
  940. to be operated as a toggle between on-line and off-line. This key is
  941. active inside of any menu at any time.
  942.  
  943. Another hot-key is ALT-T. This is new with Modem Doctor 5.0. It allows you to 
  944. toggle how Modem Doctor treats the transmission of characters. Most times, 
  945. interrupt driven transmissions are used because they are fast, waste no CPU 
  946. time looping, and give the best throughput. However, some early 8250 uarts 
  947. cannot handle interrupt-driven transmits without errors. When you start Modem 
  948. Doctor, transmit-driven interrupts are enabled. If you experience errors 
  949. during tests, try disabling this feature. If your errors go away, you either 
  950. have a uart that cannot handle interrupt-driven transmit routines, or your 
  951. system is too slow to process and support this feature.
  952.  
  953. The last hot-key is the ALT-H for help. This key will give you varying
  954. levels of help. From the main menu, it gives a terse help just like
  955. pressing the down arrow key does. Inside of a pulldown, it gives you
  956. expanded help, just as selecting the appropriate help section of the
  957. pulldown also does.
  958.  
  959. 4.1 Login In Comm ports     
  960. -----------------------     
  961. When you select this menu, you are offered these choices                   
  962.  
  963. ╔[  Comm Port Login  ]═══════════╗
  964. ║ Let me Auto Detect COMM Ports  ║ <- Searches for all Comm ports
  965. ║ You Manually Enter COMM Ports  ║+<- You enter port addresses
  966. ║ Help with Auto login Commands  ║ <- Detailed help or ALT-H
  967. ║      Return To Main Menu       ║
  968. ╚════════════════════════════════╝    + registered version only
  969.  
  970. Option 1 repeats what the Modem Doctor does when you first begin to run
  971. the program. Option 2 allows you to enter a "non" standard port address
  972. and assign one of the two Interrupt lines to use with the Uart. Option 3 
  973. gives you an expanded, on-line help description of these tests. Option 4
  974. returns to the main menu.      
  975.  
  976. 4.11 What do IRQ's and COMM Ports do ? 
  977. ---------------------------------------      
  978. Each time a character is received by a modem, it has to get the attention
  979. of the computer by raising an interrupt request line (IRQ). PC-type
  980. computers have 8 of these lines, AT-type (ISA bus), MCA and EISA computers
  981. have at least 16. The 8259 Interrupt controller chip handles these
  982. requests for attention. By design, COM1 uses IRQ4 and COM2 uses IRQ3. IRQ7
  983. is assigned to a printer, IRQ5 to the Hard Drives. It is possible to use
  984. COM1 and COM2 or COM3 and COM4 at the same  time, but you cannot use COM1
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 16
  998.  
  999.  
  1000. and COM3 or COM2 and COM4 at the same time because these share IRQ lines.
  1001. If you needed to use 3 or more COMM ports at the same time, you would need
  1002. to use another IRQ line. The best bets are IRQ7 and IRQ5, because they may
  1003. be available when you need them. IRQ7 is really only needed by programs
  1004. that use printer interrupts (background type spoolers for example). IRQ5
  1005. is used by fixed disks. It may or may not cause a conflict if you use this
  1006. IRQ line with your modem. PC type computers are quite limited because they
  1007. only have 8 IRQ lines and most are reserved. AT type computers have 16 IRQ
  1008. lines. 
  1009.  
  1010. A good tip would be to consult your hardware manual to find out if you can
  1011. or can't use these other IRQ's. However, if you do not need to use 3 or
  1012. more COMM ports at one time, then it is best to stick to the reserved IRQ4
  1013. and IRQ3 for all of your activity. 
  1014.          
  1015.          
  1016. 4.12 Port assignments and their meaning 
  1017. ---------------------------------------  
  1018. Like IRQ lines, certain port addresses were reserved to work with the PC's
  1019. external hardware devices. Two of these were reserved by all
  1020. manufacturers; 3F8 (HEX) and 2F8 (HEX).  Although only two COMM ports were
  1021. supported by the original ROM-BIOS, there are two additional port memory
  1022. locations available for use by MS-DOS and PC-DOS applications. These
  1023. reserved port addresses are 3E8 (HEX) and 2E8 (HEX). Most internal modems
  1024. come with these 4 ports as selections along with several IRQ line
  1025. combinations.  There is a "quirk" in the way that the ROM-BIOS logs in
  1026. these ports. If the Power on self-tests (POST) do not find a 3F8 serial
  1027. port but they do find a 2F8, then the 2F8 serial port is mistakenly 
  1028. assigned to COM1. To add to this, the reserved IRQ line for COM1 is IRQ4.
  1029. But this serial Port of 2F8 is using COM2's  address, which means it needs
  1030. IRQ3 instead of IRQ4. So, if you are trying to use Basic, Pascal, or DOS
  1031. for COM1 operations, the serial port or modem will not be able to work.
  1032. The general rule thus is "No COM1 without COM2". 
  1033.  
  1034. The Modem Doctor when it is run will detect this log-in problem and
  1035. display an "alert-bar" with a message to you that points out this error.
  1036. You can then elect to correct this for the purposes of testing. Remember
  1037. though, you can only fix these addresses permanently by changing the
  1038. settings on your serial port or internal modem. You can run Modem Doctor
  1039. with the /X switch to fix this problem at boot time until you do change
  1040. the address settings permanently. The addresses for PC's are standardized
  1041. in order for communication programs to properly work. As stated above, the
  1042. industry standards are;      
  1043.         
  1044.          COMM 1  3F8   COMM 2  2F8    COMM 3  3E8    COMM 4 2E8
  1045.          IRQ4          IRQ3           IRQ4           IRQ3      
  1046.  
  1047.          
  1048.          COMM 5  3F8   COMM 6  2F8    COMM 7  3E8    COMM 8  2E8
  1049.          IRQ7          IRQ7           IRQ5           IRQ5      
  1050.          
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 17
  1064.  
  1065.  
  1066.          
  1067. The port addresses for serial ports (1-4) are held in a reserved area of
  1068. memory. The "base port" of each of these uarts is saved in a distinct
  1069. area. When you first start the Modem Doctor, the program checks these
  1070. locations to see if there are any Comm ports already logged in by Dos. If
  1071. not, a search is conducted for the PC's default Comm 1 and Comm 2 port
  1072. values and these are logged in. Next, a search is performed for the other
  1073. industry standard Comm ports. Some PC's already log these in, however
  1074. IBM-PC's and those that mimic exactly their ROM-BIOS routines do not log
  1075. in a COMM 3 or a COMM 4. The Modem doctor does log these in, and as a side
  1076. benefit, these stay logged in until the next warm or cold boot is 
  1077. performed on your computer. Why would Dos not log in a port? Well, some
  1078. multi-tasking programs overwrite this area to prevent "swapping" of
  1079. communication programs and it is possible that they might not be properly
  1080. restored on exit. Next, a search is made for the custom comm ports 5-8.
  1081. These ports are not held in DOS at all, but are held in program memory by
  1082. the Modem Doctor after a user logs the port in using the Manual log-in
  1083. mode (see below). If one of these ports is found, it will be added to the
  1084. comm port option menu for you to use when you test the modem.  The reason
  1085. for the custom ports is to help users who are using non-standard interrupt
  1086. lines (IRQ7,IRQ5). Unlike the Dos logged-in ports, these assignments
  1087. disappear when the Modem Doctor is exited. The Modem Doctor follows the
  1088. accepted arraignment of these comm Port /IRQ line pairings. However, you
  1089. do have full control at all times over all port addresses and IRQ
  1090. assignments and can change them using the Manual Login mode.  
  1091.  
  1092. As far as the 2 Options presented by the Login Mode, option 2 is the only 
  1093. real option available. Please use it with caution. The only need for this
  1094. option is for logging in a comm port that does not use any of the listed
  1095. industry standards as its base port address or IRQ line assignments.
  1096. Consult your serial port or Modem's user manual to make sure you enter the
  1097. exact port address and select the correct Interrupt line to use with it.
  1098. Otherwise the Modem Doctor will not recognize or be able to test any
  1099. device hooked to this port. Protection is included in this routine to keep
  1100. someone from accidentally entering a port that is used by the system
  1101. board, display adapters, or fixed disk adaptor. Entering any of these
  1102. values, or an error, will result in the display;
  1103.  
  1104.                  "WARNING...RESERVED port...RETRY ENTRY"      
  1105.  
  1106. After running option 1 or 2 , you must tell the Modem Doctor which comm
  1107. port you wish to use so that testing can begin. Pressing the ESCAPE key or
  1108. pressing a left or right arrow key works the same as Option # 3 and
  1109. returns you to the main menu.              
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 18
  1130.  
  1131.  
  1132.  
  1133. 4.13 Testing defective Ports 
  1134. ----------------------------  
  1135. Whenever the Modem Doctor checks to see if a port is working properly, it
  1136. checks the status of several registers. If a uart appears "dead", the
  1137. Modem Doctor will tell you that the port was not "found". You can use the
  1138. Manual mode and override this determination. This allows you to test a
  1139. defective port to find out what is wrong. If you tell the Modem Doctor for
  1140. example to use serial Port 2F8 as COM2  and you do not have a COM2, the
  1141. message "COM2 not Found" will be returned with an option "Override [Y/N]
  1142. ?". Answering "Y" will force the login of this port.  Certainly there is
  1143. no benefit to testing a non-existent port, but a port that is defective
  1144. may not be logged-in. So, you now have the option to test this defective
  1145. port hardware to pinpoint a problem. Combined with the register display
  1146. and diagnostics, you will most likely be able to pin-point any uart
  1147. problem quickly and easily. 
  1148.  
  1149. 4.2 Regs     
  1150. -------------      
  1151.  
  1152. ╔[  Register Tests  ]══════════════╗
  1153. ║ Quick Uart Register Diagnostics  ║ <- Displays all registers
  1154. ║ DTR/DSR  RTS/CTS echo test       ║ <- Tests handshake lines
  1155. ║ Dynamic  RTS/CTS handshake test  ║+<-|Handshakes under simulated
  1156. ║ Dynamic Xon/Xoff handshake test  ║+<-|on-line conditions.
  1157. ║ Display any 10 S-registers       ║ <- Display S-registers
  1158. ║ Help and Info on these tests     ║ <- Help or ALT-H
  1159. ║       Return To Main Menu        ║
  1160. ╚══════════════════════════════════╝
  1161.                                              + registered version only
  1162. The register display section can be an invaluable diagnostic tool. What
  1163. this does is "poll" all of the status registers of the uart, and the
  1164. interrupt controller to tell you exactly what is going on.  When you use
  1165. the setup mode, the Modem Doctor checks all of these registers for correct 
  1166. information. If something wrong is discovered, a warning is displayed on
  1167. the screen telling you what the Modem Doctor believes is wrong. Many
  1168. different error conditions are checked, see the error code section for a
  1169. listing. Each register contains a Mnemonic for each one of the data bits.  
  1170. Bits that are a logic low ( = 0) are displayed in low intensity, those
  1171. that are a logic high (= 1) are displayed in high intensity. On a color
  1172. monitor, this is easy to see. On a Mono Monitor, make sure you have the 
  1173. brightness and contrast controls properly adjusted to see the difference
  1174. between the two status conditions.  (Note: Version 4 allows you to pick
  1175. your own custom colors, however, it will still alternate between high
  1176. intensity and low intensity shades of the colors you select for the uart
  1177. register displays).
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 19
  1196.  
  1197.  
  1198.  
  1199. -[ Line Control Register ]----------      
  1200. |  DLB STB STP EPS PEN STB WS1 WS0  |     
  1201. ------------------------------------      
  1202. This register controls many of the setup characteristics of your uart and
  1203. how it behaves to your PC. This register is responsible for setting baud
  1204. rate, setting break code transmission, parity, and the length of the
  1205. serial stream  word. 
  1206.          
  1207. DLB    Divisor Latch          Used to access the baud rate registers.      
  1208.                               Should be low for all displays.
  1209.          
  1210. STB    Set Break              If high, the modem transmits a
  1211.                               break signal, should be low normally.      
  1212.  
  1213. STP    Stick Parity           Should be low normally    
  1214. EPS    Even Parity select     High = even parity..should be low normally   
  1215. PEN    Parity Enable          Enable parity checks, should be low normally
  1216.  
  1217.  
  1218.  
  1219. STB    Stop Bits              Number of stop bits, should be low normally  
  1220.                               to indicate 1 stop bit character only.
  1221.  
  1222. WS1    Word Length Select 1     
  1223. WS0    Word Length Select 0   These two bits are used to determine the     
  1224.                               serial data word length. Both should be high 
  1225.                               normally to indicate a length of 8 bits.
  1226.          
  1227. -[ Line Status Register ]----------- 
  1228. |      TSE THE BI  FE  PE  OE  DR   |      
  1229.  ___________________________________      
  1230.          
  1231. The line status register reports error conditions that might have occurred
  1232. between the PC and the Uart.      
  1233.  
  1234. TSE    TX Shift Register      A high indicates that all characters         
  1235.                               sent to the Uart were transmitted.  Should
  1236.                               be High Normally.      
  1237.  
  1238. THE    TX Holding Register    A high indicates that the Uart can now       
  1239.        Empty                  accept a new character from the PC. Should 
  1240.                               be high normally. 
  1241.  
  1242. BI     Break Interrupt        A high indicates that a break signal was     
  1243.                               received. Should be low normally.      
  1244.  
  1245. FE     Framing Error          A high indicates that a serial data train 
  1246.                               did not have a proper stop bit. Should be
  1247.                               low normally.   
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 20
  1262.  
  1263.  
  1264. PE     Parity Error           A high indicates that the received serial    
  1265.                               data's parity did not match what the uart
  1266.                               was programmed to receive. Should be low     
  1267.                               normally.     
  1268.  
  1269. OE     Overrun Error          A high indicates that a character in the     
  1270.                               receive buffer was not read by the PC in     
  1271.                               time, and another character overwrote and
  1272.                               destroyed it. Should be low normally. 
  1273.  
  1274. DR     Data Ready             A High indicates that a character has been   
  1275.                               received and is ready to be read by  the PC  
  1276.                               from the receiver buffer. Should be low
  1277.                               normally for these test, but can vary while  
  1278.                               data is coming in from the modem. 
  1279.  
  1280.  
  1281. -[ Modem Control Register ]---------
  1282. |              LP  OT2 OT1 RTS DTR  |     
  1283. ------------------------------------       
  1284.          
  1285. The Modem Control register handles all of the interfacing between the    
  1286. Uart and the modem. Only 5 signals are needed for this level of control.   
  1287.  
  1288.          
  1289. LP     LOOP                   A high indicates that the loopback digital   
  1290.                               diagnostic has been activated. This feature  
  1291.                               only works with 8250 uarts or those that are 
  1292.                               100% compatible. This is used in the digital 
  1293.                               loopback test. 
  1294.  
  1295. OT2    OUT 2                  A high enables the uart to generate
  1296.                               interrupts. A low disables interrupts. This
  1297.                               should always be high for testing purposes.  
  1298.    
  1299. OT1    OUT 1                  On 100% compatible modems, a high on this 
  1300.                               pin will perform a hardware reset of the
  1301.                               modem in some compatible designs. Normally
  1302.                               this is a low.
  1303.  
  1304. RTS    Request to Send        A Handshaking signal that is used by some    
  1305.                               modems to enable data transfer between the
  1306.                               modem and the Uart. Should be high for
  1307.                               testing purposes.
  1308.  
  1309. DTR    Data Terminal Ready    A Handshaking signal that is used by some    
  1310.                               modems to enable data transfer between the
  1311.                               modem and the uart. Should be high for       
  1312.                               testing purposes.
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 21
  1328.  
  1329.  
  1330.  
  1331. -[ Modem Status Register ]----------      
  1332. |  RLS RI  DSR CTS DRD TER DDR DCS  |     
  1333. ------------------------------------      
  1334. The Modem Status Register returns the status of the control signals sent
  1335. by the modem to the Uart.      
  1336.          
  1337. RLS    Received Line Detect   A high indicates that a carrier has been     
  1338.                               received by the modem. When the Analog
  1339.                               tests are run, this should be high. If it is 
  1340.                               not, it is still possible that the modem
  1341.                               is ok, however the cable from the modem to   
  1342.                               the uart (for externals only) might not have
  1343.                               a complete circuit due to faulty wiring of   
  1344.                               the RS-232 cable. This signal is very
  1345.                               important for some communications programs   
  1346.                               to operate properly.      
  1347.  
  1348.  
  1349.  
  1350. RI     Ring Indicator         A high indicates that the modem detected a   
  1351.                               ringing signal on the phone line. 
  1352.  
  1353. DSR    Data Set Ready         This is part of the DTR/DSR Handshaking pair 
  1354.                               that is used by some modems to control the   
  1355.                               flow of data. Normally be a high. 
  1356.  
  1357. CTS    Clear to Send          This is part of the RTS/CTS Handshaking pair 
  1358.                               that is used by some modems to control the
  1359.                               flow of data. Should normally be a high.
  1360.  
  1361. DRD    Delta Received         Line Signal Detect. A high indicates that 
  1362.                               the Received Line Signal has changed state.
  1363.                               Some communications programs use this also 
  1364.                               as an indication that a carrier was detected
  1365.                               by the modem. 
  1366. TER    Trailing Edge
  1367.          Indicator            A high indicates that the Ring Indicator     
  1368.                               changed state. Some communications programs  
  1369.                               use this as an indication that the phone as  
  1370.                               rung.      
  1371.  
  1372. DDR    Delta Data Set Ready   Indicates that the DSR signal has changed    
  1373.                               state.      
  1374.  
  1375. DCS    Delta Clear to Send    Indicates that the CTS signal has changed    
  1376.                               state. 
  1377.          
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 22
  1394.  
  1395.  
  1396.  
  1397. If a 8250-B / 16450 or 8250A Uart was detected, the following is
  1398. displayed;      
  1399.        
  1400. -[ Interrupt ID Register ]----------
  1401. |                      ID1 ID0 ITP  |     
  1402. ------------------------------------       
  1403.          
  1404. The Interrupt ID Register is used to tell the CPU what kind of interrupt
  1405. occurred.      
  1406.  
  1407. ID0    Interrupt Bit 2     
  1408. ID1    Interrupt Bit 1        These two signals are a binary code which 
  1409.                               can be read by the CPU to tell what kind of  
  1410.                               interrupt occurred. Both bits high indicates
  1411.                               an error occurred or a break interrupt was
  1412.                               received.  Bit 2 high and Bit 1 low
  1413.                               indicates that data is ready to be read by
  1414.                               the CPU. Bit 1 high and bit 2 low indicates
  1415.                               that a ring signal or carrier signal was
  1416.                               received. For testing purposes, only the
  1417.                               Data ready mode is used. 
  1418.  
  1419. ITP    Interrupt Pending      A Low indicates that an interrupt has
  1420.                               occurred. For testing purposes, this should
  1421.                               always be high if data was successfully read
  1422.                               by the Modem Doctor. If it is not, then an
  1423.                               interrupt did occur but the CPU did not
  1424.                               respond. Suspect a problem with an interrupt
  1425.                               controller chip or the uart interrupt
  1426.                               generating capability. If a 16550 or
  1427.                               16550A(x) chip was detected, the register
  1428.                               selection uses the enhanced register
  1429.                               display.             
  1430.          
  1431.  
  1432. If a 16550A(x) was detected, the appearance of the Interrupt ID register
  1433. changes and the following is displayed;
  1434.  
  1435. -[ Interrupt ID Register ]----------
  1436. | FEM FEL          ID2 ID1 ID0 ITP  |     
  1437. ------------------------------------   
  1438. FEM   FIFO Enable MSB         This is the most significant bit of the FIFO
  1439.                               register. It should be high on both the
  1440.                               16550 and 16550AN if the FIFO buffering is
  1441.                               enabled. Normal Modem Doctor status shows
  1442.                               this as a logic low (unless testing is
  1443.                               performed).  
  1444.  
  1445. FEL   FIFO Enable LSB         This is the least significant bit of the
  1446.                               FIFO Register. It should be a high on the
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 23
  1460.  
  1461.  
  1462.                               16550A(x) only! The 16550 always displays
  1463.                               this bit low. Again, the normal Modem Doctor
  1464.                               status will show this as a logic low (unless
  1465.                               testing is performed).
  1466.  
  1467. ID2   FIFO Timeout            This signal is raise high by a 16550A(x) to
  1468.                               indicate that it is holding characters for
  1469.                               the CPU to read, but it is less than what
  1470.                               the CPU has requested to be interrupted for.
  1471.                               The FIFO buffer can be as deep as 14
  1472.                               characters. If only 8 have come in, the CPU
  1473.                               will not be interrupted. The 16550A(x) is
  1474.                               programmed to interrupt after a period of
  1475.                               time has gone by during which no characters
  1476.                               were received in order to force the CPU to
  1477.                               get what it is currently storing. Normal
  1478.                               operation should keep this line low, if it
  1479.                               is high at any time there is a problem with
  1480.                               the uart.  
  1481.  
  1482.          
  1483. -[ Interrupt Enable Register ]------      
  1484. |                  ESI ELI ETI ERI  |     
  1485. ------------------------------------      
  1486.          
  1487. The Interrupt Enable register is programmed to allow certain types of    
  1488. interrupts to occur.      
  1489.  
  1490. ESI    Enable Status          A high causes the uart to generate an
  1491.                               interrupt whenever RI or RSD signals in the
  1492.                               Modem Status register go high. Should be low
  1493.                               for testing.
  1494.  
  1495. ELI    Enable Line            A high causes the uart to generate an 
  1496.                               Interrupt whenever an error or break
  1497.                               interrupt is detected in the Line Status
  1498.                               Register. Should be low for testing.
  1499.  
  1500. ETI    Enable Transmitter     A high causes the uart to generate a holding 
  1501.                               register interrupt whenever the THE signal 
  1502.                               of the empty interrupt line status register
  1503.                               goes high. Should be low for testing.        
  1504.                               
  1505.  
  1506. ERI    Enable Receive Data    A high causes the uart to generate an ready  
  1507.                               interrupt whenever data is ready to be read
  1508.                               by the CPU. The DR line of the line status 
  1509.                               register going to a high state generates
  1510.                               this  condition. This signal should be high
  1511.                               for testing purposes, since it is the only
  1512.                               interrupt needed by the Modem Doctor.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 24
  1526.  
  1527.  
  1528.  
  1529. -[ Interrupt Mask Register ]--------      
  1530. |  IQ7 IQ6 IQ5 IQ4 IQ3 IQ2 IQ1 IQ0  |     
  1531. ------------------------------------      
  1532. The interrupt mask register is contained on the 8259 priority interrupt
  1533. controller on your computer's motherboard. Each one of these hardware
  1534. interrupts corresponds to an external device.      
  1535.  
  1536. IQ7   Printer Interrupt (can be used by Custom COM5 or COM6)
  1537. IQ6   Floppy Disk Interrupt     
  1538. IQ5   Hard Drive interrupt (can be used by Custom COM7 or COM8)
  1539. IQ4   COM1 Interrupt (also COM3)     
  1540. IQ3   COM2 Interrupt (also COM4)     
  1541. IQ2   reserved by IBM (Gateway to second 8259 on AT's)     
  1542. IQ1   Keyboard Interrupt     
  1543. IQ0   Timer Interrupt      
  1544.          
  1545.  
  1546.  
  1547. Under Normal Conditions, IQ0,IQ1 and IQ6 should be lit, along with IQ4 if
  1548. testing COM1 (or COM3)  or IQ3 if testing COM2 (or COM4). In addition,
  1549. other lines could be lit depending on your computer. The only line the
  1550. Modem Doctor looks for is the IQ4 or IQ3 lines (depending on which serial
  1551. port you are testing).   
  1552.  
  1553.  
  1554. 4.30 Handshaking tests
  1555. ----------------------
  1556. Just like a handshake between friends, the Modem Doctor tests to see that
  1557. your computer uart and the modem are properly exchanging handshaking for
  1558. data communication. There are 4 tests for proper operation. Two of them
  1559. are static (meaning that the control lines between the computer and modem
  1560. are raised and lowered), and two of them are dynamic (meaning that the
  1561. modem is placed in a self-connect mode and data is sent to the modem).
  1562.  
  1563. Static test results can vary modem to modem. Some modems echo control line 
  1564. toggles...in other words, if DTR goes low, so will DSR. Other modems do not. 
  1565. So, it would be considered normal for a modem *not* to pass this particular 
  1566. test. However, if you wish to test a cable, and at the end you place a 
  1567. loopback plug, then the static echo test should pass. Otherwise, your cable 
  1568. is wired incorrectly!
  1569.  
  1570. The static RTS/CTS tests are conducted the same way, however this
  1571. handshake pair is important for high-speed modem users. Again, working 
  1572. through a modem, you will see a failure (unless using the modem for 
  1573. Synchronous Communications, something most users never do). However, with a 
  1574. loopback plug, you should see the static test pass. The static tests above 
  1575. are designed to show that your cabling to the modem is proper, when verified 
  1576. with a loopback plug. However, these tests cannot verify if your modem 
  1577. microprocessor will act properly on this handshaking information. 
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 25
  1592.  
  1593.  
  1594. The dynamic tests force your modem to self-connect. Next the RTS (or DTR) 
  1595. lines are dropped (depending on which test is run). Then 20 characters are 
  1596. sent to the modem. If the modem is properly using handshaking, no characters 
  1597. will be sent back to the computer. If any characters are received, then your 
  1598. modem ignored the handshake request. In most cases, if the static tests 
  1599. passed but the dynamic failed, it means your modem needs to be setup for 
  1600. testing. 
  1601.  
  1602. The Modem Doctor offers you the choice of programming your modem to test
  1603. its ability to handshake. Using this mode requires that you have selected
  1604. the proper modem driver from the Carrier mode before hand, otherwise
  1605. incorrect commands will be sent to your modem. If you know you have the
  1606. right driver, then you can go ahead and see if your modem is set properly
  1607. or not.
  1608.  
  1609. None of the commands sent to the modem are permanently stored in the
  1610. modem. If the Modem Doctor enables handshaking and it works, but your
  1611. setup in the modem does not work, then you have to reprogram the modem
  1612. yourself. You can use the Interactive terminal mode to do this if you wish
  1613. without leaving the Modem Doctor. Also, in order for these tests to be valid
  1614. you must be using a modem that supports RTS/CTS and XON/XOFF handshaking 
  1615. modes of operation.
  1616.  
  1617.  
  1618. 4.30A S-Register Displays
  1619. -------------------------
  1620. The most important S-registers are the first 16. These determine many of the 
  1621. abilities and options that your modem can use during communication sessions. 
  1622. However, today's high-speed modems have many more registers, in fact some 
  1623. have up to 200! After the first 16, no one really follows any sort of "plan", 
  1624. each modem manufacturer is pretty free to do what they wish. From a 
  1625. diagnostic standpoint, this is a nightmare senario. Even with the same 
  1626. manufacturer, different ROM versions change how these registers are used.
  1627.  
  1628. The "compromise" position is allow for the viewing of S-registers in groups 
  1629. of 10. You pick the starting register, and the next 10 are displayed. Values 
  1630. of 0 (appearing slowly) usually indicate that the selected register doesn't 
  1631. exist. As with all Modem Doctor routines, you cannot change any of these S-
  1632. register settings, unless you go into the Interactive Mode and use the AT 
  1633. commands that allow you to change register settings. 
  1634.          
  1635. 4.31 Carrier Tests     
  1636. -----------------  
  1637. ╔[  Setup  ]═════════════╗
  1638. ║ Run the Carrier Tests  ║ <- Simulate on-line tests
  1639. ║ Select Modem Commands  ║ <- Pick a modem driver
  1640. ║ Help With Carrier Test ║ <- Help
  1641. ║  Return to Main Menu   ║
  1642. ╚════════════════════════╝
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  
  1657.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 26
  1658.  
  1659.  
  1660. The carrier test section is used to test your modem's ability to detect a
  1661. carrier, demodulate signals on the originate frequency and answer
  1662. frequency, and to properly control the RLS (Received Line Signal) and CD
  1663. (carrier detect) modem status/control lines. All of these are essential
  1664. elements for good data communication.  When you select carrier tests, a
  1665. pulldown menu is displayed. Option 1 prompts you to run the carrier tests.
  1666. Option 2 offers you the chance to select a custom modem driver. Option 3
  1667. allows you to return to the main menu (pressing ESCAPE or a left/right
  1668. arrow key also does the same thing as option 3).  
  1669.          
  1670. 4.31 Modem Driver Modules    
  1671. --------------------------  
  1672. Although your AT instruction set modem is based on a defacto standard
  1673. developed by Hayes, there are several "supersets" of this instruction set
  1674. for various modems. Currently, the  Modem Doctor supports 9 different
  1675. software Modem Drivers for testing; Generic Compatible, &T0 (CCITT V.54 test 
  1676. sequence) instruction set, Hayes V9600, Hayes Ultra 9600, Courier HST/V.32, 
  1677. ZyXEL 1496, Practical Peripherals, Intel, and Sierra Semiconductor modems. 
  1678.  
  1679.  
  1680. When the Modem Doctor is running the setup mode, it queries the 
  1681. microprocessor for its type identification. Based on this information, a 
  1682. modem driver is selected for use. Basically, all 2400 bps and lower modems 
  1683. are assigned the Generic Driver, and all supported 9600 and higher modems are 
  1684. assigned their proper ID, based on the information your modem returns via its 
  1685. ROM code. If Modem Doctor knows its a high-speed modem but can't determine 
  1686. the type, the Courier HST/V.32 driver is assigned by default. The &T0 
  1687. instruction set modems, (those that use the CCITT V.54 test sequence), are 
  1688. tested in a different manner with a different set of instructions. Previous 
  1689. versions of the Modem Doctor would automatically switch to the &T0 
  1690. instruction set if the modem was a 2400 bps modem and if it failed to 
  1691. properly detect a carrier during testing. 
  1692.  
  1693. This function is still built into the Modem Doctor, but you can 
  1694. optionally select the &T0 driver yourself before beginning your testing in
  1695. order to speed things up. Auto-selection added about 10 seconds a pass
  1696. that can now be eliminated.  If you desire to select the &T0 set for your
  1697. modem instead of letting  the Modem Doctor do it for you. NOTE: Don't 
  1698. select this instruction set unless you know for sure that your modem is
  1699. 100% instruction set compatible with the Hayes 2400 or 2400B. Hayes 1200
  1700. bps and lower, and almost all other 2400 bps and lower modems use the
  1701. Generic Driver. You will find that 99% of all modems will work properly
  1702. with this  assignment, in fact, if you disable all data compression and
  1703. Fixed link assignments from any high speed modem (including 16800+'s), the 
  1704. generic driver will test these modems properly also! This allows people with 
  1705. high-speed modems that are not supported currently to use the Modem Doctor 
  1706. for testing. If you have a high-speed modem that is not supported, you can 
  1707. use a Combination of the Manual mode and the Generic Modem Driver to test 
  1708. these modems also.  
  1709.  
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715.  
  1716.  
  1717.  
  1718.  
  1719.  
  1720.  
  1721.  
  1722.  
  1723.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 27
  1724.  
  1725.  
  1726. All of the modem drivers used by the Modem Doctor are built into the
  1727. program, however version 5.0, like version 4.0x, has the ability to recognize 
  1728. an external driver file. If the Modem Doctor finds and external driver file 
  1729. when it starts, it uses those command instead of the built-in drivers. The 
  1730. format for drivers has changed between version 4.0x and 5.0, and any future 
  1731. drivers will be released in both formats for users of both versions of Modem 
  1732. Doctor.
  1733.  
  1734. What purpose is there in external drivers? Well, first off, if a new modem
  1735. command set is adopted, or a bug is discovered in one of the built-in
  1736. modems, you will be able to receive a free driver file from any bbs or by
  1737. mail. This means that your copy of the Modem Doctor can stay current for
  1738. some time to come. The second reason for external drivers is to allow you,
  1739. if you desire, to have us custom design a modem driver for a particular
  1740. modem. These drivers would be designed at a modest charge and would be for
  1741. your use only. In any case, external drivers insure your investment in the
  1742. Modem Doctor.
  1743.  
  1744. 4.32 Types of Carrier Tests  
  1745. -----------------------------     
  1746. The carrier tests are designed to test your modem under actual use
  1747. conditions (minus a telephone line). Your modem uses two different
  1748. frequency bands for communication. These are the originate and answer
  1749. frequencies. AT Compatible modems can select these under command of the
  1750. Modem Doctor via the appropriate Modem Driver module. So called "Dumb"
  1751. Modems have front-panel switches that you must use to properly test the
  1752. modem. The Modem Doctor supports both types of tests, one of which is
  1753. automatically selected by the Modem Doctor depending on the hardware it
  1754. detects.  
  1755.          
  1756. 4.33 AT Instruction Set Tests 
  1757. -----------------------------     
  1758. If you selected the Test Modem/Uart option from the setup menu and a Modem
  1759. with a compatible microprocessor was detected, or if you have forced the
  1760. Modem Doctor to use the AT instruction set tests via the hot-key ALT-F,
  1761. the Modem Doctor will test the originate and answer frequencies of your
  1762. modem automatically. Before running this test, make sure you have
  1763. disconnected the modem from the telephone line, because the modem will go 
  1764. off-hook and sometimes the  dial-tone will interfere with testing. If you
  1765. press ESCAPE in this menu, you return to the main menu. Any other key
  1766. continues. You will be prompted to enter a "Loop Count". If you select a
  1767. count of 1, you will be able to hear the connecting tones on your speaker.
  1768. If you select a count greater than 1, then the speaker is turned off. 
  1769.  
  1770. After you make your selection, two windows will open on your screen. One
  1771. contains data that is being sent to the modem, the other data that has
  1772. been received by the modem. All of the characters from binary 0 to binary
  1773. 255 are transmitted. Some of these will look strange because they are
  1774. characters of the extended character set. The Modem Doctor takes a great
  1775. deal of care in preserving the normal condition of your modem before
  1776. testing, and sends all the character strings necessary to test without
  1777.  
  1778.  
  1779.  
  1780.  
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786.  
  1787.  
  1788.  
  1789.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 28
  1790.  
  1791.  
  1792. disturbing any non-volatile memory settings. If you have an external
  1793. modem, you will see the data being sent and acknowledged before testing
  1794. begins. 
  1795.  
  1796. While it is setting up, the Modem Doctor tells you what is going
  1797. on, including that the modem is reset, that commands are being sent, and
  1798. that it is waiting for a carrier. The Modem Doctor waits up to 15 seconds
  1799. for either the word CONNECT or the RLS signal to go active. If this does
  1800. not happen, the Modem Doctor switches to the &T0 command set that is used
  1801. by Hayes 2400's and several other clones. This test is just as valid as a
  1802. full carrier test for these types of modems, and verifies both the modem
  1803. and the uart signal paths as does the traditional carrier test. If you
  1804. switch to this mode, you will be informed via the screen and the message
  1805. "CCITT V.54 " will be displayed. Also, if you have an external
  1806. modem, you might see the "modem ready" light flashing throughout this
  1807. test. If you selected the &T0 instruction set yourself from the Modem
  1808. Driver selection menu, then the &T0 set will be used exclusively. This
  1809. selection is mainly a convenience for some users (because the
  1810. auto-detection method takes a little longer), however it will not test any
  1811. other kind of modem properly. 
  1812.  
  1813. If you are unsure, let the Modem Doctor figure it out for you. Note, if
  1814. you select more than 1 itineration and change you mind, press ESCAPE
  1815. anytime during the test. At the next available loop-repeat time the Modem
  1816. Doctor will abort testing and give you your current status.  
  1817.         
  1818.  
  1819. 4.34 Uart or Dumb Modem Tests 
  1820. ----------------------------- 
  1821. This test works the same as the AT instruction set modem test with two
  1822. main exceptions. First, Your modem must be able to generate a carrier on
  1823. its own on the answer and originate frequencies. Most external "dumb" 
  1824. modems have front panel switches for this function. Most are marked as AL
  1825. (for Analog Loopback). If your modem can generate this, answer yes  and
  1826. follow the prompts on the screen. All testing is performed as above,
  1827. except you setup the modem instead of the Modem Doctor using its modem
  1828. driver software.  Whenever the Modem Doctor is working with the micro in
  1829. the "Off-line" mode, the dumb mode tests are used. You are prompted if
  1830. your modem can generate a carrier. Answer yes to start the testing. You
  1831. are then told to place your modem in the analog loop mode and force the
  1832. carrier detect on. Most dumb modems will light the CD light on the front
  1833. panel of the modem when you press the AL switch. This CD light sends a RLS
  1834. (Received  Line Signal) status word to the uart. The Modem Doctor looks
  1835. for this before it will allow testing in this dumb mode. If your modem
  1836. cannot generate a carrier indication, you can still test an analog
  1837. loopback using the loopback function in the registered version and select
  1838. the analog loopback tests (this is explained later in the documentation).  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 29
  1856.  
  1857.  
  1858.          
  1859. 4.35 Error Messages 
  1860. -------------------     
  1861. If A RLS (Received Line Detect) signal is not received before testing
  1862. begins, this indicates that either a carrier is not being generated (or
  1863. properly received in self test) by the modem, or an RS-232 Cable to an
  1864. external modem is improperly wired. Although RS-232 loops will work fine
  1865. without an RLS signal being wired, there is no way for the Modem Doctor to
  1866. detect on a dumb modem if a carrier was generated. On a AT instruction set
  1867. modem, the Modem Doctor alternately looks for the word "CONNECT" to be
  1868. sent from the modem if there is no RLS signal available. If you wish your
  1869. all of your communications programs to work properly, you should get a
  1870. cable with this signal wired. If an error is detected during the analog
  1871. test, the error counter is incremented. There are two error counters; one
  1872. is used for the originate mode, and the other for the answer mode. If you
  1873. receive an error, it could be due to a problem with a uart or a modem at a
  1874. certain baud rate. Try testing at other baud rates to determine if the
  1875. errors repeat. Also errors could occur on only the originate or the answer
  1876. frequency. This is more prevalent at higher baud rates. Finally, make sure
  1877. that the modem was disconnected from the phone line before testing. The
  1878. dial-tone interferes with some modems. One other possibility exists, that
  1879. there could be a problem with a cable or interrupts not properly being
  1880. generated or properly handled by the CPU. Run the digital/loopback tests
  1881. and if the problem repeats, you might have a bad uart or motherboard
  1882. problem. Although it is unlikely, if power is removed from the modem or a
  1883. cable falls off (or who knows what else), the Modem Doctor waits a
  1884. pre-determined period of time for an interrupt to occur. If none is
  1885. detected, the warning "Modem Queue Failure" or "Modem Receiver Failure" 
  1886. will be displayed in one of the windows. These might also be displayed if
  1887. the modem never acknowledged a character being transmitted, or never sent
  1888. one back. Again, the only conditions that would cause this would be a
  1889. cable being removed between the modem and the uart, the power being
  1890. removed to the modem, or the modem "blowing up" via some unnatural means
  1891. during the test. If the RLS (Received Line Signal) is constantly active
  1892. from the modem, the Modem Doctor will tell you that you might have a
  1893. problem with a cable or the modem and that the test results might not be
  1894. valid. Reason for this is that the Modem Doctor never did detect a carrier
  1895. because the uart said it was already there. This can be traced in nearly
  1896. all cases to the modem. Change the setting of the modem to let the carrier 
  1897. Detect (CD) act normally. It should never be set to be forced on for a PC.
  1898. If so, not only the Modem Doctor, but other communications programs will 
  1899. not operate properly. 
  1900.  
  1901. 4.36 IRQ Failures
  1902. -----------------
  1903. The Modem Doctor will allow you to test a modem that might not have a
  1904. proper IRQ assignment. Such errors in jumper settings on your serial cards
  1905. or internal modems are tough to trace. If you see this error message
  1906. displayed, it means that your modem is receiving signals properly, but it
  1907. cannot communicate back to the computer over normal interrupt assignments.
  1908. This normally results from using an IRQ line reserved for one comm port
  1909.  
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.  
  1916.  
  1917.  
  1918.  
  1919.  
  1920.  
  1921.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 30
  1922.  
  1923.  
  1924. with another. See the section above about IRQ's if you get this error, and
  1925. use the table above as a guide to how to correct your problem.
  1926. IRQ failures will be displayed in the setup mode, the Regs Quick Uart
  1927. Diagnostics mode, the Analog Loopback mode and the Carrier Tests mode.
  1928.  
  1929. 4.4 Loopback Tests     
  1930. -------------------      
  1931. The loopback tests were designed for two purposes. First, to test an
  1932. RS-232 loop including cables that are properly terminated with a loopback
  1933. plug, and second, to run a digital loopback test on 8250 and 100%
  1934. compatible uarts. Additionally, the analog portion of this test can be
  1935. used to test a dumb modem that does not generate a CD (carrier detect)
  1936. signal when the AL switch is thrown on the front panel. Selecting loopback
  1937. and pressing return fetches this menu;      
  1938.  
  1939.  
  1940. ╔[  Loopback Tests  ]═══════════╗
  1941. ║ Analog Loopback using a PLUG  ║ +<- test Uart & Cables
  1942. ║ Digital Loopback 8250 UARTS   ║ +<- Uart test only
  1943. ║ Loopback Plug Technical Data  ║ +<- How to build a
  1944. ║ Help with Loopback Tests      ║     loopback plug
  1945. ║     Return To Main Menu       ║
  1946. ╚═══════════════════════════════╝
  1947.                                   +registered version only
  1948.  
  1949.  
  1950. Analog loopback tests require that you attach a Loopback plug either to
  1951. the back of the Comm port connector on your computer, or at the end of a
  1952. RS-232 Cable. This test is designed for external modems, however you could
  1953. run this on an internal modem as a test of the command channel's ability   
  1954. to receive characters. Caution should be used on internal modems, for some
  1955. will fail this test. If this happens, don't be concerned. However this
  1956. test should NEVER fail with a loopback plug, unless you were trying to
  1957. drive the line at an excessive rate. Remember, the faster the data rate,
  1958. the shorter the lines should be, and the faster the computer should be to
  1959. handle it. With a loopback plug on the back of the serial port, speeds of
  1960. 56000 bps should run fine even on a slower PC (as long as it is not multi-
  1961. tasking). If you experience problems at 56000 but not at 19200,  chances
  1962. are your hardware is fine (if you are using an 8250-B). In extensive
  1963. testing with PC's at 4.77 mhz, the original 8250-B performed flawlessly at
  1964. 56000 bps. Dumb modems can use this test also (as explained above and in
  1965. the section carrier tests). Digital loopback tests require that you have 
  1966. an 8250-B, 8250A,16450, 16550,  16550A(x) or other 100% compatible uart in
  1967. your system. These uart's have built-in diagnostics. If you are using a PC
  1968. compatible internal modem or a PC compatible serial card, then you will
  1969. definitely have a compatible uart installed.  
  1970.  
  1971. There is a design difference between the 8250-B and other compatible chips
  1972. in this series. Some of the differences were explained above, but the
  1973. important difference for the loopback test is the way the different uarts
  1974. will respond.  The 8250-B allowed its OUT2 signal to become active during
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 31
  1988.  
  1989.  
  1990. loopback testing. The OUT2 signal is used by PC compatible machines to
  1991. gate the interrupt signal off of the serial board (or internal modem).
  1992. Later designs (8250A, 16450, 16550,16550AN) tri-stated this line. As a
  1993. result, the self-test diagnostics will not allow the interrupt signal to
  1994. gate off the board and interrupt the CPU. This would cause all digital
  1995. loopback tests on these improved chips to fail. The Modem Doctor handles
  1996. this by a brute-force read of the uarts. By sampling the Interrupt ID
  1997. register, the presence of an interrupt is detected, then the receiver
  1998. buffer register is read. This method is not as efficient as a true
  1999. interrupt-driven test would be, but it is accurate. The Uart does generate
  2000. the ID for an interrupt, the character is pulled out of the uart. In
  2001. version 4.0, the speed of this routine was significantly enhanced so that
  2002. it runs approximately at the same speed as a true interrupt driven 8250-B.
  2003.  
  2004. When running this test on an 8250-B, you will see the true speed of the
  2005. interrupt handling and processing. On others, you  will see the
  2006. brute-force method. Each is an accurate test of the uart and valid at any
  2007. baud rate selected. If this test does not run, but yet the analog test and
  2008. all other tests  run fine, it means that you do not have a compatible uart 
  2009. installed.  Some uarts that are not 8250's have a problem entering this
  2010. mode properly.  If the test does not start, do not be alarmed, because 
  2011. only 8250 and true compatibles will pass this test. However this test will
  2012. NEVER start and then fail unless you do have a hardware problem. You
  2013. should never pick up a character error using this test. If you do, you
  2014. have a bad uart or  CPU motherboard problem. Both tests open up windows
  2015. (like the analog test) and send and receive characters to the uart. If you
  2016. wish to know how to build a loopback plug, select the Loopback Plug
  2017. technical data section. Pressing ESCAPE or the left/right arrows is the
  2018. same as Option 4 and returns you to the main menu.  
  2019.  
  2020.       
  2021. 4.41 Loopback Test Error messages         
  2022. ---------------------------------           
  2023. Essentially the error messages for these tests are simple. In the loopback
  2024. test mode, if a character is received incorrectly, the error counter is
  2025. advanced and a report is issued at the end. If the analog or digital tests
  2026. fail to receive or transmit characters, the messages will explain that
  2027. either the transmit queue, the receive queue failed, or that the uart did
  2028. not respond to the tests. The last message may be displayed if you have a
  2029. non-compatible uart. If the uart fails to setup properly for the digital
  2030. loopback test (does not program its registers properly), a warning is    
  2031. displayed that there is an error in one of the registers. The message will
  2032. explain what is wrong and what it expects.  Also, if you are using the
  2033. wrong IRQ line for your comm port, you will receive an IRQ failure error.
  2034. See the warning message section for more details.                    
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 32
  2054.  
  2055.  
  2056.  
  2057. 4.5 Options Mode
  2058. ---------------------              
  2059.                               ╔[  User Options Selection  ]╗
  2060.  A Built-in mini-terminal  -> ║ Interactive Terminal Mode  ║
  2061.  Status of all tests       -> ║ View Current Statistics    ║
  2062.  Reset all tests to 0      -> ║ Reset Current Statistics   ║
  2063.  Send results to printer   -> ║ Print Current Statistics   ║
  2064.                               ║ Help with these options    ║
  2065.                               ║    Return To Main Menu     ║
  2066.                               ╚════════════════════════════╝
  2067.  
  2068. The options mode allows you access to the built-in 16k communications
  2069. terminal (Interactive Mode), and the report generator features. 
  2070.  
  2071. 4.51 Interactive Mode
  2072. ----------------------
  2073. As well written as the Modem Doctor is, there exists the possibility that
  2074. a modem or a system might not be compatible with the diagnostics. The
  2075. manual section allows you to send your own string commands to the modem,
  2076. read back data, and in fact you could use this as a mini-communications
  2077. program.  If you select this mode, a window opens with the banner
  2078. Interactive Mode. At the Bottom are listed the "Hot-Keys" you can use;
  2079.  
  2080.       ALT-B   This opens a window for you to change the baud rate.         
  2081.        Note: if you are on-line with a service this might cause an         
  2082.        error between the computer and the modem. Off-line conditions       
  2083.        should work properly. 
  2084.          
  2085.       ALT-C   Clears the screen. This only clears the window of data, and  
  2086.        leaves all your prompts.   
  2087.  
  2088.       ALT-N   Add Nulls, this is new with Modem Doctor 5.0, and can be used
  2089.        to determine if your display adapter is causing "Interrupt Latency"
  2090.          
  2091.       ALT-R   This displays the Uart registers...handy for real-time       
  2092.        troubleshooting of RS-232 loops.      
  2093.          
  2094.       ALT-H   Help..this displays the basic AT Command set instructions 
  2095.        that  you could use to control your modem. Note that this is only a 
  2096.        basic set. Some modems have many extensions to this, so for         
  2097.        advanced work, consult your owners manual.      
  2098.          
  2099.       ALT-X   Exits the interactive mode and returns to the main menu.     
  2100.  
  2101.  
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118.  
  2119.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 33
  2120.  
  2121.  
  2122.  
  2123. 4.51A Testing for Interrupt Latency
  2124. -----------------------------------
  2125. Interrupt Latency is caused by a hardware device (usually a hard disk or a 
  2126. video display adapter) taking longer to process a function that the time it 
  2127. takes to receive a character over your modem. Normally, interrupt latency is 
  2128. not a problem until you use DTE/DCE speeds over 19200bps. With today's high-
  2129. speed modems, its not uncommon for people to be running speeds of 38400 or 
  2130. 57600bps between computer and modem. Older display adapter, most notably 
  2131. early EGA's with "Auto-detection" circuitry, cause interrupt latency. The 
  2132. symptoms will range from loosing characters occasionally to excessive errors 
  2133. when downloading files. 
  2134.  
  2135. There is no real test for interrupt latency, because such a wide variety of 
  2136. situations can cause it. The only "cure" is to aquire a faster display 
  2137. adapter or a 16550AFN uart. Now, there is a way that you can use Modem Doctor 
  2138. to verify such an error is happening, and that is by using ALT-N. When you 
  2139. add nulls, you are telling Modem Doctor to wait a bit longer inside of a 
  2140. routine that talks to your video adapter, looking for more interrupts before 
  2141. exiting the display routine. If adding nulls improves the error rate that you 
  2142.  
  2143.  
  2144. see characters displayed (while on-line via the Interactive mode to a BBS), 
  2145. then you know you do indeed have an interrupt latency problem. There are two 
  2146. "short-cut" keys associated with ALT-N, and they are ALT+ and ALT-. ALT-N 
  2147. prompts you for a number, while ALT+ adds 1 to that number, and ALT- 
  2148. subtracts 1 from that number.
  2149.  
  2150. 4.52 View Current Statistics
  2151. ----------------------------
  2152. Whenever you log-in a comm port for testing, the Modem Doctor keeps tabs
  2153. on how many tests were run, the baud rates that were tested, and how many
  2154. errors you accumulated. You can view these statistics by using this
  2155. selection. These results are also displayed whenever you quit the Modem
  2156. Doctor.
  2157.  
  2158. 4.53 Print Current Statistics
  2159. -----------------------------
  2160. If you wish a hard-copy of your test results, just select this option. You
  2161. will be able to send this to any one of the printers the modem doctor
  2162. finds available or to a file called MDR.RPT.
  2163.  
  2164.  
  2165. 4.54 Reset Current Statistics
  2166. -----------------------------
  2167. Use this mode to reset all test results back to zero at any time.     
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 34
  2186.  
  2187.  
  2188.  
  2189. 4.6 Setup Mode     
  2190. --------------      
  2191. The setup mode consists of 2 sections. The first, the setup modem section
  2192. was covered above. Use this to change the serial port under test, the baud
  2193. rate, and the type of test to be run.        
  2194.  
  2195. The second section allows you to select the colors that you wish to work
  2196. with while using the Modem Doctor. You can select default colors,
  2197. Monochrome (black and white), or create your own custom colors.
  2198.  
  2199. If you are using a color monitor, you can use window selections to pick
  2200. the colors you like and optionally save them to a file (MDR.CFG). If you
  2201. save them, then as long as this file exists, the Modem Doctor will use
  2202. those colors in place of the default ones. To return to default, either
  2203. erase the MDR.CFG file, or select default colors and save it to disk.
  2204.  
  2205. When you enter the color selection mode, you will be presented with three
  2206. different windows that will allow you to make legal color selections.
  2207.  
  2208.  
  2209. [ Mdr Color Selection Screen ]
  2210. Select from this menu the color of normal window and error backgrounds
  2211. Background
  2212. Black 
  2213. Blue  
  2214. Green 
  2215. Cyan 
  2216. Red 
  2217. Magenta 
  2218. Brown 
  2219. Gray 
  2220.  
  2221. Select from this menu the color of all window foregrounds & sliding bars
  2222. foreground colors;
  2223. Darkgray 
  2224. Lightblue 
  2225. Lightgreen 
  2226. Lightcyan 
  2227. Lightred 
  2228. Lightmagenta
  2229. Yellow 
  2230. White 
  2231.  
  2232. If you select two colors the same (or different intensities that are the
  2233. same), the Modem Doctor will tell you your selections are invalid. After
  2234. you have made your choices, you will be presented with a window that
  2235. allows you to save your choices to a file, use the choices without saving
  2236. or reselect. If you save them to a file, a file MDR.CFG is created or 
  2237. updated. When Modem Doctor loads the next time, it will use these colors
  2238. again.
  2239.  
  2240.  
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.  
  2249.  
  2250.  
  2251.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 35
  2252.  
  2253.  
  2254.  
  2255. 4.7 Exit Program     
  2256. ----------------     
  2257. This is the only way to exit the Modem Doctor. This is necessary because
  2258. the interrupt tables and controllers of your PC must be  returned to their
  2259. original state in order to avoid problems after you  use the Modem Doctor. 
  2260. Pressing Control-C or Control-Break during the Modem Doctor will         
  2261. cause one of two things to happen. First, it will ignore what you have
  2262. done if it is critical that the program not be interrupted, or second, if
  2263. it is at all possible to exit without damage, a window will open telling
  2264. you that you can Control-Break abort if you wish..answer yes or no. You
  2265. can Control-Break during all tests and at times from menus. If you choose
  2266. to quit, the Modem Doctor cleans things up properly and exits to Dos.
  2267. Please remember this is just an emergency way of doing an exit. Use the
  2268. Exit function from  the main menu as the correct way to end the program.
  2269.  
  2270.  
  2271. 5.0 Error Messages and their Meanings     
  2272. -------------------------------------     
  2273. The Modem Doctor, if presented with an error, will make a diagnosis of the
  2274. problem. In most cases, this should be enough for you to figure out what
  2275. is wrong and go on from there to correct it.      
  2276.          
  2277. General Program Errors or Warnings
  2278. ----------------------------------
  2279. 1)   ABORT PROGRAM Control Break Key pressed..Aborting Program Run. 
  2280.      Do you wish to abort? [Y/N] : 
  2281.      - This means you have pressed the Control Break Key sometime during
  2282.      the program run. The Modem Doctor, unlike most programs, does not
  2283.      drop to dos with a Control-Break without cleaning up after itself.
  2284.      Answering Yes will clean up and stop the program. Answering no keeps
  2285.      the program running at the spot you left off at.
  2286.  
  2287.      If you answer Yes, you will see this message;
  2288.      Flushing Buffers.......Restoring Comm Port and Interrupt Vectors
  2289.      Program Aborted..all vectors restore.
  2290.  
  2291. 2)   You Must SETUP a COMM PORT first....Press any key to continue 
  2292.      - If you do not select at least 1 comm port when the program first
  2293.      starts running, you cannot run any tests. This message explains why.
  2294.  
  2295. 3)   Exchanging COM1 and COM2 Base Addresses in Memory
  2296.      COM1 Address was    %x   COM2 Address was    %x
  2297.      COM1 Address now is %x   COM2 Address now is %x
  2298.      Run MDR /X again to exchange again, these changes are gone when you
  2299.      reboot!
  2300.      - This messages is displayed when Modem Doctor is run in the exchange
  2301.      mode (MDR /x).
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 36
  2318.  
  2319.  
  2320.  
  2321. 4)   Sorry...but I cant find a modem to use... Use Login Feature to
  2322.      Manually Log in a comm port.
  2323.      - The Modem Doctor needs at least 1 comm port installed at a
  2324.      conventional port address to run. If none are available, you have to
  2325.      use the manual login mode to start testing. You should never see this
  2326.      error message with a computer unless it has no serial ports
  2327.      whatsoever.
  2328.  
  2329. 5)   Resetting modem to your default settings...please wait
  2330.      - Whenever you exit Modem Doctor and a microprocessor-based modem was
  2331.      detected, it will clean up after itself and restore your modem to
  2332.      initial settings. Uart only tests do not display this message.
  2333.  
  2334. 6)   Your foreground color equals  background..please retry
  2335. 7)   Your foreground low intensity equals background, please retry
  2336.      - These messages are displayed when you make color selection choices
  2337.      that would not be proper for the type of display monitor you are
  2338.      using.
  2339.  
  2340. 8)   Warning..I could not create the MDR.CFG file. No colors saved to disk
  2341.      - Modem Doctor could not save the file to disk, perhaps there is no
  2342.      more space on the disk or the disk is write-protected.
  2343.  
  2344. 9)   Warning..I could not read the MDR.CFG file. No colors read to disk
  2345.      - You asked Modem Doctor to load the color configuration, however
  2346.      there was none found on your disk or in the current working
  2347.      directory.
  2348.  
  2349. Setup Mode Diagnostics
  2350. -----------------------
  2351. 1)   No Response...resetting modem microprocessor ...attempt #%d
  2352.      - The Modem Doctor tried sending a simple AT command to your modem
  2353.      but it did not respond with a valid answer.
  2354.  
  2355. 2)   Modem microprocessor command mode not detected
  2356.      - The Modem did not respond to a valid, simple AT command either
  2357.      because it is on-line, jammed, or not completely compatible.
  2358.  
  2359. 3)   Modem microprocessor command bus active
  2360.      - The Modem Doctor received a correct response from the modem and
  2361.      placed it into the command mode.
  2362.  
  2363. 4)   Software reset initiated
  2364.      - A software reset clears all test registers and resets the modem.
  2365.  
  2366. 5)   Modem microprocessor memory tests OK
  2367.      - The Modem Doctor instructed your modem to run a self-test of its
  2368.      RAM/ROM contents. It responded successfully.
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 37
  2384.  
  2385.  
  2386. 6)   Modem microprocessor memory may have a problem
  2387.      - The Modem Doctor instructed your modem to run a self-test of its
  2388.      RAM/ROM contents and did not receive the proper response. Your modem
  2389.      may or may not have a problem depending on the results of all the
  2390.      rest of the testing. If all other tests are ok, chances are your
  2391.      modem might have a memory problem. If other tests fail, it could be
  2392.      because your modem is not completely compatible.
  2393.  
  2394. 7)   Modem ID reports a 1200 bps modem installed
  2395.      Modem ID reports a 2400 bps modem installed
  2396.      Modem reports a 9600+ bps modem installed
  2397.      Modem reports a 9600 /1440 bps modem installed
  2398.      - All of these messages are based on receiving correct product codes
  2399.      from your modem. Some modem manufacturers however do not place valid
  2400.      product codes in their modems, so it is possible that you might see
  2401.      the Modem Doctor give you the incorrect type of modem. This does not
  2402.      affect testing, however it does affect the type of Modem Driver that
  2403.      is automatically selected. You can override automatic selections from
  2404.      the Carrier Menu by selecting the proper driver for your modem.
  2405.  
  2406. 8)   No modem ID received...using Generic driver
  2407.      - No product code was received, so defaults are being used.
  2408.  
  2409. 9)   Modem microprocessor accepts setup commands
  2410.      Modem microprocessor did not accept setup commands
  2411.      - The Modem Doctor sends setup commands for all of its tests to your
  2412.      modem. If they were not received properly, you get an error message.
  2413.  
  2414. 10)  An 8250-B Uart has been detected
  2415.      A 16450 / 8250A Uart has been detected
  2416.      A 16550AN/AF/AFN Buffered Uart has been detected
  2417.      A 16550 Non-buffered Uart has been detected
  2418.      - The Modem Doctor programs uarts differently depending on the type
  2419.      and the test running. This will tell you what type of uart chip you
  2420.      have installed in your serial port.
  2421.  
  2422. 11)  Modem Control Register reading show that either the LOOP, OUT2, DTR
  2423.      RTS did not set properly to test. OUT2 and DTR are essential for
  2424.      proper-functioning communications. LOOP is necessary for the digital
  2425.      test to run.
  2426.      -Either the Modem Control Register is bad, or their is a problem with
  2427.      the serial port or modem.
  2428.  
  2429. 12)  Modem Status Register readings show that there is no status coming
  2430.      back from the modem to the Uart. Neither RTS/CTS or DTR/DSR Pairs are
  2431.      active. Most comm programs can work without RTS/CTS, but DTR/DSR are
  2432.      needed by most. RTS/CTS are needed by most hi-speed modems for
  2433.      handshaking.
  2434.      -Your external cable may be wired wrong, or if this is an external
  2435.      modem, check that the cable is plugged in and that the modem is
  2436.      turned on.
  2437.  
  2438.  
  2439.  
  2440.  
  2441.  
  2442.  
  2443.  
  2444.  
  2445.  
  2446.  
  2447.  
  2448.  
  2449.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 38
  2450.  
  2451.  
  2452.  
  2453. 13)  Line Control Register readings show that the word length selected is
  2454.      incorrect or you have a parity error. WS1 and WS0 should both be on
  2455.      indicating that 8 bit words are to be used. All other readings should
  2456.      be low. Parity errors could happen once but not every time. 
  2457.      -If either persists, then the Uart is defective or communications to
  2458.      the Uart are suspect.
  2459.  
  2460.  
  2461. 14)  Line Status Register readings show a problem. The Tx Holding register
  2462.      THE and the Tx Shift register TSE should be the only active signals.
  2463.      No other signals should be active. If either TSE or THE are not
  2464.      active then the Uart is not resetting properly. Uart is suspect. If
  2465.      any other signal is high, and TSE/THE are both active, then you have
  2466.      a data overrun or framing error. 
  2467.      -If this repeats, you should then suspect the Uart or connections to
  2468.      the Uart from the computer.
  2469.  
  2470.  
  2471. 15)  Modem Control Register readings show that either DTR,RTS or OT2
  2472.      signals are not set properly. DTR & RTS are needed by most comm
  2473.      programs. OT2 is essential for interrupts to occur. 
  2474.      - Uart is suspect or the interface to the Uart from the computer bus.
  2475.  
  2476. 16)  Interrupt ID Register readings show that an interrupt is pending when
  2477.      none should be. This can be caused by a modem being turned on and off
  2478.      as testing was conducted or if data was waiting to be read by a prior
  2479.      running application, or you are not using the correct IRQ line.
  2480.      -If this does not clear when you display the registers again, then
  2481.      the Uart is suspect or connections to the Uart from the computer, or
  2482.      you are using the wrong IRQ line for this comm port assignment.
  2483.  
  2484.  
  2485. 17)  Interrupt Enable Register readings show that ERI Enable Receiver ints
  2486.      is not set properly. As a result, you might not get proper
  2487.      recognition of any interrupts being generated when a character is
  2488.      received. 
  2489.      -Suspect the Uart or connections to the Uart from the computer bus.
  2490.  
  2491. 18)  Interrupt Controller has not responded to setting the IRQ4 line. This
  2492.      problem is on the system board of your computer. Run your computer
  2493.      diagnostics program to locate the error.
  2494.      -Normally IRQ4 is used for COM1 you might have a usage conflict.
  2495.  
  2496. 19)  Interrupt Controller has not responded to setting the IRQ3 line. This
  2497.      problem is on the system board of your computer. Run your computer
  2498.      diagnostics program to locate the error.
  2499.      -Normally IRQ3 is used by COM2 you might have a usage conflict.
  2500.  
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.  
  2507.  
  2508.  
  2509.  
  2510.  
  2511.  
  2512.  
  2513.  
  2514.  
  2515.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 39
  2516.  
  2517.  
  2518.  
  2519. 20)  Interrupt Controller has not responded to setting the IRQ7 line. This
  2520.      problem is on the system board of your computer. Run your computer
  2521.      diagnostics program to locate the error.
  2522.      -Normally IRQ7 is used by the printer you might have a usage
  2523.      conflict.
  2524.  
  2525. 21)  Interrupt Controller has not responded to setting the IRQ5 line. This
  2526.      problem is on the system board of your computer. Run your computer
  2527.      diagnostics program to locate the error.
  2528.      -Normally IRQ5 is used by the Hard Drive Controller you might have a
  2529.      usage conflict.
  2530.  
  2531. 22)  WARNING...This COMM PORT MODEM STATUS & ID REGISTERS ARE DEFECTIVE
  2532.      - This is a severe error. It means that one or more of the uart
  2533.      registers are defective. This could also be caused by logging in a
  2534.      non-existent comm port in the manual mode. You should never see this
  2535.      message displayed in an auto-detected mode unless your uart is
  2536.      definitely defective.
  2537.  
  2538.  
  2539. Uart diagnostics
  2540. -----------------
  2541. 1)   Confirmed Uart setup to proper baud rate
  2542.      - The uart Dlab (divisor latch) settings are polled to make sure they
  2543.      match what the Modem Doctor intended. If not, you see the following
  2544.      displayed;
  2545.      ERROR..Uart did not set to desired baud rate
  2546.      (you should not see this message unless the divisor latch in your
  2547.      uart is defective).
  2548.  
  2549. 2)   Trying a hardware reset of the modem microprocessor
  2550.      - None of the attention commands or soft-resets to the modem have
  2551.      worked to place the modem microprocessor on-line. A hardware reset
  2552.      simulates turning the power on and off to the modem and uart.
  2553.  
  2554. 3)   WARNING...This unit does not have a compatible modem attached
  2555.      - After many tests and hardware/software resets, the Modem Doctor
  2556.      finally deduces it cannot work with this modem because it is not
  2557.      compatible. If you have a compatible modem, then you might have
  2558.      selected the wrong baud rate to work with, or you forgot to turn the
  2559.      external modem on. If there is a hardware problem, the next screen
  2560.      you will receive will be the uart diagnostics pointing out the
  2561.      problem. 
  2562.  
  2563. 4)   Modem microprocessor ON-LINE
  2564.      - The Modem Doctor successfully communicated to the modem
  2565.      microprocessor.
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.  
  2581.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 40
  2582.  
  2583.  
  2584.  
  2585. 5)   Testing Uart hardware only
  2586.      - You are running uart-only tests.
  2587.  
  2588. 6)   WARNING...The Modem Device appears to be off or not connected
  2589.      - No status is being received from the modem indicating it is on. If
  2590.      it is on, you might have a bad cable. If you are testing a uart that
  2591.      is hooked up to a serial mouse, then you will always see this message
  2592.      displayed, for a serial mouse does not use traditional uart status.
  2593.  
  2594. Report Generator Messages
  2595. --------------------------
  2596.  
  2597. 1)   You selected to clear the report stats.This means that any errors
  2598.      found will not be reported in a final report format. 
  2599.      Are you sure [Y/N]: ? 
  2600.      - All report statistics will be cleared if you respond Yes.
  2601.  
  2602. 2)   Send to file MDR.RPT 
  2603.      Send to printer LPT1:
  2604.      Send to printer LPT2:
  2605.      Send to printer LPT3:
  2606.      Do not Print /Return
  2607.      - The printed form of your report can be sent to any one of 3 dos
  2608.      printers (if the Modem Doctor detects they are installed) or to a
  2609.      file called MDR.RPT.
  2610.      
  2611. 3)   Print Buffer full or Printer off-line
  2612.      - If the Modem Doctor cannot communicate with the printer, it is
  2613.      either receiving a busy signal from the printer (which clears when
  2614.      the busy signal is lifted) or the printer is off-line.
  2615.  
  2616. Static DTR/DSR   RTS/CTS  Handshaking tests
  2617. -------------------------------------------
  2618.  
  2619. 1)   Lowering DTR Signal..waiting for DSR to follow
  2620.      DSR did not follow DTR dropping or is set as a permanent ON
  2621.      DSR followed DTR drop...normal for all devices
  2622.      DSR did not follow DTR raising..possible cable or modem setup problem
  2623.      DSR followed DTR raise or is set as a permanent ON
  2624.      - The DTR/DSR tests work by lowering the DTR (Data terminal ready)
  2625.      signal from the computer to the modem. If the modem uses this type of
  2626.      handshaking, it should respond by lowering its signal that is picked
  2627.      up in the uart modem status register as a DSR (Data set ready)
  2628.      signal. If not, then either the modem is not set up properly
  2629.      according to standard handshaking protocol or you have a bad cable. 
  2630.      Please note, a failure to follow DTR/DSR handshaking might keep some
  2631.      communication programs from working with your modem. If you get an
  2632.      error, consult your modem manual or have the Modem Doctor test your
  2633.      cable to an external modem with a loopback plug.
  2634.      
  2635.  
  2636.  
  2637.  
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643.  
  2644.  
  2645.  
  2646.  
  2647.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 41
  2648.  
  2649.  
  2650. 2)   Lowering RTS signal..waiting for CTS to follow
  2651.      Dropping RTS Signal to modem
  2652.      Modem is using RTS/CTS Handshaking properly
  2653.      Modem is not using RTS/CTS Handshake hold
  2654.      Raising RTS line    
  2655.      CTS did not follow RTS dropping...usually normal for modems
  2656.      CTS followed RTS drop...usually normal for serial devices
  2657.      CTS did not follow RTS raising...you could have a cable problem
  2658.      CTS followed RTS raise or is set as a permanent ON
  2659.      - Like DTR/DSR, RTS/CTS handshaking tests check that if the computer
  2660.      lowers its RTS (Ready to send) line, that the modem responds in kind
  2661.      and that the CTS (Clear to send) status is echoed to the uart modem
  2662.      status register. This signal is not as important as the DTR/DSR,
  2663.      however if you have a high speed modem, this test should pass to
  2664.      insure proper high-speed transfers.
  2665.  
  2666.  
  2667. Carrier and Dynamic tests
  2668. ---------------------------
  2669. 1)   Sending Carrier Test info to modem
  2670.      - Commands to self-connect are beings sent to your modem.
  2671.  
  2672. 2)   T1 Loopback commands sent waiting 5 seconds till start of test
  2673.      - The alternate &T0/&T1 instruction set is being used for self tests.
  2674.  
  2675. 3)   Carrier Detected...waiting 5 seconds to the start of the test
  2676.      - The RLS (Received line signal) went to an active state or the Modem
  2677.      Doctor received the words CONNECT from the modem during self-testing.
  2678.      The 5 second delay is necessary to allow some modems to settle down
  2679.      for proper reception of characters during self-tests.
  2680.  
  2681. 4)   Using &T1 Loopback command set to modem for this test
  2682.      - If you selected the Generic driver and the Modem Doctor failed to
  2683.      connect, it uses this &T0/&T1 instruction set automatically for its
  2684.      testing. 
  2685.  
  2686. 5)   Sending 20 Characters to the modem
  2687.      - All Dynamic DTR/DSR and RTS/CTS tests force the modem to self
  2688.      connect. Next either the DTR or RTS lines are dropped, and 20
  2689.      characters are sent to the modem. If no characters are received back
  2690.      to the computer from the modem, then the Modem Doctor reports that
  2691.      the dynamic handshaking works. If a character is received, then it
  2692.      means that type of dynamic handshaking does not work.
  2693.  
  2694. 6)   Sending Xoff Signal to modem
  2695.      - An ASCII character that tells the modem NOT to send data has been
  2696.      transmitted to the modem for dynamic Xon/Xoff testing.
  2697.  
  2698. 7)   Modem is using Xon/Xoff Handshaking properly
  2699.      - 20 characters were sent to the modem, and it properly did not send
  2700.      anything back to the computer.
  2701.  
  2702.  
  2703.  
  2704.  
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710.  
  2711.  
  2712.  
  2713.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 42
  2714.  
  2715.  
  2716.  
  2717. 8)   Modem is not using Xon/Xoff Handshake hold
  2718.      - 20 characters were sent to the modem, but it send them back to the
  2719.      computer, indicating it did not recognize the dynamic Xon/Xoff
  2720.      handshake test. Normally most modems do not need this handshake.
  2721.  
  2722. 9)   Sending Xon Signal to the modem
  2723.      - This restores the modem to proper operation and clears its internal
  2724.      data buffers.
  2725.  
  2726.  
  2727. 10)  Warning...I can't test this modem because there is no RTS/CTS
  2728.      signals. If this is an external modem, you may not have a proper
  2729.      cable or the modem is off. If you have an internal, you might have a
  2730.      port conflict or a configuration switch set improperly.
  2731.  
  2732.  
  2733.      - Most times this message is due to an improperly wired cable or a
  2734.      improper configuration of some modem switches. See your modem manual
  2735.      for setup, or use a loopback plug and the Analog loopback mode to
  2736.      test the cable.
  2737.  
  2738. 11)  Setting up the modem for the Originate Mode Carrier Test..please wait
  2739.      Setting up the modem for the Answer Mode Carrier Test.....please wait
  2740.           -Self tests commands are being sent to your modem for the
  2741.           different connect modes and frequencies.
  2742.  
  2743. General program warnings
  2744. ------------------------
  2745. 1)   Note...you hit the Escape Key during testing. This means the results
  2746.      of this test is inconclusive. You should run these tests again
  2747.      without escaping for a valid performance check.
  2748.      - You can press escape during nearly all tests that the Modem Doctor
  2749.      runs (except during crucial communication modes between the modem and
  2750.      computer, in which case as soon as this communication is completed,
  2751.      the Modem Doctor will escape with this warning.
  2752.  
  2753. 2)   INTERRUPT FAILURE Warning
  2754.      Note...No interrupts were detected or generated during testing. This
  2755.      could be due to a failure of your serial port to generate interrupts
  2756.      or you have selected an IRQ line or Comm assignment in error on the
  2757.      serial card or in a custom assignment from the Login menu manual
  2758.      mode. Check your settings and if all is ok, suspect the Uart or
  2759.      serial port card.
  2760.      - This warning can be received anytime that the Modem Doctor tries to
  2761.      talk to a modem or a uart (in analog loopback test). The most common
  2762.      cause of this problem is an incorrect jumper or comm port assignment
  2763.      on your modem or serial port. See the section on IRQ's and their
  2764.      meanings to select the proper IRQ line for your port.
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.  
  2777.  
  2778.  
  2779.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 43
  2780.  
  2781.  
  2782. 3)   Fixed Rate Advisory
  2783.      Note...I had to lower the baud rate to match the connect rate. What
  2784.      this means is that you are using a high speed modem with a fixed link
  2785.      rate in a variable rate mode. You might want to check your DTE/DCE
  2786.      settings in your modem Nram if this is not desired.    
  2787.      - Most high-speed modems keep the link between the computer and the
  2788.      modem running at a fixed rate, while the connection between the modem
  2789.      and the remote modem (bbs or service) operates at another rate. This
  2790.      method allows data compression and greater throughput (characters per
  2791.      second) to be received by the computer. If you have a high-speed 
  2792.      modem, check your settings. It is recommended you run in the fixed
  2793.      link rate whenever possible so you can gain all the benefits of data
  2794.      compression with the new data protocols.
  2795.  
  2796. 4)   Failure Report 
  2797.      RLS (Received Line Signal Detect) indicates that a carrier has not
  2798.      been received by the UART. Check modem or connector wiring 
  2799.      - This is an advisory that you might have a cable wired incorrectly
  2800.      between your computer and external modem or that your modem does not
  2801.      raise the RLS signal. This is only critical if your communication
  2802.      programs never display the words "ON-LINE".
  2803.  
  2804. 5)   Modem not responding to the Analog originate test
  2805.      - Modem never went into the self-test mode. 
  2806.  
  2807. 6)   Carrier Not Detected..5 Sec Sync Delay till start of Answer test    
  2808.      Modem not responding for Analog answer test
  2809.      - A carrier should have been received by the RLS signal or the words
  2810.      CONNECT from the modem, if not, the &T0/&T1 instructions are sent and
  2811.      the test is performed. If the modem does not respond to this test,
  2812.      then the last message is displayed indicating a problem getting the
  2813.      modem to self-test itself.
  2814.  
  2815. 7)   RLS Warning
  2816.      The Received Line Signal of your modem stayed active throughout the
  2817.      testing. Some modems have a jumper or switch that should be set to
  2818.      carrier is active only when a signal is detected. Check your manual
  2819.      to change this setting so the Modem Doctor and comm programs will
  2820.      work properly. Check your modem to make sure that Carrier isn't
  2821.      forced high 
  2822.  
  2823. 8)   NOTE.Carrier (RLS Line) active, it should not be..test may not be
  2824.      valid.
  2825.      - The RLS signal was always active. This means the Modem Doctor
  2826.      cannot figure out if the modem ever entered the self-test mode. Also,
  2827.      your communications program probably will always display the "ON-
  2828.      LINE" status. Unfortunately, this type of situation is the default
  2829.      setting from the factory of most 2400 bps modems. It can be
  2830.      reprogrammed by a simple setup command. See your modem manual for
  2831.      instructions.
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  
  2837.  
  2838.  
  2839.  
  2840.  
  2841.  
  2842.  
  2843.  
  2844.  
  2845.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 44
  2846.  
  2847.  
  2848. 9)   SET YOUR MODEM TO ORIGINATE CARRIER FREQUENCY...PRESS TO CONTINUE
  2849.      SET YOUR MODEM TO ANSWER CARRIER FREQUENCY...PRESS TO CONTINUE
  2850.      - Dumb modem tests require you to flip switches on your modem.
  2851.      Usually this is the AL button. After you do this, the Modem Doctor
  2852.      should see a carrier and continue proper testing.
  2853.  
  2854. 10)  Loopback Transmit Error
  2855.      Loopback Queue Failure
  2856.      ESCAPE KEY PRESSED....ABORTING ALL LOOPBACK TESTS
  2857.      UART Control Lines set...waiting 2 seconds for CTS Handshake
  2858.      NO CTS Handshake Detected .Continuing test even though plug/line
  2859.      maybe bad
  2860.      Loopback Queue Failure 
  2861.      UART not responding using Analog Loopback Plug mode
  2862.      No Loopback Plug or General Failure of the Hardware
  2863.      Analog Loopback Test passed without any errors
  2864.      - If the analog loopback did not return characters or generate an
  2865.      interrupt, then the uart may have been tested without a loopback plug
  2866.      attached or there is a failure of the uart. If all was ok, a passed
  2867.      message is displayed.
  2868.  
  2869. 11)  Loopback Transmit Error
  2870.      UART not responding to the Digital Loopback test
  2871.      UART Registers did not set for Loop back test 
  2872.      UART Digital Test passed without any errors
  2873.      - If no characters were received, then either the uart you are
  2874.      working with is not 100% 8250-B compatible or defective. If
  2875.      everything was ok, a passed message is displayed.
  2876.  
  2877. 12)  Warning, Comm Port 1 is using Com Port 2's address.You should
  2878.      reconfigure your Serial Card to the correct Address.
  2879.      Otherwise,Communication programs won't properly operate.
  2880.  
  2881. 13)  Warning, Comm Port 2 is using Com Port 1's address.
  2882.      Do you want me to correct this for testing purposes only? [Y/N]: 
  2883.      - These error messages are received if the Modem Doctor found a Com2
  2884.      reserved address as Com1, or visa versa. Many PC owners that do not
  2885.      have built-in serial ports make the mistake of assigning a Com2
  2886.      address without having a Com1 installed. The ROM-BIOS cannot correct
  2887.      this problem or even detect it. The Modem Doctor does and will point
  2888.      out the error to you.
  2889.  
  2890. 14)  Flopping COM1/COM2 pointers in Memory only. Note..this is only valid
  2891.      till the next warmboot of your system. You must change your serial
  2892.      card settings to keep this permanent. Note...tests may not work
  2893.      properly because of this error
  2894.      - This message is displayed either in the exchange mode or when the
  2895.      Modem Doctor is asked to fix the problem of addresses in memory for
  2896.      testing only.
  2897.  
  2898.  
  2899.  
  2900.  
  2901.  
  2902.  
  2903.  
  2904.  
  2905.  
  2906.  
  2907.  
  2908.  
  2909.  
  2910.  
  2911.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 45
  2912.  
  2913.  
  2914. 15)  Logging out incorrect COM1 for testing purposes.
  2915.      Logging out incorrect COM2 for testing purposes.
  2916.      - If you decide not to fix a problem, the incorrect assignment is
  2917.      logged out of Dos and your choices for testing.
  2918.  
  2919. 16)  ALL Available COMM ports are in use...Press to Return
  2920.      - If 4 comm ports (shareware) or 8 comm ports (registered) are
  2921.      already in use, you cannot add any more in the auto-login mode to the
  2922.      Modem Doctor. Use the manual mode to override your choices for
  2923.      testing comm ports higher than 8.
  2924.  
  2925. 17)  Comm (x) Not Found ... override ? :
  2926.      - You told the Modem Doctor in manual mode that a port existed with a
  2927.      certain base port address. It was not found. If you override, this
  2928.      address is logged in for testing. This allows you to test a defective
  2929.      uart chip that might not be recognized by dos or the Modem Doctor as
  2930.      valid.
  2931.  
  2932. 18)  Sorry...your Modem.dat file has an invalid Comm port
  2933.      Sorry...I cannot find Modemdr.dat file in this directory
  2934.      
  2935.      WARNING...RESERVED PORT ADDRESS in Mdr.dat file
  2936.      correct address in hex must be between [ ]..ie [2F8]
  2937.  
  2938.      Sorry...your Modem.dat file has an invalid Speed..using 300 baud
  2939.  
  2940.      Modem Did not respond to setup string..run the Modem Doctor to check
  2941.      your modem.
  2942.  
  2943.      Programming according to file Mdr.dat
  2944.      Modem Responded to setup string and is ready for use
  2945.  
  2946.      - Running Modem Doctor in the setup (/s) mode, the file MDR.DAT is
  2947.      queried for the proper comm port, address, speed and setup string. If
  2948.      any of this is invalid, one of the messages above is received. If it
  2949.      is valid you receive the message that Modem Doctor is programming
  2950.      according to the Mdr.dat file.
  2951.  
  2952. Section 6. Special Modes and Information     
  2953. ---------------------------------------- 
  2954. The Modem Doctor supports a wide range of "AT" instruction set modems.
  2955. There are however "supersets" of instructions that manufacturers have used
  2956. to enhance the capability of their modems. Although there is some
  2957. structure  in this area, not all commands intermix between different
  2958. brands and lines of modems. This situation is analogous to PC computer
  2959. printers, and it  calls for a similar approach. The Modem Doctor now
  2960. supports the use of "Modem Drivers" to meet these special needs. 
  2961. Additionally, due to the increase in computers using the ISA bus, there
  2962. are more interrupt lines free to be used by modem manufacturers. For test
  2963. purposes, you can use IRQ3,4,5,7 for your hardware testing. Using the
  2964. special /S switch, you can send initialization codes to your modem from a
  2965.  
  2966.  
  2967.  
  2968.  
  2969.  
  2970.  
  2971.  
  2972.  
  2973.  
  2974.  
  2975.  
  2976.  
  2977.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 46
  2978.  
  2979.  
  2980. batch file or other command-line need to setup the modem for use. Finally,
  2981. to add some flexibility to the Modem Doctor's diagnostics,  some special
  2982. "Hot-keys" have been added. These have been discussed  above in an
  2983. operational sense, however in this section you will get some idea of how
  2984. these can help you speed up testing and test defective or non-compatible
  2985. hardware.   
  2986.  
  2987.          
  2988. 6.1 Using Modem Drivers 
  2989. -----------------------  
  2990. Most Modem's today are built on the original "AT" instruction set that was
  2991. developed by Hayes Micromodems in their 1200B series. This driver, named
  2992. the Generic Driver in the Modem Doctor, is used exclusively if the modem
  2993. returns an ID indicating it is a 300,1200 or 2400 bps modem. Also,       
  2994. if the modem does not return an ID, this Generic Driver is used.  The
  2995. Generic Driver can be used to test nearly all modems, however there are
  2996. some 2400 bps modems that were  built using the command structure that
  2997. Hayes Micromodems put into their 2400B line. These modems used an "&" for
  2998. some  modem setup and command functions. The Modem Doctor has a driver for
  2999. these modems called the "&T0/&T1" driver. Using this driver, the Modem
  3000. Doctor can perform a simulated  carrier test. During your testing of this
  3001. type of modem, you will notice the MB (Modem Busy) light flashing on your  
  3002. external modem. This driver (and all others) is user selectable, however
  3003. the Modem Doctor will automatically switch to it when performing the
  3004. carrier tests if the Modem was detected to be a 2400 bps modem.  The last
  3005. driver currently supported is for US Robotics Courier HST and HST
  3006. Dual/Standard V.32 Modems. The Modem Doctor recognizes these modems upon
  3007. initial testing and sets up its test parameters a certain way to
  3008. compensate for their Carrier self test limitations. 
  3009.         
  3010. Because of the trellis-encoded Async/modulation of the USR HST Mode, the
  3011. maximum Carrier test Baud rate is 2400 bps (see the USR Manual for this
  3012. info). To work around this, the Modem Doctor Programs these modems to use
  3013. a fixed DTE/DCE  Rate with the &B1 Parameter, allowing communications to
  3014. and  from the modem at speeds up to 19200 bps. When working in the V.32 
  3015. mode however, the Carrier test (and all loopback tests ) can be performed
  3016. at 9600 since the modulation is symmetrical again. Also when the selected
  3017. baud rate is higher than 2400 bps, the MNP Protocol switch is set to &M0,
  3018. otherwise if there was an error, the Modem would try to correct it instead
  3019. of passing the error on to the Modem Doctor. None of these changes is
  3020. saved to the non-volatile ROM,  so you should not experience a problem.
  3021. However, the V.32 and Dual Standard Modems might experience a problem if
  3022. register S13 is not set to 1. This is the default from the factory and
  3023. insures that the modem will be reset when the DTR line is dropped. If you
  3024. are experiencing a problem, use the interactive mode and type S13=001.
  3025. This change is not permanent. If you are using a USR Dual Standard Modem,
  3026. then the Modem Doctor will test whatever mode is active via the B switch.
  3027. If the current Modem setting is B0, then the V.32 mode will be tested, if
  3028. B1 is set, then the HST mode will be tested. You can change this setting
  3029. to whatever you wish by using the Interactive mode, type ATZ, then type
  3030. ATB0 &W or ATB1 &W. This has to be written to the firmware in order to
  3031.  
  3032.  
  3033.  
  3034.  
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.  
  3041.  
  3042.  
  3043.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 47
  3044.  
  3045.  
  3046. stay valid throughout all the testing, but the ATZ  command before a save
  3047. will always recall your settings,  insuring you have only changed the one
  3048. parameter. Please note, this is included for advanced users and is one of
  3049. the reasons for the interactive mode. It is not necessary for you to do
  3050. this to test your modem unless you wish to. For more information, see   
  3051. the section regarding "Quirks". As mentioned above, all of the Modem
  3052. Drivers are self- selecting, but can be user-selected. The status line of
  3053. your screen will display the current Port assignment, the current Baud
  3054. rate, the status of the Microprocessor, and the current modem driver being
  3055. used. Select carrier test from the main menu and move the bar to "Select
  3056. Modem Commands". You will be given a choice of the available drivers.
  3057. After you select, the status line will be updated, and you can either
  3058. start the test or return to the main menu.  The reason for modem drivers
  3059. is to allow more individualized testing of a particular type of modem, and
  3060. to allow for more modems to added to the list of specially supported
  3061. modems.
  3062.  
  3063. 6.11 External Modem Drivers
  3064. ---------------------------
  3065. Supported starting with version 4.0 is the ability to read a specially
  3066. created external modem driver file. This file makes it possible to handle
  3067. any future changes in modems by simply releasing a new driver file. When
  3068. the Modem Doctor first begins, it looks in the default directory for the
  3069. existence of this driver file. If it exists, a valid checksum is performed
  3070. to see that it is indeed a modem driver. If so, this external set of
  3071. commands is inserted in place of the internally contained modem drivers.
  3072. As of the initial release of 4.0, there are no external driver files in
  3073. circulation. Driver files will be released under 2 conditions; first, if a
  3074. bug is detected in any of the driver routines, a shareware driver file
  3075. will be released on the bulletin boards at no cost. Registered users will
  3076. be mailed at no cost the updated driver file. Second, if a registered user
  3077. would like a custom modem driver file written, we will create one at 
  3078. minimal charge as long as proper documentation for the type of modem is
  3079. submitted. If you wish to have an interface written, please contact us for
  3080. pricing and appropriate  information that we will need to do this for you.
  3081.          
  3082.          
  3083. 6.2 Using the Command Line Mode switch /S 
  3084. ----------------------------------------  
  3085. There can be special occasions where you need to initialize and test a
  3086. modem before another program can be run. The Modem Doctor now supports a
  3087. method to do this. Using the command line switch /S, you can instruct the
  3088. Modem Doctor to "wake-up" a Modem and send an initialization string to it.
  3089.  
  3090. Although similar to our product Comset, it offers some additional
  3091. flexibility but does not allow the serial port only setup that Comset
  3092. does.   To use this special mode, you need to have a companion file named
  3093. MDR.DAT that you create  with any ASCII text editor that follows this
  3094. format;  
  3095.  
  3096.  
  3097.  
  3098.  
  3099.  
  3100.  
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.  
  3107.  
  3108.  
  3109.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 48
  3110.  
  3111.  
  3112.  
  3113.      1) All information must start on the first space on each line         
  3114.      and can consist of up to 3 lines. Line 1 and Line 2 are      
  3115.      required.  
  3116.          
  3117.      2) Line 1 = Port Number 1 through 8 and an optional port address in
  3118.      [] ( For settings greater than Port 4, this address is required).
  3119.  
  3120.      3) Line 2 = the Baud Rate you wish to use (300-56000 or 3-560 are
  3121.      acceptable).  
  3122.         
  3123.      4) Line 3 = the initialization string you wish to send. This string
  3124.      must start with AT and can be up to 80 characters long. If no string
  3125.      is included in the file, or if it does not begin with the letters AT,
  3126.      then ATZ is automatically sent to the modem.   
  3127.          
  3128.      Example..to setup Port 2 to 19200 and set S7 to 255;  
  3129.      Make a file called MDR.DAT that looks like this;        
  3130.  
  3131.          2 [2F8]<--note for Port 1-4 unless it is non-standard [2F8] 
  3132.                    is not needed   
  3133.          192   
  3134.          AT S7= 255  
  3135.      Next, start the Modem Doctor by typing  MDR /S. As long as the
  3136.      MDR.DAT file is in the current working directory, these commands will
  3137.      be sent. If not, you will get an error message stating that MDR.DAT
  3138.      could not be found.  
  3139.  
  3140.      Why not have the Modem Doctor search all directories for the file?
  3141.      Well, the reason is so that you can put MDR.EXE in a Dos path but
  3142.      have individualized setup MDR.DAT files in different subdirectories
  3143.      for different programming needs. Instead of constantly changing the
  3144.      file, make different ones and call MDR.EXE. It will only use the
  3145.      MDR.DAT file in the current working directory.
  3146.          
  3147.      After the initialization string is sent, the Modem Doctor will wait
  3148.      up to 10 seconds for the word "OK" to return from  the modem. If it
  3149.      does not, you will get a message saying the modem failed to setup. In
  3150.      either case, whatever your modem sent to the Modem Doctor will be
  3151.      displayed. If you see the word "ERROR", that was sent from the modem,
  3152.      it probably means that your initialization string was not correct. No
  3153.      message returning could indicate a problem with the modem, or an
  3154.      invalid baud rate. When it finishes executing, the Modem Doctor
  3155.      returns an errorlevel to the calling program. An errorlevel of 0 is
  3156.      normal, an errorlevel of 99 indicates a failure. You can use these
  3157.      errorlevels to control batch processes if you wish to.  
  3158.  
  3159.  
  3160.  
  3161.  
  3162.  
  3163.  
  3164.  
  3165.  
  3166.  
  3167.  
  3168.  
  3169.  
  3170.  
  3171.  
  3172.  
  3173.  
  3174.  
  3175.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 49
  3176.  
  3177.  
  3178.  
  3179.      Also, this mode of the Modem Doctor uses bios screen writes, so all
  3180.      of the information displayed can be redirected to a printer, a file,
  3181.      or whatever other DOS device you wish.  Example...to send the output
  3182.      of this test to a file called Test.txt...  
  3183.  
  3184.           MDR /S  > TEST.TXT or    MDR /S >> TEST.TXT (if you wish to
  3185.           append an existing Test.txt file.  
  3186.  
  3187. If the Modem Doctor setup was successful, the modem's DTR and RTS lines
  3188. stay active, if not, they are dropped.  If you need more specialized
  3189. command-line modes of operation, you might consider Comset. Comset allows
  3190. Serial Ports and Modems to be setup at various rates and under various
  3191. conditions. Registered Modem Doctor users get a 15% discount! You can 
  3192. find Comset on most BBS's as COMSET7.ZIP.   
  3193.     
  3194. 6.3 Using the Hot-Keys 
  3195. ----------------------  
  3196. Hot-Keys are combinations of the ALT key plus a letter. The Modem Doctor
  3197. adds several of these Hot-keys to make it easier to test  modems at
  3198. different baud rates and to  circumvent some of the error checking that
  3199. the program performs under normal circumstances.  
  3200.          
  3201. ALT-B Change Baud rate - 
  3202. If you are testing a system that you suspect has a problem, it is best to
  3203. use the setup mode when changing the baud rate. The Setup mode will test
  3204. all the registers, and the modem microprocessor (if selected) and assure
  3205. you that all the hardware is communicating properly at each baud rate.
  3206. However, if you feel a system is running fine, using the ALT-B from the
  3207. main menu can save time when running tests at different baud rates. Press
  3208. ALT-B  and select the baud rate (taking care not to select a rate higher
  3209. that what your modem is rated for if you are doing modem tests). ALT-B
  3210. works from the main menu, and from inside the Manual interactive mode.   
  3211.          
  3212. ALT-C Clear Screen - 
  3213. This key is only active inside of the Manual interactive mode and is used
  3214. to clear the text window of any characters.  
  3215.                   
  3216. ALT-F Force Microprocessor on-line - 
  3217. The Modem Doctor has many tests built-in to verify the working condition
  3218. of a microprocessor-based modem and will not allow a modem to be tested in
  3219. the "AT" instruction set mode if it has not properly addressed and setup a
  3220. modem microprocessor. Using the ALT-F combination forces the Modem Doctor
  3221. to perform tests as if it had properly setup a modem. This feature should
  3222. be used with care, however  its primary benefit is to help you test a
  3223. malfunctioning modem to see exactly what commands it will respond to.
  3224. Pressing ALT-F also updates the status bar to indicate that the modem
  3225. microprocessor is on-line (which may or may not be the case after this
  3226. command was issued). Version 4.0 of Modem Doctor makes this hot-key a
  3227. toggle, so pressing 1 time will change the on-line status. Pressing again
  3228. returns it back to normal.
  3229.  
  3230.  
  3231.  
  3232.  
  3233.  
  3234.  
  3235.  
  3236.  
  3237.  
  3238.  
  3239.  
  3240.  
  3241.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 50
  3242.  
  3243.  
  3244. ALT-H Help -
  3245. You can press this key at any time to get help on a topic or general help
  3246. depending on if you are in a menu or at the main menu selection bar.
  3247.  
  3248. ALT-R Register Display - 
  3249. This is only active inside of the Manual interactive mode and is used to
  3250. display the status of all Uart registers on the screen for diagnostic
  3251. purposes.  
  3252.  
  3253. ALT-X Exit Mode - 
  3254. This is only active inside of the Manual interactive mode and is used to
  3255. exit this mode. 
  3256.  
  3257. Control -Break
  3258. --------------
  3259. This allows an immediate exit from anywhere permissible inside the Modem
  3260. Doctor, however it offers you a choice to clean up or to continue. You
  3261. should not use this mode, it is better to exit via the Main menu
  3262. selection.
  3263.  
  3264. 6.4 Logging in Defective Ports 
  3265. ------------------------------  
  3266. If a serial port Uart is defective, the Modem Doctor will refuse to log it
  3267. in for testing. This is necessary because there is no way for it to know
  3268. what ports are defective and what are non-existent. However in Version
  3269. 4.0, you can now log-in a defective chip for testing. The procedure to do
  3270. so is explained above under Manual Login. The reason for doing so however
  3271. might not have been apparent. If any register of a serial port is
  3272. defective, it might not function properly. Logging in this defective port
  3273. will give you the full benefit of the Uart and Serial port diagnostics.
  3274. Error messages will be displayed, in most cases there will be multiple
  3275. error messages. There are two possible causes of a defective port; the
  3276. Uart chip and the Serial Port address system. If it is a chip, simply
  3277. replacing the chip fixes the problem. If it is a serial port instead, then
  3278. the same problem will repeat. How do you approach this? Well for starters,
  3279. check that the strapping on your serial port board matches the correct
  3280. COMM port assignment (ie strapped for COM1 for COM1..etc). Next, if there
  3281. is user selectable IRQ assignments, make sure it again matches the COMM
  3282. port assignment (IRQ4 for COM1/3, IRQ3 for COM2/4, IRQ5 for COM7/8, IRQ7
  3283. for COM6/7). If all this is set properly, then you can suspect the chip,
  3284. but also the Serial Port hardware that gates the address of the chip to
  3285. the computer. Finally, if you get warnings about status, but the chip logs
  3286. in, then  you might just have a bad cable from the computer to the modem
  3287. (NOTE: The Modem Doctor does not consider this an error but simply
  3288. displays a warning and allows the Uart to be logged-in for use).       
  3289.  
  3290.  
  3291.  
  3292.  
  3293.  
  3294.  
  3295.  
  3296.  
  3297.  
  3298.  
  3299.  
  3300.  
  3301.  
  3302.  
  3303.  
  3304.  
  3305.  
  3306.  
  3307.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 51
  3308.  
  3309.  
  3310.          
  3311. 6.5 What tests cannot Do     
  3312. ------------------------     
  3313. Although I tried to be extremely thorough in my tests, there are
  3314. somethings that tests just cannot do or pinpoint. If you are having
  3315. problems with excessive line-noise, you might have a bad connection
  3316. between your modem and your telephone wiring in the house. Another
  3317. possibility, although remote, is that your modem does not offer the
  3318. correct input impedance to the telephone line. This can cause poor  
  3319. connections. The problem is with the electronic design of the modem, and
  3320. again, it is more prevalent in inexpensive modems. Also, tests cannot
  3321. check that the communications program you are using is set up correctly.
  3322.  
  3323. At times,  installing a communications package can be very challenging for
  3324. a novice user. Tests also cannot check the wiring in your serial Cable.
  3325. The Modem Doctor will tell you if a handshaking pair is missing, but it
  3326. cant tell you why. It could be because the Uart is bad, but more than
  3327. likely, your RS-232 Cable doesn't carry all of the handshaking signals to
  3328. or from the external modem or serial device. This can be important if you
  3329. are using a high-speed modem. Most High-speed modems will drop the CTS
  3330. line when their communication buffers are full. Previous Modems ignored 
  3331. the RTS/CTS signals and instead used the DTR/DCE pair. What this means is
  3332. that if you buy a new modem, it might not work with the older-cable (yet
  3333. at the same time the older modem will work..which might lead you to
  3334. believe that you have a defective modem).      
  3335.          
  3336. 6.6 Quirks with Some Modems     
  3337. ---------------------------      
  3338. Carrier tests - 
  3339. Some Modems have two "AT" instruction sets, usually referred to as
  3340. Compatible and Enhanced. If your modem does not perform a carrier test at
  3341. speeds below 4800, then this is usually the case. Some modems provide a
  3342. dip-switch or a toggle switch to select either mode. Setting your modem to
  3343. the Standard Compatible Mode should get rid of your problems below 4800
  3344. bps. Also, make sure you select the Generic Compatible Modem Driver unless
  3345. you are sure your modem matches the modem's that have special drivers
  3346. written especially for their use. At speeds above 4800 bps, the Modem
  3347. Doctor is only compatible with USR V.32, Dual Standards (V.32 and HST) and
  3348. HST brand of modems, Hayes V9600 and Ultra 9600, and Courier 2400 modems.
  3349. If you wish to test another brand of modem that is not compatible, simply
  3350. turn off any modem-hardware error correcting using the Manual mode and
  3351. following the information in your modem users manual. Then select the
  3352. Generic Modem Driver and you should be able to test your modem properly.
  3353. Finally, if only one of the tests (Originate or Answer) runs and NO      
  3354. CARRIER is displayed for the other, the problem lies with the Enhanced
  3355. Command settings of your modem. Hayes Modems use &T1 through &T8 commands
  3356. for their 2400 and also have other special switches. The &T0 command set
  3357. is tried by this version of the Modem Doctor automatically, however there 
  3358. is no compensation for any other type of modems that use non-standard
  3359. commands. Again for the sake of compatibility with the widest range of
  3360. modems at speeds below 4800, this cannot be corrected for in this version.
  3361.  
  3362.  
  3363.  
  3364.  
  3365.  
  3366.  
  3367.  
  3368.  
  3369.  
  3370.  
  3371.  
  3372.  
  3373.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 52
  3374.  
  3375.  
  3376. Considering the vast numbers of "AT" compatible modems in the marketplace,
  3377. these two exceptions are minor and will not affect most users. Finally,
  3378. users of 8250 compatible Uarts that do not support the Digital (Chip)
  3379. Loopback will get an error. This should be of no concern.  However if the
  3380. test runs for a while, then fails, it could indicate a problem with your
  3381. Uart. This is explained in the pull-down window in the program. The Modem
  3382. Doctor has been tested on about 25 Modems from Major Manufacturers and on
  3383. a variety of Clones and Compatibles (plus the "Real Thing"). It is
  3384. possible that a certain combination of hardware still might give problems,
  3385. however if you are a registered user, I will find a way to make it work.  
  3386.  
  3387. 6.7 Buffered vs Direct Connect Modems
  3388. -------------------------------------
  3389. When testing high speed modems, you should note that some of them cannot
  3390. test in the a "buffered mode", which means that they will not be able to
  3391. self-test in carrier mode above speeds of 9600. The Hayes Ultra's fall into
  3392. this category. The higest DTE/DCE rate you can use and still generate a
  3393. successful carrier test is 9600 bps. Any higher DTE rate will cause Modem
  3394. Doctor to return errors that are not valid. 
  3395.          
  3396.          
  3397. Section 7. Benefits of Registration     
  3398. ------------------------------------      
  3399. Thank you for your registration. The Current Registered Version # of the
  3400. Modem Doctor is 4.0R. All Registered Users are entitled to free
  3401. Maintenance updates and these will be reflected by changes in the decimal
  3402. fraction number..ie  4.01, 4.02. Also, if a new super-duper version comes
  3403. out (5.X or 6.X), all registered users will be able to update for only $7
  3404. (plus shipping,handling and tax where applicable). Currently registered
  3405. users of version 2 and 3 can update for $5 (plus shipping, handling and
  3406. tax where applicable). If you have trouble with the Modem Doctor, or
  3407. questions, feel free to call or write. When doing either you will need to
  3408. have the Version Number, your serial number,  and in some cases the Module
  3409. Identification Number. The Version number is displayed when you first
  3410. start the program along with the serial Number. The Module Identification
  3411. numbers can be displayed at any time from the main menu after you pass the
  3412. initial setup mode. Simply type a # sign, and all of the modules that make
  3413. up the Modem Doctor will display their version numbers on the screen.
  3414. Right now, all Modules have identical version numbers from program to
  3415. program, but in the future, there could be custom modules for registered
  3416. users, so in this case the Module ID could become important. You can reach
  3417. us with your questions at 410-256-5767 or write to ;
  3418.                                 Hank Volpe
  3419.                                PO Box 43214
  3420.                              Baltimore MD 21236
  3421.          
  3422.                Thanks again for registering the Modem Doctor.
  3423.  
  3424. You can always download the latest shareware version and other communication 
  3425. utilities from the Modem Doctor BBS at 410-256-3631 (300/1200/2400/9600 HST 
  3426. [soon V.32bis]). Also, if you write your questions on the BBS, you will get a 
  3427.  
  3428.  
  3429.  
  3430.  
  3431.  
  3432.  
  3433.  
  3434.  
  3435.  
  3436.  
  3437.  
  3438.  
  3439.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 53
  3440.  
  3441.  
  3442. faster response than if you had written via the mail. 
  3443.  
  3444.  
  3445. Notes -     [+] References to USR /Courier/Dual Standard/HST
  3446.                      Copyrighted by US Robotics     
  3447.          
  3448.          [++] References to AT Instruction Set ,Smartmodem,Hayes
  3449.               Copyrighted by Hayes Inc.
  3450.          
  3451.          References to MNP refer to An error free protocol 
  3452.          Copyrighted by Microcom Inc.     
  3453.  
  3454.         References to dos, microsoft, copyrighted by IBM or Microsoft
  3455.         References to 8250B or other uarts are copyrighted by a 
  3456.         variety of manufacturers including (but not limited to ) 
  3457.             Intel, National Semiconductor.
  3458.   
  3459.          
  3460.      
  3461.  
  3462.     
  3463. Disclaimer -  
  3464. It is not the intent of the author to recommend any brand of modem over
  3465. another nor to infringe on the copyrights of the manufacturers by
  3466. mentioning their products. A modem fits a need, and whatever one works for 
  3467. you is the one you should have. As time goes on, more modems will be added
  3468. to the list of "special enhanced " tests. The modems mentioned are done so
  3469. only because of the popularity they enjoy and for no other reason. All
  3470. programming of modems for testing is done with simple character strings,
  3471. similar to any type of data that can be sent to a modem or a serial port.
  3472. Any modem, whether AT compatible or not, can be handled by the Modem
  3473. Doctor with special software drivers. These software drivers will be
  3474. distributed free of charge as needed for general use. Custom drivers
  3475. created by Hank Volpe for particular clients however will require a fee
  3476. for handling and programming time.
  3477.  
  3478. Modem Doctor History
  3479.  
  3480.          Ver 5.0 -  New tests added to verify IRQ operation, verify proper
  3481.                     Comm port/IRQ selection, added NULL tests to Interactive
  3482.                     selection. Structure changed for drivers to include 
  3483.                     handling all modem identification codes. All window
  3484.                     routines changed to directly drive displays (vs working 
  3485.                     through standard C library interfaces), S-register window 
  3486.                     display added to REGS menu, intefaces added to handle 
  3487.                     generic INT14 and FOSSIL drivers, bypassing all direct 
  3488.                     control of hardware while in that mode. 
  3489.  
  3490.                     Other updates include identification of mouse drivers 
  3491.                     and re-activation upon exit, ability to handle accurate 
  3492.                     timing loops on machines with a system speed of 50mhz+, 
  3493.  
  3494.  
  3495.  
  3496.  
  3497.  
  3498.  
  3499.  
  3500.  
  3501.  
  3502.  
  3503.  
  3504.  
  3505.          Modem Doctor Ver 5.0 Copyright 1993 Hank Volpe   Technical Reference                                       Page 54
  3506.  
  3507.  
  3508.                     addition of interrupt driven transmit routines. Addition 
  3509.                     of 5 new uart internal tests.
  3510.       
  3511.          Ver 4.0 -  New tests added for dynamic handshaking and static 
  3512.                     handshaking. New report generator features, new
  3513.                     exchange mode. Higher baud rates, cleaner windows that
  3514.                     grow to meet commands. Recognition of mouse inputs via
  3515.                     a compatible mouse driver. Expansion of internal modem
  3516.                     drivers and ability to read external modem drivers.
  3517.                     Improved brute-force reading for faster digital
  3518.                     loopback tests. Automatic aborting of modem tests when
  3519.                     IRQ failures are detected. New advisories for fixed-
  3520.                     link rate, IRQ failures, wrong comm port assignments,
  3521.                     swapped comm port assignments. Addition of custom
  3522.                     color selections, pulldown windows that stay when
  3523.                     left-right arrow keys are moved. Updating of 16550 AN
  3524.                     support for resetting and clearing buffers.
  3525.                     Replacement of all internal comm drivers with new dos
  3526.                     independent routines. Correction of many (and
  3527.                     hopefully all) spelling errors.
  3528.  
  3529.          Ver 3.0 - New tests added for 16450/16550/16550AN Uarts.
  3530.                    Improved Control-Abort handling, Regs command now 
  3531.                    performs a full diagnostic call when activated. 
  3532.                    Hot-Keys added (Force Micro, Baud Rate Select). 
  3533.                    Modem Driver software added to program, Status Bar 
  3534.                    added to program. Support for IRQ 3,4,5,7 added 
  3535.                    via COM1 through COM8 log-ins. Speed increased to 
  3536.                    38.4KB. /S Command line option added for setup of 
  3537.                    a modem including batch file errorlevel support. 
  3538.                    Escape key functionality added to Carrier Tests 
  3539.                    and the loopback tests.
  3540.  
  3541.         Ver 2.2 - Corrects a bug in Ver 2.1 Communication routines
  3542.                    that caused some modems to lock-out because they 
  3543.                    were waiting for two carriage returns to begin. 
  3544.                    Also it added 4 diagnostic Uart tests
  3545.          
  3546.          Ver 2.1 - This version was a Beta test. A Beta tester 
  3547.                    accidentally uploaded this to several boards. 
  3548.                    Please remove all Ver 2.1S software that you may 
  3549.                    find.
  3550.          
  3551.          Ver 2.0 - This version also was a Beta test with support
  3552.                    for COM1-2 and 2400 bps maximum
  3553.          
  3554.          Ver 1.0 - First test version
  3555.  
  3556.  
  3557.  
  3558.  
  3559.  
  3560.  
  3561.  
  3562.  
  3563.  
  3564.  
  3565.