Why my FLASH / ATA card with CIS is not configured or not functioning properly?
Reason: One of important characteristics of the memory window is window access speed. Typically PC Card indicates required windows access speed in CISTPL_DEVICE or CISTPL_DEVICE_A. The Microsoft PCMCIA.SYS driver is responsible to translate specified speed to corresponding number of additional Wait states. It was found that translation algorithm is implemented improperly. First of all, the translation algorithm doesn't differentiate between 16-bit and 8-bit memory window (in ISA architecture "normal" (without additional Wait states) 8-bit cycle is about 750ns when 16-bit cycle is 375 ns). Secondly, the translation algorithm will reject cards requesting memory window with an access speed higher that 600 ns. Finally translation itself is performed improperly:
  • Speed less of 350 ns is translated to 0 Wait states
  • Speed between 350 and 450 ns is translated to 1 Wait state
  • Speed between 450 and 550 ns is translated to 2 Wait state
  • Speed between 550 and 700 ns is translated to 3 Wait state

In fact for e.g. 16 bit window 0 Wait states result in 375 ns, 1 Wait state - in 500 ns, 2 Wait states in 625 ns and 3 Wait states - in 750 ns.

Solution:Please check your CIS with our CISInfo Utility. There is currently no software work-around of this problem. APSoft will implement corresponding CIS override in one of the next versions of product.