ETHERNET CREDIT CARD ADAPTER II 2/16/94 _______________________________________________________________________ 1.1 About This File . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 CARD SERVICES AWARE DEVICE DRIVERS . . . . . . . . . . . . . . . . . 1 1.2.1 DOS NDIS DRIVER (PCMNICCS.DOS) . . . . . . . . . . . . . . . . . 1 1.2.2 DOS ODI DRIVER (PCMDMCS.COM) . . . . . . . . . . . . . . . . . . 2 1.2.3 WINDOWS FOR WORKGROUPS SUPPORT . . . . . . . . . . . . . . . . . 3 1.2.4 OS/2 NDIS DRIVER (PCMNICCS.OS2) . . . . . . . . . . . . . . . . 4 1.2.6 MULTIPLE CARD SUPPORT . . . . . . . . . . . . . . . . . . . . . 6 1.2.7 ERROR INDICATIONS . . . . . . . . . . . . . . . . . . . . . . . 6 1.3 POINT CONNECTIVITY ENABLER SOFTWARE FOR DOS . . . . . . . . . . . . 7 1.4 CONNECTIVITY ENABLER PARAMETERS FOR DOS . . . . . . . . . . . . . . 8 1.4.1 ETHERNET.SYS SYNTAX . . . . . . . . . . . . . . . . . . . . . . 8 1.4.2 POINTETH.SYS SYNTAX . . . . . . . . . . . . . . . . . . . . . . 9 1.4.3 TOSHETH.SYS SYNTAX . . . . . . . . . . . . . . . . . . . . . . . 9 1.5 DIAGNOSTIC SOFTWARE . . . . . . . . . . . . . . . . . . . . . . . 10 1.5.1 RUNNING THE DIAGNOSTIC PROGRAM . . . . . . . . . . . . . . . . 10 1.6 USING A MEMORY MANAGER WITH YOUR CREDIT CARD ADAPTER . . . . . . . 10 1.6.1 Point Connectivity Enabler with a memory manager . . . . . . . 11 1.6.2 IBM Card and Socket Services with a memory manager . . . . . . 12 1.6.3 Phoenix Card and Socket Services with a memory manager . . . . 16 1.6.4 Using expanded memory (EMS) . . . . . . . . . . . . . . . . . 18 1.7 PITFALLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.7.1 DIAGNOSTIC PITFALLS . . . . . . . . . . . . . . . . . . . . . 20 1.7.2 SYS0053 ERRORS USING LAN SERVER 3.0 . . . . . . . . . . . . . 21 1.7.3 MISCELLANEOUS . . . . . . . . . . . . . . . . . . . . . . . . 22 1.7.3.1 Hot plugging in PCMCIA environments . . . . . . . . . . . 22 1.7.3.2 IBM Thinkpad 720/720C with enablers . . . . . . . . . . . 22 1.7.3.3 Toshiba T3300SL . . . . . . . . . . . . . . . . . . . . . 22 1.7.3.4 AST PowerExec computers . . . . . . . . . . . . . . . . . 22 1.7.3.5 Machines using SystemSoft Card and Socket Services . . . . 23 1.8 WHERE TO FIND CARD SERVICES AND SOCKET SERVICES . . . . . . . . . 24 1.9 OS/2 DEVICE DRIVER STATEMENT ORDER . . . . . . . . . . . . . . . . 25 1.1 ABOUT THIS FILE ____________________ This file contains additional information on the Ethernet Card Adapter. It also describes the Card Services Aware device drivers, Connectivity Enabler Software and Diagnostic Software that is included. 1.2 CARD SERVICES AWARE DEVICE DRIVERS _______________________________________ The device drivers on this diskette (PCMNICCS.DOS, PCMDMCS.COM, PCMNICCS.OS2 and PCMDMCS.SYS) are Card Services Aware and can be used with Card Services for configuration. The DOS drivers (PCMNICCS.DOS and PCMDMCS.COM) also can be used with Connectivity Enabler software if Card Services is unavailable. 1 1.2.1 DOS NDIS DRIVER (PCMNICCS.DOS) The Ethernet Credit Card Adapter's configuration information for the DOS NDIS driver (PCMNICCS.DOS) is stored in the PROTOCOL.INI file. The section of the PROTOCOL.INI file that contains configuration information for this card must begin with "[PCMNICCS_NIF]". The valid entries in this file are listed below. [PCMNICCS_NIF] DRIVERNAME = PCM_CS$ This constant line must always be present. IOBASE = value (optional for Card Services environments) where value is any base I/O address between 0x120 and 0x3C0 on a 0x20 byte increment. The driver default value of 0x300 is suggested. The leading "0x" for hex notation is required. INTERRUPT = value (optional for Card Services environments) where value is one of the following interrupts, 3, 4, 5, 7, 9, 10, 11 The driver default value of 5 is suggested. RAMADDRESS = value where value is one of the following memory segment addresses: 0, 0xC8000, 0xCC000, 0xD0000, 0xD4000, 0xD8000, 0xDC000 The driver default value is 0xD4000 if no keyword is supplied. The leading "0x" for hex notation is required. -If your machine has Card Services 2.0 installed and you want Card Services to select your RAM location for you, RAMADDRESS = 0 must be used. NETADDRESS = (Optional parameter, use cannonical format) PCMCIA Use this keyword when using PCMCIA card and socket services. This keyword signals the driver to look for Card Services prior to looking for the adapter. Do not use when using a super client driver or connectivity enabler. SOCKET = n (Optional parameter, starting with 0) This is the PCMCIA socket number in which the driver should recognize the Ethernet card. This entry is required only if you are using more than one Ethernet Credit Card Adapter. If no slot is specified, the driver uses the first Ethernet Credit Card Adapter found. BUSSIZE8 This keyword signals the driver to use 8-bit data transfers. This is required on machines that only have 8-bit data buses, such as the Grid Convertible and the AST Pen Exec. The following is an example of a PROTOCOL.INI entry for use with Card Ser- vices environments: [PCMNICCS_NIF] DRIVERNAME=PCM_CS$ RAMADDRESS=0 INTERRUPT=5 IOBASE=0x300 PCMCIA 2 The following is an example of a PROTOCOL.INI entry used with an enabler: [PCMNICCS_NIF] DRIVERNAME=PCM_CS$ INTERRUPT=5 RAMADDRESS=0xD4000 IOBASE=0x300 1.2.2 DOS ODI DRIVER (PCMDMCS.COM) The Ethernet Credit Card Adapter's configuration information for the NetWare DOS ODI driver (PCMDMCS.COM) is stored in the NET.CFG file. The first line of the NET.CFG file configuration information for this adapter must be "Link Driver PCMDMCS". The valid entries in this file are listed below. Link Driver PCMDMCS PORT value (optional for Card Services environments) where value is one of the following base I/O hex addresses: 200, 220, 240, 260, 280, 2A0, 2C0 300, 340, 360 INT value (optional for Card Services environments) where value is one of the following interrupts, 3, 4, 5, 7, 9, 10, 11, 15 MEM value where value is one of the following hex memory addresses: FFFFFFFF, C0000, C4000, C8000, CC000 D0000, D4000, D8000, DC000 Use FFFFFFFF where Card Services will assign memory location. FRAME ETHERNET_value where value is one of the following frame types: 802.3 (Novell Netware 3.xx networks) 802.2 (Novell Netware 4.xx networks) SNAP (Use when 802.2 SNAP extension is required) II (Networks connected to DEC or using TCP/IP protocol) The default is 802.2 if no keyword is supplied. NODE ADDRESS value (optional for locally administered address) where "value" is 12 hex bytes of node address If a node address is not specified, the card must be installed in the slot at startup. PCMCIA Use this keyword when using PCMCIA card and socket services. This keyword signals the driver to look for Card Services prior to looking for the adapter. Do not use when using a super client driver or connectivity enabler. SLOT value (Optional parameter, starting with 0) where value indicates which PCMCIA socket an Ethernet card is located in, and is required only if you are using more than one Ethernet Credit Card Adapter. If no slot is specified, the driver uses the first Ethernet PCMCIA Card found. 3 The following is an example NET.CFG entry for machines with Card Services 2.0 installed, and for a Netware 3.11 environment: Link Driver PCMDMCS MEM FFFFFFFF FRAME ETHERNET_802.3 PCMCIA The following is an example NET.CFG entry for use without Card Services with Netware 4.0: Link Driver PCMDMCS Node Address 000123456789 INT 5 PORT 300 MEM D8000 1.2.3 WINDOWS FOR WORKGROUPS SUPPORT An OEMSETUP.INF file is provided for Windows for Workgroups installations. During Windows for Workgroups installation, use the Credit Card option diskette for the automated installation utility. 1.2.4 OS/2 NDIS DRIVER (PCMNICCS.OS2) The Ethernet Credit Card Adapter's configuration information for the OS2 NDIS driver (PCMNICCS.OS2) is stored in the PROTOCOL.INI file. The section of the PROTOCOL.INI file that contains configuration information for this card must begin with "[PCMNICCS_NIF]". The valid entries in this file are listed below. [PCMNICCS_NIF] DRIVERNAME = PCM_CS$ This constant line must always be present. IOBASE = value (optional for Card Services environments) where value is any base I/O address between 0x120 and 0x3C0 on a 0x20 byte increment. The driver default value of 0x300 is suggested. The leading "0x" for hex notation is required. INTERRUPT = value (optional for Card Services environments) where value is one of the following interrupts, 3, 4, 5, 7, 9, 10, 11 The driver default value of 5 is suggested. RAMADDRESS = value where value is one of the following memory segment addresses: 0, 0xC8000, 0xCC000, 0xD0000, 0xD4000, 0xD8000, 0xDC000 The driver default value is 0xD4000 if no keyword is supplied. The leading "0x" for hex notation is required. -If your machine has Card Services 2.0 installed and you want Card Services to select your RAM location for you, RAMADDRESS = 0 must be used. NETADDRESS = (Optional parameter, use cannonical format) 4 PCMCIA This keyword signals the driver to look for Card Services prior to looking for the adapter. SOCKET = n (Optional parameter, starting with 0) This is the PCMCIA socket number in which the driver should recognize the Ethernet card. This entry is required only if you are using more than one Ethernet Credit Card Adapter. If no slot is specified, the driver uses the first Ethernet Credit Card Adapter found. The following is an example of a PROTOCOL.INI entry for use with Card Ser- vices environments: [PCMNICCS_NIF] DRIVERNAME=PCM_CS$ RAMADDRESS=0x0 INTERRUPT=5 IOBASE=0x300 PCMCIA 1.2.5 OS/2 ODI DRIVER (PCMDMCS.SYS) The Ethernet Credit Card Adapter's configuration information for the NetWare OS/2 ODI driver (PCMDMCS.SYS) is stored in the NET.CFG file. The first line of the NET.CFG file configuration information for this adapter must be "Link Driver PCMDMCS". The valid entries in this file are listed below. Link Driver PCMDMCS PORT value (optional for Card Services environments) where value is one of the following base I/O hex addresses: 200, 220, 240, 260, 280, 2A0, 2C0 300, 340, 360 INT value (optional for Card Services environments) where value is one of the following interrupts, 3, 4, 5, 7, 9, 10, 11, 15 MEM value where value is one of the following hex memory addresses: FFFFFFFF, C0000, C4000, C8000, CC000 D0000, D4000, D8000, DC000 Use FFFFFFFF where Card Services will assign memory location. FRAME ETHERNET_value where value is one of the following frame types: 802.3 (Novell Netware 3.xx networks) 802.2 (Novell Netware 4.xx networks) SNAP (Use when 802.2 SNAP extension is required) II (Networks connected to DEC or using TCP/IP protocol) The default is 802.2 if no keyword is supplied. NODE ADDRESS value (optional for locally administered address) where "value" is 12 hex bytes of node address If a node address is not specified, the card must be installed in the slot at startup. PCMCIA This keyword signals the driver to look for Card Services prior to looking for the adapter. 5 SLOT value (Optional parameter, starting with 0) where value indicates which PCMCIA socket an Ethernet card is located in, and is required only if you are using more than one Ethernet Credit Card Adapter. If no slot is specified, the driver uses the first Ethernet PCMCIA Card found. The following is an example NET.CFG entry for machines with Card Services 2.0 installed, and for a Netware 3.11 environment: Link Driver PCMDMCS MEM FFFFFFFF FRAME ETHERNET_802.3 PCMCIA 1.2.6 MULTIPLE CARD SUPPORT If multiple cards are installed in one system, make sure that the settings for memory, interrupt and I/O for each adapter in the NET.CFG or PROTOCOL.INI, do not conflict with the other adapters settings. To enable the ODI driver to support multiple Ethernet Credit Card adapters in one computer system, you should specify which socket the card is in in the NET.CFG file. This is done with the "SLOT" keyword. For example, SLOT 1 means the Ethernet Credit Card Adapter is in the second PCMCIA socket since PCMCIA sockets are numbered beginning at zero. To enable the NDIS driver to support multiple Ethernet Credit Card Adapters, use the SOCKET keyword in the PROTOCOL.INI file. For example, SOCKET = 0 means that the adapter is in the first PCMCIA socket. If you are using two Ethernet Credit Card Adapters with OS/2 you must add an INTERRUPT=i statement to the [PCMNICCS_nif2] section, where 'i' can be any un-used interrupt. You can either use LAPS to do this or edit your PROTOCOL.INI file. A sample follows: [PCMNICCS_nif] DriverName = PCM_CS$ RAMADDRESS = 0x0 PCMCIA [PCMNICCS_nif2] DriverName = PCM_CS$ RAMADDRESS = 0x0 INTERRUPT = 10 PCMCIA 6 1.2.7 ERROR INDICATIONS The drivers signal the user when a Card Services call fails. The error signal is an alternating beep. If you hear this sound, a problem is occurring during initialization. Review your PROTOCOL.INI and CONFIG.SYS to verify proper parameters. It is vitally important that memory areas requested are avail- able. Memory contention can be a big problem. Check for any DOS programs (e.g. EMM386.EXE) that may be conflicting with the memory requested. 1.3 POINT CONNECTIVITY ENABLER SOFTWARE FOR DOS ________________________________________________ If your machine is not configured with PCMCIA Card Services 2.0, a point Connectivity Enabler is required to configure the PCMCIA socket hardware and the Ethernet Credit Card Adapter hardware for operation. It is loaded as a device driver in CONFIG.SYS BEFORE any Ethernet device drivers and AFTER the Socket services device driver (if any). Once the Connectivity Enabler has run, it removes itself from the system memory. In systems without Card Services, it is essential that the correct enabler is used and that the Ethernet communications software used agree on one param- eter. The parameter is the Interrupt Request level (IRQ). The default value of IRQ 5 is used by the software. This can be changed in either PROTOCOL.INI for the NDIS driver or in NET.CFG for the Netware driver. If you find that IRQ 5 does not function on your machine, IRQ 3 is another common choice. Be sure to change both the enabler parameter and the PROTOCOL.INI for the NDIS driver or the NET.CFG file for the Netware driver. An example PROTOCOL.INI entry for changing the interrupt to 3 follows: [PCMNICCS_NIF] DRIVERNAME=PCM_CS$ INTERRUPT=3 RAMADDRESS=0xD4000 IOBASE=0x300 The following is a sample NET.CFG entry for changing the interrupt to 3: Link Driver PCMDMCS Node Address 000123456789 IRQ 3 There are three different point connectivity enablers included with this package. They are: o ETHERNET.SYS o POINTETH.SYS o TOSHETH.SYS 7 ET0.MSG contains the screen messages for the connectivity enablers. ETHERNET.SYS is a Socket Services 1.01 interface enabler. It uses the socket services that is included in some computers to configure the socket and card. It is used on machines with DATABOOK PCMCIA controllers that support the Socket Services 1.01 interface and not Card Services. POINTETH.SYS is an enabler that communicates directly to Intel 82365SL (or equivalent) hardware. This is a PCMCIA socket controller common in many systems such as Dell, AST, and NCR Safari. This enabler should be used when socket services does not exist on your machine or the version of socket ser- vices on your machine does not communicate with ETHERNET.SYS correctly. TOSHETH.SYS is an enabler that is used with the Toshiba T3300SL computer. 1.4 CONNECTIVITY ENABLER PARAMETERS FOR DOS ____________________________________________ Each enabler has parameters that allow the enabler to be customized to the communication software. The parameters allow the selection of which socket is used for the card and memory areas used by the card. The default parame- ters should be sufficient for most users. 1.4.1 ETHERNET.SYS SYNTAX Complete Syntax: DEVICE=\path\ETHERNET.SYS [SA/SB] [IRQ=X] [DS=16/DS=8] [SRAM=XXXX] [IO=XXX] SA/SB (Socket A or Socket B) IRQ (Interrupt Level (PCMCIA controller interrupt)) DS (Data size (16 or 8 bit bus)) SRAM (Shared RAM address) IO (Memory mapped I/O address) Note: X is a hexadecimal number Example: DEVICE=C:\LAN\ETHERNET.SYS SA IRQ=3 This would configure an Ethernet credit card for socket A and the IRQ value would be 3. 8 The default parameters are: SA (Socket A) IRQ=5 (PCMCIA controller interrupt at IRQ 5) DS=16 (Data Bus size of 16 bits) SRAM=D400 (Memory segment address) IO=300 (Base I/O address) 1.4.2 POINTETH.SYS SYNTAX Complete Syntax: DEVICE=\path\POINTETH.SYS [SA/SB/SC/SD] [IRQ=X] [WS=0,1,2,3,4] [DS=16/DS=8] [SRAM=XXXX] [IO=XXX] [PCIC=XXXX] DEFAULTS SA/SB/SC/SD (Socket A, B, C or D) - A IRQ (Interrupt Level (PCMCIA controller interrupt)) - 5 WS (Wait state selection) - 0 DS (Data size (16 or 8 bit bus)) - 16 SRAM (Shared RAM segment address) - D400 IO (I/O base port address) - 300 PCIC - PC Card Interface Controller base I/O port - 03E0 note: X is a hexadecimal number Example DEVICE=C:\LAN\POINTETH.SYS SB WS=0 IO=320 This will configure an Ethernet credit card for socket B and no wait states. The base I/O port address would be 320h. The default parameters are: SA (Socket A) IRQ=5 (PCMCIA controller interrupt at IRQ 5) WS=1 (1 wait state) DS=16 (Data Bus size of 16 bits) SRAM=D400 (Shared RAM at D400 in the workstation) IO=300 (Base I/O port at 300h) The PCIC parameter has been added to support the Port Replicator Model I, that attaches to the IBM ThinkPad 750 notebook computer, and any other Intel 82365SL-based device that does not use 3E0 as its base I/O port. The Port Replicator uses 3E2 as its I/O port base address. Here is a sample invocation on a machine using the Port Replicator. sample: DEVICE=C:\LAN\POINTTR.SYS RS=16 PCIC=03E2 1.4.3 TOSHETH.SYS SYNTAX Complete Syntax: DEVICE=\path\TOSHETH.SYS [IRQ=X] [SRAM=XXXX] [IO=XXX] IRQ (PCMCIA controller interrupt level) SRAM (Shared RAM in the workstation) IO (Base I/O port) note: X is a hexadecimal number 9 EXAMPLE: DEVICE=C:\LAN\TOSHETH.SYS This would configure an Ethernet credit card for IRQ=5. The default parameters are: IRQ=5 (PCMCIA controller interrupt at IRQ 5) SRAM=D400 (Shared RAM at D400 in the workstation) IO=300 (Base I/O Port at 300h) 1.5 DIAGNOSTIC SOFTWARE ________________________ The diagnostic software is used to determine if the Ethernet Credit card is performing correctly. It runs through a series of tests that check the opera- tion of the card, determines if there are conflicts with I/O, memory and interrupts, checks for connection to the network, and does a series of loopback tests to determine hardware operation. The driver also determines what type of environment you are operating in: Card Services 2.0, Socket Ser- vices 1.01 or a hardware enabler. NOTE: The diagnostics program will not execute if your system uses a Databook PCMCIA socket controller. 1.5.1 RUNNING THE DIAGNOSTIC PROGRAM For DOS: The diagnostics are started by typing A:ECCTEST from the DOS prompt. Instructions will appear on the screen to connect and disconnect from the network. During the loopback tests, network traffic can cause a false failure ofthe test. If he network has no traffic,the diagnostics can be run without disconnecting from the network. For OS/2: The workstation must be booted from the installation diskette. It will ask for your machine type and socket where the adapter is installed. The diagnostic program will be run with a connectivity enabler. On a 10BASE2 network (thinnet), a T-connector with two 50 ohm terminators attached to the Media Access Module (MAM) will enable the diagnostics to run loopback tests. If a terminated T-connector is not available, the diagnos- tics will give you the option to bypass the loopback tests. 1.6 USING A MEMORY MANAGER WITH YOUR CREDIT CARD ADAPTER _________________________________________________________ If your computer comes with a memory manager (preinstalled), or if you would like to use one, you must configure your computer so the memory manager does not use the same memory as your card. If you do not configure your computer properly, there will be memory conflicts, and your card will not operate. To prevent memory conflicts, there are some guidelines you must follow. It is not possible to describe here the requirements for all cards and all memory managers but these guidelines should help you to make the necessary deci- sions. 10 The following 4 sections address the use of a memory manager with different machine configurations. Please read the section appropriate for your config- uration. 1.5.1: A Point Connectivity Enabler with a memory manager (If you do not install Card and Socket Services on your DOS computer, the installation program will install a point connectivity enabler for you.) 1.5.2: IBM Card and Socket Services with a memory manager (ThinkPad 720 and ThinkPad 750) 1.5.3: Phoenix Card and Socket Services with a memory manager (ThinkPad 350 and PC DOS 6.1) 1.5.4: Using Expanded Memory (EMS) It is recommended you read the appropriate section above (section 1, 2, or 3) before reading this section. Note: Throughout these 4 sections, you will see a given memory address specified different ways. For example, you will see the same address, D4000, specified as D4000, D400, or D4. It is important for you to realize these are all the same. It's just that, depending on the option used, it may have to be specified a certain way. 1.6.1 POINT CONNECTIVITY ENABLER WITH A MEMORY MANAGER 1. If you have a DOS machine without Card and Socket Services installed, the installation program will install a point connectivity enabler for you. On DOS machines, you have the option of using either the point connectivity enabler OR Card and Socket Services with your Ethernet card. Please see the installation guide for more information on these two options. 2. Your card requires memory in order to operate. You must configure your computer so a memory manager and/or other PC cards do not use the same memory range as your card, otherwise, your card will not operate. To prevent the memory manager from using the same memory as your card, you must exclude the memory range being used by your card. Important: For computers with multiple PC cards, you must exclude the memory ranges being used by all of them. To prevent other PC cards from using the same memory, the memory ranges of all cards in use in your machine cannot conflict (overlap) with one another. 3. To add the required excludes on your memory manager line, you must edit your CONFIG.SYS file after completing the installation. 11 A. If you use the default values for the card, the following exclusion is required on the memory manager line: D400-D7FF for 16KB memory (memory base address default of D400) The required exclusion is shown in the example below (using EMM386, this is done using the "X=" parameter): DEVICE=C:\POINTETH.SYS SA IRQ=5 WS=0 SRAM=D400 IO=300 : DEVICE=C:\DOS\HIMEM.SYS : DEVICE=C:\DOS\EMM386.EXE 1024 RAM X=D400-D7FF B. If you do not use the default values, but instead specify the base address of the memory you want your card to use (this capability is provided on a screen during the installation), you must exclude the memory range that starts at the base address that you specified. Please see the table below. Important: When specifying the base address, you must make certain that the memory range being used by your card does not conflict (overlap) with memory that is being used by any other cards in your computer. MEMORY RANGE TO EXCLUDE ON THE MEMORY MANAGER LINE (for EMM386, use the "X=" option) Exclude the If following Memory Base range address is... (16KB size) ------------- ----------- C0000 C000-C3FF C4000 C400-C7FF C8000 C800-CBFF CC000 CC00-CFFF D0000 D000-D3FF D4000 D400-D7FF D8000 D800-DBFF DC000 DC00-DFFF 1.6.2 IBM CARD AND SOCKET SERVICES WITH A MEMORY MANAGER 1. You must use the /MA option. The /MA option gives the memory range which IBM Card Services (IBM CS) can use for its own purposes and from which it allocates portions, as required, to the PC cards installed in your computer. You must specify the /MA range on the Resource Map Utility (RMU) line by editing the CONFIG.SYS file after completing the installation. 12 2. To prevent memory conflicts between IBM CS and the memory manager, you must EXCLUDE the entire range specified by the /MA option from the memory manager. This is done by adding the required excludes on your memory manager line in your CONFIG.SYS file after completing the installation. There are several things you must know when using the /MA option: 1. The /MA option should be placed on the following line in the CONFIG.SYS file: For the IBM ThinkPad 720, "DEVICE=C:\DICRMU02.SYS" For the IBM ThinkPad 750, "DEVICEhigh=C:\THINKPAD\DICRMU01.SYS" (The ThinkPad 750 comes preinstalled with a /MA option range. Given what you read here and the requirements for your PC cards, you may decide to change it.) 2. For the IBM ThinkPads, the /MA range you specify must be within the range C000-DFFF. 3. The memory used by ALL your PC cards must be WITHIN the range specified by the /MA option. Also, the memory ranges of the cards in use in your machine must not conflict (overlap) with one another. A. The default autoset mode for your card memory will automatically find memory for your Ethernet credit card within the /MA range. In addition, provided you load the Ethernet (ODI or NDIS) driver AFTER you load all other PC card drivers (in the CONFIG.SYS), autoset will prevent conflicts between your Ethernet card memory and the other PC cards' memory. One limitation of autoset is that you will not know the memory range your card is using. B. Or...you can specify the base address for the memory range (this capability is provided on a screen during installation). You must specify the base address so that the Ethernet card memory range is WITHIN the range specified by the /MA option. 4. The memory size specified by the /MA range must be equal to or greater than the memory required by all PC cards in use in your machine PLUS 4KB which is required by IBM CS for its own purposes. (This 4KB should only be added once regardless of the number of cards in your computer. You do NOT need to add 4KB for IBM CS for each card.) Your Ethernet card requires 16KB (using default 16KB memory size). IBM CS will take the first 4KB block it finds that is available and within the /MA range. 13 Some example /MA and memory ranges: (You may choose other ranges to fit your requirements. In all examples, the Ethernet card memory base address was specified to the first address shown in its appropriate column.) ------------------------------------------------------------------ | /MA range on | /MA | Ethernet card | Memory range | Size | | RMU line in | range | memory range | available for | of | | CONFIG.SYS | size | (16KB) | other cards | avail | | | in KB | | and IBM CS's | memory| | This range | | Must be | 4KB | for | | must also be | | specified | | other | | excluded on | | within | (IBM CS will | cards | | memory manager | | /MA range | take whatever | in KB | | line in | | during | 4KB block it | | | CONFIG.SYS | | installation | finds that is |*See | | | | | available in | note 1| | | | | this range) | below | |----------------+-------+----------------+----------------+-------| | Best use of memory (card memory range ends at upper boundary | | of DFFF): | | | | | | | | D000-DFFF | 64KB | DC00-DFFF | D000-DBFF | 44KB | |----------------+-------+----------------+----------------+-------| | Using ThinkPad 750 /MA default: | | | | | | | | C800-CFFF | 32KB | C800-CBFF | CC00-CFFF | 12KB | |----------------+-------+----------------+----------------+-------| | Using autoset mode (Autoset described in 3A above; to prevent | | memory conflicts, you must load your Ethernet driver after | | you load all other PC card drivers; your card will take 16KB| | and IBM CS will take 4KB somewhere in the C800-CFFF range | | leaving 12KB for other cards in this range): | | | | | | | | C800-CFFF | 32KB | autoset | C800-CFFF | 12KB | |----------------+-------+----------------+----------------+-------| | 20KB is minimum /MA range size that can be used: | | | | | | | | DB00-DFFF | 20KB | DC00-DFFF | DB00-DBFF | 0KB | | | | | used by IBM CS | | |----------------+-------+----------------+----------------+-------| | If another PC card requires D000-D3FF: | | | | | | | | D000-DFFF | 64KB | D400-D7FF | D000-D3FF & | 44KB | | | | | D800-DFFF | | |----------------+-------+----------------+----------------+-------| | Allocating more memory for PC cards (Expanded memory, EMS, NOT | | required and cannot be used in this example): | | | | | | | | C000-DFFF | 128KB | DC00-DFFF | C000-DBFF |108KB | ------------------------------------------------------------------ 14 Note 1: The number of KB remaining for your other cards. (The 16KB required for your Ethernet card and the 4KB required by IBM CS have been subtracted from the total KB specified by the /MA range; depending on the memory range boundaries, another 4KB may be required.) Example CONFIG.SYS, PROTOCOL.INI, and NET.CFG files: (All are ThinkPad 720 examples.) 1. NDIS environment (this example is Other NDIS Environments/IBM LSP) Using the Ethernet card default value of autoset for memory base address, here is a sample CONFIG.SYS and PROTOCOL.INI: (The default value autoset will find memory within the range specified by the /MA option.) CONFIG.SYS: DEVICE=C:\DOS\EMM386.EXE 1024 RAM X=C800-CFFF : DEVICE=C:\IBMDOSCS.SYS DEVICE=C:\DICRMU02.SYS /MA=C800-CFFF : DEVICE=C:\LSP\PCMNICCS.DOS Note: 16KB memory is taken by the Ethernet card 4KB is taken by IBM CS PROTOCOL.INI: [PCMNICCS_MOD] ;Ethernet Credit Card DriverName = PCM_CS$ RAMADDRESS = 0 PCMCIA : 2. NDIS environment (this example is Other NDIS Environments/IBM LSP) Specifying the value of C8000 for the Ethernet card memory base address, here is a sample CONFIG.SYS and PROTOCOL.INI: CONFIG.SYS: DEVICE=C:\DOS\EMM386.EXE 1024 RAM X=C800-CFFF : DEVICE=C:\IBMDOSCS.SYS DEVICE=C:\DICRMU02.SYS /MA=C800-CFFF : DEVICE=C:\LSP\PCMNICCS.DOS Note the ranges taken: 16KB memory range of C800-CBFF 4KB for IBM CS within /MA range 15 PROTOCOL.INI: [PCMNICCS_MOD] ;Ethernet Credit Card DriverName = PCM_CS$ IOBASE = 0x300 INTERRUPT = 5 RAMADDRESS = 0xC8000 PCMCIA : 3. ODI environment Specifying the value of C8000 for the Ethernet card memory base address, here is a sample CONFIG.SYS and NET.CFG: CONFIG.SYS: DEVICE=C:\DOS\EMM386.EXE 1024 RAM X=C800-CFFF : DEVICE=C:\IBMDOSCS.SYS DEVICE=C:\DICRMU02.SYS /MA=C800-CFFF Note the ranges taken: 16KB memory range of C800-CBFF 4KB for IBM CS within /MA range NET.CFG: Link Driver PCMDMCS PORT 300 INT 5 MEM C8000 FRAME ETHERNET_802.2 PCMCIA 1.6.3 PHOENIX CARD AND SOCKET SERVICES WITH A MEMORY MANAGER 1. Your card requires memory in order to operate. You must configure your computer so a memory manager and/or other PC cards do not use the same memory range as your card, otherwise, your card will not operate. It is recommended that you do not use the default value of "autoset," but instead specify the base address of the memory range you want your card to use (this capability is provided on a screen during the installation). Important: When specifying the base address, you must make certain that the memory range being used by your card does not conflict (overlap) with memory that is being used by any other cards in your computer. Also, the memory base address must NOT be equal to (or 16 within a 4KB range above) the value set by the /ADDR option. (The /ADDR option may be found on the "DEVICE=C:\DOS\PCMCS.EXE" line in your CONFIG.SYS. For the IBM ThinkPad 350, it is set to C8 in the preinstalled CONFIG.SYS.) 2. To prevent the memory manager from using the same memory as your card, you must exclude the memory range being used by your card starting at the base address that you specified. Important: For computers with multiple PC cards, you must exclude the memory ranges being used by all of them. 3. To add the required excludes on your memory manager line, you must edit your CONFIG.SYS file after completing the installation. A. If you are using the preinstalled CONFIG.SYS on the IBM ThinkPad 350: 1. You must specify the memory base address to CC000 (during installation). The memory range of CC00-CFFF for your card is already excluded on the memory manager line in the preinstalled CONFIG.SYS as "X=C800-CFFF." 2. You must "remark" out the super client driver line in the CONFIG.SYS by changing it to the following: rem DEVICE=C:\DOS\PCMSCD.EXE /BEEP /COM=3 /RS=4 3. You must leave the /ADDR option on the PCMCS line in your CONFIG.SYS at its value of C8 (preinstalled) as follows: DEVICE=C:\DOS\PCMCS.EXE /WAIT=12 /ADDR=C8 /IRQ=10 B. If you are not using the preinstalled CONFIG.SYS on the ThinkPad 350 (or change the memory manager options), you may decide to use a different memory base address. If so, the table below tells you what you should exclude on the memory manager line in the CONFIG.SYS. MEMORY RANGE TO EXCLUDE ON THE MEMORY MANAGER LINE FOR ETHERNET CARD MEMORY (for EMM386, use the "X=" option) Exclude the If following Memory Base range address is... (16KB size) ------------- ----------- C0000 C000-C3FF C4000 C400-C7FF C8000 C800-CBFF CC000 CC00-CFFF D0000 D000-D3FF D4000 D400-D7FF D8000 D800-DBFF DC000 DC00-DFFF 17 You must ALSO exclude the 4KB that Phoenix Card and Socket Services requires. The /ADDR parameter that is on the card services line in your CONFIG.SYS gives the base address for the 4KB. Depending on the /ADDR value you specify, the table below tells you what should exclude on the memory manager line in the CONFIG.SYS. (For example, if your card services line is as follows: DEVICE=C:\DOS\PCMCS.EXE /WAIT=12 /ADDR=C8 /IRQ=10 then you must exclude C800-C8FF from your memory manager.) MEMORY RANGE TO EXCLUDE ON THE MEMORY MANAGER LINE FOR PHOENIX CARD SERVICES; /ADDR PARAMETER SPECIFIES BASE ADDRESS (for EMM386, use the "X=" option) If Exclude the If Exclude the If Exclude the /ADDR following /ADDR following /ADDR following is... range is... range is... range (4KB size) (4KB size) (4KB size) ----- ----------- ----- ----------- ----- ----------- C0 C000-C0FF CB CB00-CBFF D6 D600-D6FF C1 C100-C1FF CC CC00-CCFF D7 D700-D7FF C2 C200-C2FF CD CD00-CDFF D8 D800-D8FF C3 C300-C3FF CE CE00-CEFF D9 D900-D9FF C4 C400-C4FF CF CF00-CFFF DA DA00-DAFF C5 C500-C5FF D0 D000-D0FF DB DB00-DBFF C6 C600-C6FF D1 D100-D1FF DC DC00-DCFF C7 C700-C7FF D2 D200-D2FF DD DD00-DDFF C8 C800-C8FF D3 D300-D3FF DE DE00-DEFF C9 C900-C9FF D4 D400-D4FF DF DF00-DFFF CA CA00-CAFF D5 D500-D5FF 4. After you have completed the above, it is recommended that you turn off your computer. Upon power on, your new configuration will be set up. 1.6.4 USING EXPANDED MEMORY (EMS) Expanded memory (EMS) requires a contiguous 64KB block of memory in the range from C000-DFFF to use as a page frame. Therefore, when using EMS, you should be careful when specifying the memory range you want your PC cards to use. You must leave a contiguous 64KB block of memory "free." "Free" means that you cannot specify any card memory ranges within this 64KB block. With EMM386, you can then set the page frame base address via the "FRAME=" option on the memory manager line in the CONFIG.SYS. If you do not specify the page frame base address, EMM386 will automatically try to find a 64KB block of contiguous memory. Both the ThinkPad 350 and 750 come with EMM386 preinstalled and the page frame specified to the range D000-DFFF (via the "FRAME=D000" option on the memory manager line). To understand EMM386 and all its options, please see your IBM DOS manual. 18 Some example memory ranges: (You may choose other ranges to fit your requirements.) -------------------------------------------------------------------- | ALL PC cards memory must | Memory | 64KB page frame range | | be within this range | range size| | | | for PC | You must NOT specify any | | See note 1 below | cards in | PC card memory to be in | | | KB | this range | |--------------------------+-----------+-----------------------------| | C000-CFFF | 64KB | D000-DFFF | |--------------------------+-----------+-----------------------------| | C800-CFFF | 32KB | D000-DFFF | |--------------------------+-----------+-----------------------------| | C000-CBFF | 48KB | If "FRAME=CC00" option used,| | | | CC00-DC00 | | | | If "FRAME=D000" option used,| | | | D000-DFFF | |--------------------------+-----------+-----------------------------| | D000-DFFF | 64KB | C000-CFFF | -------------------------------------------------------------------- Note 1: 1) If you are using IBM Card Services, this range must be specified as the /MA range on the RMU line and excluded on the memory manager line in the CONFIG.SYS. Please see section 2 above. 2) If you are using a point connectivity enabler or Phoenix Card Services, all memory ranges you specify your PC cards to use (within this memory range) must be excluded on the memory manager line in the CONFIG.SYS. When using Phoenix Card Services, you must also exclude the 4KB it requires. Please see the appropriate section, 1 or 3, above. If you are using EMM386, and do not follow the steps above, you may see one of the following error messages: 1) One message you may see is "Warning: Option ROM or RAM within page frame." This means that EMM386 could not find a 64KB block of contiguous memory using the page frame base address you specified (you have a card taking memory within the 64KB block). However, EMM386 has gotten around the problem (and your configuration should work). EMM386 is just flagging that it is not using its 64KB contiguous block of memory starting at the base address you specified. It does require and has found 64KB for its use, however. 2) If you see the message, "Unable to set page frame base address," you must follow the steps above and free a 64KB block of memory. Examples: 1. Using a point enabler and the default values for the Ethernet card leaves the C0000-CFFFF range "free" for the EMS page. A sample memory manager line in your CONFIG.SYS follows: DEVICE=C:\DOS\EMM386.EXE RAM 1024 X=D400-D7FF FRAME=C000 19 Note: The Ethernet card uses D4000-D7FFF for 16KB memory. The "FRAME=" parameter sets the base address of the EMS page frame (the page frame uses C0000-CFFFF). So, no PC cards should be set to use memory in the range from C0000-CFFFF. 2. Using IBM Card Services, you can set the /MA option such that a 64KB block is free for the EMS page frame. A sample CONFIG.SYS follows: DEVICE=C:\DOS\EMM386.EXE RAM 1024 X=D000-DBFF FRAME=C000 : DEVICE=C:\DICRMU01.SYS /MA=D000-DBFF Note: Because of the /MA option, IBM CS will only use memory in the range from D0000-DBFFF. The "FRAME=" parameter sets the base address of the EMS page frame (the page frame uses C0000-CFFFF). No PC cards should be set to use memory in the range from C0000-CFFFF. 1.7 PITFALLS _____________ 1.7.1 DIAGNOSTIC PITFALLS IRQ and Shared Memory address conflicts are more easily detected than I/O space conflicts. If the Diagnostic program does not report an I/O space resource conflict, but the CARD TEST section of the Diagnostic program fails, it may still be due to an I/O space conflict. When using the RPL function that the credit card supports, diagnostics can only be executed by booting from the Credit Card installation diskette. Under DOS, memory managers in the CONFIG.SYS file can cause various problems to be detected and reported incorrectly by the Diagnostic program. If you experience Shared Memory address conflicts, delete any EMM driver or any other memory management drivers that are in the CONFIG.SYS file and rerun the Diagnostic program. The diagnostics attempts to find memory managers and warns of their existence during the diagnostic routine. A mouse or trackball can cause Interrupt Request (IRQ) conflicts. The Diag- nostic program attempts to detect this type of conflict and report it on the display. However, if your system has a mouse or a trackball and the Diag- nostic program reports an IRQ error, reassign the interrupt (IRQ) that the Ethernet Credit Card Adapter uses. This latter step requires that you edit the NetWare driver's NET.CFG file if you are using Novell NetWare, or edit the NDIS driver's PROTOCOL.INI file if you are using IBM LAN Support Program or Microsoft LAN Manager. You must also modify the IRQ specification in the CONFIG.SYS file entry for the Enabler, if one is used, to match the required 20 interrupt setting. See "Connectivity Enabler software" above for information on setting the IRQ. Some of the new systems that support PCMCIA 2.0 I/O cards have features that the user must be aware of when using the Ethernet Credit Card. For the PCMCIA socket to receive power, many computers must have the power to the PCMCIA socket enabled. This is typically done with a setup utility that comes with the computer. 1.7.2 SYS0053 ERRORS USING LAN SERVER 3.0 If you start to experience these errors, either your requester or server is timing out on large raw data transfers and is dropping connections. You should disable large raw data transfers on either your requester or server. To do this, edit your IBMLAN.INI file and change either SRVHEURISTIC 19 from 1 to 0 on your server, or change WRKHEURISTIC 11 from 1 to 0 on your requester. A sample of each follows: Requester ; The next lines help you to locate bits in the wrkheuristics entry. ; 1 2 3 ; 0123456789012345678901234567890123 wrkheuristics = 1111111121311111110001011120111221 ^ | | Change this from 1 to 0 Server ; The next lines help you to locate bits in the srvheuristics entry. ; 1 ; 01234567890123456789 srvheuristics = 11110141111311001331 ^ | | Change this from 1 to 0 21 1.7.3 MISCELLANEOUS 1.7.3.1 Hot plugging in PCMCIA environments It is important to have an Ethernet credit card adapter inserted in your com- puter before starting some Local Area Network software. Unpredictable results may occur if the adapter is not present and the software is executed. It is also important not to remove your Ethernet credit card once communi- cation on a LAN has begun. Unpredictable operation can occur if this happens. 1.7.3.2 IBM Thinkpad 720/720C with enablers The IBM ThinkPad 720/720C notebook computer typically uses Card and Socket Services. If you do not want to use Card and Socket Services, POINTETH.SYS can be used. You must use the WS=0 parameter on the command line of the enabler for the card to function properly in this machine. A system hang may result if POINTETH.SYS is used with Card Services. Use the Credit Card Installation program to remove any connectivity enablers. 1.7.3.3 Toshiba T3300SL The Toshiba T3300SL computer comes with a utility called SETVER.EXE that is executed in CONFIG.SYS. This is a special version of MS-DOS 5.0 that only comes with the Toshiba. This particular version is incompatible with network operating environments like DOS LAN Requestor. An error indicating an incor- rect DOS version occurs. This has not been found on other MS-DOS machines. The installation utility will remark out this utility in CONFIG.SYS on the Toshiba. 1.7.3.4 AST PowerExec computers The AST PowerExec series computers come with a utility called CCU.EXE that is executed in CONFIG.SYS. This program allows the Ethernet Credit Card Adapter to be used in conjunction with other PCMCIA feature cards. It is recommended that you use CCU.EXE since this program performs the same func- tion as the connectivity enabler. A system hang may result if you attempt to use both CCU.EXE and the POINTETH.SYS connectivity enabler. Consult your AST computer documentation for information on setting CCU.EXE parameters. The following machines have two PCMCIA sockets. Here are their socket assign ments: Socket A (or 1) Socket B (or 2) --------------- --------------- AST Powerexec Bottom Top IBM ThinkPad 720 Top Bottom NEC UltraLite VERSA Bottom Top The PS/2 E Model 9533 has four PCMCIA sockets. Here are its socket assign ments: Socket A - Front Top Socket B - Front Bottom Socket C - Back Top Socket D - Back Bottom 22 Single Socket machines use Socket A. 1.7.3.5 Machines using SystemSoft Card and Socket Services In order for machines with SystemSoft Card and Socket services installed to be able to use the Ethernet Credit Card Adapters, the following procedure should be followed: Make sure your system is using the level of Card Installation Client (CIC.EXE) dated 3-25-93 or later. If you're using an earlier level, update your system software. After installing the Ethernet Credit Card Adapter and appropriate device drivers, make the following parameter changes: 1. Edit the CONFIG.SYS and locate the CIC.EXE line. Update the parameters so that the line appears as below: DEVICE=C:\path\CIC.EXE /CSBAS D8 /NWBAS D4 /NWSIZ 04 2. If running in a Novell environment: Edit the NET.CFG file and remove the PCMCIA keyword. 3. If running in an NDIS environment: Edit the PROTOCOL.INI file and remove the PCMCIA keyword. Please refer to the SystemSoft CardSoft Reference Guide for further informa- tion. 23 1.8 WHERE TO FIND CARD SERVICES AND SOCKET SERVICES ____________________________________________________ Device Driver | Description -----------------+--------------------------------------------------------- PCMCIA.SYS | OS/2 Card Services. This device driver ships with | OS/2 2.1. It can be installed either when you first | install OS/2 2.1 or by selecting the 'Selective | Install' icon. | IBMDOSCS.SYS | IBM DOS Card Services. This device driver ships on a | diskette included with your workstation. For example, | the diskette is labeled 'IBM ThinkPad 720/720C PCMCIA | Device Driver Diskette' if you purchased either the | IBM ThinkPad 720 or 720C. | IBM2SS01.SYS | IBM OS/2 Socket Services. This device driver ships on a IBM2SS02.SYS | diskette included with your workstation. For example, | the diskette is labeled 'IBM ThinkPad 720/720C PCMCIA | Device Driver Diskette' if you purchased either the | IBM ThinkPad 720 or 720C. The driver ending in 01 is | for ISA bus machines. The driver ending in 02 is for | MicroChannel machines. | IBMDSS01.SYS | IBM DOS Socket Services. This device driver ships on a IBMDSS02.SYS | diskette included with your workstation. For example, | the diskette is labeled 'IBM ThinkPad 720/720C PCMCIA | Device Driver Diskette' if you purchased either the | IBM ThinkPad 720 or 720C. The driver ending in 01 is | for ISA bus machines. The driver ending in 02 is for | MicroChannel machines. | ICRMU01.SYS | IBM OS/2 Resource Map Utility. This device driver ships ICRMU02.SYS | on a diskette included with your workstation. For | example the diskette is labeled 'IBM ThinkPad 720/720C | PCMCIA Device Driver Diskette' if you purchased either | the IBM ThinkPad 720 or 720C. The driver ending in 01 | is for ISA bus machines. The driver ending in 02 is for | MicroChannel machines. | DICRMU01.SYS | IBM DOS Resource Map Utility. This device driver ships DICRMU02.SYS | on a diskette included with your workstation. For | example the diskette is labeled 'IBM ThinkPad 720/720C | PCMCIA Device Driver Diskette' if you purchased either | the IBM ThinkPad 720 or 720C. The driver ending in 01 | is for ISA bus machines. The driver ending in 02 is for | MicroChannel machines. 24 1.9 OS/2 DEVICE DRIVER STATEMENT ORDER _______________________________________ For OS/2, the order of statements in your CONFIG.SYS is very important. The order must be: NDIS ODI DEVICE=C:\OS2\PCMCIA.SYS DEVICE=C:\OS2\PCMCIA.SYS . . . . DEVICE=C:\IBMCOM\MACS\PCMNICCS.OS2 DEVICE=C:\netware\PCMDMCS.SYS . . . . DEVICE=C:\IBM2SS02.SYS DEVICE=C:\IBM2SS02.SYS DEVICE=C:\ICRMU02.SYS DEVICE=C:\ICRMU02.SYS The installation program will examine your CONFIG.SYS and move Socket Ser- vices and the Resource Map Utility to the bottom of the file, if they are not there already. They do not have to be the last statements in CONFIG.SYS, they must be after every PCMCIA client driver you have installed; the bottom of CONFIG.SYS is the most logical place to ensure they are after every client driver. Toshiba is a trademark of Toshiba America, Incorporated. Dell is a trademark of Dell Computer Corp, Incorporated. AST is a trademark of AST Research Incorporated. NCR is a trademark of the NCR Corporation. INTEL is a trademark of the INTEL Corporation. NEC is a trademark of the NEC Corporation. 26