13 Replies Latest reply: Oct 31, 2009 8:27 PM by Nadav
ivaldiz Level 2 Level 2 (470 points)
I installed Windows 7 on bootcamp partition and it's missing two drivers under Device Manager, I insert a snow leopard retail copy to install the drivers and i got an option to CD/dvd sharing and another sharing option for MacBook Air, but there's no option to install windows drivers!.. how can i install windows 7 drivers ?.. my installation disks are OSX 10.5 not 10.6 .. any idea ?!

MacBook Pro 2.26 GHz Intel Core 2 Duo, Mac OS X (10.6.1)
  • PeterHolbrook Level 1 Level 1 (0 points)
    Sorry for posting this here, but I didn't see a way of creating a new topic. My question is related to the feasibility of activating AHCI on Windows while retaining access to the Boot Camp Control Panel. Here's the procedure I've followed:

    After some tests I can report that AHCI awareness is perfectly achieavable on machines with that architecture (for instance, Macs) in which W7 has been installed and activated. The credit of this procedure goes to johnsock, although, for some reason, his script didn't work in my case. This might be due to three reasons. The first one is that the hash of the MBR used by johnsock belongs to an early beta of the W7 MBR; the second one is that the hash belongs to a 32-bit MBR, whereas mine is 64-bit (supposing there's a difference); the third one is that the MBR of an activated machine is different from the one contemplated in johnsock's script.

    Be that as it may, those wishing to explore AHCI awareness in Windows and Linux can do so at their own risk. Be advised that this procedure isn't for the fainthearted, that it involves certain danger of rendering the Windows partition unbootable and that it requires certain expertise in the use of certain programs (regedit, hex editors) and command line entry. Because of the difficulty involved in MBR manipulations from the Windows side, and the certain danger that users of regular PCs might mess up their systems, part of my explanation involves instructions that can only run on a Unix operating system (such as a Mac OS X). I take no responsibility for whatever disaster the following may entail for novice users:

    1. Boot into Windows (not OS X) and browse to the Intel website. Look for the Intel Matrix Storage Drivers for Windows. In my case, the file is called IATA89ENU.exe. Download it and leave it somewhere safe; for instance, your Windows desktop. Don't bother running it; it won't work.
    2. Enter Command-r (Windows-r), type regedit and press Enter. If asked, say you want to run the registry editor as an administrator.
    3. On the left-handside pane, navigate to "HKLM\System\CurrentControlSet\Services\msahci "
    4. On the right-handside, edit the "Start" key and change the value from what it is to 0. This simply tells Windows to look for AHCI on the next reboot. It does nothing if, on the next reboot, the disks are still set to legacy mode.
    5. Close all Windows programs and reboot into Mac OS X.
    6. Open Disk Utility and locate your Windows volume. Click on the device containing that Volume and ascertain its identity (right-click on it). Let's assume that the device is called "disk1"
    7. Open a Terminal window (Applications, Utilities, Terminal).
    8. Enter sudo -s
    9. Darwin will prompt you for the root password. Enter it.
    10. Remembering that any error in typing might be disastrous for you, type the following (remember to change "disk1" by whatever you found in step 6):
    11. dd if=/dev/disk1 of=~/w7.mbr bs=446 count=1
    12. For those of you who want to know, this copies the first 446 bytes of /dev/disk1 (the entire Master Boot Record) to a file ("w7.mbr") in your home folder. This serves two purposes: making it possible to restore the working MBR if something goes wrong and making the hack possible.
    13. Go to your home folder and make a copy (for instance, using the Finder) onto the same folder. Rename the copy to w7AHCI.mbr
    14. Open w7AHCI.mbr with a hex editor. For instance, HexEdit for Mac OS X.
    15. Look for offset 162h. As a precaution, the next few bytes at that address are C3 49 63 76 61 6C and so on.
    16. If you know what you are doing, enter the following bytes in place of existing ones between offsets 162h and 173h: 66 B8 90 FA 00 80 BA F8 0C 66 EF B0 40 BA FC 0C EE C3
    17. The above are the "magic" bytes that will switch the drives back to AHCI mode.
    18. Now from offset 174h to offset 190h enter 00 00 00...
    19. And now we'll shorten the messages near the end of the MBR. From offset 191h to offset 1B7h, enter the following bytes: 42 61 64 20 70 61 72 74 69 74 69 6F 6E 20 74 61 62 6C 65 00 42 61 64 20 4F 53 00 4E 6F 20 4F 53 00 43 4B 4A 91 A5 AC
    20. Save the modifed file and exit the hex editor.
    21. Now for the really risky part. In Disk Utily, click on your Windows volume and, using the toolbar, unmount it! You will see your Windows disk disappears from your OS X desktop.
    22. Go to your Terminal and enter this command (any typo could be fatal; remember that, in place of "disk1", you should type whatever you found in step 6):
    dd if=~/w7AHCI.mbr of=/dev/disk1 bs=446 count=1
    23. If the operation was successful, you will see your Windows disk reappear on your OS X desktop.
    24. Now boot back into Windows. If booting is achieved, chances are you are on the right track. If not, follow the next instructions:

    ------------------------------------------------------------
    If disaster strikes, this is what you have to do:
    1. Once again, boot into Mac OS X.
    2. Open Disk Utility and locate your Windows volume. Click on the device containing that Volume and ascertain its identity (right-click on it). Let's assume that the device is called "disk2" (disk identities can change from boot to boot).
    3. Unmount that volume using Disk Utility. You'll see your Windows disk disappear from your OS X desktop.
    4. Open a Terminal window (Applications, Utilities, Terminal).
    5. Enter sudo -s
    6. Darwin will prompt you for the root password. Enter it.
    7. Enter the following command (remember to replace "disk2" with whatever you found in step 2 above):
    dd if=~/w7.mbr of=/dev/disk2 bs=446 count=1
    8. If the operation was successful, you have successfully restored your original MBR and you will see your Windows disk reappear on your OS X desktop. No harm done.
    ------------------------------------------------------------

    Now, let's suppose you didn't mess up your Windows boot. Let's proceed to step 25:

    25. Windows will detect "new" hardware (your AHCI drive(s)). It will install its own AHCI driver. When that is done, you'll be asked to reboot.
    26. Reboot into Windows. If it detects new stuff, reboot once again.
    27. Now you want to install the Intel AHCI driver. Go to your desktop (or wherever you left the Intel installer) and double-click on IATA89ENU.exe (or whatever the installer is called).
    27. It will install the intel AHCI drivers and ask you to reboot. Reboot into Windows.
    28. "New" hardware will be detected once again and you are asked to reboot. Reboot.
    29. You are done. Your W7 is still activated and you have AHCI up and running.

    HOWEVER, there's a big problem: The Boot Camp Control Panel DOESN'T WORK! You can still control most of its functions using the keyboard, but no control on certain things, like the Startup Disk. It would appear that there's a conflict between the Boot Camp Control Panel (3.0) and the Intel AHCI drivers. Can anyone comment on a possible solution? Can it be fixed by the user? Can it be fixed by Apple (Boot Camp 3.0.1?), or should it be fixed by Intel?
  • ivaldiz Level 2 Level 2 (470 points)
    followed the steps exactly until 14, in step 15 it said i will have to look for offset 162h. As a precaution, the next few bytes at that address are C3 49 63 76 61 6C and so on.
    16. If you know what you are doing, enter the following bytes in place of existing ones between offsets 162h and 173h: 66 B8 90 FA 00 80 BA F8 0C 66 EF B0 40 BA FC 0C EE C3


    I don't see that at all .. i have from offset 0-10-20-30-........-90-100........190-1A0-1B0
  • The hatter Level 9 Level 9 (60,575 points)
    Seems like if you haven't got a Mac Pro you don't need to be concerned. However, my Mac Pro seems to be running Windows 7 the same as my PCs with AHCI

    The way to start a thread is to go to the top of a sub-forum.
  • The hatter Level 9 Level 9 (60,575 points)
    There should be "setup.exe"

    Also, consider copying the folder off the DVD to Windows 7 (while in Win7).

    Navigate to the Apple folder and Drivers. Install as needed.

    The other issue though is that even with 10.6, Apple is not really supporting or supplying Win7 drivers, which is why you need to chose what you want, copy to hard drive, and use either

    Troubleshoot Compatibility (control click) on installers;
    or, change properties on the installer to be compatible and use Vista mode and run as Admin, which best done from hard drive rather than from DVD media.
  • PeterHolbrook Level 1 Level 1 (0 points)
    It doesn't seem you've understood what I meant. In order to avoid misidentification of bytes, I mentioned the byte contents starting at offset 162h. You mention offsets 0-10-20-30, etc. Or do you mean that at offset 162h you have byte 00, then at 163h you have 01 or 10?
  • PeterHolbrook Level 1 Level 1 (0 points)
    I'm surprised that you have AHCI up and running under Windows 7. If you go to Device Manager and open the IDE ATA/ATAPI controllers branch, chances are you'll see the Intel(R) 631xESB/6321ESB/3100 Chipset Serial ATA Storage Controller - 2680. If you can see that, or something similar, you don't have AHCI at all, but plain IDE, and it's the same for my Mac Pro, my son's iMac and my wife's MacBook Pro. There's no AHCI by default on Macs, except for OS X, unless they've changed something on the latest batch of machines.
  • Nadav Level 3 Level 3 (565 points)
    What is the purpose for all this??
  • Nadav Level 3 Level 3 (565 points)
    I really doubt that.. show us proof you have AHCI running on windows..
  • Nadav Level 3 Level 3 (565 points)
    beware the hatter lies!
  • Nadav Level 3 Level 3 (565 points)
    Peter,

    Can you email me privately regarding this? I followed all the steps and yet windows still didn't boot. My email is: nadav343@hotmail.com - Although I don't have any SATA devices in my mac pro other than 4 hard drives, I really would like to enable AHCI. If you can help me, and look at my w7AHCI.MBR file, can you see where I went wrong?

    Thanks a million!!

  • Nadav Level 3 Level 3 (565 points)
    Peter,

    Using HexEdit, here is what line 162 says:

    C3 49 6E 76 61 6C , while yours says: C3 49 63 76 61 6C - WHY does mine say 6E, where it should be 63? Do I even have the correct line???
  • Nadav Level 3 Level 3 (565 points)
    Entered everything and still windows gives me a stop error.. Can I send you my modded w7AHCI file so you can take a look at it??
  • Nadav Level 3 Level 3 (565 points)
    Hello Peter! I got it!!! It works! Now, the only thing I see is the following under device manager settings:

    Intel(r) ESB2 SATA AHCI CONTROLLER. Now what is next?? Does this mean I can now use the internal ODD_SATA ports and windows will NOW recognize them?

    Above the ESB2 SATA AHCI CONTROLLER, it says ATA though.