好多人都問如何內(nèi)建顯示器,以便加載亮度條!內(nèi)建顯示器是加載亮度條的必備條件之一!
加載亮度條是能不能夠調(diào)節(jié)顯示器的第一步!至于能不能調(diào)節(jié)顯示器的亮度,還要取決于顯示器的硬件調(diào)節(jié)方式,是dcc方式還是pwm方式。
能否加載亮度條,也就是亮度滑塊,本質(zhì)上是顯示器加載的是appledisplay還是Applebacklightdisplay!如果顯示器加載的是Applebacklightdisplay,那么在偏好設(shè)置-顯示器上就能看到亮度滑塊!
我這篇文章只教你如何加載亮度滑塊,至于能不能調(diào)節(jié)亮度取決于你的顯示器亮度調(diào)節(jié)方式,如果硬件支持,那么你只需按照相關(guān)的教程,繼續(xù)去仿冒環(huán)境光,打上pnlf的dsdt補(bǔ)丁,以及鍵盤快捷鍵的映射!
先說一下macOS是如何認(rèn)定加載ApplebacklightDisplay的!
macos是這樣判斷的,一是根據(jù)該端口的flags標(biāo)識(shí)符判斷是否是內(nèi)建端口,其次再判斷連接類型是否滿足條件(這個(gè)連接類型的條件目前還不甚明朗,只知道lvds和dp可以滿足,HDMI和一些轉(zhuǎn)接端口比如HDMI轉(zhuǎn)vga,dp轉(zhuǎn)typec,就不滿足條件),如果滿足即可加載亮度條,且顯示器類型加載的是Applebacklightdisplay。第二種方式,就是判斷顯示器edid的廠商和設(shè)備ID,如果是macos支持的,就繼續(xù)判斷連接類型,如果滿足條件就加載亮度條!
先說第一種內(nèi)建方式,內(nèi)建顯示器在顯卡端口上有且僅有一個(gè),也就是說你不能把兩個(gè)端口都設(shè)置成內(nèi)建,另外內(nèi)建端口僅在設(shè)置成有內(nèi)建屏幕的機(jī)型(imac以及MacBook)上才有作用,如果你的機(jī)型是macmini,那么就會(huì)造成該端口黑屏!其實(shí)這也是好多核顯在正確驅(qū)動(dòng)之后顯示器黑屏的原因之一!當(dāng)設(shè)置完你的機(jī)型之后,我們接下來操作,以十代uhd630舉例,核顯的平臺(tái)id分兩種一種是筆記本平臺(tái)例如3e9b0000,一種是臺(tái)式機(jī)平臺(tái)3e9b0007,還有一種03結(jié)尾的不顯示僅用做獨(dú)顯的輔助!筆記本平臺(tái)和臺(tái)式機(jī)平臺(tái)區(qū)別在于,筆記本平臺(tái)的第一個(gè)端口con0默認(rèn)是lvds并且標(biāo)記為內(nèi)建端口(這個(gè)用hackintool的接口選項(xiàng)卡里就可以看出來),如果你使用筆記本平臺(tái),并且設(shè)置其他的端口為內(nèi)建,那么一定記得將這個(gè)默認(rèn)的con0的flags設(shè)置成0x00000187(oc中使用framebuffer-con0-flags 87010000)來取消內(nèi)建!下面以端口1舉例設(shè)置為內(nèi)建端口,只需使用framebuffer-con1-flags 98000000即可,這個(gè)0x00000098即是macOS端口內(nèi)建的標(biāo)識(shí)符,使用了這個(gè)之后,當(dāng)然還要使用framebuffer-con1-enable使端口補(bǔ)丁生效,使用framebuffer-patch-enable使核顯補(bǔ)丁生效!
第二種,仿冒蘋果顯示器!這個(gè)更簡(jiǎn)單,打開ioreg工具,找到你核顯或獨(dú)顯的顯示器項(xiàng),找到你的顯示器display0(要是多個(gè)顯示器,你就拔掉一個(gè)),然后記下該顯示器在哪個(gè)端口也就是buffer@X,這個(gè)X就是端口號(hào),找到display0下的appledisplay或Applebacklightdisplay,找到iodisplayedid,將edid復(fù)制到文本編輯器里,去掉空格和開頭結(jié)尾的<>,將17至24位,這8個(gè)字符替換!這八個(gè)字符前四位即是供應(yīng)商ID,后四位即是產(chǎn)品ID,我們將其改成0610ce9c即可!當(dāng)然你可以嘗試更多的!蘋果支持的供應(yīng)商ID及產(chǎn)品id在系統(tǒng)-資源庫(kù)-displays-contents-resources-overrides下,目錄的后四位即是供應(yīng)商id,三位的要在前面加0!然后將修改過的edid復(fù)制下來,在oc中顯卡屬性里加上appl0x,override-no-connect,(建議使用oc對(duì)應(yīng)版本的occ添加右鍵視頻設(shè)備屬性,高級(jí)屬性edid)后面的屬性值就是你修改后的edid!
重啟后你就能看到顯示器出現(xiàn)亮度滑塊了!