Ekran kartı belki de Hackintosh sisteminin en önemli parçasıdır ve bu konuda büyük sorunlar yaşanmakta. High Sierra öncesinde insanları Nvidia ekran kartı almaya yönelten Apple Nvidia'nın ürün politikası, yazılımını paylaşmaması ve ekran kartlarında çıkan sorunlar nedeniyle bir çıkmaza girdi ve radikal bir karar aldı. Bu doğrultuda Apple artık tüm ürünlerinde hem daha iyi hem daha ucuz hemde daha performanslı olan AMD GPU'ları kullanmaya başladı.
Her ne kadar birçok AMD GPU macOS sistemlerinde otomatik tanınsa da bazı ürünler desteklendiği halde tanıtılamayabiliyorlar. Bu kartları kullanabilmek için Fake ID dediğimiz sahte aygıt kimliği kullanamamız gerekebiliyor. İşin bu kısmında her ne kadar Clover bootloader çok basit bir çözüm sunsada sunduğu çözüm grafik kartlarında performan kaybına sebep olabiliyor. OpenCore ise bize biraz daha zor gözükebilen ama grafik performansımızı tam olarak kullanabileceğimiz kalıcı bir çözüm sunmakta.
macOS tarafından desteklenen kartları incelemek için
@Seyfullah N arkadaşımızın hazırlamış olduğu rehberi inceleyebilirsiniz.
Sistemlerinin Grafik Performansını Arttırmak İsteyen Kullanıcılar İçin Catalina Ekran Kartı Rehberi ! Bildiğiniz üzere MacOS tüm ekran kartlarını desteklemiyor . Geçen sene yaptığımız Mojave için olan ekran kartı listemizi bu sene Catalina için düzenliyoruz . Çok fazla fark olmamakla birlikte...
osxinfo.net
Bizim konumuz ise bu ürünlerden sadece Fake IO kullanılması gereken ürünlerin OpenCore ile nasıl tanıtılacağı. İsterseniz öncelikle bu kartların hangi kartlar olduğuna bir bakalım.
- R9 290/390
- R9 280/380
- R7 270/370
- R9 260/360
- R7 250
- R7 240
Görmüş olduğunuz gibi yukarıda belirtiğimiz kartlar her ne kadar macOS üzerinde çalışsa da bu kartların çalışabilmesi için Fake ID kullanılması gerekmekte.
@montezuma bu konuyu daha önce aşağıdaki rehberde dile getirmiş ve birçok kartın Clover ile çalışabilmesi için Fake ID kullanımını göstermişti.
El Capitan ve Sierra sürümlerde uyku sonrası AMD Kartları çalışmıyor. bu sorunu yaşarsanız şu anki tek çözüm sistemi iGPU üzerinden boot etmek. GİRİŞ Çoğunuz, Hackintosh satın alma rehberlerinin tek bir uyumlu AMD Radeon kartı içermediğini fark etmişsinizdir. Bu, birçok insanın OS X ile uyumlu...
osxinfo.net
Burada ise bu kartların OpenCore bootloader ile nasıl tanıtılacağını göreceğiz, bunun için bize lazım olanlar aşağıdaki gibidir.
Bölüm 1 : Ekran Kartımız için Uygun Aygıt Kimliği Bulma
Bunun için genellikle
PCI ID Repository adresini kullanabiliriz. macOS üzerinde Hackintool uygulamasında PCIe sekmesine gelip burada görebilirsiniz.
Konu biraz daha anlaşılabilir olsun istiyorum bu yüzden bir örnek verelim. Kullandığımız kart R9 390 modeli olsun ve bu aygıta en yakın native tanınan kart R9 390X modeli şimdi biz bu R9 390X modelinin bilgilerine bakalım 0x67B01002 olarak görünmekte yani bu cihazın Vendor ID (üretici Kimliği) 1002 ve Device ID (Aygıt Kimliği) 67B0 bizim burada kullanacağımız değer sadece Device ID olacaktır.
Device ID : 67B0
SSDT dosyası içerisinde kullanılacak hali
Kod:
"device-id",
Buffer (0x04)
{
0xB0, 0x67, 0x00, 0x00
},
Bölüm 2 : Ekran Kartımızın ACPI Yolunu Bulma
Bu bölüm sizlere biraz karışık gelebilir ama dikkatli takip ederseniz gayet basit olduğunu göreceksiniz.
Bu bölümde windows lazım olacak. Bunun için portatable bir windows bile kullansanız olabilir.
Aygıt yöneticisini açıyoruz.
Görüntü Bağdaştırıcıları sekmesini genişletiyoruz ve Grafik Kartımıza sağ tuşla tıklayıp Özellikleri seçiyoruz.
Ayrıntılar sekmesini açıyoruz ve burada Özellik içerisinden "Komum Yolları" seçeceğini seçiyoruz.
Bazı sistemlerde "Konum Yolları" yerine "Bios Aygıt İsmi" diye bir değer olabilir.
Eğer cihazınızda "Bios Aygıt İsmi" görünmekte ise şöyle bir değeri olacaktır.
Örnek
\_SB_.PC02.BR2A.PEGP
Eğer cihazınızda "Komum Yolları" var ise iki farklı değer karşınıza çıkacaktır bunlardan ilk sırada olan PCIRoot ile başlayanla işimiz yok işimiz ikinci değer ile.
Örnek
ACPI(_SB_)#ACPI(PC02)#ACPI(BR2A)#ACPI(PEGP)#PCI(0000)#PCI(0000)
Şimdi bu değeri bizim kullanacağımız değere dönüştürelim. Bunun için ACPI ve #PCI(0000) değerlerini siliyoruz.
(_SB_)#(PC02)#(BR2A)#(PEGP)
Şimdi değerimizi biraz daha sadeleştiriyoruz.
"(" ve ")" ifadelerini siliyoruz.
"#" ifadesini ise "." ile değiştiriyoruz.
_SB_.PC02.BR2A.PEGP
Görmüş olduğunuz gibi "Bios Aygıt İsmi" ile görünen değer ile sadeleştirmiş olduğumu "Konum Yolları" içerisindeki değer birebir aynı.
Şimdi geldi SSDT içerisinde kullanmaya
SSDT dosyamızı açtığımızda açtığınızda aşağıdaki kodu bulalım.
Kod:
External (_SB_.PCI0, DeviceObj)
External (_SB_.PCI0.PEG0.PEGP, DeviceObj)
Burada yapacağımız örneğimize göre şu şekilde olacak.
- PCI0 değeri PC02
- PEG0 değeri BR2A
Sonuç olarak SSDT dosyamızda kod aşağıdaki şekilde değişecek.
Kod:
External (_SB_.PC02, DeviceObj)
External (_SB_.PC02.BR2A.PEGP, DeviceObj)
Ayrıca SSDT içerisinde aşağıdaki iki ayrı kodu da aynı şekilde değiştirmemiz gerekiyor.
Orijinal Kod
Kod:
Scope (\_SB_.PCI0.PEG0.PEGP)
Örneğimize Göre Değiştirilecek Kod
Kod:
Scope (\_SB_.PC02.BR2A.PEGP)
Orijinal Kod
Örneğimize Göre Değiştirilecek Kod
Bu işlemlere ek olarak cihaz adımızı ayarlayabiliriz.
Kod:
"model",
Buffer ()
{
"Cihazınızın Adını Buraya Girin"
}
Bu işlemlerden sonra SSDT dosyamızı Compile edip aml olarak kaydedebiliriz.