Jump to content

HDA Wizard - Simple tool for AppleHDA.kext

wizard HDA Sound

  • Please log in to reply
148 replies to this topic

#1
janek202

janek202

    InsanelyMac Sage

  • Developers
  • 313 posts
  • Gender:Male
  • Location:Poland
I wrote a simple tool for AppleHDA.kext in Snow Leopard 10.6.8 and Lion 10.7.
It was designed for quick sound repair after update, without any rollbacks.

It allows you to insert your own layout and Platforms xml files.
It has also binpatch support.
It will set permissions, rebuild cache and prelink kernel.
It has drag and drop support.

It will not create any files, it will only help you to install them.

You still need a DSDT patch, or HDAEnabler.kext with proper LayoutID.

Mountain Lion version: http://www.insanelym...-lion-108-beta/

Download link: http://dl.dropbox.co...d/download.html


Edit: I don't have time to develop this app. It wasn't really popular anyway.
I only needed a quick tool to put Platforms into correct place (ALC262 doesn't need any binpatch).
I published source code. Maybe somebody will use it to give community more tools.
I know that source code isn't perfect, but I made this tool a long time ago, and since then I haven't seen a point in rewriting it.
Feel free to use it in your open source tools.

Posted Image

Attached Files



#2
shatterhenner

shatterhenner

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 108 posts
nice one mate....thanx for this....very useful

#3
Regi Yassin

Regi Yassin

    Who am I ?

  • Members
  • PipPipPipPipPip
  • 278 posts
  • Gender:Not Telling
greatest apps, the easier way to patch applehda
thanks janek

#4
MiniHack

MiniHack

    InsanelyMac Legend

  • Donators
  • 641 posts
  • Gender:Male
Can you add this bin patch please for IDT 92HD81B1X5:

sudo perl -pi -e 's|\x8b\x19\xd4\x11|\x05\x76\x1d\x11|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

Thanks!

#5
janek202

janek202

    InsanelyMac Sage

  • Developers
  • 313 posts
  • Gender:Male
  • Location:Poland
Added. http://dl.dropbox.co.../HDA Wizard.zip
I will add an updater for the binpatch list, in the next version, so there will be no need to download this app again every time.

#6
ErmaC

ErmaC

    127.0.0.1

  • Supervisors
  • 4,751 posts
  • Gender:Male
  • Location:Canary Islands
Hi janek202.

In lot of case is needed a Info.plist too into

/System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist

just for have a complete "patch"

Fabio

#7
MiniHack

MiniHack

    InsanelyMac Legend

  • Donators
  • 641 posts
  • Gender:Male

Added. http://dl.dropbox.co.../HDA Wizard.zip
I will add an updater for the binpatch list, in the next version, so there will be no need to download this app again every time.


Great love your work!

#8
janek202

janek202

    InsanelyMac Sage

  • Developers
  • 313 posts
  • Gender:Male
  • Location:Poland

/System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist


Oh yes, I forgot about it. I made myself a legacy kext. I will add it.

#9
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 233 posts
  • Gender:Male
  • Location:Muppet Show
Thanks janek202, you are UNSTOPPABLE :wacko:

Will try it on my 2 mobos, one with ALC888 and the other with ALC889a/885.

Both use new layoutXXX.xml and Platforms.xml and ALC888 also needs a bin-patch of the AppleHDA executable.

Only if there was a way to improve that audio card detection delay in 10.6.8 and Lion...

#10
MARKBOARD NETSET

MARKBOARD NETSET

    InsanelyMac Protégé

  • Members
  • Pip
  • 33 posts
  • Gender:Male
  • Interests:Luck for Hack
Nice app help me to get my applehda work i have the intel hda device id 293e

thanks go ahead :wacko:

#11
ErmaC

ErmaC

    127.0.0.1

  • Supervisors
  • 4,751 posts
  • Gender:Male
  • Location:Canary Islands

Oh yes, I forgot about it. I made myself a legacy kext. I will add it.


;)

2 Controller for you...

AD2000B (Complete)
Info.plist
layout12.xml
Platforms.xml

Attached File  AD2000B.zip   11.04KB   454 downloads
's|\x8b\x19\xd4\x11|\x9b\x98\xd4\x11|g'
DSDT EDIT is mandatory
Device (HDEF)			{				Name (_ADR, 0x001B0000)				Method (_PRW, 0, NotSerialized)				{					Return (Package (0x02)					{						0x0D,						0x05					})				}				Method (_DSM, 4, NotSerialized)				{					Store (Package (0x0C)						{							"subsystem-id",							Buffer (0x04)							{								0xA0, 0x00, 0x00, 0x00							},							"subsystem-vendor-id",							Buffer (0x04)							{								0x6B, 0x10, 0x00, 0x00							},							"codec-id",							Buffer (0x04)							{								0x9B, 0x98, 0xD4, 0x11							},							"layout-id",							Buffer (0x04)							{								0x0C, 0x00, 0x00, 0x00							},							"platformFamily",							Buffer (One)							{								0x00							},							"PinConfigurations",							Buffer (Zero) {}						}, Local0)					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))					Return (Local0)				}			}

_______________________


ALC1200 (Complete)
Info.plist
layout12.xml
Platforms.xml

Attached File  ALC1200.zip   13.75KB   360 downloads
's|\x85\x08\xec\x10|\x88\x08\xec\x10|g'
DSDT EDIT is mandatory
Device (HDEF)			{				Name (_ADR, 0x001B0000)				Method (_PRW, 0, NotSerialized)				{					Return (Package (0x02)					{						0x0D,						0x05					})				}				Method (_DSM, 4, NotSerialized)				{					Store (Package ()						{							"layout-id",							Buffer (0x04)							{								0x0C, 0x00, 0x00, 0x00							},							"platformFamily",							Buffer (One)							{								0x00							},							"PinConfigurations",							Buffer (Zero) {}						}, Local0)					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))					Return (Local0)				}			}

_______________________


As always nice idea!

Fabio

#12
Cyrus the Great

Cyrus the Great

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 276 posts
  • Gender:Male
  • Location:tehran
hi
thanks for your work
this is bin patching for IDT 92HD75B3X5
sudo perl -pi -e 's|\x84\x19\xd4\x11|\x03\x76\x1d\x11|g' "/Volumes/Macintosh HD/System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA"
and also a request many of user must binpatching graphic kext after updating thier mac i creat a script that do it this is for ati mobility radeon hd 4650 the script:
sudo perl -pi -e 's|\x02\x00\x00\x00\x40\x00\x00\x00\x09\x01\x00\x00\x02\x01\x00\x03|\x02\x00\x00\x00\x40\x00\x00\x00\x09\x01\x00\x00\x12\x00\x00\x07|g' "/Volumes/Macintosh HD/System/Library/Extensions/ATI4600Controller.kext/Contents/MacOS/ATI4600Controller"

sudo perl -pi -e 's|\x02\x00\x00\x00\x00\x01\x00\x00\x09\x01\x00\x00\x20\x01\x02\x02|\x10\x00\x00\x00\x10\x00\x00\x00\x00\x01\x00\x00\x00\x10\x01\x06|g' "/Volumes/Macintosh HD/System/Library/Extensions/ATI4600Controller.kext/Contents/MacOS/ATI4600Controller"

sudo perl -pi -e 's|\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x00\x00\x10\x00\x01\x01|\x00\x08\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x20\x01\x02\x01|g' "/Volumes/Macintosh HD/System/Library/Extensions/ATI4600Controller.kext/Contents/MacOS/ATI4600Controller"
if you add graphic patching also help to many user.
may be creat a Universal app that include all of your app( kextwizard,chameleon,...)
be good idea.
thanks for your work and your time that spend to help to hackintosh community

#13
Maniac10

Maniac10

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,248 posts
  • Gender:Not Telling
Worked great for my ALC889, thanks again janek202

#14
janek202

janek202

    InsanelyMac Sage

  • Developers
  • 313 posts
  • Gender:Male
  • Location:Poland
New 1.1 version.
Added Info.plist modification support.
Added new codecs to binpatch list.
Added binpatch list updater (menu option).
So there's no need to download whole application again. Just select "Update binhack list".
http://dl.dropbox.co.../HDA Wizard.zip

Enjoy.


Edit:

and also a request many of user must binpatching graphic kext after updating thier mac i creat a script that do it this is for ati mobility radeon hd 4650 the script:
(...)
if you add graphic patching also help to many user.

I think this application will be for AppleHDA only. But I will think about binpatcher for other kexts. I have to modify AppleRTC on Lion.

may be creat a Universal app that include all of your app( kextwizard,chameleon,...)
be good idea.

Merging Kext Wizard and Chameleon Wizard into single app would require much work. Kext Wizard was my first application for mac and I would have to change many things in order to make GUI and source compatibile with Chameleon Wizard.
And one more thing: It would be much harder to find out why it's crashing. :(

#15
Hacktrix2006

Hacktrix2006

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 423 posts
  • Gender:Male
How does one get the binpatch via perl looking for one for Hermosa Conexant High Definition SmartAudio 221.

Codec: Conexant CX20561 (Hermosa)
Address: 0
Vendor Id: 0x14f15051
Subsystem Id: 0x103c30d9
Revision Id: 0x100000
Modem Function Group: 0x2
Default PCM:
	rates [0x160]: 44100 48000 96000
	bits [0xe]: 16 20 24
	formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=4, o=0, i=0, unsolicited=1, wake=0
  IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0
  IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0
  IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0
  IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0
16 Node 0x10 [Audio Output] wcaps 0xc1d: Stereo Amp-Out R/L
  Amp-Out caps: ofs=0x4a, nsteps=0x4a, stepsize=0x03, mute=0
  Amp-Out vals:  [0x3c 0x3c]
  Converter: stream=0, channel=0
  PCM:
	rates [0x560]: 44100 48000 96000 192000
	bits [0xe]: 16 20 24
	formats [0x1]: PCM
  Power: setting=D0, actual=D0
17 Node 0x11 [Audio Output] wcaps 0xc1d: Stereo Amp-Out R/L
  Amp-Out caps: ofs=0x4a, nsteps=0x4a, stepsize=0x03, mute=0
  Amp-Out vals:  [0x4a 0x4a]
  Converter: stream=0, channel=0
  PCM:
	rates [0x560]: 44100 48000 96000 192000
	bits [0xe]: 16 20 24
	formats [0x1]: PCM
  Power: setting=D0, actual=D0
18 Node 0x12 [Audio Output] wcaps 0x211: Stereo Digital
  Converter: stream=0, channel=0
  Digital:
  Digital category: 0x0
  PCM:
	rates [0x160]: 44100 48000 96000
	bits [0xe]: 16 20 24
	formats [0x5]: PCM AC3
19 Node 0x13 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
  Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=0
  Amp-Out vals:  [0x00]
20 Node 0x14 [Audio Input] wcaps 0x100d1b: Stereo Amp-In R/L
  Amp-In caps: ofs=0x4a, nsteps=0x50, stepsize=0x03, mute=0
  Amp-In vals:  [0x44 0x44] [0x44 0x44]
  Converter: stream=0, channel=0
  SDI-Select: 0
  PCM:
	rates [0x160]: 44100 48000 96000
	bits [0xe]: 16 20 24
	formats [0x1]: PCM
  Power: setting=D0, actual=D0
  Connection: 2
	 0x1d* 0x17
21 Node 0x15 [Audio Input] wcaps 0x100d1b: Stereo Amp-In R/L
  Amp-In caps: ofs=0x4a, nsteps=0x50, stepsize=0x03, mute=0
  Amp-In vals:  [0x44 0x44]
  Converter: stream=0, channel=0
  SDI-Select: 0
  PCM:
	rates [0x160]: 44100 48000 96000
	bits [0xe]: 16 20 24
	formats [0x1]: PCM
  Power: setting=D0, actual=D0
  Connection: 1
	 0x18
22 Node 0x16 [Pin Complex] wcaps 0x400581: Stereo
  Pincap 0x081c: OUT HP Detect
  Pin Default 0x01214040: [Jack] HP Out at Ext Rear
	Conn = 1/8, Color = Green
	DefAssociation = 0x4, Sequence = 0x0
  Pin-ctls: 0xc0: OUT HP
  Unsolicited: tag=37, enabled=1
  Power: setting=D0, actual=D0
  Connection: 2
	 0x10* 0x11
23 Node 0x17 [Pin Complex] wcaps 0x40048b: Stereo Amp-In
  Amp-In caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
  Amp-In vals:  [0x03 0x03]
  Pincap 0x081224: IN Detect
	Vref caps: 50 80
  Pin Default 0x400001f0: [N/A] Line Out at Ext N/A
	Conn = Unknown, Color = Unknown
	DefAssociation = 0xf, Sequence = 0x0
	Misc = NO_PRESENCE
  Pin-ctls: 0x24: IN VREF_80
  Unsolicited: tag=38, enabled=1
  Power: setting=D0, actual=D0
24 Node 0x18 [Pin Complex] wcaps 0x40048b: Stereo Amp-In
  Amp-In caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
  Amp-In vals:  [0x03 0x03]
  Pincap 0x081224: IN Detect
	Vref caps: 50 80
  Pin Default 0x01a19030: [Jack] Mic at Ext Rear
	Conn = 1/8, Color = Pink
	DefAssociation = 0x3, Sequence = 0x0
  Pin-ctls: 0x24: IN VREF_80
  Unsolicited: tag=39, enabled=1
  Power: setting=D0, actual=D0
25 Node 0x19 [Pin Complex] wcaps 0x400581: Stereo
  Pincap 0x0814: OUT Detect
  Pin Default 0x400001f0: [N/A] Line Out at Ext N/A
	Conn = Unknown, Color = Unknown
	DefAssociation = 0xf, Sequence = 0x0
	Misc = NO_PRESENCE
  Pin-ctls: 0x40: OUT
  Unsolicited: tag=00, enabled=0
  Power: setting=D0, actual=D0
  Connection: 2
	 0x10* 0x11
26 Node 0x1a [Pin Complex] wcaps 0x400501: Stereo
  Pincap 0x0810010: OUT EAPD
  EAPD 0x2: EAPD
  Pin Default 0x92170110: [Fixed] Speaker at Int Front
	Conn = Analog, Color = Unknown
	DefAssociation = 0x1, Sequence = 0x0
	Misc = NO_PRESENCE
  Pin-ctls: 0x40: OUT
  Power: setting=D0, actual=D0
  Connection: 2
	 0x10* 0x11
27 Node 0x1b [Pin Complex] wcaps 0x400500: Mono
  Pincap 0x0810010: OUT EAPD
  EAPD 0x2: EAPD
  Pin Default 0x400001f0: [N/A] Line Out at Ext N/A
	Conn = Unknown, Color = Unknown
	DefAssociation = 0xf, Sequence = 0x0
	Misc = NO_PRESENCE
  Pin-ctls: 0x40: OUT
  Power: setting=D0, actual=D0
  Connection: 2
	 0x10* 0x11
28 Node 0x1c [Pin Complex] wcaps 0x400701: Stereo Digital
  Pincap 0x0810: OUT
  Pin Default 0x400001f0: [N/A] Line Out at Ext N/A
	Conn = Unknown, Color = Unknown
	DefAssociation = 0xf, Sequence = 0x0
	Misc = NO_PRESENCE
  Pin-ctls: 0x00:
  Power: setting=D0, actual=D0
  Connection: 1
	 0x12
29 Node 0x1d [Pin Complex] wcaps 0x40040b: Stereo Amp-In
  Amp-In caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
  Amp-In vals:  [0x03 0x03]
  Pincap 0x0820: IN
  Pin Default 0x97a70120: [Fixed] Mic at Int Riser
	Conn = Analog, Color = Unknown
	DefAssociation = 0x2, Sequence = 0x0
	Misc = NO_PRESENCE
  Pin-ctls: 0x20: IN
  Power: setting=D0, actual=D0
30 Node 0x1e [Vendor Defined Widget] wcaps 0xf00000: Mono

Attached Files



#16
Dr. Hurt

Dr. Hurt

    InsanelyMac Deity

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,507 posts
  • Gender:Male
  • Location:Cairo, Egypt and NYC, USA
  • Interests:Wandering around on the internet!! Politics, Sci/Tech, Medicine.
ALC662

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

#17
ErmaC

ErmaC

    127.0.0.1

  • Supervisors
  • 4,751 posts
  • Gender:Male
  • Location:Canary Islands

New 1.1 version.
Added Info.plist modification support.
Added new codecs to binpatch list.
Added binpatch list updater (menu option).
So there's no need to download whole application again. Just select "Update binhack list".
http://dl.dropbox.co.../HDA Wizard.zip

Enjoy.


Would be nice the option to select "Target" partition (in this case AppleHDA)...

I do most of the modification from other partition, not always from current using system.

Fabio

#18
janek202

janek202

    InsanelyMac Sage

  • Developers
  • 313 posts
  • Gender:Male
  • Location:Poland

Would be nice the option to select "Target" partition (in this case AppleHDA)...

I do most of the modification from other partition, not always from current using system.


I thought about it.
But I want to keep is simple. This app will be used mostly after updating the system before restart.
And I have no idea how to prelink kernel and create kernel cache on other partitions than /.

BTW. Added ALC662. Updater should work.

#19
ErmaC

ErmaC

    127.0.0.1

  • Supervisors
  • 4,751 posts
  • Gender:Male
  • Location:Canary Islands

I thought about it.
But I want to keep is simple. This app will be used mostly after updating the system before restart.
And I have no idea how to prelink kernel and create kernel cache on other partitions than /.

BTW. Added ALC662. Updater should work.


I understand :(

And a "Repository" (for store) inside the .app the .xml & .plist (Resources folder??)

It would be easy and more efficent for final user apply the patch w/o searching the file for his controller (Layout-Platform-Info)

just a idea...

Fabio

#20
fbifido

fbifido

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male
  • Location:Jamaica
How does one get the binpatch for my sound card?






0 user(s) are reading this topic

0 members, 0 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