Monday, 3 June 2019

drivers - How to enable AHCI in Windows XP without reinstalling


This question is part of a larger list of things I'll need to do before installing a new SSD drive, but I think it deserves its own question.


Current setup: A dual-boot machine with Windows XP installed on a SATA 6Gbps HDD. BIOS has always been configured in IDE mode. Because of this, if I try to change to AHCI in BIOS, as Windows doesn't have AHCI drivers, it won't boot.


I already know that I can achieve this reinstalling the whole OS. But if possible, I'd like to enable AHCI without reinstalling again.




  • Would it be possible to change the driver to the AHCI one while in Windows? (using the Device Manager, for instance). If it where possible, will the OS crash at the moment the driver is changed while still being BIOS in IDE mode?




  • If not, is there a way to install it doing a partial repair using Windows disk? If such a method exists, will my current settings and applications remain unchanged?




Thanks in advance.


UPDATE
My South Bridge is an Intel(r) ICH10R. I already have the correct drivers which are located in my motherboard disc. Notice that the drivers are different for 32bit and 64bit OSes, so it is important to pick the correct ones. The files are called "iaStor.inf" and "iaAHCI.inf".



Answer



After arriving home, and without doing any backup at all XD, I finally got the job done.


It took no more than 10 minutes. My method is based on this blog post so its author is the one that deserves most credit. Also I have to mention Bob which quickly posted this link as a comment (my apologies Bob, yes it worked). Still I'd like to post the steps I followed since there are some differences and it may be helpful for some other people.


I've a Gigabyte board and it comes with a Utility DVD that contains, among other things, the AHCI drivers. Here is my installation explained:




  1. (This step is only for Gigabyte MB owners. You can get the drivers somewhere else and go to #3) Go to \BootDrv folder and copy the file MSM32.exe to a USB drive or a hard drive partition. This is the correct file for 32bit OS (Windows XP). According to the motherboard manual, it is also the one to choose for Windows Vista 32bit. In case you have a 64bit OS, copy MSM64.exe instead. There's another one named MSM2k.exe, I suppose it is the driver for Windows 2k, but I'm guessing here.




  2. In the folder where you copied that file, double click on it and it will open a command-line prompt asking for confirmation to extract the files. Type "yes" and then enter. Several files will be extracted at that folder. these are the actual drivers. We'll need these files to tell the Device Manager where to search for the drivers. Open the Device Manager and expand the "IDE ATA/ATAPI controllers" node. In my case, there were listed the regular IDE channels, and a couple of generic Intel ICH10 SATA controllers. These were the generic drivers installed by Windows, and I can tell you for sure that these don't work (tested enabling AHCI in BIOS and trying to load the OS resulted in beeps and reboots).




  3. Select one of the SATA controllers -> Right click over it -> update driver -> Install from a list or specific location (Advanced) -> check the "don't search" radio button and click next -> click on "Use disc" -> click on "browse" button and select the folder with the drivers from wherever you have copied them. If you have the drivers in a CD or DVD, make sure it doesn't contain an AUTORUN.INF file at the root folder, because the file picker dialog is looking for .INF files and it won't let you browse to subfolders.




  4. Now the list with drivers is populated with at least a new option. Here I selected the correct one for my chipset (ICH10R). Windows shows a warning message. Click yes.




  5. The driver is installed and Windows ask for a reboot, BUT don't reboot yet. Instead, select the remaining SATA Controller in Device Manager and repeat #3 and #4.




  6. After the second driver install, Windows does not ask for a reboot. BUT now it is time for rebooting. Be ready to enter BIOS as soon as the computer starts.




  7. Change in BIOS (in my case, under "Integrated peripherals" -> "SATA RAID/AHCI Mode") from IDE mode to AHCI. This can vary depending on your system and BIOS, and maybe you even need to select RAID if no AHCI option is available. There are better questions on this site where this topic is better explained, so I won't delve into it. In my case, there was a second option, just after the IDE/AHCI one, named "SATA port0-3 native mode". It was disabled, I enabled it. The explanation for this option in my motherboard manual is that DISABLED allows the SATA controllers to operate in legacy IDE mode, and that it should be selected for OSes that do not support native mode (like Windows 9X/ME). Windows XP supports native mode so I enabled it. I guess more modern OSes will also support it. Save BIOS and continue with the boot.




  8. Windows is loaded correctly. It starts recognising the existent drives in the new AHCI mode, and showing yellow bubbles. After that, it asks for a second reboot. Select OK to reboot.




  9. Windows is loaded again and this time everything should be ready.




No comments:

Post a Comment

How can I VLOOKUP in multiple Excel documents?

I am trying to VLOOKUP reference data with around 400 seperate Excel files. Is it possible to do this in a quick way rather than doing it m...