Jump to content

AppleHDA Patcher v1.8


8 Screenshots

About This File

Micky1979 and Mirone are glad to present you a new version of AppleHDA Patcher.app that will help you enabling sound on your Hack!

 

AppleHDA Patcher v1.9

http://olarila.com/forum/viewtopic.php?f=18&t=6528

 

AppleHDA Patcher, Jarvis ready

funny? Well, born for fun joking with Mirone about some adventures patching AppleHDA.kext.

Anyway Jarvis is there!

--> Troubleshotting:

 

 

 

 

  • the app require a vanilla AppleHDA from the current system, otherwise can't work.
  • "drag an AppleHDA" functionality serves only if you are trying to patch it for another System and you use this system with the patched kext generated, or if is your saved vanilla kext (backup) and is the version needed by your system (not extracted with pacifist because should be incomplete). Also be sure is not a rollback from a minor version of the system (eg kext from 10.11 in 10.12 or from 10.11.5 in 10.11.6)
  • Generated kexts must be correctly installed (permissions repaired and cache rebuilted), the app did not install anything (look inside ~/Desktop/MironeAudio).
  • if does not work, be sure you have injected the correct layout-id (you can see it in ioreg).
  • if does not work, mind that all the patches are all reported as working by someone else system.
  • If does not work, be sure you have removed thirt party conflictual kexts (voodoohda, AppleALC, AppleHDADisabler, someone else injector), or you have removed or edited from your DSDT/SSDTs someone else patch you have applied previously.
  • There are differences between systems, so if you are sure your System is ok, probably you need a custom patch, we need the codec dump from linux
  • Don't work? Ok, but knowing only that, personally I don't care because mine always work. So comment at least if you are able to provide information like a ioreg firstly, but also your config.plist/patched dsdt or ssdt if any. Also the app as a function called "Jarvis" so a copy-paste of that is also appreciated.

 

 

1- You don't need to have separate patches, now they are implemented within the app, just choose Desktop's or Laptop's.

 

2- Is it possible to patch AppleHDA.kext for different OS X versions, he supports all kexts from 10.7 up to 10.11 (and newer), or by default use the one in /System/Library/Extensions as base for the patches without drag anything.

 

3- You can create kexts through its patched files (Platforms.xml, LayoutX.xml, Info.plist for AppleHDAHardwareConfigDriver.kext )

drag all of your files, choose or type the codec to patch the binary. The process automatically start.

 

4- Is automatically created a full patched AppleHDA.kext + HDAEnabler.kext to be used with all bootloaders, an aDummyHDA.kext and a config.plist *sample (to be used with Clover), an HDEF patch to be used with MaciASL ready with the correct layout-id (in case you chose to patch laptops also an IRQ patch will be generated), and also you will find usefull the CodecCommander.kext + hda-verbs by Rehabman forks.

All files will be placed inside ~/Desktop/MironeAudio, just choose what you need.

 

5- for all steps 1, 2 and 3 you can also drag to the app interface your real config.plist to be edited where necessary.

 

6- The application is able to make corrections remotely updating itself when and if necessary.

 

NOTE:

The app produces various files, off course you do not have to use them all:

 

Use aDummyHDA.kext + edited config.plist for Clover (Ozmosis works similar)

For all other bootloader use the full patched AppleHDA.kext (+ HDAEnabler.kext or DSDT edits... not both).

Use CodecCommander.kext if the sound does not work after the sleep (wake), read more here.

aDummyHDA.kext goes in /System/Library/Extensions

 

Italiano:

 

 

 

1- la nuova app ha tutte le patch incluse, per cui non c’è bisogno di file separati come in passato.

2- è possibile patchare AppleHDA.kext per le diverse versioni di OS X, da 10.7.x a 10.11.x (e versioni successive se non ci saranno cambiamenti). E’ richiesto che AppleHDA.kext sia presente in /System/Library/Extensions/ e che sia vanilla (mai patchato).

 

3- è possibile creare kexts anche importando i vari file che hai fatto tu (Platforms.xml, LayoutX.xml, Info.plist per AppleHDAHardwareConfigDriver.kext):

basta trascinarli sull’interfaccia e il processo partirà automaticamente.

 

4- vengono creati automaticamente un AppleHDA.kext completamente patchato + HDAEnabler.kext per essere utilizzato con tutti i bootloader (ok per Enoch che non può patchare al volo il kext), un aDummyHDA.kext e un campione del config.plist * (da usare con Clover), una patch HDEF da utilizzare con MaciASL pronto con le modifiche per il tuo DSDT con il corretto layout-id (nel caso hai generato una patch per portatili ci sarà anche una patch per gli IRQ sempre da applicare con Maciasl), in più troverete utile il CodecCommander.kext di Rehabman.

Tutti i file saranno collocati sul Desktop in una cartella chiamata “MironeAudio”, basta scegliere quello che vi serve (ricapitolando aDummyHDA.kext + config.plist per Clover, AppleHDA.kext patchato + HDAEnabler.kext per Enoch).

 

5- per tutte le fasi 1, 2 e 3 è anche possibile trascinare nell’interfaccia dell’applicazione il tuo vero config.plist prima di pigiare il bottone “patch AppleHDA”, così il KextsToPatch verrà aggiustato con le patch richieste per far funzionare l’audio. Ovviamente verrà fatta una copia modificata all’interno della cartella “MironeAudio”, nella sottocartella “Clover” che contirne il kext generato. Il tuo non verrà toccato… te lo devi rimpiazzare da solo.

 

6- L'applicazione è in grado di ricevere update in remoto per avere sempre le ultime modifiche ai vari codecs.

 

RICAPITOLANDO:

L'applicazione produce vari file, ma naturalmente non c'è bisogno di usarli tutti:

 

Utilizzare config.plist+aDummyHDA.kext per Clover. Se non avete trascinato il vostro vero config.plist quello generato è solo un esempio con le modifiche da apportare al vostro, da non utilizzare così com’è, altrimenti se lo avete trascinato.. una copia modificata la trovate all’interno di MironeAudio/nome del codec/versione del kext/Clover/config.plist.

Per tutti gli altri bootloader potete utilizzare il “full patched AppleHDA.kext patch” (con HDAEnabler.kext o DSDT modificato con le patch generate ... ma ovvio non entrambi).

Utilizzare CodecCommander.kext se il suono non funziona dopo il wake (risveglio).

 

 

Works in 10.7+

 

Credits:

bcc9 for patch_hda.pl ported to obj-c code by Micky1979

Andy Vandijck for getcodecid command

Pike R. Alpha for the idea of the Dummy kext

Geoff Garside for the zlib implementation

Kabyl and Taruga for the HDAEnabler.kext

Mirone for all the patches

RehabMan, TimeWalker75a, The-darkvoid for the CodecCommander.kext, here.

RehabMan for it's fork of iasl 6.1 available here.

 

// AppleHDA Patcher

//

// Created by Micky1979 and Mirone on 18/11/15.

// Copyright © 2015 Micky1979, Mirone and InsanelyMac.com. All rights reserved.

//


What's New in Version v1.8   See changelog

Released

  • v1.8 Added more codecs for Laptop's and Desktop's.
  • Like 6
  • Thanks 2

User Feedback

Recommended Comments



Mickey1979: Respect to your work and your success. But like others I really want to get a little bit better guides. I know you are the developer and that everything is easy, but please recognize that most of us comes first time here and we have not developed the software and did the same actions thousand of times like you. 

 

I personal tried to patch my hackintosh with AppleHDA Patcher but iam lost. You have a guide and some lines of text but they are all written from a developer who expect the same experience from all other. That is no way to work.

 

Maybe another member will answer my question but I suggest to think about it. Your software is definitly not just pressing two buttons. 

 

So my question:
After generating the files with the Apple HDA Patcher, what I really have to do with the files? I want to fix a Clover bootloader.

I added the files like written in your "guide" but nothing works. I assume that I have not used all files or placed them wrong.

So please some help:

 

1.) Drop config.plist from mounted EFI (Clover Configurator) to AppleHDA Patcher.

2.) Select ALC298 from Laptop list.

3.) Click on Patch

4.) Use config.plist from Clover folder (MironeAudio) and replace the one in EFI Partition

5.) Use the aDummyHDA.kext and move to Kexts/10.11/ Folder in EFI Partition

7.) Reboot

No Sound

8.) I read in the net that I have to move the aDummyHDA.kext to "/system/Library/Extensions"

9.) Reboot

No Sound

 

I read in your "guide" that only this two files are needed for Clover. So what I missed or did wrong?

 

I use ElCaptain on a Surface 4 Pro Book.

Link to comment
Share on other sites

Mickey1979: Respect to your work and your success. But like others I really want to get a little bit better guides. I know you are the developer and that everything is easy, but please recognize that most of us comes first time here and we have not developed the software and did the same actions thousand of times like you. 

 

I personal tried to patch my hackintosh with AppleHDA Patcher but iam lost. You have a guide and some lines of text but they are all written from a developer who expect the same experience from all other. That is no way to work.

 

Maybe another member will answer my question but I suggest to think about it. Your software is definitly not just pressing two buttons. 

 

So my question:

After generating the files with the Apple HDA Patcher, what I really have to do with the files? I want to fix a Clover bootloader.

I added the files like written in your "guide" but nothing works. I assume that I have not used all files or placed them wrong.

So please some help:

 

1.) Drop config.plist from mounted EFI (Clover Configurator) to AppleHDA Patcher.

2.) Select ALC298 from Laptop list.

3.) Click on Patch

4.) Use config.plist from Clover folder (MironeAudio) and replace the one in EFI Partition

5.) Use the aDummyHDA.kext and move to Kexts/10.11/ Folder in EFI Partition

7.) Reboot

No Sound

8.) I read in the net that I have to move the aDummyHDA.kext to "/system/Library/Extensions"

9.) Reboot

No Sound

 

I read in your "guide" that only this two files are needed for Clover. So what I missed or did wrong?

 

I use ElCaptain on a Surface 4 Pro Book.

DSDT/SSDT Layout ID it may be necessary in the configuration

Link to comment
Share on other sites

5.) Use the aDummyHDA.kext and move to Kexts/10.11/ Folder in EFI Partition

Sorry but what should I do...read for you?   :P

post-674334-0-38068600-1482255380.png

 

8.) I read in the net that I have to move the aDummyHDA.kext to "/system/Library/Extensions"

9.) Reboot

 

no:

8.) move the aDummyHDA.kext to "/system/Library/Extensions"

9.) remove any conflictual kexts if any, be sure that you acpi contains all you need and does not contains conflictual parameters (like a different layout-id)

 

10.) Repair permissions

11.) rebuild the cache"

12.) Reboot

13.) hope

 
Link to comment
Share on other sites

Hello, first of all thank you for your work, I have a MSIGT702PE ALC892 and AppleHDA does not work at startup, it only works after waking the laptop to hibernate but not completely, only to hibernate 3seconds without getting to 100% waking and instantly wake up then 100 works %, Is there any IRQ problem? I do not know how my knowledge of AppleHDA has been limited, the path maps work perfectly with those of patcher like mine, it really does the same

 

This happens from 10.11 and 10.12, 10.10 worked perfect

Link to comment
Share on other sites

Thanks, Mirone, I do not know how to suven here files or if you can, but I share a link in my hotmail to download, inside this my ACPI I use next to the config, now everything works except mentioned, the intelHD4600 + GTX880M works at 100%, the audio only as I commented after waking works perfect, but before no, once again many thanks

 

https://1drv.ms/u/s!AtdnwD2BBbM9vFSHMhfPpX1yv-sF

Link to comment
Share on other sites

Hey guys, how do i contribute for support of : idt 92hd87b2/4 (0x111D 7669) or is it the same as idt 92hd87b1?

 

i think this may be usefull.

 

SPK: 0x0d -> 0x14 EAPD
10 01 17 90
 
HP: 0x0b -> 0x13 EAPD
1f 10 21 04 ->  40 10 21 04
 
MIC: 0x11 -> 0x17 -> 0x15
30 01 a3 d5 -> 30 01 a0 90
 
EMIC: 0x0c -> 0x18 -> 0x16
20 10 a1 04 -> 20 10 81 04

 

oh am i in the wrong topic?

Link to comment
Share on other sites

不能用了,文件损坏

Nothing is broken, be sure to
Be using in a correct way,
 
Sorry, you're right, I'll fix it now.
but please post your questions in the English language.
 
Fixed now!
Link to comment
Share on other sites

Hi. Micky and Mirone! :)

IMHO. Why not patch 0x11d41984 for ALC8xx, we don't touch 0x11d4198b and the dummy id 0x11d41983(a), and thus we don't have to modify the patch when the new system is coming. (Note that 0x11d41984 will be here maybe permanently...)

Link to comment
Share on other sites

Hi. Micky and Mirone! :)

IMHO. Why not patch 0x11d41984 for ALC8xx, we don't touch 0x11d4198b and the dummy id 0x11d41983(a), and thus we don't have to modify the patch when the new system is coming. (Note that 0x11d41984 will be here maybe permanently...)

hello, @PMheart, 0x11d4198b is still the best choice for that in some cases some microfonnes externals may not work with 0x11d41984 as was the case with my codec is ALC887, and also as it happens in 10.12.3 codecs Conexant and some IDT. it is still too early to speak of a new macOS, let's wait.

  • Like 1
Link to comment
Share on other sites

Hi PMheart... it's an algo that decide that ;)

Yes. I know. There's some logical jump on each codec id. And TBH I'm too lazy to check that and thus I have patched 11d41984 since 10.8 and now it's still working.  :lol:

 

hello, @PMheart, 0x11d4198b is still the best choice for that in some cases some microfonnes externals may not work with 0x11d41984 as was the case with my codec is ALC887, and also as it happens in 10.12.3 codecs Conexant and some IDT. it is still too early to speak of a new macOS, let's wait.

Alright. Same here ALC887. I prefer to patch 11d41984 cuz for 11d4198b we may need additional patches like zeroing out 11d4198a (in 10.12.x).

Yup. I found something like this.

loc_58ba7:
    if (rax > 0x11d4198a) goto loc_58c57;

loc_58bb2:
    if (rax == 0x10ec0262) goto loc_58d78;

loc_58bbd:
    if (rax != 0x10ec0885) {
            if (rax == 0x11d41984) {
                    rax = AppleHDAFunctionGroupAD1984::metaClass;
            }
            else {
                    if ((rax & 0xffff0000) == 0x10de0000) {
                            rax = *(int32_t *)(rdi + 0x10);
                            rax = rax & 0x1;
                            if (rax == 0x0) {
                                    rax = AppleHDAFunctionGroup::metaClass;
                            }
                            else {
                                    rax = AppleHDAFunctionGroupGK10X::metaClass;
                            }
                    }
                    else {
                            rax = AppleHDAFunctionGroup::metaClass;
                    }
            }
    }
    else {
            rax = AppleHDAFunctionGroupALC885::metaClass;
    }
    goto loc_58e5a;

// Something more here...

 if (rax != 0x11d4198b) {
            if (rax != 0x15ad1975) {
                    if (rax == 0x1aec8800) {
                            rax = AppleHDAFunctionGroupWM8800::metaClass;
                    }
                    else {
                            if ((rax & 0xffff0000) == 0x10de0000) {
                                    rax = *(int32_t *)(rdi + 0x10);
                                    rax = rax & 0x1;
                                    if (rax == 0x0) {
                                            rax = AppleHDAFunctionGroup::metaClass;
                                    }
                                    else {
                                            rax = AppleHDAFunctionGroupGK10X::metaClass;
                                    }
                            }
                            else {
                                    rax = AppleHDAFunctionGroup::metaClass;
                            }
                    }
            }
            else {
                    rax = AppleHDAFunctionGroupALC885::metaClass;
            }
    }
    else {
            rax = AppleHDAFunctionGroupAD1988::metaClass;
    } 

Ah also. Sorry for delaying replying... :P

  • Like 1
Link to comment
Share on other sites

@PMheart,

 

I do not see problems in clearing some checks of codec_id, 

even by that AppleHDA Patcher can handle it 

and clover also, I also have another particular way of dealing with this, but I understand your preference for 0x11d41984.

  • Like 1
Link to comment
Share on other sites

Thanks Micky.  I thought so. Followed the steps but get no sound.  Does it work for Sierra kext?   Been using a patched AppleHDA since ML, and has worked fine up till I upgraded to Sierra.  Still works but getting an annoying mic going out randomly.  Strange after wake it works again. I was told by rehabman need to patch a current one.  So trying out you patcher, either doing something wrong, or not working for me. Its that alc269vc.  Will go over again a couple more times.

Link to comment
Share on other sites

As far as the patcher goes, its a great tool.  Wow, outstanding guys! Trying out the built ins for my codec it patched perfectly and getting sound working.  Fantastic work! However it still not resolving the go dead mic issue I'm having.  Probably something else going on.

Link to comment
Share on other sites

The problem with the microphone can be caused by your codec has a PathMaps and Pinconfigs different than this present in AppleHDA Patcher so I can say this by analyzing your codec_dump.

Link to comment
Share on other sites

Hi Mirone.  Thanks. https://www.sendspace.com/file/hx5djg

 

It seems your alc269vc version 3 works the best.  without codec commander Mic seems alive for a few minutes then goes dead.  After sleep  Mic comes alive for a good while but output speaker sound goes.  Commander fixes the output speaker sound after sleep.  Headphone work the best, no issue.

Link to comment
Share on other sites


×
×
  • Create New...