Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
From the variety of messes I've read about in https://discussions.apple.com/thread/2384136 I didn't plan on trying the kext fix! Especially at 10.9.4... thanks for the warning though.

On the other hand, now at 10.9.5 and with freezing occurring more often than before, I am seriously considering the kext replacement. Looking at http://www.cindori.org/software/kextdrop/ to install new (old) kexts.

I notice that when the screen freezes, I can let the computer go to sleep, and when I wake it up, there is normal mouse functionality again, although the screen is mostly unreadable. Then I can restart without having to do a hard shutdown.
20-inch, Mid 2007
ATI Radeon HD 2400 XT 128 MB
 
Trying with Mavericks?

If you end up trying the kexts with 10.9.5, please let us know. I've done the kext change several times (they've been reset by security updates) and it's very easy, and has worked great. I'm stuck on Lion right now but I'd love to get all of my machines onto 10.9 if possible, so they can all use the latest version of Aperture.

I use Kext Wizard (mentioned in earlier posts) and it's been completely painless.

Thanks!

Roger
 
Just to give everyone an update...

The iMac that has been experiencing this issue(2600 pro), has been handed down to me for my son to use, as my mother has replaced it with a Mac Mini.

It didn't matter how many times I told my mom to NOT update from 10.6.2, she still did it. As soon as she did, the beachballs would begin. I Replaced 10.6.8 with 10.6.2 two times already. But the third time she upgraded, she finally decided to replace the iMac as she couldn't figure this out.

Coincidentally, her HD was starting to go flaky in the last couple of months as well.

Since this machine was really to be used by my son for playing minecraft, I figured that boot up speed could be sub-optimal. I installed 10.6.2 on a 30 gig FireWire drive, as a total failsafe. Once I proved that would work, I replaced the original HD with a 2-TB 7200RPM HD and installed 10.9.5

It has been around a month now, and there has not been an issue yet. The GPU gets plenty of exercise, and it's been flawless.

The only thing I could think of was that the HD was failing for a lot longer than anyone had realized, and maybe that had something to do with it. Either that or 10.9.3+ has addressed what was wrong with the 2600 Pro.

Good luck all. And thanks for listening/helping over the years.
 
Yosemite seems to muck the Kext fix up.

hi guys,

I have used this system perfectly since 10.9.1 when i got my 24 inch early 2008 mac (ati hd2600 256mb graphics) and it experienced crashes.

I have used it on all 5 variants of mavericks perfectly.

BUT. it did not work for yosemite.

Firstly the kext fix will fail on reboot. and the folder backup extensions will be created and the ATI drivers will install into that.

First of there is a new kext in extensions with yosemite - ATIRADEON.kext i think it is called and without the AMD drivers in place this is used, and it doesn't work correctly - you get 2-3fps and lots of corruption.

I then removed this and some other AMD kexts and used easy kext drop to put the ATI kexts in - and this installed them but with even more graphics issues.

At that point i gave up and restored from time machine 10.9.5 from before the upgrade and will sit on that until someone works out a) if i was doing something wrong, or b) an updated work around is found.

so FAIR WARNING DONT upgrade to YOSEMITE if you use Kext Fix on Mavericks!!!
 
Matt.

Your guide seems to not follow the experience i have had on my mac.

My iMac 24inch (early 2008) is running

Mac OS 10.9.5 (13F34)

I have

ATI2600Controller
ATIFramebuffer
ATISupport

Running in System Profiler Extensions (with YES flags set for loaded)

And my boot Plist says -

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel Flags</key>
<string></string>
</dict>
</plist>


Which means I believe I am running a 32bit EFI.

My system has been running like this for over a month and gets rebooted once or twice a week to log into Windows 7 on boot camp to run some software I can only run in MS, then booted back into OS X for the rest of the time.

So the instructions saying the only way to load and keep loaded the kext files is with 64 bit EFI do not apply to ALL macs on 10.9.5 or earlier.

For 10.10 it is possible that you do need to do this.
 
2007 and 2008 iMacs do not have a 32-bit EFI. Starting with 10.8, the kernel and all kexts must and are only 64-bit.
 
Please look at the two links in step 7.

Thetroubmaker your 2008 iMac probably boots 64-bit normally I remember reading some where that apple switched the EFI midway through that year that's why the kext work with no hickups. Force your system to boot by holding done "3" & "2" while booting then see if the kext load and yes your system may freeze in the process!

Intell the 2007 EFI does boot 32-bit normally. The processor is 64-bit boot but apple was lazy and didn't put a 64-bit EFI in.

The boot plist confirmation is only for those who have forced the EFI to boot 64-bit not those who already boot 64-bit. There are other ways to force a 32-bit EFI to boot 64-bit. This was just the one I choose for tutorial.
 
10.8 and newer are completely unable to boot to a 32bit kernel. It has been completely stripped out, only 64-bit remains. Snow Leopard was the last OS that defaulted to booting to 32-bit mode on 2007-2008 iMacs, 64-bit Snow Leopard was not supported on 2007-2008 iMacs. Lion defaulted to 64-bit with 32-bit as an option. thetroublemaker's iMac is running 10.9.5, thus is and can only be 64-bit. Lastly, the 2007 iMac was the first iMac to have a 64-bit EFI. Hence why it can boot into 10.8 and higher without needing 3rd party modifications.
 
hi guys,

I have used this system perfectly since 10.9.1 when i got my 24 inch early 2008 mac (ati hd2600 256mb graphics) and it experienced crashes.

I have used it on all 5 variants of mavericks perfectly.

BUT. it did not work for yosemite.

Firstly the kext fix will fail on reboot. and the folder backup extensions will be created and the ATI drivers will install into that.

First of there is a new kext in extensions with yosemite - ATIRADEON.kext i think it is called and without the AMD drivers in place this is used, and it doesn't work correctly - you get 2-3fps and lots of corruption.

I then removed this and some other AMD kexts and used easy kext drop to put the ATI kexts in - and this installed them but with even more graphics issues.

At that point i gave up and restored from time machine 10.9.5 from before the upgrade and will sit on that until someone works out a) if i was doing something wrong, or b) an updated work around is found.

so FAIR WARNING DONT upgrade to YOSEMITE if you use Kext Fix on Mavericks!!!

the old kexts will not load, cause Yosemite has kext signature checking enabled, and the 10.6.2 ones obviously have no valid signature. so if you remove the new AMDxxxx kexts you are left with sw only graphics. disabling kext signatures is possible you have to edit this file: /Library/Preferences/SystemConfiguration/com.apple.Boot.plist

there is a "Kernel Flags" key, and an empty <string></string> value.
you have to type

kext-dev-mode=1 between the string markers, and save the file.

to do so, you require administrative credentials. it can be done from terminal, but a regular text editor works as well.

This boot plist is same I have to modify to boot my EFI in 64-bit so I wonder if is possible to have two kernel flags in the boot plist. See my question c in tutorial.


warning: this stuff disables osx10.10's kext security measures, so basically any proper kext can be loaded. yes, even ones, that contain malicious code or stuff like that. so choose your kexts wisely. nevertheless, there wasn't any kext-security before yosemite anyway.

----------

10.8 and newer are completely unable to boot to a 32bit kernel. It has been completely stripped out, only 64-bit remains. Snow Leopard was the last OS that defaulted to booting to 32-bit mode on 2007-2008 iMacs, 64-bit Snow Leopard was not supported on 2007-2008 iMacs. Lion defaulted to 64-bit with 32-bit as an option. thetroublemaker's iMac is running 10.9.5, thus is and can only be 64-bit. Lastly, the 2007 iMac was the first iMac to have a 64-bit EFI. Hence why it can boot into 10.8 and higher without needing 3rd party modifications.

The 2007 iMac was the first to have 64-bit processor not a 64-bit EFI. Did you even look at the two links in step 7. The EFI is a chip on logic board and hence can not be striped out. The 32-bit EFI are fully capable of booting the kernel in 64-bit as long as there is a 64-bit processor available.
 
Last edited:
The 2007 iMac was the first to have 64-bit processor. Did you even look at the two links in step 7.

The first iMac to have a 64-bit processor was the late 2006 white iMac with a 32-bit EFI. The 2007 iMac is the first iMac to be completely 64-bit and natively boot into 64-bit mode without any changes starting with 10.7. Furthermore, don't forget that 10.8 and higher cannot ever boot into 32-bit mode because their kernel lacks it completely as seen by the out put below:
2007-iMac:~ Intell$ lipo -info /mach_kernel
Non-fat file: /mach_kernel is architecture: x86_64
2007-iMac:~ Intell$ uname -a
Darwin 2007-iMac 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64

Now then, please stop posting and touting those slightly flawed instructions. As there is no reason at all to force any Mac running 10.8 or higher to run in 64-bit mode as it cannot run in anything by 64-bit mode.
 
Did you look at this:

http://support.apple.com/kb/ht3770

Their only flawed if you system has a 64-bit EFI and you don't step to step 9. Thus you should step to step 9 which is the majority of people. The reason newer OS X versions work with kext fix is because new macs have a 64-bit EFI. Newer OSX tells these older EFI 32-bit Macs to run the kext in 64-bit which it is capable of doing. Except the kext that everyone uses which works are from 10.6.2 and thus these 32-bit EFI do not load the kext properly.
 
Last edited:
Did you look at this:

http://support.apple.com/kb/ht3770

Their only flawed if you system has a 64-bit EFI. Thus you should step to step 9 which is majority of people.

That document only pertains to 10.6. That step is not needed as the kexts in question are are 32/64-bit kexts and can be loaded when the machine is in either mode, but remember 10.8 and higher can only be loaded in 64-bit mode. As stated previously, starting with 10.7, the 2007-2008 iMacs use a 64-bit kernel by default. Don't believe me that the EFI is 64-bit on 2007-2008 iMacs? Run this command:

Code:
ioreg -l -p IODeviceTree | grep firmware-abi

Here's the output when run on a 2007 iMac7,1:

2007-iMac:~ Intell$ ioreg -l -p IODeviceTree | grep firmware-abi
| | "firmware-abi" = <"EFI64">

It shows that the machine is has a 64-bit EFI. Also, a 64-bit EFI is required to be able to boot into 10.8, 10.9, 10.10 and anything newer. Unless Apple made a large mistake, the 2007-2008 iMacs have a 64-bit EFI because they are supported machines for those versions of OS X.
 
I edited last post please re read

It's still highly flawed and inaccurate.

A 32-bit EFI Mac cannot run a 64-bit kernel. A 32-bit kernel cannot load a 64-bit only kext. A 32-bit EFI cannot use a 64-bit only kext, because it cannot use a 64-bit kernel. These are all extremely basic principals that cannot be circumvented.

The 10.6.2 ATI kexts that you are illegally redistributing are a 32-bit and 64-bit hybrid kext and can run with both a 32-bit and 64-bit kernel and on a 32-bit and 64-bit EFI. I'm still confused as to why you are persistent that the 2007-2008 iMacs do not have 32-bit EFI when are are very clearly not. That step is not required and does nothing at all.
 
Thank You

EFI=tells the kernel how to boot.

Kernel=boots either in 32 or 64 in a 2007 iMac(32 by default in 10.6.2)

Mavericks tells the EFI which tells the kernel to boot 64 by default because Mavericks will only run 64 bit kext. But when you put the 10.6.2 kexts(which are 32/64 bit hybrids) in extensions folder the system tries to load them as 32. The older EFI chipsets on the 2007 iMacs tell the kernel to load these hybrids in 32 by default. And you and I both agree Mavericks will not load anything thats 32. So thats why forcing the EFI into 64 no matter what works.
 
Thank You

EFI=tells the kernel how to boot.

Kernel=boots either in 32 or 64 in a 2007 iMac(32 by default in 10.6.2)

Mavericks tells the EFI which tells the kernel to boot 64 by default because Mavericks will only run 64 bit kext. But when you put the 10.6.2 kexts(which are 32/64 bit hybrids) in extensions folder the system tries to load them as 32. The older EFI chipsets on the 2007 iMacs tell the kernel to load these hybrids in 32 by default. And you and I both agree Mavericks will not load anything thats 32. So thats why forcing the EFI into 64 no matter what works.


You got some of that correct. Yet still other incorrect. Let me break it down some more.

A 32-bit EFI can only boot a 32-bit kernel and a maximum of Mac OS X 10.7.
A 64-bit EFI can boot a 32-bit or 64-bit kernel.
A 64-bit kernel cannot use a 32-bit kext.
A 64-bit kernel cannot use a hybrid 32/64-bit kexts' 32-bit code, only their 64-bit code.
However many bits the kernel is, is how many bits all and every one of the kexts must be.
A 2007 iMac running 10.9 must have a 64-bit kernel.
A 2007 iMac running 10.8 must have a 64-bit kernel.
A 2007 iMac running 10.7 defaults to a 64-bit kernel.

10.9 doesn't tell the EFI anything, that's not the direction that communications go between the two. 10.9 only has 64-bit mode. Because of this, when the 10.6.2 kexts are loaded, they are loaded with properly using their 64-bit code. No additional options need to be set to force 64-bit mode, no matter the machine running it. This means that 10.7 and higher do not attempt to load the 10.6.2 kexts in 32-bit mode by default.

2007 iMacs have a 64-bit EFI and run 64-bit kernels with 64-bit kexts when on 10.7 and higher. They cannot, under any circumstances, run a 32-bit kernel or 32-bit kexts when running 10.8 or higher.
 
What is your reference for the 2007 iMac having a 32-bit EFI? Here is my reference for it having a 64-bit EFI: http://www.everymac.com/systems/apple/imac/specs/imac-core-2-duo-2.0-20-inch-aluminum-specs.html

You are still incorrect, a 32-bit EFI cannot ever run a native Apple 64-bit kernel. This is why the MacPro1,1, MacPro2,1, Macbook2,1, iMac5,1, iMac6,1, MacMini2,1, Xserve1,1, MacBookPro2,1, and MacBookPro2,2 cannot run anything newer than 10.7 without third party modifications. They all have a 32-bit EFI and cannot run a 64-bit kernel.
 

That is an uncreditable, outdated third party site that does not state the bit count of the 2007 iMac and whose content was solely based on and created for 10.6.

Let's use common sense and logic here:

10.9 requires a 64-bit EFI. The 2007 iMac supports 10.9. Thus, the 2007 iMac has a 64-bit EFI.

I've even previously posted a way for you to check the bit count of a Mac's EFI as well as the output from a 2007 iMac. It's 64. Have you ever personally used or even looked at a 2007 iMac?
 
No you've only showed me what kernel in running which 64-bit. I've owned one since 2007 bought it new so I have first hand experience. All I know is that mavericks was freezing every single day. Until I forced the EFI to 64. I even have it on two different partitions still. The one that I have run the terminal command does not freeze and the one that I have not run the terminal command still freezes same for lion another partition. The functioning partition has been running flawlessly for month.

----------

That is an uncreditable, outdated third party site that does not state the bit count of the 2007 iMac and whose content was solely based on and created for 10.6.

Let's use common sense and logic here:

10.9 requires a 64-bit EFI. The 2007 iMac supports 10.9. Thus, the 2007 iMac has a 64-bit EFI.

I've even previously posted a way for you to check the bit count of a Mac's EFI as well as the output from a 2007 iMac. It's 64. Have you ever personally used or even looked at a 2007 iMac?

Should be

10.9 requires a 64-bit Kernel. The 2007 iMac supports 10.9. Thus, the 2007 iMac has a 64-bit Kernel run by a 32-bit EFI.
 
I've owned one since 2007 bought it new so I have first hand experience. All I know is that mavericks was freezing every single day. Until I forced the EFI to 64. I even have it on two different partitions still. The one that I have run the terminal command does not freeze and the one that I have not run the terminal command still freezes same for lion another partition. The functioning partition has been running flawlessly for month.

Should be

10.9 requires a 64-bit Kernel. The 2007 iMac supports 10.9. Thus, the 2007 iMac has a 64-bit Kernel run by a 32-bit EFI.

Well then, go to it and run this command to check once and for all the bit count of the EFI on that model iMac:
Code:
ioreg -l -p IODeviceTree | grep firmware-abi

Don't forget, you can't force the EFI to do anything, the kernel is what it is and on 10.9 it is only 64-bit. There is no way to run 10.9 in 32-bit mode. It is critical that you understand this. Once again, 10.9 can only ever be 64-bit and never 32-bit.

Also, a 32-bit EFI Mac cannot run an Apple 64-bit kernel.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.