PRB: Windows 98: PCMCIA Memory Windows May Fail Below 1 MB

ID: Q196123

The information in this article applies to:

SYMPTOMS

Under Windows 98, PCMCIA devices used with Texas Instruments (TI) 113x CardBus controllers may fail to receive memory windows below 1 megabyte (MB). Specifying a specific configuration tuple memory address below 1 MB does not work, nor does using an .inf file override to force the window below 1 MB.

CAUSE

TI 113x CardBus controllers can only address memory windows that are mapped into a single 16-MB frame. Windows 95 OSR2 maps this 16-MB frame to the low 16 MB of physical memory, meaning that all memory windows must reside below 1 MB because systems usually have at least 16 MB of RAM.

However, Windows 98, by default, maps the 16-MB frame above the top of physical memory, meaning that memory windows must also reside above system RAM.

RESOLUTION

In Windows 98, Cbss.vxd uses a registry entry to override the default TI 113x 16-MB frame mapping location. If the registry location below contains an entry of any name with a value of 2, CBSS maps the controller's 16-MB frame to the low 16 MB of physical memory, just as Windows 95 OSR2 does:

   HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\CBSS\Hacks

This allows memory windows to be mapped below 1 MB.

You can use the following line in an AddReg section in the .inf file to force this behavior:

   HKLM,System\CurrentControlSet\Services\VxD\CBSS\ 
   Hacks,TIForceLow,3,02, 00,00,00

NOTE: This line should not include any breaks in your .inf file.

NTOE: The value name TIForceLow is arbitrary. Any name works successfully.

STATUS

This behavior is by design.

Additional query words:

Keywords          : kbDDK kbWinOS98 
Version           : WINDOWS:98
Platform          : WINDOWS
Issue type        : kbprb

Last Reviewed: December 23, 1998