Windows 98 Sound Driver Installation via INF Files

During the Windows 98 era, sound card installation transitioned from complex manual setup to an automated process powered by Plug and Play (PnP) architecture and plain-text Setup Information (INF) files. These INF files acted as detailed blueprints, directing the operating system on how to identify audio hardware, allocate system resources, copy necessary driver binaries, and configure the Windows Registry. By replacing legacy DOS-era configuration files, the INF-driven model streamlined audio device management across both legacy Virtual Device Drivers (VxD) and the then-emerging Windows Driver Model (WDM).

Hardware Detection and PnP Identification

When a user installed a PCI or ISA sound card and booted Windows 98, the Plug and Play Manager queried the device bus for hardware identifiers. For PCI audio cards, the system retrieved a Vendor ID (VEN) and Device ID (DEV). For PnP ISA cards, it retrieved an EISA-format ID.

Windows 98 then initiated a search through the C:\WINDOWS\INF directory—and any external installation media provided by the user—to locate an INF file containing a matching hardware ID.

Structure of the Sound Driver INF File

Sound card INF files were divided into discrete sections parsed by the Windows 98 SetupAPI engine:

  • [Version]: Identified the operating system signature ($CHICAGO$ for Windows 9x) and declared the device class, typically Class=MEDIA.
  • [Manufacturer] and Model Sections: Linked the hardware manufacturer to specific device models and their unique PnP hardware IDs.
  • [Install] (or [DDInstall]): Defined the primary installation instructions, calling subsequent directives such as CopyFiles, AddReg, and UpdateInis.
  • [AddReg]: Specified registry entries to create or modify under HKEY_LOCAL_MACHINE\System\CurrentControlSet. This registered the device with the multimedia subsystem, configured audio mixer properties, and mapped audio endpoints.
  • [Strings]: Stored human-readable text strings, such as device names and vendor details, displayed in the Device Manager.

Resource Allocation (IRQs, I/O Ports, and DMA)

Unlike modern hardware, Windows 98 sound cards—especially Sound Blaster-compatible ISA cards—heavily relied on strict hardware resource assignments. The INF file included LogConfig (Logical Configuration) sections that declared valid combinations of Interrupt Requests (IRQs), Input/Output (I/O) port ranges, and Direct Memory Access (DMA) channels. The Windows 98 Configuration Manager evaluated these parameters against existing system devices to automatically assign conflict-free resources.

Driver File Transfer and Registration

Once resources were negotiated, the INF file’s [SourceDisksNames] and [SourceDisksFiles] sections told the installer where to find the physical driver files on the floppy disk, CD-ROM, or hard drive.

Depending on the architecture, the INF instructed the system to copy either legacy VxD files (such as .vxd and .drv files) into C:\WINDOWS\SYSTEM, or WDM files (.sys) into C:\WINDOWS\SYSTEM32\DRIVERS. The INF also registered associated dynamic link libraries (DLLs) and control panel applets.

Finalization

After copying the files and committing all registry entries, Windows 98 bound the driver to the multimedia architecture (MMSYSTEM). If the hardware did not require an immediate reboot to release locked resources, the system initialized the card, loaded the driver into memory, and enabled sound playback immediately without altering AUTOEXEC.BAT or CONFIG.SYS.