gc19880725 发表于 2016-2-24 13:46

笔记本ALC662声卡驱动修改时的注意事项

首先感谢以下论坛大神:紫米 [教程] 完整製作仿冒 LegacyHDA.kext (12/16) (总教程 仿冒声卡必通篇阅读)
love2335 [教程] 笔记本制作仿冒声卡驱动AppleHDA最详细教程 (笔记本专用仿冒声卡教程 但是比较简略)
悄悄呐喊 [教程] 台式机ALC892制作仿冒appleHDA的教程,前置MIC自动检测。(该教程未完成 不过提取codec数据上更详细易懂)
serco76 [教程] 一步一步教你搞定仿冒声卡【针对新手】 (love2335的帖子不足的部分 请详细学习该帖)
另外感谢ezeerb在[交流] 10.10有能用的ALC662声卡驱动吗?(AppleHDA.kext)帖子12楼提供的10.10笔记本ALC662声卡驱动模版


写本帖子主要是给自己留一个今后修改声卡时复习的资料,并且交流一下自制声卡驱动的注意事项,不足请高手补充。


ALC662这款声卡在黑苹果上属于一款奇葩,相信很多使用这款声卡的朋友在安装黑苹果时被它伤过。而笔记本上的ALC662更是奇葩中的奇葩。AppleHDA Patcher(一款声卡驱动的自动补丁软件)直接不支持笔记本ALC662打补丁,Mirone大神制作的全款声卡驱动也没有笔记本的662驱动。真是让我们这些使用笔记本ALC662声卡的人郁闷不已。这都是因为alc662在不同笔记本上的ConfigData值差异较大,layoutXX.xml.zlib文件输出布置特殊,还有Platforms.xml.zlib中PathMap节点布置上在不同主板上基本不一样造成的。大神也不能做出适合所有机型主板的通用声卡驱动。


本人在开始自制笔记本ALC662声卡驱动时,参考了ezeerb提供的声卡,据说“均没问题,话筒、包括环境降噪也正常”,可用在我的老本华硕K40in上水土不服,外置耳机无声。于是在他提供的驱动上进行了部分修改。
按照仿冒声卡教程,需要修改的4个文件分别是:AppleHDA.kext/Contents/MacOS下的AppleHDA、AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents下面的Info.plist、AppleHDA.kext/Contents/Resources下的layoutXX.xml.zlib和Platforms.xml.zlib。(.xml.zlib文件需要解压才能编辑,编辑完压缩了再替换回去。layoutXX.xml.zlib中的XX可以自选AppleHDA.kext/Contents/Resources下已有的ID)
1、AppleHDA
未动ezeerb模版中的AppleHDA,因为同样是笔记本ALC662(台式机662也可不动)。
2、Info.plist
替换了模版中的ConfigData值(这个值请自行按照教程提取codec后整理,很简单的,主要是要细心)。另外ezeerb将ALC662的值设置在了16子项,别改错位置了(其实可以删除除了需要仿冒的声卡之外的子项,不知道为什么ezeerb没删)。并且,layout-id设置成了12,如果要配合dsdt使用,需要改layout-id键值为0x0C,0x00,0x00,0x00,也就是设置layout-id为12;如果配合HDAEnabler.kext使用,也需要修改HDAEnabler.kext中的Info.plist文件layout-id键值为0C000000。
3、layout12.xml.zlib
这个文件未动。模版中ALC662的配置是layout12.xml.zlib,与layout-id相对应。需要注意的是ezeerb将PathMapID设置为1,这个值要与Platforms.xml.zlib的PathMapID值一致,当然如果不喜欢1,可自行修改,注意一致就行。另外,这里笔记本中的内建麦克风是mic,外置麦克风是linein,内建扬声器是lineout,外置耳机是Headphone。其实个人认为,如果不使用,其他键值删除也没关系,比如这里的IntSpeaker、SPDIFOut。
4、Platforms.xml.zlib
这里需要注意的是修改节点成自己声卡对应的节点。比如k40in,模版使用时耳机无法使用主要就是因为外置耳机节点设置与改机型节点不一致。找节点请按照[教程] 台式机ALC892制作仿冒appleHDA的教程,前置MIC自动检测来,说得更详细。这里提一个简单的方法,找节点不用按1>2>3的方式,太麻烦,可以从两端开始更简单。比如输入节点:先找NODE节点在哪个节点之下,再直接搜索确定的节点,并查看下连接的,对得上就连起来。需要注意的是紫米说带*必选,但是在这个声卡必选带*的节点是错的,注意,在这个声卡带*必不选。还要注意PathMapID与layoutXX.xml.zlib中的保持一致。


提供按照模版改的k40in 10.10驱动


由于10.10的驱动对于我现在的10.10.5太老,虽然可以用,但总是不舒服,于是我自制了10.10.5的272.18.3版声卡驱动。
直接学习自制有难度,不过在已有模版上修改成功后,再自制的话就简单多了。
1、AppleHDA
这个文件必改,不能替换10.10版本或者其他版本的。谨记,不然做好的驱动无法使用算是好的,严重的话会开机五国,或者更严重的让你的声卡硬件出现问题。当然,出问题也不要紧。开机五国的话,双系统请在windows下删除放在SLE文件夹的AppleHDA.kext再重启;声卡硬件出问题的话,如在windows下也没有声音,设备管理器显示正常,请关机,拔掉外接电源和电池,长按开机键20秒以上,接上电源重启即可。PS:也不排除声卡完全损毁的可能,本人概不负责。
使用0xED打开AppleHDA(0xED下载及使用请使用论坛搜索),替换8408ec10为00000000,替换8508ec10为00000000,替换8419d411为6206ec10,保存,替换修改好的AppleHDA文件到原版声卡驱动中。需注意的是,论坛里很多教程和脚本已经不适用于10.10正式版以上的系统,请勿偷懒使用过期脚本,否则功亏一篑。还有一个教程,忘记是什么教程了,直接在终端用命令改10ec0885为10ec0662,实践证明是错误的,请勿照搬。
2、Info.plist
删除了多余子项,仅留下一个子项设置成k40in的ALC662键值。需要修改CodecID、 ConfigData、LayoutID,这个键值FuncGroup可以默认。名词不解释了,自己看教程。我设置的codecid就是声卡名16进制转换数值,比如662,声卡全称10ec0662,十六进制转化为十进制就是283903586。configdata自己从codec文件中提取。layoutid我设置的是笔记本常规数值3。也就是说对于懒的朋友,请直接下载[下载] [绝对搬运]10.10.4可用仿冒声卡驱动中的HDAEnabler3.kext.zip 配合使用,当然[下载] [搬运]最新桌面/笔记本ADI/ALC/CX/IDT/VIA声卡驱动AppleHDA 支持Yosemite10.10.3中的也可以,两个帖子的HDAEnablerX.kext是完全一样的。如果需要配合dsdt使用,按照教程添加代码即可。3、layout3.xml.zliblayout3.xml.zlib中的3与Info.plist设置的layoutid一致,同662笔记本可不修改。设备的布置基本与模版一致,设备布置在本文前面已经说明,不再重复。这里提一下MuteGPIO值,请按照serco76 [教程] 一步一步教你搞定仿冒声卡【针对新手】 对于MuteGPIO值的说明进行修改。这里我真对k40in的实际情况,添加Headphone的子健MuteGPIO值为0,mic和linein的MuteGPIO值我这里与模版一致未改。当然,我将PathMapID设置成了3,便于记忆。4、Platforms.xml.zlib删除了多余子项,仅留下一个子项设置成k40in ALC662的节点布置。老话,节点查找请根据悄悄呐喊 [教程] 台式机ALC892制作仿冒appleHDA的教程,前置MIC自动检测自己完成。这里说一下我的pathmap布置。我是按照先输入再输出,先内建再外设来布置的,各种装置都只有一个,再内建、外设下不需再分。所以,大概的分布是内建mic节点-外设mic节点-内建扬声器-外设耳机,要注意各个键值的从属关系,否则会导致内置音响无声、耳机无声等状况。
这里提供一下我自制的k40in 10.10.5驱动
其他k40in驱动请移步我另一个帖子[分享] 华硕老本k40in装完10.10.5之后的驱动(适合新手)说明一下,那一个帖子提到万能驱动与别人仿冒的声卡驱动一起用的效果,经检验,一般,并且原理经不起推敲。那个帖子的声卡驱动请忽略。

















zjwxyy1994 发表于 2016-2-24 14:36

我也来试试看行不行

知足者乐 发表于 2016-3-16 11:48

clover 引导你用没,和你一样的配置,最近在折腾clover

gc19880725 发表于 2016-3-16 13:34

知足者乐 发表于 2016-3-16 11:48 https://www.pcbeta.com/static/image/common/back.gif
clover 引导你用没,和你一样的配置,最近在折腾clover

没用过四叶草,一直用变色龙。

知足者乐 发表于 2016-3-16 14:23

gc19880725 发表于 2016-3-16 13:34 https://www.pcbeta.com/static/image/common/back.gif
没用过四叶草,一直用变色龙。

变色龙我几乎完美了,想折腾CLOVR,硬盘识别不了
页: [1]
查看完整版本: 笔记本ALC662声卡驱动修改时的注意事项