Using the Allen-Bradley 1784-PCMK with Windows 95 IMPORTANT: Please read the section Updating Your Driver if you are upgrading from a previous version, or you will experience problems! Be sure to run the latest version of PCMKUPDT.EXE when updating! Contents
Updating Your Driver
Removing the Driver
Tips, Notes, and Enlightenment
In a hurry? We understand. This section will get the PCMK Plug and Play driver installed quickly, but please consider reading this entire document, especially if you encounter problems; answers to the most common questions may be found here. That said:
If you've already installed a previous version of the 1784-PCMK Plug and Play driver, skip to the section titled Updating Your Driver.
If you haven't already done so, enable Windows 95's built-in PCMCIA support by double-clicking the PC Card icon in Control Panel. If you don't have this icon in Control Panel, Windows 95 couldn't detect your PCMCIA socket hardware; contact the hardware provider for support.
Insert a PCMK into your system. On insertion, Windows 95 detects the hardware and builds a driver information database as it searches for an appropriate driver.
Windows 95 then displays a New Hardware Found dialog. Select the Driver from disk provided by hardware manufacturer option and click OK.
You'll be prompted for the drive and directory of the new driver files (RSIPCMK.INF, RSIPAGE.VXD, and RSIPCMK.VXD); enter this information and click OK.
If you're currently loading EMM386.EXE in CONFIG.SYS, note that this may interfere with the driver's ability to map the PCMK into DOS memory. You may either remove EMM386.EXE from CONFIG.SYS, or use it with the WIN= option. Please see the Troubleshooting section of this document for further details.
You may be required to reboot your system to complete the installation.
That's all there is to it! At this point, your PCMK should be configured and ready to use with compatible applications as described in the Application Compatibility section of this document. If you experience trouble using the PCMK (i.e., your application software can't find the PCMK), read through the Troubleshooting section of this document for help. The section Tips, Notes, and Enlightenment also contains several hints which you might find helpful.
WINtelligent LINX version 4.40 or greater works fine with the PCMK under Windows 95. You should make sure that a PCMK is installed in the system before you attempt to configure it. If LINX is already set up to use a PCMK, it should be present before LINX is started. Note that when you first configure LINX to use a PCMK, you'll probably get a message that says something like Unable to locate an EMMExclude=cb00-cbff entry in the SYSTEM.INI file...; ignore this message. Under Windows 95, LINX isn't dealing with the true physical address of the PCMK, so the exclusion isn't necessary.
A.I. Series PLC-5 programming software version 7.19 or greater, A.I. Series PLC-500 programming software version 7.08 or greater, PLC-2 A.I. Series programming software version 6.22 or greater, A.I. Series PLC-3 programming software version 6.18 or greater, A.I. Series PLC-5/250 programming software version 1.39 or greater, and A.I. Series PLC-5/250 programming software revision 1.39 or greater also work well with the Plug and Play driver. There is a small glitch in some earlier versions you should be aware of. After one of these applications uses the PCMK within a DOS box, that PCMK is owned by that DOS box until it is closed (i.e., by typing the EXIT command at the DOS prompt). Other applications will not be able to use the PCMK until the DOS box is closed. This minor glitch is fixed in later releases of the A.I. Series programming software.
No known third-party software is currently compatible with this driver, but Rockwell Software makes the interface to this driver freely available to anyone who wishes to use it. Have your third-party software supplier contact the Communications Business Unit of Rockwell Software for details.
Updating Your Driver
This section describes how to install an update to the PCMK Plug and Play driver. Updates may be obtained through several online sources as listed in the section of this document titled Tips, Notes, and Enlightenment.
If you've manually changed any settings for the PCMK, write down the settings that work for your computer (Gateway Solo users must do this because of a bug in that machine's BIOS; see the Troubleshooting section for more information on the Solo). You may need to manually re-set the address and/or IRQ after updating.
Remove all PCMK cards from your computer.
Run the PCMKUPDT.EXE program provided with the driver. This program will remove the old configuration information from the registry and delete the old driver files. This is necessary because of changes made to the driver which require it to be cleanly installed. You must run the PCMKUPDT.EXE program distributed with this version of the driver — do not rely on Control Panel's Add/Remove Programs applet to fully prepare your system for this new version of the driver.
Follow the instructions in the Quick Start section to install the new driver version. In a nutshell, this just involves inserting a PCMK and following the instructions on your screen.
Removing the Driver
Using the provided uninstaller, removing the Plug and Play driver from your computer is easy. To run the uninstall program:
From Control Panel, run the Add/Remove Programs applet.
Select the Allen-Bradley 1784-PCMK and click the Add/Remove button. You'll have the chance to cancel the operation before anything is actually deleted.
Tips, Notes, and Enlightenment
Before removing a PC Card such as the PCMK from a system running Windows 95, click on the PC Card icon on your taskbar to stop the card. This allows Windows 95 to make sure it is safe to remove the card, and to warn you if it is not. If Windows 95 tells you that the PCMK shouldn't be removed, make sure that any applications that might be using it are shut down, then try again. Removing a PCMK which is being used by an application could cause your system to fault.
If you don't see the PC Card icon on your Windows 95 taskbar, double click the PC Card icon in Control Panel, and check the box labeled Show control on taskbar. You should now see the PC Card icon on the taskbar whenever a PC Card is installed in your system. If you ever change your PC Cards on-the-fly, you'll find this icon very useful.
A Control Panel applet called PCMKinfo is installed along with the Plug and Play driver to allow quick and easy viewing of the PCMK’s physical settings. To run PCMKinfo, open Control Panel and double-click its icon.
Right-clicking on the PC Card icon on the taskbar allows you to display PCMCIA properties. This shows you which PC Cards are in each socket, and allows you to select a card to be stopped. This is particularly convenient when you have more than one PCMK, and you need to stop one of them prior to removal. Left-clicking the PC Card icon allows you to stop the cards as well --- and is faster if you only have one PCMK --- but doesn't tell you which card is in which socket.
Note that services provided by this driver are only available while Windows 95 is running. If you shut down Windows 95 and select the Restart the computer in MS-DOS mode? option, the Windows 95 PCMCIA support will not be loaded.
In the PCMCIA properties dialog, you may notice that PCMCIA sockets are labeled Socket 1, Socket 2, etc. Rockwell Software products currently refer to these sockets by a zero-based socket number, so specifying socket number 0 in a Rockwell Software product really refers to what Windows 95 calls Socket 1. This confusion is created by a hole in the PCMCIA standard, which does not specify what a socket should be called; Microsoft happened to start numbering at one, and we started numbering at zero well before the introduction of Windows 95. For now we have to live with it, but we are actively pursuing a real solution by participating in the PCMCIA standards organization and working with Microsoft.
For the latest version of the Windows 95 PCMK driver, check any of the following resources (the driver is in an archive named RSIPCMK.ZIP):
Our home on the World Wide Web, http://www.software.rockwell.com; the exact location of the file may change as our Web site is enhanced, but you should be able to locate the download area without too much trouble;
If you don't own a modem or can't access our website for other some reason, call Rockwell Software at 216-646-7800.
In some recent OEM releases of Windows 95, Device Manager's Driver tab for the PCMK might display a message stating that "no driver files are required or have been loaded for this device," even though the PCMK is working properly. Ignore this message; it is a bug in the new version of the Windows 95 Device Manager.
If your system has other PC Cards besides the PCMK and you have tones enabled for PC Card insertion, don't be surprised if you hear more than one notification per card! As Windows 95 detects devices during the boot process, it may find that it needs to adjust the resources used by each device. When it changes the settings for a device, it'll generate the notification tones again. This is normal.
When you install the drivers, Windows 95 copies RSIPCMK.VXD, RSIPAGE.VXD, and PCMKUPDT.EXE into your Windows system directory (usually \WINDOWS\SYSTEM), and copies RSIPCMK.INF into a hidden device information directory (usually \WINDOWS\INF). When RSIPCMK.INF is copied, it is also renamed as OEM*.INF, where the asterisk represents a number assigned by the system. Entries are then placed in the registry so that the PCMK can be quickly recognized by the system the next time it is used. The utility program PCMKLIST.EXE is not automatically copied with the driver files.
You probably won't have reason to care, but... if you happen to browse the resources assigned to a PCMK from the system properties dialog box, don't be surprised if an application reports the card at a different address. In fact, two DOS boxes might report the same PCMK at two different addresses! That's okay. The resource assignment reported by Windows is the physical address assigned to the card. This physical address is mapped by the driver to a virtual address for each application to use. It looks sort of bizarre when you see it, but it is perfectly normal behavior.
About EMM386: If everything seems to be working okay, but the application you're using gives you an error that reads something like Unable to retrieve information for socket or PCMK is not at specified socket or is in use, check the following:
Be sure that you've specified the right socket. Remember, Rockwell Software products currently number sockets starting at zero, whereas Windows 95 starts numbering at 1.
From the Start menu, select Run..., type in SYSEDIT as the program to run and click the OK button. This will start an editor which allows you to modify AUTOEXEC.BAT and CONFIG.SYS files, among others. Check CONFIG.SYS to see if EMM386.EXE or a similar memory manager is being loaded; if it is, comment it out (insert a REM in front of the line), save the file, and restart Windows 95. See if this fixes the problem. If you don't actually need EMM386.EXE (under Windows 95 it's only needed to load stuff high to get more conventional DOS memory), you can leave things as they are. If you do need it (i.e., for old DOS programs which require loads of conventional memory), add WIN=xxxx-yyyy to your EMM386.EXE line, where xxxx-yyyy is anunusedmemory range in the system. You must allow at least 4K of memory for each PCMK; some systems require may even require more, so try a large block if a smaller one fails. For example, if you have 2 PCMK cards and the 8K range D000-D1FF is available, you'd have a line something like this in CONFIG.SYS:
Again, do this only if you absolutely need EMM386.EXE; comment it out if possible.
If the driver still doesn't work, right click on the My Computer icon and select the Properties option to bring up the System Properties dialog box. Click on the Device Manager tab to display the devices in your system. If Allen-Bradley PC Cards has a plus sign next to it, click it to expand that section; the Allen-Bradley 1784-PCMK device should be displayed. Click on the Allen-Bradley 1784-PCMK to highlight it, then click the Properties button.
If Code 10 is reported in the box labeled Device status, click on the Resources tab in the dialog box to see if there are any resource conflicts listed in the Conflicting device list. If there are, you may need to alter the settings of the listed devices to get the PCMK to work.
Even if there are no conflicting devices, you may have to override the address of the PCMK to get it to work on some systems. In Device Manager, click the PCMCIA socket device type to expand it, click the PCMCIA controller used by your system, and then click the Properties button. Check the Drivers tab to see if the driver you're using is CBSS.VXD (if you have a recent OEM version of Windows 95 you may have to click a button labeled Driver File Details… to view this information). If this is the driver you're using, you'll probably have to manually override the address of the PCMK to make it work; this is a bug in Microsoft's CBSS.VXD that they are currently working on. If you still can't make the PCMK work, you may have to use a different computer with the PCMK until a newer version of the PCMK Plug and Play driver becomes available with a version of CBSS.VXD greater than 4.00.1116.
If Code 10 is reported as above but there are no conflicting devices, click the Cancel button to return to the System Properties dialog, and click the plus sign by the PCMCIA socket device type to expand it. Click on the PCMCIA controller used by your system, then click the Properties button. If the Device status does not say This device is working properly, you have a general PCMCIA problem on your system and should contact your hardware supplier for resolution. If it is working okay, click the Resources tab and check the Conflicting device list for possible hardware conflicts. You may also want to try enabling the Use automatic settings option if it is not already enabled.
To assist you in troubleshooting applications which run within a DOS box, we have included a DOS utility called PCMKLIST.EXE with this version of the Plug and Play driver. Note that this program is not automatically copied to your hard disk. When run at a DOS prompt, it should display something like this:
PCMKLIST Version 1.02
Copyright (C) 1995, 1996 Rockwell Software Inc. All rights reserved.
RSIPCMK Version 0.83 emulating PCMKINIT Version 1.12 under Windows 95.
2 PCMKs configured.
Socket 0: Dual-port at CB00, IRQ 7 assigned.
Socket 1: Dual-port at CC00, no IRQ assigned.
This tells us that there are two PCMKs in this system which are mapped to addresses CB00 and CC00, and that the card at CB00 is also using IRQ 7. The addresses given are virtual addresses specific to this DOS box, and are usually different from the PCMK's physical address. If PCMKLIST is able to detect the version of RSIPCMK, we know that the Plug and Play driver is running and the interface to it is working. If it can detect your PCMK cards, then the PCMK cards should be usable from within DOS applications that support this interface. (Note: versions of PCMKLIST below 1.02 won't report the RSIPCMK version, but will still return the version of PCMKINIT that RSIPCMK emulates.)
Gateway Solo users might experience problems where software will report that the PCMK memory cannot be found, or that the card isn't present at the specified address. This is apparently caused by a BIOS problem in the Solo; BIOS version 1.06 may fix the problem, but is currently in beta testing. The latest BIOS (including 1.06 Beta) may be downloaded from Gateway 2000's BBS at 605-232-2224 or from their website (http://www.gw2k.com). For now, you need to override the address that Windows 95 automatically assigns to the PCMK (the ones we've seen have been at address CA000, which the Solo BIOS mistakenly thinks is unused). To do this:
Insert the PCMK into the system.
Remove EMM386.EXE from CONFIG.SYS, if present. It usually isn't needed under Windows 95.
Bring up Device Manager from the System icon in Control Panel (or by right-clicking the My Computer icon and selecting Properties).
Double-click the Computer at the top of the device list to display the resources used by the system, then select the Memory radio button to display memory ranges in use. Find a range at or above D0000 that isn't in use.
Close that dialog, click the plus sign next to Allen-Bradley PC Cards to expand it, then double-click on the 1784-PCMK listed under Allen-Bradley PC Cards to display its properties. Select the Resources tab on that dialog, and disable Use automatic settings. Click on the memory range listed and the click the Change button. Enter D0000-D0FFF (or whatever range was free) as the new range for the card and click OK. Close the remaining dialogs and follow any prompts; you may be required to restart Windows.
Some NEC VERSA 2400 laptops also have a BIOS problem. NEC has cooperated with Rockwell Software in designing a fix for this machine. To get this fix, download the self-extracting file L6510CB3.EXE from NEC’s BBS at 508-635-4706. You may need to leave mail to the sysop of the NEC BBS to gain access to this file. You should also check to see if a more recent version — which may have a different filename — is available. This should also eventually be available on NEC’s website, http://www.nec.com.
The Novell 32-bit network client that comes with Windows 95 appears to have an appetite for DOS memory, and can prevent the PCMK from being found by PCMKLIST, WINtelligent LINX, or MS-DOS applications such as the A.I. Series programming software. If you run into this problem, try loading EMM386.EXE in CONFIG.SYS, and use the WIN= option to give Windows drivers 32K more memory than you’d normally need for just the PCMK. For example, to allow for one PCMK (which requires 4K) and the Novell client (which seems to eat 32K), you’d have EMM386.EXE give 36K to Windows 95 like so (assuming that the range D000-D8FF is available in your computer):
device=c:\windows\emm386.exe NOEMS WIN=D000-D8FF
If you remove EMM386.EXE from CONFIG.SYS and then find that you get strange errors such as EMS hardware problem when attempting to go online with your programming software, check the properties for the DOS box you're running the programming software in. Right-click on the icon or the window's title bar and select Properties to display the properties dialog, then click the Memory tab to view memory settings. If Expanded (EMS) Memory is set to Auto, try setting it to None; this should get rid of the problem.
If the icon displayed for the PCMK in Device Manager is a gray diamond, or if the version of the driver displayed in Device Manager is below 2.20, you probably have a newer OEM release of Windows 95 that changed the location of some files. You should run PCMKUPDT.EXE from the latest version of the PCMK Plug and Play driver that you have (nothing less than version 2.20), then plug a PCMK into your system and reinstall the latest driver. This should fix the problem.
Revision Notes Version 2.21, 07/08/97
Performance with RSLinx significantly improved, whether or not interrupts are used.
Interrupts are now fully supported with RSLinx.
An updated version of Microsoft's CBSS.VXD (4.00.1116) is distributed with the driver and will be automatically installed as needed. This fixes some problems on recent OEM releases of Windows 95 — typically memory test failures. This file is redistributed with Microsoft's permission. (This version still has some problems that Microsoft is working on; see the Troubleshooting section of this document for details.)
A PCMK icon is now displayed in Device Manager instead of a gray diamond. (See the Troubleshooting section of this document if you still see a gray diamond for the PCMK!)
The class name in Device Manager has changed from Allen‑Bradley PC Cards to Allen‑Bradley PCMK family. This change is to avoid confusion as other non-PCMK PCMCIA cards are released by Allen‑Bradley.
Fixed a bug which would cause RSLinx to crash or miss a packet when the packet length for DH+ was greater than 255 bytes.
Version 2.00, 01/29/97
Version 1.90 Beta released as general release version 2.00.
Version 1.90 Beta, 12/19/96
Fixed a code problem which could potentially cause major faults, such as invalid opcodes or general protection faults.
Added a 32-bit Windows application interface for RSLinx.
Distribution disk now includes PCMKinfo, a Windows 95 Control Panel applet for displaying card information (note the PCMKinfo does not work with versions of the driver below 1.01 Alpha).
Added a workaround for a 1784-PCMK Series A problem which could make the card fail memory tests in applications, even though the card appeared to be configured correctly and PCMKLIST would display the card's address in a DOS box. This problem seems most prominent on computers with PCI bridges.
PCMK Series B and PCMKS Series A support added.
The PCMKLIST utility provided has been upgraded to display special information under Windows 95.
In Device Manager PCMKs now show up under the Allen-Bradley PC Card class rather than under Other devices.
Uninstaller upgraded to remove references to the PCMK from multiple profiles, to remove entries for PCMK/B and PCMKS/A cards, and to remove the PCMKinfo Control Panel applet.
Version 1.00, 05/06/96
Version 0.83 Beta upgraded to general release version 1.00.
Version 0.83 Beta, 04/15/96
Driver is now built using the general release version of the VtoolsD library.
In an attempt to alleviate problems where the PCMK is initialized but a memory window can't be allocated within a DOS box, we've added a second driver file. This file, RSIPAGE.VXD, loads when the system starts and reserves memory for any PCMKs which might later be inserted. This approach is experimental, and may or may not turn out to be beneficial. One unfortunate side effect is that the user may now have to reboot the system the first time the driver is installed.
The PCMKLIST utility is now included with the driver. See the Troubleshooting section of this document for details.
An uninstaller Wizard for the PCMK Plug and Play driver is now provided, PCMKUPDT.EXE. This program completely removes the PCMK Plug and Play driver from the registry and deletes the driver files from disk, allowing a clean install of new driver versions to be performed. After version 0.83 Beta is installed, this program is also available from the Control Panel's Add/Remove Programs applet.
Version 0.82 Beta, 12/12/95
RSIPCMK.INF was modified to allow a wider range of interrupts to be usable with the PCMK.
We changed the device driver registration and associated device start/stop code. This allows resources to be reallocated as needed by the system when there is contention with another device. For example, if a PCMK is currently assigned the last remaining IRQ in the system and a device requiring an IRQ is plugged in, the system can adjust the configuration of the PCMK to allow it to run without an interrupt.
Version 0.81 Beta, 12/01/95
We added code to prevent applications from faulting when a PCMK card is removed while it is still in use. We still strongly recommend that you stop any applications using the PCMK before removing it from the system. Removal of a PCMK while in use could cause unpredictable results!
We removed some dead code left over from the initial development effort.
Version 0.80 Beta, 11/27/95
Initial beta release of the Windows 95 PCMK support.