Share via


Legacy PCMCIA Driver Registry Settings (Windows Embedded CE 6.0)

1/6/2010

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 legacy PCMCIA cards:

  • Legacy PCMCIA storage devices
  • Fujitsu MicroResearch MR560PC modem cards
  • Generic legacy PCMCIA cards
  • Hayes legacy PCMCIA cards
  • Megahertz legacy PCMCIA cards
  • Megahertz 14.4 modem cards
  • Megahertz 28.8 modem cards
  • Megahertz cellular legacy PCMCIA cards
  • Practical Peripherals ProClass 28.8 modem cards
  • Socket Communications 16550 Universal Asynchronous Receiver legacy PCMCIA cards
  • 3Com U.S. Robotics 28.8 Sportster legacy PCMCIA cards
  • Xircom 33.6 Credit Card modem cards
  • Xircom 33.6 Credit Card modem and Ethernet cards

PCMCIA\Detect

The HKEY_LOCAL_MACHINE\Drivers\PCMCIA\Detect registry key contains numbered subkeys that assist the PCMCIA bus driver in detecting legacy PCMCIA 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 legacy PCMCIA card. For example, the PCMCIA bus driver invokes detection functions when a legacy PCMCIA card lacks a Plug and Play identifier or when a legacy PCMCIA card's Plug and Play identifier lacks a corresponding subkey under the Drivers\PCMCIA registry 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 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 in 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

Specifies the file name for a driver DLL that the Device Manager is to load.

Prefix

REG_SZ

Specifies the file name prefix for the device driver. The prefix is a three-character identifier, such as COM.

Index

REG_DWORD

Optional. Specifies the device index assigned to the driver. If this value is not present, the Device Manager assigns the lowest index value available. This index value 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, it was initialized by the device's setup application and 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 necessary post-initialization in this context.

For information on the presence 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 legacy PCMCIA 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 legacy PCMCIA 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

Specifies the file name for the DLL that contains the stream interface. The Device Manager loads the DLL.

Prefix

REG_SZ

Specifies the file name prefix for the device driver. The prefix is a three-character identifier, such as COM.

Index

REG_DWORD

Optional. Specifies the device index value that the Device Manager assigns to the driver. If this value is not present, the Device Manager assigns the lowest index value available. This index value is associated with the device. Only index values from 0 through 9 are allowed.

Context

REG_DWORD

Optional. Specifies the device context. If this value is present, it was initialized by the device's setup application and 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

Optional. 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 (Device Manager) function, passing the I/O control code specified by this value. The driver can do necessary post-initialization in this context.

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

IClass

MULTI_SZ

Specifies the GUIDs associated with the exposed interfaces.

Legacy PCMCIA Storage Devices

The following registry key example shows legacy PCMCIA storage device registry settings.

[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 such as this apply to a variety of legacy PCMCIA storage devices. Windows Embedded CE contains drivers for Advanced Technology Attachment (ATA) storage devices, and static RAM (SRAM) devices.

The following table shows the legacy PCMCIA storage device registry keys.

Registry key Description

Driver name

Specifies the name of the storage device driver. This name is used by the legacy PCMCIA 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 that identifies the driver 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 legacy PCMCIA 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 causes the sample drivers to request that the FSD load above them.

FSD

Identifies the file system that manages FSD storage cards. Windows Embedded 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

Specifies GUIDs associated with the exposed interfaces.

PolledDevices

Optional. Forces a PCMCIA driver to use polling mode.

Fujitsu MicroResearch MR560PC Modem Card Registry Settings

The following registry key example shows 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows generic legacy PCMCIA 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows Hayes legacy PCMCIA 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows Megahertz legacy PCMCIA 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows Megahertz 14.4 legacy PCMCIA 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows Megahertz 28.8 legacy PCMCIA 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows Megahertz cellular legacy PCMCIA 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 Modem Card Registry Settings

The following registry key example shows Practical Peripherals ProClass 28.8 modem 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows Socket Communications 16550 Universal Asynchronous Receiver legacy PCMCIA 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 Legacy PCMCIA Card Registry Settings

The following registry key example shows 3Com U.S. Robotics 28.8 Sportster legacy PCMCIA card 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 Card Registry Settings

The following registry key example shows Xircom 33.6 Credit Card modem card 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 Card Registry Settings

The following registry key example shows Xircom 33.6 Credit Card modem and Ethernet card 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

Concepts

Legacy PCMCIA Driver Support
PCMCIA Legacy Compatibility Layer Architecture