CD-ROM Driver Installation Procedure This procedure provides instructions for installing the CD-ROM driver for your CD-ROM drive. (Driver, not drive; if you are looking for the procedure to install the CD-ROM drive itself please look here instead.) This procedure is necessary in order to prepare a new system for the installation of Windows, because CD-ROMs cannot be read natively by the PC without a driver the way hard disks can. For more information, refer to the page on CD-ROM configuration. This procedure is designed for new systems that need to get the CD-ROM working in order to allow Windows to be loaded from CD-ROM, but should apply as well to those setting up a CD-ROM drive under DOS or Windows 3.x. Note that you do not need to run this procedure to set up a CD-ROM drive for use on a system already equipped with Windows 95 or Windows NT, because these operating systems have built-in CD-ROM drivers. You need it only for installing DOS, Windows 3.x, or for setting up a new Windows 95/NT system that doesn't already have Windows installed. Procedure Overview: Difficulty Level: 2-3 (Low to Moderate). Some finesse may be required depending on how good your install software is. Risk Factor: 1 (Very low). Hardware Required: None. Software Required: CD-ROM driver disk. If the driver disk does not contain MSCDEX.EXE, you will need this file as well; it may be on your operating system boot disk, or Windows 95 startup disk. Windows (or other operating system) CD-ROM. Time to Perform: About 5 minutes assuming there aren't any problems. Preparation / Warnings: If this is a new system, your hard disk should be partitioned and formatted before you begin. I strongly recommend having some sort of text editor, such as EDIT.COM, available for use in this procedure. Some CD-ROM driver install programs are totally brain-dead. I have no idea why some companies are so lame that they cannot even do something as simple as this properly, but it happens all the time. If you have troubles with this procedure, it may be due to a hardware problem, but it is also highly possible that the driver install program has done something stupid. Watch out for the following in particular: Some install programs will not run if MSCDEX.EXE is not already on the hard disk, even if you have it on the same floppy as the install program. You need to copy it over before you start. Some install programs will not run if MSCDEX.EXE is not in the C:\DOS directory on your hard disk, and they won't tell you this either! They'll just say "MSCDEX not found" and stop. "C:\DOS" is the traditional place for the MSCDEX.EXE file on older DOS 6.22 and earlier PCs. Many install programs will put the path names in CONFIG.SYS and AUTOEXEC.BAT incorrectly, sometimes leaving off the drive letter. Many install programs cannot deal at all with boot menus in the CONFIG.SYS and AUTOEXEC.BAT files. You'll have to manually edit the files to fix them. Some programs get mighty confused if you try to run them with no CONFIG.SYS and AUTOEXEC.BAT files on the hard disk already; they aren't smart enough to create them. I assume that you have the system booted and are at the DOS prompt, root directory of the C: drive. -------------------------------------------------------------------------------- Procedure Steps: Insert Disk: Place your CD-ROM driver disk into the floppy drive. Type "dir a:" and {Enter} to verify that the disk is readable. Copy Editor: If you have an editor on the floppy disk, copy it to the hard disk, it will be easier to use this way. If it is EDIT.COM and the file is on the floppy, this command will do the job, issued from the C: root directory: "copy a:edit.com c:". Create System Files (if necessary): On a new system I recommend that you make sure you have the CONFIG.SYS and AUTOEXEC.BAT files already on the hard disk, as some install programs are too dumb to figure out to make them and will malfunction. You can do this the easy way or the hard way: Using an Editor: Create an empty file using your editor, and then save it as "CONFIG.SYS". You can do this by entering the command "edit config.sys", if you have EDIT.COM, and then pressing the {Space Bar} once and choosing the option to save the file. Repeat for "AUTOEXEC.BAT" or copy CONFIG.SYS to AUTOEXEC.BAT. Using COPY: Follow these steps to create empty CONFIG.SYS and AUTOEXEC.BAT files: From the command prompt, type this command: "copy con: config.sys". The system will not respond, but rather will just drop the cursor down one line and send it to the left edge of the screen. Press the {Space Bar} once; the cursor will move one position to the right. Press Control-Z (typed as {Ctrl}+{Z}). "^Z" will appear on the screen. Press {Enter}. The system will respond "1 file(s) copied". CONFIG.SYS has now been created with one space character in it. Enter this command: "copy config.sys autoexec.bat". This will create the AUTOEXEC.BAT file. Run Driver Install Program: Execute the driver install program. The exact command will depend on what is on your driver disk, but usually "a:setup" or "a:install" is what you want. Respond to the questions that you are asked, and allow the program to modify your CONFIG.SYS and AUTOEXEC.BAT files. The program will respond by telling you to reboot the system in order to activate the driver. Check System Files: Check your CONFIG.SYS and AUTOEXEC.BAT files by either editing them or displaying them to the screen using the command "type config.sys" or "type autoexec.bat". You should see the following: CONFIG.SYS: There should be a line reading something like "DEVICE=C:\CDROM\CDATAPI.SYS /D:MSCD001", and there may be other "/" parameters in there as well. AUTOEXEC.BAT: Look for a line that reads "C:\MSCDEX /D:MSCD001". The parameter after "/D:" should match that of CONFIG.SYS. There may be other parameters as well. Change CD-ROM Drive Letter: By default, the CD-ROM will be assigned the next drive letter after whatever your hard disk partitions are using. The problem with this is that if you later add another hard disk, that will take the letter your CD-ROM was using, and this can cause a lot of your CD-ROM-based software to stop working properly. This section in the Troubleshooting Guide explains what can happen. To avoid this, it's best to pick a drive letter much "higher up" in the alphabet; I like to use "J:" for my CD-ROM (use a higher letter if you have a lot of hard disk partitions). Then, tell the system to use this letter by editing AUTOEXEC.BAT and adding this parameter to the MSCDEX.EXE line: "/L:J" (change "J" to whatever letter you want to use). So the line will now look something like "C:\MSCDEX /D:MSCD001 /L:J" (plus whatever other parameters were there before). Warning: Some people decide to wait until after installing Windows to change the drive letter; I don't recommend this because if you do, Windows will always try to look for its CD at the old location whenever it needs drivers later on. Change it now, and Windows will keep the change and things will work much better. Reboot: Remove the driver floppy disk from the floppy drive and reboot the system. After the hard disk boots, you should see a message from the CD-ROM driver as it loads, and then from MSCDEX as well, telling you that the CD-ROM has been assigned a drive letter. If you encounter any errors, try to address them by making sure the hardware is properly connected, and double-checking the commands in the system files. Bear in mind the notes I put in at the top of this procedure about how sometimes the install programs don't set up the files properly. Insert CD-ROM and Access It: Place your Windows CD-ROM (or other disk) in the CD-ROM drive. Type "dir J:" (or whatever your CD-ROM letter is) and the contents of the CD-ROM should be displayed. If this works, the driver is installed and you are ready to install the operating system. Note that it can take a few seconds for the disk to be registered, so be patient. If you get an error message like "Invalid drive specification", this probably means that your driver isn't installed properly or your drive was not found. If you get other errors you may have a problem with your drive or the particular disk you inserted. You may find the solution in this section of The Troubleshooting Expert. The drive letter assigned to my CD-ROM drive keeps changing, which makes my installed programs not work properly Explanation: The CD-ROM drive you use in your system is using a specific drive letter. Under certain circumstances (notably when changing hardware configurations such as adding a hard disk or using a removable drive) the letter associated with the CD-ROM changes. So the CD-ROM may be D: in some cases but E: after a change. This causes installed software to stop functioning since it looks for the information on the CD using the D: path when the drive is now on E:. Diagnosis: CD-ROM drives are mapped to a drive letter using the driver software that enables them to function. This is done by the DOS program MSCDEX if you are using DOS or Windows 3.x, or a built-in CD-ROM file extension program if you are using Windows 95 or NT. By default, the CD-ROM drive takes the next unused drive letter available on the system, after all hard disk volumes are assigned letters. If you add a hard disk or change the partitioning to add another disk volume, or if you add a removable drive whose drivers load before the CD-ROM's, the CD-ROM's letter will be bumped up to the next letter. Recommendation: The best solution is to set MSCDEX or Windows so that they use a specified, higher drive letter that is away from the other letters used for hard disks and allows for some expansion. This way you can add other devices and the CD-ROM's drive letter won't change. I personally use J: for my CD-ROM; you could use L: or R: or whatever you like. Warning: Check your CONFIG.SYS file to make sure there is no "LASTDRIVE" command there before setting a high drive letter, as this can cause a problem by telling your system not to use high drive letters. Also watch out for mapped network drives if you are on a network, since they too may use high drive letters. If you are using MSCDEX in your AUTOEXEC.BAT, try putting the MSCDEX command at the top of the AUTOEXEC.BAT file. Use the parameter "/L:" to specify the drive letter you want to use, for example "/L:J". Load other storage drivers after MSCDEX so they take drive letters after the CD-ROM drive. Note: Windows 3.x systems access the CD-ROM drive using MSCDEX so the instructions above apply to these machines. If you are using Windows 95, you can change the drive letter by accessing the CD-ROM's properties under the Device Manager. Any existing programs that have already been installed and aren't working due to the change in drive letter will have to be changed. Usually they can be changed by looking for an .INI file in their directory that contains a drive-letter reference. You may need to reinstall the program. When installing Windows 95, do the MSCDEX drive letter change when first setting up the CD-ROM in DOS. This way Windows will install from the CD using the right drive letter and will be able to find the Windows CD in the future when you need to update drivers or whatnot. The MSCDEX program that I am running in DOS is producing error messages or hanging up Explanation: You are running MSCDEX to set up the CD-ROM drive as a drive letter under DOS but it is either hanging the system or producing an error message. Diagnosis: MSCDEX is the file system extension that allows you to use a CD-ROM drive as a regular driver letter under DOS or Windows. It should not be used when you are running Windows 95. It will fail to load usually when there is a configuration problem, or when it cannot see the CD-ROM driver in memory. Recommendation: Make sure that the CD-ROM driver is loading. If it isn't loading then there may be a problem with the drive or its configuration. Look here to troubleshoot this. Without the CD-ROM loaded, MSCDEX will never work. Make sure that the CD-ROM driver's command line and the MSCDEX command line have identical, matching "/D:" parameters; otherwise MSCDEX won't be able to find the drive. There are different versions of MSCDEX, as it has been updated over time. You may need a newer version than the one installed on your system. Watch out for outdated install disks that come with CD-ROM drives. Some of them contain positively ancient versions of MSCDEX. Microsoft's web site should have the latest version. One tricky problem has to do with the availability of drive letters. MSCDEX must be able to find an available drive letter to set up the CD-ROM drive. If for some bizarre reason the letters are all used up (never seen this happen, though I've seen systems that went up to S:) then MSCDEX will fail. More common than a full system is the use of the LASTDRIVE command in the CONFIG.SYS file. If you see a command there that says "LASTDRIVE=x" where "x" is a drive letter, no drive letters will be assigned by DOS above that one. If you have two hard disk volumes and "LASTDRIVE=D" then MSCDEX will not be able to install the CD-ROM. Remove the LASTDRIVE command (or set it to "Z") to solve the problem and make your life a lot simpler.