Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
Microsoft Network Client Version 2.2: User's Guide for MS-DOS Clients > Appendix E Using Remote Access Service

Modems

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Glossary

 » Index

This section includes information on using nonsupported modems and modifying your modem configuration file, MODEMS.INF, which contains information describing each modem type supported by RAS. You should not modify this file except to add sections for modems that are not already supported.

Using Nonsupported Modems

If you have a modem that is not supported by RAS, try using the settings for a modem that is supported. If you are unable to find a modem setting that is compatible, you can modify your MODEMS.INF file. Consult your modem manuals or modem manufacturer for further help. This section includes information to help you modify your MODEMS.INF file.

Understanding MODEMS.INF

The MODEMS.INF file lists all the modems supported by RAS, along with the initialization, dial, and listen command strings each modem needs for correct operation. When you select a modem during RAS installation, the Setup program associates the selected modem with the specified communication port. RAS connection utilities read MODEMS.INF to obtain the command strings for the modem associated with each communication port.

NOTE: The MODEMS.INF file is different for MS-DOS client workstations than for Windows NT workstations or Windows NT Advanced Servers. Use the MODEM.INF information in this chapter, rather than the information in the Windows NT manuals, even if you are connecting to a Windows NT network.

The MODEMS.INF file consists of two main parts:

  • A [default] section

  • Individual sections for each supported modem

The [default] section contains command strings shared in common by most supported modems. The sections for individual modems contain command strings that differ from those in the [default] section.

The following MODEMS.INF listing includes introductory comments, the complete [default] section, and two sample sections for particular modems.

#----------------------------------------------------------------- 
# Some normal commands used. Where the commands are different for a
# particular modem, the new/different commands are listed under the
# section for that specific modem.
#-----------------------------------------------------------------
# &F Recall factory settings
# L1 Low speaker volume
# &C1 Track presence of data carrier
# &D2 Hang up and disable autoanswer when DTR goes from ON to OFF
# Q0 Modem returns result codes
# V1 Verbose (English words) return codes
# E1 Enable character echo in command state
# S7 Wait time for carrier
# &Q0 Async connection
# S0 Answer on ring number
# S2 Escape character
#-----------------------------------------------------------------
[Default]
MAXBAUD = 2400
[Default.INIT]
[Default.INIT.COMMAND]
COMMAND = AT&F &C1 &D2 Q0 v1 S0=0 S2=128 S7=55*cr
[Default.INIT.RESPONSE]
OK = *cr*lfOK*cr*lf
ERROR = *cr*lfERROR*cr*lf
[Default.LISTEN]
[Default.LISTEN.COMMAND]
COMMAND = *cr*ATS0=1*cr
[Default.LISTEN.RESPONSE]
OK = *cr*lfOK*cr*lf
ERROR = *cr*lfERROR*cr*lf
[Default.LISTEN.RESPONSE]
LOOP = *cr*lfRING*cr*lf
CONNECT = *cr*lfCONNECT*blank*baudrate*cr*lf
NO_CARRIER = *cr*lfNO*blankCarrier*lf
[Default.DIAL]
[Default.DIAL.COMMAND]
COMMAND = ATDT*phonenumber*cr
[Default.DIAL.RESPONSE]
CONNECT = *cr*lf
CONNECT*blank*baudrate
CONNECT = *cr*lfPLEASE*blankSET*blankTO*blank*baudrate*cr*lf
CONNECT = *cr*lfCONNECT
ERROR = *cr*lfERROR*cr*lf
LOOP = *cr*lfRINGING*cr*lf
NO_CARRIER = *cr*lfNO*blankCARRIER*cr*lf
NO_CARRIER = *cr*lfVOICE*cr*lf
NO_DIALTONE = *cr*lfNO*blankDIAL*blankTONE*cr*lf
NO_DIALTONE = *cr*lfNO*blank*DIALTONE*cr*lf
BUSY = *cr*lfBUSY*cr*lf
NO_ANSWER = *cr*lfNO*blankANSWER*cr*lf
#-----------------------------------------------------------------
[Hayes_V_Series_9600]
# &Q5 -- Error control connection
# S36=1 -- Fallback to async, no speed buffering
MAXBAUD = 9600
[Hayes_V_9600.INIT]
[Hayes_V_Series_9600.INIT.COMMAND]
COMMAND = AT&F &C1 &D2 Q0) V1 S0=0 S2=128 S7=55 &Q5 S36=1*cr
[Hayes_V_Series_9600.INIT.RESPONSE]
OK = *cr*lfOK*cr*lf
ERROR = *cr*lfERROR*cr*lf
#-----------------------------------------------------------------
[Intel_9600EX]
# \N1 Direct Mode
# Command line length cannot exceed 40
MAXBAUD = 9600
[Intel_9600EX.INIT]
[Intel_9600EX.COMMAND]
command = AT&F&C1&D2 V1 S0=0 S2=128 S7=55 &Q0 \N1*cr
[Intel_9600EX.INIT.RESPONSE]
OK = *cr*lfOK*cr*lf
ERROR = *cr*lfERROR*cr*lf
#-----------------------------------------------------------------

In the MODEMS.INF file, a pound sign (#) preceding a line indicates a comment, which the Setup program ignores. Asterisks (*) are escape characters that precede macros. These macros and the functions they perform are listed in the following table:

Macro

Function

baudrate

Inserts baud rate

blank

Inserts a blank character

cr

Inserts a carriage return

lf

Inserts a line feed

phonenumber

Inserts phone number

When you select a modem during RAS installation, the Setup program looks for a section with the name [modemname.INIT]. If it does not find one, it uses the initialization strings defined in the [default] section.

For example, the Hayes Smartmodem 2400™ uses the same set of command strings as listed in the [default] section. Therefore, the only line in the [Hayes_Smartmodem_2400] section is the MAXBAUD line.

#-----------------------------------------------------------------
[Hayes_Smartmodem_2400] MAXBAUD = 2400

The Intel_9600EX modem, however, uses different initialization strings from those shown in the default section. Therefore, these strings are defined separately in the [Intel_9600EX] section.

#----------------------------------------------------------------- 
[Intel_9600EX]
# \N1 Direct Mode
# Command line length cannot exceed 40
MAXBAUD = 9600
[Intel_9600EX.INIT]
[Intel_9600EX.COMMAND]
command = AT&F&C1&D2 V1 S0=0 S2=128 S7=55 &Q0 \N1*cr
[Intel_9600EX.INIT.RESPONSE]
OK = *cr*lfOK*cr*lf
ERROR = *cr*lfERROR*cr*lf
#-----------------------------------------------------------------

Because the Intel_9600EX modem uses the LISTEN and DIAL strings listed in the [default] section, only the INIT strings need to be listed in the [Intel_9600EX] section.

If a modem's command strings are identical to those already listed for another modem, the name of the latter modem can be used as an alias for the former. For example, the MODEMS.INF section for Hayes_Ultra reads:

#------------------------------------------------------------- 
[Hayes_Ultra]
MAXBAUD = 9600
Alias=Hayes_V_Series_9600

The Alias line tells the Setup program that the Hayes Ultra modem uses the same command set as the Hayes V Series 9600 modem.

Adding a New Modem to MODEMS.INF

NOTE: Microsoft Product Support Services only supports the version of MODEMS.INF that ships with Microsoft LAN Manager Remote Access service. If you modify the file and your new modem does not work, restore the original version of the file, and use one of the modems listed earlier in this appendix.

If you are using a modem that is not explicitly supported in MODEMS.INF, you can append a new section containing the command strings required by your modem. The name of the section should be the name of your modem and should be enclosed in brackets. If the [default] section does not contain the command strings required by your modem, use the macros defined in the preceding section to define new ones. Examples of their use are shown in the listing of the MODEMS.INF file.

NOTE: When adding a new section to MODEMS.INF, append it to the end of the file, rather than inserting it somewhere in the middle. This precaution reduces the chances of inadvertently corrupting existing entries.

To modify MODEMS.INF for a new modem

  1. Back up your existing MODEMS.INF file.

  2. Type the section title, using the format [modemname].

  3. Add a MAXBAUD line listing the modem's maximum baud rate. This is the computer-to-modem speed, not the modem-to-modem speed.

    Operating System

    Processor

    Maximum baud rate*

    MS-DOS and Microsoft Windows

    8086

    2400

    80286

    9600

    80386

    19200

    80486

    38400

    *May vary depending on CPU speed, memory speed, software running, and other factors.

NOTE: Every modem section must contain a line reading:

MAXBAUD = x

where x is the baud rate of the modem. The MAXBAUD line must be included, even if the modem is using the same baud rate as that listed in the [default] section. Whether other entries are included depends on whether a modem's init, listen, or dial strings match those in the [default] section. If they match, they do not have to be listed again in the modem's own section.

  1. Check to see if the [modem_name.init] section for the modem needs to be different from the one listed in the [default] section. If it does, then add an [init] section to the section for the new modem, below the MAXBAUD line.

  2. If you changed the [modem_name.init] section, then repeat the previous step for the [modem_name.listen] and [modem_name.dial] sections. Normally, you should not have to change these sections.

Being meticulous when you create a new modem section can save debugging time later. It is recommended that you document your work so that others can quickly understand the entries in case you are not available, or so you can remember a year later what you did and why you did it. Be sure to type a pound sign (#) at the beginning of each comment line.

MODEMS.INF Macros

The following macros can be used in the MODEMS.INF file:

Macro

Function

hxx

Inserts a character represented by the next two hexadecimal digits. For example, to send Ctrl+P (ASCII character 16), use *h10 (10 hex is 16 decimal).

w (wildcard character)

Matches any one character coming from the modem.

Modifying Your Modem Initialization Strings

If you are adding a new modem, you may need to modify the modem initialization strings in the MODEMS.INF file.

Refer to your modem manual for the specific commands you use to do the following:

  • Recall factory settings.

  • Track presence of data-carrier-detect (DCD high when carrier detected).

  • Hang up and disable auto-answer when DTR goes from ON to OFF (high to low).

  • Return result codes.

  • Return verbose codes.

  • Enable character echo in command state.

  • Wait approximately 55 seconds for carrier.

  • Make normal asynchronous connection (only needed if your modem supports synchronous connections).

  • Disable error control (disable MNP4, V42, or other error control scheme).

  • Disable compression (disable MNP5, V.42bis, or other compression scheme).

  • Disable +++ escape sequence.

  • Disable software and hardware flow control.

  • Modem Listen String (The specific command you use to make the modem answer after one ring, needed for RAS servers and also for client workstations that will be using callback.)

Error Control and Compression

RAS does not support error control and compression for the following reasons:

  • RAS for MS-DOS does not support Hardware Flow Control. Flow Control is needed to regulate data transfer when compression is enabled.

  • Not all processors can accommodate the 19200 or greater baud rate required to make compression worthwhile at 9600 baud (see the table in the section, "Adding a New Modem to MODEMS.INF," earlier in this appendix). Note that the baud rate specified in the MAXBAUD parameter of MODEMS.INF refers to the com puter-to-modem speed, not the modem-to-modem speed.

  • Not all modems can accommodate the 19200 or greater baud rate required to en able compression. A 16450 or higher serial port chip is required.

If you decide to enable error control and/or compression, first check the following:

  • Make sure your workstation can accommodate the higher baud rates required for compression. Your RAS client workstation must have a 80386 or higher proces sor and also have 16450 or higher serial port chip installed.

  • Make sure your RAS server has a multiport adapter installed, relieving the main processor of some of the interrupt processing load.

  • Make sure your modem has the large buffers needed to increase the DTE speed without enabling flow control.

  • Make sure you have identical or compatible modem types on the server and client workstations.

  • Make sure your telephone line has little or no static. This minimizes the impact of redundant error control.

To enable modem error correction and/or compression

  1. Set the MAXBAUD parameter for your modem in the MODEMS.INF file to the maximum baud rate at which you will be communicating. Valid baud rates are 1200, 2400, 4800, 9600, 19200, and 38400.

  2. For MS-DOS workstations running LAN Manager Enhanced, change digit 14 of the wrkheuristics line in the LANMAN.INI file from 1 to 0. This causes the LAN Manager workstation to transfer data in 64K blocks. This large block size ensures a smooth, constant flow of data from the computer to the modem. The modem's compression buffers will fill up quickly, thereby minimizing data trans mission delays.

NOTE: Microsoft cannot guarantee proper functionality at baud rates higher than those indicated in the default MAXBAUD = line of your MODEMS.INF file.
Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1996 Hewlett-Packard Development Company, L.P.