INTRODUCTION ------------ This file contains information about how to configure the IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD(s), (ISA), for DOS. Use either the DOS DEVICE DRIVER in CONFIG.SYS or the DOS MODESET INITIALIZATION PROGRAM in AUTOEXEC.BAT, (but not both), to configure either a first and/or a second IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD(s) installed in your machine. Refer to PART I of this file for information regarding: IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD - DOS DEVICE DRIVER for CONFIG.SYS. Refer to PART II of this file for information regarding: IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD - DOS MODESET INITIALIZATION PROGRAM for AUTOEXEC.BAT. Refer to PART III of this file for information regarding: IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD - TECHNICAL REFERENCE INFORMATION. =============================================================================== PART I IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD (ISA) DOS DEVICE DRIVER for CONFIG.SYS The purpose of the DOS device driver provided for the ISA version of the IBM Multiprotocol Communications Adapter is to initialize the card(s) to BSC, SDLC, or ASYNC before a communications program is started. If the adapter is not properly initialized before communications is started the adapter may not be detected and may be unusable for communications. This device driver is only necessary to support the ISA version of the IBM Multiprotocol Communications Adapter. The initialization for the Microchannel version of the adapter is handled by the reference diskette. There can be up to two (2) IBM Multiprotocol Communications Adapters in the machine. The device driver will initialize the first card or both the first and second card based on parameters passed to it. If only one IBM Multiprotocol Communications Adapter is present in the machine then it must be configured as a 'first' adapter card. If two IBM Multiprotocol Communications Adapters are present in the machine then one must be configured as a 'first' adapter card and the other must be configured as a 'second' adapter card. CHANGES TO CONFIG.SYS --------------------- In order to run the DOS device driver for the IBM Multiprotocol Communications Adapter, CONFIG.SYS must be altered to include the following statements: DEVICE=d:\path\DOSMPCA.SYS /M1 [ /M2 ] where: d:\path = drive and path where DOSMPCA.SYS is located and M1 = mode value for first MPCA adapter and M2 = mode value for second MPCA adapter *---------------------------------------------------------------------* | ** The Multiprotocol Communications Adapter has a set of jumpers | | which control whether the adapter is the first or second | | adapter card. | | See the "Multiprotocol Communications Adapter: Installation, | | Problem Determination and Technical Reference" manual for | | information on setting these jumpers. | *---------------------------------------------------------------------* NOTES: (1) There must be at least one (1) parameter specified on the DEVICE= statement for DOSMPCA.SYS or the device driver will not be loaded. (2) The second (2nd) parameter specified on the DEVICE= statement for DOSMPCA.SYS is necessary only if a second MPCA adapter in installed. PARAMETER VALUES ---------------- The MODE column in the following tables contains the mode values to be passed to the device driver on the DEVICE= statement for DOSMPCA.SYS. Please note that the mode values must be specified exactly as they appear in the tables. The I/O Address and Interrupts (IRQ) columns contain the information to be used by the communications program when Multiprotocol Communications Adapters are to be used. (When using built-in serial ports for ASYNC communications, refer to your hardware reference materials for I/O addresses and IRQ levels.) FIRST Multiprotocol Communications Adapter ____________________________________________________________ | MODE | I/O Address | Protocol | Interrupts (IRQ) | | ______|_____________|__________|___________________________| | 00 | 03A0H | BSC | level 3 & 4 | | 01 | 0380H | BSC | level 3 & 4 | | 02 | 03A0H | SDLC | level 3 & 4 | | 03 | 0380H | SDLC | level 3 & 4 | | 04 | 0380H * | SDLC | level 3 & 4 & DMA1 | | 05 | 03F8H | ASYNC | level 4 SERIAL1 - (COM1) | | 06 | 02F8H | ASYNC | level 3 SERIAL2 - (COM2) | | 07 | 03A0H | SDLC | all level 3 | | 08 | 03A0H | SDLC | all level 4 | | 09 | 0380H | SDLC | all level 3 | | 0A | 0380H | SDLC | all level 4 & DMA1 | | 0B | 03A0H | BSC | all level 3 | | 0C | 03A0H | BSC | all level 4 | | 0D | 0380H | BSC | all level 3 | | 0E | 0380H | BSC | all level 4 | | ______|_____________|__________|___________________________| | 0F | Disables address decode for all | | | but configuration register | | ______|____________________________________________________| | 10 | 03E8H | ASYNC | level 3 SERIAL3 - (COM3) | | 20 | 02E8H | ASYNC | level 4 SERIAL4 - (COM4) | |_______|_____________|__________|___________________________| NOTE: * = Power on default mode NOTE: Choose /M1 from the first table and /M2 (optional) from the second table. SECOND Multiprotocol Communications Adapter ____________________________________________________________ | MODE | I/O Address | Protocol | Interrupts (IRQ) | |_______|_____________|__________|___________________________| | 00 | 0380H | BSC | level 3 & 4 | | 01 | 03A0H | BSC | level 3 & 4 | | 02 | 0380H | SDLC | level 3 & 4 | | 03 | 03A0H | SDLC | level 3 & 4 | | 04 | 03A0H * | SDLC | level 3 & 4 & DMA1 | | 05 | 03F8H | ASYNC | level 4 SERIAL1 - (COM1) | | 06 | 02F8H | ASYNC | level 3 SERIAL2 - (COM2) | | 07 | 0380H | SDLC | all level 3 | | 08 | 0380H | SDLC | all level 4 | | 09 | 03A0H | SDLC | all level 3 | | 0A | 03A0H | SDLC | all level 4 & DMA1 | | 0B | 0380H | BSC | all level 3 | | 0C | 0380H | BSC | all level 4 | | 0D | 03A0H | BSC | all level 3 | | 0E | 03A0H | BSC | all level 4 | |_______|_____________|__________|___________________________| | 0F | Disables address decode for all | | | but configuration register | |_______|____________________________________________________| | 10 | 03E8H | ASYNC | level 3 SERIAL3 - (COM3) | | 20 | 02E8H | ASYNC | level 4 SERIAL4 - (COM4) | |_______|_____________|__________|___________________________| NOTE: * = Power on default mode NOTE: Choose /M1 from the first table and /M2 (optional) from the second table. EXAMPLES -------- 1) You have two (2) Multiprotocol Communications Adapters and you would like to use the primary adapter as SERIAL3 (COM3) and the secondary adapter as SERIAL4 (COM4). The following would appear in your CONFIG.SYS file: DEVICE=d:\path\DOSMPCA.SYS /10 /20 2) You have one (1) Multiprotocol Communications Adapter and you would like to use it as SERIAL1 (COM1). (Remember to disable the built-in SERIAL1 (COM1) port, if there is one.) The following would appear in your CONFIG.SYS file: DEVICE=d:\path\DOSMPCA.SYS /05 3) You have two (2) Multiprotocol Communications Adapters and you would like to use them as SDLC adapters. The following might appear in your CONFIG.SYS file: DEVICE=d:\path\DOSMPCA.SYS /07 /08 4) You have two (2) Multiprotocol Communications Adapters and you would like to use the primary adapter as an SDLC adapter and the secondary adapter as SERIAL3 (COM3). The following would appear in your CONFIG.SYS file: DEVICE=d:\path\DOSMPCA.SYS /08 /10 5) You have one (1) Multiprotocol Communications Adapter and two (2) built-in serial ports. You would like to use your adapter card for SERIAL2 (COM2) and one of the built-in serial ports for SERIAL3 (COM3). The following would appear in your CONFIG.SYS file: DEVICE=d:\path\DOSMPCA.SYS /06 For the examples above: d:\path = drive and path where DOSMPCA.SYS file is located IF YOUR MULTIPROTOCOL COMMUNICATIONS ADAPTER DOES NOT WORK ---------------------------------------------------------- * Verify that all IRQ levels and I/O addresses are unique for every adapter card. (Try another mode value with a different address and/or IRQ value.) * Verify that the correct parameters (modes) are being passed to the DOSMPCA.SYS driver in the CONFIG.SYS file. * If the system boots without an error but the communication ports are not working, type the following at an DOS command prompt: MODE COMx where x is the problem communication port. If a message appears indicating the COMx port is not installed, check for IRQ conflicts. =============================================================================== PART II IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD (ISA) DOS MODESET INITIALIZATION PROGRAM for AUTOEXEC.BAT The purpose of the DOS modeset program provided for the ISA version of the IBM Multiprotocol Communications Adapter is to initialize the card(s) to BSC, SDLC, or ASYNC before a communications program is started. If the adapter is not properly initialized before communications is started the adapter may not be detected and may be unusable for communications. This DOS modeset program is only necessary to support the ISA version of the IBM Multiprotocol Communications Adapter. The initialization for the Microchannel version of the adapter is handled by the reference diskette. There can be up to two (2) IBM Multiprotocol Communications Adapters in the machine. The device driver will initialize the first card or both the first and second card based on parameters passed to it. If only one IBM Multiprotocol Communications Adapter is present in the machine then it must be configured as a 'first' adapter card. If two IBM Multiprotocol Communications Adapters are present in the machine then one must be configured as a 'first' adapter card and the other must be configured as a 'second' adapter card. CHANGES TO AUTOEXEC.BAT ----------------------- In order to run the DOS modeset program for the IBM Multiprotocol Communications Adapter, AUTOEXEC.BAT must be altered to include the following statements: d:\path\DOSMPCA.COM /M1 [ /M2 ] where: d:\path = drive and path where DOSMPCA.COM is located and M1 = mode value for first MPCA adapter and M2 = mode value for second MPCA adapter *---------------------------------------------------------------------* | ** The Multiprotocol Communications Adapter has a set of jumpers | | which control whether the adapter is the first or second | | adapter card. | | See the "Multiprotocol Communications Adapter: Installation, | | Problem Determination and Technical Reference" manual for | | information on setting these jumpers. | *---------------------------------------------------------------------* NOTES: (1) There must be at least one (1) parameter specified on the AUTOEXEC.BAT statement for DOSMPCA.COM or the program will not be loaded. (2) The second (2nd) parameter specified on the AUTOEXEC.BAT statement for DOSMPCA.COM is necessary only if a second MPCA adapter in installed. PARAMETER VALUES ---------------- The MODE column in the following tables contains the mode values to be passed in the AUTOEXEC.BAT statement for DOSMPCA.COM. Please note that the mode values must be specified exactly as they appear in the tables. The I/O Address and Interrupts (IRQ) columns contain the information to be used by the communications program when Multiprotocol Communications Adapters are to be used. (When using built-in serial ports for ASYNC communications, refer to your hardware reference materials for I/O addresses and IRQ levels.) FIRST Multiprotocol Communications Adapter ____________________________________________________________ | MODE | I/O Address | Protocol | Interrupts (IRQ) | | ______|_____________|__________|___________________________| | 00 | 03A0H | BSC | level 3 & 4 | | 01 | 0380H | BSC | level 3 & 4 | | 02 | 03A0H | SDLC | level 3 & 4 | | 03 | 0380H | SDLC | level 3 & 4 | | 04 | 0380H * | SDLC | level 3 & 4 & DMA1 | | 05 | 03F8H | ASYNC | level 4 SERIAL1 - (COM1) | | 06 | 02F8H | ASYNC | level 3 SERIAL2 - (COM2) | | 07 | 03A0H | SDLC | all level 3 | | 08 | 03A0H | SDLC | all level 4 | | 09 | 0380H | SDLC | all level 3 | | 0A | 0380H | SDLC | all level 4 & DMA1 | | 0B | 03A0H | BSC | all level 3 | | 0C | 03A0H | BSC | all level 4 | | 0D | 0380H | BSC | all level 3 | | 0E | 0380H | BSC | all level 4 | | ______|_____________|__________|___________________________| | 0F | Disables address decode for all | | | but configuration register | | ______|____________________________________________________| | 10 | 03E8H | ASYNC | level 3 SERIAL3 - (COM3) | | 20 | 02E8H | ASYNC | level 4 SERIAL4 - (COM4) | |_______|_____________|__________|___________________________| NOTE: * = Power on default mode NOTE: Choose /M1 from the first table and /M2 (optional) from the second table. SECOND Multiprotocol Communications Adapter ____________________________________________________________ | MODE | I/O Address | Protocol | Interrupts (IRQ) | |_______|_____________|__________|___________________________| | 00 | 0380H | BSC | level 3 & 4 | | 01 | 03A0H | BSC | level 3 & 4 | | 02 | 0380H | SDLC | level 3 & 4 | | 03 | 03A0H | SDLC | level 3 & 4 | | 04 | 03A0H * | SDLC | level 3 & 4 & DMA1 | | 05 | 03F8H | ASYNC | level 4 SERIAL1 - (COM1) | | 06 | 02F8H | ASYNC | level 3 SERIAL2 - (COM2) | | 07 | 0380H | SDLC | all level 3 | | 08 | 0380H | SDLC | all level 4 | | 09 | 03A0H | SDLC | all level 3 | | 0A | 03A0H | SDLC | all level 4 & DMA1 | | 0B | 0380H | BSC | all level 3 | | 0C | 0380H | BSC | all level 4 | | 0D | 03A0H | BSC | all level 3 | | 0E | 03A0H | BSC | all level 4 | |_______|_____________|__________|___________________________| | 0F | Disables address decode for all | | | but configuration register | |_______|____________________________________________________| | 10 | 03E8H | ASYNC | level 3 SERIAL3 - (COM3) | | 20 | 02E8H | ASYNC | level 4 SERIAL4 - (COM4) | |_______|_____________|__________|___________________________| NOTE: * = Power on default mode NOTE: Choose /M1 from the first table and /M2 (optional) from the second table. EXAMPLES -------- 1) You have two (2) Multiprotocol Communications Adapters and you would like to use the primary adapter as SERIAL3 (COM3) and the secondary adapter as SERIAL4 (COM4). The following would appear in your AUTOEXEC.BAT file: d:\path\DOSMPCA.COM /10 /20 2) You have one (1) Multiprotocol Communications Adapter and you would like to use it as SERIAL1 (COM1). (Remember to disable the built-in SERIAL1 (COM1) port, if there is one.) The following would appear in your AUTOEXEC.BAT file: d:\path\DOSMPCA.COM /05 3) You have two (2) Multiprotocol Communications Adapters and you would like to use them as SDLC adapters. The following might appear in your AUTOEXEC.BAT file: d:\path\DOSMPCA.COM /07 /08 4) You have two (2) Multiprotocol Communications Adapters and you would like to use the primary adapter as an SDLC adapter and the secondary adapter as SERIAL3 (COM3). The following would appear in your AUTOEXEC.BAT file: d:\path\DOSMPCA.COM /08 /10 5) You have one (1) Multiprotocol Communications Adapter and two (2) built-in serial ports. You would like to use your adapter card for SERIAL2 (COM2) and one of the built-in serial ports for SERIAL3 (COM3). The following would appear in your AUTOEXEC.BAT file: d:\path\DOSMPCA.COM /06 For the examples above: d:\path = drive and path where DOSMPCA.COM file is located IF YOUR MULTIPROTOCOL COMMUNICATIONS ADAPTER DOES NOT WORK ---------------------------------------------------------- * Verify that all IRQ levels and I/O addresses are unique for every adapter card. (Try another mode value with a different address and/or IRQ value.) * Verify that the correct parameters (modes) are being passed to the DOSMPCA.COM driver in the AUTOEXEC.BAT file. * If the system boots without an error but the communication ports are not working, type the following at an DOS command prompt: MODE COMx where x is the problem communication port. If a message appears indicating the COMx port is not installed, check for IRQ conflicts. =============================================================================== PART III IBM MULTIPROTOCOL COMMUNICATIONS ADAPTER CARD (ISA) TECHNICAL REFERENCE INFORMATION This Multiprotocol Communication Adapter Technical Reference contains a functional description of the Multiprotocol adapter, the interface used by the adapter to communicate, and programming information required for the adapter to communicate. INTRODUCTION ------------ The Multiprotocol Communication Adapter is designed to work in systems that use the ISA bus architecture. Two Multiprotocol Communication Adapters may be installed in a system. They must be configured to operate as: - First Multiprotocol Communication Adapter - Second Multiprotocol Communication Adapter First or Second adapter is designated by an jumper on the card. Jumpers on the card also select either internal or external wrap signal. The Multiprotocol Communication Adapter may be configured to either one of three protocols. - Asynchronous Communications - Binary Synchronous Communications (BSC) - Synchronous Data Link Control (SDLC)/High-Level Data Link Control (HDLC) protocol The different operating protocols are selected by software. CONFIGURATION REGISTER ---------------------- To access the configuration register, use the following addresses. +_______________________________+ | ADDRESS | CONFIG REGISTER | +_______________________________+ | 3AF | FIRST ADAPTER | | 38F | SECOND ADAPTER | +___________+___________________+ CONFIGURATION SELECTION BYTE ---------------------------- To set the adapter configuration mode, use the following mode selections. FIRST Multiprotocol Communications Adapter ____________________________________________________________ | MODE | I/O Address | Protocol | Interrupts (IRQ) | | ______|_____________|__________|___________________________| | 00 | 03A0H | BSC | level 3 & 4 | | 01 | 0380H | BSC | level 3 & 4 | | 02 | 03A0H | SDLC | level 3 & 4 | | 03 | 0380H | SDLC | level 3 & 4 | | 04 | 0380H * | SDLC | level 3 & 4 & DMA1 | | 05 | 03F8H | ASYNC | level 4 SERIAL1 - (COM1) | | 06 | 02F8H | ASYNC | level 3 SERIAL2 - (COM2) | | 07 | 03A0H | SDLC | all level 3 | | 08 | 03A0H | SDLC | all level 4 | | 09 | 0380H | SDLC | all level 3 | | 0A | 0380H | SDLC | all level 4 & DMA1 | | 0B | 03A0H | BSC | all level 3 | | 0C | 03A0H | BSC | all level 4 | | 0D | 0380H | BSC | all level 3 | | 0E | 0380H | BSC | all level 4 | | ______|_____________|__________|___________________________| | 0F | Disables address decode for all | | | but configuration register | | ______|____________________________________________________| | 10 | 03E8H | ASYNC | level 3 SERIAL3 - (COM3) | | 20 | 02E8H | ASYNC | level 4 SERIAL4 - (COM4) | |_______|_____________|__________|___________________________| NOTE: * = Power on default mode NOTE: Choose /M1 from the first table and /M2 (optional) from the second table. SECOND Multiprotocol Communications Adapter ____________________________________________________________ | MODE | I/O Address | Protocol | Interrupts (IRQ) | |_______|_____________|__________|___________________________| | 00 | 0380H | BSC | level 3 & 4 | | 01 | 03A0H | BSC | level 3 & 4 | | 02 | 0380H | SDLC | level 3 & 4 | | 03 | 03A0H | SDLC | level 3 & 4 | | 04 | 03A0H * | SDLC | level 3 & 4 & DMA1 | | 05 | 03F8H | ASYNC | level 4 SERIAL1 - (COM1) | | 06 | 02F8H | ASYNC | level 3 SERIAL2 - (COM2) | | 07 | 0380H | SDLC | all level 3 | | 08 | 0380H | SDLC | all level 4 | | 09 | 03A0H | SDLC | all level 3 | | 0A | 03A0H | SDLC | all level 4 & DMA1 | | 0B | 0380H | BSC | all level 3 | | 0C | 0380H | BSC | all level 4 | | 0D | 03A0H | BSC | all level 3 | | 0E | 03A0H | BSC | all level 4 | |_______|_____________|__________|___________________________| | 0F | Disables address decode for all | | | but configuration register | |_______|____________________________________________________| | 10 | 03E8H | ASYNC | level 3 SERIAL3 - (COM3) | | 20 | 02E8H | ASYNC | level 4 SERIAL4 - (COM4) | |_______|_____________|__________|___________________________| NOTE: * = Power on default mode NOTE: Choose /M1 from the first table and /M2 (optional) from the second table. OPERATING MODE SELECTION ------------------------ The configuration register is accessed by selecting the adapter address and then writing the mode byte to the adapter. - 3AF for the First Multiprotocol Communication Adapter - 38F for the Second Multiprotocol Communication Adapter The multiprotocol adapter may be programmed as address: - 380 through 38F BSC/SDLC 1 - 3A0 through 3AF BSC/SDLC 2 - 3F8 through 3FF SERIAL1 (COM1) - 2F8 through 2FF SERIAL2 (COM2) - 3E8 through 3EF SERIAL3 (COM3) - 2E8 through 2EF SERIAL4 (COM4) The multiprotocol adapters use the same interrupt levels currently assigned to communication for the IBM Personal Computer. Both adapters may be programmed to operate on the same interrupt levels as the existing communications adapters or they may be programmed to operate on interrupt level 3 only or interrupt level 4 only. If one adapter is programmed to operate on level 3 and the other is programmed to operate on level 4, the two multiprotocol adapters will operate concurrently. This also allows one multiprotocol adapter, using any one of the protocols, and an existing asynchronous adapter to operate concurrently. PROGRAMMING CONSIDERATIONS -------------------------- This is a typical routine to select the multiprotocol adapter mode. FIRST equ 03AFh ;first adapter config port address SECOND equ 038Fh ;second adapter config port address MODE equ NNh ;NN = 00-0F,10,20 (see mode config table) mode_set proc near push dx ;save registers push ax mov dx,FIRST ;first adapter configuration port address ;;; -OR- ;;; mov dx,SECOND ;second adapter configuration port address mov al,MODE out dx,al nop ;delay nop ;delay pop ax pop dx ret mode_set endp This is a typical routine to reset the multiprotocol adapter. FIRST equ 03AFh ;first adapter config port address SECOND equ 038Fh ;second adapter config port address reset_adapters proc near push dx ;save registers push ax mov dx,FIRST ;first adapter configuration port address ;;; -OR- ;;; mov dx,SECOND ;second adapter configuration port address mov al,00H ;in order to get to 8255 out dx,al nop ;delay nop ;delay mov dx,03A3H ;mode set 8255 mov al,98H out dx,al mov dx,03A1H ;8255 port B mov al,17H ;turn on reset line out dx,al ;to all adapters call delay mov al,07H ;leave port B set up out dx,al ;and reset line off out dx,al mov dx,03A2H ;set up port C for wrap mov al,0CH ;and interrupts disabled out dx,al pop ax pop dx ret reset_adapters endp delay proc near mov al,80H mov delcnt,al delop: mov al,delcnt dec al mov delcnt,al jz short delrtn jmp delop delrtn: ret delay endp delcnt db 0 During power up the IBM PC BIOS has routines that check for the presence of asynchronous adapters. If asynchronous adapters are present as feature cards or as com ports on the system board, the BIOS routines place the address of the adapters in storage. There are other BIOS routines that handle the transfer of data to and from the asynchronous adapters. The adapter addresses that are stored are required for these routines. Since the Multiprotocol Communication Adapter powers up in SDLC mode, no address is placed in storage during power up. If the multiprotocol adapter is going to be used in asynchronous mode and the BIOS routines are going to be used, then the address has to be placed in storage. The following programming code will be required if you plan to use the BIOS routines for the asynchronous adapters.This example code will establish the 2 possible asynchronous adapters as SERIAL3 (COM3) and SERIAL4 (COM4). This assumes that SERIAL1 (COM1) and SERIAL2 (COM2) (on system board, etc) are present. This is a typical routine to setup the multiprotocol adapter SERIAL3 (COM3) and SERILA4 (COM4) ports for use by DOS. async_com1_adr equ 03F8H async_com2_adr equ 02F8H ASYNC_COM3_ADR equ 03E8H ASYNC_COM4_ADR equ 02E8H store_async_address proc near push ds push ax push bx mov ax,0040H mov ds,ax mov bx,0004H mov word ptr (bx),ASYNC_COM3_ADR mov bx,0006H mov word ptr (bx),ASYNC_COM4_ADR pop bx pop ax pop ds ret store_async_address endp