DSDT patchen leicht gemacht?

  • Moin zusammen,


    ich bin auf der Suche nach einem Step-by-Step Guide, der einem beibringt, wo in der DSDT man seine Grafikkarte(n) korrekt einträgt und konfiguriert.


    Zum Beispiel:
    Ich habe hier einen i7 8700-k und eine RX580 8GB unter High Sierra.
    Dank der Hilfe von @CMMChris läuft nun alles mit entsprechenden Settings im Clover Configurator.
    Wie kann ich diese nun in die DSDT übertragen?



    Gruß
    Tim

    Rechner Mainboard CPU GPU RAM SSD/HDD OS
    Clover
    iHack18,3 Asus Prime Z370-A Intel i7-8700K Radeon RX 580 8GB 64GB, DDR4 NVMe 500GB
    SATA SSD 500GB,1TB
    macOS10.14.6
    aktuell
    iMac11.3 Apple Intel i5-760 Radeon HD 5750 16Gb, DDR3 1TB HDD,
    256GB SSD
    macOS10.12.6 -
    MBP 15 Retina
    (early 2013)
    Apple Intel i7-3630QM
    Intel HD Graphics 4000
    nVidia GF GT 650M
    16GB, DDR3 500GB mSATA macOS 10.16.1 -
  • Also ich bin jemand der gerne eine möglichst saubere Clover Config hat und deshalb gerne mit der DSDT und SSDTs spielt (auch wenn meine Kenntnisse da noch sehr begrenzt sind). Die Frage ist: Wie sieht es bei dir aus? Wenn dir die Clover Config egal ist, dann musst du nichts patchen und kannst einfach die Hotpatches drin lassen. Der Vorteil davon ist, dass du dank der Beschreibung gleich weißt was aktiv ist. Das kann später mal von Nutzen sein. Bei einer angepassten DSDT musst du dich selber um eine entsprechende Dokumentation kümmern, mit welcher du Anpassungen nachvollziehen kannst.


    Ansonsten sind die Patches die du jetzt aktiv hast nichts weiter als "Suchen und Ersetzen". Wenn du die DSDT patchen willst suchst du einfach mit MacIASL die Punkte die in den Hotpatches ersetzt werden und tust genau das. Dabei musst du auch die anderen ACPI Files prüfen, da die Renames hier auch nötig sein können. Die angepassten Files kommen dann nach ACPI/Patched und dann kannst du im CLover Configurator die Hotpatches auf "disabled" setzen und schauen ob alles läuft. Wenn ja, dann kannst du die im Nachgang aus der Config löschen.

    LG Chris


    Meine Hardware:

  • Macht gar kein Sinn mehr eine DSDT ab intel 9 Chipsatz.
    Wenn es dir nur um die korrekten Bezeichnungen geht, dann nimm PropertyInjector.kext.


    Wenn der DPCIManager alles richtig anzeigt was vorhanden ist, ist der Rest nur Kosmetik und das geht mit PropertyInjector.kext.

  • Eigentlich bin ich auch ein großer Freund des Häckchen-Setzen, wie man es mit dem Clover Configurator macht.


    Das Patchen der DSDT per MacIASL empfinde ich derzeit noch für zu kompliziert/unübersichtlich/aufwendig. Sprich also eher etwas für die richtigen NERDs.


    Aber vielleicht kommt ja irgendwann mal ein Entwickler einen Anfall und baut so etwas in der Art des CC für DSDTs/SSDT's?!
    Sprich nicht einfach drauf los patchen, sondern auch Patches wieder rückgängig machen, falls mal was in die Hose geht.
    Das Ganze in einem chicken UI verpackt und ich wäre glücklich.


    Doch bis dahin, bin und werde ich wohl ein großer Freund des CC sein. Auch wenn dieser "on-the-fly" patched, was einige hier im Forum wohl als die unelegantere Methode ansehen.


    Und ja, ich sehe auch beim CC noch einiges an Verbessungspotential. Denn viele Dinge die man dort einstellen kann, sind outdated oder man braucht sie einfach nicht in seiner Konfigurtion.
    Aber CC adressiert ja nicht nur die Leute mit der brandaktuellsten HW und der letzten macOS Version. Darum wird der ganze "überflüssige" Krempel ja imm noch benötigt.


    Doch so etwas kenne ich auch aus anderen Softwareprodukten. Da werden auch noch oftmals Dinge mitgeschleppt, die kein Mensch mehr braucht oder nutzt. Doch schmeißt man dass dann aus der Software raus und räumt das UI auf, gibt es immer wieder jemanden, der rummeckert, dass er den "den alten Scheiß" noch weiterhin braucht.
    Einfach eine ältere Version der Software zu nutzen, wo der alte Kram noch drin ist, geht ja auch nicht. Denn jeder will ja immer den neusten und tollsten Shit nutzen, auch wenn z.B. die genutzte HW und/oder OS Version schon eigentlich museumsreif sind.


    So ist der Mensch halt.

    Rechner Mainboard CPU GPU RAM SSD/HDD OS
    Clover
    iHack18,3 Asus Prime Z370-A Intel i7-8700K Radeon RX 580 8GB 64GB, DDR4 NVMe 500GB
    SATA SSD 500GB,1TB
    macOS10.14.6
    aktuell
    iMac11.3 Apple Intel i5-760 Radeon HD 5750 16Gb, DDR3 1TB HDD,
    256GB SSD
    macOS10.12.6 -
    MBP 15 Retina
    (early 2013)
    Apple Intel i7-3630QM
    Intel HD Graphics 4000
    nVidia GF GT 650M
    16GB, DDR3 500GB mSATA macOS 10.16.1 -
  • Du kannst die config.plist auch mit andern Apps bearbeiten. XCode ist dazu sehr gut geeignet, aber auch diverse Plist- und Text-Editoren. Ich nutze dazu auch ganz gerne mal Sublime Text, ist eh installiert.

  • Patches in der DSDT kann man doch rückgängig machen. Dazu musst du nur vor der Änderung ein Backup anlegen. Wenn dann was nicht geklappt hat, kannst du einfach wieder zurück gehen. Aber wenn dir das Bearbeiten der DSDT nicht zusagt, lass es einfach. Ist ja nicht zwingend notwendig.

    LG Chris


    Meine Hardware:

  • erstens das - backups nach möglichst jedem schritt, testen, weitermachen.
    und nicht leichtfertig die .dsl dateien wegschmeissen. dadrin lässdt sich nämlich per kommentar dokumentieren, was man so alles angestellt hat. auch die vorgefertigten patches lassen sich mit kommentaren versehen, so dass man die änderungen wiederfinden kann
    sprich: wenn man von der benutzten funktionierenden dsdt/ssdt jeweils auch eine .dsl-version mit "dokumentation" der änderungen in einem kommentar liegen hat, kann man auch bei "unfällen", wie biosänderungen&co, die ein neuerstellen der dsdt notwendig machen, schnell wieder auf dem funktionierenden stand sein.
    und beim testen immer eine funktionierende dsdt in der EFI liegen haben, auf die im worst case zurückgegriffen werden kann (z.b. dsdt-stable.aml)

    ersthilfe vor ort für altes zeugs (-> laptops) 8)

    berliner häckinTosh.stammTisch am 3.monatsmittwoch im maxFish/kunsthaus ACUD

    der stammtisch in berlin ist WIEDER DA!! nächster termin voraussichtlich: mittwoch 15.9.21, 19.00 uhr

  • Hi hi... mit genau diesen Antworten habe ich gerechnet!


    @Harper Lewis: Ich könnte hier im Forum auch die "Quellcode"-Funktion nutzen um meine Antwort zu schreiben und um den Text mit HTML-Tags auszuzeichnen. Aber stattdessen nutze ich doch lieber den "vollwertigen" Editor und freue mich, dass die einzelnen Absätze dann im Hintergrund automatisch korrekt formatiert werden oder ich per Mausklick etwas fett gestalten kann.


    @CMMChris: Jo, ist klar, das mit dem Backup machen. Ist aber sch... unkonfortabel!


    Versteht mich bitte nicht falsch. Ich arbeite seit Jahren mit Entwicklern im Bereich der Softwareentwicklung zusammen. Und da heißt es immer "Geht doch! musst du nur so oder so machen!".
    Nein, ich will als reiner Anwender nicht. Ich will auf nen Undo-Knopf klicken und dann ist's wieder so, wie's vorher war.
    Auch will ich mich als Anwender nicht durch Konfigurationsdateien mit kryptischen Einträgen quälen.
    Ich will einen Knopf, auf dem steht "Fix Graphics" und gut ist's.... Ne, eigentlich will ich als Awender auf gar keinen Kopf drücken müssen.


    Warum muss ich wissen, was für eine CPU und/oder GPU in meinem System steckt, nur um dann im Internet zu nachzuforschen, mit was für einer ID sich das Teil meldet? Kann das die Software nicht selbst heraus finden und automatisch da eintragen, wo es hingehört?
    Mir wird ja auch z.B. gesagt, "Schau mal im DPCIManager in der PCIList nach den Einträgen! Da steht dann, dies und das zu deiner HW!". Kann das die Software, die mein System konfigurieren soll nicht selbst nachschauen und entsprechend benötigte Patches einspielen?


    Jupp, ich weiß... das alles muss entwickelt werden und das wiederum kostet Zeit und Geld.
    Zudem neigen Entwickler nun einmal auch dazu, nur das Nötigste zu machen.
    Ein Entwickler weiß halt, das er z.B. ein Parameter setzen muss (z.B. eine CPU-ID) und dieses dann in irgendeine Ini-Datei, plist oder sonstwas geschrieben werden muss.
    Für den Entwickler ist es am Einfachsten, einfach ein Abfragefeld in die Software einzubauen (wenn überhaupt), wo dann der passende Wert/ID oder sonstwas von Hand eingetragen werden muss. Geht schnell und eignet sich auch wunderbar zum Testen.
    Wenn's dann läuft heißt es dann "Passt schon!" und wird's dann auch so veröffentlicht.


    Den Wert, den man braucht, dann auf andere Weise zu ermitteln (z.B. durch Abfrage der PCI-Liste), ist zusätzlicher Aufwand, den man nicht wirklich betreiben will (zumindest der Entwickler nicht). Also lässt man es weg und so wird sich ein Haufen Arbeit und Testerei gespart. Funktioniert ja auch so!


    Beruflich würde ich das so nie durchgehen lassen. Zumindest dann nicht, wenn die Software an Endverbraucher herausgegeben werden soll. Fehlende oder schlampige Dokumentation? -> Ein "No-go!".


    Und ja, mir ist bewusst, dass alles was aus der Hackintosh-Comutity kommt in erster Linie von Leuten stammt, die sich in Ihrer Freizeit damit beschäftigen und die meisten Sachen bis zum Status "good enough!" oder "It works!" entwickeln. Auch will man als Entwickler Lösungen schnell präsentieren und nicht erst Wochen/Monate nachdem das Problem aufgetreten ist.


    Als Hackintosh-User muss ich mit diesen "Einschränkungen" leben. Auch kann ich als Hackintosh-Endanwender nicht den Komfort erwarten, den ich bei kommerziellen, bis in die letzte Haarspitze hinein optimierten Projekten erwarte.


    Wünschen tue ich es mir aber trotzdem!


    Oh Mann... jetzt bin ich aber weit vom eigentlichen Thema abgewichen... lol
    Aber ich denke, ihr wisst, worauf ich hinaus will, oder?
    Und seit mir bitte nicht böse für mein Gejammere! Ich weiß eure Arbeit sehr zu schätzen.


    Gruß
    Tim

    Rechner Mainboard CPU GPU RAM SSD/HDD OS
    Clover
    iHack18,3 Asus Prime Z370-A Intel i7-8700K Radeon RX 580 8GB 64GB, DDR4 NVMe 500GB
    SATA SSD 500GB,1TB
    macOS10.14.6
    aktuell
    iMac11.3 Apple Intel i5-760 Radeon HD 5750 16Gb, DDR3 1TB HDD,
    256GB SSD
    macOS10.12.6 -
    MBP 15 Retina
    (early 2013)
    Apple Intel i7-3630QM
    Intel HD Graphics 4000
    nVidia GF GT 650M
    16GB, DDR3 500GB mSATA macOS 10.16.1 -
  • @FARV: Du hast ja Kritik am Clover Configurator geäußert, daher der Hinweis. Einige Entwickler raten sogar davon ab, diese App zum Bearbeiten der config.plist zu benutzen. Rehabman zum Beispiel. Es wäre natürlich schön, wenn man nur Clover installieren müsste und die Kiste rennt. Dafür gibt es aber viel zu viele unterschiedliche Hardwarekonfigurationen. Wenn man einen Hackintosh und macOS auf nicht driekt von Apple unterstützter Hardware nutzen möchte, ist halt viel Handarbeit erforderlich. Dennoch wird einem schon sehr viel Arbeit abgenommen, siehe z.B. Lilu und Plugins.