Legacy NVIDIA Yamalama
- Lütfen bu sayfanın daha çok bir bilgi dökümü olduğunu unutmayın, bu sayfayı daha fazla genişletmeyi planlasak da kurulum konusunda çok fazla ayrıntıya girmeyeceğiz.
Başlamak için aşağıdakileri göz önünde bulunduralım:
- macOS halihazırda, bir şekilde kurulmuş vaziyette mevcut.
- Belirli özellikleri belirlemek için macOS'un kurulu olmasına ihtiyacımız var.
- Ekran kartınız Fermi veya daha eski
- Kepler ve daha yenisinin DeviceProperties enjekte etmesine gerek yoktur.
- Lilu ve WhateverGreen kextleri yüklenmiştir
kextstat | grep -E "Lilu|WhateverGreen"
komutunu çalıştırarak doğrulayın.
Ekran Kartı Path(Yol)ini Bulma
gfxutil (Yeni bir sekme açar)'ı indirdikten sonra aşağıda verilen komutu çalıştırın:
Kod:
path/to/gfxutil -f display
Kod:
67:00.0 10DE:0A20 /PC02@0/BR2A@0/GFX0@0/ = PciRoot(0x2)/Pci(0x0,0x0)/Pci(0x0,0x0)
Kod:
PciRoot(0x2)/Pci(0x0,0x0)/Pci(0x0,0x0)
DeviceProperties Oluşturma
NVIDIA ekran kartları ile, açıkçası bu kurulum için çok fazla özellik gerekmiyor. Tavsiye ettiğimiz ana özellikler aşağıdadır:Özellik/Property | Değer/Value | Yorum/Comment |
---|---|---|
model | örn. GeForce GT 220 | Ekran kartınızın modeli, kozmetik... |
device_type | NVDA,Parent | Her zaman NVDA,Parent olarak ayarlayın |
VRAM,totalsize | örn. 0000004000000000 | VRAM boyutunu ayarlar |
rom-revision | Dortania | Bu özellik kesinlikle olmalı, ancak değeri herhangi bir şey olabilir. |
NVCAP | örn. 0500000000000F00000000000000000F00000000 | macOS'ta kullanılan görüntü özelliklerini ayarlar, daha fazla bilgi aşağıdadır |
@0,compatible | NVDA,NVMac | Her zaman NVDA,NVMac olarak ayarlayın |
@0,device_type | display | Her zaman display olarak ayarlayın |
@0,name | NVDA,Display-A | Her zaman NVDA,Display-A olarak ayarlayın |
@1,compatible | NVDA,NVMac | Her zaman NVDA,NVMac olarak ayarlayın |
@1,device_type | display | Her zaman display olarak ayarlayın |
@1,name | NVDA,Display-B | Her zaman NVDA,Display-B olarak ayarlayın |
Ve özellikleri hesaplayabilmek için bir diğer özellikler:
- model
- VRAM,totalsize
- rom-revision
- NVCAP
Model
Teknik olarak görüntü/kozmetik amaçlı, ancak macOS bu girdiye ihtiyaç duyar ve bu bağlamda bunu sağlayacağız. Formatımız aşağıdaki gibidir:
Kod:
GeForce [Aygıtın Modeli]
# Örnek
GeForce GT 220
VRAM,totalsize
hexadecimal olarak ekran kartınızın sahip olduğu VRAM boyutu.Bu örnek için; 1024MB VRAM'i, hexadecimal'e çevirelim:
Kod:
# 1024MB Megabitlerı, Bitlere çevirelim
echo '1024 * 1024 * 1024' | bc
1073741824
# decimal'den, hexadecimal'e çevirelim
echo 'obase=16; ibase=10; 1073741824' | bc
40000000
# Düzgün bir şekilde enjekte olması için Hex değiştirelim
# örn. çiftler şeklinde değiştirelim
40000000 -> 40 00 00 00 -> 00 00 00 40
# Değeri 8 bitlere, sonuna 00 ekleyerek uzatalım
00 00 00 40 00 00 00 00
# Ve işlem tamamdır
VRAM,totalsize = 0000004000000000
rom-revision
Tamamen başka bir value/değer olabilir, ancak özellik kesinlikle eklenmiş olmalıdır. Aksi takdirde bazı ekran kartları başlatmada hata verecektir(örn. GT 220'ler)
Kod:
rom-revision = Dortania
NVCAP
NVCAP değerimizi hesaplamamız gerekeceği için burası eğlencenin başladığı yer. Şanslıyız ki 1Revenger1, bizim için işlemleri otomatikleştirecek bir araç yaptı: NVCAP Calculator(Yeni bir sekme açar)Bu programı kullanmak için, basitçe VBIOS'unuzu buradan(TechPowerUp çoğu VBIOS'u barındırır (Yeni bir sekme açar)) alın ve Terminal'inizde NVCAP-Calculator'u çalıştırın.
Çalıştırdığınız zaman aşağıdaki ekranı görmelisiniz:
Programa VBIOS'unuzu sürükleyin ve sonra enter'a basın. Sizi ana menüye götürdüğü zaman, NVCAP hesaplama sayfasına gitmek için 2.seçeneği seçin.
Burada NVCAP-Calculator'un bulabildiği connector'leri(DVI/DP vb.) görebilirsiniz. Her ekran, DVI (normalde iki giriş olarak görünür) veya çoklu DCB girişleri gibi birden fazla DCB girişini gösterebilir. Buradaki amaç, her ekranı bir kaynağa atamak. Her kaynak aynı anda yalnızca bir ekrana çıkış verebilir. Örneğin, 2 DVI portu kullanıyorsanız, düzgün çift monitör desteğine sahip olmak için her birinin kendi kaynağı olması gerekir.
Bazı ekranların otomatik olarak atanabileceğini unutmayın. Bir LVDS ekranı otomatik olarak kendi kaynağına yerleştirilir ve ayrıca TV ekranları otomatik olarak TV kaynağına yerleştirilir.
Ekranları atamaya başlamak için
1
'e basın. Bir ekranı, bir kaynağa atamak için; ekranın numarasını ve ardından kaynağın numarasını yazın. Örneğin 1 1
yazmak böyle bir sonuç verecektir:Ekranı, kaynaktan kaldırmak için tekrar
1 1
yazabilirsiniz. Ekranları atamak ile işiniz bittiğinde, bunun gibi görünmeli:Ekranları ayarlamayı bitirdikten sonra
q
'ye basarak diğer NVCAP ayarlarına dönün. Diğer NVCAP ayarlarını aşağıdaki gibi ayarlamalısınız:NVCAP Değeri/Value | Detaylar | Örnek Komutlar |
---|---|---|
Version | 7 serisi ve daha eskisi için 04 , 8 serisi ve daha yenisi için 05 | 3 , sonrasında 4 |
Composite | S-Video için 01 , aksi takdirde 00 | geçiş yapmak için 4 |
Script based Power/Backlight | 00 , sadece gerçek MacBook Pro'lar için kullanışlıdır | geçiş yapmak için 3 |
Field F (Unknown) | 300 serisi veya daha yenisi için 0F , aksi takdirde 07 | 6 , sonrasında 0x0f |
Tamamladığınız zaman, NVCAP değerini hesaplamak için
c
'ye girin:Artık NVCAP değeriniz var!
Kod:
NVCAP:
05000000 00000300 0c000000 0000000f 00000000
NVCAP değerinin nasıl hesaplandığına dair döküm isteyenleriniz için:
Bilgi WhateverGreen'in NVCAP.bt (Yeni bir sekme açar) dosyasından elde edilmiştir.
NVCAP Bit | Name/İsim | Comment/Yorum |
---|---|---|
Byte 1 | NVCAP Version | 7 serisi ve daha eskisi için 04 , 8 serisi ve daha yenisi için 05 |
Byte 2 | Laptop with Lid | true değeri için 01 , aksi takdirde 00 | Lid içeren/sahip olan Laptoplar |
Byte 3 | Composite | S-Video için 01 , aksi takdirde 00 |
Byte 4 | Backlight | Backlight'i olan Tesla V1 için 01 , aksi takdirde ekran tipine bakmaksızın yeni ekran kartları için 00 |
Bytes 5+6 | TVDCBMask | 00 00, DCB'nin 5 girişi ile ilgilidir |
Bytes 7+8 | Head0DCBMask | 00 00 , aşağıya bakın |
Bytes 9+10 | Head1DCBMask | 00 00 , aşağıya bakın |
Bytes 11+12 | Head2DCBMask | 00 00 , Fermi ve daha eskisine uygulanamaz |
Bytes 13+14 | Head3DCBMask | 00 00 , Fermi ve daha eskisine uygulanamaz |
Byte 15 | ScriptBasedPowerAndBacklight | 00 , sadece gerçek MacBook Pro'lar için uygundur |
Byte 16 | Unknown | 300 serisi ve daha yenisi için 0F , aksi takdirde 07 |
Byte 17 | EDID | 00 |
Byte 18 | Reserved | 00 |
Byte 19 | Reserved | 00 |
Byte 20 | Reserved | 00 |
Son Rötüşlar
Tüm özelliklerimizi aldığımıza göre artık bunları config.plist'imize ekleyebiliriz:
Kod:
PciRoot(0x2)/Pci(0x0,0x0)/Pci(0x0,0x0)
model | String | GeForce GT 220
device_type | String | NVDA,Parent
VRAM,totalsize | Data | 0000004000000000
rom-revision | String | Dortania
NVCAP | Data | 05000000 00000300 0c000000 0000000f 00000000
@0,compatible | String | NVDA,NVMac
@0,device_type | String | display
@0,name | String | NVDA,Display-A
@1,compatible | String | NVDA,NVMac
@1,device_type | String | display
@1,name | String | NVDA,Display-B
config.plist'i açın ve
DeviceProperties -> Add
kısmına girin, ardından new child olarak girdi açın ve adını gfxutil
ile bulduğunuz ekran kartı yolunuzu yapın. Sonra, özellikleri children girdisi olarak PciRoot'a ekleyin. Bitirdiğiniz zaman buna benzer görünmeli:Kaynakça: Legacy Nvidia Patching | OpenCore Post-Install
Notlar:
- Legacy > Eski
- Head > Kaynak
- Display > Ekran
- Device > Aygıt
- GPU Path > Ekran Kartı Yolu
- Config.plist'teki DeviceProperties > Aygıt Özellikleri denilebilir fakat çevirilmemesi daha mantıklı.
- Properties > Özellikler
- Property > Özellik, Comment > Yorum, Value > Değer, Name > İsim
Son düzenleme: