制作好安裝盤後,接下來的關鍵是引導安裝Mac。
我用的方法是把clover放在U盤裡直接引導安裝的/我的clover是一位白果朋友幫我在Mac下專賣做的,引導安裝出現的問題不多/
這裡專門針對Clover&Clover Configurator的參數做下簡介:
可以直接轉這個網站學習
黑蘋果引導工具 Clover 配置詳解
部分轉自連結
Clover 檔案結構
BOOT:
ACPI: 存放DSDT.aml/SSDT.aml
CLOVERIA32.efi: 使用傳統模式加載32位clover的主啟動檔案
CLOVERX64.efi: 使用傳統模式加載64位clover的主啟動檔案
config.plist: clover配置檔案,相當于變色龍的org.chameleon.boot.plist
doc: clover的幫助文檔
drivers32: 使用傳統模式加載32位clover.efi所需的驅動 (需驗證)
drivers32UEFI: 使用傳統模式加載32位clover.efi在模拟uefi環境下所需的驅動
drivers64: 使用傳統模式加載64位clover.efi所需的驅動 (需驗證)
drivers64UFI: 使用傳統模式加載64位clover.efi在模拟uefi環境下所需的驅動
kexts: 使用kexts注入時,kext的存放位置
misc: 使用clover環境下的截圖,提取dsdt.aml/ssdt.aml的存放位置
OEM: 分檔案夾存放ACPI,config.plist等資訊,及加載,實作單個U盤引導多個黑果平台
ROM: 顯示卡rom存放位置
themes: clover主題存放位置
tools: EFI Shell存放位置,放置用于進入shell環境的.efi,不可用于引導OSX,但可運作一些.efi程式
電腦啟動過程:
bios引導: BIOS->boot0->boot1->BOOT->CLOVERIA32.efi->Apple’s
boot.efi->mach_kernel BIOS->boot0->boot1->BOOT->CLOVERX64.efi->Apple’s
boot.efi->mach_kernel UEFI BOOT: UEFI BIOS->CLOVERX64.efi->Apple’s
boot.efi->mach_kernel
ACPI
DSDT
DsdtName: dsdt.aml的名稱
Debug
ReuseFFFF
SuspendOverride
SlpSsmiAtWake
Fix Display 修複顯示卡代碼 (Yes/No, default: Yes)
Fix HPET 原生電源管理代碼 (Yes/No, default: Yes)
Add DTGP 添加DTGP代碼 (Yes/No, default: Yes)
Fix HDA 修複聲霸卡代碼 (Yes/No, default: Yes)
Add MCHC 添加MCHC代碼 尚不清楚其具體作用 (Yes/No, default: No)
Fix LAN 修複網卡代碼 經測試可修改網卡為内建 (Yes/No, default: Yes)
Fix Airport 修複Airport代碼 無線網卡代碼 (Yes/No, default: Yes)
Fix shutdown 修複關機斷電代碼 (Yes/No, default: Yes)
Fix USB 修複USB代碼 包含EHCI代碼(睡眠的關鍵)(Yes/No, default: Yes)
Fix Firewire 修複1394火線代碼 (Yes/No, default: Yes)
Fix IDE 修複IDE代碼 (Yes/No, default: No)
Fix SATA 修複SATA代碼 經測試可修複“硬碟圖示顯示為橙黃色”問題 (Yes/No, default: No)
Fake LPC (Yes/No, default: No)
Fix SBUS (Yes/No, default: Yes)
Fix Darwin (Yes/No, default: Yes)
Fix IPIC 修複IPIC 尚不清楚其具體作用 (Yes/No, default: Yes)
DropTables
SSDT: 未知
HPET: 未知
ECDT: 未知
BGRT: 未知
MCFG: 未知
DMAR: 未知
APIC : 未知
SSDT
DoubleFirstState: (Yes/No, default: No) Ivy Bridge專用。ivy一般設為yes。依舊是cpu功耗有關。其他cpu可删。
DropOem 擷取内建SSDT表單。clover可以自動擷取,當然ssdt可放到EFI/OEM//ACPI/patched.
GenerateCStates: (Yes/No, default: No) 設為yes,開啟c-state功能,修複啟動時(ACPI_SMC_PlatformPlugin)
GeneratePStates: (Yes/No, default: No) 設為yes,開啟p-state功能
PluginType 值為0,則使用ACPI_SMC_PlatformPlugin;值為1時用X86PlatformPlugin(for ivy)
PLimitDict: (Number, default: 0) 限制cpu頻率。值0,1,2。0不開啟。
UnderVoltStep: (Number, default: 0) 限制CPU功率,隻針對core2,對i系列CPU無效。可設為0,1,2。
MinMultiplier 設定最小變頻數(?)
MaxMultiplier 設定最大變頻數(?)
XXXX
PatchAPIC (Yes/No, default: No) Fix NMI in APIC table. 在ACPI表單中NMI丢失時,mac啟動可能五國,啟動是要用CPUS=1。是以這個可以起到這個作用。沒有這個問題的可以忽略。
smartUPS 若啟用,則在系統概述的”電源“項中”UPS已安裝“顯示為”是“。隻起修飾作用
Halt Enabler (Yes/No, default: No)
ResetAddress: (should be: 0x64) Restart address
ResetValue: (should be: 0xFE) Restart address
(以上兩個值可保留,可删。如果你重新開機的時候有問題(重新開機不斷電?),可按照FACP.aml中值更改。
擷取該表單的最佳方法就是clover自帶功能(按F2,呀,說啦好幾遍啦~)。或用DarwinDumper勾選ACPI TABLE。這貨DarwinDumper算是一個利器。)
BOOT
<key>Boot</key>
<dict>
<key>Timeout</key>
<integer>5</integer>
<key>Arguments</key>
<string>npci=0x2000</string>
<key>DefaultVolume</key>
<string>MacHDD</string>
<key>Log</key>
<false/>
<key>Fast</key>
<false/>
<key>XMPDetection</key>
<string>-1</string>
<key>Legacy</key>
<string>PBR</string>
</dict>
Arguments
verbose mode (-v) -V啟動
arch=i386 此參數不适用于10.8原生核心
arch=x86_64
slide=0 (Needed for 10.8)
darkwake=0 (for setting the “Deep sleep” mode in Lion/ML):一些mac的機型有這個參數才能深度睡眠。
npci=0x2000 (PCI Configuration Fix)
npci=0x3000 (PCI Configuration Fix)
dart=0 :bios中開啟VT-x/VT-d無法啟動os 的可使用這個參數
kemel
Mkext
DefaultBootVolume 預設啟動分區.其值可以是分區卷标名,分區的uuid.
FAT, hfs 可以直接用mac下顯示的卷标名, ntfs 是clover引導界面顯示的名稱如Legacy HD*
磁盤工具中資訊項可以檢視到uuid值(通用唯一辨別), 分區詳細資訊 (preboot.log中可以檢視到)
Legacy 一般預設PBR
XMPDetection -1
Log (Yes/No, default: No) 調試日志,預設不開啟,開啟影響clover加載速度、
Fast (Yes/No, default: No)
CPU
FrequencyMHz 設定CPU頻率 eg.3.3GHz -> 3300
BusSpeedkHz 設定主頻。eg.133MHz -> 133330 100MHz -> 99790kHz
Latency
Type 設定CPU類型,數值可百度。eg.core i3 ->0x0901
QPI 設定CPU的QPI,數值可百度。eg.i3 2120->5000
C2 啟用CPU的Turbo功能
C4 啟用CPU的Turbo功能
C6 啟用CPU的Turbo功能
DEVICES (舊PCI闆塊)
<key>Devices</key>
<dict>
<key>Inject</key>
<false/>
<key>Audio</key>
<dict>
<key>Inject</key>
<string>No</string>
</dict>
<key>FakeID</key>
<dict>
<key>ATI</key>
<string>0x0</string>
<key>IntelGFX</key>
<string>0x0</string>
<key>NVidia</key>
<string>0x0</string>
<key>SATA</key>
<string>0x0</string>
<key>WIFI</key>
<string>0x0</string>
<key>LAN</key>
<string>0x0</string>
<key>XHCI</key>
<string>0x0</string>
</dict>
<key>USB</key>
<dict>
<key>Inject</key>
<true/>
<key>FixOwnership</key>
<true/>
<key>AddClockID</key>
<true/>
</dict>
</dict>
<key>SystemParameters</key>
<dict>
<key>InjectSystemID</key>
<true/>
</dict>
FakeID 裝置ID
Audio (Yes/No, default: No)
USB USB修正 (Yes/No, default: Yes)
Inject 使得usb鍵盤滑鼠能喚醒os
FixOwnership 修複USB所有權問題在UEFI模式引導時
AddClockID 使得喚醒mac後,usb依舊正常工作
LpcTune 似乎未達到預期目标,作用不知,應該是有關LPC注入
DisableDrivers
DisableDrivers
CsmVideoDxe
VBoxExt4
這個主要是禁止EFI驅動作用。應該是試圖進入mac後消除EFI驅動的影響。有待測試。
GUI
<key>GUI</key>
<dict>
<key>Hide</key>
<array>
<string>Windows</string>
<string>\EFI\BOOT\BOOTX64.EFI</string>
</array>
<key>Language</key>
<string>zh_CN:0</string>
<key>Mouse</key>
<dict>
<key>Enabled</key>
<false/>
<key>Speed</key>
<integer>0</integer>
</dict>
<key>Scan</key>
<dict>
<key>Entries</key>
<true/>
<key>Legacy</key>
<true/>
<key>Tool</key>
<true/>
</dict>
<key>TextOnly</key>
<false/>
<key>Theme</key>
<string>bluemac</string>
</dict>
Language 設定clover的界面語言
Hide 隐藏的分區
Theme clover的主題
Craphics
DualLink 0為關閉,1為啟用。這個值開啟可以解決某些高分屏花屏,黑邊的問題。但某些卡必須設為0,否則進入mac可能見到4個桌面。(見到四個桌面當然也不一定是這個原因)
FBName FBname就是變色龍中ati config值,其值要和你修改FB使用參數對應
NVCAP display-cfg,N卡特有資訊的.
VRAM 設定顯示卡的顯存 eg.512MB->512
VideoPorts 定義了顯示卡的輸出端口
Display-cfg 設定顯示卡的display-cfg數值
ig-platform-id 是特為hd4000或hd2500準備的
LoadVBios 使用提取的顯示卡rom,應該同chameleon。不過對于A卡移動版這個值可能要開啟。A卡特有資訊
PatchVBios 啟用對開機扁平蘋果logo的修複 預設NO
InjectEDID 注入自定的EDID
Injectintel 啟用顯示卡自動識别功能 (Yes/No, default: Yes)
InjectATI 啟用顯示卡自動識别功能 (Yes/No, default: No)
InjectNVidia 啟用顯示卡自動識别功能 (Yes/No, default: No)
KernelAndKextPatches
AppleRTC 啟用修複AppleRTC.kext重置bios功能 (Yes/No, default: Yes)
AsusAICPUPM 啟用修複AICPM無法加載的問題 (Yes/No, default: Yes)
Debug 啟用debug (Yes/No, default: No)
KernelCpu 啟用修複核心不支援的CPU的功能 如Atom, Pentium 4 (Yes/No, default: No)
KernelLapic:在v1731版本後加入 LAPIC kernel panic for HP notebook修複功能。使得hp筆記本啟動無需輸入cpu=1的啟動參數。
ATIConnectorsController 定義要修改的驅動名字,規則如下:
6系列的Connectors就要在ATIConnectorsController定義6000
7系列的Connectors就要在ATIConnectorsController定義7000
5系列的Connectors就要在ATIConnectorsController定義5000
ATIConnectorsData 定義要修改的原始資料
ATIConnectorsPatch 為修改後适合你的顯示卡的參數
KextsToPatch
<key>KextsToPatch</key>
<array><key>0</key>
<dict>
<key>Name</key>
<string>VoodooHDA</string>
<key>Find</key>
<data>SGVhZHBob25lcwA=</data>
<key>Replace</key>
<data>VGVsZXBob25lcwA=</data>
</dict>
</array>
RtVariables
<key>RtVariables</key>
<dict>
<key>MountEFI</key>
<true/>
<key>LogLineCount</key>
<integer>3000</integer>
<key>LogEveryBoot</key>
<string>10</string>
</dict>
LogEveryBoot 啟用每次啟動的紀錄
LogLineCount 日志檔案的總行數
MountEFI 開機加載efi分區
ROM 參數值為十二位十六進制。這個參數一般會從smbios中擷取。一般不管。此項設定有關網卡的mac位址。既反映此值可随機。
MLB:和主機闆 serial number相關,17位數。其設定無别規則。最好的設定是sm+五個随機數,12位系列号加5個數随你選擇。在以前可解決imessage登入後重新開機退出無法再次登入的的問題。現在加這個不知道有什麼特别的意思。
SMBIOS
預設不設定,clover,它會自動設定認為合适你電腦組態的機型資訊.如果你要設定特定的機型資訊.
BiosReleaseDate bios釋出日期 02/29/08
BiosVendor bios提供商 Apple Computer, Inc.
BiosVersion MP31.88Z.006C.B05.0802291410
Board-ID Mac-F42C88C8
BoardManufacturer 主機闆提供商 Apple Computer, Inc.
BoardSerialNumber 設定處理器托架的序列号
BoardType 11
BoardVersion 1.0
ChassisManufacturer 機箱提供商 Apple Computer, Inc.
ChassisAssetTag Pro-Enclosure
ChassisType 6
Family Mac Pro
Manufacturer 整機制造商 Apple Computer, Inc.
ProductName MacPro3,1
SerialNumber 4H629LYAU9C
SmUUID 格式應為00000000-0000-1000-8000-xxxxxxxxxxxx “xxxxxxxxxxxx”為你的網卡MAC值
Version 應為1.0
Mobile 若為移動平台,請設為yes
Trust 和内置定義的smbios table挂鈎,如果你的記憶體偵測存在問題請設定為NO試試
Memory
Channels 為通道數。一般舊主機闆是雙通道,即數值為2
SlotCount 插槽數,最大可支援24個插槽。
Size: 記憶體大小。通用有:512,1024,2048,4096.可整型,可字元型
Frequency: 記憶體頻率。常用800,1300,1600
Type: 插槽位置,值可為整型,也可字元型.值0~24.Type:記憶體條類型,有DDR2,DDR3,DDR
Vendor: 制造商,如Corsair
SystemParameters
SystemParameters
BacklightLevel //筆記本背景亮度調節,0xFFFF是最亮的,預設值0x0501,桌上型電腦可忽略
0xffff
CustomUUID //定制系統資訊中的硬體UUID
InjectKexts //啟用自動注入UUID功能 注:可能導緻每次開機的UUID千變萬化
InjectSystemID
Clover的關鍵是配置config
這裡給出一個模闆,然後根據自己的電腦組態自己修改
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ACPI</key>
<dict>
<key>DSDT</key>
<dict>
<key>Debug</key>
<false/>
<key>Fixes</key>
<dict>
<key>AddDTGP_0001</key>
<false/>
<key>AddHDMI_8000000</key>
<false/>
<key>AddIMEI_80000</key>
<false/>
<key>AddMCHC_0008</key>
<false/>
<key>AddPNLF_1000000</key>
<false/>
<key>DeleteUnused_400000</key>
<false/>
<key>FIX_ACST_4000000</key>
<false/>
<key>FIX_ADP1_800000</key>
<false/>
<key>FIX_INTELGFX_100000</key>
<false/>
<key>FIX_RTC_20000</key>
<false/>
<key>FIX_S3D_2000000</key>
<false/>
<key>FIX_TMR_40000</key>
<false/>
<key>FIX_WAK_200000</key>
<false/>
<key>FakeLPC_0020</key>
<false/>
<key>FixAirport_4000</key>
<false/>
<key>FixDarwin_0002</key>
<false/>
<key>FixDisplay_0100</key>
<false/>
<key>FixFirewire_0800</key>
<false/>
<key>FixHDA_8000</key>
<false/>
<key>FixHPET_0010</key>
<false/>
<key>FixIDE_0200</key>
<false/>
<key>FixIPIC_0040</key>
<false/>
<key>FixLAN_2000</key>
<false/>
<key>FixRegions_10000000</key>
<false/>
<key>FixSATA_0400</key>
<false/>
<key>FixSBUS_0080</key>
<false/>
<key>FixShutdown_0004</key>
<false/>
<key>FixUSB_1000</key>
<false/>
<key>NewWay_80000000</key>
<false/>
</dict>
<key>Name</key>
<string>DSDT.aml</string>
<key>ReuseFFFF</key>
<false/>
</dict>
</dict>
<key>Boot</key>
<dict>
<key>Arguments</key>
<string></string>
</dict>
<key>Devices</key>
<dict>
<key>FakeID</key>
<dict>
<key>ATI</key>
<string>0x0000</string>
<key>IMEI</key>
<string>0x0000</string>
<key>IntelGFX</key>
<string>0x0000</string>
<key>LAN</key>
<string>0x0000</string>
<key>NVidia</key>
<string>0x0000</string>
<key>SATA</key>
<string>0x0000</string>
<key>WIFI</key>
<string>0x0000</string>
<key>XHCI</key>
<string>0x0000</string>
</dict>
<key>USB</key>
<dict>
<key>AddClockID</key>
<false/>
<key>FixOwnership</key>
<false/>
<key>HighCurrent</key>
<false/>
<key>Inject</key>
<false/>
</dict>
</dict>
<key>GUI</key>
<dict>
<key>Scan</key>
<true/>
<key>Theme</key>
<string>black_green</string>
</dict>
<key>Graphics</key>
<dict>
<key>CustomEDID</key>
<string>_NOT_SHOWN_</string>
<key>DualLink</key>
<integer>1</integer>
<key>Inject</key>
<dict>
<key>ATI</key>
<false/>
<key>Intel</key>
<false/>
<key>NVidia</key>
<false/>
</dict>
<key>InjectEDID</key>
<false/>
<key>LoadVBios</key>
<false/>
<key>PatchVBios</key>
<false/>
<key>ig-platform-id</key>
<string>0x0000</string>
</dict>
<key>KernelAndKextPatches</key>
<dict>
<key>AppleRTC</key>
<false/>
<key>AsusAICPUPM</key>
<false/>
<key>Debug</key>
<false/>
<key>KernelCpu</key>
<false/>
<key>KernelLapic</key>
<false/>
<key>KernelPm</key>
<false/>
<key>KextPatchesAllowed</key>
<true/>
<key>KextsToPatch</key>
<array/>
</dict>
</dict>
</plist>