IBM 56K Modem for Windows ------------------------------------------------ THIS CODE NOW ALSO SUPPORTS THE ITU V.90 DRAFT RECOMMENDATION. This file contains additional information that is not in the modem installation guide. You can also visit our website for the latest information: http://www.pc.ibm.com/options/modems/56kmodem.html These drivers for your IBM 56K Modem Internet Kit (10L7389) include: - support for the ITU-T V.90 56K draft standard - support for the earlier x2 56K protocol Table of Contents: ------------------ 1. General Notes 2. Installation 3. Helpful Hints if you experience installation problems 4. AT Command Set 1. General Notes ---------- About V.90 56Kbps Connections ----------------------- To make V.90 connections, the modem requires that you connect to a V.90 compatible service provider, and have an analog phone connection through the phone system that makes no more than one analog to digital transition. If these requirements are not met, the modem will attempt to make an x2 connection. If that fails, the modem will attempt to make a V.34 connection (up to 33.6Kbps speed). 2. Installation Installation of the drivers under Windows 95 --------------------------------------------- I. Installing the new driver: 1) Windows 95 will detect the IBM ISA Modem for Windows, at this time insert istallation diskette and click Next. *if the drivers are located on the local hard drive, click Next and then click Other Locations and specify the path to the drivers. 2) The driver for the modem will be detected, click "finish" *if Windows 95 prompts for "disk labeled ISA Modem for Windows" click ok and provide the path to the drivers, for example if the drivers are on a diskette type a: 3) Continue with modem install, once complete it is recommended that you reboot the machine. Installation under Windows 3.1: ------------------------------- I. Install the new driver: 1) In the Windows 3.1x Program Manager, click File. 2) Type a:\install (or c:\install for example if on c drive) 3) Respond to prompts and finish installation. Other Installation notes ------------------------ - Win3.1: if you've already installed the modem and you are going to upgrade your system to Windows95, first un-install the modem. This will insure that after Win95 is loaded, it prompts you for the Win95 drivers instead of using the Win3.1 drivers. - If you are going to remove the modem from your system, it is recommended that you un-install the software first. - Always un-install the modem by the recommended procedure: - Win3.1: use the un-install function icon under the 56K modem window - Win95: 1) Click Start --> Settings --> Control Panel 2) Double click on the ISA Modem for Windows icon 3) Click on Uninstall 4) Close any applications that may be running 5) Reboot machine 3.Helpful Hints if you experience installation problems ----------------------------------------------------- Some users have experienced problems with getting the 56K Internet Modem recognized after reinstalling Windows 95 with the 56K modem physically in the system. When Windows 95 searches for installed devices, after a new install it skips the 56K modem. The correct thing to do is to make sure the modem is removed prior to installing Windows 95. However, if the modem was left in the during the Windows 95 installation, the only solution is to remove the modem and reinstall Windows 95. Then when the modem is added to the system Windows 95 will detect the modem correctly. There is a situation where the modem may not be detected. If the modem install process did not complete or an uninstall was done without using the modem uninstall process the modem will not be detected when the system is restarted. The solution for this situation is to remove all references to the modem from Windows 95. Follow Windows 95 instructions for removing modem devices from one to three areas, under the modem Icon in the control panel, device manager and or the Windows 95 registry. Common mistakes and or things over looked when installing, configuring and using the 56k Internet Modem Kit may be found in the following information. Avoiding Interrupt Request and Communication Port Conflicts ----------------------------------------------------------- Each serial device attached to your computer needs its own unique communication port (COM Port) and interrupt request line (IRQ). Your modem is configured through software during installation. If any other device is using the same COM Port or IRQ as your modem, it will cause a conflict. This can result in system lock-ups or loss of data. Common Sources of COM Port and IRQ Conflicts: Serial interface cards or external COM Ports, are the most common source of COM Port or IRQ conflicts. There are many other devices in your system that can cause conflicts as well. Soundcards frequently cause conflicts since they can use up to three IRQs, depending on the card. Other devices can conflict with your modem, such as SCSI cards, pre-installed modems, or other peripherals in your system. External COM Ports: Most computers come with two external COM Ports (COM1 and COM2). If you have an external COM2 connector (look on the back of your computer), you will have a conflict if you install an internal modem using COM2. Even if nothing is connected to the external port, the COM Port is still reserved for that Port, unless you disable it in the system BIOS (see below). The reason this happens is that the external connector uses a serial interface card, which reserves COM2 and IRQ3 for the external connector. Disabling The External COM2 Connector: If you do not plan to use the external COM2 connector, most computers will let you disable it (consult your computer's user guide or its manufacturer's technical support). Your internal modem may then be installed using COM2 and IRQ3, if you choose. Modems are not required to be on COM2 and IRQ3, but we are using this as an example. Serial Interface/Expansion Cards: Sound cards, network cards, SCSI/IDE, and other serial interface cards use COM Ports and IRQs. You may have installed such a card in your computer's expansion slot to run an external hard drive, or CD-ROM, or perhaps to connect to your network. Some video cards also use an IRQ. The main issue to watch for with video cards is that a lot of them share COM4's memory address space. This can conflict if you try putting a modem on COM4. Please contact your graphic card company for support on this issue. You need to determine which COM Port and IRQ each serial interface card in your system is using. One way to find this out is to open up your computer, take out the expansion card or cards, and examine their jumper settings (be sure the computer is turned off before removing an expansion card). Another simpler way is to use Microsoft's Diagnostics program. Using Microsoft Diagnostics: Microsoft Diagnostics is a program included with most versions of MS-DOS. This program tells you what is installed on each COM Port and IRQ. Simply type MSD at the DOS prompt. If you are in Windows 3.1 or Windows for Workgroups, exit Windows completely, then run MSD. For Windows 95 users, you can drop to a DOS shell and type MSD. Look under IRQ Status and COM Ports. If COM3 or COM4 is available, it will be labeled N/A. We do not recommend COM4, due to the potential graphics card conflict mentioned above. IRQ Shuffling: Sometimes it is necessary to change the IRQ setting on an expansion card to free an IRQ for the modem. For example, if your sound card is using IRQ5, you can reinstall it using IRQ11. This would then free IRQ5 for use by your modem. Determining a COM Port and IRQ to use for your Modem: The IRQs available for your modem to use, depends on your computer setup. Each IRQ on your computer is assigned a peripheral device or other function (you can consult your computer documentation to see what these default settings are, or use MSD, as explained above). The typical assignment for the first eleven IRQs are listed below: IRQ Assignment --- ----------- 0 System Timer 1 Keyboard 2 Cascade input (mandatory function) 3 COM2 4 COM1 5 Parallel Port 2 (LPT2) 6 Disk Controller (All internal floppy drives) 7 Parallel Port 1 (LPT1) 8 Real-time clock interrupt 9 Reserved 10 Reserved 11 Reserved As you can see above, there are no default assignments for COM3 and COM4. In order to use COM3 or COM4, you must assign it to an IRQ. This means sharing that IRQ with it's default assignment. This is possible, ONLY if the default assignment is NOT in use. For example, you can assign COM3 to IRQ5, if you are not using LPT2 for a second printer, or other external parallel device. You CAN NOT assign COM4 to IRQ2 because IRQ2 is being used by the computer for a mandatory function. If you have a mouse attached to COM1, IRQ4 is in use by COM1 and can not be used for COM3. If you plan to use COM3 or COM4, you must assign these COM Ports to an IRQ through Windows. Before running your software, you must first re-install your modem with the right IRQ and COM Port settings. 4. IBM 56K Modem for Windows Command Set --------------------------------------------------------- The AT command set for this modem is provided here. $ Use in conjunction with D, S, or & commands (or just AT) to display a basic command list; online help. A Manual Answer: goes off hook in answer mode. Pressing any key aborts the operations. A/ Re-executes the last issued command. Used mainly to redial. This does not require the AT prefix or a Carriage Return. Any key Aborts off-hook dial/answer operation and hangs up. AT Required command prefix, except with A/ and +++. Use alone to test for OK result code. Bn U.S./ITU-T answer sequence. B0 ITU-T answer sequence B1 U.S. answer tone Dn Dials the specified phone number. Includes the following: L Dials the last dialed number. P Pulse (rotary) dial R Originates call using answer (reverse) frequencies. Sn Dials the phone number string stored in NVRAM at position n (n = 0-3). Phone numbers are stored with the &Zn=s command. T Tone dial , (Comma) Pause, See S8 definition; which it's linked to. ; (Semicolon) Return to Command mode after dialing. § Dials the letters that follow (in an alphabetical phone number). ! (Exclamation point) Flashes the switch hook. / Delays for 125 ms. before proceeding with dial string. W Wait for second dial tone (X2 or X4); linked to S6 register. @ Dials, waits for quiet answer, and continues (X3 or higher). $ Displays a list of Dial commands. En Sets local echo. E0 Echo OFF E1 Nodem displays keyboard commands Fn Sets online local echo of transmitted data ON/OFF. F0 Local echo ON. Modem sends a copy of data it sends to the remote system to your screen. F1 Local echo OFF. Receiving system may send a remote echo of data it receives. Hn Controls ON/OFF hook. H0 Hangs up (goes on hook). H1 Goes off hook. In Displays the following information. I0 Four-digit product code I1 Results of ROM checksum I2 Results of RAM checksum I3 Product type I4 Current modem settings I5 Nonvolatile memory (NVRAM) settings I6 Link diagnostics I7 Product configuration Ln Controls speaker volume (internals only). L0 Low volume L1 Low volume L2 Medium volume L3 High volume Mn Operates speaker. M0 Speaker always OFF. M1 Speaker ON until CONNECT. M2 Speaker always ON. M3 Speaker ON after dial, until CONNECT. On Returns online. O0 Returns online. O1 Returns online and retrains. P Sets pulse dial (for phone lines that don't support touch-tone dialing). Qn Displays/suppresses result codes. Q0 Displays result codes. Q1 Quiet mode; no result codes. Q2 Displays result codes only in Originate mode. Sr.b=n Sets bit .b of register r to n (0/OFF or 1/ON). Sr=n Sets register r to n. Sr? Displays contents of S-Register r. S$ Displays a list of the S-Registers. T Sets tone dial. Vn Displays verbal/numeric result codes. V0 Numeric codes V1 Verbal codes Xn Sets result code displayed. Default is X4. Xn Setting Result Codes X0 X1 X2 X3 X4 0/OK * * * * * 1/CONNECT * * * * * 2/RING * * * * * 3/NO CARRIER * * * * * 4/ERROR * * * * * 5/CONNECT 1200 * * * * 6/NO DIAL TONE * * 7/BUSY * * 8/NO ANSWER % * * 9/Reserved 10/CONNECT 2400 * * * * 11/RINGING * 13/CONNECT 9600 * * * * 18/CONNECT 4800 * * * * 20/CONNECT 7200 * * * * 21/CONNECT 12000 * * * * 25/CONNECT 14400 * * * * 43/CONNECT 16800 * * * * 85/CONNECT 19200 * * * * 91/CONNECT 21600 * * * * 99/CONNECT 24000 * * * * 103/CONNECT 26400 * * * * 107/CONNECT 28800 * * * * 151/CONNECT 31200 * * * * 155/CONNECT 33600 * * * * * 180/CONNECT 33333 * * * * * 184/CONNECT 37333 * * * * * 188/CONNECT 41333 * * * * * 192/CONNECT 42666 * * * * * 196/CONNECT 44000 * * * * * 200/CONNECT 45333 * * * * * 204/CONNECT 46666 * * * * * 208/CONNECT 48000 * * * * * 212/CONNECT 49333 * * * * * 216/CONNECT 50666 * * * * * 220/CONNECT 52000 * * * * * 224/CONNECT 53333 * * * * * 228/CONNECT 54666 * * * * * 232/CONNECT 56000 * * * * * 236/CONNECT 57333 * * * * * Adaptive Dialing * * * Wait for 2nd Dial Tone (W) * * Wait for Answer (@) * * Fast Dial * * %Requires @ in dial string; replaces NO CARRIER Yn Selects power-on/reset default configuration. Y0 Default is profile 0 setting in NVRAM Y1 Default is profile 1 setting in NVRAM Z Resets modem. Z0 Resets modem to NVRAM profile selected by Y command. Z1 Resets modem to NVRAM profile 0 Z2 Resets modem to NVRAM profile 1 Z3 Resets modem to factory default profile 0 (&F0) Z4 Resets modem to factory default profile 1 (&F1) Z5 Resets modem to factory default profile 2 (&F2) &A Displays a list of ampersand (&) commands. &An enables/disables additional result code subsets (see Xn). &A0 ARQ result codes disabled &A1 ARQ result codes enabled &A2 V.32 modulation indicator added &A3 Protocol indicators added - LAPM/MNP/NONE (error control) and V42bis/MNP5 (data compression) &Bn Manages modem's serial port rate. &B0 Variable, follows connection rate &B1 Fixed serial port rate &B2 Fixed in ARQ mode, variable in non-ARQ mode &Cn Controls Carrier Detect (CD) signal. &C0 CD override &C1 Normal CD operations &Dn Controls Data Terminal Ready (DTR) operations. &D0 DTR override &D1 DTR toggle causes online Command mode &D2 Normal DTR operations &D3 Resets on receipt of DTR &Fn Loads a read-only (non-programmable) factory configuration. &F0 Generic template &F1 Hardware flow control template &F2 Software flow control template &Gn Sets Guard Tone. &G0 No guard tone, U.S. and Canada &G1 550 Hz guard tone, some European countries, requires B0 setting. &G2 1800 Hz guard tone, U.K., requires B0 setting. &Hn Sets Transmit Data (TD) flow control (see also &Rn). &H0 Flow control disabled &H1 Hardware flow control, Clear to Send (CTS) &H2 Software flow control, XON/XOFF &H3 Hardware and software flow control &In Sets Receive Data (RD) software flow control (see also &Rn). &I0 Software flow control disabled &I1 XON/XOFF signals to your modem and remote system &I2 XON/XOFF signals to your modem only &Kn Enables/disables data compression. &K0 Data compression disabled &K1 Auto enable/disable &K2 Data compression enabled &K3 MNP5 compression disabled &Mn Sets Error Control (ARQ) for connections at 1200 bps and higher. &M0 Normal mode, error control disabled &M1 Reserved &M2 Reserved &M3 Reserved &M4 Normal/ARQ &M5 ARQ mode &Nn Sets connect speed. If connection cannot be established at this speed, the modem will hang up. Sets ceiling connect speed if &Un is greater than 0. See &Un. &N0 Variable rate &N1 300 bps &N2 1200 bps &N3 2400 bps &N4 4800 bps &N5 7200 bps &N6 9600 bps &N7 12,000 bps &N8 14,400 bps &N9 16,800 bps &N10 19,200 bps &N11 21,600 bps &N12 24,000 bps &N13 26,400 bps &N14 28,800 bps &N15 31,200 bps &N16 33,600 bps &N17 33,333 bps &N18 37,333 bps &N19 41,333 bps &N20 42,666 bps &N21 44,000 bps &N22 45,333 bps &N23 46,666 bps &N24 48,000 bps &N25 49,333 bps &N26 50,666 bps &N27 52,000 bps &N28 53,333 bps &N29 54,666 bps &N30 56,000 bps &N31 57,333 bps &Pn Sets pulse (rotary) dial make/break ratio. &P0 U.S./Canada ratio, 39%/61% &P1 U.K. ratio, 33%/67% &Rn Sets Receive Data (RD) hardware flow control, Request to Send (RTS) (see also &Hn). &R0 Reserved &R1 Modem ignores RTS &R2 Received Data to computer only on RTS &Sn Controls Data Set Ready (DSR) operations. &S0 DSR override; always ON &S1 Modem controls DSR &Tn Begins test modes. &T0 Ends testing &T1 Analog Loopback &T2 Reserved &T3 Local Digital Loopback &T4 Enables Remote Digital Loopback &T5 Prohibits Remote Digital Loopback &T6 Initiates Remote Digital Loopback &T7 Remote Digital with self-test and error detector &T8 Analog Loopback with self-test and error detector &Un Sets floor connect speed when &Un is set greater than 0. &Nn is the ceiling connect speed. See &Nn. &U0 Disabled &U1 300 bps &U2 1200 bps &U3 2400 bps &U4 4800 bps &U5 7200 bps &U6 9600 bps &U7 12,000 bps &U8 14,400 bps &U9 16,800 bps &U10 19,200 bps &U11 21,600 bps &U12 24,000 bps &U13 26,400 bps &U14 28,800 bps &U15 31,200 bps &U16 33,600 bps &U17 33,333 bps &U18 37,333 bps &U19 41,333 bps &U20 42,666 bps &U21 44,000 bps &U22 45,333 bps &U23 46,666 bps &U24 48,000 bps &U25 49,333 bps &U26 50,666 bps &U27 52,000 bps &U28 53,333 bps &U29 54,666 bps &U30 56,000 bps &U31 57,333 bps &Wn Writes current configuration to NVRAM templates. &W0 Modifies the NVRAM 0 template (Y0) &W1 Modifies the NVRAM 1 template (Y1) &Yn Sets break handling. &Y0 Destructive, but doesn't send break &Y1 Destructive, expedited &Y2 Nondestructive, expedited &Zn=s Writes phone number string s to NVRAM at position n (n = 0-3). &Zn=L Writes last executed dial string to NVRAM at position n (n = 0-3). &Zn? Displays the phone number stored at position n (n = 0-3). &ZL? Displays the last executed dial string. +++ Escapes to online-command mode. S-Registers To change a setting, use the ATSr=n command, where r is the register and n is a decimal value from 0 - 255 (unless otherwise indicated). Register Default Function S0 0 Sets the number of rings on which to answer in Auto Answer Mode. When set to 0, Auto Answer is disabled. S1 0 Counts and stores the number of rings from an incoming call. (S0 must be greater than 0.) S2 43 Stores the ASCII decimal code for the escape code character. Default character is +. A value of 128 - 255 disables the escape code. S3 13 Stores the ASCII code for the Carriage Return character. Valid range is 0 - 127. S4 10 Stores the ASCII decimal code for the Line Feed character. Valid range is 0 - 127. S5 8 Stores the ASCII decimal code for the Backspace character. A value of 128-255 disables the Backspace key's delete function. S6 2 Sets the number of seconds the modem waits before dialing. If Xn is set to X2 or X4, this is the time-out length if there isn't a dial tone. S7 60 Sets the number of seconds the modem waits for a carrier. May be set for much longer duration if, for example, the modem is originating an international connection. S8 2 Sets the duration, in seconds, for the pause (,) option in the Dial command. S9 6 Sets the required duration, in tenths of a second, of the remote modem's carrier signal before recognition by the modem. S10 7 Sets the duration, in tenths of a second, that the modem waits to hang up after loss of carrier. This guard time allows the modem to distinguish between a line disturbance from a true disconnect (hang up) by the remote modem. While we don't recommend connecting the modem to a line with call waiting, if you have it, you may wish to adjust this setting upward to prevent the modem from misinterpreting the second call signal as a disconnect by the remote modem. A better alternative is to ask your phone company how to temporarily disable call waiting (usually *70W). For example: ATDT *70W phone number. Note: If you set S10 = 255, the modem will not hang up when carrier is lost. Dropping DTR hangs up the modem. S11 70 Sets the duration and spacing, in milliseconds, for tone dialing. S12 50 Sets the duration, in fiftieths of a second, of the guard time for the escape code sequence (+++). S13 0 Bit-mapped register. Select the bit(s) you want on and set S13 to the total of the values in the Value column. For example, ATS13 = 17 enables bit 0 (value is 1) and bit 4 (value is 16). Bit Value Result 0 1 Reset when DTR drops. 1 2 Reset non-MNP transmit buffer from 1.5K to 128 bytes. * 2 4 Set backspace key to delete. 3 8 On DTR signal, auto dial the number stored in NVRAM at position 0. 4 16 At power on/reset, Auto Dial the number stored in NVRAM at position 0. 5 32 Reserved 6 64 Disable quick retrains. 7 128 Disconnect on escape code. * The 1.5K-byte non-ARQ buffer allows data transfer with Xmodem- and Ymodem-type file transfer protocols without using flow control. The 128-byte option lets remote users with slower modems keep data you're sending from scrolling off their screens. When remote users send your computer an XOFF (Ctrl-S) and you stop transmitting, the data in transit from your modem's buffer doesn't exceed the size of their screen. This is also very helpful in situations when a remote modem/printer application is losing characters. S14 0 Reserved S15 0 Bit-mapped register setup. To set the register, see instructions for S13. Bit Value Result 0 1 Disable ARQ/MNP for V.22. 1 2 Disable ARQ/MNP for .22bis. 2 4 Disable ARQ/MNP V.32/V.32bis/V.32terbo. 3 8 Disable MNP handshake. 4 16 Disable MNP level 4. 5 32 Disable MNP level 3. 6 64 MNP incompatibility. 7 128 Disable V.42 operation. 8 136 Disable V.42 detect phase. S16 0 Bit-mapped register setup. To set the register, see instructions for S13. Bit Value Result 0 1 Reserved 1 2 Touch tone dialing test. 2-7 4-128 Reserved S17 0 Reserved S18 0 Test timer for &T loopback testing. Sets the time in seconds of testing before the modem automatically times out and terminates the test. When set to 0, the timer is disabled. Valid range is 1-255. S19 0 Sets the duration, in minutes, for the inactivity timer. The timer activates when there is no data activity on the phone line; at time-out the modem hangs up. S19 = 0 disables the timer. S20 0 Reserved S21 10 Sets the length, in 10-millisecond units, of breaks sent from the modem to the computer; applies to MNP or V.42 mode only. S22 17 Stores the ASCII decimal code for the XON character. S23 19 Stores the ASCII decimal code for the XOFF character. S24 0 Reserved S25 20 Sets the duration, in hundredths of a second, that DTR must be dropped so that the modem doesn't interpret a random glitch as a DTR loss. (Most users will want to use the default; this register is useful for setting compatibility with older systems running under older operating software.) S26 0 Reserved S27 0 Bit-mapped register setup. To set the register, see instructions for S13. Bit Value Result 0 1 Enables ITU-T V.21 modulation at 300 bps for overseas calls; in V.21 mode, the modem answers both overseas and domestic (U.S. and Canada) calls, but only originates V.21 calls. (Default Bell 103) 1 2 Enables unencoded (non-trellis coded) modulation in V.32 mode. 2 4 Disables V.32 modulation. 3 8 Disables 2100 Hz answer tone to allow two V.42 modems to connect faster. 4 16 Enables V.23 fallback mode. 5 32 Disables V.32bis mode. 6 64 Disable V.42 selective reject. 7 128 Software compatibility mode. This setting disables the codes and displays the 9600 code instead. The actual rate of the call can be viewed on the ATI6 screen. Used for unusual software incompatibilities. Some software may not accept 7200, 12,000, and 14,400 bps or greater result codes. S28 0 Eliminates the V.32 answer tones for a faster connection. 8 Default item, all times are in tenths of seconds. 255 Disables all connections except V.32 at 9600 bps. S29 20 Sets the duration, in tenths of a second, of the V.21 answer mode fallback timer. S30 0 Reserved S31 128 Reserved S32 2 Bit mapped register setup. To set the register, see the instructions for S13. Bit Value Result 0 1 V.8 Call Indicate enabled. 1 2 Enables V.8 mode. 2 4 Reserved. 3 8 Disable V.34 modulation. 4 16 Disable V.34+ modulation. 5 32 Disable x2 modulation. 6-7 64-128 Reserved S33 0 Bit mapped register setup. To set the register, see the instructions for S13. Bit Value Result 0 1 Disable 2400 symbol rate. 1 2 Disable 2743 symbol rate. 2 4 Disable 2800 symbol rate. 3 8 Disable 3000 symbol rate. 4 16 Disable 3200 symbol rate. 5 32 Disable 3429 symbol rate. 6 64 Reserved 7 128 Disable shaping. S34 0 Bit mapped register setup. To set registers, see instructions for S13. Bit Value Result 0 1 Disable 8S-2D trellis encoding. 1 2 Disable 16S-4D trellis encoding. 2 4 Disable 32S-2D trellis encoding. 3 8 Disable 64S-4D trellis encoding. 4 16 Disable non-linear coding. 5 32 Disable TX level deviation. 6 64 Disable Pre-emphasis. 7 128 Disable Pre-coding. S35 Reserved S36-S37 Reserved S38 0 Sets an optional delay, in seconds, before a forced hang-up and clearing of the Transmit buffer when DTR drops during an ARQ call. This allows time for a remote modem to acknowledge receipt of all transmitted data before it is disconnected. The modem immediately hangs up when DTR drops. This option only applies to connections terminated by dropping DTR. If the modem receives the ATH command, it ignores S38 and immediately hangs up. S39-S40 Reserved S41 0 Bit mapped register setup. To set registers, see instructions for S13. Bit Value Result 0 1 Distinctive ring enabled. S42 0 Reserved 5/27/98 gwl