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, typicallyClass=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 asCopyFiles,AddReg, andUpdateInis.[AddReg]: Specified registry entries to create or modify underHKEY_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.