Jump to content

AppleHDA Patching in 10.9 Mavericks


nyolc8
 Share

149 posts in this topic

Recommended Posts

Hi all,

I started this topic to get some infos and things about applehda binary patching in Mavericks.

 

 

I got this for my alc662 in 10.8:

//codec patch:
sudo perl -pi -e 's|\xff\x87\xec\x1a\x0f\x8f\x53\x01\x00\x00|\x62\x06\xec\x10\x0f\x84\x18\x01\x00\x00|g' AppleHDA

//widget patch:
sudo perl -pi -e 's|\xff\x87\xec\x1a\x0f\x8f\x2f\x01\x00\x00|\x62\x06\xec\x10\x0f\x84\xf4\x00\x00\x00|g' AppleHDA

So far I only see that in 10.9 applehda, they somehow split the "ff87ec1a"(device to replace) from the "0f8f53010000"(I don't know what is this, could someone tell me?) and the "0f8f53010000" is not exist, just some similar things found.

Link to comment
Share on other sites

Thank you, I'll try it in a moment... :)

 

Could you tell me what does this "zeroing" does? It forces applehda to skip the alc884 or something like this?

 

edit: it worked! I got sound with 2.4.9 applehda :D But I'm getting these in every minute:

2013.06.14. 14:22:18,000 kernel[0]: Sound assertion in AppleHDAWidget at line 2167
2013.06.14. 14:22:18,000 kernel[0]: Sound assertion in AppleHDAWidget at line 2167
2013.06.14. 14:22:18,000 kernel[0]: Sound assertion in AppleHDAWidget at line 2167

Any idea how to get rid of them? Before, this was fixed by bin patch (the "0f8f53010000" section in the bin patch)...

So what else should I patch/replace to get rid of these sound assertions?

 

edit:

what happens if I patch the ff87ec1a like before and zeroing alc884? Why I need to patch ad1984 exactly? I patched another(ff87ec1a) device before... And I still don't getting why I need to zeroing out alc884... There is alc885 too, why that can stay there and why alc884 not? Could you tell me these things somehow? I just want to understand it...

Link to comment
Share on other sites

I'm trying to understand how this thing works, so I tried to seperate things in the binary. The following code is the codec section in the binary, it's continous, I just seperated it to get a formated view of it. I recognize the codecs and some codec have "0F ...." thing, but some codec got these "77 5F" and such. So... the "77 5F" things are basically tells to use the "0F ...." from above it? Or am I completly wrong?  :lol:

		0F 84 C4 00 00 00 	8B 07 
3D 7F 76 84 83 	77 5F 
3D 04 28 86 80 	77 6F 
3D FF 87 EC 1A 	77 7F 
3D 74 19 AD 15 	0F 87 C1 00 00 00
3D 05 42 13 10 	0F 87 C6 00 00 00 
3D 01 AA 02 10 	0F 85 F2 01 00 00 	8B 47 08 
3D AF AA 00 00 	0F 87 04 01 00 00 
3D 37 AA 00 00 	0F 87 62 01 00 00 
3D 30 AA 00 00 	0F 85 A4 02 00 00 	48 8D 05 9C A8 03 00 E9 E4 01 00 00 
3D 80 76 84 83 	0F 85 B7 01 00 00 	48 8D 05 85 4A 03 00 E9 CD 01 00 00 	8D 88 FB D7 79 7F 83 F9 02 73 23 
					48 8D 05 6E 0C 04 00 E9 B6 01 00 00 
3D 00 88 EC 1A 	0F 85 89 01 00 00 	48 8D 05 B7 94 03 00 E9 9F 01 00 00 
3D 07 28 86 80 	0F 85 72 01 00 00 	48 8D 05 90 3F 04 00 E9 88 01 00 00 
					48 8D 
3D 39 53 02 00 				48 8D 35 C2 6D 02 00 BA 33 00 00 00 	30 C0 E8 00 00 00 00 E9 1D 02 00 00 
3D 75 19 AD 15 	0F 85 3C 01 00 00 	E9 FF 00 00 00 
3D 06 00 DE 10 	77 13 
3D 06 42 13 10 	75 59 			48 8D 05 E7 8E 03 00 E9 3F 01 00 00 
3D 61 02 EC 10 	77 5D 
3D 3F 00 DE 10 	0F 87 AF 00 00 00 	8D 88 F9 FF 21 EF 83 F9 15 
		0F 87 FC 00 00 00 	48 8D 15 EE 01 00 00 48 63 0C 8A 48 01 D1 FF E1 
					48 8D 05 2A 11 04 00 E9 02 01 00 00 
3D B0 AA 00 00 	0F 84 83 01 00 00 	E9 A6 01 00 00 
3D 08 42 13 10 	0F 85 C5 00 00 00 	48 8D 05 93 8E 02 00 E9 DB 00 00 00 
3D 84 08 EC 10 	77 63 
3D 62 02 EC 10 	0F 85 A7 00 00 00 	8A 4F 04 B8 08 00 00 00 D3 E8 
		0F B6 C0 83 F8 02 
		0F 87 67 01 00 00 	BF F0 00 00 00 E8 00 00 00 00 48 89 C3 48 89 DF E8 F3 3F 00 00 E9 A8 00 00 00 
3D 3F AA 00 00 	77 41 
3D 38 AA 00 00 	0F 85 3B 01 00 00 	48 8D 05 13 E4 03 00 EB 7E 	8D 88 C0 FF 21 EF 83 F9 05 73 51 EB 61 
3D 85 08 EC 10 	74 10
3D 84 19 D4 11 	75 31 			48 8D 05 5F 61 03 00 EB 5A 
					48 8D 05 66 41 03 00 EB 51 
3D 4F AA 00 00 	0F 87 83 00 00 00 
3D 40 AA 00 00 	0F 85 EF 00 00 00 	48 8D 05 57 DE 03 00 EB 32 
3D 8B 19 D4 11 	75 09 			48 8D 05 97 66 03 00 EB 22 	F6 47 10 01 74 15 25 00 00 FF FF ...
…
…
…

Please someone explain this binary thing. :rolleyes:

Link to comment
Share on other sites

sudo perl -pi -e 's|\x85\x08\xec\x10|\x62\x06\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA
sudo perl -pi -e 's|\x84\x08\xec\x10|\x61\x06\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

Don't ask me how.   :whistle:

 

may have "Sound assertion in AppleHDAEngine at line 581" in log that I really don't know about it.

  • Like 1
Link to comment
Share on other sites

I tried and got the 581 assertion but it looks like it just appears once at login, so it's not bad  :D  Thank you!

 

It looks like alc885 is the key for alc662. (because my older patch was based on "jump to alc855" - don't ask what is this means lol -  method too)

Link to comment
Share on other sites

hi guys, i patch my AppleHDA with this code for ALC887

sudo perl -pi -e 's|\x8b\x19\xd4\x11|\x87\x08\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

this works perfect on 10.8.x , in 10.9 also works but after 10min listen to music with itunes sound crached and pc restart alone.

 

anyone an idea?

 

Thanks in advance

sorry for my bad english

Link to comment
Share on other sites

My patched AppleHDA for 889 crashes Mavericks here (not sure though, there's no log whatsoever). Will try restoring the kext from 10.8.4 later.

 

EDIT: reinstalled the system and now there's no audio related problem anymore  :ph34r:

Link to comment
Share on other sites

hi Alex Auditore,

how i can use these patches for my ALC887?

 

thanks in advance

Hi, Maybe you should edit plist of AppleHDAHardwareConfigDriver as well

As layout 12(ALC885) was at twelth array in ML, now it is at thirteenth in Mavericks

post-974387-0-41734300-1371999722_thumb.jpg

For ALC670 and ALC883 it helped

Link to comment
Share on other sites

thanks for replay,i dont use layout 12 i use 99,and i have alredy edit plist of AppleHDAHardwareConfigDriver.

the problem is a binpatch.i patched it with this

sudo perl -pi -e 's|\x8b\x19\xd4\x11|\x87\x08\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA 

mine is different than yours. has something  with it ?

 

 

 
sudo perl -pi -e 's|\xff\x87\xec\x1a\x0f\x8f\x53\x01\x00\x00|\x70\x06\xec\x10\x0f\x84\x2a\x01\x00\x00|g' AppleHDA
sudo perl -pi -e 's|\xff\x87\xec\x1a\x0f\x8f\x2f\x01\x00\x00|\x70\x06\xec\x10\x0f\x84\x06\x01\x00\x00|g' AppleHDA

thanks :)

post-838043-0-05468300-1372006712_thumb.png

Link to comment
Share on other sites

hi

it worked but still the same issue  after 10min listen to music with itunes or with other musik player sound crached. also the new AppleHDA 2.5.2a30 DP2 is the same issue.

that's really strange.

thanks for your work.

Link to comment
Share on other sites

hi

it worked but still the same issue  after 10min listen to music with itunes or with other musik player sound crached. also the new AppleHDA 2.5.2a30 DP2 is the same issue.

that's really strange.

thanks for your work.

try to use Chameleon boot or Clover EFI, not UEFI

Link to comment
Share on other sites

 Share

×
×
  • Create New...