Don't assume Windows 2000 will support your NT 4.0 hardware

Windows 2000 (Win2K) is supposed to provide improved hardware support through built-in Plug and Play (PnP) support and the inclusion of a wide range of drivers. However, when I tried to get an HP OfficeJet 710 printer/scanner/fax device and a Future Domain TMC-850 MER SCSI controller to work on my Win2K system, my experiences weren't reassuring—especially considering that both devices have working Windows NT 4.0 drivers.

OfficeJet 710
I've worked from a home office for more than 4 years, so I'm a prime candidate for a multifunction printer/scanner/fax device such as the OfficeJet 710. In the past, when I've asked vendors about NT drivers for this type of device, I've gotten a lecture about NT's lack of bidirectional parallel-port support. So, I was astonished to discover that the 710 comes with NT 4.0 drivers.

Recently, I decided to try the driver with my Windows 2000 Professional (Win2K Pro) Release Candidate 2 (RC2) build 2128 system. My system immediately recognized the PnP device and asked me to specify the driver's location. I pointed the system to the HP CD-ROM, and Win2K Pro found the NT 4.0 drivers, which don't work on Win2K Pro.

Researching this problem at news://microsoft.public.win2000.beta.printing revealed that I wasn't alone—at least two other people had the same problem. After more than a week of bugging HP and Microsoft for an explanation, I learned that a driver is coming and should be available by the time this article goes to print.

What bothers me about this situation is that I don't know the extent of the problem. As far as I know, Win2K Pro doesn't support any other OfficeJet model or similar devices from other vendors. Neither HP nor Microsoft provided answers to questions about which models in the OfficeJet line Win2K will support and when. HP is the only manufacturer that bothered to develop an NT 4.0 driver for this type of device. That fact leads me to wonder how long other vendors will take to develop Win2K drivers.

TMC-850 MER
Years ago, I bought an Iomega Zip drive. At the time, NT didn't support the parallel-port version because NT's parallel-port drivers didn't support bidirectional operation. So, I bought the SCSI version. I used the drive with an 8-bit Future Domain TMC-850 MER SCSI controller that was left over from an obsolete external CD-ROM drive. NT 4.0 and NT 3.51 include a driver for this card, and my Zip drive worked fine with the card installed. Consequently, I didn't expect any driver problems using the card with Win2K Pro.

However, driver problems aren't the only cause of hardware headaches. The TMC-850 series controller boards came out before PnP, and they have several jumper-controlled settings. I've long since lost the documentation that came with the card, so I spent some time finding the information online. The file I discovered, tmc850m.exe, presented a bitmap image of the board. With the help of the Win2K Pro Device Manager, I identified which devices might cause a problem. (To reach the Device Manager, right-click My Computer, select Properties, then select Device Manager from the Hardware tab.) I had to change my Crystal audio card's IRQ to make room for the TMC-850. After I changed the IRQ and set the jumpers, I shut down, popped open my system's case, added the card, and powered back up.

However, my troubles weren't over. Win2K Pro offers several new features that, in most cases, simplify adding hardware to your system. When you add a PnP device, Win2K Pro prompts you for the driver. For legacy hardware such as the TMC-850, you click the Control Panel Add New Hardware applet. The applet first searches for PnP devices, then uses the same type of device-detection logic it uses during Win2K setup to search for legacy hardware. Alternatively, you can manually specify a device.

In my case, the automatic search didn't find the card. So I manually selected the SCSI device, and Win2K Pro presented me with a list of Future Domain drivers. However, the list didn't include the TMC-850.

After I bugged the folks at Microsoft for an explanation, they told me that Win2K doesn't support the TMC-850 card. They also told me that the card's driver is part of NT 4.0's \drvlib directory and that the README file clearly states that future NT releases won't support this driver. However, I'd already looked in an NT 4.0 CD-ROM's \drvlib folder, and I hadn't found the driver; the README file didn't mention it either. My Microsoft contact explained that the driver's name was fd8xx.sys.

Armed with this new information, I finally found the driver in the CD-ROM's \i386 directory. The CD-ROM didn't have an oemsetup.inf file for the driver, but I found the necessary setup information in the scsi.inf file for the TMC-850 and other 8-bit Future Domain cards.

I copied fd8xx.sys and scsi.inf to a directory on my hard disk and clicked the Add New Hardware applet again. This time Win2K Pro told me that I had a disk from an unknown manufacturer installed and presented me with a browser window. In the window, I pointed the system to the directory that contained fd8xx.sys and scsi.inf. Like magic, the TMC-850 popped up in the list. A message appeared that warned me that the driver was unsigned and that Win2K couldn't verify that the driver came from Microsoft (which is funny, considering that I copied the driver from an NT 4.0 distribution disk), but the driver installed and works fine. Now I have a completely functional Zip drive that runs off an unsupported TMC-850 card.

Helpful Tools
Halfway through the process of trying to find the TMC-850's driver, I decided to check whether Win2K Pro considered the card an incompatible device. Win2K setup would have automatically checked for compatibility if the board had been installed when I initially loaded Win2K. To run a compatibility test without the setup process, run winnt32 with the /checkupgradeonly switch from the Win2K Pro CD-ROM. I tried this method, and it failed. Winnt32 /checkupgradeonly refused to run from Win2K.

Fortunately, I have a dual-boot setup that lets me run Windows 98. I ran winnt32 /checkupgradeonly from Win98. This process also failed and presented me with an error message that said a system with more than one OS installed doesn't support an upgrade.

At this point, I cheated. The code from the Win2K setup program's upgrade check is available from Microsoft's beta support site (http:\\ntbeta
.microsoft.com), and the filename is chkupgrd_1.exe. This file didn't run from Win2K, but it ran from Win98, and it correctly identified the 710 and TMC-850 as trouble spots. However, the file didn't say these devices were incompatible. Instead, the file correctly noted that the system can't use the devices without additional drivers.

The moral of the story is that you can't make any assumptions about Win2K's hardware support—even if the hardware works under NT 4.0. Before you install any device, use the /checkupgradeonly switch or chkupgrd_1.exe to find out whether you have a potential hardware problem.