In Windows 98, how you install a device depends on whether the device and the computer are Plug and Play–compliant. To take full advantage of Plug and Play technology, a computer needs the following:
The Plug and Play components perform the following tasks:
Windows 98 automatically installs and configures most Plug and Play–compliant devices. For devices that are not automatically configured, the Add New Hardware Wizard, shown in Figure 24.2, installs and configures legacy and Plug and Play devices that require installation information, such as the driver location. Microsoft recommends that, whenever possible, you choose new Plug and Play–compliant devices, even for a legacy computer that does not have a Plug and Play BIOS.
Figure 24.2 Add New Hardware Wizard
Windows 98 uses a large number of subsystems to control various classes of devices that identify logical device types, such as the display, keyboard, and network. For many devices, you must use Device Manager in the System option in Control Panel for configuration if you need to make manual changes.
Table 24.1 lists the default classes and devices and shows where you can find the installation tools for changing the device drivers. Your computer might have additional classes, depending on what you have installed.
Table 24.1 Configuration information for default classes and devices
Class and devices | Where to configure devices | |
---|---|---|
Disk class: Disk drives and adapters | Device Manager, under the Disk drives option. | |
Display class: Display adapters | Device Manager, under the Display adapters option. -Or- Display option in Control Panel. See "Configuring the Display" later in this chapter. |
|
Modem class: Data and fax modems | Device Manager, under the Modem option. -Or- Modems option in Control Panel. See Chapter 21, "Modems and Communications Tools." |
|
Mouse class: Mouse devices | Device Manager, under the Mouse option. -Or- Mouse option in Control Panel. See Help. See also "Configuring the Mouse" later in this chapter. |
|
Multimedia class: Multimedia devices | Device Manager, under the Sound, video and game controllers option. -Or- Multimedia option in Control Panel. See the related media devices in Device Manager for game ports; see also Chapter 12, "Multimedia." |
|
Network class: Network adapters | Device Manager, under the Network adapters option. -Or- Properties for the network adapter under the Network option in Control Panel. See Chapter 15, "Network Adapters and Protocols." |
|
PC Card class: PC Card sockets | Device Manager, under the PC Card socket option. See "Using PC Cards" later in this chapter. | |
Ports class: Ports | Device Manager, under the Ports (COM and LPT) option. See "Configuring Communications Resources" later in this chapter. | |
Printer class: Printers | Printers Folder (no class installer). See Chapter 11, "Printing, Imaging, and Fonts." | |
System class: System devices | Installation handled by the system. Configure using the System devices option in Device Manager. | |
Unknown class: Detected devices with no driver for Windows 98 | Device Manager -Or- Add New Hardware option in Control Panel. See "How Windows 98 Installs a Device" later in this chapter. |
Windows 98 Setup performs an inventory of all devices on the computer and records the information about those devices in the registry. Setup gets configuration information for system devices from the INF file associated with each device and, with Plug and Play devices, from the device itself. To maintain compatibility, Setup also checks entries in Win.ini, System.ini, and Config.sys.
When a new device is installed, Windows 98 uses the device ID to search Windows 98 INF files for an entry for that device. Windows 98 uses this information or a default driver to create an entry for the device under the Hkey_Local_Machine branch in the registry, and it copies the drivers needed. Then the registry entries are copied from the INF file to the driver’s registry entry, including the DevLoader= and DriverDesc= values for the Driver entry, and the Driver= and ConfigFlags= values for the Enum entry.
Tip
If you use custom setup scripts to install Windows 98, you can include the setting devicepath=1 in the [Setup] section to specify that Windows 98 should check a source installation path to find INF files, rather than looking only in the Windows INF directory when installing devices. When you use this parameter in setup scripts, you can later add INF files to a single network source location to ensure that up-to-date drivers are used any time a new device is installed on computers running Windows 98. For information, see Appendix D, "Msbatch.inf Parameters for Setup Scripts."
When you need to install a new device, rely first on Windows 98 to detect and configure it. How you do so depends on what type of device you have, as the following list explains:
To install a new Plug and Play–compliant device
The computer detects your device and, if you are installing a PC Card, beeps when the device is configured and loaded. If the computer does not detect your device, it is a legacy device, and you should follow the steps in the procedure "To install a legacy device" later in this section. If the computer does not appear to detect your device, check for your device in the Unknown Device section in Device Manager. You might need to install a driver from within Device Manager.
You can begin working with the device immediately. Windows 98 notifies other drivers and applications that the device is available.
If your computer uses PC Cards or other Plug and Play cards and if a driver is not available for the new device, the Add New Hardware Wizard gives you the following four options:
For more information about the Windows Update Web site, see Chapter 27, "General Troubleshooting."
To install a legacy device
Under Windows 98, Plug and Play support for the PC Card socket is enabled automatically. If you must use old drivers, Windows 98 should work well with your previous PC Card drivers, although some Plug and Play capabilities such as automatic installation and friendly device names will not be available.
To take advantage of Plug and Play, a PC Card must contain information that Windows 98 can use to create a unique device ID for the card. This is called the card information structure (CIS). Device drivers can be implemented under three possible schemes:
Windows 98 supports many PC Cards, including modems, network adapters, SCSI cards, and others. If Windows 98 includes supporting drivers for the PC Card and for the socket, installation and configuration should be automatic. This section provides some guidelines for enabling Windows 98 protected-mode PC Card support when automatic detection and configuration are not available for your card.
For more information, see the topic "PC Cards" in Help. See also the PC Card Troubleshooter.
Important
If you are using a network card, your PC Card socket driver and network driver both must be Plug and Play–compliant drivers (that is, developed for Windows 98 and compliant with NDIS version 3.1 or later) or both must be real-mode drivers. If these drivers are of mixed types, the computer might hang, or you might not be able to connect to the network.
If you are performing a clean install, Windows 98 Setup automatically detects the presence of a PC Card socket and automatically enables it. If you are not performing a clean install, you can use the Add New Hardware Wizard to make Windows 98 automatically detect the socket.
To verify that Windows 98 has properly detected your PC Card socket
If Windows 98 has not detected a PC Card socket, your socket controller might not be supported by Windows 98.
To find out if a PC Card socket is supported
If your socket does not appear in the list, you might want to find out if this type of socket is supported. Most likely, if it did not install automatically, the socket type is not supported.
If your PC Card does not appear in Device Manager after you insert it, you might need to enable protected-mode support for that PC Card by using the following procedure.
To enable protected-mode support for PC Card by running the PC Card Wizard
– Or –
In Device Manager, double-click the PC Card controller.
– Or –
In the Windows 98 Help index, look up "PC Cards" and then "enabling support."
To find out if Windows 98 has enabled PC Card support
In the Device Usage box, if the box labeled Disable in this Hardware Profile is not checked, PC Card support is enabled.
Microsoft strongly recommends that you use 32-bit, protected-mode drivers wherever possible. With protected-mode drivers, much of the configuration information is stored in the registry rather than in Config.sys or other files.
The following lists the general guidelines for device entries in Config.sys and whether such entries are required or can be removed under Windows 98:
Windows 98 automatically unloads any real-mode drivers for which it has protected-mode drivers to provide the same functionality. For example, the real-mode Dblspace.bin driver is unloaded, and the protected-mode Dblspace driver, Drvspacx.vxd, takes over. However, the protected-mode device driver should take over only when it guarantees functionality similar to that of the real-mode driver, not merely because it can drive the hardware.
Tip
To determine whether a particular driver is running in real mode versus protected mode, click the Performance tab in the System option in Control Panel.
Real-mode drivers that can safely be used are identified in the list of safe drivers, which identifies drivers and terminate-and-stay-resident (TSR) programs that Windows 98 can replace with corresponding protected-mode drivers. The list of safe drivers (Ios.ini in the Windows directory) can include the following information:
Windows 98 does not store the version number of the driver or the TSR in the list, so the vendor must change the name of the driver if a future version is enhanced so that the driver is safe or unsafe.
By default, the following drivers are considered safe:
For more information on interrupts, see Chapter 10, "Disks and File Systems."
A real-mode driver is considered unsafe if it implements functionality that is not supported. For example, a real-mode IDE or enhanced small device interface (ESDI) driver that uses dynamic encryption is an unsafe driver because Windows 98 does not support encryption. Windows 98 protected-mode drivers do not implement the following functions, so if a real-mode driver uses any of them, it is considered unsafe and should not be added to the list of safe drivers:
If Windows 98 provides an appropriate protected-mode driver, you should use only the real-mode driver in the following cases:
The following is the syntax of the list of safe drivers in Ios.ini:
filename, qualifier_string ; comments
qualifier_string is optional.
Qualifier string | Meaning |
---|---|
do_not_care | Indicates that it is acceptable to load the protected-mode driver and not use the mapper for this real-mode driver, because it doesn’t matter whether it sees any I/O requests. This is the default. |
must_chain | Implies that the device driver or TSR is safe, but it has an INT13 hook that needs to see INT13 requests. In this case, the protected-mode drivers are loaded, but the system routes the logical requests through the real-mode mapper and then switches back to protected-mode at the end of the INT13 chain. |
must_not_chain | Implies that the driver is safe as long as it does not see any INT13 requests. In this case, the protected-mode drivers are loaded, and the real-mode mapper is not used. |
non_disk | Indicates a driver that controls a device that is not a disk, such as Interlnk.exe. Integrated office system (IOS) issues INT25 calls to all logical volumes in the system and determines whether the request is mapped to INT13, ASPI, or CAM. If the request is not mapped, this is a monolithic driver, as is the case for Interlnk.exe. Adding non_disk prevents IOS from considering Interlnk.exe in its safe-driver processing. |
monolithic | Similar to non_disk. Any driver that is monolithic and safe must have this qualifier set to indicate to IOS that the protected-mode port drivers can be loaded and the driver’s entry point can be handled to prevent contention. |
Ios.ini also contains an Unsafe CD section. Adding a driver to this section indicates that this compact disc file system (CDFS) will not be loaded on the CD drives that this driver controls.
The following is an example of some Ios.ini entries:
386max.sys ; Qualitas
4dos.com ; 4DOS shell program
ad-dos.com ; Afterdark
ad_wrap.com ; Afterdark
adi2.com ; Afterdark
aspi3x90.sys ; DTC SCSI no PM driver
ramdrive.sys, non_disk; MS-DOS
interlink.exe, non_disk; MS-DOS
laddrv.sys, non_disk; MS-DOS
Tip for Troubleshooting Protected-Mode Drivers If you believe that a protected-mode driver should be controlling a device, but the device appears with a real-mode driver in the System option in Control Panel, you can check entries in Ios.log. The Ios.log file in the Windows directory is created when a protected-mode driver is not available or the operating system detects that an unknown device driver is controlling a device. In most cases, the first line in Ios.log states why the protected-mode driver was not loaded. If the first line mentions Mbrint13.sys, the problem most likely is a virus (unless you are using a driver that replaces the master boot record). |