This article answers questions about MIDI and audio setup under Windows. For more general questions/answers about MIDI/audio/computer setups, and trouble-shooting, read the FAQ "MIDI connections and computer setup".

If you're having a problem with an internal IBM PC card not working, then you should first check for any hardware conflicts in your system. Read the article "Resolving hardware conflicts" for more information.

Questions in this FAQ are:

"Why doesn't Windows recognize my sound card?"
"How do I install/setup an audio/MIDI driver?"
"How do I remove an audio/MIDI driver?"
"How do I get my sequencer program to have more stable digital audio?"
"What is that yellow exclamation mark in Device Manager?"
"Why won't my Windows 95/98/ME driver work under later versions of Windows?"

I installed the Windows operating system on my computer, but it doesn't seem to find my soundcard. Why did this happen, and how do I get my audio working?

When you install Windows, it will install sound drivers only for those cards that have drivers upon the Windows CDROM. Typically, this means only for a couple basic models of onboard (ie, built into your motherboard) sound chips. If your computer is connected to the internet, Windows will attempt to look for additional drivers upon some website owned by Microsoft. But that search will also fail if the manufacturer of your soundcard hasn't supplied Microsoft with some drivers.

The solution is to install the soundcard's drivers after you've finished installing the operating systems. You'll have to download those sound drivers from the website of the soundcard's manufacturer. Or, usually there is a CDROM (containing the drivers) packaged with the sound card. It's easy to manually install the drivers, as explained in "How do I install/setup an audio/MIDI driver?".

How do I install/setup an audio/MIDI driver?

Most driver packages ship with a program you can run which installs the driver for you. Typically, this program is named setup.exe. There will often be numerous other files (in the package) along with setup.exe, but these are used only by setup.exe to install driver support. (Once the driver support is installed, you can delete setup.exe and all other files in the package, or save them if you need to reinstall). If the driver package is shipped on a CDROM, the CDROM will typically have a file named autorun.inf on it. All autorun.inf does is automatically run setup.exe when you insert the CDROM into the drive. (This is a function of Windows' autorun capability. Unless you have this feature disabled, Windows will "autorun" any CDROM with an autorun.inf file on it).

Setup.exe will automatically detect what operating system is on your computer, and install the correct driver. (ie, Many maunfacturers will ship one CDROM containing drivers for several versions of Windows. But not every driver is compatible with all versions of Windows, so the correct one must be installed for your system).

So usually, all you need to do is insert the CDROM that was included with your soundcard.

If the driver does not ship with its own setup program, then you will have to manually install the driver yourself. To manually install a driver, the driver should have a .INF file (ie, created by the manufacturer and shipped with the driver). The INF file (ie, the filename ends with a .INF extension) is really just a text file that tells Windows what kind of driver is being installed (ie, digital audio, MIDI, video, printer, etc). It also contains the text that Windows uses when it displays the "name" of the driver (ie, not the driver filename, but rather, a more meaningful name which I'll call the "device name") in various displays, such as in the Control Panel's Sounds and Audio Devices notebook. The INF also lists what the driver filenames are so that Windows knows what files to copy off of the install disk. You can view this INF file in a text editor (and even edit the device name). For example, the Roland RAP-10 INF indicates that the driver supports digital audio, MIDI, and LINE IN (ie, aux). Windows treats these 3 "sections" of the card as if they were 3 separate devices. The device name for each of these sections of my RAP-10 is "Roland Audio Producer". Windows ships with several audio/MIDI drivers for various cards and the INF files (and drivers) for those are included with Windows.

Note: Before installing new MIDI/Audio drivers, I recommend that you first manually remove any currently installed drivers that the new drivers are meant to replace, unless the new drivers are written to be installed over those old drivers. Usually, if you're updating new drivers over old drivers written by the same manufacturer for the same card, then there's no need to remove the old drivers first. But, if you had also changed your sound card, or gotten drivers from a different source, then I recommend removing the old drivers. For example, here's how I would go about changing to a different sound card and installing new drivers:

  1. Boot up your system with its current setup (ie, with your current sound card and drivers).

  2. Remove the current drivers. See "How do I remove an audio/MIDI driver?".

  3. ShutDown Windows and turn off the computer.

  4. Install the new sound card.

  5. Boot up the system. If Windows doesn't autodetect the new card (which Windows won't if the card's drivers weren't included with Windows itself, or if the card isn't Plug-and-Play), then run the driver's setup program. If there's no such program, then you'll have to manually install the new drivers.

Here are the steps to manually install a MIDI/audio driver:

  1. Start the Control Panel's Add New Hardware utility.

  2. Click Next to skip the intro screen.

  3. Answer No to Windows asking to search your hardware, and click Next.

  4. Move down the list until you see Sound, video, and game controllers. Click on (ie, highlight) that item, and click Next. Windows will now present a dialog that lists all of the audio/MIDI drivers included with Windows. In the box on the right is listed all of the manufacturers whose drivers are included with Windows. When you select a manufacturer name, the box on the left updates to display those included drivers for that manufacturer's products.

  5. If the driver that you want to install is among Window's included drivers, and you wish to use that, simply highlight the driver name, and select OK. Now skip to the last step.

    On the other hand, if you prefer to use drivers other than the included ones (ie, you have updated drivers), or the driver you need isn't included with Windows, then click the Have Disk button instead.

  6. Type in the directory where the driver INF file can be found, and click OK.

  7. If Windows finds the INF file, it will present a window containing the device name. Highlight that name, and click OK.

    Note: If the driver package contains drivers for various versions of windows, or various models of cards, then there may be numerous INF files in the package. You may have to search around, selecting various INF files, until you find one that lists the desired model.

  8. Windows will then install the driver, and run whatever setup routine is contained within the driver. Each driver has its own proprietary setup routine, if any, so you'll have to deal with whatever prompt/window pops up at this point.

After you've installed the driver, you can now configure Windows' (and ultimately, all Windows applications') use of the driver. For example, do you want all Windows programs to send their MIDI output to this driver, and get their MIDI input from this driver? Do you want all programs to use the card's ADC (assuming it has such) to record digital audio (usually stored in a WAVE file)? Do you want all programs to use the card's DAC to play digital audio? You use the Control Panel's Sounds and Audio Devices notebook to configure the card's use. Open the Sounds and Audio Devices notebook. It has several pages that you can flip to (ie, the tabs are at the top of the notebook).

One page is called Audio. This page concerns playing and recording digital audio. The page is divided in half, with the Playback settings on top, and the Recording settings below. If your card has a Digital to Analog Converter (ie, for playback) and Analog to Digital Converter (ie, for recording), then your card's device name should be listed in both the dropdown list in the Playback section of the page as well as the dropdown list in the Recording section. Select the device name so that it appears as the "Preferred Device" for both Playback and Recording. Now all Windows apps (as well as Windows itself when it plays "system sounds") will use your card for digital audio playing and recording. For cards that support various sample rates and bit resolutions, you should be able to select a "Preferred quality" for recording. You can also set default values for playback and recording volume. The "Use preferred devices only" setting is only effective if you have more than one digital audio device (and driver) installed. When selected, Windows forces all programs to use just the one "preferred device". When not selected, if some program has the preferred device in use, and another program wants to do something with digital audio, Windows will automatically have the second program use some other digital audio device in your system. Note that it's perfectly OK to have different cards chosen for playback and recording, which is one way to get around the problem of not having a full duplex sound card (ie, one that can record digital audio at the same time that it is playing back previously recorded digital audio).

The above settings don't mean that all programs must use the "preferred device" for digital audio, with those volume and rate/resolution settings. Rather, these are default values (for programs that don't offer ways to change such settings). On the other hand, a program could query all of the digital audio devices installed on your system assuming that you had more than one installed), and let you choose to use any and all devices, maybe even simultaneously for many tracks of digital audio. The program could provide controls with which you adjust volume and rate/resolution, and maybe even additional parameters. But such a program would have to be written to use Windows' audio features in a fancy manner. Your average CD-ROM Encyclopedia, and other titles that aren't geared for fancy audio work, generally use the preferred device and default settings verbatim.

How do I remove an audio/MIDI driver?

Never, never, never manually delete driver files by dragging icons to the Recycle Bin nor typing "del" from a command prompt. That's not the way that you uninstall a driver. There's a difference between uninstalling a driver and deleting files on your HD. If you do the latter, then you'll likely still leave behind references (to the now-missing driver files) in Windows' registry and INI files. This can cause all sorts of error messages to pop up. And if you later install other drivers without removing those references, you could end up with a completely confused set of error messages and weird behavior.

The proper way to uninstall a driver is as follows:

  1. Open Control Panel's "System" notebook.

  2. Flip to the "Hardware" page.

  3. Click the "Device Manager" button. There you'll see a listing of all of the hardware in your computer, separated by category.

  4. You should see a category for sound and gameport devices with a small "+" sign next to it. Click on the + sign and this should drop down a list of the installed audio cards on your system. (Alternately, some sound cards list their driver components under their own category).

  5. Highlight (ie, click on) the name of whichever component you wish to remove.

  6. Click the "Properties" button.

  7. Click the "Remove" button.

If your audio device isn't listed on System notebook's "Device Manager" page, then you'll have to open the Sounds and Audio Devices notebook and flip to the "Hardware" page. This is like the Device Manager listing, but it only shows MultiMedia components. Click on the component that you wish to remove, click the "Properties" button to open its notebook, flip to the "Properties" page, and click the "Remove" button.

When using my 16-bit Windows sequencer software under Windows, I get erratic digital audio playback. Sometimes, there's static or tempo glitches. Why does this happen, and how can I fix it?

Most of the problems with old (16-bit) software playing digital audio tracks (ie, recording to, or playing from, the hard drive) are due to the differences between Win3.1's and Win95's disk cache handling and virtual memory. 16-bit Windows software is written for Win3.1, and consequently may not be designed to perform well with Win95's different methods. You can minimize adverse effects Win95 may have on 16-bit software by forcing the disk cache and virtual memory (ie, swap file on your HD) to fixed sizes.

To set Win95's disk cache to a fixed size, load the file SYSTEM.INI (found in your Windows directory) into NotePad. Find the line that reads [vcache]. Alter the MinFileCache and MaxFileCache lines below it (or add these 2 lines if they aren't already there). If you have a system with 8 MEG of RAM, set both to 1024. If you have a system with 16 MEG of RAM, set both to 2048. For example, here's what it would look like for 16 MEG:


Resave the file.

This limits the RAM that Win95 uses for its disk cache. Normally, Win95 allocates all free RAM for that, which could interfere with memory allocations that your sequencer is trying to make during playback, and cause slowdowns in performance.

To set Win95's virtual memory (ie, swap file) to a fixed size, open Control Panel's System notebook and flip to the Performance page. Click on the "Virtual memory" button. Select "Let me specify my own virtual memory settings". For the Minimum setting, enter 0. For the Maximum setting, enter 20 if you have 8 MEG of RAM, or 28 if you have 16 MEG.

This prevents the swap file from growing and shrinking on your hard drive. It's also recommended that you defrag your drive afterwards. If you have more than one drive, try putting the swap file on a drive other than the one where you'll be recording digital audio.

After the above adjustments, reboot your system.

When I opened up Control's Panel's System notebook, and flipped to the Device Manager page (ie, to see a list of the hardware in my system), I noticed a small, yellow exclamation mark next to my sound card's name. What is this?

That exclamation mark you see next to a device name in Windows' System Notebook "Device Manager" page indicates either a conflict (usually IRQ) or that something is wrong with the device's response, or you simply haven't yet installed the driver.

Device Manager can be used to identify possible hardware conflicts in your system.

When I use Windows XP (or later) Control Panel's "Add New Hardware", I can manually locate my sound card's INF file, and XP seems to install the card's Windows 95 driver. But my card does not appear to be operating at all under Windows XP. Why?

Windows XP/Vista/7 uses an entirely different driver model than Windows 95, 98, ME, or Windows 3.1. Windows XP has a 32-bit driver model whereas Windows 3.1 and Windows 95/98/ME still have some 16-bit components in their sound card drivers. You cannot use Windows 3.1 or Windows 95/98/ME drivers under Windows NT/2000/XP. You need a Windows NT/2000/XP driver for your sound card. Although Windows XP recognizes the INF file for a Win3.1 or Win95/98/ME driver (since XP drivers also use the INF file for installation purposes), it may appear that XP has installed the 16-bit driver, but it can't use such a driver. Typically, you'll get some sort of error message that the driver is not readable when you reboot your system.

Microsoft created a new driver model (Windows Driver Model, or WDM) which works with both the Windows ME and 2000 and XP operating systems. So a WDM driver written for Windows ME will should work under XP (and vice versa). Of course, you would need a new driver for your sound card if you wanted one of these WDM drivers. Otherwise, Win XP continues to support current Windows NT drivers (so if you can't specifically find a Windows XP driver, then at least try to find a Windows 2000 or Windows NT driver), and Win98 continues to support Win3.1 and Win95 drivers, but neither will be able to use the others' current drivers.