Jump to content

[HOWTO] Boot Macs with Intel Chipset in AHCI Win7 Vista XP Linux


  • Please log in to reply
403 replies to this topic

#61
bazilato

bazilato

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 104 posts
  • Gender:Male
you fix for letting vista detecting Disk in AHCI Mode saved my life I got rid of all this BSD
and I can now install Intel Matrix Storage driver
Thank you for your info

#62
fridgeymonster3

fridgeymonster3

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
I just wanted to thank johnsock and ludacrisvp for writing all this up on the forumn. I used the newer method, which as ludacrisvp had mentioned to me, was much easier. The autodetect didnt work, but that wasn't a problem. Now I can see and use my Blu-Ray drive that is using the ODD_SATA port.

However, I have one problem. I can play DVDs and CDs through my LG GGC-H20L but when I insert either an HD DVD or a Blu-Ray, Vista says the drive is empty! I'm certain its not the drive itself, as in OS X, the disc comes up as media, I just can't play them. Can anyone help me as to how to remedy this situation and get windows vista to recognize the blu-rays and hd dvds? Thanks!

#63
ludacrisvp

ludacrisvp

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 374 posts
  • Gender:Male
  • Location:USA
The only thing I can think of would be to make sure you have a blu ray format software player.
There is a utility made by power DVD that will make sure your system can play them.
You may want to try another movie as well.
I don't have a bd drive in my pro so I can't be of too much help for you.

#64
Rankrotten

Rankrotten

    InsanelyMac Protégé

  • Members
  • PipPip
  • 52 posts
  • Location:UK
Big thanks to all who put this script together B)

With a bit of trepidation I ran it, the script autodetected my Vista64 drive and I replaced the mbr on the partition. On reboot it automatically installed the AHCI 1.0 Controller and my ODD SATA blu-ray drive popped up in the list! A quick restart and install of the Intel Storage Matrix drivers and here we are : Intel ESB2 SATA AHCI Controller on my '06 Mac Pro.

Top work.

#65
kasimodem

kasimodem

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
Hi all,

Found this tread and it's very interesting, thanks. As I'm about to buy a Mac Pro 2009 model, I'd like to have a few precisions.
The Mac Pro 2009 doesn't have PATA anymore, its superdrive has been replaced by a SATA model and a second connector is ready for a second SATA superdrive.

So questions are :
- Does it mean the superdrives are now connected to the famous SATA ports 4 and 5 ?
- If not, are they connected to two others hidden SATA ports 6 & 7 ?
- Considering we can still install Windows via Bootcamp like in Mac Pro 2008 model, does it means this SATA ports are now recognized by Windows natively at boot sequence and then the manual procedure described here is useless in this 2009 model ?

Thanks for help.

#66
johnsock

johnsock

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

Hi all,

Found this tread and it's very interesting, thanks. As I'm about to buy a Mac Pro 2009 model, I'd like to have a few precisions.
The Mac Pro 2009 doesn't have PATA anymore, its superdrive has been replaced by a SATA model and a second connector is ready for a second SATA superdrive.

So questions are :
- Does it mean the superdrives are now connected to the famous SATA ports 4 and 5 ?
- If not, are they connected to two others hidden SATA ports 6 & 7 ?
- Considering we can still install Windows via Bootcamp like in Mac Pro 2008 model, does it means this SATA ports are now recognized by Windows natively at boot sequence and then the manual procedure described here is useless in this 2009 model ?

Thanks for help.


You are correct about all drives being SATA on the 09 Mac Pro. I'm not sure if there are any extra ports or not, but the standard six ports are all recognized by Windows. There is no need to do any tricks to enable the ports in Windows.
The benefit of the procedure described in this thread for you would be enabling AHCI mode. The 09 Mac Pro still uses legacy mode when booted into Windows (this is due to the EFI-BIOS emulation layer in the firmware) just like the older Mac Pro models. The difference in performance between legacy mode and AHCI mode will depend on the drives you have installed. A single, stock drive may not show much of a change, but faster drives or ones in a RAID array will benefit more. This is primarily due to the fact that native command queuing is only enabled in AHCI mode. I have Vista installed on a WD Velociraptor in my 06 Mac Pro and the difference is noticeable. I also use this patch on my MacBook Pro with an Intel X-25 SSD and the speed increase is huge.
I have also read on some other forums that some people needed AHCI enabled to get satisfactory performance from a Blu-Ray drive, but I can't confirm it personally.
I hope this rambling reply answers some of your questions. Let me know if you need any other info.

#67
kasimodem

kasimodem

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
Thanks for answer. I understand what benefits AHCI mode give.
Considering my Mac Pro 09 will have 0 to 3 SATA ports in a Mac RAID array (probably RAID5 via Apple Raid Card), I think about installing Vista on the SATA port 4, and a BR in port 5.
But if these ports 4 & 5 are natively recognized, does it mean they are also Windows bootable ? (which I remember is a different thing).
Thanks.

#68
johnsock

johnsock

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

Thanks for answer. I understand what benefits AHCI mode give.
Considering my Mac Pro 09 will have 0 to 3 SATA ports in a Mac RAID array (probably RAID5 via Apple Raid Card), I think about installing Vista on the SATA port 4, and a BR in port 5.
But if these ports 4 & 5 are natively recognized, does it mean they are also Windows bootable ? (which I remember is a different thing).
Thanks.


That is a very good question. Unfortunately, I don't know anyone who has tried to boot from port 4 or 5. Everyone I know with an 09 Mac Pro has only optical drives on these ports. You may have to be the guinea pig on this one. If you try it out, please let everyone know what you find out. I hope to upgrade to a new Mac Pro one of these days and it would be useful information to have.

#69
sebhag

sebhag

    InsanelyMac Protégé

  • Members
  • Pip
  • 45 posts
Lot of action in this thread lately - good to see! Thanks johnsock for your contribution, will try the script when i get a chance.

Of course the holy grail would be native EFI boot for Windows (at least Vista and 7 x64) so we wouldn't have to deal with the limitations of the bios emulation.

I don't know about everybody else but my Windows boot times are terrible. I haven't actually timed it, but i guess after rEFIt, bios emulation, various scsi/sas bios roms and eventually grub it must take up to 2 minutes on my setup, maybe longer. Windows itself boots fast, but all the other stuff is really annoying when you see how long it takes to get to your OSX desktop.

The modified mbr is great news and will definitely help, but i'm surprised nobody has figured out a way to boot Windows with EFI yet, although there seems some sort of progress with Ubuntu: https://help.ubuntu....EFI-Boot-Mactel

Anybody here tried with grub efi?

Also, does the mbr script work with Windows partitions as well or do i need to install on a seperate drive? Currently i've got OSX, XP32 and Vista64 all on one disk with MBR only (to avoid GPT hybrid) - OSX won't actually install on MBR but you can use Carbon Copy. Would the script still work?

Thanks!

#70
johnsock

johnsock

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts
I'm glad so many people are trying out this script. I want to reiterate that the Windows drive detection is broken, but the script still works as described. You will most likely have to specify the actual drive that your Windows partition is on. I apologize for not getting that fixed, but I promise I'll get to it once I get to a good stopping place on the other project I'm working on (native OS X conversion of DTS to AC3 in a Matroska file) and get a day off from my regular job.

Lot of action in this thread lately - good to see! Thanks johnsock for your contribution, will try the script when i get a chance.

Of course the holy grail would be native EFI boot for Windows (at least Vista and 7 x64) so we wouldn't have to deal with the limitations of the bios emulation.

I don't know about everybody else but my Windows boot times are terrible. I haven't actually timed it, but i guess after rEFIt, bios emulation, various scsi/sas bios roms and eventually grub it must take up to 2 minutes on my setup, maybe longer. Windows itself boots fast, but all the other stuff is really annoying when you see how long it takes to get to your OSX desktop.

The modified mbr is great news and will definitely help, but i'm surprised nobody has figured out a way to boot Windows with EFI yet, although there seems some sort of progress with Ubuntu: https://help.ubuntu....EFI-Boot-Mactel

Anybody here tried with grub efi?

Also, does the mbr script work with Windows partitions as well or do i need to install on a seperate drive? Currently i've got OSX, XP32 and Vista64 all on one disk with MBR only (to avoid GPT hybrid) - OSX won't actually install on MBR but you can use Carbon Copy. Would the script still work?

Thanks!


sebhag:

I haven't tried the script out on a drive with multiple Windows partitions or on one that is not a hybrid format, but I don't see any technical reason why it would not work. The code modified by the script resides on the first sector of the drive and is the same for a standard Windows MBR format and for a hybrid GPT. It is run from the "BIOS" when running Windows and ignored by the EFI boot sequence when booting OS X. Let us know how it works if you try it out.

#71
sebhag

sebhag

    InsanelyMac Protégé

  • Members
  • Pip
  • 45 posts

Let us know how it works if you try it out.


Took some time and few re-installs/repairs but got there eventually... originally i used grub to hide Vista and XP from each other, but that seems to screw things up a little with the mbr script so once both partitions were visible it worked.

disk0s1 -> Leopard
disk0s2 -> old grub partition (unused)
disk0s3 -> Vista64
disk0s4 -> XP

Partition map is mbr only, but i might try native EFI boot with Ubuntu from a separate GPT drive and see if that gets me anywhere.

Thanks Ludacrisvp and johnsock for sharing!

#72
Infrared

Infrared

    InsanelyMac Protégé

  • Members
  • Pip
  • 6 posts
Nice work, johnsock.

I wonder if a similar approach could be used to enable VT-x.

After a cold-boot into Windows, VT-x is not enabled. Consequently Hyper-V
does not work on Server 2008. The usual advice is to enable VT-x in the BIOS
menu, but there is no BIOS menu for the Mac Pros[1]. Fortunately, VT-x is left
unlocked. This means it would be possible to enable VT-x and then lock it.

http://www.linux-kvm...ro_(Early_2008)

My suspicion is that this has to be done at an early stage for Hyper-V to work,
and perhaps it could be done in the boot sector code. The approach would be
to flip two bits of model specific register 0x3A (as I understand it - and I do not
understand much).

1: We're absolutely one hundred thousand percent sure there is no CSM BIOS
menu, are we? No special key combinations to get at it? Anyone tried F2 on a
non-Apple keyboard?.

#73
johnsock

johnsock

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts
I got a request to post the source code for the changes made to the MBR that enable ACHI mode. Here is a listing of what I did:

MOV EAX,8000FA90
MOV DX,0CF8
OUT DX,EAX
MOV AL,40
MOV DX,0CFC
OUT DX,AL
RET

Configuring registers for a device on the PCI bus involves two port writes, one to specify the desired register and the next to specify the data to be written to that register. The output ports 0CF8 and 0CFC designate the PCI configuration register and data for that register respectively. 8000FA90 specifies the AHCI mode configuration register and 40 enables ACHI mode.
As stated in an earlier post, I got this code by examining the GRUB bootloader source that was linked to in the original post in this thread. I just had the idea to do the exact same thing in the MBR so as to not rely on an additional bootloader. I verified the code with the applicable Intel chipset documentation and PCI specification so I understood what was going on and then found a place to insert it.
All my script does is read in the unmodified MBR, shrink some error strings to make extra room avaliable without changing the meaning of the error messages and then places the AHCI enabling code at the end of the executable MBR code. This is done by writing the bytes of above code to the MBR starting with the final RET instruction (C3). When the MBR is loaded, it's usual code executes as normal, but it does not RETurn until after the AHCI code is executed.
If you examine the script I posted, you will find the string of bytes that represent the above code. There are probably more efficient ways of writing the script, but it was done in haste on one of my few days off from my regular job :unsure:

If anyone would like additional information or has suggestions to improve it, please let me know.

#74
miketan63

miketan63

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts
Hi ludacrisvp, Thanks for a great motivation for the proper AHCI drivers. Plan to install AHCI on MacBook4,1 - 10.5.7, White (early 2008) 4gb ram on Boot Camp XP Home Edition (SP3).
Current driver : Intel® ICH8M 3 port Serial ATA Storage Controller
- 2828. Kindly advise if any difference towards this model ? thanks , mike

Posted Image

#75
tgulli

tgulli

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 4 posts

Hi ludacrisvp, Thanks for a great motivation for the proper AHCI drivers. Plan to install AHCI on MacBook4,1 - 10.5.7, White (early 2008) 4gb ram on Boot Camp XP Home Edition (SP3).
Current driver : Intel ICH8M 3 port Serial ATA Storage Controller
- 2828. Kindly advise if any difference towards this model ? thanks , mike

Posted Image


I went to try this on a iMAC witht he same chipset... for some reason it would not pick up the OS and replied with an Unknown OS. I dd it anyways just for kicks since there is a backup and it just boots to black :P

I dont know if this is due to the setup I have or not though...

#76
miketan63

miketan63

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts
Hi johnsock,

Unsuccessfully install AHCI - 3 Times. MacBook4,1 - 10.5.7, (White early 2008) 4gb ram on Boot Camp XP Home Edition (SP3).

Current driver :
Intel ICH8M 3 port Serial ATA Storage Controller - 2828.
Intel® ICH8M Ultra ATA Storage Controllers - 2850

Single HDD : disk0s3 - XP
Single ODD : disk1 - Mat{censored}a CD-RW CW8221

Kindly advise as unable to install AHCI for 13 months already.

Thanks , mike

#77
johnsock

johnsock

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

I went to try this on a iMAC witht he same chipset... for some reason it would not pick up the OS and replied with an Unknown OS. I dd it anyways just for kicks since there is a backup and it just boots to black :rolleyes:

I dont know if this is due to the setup I have or not though...

Did you get the "Unknown OS" response from my script or when rebooting?


Hi johnsock,

Unsuccessfully install AHCI - 3 Times. MacBook4,1 - 10.5.7, (White early 2008) 4gb ram on Boot Camp XP Home Edition (SP3).

Current driver :
Intel ICH8M 3 port Serial ATA Storage Controller - 2828.
Intel ICH8M Ultra ATA Storage Controllers - 2850

Single HDD : disk0s3 - XP
Single ODD : disk1 - Mat{censored}a CD-RW CW8221

Kindly advise as unable to install AHCI for 13 months already.

Thanks , mike

Mike,

Were you using my script for enabling AHCI in the MBR? If so, did you get any errors when running it? Please provide some more details regarding what you have tried during the install and I'll try to help.

#78
tgulli

tgulli

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 4 posts

Did you get the "Unknown OS" response from my script or when rebooting?


It was from the actual script. When I went ahead and tried it anyways it would allow me to still choose boot drive as per normal but then went to a black screen and nothing from that point.

Also, the chipsets Mike and I have are the same ones, not sure if that plays into anything.

EDIT*

I also have the backup MBR file, although I dont know if that will help but can provide it if it helps?

#79
miketan63

miketan63

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts
Hi johnsock,

Thank you for replying. My hope for installing AHCI have risen.

Yes, I was using your script. No errors except reading was erratic,
disk0 or disk1. Manually type /dev/disk0.

ODD drive - no need to install AHCI as Leopard indicated as ATA.
Tried installing on XP - no BSOD but ODD could not shown up.
Roll back driver - OK now.

Need to install on HDD - disk0s3 on disk utility. BSOD everytime
with ahci.sh. F8 , Last Known Good Configuration , Restore XP
from backup , Reinstall XP from OSX & then restore XP from backup
3 Times already. Forget to fixmbr, fdisk. MacBook now up & will try
again with your guidance. Need to upgrade to SSD so my programs
could run.

Install disk XP slipstream AHCI already.

[Strings]
DiskName = "Intel Matrix Storage Manager Driver"

PCI\VEN_8086&DEV_2821&CC_0106.DeviceDesc = "Intel® ICH8R/DH/DO SATA AHCI Controller"
PCI\VEN_8086&DEV_2829&CC_0106.DeviceDesc = "Intel® ICH8M-E/M SATA AHCI Controller"

My current driver is Intel ICH8M 3 port Serial ATA Storage Controller - 2828.

Intel latest f6flpy3288 is - 2829 . Need any reedit for f6flpy3288 ?

Current HDD - Fujitsu MHY2120BH - 120GB - 5400rpm.

Any chance of installing AHCI first before swapping to SSD ?

johnsock please help me , you are my only hope . Thanks , mike

Attached Files



#80
johnsock

johnsock

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

It was from the actual script. When I went ahead and tried it anyways it would allow me to still choose boot drive as per normal but then went to a black screen and nothing from that point.

Also, the chipsets Mike and I have are the same ones, not sure if that plays into anything.

EDIT*

I also have the backup MBR file, although I dont know if that will help but can provide it if it helps?


Please send me the backup of your original MBR so I can take a look at it. Do you now or have you ever had any other bootloaders installed on that drive?


Hi johnsock,

Thank you for replying. My hope for installing AHCI have risen.

Yes, I was using your script. No errors except reading was erratic,
disk0 or disk1. Manually type /dev/disk0.

ODD drive - no need to install AHCI as Leopard indicated as ATA.
Tried installing on XP - no BSOD but ODD could not shown up.
Roll back driver - OK now.

Need to install on HDD - disk0s3 on disk utility. BSOD everytime
with ahci.sh. F8 , Last Known Good Configuration , Restore XP
from backup , Reinstall XP from OSX & then restore XP from backup
3 Times already. Forget to fixmbr, fdisk. MacBook now up & will try
again with your guidance. Need to upgrade to SSD so my programs
could run.

Install disk XP slipstream AHCI already.

[Strings]
DiskName = "Intel Matrix Storage Manager Driver"

PCI\VEN_8086&DEV_2821&CC_0106.DeviceDesc = "Intel ICH8R/DH/DO SATA AHCI Controller"
PCI\VEN_8086&DEV_2829&CC_0106.DeviceDesc = "Intel ICH8M-E/M SATA AHCI Controller"

My current driver is Intel ICH8M 3 port Serial ATA Storage Controller - 2828.

Intel latest f6flpy3288 is - 2829 . Need any reedit for f6flpy3288 ?

Current HDD - Fujitsu MHY2120BH - 120GB - 5400rpm.

Any chance of installing AHCI first before swapping to SSD ?

johnsock please help me , you are my only hope . Thanks , mike


Mike,

If the driver being detected is the 2828 variety, the controller in still in legacy mode, not AHCI. When slipstreaming, the Intel driver appears to be installed, but it has already configured itself for legacy mode. In order to get AHCI working you have to force the driver to re-detect the controller and drives and then reboot. Before allowing Windows to load, you must then run the AHCI script. After that, Windows will re-detect the SATA devices correctly in AHCI mode.
Forcing this re-detection is outlined in the original post for this thread by ludacrisvp. The registry change that does this is for the Microsoft AHCI driver, not the Intel one, though. You may have to forgo slipstreaming your driver and do it manually in accordance with ludacrisvp's instructions. You can then install the Intel driver for full support.
There may be a way to toggle a re-detection with the Intel driver, but I'm not sure how you would go about it. I'll look into it further to see if I can come up with something.
Also, the disk0/disk1 detection problem is known and I haven't had time to fix it yet. It only happens when there are multiple drives in the system. Typing in your actual Windows drive will always work, though, assuming it has a recognizable MBR on it.





2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy