Skocz do zawartości

Patchowanie AppleHDA w locie.


Rekomendowane odpowiedzi

Dobry wieczór! Przeglądając ostatnio odmęty forum, wyczaiłem post Oswaldiniego, który pisał o tym, że Clover potrafi patchować AppleHDA w locie. Jest to ciekawa opcja, było gdzieś może konkretnie opisywane jak to zrobić? (Tak, dążę do idealnego hackintosha, który po update nie straci dźwięku).

Do tej pory korzystałem z tego: http://hamac.pl/topics30/legacyhda-alc8 ... vt9703.htm

Odnośnik do komentarza
Udostępnij na innych stronach

Czyli po dodaniu tego skrypciku do Clovera, w zasadzie będę miał z głowy patchowanie AppleHDA? ;)

#!/bin/sh 
# (c) oswaldini 2012 

if [[ `/usr/bin/grep -P -c '\x84\x19\xd4\x11' "/System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA"` > 0 ]]; then // sprawdzamy czy applehda ma oryginalny ciąg, którego nie powinno być po binpatchu, jeśli jest to wykonywane jest poniższe 

   sudo perl -pi -e 's|\x84\x19\xd4\x11|\x89\x08\xec\x10|g' "/System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA" // binpatch alc889 
   sudo perl -pi -e 's|\x83\x19\xd4\x11|\x00\x00\x00\x00|g' "/System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA" // binpatch alc889 

   sudo cp "/Extra/BackUp/Platforms.xml" "/System/Library/Extensions/AppleHDA.kext/Contents/Resources" // kopiowanie plików ze skrytki 
   sudo cp "/Extra/BackUp/layout889.xml" "/System/Library/Extensions/AppleHDA.kext/Contents/Resources" // kopiowanie plików ze skrytki 

   chown -R 0:0 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/Platforms.xml" // naprawa uprawnień 
   chmod -R 755 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/Platforms.xml" // naprawa uprawnień 

   chown -R 0:0 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/layout889.xml" // naprawa uprawnień 
   chmod -R 755 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/layout889.xml" // naprawa uprawnień 

   touch "/System/Library/Extensions" // przebudowa cache 
else 
   echo "already patched" // jeśli nie ma poszukiwanego ciągu to znaczy, że binpatch już jest i nie jest wykonywany ponownie 
fi

Odnośnik do komentarza
Udostępnij na innych stronach

Wyedytowałem sobie w TextWranglerze skrypt na swoje potrzeby, aby stosował patch wg tematu o AppleHDA by 314TeR.

Tak to wygląda obecnie dla ALC889 i Mavericks:

#!

/bin/sh 
# (c) oswaldini 2012 

if [[ `/usr/bin/grep -P -c '\x84\x19\xd4\x11' "/System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA"` > 0 ]]; then // sprawdzamy czy applehda ma oryginalny ciąg, którego nie powinno być po binpatchu, jeśli jest to wykonywane jest poniższe 

   sudo perl -pi -e 's|\x84\x19\xd4\x11|\x89\x08\xec\x10|g' "/System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA" // binpatch alc889 
   sudo perl -pi -e 's|\x83\x19\xd4\x11|\x00\x00\x00\x00|g' "/System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA" // binpatch alc889 

   sudo cp "/AppleHDA/Platforms.xml.zlib" "/System/Library/Extensions/AppleHDA.kext/Contents/Resources" // kopiowanie plików ze skrytki 
   sudo cp "/AppleHDA/layout12.xml.zlib" "/System/Library/Extensions/AppleHDA.kext/Contents/Resources" // kopiowanie plików ze skrytki 

   sudo chown -R 0:0 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/Platforms.xml.zlib" // naprawa uprawnień 
   sudo chmod -R 755 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/Platforms.xml.zlib" // naprawa uprawnień 

   sudo chown -R 0:0 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/layout12.xml.zlib" // naprawa uprawnień 
   sudo chmod -R 755 "/System/Library/Extensions/AppleHDA.kext/Contents/Resources/layout12.xml.zlib" // naprawa uprawnień 

   sudo touch "/System/Library/Extensions" // przebudowa cache 
else 
   echo "already patched" // jeśli nie ma poszukiwanego ciągu to znaczy, że binpatch już jest i nie jest wykonywany ponownie 
fi

 

Sprawdziłem po kolei wszystkie komendy w konsoli i jak to po kolei wklepię to patch działa.

Zapisałem jako plik rc.shutdown.local i umieściłem w katalogu /etc i nadałem mu prawa wykonywanie chmod -x

Co mam zrobić, żeby ten plik był wykonywany przy zamykaniu/restarcie, bo w tym momencie ewidentnie nie działa.

Z tego co wyczytałem to w obecnych wersjach osx ten plik nie jest już wykorzystywany, ale jak widać można to zrobić tak żeby działało.

Nie znam się na programowaniu i skryptach więc sorry jeśli zadaję jakieś banalne pytania.

Odnośnik do komentarza
Udostępnij na innych stronach

Plik ma mieć uprawnienia roota i chmod 755. Skrypt startuje po drugim rebootcie.

Wykonałem:

sudo chown -R 0:0 /etc/rc.shutdown.local 
sudo chmod -R 755 /etc/rc.shutdown.local

Potem dwa restarty i dalej dupa. :/

 

UPDATE:

A czy nazwa tego pliku nie powinna być rc.local.shutdown w wątku o Cloverze pisaliście w ten sposób?

 

Dupa zmieniłem nazwę i dalej nie działa.

Czy powinienem mieć w /etc również plik rc.local, bo obecnie takowego brak?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1 miesiąc temu...

Wykonałem:

sudo chown -R 0:0 /etc/rc.shutdown.local 

sudo chmod -R 755 /etc/rc.shutdown.local
Potem dwa restarty i dalej dupa. :/

 

UPDATE:

A czy nazwa tego pliku nie powinna być rc.local.shutdown w wątku o Cloverze pisaliście w ten sposób?

 

Dupa zmieniłem nazwę i dalej nie działa.

Czy powinienem mieć w /etc również plik rc.local, bo obecnie takowego brak?

 

 

 

tak powinienes miec taki plik - pozniej oba pliki potraktuj:

 

sudo chmod 644 /etc/rc.local

sudo chown root:wheel /etc/rc.local

sudo chmod 644 /etc/rc.shutdown.local

sudo chown root:wheel /etc/rc.shutdown.local

 

poza tymi plikami sa jeszcze inne i katalogi...

pliki:

rc.clover.lib

rc.local

rc.shutdown.local

katalogi:

rc.boot.d

rc.shutdown.d

 

a w katalogach kolejne skrypty

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie
 Udostępnij

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystanie z tej witryny, wymaga zakceptowanie naszych warunków Warunki użytkowania.