Jump to content

My plists for boot-132 method :)


cyclonefr
 Share

45 posts in this topic

Recommended Posts

Hi everyone.

 

I was kinda surprised to find many people who are using the boot-132 method are using old kext binaries from 1930 while you can simply use plists so you can keep the latest updated binary in your original /System/Library/Extensions folder (for example with AppleAHCIPort or AppleHDA...).

 

As I was bored, I made some "fake plists" for some files :

 

- LegacyAppleAHCIPort.kext which has my JMicron ATA AHCI product id + ICH9 product id. It WILL load the latest binary from your /System/Lib/Extensions folder. This fake kext is ONLY a plist. So if 10.5.6 ever has a new AppleAHCIPort, it'll use the new binary from 10.5.6 with vendor id from my fake kext.

 

- LegacyAppleHDAPlatformDriver.kext (already posted on some other thread. Just edit it accordingly to your working AppleHDA plist. If you are using AppleHDA from Taruga patcher, then insert your sound card info from AppleHDA.kext/Contents/Info.plist since 10.5.2+ kexts for AppleHDA are different and there wasn't any AppleHDAPlatformDriver.kext.

 

-LegacyAppleHDAController.kext (more or less the same, still for AppleHDA)

 

- LegacyAppleIntelPIIXATA.kext (this has some ICHx product id so you can keep using the latest binary)

- LegacyIOAHCIBlockStorage.kext (for AHCI users, it removes orange icons without touching the vanilla binary)

- LegacyJMicronATA.kext (this adds support for jmicron 363 chip. Feel free to modify it if you want)

 

If you look at all these plists, you will see how the structure is and you can simply reproduce it to other kexts.

 

Another thing I noticed is network drivers that have dependencies with IONetworkingFamily.kext will only load if you place IONetworkinFamily within the boot132 extra kexts or if you boot in -f.

 

Here are all the "fake plists" : http://www.mediafire.com/?zynoao5wmvz

 

Have a nice day !

Link to comment
Share on other sites

hi cyclonefr. pardon my ignorance but how exactly could i make use of your "fake" plists? i'm interested w/ the applehda. i'm currently using a patched applehda.kext to make my onboard sound work. but i have to put it in /System/Library/Extensions of my retail leopard install. would it be possible to be loaded if i just put it in the /Extra/Extensions folder of my boot-132?

 

[edit]

 

i've attached the applehda.kext that can make my onboard sound work. would be very great if it can be loaded from boo-132-loader & need not be in /S/L/Extensions of my retail leopard install. ;)

AppleHDA.kext.zip

Link to comment
Share on other sites

Thanks cyclone, works (depends) with EFI partition

 

I got it working with AppleAHCIPort.kext renamed LegacyAppleAHCIPort.kext,

 

Intel ICH7-R AHCI:

 

Vendor: Intel

Product: ICH7-R AHCI

Speed: 3.0 Gigabit

Description: AHCI Version 1.10 Supported

 

but was unable to get working LegacyIOAHCIBlockStorage.kext, always orange icons

 

I tried both versions, only kexts and kextcache with the same results.

 

Check my plist 3 times don't see something wrong, numbers match with kext.

 

EDIT: get working LegacyIOAHCIBlockStorage.kext, just a tipo in plist

Link to comment
Share on other sites

yes, these plist-only kexts are pretty much the future, it seems. dfe i beleive pioneered the technique, but its a very clever one and makes good use of IOKit features.

 

i plan to investigate fully when i find some time :) i already took delivery of a bunch of example kexts from iNDi... will be interesting to compare them to yours.

 

cheers and good work ;)

Link to comment
Share on other sites

@cyclonefr

 

I got working LegacyAppleAHCIPort.kext and LegacyIOAHCIBlockStorage.kext.

 

But i am completely stuck with AppleHDA, i analyse the way you mod those plist file and try to do the same for my mobo.

 

I analyse also "THe KiNG for ASUS M50SV", little bit different and also try to do the same.

 

I can't definitely get it working, here is a log error.

 

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 1653 goto Exit

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 108 goto Exit

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 1653 goto Exit

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 108 goto Exit

 

Of course i use HDAEnabler and get partial SystemProfiler Audio report.

 

Here is attached my lattest try close to your method, if you like to help i will be very glad.

BDX2_LegacyHDA_KO.zip

Link to comment
Share on other sites

tested and working great using instahackintosh, thanks

 

Edit: The legacy storage kexts work fine as long as AHCI is enabled on bios, but if in bios sata is switched to compatibility - IDE they will not work

Edit 2 :Also a weird sound distortion happens if i use the audio plists as presented by cycloneFr just before the sound initializes (makes emptying trash really annoying ...)

The solution is to use the actual HDAEnabler.kext in the Extra folder instead of the legacy one, keeping the other leagacy audio file

Link to comment
Share on other sites

This sounds great. I had a few patched kexts in /Extra/Extensions for my JMicron and replacing them with LegacyAppleAHCIPort and LegacyIOAHCIBlockStorage everything booted up just fine.

 

I currently have my JMicronATA.kext in /Extra/Extensions and not in /System/Library/Extensions. Is there any reason for me to use LegacyJMicronATA.kext? What advantage does it give if there isn't a JMicronATA kext in /S/L/E by default?

 

Also, I'd really like to get a working plist for my onboard lan. But my attempt failed as the ethernet device isn't found. I've attached the info.plist I made in the hope someone can show me where I'm going wrong.

 

And finally, it is required to append "Legacy" to the names?

Info.plist.txt

Link to comment
Share on other sites

This sounds great. I had a few patched kexts in /Extra/Extensions for my JMicron and replacing them with LegacyAppleAHCIPort and LegacyIOAHCIBlockStorage everything booted up just fine.

 

I currently have my JMicronATA.kext in /Extra/Extensions and not in /System/Library/Extensions. Is there any reason for me to use LegacyJMicronATA.kext? What advantage does it give if there isn't a JMicronATA kext in /S/L/E by default?

 

Also, I'd really like to get a working plist for my onboard lan. But my attempt failed as the ethernet device isn't found. I've attached the info.plist I made in the hope someone can show me where I'm going wrong.

 

And finally, it is required to append "Legacy" to the names?

 

 

Just check the first post from cyclonefr

 

http://forum.insanelymac.com/index.php?showtopic=129279

 

will normally respond to all your questions.

 

Legacy kexts (only one info.plist inside) only works if corresponding vanilla kexts is in S/L/E.

 

For your plist at first look, start to remove a lot of stuff like:

 

<key>CFBundleExecutable</key>

<string>LegacyAppleYukon2</string>

<key>CFBundleGetInfoString</key>

<string>Apple Yukon Ethernet 3.1.10b2, Copyright 2007 Apple Inc., and Marvell</string>

 

<key>CFBundleShortVersionString</key>

<string>3.1.10</string>

 

To mimic samples in http://www.mediafire.com/?zynoao5wmvz

 

Hope this help

Link to comment
Share on other sites

Thanks. That may have done it!

 

After I tried and failed the first time, I restored my original edited kext and still had no ethernet. Somehow I managed to mess up the interface list or something like that (ifconfig showed en0 but it wasn't available in the Network prefpane). After some playing around I've finally managed to get it back up and running again. And it's now working with just this plist-only kext! This is great. I don't have to keep checking kexts when there's an OS update to see if there's a newer version in /S/L/E ;)

 

As there isn't usually a copy of JMicronATA.kext in /S/L/E (it doesn't come with Leo afaik) does the kext in the first post allow you to use the newer kexts from the JMicron site? I remember trying one once and maybe getting a KP. Either way I ended up going back to the one from the original boot-123 disc I used to install Leo here.

 

UPDATE: Nope guess not. I added LegacyJMicronATA and installed the JMicronATA.kext from their site. Got a KP as soon as the bootscreen loaded.

Link to comment
Share on other sites

Hmm looks like I'll have to check out my Leo disc ;) . I probably overwrote it with the one from jmicron at some stage, which would explain why I don't have it in my /S/L/E folder now. I did have a look through the 10.5.5 combo earlier and there was no sign of it, so I guess they haven't updated it yet.

 

UPDATE: Yeah, found it on my leo disc ;) . That's another patched kext gone. Every week there's a new cool discovery like this that helps us keep more and more vanilla. Just amazing. With these kexts being so small, it should be possible to build a super-universal boot-132 disc if we gathered all the plist edits for different hardware.

 

I've attached my working kext for Marvell Yukon 88E8056.

LegacyAppleYukon2.kext.zip

Link to comment
Share on other sites

great topic....

i tried the legacyappleyukon2.kext from riley....which only works with -f, how can i solve this issue. in the top is written: Another thing I noticed is network drivers that have dependencies with IONetworkingFamily.kext will only load if you place IONetworkinFamily within the boot132 extra kexts or if you boot in -f.

what should i do with the ionetworkingfamily file? where do i have to put in? in /extra/extension?

would be fine for some help

thx relaxer

Link to comment
Share on other sites

Yeah you'll need to put IONetworkingFamily.kext in along with it. This is true for any kext. IMHO it kinda defeats the point, so I prefer to just use the -f flag rather than fill up my extra/extensions folder with a bunch of kexts just to satisfy dependencies.

Link to comment
Share on other sites

nice work :) always wanted to know how to do it. because every time i do a system update, i will always copy the updated kext to my usb drive and enter my dev id. so do i just rename the fake kext with the Legacy in the front and only the plist included in the fake kext? do i have to edit anything in the plist?

Link to comment
Share on other sites

okay riley thx for your answer, but i still do not understand the think with the legacyyukon2.kext!

there is an info.plist inside, okay, great!

i put your yukon2.kext in the extra/extension folder and my network works perfekt with my id from marvell, BUT only with -f on booting!

 

important now seems to be the ionetworkingfamily file. but i don't know how to make it working in the extra / extension folder!

 

Can you upload a ionetworkingfamily.kext with your yukon2.kext inside (which includes only the info.plist) which will work in the extra/extension folder without using -f on startup???!!!

 

of course with leaving the original ionetworkingfamily.kext on /s/l/e.....

 

 

thx for your help and i hope you understand what i am looking for!

 

bye

relaxer

Link to comment
Share on other sites

okay riley thx for your answer, but i still do not understand the think with the legacyyukon2.kext!

The idea is that when you update to, say, 10.5.7 and there's a newer version of AppleYukon2.kext in that update, you will be using it automatically if you use the plist-only method. If you use a full kext you're loading an outdated one. Rather than having to check after an update to see if any of your edited kexts have newer versions, you will always use the one in s/l/e/.

 

important now seems to be the ionetworkingfamily file. but i don't know how to make it working in the extra / extension folder!

It should be a simple case of copying it there, repairing permissions and deleting the extension cache. I can't say with any certainty as I took the -f route for tidiness so I never attempted to satisfy dependencies. It's simpler to just add the -f flag to com.apple.boot.plist.

 

Can you upload a ionetworkingfamily.kext with your yukon2.kext inside (which includes only the info.plist) which will work in the extra/extension folder without using -f on startup???!!!

I've attached the ionetworkingfamily.kext from my 10.5.5 install with legacyappleyukon2 added. Let me know if it works for you!

IONetworkingFamily.kext.zip

Link to comment
Share on other sites

riley.....

 

works perfekt! no boot any more with -f!

so it is really simple. the only mod is the legacyappleyukon2 inside with info.plist and ID and it loads the network! The original ionetworkinfamily.kext is untouched in /s/l/e

 

What about the appledha? is it possible that this kext will work in /extra/extension, in order to leave the original applehda in /s/l/e ???

 

i tried it and put my modified applehda into /e/e, but it will not load! only in /s/l/e ....

I can't understand why...

 

Solutions yet?

 

Riley, thx for your support

cyclonefr Great topic,

thank you

 

relaxxer

Link to comment
Share on other sites

AppleHDA is trickier. I tried loading a patched one from extra/extensions but it wouldn't load. The problem is that the binary itself is usually patched, so it's not a simple case of editing a plist. The AD1988 seems to be supported by AppleHDA but I don't know if the AD1988B is. Or if a plist change would be enough.

Link to comment
Share on other sites

sorry riley

i do not updated my signature yet, but i'm using the new patched applehda.kext from taragula.

i'm not sure but this applehda.kext came from a taragula installer with rev4.

I found it here in the forum and it works perfect with the ad1988b...

 

I tired to add the string with `root`inside but it will not work in /e/e

 

In the other way the applehda.kext is the only kext in /s/l/e on my mac, so the rest is fully vanilla.

The others are in /e/e and works great.

 

okay i hope there will be a solution for the applehda.kext!

 

c ya

relaxer

Link to comment
Share on other sites

Hello,

 

Excellent work cyclonefr. Could you or someone provide a tutorial on how and why these Legacy "shell" plists work and more about how to create one? For example, my EP35-DS3L needs a modified ACPIPlatform kext. Is it possible to use a Legacy plist shell to make that happen and still be loading the newest version of the main kext? Or is my reboot fix part of the binary of the kext? It would be great to only have Legacy shell kexts in E/E for any and all stock kexts that need modified, so as to always have the most up-to-date version running also.

 

I am, compared to many of you, a newb at OSX86, but I have used Macs since System 6 and know my way around OS X very well.

 

I have setup the EFI partition and now that I got this Legacy HDA (stickpin's ALC888_Add0) my sound and everything works great. Unbelievable the progress this project has made since Kalyway 10.4.8. Still I have an interest in tomorrow's notebooks and Stevenote.

 

Thank you for your efforts.

Link to comment
Share on other sites

@Relaxxer: There's a thread here for getting some chips running with a plist-only AppleHDA. The snag is that it only works if you convert your extra extensions folder to an extension cache. I tested it earlier with the files for my ALC883 (address 2) and it worked fine. With the kexts placed in the usual Extra/Extensions folder it didn't.

Link to comment
Share on other sites

hey riley,

 

thx for your info. i noticed that the LegacyIOAHCIBlockStorage.kext also won't boot because i am getting always orange icons. How can i solve this? when i will boot with -f i will work and i get the internal symbols for the hard drives. Is there a solution WITHOUT booting with -f, maybe there is an issue in the info.plist of the LegacyIOAHCIBlockStorage.kext ??!!!

 

Thx again for an answer,

 

bye

relaxxer

Link to comment
Share on other sites

 Share

×
×
  • Create New...