x86 ハードウェア上の Mac OS X 2008–2024 技術文献アーカイブ
InfiniteMac OSx86 › Snow Leopard 10.6 › Realtek ALC889a オンボード音源でアナログ5.1chサラウンドを有効化する完全ガイ…
497,008 reads · 2009-08-23 – 2010-05-25
導入ガイド Snow Leopard 10.6 DSDT ALC889a / Audio

Realtek ALC889a オンボード音源でアナログ5.1chサラウンドを有効化する完全ガイド(DSDT + AppleHDAパッチ)

DSDT内のAZALをHDEF(layout-id 12)へ書き換え、AppleHDAサブドライバのInfo.plist差し替えと「Audio MIDI設定」での機器セット構成を行うことで、Snow Leopard環境にてRealtek ALC889aの3系統アナログ出力による5.1chサラウンドを実現する手順。

筆頭著者
@Snow 公開日: 2009-08-23
収録コレクション
Snow Leopard 10.6
アーカイブ記録規模
累計閲覧 497,008 回 · 厳選フィールドノート 183 件(全 219 件の投稿より抽出) · 2009-08-23 – 2010-05-25
参加・検証メンバー (29)
@mormegil (57)@Gurruwiwi (53)@Snow (25)@ajacocks (13)@Elventanis (13)@terrorgen (7)@will1384 (7)@megavolkan (6)@Trograin (6)@monsieur.d (5)@X58-Agility (3)@CyCLoBoT (2)@vladrxpx (2)@hops (2)@MiniHack (2)@wind99 (2)+13 more
対応ハードウェア参照
Mac USB Audio DACs ↗ Workstation Coolers & Thermal Gear ↗ SATA III & NVMe SSDs ↗
日本語完訳・技術モノグラフ · ターミナルコマンド、Kext 名、ACPI ノード、ブート引数は原文のまま正確に保持しています英語原文を表示 (Original English) →

Snow Leopard(あるいはLeopardでも)で5.1chサラウンド出力を動作させている方はいらっしゃいませんか?
デジタル出力ではなく、背面のアナログ3端子を使った通常のサラウンド出力です。
もし成功している方がいれば、その方法(DSDTやKextなど)を共有していただけると幸いです。

追記:皆様のアドバイスのおかげで解決しました!特に Mormegil 氏には、丁寧なご指導とファイルの提供をいただき心から感謝します!

- 2009年9月14日追記:比較用として、あるいはそのままお使いのハードウェアで動作するかもしれない私自身の改造済みAppleHDA kextを公開しておきます。

media fire.com/?f0mmm25zrja

- 2009年9月8日追記:Mormegil 氏がLeopard用のAppleHDA kextをSnow Leopardへ移植するためのガイドを作成してくれました:How to port AppleHDA to SL →

- 2009年9月4日追記:同じALC889aユーザーの多くが悩んでいるようですので、私の環境でオーディオを完全に動作させるまでに踏んだ手順をまとめて公開したいと思います。もちろん、私の自作機の構成をベースにしたものです。

はじめに

まず以下のファイルを入手してください:

dsdt.amlを逆コンパイルするためのiaslme:media fire.com/?jnjrdtmfm3k
まだお持ちでない場合はKext Utility:media fire.com/?njgtzhzwm0j

比較参照用ファイル:

オーディオ修正前の私のdsdt.aml:media fire.com/?xm2yn2xguyo
オーディオ修正後の私のdsdt.aml:media fire.com/?zzgmmgmhdbo

根気強くサポートしてくれたMormegil氏に改めて敬意を表します!

PART I:DSDTのパッチ適用

- お使いの dsdt.aml ファイルをiaslmeのアイコンにドラッグ&ドロップし、dsdt.dsl ファイルに逆コンパイルします。
- テキストエディタで .dsl ファイルを開きます。
- Command + F で検索パネルを開き、「AZAL」と入力します。
- AZAL を HDEF に書き換えます。

私の環境での例:

変更前:

Notify (\_SB.PCI0.AZAL, 0x02)

変更後:

Notify (\_SB.PCI0.HDEF, 0x02)

- もう一度「AZAL」を検索すると、今度は「Device」の定義箇所が見つかるはずです(少なくとも私の環境ではそうでした)。

以下の記述を:

Device (AZAL)
            {
                Name (_ADR, 0x001B0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (Package (0x02)
                    {
                        0x0D, 
                        0x05
                    })
                }
            }

            Name (BUFA, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {3,4,5,6,7,9,10,11,12,14,15}
            })
            Name (BUFB, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {}
            })
            CreateWordField (BUFB, One, IRQV)
            Device (LNKA)
            {
                Name (_HID, EisaId ("PNP0C0F"))
                Name (_UID, One)
                Method (_STA, 0, NotSerialized)
                {
                    And (PIRA, 0x80, Local0)
                    If (LEqual (Local0, 0x80))
                    {
                        Return (0x09)
                    }
                    Else
                    {
                        Return (0x0B)
                    }
                }

                Method (_PRS, 0, NotSerialized)
                {
                    Return (BUFA)
                }

                Method (_DIS, 0, NotSerialized)
                {
                    Or (PIRA, 0x80, PIRA)
                }

                Method (_CRS, 0, NotSerialized)
                {
                    And (PIRA, 0x0F, Local0)
                    ShiftLeft (One, Local0, IRQV)
                    Return (BUFB)
                }

                Method (_SRS, 1, NotSerialized)
                {
                    CreateWordField (Arg0, One, IRQ1)
                    FindSetRightBit (IRQ1, Local0)
                    Decrement (Local0)
                    Store (Local0, PIRA)
                }
            }

次のように書き換えます:

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

            Name (BUFA, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {3,4,5,6,7,9,10,11,12,14,15}
            })
            Name (BUFB, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {}
            })
            CreateWordField (BUFB, One, IRQV)
            Device (LNKA)
            {
                Name (_HID, EisaId ("PNP0C0F"))
                Name (_UID, One)
                Method (_STA, 0, NotSerialized)
                {
                    And (PIRA, 0x80, Local0)
                    If (LEqual (Local0, 0x80))
                    {
                        Return (0x09)
                    }
                    Else
                    {
                        Return (0x0B)
                    }
                }

                Method (_PRS, 0, NotSerialized)
                {
                    Return (BUFA)
                }

                Method (_DIS, 0, NotSerialized)
                {
                    Or (PIRA, 0x80, PIRA)
                }

                Method (_CRS, 0, NotSerialized)
                {
                    And (PIRA, 0x0F, Local0)
                    ShiftLeft (One, Local0, IRQV)
                    Return (BUFB)
                }

                Method (_SRS, 1, NotSerialized)
                {
                    CreateWordField (Arg0, One, IRQ1)
                    FindSetRightBit (IRQ1, Local0)
                    Decrement (Local0)
                    Store (Local0, PIRA)
                }
            }

PART II:AppleHDAのパッチ適用

- /System/Library/Extensions から AppleHDA.kext をデスクトップにコピーします。
- kextを右クリックして「パッケージの内容を表示」を選び、Contents/PlugIns へ移動します。
- AppleHDAHardwareConfigDriver.kext を右クリックし、再度「パッケージの内容を表示」を選びます。
- Contents へ進み、中の Info.plist を以下のファイルで置き換えます(ドラッグ&ドロップして置き換えを確認するだけです)。

media fire.com/?rttltqjqxn4

PlugIns フォルダに戻り、今度は AppleHDAPlatformDriver.kext の「パッケージの内容を表示」を開きます。
Contents へ進み、中の Info.plist を以下のファイルで置き換えます。

media fire.com/?zhnmdm0izzy

- すべてのウインドウを閉じ、改造した AppleHDA.kext をKext Utilityのアイコンにドラッグ&ドロップします。
- 再起動後、念のためKext Utility、ターミナル、またはディスクユーティリティで再度アクセス権の修復を行ってください。
- もしSnow Leopardの挙動がおかしくなってカーネルパニック(KP)が発生する場合は、32ビットのセーフモード(-x -x32)で起動してからKext Utilityを実行してみてください。

これでオーディオが認識・動作するはずです。

PART III:5.1chサラウンドの設定

- Spotlightで「Audio MIDI設定」を検索して開きます。
- 左下の「+」ボタンをクリックします。
- 作成された機器セットの名前をダブルクリックし、「ALC889a」に変更します。
- 右側のパネルで、内蔵ライン出力の3つのストリームすべてにチェックを入れます。
- 音量を調整・補正するには、「ALC889a」を展開し、右側のタブにあるスライダを使って3つのライン出力をそれぞれ調整します:

私の記憶が確かなら、手元の環境ではすべて「-12dB」になっていました。

- 右下の「スピーカーを構成...」をクリックします。
- 「マルチチャンネル」タブを選択し、横のメニューから「5.1 サラウンド」を選びます。
- 上部のすべてのストリームを確認しながら、各チャンネルの割り当てを設定します(私の環境では、5と6を左リア・右リアに、3と4をセンターとサブウーファーにそれぞれ入れ替える必要がありました)。
- 下部のボタンで確定し、QuickTime Xで5.1chのムービーを再生してテストしてみてください。
- また、Perian(per ian.org/)をインストールし、Audio Outputを「Multi-Channel Output」に設定しておくとよいでしょう。

手順としては以上です。これですべて正常に動作するはずですが、もしうまくいかない場合は、システム構成が私の環境と大きく異なっているか、DSDTのパッチが正しく適用されていないか、あるいは途中の手順でミスがあった可能性があります。

健闘を祈ります!

おわりに

著者による追記・技術改訂履歴

筆頭著者による補足ディスパッチ:@Snow

著者追記 #1 @Snow 2009-08-24

ガイドを共有してくれてありがとう!ただ、自分が一番知りたいのはALC889aのアナログ出力で5.1chサラウンドが可能かどうかという点なんだ。
それが可能でない限り、オンボード音源を有効にするつもりはないんだよね。
もし無理なら、KXドライバが64ビット対応するのを待って、当面は手持ちのPreSonus 1394(ステレオ)を使うことにするよ。

著者追記 #2 @Snow 2009-08-25

ああ、なるほど、それは残念なニュースだな。手持ちのAudigy 2 ZS用のKXドライバなら5.1chに対応しているし、音質もALC889aよりずっと上なんだ。ただ64ビット対応にはまだかなり時間がかかりそうだから、ALC889aで5.1chを鳴らす方法を探し回っているというわけさ。

著者追記 #3 @Snow 2009-08-27

そいつは最高のニュースだ!

これ、自分のALC889aでもそのまま使えるかな?

必要なのはkextだけ?DSDTのパッチ適用や他のkextは不要?

それと、これは64ビット対応で間違いないよね?

著者追記 #4 @Snow 2009-08-27

ああ、ありがとう兄弟。自分のDSDTはPista氏(SleepEnablerの作者)にコンパイルしてもらったものだから、やっぱりDSDTのパッチ適用について自分で調べるしかなさそうだ。

ファイルと情報を本当にありがとう!さっそくガイドをチェックしてみるよ。

著者追記 #5 @Snow 2009-08-27

よし、ありがとう!明日これを試してみるよ。

また結果を報告するね。自分にとって唯一の問題はDSDTなんだ。なぜかiaslでうまくコンパイルできなくて(amlファイルすら出力されない)。

明日また取り組んでみるよ、みんな本当にありがとう!

著者追記 #6 @Snow 2009-08-28

よし、DSDTにDTGPのセクションを追加したら、無事にコンパイルできたよ。

再起動後、何度かカーネルパニック(KP)や起動失敗があったけれど、アクセス権とmkextを修復したらx64モードで起動できた。
ただ、3系統のライン出力は表示されて出力用の機器セットも作成できたのに、肝心の音がまったく出ないんだ。

誰か自分のdsdt.amlをチェックして再コンパイルしてくれないかな?

追記:うーん、やっぱりダメだ。OSx86で多少のことはこなせるつもりだけど、この領域は自分の手に負えない。自分がコードを書いていたら一生終わりそうにないよ(笑)。誰か適切なDSDTかAppleHDAをコンパイルしてくれるといいんだけど。
念のため、ALC889aのコーデックダンプ(自分のマシンで抽出したものではなく、どこかからダウンロードしたもの)も添付しておくよ。

著者追記 #7 @Snow 2009-08-28

なんてこった、もう一度試してみたらバックグラウンドで微かにノイズが聞こえた気がして、音量を少し上げてみたんだ(普段使っているPreSonusのFireWireインターフェースの方が元の出力レベルが高かったらしい)。そしたらちゃんと音が出たよ!完全に初心者の凡ミスだったな。

ともあれステレオ出力は動作しているようだから、5.1chサラウンドの結果についてはまた追って報告するよ。

著者追記 #8 @Snow 2009-08-28

よし、5.1chサラウンドもバッチリ動作したよ!ファイルと丁寧なアドバイスを本当にありがとう!

自分の環境では、ストリームの割り当てはこの設定が正解だったみたいだ。PinConfigurationsを少し書き換えればデフォルト設定のままでも正しく鳴るんだろうけど、実際にはこの構成の方が理にかなっていると思う。

著者追記 #9 @Snow 2009-08-28

デフォルト設定で並んでいるストリームのことだよ。自分の環境ではリアとセンター/サブウーファーを入れ替える必要があったんだ。

でも、3/4がリアで5/6がセンター/サブウーファーという並びの方が、むしろ自然で筋が通っているよね。

無音でゲームをするわけにもいかないから、Windows側のオーディオ設定もオンボードに戻しておかないとな。KXドライバの64ビット版がリリースされたら、またAudigy 2 ZSを試してみる「かも」しれないけれど、いっそ取り外してケース内のスペースを空けてしまうのもアリだね(笑)。

ちなみに、これをLeopardでも動かすには、単純にdsdt.amlと(AppleHDA内の)plistファイルを差し替えるだけでいいのかな?

あと、QuickTime Xで5.1chを鳴らす方法はある?それともやっぱりVLC Playerを使うしかない?

重ね重ねありがとう、リスペクト!

著者追記 #10 @Snow 2009-08-28

ちょっとした気づきだけど、やっぱり音量がかなり小さくて、ボリュームを相当上げないといけないんだ。あまり上げすぎるとノイズが乗ってしまう(アナログ接続なら仕方ないのかもしれないけれど)。

追記:なんと、この問題は「Audio MIDI設定」パネルで各ライン出力のdBを「0」に設定したらあっさり解決したよ!投稿する前にまず自分で解決策を探すべきだったね。5.1chが動いてちょっと舞い上がっていたみたいだ。

著者追記 #11 @Snow 2009-08-28

了解、昼食のあとにでも試してみるよ。

それと、QuickTimeでの5.1ch再生も、Perianのオーディオオプションを「Multi-Channel Output」に設定することできちんと解決したよ。
音の定位感もかなり良好だと付け加えておくね。

あともう一つ質問なんだけど、8800GTをboot.plistのEFI文字列ではなくDSDTに追加すると、何か違いはあるのかな?もしあるなら、どうやって記述すればいいんだろう?

ではまた後で!

追記:Leopard用のAppleHDAを共有してもいいかな?中に大量のコードが詰まっていて自分でいじって壊したくないから、修正をお願いできると助かるんだ。途中までは自分でも少し作業した気がするんだけど、よく覚えていなくてね。

著者追記 #12 @Snow 2009-09-03

エラーが出るとamlファイルが出力されないから、エラー有りのままではダメだよ。

DTGP関連のエラーかな?(ログを確認してみて)。もしそうなら、数ページ前に戻れば修正方法が載っているよ。

著者追記 #13 @Snow 2009-09-03

君のdslファイルを修正しようとしてみたんだけど、逆にエラーが6個に増えてしまったから、申し訳ないけど自分にはちょっと力になれそうにないな。

著者追記 #14 @Snow 2009-09-04

Gurru、簡単なガイドを追記しておいたから、もう一度手順通りに試して結果を教えてくれ。1ステップずつ進めてみて、もしガイド側で調整や補足が必要な箇所があれば知らせてほしい。

健闘を祈るよ!

著者追記 #15 @Snow 2009-09-04

ここはMormegil氏に腕を振るってもらうことにするよ(笑)。この分野に関しては彼の方が自分よりはるかに詳しいからね。

ところでMormy、一つ質問なんだけど、自分が書いたガイドは他の人たちの役にも立つかな?自分のパッチ適用前DSDTには最初から多くのコードが入っていたと言っていたけれど、他の人もあのセクションを丸ごと置き換えるだけでいいんだろうか?それともシステムごとに記述が異なるのかな?

@Gurru、あのセクション全体を丸ごと置き換えてみてくれ。ただ、最初の欠けているセクションについては自分にもちょっとわからないな。デバイスIDがないから、そのままでは動かないかもしれない。

ではまた!

著者追記 #16 @Snow 2009-09-06

ガイドにも書いてある通り、この手順はALC889a向けだし、同じALC889aでもうまくいかない人がいるくらいだから、残念ながら現時点ではお力になれそうにないんだ。
VM(仮想マシン)に関しては、自分は64ビット版Snow Leopard上のParallels 5で64ビット版Windows 7を動かしているけれど、まったく問題なく稼働しているよ(強いて言えば、気まぐれにAeroインターフェースが有効になったり無効になったりするくらいかな)。
VMが必要な理由だったConvertXtoDVDで動画を2本エンコードしてみたけれど、出力結果も完璧だったよ。

一応君のファイルも覗いてみるけれど、自分はこの辺りに関しては素人だから、期待はしないでくれよ。

64ビット版Snow Leopard上のParallels 5で64ビット版Windows 7を実行

著者追記 #17 @Snow 2009-09-08

うーん、誰の環境でもうまく動かないようだし、ガイドは削除した方がいいかもしれないな。あるいは、うまく動いた人はわざわざ事後報告をしてくれないだけなのかもしれないけれど。

Morm、どう思う?自分がガイドを載せて以来、まるで君に丸投げのフルタイムの仕事を増やしてしまったみたいで申し訳ないよ。

著者追記 #18 @Snow 2009-09-08

その通りだ、Mormegilski!

以下のスライダを調整すればいいんだね:

ガイドの方にも追記しておいたよ。

著者追記 #19 @Snow 2009-09-09 ↳ Re: @terrorgen
@terrorgenああ……キーボードから直接音量調整できる快適さが失われてしまった……

まったくだね!

幸い、自分は有線の手元ボリューム/バスコントローラ付きのCreative T5400スピーカーを使っているから、キーボード側の音量調整がなくても困らないけどね。

著者追記 #20 @Snow 2009-09-14 ↳ Re: @Cee
@CeeどなたかこのAppleHDA.kextを再アップロードしていただけませんか?4台のマシン(Mac 3台、PC 1台)で解凍を試みましたが、すべて失敗してしまいました。

media fire.com/?f0mmm25zrja

著者追記 #21 @Snow 2009-09-14

悪いけどそこは力になれないな。自分はマイクを使っていないんだ、すまない。

著者追記 #22 @Snow 2009-09-15 ↳ Re: @Cee
@CeeどなたかこのAppleHDA.kextを再アップロードしていただけませんか?4台のマシン(Mac 3台、PC 1台)で解凍を試みましたが、すべて失敗してしまいました。

おっと、誰か「自分の」AppleHDA.kextをアップロードしてくれないか、という頼みだと勘違いしていたよ。

自分がアップしたのはALC889a専用のものなんだ。紛らわしくてすまない。

コミュニティ検証報告・技術フィールドノート

全 219 件のオリジナル投稿から技術的価値の高い 183 件の検証報告を収録

検証ノート #1 @vista00 2009-08-23

DSDTを修正してオーディオを追加するための興味深いガイドがあります。ぜひ参考にしてみてください:
media fire.com/?sharekey=dd89f674cb6ef1d6d6baebe61b361f7c8fd90959baf93af1c95965eaa7bc68bc

検証ノート #2 @DocShadow 2009-08-24

ふむふむ……かなり詳しく書かれていますね。

以前DSDTへのHDEFパッチ適用を試したときはうまくいかなかったのですが、今回はこちらの方法を試してうまくいくか見てみようと思います。

情報共有ありがとうございます。

検証ノート #3 @mormegil 2009-08-25

本物のMac実機はアナログ5.1chオーディオをサポートしていないと思うので、基本的にはデジタル出力を使うしかないのではないでしょうか。

私の環境では、こちらのガイドを使ってオンボードのALC888を動作させました:http://www.projectosx.com/forum/index.php?showtopic=465… ↗

今のところフロントアナログ出力、デジタル出力、マイク、ライン入力が動作しています。スピーカーはZ-5500システムを使っているのでこれで十分満足です。AC3/DTS音声のHD映画も問題なく視聴できています。

検証ノート #4 @mormegil 2009-08-25

ええ、手持ちのX-FiにはKXドライバのサポートがないのが本当に残念です。もし対応していれば、わざわざオンボード音源をいじったりしなかったんですけどね。このマザーボードを買ってから一度もBIOSでオンボード音源を有効にしたことがなかったのですが、正直なところデジタル出力の音質の良さにはかなり驚かされました。

検証ノート #5 @mormegil 2009-08-27

先ほどの発言を撤回します。オンボードのALC888で完全なアナログ5.1ch出力を動作させることに成功しました!

1. AppleHDA.kext を調整し、3つのライン出力(緑、黒、オレンジ)を認識させる
2. 「Audio MIDI設定」を起動する
3. 新しい「機器セット(Aggregate Device)」を追加する
4. 3つのライン出力に対応する3つのチェックボックスにチェックを入れる
5. 「スピーカーを構成...」をクリックする
6. 3つのストリームすべてを選択する
7. マルチチャンネルの「5.1 サラウンド」を選択する
8. すべてのチャンネルが正しくマッピングされていることを確認する
9. 「システム環境設定」>「サウンド」の出力先として、作成した「機器セット」を選択する
10. 完了!

参考までに、私が改造した AppleHDA.kext を添付しておきます。

検証ノート #6 @mormegil 2009-08-27

ALC889aはピン構成(PinConfigurations)が異なるかもしれないので、そのまま動くかはわかりません。ただ、お使いのコーデックはOS XがネイティブサポートしているALC885の派生モデル(バリアント)のようですから、バイナリパッチを行う必要はないはずです。

HDAEnablerやオーディオインジェクタ類も不要です。DSDTにオーディオインジェクション用のパッチを当てるだけで構いません。あとは以下の2つのplistファイルを編集します:

AppleHDA.kext/Contents/Plugins/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist
AppleHDA.kext/Contents/Plugins/AppleHDAPlatformDriver.kext/Contents/Info.plist

先ほどリンクを貼ったTHe KiNG氏のガイドを確認してみてください。ご自身でも作業できるはずです。念のため、お使いのコーデック(ALC885 アドレス3)向けに軽く編集したものを用意しました。それぞれファイル名を Info.plist にリネームして、対応する各kext内にコピーしてください。

もちろん、Snow Leopard ビルド10A432に付属していたオリジナルの AppleHDA.kext をベースにしているので、64ビット環境でも問題なく動作します。

検証ノート #8 @wwbsox 2009-08-27

DSDTがコンパイルできない件について

@snow... iaslmeでどのようなエラーが出ていますか?もし _WAK、Local0、あるいは DTGP 関連のエラーであれば、DSDT内の適切な場所にそれらのメソッドを追加することで解決できます。私の場合は、Windows上でACPI Patcherを使い、DSDTにパッチを当てる際にそれらのオプションにチェックを入れるだけの方が簡単でした。

それはそうと、今週末はDSDT内でいくつか異なるPinConfigurationsを試してみて、DSDTだけで5.1ch出力が可能かどうか検証してみるつもりです。

検証ノート #9 @mormegil 2009-08-27

最初、DSDT側に自分のPinConfigurationsを書き込んでいたときはなかなかうまく動作しませんでした。しかしガイドを読んでみて、それはそもそも必須ではないことがわかりました。どのみちplist側のPinConfigurationsによって上書きされるためです。以下が私の dsdt.dsl 内のHDEFコードです:

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}

                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }
検証ノート #10 @mormegil 2009-08-28

システムプロファイラと「システム環境設定」>「サウンド」ではどのように表示されていますか?機器セット(Aggregate Device)を組む前の段階で、個別の出力ポートからそれぞれ音は出ていますか?

検証ノート #11 @mormegil 2009-08-28

うまく動作して何よりです。ところで「デフォルト設定」というのはどういう意味でしょうか?

検証ノート #12 @mormegil 2009-08-28

ああ、なるほど。私の環境でも同じ現象が起きました。どういうわけかデフォルトの状態ではチャンネルが正しくマッピングされないんですよね。

はい、dsdt.aml はLeopardでもそのまま流用できますが、10.5.8では古いバージョンのドライバが使われているため AppleHDA 自体はそのまま使い回せません。
AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist
こちらには LayoutID 12 の ConfigData をコピー&ペーストしてください。

AppleHDA.kext/Contents/PlugIns/AppleHDAPlatformDriver.kext/Contents/Info.plist
こちらには Layouts 配下に LayoutID 12 のブロックを、PathMaps 配下に PathMapID 9 のブロックをそれぞれコピー&ペーストしてください。

検証ノート #13 @Gurruwiwi 2009-09-01

このスレッドをずっと追いかけていたのですが、どうしてもお力をお借りしたい事態に陥っています!

私も同じく

検証ノート #14 @Gurruwiwi 2009-09-01

このスレッドをずっと追いかけていたのですが、どうしてもお力をお借りしたい事態に陥っています!

私のマシンもALC889aを搭載しています。

Chameleon 2 RC1を使用してSnow Leopard(10A432)をインストールしており、残すところオーディオとSDカードリーダーさえ動けば完璧という状態です。

参考になりそうな経緯を少し説明させてください。

先週ノートPC用に新しいHDDを購入し、SLを8〜10回以上クリーンインストールし直したのですが、やればやるほどKP(カーネルパニック)が頻発するようになりました。日曜日にようやくそのHDD自体が不良品だと気づきました。まともにフォーマットすらできなくなったのです。ただ、週末の試行錯誤の間にビデオ文字列(EFI String)やAHCIなどの動作検証はかなり進められましたし、最初の数回のトライではオーディオも完璧に動作していたのです!S/PDIFなども含め、内蔵マイクこそ使えませんでしたが外部マイクは正常に機能しており、自分としてはそれで十分すぎるほど満足でした。
さらにサブウーファーもしっかり機能していて、音楽再生時の低音も豊かに出ていました。「Audio MIDI設定」の存在は今になって初めて知ったため当時は触ってすらいませんでしたが(単なるMIDI機器接続用の設定画面だと思っていました!)、音質は極めてクリアで音量も十分、クリックノイズやポップノイズも皆無でした。

ところがその後システムが壊れて再インストールを余儀なくされ、ドライブ自体も寿命を迎えました。トラブル続きだったため、何かがうまく動いたときには将来用にバックアップを取るようにしていたのですが、このときはその暇もなく「warmd」関連のKPでクラッシュしてしまいました。恒久的なKPに陥る前のわずかな時間で焦って作業していたため、ダウンロードフォルダの中身もごちゃ混ぜになってしまい、結局どのkextを使ったのか確かな記憶がありません。ただ、大量のドライバをホストしているelectro氏のWindows Live SkyDriveから入手した AppleAzalia kextだったような強い予感がしています。そして日曜日にドライブの故障に気づき、フォーマットすらできなくなった次第です。

cid-8b65993ef55cf014.skydrive.li ve.com/browse.aspx/.Public/OSx86/Snow%20Leopard/Drivers%20kext%20|5Sterowniki|6/==%20%20Sound%20|5d%C5%BAwi%C4%99k|6%20==?view=details

リストの一番上にある「ALC883 (Azalia)」というタイトルのファイルか、あるいは最新版のVoodooHDAのどれかがサウンドカードを目覚めさせたのだと思います(深夜で疲れ果てていたため記憶が曖昧です)。

そこで新品のHDDに交換し、SLをクリーンインストールしました。グラフィックス、Ethernet、Webカメラ、Bluetooth、ICH9Mはすべて動作し、smbios.plist もMacBook Pro 5,1相当に編集して、システム自体は極めて安定しています!

これはルート(/)にも /Extra にも dsdt.aml を置いていない状態(置いた場合も同様)です。

昨日は丸5時間、ひたすら以下の作業を繰り返していました……

/E/E にオーディオ用kext (X) を入れる → アクセス権を修復し、-v 付きで再起動してログを凝視する
/S/L/E にオーディオ用kext (X) を入れる → アクセス権を修復し、-v 付きで再起動してログを凝視する

ここでの (X) は、見つけられる限りのあらゆる64ビットSL対応オーディオkextです!

しかし結果は全滅。システムプロファイラには(バニラの AppleHDA.kext から)以下のように表示されるだけです:

Device ID:	0x10250146
  Audio ID:	0

このDevice IDが他の皆さんのものと異なっている点に注目してください!

ここまでは10.5.7で使っていた dsdt.aml をルートにも /Extra にも置いていなかったため、両方の場所にコピーしてから、再びすべてのkextについてインストール・修復・再起動の手順を繰り返してみました。

すると他のkextではすべて以下のように表示されました:

DEVICE ID: 0x1458A002

Audio IDの表示はなく、この1行だけです。

さすがに心が折れかけて一旦Ethernetの設定に移り、そちらを無事に認識させた後、別のVoodooHDAを試してみたところ……なんと突然音が出たのです!何千万回とkextを試した末に、前触れもなくいきなりです!マイク入力や外部マイクは使えませんでしたが(環境設定には「Mic」が表示されていました)、/S/L/E にインストールした状態で、バニラのAppleHDAも残っていたと思います。システムプロファイラの表示は上記と同じままでしたが、確かに音は鳴っていました!

「やった!」と喜んで、システムをバニラ状態に保つためにそのkextを /Extra/Extensions に移動し、すぐにバックアップを取ろうとしたのです。

ところが再起動すると音が出ません。同じkextを /S/L/E に戻してみても……やっぱり音が出ないのです!一体どうなっているのでしょうか!?

ほとんどのkextは詳細ブート(Verbose)中に動作している気配すら見せません。/E/E に入れて試したいくつかのkextは依存関係(dependencies)のエラーを吐きますが、/S/L/E に入れると今度は詳細ブート中に何の反応も示さなくなります。

一体何が起きているのでしょうか?さっきまで動いていたkextが次の瞬間には動かなくなるなんてことがあるでしょうか?もちろんアクセス権の修復などは毎回確実に行っています。

原則としてバニラのAppleHDAは削除すべきなのでしょうか?(一応削除も試しました)

また、dsdt.aml は使用すべきでしょうか?(DSDTのパッチ適用は見るからに複雑そうでまだ手を出せていません!)

さらに何より腑に落ちないのは、SLのUSBインストーラから起動してシステムプロファイラを開くと、以下のように表示されることです:

 Device ID:  0x1458A022
             Audio ID:   12

            Available Devices:
            Internal Microphone:
                 Connection: Internal
            Speaker:
                 Connection Internal
            External Microphone:
                 Connection: 1/8-inch Jack 

手元の lspci 情報は以下の通りです:

(ICH9 Family) HD Audio Controller [8086:293e] (rev 03) 00:1c.0 PCI bridge [0604]: Intel Corporation 82801I

DSDTパッチのルートに進むべきなのかもしれませんが、以前DSDTなしで音が鳴った実績があるだけに、なぜSLがここまで気難しくなっているのか理解できません。DSDTのパッチ適用は未経験で、コードを見るだけでも気後れしてしまいます。
バニラのAppleHDAで起動すると、詳細ブート時に以下のメッセージが表示されます:

よく見ると sound assertion "0" と出ているのですが、これは Audio ID: 0 と関係があるのでしょうか?

以前音が出たことがあるのに、なぜDSDTパッチが必要になるのでしょうか……。

長文を読んでいただきありがとうございます。できるだけ多くの情報を共有しておきたかった次第です。

検証ノート #15 @Gurruwiwi 2009-09-01

THe KiNG氏のチュートリアルを一通り試してみたのですが……

最初のステップからつまずきました。GraphvizがSnow Leopardにインストールできません。

検証ノート #16 @mormegil 2009-09-01

簡単ですよ。

私がSnow Leopard用に作成した2つのplistを(先にリネームしてから)お使いのSLのAppleHDA内に挿入するか、

あるいは

こちら ↗へアクセスしてください。tmongkol氏の統合plist、いわゆる LegacyHDA.kext を使うのが一番手っ取り早いはずです。2009年8月6日付の最新パッケージを探してみてください。お使いのオーディオチップセットについてはすでに非常に充実したドキュメントが存在するため、わざわざTHe KiNG氏のチュートリアルを最初から辿る必要はありません。

次のステップはDSDTです。こちらもさほど複雑ではありません。同じくtmongkol氏の投稿にfassl氏作のDSDT Patcherへのリンクがあります。それを一度実行すれば dsdt.aml が生成されます。

逆コンパイルします:

iasl -d dsdt.aml

dsdt.dsl にHDEFコードを挿入し、
再コンパイルします:

iasl -ta dsdt.dsl
検証ノート #17 @CyCLoBoT 2009-09-02

ようやく手元のEP45-DQ6マザーボードでサウンドが鳴るようになったのですが、左右のスピーカーで片方だけ音が大きく出ていることに気づきました。使用しているのは2.1chスピーカーです。どなたか似たような現象に遭遇した方はいらっしゃいますか?

検証ノート #18 @Gurruwiwi 2009-09-03

Mormegilさん、

助言ありがとうございます!

あらゆる手を尽くしてみましたが、どうしても動きません。ようやく安定して完全に動作するSL環境を構築できたのに、オーディオだけが鳴らない状態です。ほんの2日前、kextの実験を始めたばかりの頃は綺麗に鳴っていただけに、苛立ちもひとしおです。

DSDT Patcher GUI 1.02を使い、「Force compile」と「New HPET」を指定して新しい dsdt.aml を生成しました。

そこから dsdt.dsl ファイルを取り出しました。

いくつかのガイドに従ってみようとしたのですが、たとえば「AZALを検索してHDEFに置き換える」とあっても、私のDSDTにはAZALのエントリ自体が存在しません。また「このコードをあの部分に上書きコピーする」とあっても、必要な既存コードを消さずにどこからどこまでを上書きすればいいのか判断がつかないのです。

さらに別の問題もあります。あるガイドを参考にコードエントリの置換を1箇所行い、テストしてみようと dsdt.dsl を保存して iaslMe.app にかけたのですが、出力されたはずの .aml ファイルがどこにも見当たりません。ログには正常に完了したように書かれており、エラーが1件(1 Errors)出ていますが(これは問題ないのでしょうか?)、肝心の dsdt.aml ファイルが出力されないのです。ちなみに .dsl ファイルを生成する際には同じアプリで問題なく動作しました。

恐れ入りますが、一度ファイルを見ていただけないでしょうか?

検証ノート #19 @mormegil 2009-09-03

エントリが存在しない場合は、自分でコードを挿入する必要があります。私の環境でも同じでした。Device (PCI0) の配下(つまりそのサブセット)に入るように、Device (HDEF) のコードブロック全体を丸ごとコピー&ペーストしてください。THe KiNG氏のガイドをもう一度読み返してみてください。

検証ノート #20 @Gurruwiwi 2009-09-03

皆さん、

少しだけ進展がありましたが、まだ解決には至っていません。

HDEF配下の記述をすべてTHe KiNG氏のチュートリアルPDFと完全に同じになるよう書き換えました。

1行ずつ3〜4回は確認しました。dsdt.dsl を保存してiaslMeにドラッグ&ドロップすると、以下のように表示されます:

Copyright (C) 2000 - 2008 Intel Corporation
Supports ACPI Specification Revision 3.0a

/Users/bigbang/Desktop/DSDT dsl to aml/dsdt.dsl  9592: [*** iASL: Read error on source code temp file /Users/bigbang/Desktop/DSDT dsl to aml/Sessions/2009-09-03-125900/dsdt.src ***]
Error    4095 -         syntax error, unexpected $end ^ 

ASL Input:  /Users/bigbang/Desktop/DSDT dsl to aml/dsdt.dsl - 9593 lines, 326239 bytes, 4052 keywords
Compilation complete. 1 Errors, 0 Warnings, 0 Remarks, 0 Optimizations

        All done.
        Enjoy ...
 

しかし、「Sessions」ディレクトリ内に生成されているファイルは log.txt だけで、中身は以下の通りです:

Intel ACPI Component Architecture
ASL Optimizing Compiler version 20080926 [Oct  4 2008]
Copyright (C) 2000 - 2008 Intel Corporation
Supports ACPI Specification Revision 3.0a

/Users/bigbang/Desktop/DSDT dsl to aml/dsdt.dsl  9592: [*** iASL: Read error on source code temp file /Users/bigbang/Desktop/DSDT dsl to aml/Sessions/2009-09-03-125900/dsdt.src ***]
Error    4095 -         syntax error, unexpected $end ^ 

ASL Input:  /Users/bigbang/Desktop/DSDT dsl to aml/dsdt.dsl - 9593 lines, 326239 bytes, 4052 keywords
Compilation complete. 1 Errors, 0 Warnings, 0 Remarks, 0 Optimizations

一体どこが間違っているのでしょうか?

コードをコピーした dsdt.dsl を添付します……

検証ノート #21 @mormegil 2009-09-03

強制コンパイル(force compile)を行い、警告(Warnings)は無視しました。エラー(Errors)はすべて修正してあります。

検証ノート #22 @Gurruwiwi 2009-09-03

Snowさん、Mormegilさん、ありがとうございます!……ただ、システムが壊れてしまいました。

dsdt.aml をルートにコピーして再起動したところ、ブート途中(-v のみ指定)でAppleHDAがカーネルパニックを起こしました。

もう一度詳細ブート(Verbose)で再起動すると、今度はKPは起きず、AppleHDAが「assertion 0」のエラーコードを吐きながらもデスクトップまで到達しました。しかしデスクトップに入った直後、「warmd」のKPが発生しました。その直前に確認できた範囲では、システムプロファイラ上で Device ID: 0x10250146、Audio ID: 12 となっており、すべてのポートが表示されていました。

LeopardやSLのインストール画面段階では、以下のように表示されます:

DEVICE ID: 0x1458A002
Audio ID: 12

これが何かの手がかりになるかもしれません。

ともかく、もう一度再起動を試みたところ、画面が一旦暗転してデスクトップが表示されるタイミングで、黒画面と青画面が5秒間隔で交互に点滅し続け、そこから先に進まなくなってしまいました。以前SLのインストールで失敗したときと全く同じ症状です。
Leopard側から起動し、SLのドライブを外付けケースに入れてルートから dsdt.aml を削除し、強制電源オフによるファイルシステム破損がないかディスクの検証も行いましたが、ドライブ自体に異常はありませんでした。
その後SLを -x、-x32、-x -x32 で再起動してみましたが……まったく同じ症状のままです。
つまり、インストール環境自体が壊れてしまいました。ベースイメージのバックアップを取っておいて本当に良かったです!
私が最初にアップロードした1つ目と2つ目のdslファイルは、THe KiNG氏の最初のチュートリアルに従ってHDEFエントリのすぐ下だけを少し編集してみたもので、それ以外の場所には怖くて手を出していませんでした。

この投稿に、GUI Patcher 1.02で強制コンパイルとnewHPETを適用して生成した直後の、未編集のファイルをアップロードしておきます。

なぜこのDSDTファイルでインストール環境が壊れてしまったのでしょうか?しかもファイルを削除した後までSLがおかしくなったままなのは一体なぜなのでしょうか?
もう一度クローンを復元して、クリーンな状態でこの dsdt.aml を試してみるつもりですが……
グラフィックスについては com.apple.Boot.plist にEFI文字列(gfx string)を入れていますし、DSDT側ではグラフィックス関連は一切触っていません。以前にもこの黒画面と青画面の点滅症状が出たことがあり、どうやって復旧すればいいのかわからず困っています。

何か心当たりはありますか?

検証ノート #23 @mormegil 2009-09-03

DSDTが原因ではないと思います。おそらくお使いのグラフィックス用EFI文字列(gfx string)に問題があるのではないでしょうか。Leopardで問題なく動作していたEFI文字列が、Snow Leopardでは必ずしもうまく機能しないケースがあると聞いたことがあります。ところで、plistはこのスレッドで私が投稿したものを使っていますよね?Info.plist にリネームして元のファイルと差し替え、アクセス権の修復なども行いましたか?

検証ノート #24 @Gurruwiwi 2009-09-03

先ほど復元したばかりの新しいSL環境から書き込んでいます。

私のgfx stringは、追加のkextを一切使わずにSL上で毎回問題なく動作していました。新しいDSDTを適用した直後にだけおかしくなったのです。

ただ、提供していただいた Info.plist を組み込む際、正しいベースのAppleHDAを使えていたかあまり自信がありません。まずはDSDTによる変化を確認するために一旦起動してみて、そのあと正しいAppleHDAを試そうと考えていたのですが、DSDTをコピーしただけのときにアクセス権の修復を行っていませんでした。

そこでSLに戻り、バニラのAppleHDAを改造して、コンパイルしていただいた dsdt.aml に差し替えてテストしてみます。

もしよろしければ、私が添付した未編集の dsdt.dsl を修正して再コンパイルしていただけると本当に助かります。自分で書き換えた箇所にエラーの元になるようなミスがないか不安なので、見ていただければずっと安心して試せます。

ひとまずそれまでの間、クリーンなバニラ環境で今いただいたDSDTの互換性をチェックしてみます。

本当にありがとうございます!

追記:

やった!再起動しても壊れませんでした! —— 音はまだ出ませんが、少なくともAudio IDが0ではなく「12」と表示されるようになりました。詳細ブート中にはオーディオkextに関する表示は出ていません。いただいたplistを使ってAppleHDAを改造してみましたが、次は3ページ目にあったALC889a向けにパッチ済みの1.7.1a2を試してみます。

追記2:ダメでした、全く同じ結果です。システム環境設定には相変わらずオーディオデバイスが一つも表示されず、詳細ブート時にも警告すら出ません。Legacy kextというのは中身がplistだけのものですよね?次はバニラHDAとLegacy kextの組み合わせを試してきます……。

検証ノート #25 @mormegil 2009-09-03

tmongkol氏のLegacy kextを使用する場合は、必ず中のplistを編集して、すべての「LayoutID」の値を「12」に書き換えてください。HDAEnablerは不要です。

検証ノート #26 @Gurruwiwi 2009-09-03

何度もすみません……またLeopardに戻ってきました。別の組み合わせを試したところKPが発生し、修復しようとすると必ず「repair package」スレッドでパニックを起こすようになってしまい、完全に詰んでしまいました。Kext Utilityも試して3回目のブートでようやくKPなしに完了したものの、Snow Leopard環境は起動不能になってしまいました。

またフォーマットとリストアからやり直しです。ただ、すべてのデバイスがマッピングされて表示されるところまでは行きました!どうやらマッピングされたデバイス一覧が表示される段階まで進むと、Snow LeopardがKPを起こして死んでしまうようです。

もう一度最初からやり直します。あと一歩のところまで来ているはずです。確認ですが、試すべき組み合わせは「MormegilさんのDSDT + Legacy kext(HDAEnablerなし)+ バニラのAppleHDA」で間違いないでしょうか?

検証ノート #27 @vladrxpx 2009-09-03

私もGA-P35-DS3Rを使用しています。

Snow Leopardをインストールし、他の機能はすべて動作しているのですが、サウンドだけが鳴りません。オーディオの入力デバイスも出力デバイスも一切認識されていない状態です。

これを解決するためにどの方向から手をつければよいか、ご教示いただけないでしょうか?

検証ノート #28 @Gurruwiwi 2009-09-03

もちろん、まさにこのスレッドの最初の投稿(#1)に書いてありますよ。記載されている手順はすでに試されましたか?

検証ノート #29 @Gurruwiwi 2009-09-03

Mormegilさん、

クリーンインストールし直し、いただいたDSDT、バニラのAppleHDA、そしてLegacyHDA kextを導入しました。これでシステムプロファイラ上にすべてのデバイスが表示されるようになりました:

Intel High Definition Audio:

Device ID: 0x10250146
Audio ID: 12
Available Devices:
Internal Microphone:
Connection: Internal
Speaker:
Connection: Internal
External Microphone:
Connection: 1/8-Inch Jack

しかし、まだ音が出ません。LayoutIDを編集しなかった場合もまったく同じ結果でした。

plist内のLayoutIDのいくつかは「889」になっていましたが、これらもすべて「12」に変更すべきなのでしょうか?(一応すべて12に変更して試しました)。

検証ノート #30 @Gurruwiwi 2009-09-04

素晴らしいガイドをありがとう!

質問なんだけど、つまりLegacy kext類は一切不要ということかな?

さっそく自分のDSDTをもう一度見直してくるよ!

Show 153 additional community field notes (#31–#183)
Field Note #31 @mormegil 2009-09-04

So you downloaded tmongkol's legacy kext. There should be a few in the package. Only choose one. Then, edit all LayoutID's from 889 or 885 to 12.

Field Note #32 @Gurruwiwi 2009-09-04

Yes, I have, I only tried the 3out2in HDA and analog for 889 and 885.

And yeah, one at the time, since they are all named the same

Once I tried all layouID's ( "0", "65647 something", and "889"'s)

In Snow's dsl he has two HDEF entires, I only have one.

Where he reads

Method (_L0D, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.USBE, 0x02)
            Notify (\_SB.PCI0.USE2, 0x02)
            Notify (\_SB.PWRB, 0x02)
            Notify (\_SB.PCI0.HDEF, 0x02)

I have;

Method (_L0D, 0, NotSerialized)
        {
        }

The other entry is exactly the same

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

So should I copy this in and recomplie?

And should I try with or without legacy?

(In the donwloaded tutorial folder containing the legacy kext archives, there is an HDAenabler there...)

Field Note #33 @mormegil 2009-09-04

Your dsdt is fine. Don't touch it anymore. Make sure to change ALL LayoutIDs! Or just use the plists I made and you don't have to change anything.

Edit: I meant all LayoutID so long as they're 889 or 885. This confusion can be totally avoided to be honest if tmongkol hadn't messed up with layoutid's to make it look "good". It only changes the number in Sys Profile. Thats the number 12 you see btw.

Field Note #34 @Gurruwiwi 2009-09-04

I tried that!

I just found out something.

In Snow's file he has

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

            Name (BUFA, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {3,4,5,6,7,9,10,11,12,14,15}
            })
            Name (BUFB, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {}
            })
            CreateWordField (BUFB, One, IRQV)
            Device (LNKA)
            {
                Name (_HID, EisaId ("PNP0C0F"))
                Name (_UID, One)
                Method (_STA, 0, NotSerialized)
                {
                    And (PIRA, 0x80, Local0)
                    If (LEqual (Local0, 0x80))
                    {
                        Return (0x09)
                    }
                    Else
                    {
                        Return (0x0B)
                    }
                }

                Method (_PRS, 0, NotSerialized)
                {
                    Return (BUFA)
                }

                Method (_DIS, 0, NotSerialized)
                {
                    Or (PIRA, 0x80, PIRA)
                }

                Method (_CRS, 0, NotSerialized)
                {
                    And (PIRA, 0x0F, Local0)
                    ShiftLeft (One, Local0, IRQV)
                    Return (BUFB)
                }

                Method (_SRS, 1, NotSerialized)
                {
                    CreateWordField (Arg0, One, IRQ1)
                    FindSetRightBit (IRQ1, Local0)
                    Decrement (Local0)
                    Store (Local0, PIRA)
                }
            }

While I only have

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

I seem to be missing alot of code! And what about the first entry I seem to be missing too?

Are you sure mormegil?

Field Note #35 @mormegil 2009-09-04

That's because those code were there originally in his stock dsdt while yours didn't. Just like mine.

Field Note #36 @mormegil 2009-09-04

If you can see the ports in SysProf and still no sound, then your configdata is correct but your pathmaps are not right. You might have a different variant of the same codec. Are you on a laptop? You sure your codec is 889a (885 address 3)?

Field Note #37 @mormegil 2009-09-04

It's fine since you're showing before and after injecting the code. It just shows the important fact that dsdt is system specific and just blindly adding code into it will result in compilation errors etc.

Field Note #38 @Gurruwiwi 2009-09-04

Yup, check it out.

First I'll try mormegil's compile with patched AppleHDA.

For learning sake, I tried to copy Snow's entry code, but I cant recompile no matter what

I am sure its a .dsl file, it outputs one error, says done, but no aml to be found. Lust be missing something... back to testing

off to try plist into vanilla HDA

Field Note #39 @Gurruwiwi 2009-09-04

Yep, laptop here,

I did follow Snow's tutorial in the first page, if I patch vanilla AppleHDA, I loose system profiler devices.

Just tripled checked with google, and linux folk normally take no prisoners...

laps pecs.com/wiki/acer+aspire+6935g#sound

Sound

Sound Controller Realtek ALC889A High Definition Audio
Speakers 2 plus Subwoofer
Internal Microphone Yes
Headphone Port Yes
Microphone Port Yes
Line In Port Yes
S/PDIF In Port No
S/PDIF Out Port Yes, shared with headphone out

I wished there were karma point in this forum, you guys certainly deserve it!

Field Note #40 @mormegil 2009-09-04

Think I know what's wrong. Just checked the plists I made for Snow and the legacy kexts. Turns out they are for different codecs! Both are 889a but the former is address 3 and the latter is address 2. You need to be certain first which of the two is yours. I've made 2 sets now.

SL 889a 1.7.4 AppleHDA plists:

Field Note #41 @Gurruwiwi 2009-09-04

Dudes!

Just found out more relevant info.

Check this out...

patched with address 3, no verbose message, system profiler looses ports.

patched with address 2, assertion "0" errors in boot, sys profiler shows 1 digital port

Then I saw that the plist mormegil provided had different icons. One is plain white, the other has image. I open the ones that have image with text edit, select save as, name in info.plist and UNCHECK the box that says "If no extension is provided name .txt"

Now this makes a blanc icon plist. I checked, and before it was not .txt, but icon different.

Re-patch address 3 plists, repair, reboot, first boot KP with AppleHDA dependancies, second boot assertion "0", no sound but system profiler does show all ports! This is the first non-vanilla kext that does this! Well done.

Still no sound, but one step closer!

Field Note #42 @mormegil 2009-09-04

Since you're on a lappy, the only way to properly write your own plists is to create your own codec dump in linux or find one on the internet. Try searching acer laptop forums for example.

The thing is, all the codec dumps we've been using are those for desktop models. Which means 4 analog outs, 2 analog ins at the back and possibly digital ins/outs too. Plus internal ports for connecting to the front connector. Your laptop definitely do not have all these ports and so your layout/pathmaps might be different. So which set is showing all ports correctly in Sys Prof?

Field Note #43 @Gurruwiwi 2009-09-04

What if a port shares 2 connection?

I'll look for my codec dump.

UPDATE: I found this, possible codec dump. The susbsytem is 0x10250146 which maches what my system profiler Device ID number.

its for the same chip, and from a close acer model to mine. Is this the sort of thing you need? never seen a codec dump before. I'll keep searching for my exact dump, it must be around.

Tried posting code, too long. here is the link.

74.125.39.104/search?q=cache:VoaIl_R4ekkJ:pastebin.ca/raw/1027475+Vendor+Id:+0x10ec0889+Subsystem+Id:+0x10250146&hl=de&ct=clnk&cd=1

Field Note #44 @Gurruwiwi 2009-09-04

Ok, I think this might do it.

A codec dump for acer 6920g -
00:1b.0 0403: 8086:284b (rev 03)

and has the same DeviceID / sybsystem as me.

Mormegil, up for some more of your black magic? :

And if you show me how, I'll be glad to take it from there... but this one HAS to work damn it ! The specs are almost identical to my model !

Field Note #45 @mormegil 2009-09-04

If you're certain it matches yours, just go through King's guide. He'll guide you step by step. You will understand things more clearly by reading it.

Field Note #46 @Gurruwiwi 2009-09-04

forgot to upload dump...

I'm at work now, so I'll only be able to try later on.

Field Note #47 @mormegil 2009-09-04

Ahh! You have a true 889 codec as opposed to the fake 889 (renamed 885). All the above plists are useless for you then. Also, your pinconfig are different as I expected and you might have to hex edit your binary.

Field Note #48 @mormegil 2009-09-04

Try this out

SL 1.7.4 AppleHDA.kext for acer 6920g alc889:

Field Note #49 @Gurruwiwi 2009-09-04

Back to no Audio devices listed.

So far, only vanilla AppleHDA and patched with the first two plist you did for Snow (which I guess are the one he updated the first post with) wake up the ports...

isnt this just frustrating

Field Note #50 @mormegil 2009-09-04

Sorry. Nothing much I can do if I don't have your actual codec dump. Will be much easier if we put the guessing out of the picture.

Field Note #51 @Gurruwiwi 2009-09-04

aaaarggg...

tried dumping with voodoohdahelper..

got "dylib" error, which I know I fixed before, fixed it again, ran the dump again, no dylib errors but still

error: IORegistryEntryGetPath returned 0x10000003

I cant find my wifiway linux distro anywhere, so back to google for now...

Why wont voodoo work for me ?

EDIT: Hey ! I found a cool little app that assists in extracting and patching DSDT, containing LOADS of fixes... check it out

osx 86.es/?p=610

english below spanish section

Field Note #52 @mormegil 2009-09-04

Try this:

AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist/IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault/10/ConfigData

Change ALL the first HEX value to 3. For example 21871C40 to 31871C40.

If that doesnt work, try 0. For example 21871C40 to 01871C40.

Field Note #53 @Gurruwiwi 2009-09-04

I certainly will !

But I just tried that app and copied in the HDEF fix, and for the first time EVER I managed to compile a DSDT.aml, zero errors ! (first mpart exactly like you did, second with the missing code that Snow has and I dont that I "complained" about before")

Look what turned up.

Let me just reboot back with vanilla then Voodoo...

Field Note #54 @Gurruwiwi 2009-09-04

New dsdt with both your address 2 and 3 patch bring back "your dsdt" mappings, except audio ID read 889 not 12.

What do you say, keep trying this new dsdt or the one you made?

going to attempt your latest suggestions on your address 2 patched kext...

Field Note #55 @Gurruwiwi 2009-09-04

Mormegil, sorry, got confused. trying to follow your path... after info.plist, I open with text edit and only find

<key>CFBundleVersion</key>
	<string>1.7.4a1</string>
	<key>IOKitPersonalities</key>
	<dict>
		<key>HDA Platform Resource</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleHDAPlatformDriver</string>
			<key>CommonPeripheralDSP</key>
			<array>
				<dict>

Slighty confused, because I cannot find the rest you mention

Field Note #56 @mormegil 2009-09-04

Sorry. I've fixed the path. And use my dsdt pls. The one you created is useless. I know it shows up all nice in Sys Prof but you're basically telling it what to show on the screen. I doubt you really have all that ports on your laptop. Showing up in Sound Preferences is all that matters.

ps. that dsdt app is bloody awesome!

Field Note #57 @vladrxpx 2009-09-05

thnx for the guide !

one question..
I've made a mistake and installed VoodooHDA kext.. sound wokrs..but, microphone doesn't.. being its a beta version of the kext..

is there a way to delete this kext, and do it all over again? (setting up audio) and how do i remove already installed kext ?

thnx !

Field Note #58 @Gurruwiwi 2009-09-05

Delete the kext from folder, then go to spotlight and write "disk utility", choose system drive and click Repair Permissions.

Field Note #59 @CyCLoBoT 2009-09-05

I followed the steps on Page 1 but I noticed that I have more sound coming out of one speaker than the other. I only have 2 speakers an a subwoofer. Does that sound normal or am I doing something wrong with getting the ALC889a to work?

Field Note #60 @Gurruwiwi 2009-09-05

Morm,

Tried both with 3 and 0... just to double check, mind taking a look if I did it right?

back no audio devices listed is system profiler.

because your path still confuses me (yep, read your PM). You seen, inside the plist, ther is no "/HDAConfigDefault/10/ConfigData"

take a look... I went and changed all hex to start with zero in this one, all the way to the bottom.

I noticed some had minus signs before them, this one doesnt becaus I just did it to show you, I replaced S/L/E with vanilla so I had to do it again quick to show you

This is the "0" one

string>????</string>
	<key>CFBundleVersion</key>
	<string>1.7.4a1</string>
	<key>IOKitPersonalities</key>
	<dict>
		<key>HDA Hardware Config Resource</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleHDAHardwareConfigDriver</string>
			<key>HDAConfigDefault</key>
			<array>
				<dict>
					<key>AFGLowPowerState</key>
					<data>
					AwAAAA==
					</data>
					<key>CodecID</key>
					<integer>083904133</integer>
					<key>ConfigData</key>
					<data>
					AYccQAGHHXABhx4hAYcfAQGnHDABpx0BAace
					EwGnH5ABlxwQAZcdMQGXHoEBlx8BAVccUAFX
					HUEBVx4BAVcfAQH3HCAB9x3hAfcexQH3HwEB
					5xxgAecd4QHnHkUB5x8BAUcc8AFHHQABRx4A
					AUcfQAFnHPABZx0AAWceAAFnH0ABdxzwAXcd
					AAF3HgABdx9AAbcc8AG3HQABtx4AAbcfQAHH
					HPABxx0AAcceAAHHH0AB1xzwAdcdAAHXHgAB
					1x9A
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>0</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>0206496384</integer>
					<key>ConfigData</key>
					<data>
					ALccQAC3HXAAtx4hALcfAQDHHDAAxx0BAMce
					EwDHH5AA9xwQAPcdMAD3HoEA9x8BAKccUACn
					HUAApx4BAKcfAQEXHCABFx3gARcexQEXHwEB
					BxxgAQcd4AEHHkUBBx8BANccDwDXHQAA1x4A
					ANcfQADnHA8A5x0AAOceAADnH0ABVxwPAVcd
					AAFXHgABVx9AAbccDwG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>0</integer>
				</dict>
				<dict>
					<key>Codec</key>
					<string>Cirrus Logic CS4206</string>
					<key>CodecID</key>
					<integer>069697542</integer>
					<key>ConfigData</key>
					<data>
					ABcgAAAXIQAAFyJrABcjEACXHFAAlx1wAJce
					IQCXHwEApxxBAKcdYQCnHhAApx+QALccQAC3
					HWEAtx4QALcfkADHHCAAxx0BAMcegQDHH5EA
					1xwQANcdAQDXHqAA1x+QAOcc8ADnHQAA5x4A
					AOcfQAD3HDAA9x0BAPcexQD3HwEBBxxgAQcd
					AQEHHkUBBx8BAScc8AEnHQABJx4AAScfQAFX
					HPABVx0AAVceAAFXH0A=
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>0</integer>
				</dict>
				<dict>
					<key>Codec</key>
					<string>Wolfson WM8800</string>
					<key>CodecID</key>
					<integer>051708928</integer>
					<key>ConfigData</key>
					<data>
					ABcgAAAXIQAAFyIAABcjAAEXHFABFx1AARce
					KwEXHwEBJxxAAScdAQEnHhABJx+QATccQQE3
					HQEBNx4QATcfkADXHBAA1x0BANceoADXH5AA
					xxwgAMcdMADHHosAxx8BAPccYAD3HeAA9x5L
					APcfAQEHHDABBx3gAQceywEHHwEA5xzwAOcd
					AADnHgAA5x9AAWcc8AFnHQABZx4AAWcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>0</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
					oAC3H5AAxxxAAMcdAQDHHhAAxx+QANcc8ADX
					HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
					9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
					AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>2</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
					oAC3H5AAxxxAAMcdAQDHHhAAxx+QANccQQDX
					HQEA1x4QANcfkADnHPAA5x0AAOceAADnH0AA
					9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
					AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>4</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccQACnHUAApx4rAKcfAQC3HBAAtx0BALce
					oAC3H5AAxxwwAMcdAQDHHhAAxx+QANcc8ADX
					HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
					9xwgAPcdMAD3HosA9x8BAQccUAEHHeABBx5L
					AQcfAQEXHPABFx0AARceAAEXH0ABVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>6</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccQACnHUAApx4rAKcfAQC3HBAAtx0BALce
					oAC3H5AAxxwwAMcdAQDHHhAAxx+QANcc8ADX
					HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
					9xwgAPcdMAD3HosA9x8BAQccUAEHHeABBx5L
					AQcfAQEXHPABFx0AARceAAEXH0ABVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>7</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>-0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccQACnHUAApx4rAKcfAQC3HPAAtx0AALce
					AAC3H0AAxxwwAMcdAQDHHhAAxx+QANcc8ADX
					HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
					9xwQAPcdMAD3HosA9x8BAQccUAEHHeABBx5L
					AQcfAQEXHCABFx3gARceywEXHwEBVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>8</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>-0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
					oAC3H5AAxxxAAMcdAQDHHhAAxx+QANccQQDX
					HQEA1x4QANcfkADnHPAA5x0AAOceAADnH0AA
					9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
					AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>10</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>083904133</integer>
					<key>ConfigData</key>
					<data>
					AZcdMAH3HeE=
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>12</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>-0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
					oAC3H5AAxxxAAMcdAQDHHhAAxx+QANcc8ADX
					HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
					9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
					AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>14</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>-0088470912</integer>
					<key>ConfigData</key>
					<data>
					AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
					oAC3H5AAxxxAAMcdAQDHHhAAxx+QANcc8ADX
					HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
					9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
					AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
					AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>15</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>083904133</integer>
					<key>ConfigData</key>
					<data>
					AUcc8AFHHQABRx4AAUcfQAFXHDABVx1AAVce
					AAFXHwEBZxzwAWcdAAFnHgABZx9AAXcc8AF3
					HQABdx4AAXcfQAGHHBABhx1AAYceIAGHHwEB
					lxwgAZcdMAGXHoABlx8BAaccUAGnHQEBpx4Q
					AacfkAG3HPABtx0AAbceAAG3H0ABxxzwAccd
					AAHHHgABxx9AAdcc8AHXHQAB1x4AAdcfQAHn
					HHAB5x3gAeceRQHnHwEB9xxgAfcd4AH3HsUB
					9x8B
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>36</integer>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>083904133</integer>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>63</integer>
					<key>MikeyAFGLowPowerState</key>
					<data>
					AQAAAA==
					</data>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>083904133</integer>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>64</integer>
					<key>MikeyAFGLowPowerState</key>
					<data>
					AQAAAA==
					</data>
				</dict>
				<dict>
					<key>CodecID</key>
					<integer>069697542</integer>
					<key>ConfigData</key>
					<data>
					AMcdMA==
					</data>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>77</integer>
				</dict>
				<dict>
					<key>AFGLowPowerState</key>
					<data>
					AwAAAA==
					</data>
					<key>CodecID</key>
					<integer>069697542</integer>
					<key>FuncGroup</key>
					<integer>1</integer>
					<key>LayoutID</key>
					<integer>06392</integer>
				</dict>
			</array>
			<key>IOClass</key>
			<string>AppleHDAHardwareConfigDriver</string>
			<key>IOMatchCategory</key>
			<string>AppleHDAHardwareConfigDriver</string>
			<key>IOProviderClass</key>
			<string>AppleHDAHardwareConfigDriverLoader</string>
			<key>PostConstructionInitialization</key>
			<array>
				<dict>
					<key>CodecID</key>
					<integer>083904133</integer>
					<key>Layouts</key>
					<array>
						<integer>36</integer>
						<integer>38</integer>
						<integer>52</integer>
						<integer>53</integer>
					</array>
					<key>widgets</key>
					<array>
						<dict>
							<key>MicAttributes</key>
							<integer>28</integer>
							<key>MicInfo</key>
							<string>Sampled on rising edge</string>
							<key>NodeID</key>
							<integer>39</integer>
							<key>PinConfigDefault</key>
							<integer>2426405136</integer>
						</dict>
					</array>
				</dict>
				<dict>
					<key>Codec</key>
					<string>Cirrus Logic CS4206</string>
					<key>CodecID</key>
					<integer>069697542</integer>
					<key>Layouts</key>
					<array>
						<integer>0</integer>
					</array>
					<key>widgets</key>
					<array>
						<dict>
							<key>NodeID</key>
							<integer>22</integer>
							<key>PinConfigDefault</key>
							<integer>2073742064</integer>
						</dict>
					</array>
				</dict>
				<dict>
					<key>Codec</key>
					<string>Wolfson WM8800</string>
					<key>CodecID</key>
					<integer>051708928</integer>
					<key>Layouts</key>
					<array>
						<integer>67</integer>
						<integer>73</integer>
					</array>
					<key>widgets</key>
					<array>
						<dict>
							<key>MicInfo</key>
							<string>WM8800 External Microphone Virtual Pin Complex</string>
							<key>NodeID</key>
							<integer>24</integer>
							<key>PinConfigDefault</key>
							<integer>08020848</integer>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
	</dict>
	<key>OSBundleCompatibleVersion</key>
	<string>1.0.0d1</string>
Field Note #61 @megavolkan 2009-09-05

Thanks for the guide, i have sound output now but input doesn't work. I can use my mic on leopard on the same input jack (red one) but on snow leo i've tried all ports on the board. None have worked.

My board is GA EP45-DQ6

Is there anyone have a solution for this?

Field Note #62 @mormegil 2009-09-05
<dict> <key>CodecID</key> <integer>083904133</integer> <key>ConfigData</key> <data> AZcdMAH3HeE= </data> <key>FuncGroup</key> <integer>1</integer> <key>LayoutID</key> <integer>12</integer> </dict>

You only need to change this part since your layoutid in dsdt is set to 12. All other layouts can be deleted if you want to. Do it to the patched kext I made! Not the vanilla.

And change ConfigData, not CodecID. Use PlistEditPro (cid-8b65993ef55cf014.skydrive.li ve.com/browse.aspx/.Public/OSx86/Snow%20Leopard/Applications%20for%20OSx86%20%7C5aplikacje%7C6?view=details) to edit plists. ConfigData should be in the form 21871C40 21871D90 … Not "AZcdMAH3HeE=" like you see above.

Field Note #63 @Gurruwiwi 2009-09-05

AAAAAH !

Got it ! Plist editor is a MUST ! thanks for the tip! Rebooting with "0" them "3"... be right back

Field Note #64 @Gurruwiwi 2009-09-05

Sooooooooo close...

MORM !

"3" did nothing but...

"0" DID ! (weird, but...)

During verbose boot it trigger double the errors assertion"0"

I have different port mapping in sys profiler (my system spec precisely!) , but I now have options in system preferences and audio icon displays there is sound!

One unknown mapped output

But there isnt any sound looool ! nothing... I'm x32 now, will try 64, then boot into linux to try to get dump.

You ROCK !

Field Note #65 @Gurruwiwi 2009-09-05

:-& F*CK man...

I just rebooted into x64, nothing, back to normal port mapping, no sound.

So I wanted to aggregate device (never done it, wanted to try and see), so I reboot into x32

GONE ! nothing, just like before... nothing in system preferences...

What is going on?

Field Note #66 @mormegil 2009-09-05

Ah finally it worked I had to manually do your ConfigData from scratch using the codec dump you linked. Glad I did everything right. All ports properly mapped and all.

Booting into x64 has nothing to do with dsdt or applehda.

and btw, the unknown output might be your HDMI audio

Field Note #67 @Gurruwiwi 2009-09-05

Right, but I have NO SOUND !

Plus, I went into a linux live CD, got the dumps, reboot x32 and now the mapping is again different showing only digital out, and again nothing in system prefenrences.

anyways, here is the dump.

used

cat /proc/asound/card0/codec#2 > ~/Desktop/code_dump2.txt

because codec 1 brought back only

Codec: LSI ID 1040
Address: 1
Vendor Id: 0x11c11040
Subsystem Id: 0x10250146
Revision Id: 0x100200
Modem Function Group: 0x1
Field Note #68 @mormegil 2009-09-05

You've got it once. I take it the problem is solved. Just retrace your steps.

That's only the hdmi portion btw. Try codec0.

Field Note #69 @Gurruwiwi 2009-09-05

Man, I did nothing except normal reboot ...

I go get the codecs

Field Note #70 @ajacocks 2009-09-06

Just like others here, I'm trying to fix a silent 10.6 machine. My machine is a Clevo M570RU-U, with an ICH8M, and a Realtek 883 codec. I've been through TheKing's procedure to create a patched AppleHDA.kext, adapted to Snow Leopard with the excellent information in this thread. The machine runs 10.6 32bit, since I need functional VMware Fusion.

I tried the easy solution of VoodooHDA.kext, but that does nothing for me, and 'voodoohelper -dump' returns the 'error: IORegistryEntryGetPath returned 0x10000003' error that indicates that Voodoo HDA found no devices functional.

My issue is that I don't see any audio devices, in System Profiler, and, of course, there are no input or output devices available under System Preferences/Sound. This machine never ran 10.5, so I don't have exiting functional codecs to work from.

I am attaching the source for my dsdt.aml, and all the items that were necessary to follow TheKing's document, and the resultant Info.plist files. I'm also attaching the codec dumps. Last, I'm attaching a screen capture from my System Profiler, Audio section.

If anyone has time, and is willing to take a look, it would be greatly appreciated.

Field Note #71 @mormegil 2009-09-06 ↳ Re: @Gurruwiwi
@GurruwiwiMan, I did nothing except normal reboot ... I go get the codecs

The prob might be with codec address (the leading hex that I asked you to change). One time it works with 3 and next it works with 0. Try this:

/* Sample */ "ConfigData", Buffer (0xA0) { /* 0000 */ 0x21, 0x87, 0x1c, 0x40, 0x21, 0x87, 0x1d, 0x90, /* 0008 */ 0x21, 0x87, 0x1e, 0xA1, 0x21, 0x87, 0x1f, 0x01, /* 0010 */ 0x21, 0x97, 0x1c, 0x50, 0x21, 0x97, 0x1d, 0x90, /* 0018 */ 0x21, 0x97, 0x1e, 0xA1, 0x21, 0x97, 0x1f, 0x02, /* 0020 */ 0x21, 0xa7, 0x1c, 0x60, 0x21, 0xa7, 0x1d,…

Insert it in your dsdt above "layout-id". It's for my codec (alc888). You'll have to convert your "ConfigData" in plist into it. Just separate them into bytes and add "0x" in front.

Example: 21871c40 -> 0x21, 0x87, 0x1c, 0x40

Also

Buffer (0xA0)

needs to be changed. Mine has a total of 160 bytes if you count above. So 160 (decimal) = A0 (hex)

Lastly

Method (_DSM, 4, NotSerialized) { Store (Package (0x08)

Increase the size "0x08" if you're getting compile error.

What this does is hopefully set your codec address in dsdt so it stays fixed. Try codec address 0 thru 3 and report back.

Field Note #72 @mormegil 2009-09-06

@: ajacocks

Why are your kexts empty?

Your codec 10ec0883 is not natively supported. You'll have to patch the AppleHDA binary. You want to replace a supported codec such as 10ec0885 (alc885,889a).

So open up the AppleHDA binary in AppleHDA.kext/Contents/MacOS with hex edit.

Search for "8508ec10" (byte-flip of "10ec0885") and replace with "8308ec10" (byte-flip of "10ec0883").
There should be 4 instances in the SL kext.

Field Note #73 @Gurruwiwi 2009-09-06

Holy sh...

Ok, off to work on that right now!

EDIT: LOL.. morm, I just booted into SL to start editing DSDT again, did nothing at all except pop in the SL HDD, no sound, but audio is fully mapped, and present in system preferences, active audio icon in taskbar !

Tried playing around with agg.devices... no sound. Seems the built in audio's master volume is completely down and greyed out.

Going to try to edit that hex in, hope I do it right...

Field Note #74 @mormegil 2009-09-06

If they are in sound pref then there should be sound! Have you tried plugging a headphone or mic to test? Internal speakers might be too soft to hear.

edit: My master volume in aggregate device is also greyed out for every port. Doesn't really matter.

Field Note #75 @Gurruwiwi 2009-09-06

Quick question. Do I just copy the one you pasted into my dsdt then modify ConfigData to match it, or the other way around?

Field Note #76 @ajacocks 2009-09-06

mormegil,

Ahhh...thanks for filling me in, about the codec. Is there nothing else that needs doing, to patch the codec, other than changing the identifier from 10ec0885 to 10ec0883? That seems very simple. I'll give that a shot, though, and see what happens.

EDIT: No luck with the edited codec, either. I think something's wrong with my DSDT.aml, though, since the System Profiler still shows no device information, as in that picture that I uploaded. Do you see anything that I missed?

My kexts aren't really empty, I just left out everything but the Info.plist files, to save space in the upload. I have uploaded my entire AppleHDA.kext file, attached to this post. How do my changes look? I used layout 12, as the guide suggested.

Field Note #77 @mormegil 2009-09-06

@ Gurruwiwi

Doesn't matter. As long as it appears as above but with your configdata instead.

@ ajacocks

You seem to be doing fine with King's guide. I see all the required files in your attached package.
Once you're done patching the binary, you'll have to fix the plists. Your codec id in decimal should be changed to 283904131.
Your dsdt is fine. All it does is inject your audio. As long as you see an audio device in Sys Profiler it's all good.

Edit: I just saw the pic u uploaded. It's supposed to be that way if you haven't got the working plists.

Field Note #78 @Gurruwiwi 2009-09-06

Morm, while I was waiting I ran a small test. I think it can be useful for others to know, to not judge a KP on its own.

I cyclically rebooted in verbose, changing nothing. There is a sort of a pattern.

First reboot from "mapped - sound- but no audio heard" status

- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- 1x set of "Assertion "0"" errors during boot - no mapping
- 1x set of "Assertion "0"" errors during boot - no mapping
- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 1x set of "Assertion "0"" errors during boot - no mapping
- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound

Seems something is being re-set... could it be a similar CMOS reset bug?

Going to try the DSDT and ConfigData, just waiting for your input as it looks like a hell of a lot of work...

EDIT: You posted while I was typing. Going to try it now.

Forgot to mention. When audio is mapped, I tried plugging in headphones and microfphone. Mic does nothing, but headphone makes system profiler hang. It does seem to try switching devices, but nothing happens. Beach ball spins round, OS stops responding, have to force quit profiler, but it struggles to do it. Once removed it manages to force quit, and OS response is back

Field Note #79 @ajacocks 2009-09-06

OK, I made all the changes, mormegil, to AppleHDA.kext, including replacing 8508ec10 with 8308ec10. However, I still have no sound.

I noticed something interesting in my system.log, though:

9/6/09 11:11:55 AM com.apple.kextd[10] Can't load /System/Library/Extensions/AppleHDA.kext - no code for running kernel's architecture.
9/6/09 11:11:55 AM com.apple.kextd[10] Failed to load /System/Library/Extensions/AppleHDA.kext - (libkern/kext) requested architecture/executable not found.
9/6/09 11:11:55 AM com.apple.kextd[10] Load com.apple.driver.AppleHDA failed; removing personalities.

That's rather odd. I never changed any executables in the .kext file. Any idea what's going on, here? I'm running 32bit 10.6.

EDIT: I replaced AppleHDA.kext from my 10.6 install DVD, and that error went away. The failed sound assertions are back, of course, since this is a stock kext. I'm going to try putting the Info.plist files back, first, then hex editing the AppleHDA file, to see which broke it.

Field Note #80 @mormegil 2009-09-06

That applehda.kext you posted earlier. Is that patched or not? and why do you have info.plist in root of AppleHDAHardwareConfigDriver.kext/AppleHDAPlatformDriver.kext? It shdn't be there. Should be under Contents.

Field Note #81 @Gurruwiwi 2009-09-06

Ok

got my configdata to text pad, then copied to dsdt format, had to add 4 lines from your quote above, so I just followed the line numbering. Could that imply I need a higher hex "buffer" values, if mine is 4 lines longer its not going to be 160byte. How to calculate this and transform to hex value?

Mind taking a look to see if I did it right? Plus, when you say "above layout-id", you did mean after right?

Tried recompiling, got 27 errors!

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x08)
                        {
                            "layout-id", 
                            Buffer (0xA0)
{
/* 0000 */ 0x01, 0x87, 0x1c, 0x40, 0x01, 0x87, 0x1d, 0x90, 
/* 0008 */ 0x01, 0x87, 0x1e, 0xA1, 0x01, 0x87, 0x1f, 0x02,
/* 0010 */ 0x01, 0x97, 0x1c, 0x50, 0x01, 0x97, 0x1d, 0x11,
/* 0018 */ 0x01, 0x97, 0x1e, 0x11, 0x01, 0x97, 0x1f, 0x41,
/* 0020 */ 0x01, 0xa7, 0x1c, 0x60, 0x01, 0xa7, 0x1d, 0x30,
/* 0028 */ 0x01, 0xa7, 0x1e, 0x81, 0x01, 0xa7, 0x1f, 0x02,
/* 0030 */ 0x01, 0xb7, 0x1c, 0x70, 0x01, 0xb7, 0x1d, 0x11,
/* 0038 */ 0x01, 0xb7, 0x1e, 0x11, 0x01, 0xb7, 0x1f, 0x41,
/* 0040 */ 0x01, 0x47, 0x1c, 0x10, 0x01, 0x47, 0x1d, 0x01,
/* 0048 */ 0x01, 0x47, 0x1e, 0x13, 0x01, 0x47, 0x1f, 0x99,
/* 0050 */ 0x01, 0x57, 0x1c, 0x20, 0x01, 0x57, 0x1d, 0x10,
/* 0058 */ 0x01, 0x57, 0x1e, 0x21, 0x01, 0x57, 0x1f, 0x02,
/* 0060 */ 0x01, 0x67, 0x1c, 0x30, 0x01, 0x67, 0x1d, 0x11, 
/* 0068 */ 0x01, 0x67, 0x1e, 0x11, 0x01, 0x67, 0x1f, 0x41, 
/* 0070 */ 0x01, 0x77, 0x1c, 0x80, 0x01, 0x77, 0x1d, 0x11, 
/* 0078 */ 0x01, 0x77, 0x1e, 0x11, 0x01, 0x77, 0x1f, 0x41, 
/* 0080 */ 0x01, 0xe7, 0x1c, 0x90, 0x01, 0xe7, 0x1d, 0x11,
/* 0088 */ 0x01, 0xe7, 0x1e, 0x45, 0x01, 0xe7, 0x1f, 0x02,
/* 0090 */ 0x01, 0xf7, 0x1c, 0xa0, 0x01, 0xf7, 0x1d, 0x11,
/* 0098 */ 0x01, 0xf7, 0x1e, 0x11, 0x01, 0xf7, 0x1f, 0x41,
/* 0100 */ 0x01, 0x27, 0x1c, 0xb0, 0x01, 0x27, 0x1d, 0x01, 
/* 0108 */ 0x01, 0x27, 0x1e, 0xA3, 0x01, 0x27, 0x1f, 0x99,
/* 0110 */ 0x01, 0x17, 0x1c, 0xc0, 0x01, 0x17, 0x1d, 0x11,
/* 0118 */ 0x01, 0x17, 0x1e, 0x56, 0x01, 0x17, 0x1f, 0x18
},
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }
Field Note #82 @ajacocks 2009-09-06

Mormegil,

Thanks for taking so much time to help me.

I went back, and fixed the locations of the Info.plist files, and re-hexedited the AppleHDA file. I now get the AppleHDA.kext to load, but I get the following exceptions in my system.log:

9/6/09 11:42:27 AM kernel Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
9/6/09 11:42:27 AM kernel Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit

I'll update this post, in a second, with the Info.plist files replaced with the ones that you sent me. What did you change?

Attached is the appleHDA.kext that caused those assertions to fail.

Field Note #83 @mormegil 2009-09-06

@ Gurru

Read again what I wrote. What you have done is completely replace your layoutid with your configdata. I said copy the WHOLE code into your dsdt. Not replace stuff. Wheres the "ConfigData" header?

Looks like I have to do everything for you then:

Device (HDEF) { Name (_ADR, 0x001B0000) Method (_DSM, 4, NotSerialized) { Store (Package (0x0B) { "layout-id", Buffer (0x04) { 0x0C, 0x00, 0x00, 0x00 }, "ConfigData", Buffer (0xC0) { /* 0000 */ 0x01, 0x87, 0x1c, 0x40, 0x01, 0x87, 0x1d, 0x90, /* 0008 */ 0x01, 0x87, 0x1e, 0xA1, 0x01, 0x87, 0x1f, 0x02, /* 0010 */ 0x01, 0x97, 0x1c, 0x50,…
Field Note #84 @ajacocks 2009-09-06

Mormegil,

AAH...I see what you mean about the misplaced Info.plist file in AppleHDAPlatform. I must have typoed a replacement, at some point. Anyway, I replaced those Info.plist files with the ones that you sent, and rebooted. I still get those assertion failures.

Attached current AppleHDA.kext file.

Field Note #85 @Gurruwiwi 2009-09-06 ↳ Re: @mormegil
@mormegil@ Gurruwiwi Doesn't matter. As long as it appears as above but with your configdata instead.

Morm, please bear with me... this is all brand new territory for me.

I did ask you precisely that, and you replied the quote above!

Ok... so I copy exactly what you pasted into my dsdt
Question: Did I place it right like my example above?

Then do what with configdata? Right now it reads like this; its the "0" mod I made. from yesterday that woke up the right port mapping

01871C40 01871D90 01871EA1 01871F02 01971C50 01971D11 01971E11 01971F41 01A71C60 01A71D30 01A71E81 01A71F02 01B71C70 01B71D11 01B71E11 01B71F41 01471C10 01471D01 01471E13 01471F99 01571C20 01571D10 01571E21 01571F02 01671C30 01671D11 01671E11 01671F41 01771C80 01771D11 01771E11 01771F41 01E71C90 01E71D11 01E71E45 01E71F02 01F71CA0 01F71D11 01F71E11 01F71F41 01271CB0 01271D01 01271EA3 01271F99 01171CC0 01171D11 01171E56 01171F18 

Today is the day man, it has to be! :

And I am learning like hell with you, I dont want you to do everything for me, I'm loving this experience! I'll surely pass this on to the little league, leaving you big boys to plow away into new territory!

Field Note #86 @mormegil 2009-09-06

@ajacocks
Is your sound working?

@gurru
have you compiled yet? What configdata? in your plist?

Field Note #87 @Gurruwiwi 2009-09-06

Waiting for you input if the example above is correct. You say "place about layout-id" but I think you may have meant "below"

yes, that config data from info.plist inside applehda/AppleHDAHardwareConfigDriver/plist/etc etc

I assume that is the "configdata header" you asked for just now...?

Field Note #88 @Gurruwiwi 2009-09-06

Man, you last quote (dsdt correctly pasted by you) right now didnt load ! I only just saw it! Going to compile.

Field Note #89 @mormegil 2009-09-06 ↳ Re: @mormegil
@mormegilInsert it in your dsdt above "layout-id". It's for my codec (alc888). You'll have to convert your "ConfigData" in plist into it. Just separate them into bytes and add "0x" in front.

…

Field Note #90 @ajacocks 2009-09-06

mormegil,

No, my sound isn't working. I have no input and no output devices listed in the Audio part of System Preferences.

I also get those assertion failures that I pasted in, above, when a sound tries to play.

Thanks so much for continuing to help!

Field Note #91 @mormegil 2009-09-06 ↳ Re: @Gurruwiwi
@GurruwiwiWaiting for you input if the example above is correct. You say "place about layout-id" but I think you may have meant "below" yes, that config data from info.plist inside applehda/AppleHDAHardwareConfigDriver/plist/etc etc I assume that is the "configdata header" you asked for just now...?

I meant this:

"ConfigData", Buffer (…

from the code I pasted initially

Field Note #92 @mormegil 2009-09-06 ↳ Re: @ajacocks
@ajacocksmormegil, No, my sound isn't working. I have no input and no output devices listed in the Audio part of System Preferences. I also get those assertion failures that I pasted in, above, when a sound tries to play. Thanks so much for continuing to help!

Is the codec dump made by yourself or did you download it? You're on a lappy too yeah?

Field Note #93 @Gurruwiwi 2009-09-06 ↳ Re: @mormegil

Yes,... and you pasted BELOW layout-id..

Oh please, lets not make a big deal out of this... You know what you are doing, I dont! I'm just following your lead. I am your dsdt bitch right now

repalced the whole hdef section with what you asked. Does not recompile and produces 47 errors. Here is the log and the dsl file I made, and my "clean" dsdt.dsl

Field Note #94 @Gurruwiwi 2009-09-06

You'll be as famous as fassl and netkas man loool... this is a huge deal with many laptop alc889a !

Field Note #95 @mormegil 2009-09-06 ↳ Re: @Gurruwiwi
@GurruwiwiYes,... and you pasted BELOW layout-id.. Oh please, lets not make a big deal out of this... You know what you are doing, I dont! I'm just following your lead. I am your dsdt bitch right now repalced the whole hdef section with what you asked. Does not recompile and produces 47 errors. Here is the log and the dsl file I made, and my…

it's fine. no errors. only warnings which can be ignored.

Field Note #96 @Gurruwiwi 2009-09-06

But I cant compile, no output aml with iaslme app... tried 3 times

What about my codec dump, didnt you need it? Codec 0 was the right one

Field Note #97 @ajacocks 2009-09-06 ↳ Re: @mormegil
@mormegilIs the codec dump made by yourself or did you download it? You're on a lappy too yeah?

Yep, this is a laptop...a 17" desktop replacement. I made the codec dump myself, using a Ubuntu 9.04 x64 livecd, following TheKing's instructions.

Field Note #98 @mormegil 2009-09-06 ↳ Re: @ajacocks
@ajacocksYep, this is a laptop...a 17" desktop replacement. I made the codec dump myself, using a Ubuntu 9.04 x64 livecd, following TheKing's instructions.

try this set

Field Note #99 @ajacocks 2009-09-06

mormegil,

Thanks, but no luck that way, either:

9/6/09 3:09:51 PM kernel Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
9/6/09 3:09:51 PM kernel Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit

I did notice that System Profiler lists the audio device as ID 12. I'm assuming that came from my DSDT, but I hadn't noticed it. (attached picture)

Field Note #100 @Gurruwiwi 2009-09-06

You're having similar issues as me, same "goto" lines etc.

Going to try kings tutorial once more, now that I've got my correct codecs, but I always seem to have issues recompiling dsdt... Why wont iaslme let me recompile?

Field Note #101 @Gurruwiwi 2009-09-06

Morm,

Following Kings guide, I'm already stuck. Downloaded graphviz and codecgraph, followed everything exactly (not really a big deal) - but when I type in the terminal the "/codecgraph codec_dump.txt" it brings back

Codec: Realtek ALC889
Generating codec_dump.txt.svg
Format: "svg" not recognized. Use one of:
Big-Bang-MacBook-Pro:codecgraph bigbang$

Whats wrong ?

Field Note #102 @ajacocks 2009-09-06

Guru,

What version of codecgraph are you using? When I try it, it works fine:

[~/Documents/codec/codecgraph-20090522]
ajacocks@telemachus$ ./codecgraph ~/Documents/codec/CodecDump/card0-codec#0.txt
Codec: Realtek ALC883
Generating card0-codec#0.txt.svg
[~/Documents/codec/codecgraph-20090522]
ajacocks@telemachus$ file card0-codec#0.txt.svg 
card0-codec#0.txt.svg: XML 1.0 document text
[~/Documents/codec/codecgraph-20090522]
ajacocks@telemachus$ ls -l card0-codec#0.txt.svg 
-rw-r--r--  1 ajacocks  staff  114569 Sep  6 16:51 card0-codec#0.txt.svg
Field Note #103 @Gurruwiwi 2009-09-06

The one from king's guide, and the only one available in the developer's download page.

Could you do it form me please?

Field Note #104 @Gurruwiwi 2009-09-06

Oh man, that was super! On to the next part, windows and voodoohelper dumps

Update: Again... I had forgotten about it. voodoohelper can't dump. Says;

error: IORegistryEntryGetPath returned 0x10000003

:

morm ?

Field Note #105 @mormegil 2009-09-06 ↳ Re: @Gurruwiwi
@GurruwiwiOh man, that was super! On to the next part, windows and voodoohelper dumps Update: Again... I had forgotten about it. voodoohelper can't dump. Says; error: IORegistryEntryGetPath returned 0x10000003 : morm ?

I've fixed your dsdt. Dunno if it'll work

Field Note #106 @sangmanh 2009-09-06

could you plz re-upload AppleHDA.kext about alc888

sorry to bothering you.

I read the your post about alc888 (this post, #8)
I downloaded attached file, but that file was broken.
It's not extract properly.

so, could you plz re-upload AppleHDA.kext about alc888?

Field Note #107 @ajacocks 2009-09-07

Mormegil,

Does the fact that voodoohelper can't dump, for me either, mean anything? I'm not quite sure where else to go from here.

Field Note #108 @Gurruwiwi 2009-09-07

So i tried the new dsdt Morm... and it broke my install again. Don't understand why, I deleted the new dsdt, then applehda, the put it back in, tried old dsdt... nothing. KP's mid way from "unkown" process, or gets passed that, and blue/black blinking before desktop. Will have to restore yet again and try again fresh with the new dsdt. Whats up with this ?!?

Field Note #109 @mormegil 2009-09-07 ↳ Re: @sangmanh
@sangmanhsorry to bothering you. I read the your post about alc888 (this post, #8) I downloaded attached file, but that file was broken. It's not extract properly. so, could you plz re-upload AppleHDA.kext about alc888?

I tried downloading it and it extracts fine. Try it again.

Field Note #110 @mormegil 2009-09-07 ↳ Re: @ajacocks
@ajacocksMormegil, Does the fact that voodoohelper can't dump, for me either, mean anything? I'm not quite sure where else to go from here.

Do you have voodoohda installed all this time? When you're using patched applehda? same goes to gurru

Field Note #111 @Gurruwiwi 2009-09-07

Can't remember, but will try it. Install voodoo, repair, reboot and run helper right?

I''ve restored install with new dsdt.

With vanilla, either device ID=0 or no device ID.

With the latest appleHDA address 0, the reboot cycle is the same. Kp, device ID 12 with good mappin (mic, heaphone etc, but not my spec) or just only digital port, then KP etc etc - I never saw my spec mapping though

I'll try address 3 although it did nothing last time.

Morm, I've been trying with patched appleHDA using my previous "generic codec dumped" dsdt right?

Dont I have to patch a new one now that the dsdt comes from my correct linux codec dump?

Field Note #112 @ajacocks 2009-09-07 ↳ Re: @mormegil
@mormegilDo you have voodoohda installed all this time? When you're using patched applehda? same goes to gurru

Mormegil,

No, I don't. I just have tried voodoohda, in the past, in the effort to get it to make a dump.

Field Note #113 @Gurruwiwi 2009-09-07

I just tried installing 2 or 3 different voodooHDA, and booted in 32 just to be sure (many arent 64bit ready), and voodoohelper still puts out the same error. On the way my card "woke up" like before, but now sound, so it seems the new dsdt does not seem to be a "step back"

I am still puzzled why after a couple of repairs, if I change dsdt, it breaks my install... any theories? lol

Morm, going back to guessing, is AppleHDA that still needs fine tuning for my system?

Field Note #114 @mormegil 2009-09-07 ↳ Re: @ajacocks
@ajacocksMormegil, No, I don't. I just have tried voodoohda, in the past, in the effort to get it to make a dump.

K.. I thought it was voodoohda that was ----ing around when you have a patched applehda. Never use them together!

Well, I've seriously run out of ideas why it's not working for you guys. Definitely something weird going on when it comes to laptops.

And Gurru, I suggest you put your restore disk away and get to the root of the problem. You're going nowhere by just restoring your install at the first sign of KP.

Field Note #115 @Gurruwiwi 2009-09-07

Morm,

I greatly appreciate your help, I do.

But, though dsdt n00b, I'm certainly not OSX illiterate, on the contrary. Been at this since early Tiger. I know what a KP is and how to handle them, and I am telling you that, possibly exactly because of this weird alc889a behaviour, there is a reset going on that has nothing to do with your dsdt applHDA etc... but it doesnt like dsdt being changed, and when I f*cking need to restore its because I cannot bring the system back up. safe boot too.

What would you do, if suddenly, right after nvdresman blacks out and brings up your desktop, it instead flashed black and blue in 5-10 second interval, having just a little white cursor at the top left, where you can actually type from your keyboard strange characters (that dont match what you type) right into a pitch black screen?

And the reboot cycles, which are far from typical ? either a kext works, or it doesnt, or it KP's... never heard of a kext that did all three !

Even removing all video kexts, removing com.boot.apple.plist strings, removing dsdt, nothing works to bring my system back up.

I have explained this phenomena before, and that is the only reason I have to restore from a CCC image. It takes 7 minutes, fix UUID, and back to action.

And this system is rock solid, except when tampering with audio. I've thrown at it highly intensive tasks (protools fully loaded with plugins with reason rewiring) and it behaves like a charm. HD video, while having Ubuntu and Windows 7 both running, each on their own screen (spaces). I've tested a for 4-5 days periods non-stop and it is rock solid. Oh, and playing Trackmania virtualized in Win 7.

this to my own disbelief, how smooth and stable. 64bit SL is unbelievable!

I have no issues whatsoever to fix, except audio.

The video f*cks up, and nothing brings it back, if there is please tell me.

There is something definitely going on, and I suspect a sort of CMOS rest bug, similar at least.. look at my reboot cycles. My gfx must crash, possibly because of hdmi audio trying to be used or something on one of those resets...?

Plus, I am still using an AppleHDA which you kindly patched, based on generic alc889a info, now that I finally manage to get my very own codec dumps, why cant we make an appleHDA for my system?

We are so close, why would you jump ship now? I mean, this is the place for exactly this, if you dont feel like sharing anymore, that is absolutely fair, this is a time consuming affair, prone to not working until it does. Just say the word, but please dont imply that I am idiot enough to restore at a sign of a simple KP.

Field Note #116 @Gurruwiwi 2009-09-07

I went back to vanilla AppleHDA and "erratic" reboot issues happen no more. No ports are being mapped, audio device 12, no KP's, asserrtion"0" errors, and in 15 reboots between 32 and 64... no issues whatsoever.

I would again, guess, a good appleHDA patch for my system might fix this thing.

Field Note #117 @terrorgen 2009-09-08 ↳ Re: @mormegil
@mormegilI tried downloading it and it extracts fine. Try it again.

hi m8, i tried downloading it and it doesn't download properly...

if you could, can you please PM me the kexts?

Field Note #119 @terrorgen 2009-09-08

referring to the guide, the LayoutID i got from AppleHDAHardwareConfigDriver.kext was 12, but in the plist it was 888. Should I just change it?

Field Note #120 @mormegil 2009-09-08

Yes. You should be using layout 12 in your dsdt.

Field Note #121 @terrorgen 2009-09-08

I finished editing applehda.kext, put into /E/E of my boot thumb drive, reboot with -x32.

Doesn't work...

Field Note #122 @terrorgen 2009-09-08

yes i did...
anyways, I got sound working by installing it into /S/L/E of the SL drive (I use a flash drive to boot SL)
now it's time to make 5.1 working

THANKS for all your hard work!

Field Note #123 @mormegil 2009-09-08

Let it run. It covers hdef injection into dsdt which I didn't. Only thing you should change is your dsdt code.

The code starting from Name (BUFA, ResourceTemplate is not part of HDEF. You can delete them, they might cause confusion.

Field Note #124 @terrorgen 2009-09-08

mormegil, snow...

I am setting up 5.1 using Audio MIDI Setup, but it only works for a while...
now the volume control is greyed out and when I tried to adjust the volume it says something like the device has no output controls... any ideas?

Field Note #125 @mormegil 2009-09-08

It's meant to be that way. You control the individual channel volumes using Audio MIDI setup.

Field Note #126 @terrorgen 2009-09-08

man... lost the pleasure to adjust volume from the keyboard...

Field Note #127 @ajacocks 2009-09-09

mormegil,

Thanks so much for taking so much time to help me. I'm still not sure what I was doing wrong with the codec patching, but my solution turned out to be voodooHDA 0.2.2 64bit, installed in /System/Library/Extensions, and rebuilding the Extensions.mkext. I'm not sure which of the above did the trick, but one of them did, and my laptop is no longer silent.

For purposes of documentation, I have a Clevo M570RU-U, with an Intel 965 chipset, and a Realtek ALC883 codec.

Field Note #128 @megavolkan 2009-09-11

I have a microphone. After applying the 5.1 patch sound is ok but i have no sound input. Internal microphone source in sound settings shows "None". I've tried all ports including output ports as well. None working.

I use an EP45-DQ6 board with ALC889a chip.

Field Note #129 @Trograin 2009-09-12

Thank you SO MUCH mormegil…

I have been struggling for 4 days to get my sound configured. Been changing my dsdt file over and over even if System Profiler showed me all the channels, just because I couldn't get sound to work with any of the thousands AppleHDA.kext's I have tried. Some of them even messed up my system so badly I couldn't logon anymore, so I have reinstalled it 5 times these last 4 days.

Even if System Profiler showed correct info, no device could be found when trying to configure sound.

I have tried replacing info.plist (both) as of this guide and didn't work. Then I saw on the above link How to port AppleHDA to SL → that it is not just to edit info.plist but also changing some binary with hexedit is needed, hence why it didn't work.

What made my day was actually when I scrolled down this page and saw you had posted your AppleHDA.kext saying "Here's my modified AppleHDA.kext as reference". I downloaded it, used Kext Utility, repaired permissions and rebooted. Never thought anything would fix my sound but when system was booted I suddenly noticed my wonderful lovely little sound icon in the bar had CHANGED

Now... Where do I send you the money?

Field Note #130 @hops 2009-09-12 ↳ Re: @mormegil
@mormegilI take back my word. Got full analog 5.1 to work on my onboard alc888! 1. Tweak AppleHDA.kext to detect 3 Line Outputs: Green, Black, Orange. 2. Run Audio Midi Setup 3. Add new Aggregate Device 4. Click on the 3 check boxes corresponding to the 3 Line outs 5. Click on Configure Speakers 6. Select all 3 streams 7. Select Multichannel…

Thank you so much for posting this! I had not been able to get the ALC888 chipset on my Gigabyte GA-965P-DS3 to work under 10.5. All I had to do was drop your kext onto the Kext Utility, reboot, and now I have sound under 64-bit 10.6. Your work is appreciated!

Field Note #131 @Cee 2009-09-13 ↳ Re: @mormegil
@mormegilI take back my word. Got full analog 5.1 to work on my onboard alc888! Here's my modified AppleHDA.kext as reference

Can you / or anyone else upload this AppleHDA.kext again ?
I tried to unzip it on 4 machines ( 3 macs , pc ) and all of them failed

Field Note #132 @megavolkan 2009-09-14

Well at least someone tell me how to re-map microphone input to the regular red mic-in port?

Field Note #133 @Trograin 2009-09-14 ↳ Re: @megavolkan
@megavolkanWell at least someone tell me how to re-map microphone input to the regular red mic-in port?

Got the same problem. Was very happy about finally getting sound to work, but noticed my microphone didn't work. Found a solution just today that it actually works (although I have no idea why this works for my mic, it sounds like it shouldn't), if I plug it in on the other side of green "entry" which is a lightblue I think (not at home atm), then I plug it back into the pink/red for microphone and it works.

I accidentally found it out as I thought I should try to use microphone in all other entries and see if it for some odd reason works (I am no sound guru, those who are probably are laughing at me now as I suppose its impossible ).

However this is not a solution Im happy about, replug the mic to lightblue then back where it should be each time I turn on my comp… Also, this "replugging" for some odd reason messes up the volume, so when I speak it just gets louder and louder until the other person on skype throws his/her headset of

Still searching for the magical solution.

Field Note #134 @hops 2009-09-14 ↳ Re: @Cee
@CeeCan you / or anyone else upload this AppleHDA.kext again ? I tried to unzip it on 4 machines ( 3 macs , pc ) and all of them failed

After trying several unzip programs, Stuffit Expander was the one that successfully extracted the kext for me.

Field Note #135 @terrorgen 2009-09-14 ↳ Re: @hops
@hopsAfter trying several unzip programs, Stuffit Expander was the one that successfully extracted the kext for me.

the link above works with the default unzip program in Mac

Field Note #136 @Trograin 2009-09-14

I got an error in safari after downloaded, saying something about not able to extract Stuffit archive. I too had to install Stuffit. But no big deal, theres a trial

Got microphone working and with reported perfect sound from several people I forced to talk to me through Skype

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (Package (0x02)
                    {
                        0x0D, 
                        0x05
                    })
                }

                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0C)
                        {
                            "codec-id", 
                            Buffer (0x04)
                            {
                                0x88, 0x08, 0xEC, 0x10
                            }, 

                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x78, 0x03, 0x00, 0x00
                            }, 

                            "device-type", 
                            Buffer (0x07)
                            {
                                "ALC888"
                            }, 

                            "PinConfigurations", 
                            Buffer (0x28)
                            {
                                /* 0000 */    0x50, 0x41, 0x01, 0x01, 0x50, 0x40, 0x21, 0x02, 
                                /* 0008 */    0x30, 0x01, 0x10, 0x90, 0x20, 0x60, 0x01, 0x01, 
                                /* 0010 */    0x70, 0x20, 0x01, 0x01, 0xA0, 0x90, 0xA1, 0x02, 
                                /* 0018 */    0x10, 0x30, 0x81, 0x01, 0x40, 0x90, 0xA1, 0x01, 
                                /* 0020 */    0x60, 0x61, 0x4B, 0x01, 0xF0, 0x01, 0xCB, 0x01
                            }, 

                            "reg", 
                            Buffer (0x28)
                            {
                                /* 0000 */    0x00, 0xD8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                /* 0010 */    0x00, 0x00, 0x00, 0x00, 0x10, 0xD8, 0x00, 0x02, 
                                /* 0018 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                /* 0020 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00
                            }, 

                            "platformFamily", 
                            Buffer (One)
                            {
                                0x00
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

Found this one at: http://www.insanelymac.com/forum/lofiversion/index.php/… ↗
Replaced my Device HDEF with this code, then used kexttool to once again try a kext from the package:
http://www.insanelymac.com/forum/index.php?act=attach&a… ↗
Which I found on:
http://www.insanelymac.com/forum/index.php?showtopic=14… ↗

I used the kext called "3out2in HDA headphone" in the subfolder "series of LegacyHDA 888 (ALC888)". I have not tried the others but have no need as its fully working for me now

Still had mormegils AppleHDA and not the default SL AppleHDA (as I threw it away when mormegils worked for sound atleast). So no idea if osx AppleHDA works, but this one does.

Now it looks like:

Internal Microphone---|---Built-in Microphone
Line In--------------|---Built-in Line input
Digital In------------|--- Built-in Digital Input

I also got a new checkbox which I didn't have in Leopard, saying "Use ambient noise reduction" and it was checked by default.

Finally finished hunting.

Field Note #137 @megavolkan 2009-09-15 ↳ Re: @Trograin

Wow thanks man i'll try it when i'm home tonight. Just to make sure, this should be done in dsdt.aml right? Just to make sure you know

@TrograinI got an error in safari after downloaded, saying something about not able to extract Stuffit archive. I too had to install Stuffit. But no big deal, theres a trial Got microphone working and with reported perfect sound from several people I forced to talk to me through Skype Device (HDEF) { Name (_ADR, 0x001B0000) Method (_PRW, 0,…
Field Note #138 @Trograin 2009-09-15

Yes, dsdt.aml. Its for ALC888. Good luck and hope it works just as good for you as it worked on my computer.

Field Note #139 @megavolkan 2009-09-15

Hey, i've tried to insert the code into my dsdt but i cannot compile dsdt.dsl file with iaslme

it always gives error:

/Users/volkan/Desktop/Hackintosh/dsdt.dsl  5584: 
Error    4063 -

and something followed like:

 Object does not exist ^  (\_SB.MEM._CRS._Y0E._BAS)

i even tried the windows version iasl.exe gave the same errors.

Any ideas? I've attached the dsl and the log file.

Field Note #140 @Trograin 2009-09-16

Not sure tbh.

I tried iaslme with my dsdt.dsl and it worked, then tried yours and it didn't work. Have never used iaslme before to compile but using Macloader_SL. I tried to compile your dsdt.dsl in that one and it did generate me an dsdt.aml. Wether its working I can't say.

Attaching the dsdt.aml I compiled out of your dsdt.dsl, and also attaching my own dsdt.dsl if you want to look at it.

Field Note #141 @lemn 2009-09-16

could anyone help me for adi1988 card? this guide is for alc soundcard, and since i have a different on i can't find the relevant sections in my dsdt.dsl file. thanks.

Field Note #142 @Trograin 2009-09-16

Sorry, not me. I don't have one of those cards. The dsdt info is specific to the card you got, so might be good to see if you can find a thread with people having same card, as they can test etc. Or maybe someone here got one of those too… not me though

Field Note #143 @monsieur.d 2009-09-18

Anyone has headphones working

I followed the steps as described in the first post and got sound working (don't need 5.1). Also, everything shows just fine on System Profiler.

The problem is that although "Headphones" shows in System Profiler, I can't choose it as output.

My motherboard is a Gigabyte P35C-DS3R, using Snow Leopard 10.6.1 (the same thing happened in 10.6)

I don't need a pre-made solution. If someone could at least point me to where I should edit (DSDT, plist, etc), it would be much appreciated.

Field Note #144 @mormegil 2009-09-18

System profiler is just cosmetics. What you see in Sound Preferences is all that matters.

Field Note #145 @monsieur.d 2009-09-18 ↳ Re: @mormegil
@mormegilSystem profiler is just cosmetics. What you see in Sound Preferences is all that matters.

Thanks. Any hint of what I have to edit to get headphones to work?

Field Note #146 @monsieur.d 2009-09-18

I have 3 line outs and 1 Digital out. The first line out works fine with the speakers that are connected in the back panel.

I used to have speakers AND headphones working in Leopard (10.5.6) with patched AppleHDA. I know I can't use Leopard's AppleHDA, but can I somehow copy its setup (considering that now I have a patched DSDT and patched AppleHDA according to this thread)?

Field Note #147 @mrctll 2009-09-18

your msi p35 neo run 10.6 in vanilla? The mine won't boot… I've modded bios for leopard and work's great. 10.6 boot only with SnowOSX Universal (432) 3.5 but don't recognize the disk... do you have a tutorial?

Grazie..

Field Note #148 @mormegil 2009-09-18 ↳ Re: @monsieur.d
@monsieur.dI have 3 line outs and 1 Digital out. The first line out works fine with the speakers that are connected in the back panel. I used to have speakers AND headphones working in Leopard (10.5.6) with patched AppleHDA. I know I can't use Leopard's AppleHDA, but can I somehow copy its setup (considering that now I have a patched DSDT and…

How to port AppleHDA to SL →

Anyway, by headphone do you mean the front jack? If so, have you tried plugging in a headphone? It might have jack-sensing enabled. Plugging in a headphone to front port will mute line out at the back. Try this and check in sound pref if one of your outputs change into 'headphone' once you plug it in.

Field Note #149 @monsieur.d 2009-09-18

Yes, by headphones I mean the front jack.

I tried connecting the headphones both in the headphone out and the mic in and nothing happened.

I'll try your guide and post back. thanks

Field Note #150 @monsieur.d 2009-09-19

Thanks for the orientation. All I needed to do was to edit the "plist" files using the plists I had working under Leopard.

Now I have "Headphones" (front jack) in the sound preferences and it works just fine.

D

Field Note #151 @MiniHack 2009-09-22

Configdata/ pinconfig

I have a quick question about what I do and do not need to include in my HDEF mod.s in the DSDT.
On the initial pages and guide in first post, it seems that Pinconfig/Configdata is not needed in the DSDT itself as it will read that from the plists in AppleHDA.kext. However, in later posts I see a lot of DSDTs with that data inserted. So…if the AppleHDA is correct does the DSDT really need these info.s also? If the answer is no, then this will give me one less variable to work with in my experiments.
Thanks for the excellent guide by the way and I promise not to be a serial re-poster about this. Just want to get this one point clear.

Field Note #152 @mormegil 2009-09-23 ↳ Re: @MiniHack
@MiniHackI have a quick question about what I do and do not need to include in my HDEF mod.s in the DSDT. On the initial pages and guide in first post, it seems that Pinconfig/Configdata is not needed in the DSDT itself as it will read that from the plists in AppleHDA.kext. However, in later posts I see a lot of DSDTs with that data inserted.…

Here →

You DON'T need pinconfig in dsdt. You DO however need Configdata in plist.

Field Note #153 @MiniHack 2009-09-24

Thank you

Thanks Mormegil and Snow. I now have working audio in Snow Leopard from DSDT and modded AppleHDA.kext with my Zotac board…took a while, but finally figured things out.

Field Note #154 @killer567 2009-12-04

ALC882 Not Working

Mormegil and Snow, i've been following your posts and replies and i respect your work.
While following I tried very hard to fix my ALC882 on my ASUS Z96Js laptop but got nothing.

Can you guys help me out or guide me in any ways possible.
I have attached my DSDT + CODEC DUMP from linux.

My current system is as follows.

Snow Leo 10.6.2

ALC882 with
1 - 1/8" headphone/speaker jack in front
1 - 1/8" line-in jack in front
1 - Internal Speakers
1 - Internal Mic

out guys, i will be very thankful

Field Note #155 @Elventanis 2009-12-11

ALC889a Sound issue on P55 UD4P

I was wondering if anyone could help me figure out how to fix the audio on my Snow Leopard 10.6.2 install. My hardware is listed below. I tried using VoodooHDA, LegacyHDA and modified AppleHDA. The best I can get is either the Back speakers to work or the Sub and Center speaker to work. I would like to enable the 5.1 sound, as I have the speakers connected via 3 pins to the PC. Based on what I have read in this forum, there might be hope for me yet, but I need some guidance.

If you need additional information please let me know and I will provide.

Gigabyte P55 UD4P
i7 860 Overclocked at 3.5
Kingston Memory 8GB (2000)
BFG Geforce GTS 250 Video Card
LG SATA Internal DVD Writer

Field Note #156 @will1384 2009-12-11

Here is how I got mine working, not sure if its going to work for
you, might give it a try, also I never had much luck with surround
sound on Realtek, not even using Windows

(1) Find and download "Taruga’s AppleHDA Patcher version 1.20"
(2) Find and download "VoodooHDA.kext"
(3) Make your own CODEC Dump in Linux buy typing this into the Terminal

"cat /proc/asound/card0/codec#0 > ~/Desktop/codec_dump.txt"

and use that file,

if you get nothing, try changing "codec#0" to "codec#1"
keep going up in numbers till you get the info.

Like

"cat /proc/asound/card0/codec#0 > ~/Desktop/codec_dump.txt"
"cat /proc/asound/card0/codec#1 > ~/Desktop/codec_dump.txt"
"cat /proc/asound/card0/codec#2 > ~/Desktop/codec_dump.txt"

(Hint) the Ubuntu Install CD works just fine for this

(4) Find and download "Kext Utility"
(5) Drag "VoodooHDA.kext" onto "Kext Utility" to install
(6) Make a backup copy of "AppleHDA.kext", its in "/System/Library/Extensions"
(7) Drag "codec_dump.txt" onto "AppleHDA Patcher" to install

Field Note #157 @Elventanis 2009-12-11 ↳ Re: @will1384
@will1384Here is how I got mine working, not sure if its going to work for you, might give it a try, also I never had much luck with surround sound on Realtek, not even using Windows (1) Find and download "Taruga’s AppleHDA Patcher version 1.20" (2) Find and download "VoodooHDA.kext" (3) Make your own CODEC Dump in Linux buy typing this into…

Thanks Will, I will try that later on tonight. I will need to install ubuntu first though, as I currently don't have an install of that anywhere. No big deal. I will report back on how that goes.

Field Note #158 @will1384 2009-12-11 ↳ Re: @Elventanis
@ElventanisThanks Will, I will try that later on tonight. I will need to install ubuntu first though, as I currently don't have an install of that anywhere. No big deal. I will report back on how that goes.

One of the things I love about Ubuntu is you don't even have to install it,
it works as a Live CD, just boot the CD, and it takes you to the desktop,
from there you have a usable GUI and even have access to Firefox, and
it seams to auto-detect and setup most network hardware, it great for
fixing things

Field Note #159 @Elventanis 2009-12-12

Will, when try the cat command in Ubuntu, I did not see the codec#0 etc. After navigating down the directories I see ac97#0-0

Not sure why I am seeing that cause I have the HD Audio connected. Should I change the commands above to this instead? thx

Field Note #160 @will1384 2009-12-12

It should work just by typing, and you can always copy and paste

"cat /proc/asound/card0/codec#0 > ~/Desktop/codec_dump.txt"

and changing the "codec#0" part as needed like "codec#1"

"cat /proc/asound/card0/codec#1 > ~/Desktop/codec_dump.txt"

just keep going up in numbers, I just tried on a EP31 motherboard
I had to up go to "codec#2" like this

"cat /proc/asound/card0/codec#2 > ~/Desktop/codec_dump.txt"

You might have to delete the empty TXT files after an unsuccessful
attempt, maybe some how there not being overwritten buy the new
file each time

I am going to try a PC with non Realtek sound next, but it should work
the same way

Field Note #161 @Elventanis 2009-12-12

I tried this using Ubuntu installed in a Virtual Machine via Sun Virtual Box. Maybe that is the reason I am having the issue. I will try to boot off the Ubuntu CD directly and see if that makes a difference I suppose.

When I type the commands, I actually get an error message that the directory/codec#1 etc does not exist. So the dump file is useless, cause the command errors out.

Field Note #162 @will1384 2009-12-12 ↳ Re: @Elventanis
@ElventanisI tried this using Ubuntu installed in a Virtual Machine via Sun Virtual Box. Maybe that is the reason I am having the issue. I will try to boot off the Ubuntu CD directly and see if that makes a difference I suppose. When I type the commands, I actually get an error message that the directory/codec#1 etc does not exist. So the dump…

Virtual Machine wont work, the Virtual Machine sets up a fake environment,
Linux has to be running directly on your hardware.

Field Note #163 @Elventanis 2009-12-12 ↳ Re: @will1384
@will1384Virtual Machine wont work, the Virtual Machine sets up a fake environment, Linux has to be running directly on your hardware.

ok, thanks for the confirmation, I will try it again later on today after booting in from the Ubuntu live cd and report back.

I did try the steps on Post #1 of this thread last night since those files were already created etc, but I did not have any luck.

Also, I have not been able to find the 1.2 version of the Taruga software either. I need to keep looking for that.

I was testing my connectors last night, and sound is only coming thru the orange connector at this point, the green and black and sending no sound. If I switch out the green connector to the orange port, the sound switches to a different speaker. So it looks like the ports are not even enabled in my current config.

Field Note #164 @will1384 2009-12-12 ↳ Re: @Elventanis
@ElventanisI was testing my connectors last night, and sound is only coming thru the orange connector at this point, the green and black and sending no sound. If I switch out the green connector to the orange port, the sound switches to a different speaker. So it looks like the ports are not even enabled in my current config.

I believe the CODEC Dump should fix that, as it also has the input
and output jacks info, also Google is your friend on finding stuff,
look over here for Taruga’s AppleHDA Patcher version 1.20

AppleHDA Solution - Work in progress, Main Thread ↗

Field Note #165 @Elventanis 2009-12-12 ↳ Re: @will1384
@will1384I believe the CODEC Dump should fix that, as it also has the input and output jacks info, also Google is your friend on finding stuff, look over here for Taruga’s AppleHDA Patcher version 1.20 AppleHDA Solution - Work in progress, Main Thread (http://www.insanelymac.com/forum/index.php?showtopic=32… ↗)

Will, I think I have everything you mentioned now. I have to run some quick errands and I will try the rest later on. Couple of questions for you in case you see this before I get back.

1. If I am patching the AppleHDA do I still need the VoodooHDA enabler?
2. My current DSDT file has pinconfiguration entries in it in the HDEF section. do I leave them there or should I remove them? I am thinking I need to remove them since the AppleHDA is being patched, but wanted to confirm.

From Ubuntu I had to use codec#2 to get the dump file.

Thanks again, for helping me thru this.

Field Note #166 @will1384 2009-12-12 ↳ Re: @Elventanis
@Elventanis1. If I am patching the AppleHDA do I still need the VoodooHDA enabler?

Yes

@Elventanis2. My current DSDT file has pinconfiguration entries in it in the HDEF section. do I leave them there or should I remove them?

Patching AppleHDA and using VoodooHDA will work, with or with out
the DSDT audio section, if the DSDT audio section is correct leave
it alone, using AppleHDA and VoodooHDA seams to ignore anything
in your DSDT

Field Note #167 @Elventanis 2009-12-13

I had a chance try this a little bit before I left for party, which sucks by way, lol.

The sound seems to be coming from the front speakers. I will test further when I get back home.

I already got further than I had before. Thank u again foe all your help and guidance. Thx

Field Note #168 @Elventanis 2009-12-13

Will, here is the update on how this went.

1. I am getting sound from the Front Center, Front Left, Front Right and the Sub Woofer.
2. The Rear Left and Right do not have any sound at this point.

Based on your previous information about Surround Sound for Mac, I am assuming that is normal.

Just wanted to say Thank You again for getting this fixed for me.

If Apple releases 10.6.3 and I upgrade to that, I am assuming I may need to patch the AppleHDA again right?

I will read other parts of this thread and see if I can get anything from the rear speakers.

On the 1st post, there was some information about Spotlighting the Audio/Midi and messing around with the speaker setup. Any ideas on how I get to this screen to see what is possible?

Thank you again

Field Note #169 @Elventanis 2009-12-13

Will, I figured out how to get to the Midi/Audio Setup. The 5.1 channel sound is not enabled there, so still need to do some digging I suppose.

Anyhow, when I did the AppleHDA Patching, it showed me some information and reported that I had Realtek 885, as opposed to to 889a. If I go into the About Mac, and more information, the Audio is saying 885 there as well. Is that normal? Thx

Field Note #170 @Elventanis 2009-12-13 ↳ Re: @mormegil
@mormegilALC889a might have different pin configuration so I'm not sure about that. However, it looks like your codec is a variant of the ALC885 which has native OSX support so I think you don't need to do any binary patching. You don't need HDAenabler or any audio injector. Just patch dsdt for audio injection. Then edit the two plist files:…

@Mormegil

I came across your posts here on how to enable the 5.1 sound for Snow Leopard. With the Help of Will on this forum, I was able to successfully get Sound working on my ALC889a, but I don't have the option to enable 5.1 in the Audio/Midi config. My back speakers are currently not working.

I am using the VoodooHDA kext as well. What do I need to change in my info.plist that would allow me to enable the 5.1 sound. Would you be able to guide me on this. Thx

Field Note #171 @will1384 2009-12-13 ↳ Re: @Elventanis
@ElventanisWill, here is the update on how this went. 1. I am getting sound from the Front Center, Front Left, Front Right and the Sub Woofer. 2. The Rear Left and Right do not have any sound at this point. Based on your previous information about Surround Sound for Mac, I am assuming that is normal. Just wanted to say Thank You again for…

I got digging for info myself, come to find out that there are quite a few different versions of VoodooHDA,
made by different people, based on the original file made by some one else, one of them that works for me,
although no surround, is the file here

VoodooPS2 and VoodooHDA (now 0.2.2 with prefPane) drivers for snow leopard 32/64 bit ↗
and another,

Voodoohda Driver, Fully working! ↗

and some people had say removing "AppleHDA.kext" helps, just make sure to
keep a backup

UPDATE

I just removed "AppleHDA.kext" and the file that gets created buy AppleHDA Patcher, "ALCinject.kext"
leaving only "VoodooHDA.kext" and ran "Kext Utility" to clean up, and rebooted, the sound works, still
no surround sound, but one less step

and found another "VoodooHDA.kext", seams to work well and the volume is slightly higher

VoodooHDA (32-/ 64-bit, recompiled by Prasys) (k exts.com/view/70-voodoohda_%2832--_64-bit,_recompiled_by_prasys%29.html)

Field Note #172 @Elventanis 2009-12-13

Thats Weird, So the Voodoo Kext fixes this without having the AppleHDA etc. I will try it later on I suppose.

From everything I have been reading, it seems that we have to get the 3 colored outputs to register with teh Mac to get the 5.1 sound working. When we do that we should have 3 line outs available with 2 channels each. That should be the 5 speakers plus the Sub. I am thinking there has to be a tweak out there somewhere to make all those lines work.

I am going to test today, byt removing the 3 lines and adding them one at a time to see which ones are working. I am assuming only one is working still or maybe 2. The Green one seems to be the problem one based on what I read.

I will post something for prasys as well as see if he can give me some more information. Thx

Field Note #173 @Elventanis 2009-12-13

Will, I played around with setup and no luck with the 5.1 sound yet. I tried the 2 versions of Voodoo, and other than what you mentioned about the volume, there was no real difference.

I removed the Voodoo Kext file and the sound no longer worked. Put that together with your note about removing AppleHDA and ALCInject, I suppose I am wondering what the AppleHDA patcher actually provided?

I had a posted a couple of questions out there on another forum, but so far I have not got anything back. If I get any more progress I will update this again. I will keep checking daily so if you have any further break thrus I will look out for them. Thx

Field Note #174 @Elventanis 2009-12-14

Will
Here is another update. I removed the AppleHDA and ALCInject, and my sound switched back to the rear speakers again. I had nothing coming out from the front speakers.

I then tried some LegacyHDA and HDAenabler kexts, unfortunately after a restart I had no output devices at all. So that was a no go.

I put all the working files back in and the front speakers are back up and running.

In looking at the various 5.1 setups out there, I am thinking we are not able to do this cause our output device is showing up as

Line Out / Line Out / Line Out / Line Out

I think it should be listed as

Line Out
Line Out
Line Out
Line Out

in the Audio section of System Preferences.

If it was listed this way, we may be able to create an aggregate sound section that puts all these together to allow us to enable 5.1 sound

Let me know if that makes sense. I am thinking there has to be information out there on how to fix this somewhere.

Field Note #175 @wind99 2010-01-08

ALC889A in AMD GA-MA78-S2H

Did someone sucess with alc889a in AMD ga-ma78-s2h?
i already try with legacy, applehda, and voodo..
still not happen anything.

Field Note #176 @gorg 2010-01-08 ↳ Re: @wind99
@wind99Did someone sucess with alc889a in AMD ga-ma78-s2h? i already try with legacy, applehda, and voodo.. still not happen anything.

Νο. Only managed sound in Leopard with alcinject. In Snow Leopard I get sound only via VoodooHDA but the preference pane is still inaccessible (kp when I select the Input tab).

Field Note #177 @wind99 2010-01-10

Ya, same with me.
i only get the tab.
there is no sound in voodo. i only get the preferences. but not appear the sound.
do you have the sound when u using voodo?

Field Note #178 @sethyr 2010-02-06 ↳ Re: @wind99
@wind99Did someone sucess with alc889a in AMD ga-ma78-s2h? i already try with legacy, applehda, and voodo.. still not happen anything.

I've tried everything too. So I would appreciate help too :\

Field Note #179 @ANARCHiNTOSH 2010-02-24

AppleHDA automatic patcher for ALC889a

hi mormegil, ive made a launchable bash script to patch AppleHDA
automaticly. Thanks so much for writing this guide its been really
useful, and the result sounds much better than LegacyHDA + HDAEnabler.
(no squeaky noise)

get it here: media fire.com/?zj3moonzmeq

If the plists ever need updating, it will be easy to update them in my
script, because they are not hardcoded. Also, the script will automaticly
label the patched AppleHDA red. The script wont install the kext, as i thought
that would be a bit too intrusive, so use kextutility or kexthelper.

theres a similiar post at http://www.insanelymac.com/forum/index.php?s=&showt… ↗
with more details.

Field Note #180 @X58-Agility 2010-04-21 ↳ Re: @ANARCHiNTOSH
@ANARCHiNTOSHhi mormegil, ive made a launchable bash script to patch AppleHDA automaticly. Thanks so much for writing this guide its been really useful, and the result sounds much better than LegacyHDA + HDAEnabler. (no squeaky noise) get it here: media fire.com/?zj3moonzmeq If the plists ever need updating, it will be easy to update them in my…

I followed up on your work over at "insanely...", very impressed. I am working with your instructions right now to get my sound working. Looking forward to some sweet sounds :

Field Note #181 @X58-Agility 2010-04-24

Needless to say I didn't get my sound working. Because I am going to use this computer for professional editing I went and picked up a "TASCAM US-122 MK II".

Field Note #182 @dannymichel 2010-05-25

also, someone told me that i'd have to re-do this every time mac updates applehda

Field Note #183 @dannymichel 2010-05-25

is there a way to get 5.1 on alc889a without having to edit or remove the applehda file. it's my understanding that some mac updates use the applehda file.

動作検証・議論参加メンバー: @mormegil @Gurruwiwi @ajacocks @megavolkan @X58-Agility
出典および貢献者来歴(クレジット登録 29 名 · 元スレッド #3746)
ユーザー名貢献ロール投稿数活動期間
@mormegil主要貢献者572009-08-25 → 2009-09-23
@Gurruwiwi主要貢献者532009-09-01 → 2009-09-07
@Snow筆頭著者252009-08-23 → 2009-09-15
@ajacocks主要貢献者132009-09-06 → 2009-09-09
@Elventanis主要貢献者132009-12-11 → 2009-12-14
@terrorgen主要貢献者72009-09-08 → 2009-09-14
@will1384主要貢献者72009-12-11 → 2009-12-13
@megavolkan主要貢献者62009-09-05 → 2009-09-16
@Trograin主要貢献者62009-09-12 → 2009-09-16
@monsieur.d主要貢献者52009-09-18 → 2009-09-19
@X58-Agility主要貢献者32010-04-21 → 2010-04-24
@CyCLoBoT検証メンバー22009-09-02 → 2009-09-05
@vladrxpx検証メンバー22009-09-03 → 2009-09-05
@hops検証メンバー22009-09-12 → 2009-09-14
@MiniHack検証メンバー22009-09-22 → 2009-09-24
@wind99検証メンバー22010-01-08 → 2010-01-10
@dannymichel検証メンバー22010-05-25
@vista00検証メンバー12009-08-23
@DocShadow検証メンバー12009-08-24
@mangohead検証メンバー12009-08-27
@wwbsox検証メンバー12009-08-27
@sangmanh検証メンバー12009-09-06
@Cee検証メンバー12009-09-13
@lemn検証メンバー12009-09-16
@mrctll検証メンバー12009-09-18
@killer567検証メンバー12009-12-04
@gorg検証メンバー12010-01-08
@sethyr検証メンバー12010-02-06
@ANARCHiNTOSH検証メンバー12010-02-24

言語を選択 · Choose your language