2011年Apple iMac灌WIN10後沒有聲音解決方式
- 助理工程師-小宇
- 2024年12月13日
- 讀畢需時 3 分鐘
已更新:1月25日
解決方案如下:
使用 36 位元根橋建立 dsdt-modified.aml DSDT 文件
載入 dsdt-modified.aml 作為登錄機碼覆蓋或記憶體中替換
透過裝置管理員中的「大記憶體」區域確認成功
1.下載並安裝所需工具:
Windows 驅動程式工具包 (WDK),其中包含 Windows ASL 編譯器 (asl.exe)
Windows 二進位工具(WBT - 2016 年 12 月)
Notepad++

Windows 二進位工具(WBT - 2016 年 12 月)提取到 c:\dsdt 目錄。 [較新的 WBT 有解析錯誤]

Windows 驅動程式工具包 (WDK),其中包含 Windows ASL 編譯器 (asl.exe)
Notepad++ 文字編輯器,帶有「搜尋」->「前往」(行)選單,可在 asl 或 iasl 編譯失敗時進行快速行編輯
2.將 WDK 的 ASL 編譯器複製到 c:\dsdt 目錄中。透過開啟命令提示字元(以管理員身份執行)然後複製並貼上以下命令來執行此操作。這邊asl.exe 路徑可能會在其他路徑,這次的是在C:\Program Files (x86)\Windows Kits\10\Tools\10.0.26100.0\x64\ACPIVerify。再視情況手動貼上

mkdir c:\dsdt
c: & cd \dsdt
set 64bit_OS_asl="C:\Program Files (x86)\Windows Kits\10\Tools\x64\ACPIVerify\asl.exe"
set 32bit_OS_asl="C:\Program Files (x86)\Windows Kits\10\Tools\x86\ACPIVerify\asl.exe"
copy /y %32bit_OS_asl% c:\dsdt > nul & copy /y %64bit_OS_asl% c:\dsdt > nul
if not exist c:\dsdt\asl.exe echo ERROR: Failed to copy asl.exe to c:\dsdt
3.在命令提示字元下使用這些命令(以管理員身分執行)將 ACPI 表轉儲到磁碟檔案(dsdt.asl 和 dsdt.dat)。創建的 dsdt.asl 被複製到此處作為 dsdt-modified.asl ,稍後將使用它來進行所需的修改。
c: & cd \dsdt
acpidump -b -z
asl /u dsdt.dat
copy dsdt.asl dsdt-modified.asl
執行完會變這樣

4.將此 >> refs.txt 檔案 << 儲存到您的 c:\dsdt 資料夾。它有什麼用?來自tonymacx86:iasl 反組譯器將嘗試猜測參數的數量[對於未在任何文件中定義的未解析符號],但通常猜測得很差。您可以透過在 refs.txt 文字檔案中提供外部聲明來更正它。它包含一些常見(和不那麼常見)的缺失符號

5.從命令提示字元 (admin),將 dsdt.dat 反編譯為 dsdt.dsl 。這裡使用 refs.txt 檔案。然後將 dsdt.dsl 複製為 dsdt-modified.dsl,我們將在其上進行所需的更改。
c: & cd \dsdt
iasl -da -dl -fe refs.txt dsdt.dat
copy dsdt.dsl dsdt-modified.dsl
6.使用 Notepad++ 開啟產生的 c:\dsdt\dsdt-modified.dsl 檔案並蒐索 ResourceProducer。下面是一系列「DWordMemory」資源條目。在該區域的最後一個 DWordMemory 條目下(通常在 _CRS 方法上方)新增一個「QWordMemory」(64 位元)條目,如下所示。選擇的範圍是 36 位元範圍 (< 64GB),以保持與支援 PAE 的 32 位元 Windows 的兼容性。選擇 48GB 以上的位置是為了緩解配備 32GB 的系統的問題。這裡我們使用 48.5GB 到 56.25GB 之間。一旦系統開始配備 64GB RAM,就需要對其進行修改以使用 64 位元位址。
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000A0000, // Range Minimum
0x000BFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00020000, // Length
,, , AddressRangeMemory, TypeStatic)
// - ADD THIS SECTION ---------------------------------------------------------------------------
QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x0000000000000000, // Granularity
0x0000000C20000000, // Range Minimum, set it to 48.5GB
0x0000000E0FFFFFFF, // Range Maximum, set it to 56.25GB
0x0000000000000000, // Translation Offset
0x00000001F0000000, // Length calculated by Range Max - Range Min.
,, , AddressRangeMemory, TypeStatic)
// ----------------------------------------------------------------------------------------------
})
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
修完後長這樣

7.建立 dsdt-modified.aml 檔案。 '-ve' 停用警告訊息。
c: & cd \dsdt
iasl -ve dsdt-modified.dsl

8.載入 dsdt-modified.aml 作為登錄機碼覆寫並啟用 Windows 測試模式
在這裡,我們載入 dsdt-modified.aml 作為 Windows 註冊表 DSDT 覆蓋。
在命令提示字元(管理員)中鍵入以下內容。 必須安裝包含 asl.exe 的 WDK 才能正常運作。
c: & cd \dsdt
asl /loadtable dsdt-modified.aml

9.二.啟用 TESTSIGNING 模式以套用登錄機碼覆寫。在命令提示字元(管理員)中輸入:
bcdedit -set TESTSIGNING ON

10.重新啟動系統
這樣聲音問題就解決了
若您遇到任何辦公室資訊設備故障或需規畫及租賃問題,可來電07-3221717,或加入官方LINE:@yjst,讓永捷系統科技幫您用最低經費做最大效益維護及規劃
#電腦維修
#印表機維修
#筆電維修
#蘋果裝置全系列軟體處裡
Comments