Occasionally, a PC’s CD or DVD-ROM drive will stop responding for no known good reason. Sometimes the problem is hardware–a CD-ROM drive, being a mechanical component, can fail–but as often as not, it seems, the problem is software rather than hardware. Here’s what to do with a Windows 95 or Windows 98 CD-ROM drive not working when the same drive works just fine in another OS.

If Windows has both 16- and 32-bit CD-ROM drivers, it can get confused and disable the drive to protect itself. The solution is to remove the 16-bit driver, then delete the obscure NoIDE registry key to re-enable the 32-bit driver.

Early in my IT career, this was a problem I fixed at least once a week. I’m sure the techs in computer stores fixed it several times a day. But today the problem is obscure and the Internet seems to have mostly forgotten the problem and its relatively simple solution.

I got to a point where I could fix this problem more quickly than I could close the helpdesk ticket.

Removing the 16-bit driver to fix a Windows 98 CD-ROM not working

Windows 98 CD-ROM drive not working

The fix for a Windows 95 or Windows 98 CD-ROM drive not working usually involves deleting a registry key and disabling config.sys.

The first step is to get rid of that pesky 16-bit driver. Windows doesn’t need it, even to run DOS titles, and today, if you want to play DOS games you probably have a nice dedicated DOS machine for that.

DOS loaded CD-ROM drivers in a file called config.sys. This can work in Windows 95 or 98 too, but often it causes problems. The best thing to do is just disable the config.sys file entirely. Open My Computer, navigate to Drive C, and locate the file config.sys. (It might just say “config”.) Rename it to something else, like config.bak.

If you don’t want to completely disable config.sys, you can do this. Make a backup copy of config.sys, then load config.sys in a text editor and remove the CD-ROM driver from it. It’s usually a line that looks something like this:

device=c:\windows\oakcdrom.sys /d:mscd01

Delete or comment out that line. To comment it out, just put a semicolon in front of it like this:

;device=c:\windows\oakcdrom.sys /d:mscd01

Don’t reboot yet. Often, this will solve the problem in and of itself, but frequently there’s another problem on Windows 9x boxes.

Re-enabling the 32-bit driver to fix a Windows 98 CD-ROM not working

Sometimes Windows has trouble deciding whether to use the driver specified in config.sys or its own built in driver, so it’ll bluescreen. Then, the next time you boot, it adds a key to the registry that disables the CD-ROM drive entirely and makes the rest of the computer sloth-like. But you don’t want to compete in a sloth race, you just want to play some retro games. Don’t be afraid of the registry. This is fixable.

To fix this condition, click Start > Run, and type regedit. Double click on HKEY_LOCAL_MACHINE, then navigate to System\CurrentControlSet\Services\VxD\IOS. You’ll probably see a value named “NoIDE.” Right click on NoIDE and select Delete. Reboot.

After your system boots, your CD-ROM drive will likely come back to life. The whole system will probably run quite a bit faster now too, since it’ll be using 32-bit drivers for all disk access.

This problem is similar to the problem of putting too much memory in a Windows 9x box, and at least as confusing.

Other troubleshooting steps

If neither of these things work, you can determine for certain if the problem is hardware or software through a couple of methods. If your manufacturer gave you a restore CD, try booting off it. Hold down the shift key while it tries to boot in order to prevent it from doing anything nasty to your system–you just want to see if it boots up. If it doesn’t boot, you’ve got a hardware problem. Replace the drive. If it does boot, either try the above directions again, or you’ve got a problem I’ve never heard of.

If you don’t have a system restore CD, you can accomplish basically the same thing with a DOS boot disk. You can get one of those from bootdisk.com. Boot off the disk, pay attention to what drive letter the CD-ROM got (usually D: but it can vary), insert a data CD, and type the command DIR D: (substitute the drive letter that came up if it’s something other than D:). If you get an error message, you’ve got a hardware problem. Replace the drive.

What about newer Windows versions?

Windows NT, Windows 2000, and Windows XP are immune to the problems I described here. If the drive quits working under one of those operating systems, either your drive lens is dirty or you’ve got a bad drive. Cleaning kits are hard to find and overpriced. DVD-ROM drives are cheap enough today that outright replacement is usually cheaper than trying to fix one.