PC Card Driver Registry Settings

This topic contains information on the PCMCIA, PCMCIA\Detect, PCMCIA\Driver, and PCMCIA\Plug-and-Play Identifier registry keys.

This topic also contains registry keys for the following PC Cards:

  • PC Card Storage Devices
  • Fujitsu MicroResearch MR560PC Modem Card Registry Settings
  • Generic PC Card Registry Settings
  • Hayes PC Card Registry Settings
  • MEGAHERTZ Card Registry Settings
  • Megahertz 14.4 Card Registry Settings
  • Megahertz 28.8 Card Registry Settings
  • Megahertz Cellular Card Registry Settings
  • Practical Peripherals ProClass 28.8 Card Registry Settings
  • Socket Communications 16550 Universal Asynchronous Receiver Card Registry Settings
  • 3Com U.S. Robotics 28.8 Sportster Registry Settings
  • Xircom 33.6 Credit Card Modem Registry Settings
  • Xircom 33.6 Credit Card Modem and Ethernet Registry Settings

PCMCIA

Registry Key Description
NoBatteryCheck Set to 1 to disable the dialog box on battery power for 5 volt cards.
NoAccess<S> Set to 1 to indicate that slot <s> is not accessible to the user. This allows the driver to suppress the loading and unloading of the PCMCIA driver following a suspend and resume action. This is the case if your platform does not support wake on card removal. For example, if NoAccess0 it set to 1, slot 0 is not accessible to the user. If NoAccess1 is set to 1, slot 1 is not accessible to the user, and so on.
SetStatusChangeActivityEvent Set to the name of an event to be signaled when a card is inserted or removed. This value is set to PowerManager/ActivityTimer/SystemActivity by default.

PCMCIA\Detect

The HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Detect key contains numbered subkeys that assist the PCMCIA bus driver in detecting PC Cards. Each numbered subkey specifies a PCMCIA client driver and a corresponding detection function. The PCMCIA bus driver calls the detection functions to locate the appropriate driver for an unrecognized PC Card. For example, the PCMCIA bus driver invokes detection functions when a PC Card lacks a Plug and Play identifier or when a PC Card's Plug and Play identifier lacks a corresponding subkey under the Drivers\PCMCIA key.

The subkeys under Detect are two-digit integers typically assigned by a PCMCIA client driver's installation routine. The order of the integers determines the order that the PCMCIA bus driver follows when it calls detection functions. For example, if the PCMCIA bus driver does not detect a suitable DLL listed in subkey 19, it makes a call to subkey 20. The PCMCIA bus driver continues this consecutive search process until a function returns a value indicating a successful detection.

The following table shows the two values contained within these subkeys.

Value name Value type Description
Dll REG_SZ Specifies the file name for the DLL that contains the detection function. The PCMCIA bus driver loads the DLL to call the detection function.
Entry REG_SZ Specifies the name of the detection function.

PCMCIA\Driver

The name of a generic device driver is used as a subkey of the Drivers\PCMCIA\Driver key along with drivers listed within the Drivers\PCMCIA\Detect key. The Driver subkey contains the same subkeys as the Drivers\PCMCIA\Plug-and-Play Indentifier key.

The following table shows the values for PCMCIA\Driver subkey. Additional values can be stored for purposes specific to the device.

Value name Value type Description
Dll REG_SZ This required entry specifies the file name for a driver DLL that the Device Manager is to load.
Prefix REG_SZ This value, if it exists instead of Entry, specifies the device file-name prefix of the device driver. It is a three-character identifier, such as COM.
Index REG_DWORD Optional. Specifies the device index. This value specifies the index assigned to the driver. If this value is not present, the Device Manager assigns the lowest index value available. This index is associated with the device. Only index values from 0 through 9 are allowed. Allow the Device Manager to determine the index value.
Context REG_DWORD Optional. Specifies the device context. If this value is present, that is, if it was initialized by the device's setup application, the Device Manager passes it as the dwInfo parameter to ActivateDevice. If it is not present, a pointer to a string containing the registry path to the device's Active key is passed as the parameter. The driver's initialization function can then open this key to read its information. To let the driver read the Active key data, do not initialize this value.
Ioctl REG_DWORD Optional. Specifies an I/O control code that the Device Manager sends to the stream interface. If this value is present, the Device Manager opens the loaded driver and calls its I/O control function. The Device Manager passes the I/O control code specified by the Ioctl registry key. The driver does any necessary post-initialization in this context. For example, the driver loads modules that use the device.

For information on the appearance and disappearance of devices and device interfaces, see Device Interface Notifications.

IClass MULTI_SZ Specifies the GUIDs associated with the exposed interfaces.

PCMCIA\Plug-and-Play Identifier

The Drivers\PCMCIA key contains subkeys for known PC Cards. Each subkey is the card's Plug and Play identifier. The values within a Plug-and-Play Identifier subkey define the values for a PC Card device with a matching Plug and Play identifier.

The following table shows the required values for this subkey. Additional values can be stored for purposes specific to the device.

Value name Value type Description
Dll REG_SZ This value specifies the file name for the DLL that contains the stream interface. The Device Manager loads the DLL.
Prefix REG_SZ This value specifies the device driver's device file name prefix. It is a three character identifier, such as COM.
Index REG_DWORD This optional value specifies the device index, from 0 through 9, which the Device Manager assigns to the driver. If this value is not present, the Device Manager assigns the lowest index value available. This index is associated with the device. Only index values from 0 through 9 are allowed.
Context REG_DWORD This optional value specifies the device context. If this value is present— that is, if it was initialized by the device's setup application — the Device Manager passes it as the dwInfo parameter to the ActivateDevice function. If it is not present, a pointer to a string containing the registry path to the device's Drivers\Active key is passed as the parameter. The driver's initialization function can then open this key to read its information. To let the driver read the Drivers\Active key data, do not initialize this value.
Ioctl REG_DWORD This optional value specifies an I/O control code that the Device Manager sends to a stream interface driver after loading the driver. If this value is present, the Device Manager opens the loaded driver and calls its XXX_IOControl function, passing the I/O control code specified by this value. The driver can do any necessary post-initialization in this context. For example, the driver can load modules that use the device.

In addition, the Device Manager broadcasts a WM_DEVICECHANGE message for the new device, and it signals the application notification system by means of the CeEventHasOccurred function, passing it the NOTIFICATION_EVENT_DEVICE_CHANGE message.

IClass MULTI_SZ The GUIDs associated with the exposed interfaces.

PC Card Storage Devices

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Driver name]
  "Dll"="Driver DLL file"
  "Prefix"="DSK"
  ; Specify an IOCTL value that Device Manager uses to call driver after it returns from xxx_Init
  "Ioctl"=dword:4
  ; The file system driver that ATA will use. Ata will read the registry for this value.
  "FSD"="FATFS.DLL"
  "IClass"=multi_sz:"{GUIDs denoting exposed interfaces}"
  "PolledDevices"=multi_sz:"

Registry keys of this form apply to a variety of PC Card storage devices. Microsoft® Windows® CE contains drivers for ATA storage devices, and SRAM devices.

The following table shows the PC Card storage device registry keys and their descriptions.

Registry key Description
Driver name Specifies the name of the storage device driver. This name is used by the PC Card detection code to find the correct registry key. Valid registry key names are ATADisk, and SRAMDisk.
Dll Specifies the file name of the DLL containing the driver. Valid registry values are ATADISK.DLL, and SRAMDISK.DLL.
Prefix Specifies a three-letter device name by which the driver will be identified through the file system APIs. By convention, this is also the type of driver. Storage devices are typically identified by the prefix DSK.
Index Optional. Specifies the device index to use when registering an instance of the driver. For example, if Index is equal to 2, the device would be DSK2:. If Index is present, only one instance of the device can be loaded. Otherwise, the device manager will use the lowest available index. By default, none of the PC Card drivers specify this value.
Ioctl Optional. Specifies the value used by the Device Manager in the dwIoControlCode parameter of a DeviceIOControl call to the driver after the driver has been fully loaded and registered. Specifying 4 will cause the sample drivers to request that the FSD be loaded above them.
FSD Identifies the file system that will manage storage cards of this type. Windows CE contains two file system drivers: FATFS.DLL implements the FAT file system and logical partition manager; FSDMGR.DLL provides hooks for the implementation of custom file systems.
IClass Denotes GUIDs associated with the exposed interfaces.
PolledDevices Optional. Forces a PCMCIA driver to use polling mode.

Fujitsu MicroResearch MR560PC Modem Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MICRO_RESEARCH-MR560PC-9AA1]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.Dll"
  "DeviceType"=dword:3
  "ResetDelay"=dword:300
  "NoScratchPad"=dword:1

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MICRO_RESEARCH-MR560PC-9AA1\Init]
  "1"="AT<cr>"
  "2"="ATE0V1&C1&D2<cr>"

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MICRO_RESEARCH-MR560PC-9AA1\Settings]
  "Prefix"="AT"
  "Terminator"="<cr>"
  "DialPrefix"="D"
  "DialSuffix"=";"
  "Pulse"="P"
  "Tone"="T"
  "Blind_Off"="X4"
  "Blind_On"="X3"
  "CallSetupFailTimeout"="ATS7=<#><cr>"
  "Reset"="AT&F<cr>"

Generic PC Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Modem]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.Dll"
  "DeviceType"=dword:3
  "ResetDelay"=dword:300

Hayes PC Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\
Hayes-OPTIMA_288_+_FAX_for_PCMCIA_with_EZ-4FA5]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYHAYESFAX
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\
Hayes-OPTIMA_288_+_FAX_for_PCMCIA_with_EZ-4FA5\Init]
  "3"="AT&F E0 V1 &C1 &D2<cr>"
  "4"="ATW0 S95=0<cr>"

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\
Hayes-OPTIMA_288_+_FAX_for_PCMCIA_with_EZ-4FA5\Settings]
  "FlowHard"="AT&K3<cr>"
  "FlowSoft"="AT&K4<cr>"
  "FlowOff"="AT&K0<cr>"

MEGAHERTZ Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-Megahertz_28.8-73E3]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYMEGAHERTZCRUISE
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-Megahertz_28.8-73E3\Init]
  "3"="ATW2B1\\V1<cr>"

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-Megahertz_28.8-73E3\Settings]
  "FlowHard"="AT&K3<cr>"
  "FlowSoft"="AT&K4<cr>"
  "FlowOff"="AT&K0<cr>"

Megahertz 14.4 Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-XJ1144-5C3E]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.Dll"
  "FriendlyName"=LOC_FRIENDLYMEGAHERTZ144
  "DeviceType"=dword:3

Megahertz 28.8 Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-XJ2288-9E81]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYMEGAHERTZ
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-XJ2288-9E81\Init]
  "3"="ATW2B1\\V<cr>"

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-XJ2288-9E81\Settings]
  "FlowHard"="AT&K3<cr>"
  "FlowSoft"="AT&K4<cr>"
  "FlowOff"="AT&K0<cr>"

Megahertz Cellular Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-XJ3288-26C7]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYMEGAHERTZCELL
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-XJ3288-26C7\Init]
  "3"="ATW2B1\\V1<cr>"

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MEGAHERTZ-XJ3288-26C7\Settings]
  "FlowHard"="AT&K3<cr>"
  "FlowSoft"="AT&K4<cr>"
  "FlowOff"="AT&K0<cr>"

Practical Peripherals ProClass 28.8 Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Practical_Peripherals_Inc-PPI_PC288T2EZ_PCMCIA-F382]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYPROCLASS288
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Practical_Peripherals_Inc-PPI_PC288T2EZ_PCMCIA-F382\Init]

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Practical_Peripherals_Inc-PPI_PC288T2EZ_PCMCIA-F382\Settings]

The newer version gives a different Plug and Play identifier.

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Practical_Peripherals_Inc-PPI_PC288T2EZ_PCMCIA-DAE6]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYPROCLASS288
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Practical_Peripherals_Inc-PPI_PC288T2EZ_PCMCIA-DAE6\Init]

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Practical_Peripherals_Inc-PPI_PC288T2EZ_PCMCIA-DAE6\Settings]

Socket Communications 16550 Universal Asynchronous Receiver Card Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Socket_Communications_Inc-Serial_Port_Adapter_Revision_B-5E3E]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"="Socket I/O Serial"
  "DeviceType"=dword:0

3Com U.S. Robotics 28.8 Sportster Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\USRobotics-PCMCIA_28800_Data/Fax-92A2]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYSPORTSTER288
  "DeviceType"=dword:3
  "ResetDelay"=dword:800

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\USRobotics-PCMCIA_28800_Data/Fax-92A2
\Init]
  "3"="AT &F1 E0 V1 &C1 &D2 &B1 &A3 S0=0<cr>"

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\USRobotics-PCMCIA_28800_Data/Fax-92A2\Settings]
  "FlowHard"="AT&K3<cr>"
  "FlowSoft"="AT&K4<cr>"
  "FlowOff"="AT&K0<cr>"

Xircom 33.6 Credit Card Modem Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Xircom-CreditCard_Modem_33.6-5347]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYXIRCOM336
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Xircom-CreditCard_Modem_33.6-5347\Init]

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Xircom-CreditCard_Modem_33.6-5347\Settings]

Xircom 33.6 Credit Card Modem and Ethernet Registry Settings

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Xircom-CreditCard_Ethernet+Modem_33.6-05DD]
  "Dll"="regenum.dll"

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Xircom-CreditCard_Ethernet+Modem_33.6-05DD\1]
  "Tsp"="Unimodem.dll"
  "DeviceArrayIndex"=dword:1
  "Prefix"="COM"
  "Dll"="Serial.dll"
  "FriendlyName"=LOC_FRIENDLYXIRCOMETHER336
  "DeviceType"=dword:3

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Xircom-CreditCard_Ethernet+Modem_33.6-05DD\Init]

[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Xircom-CreditCard_Ethernet+Modem_33.6-05DD\Settings]

See Also

PC Card Drivers | PC Card Driver Samples | PC Card Driver Architecture

 Last updated on Tuesday, May 18, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.