Jump to content
chatdeau

HP Z400/Z600/Z800 Workstations OS X 10.10.x/10.11.x Installation

1,499 posts in this topic

Recommended Posts

The 2 non-working ports are in the back. There are 3 pairs and these are the ones in the middle if looking at the back. Anyhow, last night I downloaded both iasl and maciacl. I have extraced both the dsdt and ssdt using clover and disassembled them with iasl. Since I don't know how to patch them, I am leaving them as is.

 

So, say I take this dsdt as is and plunk it into clover. Then what? Do i delete all of those fixes in the config.plist? Does having this file in clover make my machine run better or smoother?

I am assuming that you know where to put a Dsdt file which is efi/clover/acpi/patched. Just try it without changing anything else. Have you uploaded your current config.plist? Could you not install windows on another drive, and then see if all the USB ports are working or not. I do not mean Dual OS X and Windows. Disconnect the OS X drive. Install Windows on another drive .Any version of Windows will do.

Share this post


Link to post
Share on other sites
Advertisement

I am assuming that you know where to put a Dsdt file which is efi/clover/acpi/patched. Just try it without changing anything else. Have you uploaded your current config.plist? Could you not install windows on another drive, and then see if all the USB ports are working or not. I do not mean Dual OS X and Windows. Disconnect the OS X drive. Install Windows on another drive .Any version of Windows will do.

 

Good advice on testing USB hardware with Windows, probably even simpler to go with an Ubuntu live disk.

Share this post


Link to post
Share on other sites

On a separate note. I have come to a resolution of sorts with my Z400 issues.

 

I will quickly outline my experience so that someone else might avoid my turmoils, lol !

 

First, there appear to be (at least) TWO distinct versions of DSDTs on these systems floating around out there.

 

DSDT Version 1, example from users bisk and arkieboy72472 ...

 

deals with HPET like so:

 

OperationRegion (VECT, SystemMemory, 0x000F8000, 0x0100)
    Field (VECT, AnyAcc, NoLock, Preserve)
    {
        Offset (0x04),
        NPCI,   32,
        SR4G,   32,
        Offset (0x20),
        HPTB,   32,
        Offset (0x36),
        ABIO,   32,
        APAD,   32,
        APLN,   32,
        MBBA,   32,
        RCBA,   32,
        PEXB,   32,
        PEXS,   32,
        S3SV,   8,
        STMS,   8,
        WMPI,   8,
        PTRP,   8,
        WMBH,   8,
        WM10,   8,
        UPEC,   8,
        TPMP,   8,
        MORB,   8,
        Offset (0x5C),
        RSTT,   8,
        ESLB,   8,
        EV3F,   8
    }

 

Device (HPET)
    {
            Name (_HID, EisaId ("PNP0103"))
            Name (_UID, 0x01)
            Name (CRES, ResourceTemplate ()
            {
                Memory32Fixed (ReadWrite,
                    0x00000000,         // Address Base
                    0x00000000,         // Address Length
                    _Y26)
            })
            Method (_CRS, 0, NotSerialized)
            {
                CreateDWordField (CRES, \_SB.PCI0.LPC.HPET._Y26._BAS, BASE)
                CreateDWordField (CRES, \_SB.PCI0.LPC.HPET._Y26._LEN, LNTH)
                Store (HPTB, BASE)
                Store (0x0400, LNTH)
                Return (CRES)
            }

            Method (_STA, 0, NotSerialized)
            {
                Return (0x0F)
            }
    }

 

-----

 

That is unmodded code above.

 

Turns out that the fix is very simple ...

 

Device (HPET)
    {
            Name (_HID, EisaId ("PNP0103"))
            Name (_UID, 0x01)
            Name (CRES, ResourceTemplate ()
            {
               IRQNoFlags ()
                    {0}
               IRQNoFlags ()
                    {8}
               IRQNoFlags ()
                    {11}
                IRQNoFlags ()
                    {15}
                Memory32Fixed (ReadWrite,
                    0x00000000,         // Address Base
                    0x00000000,         // Address Length
                    _Y26)
            })
            Method (_CRS, 0, NotSerialized)
            {
                CreateDWordField (CRES, \_SB.PCI0.LPCB.HPET._Y26._BAS, BASE)
                CreateDWordField (CRES, \_SB.PCI0.LPCB.HPET._Y26._LEN, LNTH)
                Store (HPTB, BASE)
                Store (0x0400, LNTH)
                Return (CRES)
            }

            Method (_STA, 0, NotSerialized)
            {
                Return (0x0F)
            }
        }

 

My issue was because I only added the first 2 interrupts and not all 4.

Adding only IRQs 0 and 8 was almost always good enough in the past.

Only rare exception was sometimes an IRQ conflict with the FireWire controller would create the need for 4 w/diff values.

NOT with this Z400 tho, it's GOTTA be 4 IRQs or death by KP @ boot time ! YIKES :(

I got all tied up with the fact that the base address was NULL rather than the usual 0xFED00000.

Turns out this has nothing to do with it, go figure.

 

-----

 

Version 2, example user is jaymack ...

 

OperationRegion (VECT, SystemMemory, 0x000F8000, 0x0100)
    Field (VECT, AnyAcc, NoLock, Preserve)
    {
        Offset (0x04),
        NPCI,   32,
        SR4G,   32,
        Offset (0x20),
        HPAS,   32,
        HPAE,   1,
        Offset (0x36),
        ABIO,   32,
        APAD,   32,
        APLN,   32,
        MBBA,   32,
        RCBA,   32,
        PEXB,   32,
        PEXS,   32,
        S3SV,   8,
        STMS,   8,
        WMPI,   8,
        PTRP,   8,
        WMBH,   8,
        WM10,   8,
        UPEC,   8,
        TPMP,   8,
        MORB,   8,
        Offset (0x5C),
        RSTT,   8,
        ESLB,   8,
        EV3F,   8
    }

 

Device (HPET)
        {
            Name (_HID, EisaId ("PNP0103"))
            Name (_UID, One)
            Name (BUF0, ResourceTemplate ()
            {
                IRQNoFlags ()
                    {0}
                IRQNoFlags ()
                    {8}
                Memory32Fixed (ReadWrite,
                    0xFED00000,         // Address Base
                    0x00100000,         // Address Length
                    _Y17)
            })
            Method (_CRS, 0, NotSerialized)
            {
                CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y17._BAS, BASE)
                CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y17._LEN, LNTH)
                Store (HPAS, BASE)
                Store (0x0400, LNTH)
                Return (BUF0)
            }

            Method (_STA, 0, NotSerialized)
            {
                If (LGreaterEqual (OSYS, 0x07D1))
                {
                    If (HPAE)
                    {
                        Return (0x0F)
                    }
                }
                Else
                {
                    If (HPAE)
                    {
                        Return (0x0B)
                    }
                }

                If (HPAE)
                {
                    CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y17._BAS, HPT0)
                    If (LEqual (HPAS, One))
                    {
                        Store (0xFED10000, HPT0)
                    }

                    If (LEqual (HPAS, 0x02))
                    {
                        Store (0xFED20000, HPT0)
                    }

                    If (LEqual (HPAS, 0x03))
                    {
                        Store (0xFED30000, HPT0)
                    }
                }

                Return (BUF0)
            }
        }

 

-----

 

My Z400 won't generate this V2 code so I do not know for sure what unmodded version looks like.

Presumably, there were no IRQs in the HPET device description block and that OSYS stuff might be new.

 

Well, before I figured out that I needed 4 IRQs in my version,  I converted mine with the Version 2 HPET DSDT code above. The result was that I could boot but the side effects were that AppleHPET.kext did NOT attach and I got the "invalid HPET registers" error.

Also, I WAS able to run with an unpatched AppleIntelCPUManagement.kext so long as NullCPUPowerManagement.kext was loaded. As soon as I dropped NullCPUPowerManagement, AICPUPM caused KP within a minute or so after boot up. This did not look like a wrmsr write lock KP to me cuz I never made it out of a boot sequence with a write lock before, but, apparently, it is.

 

Now, having returned back to my native Version 1 HPET code WITH 4 IRQs mod, I will KP DURING boot with unpatched AICPUPM if I drop NULLCPUPM. Classic wrmsr write lock behavior. With the patched AICPUPM, I can drop NULLCPUPM or not and all is well. If NULLCPUPM s dropped, AppleIntelCPUPowerManagementClient.kext loads so this must be what ultimately calls the wrmsr writes on AICPUPM. I was blaming AppleHPET.kext.

 

Finally, if I drop NullCPUPM, SpeedStep fails. I will run at a max of 3.2GHz until I sleep and after wake will only run at 1.6GHz.

This is the case with my own SSDT or Clover generated tables and with either V1 or V2 HPET mods.

 

With NullCPUPowerManagement loaded, I get 1.6GHz, 3.06GHz and 3.2GHz from my W3550 (3.067GHz) XEON.

 

So after all of this ... still better off with NullCPUPM, lol !

 

Sleep works either way.

 

Perhaps changing from a MacPro,5.1 to an iMac,13.2 as jaymack did will get SpeedStep working with AICPUPMClient loaded.

 

Just wanted to get this all down while it was fresh.

 

Anyway, hope this is helpful.

 

I'm out :)

Share this post


Link to post
Share on other sites

On a separate note. I have come to a resolution of sorts with my Z400 issues.

 

I will quickly outline my experience so that someone else might avoid my turmoils, lol !

 

First, there appear to be (at least) TWO distinct versions of DSDTs on these systems floating around out there.

 

DSDT Version 1, example is bisk and arkieboy72472 ...

 

deals with HPET like so:

 

OperationRegion (VECT, SystemMemory, 0x000F8000, 0x0100)

    Field (VECT, AnyAcc, NoLock, Preserve)

    {

        Offset (0x04),

        NPCI,   32,

        SR4G,   32,

        Offset (0x20),

        HPTB,   32,

        Offset (0x36),

        ABIO,   32,

        APAD,   32,

        APLN,   32,

        MBBA,   32,

        RCBA,   32,

        PEXB,   32,

        PEXS,   32,

        S3SV,   8,

        STMS,   8,

        WMPI,   8,

        PTRP,   8,

        WMBH,   8,

        WM10,   8,

        UPEC,   8,

        TPMP,   8,

        MORB,   8,

        Offset (0x5C),

        RSTT,   8,

        ESLB,   8,

        EV3F,   8

    }

 

Device (HPET)

    {

            Name (_HID, EisaId ("PNP0103"))

            Name (_UID, 0x01)

            Name (CRES, ResourceTemplate ()

            {

                Memory32Fixed (ReadWrite,

                    0x00000000,         // Address Base

                    0x00000000,         // Address Length

                    _Y26)

            })

            Method (_CRS, 0, NotSerialized)

            {

                CreateDWordField (CRES, \_SB.PCI0.LPC.HPET._Y26._BAS, BASE)

                CreateDWordField (CRES, \_SB.PCI0.LPC.HPET._Y26._LEN, LNTH)

                Store (HPTB, BASE)

                Store (0x0400, LNTH)

                Return (CRES)

            }

 

            Method (_STA, 0, NotSerialized)

            {

                Return (0x0F)

            }

    }

 

-----

 

That is unmodded code above.

 

The fix is very simple ...

 

Device (HPET)

    {

            Name (_HID, EisaId ("PNP0103"))

            Name (_UID, 0x01)

            Name (CRES, ResourceTemplate ()

            {

               IRQNoFlags ()

                    {0}

               IRQNoFlags ()

                    {8}

               IRQNoFlags ()

                    {11}

                IRQNoFlags ()

                    {15}

                Memory32Fixed (ReadWrite,

                    0x00000000,         // Address Base

                    0x00000000,         // Address Length

                    _Y26)

            })

            Method (_CRS, 0, NotSerialized)

            {

                CreateDWordField (CRES, \_SB.PCI0.LPCB.HPET._Y26._BAS, BASE)

                CreateDWordField (CRES, \_SB.PCI0.LPCB.HPET._Y26._LEN, LNTH)

                Store (HPTB, BASE)

                Store (0x0400, LNTH)

                Return (CRES)

            }

 

            Method (_STA, 0, NotSerialized)

            {

                Return (0x0F)

            }

        }

 

My issue was because I only added the first 2 interrupts not all 4.

Adding only IRQs 0 and 8 was almost always good enough in the past.

Only rare exception was sometimes a conflict with the FireWire controller.

NOT with this Z400 tho, it's GOTTA be 4 or death ! My bad :(

I got all tied up with fact that the base address was NULL rather than the usual 0xFED00000.

Turns out this has nothing to do with it, go figure.

 

-----

 

Version 2, example is jaymack ...

 

OperationRegion (VECT, SystemMemory, 0x000F8000, 0x0100)

    Field (VECT, AnyAcc, NoLock, Preserve)

    {

        Offset (0x04),

        NPCI,   32,

        SR4G,   32,

        Offset (0x20),

        HPAS,   32,

        HPAE,   1,

        Offset (0x36),

        ABIO,   32,

        APAD,   32,

        APLN,   32,

        MBBA,   32,

        RCBA,   32,

        PEXB,   32,

        PEXS,   32,

        S3SV,   8,

        STMS,   8,

        WMPI,   8,

        PTRP,   8,

        WMBH,   8,

        WM10,   8,

        UPEC,   8,

        TPMP,   8,

        MORB,   8,

        Offset (0x5C),

        RSTT,   8,

        ESLB,   8,

        EV3F,   8

    }

 

Device (HPET)

        {

            Name (_HID, EisaId ("PNP0103"))

            Name (_UID, One)

            Name (BUF0, ResourceTemplate ()

            {

                IRQNoFlags ()

                    {0}

                IRQNoFlags ()

                    {8}

                Memory32Fixed (ReadWrite,

                    0xFED00000,         // Address Base

                    0x00100000,         // Address Length

                    _Y17)

            })

            Method (_CRS, 0, NotSerialized)

            {

                CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y17._BAS, BASE)

                CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y17._LEN, LNTH)

                Store (HPAS, BASE)

                Store (0x0400, LNTH)

                Return (BUF0)

            }

 

            Method (_STA, 0, NotSerialized)

            {

                If (LGreaterEqual (OSYS, 0x07D1))

                {

                    If (HPAE)

                    {

                        Return (0x0F)

                    }

                }

                Else

                {

                    If (HPAE)

                    {

                        Return (0x0B)

                    }

                }

 

                If (HPAE)

                {

                    CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y17._BAS, HPT0)

                    If (LEqual (HPAS, One))

                    {

                        Store (0xFED10000, HPT0)

                    }

 

                    If (LEqual (HPAS, 0x02))

                    {

                        Store (0xFED20000, HPT0)

                    }

 

                    If (LEqual (HPAS, 0x03))

                    {

                        Store (0xFED30000, HPT0)

                    }

                }

 

                Return (BUF0)

            }

        }

 

-----

 

My Z400 won't generate this V2 code so I do not know for sure what unmodded version looks like.

Presumably, there were no IRQs in the HPET device description block and that OSYS stuff might be new.

 

Well, before I figured out that I needed 4 IRQs in my version,  I converted mine with the Version 2 HPET DSDT code above.

The result was that I could boot but the side effects were that AppleHPET.kext did NOT attach and I got the "invalid HPET registers"error.

Also, I was able to run with an unpatched AppleIntelCPUManagement.kext so long as NullCPUPowerManagement.kext was loaded.

As soon as I dropped NullCPUPowerManagement, AICPUPM caused KP within a minute or so after boot up.

This did not look like a wrmsr write lock KP to me cuz I never made it out of a boot sequence with a write lock before, but, apparently, it is.

 

Now, having returned back to my native Version 1 HPET code WITH 4 IRQs mod I will KP DURING boot with unpatched AICPUPM if I drop NULLCPUPM. Classic wrmsr write lock behavior. With the patched AICPUPM, I can drop NULLCPUPM or not and all is well. If NULLCPUPM s dropped, AppleIntelCPUPowerManagementClient.kext loads so this must be what ultimately calls the wrmsr writes on AICPUPM. I was blaming AppleHPET.kext.

 

Finally, if I drop NullCPUPM, SpeedStep fails. I will run at a max of 3.2GHz until I sleep and after wake will only run at 1.6GHz.

This is the case with my own SSDT or Clover generated tables and with either V1 or V2 HPET mods.

 

With NullCPUPowerManagement loaded, I get 1.6GHz, 3.06GHz and 3.2GHz from my W3550 (3.067GHz) XEON.

 

So after all of this ... still better off with NullCPUPM, lol !

 

Sleep works either way.

 

Perhaps changing from a MacPro,5.1 to an iMac,13.2 as jaymack did will get SpeedStep working with AICPUPMClient loaded.

 

Just wanted to get this all down while it was fresh.

 

Anyway, hope this is helpful.

 

I'm out :)

How long ago did you download my DSDT? Are you placing AppleIntelCpuPowerManagement Kext in the sS/L/E Folder?

Share this post


Link to post
Share on other sites

I am not allowed to attach files, but i have the default dsdt and ssdt (both assembled and disassembled) on standby. Again, my sole issue that I am aware of is having to unplug and replug USB ports every boot. My config.plist is a hot mess and I would like to trim it down, but I am not sure what to do and what not to do. College is about to start soon so this may go on the back burner.

 

Here is a link to everything on my PC: https://drive.google.com/drive/folders/0B-UrVIRxbpPUa3ZCR3hhNFFFSWs?usp=sharing

Share this post


Link to post
Share on other sites

How long ago did you download my DSDT? Are you placing AppleIntelCpuPowerManagement Kext in the sS/L/E Folder?

 

I first downloaded it about 1 week ago when I began converting my Z400. My DSDT would not boot so I started with yours and gradually removed what was different in yours, converting it to agree more and more with mine until all that was different was the HPET portion.

 

I might be wrong but you seem to have some added code that is not really doing anything in your DSDT.

 

That added Pini() method meant to do a Windows init for Darwin and set the OSYS var is not even being referenced so far as I can tell.

 

Your HPET device seems to depend on the value of OSYS but I actually deleted the Pini() method in my version of your DSDT and saw no difference in the booted result.

 

Yep, replaced AICPUPM in /S/L/E.

 

Does your SpeedStep work without NullCPUPM loaded, if defined as MacPro5.1 ... iMac13,2 ?

I am not allowed to attach files, but i have the default dsdt and ssdt (both assembled and disassembled) on standby. Again, my sole issue that I am aware of is having to unplug and replug USB ports every boot. My config.plist is a hot mess and I would like to trim it down, but I am not sure what to do and what not to do. College is about to start soon so this may go on the back burner.

 

Here is a link to everything on my PC: https://drive.google.com/drive/folders/0B-UrVIRxbpPUa3ZCR3hhNFFFSWs?usp=sharing

 

Arkie, just download an Ubuntu live disk image, burn a CD, boot from it and see if your USB ports all work. No install needed, EZ !

 

Doubtful that anything in your clover config is stopping 2 of your 6 rear USB2 ports from working.

 

Just for fun, see what removing USBInjectAll.kext does.

 

Good luck.

Share this post


Link to post
Share on other sites

AppleIntelCpuPowerManagement Kext needs to be patched if you remove nullcpu. My speedstepping works with 13.2

 

http://www.insanelymac.com/forum/files/file/132-aicpmpatch/

 

Yep jaymack, I did that patch as you had pointed out to me before. I am actually very familiar with the write lock issue. We used SpeedStepper (flAked) for that back in the SnowLeo/Lion days. Nice to see that someone has kept that fine work going.  What threw me off about this write lock was that, in the past, the write lock would cause a KP in AICPUPM late in the boot cycle whether NullCPUPM was loaded or not ! Plus, I have never experienced this with a desktop before, only with some laptops and generally with newer BIOSes.  Leave it to HP ;)

 

Sometime more experience causes more problems, lol !

 

I don't like the idea of identifying my 2010 Core2Quad system as a Late 2012 Ivy Bridge Core i5 even if it does trick the Apple "Legacy" PlatformPlugin into hobblin' through.

I think that you might cause yourself some problems in other aspects of your system. Tho' I do remember needing to misrep some AMD systems to get them to go in the past.

But then, those don't really fit in anywhere so all bets are off anyway :)

 

Gonna keep trying to get the MacPro5,1 model working.

 

Maybe the old ACPI_SMC_PlatformPlugin hack from the Lion/Mountain Lion days needs to be revisited.

 

Does the ACPI_SMC_PlatformPlugin.kext still exist in Mac OS 10.9/10/11/12 ?

Initial research seems to indicate that ACPI_SMC_PlatformPlugin has changed a bunch ... no more individual model designations that I can find, darn !

 

Is anybody out there running their Z400/600/800 as a MacPro5,1 WITHOUT NullCPUPowerManagement.kext loaded AND seeing SpeedStep in effect ?

 

Thanks in advance !

Share this post


Link to post
Share on other sites

Yep jaymack, I did that patch as you had pointed out to me before. I am actually very familiar with the write lock issue. We used SpeedStepper (flAked) for that back in the SnowLeo/Lion days. Nice to see that someone has kept that fine work going.  What threw me off about this write lock was that, in the past, the write lock would cause a KP in AICPUPM late in the boot cycle whether NullCPUPM was loaded or not ! Plus, I have never experienced this with a desktop before, only with some laptops and generally with newer BIOSes.  Leave it to HP ;)

 

Sometime more experience causes more problems, lol !

 

I don't like the idea of identifying my 2010 Core2Quad system as a Late 2012 Ivy Bridge Core i5 even if it does trick the Apple "Legacy" PlatformPlugin into hobblin' through.

I think that you might cause yourself some problems in other aspects of your system. Tho' I do remember needing to misrep some AMD systems to get them to go in the past.

But then, those don't really fit in anywhere so all bets are off anyway :)

 

Gonna keep trying to get the MacPro5,1 model working.

 

Maybe the old ACPI_SMC_PlatformPlugin hack from the Lion/Mountain Lion days needs to be revisited.

 

Does the ACPI_SMC_PlatformPlugin.kext still exist in Mac OS 10.9/10/11/12 ?

Initial research seems to indicate that ACPI_SMC_PlatformPlugin has changed a bunch ... no more individual model designations that I can find, darn !

 

Is anybody out there running their Z400/600/800 as a MacPro5,1 WITHOUT NullCPUPowerManagement.kext loaded AND seeing SpeedStep in effect ?

 

Thanks in advance !

How are you able to select Mac Pro 5,1? In my version of Clover that is not a choice. No Mac Pro is listed. What version of Clover are you using currently?

Share this post


Link to post
Share on other sites

Clover is 4114 I believe.

post-1797982-0-39087300-1501812377_thumb.png

Share this post


Link to post
Share on other sites

How are you able to select Mac Pro 5,1? In my version of Clover that is not a choice. No Mac Pro is listed. What version of Clover are you using currently?

 

I don't have choices to select from. I don't use a tool to edit my configuration. I go online, research, collect the info that I like and then hand enter into my config.plist file.

 

Also, I use no Clover patches or fixes , simply mod my DSDT file.  I have trust issues ;)

 

I have found that some of the patches don't quite work and documentation is a bit lacking, lol !

 

For instance, did you even realize that "AsusAICPUPM" under "KernelAndKextPatches" is supposed to patch AppleintelCPUPowerMangement "on the fly" ?

 

Well, don't worry, it doesn't :( At least not for 10.11.6. Maybe the Clover that I am running is too old ?

Is there a place where they even tell you which version of Clover is up to date with which version of Mac OS X ?

 

I wonder ...

 

Slack docs is quite understandable for a free tool. It's the best thing for the job that we've got, so no complaints from me.

 

I am running Clover_v2.3k_r3998 on this Z400.

 

Arkie posted what looked like a legit set of MacPro5,1 SMBIOS settings earlier within his massive barrage of luggage ;)

 

Maybe I'll try his since mine is just a tad shy of perfect. I do come up as a Mid 2010 Mac Pro, however.

 

These are my relevant SMBIOS settings (BIOS Release Date and Version are partially contrived) ...

 

BiosVersion MP51.88Z.007F.B03.1106211250

BiosReleaseDate 6/21/2011

Board-ID Mac-F221BEC8

Family Mac Pro

ProductName MacPro5,1

SerialNumber H01254HUEUG

 

Replace your iMac13,2 settings with these bad boys and lmk if you SpeedStep works w/o NullCPUPM.

Hmm, I might have an idea why I am experiencing incomplete Apple CPU Power Management, ie. no SpeedStep.

 

I am running a Xeon W3550 which is a Nehalem "Bloomfield" processor.

 

https://en.wikipedia.org/wiki/List_of_Intel_Xeon_microprocessors

 

This processor was found in the Mid 2009 Mac Pro, a.k.a MacPro4,1.

 

I have designated my Z400 as a MacPro5,1 which had the ...

 

Intel Xeon Nehalem "Westmere" processor.

 

These are the CPUs numbered in the 5000s with a leading E, Z or perhaps L.

 

They support the 8GB DDR3 RAM DIMMs too rather than only 4GB DIMMs like the Bloomfields, I believe.

 

I'm gonna roll down to MacPro4,1 and see if that does it UNTIL I can afford to upgrade to the 6 core Westmere, that is ;)

 

I like the looks of that 3.33GHz 6-core X5680 or 3.47GHz X5690 but don't wanna pay $60 to upgrade a $20 PC.

BTW, Yours is a Bloomfield too jaymack.

Share this post


Link to post
Share on other sites

I don't have choices to select from. I don't use a tool to edit my configuration. I go online, research, collect the info that I like and then hand enter into my config.plist file.

 

Also, I use no Clover patches or fixes , simply mod my DSDT file.  I have trust issues ;)

 

I have found that some of the patches don't quite work and documentation is a bit lacking, lol !

 

For instance, did you even realize that "AsusAICPUPM" under "KernelAndKextPatches" is supposed to patch AppleintelCPUPowerMangement "on the fly" ?

 

Well, don't worry, it doesn't :( At least not for 10.11.6. Maybe the Clover that I am running is too old ?

Is there a place where they even tell you which version of Clover is up to date with which version of Mac OS X ?

 

I wonder ...

 

Slack docs is quite understandable for a free tool. It's the best thing for the job that we've got, so no complaints from me.

 

I am running Clover_v2.3k_r3998 on this Z400.

 

Arkie posted what looked like a legit set of MacPro5,1 SMBIOS settings earlier within his massive barrage of luggage ;)

 

Maybe I'll try his since mine is just a tad shy of perfect. I do come up as a Mid 2010 Mac Pro, however.

 

These are my relevant SMBIOS settings (BIOS Release Date and Version are partially contrived) ...

 

BiosVersion MP51.88Z.007F.B03.1106211250

BiosReleaseDate 6/21/2011

Board-ID Mac-F221BEC8

Family Mac Pro

ProductName MacPro5,1

SerialNumber H01254HUEUG

 

Replace your iMac13,2 settings with these bad boys and lmk if you SpeedStep works w/o NullCPUPM.

Hmm, I might have an idea why I am experiencing incomplete Apple CPU Power Management, ie. no SpeedStep.

 

I am running a Xeon W3550 which is a Nehalem "Bloomfield" processor.

 

https://en.wikipedia.org/wiki/List_of_Intel_Xeon_microprocessors

 

This processor was found in the Mid 2009 Mac Pro, a.k.a MacPro4,1.

 

I have designated my Z400 as a MacPro5,1 which had the ...

 

Intel Xeon Nehalem "Westmere" processor.

 

These are the CPUs numbered in the 5000s with a leading E, Z or perhaps L.

 

They support the 8GB DDR3 RAM DIMMs too rather than only 4GB DIMMs like the Bloomfields, I believe.

 

I'm gonna roll down to MacPro4,1 and see if that does it UNTIL I can afford to upgrade to the 6 core Westmere, that is ;)

 

I like the looks of that 3.33GHz 6-core X5680 or 3.47GHz X5690 but don't wanna pay $60 to upgrade a $20 PC.

BTW, Yours is a Bloomfield too jaymack.

 

 

 

I Let Clover Configurator do my work for me. Here is a pic of mine. Just don't use the serial. Feel free to ask questions!!

>I don't have choices to select from. I don't use a tool to edit my configuration. I go online, research, collect the info that I like and then hand enter into my config.plist file.

 

>Also, I use no Clover patches or fixes , simply mod my DSDT file.  I have trust issues ;)

 

>I have found that some of the patches don't quite work and documentation is a bit lacking, lol !

 

Not all of us know how to mod a dsdt. For everything else, there is clover configurator.

 

http://mackie100projects.altervista.org/download-clover-configurator/

 

See also:

 

https://clover-wiki.zetam.org/Configuration

post-1797982-0-91615400-1501900128_thumb.png

Share this post


Link to post
Share on other sites

Sure, I understand. DSDT editing is not for everyone. I know about the configurator. Cool but limiting.

 

But, you know, config.plist editing is not nearly so daunting :)

 

Turns out that I jumped the gun. The Bloomfield CPU can be in EITHER the MacPro4,1 OR MacPro5,1. The Westmere is only in the MacPro5,1.

 

I do have SpeedStep now working for this HP_400 as EITHER Early 2009 Mac Pro (MacPro4,1) OR Mid 2010 Mac Pro (MacPro5,1).

 

The part that stopped it all from happening for me was the Clover ACPI->SSDT entries.

 

config.plist Needs to be set ...

 

DropOEM=NO

Generate

CStates=YES

PStates=YES

 

The only slight bummer is that I lose the overclocked PState (3.2GHz) if I let Clover generate the PStates.

I just get 1.6GHz and 3.07GHz.

 

With NullCPUPowerManagement.kext loaded and config.plist set to ...

DropOEM=YES

Generate

CStates=YES

PStates=NO

 

I get 3 PStates: 1.6GHz, 3.07GHz and 3.2GHz.

 

So my SSDT does NOT work UNLESS I load NullCPUPowerManagement.kext.

 

Also, I lost those nasty looking AppleLPC errors and now only see ...

 

kernel[0]: AppleLPC::notifyPlatformASPM - registering with plugin with ASPM Support false

 

So, those values that I posted just above are GOOD MacPro5,1 SMBIOS settings ;)

 

I'm good with this system now and wish you all the best with your HP HackPro, lol !!!

 

 

 

post-530872-0-45294300-1501907926_thumb.png

IORegistry.zip

Share this post


Link to post
Share on other sites

Sure, I understand. DSDT editing is not for everyone. I know about the configurator. Cool but limiting.

 

But, you know, config.plist editing is not nearly so daunting :)

 

Turns out that I jumped the gun. The Bloomfield CPU can be in EITHER the MacPro4,1 OR MacPro5,1. The Westmere is only in the MacPro5,1.

 

I do have SpeedStep now working for this HP_400 as EITHER Early 2009 Mac Pro (MacPro4,1) OR Mid 2010 Mac Pro (MacPro5,1).

 

The part that stopped it all from happening for me was the Clover ACPI->SSDT entries.

 

config.plist Needs to be set ...

 

DropOEM=NO

Generate

CStates=YES

PStates=YES

 

The only slight bummer is that I lose the overclocked PState (3.2GHz) if I let Clover generate the PStates.

I just get 1.6GHz and 3.07GHz.

 

With NullCPUPowerManagement.kext loaded and config.plist set to ...

DropOEM=YES

Generate

CStates=YES

PStates=NO

 

I get 3 PStates: 1.6GHz, 3.07GHz and 3.2GHz.

 

So my SSDT does NOT work UNLESS I load NullCPUPowerManagement.kext.

 

Also, I lost those nasty looking AppleLPC errors and now only see ...

 

kernel[0]: AppleLPC::notifyPlatformASPM - registering with plugin with ASPM Support false

 

So, those values that I posted just above are GOOD MacPro5,1 SMBIOS settings ;)

 

I'm good with this system now and wish you all the best with your HP HackPro, lol !!!

I wish I knew the kinda stuff you did. I know mine is a Z800 and yours is a 400, but I bet they are similar. Maybe I could show you my config settings and maybe you could shed some insight into what does what. Some of them I know, but some I don't. I don't use a dsdt or ssdt. I can post more data if anyone thinks it will help another user. I also have a reddit post I recently made about my journey with this machine. Maybe it can provide assistance also:

 

https://www.reddit.com/r/hackintosh/comments/6rot8l/lessons_learned_and_still_learning_from_my_second/

 

Enclosed are some screen shots of what I got going on. The movie is of a recent boot.

post-1797982-0-57223200-1501909358_thumb.png

post-1797982-0-61853600-1501909379_thumb.png

post-1797982-0-50323700-1501909393_thumb.png

post-1797982-0-84138700-1501909403_thumb.png

post-1797982-0-52071600-1501909417_thumb.png

post-1797982-0-82592700-1501909431_thumb.png

post-1797982-0-68892300-1501909444_thumb.png

IMG_0829.MOV

Share this post


Link to post
Share on other sites

I don't have choices to select from. I don't use a tool to edit my configuration. I go online, research, collect the info that I like and then hand enter into my config.plist file.

 

Also, I use no Clover patches or fixes , simply mod my DSDT file.  I have trust issues ;)

 

I have found that some of the patches don't quite work and documentation is a bit lacking, lol !

 

For instance, did you even realize that "AsusAICPUPM" under "KernelAndKextPatches" is supposed to patch AppleintelCPUPowerMangement "on the fly" ?

 

Well, don't worry, it doesn't :( At least not for 10.11.6. Maybe the Clover that I am running is too old ?

Is there a place where they even tell you which version of Clover is up to date with which version of Mac OS X ?

 

I wonder ...

 

Slack docs is quite understandable for a free tool. It's the best thing for the job that we've got, so no complaints from me.

 

I am running Clover_v2.3k_r3998 on this Z400.

 

Arkie posted what looked like a legit set of MacPro5,1 SMBIOS settings earlier within his massive barrage of luggage ;)

 

Maybe I'll try his since mine is just a tad shy of perfect. I do come up as a Mid 2010 Mac Pro, however.

 

These are my relevant SMBIOS settings (BIOS Release Date and Version are partially contrived) ...

 

BiosVersion MP51.88Z.007F.B03.1106211250

BiosReleaseDate 6/21/2011

Board-ID Mac-F221BEC8

Family Mac Pro

ProductName MacPro5,1

SerialNumber H01254HUEUG

 

Replace your iMac13,2 settings with these bad boys and lmk if you SpeedStep works w/o NullCPUPM.

Hmm, I might have an idea why I am experiencing incomplete Apple CPU Power Management, ie. no SpeedStep.

 

I am running a Xeon W3550 which is a Nehalem "Bloomfield" processor.

 

https://en.wikipedia.org/wiki/List_of_Intel_Xeon_microprocessors

 

This processor was found in the Mid 2009 Mac Pro, a.k.a MacPro4,1.

 

I have designated my Z400 as a MacPro5,1 which had the ...

 

Intel Xeon Nehalem "Westmere" processor.

 

These are the CPUs numbered in the 5000s with a leading E, Z or perhaps L.

 

They support the 8GB DDR3 RAM DIMMs too rather than only 4GB DIMMs like the Bloomfields, I believe.

 

I'm gonna roll down to MacPro4,1 and see if that does it UNTIL I can afford to upgrade to the 6 core Westmere, that is ;)

 

I like the looks of that 3.33GHz 6-core X5680 or 3.47GHz X5690 but don't wanna pay $60 to upgrade a $20 PC.

BTW, Yours is a Bloomfield too jaymack.

Al I had to do was in the config.plist, change were it said IMac 13,2 to Mac Pro 5,1 That was it ,all the other setting then change automatically.

Share this post


Link to post
Share on other sites

Al I had to do was in the config.plist, change were it said IMac 13,2 to Mac Pro 5,1 That was it ,all the other setting then change automatically.

 

Uh huh, and all the other SMBIOS values were defaulted by Clover to the exact same settings that arkieboy72472 has shown us. I know, I have seen the source code for Clover.

 

What are your ACPI settings ? Do you have SpeedStep ? If so, how many PStates ? You are such a talker, lol !

Share this post


Link to post
Share on other sites

Uh huh, and all the other SMBIOS values were defaulted by Clover to the exact same settings that arkieboy72472 has shown us. I know, I have seen the source code for Clover.

 

What are your ACPI settings ? Do you have SpeedStep ? If so, how many PStates ? You are such a talker, lol !

Have you read this?         http://www.insanelymac.com/forum/topic/322454-cant-get-p-states-working/

Share this post


Link to post
Share on other sites

Yea, about that post. Saying what you did and explaining what you did and/or how you did it are two different things. A solution without explanation is useless to me.

Share this post


Link to post
Share on other sites

 

Yep, it's interesting and I'll watch that thread. As I said, my SpeedStep is working with 2 PStates.

 

You can also tell that my power management is intact by looking at that IORegistryExplorer file that I posted.

 

I was asking you about yours. How many PStates are you getting ? I'm fairly certain that it depends upon the CPU installed.

Share this post


Link to post
Share on other sites

For Z800 user my dsdt u can use as reference i have attached my dsdt +Config.plist + kexts for clover

 

For working Audio i have Attached all the related files u have to put into System Library Extension


if u are really interested in native power management u have to read carefully this thread

 

http://www.insanelymac.com/forum/topic/196771-ga-ex58-and-ga-x58a-dsdt-native-power-management-modifications/

For macOS High Sierra Clover Files.zip

Audio AppleHDA+other 2 kext.zip

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

Announcements

  • Similar Content

    • By tonyx86
      **********************************************************************************
      In this thread, I have fully documented the installation of macOS Catalina on my HP EliteDesk 800 G4 Mini. It is a PERFECT HackMini8,1 and is running very well for me without any issues. I hope this documentation helps you to install macOS on your hack. Please leave feedback if you think there is anything I can improve and let me know if you have any questions.
      **********************************************************************************
       
      Background
      This is my first "modern" hack supporting UEFI and my first hack using Clover "on-the-fly" patches.  My previous hacks
      Laptop: Thinkpad T61 / Nvidia NVS 140m Laptop: Dell Latitude E6410 / Nvidia G3100m Desktop: Gigabyte G31 / GeForce 9600 Desktop: Biostar TH55HD / Sapphire Pulse RX580 (Google "Catalina Biostar TH55HD" and look for user name deeveedee)  
      are all perfectly running Catalina and I patched them all "manually" - all DSDT patches applied with MaciSL with virtually no Clover on-the-fly patching and all booted Legacy Clover.  This UEFI hack was MUCH easier and took about 20 hours vs. a combined hundreds of hours for the old hacks.  I wanted a hack that was a little more future proof and I think this is it.  I hope you enjoy this as much as I am enjoying it.  It is a perfect MacMini8,1.
       

       
      My system specs
      HP EliteDesk 800 G4 Mini (I7-8700T / UHD 630 / Q370 Chipset / 32GB DDR4 RAM) 3 x DP Ports (connected to monitors using DP -> DVI adapters) 6 x USB 3.1 1 x USB Type-C 3.1 2 x NVMe SSD (M.2 PCIe x4 2280/2230 combo ports) 1 x SATA6 SSD 1 x Intel Ethernet RJ-45 Conexant CX20632 Audio Codec Unsupported M.2 PCIe x1 2230 Intel Wi-Fi (currently disabled in BIOS).  I may replace this with Brcm, but am using only Ethernet (IntelMausi) for now.  
      macOS Installation
      See macOS installation steps here See CLOVER (UEFI) installation later in this first post
      See BIOS configuration in attached BIOS configuration PDF document
      See EFI and /L/E kexts in attached EliteDesk.zip archive See how I developed my installation methodology here See references here See instructions here for installing two M.2 2280 NVMe SSDs and one SATA HD / SSD  
      What is not working
      Wi-Fi / Bluetooth (intentional since I have not yet replaced my Intel card).  
      What is not tested
      USB c 3.1 port (I have partially tested the USB 3 functionality of the port and it seems to be working fine with the SSDT-UIAC.aml here) Microphone port  
      What is working
      Everything not mentioned above Sleep / Wake Multiple displays with IGPU graphics acceleration, hot pluggable display ports and DP->DVI adapters USB 3.1 ports Audio (internal speaker and headphone jack) Ethernet Auto-sensing headphone jack automatically switches to internal speaker when headphones removed  
      Known Issues and their solutions - see here
       
      BIOS Version / Configuration
      Version: 02.11.01 Rev.A See attached BIOS configuration in PDF document "HP EliteDesk 800 G4 Mini BIOS Configuration.pdf" Intel ME must be enabled for proper sleep / wake of UHD 630
       
      Clover Configuration
      Clover for UEFI booting only Install Clover in the ESP UEFI Drivers Recommended drivers DataHubDxe FSInject SMCHelper File System drivers ApfsDriverLoader VBoxHfs Memory fix drivers AptioMemoryFix Additional drivers NvmExpressDxe Install RC scripts on target volume Themes Choose your desired theme Install Clover Preference Pane (option not available when installing on USB thumb drive)  
      UHD 630 Framebuffer Patching
      See here and here  
      Current Versions
      Catalina 10.15.5.02 Clover (UEFI) r5119 Lilu.kext 1.4.5 WhateverGreen.kext 1.4.0 AppleALC.kext 1.5.0 IntelMausi 1.0.3 (Not IntelMausiEthernet)  
      Credits To be provided
       
       







      HP EliteDesk 800 G4 Mini BIOS Configuration.pdf
      EliteDesk800 G4 Mini - Rev 0.91.zip
    • By Preet
      I am getting only one syntax compile error after patching with the rehab man Skylake generic and hp g6 2221ss.
      Error: syntax error, unexpected PARSEOP_ARG1
      Error example on Tony Mac ( Link - https://www.tonymacx86.com/threads/solved-unable-to-compile-dsdt-syntax-error-unexpected-parseop_arg1.201774/)
      I found a guide on using refs.txt but I do not know how to use it with the new maciASL on this GitHub (link -https://github.com/acidanthera/MaciASL/releases). 
      System Info Pavillion AU003tx. (Skylake i5, intel HD520)
      Please respond, I would love to have the battery status working. Thanks in advance!!
    • By k.panic
      Ciao ragazzi,
       
      ho provato ad eseguire l'installer di Yosemite su un
      Asrock H110 BTC+
      Intel G3900 (con FakeCPUID 0x0306A0 e flag -xcpm)
      GeForce 710
       
      ma dopo aver raggiunto lo step di "bluetooth transport" mi dà il simbolo del divieto d'accesso.. Cosa sbaglio?
    • By deomkds
      Esse post tem o propósito de documentar os patches necessários para a utilização da kext VoodooI2C e seu satélite VoodooI2CHID no notebook Acer Aspire F15 (ACER-F5-573G).
       
      VoodooI2C é um projeto que adiciona suporte para dispositivos que utilizam o barramento I2C. O trackpad ELAN0501 do notebook Acer Aspire F15 utiliza esse barramento internamente.
       
      As outras opções para ativar o trackpad neste notebook envolvem usar o VoodooPS2Controller ou o ApplePS2SmartTouchPad. O problema do primeiro é que... bem, ele não funciona. No momento em que o trackpad é tocado, o cursor pula pela tela toda sem parar. Já o segundo é o mais fácil pois funciona bem e é capaz de prover funções de multitoque e gestos. Porém, eu sempre achei alguns gestos do ApplePS2SmartTouchPad meio esquisitos, como a rolagem que não acompanha o toque precisamente como aconteceria em trackpads Synaptics no macOS.
       
      Então descobri que era possível usar o VoodooI2C com trackpads ELAN e resolvi tentar. Ao contrário do ApplePS2SmartTouchPad, o VoodooI2C necessita de muita configuração prévia, sendo o mais complicado o processo de GPIO pinning, mas fiquei bastante feliz com os resultados. Esse post documenta os patches usados.
       
      Meu hackintosh é baseado na EFI de johnnywolinger para macOS 10.14. Não o conheço, mas já deixo meus agradecimentos por ter facilitado minha vida. Como estou rodando o Catalina 10.15.5, tive que atualizar algumas kexts (WhateverGreen se não me engano) para evitar um KP durante o boot. A DSDT que eu estou utilizando veio do repositório dele. As únicas alterações que fiz foram os patches necessários ao VoodooI2C.
       
      PASSOS
      1. Baixe o MaciASL neste link.
      2. Abra a sua DSDT nele e aplique os patches [GPIO] GPIO Controller Enable [SKL+] e [Windows] Windows 10 Patch, conforme foto no spoiler. O propósito desses patches é explicado em detalhes no guia de instalação do VoodooI2C. Simplificando, o primeiro patch ativa os interrupts e o segundo permite que o macOS enxergue o dispositivo I2C.
      3. A partir disso, é necessário aplicar os patches específicos de cada computador. No spoiler, eu explico o processo que usei para encontrar as informações. O texto só faz sentido se você já leu o guia de instalação original. Caso não esteja interessado nos detalhes, siga em frente.
      4. Na DSDT, encontre o method _CRS, que está no final do dispositivo TPDE.
      5. Encontrado o Method _CRS, copie o código abaixo.
      Name (SBFG, ResourceTemplate () { GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x003A } }) Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFB, ResourceTemplate () { I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) }) Return (ConcatenateResTemplate (SBFB, SBFG)) } 6. Copiado, volte ao MaciASL e selecione todo o Method _CRS, conforme a foto. Selecione desde o "Method (_CRS" até aquela última chave que está no mesmo nível de Method.

       
      7. Cole, substituindo todo o Method. Deverá ficar assim depois de colado. Note que temos um item chamado Name SBFG e um chamado Method _CRS.

       
      8. Se estiver tudo certo, compile a DSDT e coloque na pasta EFI/ACPI/Patched, onde o Clover está instalado.
       
      Pra finalizar, basta instalar as kexts VoodooI2C e VoodooI2CHID na pasta de kexts do Clover. Ambas podem ser baixadas aqui.
      Se tudo der certo, ao reiniciar, o trackpad deverá estar funcionando corretamente.

      CONSIDERAÇÕES FINAIS
      Se isso parece difícil demais, não esquenta. A VoodooI2C nem é tão melhor que a ApplePS2SmartTouchPad assim. Fiz mais por curiosidade do que por necessidade.
      Se você quiser BAIXAR A DSDT PRONTA, acesse o repositório do johnnywolinger. Tem tudo lá.
      Por que usar VoodooI2CHID em vez de VoodooI2CELAN? Basicamente, a segunda não funciona. Eu testei tanto com o pin 0x3A quanto com o pin 0x9A. Aparentemente, ela só funciona com dispositivos ELAN mais antigos.
      Por fim, quero transformar esse patch num patch automático a ser utilizado no MaciASL, só que não sei como faz. Se eu aprender, edito o post.
    • By MaLd0n
      -Donations with PayPal
      https://tinyurl.com/r2bvzm7
      -Donations with Bitcoin
      33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3
      -Donations with PicPay 
      @danielnmaldonado
      -Donation with Mercado Livre 
      https://tinyurl.com/y9evkj5u
       
      -EFI OpenCore Folder Desktop 10th Intel Processors
      Paste this EFI folder in EFI partition in your USB STICK
      https://tinyurl.com/ybwr9kq3
       
      -Tutorial
      https://tinyurl.com/re2c9sz
       
      -Post Installation
      Paste EFI folder into EFI Partition in your SSD, reboot and extract one full dump with this app and post here!
      https://tinyurl.com/ybwr9kq3
      RunMe.app
      https://tinyurl.com/y9562hz7
       
      --DSDT PATCHES--
       
      -FIX ERRORS AND WARNINGS -FIX ACPI ERRORS -REMOVE UNUSED SCOPES / DEVICES -HIGH PRECISION EVENT TIMER -SATA SERIE ID -DMAC -REMOVE LINES, PROBLEMATIC and UNUSED -FIX K.P in REBOOT -NVRAM -REAL TIME CLOCK -SLPB -DARWIN / WINDOWS -XHCI -PLUGIN TYPE -HDEF -ARTC -IPIC -TIMR -SBUS -BUS1 -MCHC -ALS0 -SHUTDOWN -UAR1 -LAN -FWHD -USBX -PMCR -PPMC -XSPI -GMM -kUSBCompanionIndex -io-device-location -IMEI -EC -PNLF -ARPT -GFX0 -NVME -ACPI-WAKE-GPE -DTGP -ACQUIRE MUT0 0XFFFF -MUTEX MUT0 0x00 -EXTERNAL REFERENCES -UNKNOWNOBJ -HDMI / HDAU -FULL RENAMED DEVICES  
      --SCREENSHOTS--
       









































       
       
      Big Thanks to XLR and your Badass Motherboard, Ultrafast CPU, Coolest Heatsink, Huge Graphics Card, Tonnes of RAM,
      Gigantic Hard Drive, Lightspeed Disk Burner, Professional Sound Card, Massive LCD Display.
       
       
      -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!
       
      Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad, headkaze, onemanosx, erroruser, Jenny David, Sampath007, Facebook Hackintosh community, Facebook Olarila community, SchmockLord, daliansky and many, many, many others!
       
      We're all here to have fun and learn from each other!
×