home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 1998 June
/
PCWorld_1998-06_cd.bin
/
software
/
sharware
/
komunik
/
MODEMCOM
/
MODEMD60.EXE
/
MODEMD60.TXT
< prev
next >
Wrap
Text File
|
1995-01-01
|
203KB
|
4,681 lines
__________________________________________________
T H E
M O D E M
D O C T O R
Version 6.0S / 6.0R
Hank Volpe copyr. 1989,1990,1991,1992,1993,1994
P.O. Box 43214
Baltimore MD 21236
__________________________________________________
What's New . . . . . . . . . . . . . . . . . . . . . . . . . Page 4
Forward . . . . . . . . . . . . . . . . . . . . . . . . . . . Page 5
Section 1. Introduction . . . . . . . . . . . . . . . . . . . Page 6
Section 2. Starting MDR . . . . . . . . . . . . . . . . . . . Page 9
The /B switch . . . . . . . . . . . . . . . . . . . . . Page 9
The /D Switch . . . . . . . . . . . . . . . . . . . . . Page 9
The /E switch . . . . . . . . . . . . . . . . . . . . . Page 10
The /Q switch . . . . . . . . . . . . . . . . . . . . . Page 10
The /S switch . . . . . . . . . . . . . . . . . . . . . Page 10
The /X switch . . . . . . . . . . . . . . . . . . . . . Page 10
The /F switch . . . . . . . . . . . . . . . . . . . . . Page 11
Section 3. First Time Setup . . . . . . . . . . . . . . . . . Page 12
A. Test Modem/ Uart . . . . . . . . . . . . . . . . Page 14
B. Uart Tests . . . . . . . . . . . . . . . . . . . . . Page 16
C. Return to main menu . . . . . . . . . . . . . . . . . Page 18
Section 4.0 The Main Menu . . . . . . . . . . . . . . . . . . Page 18
4.01 Hot-Key selection . . . . . . . . . . . . . . . . Page 18
ALT-F . . . . . . . . . . . . . . . . . . . . . . . Page 18
ALT-T . . . . . . . . . . . . . . . . . . . . . . . Page 19
ALT-H . . . . . . . . . . . . . . . . . . . . . . . Page 19
4.1 Login In Comm ports . . . . . . . . . . . . . . . . Page 19
4.11 What do IRQ's and COMM Ports do ? . . . . . . . . . Page 20
4.12 Port assignments and their meaning . . . . . . . . Page 20
4.13 Testing defective Ports . . . . . . . . . . . . . Page 22
4.2 Regs . . . . . . . . . . . . . . . . . . . . . Page 23
Line Control Register . . . . . . . . . . . . . . . Page 24
Line Status Register . . . . . . . . . . . . . . . Page 25
Modem Control Register . . . . . . . . . . . . . . Page 26
Modem Status Register . . . . . . . . . . . . . . . Page 27
Interrupt ID Register . . . . . . . . . . . . . . . Page 28
Interrupt Enable Register . . . . . . . . . . . . . Page 30
Interrupt Mask Register . . . . . . . . . . . . . . Page 31
Modem Doctor 6.0 Technical Reference Manual
Interrupt Mask Register . . . . . . . . . . . . . . Page 31
4.30 Handshaking tests . . . . . . . . . . . . . . . . . Page 32
4.30A S-Register Displays . . . . . . . . . . . . . . . Page 33
4.31 Carrier Tests . . . . . . . . . . . . . . . . . . Page 34
4.31 Modem Driver Modules . . . . . . . . . . . . . . . Page 34
4.32 Types of Carrier Tests . . . . . . . . . . . . . . Page 36
4.33 AT Instruction Set Tests . . . . . . . . . . . . . Page 36
4.34 Uart or Dumb Modem Tests . . . . . . . . . . . . . Page 37
4.35 Error Messages . . . . . . . . . . . . . . . . . . Page 38
4.36 IRQ Failures . . . . . . . . . . . . . . . . . . . Page 39
4.38 Burst Mode Tests . . . . . . . . . . . . . . . . . Page 39
4.4 Loopback Tests . . . . . . . . . . . . . . . . . . . Page 41
4.41 Loopback Test Error messages . . . . . . . . . . . Page 43
4.42 Burst Mode Tests . . . . . . . . . . . . . . . . . . . . Page 43
4.5 Options Mode . . . . . . . . . . . . . . . . . . . . . . Page 45
4.51 Interactive Mode . . . . . . . . . . . . . . . . . Page 45
ALT-B . . . . . . . . . . . . . . . . . . . . . . . Page 45
ALT-C . . . . . . . . . . . . . . . . . . . . . . . Page 45
ALT-N . . . . . . . . . . . . . . . . . . . . . . . Page 45
ALT-R . . . . . . . . . . . . . . . . . . . . . . . Page 45
ALT-H . . . . . . . . . . . . . . . . . . . . . . . Page 46
ALT-X . . . . . . . . . . . . . . . . . . . . . . . Page 46
4.51A Testing for Interrupt Latency . . . . . . . . . . Page 46
4.51B View Fax Mode Settings . . . . . . . . . . . Page 47
4.52 View Current Statistics . . . . . . . . . . . . . . Page 47
4.53 Print Current Statistics . . . . . . . . . . . . . Page 47
4.54 Reset Current Statistics . . . . . . . . . . . . . Page 47
4.6 Setup Mode . . . . . . . . . . . . . . . . . . . . . Page 48
Mdr Color Selection Screen . . . . . . . . . . . . Page 48
4.7 Exit Program . . . . . . . . . . . . . . . . . . . . Page 49
5.0 Error Messages and their Meanings . . . . . . . . . . . . Page 50
General Program Errors or Warnings . . . . . . . . . . . Page 50
Setup Mode Diagnostics . . . . . . . . . . . . . . . . . Page 51
Uart diagnostics . . . . . . . . . . . . . . . . . . . . Page 55
Report Generator Messages . . . . . . . . . . . . . . . Page 56
Static DTR/DSR RTS/CTS . . . . . . . . . . . . . . . . Page 56
Carrier and Dynamic tests . . . . . . . . . . . . . . . Page 57
General program warnings . . . . . . . . . . . . . . . . Page 59
Page 2
Modem Doctor 6.0 Technical Reference Manual
Section 6. Special Modes and Information . . . . . . . . . . Page 63
6.1 Using Modem Drivers . . . . . . . . . . . . . . . . Page 63
6.11 External Modem Drivers . . . . . . . . . . . . Page 64
6.2 Using the Command Line Mode switch /S . . . . . . . Page 64
6.3 Using the Hot-Keys . . . . . . . . . . . . . . . . Page 66
ALT-B Change Baud rate . . . . . . . . . . . . . . Page 66
ALT-C Clear Screen . . . . . . . . . . . . . . . . Page 67
ALT-F Force Microprocessor . . . . . . . . . . . . Page 67
ALT-H Help . . . . . . . . . . . . . . . . . . . . Page 67
ALT-R Register Display . . . . . . . . . . . . . . Page 67
ALT-X Exit Mode . . . . . . . . . . . . . . . . . . Page 67
Control -Break . . . . . . . . . . . . . . . . . . Page 67
6.4 Logging in Defective Ports . . . . . . . . . . . . Page 68
6.5 What tests cannot Do . . . . . . . . . . . . . . . . Page 68
6.6 Quirks with Some Modems . . . . . . . . . . . . . . Page 69
6.7 Buffered vs Direct Connect Modems . . . . . . . . . Page 70
6.8 Using Digiboard Serial Ports . . . . . . . . . . . . Page 71
6.9 Running Modem Doctor under Windows 3.1 . . . . . . . Page 73
6.91 Running Modem Doctor on Networks . . . . . . . . . Page 73
Section 7. Benefits of Registration . . . . . . . . . . . . . Page 73
Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . Page 75
Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . Page 75
Modem Doctor History . . . . . . . . . . . . . . . . . . . . Page 76
All of the documentation text contained in this file is copyrighted
1989-1994 by Hank Volpe. This file is the technical reference manual
that accompanies the Modem Doctor. This manual has been written for the
expert user who would like to have background information on how the
Modem Doctor conducts its various tests. It also catalogs the many
error messages and their meanings, explains some of the mnemonics used
in testing, and contains a brief history of the different versions of
the program. Distribution of this text without the Modem Doctor
shareware version and its support files is prohibited by the author.
Page 3
Modem Doctor 6.0 Technical Reference Manual
-------------------------------------------
What's New in Modem Doctor Version 6.0
-------------------------------------------
For those of you familiar with Modem Doctor, here is a brief look at
the improved and added features of version 6. If you are new to Modem
Doctor, take a look at the users manual file (MDRFIRST.TXT) that
accompanies your Modem Doctor package.
1) Adds IRQ support for IRQ's 7-15 for AT Class Computers with dual
Priority Interrupt Controller Chips.
2) Improves 16550AFN tests. Buffers are tested 14 levels deep (instead
of 8) in both normal and new "burst mode" tests.
3) Tests for FAX modems, indicates Fax Group and Class.
4) Increase Baud Rate to 115200 in registered version.
5) Diagnostic Toggle mode for DTR and RTS signals, helpful in finding
bad cables or missing signals in cables.
6) Improved Modem Recognition and Modem Drivers.
7) Burst and Signature Rate Tests for Analog loop and Carrier.
8) Support for DIGIBOARD Comm ports via the Digiboard Driver.
9) Improve FOSSIL throughput routines.
10) Detects AT, PS-2 and Dual Bus Computers, Supports Dual 8259 PIC's.
11) Support for Digiboard Intelligent Serial ports that use Digiboard's
TSR comm port driver. Modem Doctor can test and support up to 4
boards with a maximum of 16 serial ports on each board.
In addition to these new features, existing commands have been enhanced
or rewritten to accommodate the changing technical features of
contemporary hardware.
1) Manual Login feature active in both shareware and registered
versions.
2) New /E switch to accommodate older display adapters (IBM 8541's)
that use Com4's address as a video display adapter address.
3) Improved interrupt stack routines for PS/2 machines.
4) Support for 28.8kbps modems.
5) Improved uart hardware I/O routines.
6) Default startup mode uses polled TX operations. Some uarts in
inexpensive modems have a well-know defect detected by Modem Doctor
and other communication program authors that cause transmit
interrupt problems. You can change this selection with the ALT-T
command at any time.
Page 4
Modem Doctor 6.0 Technical Reference Manual
7) Accommodations for BOCA modems with non-standard uarts. The Line
Status registers of most uarts are meant to be read only except for
bit 1. In the BOCA uarts, all bits are read/write, causing
communication lockups. Uart routines in Modem Doctor have been
changed to work with this problem.
Thanks to many fine people that participated in the beta testing, Modem
Doctor is a better program today than in any previous version. To these
people go my thanks for helping improve the program and make me a
better programmer.
Forward
-------
Welcome to the Modem Doctor. This documentation along with the program
is a good source of information about how Uarts and Serial Ports work
with modems in your Personal Computer.
There are two versions of the Modem Doctor; The shareware version 6.0S
and the registered Version 6.0R. There are some differences between the
two. Both however are full-functioned diagnostics tools. The
differences between the two are as follows;
Version 6.0S supports speeds to 2400 bps
Version 6.0R supports speeds to 115,200 bps
Version 6.0S does not include the Digital or the Analog
Loopback testing, or any of the dynamic handshaking tests
supported in version 6.0R, or the /s or /x command-line
modes of operation.
The remaining 65+ tests of your modem and uart system hardware are
fully functional. Although many people register for the higher DTE baud
rates,the shareware version of Modem Doctor is just as capable at
detecting your problems as the registered version. The higher speeds
and uart tests serve as incentives for you to register your copy.
Modem Doctor has been featured in many reviews and included in many
technical manuals. You can find background information in;
Killer PC Utilities QUE
Upgrading and Repairing PC's QUE
Modems Made Easy Bantam
PC-Secrets IDG Books
Dos 6.0 Powertools Bantam
Page 5
Modem Doctor 6.0 Technical Reference Manual
Reviews of early versions of Modem Doctor can be found in many national
computer columns and also in many publications. The two best known are
PC-World and the German weekly "Der Speigel".
The best way to find out about Modem Doctor and Modem Doctor support
is our BBS. We're up and running 24hrs a day at 410-256-3631. There are
hundreds of hard-to-find communication utilities and free advice for
those who call. The BBS is free to all who call, no fees or upload
requirements. The BBS, and improvement to Modem Doctor are supported
totally by those who register. I sincerely wish Modem Doctor could be a
full time occupation, but the reality is that Modem Doctor is a labor-
of-love. This is why I appreciate your support of the program. It makes
communication problems simpler for all who are just setting forth into
Cyberspace. This documentation covers both versions, however the
feature differences above are provided for your reference. This manual
is provided as a technical reference for advanced users or for those
wishing to get more background information on tests. For first time
users I would suggest reading the Getting started Manual text file
MDR6FST.TXT, which is a little more basic in its approach. If you are
using the shareware version and wish to order, please use the Order
form included with this package or see Section 7, Benefits of
registration at the end of this documentation. You can always get the
latest version of Modem Doctor from the Modem Doctor BBS (410-256-3631,
24 hrs, speeds to 19.2kbps).
Section 1. Introduction -
-------------------------
The Modem Doctor is a professional diagnostic tool designed to work
with IBM-PC's and compatibles. There are two versions of the Modem
Doctor, the shareware version and the registered version. The
registered version of the Modem Doctor contains complete diagnostics
for 8250-B, 8250-A, 16450,16550, 16550A(x), and compatible Uarts,
RS-232 data lines, and carrier tests. Some of the many diagnostic
features of the registered version are;
** Support for COM 1 through COM 8 using system IRQ's 2,3,4,5 or 7.
** Baud Rates from 300 to 115200 bps
** Support for Courier HST/Dual Standard/V.32 Modems [+],
US Robotics Sportster, V.34 28.8kbps modems,
Hayes 1200, 2400, Ultra and V9600 series Modems [+*],
Hayes 28.8kbps Optima modems, ZyXEL E, E+, Practical Peripherals,
Intel, and Sierra Semiconductor modems. A Generic Driver
is provided for all others.
Page 6
Modem Doctor 6.0 Technical Reference Manual
** Auto-detection of modems that use &T0 (CCITT V.54) diagnostics
** Auto log-in of COMM ports 1 - 4 to DOS for use by other programs.
** Manual log-in of up to 8 COMM ports for non-standard hardware,
including those with defective Uarts (on manual selection).
** On-screen display of all 8250 /16450/ 16550 Uart registers.
** On-screen display of modem S-Registers.
** Full Diagnostic tests of Uart and RS-232 Channels including;
-- ALL Uart registers.
-- ALL RS-232 handshaking Signals.
-- 8259 Interrupt Controller mask registers
including dual-pic environments.
-- Digital loopback Uart tests including chips with Tri-stated
OUT2 signals.
-- Analog loopback data tests.
** Full diagnostic checks of "AT" instruction set modems;
-- Carrier tests on both originate and answer frequencies.
-- Carrier test interface for "dumb" modems or data channels.
-- Burst mode tests that stress modulation requirements and
measure system throughput.
-- Modem microprocessor command channel diagnostics.
-- Support for high speed modems.
-- Support for modems that use the alternate &T0 self test mode.
-- Dynamic simulated on-line testing of RTS/CTS and XON/XOFF
handshaking.
-- Static DTR/DSR and RTS/CTS uart handshaking tests.
-- Ability to display any S-Register pairs
** Interactive Mode with 16K communications buffer for;
-- TTY mode interactive communications over serial port or modem
while on-line.
-- Interrupt latency test, you can use this to determine if your
display adapter is too slow for your high-speed modem.
-- Custom designed tests...help menu included.
-- On-line "Hot-key" viewing of 8250 Uart registers.
** Hot-Keys for selecting the baud rate, to force a modem
microprocessor test mode, and to enable/disable transmitter
driven interrupts.
** User Selection of modem drivers. Like printer drivers, these
software modules add more selections and more test capability
to The Modem Doctor.
** Ability to use external modem drivers. External modem drivers
make it possible to add special modems that might not use
standard AT conventions to the Modem Doctor without you having
to update to a new version of the program.
Page 7
Modem Doctor 6.0 Technical Reference Manual
** Built in report generator that displays the results of all tests
run on all serial ports and modems. Report can be printed at
any time and reset at any time by the user.
** Status bar that continuously displays the port, speed,
microprocessor status, Transmitter Interrupt enable status
and modem driver selections.
** User defined Colors for all screens
** Compatibility with mouse drivers. Mouse drivers also properly
enabled after exiting Modem Doctor.
** Command Line Mode interface for setting up a modem to an
initialization string contained in a user created file;
-- A small text file contains the port (and optional address), the
speed, and the string to send to the modem. Any text editor can
create the file at any time!
** Automatic detection of incorrect Com1 and Com2 port assignments,
IRQ assignment errors, missing IRQ signals, and missing handshake
signals.
The Modem Doctor and all of its documentation is copyrighted by Hank
Volpe. The shareware version of this program may be distributed on
not charged for its duplication or acquisition (except for BBS systems
that charge a user fee for system access).
Important for Shareware Distributors. Unlike previous versions, version
6.0 can be freely distributed via these channels. The only requirement
that I absolutely insist upon is that you mail us a copy of your
catalog for our files and that you encourage users of your service to
register this and all other shareware that you distribute.
Under no conditions can anyone accept registration fees for the Modem
Doctor but Hank Volpe or agents authorized for resale by Hank Volpe.
The Modem Doctor is distributed on as "as-is" basis, with no warranties
for usefulness or suitability expressed or implied. Users of the
shareware version are granted a limited license to use this program for
a trial period only. Please let your conscience be your guide as to
what you believe has been a fair trial period, for without the support
of users who have registered, the Modem Doctor would not be the product
that it is today.
The Modem Doctor is a very flexible package for both the new user and
for the experienced technician. The focus of this manual is to give you
a technical reference regarding how the Modem Doctor works, what is the
meaning of error messages you may encounter, and how the tests are
Page 8
Modem Doctor 6.0 Technical Reference Manual
constructed to operate between your PC and your modem. First time users
or those unfamiliar with how the Modem Doctor operates should read the
file MDR6FST.TXT. MDR6FST explains how to start and use the Modem
Doctor, how the pulldowns operate, and how to use the menu and control
system.
Section 2. Starting MDR
------------------------
The Modem Doctor has been designed to work with PC-Type serial ports
and "AT" instruction set (so called Hayes compatible[++]) modems. The
Modem Doctor requires at least 1 serial port to operate. MDR is written
to run under MS or PC DOS 2.2 or higher, and will work with any
standard display adaptor in normal text mode. The program requires at
least 200K of program memory space.
When MDR is started, it will use your current text mode. If you have
created a custom color file (see Options mode), your screen colors will
be displayed as you selected them. If not, default colors will be
loaded depending on the mode you are currently in (Color or Black
/White). Modem Doctor starts just like any other program. From the dos
prompt, type MDR. There are however several command line switches you
might need to use from time to time.
The /B switch
-------------
Code has been included to work with hardware-incompatible display
adapters as long as they are at least IBM-PC Bios compatible. For most
computers, this is not necessary and will slow down screen displays,
plus it will change the appearance of the input windows. The reason for
using this switch is (for example), if you wish to route the output of
the program through a voice synthesizer or operate it under a program
that requires all screen writes to go through your Bios. If you wish to
use this bios compatible mode instead of direct display writes, start
the program using the Bios switch ; MDR /B
The /D Switch
--------------
Starting MDR with this switch active enables support for Digiboard
intelligent serial ports (ComXi series) using Digiboard's TSR support
driver. Support includes many diagnostic and configuration options.
Support is included for 4 boards simultaneously containing up to 16
serial ports on each board. See the section entitled "Using Digiboard
Serial Ports".
Page 9
Modem Doctor 6.0 Technical Reference Manual
The /E switch (** NEW **)
-------------------------
Certain video adapters, mainly those attempting compatibility with IBM
8541 display adapters, use an address that is identical to the industry
standard address for Com4. The /E switch allows Modem Doctor to operate
on these machines. To start in this manner type; MDR /E
The /Q switch
-------------
Starting in version 5.x tests were included to verify the accuracy of
IRQ settings. However this self-testing might not be desirable in some
computer environments. The /Q switch makes it possible to defeat this
self test of IRQ assignments. Using /Q, Modem Doctor will report
"Standard Assignments" and not verify the proper configuration of IRQ
settings. Use this switch if you experience a "freeze-up" of the
program at the initial sign-on screen. To bypass IRQ verification,
start the program with the IRQ switch; MDR /Q
If your computer is a PS/2, Modem Doctor will now detect this problem
and switch in code to accommodate this peculiarity without the need for
the /Q switch.
The /S switch
--------------
Registered versions 4.0 and higher also can be run to quickly program
and setup a Modem. To use this mode start the program with the setup
switch ; MDR /S (see Section 3).
The /X switch
--------------
Registered versions 4.0 and higher have the ability to swap the
communication pointers for COM1 and COM2 in memory. To use this mode,
type MDR /X. Com1's pointer will be swapped to COM2 (and visa versa).
You can specify any one of the 4 comm ports used by dos by typing;
MDR /X [port] [port], where each [port] is a different comm port..ie to
swap Com1 and Com3, type MDR /X 1 3. MDR /X without port numbers flips
com1 and com2 by default. This condition is not permanent. To flip
these again, just type MDR /X or if you used comm numbers, type MDR /X
[port] [port]. The reason for this command line switch is for
convenience and also to make it easier for technicians to swap port
assignments without having to change port jumpers. This mode is not
generally useful except when you believe you have addresses set
incorrectly or if you wish to use a serial device that is normally Com2
Page 10
Modem Doctor 6.0 Technical Reference Manual
as Com1 (such as a serial printer) from a high-level language that does
not support 2 comm ports. These changes are temporary. Permanent fixes
can only be done in these cases if you physically change the addresses
on your serial card.
The /F switch
-------------
Normally, Modem Doctor and most comm programs directly control the
hardware of your computer. Uart registers, interrupt controllers, and
system hooks are all involved. Another way to perform control in a
machine-independent way is by using kernels. Kernels are small programs
that reside as TSR's (Terminate Stay Resident) in your computer. You
can instruct Modem Doctor to operate in this manner, and instead of
assuming complete control over your system, Modem Doctor will work
through system kernels. X00 and BNU are two such kernel or FOSSIL
programs. If you use Modem Doctor in this manner, some uart programming
and error trapping is not possible (because the FOSSIL drivers do not
support function calls to handle all test conditions). However, this
command can be useful if you wish to test the proper operation of a
FOSSIL driver in your system. Other Int14 type kernels are also
supported. To start Modem Doctor in this mode, type MDR /F.
Page 11
Modem Doctor 6.0 Technical Reference Manual
Section 3. First Time Setup
---------------------------
The first time you start the Modem Doctor, it will begin several system
checks. These checks are not repeated until you start the program over
again from the Dos prompt. First, the Modem Doctor checks to see what
hardware is available and reports its results to you. Displayed on the
bottom line is the serial number unique to each copy (registered
version). If incorrect COMM addresses are detected or if swapped
addresses are detected, an Alert-bar will be displayed, warning you
that a non-standard assignment was detected, and you are asked if you
wish to have this fixed for testing purposes only.
┌───────────────────────── The Modem Doctor──────────────────────────┐
│ Welcome to the Modem Doctor │
└────────────────────────────────────────────────────────────────────┘
╒[ Modem / Uart Hardware Detection ]══════════════════════════════════╕
│ Port assignments Base(hex) Irq Special Port Usage │
│ Com port 1 [ ] 3f8 4 │
│ Com port 2 [ ] 2f8 3 IRQ assigned to a mouse driver │
│ Com port 3 [ ] 3e8 4 │
│ Com port 4 [ ] 2e8 3 IRQ assigned to a mouse driver │
│ Com port 5 [ ] │
│ Com port 6 [ ] │
│ Com port 7 [ ] │
│ Com port 8 [ ] │
│ Bus type: AT Bus Interrupt Levels: 15 HD uses DMA Ch3?: NO │
│ Interrupt Status : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 │
└─────────────────────────────────────────────────────────────────────┘
╔[ Serial Port Detection ]═══════════════════════════════════════════╗
║ Serial port detection ║
║ Searching for other standard active Comm ports ║
║ ║
║ Total Comm ports =2 ║
║ PRESS ANY KEY TO START TESTING ║
║ ║
║ ║
║ ║
═════════════════════════════════════════════════════════════════════╝
Page 12
Modem Doctor 6.0 Technical Reference Manual
Modem Doctor 6.0 uses a heads-up display that shows you the Comm port
assignment number, the base i/o address, and the interrupt line in use.
Unlike other IRQ mapping utilities, Modem Doctor actually creates a
system interrupt and traps its ID. Running under DOS, Modem Doctor will
always identify the correct IRQ line. In multi-tasking situations, this
test may not be valid, which is why a new window has been created to
allow you to easily select any IRQ line you wish to use.
New in version 6, Modem Doctor also identifies the Computer BUS type
in use (PC, AT, PS/2), the maximum number of system hardware
interrupts, the status of DMA channel 3 (sometimes used for Hard Drive
access, sometimes free for use by intelligent serial board DMA
transfers), and the status of all interrupts (gray means inactive,
white means active).
╔[ Ports ]═╗ ╔[ IRQ's ]═╗ ╔[ Baud ]══╗
║ Use COM 1 ║ ║ Use IRQ 2 ║ ║ 300 BPS ║
║ Use COM 2 ║ ║ Use IRQ 3 ║ ║ 1200 BPS ║
║ Use COM 3 ║ ║ Use IRQ 4 ║ ║ 2400 BPS ║
║ Use COM 4 ║ ║ Use IRQ 5 ║ ║ 4800 BPS ║ *
╚════════════╝ ║ Use IRQ 7 ║ ║ 9600 BPS ║ *
║ Use IRQ 9 ║ ║ 19200 BPS ║ *
║ Use IRQ10 ║ ║ 38400 BPS ║ Registered Versions
║ Use IRQ11 ║ ║ 57600 BPS ║ * only
║ Use IRQ12 ║ ║115200 BPS ║ *
║ Use IRQ15 ║ ╚════════════╝
╚════════════╝
Next, you are instructed to pick from a list of valid Comm ports. The
only ports that are listed are valid ports that MDR found when it first
started, or ports you logged in using the manual login mode.
Use the arrow keys to find your selection, and then press return to
select.
A window now opens showing you your IRQ line choices. The sliding bar
will pick the IRQ line Modem Doctor found valid during the first set of
tests. You can change this to any IRQ line you wish. A note of caution
though, if you pick an incorrect IRQ line, the following tests will not
be valid.
A window now opens showing you valid Comm port speeds. Select a speed
fromthis menu. Please note, don't select a speed faster than your modem
can handle. The reason for faster speeds is so communication links can
Page 13
Modem Doctor 6.0 Technical Reference Manual
also be tested. Use the arrow keys and press return to make your
selection.
At this point you are in the options menu. If you select "Test Modem",
a series of commands and tests will be performed. Please check to make
sure the modem is on line and running. If you select "Test Uart
Hardware", only the Uart will be tested. The modem will not be setup.
This selection is useful only if you wish to test an RS-232 line or a
"dumb" modem.Selection 3 aborts to the main menu. (NOTE: Version 5.0
and higher include "hot-keys" to force the Modem Doctor to believe you
are using a modem with a microprocessor and for changing the baud rate.
Read Section 4 on the menu system for more details).
A. Test Modem/ Uart
---------------------
╒[ Modem / Uart System Diagnostics ]══════════════════════════════════╕
│ Comm port /IRQ in use [ ] Port = 3 Address = 3E8 IRQ = 4 │
│ Int 14 interface [ ] Inactive │
│ Uart type [ ] 16550AN/AF/AFN buffered Uart detected │
│ Baud rate selected [ ] 2400 │
│ Baud Rate reg test [ ] Confirmed correct baud rate │
│ Modem Microprocessor [ ] Diagnostics passed │
│ Modem ID Type [ ] 16800+ bps modem │
│ Modem Fax Ability [ ] G3 EIA Class 2 Fax Capable │
│ Modem Memory/Rom [ ] Memory /Rom test passed │
└─────────────────────────────────────────────────────────────────────┘
╒[ Diagnostic Dialog]═════════════════════════════════════════════════╕
│ Modem microprocessor command bus active │
│ Modem ID reports a 16800 ZyXel U-1496 Series &T1 modem installed │
│ Modem uses EIA Fax Commands │
│ Modem microprocessor memory tests OK │
│ Modem microprocessor accepts setup commands │
│ Modem microprocessor ON-LINE │
│ Modem - uart status appears correct │
│ Press any key to continue │
└─────────────────────────────────────────────────────────────────────┘
The preceding page shows you the results of a normal test with a modem.
The first step tests the uart to modem hardware. If any connection
errorsare discovered, they are reported to the screen. If no errors are
detected, the Modem Doctor will check to see what type of uart is
installed.
Page 14
Modem Doctor 6.0 Technical Reference Manual
There are differences between the different types of uarts, and
the Modem Doctor uses this test to determine how to test the uart and
what registers to display to the screen. Next, the uart is set to the
desired baud rate, and the uart speed register is queried to make sure
it did set up properly. Next, the modem command bus is tested and if
its compatible, the modem ID information is queried from the modem
microprocessor. The Modem Doctor then issues a command that forces the
modem to run a checksum of its ram or rom memory. If your modem returns
an OK, then the Modem Doctor assumes your modem passed properly. If an
error is returned, you will receive an error message stating that the
modem reported a rom/ram check failure. If your modem has fax
capabilities, Modem Doctor attempts to determine is Group (command)
capabilities. Finally, the modem is setup for diagnostics. Note: These
setup strings do not overwrite any non-volatile storage.
If your modem setup properly, all the uart registers and the First 16
Modem S registers are displayed. This display is not shown the next
time you log in a Comm port unless you press the space bar. If the
modem does not respond to certain parts of the tests, error messages
are reported.
Testing Modem Microprocessor
----------------------------
Modem Microprocessor Command Mode Not Detected
Software Reset Initiated
This message is displayed if the modem did not respond the first time
for a query to its status. This could happen for any number of reasons,
including that the modem was still on-line and not in the command mode.
A soft-reset is performed, which essentially tries to wake the
processor up.
No Response...resetting Modem Microprocessor ...attempt #1
No Response...resetting Modem Microprocessor ...attempt #2
No Response...resetting Modem Microprocessor ...attempt #3
After 3 soft-resets, the Modem Doctor assumes that the modem is jammed
and needs a hardware reset. A hardware reset is the program equivalent
of turning the modem on and off again. This is the only way to reset
some internal modems that get "jammed" when the computer is first
turned on. Clearing a "jam" usually takes no more than 2 attempts.
Page 15
Modem Doctor 6.0 Technical Reference Manual
Trying Hardware reset of the Modem Microprocessor
The Hardware reset is performed, and again the modem microprocessor is
strobed for its status.
Software Reset Initiated
After a hardware reset, a soft reset is performed again, attempting to
wake the processor up. If this fails, the following message is
displayed;
Modem Microprocessor Did Not Accept Setup Commands
Trying a Hardware reset of the Modem Microprocessor
After one more attempt at waking the modem up, the Modem Doctor assumes
that the modem is not compatible and based on the status given it by
the Uart, it will report if the device is off or not connected.
WARNING..This unit does not have a Compatible Modem attached
WARNING..The Modem Device appears to be off or not connected
The registers are now displayed for diagnostic tests, and a conclusion
based on the status of the registers is displayed. There are many
reasons why the modem/uart could fail. See the error code section for
details. If the Uart is fine, but the modem is not compatible, the
program will tell you that the Uart hardware tests ok and display this
in a window to the right of the register display.
Note: The reason for testing the modem command set so extensively is so
there can be no doubt about the modem accepting commands. You can force
The Modem Doctor to believe it has a modem with a compatible
microprocessor by using the hot-key Alt-F. See Section 4 about Menu
system commands.
B. Uart Tests
---------------
The uart test is performed every time either the modem or the uart test
is selected. Essentially, the uart test programs all of the registers
of the uart and looks to see that the correct values have been placed
in them. If any one of the registers fails to set, the Modem Doctor
will display all of the registers and a diagnostic message. After that,
it looks to see that an RS-232 loop is active. If not, it displays an
Page 16
Modem Doctor 6.0 Technical Reference Manual
error message saying that the loop is either disconnected or a register
in the uart is defective. If all checks well, the type of uart chip
that is installed is returned. The type of uart chip is important for
the way the Modem Doctor will test and display the uart. Essentially
there are 3 types it can detect;
8250-B
This is the original uart installed in many PC's and serial port add-on
cards.
16450/8250-A
This is an upgraded uart that fixes a bug in the interrupt enable
register of the 8250-B and also tri-stated the OUT2 pin of the chip
during loopbacks. It also adds a scratch-pad register as the highest
register. This register is tested by the Modem Doctor but not displayed
because it never has what you would consider as a "correct" setting.
The 16450 is used primarily in 80286 (AT) systems.
16550
This chip is essentially a faster 16450. However, it cannot be used in
a FIFO buffering mode, but it does allow for a programmer to use
multiple DMA channels and thus increase throughput on an AT or higher
class computer system.
16550A(x)
This chip is a faster 16450 with a built in transmit and receive FIFO
buffer. It also allows multiple DMA channel access. You should see this
chip in your 80386, 80486, Pentium, or RISC type machine. You should
also consider installing this chip if you do any serious communications
at 9600 bps or higher while you are multi-tasking. Whenever a 16450,
16550 or 16550AN is displayed, different diagnostics and/or different
register mnemonics are displayed. The 16550AN's ability to enable
and disable FIFO mode is also tested. In any case and with any uart,
each register is checked for proper values. If anyone of them fail,
a window will open and display a possible cause for the problem.
Preliminary Diagnostic Checks of Hardware
-----------------------------------------
Testing Uart Hardware Only
--------------------------
A 8250-B Uart has been detected
Modem - Uart Status appears correct
Page 17
Modem Doctor 6.0 Technical Reference Manual
The first time through these tests, the registers will display for
diagnostics. Unlike the modem tests, only the uart registers are
displayed. From then on, if the test results are correct, you will be
prompted if you wish to have the registers displayed. If a test fails
at any time, you will always see the registers displayed along with an
appropriate diagnostic message.
C. Return to main menu
----------------------
Selecting this returns you to the main menu, this allows you to change
an entry made in error without having to wait for the diagnostic checks
to fail. In any event, after any of these tests have been run, you will
then enter the Modem Doctor's Main Menu.
Section 4.0 The Main Menu
-------------------------
The main menu consists of a sliding bar from which you make your
selections. Using the arrow keys you slide left or right. Pressing
ENTER selects a feature. If the feature has a pulldown window, you use
the up or down arrows to navigate, and then ENTER to select that
feature.
4.01 Hot-Key selection
----------------------
In addition to these menu selections, there are three hot-keys that are
active at nearly all times in the Modem Doctor. The ALT-B combination
can be used to change the baud rate from the main menu, from inside
pulldowns and Manual test section. A window will pop-up and you can
pick your desired serial port speed. This can save a lot of time when
you wish to test a modem at various speeds. Using the Setup / Test
Modem & Uart mode is the safest way (because it verifies the modem
microprocessor accepts commands properly at the selected speed),
however if you use the ALT-B command, you will take a short-cut that
can help you when testing your modem.
The next hot-key is ALT-F, or FORCE Micro on-line. Actually, there is
no "force" involved. By pressing this key, you make the Modem Doctor
believe there is a AT Instruction set compatible modem attached. This
can be handy for troubleshooting a modem that doesn't work properly at
certain speeds or under certain conditions. The Setup Test Modem &
Uart section will not allow any AT Instruction set Carrier tests on
modems that it cannot properly setup. The ALT-F combination bypasses
this and allows such testing. When you press ALT-F, you will notice the
Page 18
Modem Doctor 6.0 Technical Reference Manual
Status Bar will say that a modem microprocessor is on-line. Starting
with Version 4, this key can be operated as a toggle between on-line
and off-line. This key is active inside of any menu at any time.
Another hot-key is ALT-T. It allows you to toggle how Modem Doctor
treats the transmission of characters. Most times, interrupt driven
transmissions are used because they are fast, waste no CPU time
looping, and give the best throughput. However, some early 8250 uarts
cannot handle interrupt-driven transmits without errors. When you start
Modem Doctor, transmit-driven interrupts are disabled. If you would
like to enable and test your system for transmit driven interrupt
capability, press ALT-T. If you experience errors when transmit
interrupts are active and your errors go away when this feature is
inactive, you either have a uart that cannot handle interrupt-driven
transmit routines, or your system is too slow to process and support
this feature.
The last hot-key is the ALT-H for help. This key will give you varying
levels of help. From the main menu, it gives a terse help just like
pressing the down arrow key does. Inside of a pulldown, it gives you
expanded help, just as selecting the appropriate help section of the
pulldown also does.
4.1 Login In Comm ports
-----------------------
When you select this menu, you are offered these choices
╔[ Comm Port Login ]═══════════╗
║ Let me Auto Detect COMM Ports ║ <- Searches for all Comm ports
║ You Manually Enter COMM Ports ║ <- You enter port addresses
║ Help with Auto login Commands ║ <- Detailed help or ALT-H
║ Return To Main Menu ║
╚════════════════════════════════╝
Option 1 repeats what the Modem Doctor does when you first begin to run
the program. Option 2 allows you to enter a "non" standard port address
and assign one of the two Interrupt lines to use with the Uart. Option
3 gives you an expanded, on-line help description of these tests.
Option 4 returns to the main menu.
Page 19
Modem Doctor 6.0 Technical Reference Manual
4.11 What do IRQ's and COMM Ports do ?
---------------------------------------
Each time a character is received by a modem, it has to get the
attention of the computer by raising an interrupt request line (IRQ).
PC-type computers have 8 of these lines, AT-type (ISA bus), MCA and
EISA computers have at least 16. The 8259 Interrupt controller chip
handles these requests for attention. By design, COM1 uses IRQ4 and
COM2 uses IRQ3. IRQ7 is assigned to a printer, IRQ5 to the Hard Drives.
It is possible to use COM1 and COM2 or COM3 and COM4 at the same time,
but you cannot use COM1 and COM3 or COM2 and COM4 at the same time
because these share IRQ lines. If you needed to use 3 or more COMM
ports at the same time, you would need to use another IRQ line. The
best bets are IRQ7 and IRQ5, because they may be available when you
need them. IRQ7 is really only needed by programs that use printer
interrupts (background type spoolers for example). IRQ5 is used by
fixed disks. It may or may not cause a conflict if you use this IRQ
line with your modem. PC type computers are quite limited because they
only have 8 IRQ lines and most are reserved. AT type computers have 16
IRQ lines.
A good tip would be to consult your hardware manual to find out if you
can or can't use these other IRQ's. However, if you do not need to use
3 or more COMM ports at one time, then it is best to stick to the
reserved IRQ4 and IRQ3 for all of your activity.
4.12 Port assignments and their meaning
---------------------------------------
Like IRQ lines, certain port addresses were reserved to work with the
PC's external hardware devices. Two of these were reserved by all
manufacturers; 3F8 (HEX) and 2F8 (HEX). Although only two COMM ports
were supported by the original ROM-BIOS, there are two additional port
memory locations available for use by MS-DOS and PC-DOS applications.
These reserved port addresses are 3E8 (HEX) and 2E8 (HEX). Most
internal modems come with these 4 ports as selections along with
several IRQ line combinations. There is a "quirk" in the way that the
ROM-BIOS logs in these ports. If the Power on self-tests (POST) do not
find a 3F8 serial port but they do find a 2F8, then the 2F8 serial port
is mistakenly assigned to COM1. To add to this, the reserved IRQ line
for COM1 is IRQ4. But this serial Port of 2F8 is using COM2's address,
which means it needs IRQ3 instead of IRQ4. So, if you are trying to use
Basic, Pascal, or DOS for COM1 operations, the serial port or modem
will not be able to work. The general rule thus is "No COM1 without
COM2".
Page 20
Modem Doctor 6.0 Technical Reference Manual
The Modem Doctor when it is run will detect this log-in problem and
display an "alert-bar" with a message to you that points out this
error. You can then elect to correct this for the purposes of testing.
Remember though, you can only fix these addresses permanently by
changing the settings on your serial port or internal modem. You can
run Modem Doctor with the /X switch to fix this problem at boot time
until you do change the address settings permanently. The addresses for
PC's are standardized in order for communication programs to properly
work. As stated above, the industry standards are;
COMM 1 3F8 COMM 2 2F8 COMM 3 3E8 COMM 4 2E8
IRQ4 IRQ3 IRQ4 IRQ3
COMM 5 3F8 COMM 6 2F8 COMM 7 3E8 COMM 8 2E8
IRQ7 IRQ7 IRQ5 IRQ5
The port addresses for serial ports (1-4) are held in a reserved area
of memory. The "base port" of each of these uarts is saved in a
distinct area. When you first start the Modem Doctor, the program
checks these locations to see if there are any Comm ports already
logged in by Dos. If not, a search is conducted for the PC's default
Comm 1 and Comm 2 port values and these are logged in. Next, a search
is performed for the other industry standard Comm ports. Some PC's
already log these in, however IBM-PC's and those that mimic exactly
their ROM-BIOS routines do not log in a COMM 3 or a COMM 4. The Modem
doctor does log these in, and as a side benefit, these stay logged in
until the next warm or cold boot is performed on your computer. Why
would Dos not log in a port? Well, some multi-tasking programs
overwrite this area to prevent "swapping" of communication programs and
it is possible that they might not be properly restored on exit. Next,
a search is made for the custom comm ports 5-8. These ports are not
held in DOS at all, but are held in program memory by the Modem Doctor
after a user logs the port in using the Manual log-in mode (see below).
If one of these ports is found, it will be added to the comm port
option menu for you to use when you test the modem. The reason
for the custom ports is to help users who are using non-standard
interrupt lines (IRQ7,IRQ5). Unlike the Dos logged-in ports, these
assignments disappear when the Modem Doctor is exited. The Modem Doctor
follows the accepted arraignment of these comm Port /IRQ line pairings.
However, you do have full control at all times over all port addresses
and IRQ assignments and can change them using the Manual Login mode.
As far as the 2 Options presented by the Login Mode, option 2 is the
Page 21
Modem Doctor 6.0 Technical Reference Manual
only real option available. Please use it with caution. The only need
for this option is for logging in a comm port that does not use any of
the listed industry standards as its base port address or IRQ line
assignments. Consult your serial port or Modem's user manual to make
sure you enter the exact port address and select the correct Interrupt
line to use with it. Otherwise the Modem Doctor will not recognize or
be able to test any device hooked to this port. Protection is included
in this routine to keep someone from accidentally entering a port that
is used by the system board, display adapters, or fixed disk adaptor.
Entering any of these values, or an error, will result in the display;
"WARNING...RESERVED port...RETRY ENTRY"
After running option 1 or 2 , you must tell the Modem Doctor which comm
port you wish to use so that testing can begin. Pressing the ESCAPE key
or pressing a left or right arrow key works the same as Option # 3 and
returns you to the main menu.
4.13 Testing defective Ports
----------------------------
Whenever the Modem Doctor checks to see if a port is working properly,
it checks the status of several registers. If a uart appears "dead",
the Modem Doctor will tell you that the port was not "found". You can
use the Manual mode and override this determination. This allows you to
test a defective port to find out what is wrong. If you tell the Modem
Doctor for example to use serial Port 2F8 as COM2 and you do not have
a COM2, the message "COM2 not Found" will be returned with an option
"Override [Y/N] ?". Answering "Y" will force the login of this port.
Certainly there is no benefit to testing a non-existent port, but a
port that is defective may not be logged-in. So, you now have the
option to test this defective port hardware to pinpoint a problem.
Combined with the register display and diagnostics, you will most
likely be able to pin-point any uart problem quickly and easily.
Page 22
Modem Doctor 6.0 Technical Reference Manual
4.2 Regs
-------------
╔[ Register Tests ]══════════════╗
║ Quick uart register diagnostics ║ <- Displays all registers
║ DTR/DSR RTS/CTS echo test ║ <- Tests handshake lines
║ DTR Continuous Pulse test ║ <- New, Pulses DTR line on/off
║ RTS Continuous Pulse test ║ <- New, Pulses RTS line on/off
║ Dynamic RTS/CTS handshake test ║ +<-|Handshakes under simulated
║ Dynamic Xon/Xoff handshake test ║ +<-|on-line conditions.
║ Display any 10 S-registers ║ <- Display S-registers
║ Help and info on these tests ║ <- Help or ALT-H
║ Return to main menu ║
╚══════════════════════════════════╝
+ registered version only
The register display section can be an invaluable diagnostic tool. What
this does is "poll" all of the status registers of the uart, and the
interrupt controller to tell you exactly what is going on. When you
use the setup mode, the Modem Doctor checks all of these registers for
correct information. If something wrong is discovered, a warning is
displayed on the screen telling you what the Modem Doctor believes is
wrong. Many different error conditions are checked, see the error code
section for a listing. Each register contains a Mnemonic for each one
of the data bits. Bits that are a logic low ( = 0) are displayed in
low intensity, those that are a logic high (= 1) are displayed in high
intensity. On a color monitor, this is easy to see. On a Mono Monitor,
make sure you have the brightness and contrast controls properly
adjusted to see the difference between the two status conditions.
(Note: Version 4 allows you to pick your own custom colors, however, it
will still alternate between high intensity and low intensity shades of
the colors you select for the uart register displays).
Page 23
Modem Doctor 6.0 Technical Reference Manual
-[ Line Control Register ]----------
| DLB STB STP EPS PEN STB WS1 WS0 |
------------------------------------
This register controls many of the setup characteristics of your uart
and how it behaves to your PC. This register is responsible for setting
baud rate, setting break code transmission, parity, and the length of
the serial stream word.
DLB Divisor Latch Used to access the baud rate registers.
Should be low for all displays.
STB Set Break If high, the modem transmits a
break signal, should be low normally.
STP Stick Parity Should be low normally
EPS Even Parity select High = even parity..should be low
normally.
PEN Parity Enable Enable parity checks, should be low
normally.
STB Stop Bits Number of stop bits, should be low
normally to indicate 1 stop bit character
only.
WS1 Word Length Select 1
WS0 Word Length Select 0 These two bits are used to determine the
serial data word length. Both should be
high normally to indicate a length of 8
bits.
Page 24
Modem Doctor 6.0 Technical Reference Manual
-[ Line Status Register ]-----------
| TSE THE BI FE PE OE DR |
___________________________________
The line status register reports error conditions that might have
occurred between the PC and the Uart.
TSE TX Shift Register A high indicates that all characters
sent to the Uart were transmitted. Should
be High Normally.
THE TX Holding Register A high indicates that the Uart can now
Empty accept a new character from the PC.Should
be high normally.
BI Break Interrupt A high indicates that a break signal was
received. Should be low normally.
FE Framing Error A high indicates that a serial data train
did not have a proper stop bit. Should be
low normally.
PE Parity Error A high indicates that the received serial
data's parity did not match what the uart
was programmed to receive. Should be low
normally.
OE Overrun Error A high indicates that a character in the
receive buffer was not read by the PC in
time, and another character overwrote and
destroyed it. Should be low normally.
DR Data Ready A High indicates that a character has
been received and is ready to be read by
the PC from the receiver buffer. Should
be low normally for these test, but can
vary while data is coming in from the
modem.
Page 25
Modem Doctor 6.0 Technical Reference Manual
-[ Modem Control Register ]---------
| LP OT2 OT1 RTS DTR |
------------------------------------
The Modem Control register handles all of the interfacing between the
Uart and the modem. Only 5 signals are needed for this level of
control.
LP LOOP A high indicates that the loopback
digital diagnostic has been activated.
This feature only works with 8250 uarts
or those that are 100% compatible. This
is used in the digital loopback test.
OT2 OUT 2 A high enables the uart to generate
interrupts. A low disables interrupts.
This should always be high for testing
purposes.
OT1 OUT 1 On 100% compatible modems, a high on this
pin will perform a hardware reset of the
modem in some compatible designs.Normally
this is a low.
RTS Request to Send A Handshaking signal that is used by some
modems to enable data transfer between
the modem and the Uart. Should be high
for testing purposes.
DTR Data Terminal Ready A Handshaking signal that is used by some
modems to enable data transfer between
the modem and the uart. Should be high
for testing purposes.
Page 26
Modem Doctor 6.0 Technical Reference Manual
-[ Modem Status Register ]----------
| RLS RI DSR CTS DRD TER DDR DCS |
------------------------------------
The Modem Status Register returns the status of the control signals
sent by the modem to the Uart.
RLS Received Line Detect A high indicates that a carrier has been
received by the modem. When the Analog
tests are run, this should be high. If
it is not, it is still possible that the
modem is ok, however the cable from the
modem to the uart (for externals only)
might not have a complete circuit due to
faulty wiring of the RS-232 cable. This
signal is very important for some
communications programs to operate
properly.
RI Ring Indicator A high indicates that the modem detected
a ringing signal on the phone line.
DSR Data Set Ready This is part of the DTR/DSR Handshaking
pair that is used by some modems to
control the flow of data. Normally it
will be a high.
CTS Clear to Send This is part of the RTS/CTS Handshaking
pair that is used by some modems to
control the flow of data. Should normally
be a high.
DRD Delta Received Line Signal Detect. A high indicates that
the Received Line Signal has changed
state. Some communications programs use
this also as an indication that a carrier
was detected by the modem.
TER Trailing Edge
Indicator A high indicates that the Ring Indicator
changed state. Some communications
programs use this as an indication that
the phone has rung.
Page 27
Modem Doctor 6.0 Technical Reference Manual
DDR Delta Data Set Ready Indicates that the DSR signal has changed
state.
DCS Delta Clear to Send Indicates that the CTS signal has changed
state.
If a 8250-B / 16450 or 8250A Uart was detected, the following is
displayed;
-[ Interrupt ID Register ]----------
| ID1 ID0 ITP |
------------------------------------
The Interrupt ID Register is used to tell the CPU what kind of
interrupt occurred.
ID0 Interrupt Bit 2
ID1 Interrupt Bit 1 These two signals are a binary code which
can be read by the CPU to tell what kind
of interrupt occurred. Both bits high
indicates an error occurred or a break
interrupt wasreceived. Bit 2 high and
Bit 1 low indicates that data is ready to
be read by the CPU. Bit 1 high and bit 2
low indicates that a ring signal or
carrier signal was received. For testing
purposes, only the Data ready mode is
used.
ITP Interrupt Pending A Low indicates that an interrupt has
occurred. For testing purposes, this
should always be high if data was
successfully read by the Modem Doctor. If
it is not, then an interrupt did occur
but the CPU did not respond. Suspect a
problem with an interrupt controller chip
or the uart interrupt generating
capability. If a 16550 or
16550A(x) chip was detected, the register
selection uses the enhanced register
display.
Page 28
Modem Doctor 6.0 Technical Reference Manual
If a 16550A(x) was detected, the appearance of the Interrupt ID
register changes and the following is displayed;
-[ Interrupt ID Register ]----------
| FEM FEL ID2 ID1 ID0 ITP |
------------------------------------
FEM FIFO Enable MSB This is the most significant bit of the
FIFO register. It should be high on both
the 16550 and 16550AN if the FIFO
buffering is enabled. Normal Modem Doctor
status shows this as a logic low (unless
testing is performed).
FEL FIFO Enable LSB This is the least significant bit of the
FIFO Register. It should be a high on the
16550A(x) only! The 16550 always displays
this bit low. Again, the normal Modem
Doctor status will show this as a logic
low (unless testing is performed).
ID2 FIFO Timeout This signal is raise high by a 16550A(x)
to indicate that it is holding characters
for the CPU to read, but it is less than
what the CPU has requested to be
interrupted for. The FIFO buffer can be
as deep as 14 characters. If only 8 have
come in, the CPU will not be interrupted.
The 16550A(x) is programmed to interrupt
after a period of time has gone by during
which no characters were received in
order to force the CPU to get what it is
currently storing. Normal operation
should keep this line low, if it
is high at any time there is a problem
with the uart.
Page 29
Modem Doctor 6.0 Technical Reference Manual
-[ Interrupt Enable Register ]------
| ESI ELI ETI ERI |
------------------------------------
The Interrupt Enable register is programmed to allow certain types of
interrupts to occur.
ESI Enable Status A high causes the uart to generate an
interrupt whenever RI or RSD signals in
the Modem Status register go high. Should
be low for testing.
ELI Enable Line A high causes the uart to generate an
Interrupt whenever an error or break
interrupt is detected in the Line Status
Register. Should be low for testing.
ETI Enable Transmitter A high causes the uart to generate a
holding register interrupt whenever the
THE signal of the empty interrupt line
status register goes high. Should be low
for testing.
ERI Enable Receive Data A high causes the uart to generate a
ready interrupt whenever data is ready to
be read by the CPU. The DR line of the
line status register going to a high
state generates this condition. This
signal should be high for testing
purposes, since it is the only interrupt
needed by the Modem Doctor.
Page 30
Modem Doctor 6.0 Technical Reference Manual
-[ Interrupt Mask Register ]--------
| IQ7 IQ6 IQ5 IQ4 IQ3 IQ2 IQ1 IQ0 |
------------------------------------
The interrupt mask register is contained on the 8259 priority interrupt
controller on your computer's motherboard. Each one of these hardware
interrupts corresponds to an external device.
IQ7 Printer Interrupt (can be used by Custom COM5 or COM6)
IQ6 Floppy Disk Interrupt
IQ5 Hard Drive interrupt (can be used by Custom COM7 or COM8)
IQ4 COM1 Interrupt (also COM3)
IQ3 COM2 Interrupt (also COM4)
IQ2 reserved by IBM (Gateway to second 8259 on AT's)
IQ1 Keyboard Interrupt
IQ0 Timer Interrupt
Under Normal Conditions, IQ0,IQ1 and IQ6 should be lit, along with IQ4
if testing COM1 (or COM3) or IQ3 if testing COM2 (or COM4). In
addition, other lines could be lit depending on your computer. The only
line the Modem Doctor looks for is the IQ4 or IQ3 lines (depending on
which serial port you are testing).
-[ Interrupt Mask Register ]--------
| I15 I14 I13 I12 I11 I10 IQ9 IQ8 |
------------------------------------
If you are using an IRQ line above 7, this alternate display is shown
above. In normal use, only IRQ9, IRQ10, IRQ11, IRQ12, and IRQ15 are
free to be assigned to other hardware devices.
I15 - free, normally assigned to BIOS
I14 - used by hard disk controllers
I13 - Redirected NMI interrupt or coprocessor
I12 - free, normally assigned to BIOS
I11 - free, normally assigned to BIOS
I10 - free, normally assigned to BIOS
IQ9 - Redirected IRQ 2
IQ8 - Real time clock interrupt
Page 31
Modem Doctor 6.0 Technical Reference Manual
Although the status of all interrupt lines are shown, only 9,10,11,12
and 15 can be accessed by Modem Doctor.
4.30 Handshaking tests
----------------------
Just like a handshake between friends, the Modem Doctor tests to see
that your computer uart and the modem are properly exchanging
handshaking for data communication. There are 4 tests for proper
operation. Two of them are static (meaning that the control lines
between the computer and modem are raised and lowered), and two of them
are dynamic (meaning that the modem is placed in a self-connect mode
and data is sent to the modem).
Static test results can vary modem to modem. Some modems echo control
line toggles...in other words, if DTR goes low, so will DSR. Other
modems do not. So, it would be considered normal for a modem *not* to
pass this particular test. However, if you wish to test a cable, and
at the end you place a loopback plug, then the static echo test should
pass. Otherwise, your cable is wired incorrectly!
The static RTS/CTS tests are conducted the same way, however this
handshake pair is important for high-speed modem users. Again, working
through a modem, you will see a failure (unless using the modem for
Synchronous Communications, something most users never do). However,
with a loopback plug, you should see the static test pass. The static
tests above are designed to show that your cabling to the modem is
proper, when verified with a loopback plug. However, these tests cannot
verify if your modem microprocessor will act properly on this
handshaking information.
New in version 6.0, DTR and RTS pulse tests are added to aid you in
finding problems with cables or connectors. If DTR is selected, the DTR
line is raised and lowered every 2 seconds. If RTS is selected, the RTS
line is raised and lowered every 2 seconds. Using modem indicator
lights or Modem Doctor's status display and a loopback cable, you can
find out if a cable has the proper wiring for handshaking signals. With
some simple test equipment (like a logic probe), you can use this mode
to trace a problem to its source.
The dynamic tests force your modem to self-connect. Next the RTS (or
DTR) lines are dropped (depending on which test is run). Then 20
characters are sent to the modem. If the modem is properly using
handshaking, no characters will be sent back to the computer. If any
Page 32
Modem Doctor 6.0 Technical Reference Manual
characters are received, then your modem ignored the handshake
request. In most cases, if the static tests passed but the dynamic
failed, it means your modem needs to be setup for testing.
The Modem Doctor offers you the choice of programming your modem to
test its ability to handshake. Using this mode requires that you have
selected the proper modem driver from the Carrier mode before hand,
otherwise incorrect commands will be sent to your modem. If you know
you have the right driver, then you can go ahead and see if your modem
is set properly or not.
None of the commands sent to the modem are permanently stored in the
modem. If the Modem Doctor enables handshaking and it works, but your
setup in the modem does not work, then you have to reprogram the modem
yourself. You can use the Interactive terminal mode to do this if you
wish without leaving the Modem Doctor. Also, in order for these tests
to be valid you must be using a modem that supports RTS/CTS and
XON/XOFF handshaking modes of operation.
4.30A S-Register Displays
-------------------------
The most important S-registers are the first 16. These determine many
of the abilities and options that your modem can use during
communication sessions. However, today's high-speed modems have many
more registers, in fact some have up to 200! After the first 16, no
one really follows any sort of "plan", each modem manufacturer is
pretty free to do what they wish. From a diagnostic standpoint, this
is a nightmare scenario. Even with the same manufacturer, different
ROM versions change how these registers are used. The "compromise"
position is allow for the viewing of S-registers in groups of 10. You
pick the starting register, and the next 10 are displayed. Values of 0
(appearing slowly) usually indicate that the selected register doesn't
exist. As with all Modem Doctor routines, you cannot change any of
these S- register settings, unless you go into the Interactive Mode and
use the AT commands that allow you to change register settings.
Page 33
Modem Doctor 6.0 Technical Reference Manual
4.31 Carrier Tests
-----------------
╔[ Modem Tests ]═══════╗
║ Carrier Self-tests ║ <- Simulate on-line tests
║ Burst Mode Self-Test ║ <- New, Sends data in Bursts
║ Burst Signature Test ║ <- New, Sends a modulation test pattern
║ Burst Alt Data Test ║ <- New, Sends an alternating pattern
║ Select modem drivers ║ <- Pick a modem driver
║ Help with carrier test ║ <- Help
║ Return to main menu ║
╚════════════════════════╝
The carrier test section is used to test your modem's ability to detect
a carrier, demodulate signals on the originate frequency and answer
frequency, and to properly control the RLS (Received Line Signal) and
CD (carrier detect) modem status/control lines. All of these are
essential elements for good data communication. When you select
carrier tests, a pulldown menu is displayed. Option 1,2,3 and 4 prompts
you to run different carrier tests (see types of carrier tests later in
this section). Option 5 offers you the chance to select a custom modem
driver. Option 7 allows you to return to the main menu (pressing
ESCAPE or a left/right arrow key also does the same thing as option
7).
4.31 Modem Driver Modules
--------------------------
Although your AT instruction set modem is based on a defacto standard
developed by Hayes, there are several "supersets" of this instruction
set for various modems. Currently, the Modem Doctor supports 9
different software Modem Drivers for testing; Generic Compatible, &T0
(CCITT V.54 test sequence) instruction set, Hayes 9600,14400, Hayes
28800 bps, Courier HST/V.32, Sportster 14440, USR 28800 bps, ZyXEL
1496 E and E+, Practical Peripherals, Intel, and Sierra Semiconductor
modems. If your modem is not included, you can easily pick a driver
that will work for you following these simple guidelines;
a) If it is a high speed modem (over 2400 bps), select Hayes 9600.
b) If it is a 2400 bps modem, select &T0 instruction set.
c) If these do not work, use Generic driver.
When the Modem Doctor is running the setup mode, it queries the
microprocessor for its type identification. Based on this information,
a modem driver is selected for use. Basically, all 2400 bps and lower
Page 34
Modem Doctor 6.0 Technical Reference Manual
modems are assigned the Generic Driver, and all supported 9600 and
higher modems are assigned their proper ID, based on the information
your modem returns via its ROM code. If Modem Doctor knows its a
high-speed modem but can't determine the type, the Courier HST/V.32
driver is assigned by default. The &T0 instruction set modems, (those
that use the CCITT V.54 test sequence), are tested in a different
manner with a different set of instructions. Previous versions of the
Modem Doctor would automatically switch to the &T0 instruction set if
the modem was a 2400 bps modem and if it failed to properly detect a
carrier during testing. This function is still built into the Modem
Doctor, but you can optionally select the &T0 driver yourself before
beginning your testing in order to speed things up. Auto-selection
added about 10 seconds a pass that can now be eliminated. If you
desire to select the &T0 set for your modem instead of letting the
Modem Doctor do it for you.
NOTE: Don't select this instruction set unless you know for sure that
your modem is 100% instruction set compatible with the Hayes 2400 or
2400B. Hayes 1200 bps and lower, and almost all other 2400 bps and
lower modems use the Generic Driver. You will find that 99% of all
modems will work properly with this assignment, in fact, if you
disable all data compression and Fixed link assignments from any high
speed modem (including 28800+'s), the generic driver will test these
modems properly also! This allows people with high-speed modems that
are not supported currently to use the Modem Doctor for testing. If you
have a high-speed modem that is not supported, you can use a
Combination of the Manual mode and the Generic Modem Driver to test
these modems also.
All of the modem drivers used by the Modem Doctor are built into the
program, however version 6.0, like earlier versions, has the ability
to recognize an external driver file. If the Modem Doctor finds and
external driver file when it starts, it uses those command instead of
the built-in drivers. The format for drivers has changed between
version 4.0x, 5.0, 6.0 and any future drivers will be released in all
formats for users of all versions of Modem Doctor.
What purpose is there in external drivers? Well, first off, if a new
modem command set is adopted, or a bug is discovered in one of the
built-in modems, you will be able to receive a free driver file from
any bbs or by mail. This means that your copy of the Modem Doctor can
stay current for some time to come. The second reason for external
drivers is to allow you, if you desire, to have us custom design a
Page 35
Modem Doctor 6.0 Technical Reference Manual
modem driver for a particular modem. These drivers would be designed at
a modest charge and would be for your use only. In any case, external
drivers insure your investment in the Modem Doctor.
4.32 Types of Carrier Tests
-----------------------------
The carrier tests are designed to test your modem under actual use
conditions (minus a telephone line). Your modem uses two different
frequency bands for communication. These are the originate and answer
frequencies. AT Compatible modems can select these under command of the
Modem Doctor via the appropriate Modem Driver module. So called "Dumb"
Modems have front-panel switches that you must use to properly test the
modem. The Modem Doctor supports both types of tests, one of which is
automatically selected by the Modem Doctor depending on the hardware it
detects.
4.33 AT Instruction Set Tests
-----------------------------
If you selected the Test Modem/Uart option from the setup menu and a
Modem with a compatible microprocessor was detected, or if you have
forced the Modem Doctor to use the AT instruction set tests via the
hot-key ALT-F, the Modem Doctor will test the originate and answer
frequencies of your modem automatically. Before running this test, make
sure you have disconnected the modem from the telephone line, because
the modem will go off-hook and sometimes the dial-tone will interfere
with testing. If you press ESCAPE in this menu, you return to the main
menu. Any other key continues. You will be prompted to enter a "Loop
Count". If you select a count of 1, you will be able to hear the
connecting tones on your speaker. If you select a count greater than 1,
then the speaker is turned off.
After you make your selection, two windows will open on your screen.
One contains data that is being sent to the modem, the other data that
has been received by the modem. All of the characters from binary 0 to
binary 255 are transmitted. Some of these will look strange because
they are characters of the extended character set. The Modem Doctor
takes a great deal of care in preserving the normal condition of your
modem before testing, and sends all the character strings necessary to
test without disturbing any non-volatile memory settings. If you have
an external modem, you will see the data being sent and acknowledged
before testing begins.
Page 36
Modem Doctor 6.0 Technical Reference Manual
While it is setting up, the Modem Doctor tells you what is going
on, including that the modem is reset, that commands are being sent,
and that it is waiting for a carrier. The Modem Doctor waits up to 15
seconds for either the word CONNECT or the RLS signal to go active. If
this does not happen, the Modem Doctor switches to the &T0 command set
that is used by Hayes 2400's and several other clones. This test is
just as valid as a full carrier test for these types of modems, and
verifies both the modem and the uart signal paths as does the
traditional carrier test. If you switch to this mode, you will be
informed via the screen and the message "CCITT V.54 " will be
displayed. Also, if you have an external modem, you might see the
"modem ready" light flashing throughout this test. If you selected the
&T0 instruction set yourself from the Modem Driver selection menu, then
the &T0 set will be used exclusively. This selection is mainly a
convenience for some users (because the auto-detection method takes a
little longer), however it will not test any other kind of modem
properly. If you are unsure, let the Modem Doctor figure it out for
you. Note, if you select more than 1 iteneration and change you mind,
press ESCAPE anytime during the test. At the next available loop-repeat
time the Modem Doctor will abort testing and give you your current
status.
4.34 Uart or Dumb Modem Tests
-----------------------------
This test works the same as the AT instruction set modem test with two
main exceptions. First, Your modem must be able to generate a carrier
on its own on the answer and originate frequencies. Most external
"dumb" modems have front panel switches for this function. Most are
marked as AL (for Analog Loopback). If your modem can generate this,
answer yes and follow the prompts on the screen. All testing is
performed as above, except you setup the modem instead of the Modem
Doctor using its modem driver software. Whenever the Modem Doctor is
working with the micro in the "Off-line" mode, the dumb mode tests are
used. You are prompted if your modem can generate a carrier. Answer yes
to start the testing. You are then told to place your modem in the
analog loop mode and force the carrier detect on. Most dumb modems will
light the CD light on the front panel of the modem when you press the
AL switch. This CD light sends a RLS (Received Line Signal) status
word to the uart. The Modem Doctor looks for this before it will allow
testing in this dumb mode. If your modem cannot generate a carrier
indication, you can still test an analog loopback using the loopback
function in the registered version and select the analog loopback tests
(this is explained later in the documentation).
Page 37
Modem Doctor 6.0 Technical Reference Manual
4.35 Error Messages
-------------------
If A RLS (Received Line Detect) signal is not received before testing
begins, this indicates that either a carrier is not being generated (or
properly received in self test) by the modem, or an RS-232 Cable to an
external modem is improperly wired. Although RS-232 loops will work
fine without an RLS signal being wired, there is no way for the Modem
Doctor to detect on a dumb modem if a carrier was generated. On a AT
instruction set modem, the Modem Doctor alternately looks for the word
"CONNECT" to be sent from the modem if there is no RLS signal
available. If you wish your all of your communications programs to work
properly, you should get a cable with this signal wired. If an error is
detected during the analog test, the error counter is incremented.
There are two error counters; one is used for the originate mode, and
the other for the answer mode. If you receive an error, it could be due
to a problem with a uart or a modem at a certain baud rate. Try testing
at other baud rates to determine if the errors repeat. Also errors
could occur on only the originate or the answer frequency. This is more
prevalent at higher baud rates. Finally, make sure that the modem was
disconnected from the phone line before testing. The dial-tone
interferes with some modems. One other possibility exists, that
there could be a problem with a cable or interrupts not properly being
generated or properly handled by the CPU. Run the digital/loopback
tests and if the problem repeats, you might have a bad uart or
motherboard problem. Although it is unlikely, if power is removed from
the modem or a cable falls off (or who knows what else), the Modem
Doctor waits a pre-determined period of time for an interrupt to occur.
If none is detected, the warning "Modem Queue Failure" or "Modem
Receiver Failure" will be displayed in one of the windows. These might
also be displayed if the modem never acknowledged a character being
transmitted, or never sent one back. Again, the only conditions that
would cause this would be a cable being removed between the modem and
the uart, the power being removed to the modem, or the modem "blowing
up" via some unnatural means during the test. If the RLS (Received Line
Signal) is constantly active from the modem, the Modem Doctor will tell
you that you might have a problem with a cable or the modem and that
the test results might not be valid. Reason for this is that the Modem
Doctor never did detect a carrier because the uart said it was already
there. This can be traced in nearly all cases to the modem. Change the
setting of the modem to let the carrier Detect (CD) act normally. It
should never be set to be forced on for a PC. If so, not only the Modem
Doctor, but other communications programs will not operate properly.
Page 38
Modem Doctor 6.0 Technical Reference Manual
4.36 IRQ Failures
-----------------
The Modem Doctor will allow you to test a modem that might not have a
proper IRQ assignment. Such errors in jumper settings on your serial
cards or internal modems are tough to trace. If you see this error
message displayed, it means that your modem is receiving signals
properly, but it cannot communicate back to the computer over normal
interrupt assignments. This normally results from using an IRQ line
reserved for one comm port with another. See the section above about
IRQ's if you get this error, and use the table above as a guide to how
to correct your problem. IRQ failures will be displayed in the setup
mode, the Regs Quick Uart Diagnostics mode, the Analog Loopback mode
and the Carrier Tests mode.
4.38 Burst Mode Tests
----------------------
Burst Mode tests have been added to Modem Doctor. Unlike the carrier
self tests (which transmit 1 character at a time and wait for the
character to be received), the Burst Mode tests send all characters at
once, and then clock how long it takes for these characters to be
received. There are 3 different Burst Mode Tests.
1) Burst Mode Self-Test - All 255 characters are sent in a burst.
2) Burst Signature test - designed to detect shift register and
modulation problems.
3) Burst Alt Data test - another test pattern used for similar
purposes as test #1.
Modem Doctor clocks how long it takes to receive them all. This
information is displayed in a bar between windows like this;
--------------------------------------------------------------------
16550A TR14 TX Time = 1.21sec 210 cps RX Time = 1.00sec 255 cps
--------------------------------------------------------------------
Between the windows (sent to and received from modem),Modem Doctor
calculated the send and return time and approximate characters per
second. Also, since this particular test was run on a computer with a
16550AFN uart, Modem Doctor also displays the buffer trigger level
(14). A 16550AFN uart will usually return characters faster than a
regular uart. Transmit times however depend on the type of computer
more than the type of uart. Faster machines can send data faster.
Page 39
Modem Doctor 6.0 Technical Reference Manual
After the test runs, you will see this window;
╒[ Burst Test ]══════════════════════════════════════════╕
│ The results of the burst mode data tests shows that │
│ approximately 465 characters per second can be safely │
│ moved between modem and uart without handshaking │
│ │
│ You do not need any handshaking at this DTE speed │
│ Press Any Key to Continue │
│ │
└─────────────────────────────────────────────────────────┘
This value is calculated by adding the receive and transmit times
together. If Modem Doctor calculates the round trip time to be more
than it should be at the chosen baud rate, you will see this message
instead;
╒[ Burst Test ]══════════════════════════════════════════╕
│ The results of the burst mode data tests shows that │
│ approximately 210 characters per second can be safely │
│ moved between modem and uart without handshaking │
│ │
│ You will need some sort of handshaking at this speed │
│ Press Any Key to Continue │
│ │
└─────────────────────────────────────────────────────────┘
At 2400 bps, 240 characters are transmitted each second. If your
computer can only handle 210 cps total, then your computer could drop
characters. Therefore hardware handshaking is needed. Now, no computer
made will have this problem until you exceed baud rates of 4800 bps. At
9600 bps, 960 characters need to be received per second. If your
computer can only handle 930, you will need handshaking. At 19200bps,
you need to be able to handle 1920 cps. Most computers under 50mhz
cannot do this without handshaking.
The Burst Signature Mode tests are useful in detecting Modem or serial
link modulation/demodulation problems. As with the previous Burst test,
Modem Doctor calculates the tx and rx times. However, only one
character is sent, an A5 hex or . This character in binary is broken
into two halves; 1010 (A) and 0101 (5). Since modulation and
demodulation in modems depends on correctly phasing changing data
Page 40
Modem Doctor 6.0 Technical Reference Manual
packets, this A5 character swings the modem between worst case
repeating bit states. If you find errors here, you may have located
the source of your "line noise" problems.
Burst Alt Signature Test - Another useful test in determining the
condition of the modulator/demodulator in a modem. In this case, two
characters are alternated; the or A5 hex and the letter Z or 5A hex.
The modem sees these data bits 1010 (A) 0101(5) 0101 (5) 1010 (A).
Additionally, Modem Doctor stresses the first few data packets by
sending the sequence 5A A5 5A A5 5A A5 A5 5A 5A A5 A5 5A A5 5A. Many
times, initial packets of data are garbled (beginning of a line).
Again, if you have a failure, this may be the source of your
intermittent line noise.
The analog burst tests in the registered version work in the identical
manner, except no modulation from a modem is used. This enables you to
test the shift registers and serial/parallel decoder features of your
serial port.
4.4 Loopback Tests
-------------------
The loopback tests were designed for two purposes. First, to test an
RS-232 loop including cables that are properly terminated with a
loopback plug, and second, to run a digital loopback test on 8250 and
100% compatible uarts. Additionally, the analog portion of this test
can be used to test a dumb modem that does not generate a CD (carrier
detect) signal when the AL switch is thrown on the front panel.
Selecting loopback and pressing return fetches this menu;
╔[ Loopback Tests ]═══════════╗
║ Analog Loopback using a PLUG ║ +<- test Uart & Cables
║ Digital Loopback 8250 UARTS ║ +<- Uart test only
║ Burst Mode Self-Test ║ +<- New, Sends data in a burst
║ Burst Signature Test ║ +<- New, Sends Burst signature data
║ Burst Alt Data Test ║ +<- New, Sends alternate burst data
║ Loopback Plug Technical Data ║ +<- How to build a
║ Help with Loopback Tests ║ loopback plug
║ Return To Main Menu ║
╚═══════════════════════════════╝
+registered version only
Page 41
Modem Doctor 6.0 Technical Reference Manual
Analog loopback tests require that you attach a Loopback plug either to
the back of the Comm port connector on your computer, or at the end of
a RS-232 Cable. This test is designed for external modems, however you
could run this on an internal modem as a test of the command channel's
ability to receive characters. Caution should be used on internal
modems, for some will fail this test. If this happens, don't be
concerned. However this test should NEVER fail with a loopback plug,
unless you were trying to drive the line at an excessive rate.
Remember, the faster the data rate, the shorter the lines should be,
and the faster the computer should be to handle it. With a loopback
plug on the back of the serial port, speeds of 56000 bps should run
fine even on a slower PC (as long as it is not multi- tasking). If you
experience problems at 56000 but not at 19200, chances are your
hardware is fine (if you are using an 8250-B). In extensive testing
with PC's at 4.77 mhz, the original 8250-B performed flawlessly at
56000 bps. Dumb modems can use this test also (as explained above and
in the section carrier tests). Digital loopback tests require that you
have an 8250-B, 8250A,16450, 16550, 16550A(x) or other 100%
compatible uart in your system. These uart's have built-in diagnostics.
If you are using a PC compatible internal modem or a PC compatible
serial card, then you will definitely have a compatible uart installed.
There is a design difference between the 8250-B and other compatible
chips in this series. Some of the differences were explained above, but
the important difference for the loopback test is the way the different
uarts will respond. The 8250-B allowed its OUT2 signal to become
active during loopback testing. The OUT2 signal is used by PC
compatible machines to gate the interrupt signal off of the serial
board (or internal modem). Later designs (8250A, 16450, 16550,16550AN)
tri-stated this line. As a result, the self-test diagnostics will not
allow the interrupt signal to gate off the board and interrupt the CPU.
This would cause all digital loopback tests on these improved chips to
fail. The Modem Doctor handles this by a brute-force read of the uarts.
By sampling the Interrupt ID register, the presence of an interrupt is
detected, then the receiver buffer register is read. This method is not
as efficient as a true interrupt-driven test would be, but it is
accurate. The Uart does generate the ID for an interrupt, the character
is pulled out of the uart. In version 4.0, the speed of this routine
was significantly enhanced so that it runs approximately at the same
speed as a true interrupt driven 8250-B.
Page 42
Modem Doctor 6.0 Technical Reference Manual
When running this test on an 8250-B, you will see the true speed of the
interrupt handling and processing. On others, you will see the
brute-force method. Each is an accurate test of the uart and valid at
any baud rate selected. If this test does not run, but yet the analog
test and all other tests run fine, it means that you do not have a
compatible uart installed. Some uarts that are not 8250's have a
problem entering this mode properly. If the test does not start, do
not be alarmed, because only 8250 and true compatibles will pass this
test. However this test will NEVER start and then fail unless you do
have a hardware problem. You should never pick up a character error
using this test. If you do, you have a bad uart or CPU motherboard
problem. Both tests open up windows (like the analog test) and send and
receive characters to the uart. If you wish to know how to build a
loopback plug, select the Loopback Plug technical data section.
Pressing ESCAPE or the left/right arrows is the same as Option 4 and
returns you to the main menu.
4.41 Loopback Test Error messages
---------------------------------
Essentially the error messages for these tests are simple. In the
loopback test mode, if a character is received incorrectly, the error
counter is advanced and a report is issued at the end. If the analog or
digital tests fail to receive or transmit characters, the messages will
explain that either the transmit queue, the receive queue failed, or
that the uart did not respond to the tests. The last message may be
displayed if you have a non-compatible uart. If the uart fails to setup
properly for the digital loopback test (does not program its registers
properly), a warning is displayed that there is an error in one of
the registers. The message will explain what is wrong and what it
expects. Also, if you are using the wrong IRQ line for your comm port,
you will receive an IRQ failure error. See the warning message section
for more details.
4.42 Burst Mode Tests
----------------------
Like the Carrier mode, Burst Mode tests have been included in the
Loopback tests. Unlike the regular analog loopback tests (which
transmit 1 character at a time and wait for the character to be
received), the Burst Mode tests send all characters at once, and then
clock how long it takes for these characters to be received. Please
refer section 4.38 for a description of these tests. Used with a Uart,
these burst mode diagnostics are used to test serial ports and do not
Page 43
Modem Doctor 6.0 Technical Reference Manual
use any modem modulation techniques. However, burst tests will detect
bad buffer chips or serializes in a uart just as it detected modulation
problems in a modem. As with the carrier mode tests, Modem Doctor
calculates the system throughput and displays it in this manner;
--------------------------------------------------------------------
16550A TR14 TX Time = 1.21sec 210 cps RX Time = 1.00sec 255 cps
--------------------------------------------------------------------
Between the windows (sent to and received from modem),Modem Doctor
calculated the send and return time and approximate characters per
second. Also, since this particular test was run on a computer with a
16550AFN uart, Modem Doctor also displays the buffer trigger level
(14). A 16550AFN uart will usually return characters faster than a
regular uart. Transmit times however depend on the type of computer
more than the type of uart. Faster machines can send data faster.
After the test runs, you will see this window;
╒[ Burst Test ]══════════════════════════════════════════╕
│ The results of the burst mode data tests shows that │
│ approximately 465 characters per second can be safely │
│ moved between modem and uart without handshaking │
│ │
│ You do not need any handshaking at this DTE speed │
│ Press Any Key to Continue │
│ │
└─────────────────────────────────────────────────────────┘
This value is calculated by adding the receive and transmit times
together. If Modem Doctor calculates the round trip time to be more
than it should be at the chosen baud rate, you will see this message
instead;
╒[ Burst Test ]══════════════════════════════════════════╕
│ The results of the burst mode data tests shows that │
│ approximately 210 characters per second can be safely │
│ moved between modem and uart without handshaking │
│ │
│ You will need some sort of handshaking at this speed │
│ Press Any Key to Continue │
│ │
└─────────────────────────────────────────────────────────┘
Page 44
Modem Doctor 6.0 Technical Reference Manual
4.5 Options Mode
---------------------
╔[ User Options Selection ]╗
║ Interactive Terminal Mode ║ <- A Built-in mini-terminal
║ View FAX Mode Settings ║ <- New, List Current Fax settings
║ View Current Statistics ║ <- Status of all tests
║ Reset Current Statistics ║ <- Reset all tests to 0
║ Print Current Statistics ║ <- Send results to printer
║ Help with these options ║
║ Return to main menu ║
╚════════════════════════════╝
The options mode allows you access to the built-in 16k communications
terminal (Interactive Mode), and the report generator features.
4.51 Interactive Mode
----------------------
As well written as the Modem Doctor is, there exists the possibility
that a modem or a system might not be compatible with the diagnostics.
The manual section allows you to send your own string commands to the
modem, read back data, and in fact you could use this as a
mini-communications program. If you select this mode, a window opens
with the banner Interactive Mode. At the Bottom are listed the
"Hot-Keys" you can use;
ALT-B This opens a window for you to change the baud rate.
Note: if you are on-line with a service this might cause an
error between the computer and the modem. Off-line conditions
should work properly.
ALT-C Clears the screen. This only clears the window of data,
and leaves all your prompts.
ALT-N Add Nulls, this is new with Modem Doctor 5.0, and can be
used to determine if your display adapter is causing
"Interrupt Latency".
ALT-R This displays the Uart registers...handy for real-time
troubleshooting of RS-232 loops.
Page 45
Modem Doctor 6.0 Technical Reference Manual
ALT-H Help..this displays the basic AT Command set instructions
that you could use to control your modem. Note that this is
only a basic set. Some modems have many extensions to this,
so for advanced work, consult your owners manual.
ALT-X Exits the interactive mode and returns to the main menu.
4.51A Testing for Interrupt Latency
-----------------------------------
Interrupt Latency is caused by a hardware device (usually a hard disk
or a video display adapter) taking longer to process a function that
the time it takes to receive a character over your modem. Normally,
interrupt latency is not a problem until you use DTE/DCE speeds over
19200bps. With today's high- speed modems, its not uncommon for people
to be running speeds of 38400 or 57600bps between computer and modem.
Older display adapter, most notably early EGA's with "Auto-detection"
circuitry, cause interrupt latency. The symptoms will range from
loosing characters occasionally to excessive errors when downloading
files.
There is no real test for interrupt latency, because such a wide
variety of situations can cause it. The only "cure" is to acquire a
faster display adapter or a 16550AFN uart. Now, there is a way that
you can use Modem Doctor to verify such an error is happening, and that
is by using ALT-N. When you add nulls, you are telling Modem Doctor to
wait a bit longer inside of a routine that talks to your video adapter,
looking for more interrupts before exiting the display routine. If
adding nulls improves the error rate that you see characters displayed
(while on-line via the Interactive mode to a BBS), then you know you do
indeed have an interrupt latency problem. There are two "short-cut"
keys associated with ALT-N, and they are ALT+ and ALT-. ALT-N prompts
you for a number, while ALT+ adds 1 to that number, and ALT- subtracts
1 from that number.
Page 46
Modem Doctor 6.0 Technical Reference Manual
4.51B View Fax Mode Settings
----------------------------
If you have a fax modem, Modem Doctor will give you more detailed info
on its features than the setup menu initially displayed.
╒[ Fax Modem Information]═══════════════════════════════════════╕
│ Current Fax Class : 0 │
│ Permissible Fax Classes : 0,2,8 │
│ DCE Model Information : U1496E V 6.01 M │
│ DCE Manufacturer : ZyXEL │
│ DCE Revision Number : U1496E V 6.01 M │
│ Auto Answer Mode : DCE answers/auto-determines │
│ Press Any Key To Continue │
└───────────────────────────────────────────────────────────────┘
If your modem is a Class 1, none of this information can be displayed
since the modem lacks the ability to accept T.30 commands. However, if
you do have a Class 2 or higher modem (as most are), you will see the
display above. This information, especially Permissible class faxes and
Auto Answer mode are important for some fax software.
4.52 View Current Statistics
----------------------------
Whenever you log-in a comm port for testing, the Modem Doctor keeps
tabs on how many tests were run, the baud rates that were tested, and
how many errors you accumulated. You can view these statistics by using
this selection. These results are also displayed whenever you quit the
Modem Doctor.
4.53 Print Current Statistics
-----------------------------
If you wish a hard-copy of your test results, just select this option.
You will be able to send this to any one of the printers the modem
doctor finds available or to a file called MDR.RPT.
4.54 Reset Current Statistics
-----------------------------
Use this mode to reset all test results back to zero at any time.
Page 47
Modem Doctor 6.0 Technical Reference Manual
4.6 Setup Mode
--------------
The setup mode consists of 2 sections. The first, the setup modem
section was covered above. Use this to change the serial port under
test, the baud rate, and the type of test to be run.
The second section allows you to select the colors that you wish to
work with while using the Modem Doctor. You can select default colors,
Monochrome (black and white), or create your own custom colors.
If you are using a color monitor, you can use window selections to pick
the colors you like and optionally save them to a file (MDR.CFG). If
you save them, then as long as this file exists, the Modem Doctor will
use those colors in place of the default ones. To return to default,
either erase the MDR.CFG file, or select default colors and save it to
disk. When you enter the color selection mode, you will be presented
with three different windows that will allow you to make legal color
selections.
[ Mdr Color Selection Screen ]
Select from this menu the color of normal window and error backgrounds
Background
Black
Blue
Green
Cyan
Red
Magenta
Brown
Gray
Select from this menu the color of all window foregrounds & sliding
bars
foreground colors;
Darkgray
Lightblue
Lightgreen
Lightcyan
Lightred
Lightmagenta
Yellow
White
Page 48
Modem Doctor 6.0 Technical Reference Manual
If you select two colors the same (or different intensities that are
the same), the Modem Doctor will tell you your selections are invalid.
After you have made your choices, you will be presented with a window
that allows you to save your choices to a file, use the choices without
saving or reselect. If you save them to a file, a file MDR.CFG is
created or updated. When Modem Doctor loads the next time, it will use
these colors again.
4.7 Exit Program
----------------
This is the only way to exit the Modem Doctor. This is necessary
because the interrupt tables and controllers of your PC must be
returned to their original state in order to avoid problems after you
use the Modem Doctor. Pressing Control-C or Control-Break during the
Modem Doctor will cause one of two things to happen. First, it will
ignore what you have done if it is critical that the program not be
interrupted, or second, if it is at all possible to exit without
damage, a window will open telling you that you can Control-Break abort
if you wish..answer yes or no. You can Control-Break during all tests
and at times from menus. If you choose to quit, the Modem Doctor cleans
things up properly and exits to Dos. Please remember this is just an
emergency way of doing an exit. Use the Exit function from the main
menu as the correct way to end the program.
Page 49
Modem Doctor 6.0 Technical Reference Manual
5.0 Error Messages and their Meanings
-------------------------------------
The Modem Doctor, if presented with an error, will make a diagnosis of
the problem. In most cases, this should be enough for you to figure out
what is wrong and go on from there to correct it.
General Program Errors or Warnings
----------------------------------
1) ABORT PROGRAM Control Break Key pressed..Aborting Program Run.
Do you wish to abort? [Y/N] :
- This means you have pressed the Control Break Key sometime
during the program run. The Modem Doctor, unlike most programs,
does not drop to dos with a Control-Break without cleaning up
after itself. Answering Yes will clean up and stop the program.
Answering no keeps the program running at the spot you left off
at.
If you answer Yes, you will see this message;
Flushing Buffers.......Restoring Comm Port and Interrupt Vectors
Program Aborted..all vectors restore.
2) You Must SETUP a COMM PORT first....Press any key to continue
- If you do not select at least 1 comm port when the program first
starts running, you cannot run any tests. This message explains
why.
3) Exchanging COM1 and COM2 Base Addresses in Memory
COM1 Address was %x COM2 Address was %x
COM1 Address now is %x COM2 Address now is %x
Run MDR /X again to exchange again, these changes are gone when
you reboot!
- This messages is displayed when Modem Doctor is run in the
exchange mode (MDR /x).
4) Sorry...but I cant find a modem to use... Use Login Feature to
Manually Log in a comm port.
- The Modem Doctor needs at least 1 comm port installed at a
conventional port address to run. If none are available, you have
to use the manual login mode to start testing. You should never
see this error message with a computer unless it has no serial
ports whatsoever.
Page 50
Modem Doctor 6.0 Technical Reference Manual
5) Resetting modem to your default settings...please wait
- Whenever you exit Modem Doctor and a microprocessor-based modem
was detected, it will clean up after itself and restore your modem
to initial settings. Uart only tests do not display this message.
6) Your foreground color equals background..please retry
7) Your foreground low intensity equals background, please retry
- These messages are displayed when you make color selection
choices that would not be proper for the type of display monitor
you are using.
8) Warning..I could not create the MDR.CFG file. No colors saved to
disk.
- Modem Doctor could not save the file to disk, perhaps there is
no more space on the disk or the disk is write-protected.
9) Warning..I could not read the MDR.CFG file. No colors read to disk
- You asked Modem Doctor to load the color configuration, however
there was none found on your disk or in the current working
directory.
Setup Mode Diagnostics
-----------------------
1) No Response...resetting modem microprocessor ...attempt #%d
- The Modem Doctor tried sending a simple AT command to your modem
but it did not respond with a valid answer.
2) Modem microprocessor command mode not detected
- The Modem did not respond to a valid, simple AT command either
because it is on-line, jammed, or not completely compatible.
3) Modem microprocessor command bus active
- The Modem Doctor received a correct response from the modem and
placed it into the command mode.
4) Software reset initiated
- A software reset clears all test registers and resets the modem.
5) Modem microprocessor memory tests OK
- The Modem Doctor instructed your modem to run a self-test of its
RAM/ROM contents. It responded successfully.
Page 51
Modem Doctor 6.0 Technical Reference Manual
6) Modem microprocessor memory may have a problem
- The Modem Doctor instructed your modem to run a self-test of its
RAM/ROM contents and did not receive the proper response. Your
modem may or may not have a problem depending on the results of
all the rest of the testing. If all other tests are ok, chances
are your modem might have a memory problem. If other tests fail,
it could be because your modem is not completely compatible.
7) Modem ID reports a 1200 bps modem installed
Modem ID reports a 2400 bps modem installed
Modem reports a 9600+ bps modem installed
Modem reports a 9600 /1440 bps modem installed
- All of these messages are based on receiving correct product
codes from your modem. Some modem manufacturers however do not
place valid product codes in their modems, so it is possible that
you might see the Modem Doctor give you the incorrect type of
modem. This does not affect testing, however it does affect the
type of Modem Driver that is automatically selected. You can
override automatic selections from the Carrier Menu by selecting
the proper driver for your modem.
8) No modem ID received...using Generic driver
- No product code was received, so defaults are being used.
9) Modem microprocessor accepts setup commands
Modem microprocessor did not accept setup commands
- The Modem Doctor sends setup commands for all of its tests to
your modem. If they were not received properly, you get an error
message.
10) An 8250-B Uart has been detected
A 16450 / 8250A Uart has been detected
A 16550AN/AF/AFN Buffered Uart has been detected
A 16550 Non-buffered Uart has been detected
- The Modem Doctor programs uarts differently depending on the
type and the test running. This will tell you what type of uart
chip you have installed in your serial port.
Page 52
Modem Doctor 6.0 Technical Reference Manual
11) Modem Control Register reading show that either the LOOP, OUT2,
DTR, RTS did not set properly to test. OUT2 and DTR are essential
for proper-functioning communications. LOOP is necessary for the
digital test to run.
-Either the Modem Control Register is bad, or their is a problem
with the serial port or modem.
12) Modem Status Register readings show that there is no status coming
back from the modem to the Uart. Neither RTS/CTS or DTR/DSR Pairs
are active. Most comm programs can work without RTS/CTS, but
DTR/DSR are needed by most. RTS/CTS are needed by most hi-speed
modems for handshaking.
-Your external cable may be wired wrong, or if this is an external
modem, check that the cable is plugged in and that the modem is
turned on.
13) Line Control Register readings show that the word length selected
is incorrect or you have a parity error. WS1 and WS0 should both
be on indicating that 8 bit words are to be used. All other
readings should be low. Parity errors could happen once but not
every time.
-If either persists, then the Uart is defective or communications
to the Uart are suspect.
14) Line Status Register readings show a problem. The Tx Holding
register THE and the Tx Shift register TSE should be the only
active signals. No other signals should be active. If either TSE
or THE are not active then the Uart is not resetting properly.
Uart is suspect. If any other signal is high, and TSE/THE are both
active, then you have a data overrun or framing error.
-If this repeats, you should then suspect the Uart or connections
to the Uart from the computer.
15) Modem Control Register readings show that either DTR,RTS or OT2
signals are not set properly. DTR & RTS are needed by most comm
programs. OT2 is essential for interrupts to occur.
- Uart is suspect or the interface to the Uart from the computer
bus.
16) Interrupt ID Register readings show that an interrupt is pending
when none should be. This can be caused by a modem being turned on
and off as testing was conducted or if data was waiting to be read
Page 53
Modem Doctor 6.0 Technical Reference Manual
by a prior running application, or you are not using the correct
IRQ line.
-If this does not clear when you display the registers again,
then the Uart is suspect or connections to the Uart from the
computer, or you are using the wrong IRQ line for this comm port
assignment.
17) Interrupt Enable Register readings show that ERI Enable Receiver
ints is not set properly. As a result, you might not get proper
recognition of any interrupts being generated when a character is
received.
-Suspect the Uart or connections to the Uart from the computer
bus.
18) Interrupt Controller has not responded to setting the IRQ4 line.
This problem is on the system board of your computer. Run your
computer diagnostics program to locate the error.
-Normally IRQ4 is used for COM1 you might have a usage conflict.
19) Interrupt Controller has not responded to setting the IRQ3 line.
This problem is on the system board of your computer. Run your
computer diagnostics program to locate the error.
-Normally IRQ3 is used by COM2 you might have a usage conflict.
20) Interrupt Controller has not responded to setting the IRQ7 line.
This problem is on the system board of your computer. Run your
computer diagnostics program to locate the error.
-Normally IRQ7 is used by the printer you might have a usage
conflict.
21) Interrupt Controller has not responded to setting the IRQ5 line.
This problem is on the system board of your computer. Run your
computer diagnostics program to locate the error.
-Normally IRQ5 is used by the Hard Drive Controller you might have
a usage conflict.
22) WARNING...This COMM PORT MODEM STATUS & ID REGISTERS ARE DEFECTIVE
- This is a severe error. It means that one or more of the uart
registers are defective. This could also be caused by logging in a
non-existent comm port in the manual mode. You should never
see this message displayed in an auto-detected mode unless your
uart is definitely defective.
Page 54
Modem Doctor 6.0 Technical Reference Manual
Uart diagnostics
-----------------
1) Confirmed Uart setup to proper baud rate
- The uart Dlab (divisor latch) settings are polled to make sure
they match what the Modem Doctor intended. If not, you see the
following displayed;
ERROR..Uart did not set to desired baud rate
(you should not see this message unless the divisor latch in your
uart is defective).
2) Trying a hardware reset of the modem microprocessor
- None of the attention commands or soft-resets to the modem have
worked to place the modem microprocessor on-line. A hardware reset
simulates turning the power on and off to the modem and uart.
3) WARNING...This unit does not have a compatible modem attached
- After many tests and hardware/software resets, the Modem Doctor
finally deduces it cannot work with this modem because it is not
compatible. If you have a compatible modem, then you might have
selected the wrong baud rate to work with, or you forgot to turn
the external modem on. If there is a hardware problem, the next
screen you will receive will be the uart diagnostics pointing out
the problem.
4) Modem microprocessor ON-LINE
- The Modem Doctor successfully communicated to the modem
microprocessor.
5) Testing Uart hardware only
- You are running uart-only tests.
6) WARNING...The Modem Device appears to be off or not connected
- No status is being received from the modem indicating it is on.
If it is on, you might have a bad cable. If you are testing a uart
that is hooked up to a serial mouse, then you will always see this
message displayed, for a serial mouse does not use traditional
uart status.
Page 55
Modem Doctor 6.0 Technical Reference Manual
Report Generator Messages
--------------------------
1) You selected to clear the report stats.This means that any errors
found will not be reported in a final report format.
Are you sure [Y/N]: ?
- All report statistics will be cleared if you respond Yes.
2) Send to file MDR.RPT
Send to printer LPT1:
Send to printer LPT2:
Send to printer LPT3:
Do not Print /Return
- The printed form of your report can be sent to any one of 3 dos
printers (if the Modem Doctor detects they are installed) or to a
file called MDR.RPT.
3) Print Buffer full or Printer off-line
- If the Modem Doctor cannot communicate with the printer, it is
either receiving a busy signal from the printer (which clears when
the busy signal is lifted) or the printer is off-line.
Static DTR/DSR RTS/CTS Handshaking tests
-------------------------------------------
1) Lowering DTR Signal..waiting for DSR to follow
DSR did not follow DTR dropping or is set as a permanent ON
DSR followed DTR drop...normal for all devices
DSR did not follow DTR raising..possible cable or modem setup
problem
DSR followed DTR raise or is set as a permanent ON
- The DTR/DSR tests work by lowering the DTR (Data terminal ready)
signal from the computer to the modem. If the modem uses this type
of handshaking, it should respond by lowering its signal that is
picked up in the uart modem status register as a DSR (Data set
ready) signal. If not, then either the modem is not set up
properly according to standard handshaking protocol or you have a
bad cable. Please note, a failure to follow DTR/DSR handshaking
might keep some communication programs from working with your
modem. If you get an error, consult your modem manual or have the
Modem Doctor test your cable to an external modem with a loopback
plug.
Page 56
Modem Doctor 6.0 Technical Reference Manual
2) Lowering RTS signal..waiting for CTS to follow
Dropping RTS Signal to modem
Modem is using RTS/CTS Handshaking properly
Modem is not using RTS/CTS Handshake hold
Raising RTS line
CTS did not follow RTS dropping...usually normal for modems
CTS followed RTS drop...usually normal for serial devices
CTS did not follow RTS raising...you could have a cable problem
CTS followed RTS raise or is set as a permanent ON
- Like DTR/DSR, RTS/CTS handshaking tests check that if the
computer lowers its RTS (Ready to send) line, that the modem
responds in kind and that the CTS (Clear to send) status is echoed
to the uart modem status register. This signal is not as important
as the DTR/DSR, unless you have a high speed modem. In this case
RTS/CTS handshaking is critical for proper high-speed transfers.
Carrier and Dynamic tests
---------------------------
1) Sending Carrier Test info to modem
- Commands to self-connect are beings sent to your modem.
2) T1 Loopback commands sent waiting 5 seconds till start of test
- The alternate &T0/&T1 instruction set is being used for self
tests.
3) Carrier Detected...waiting 5 seconds to the start of the test
- The RLS (Received line signal) went to an active state or the
Modem Doctor received the words CONNECT from the modem during
self-testing. The 5 second delay is necessary to allow some modems
to settle down for proper reception of characters during
self-tests.
4) Using &T1 Loopback command set to modem for this test
- If you selected the Generic driver and the Modem Doctor failed
to connect, it uses this &T0/&T1 instruction set automatically for
its testing.
5) Sending 20 Characters to the modem
- All Dynamic DTR/DSR and RTS/CTS tests force the modem to self
connect. Next either the DTR or RTS lines are dropped, and 20
characters are sent to the modem. If no characters are received
back to the computer from the modem, then the Modem Doctor reports
Page 57
Modem Doctor 6.0 Technical Reference Manual
that the dynamic handshaking works. If a character is received,
then it means that type of dynamic handshaking does not work.
6) Sending Xoff Signal to modem
- An ASCII character that tells the modem NOT to send data has
been transmitted to the modem for dynamic Xon/Xoff testing.
7) Modem is using Xon/Xoff Handshaking properly
- 20 characters were sent to the modem, and it properly did not
send anything back to the computer.
8) Modem is not using Xon/Xoff Handshake hold
- 20 characters were sent to the modem, but it send them back to
the computer, indicating it did not recognize the dynamic Xon/Xoff
handshake test. Normally most modems do not need this handshake.
9) Sending Xon Signal to the modem
- This restores the modem to proper operation and clears its
internal data buffers.
10) Warning...I can't test this modem because there is no RTS/CTS
signals. If this is an external modem, you may not have a proper
cable or the modem is off. If you have an internal, you might have
a port conflict or a configuration switch set improperly.
- Most times this message is due to an improperly wired cable or a
improper configuration of some modem switches. See your modem
manual for setup, or use a loopback plug and the Analog loopback
mode to test the cable.
11) Setting up the modem for the Originate Mode Carrier Test..please
wait.
Setting up the modem for the Answer Mode Carrier Test.....please
wait.
-Self tests commands are being sent to your modem for the
different connect modes and frequencies.
Page 58
Modem Doctor 6.0 Technical Reference Manual
General program warnings
------------------------
1) Note...you hit the Escape Key during testing. This means the
results of this test is inconclusive. You should run these tests
again without escaping for a valid performance check.
- You can press escape during nearly all tests that the Modem
Doctor runs (except during crucial communication modes between the
modem and computer, in which case as soon as this communication is
completed, the Modem Doctor will escape with this warning.
2) INTERRUPT FAILURE Warning
Note...No interrupts were detected or generated during testing.
This could be due to a failure of your serial port to generate
interrupts or you have selected an IRQ line or Comm assignment in
error on the serial card or in a custom assignment from the Login
menu manual mode. Check your settings and if all is ok, suspect
the Uart or serial port card.
- This warning can be received anytime that the Modem Doctor tries
to talk to a modem or a uart (in analog loopback test). The most
common cause of this problem is an incorrect jumper or comm port
assignment on your modem or serial port. See the section on IRQ's
and their meanings to select the proper IRQ line for your port.
3) Fixed Rate Advisory
Note...I had to lower the baud rate to match the connect rate.
What this means is that you are using a high speed modem with a
fixed link rate in a variable rate mode. You might want to check
your DTE/DCE settings in your modem Nram if this is not desired.
- Most high-speed modems keep the link between the computer and
the modem running at a fixed rate, while the connection between
the modem and the remote modem (bbs or service) operates at
another rate. This method allows data compression and greater
throughput (characters per second) to be received by the computer.
If you have a high-speed modem, check your settings. It is
recommended you run in the fixed link rate whenever possible so
you can gain all the benefits of data compression with the new
data protocols.
Page 59
Modem Doctor 6.0 Technical Reference Manual
4) Failure Report
RLS (Received Line Signal Detect) indicates that a carrier has not
been received by the UART. Check modem or connector wiring
- This is an advisory that you might have a cable wired
incorrectly between your computer and external modem or that your
modem does not raise the RLS signal. This is only critical if your
communication programs never display the words "ON-LINE".
5) Modem not responding to the Analog originate test
- Modem never went into the self-test mode.
6) Carrier Not Detected..5 Sec Sync Delay till start of Answer test
Modem not responding for Analog answer test
- A carrier should have been received by the RLS signal or the
words CONNECT from the modem, if not, the &T0/&T1 instructions are
sent and the test is performed. If the modem does not respond to
this test, then the last message is displayed indicating a problem
getting the modem to self-test itself.
7) RLS Warning
The Received Line Signal of your modem stayed active throughout
the testing. Some modems have a jumper or switch that should be
set to carrier is active only when a signal is detected. Check
your manual to change this setting so the Modem Doctor and comm
programs will work properly. Check your modem to make sure that
Carrier isn't forced high
8) NOTE.Carrier (RLS Line) active, it should not be..test may not be
valid.
- The RLS signal was always active. This means the Modem Doctor
cannot figure out if the modem ever entered the self-test mode.
Also, your communications program probably will always display the
"ON-LINE" status. Unfortunately, this type of situation is the
default setting from the factory of most 2400 bps modems. It can
be reprogrammed by a simple setup command. See your modem manual
for instructions.
9) SET YOUR MODEM TO ORIGINATE CARRIER FREQUENCY...PRESS TO CONTINUE
SET YOUR MODEM TO ANSWER CARRIER FREQUENCY...PRESS TO CONTINUE
- Dumb modem tests require you to flip switches on your modem.
Usually this is the AL button. After you do this, the Modem Doctor
should see a carrier and continue proper testing.
Page 60
Modem Doctor 6.0 Technical Reference Manual
10) Loopback Transmit Error
Loopback Queue Failure
ESCAPE KEY PRESSED....ABORTING ALL LOOPBACK TESTS
UART Control Lines set...waiting 2 seconds for CTS Handshake
NO CTS Handshake Detected .Continuing test even though plug/line
maybe bad
Loopback Queue Failure
UART not responding using Analog Loopback Plug mode
No Loopback Plug or General Failure of the Hardware
Analog Loopback Test passed without any errors
- If the analog loopback did not return characters or generate an
interrupt, then the uart may have been tested without a loopback
plug attached or there is a failure of the uart. If all was ok, a
passed message is displayed.
11) Loopback Transmit Error
UART not responding to the Digital Loopback test
UART Registers did not set for Loop back test
UART Digital Test passed without any errors
- If no characters were received, then either the uart you are
working with is not 100% 8250-B compatible or defective. If
everything was ok, a passed message is displayed.
12) Warning, Comm Port 1 is using Com Port 2's address.You should
reconfigure your Serial Card to the correct Address.
Otherwise,Communication programs won't properly operate.
13) Warning, Comm Port 2 is using Com Port 1's address.
Do you want me to correct this for testing purposes only? [Y/N]:
- These error messages are received if the Modem Doctor found a
Com2 reserved address as Com1, or visa versa. Many PC owners that
do not have built-in serial ports make the mistake of assigning a
Com2 address without having a Com1 installed. The ROM-BIOS cannot
correct this problem or even detect it. The Modem Doctor does and
will point out the error to you.
14) Flopping COM1/COM2 pointers in Memory only. Note..this is only
valid till the next warmboot of your system. You must change your
serial card settings to keep this permanent. Note...tests may not
work properly because of this error.
- This message is displayed either in the exchange mode or when
the Modem Doctor is asked to fix the problem of addresses in
memory for testing only.
Page 61
Modem Doctor 6.0 Technical Reference Manual
15) Logging out incorrect COM1 for testing purposes.
Logging out incorrect COM2 for testing purposes.
- If you decide not to fix a problem, the incorrect assignment is
logged out of Dos and your choices for testing.
16) ALL Available COMM ports are in use...Press to Return
- If 4 comm ports (shareware) or 8 comm ports (registered) are
already in use, you cannot add any more in the auto-login mode to
the Modem Doctor. Use the manual mode to override your choices for
testing comm ports higher than 8.
17) Comm (x) Not Found ... override ? :
- You told the Modem Doctor in manual mode that a port existed
with a certain base port address. It was not found. If you
override, this address is logged in for testing. This allows you
to test a defective uart chip that might not be recognized by dos
or the Modem Doctor as valid.
18) Sorry...your Modem.dat file has an invalid Comm port
Sorry...I cannot find Modemdr.dat file in this directory
WARNING...RESERVED PORT ADDRESS in Mdr.dat file
correct address in hex must be between [ ]..ie [2F8]
Sorry...your Modem.dat file has an invalid Speed..using 300 baud
Modem Did not respond to setup string..run the Modem Doctor to
check your modem.
Programming according to file Mdr.dat
Modem Responded to setup string and is ready for use
- Running Modem Doctor in the setup (/s) mode, the file MDR.DAT is
queried for the proper comm port, address, speed and setup string.
If any of this is invalid, one of the messages above is received.
If it is valid you receive the message that Modem Doctor is
programming according to the Mdr.dat file.
Page 62
Modem Doctor 6.0 Technical Reference Manual
19) Standard Assignment Not Verified
When Modem Doctor 6 starts, it automatically verifies all comm
port base addresses and IRQ settings. However, some environments
may not tolerate self-testing of IRQ selections. To defeat this
setting, Modem Doctor is started with the /Q switch. When
operating in this mode, Modem Doctor displays the above message
next to the IRQ assignments to indicate that the program has not
verified any IRQ assignments.
Section 6. Special Modes and Information
----------------------------------------
The Modem Doctor supports a wide range of "AT" instruction set modems.
There are however "supersets" of instructions that manufacturers have
used to enhance the capability of their modems. Although there is some
structure in this area, not all commands intermix between different
brands and lines of modems. This situation is analogous to PC computer
printers, and it calls for a similar approach. The Modem Doctor now
supports the use of "Modem Drivers" to meet these special needs.
Additionally, due to the increase in computers using the ISA bus, there
are more interrupt lines free to be used by modem manufacturers. For
test purposes, you can use IRQ2-15 for your hardware testing. Using the
special /S switch, you can send initialization codes to your modem from
a batch file or other command-line need to setup the modem for use.
Finally, to add some flexibility to the Modem Doctor's diagnostics,
some special "Hot-keys" have been added. These have been discussed
above in an operational sense, however in this section you will get
some idea of how these can help you speed up testing and test defective
or non-compatible hardware.
6.1 Using Modem Drivers
-----------------------
Most Modem's today are built on the original "AT" instruction set that
was developed by Hayes Micromodems in their 1200B series. This driver,
named the Generic Driver in the Modem Doctor, is used exclusively if
the modem returns an ID indicating it is a 300,1200 or 2400 bps modem.
Also, if the modem does not return an ID, this Generic Driver is used.
The Generic Driver can be used to test nearly all modems, however there
are some 2400 bps modems that were built using the command structure
that Hayes Micromodems put into their 2400B line. These modems used an
"&" for some modem setup and command functions. The Modem Doctor has a
driver for these modems called the "&T0/&T1" driver. Using this driver,
the Modem Doctor can perform a simulated carrier test. During your
Page 63
Modem Doctor 6.0 Technical Reference Manual
testing of this type of modem, you will notice the MB (Modem Busy)
light flashing on your external modem. This driver (and all others)
is user selectable, however the Modem Doctor will automatically switch
to it when performing the carrier tests if the Modem was detected to be
a 2400 bps modem.
Most high speed modem will work properly with one of two drivers; The
Hayes Ultra or US Robotics (Courier) V.32. So if your modem is not
listed, use one of these two drivers in its place.
6.11 External Modem Drivers
---------------------------
Supported starting with version 4.0 is the ability to read a specially
created external modem driver file. This file makes it possible to
handle any future changes in modems by simply releasing a new driver
file. When the Modem Doctor first begins, it looks in the default
directory for the existence of this driver file. If it exists, a valid
checksum is performed to see that it is indeed a modem driver. If so,
this external set of commands is inserted in place of the internally
contained modem drivers. As of the initial release of 6.0, there are
two external driver files in circulation. These drivers are built into
the latest release of Modem Doctor (ver 6.0). Driver files will be
released under 2 conditions; first, if a bug is detected in any of the
driver routines, a shareware driver file will be released on the
bulletin boards at no cost. Registered users will be mailed at no cost
the updated driver file. Second, if a registered user would like a
custom modem driver file written, we will create one at minimal charge
as long as proper documentation for the type of modem is submitted. If
you wish to have an interface written, please contact us for pricing
and appropriate information that we will need to do this for you.
6.2 Using the Command Line Mode switch /S
----------------------------------------
There can be special occasions where you need to initialize and test a
modem before another program can be run. The Modem Doctor now supports
a method to do this. Using the command line switch /S, you can instruct
the Modem Doctor to "wake-up" a Modem and send an initialization string
to it.
Although similar to our product Comset, it offers some additional
flexibility but does not allow the serial port only setup that Comset
does. To use this special mode, you need to have a companion file
Page 64
Modem Doctor 6.0 Technical Reference Manual
named MDR.DAT that you create with any ASCII text editor that follows
this format;
1) All information must start on the first space on each line
and can consist of up to 3 lines. Line 1 and Line 2 are
required.
2) Line 1 = Port Number 1 through 8 and an optional port address
in [] ( For settings greater than Port 4, this address is
required).
3) Line 2 = the Baud Rate you wish to use (300-115200 or 3-1152
are acceptable).
4) Line 3 = the initialization string you wish to send. This
string must start with AT and can be up to 80 characters long.
If no string is included in the file, or if it does not begin
with the letters AT, then ATZ is automatically sent to the
modem.
Example..to setup Port 2 to 19200 and set S7 to 255;
Make a file called MDR.DAT that looks like this;
2 [2F8]<--note for Port 1-4 unless it is non-standard [2F8]
is not needed
192
AT S7= 255
Next, start the Modem Doctor by typing MDR /S. As long as the
MDR.DAT file is in the current working directory, these commands
will be sent. If not, you will get an error message stating that
MDR.DAT could not be found.
Why not have the Modem Doctor search all directories for the file?
Well, the reason is so that you can put MDR.EXE in a Dos path but
have individualized setup MDR.DAT files in different
subdirectories for different programming needs. Instead of
constantly changing the file, make different ones and call
MDR.EXE. It will only use the MDR.DAT file in the current working
directory.
After the initialization string is sent, the Modem Doctor will wait
up to 10 seconds for the word "OK" to return from the modem. If it
does not, you will get a message saying the modem failed to setup. In
Page 65
Modem Doctor 6.0 Technical Reference Manual
either case, whatever your modem sent to the Modem Doctor will be
displayed. If you see the word "ERROR", that was sent from the modem,
it probably means that your initialization string was not correct. No
message returning could indicate a problem with the modem, or an
invalid baud rate. When it finishes executing, the Modem Doctor
returns an errorlevel to the calling program. An errorlevel of 0 is
normal, an errorlevel of 99 indicates a failure. You can use these
errorlevels to control batch processes if you wish to.
Also, this mode of the Modem Doctor uses bios screen writes, so all
of the information displayed can be redirected to a printer, a file,
or whatever other DOS device you wish. Example...to send the output
of this test to a file called Test.txt...
MDR /S > TEST.TXT or MDR /S >> TEST.TXT (if you wish to
append an existing Test.txt file.
If the Modem Doctor setup was successful, the modem's DTR and RTS lines
stay active, if not, they are dropped. If you need more specialized
command-line modes of operation, you might consider Comset. Comset
allows Serial Ports and Modems to be setup at various rates and under
various conditions. Registered Modem Doctor users get a 15% discount!
You can find Comset on most BBS's as COMSET12.ZIP.
6.3 Using the Hot-Keys
----------------------
Hot-Keys are combinations of the ALT key plus a letter. The Modem
Doctor adds several of these Hot-keys to make it easier to test modems
at different baud rates and to circumvent some of the error checking
that the program performs under normal circumstances.
ALT-B Change Baud rate -
If you are testing a system that you suspect has a problem, it is best
to use the setup mode when changing the baud rate. The Setup mode will
test all the registers, and the modem microprocessor (if selected) and
assure you that all the hardware is communicating properly at each baud
rate. However, if you feel a system is running fine, using the ALT-B
from the main menu can save time when running tests at different baud
rates. Press ALT-B and select the baud rate (taking care not to select
a rate higher that what your modem is rated for if you are doing modem
tests). ALT-B works from the main menu, and from inside the Manual
interactive mode.
Page 66
Modem Doctor 6.0 Technical Reference Manual
ALT-C Clear Screen -
This key is only active inside of the Manual interactive mode and is
used to clear the text window of any characters.
ALT-F Force Microprocessor on-line -
The Modem Doctor has many tests built-in to verify the working
condition of a microprocessor-based modem and will not allow a modem to
be tested in the "AT" instruction set mode if it has not properly
addressed and setup a modem microprocessor. Using the ALT-F combination
forces the Modem Doctor to perform tests as if it had properly setup a
modem. This feature should be used with care, however its primary
benefit is to help you test a malfunctioning modem to see exactly what
commands it will respond to. Pressing ALT-F also updates the status bar
to indicate that the modem microprocessor is on-line (which may or may
not be the case after this command was issued). Version 4.0 of Modem
Doctor makes this hot-key a toggle, so pressing 1 time will change the
on-line status. Pressing again returns it back to normal.
ALT-H Help -
You can press this key at any time to get help on a topic or general
help depending on if you are in a menu or at the main menu selection
bar.
ALT-R Register Display -
This is only active inside of the Manual interactive mode and is used
to display the status of all Uart registers on the screen for
diagnostic purposes.
ALT-X Exit Mode -
This is only active inside of the Manual interactive mode and is used
to exit this mode.
Control -Break
--------------
This allows an immediate exit from anywhere permissible inside the
Modem Doctor, however it offers you a choice to clean up or to
continue. You should not use this mode, it is better to exit via the
Main menu selection.
Page 67
Modem Doctor 6.0 Technical Reference Manual
6.4 Logging in Defective Ports
------------------------------
If a serial port Uart is defective, the Modem Doctor will refuse to log
it in for testing. This is necessary because there is no way for it to
know what ports are defective and what are non-existent. However
starting with Version 4.0, you can now log-in a defective chip for
testing. The procedure to do so is explained above under Manual Login.
The reason for doing so however might not have been apparent. If any
register of a serial port is defective, it might not function properly.
Logging in this defective port will give you the full benefit of the
Uart and Serial port diagnostics. Error messages will be displayed, in
most cases there will be multiple error messages. There are two
possible causes of a defective port; the Uart chip and the Serial Port
address system. If it is a chip, simply replacing the chip fixes the
problem. If it is a serial port instead, then the same problem will
repeat. How do you approach this? Well for starters, check that the
strapping on your serial port board matches the correct COMM port
assignment (ie strapped for COM1 for COM1..etc). Next, if there is user
selectable IRQ assignments, make sure it again matches the COMM port
assignment (IRQ4 for COM1/3, IRQ3 for COM2/4, IRQ5 for COM7/8, IRQ7 for
COM6/7). If all this is set properly, then you can suspect the chip,
but also the Serial Port hardware that gates the address of the chip to
the computer. Finally, if you get warnings about status, but the chip
logs in, then you might just have a bad cable from the computer to the
modem (NOTE: The Modem Doctor does not consider this an error but
simply displays a warning and allows the Uart to be logged-in for use).
6.5 What tests cannot Do
------------------------
Although I tried to be extremely thorough in my tests, there are
somethings that tests just cannot do or pinpoint. If you are having
problems with excessive line-noise, you might have a bad connection
between your modem and your telephone wiring in the house. Another
possibility, although remote, is that your modem does not offer the
correct input impedance to the telephone line. This can cause poor
connections. The problem is with the electronic design of the modem,
and again, it is more prevalent in inexpensive modems. Also, tests
cannot check that the communications program you are using is set up
correctly.
Page 68
Modem Doctor 6.0 Technical Reference Manual
At times, installing a communications package can be very challenging
for a novice user. Tests also cannot check the wiring in your serial
Cable. The Modem Doctor will tell you if a handshaking pair is missing,
but it cant tell you why. It could be because the Uart is bad, but more
than likely, your RS-232 Cable doesn't carry all of the handshaking
signals to or from the external modem or serial device. This can be
important if you are using a high-speed modem. Most High-speed modems
will drop the CTS line when their communication buffers are full.
Previous Modems ignored the RTS/CTS signals and instead used the
DTR/DCE pair. What this means is that if you buy a new modem, it might
not work with the older-cable (yet at the same time the older modem
will work..which might lead you to believe that you have a defective
modem).
6.6 Quirks with Some Modems
---------------------------
Carrier tests -
Some Modems have two "AT" instruction sets, usually referred to as
Compatible and Enhanced. If your modem does not perform a carrier test
at speeds below 4800, then this is usually the case. Some modems
provide a dip-switch or a toggle switch to select either mode. Setting
your modem to the Standard Compatible Mode should get rid of your
problems below 4800 bps. Also, make sure you select the Generic
Compatible Modem Driver unless you are sure your modem matches the
modem's that have special drivers written especially for their use. At
speeds above 4800 bps, the Modem Doctor is only compatible with USR
V.32, Dual Standards (V.32 and HST) and HST brand of modems, Hayes
V9600 and Ultra 9600, and Courier 2400 modems. If you wish to test
another brand of modem that is not compatible, simply turn off any
modem-hardware error correcting using the Manual mode and following the
information in your modem users manual. Then select the Generic Modem
Driver and you should be able to test your modem properly.
Finally, if only one of the tests (Originate or Answer) runs and NO
CARRIER is displayed for the other, the problem lies with the Enhanced
Command settings of your modem. Hayes Modems use &T1 through &T8
commands for their 2400 and also have other special switches. The &T0
command set is tried by this version of the Modem Doctor automatically,
however there is no compensation for any other type of modems that use
non-standard commands. Again for the sake of compatibility with the
widest range of modems at speeds below 4800, this cannot be corrected
for in this version. Considering the vast numbers of "AT" compatible
modems in the marketplace, these two exceptions are minor and will not
Page 69
Modem Doctor 6.0 Technical Reference Manual
affect most users. Finally, users of 8250 compatible Uarts that do not
support the Digital (Chip) Loopback will get an error. This should be
of no concern. However if the test runs for a while, then fails, it
could indicate a problem with your Uart. This is explained in the
pull-down window in the program. The Modem Doctor has been tested on
about 25 Modems from Major Manufacturers and on a variety of Clones and
Compatibles (plus the "Real Thing"). It is possible that a certain
combination of hardware still might give problems, however if you are a
registered user, I will find a way to make it work.
6.7 Buffered vs Direct Connect Modems
-------------------------------------
When testing high speed modems, you should note that some of them
cannot test in the a "buffered mode", which means that they will not be
able to self-test in carrier mode above speeds of 9600. The Hayes
Ultra's fall into this category. The highest DTE/DCE rate you can use
and still generate a successful carrier test is 9600 bps. Any higher
DTE rate will cause Modem Doctor to return errors that are not valid.
Page 70
Modem Doctor 6.0 Technical Reference Manual
6.8 Using Digiboard Serial Ports
--------------------------------
Modem Doctor now supports Digiboard Intelligent Serial Ports that use
the "X" series drivers (XIDOS). To test these serial ports, you must
start Modem Doctor with the /D command...ie from the dos prompt....
MDR /d (or MDR /D).
The /D switch instructs Modem Doctor to ignore traditional comm ports
and instead test Digiboards. When started in this manner, Modem Doctor
looks for an installed driver. If one is not found, Modem Doctor
defaults to the INT14 support mode (pretty useless unless you also have
an INT14 driver running).
╒[ DigiBoard Hardware Detection ]═════════════════════════════════════╕
│ Driver Version : 409 Supported Channels: 4 Total Boards: 1 │
│ Lowest Channel : 4 Highest Channel : 7 │
│ │
│ Board # 0 IRQ: 5 Board Type: 1 DP Memory Seg : D800 │
│ Channels: 4 I/O Address: 320h First Channel : 4 │
│ │
│ │
│ Bus type: AT Bus Interrupt Levels: 15 HD uses DMA Ch3?: NO │
│ Interrupt Status : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 │
│ Press Any Key to Continue │
└─────────────────────────────────────────────────────────────────────┘
Modem Doctor can test up to 4 Digiboards that contain up to 16 channels
each. When in the setup mode, you will get this screen instead of the
traditional PORT, IRQ, SPEED selections;
╔[ Digboard ]╗ ╔[ Channel ]╗ ╔[ Baud ]══╗
║ Use Board 1 ║ ║ Use Ch 1 ║ ║ 300 BPS ║
╚══════════════╝ ║ Use Ch 2 ║ ║ 1200 BPS ║
║ Use Ch 3 ║ ║ 2400 BPS ║
║ Use Ch 4 ║ ╚════════════╝ Higher speeds
╚═════════════╝ with registered
version to 57.6kbps
Page 71
Modem Doctor 6.0 Technical Reference Manual
If more than 1 board is found, it will be displayed (max is 4). If more
than 4 channels are found on the selected board, they will be displayed
(max 16).
As with any fossil or comm driver, Modem Doctor may or may not be able
to fully test the hardware. In these modes, Modem Doctor depends on
your communication driver (a fossil, the digiboard driver or some INT14
driver TSR) to correctly handle comm ports. Only when Modem Doctor is
started without any "switches" will it directly control the hardware.
This is indicated by the Int14 interface indicator in the setup
section;
╒[ Modem / Uart System Diagnostics ]══════════════════════════════════╕
│ Comm port /IRQ in use [ ] Port = 5 Address = 320 IRQ = 5 │
│ Int 14 interface [ ] DigiFossil │
│ Uart type [ ] 16450/8250A detected │
│ Baud rate selected [ ] 2400 │
│ Baud Rate reg test [ ] Not supported with Fossil or INT14 │
│ Modem Microprocessor [ ] │
│ Modem ID Type [ ] │
│ Modem Fax Ability [ ] │
│ Modem Memory/Rom [ ] │
└─────────────────────────────────────────────────────────────────────┘
In this case, Modem Doctor shows it is using the DigiFossil. For
regular FOSSIL routines, the words FOSSIL or EXTENDED FOSSIL are
displayed. During direct mode testing, the words INACTIVE are
displayed. Once you are logged into using Digiboard ports, you cannot
access normal Dos ports without exiting the program and restarting. All
tests described in earlier sections above work with the Digiboard
without modification.
Page 72
Modem Doctor 6.0 Technical Reference Manual
6.9 Running Modem Doctor under Windows 3.1
------------------------------------------
Modem Doctor was designed to work directly with system hardware.
Unfortunately, Windows seizes control of all hardware in order to allow
for the virtualization of comm ports and interrupts. Nonetheless, Modem
Doctor can run under Windows if you take the following precautions;
1) Never run Modem Doctor without the /Q switch. Interrupt results
under Windows are not predictable or accurate. Crashes to system
operation may result.
2) Make sure you have optimized your system.ini to allow a minimum
ComxBoostTime of 6.
3) Make sure all your comm ports are configured to NEVER WARN during
a device contention. Modem Doctor will occasionally "fight" Windows
for control of the comm ports. NEVER WARN can be selected from the
control panel "ports" option.
6.91 Running Modem Doctor on Networks
---------------------------------------
Modem Doctor is not designed to run on a network. It can run on client
machines that are connected to a network. For safety, use the MDR /Q
command. Some Network cards use IRQ's assigned to comm ports. IRQ tests
in a network environment can cause serious problems to communications.
When running on a network, Modem Doctor can only test local comm ports.
No TCP/IP or other protocol access is currently supported.
Section 7. Benefits of Registration
------------------------------------
Thank you for your registration. The Current Registered Version # of
the Modem Doctor is 6.0R. All Registered Users are entitled to free
Maintenance updates and these will be reflected by changes in the
decimal fraction number..ie 6.01, 6.02. Minor upgrades are indicated
by changes in the tenths digit..ie 6.10. Minor upgrades are not free,
but cost no more than major upgrades.
Page 73
Modem Doctor 6.0 Technical Reference Manual
If a new super-duper version comes out (7.X or 8.X), all registered
users will be able to update for only $7 (plus shipping,handling and
tax where applicable). Currently registered users of versions 2 through
5 can update for $5 (plus shipping, handling and tax where
applicable). If you have trouble with the Modem Doctor, or questions,
feel free to call or write.
When doing either you will need to have the Version Number, your serial
number, and in some cases the Module Identification Number. The
Version number is displayed when you first start the program along
with the serial Number. The Module Identification numbers can be
displayed at any time from the main menu after you pass the initial
setup mode. Simply type a # sign, and all of the modules that make up
the Modem Doctor will display their version numbers on the screen.
Right now, all Modules have identical version numbers from program to
program, but in the future, there could be custom modules for
registered users, so in this case the Module ID could become important.
You can reach us with your questions at 410-256-5767 or write to ;
Hank Volpe
PO Box 43214
Baltimore MD 21236
Thanks again for registering the Modem Doctor.
You can always download the latest shareware version and other
communication utilities from the Modem Doctor BBS at 410-256-3631
(300 -> 19.2kbps). Also, if you write your questions on the BBS, you
will get a faster response than if you had written via the mail.
Page 74
Modem Doctor 6.0 Technical Reference Manual
Notes - [+] References to USR /Courier/Dual Standard/HST
Copyrighted by US Robotics
[++] References to AT Instruction Set ,Smartmodem,Hayes
Copyrighted by Hayes Inc.
References to MNP refer to An error free protocol
Copyrighted by Microcom Inc.
References to dos, microsoft, copyrighted by IBM or Microsoft
References to 8250B or other uarts are copyrighted by a
variety of manufacturers including (but not limited to )
Intel, National Semiconductor.
Disclaimer -
It is not the intent of the author to recommend any brand of modem over
another nor to infringe on the copyrights of the manufacturers by
mentioning their products. A modem fits a need, and whatever one works
for you is the one you should have. As time goes on, more modems will
be added to the list of "special enhanced " tests. The modems mentioned
are done so only because of the popularity they enjoy and for no other
reason. All programming of modems for testing is done with simple
character strings, similar to any type of data that can be sent to a
modem or a serial port. Any modem, whether AT compatible or not, can be
handled by the Modem Doctor with special software drivers. These
software drivers will be distributed free of charge as needed for
general use. Custom drivers created by Hank Volpe for particular
clients however will require a fee for handling and programming time.
Page 75
Modem Doctor 6.0 Technical Reference Manual
Modem Doctor History
Ver 6.0 - Improved PS/2 IRQ test support - PS/2's
would halt or have their stack run-away during
IRQ tests. The /Q switch from the command line
bypasses these tests. However, I've
written some routines in assembler to create
interrupt stacks that handle this 5.2 problem.
- Improved 16550AFN diagnostics - Modem Doctor 6
tests 16550AFN's, however after these tests, the
buffers were shut down and not used (since no tests
existed that stressed their ability to perform).
These registers are now enabled to a trigger level
of 14 during all burst mode tests.
- Improved FOSSIL tests - FOSSIL routines have been
streamlined to increase throughput during the burst
mode tests.
- Improved Modem Driver Detection - Modem Doctor now
holds an exact-match table for supported modems.
If no match is found, Modem Doctor "guesses" for
the best match. This will make it easier to support
future modems.
- Adds IRQ support for IRQ's 7-15
- Improves 16550AFN tests.
- Tests for FAX modems, indicates Fax Group and
Class.
- Increase Baud Rate to 115200 in registered version.
- Diagnostic Toggle mode for DTR and RTS signals,
helpful in finding bad cables or missing signals in
cables.
- Burst and Signature Rate Tests for Analog loop and
Carrier.
- Support for DIGIBOARD Comm ports via the Digiboard
Driver.
- Improve FOSSIL throughput routines
- Detects AT, PS-2 and Dual Bus Computers, Supports
Dual 8259 PIC chips.
Page 76
Modem Doctor 6.0 Technical Reference Manual
Ver 5.2 - The /Q switch was added to the command line
interface to allow for the user to bypass the IRQ
self-tests. Some computer environments may freeze
when self-tests of IRQ lines are performed. In this
case, running with the /Q switch will bypass these
tests. No other changes were made to the program.
Ver 5.1 - Program was recompiled to remove Borland C++
optimizations which were found to cause STACK
problems running under Digital Research's DR/DOS
6.0. No other changes were made to the program.
Ver 5.0 - New tests added to verify IRQ operation, verify
proper COMM port/IRQ selection, added NULL tests to
Interactive selection. Structure changed for
drivers to include handling all modem
identification codes. All window routines changed
to directly drive displays (vs working through
standard C library interfaces), S-register window
display added to REGS menu, interfaces added to
handle generic INT14 and FOSSIL drivers, bypassing
all direct control of hardware while in that mode.
Other updates include identification of mouse
drivers and re-activation upon exit, ability to
handle accurate timing loops on machines with a
system speed of 50mhz+, addition of interrupt
driven transmit routines. Addition of 5 new uart
internal tests.
Ver 4.0 - New tests added for dynamic handshaking and static
handshaking. New report generator features, new
exchange mode. Higher baud rates, cleaner windows
that grow to meet commands. Recognition of mouse
inputs via a compatible mouse driver. Expansion of
internal modem drivers and ability to read external
modem drivers. Improved brute-force reading for
faster digital loopback tests. Automatic aborting
of modem tests when IRQ failures are detected. New
advisories for fixed-link rate, IRQ failures, wrong
comm port assignments, swapped comm port
Page 77
Modem Doctor 6.0 Technical Reference Manual
assignments. Addition of custom
color selections, pulldown windows that stay when
left-right arrow keys are moved. Updating of 16550
AN support for resetting and clearing buffers.
Replacement of all internal comm drivers with new
dos independent routines. Correction of many (and
hopefully all) spelling errors.
Ver 3.0 - New tests added for 16450/16550/16550AN Uarts.
Improved Control-Abort handling, Regs command now
performs a full diagnostic call when activated.
Hot-Keys added (Force Micro, Baud Rate Select).
Modem Driver software added to program, Status Bar
added to program. Support for IRQ 3,4,5,7 added
via COM1 through COM8 log-ins. Speed increased to
38.4KB. /S Command line option added for setup of
a modem including batch file errorlevel support.
Escape key functionality added to Carrier Tests
and the loopback tests.
Ver 2.2 - Corrects a bug in Ver 2.1 Communication routines
that caused some modems to lock-out because they
were waiting for two carriage returns to begin.
Also it added 4 diagnostic Uart tests
Ver 2.1 - This version was a Beta test. A Beta tester
accidentally uploaded this to several boards.
Please remove all Ver 2.1S software that you may
find.
Ver 2.0 - This version also was a Beta test with support
for COM1-2 and 2400 bps maximum
Ver 1.0 - First test version
Page 78