Windows über Opencore

  • Guten Tag!


    Ich habe eine Frage:

    Macht es einen Unterschied, ob ich Windows über Opencore oder den eigenen Bootmanager starte? Ich habe zwei NVMe SSD. Eine für Windows 11, eine für MacOS 15.

    Mein MacOS läuft so weit sehr stabil, aber ich habe mich gefragt, ob Windows, wenn es über Opencore gestartet wird, die Hardwarekomponenten "anders" initialisiert, da es sich evtl die Informationen aus den SSDTs holt und nicht selbst initialisiert? Oder ist der Gedanke Quatsch?

    Unter PlatformInfo in der config.plist habe ich das Bios auf "Custom" gesetzt. Vorher hat Windows den PC im Gerätemanager immer als iMacPro angezeigt und ich konnte manche Software unter WIndows nicht installieren, da das System nicht unterstützt werde.


    Besten Gruß!

  • Ja und nein bzw. es kommt darauf an wie Deine EFI aufgebaut ist...


    Generell unterscheidet OpenCore nicht zwischen verschiedenen Betriebssystemen bedeutet also alle Änderungen sowohl bezüglich des SMBIOS als auch ACPI werden gleichermaßen auf alle Systeme die gestartet werden sollen angewandt es gibt aber natürlich Möglichkeiten das zu beeinflussen. Bezüglich des SMBIOS kannst Du über den Quirk "CustomSMBIOSGuid" im Bereich Kernel->Quirks sicherstellen das das "Apple" SMBIOS nur für macOS zum tragen kommt und für alle anderen nicht. Bezüglich der ACPI Dateien musst Du halt sicherstellen das Du überall _OSI Weichen einbaust um Deine Modifikationen nur für Darwin (macOS) anzuwenden und ansonsten eben nicht. Im Idealfall kannst Du also Deine EFI so aufstellen das Du beides ohne Probleme darüber starten kannst...


    Abgesehen davon ist Windows aber gerade im Bezug ACPI einigermaßen tolerant und schluckt vieles von dem was wir uns hier so zurechtbiegen problemlos bzw. ignoriert es schlicht und ergreifend dennoch sollte immer gelten soviel Änderungen am ACPI wie nötig und so wenig wie möglich und bei den Änderungen sauber arbeiten und _OSI Weichen implementieren.

  • Hallo griven


    Vielen Dank für deine Antwort.


    Also meine EFI ist nach Infosammlung aus sämtlichen Foren/Guides zusammengebaut :) Ich habe auf jeden Fall einiges richtig gemacht, da Sequoia doch sehr rund läuft nach meiner Einschätzung. Ich habe 6 SSDTs eingebunden, die ich mit SSDTtime unter Windows erstellt habe. Aber genau da liegt evtl auch der Hund begraben. Ich bin selbst nicht sicher, ob ich da alles so richtig zurecht gebogen habe, weil ich bei vielem dann doch auch überfragt bin. da ließe sich bestimmt einiges noch fein justieren. aber im Grunde bin ich damit momentan happy, weil ich das, was ich mit MacOs machen wollte, eben auch problemlos machen kann. Das mit dem Quirk "CustomSMBIOSGuid" hatte ich bereits gemacht, aber ich hatte dennoch das Gefühl, dass WIndows irgendwie runder läuft, wenn ich es per Bootmanager von Windows starte. Momentan drücke ich halt F8 beim start, wenn ich in MacOS booten möchte. Das ist auch nicht weiter tragisch. Vor allem wenn ich da evtl Dinge Falsch bzw nicht bearbeitet habe, was die SSDTs angeht. Dann starte ich lieber so und beschäftige mich nochmal mit der richtigen Konfig.

  • Ich bin von SSDTtime erstellen SSDTs wieder zurück zu Dortanias, weil Windows damit nicht wollte (also aus OC heraus gebootet).

    So einen großen Unterschied hab ich auch garnicht gesehen im Quervergleich mittels MaciASL

  • Das ist strange, denn die Tables die SSDTTime generiert, sind eigentlich viel genauer auf das jeweilige System abgestimmt, als die, die bei OpenCore dabei sind.


    Ich hatte das Problem auch schinmal, dass Windows in nem blue screen enddete, wenn es aus OC gestartet wurde. Am Ende lag es aber nicht an den SSDTs, sondern an einer Config Einstellung – ich weiß aber nicht mehr genau welche es war; eventuell EnableWriteUnprotector oder ProtectUefiServices.

  • Ich habe die Erfahrung, das Windows zum Booten XOSI-Patch und SSDT-XOSI.aml im ACPI haben will. CostumSMBIOSGuid muss ich mal prüfen. Wäre glaube ich eine gute Lösung, soweit ich das noch nicht habe.

    Grüße

    Arkturus

    "Ein Hackintosh ist wie ein Garten - es gibt immer was zu tun"

  • Arkturus Bei Zustrom musst du die PCI-Pfade deiner Laufwerke in der Openshell mappen.

    Am besten in eine Datei, z.B.


    map > pciroot.txt


    Es gibt hier irgendwo im Forum eine Anleitung. Mir hat damals karacho geholfen.


    Da musst du dir aus den Pfaden einen Custom-Entry für Misc -> Entries bauen.


    Anleitung von karacho

    PCIROOT Pfade für Custom Entries für OpenCore heraus finden.


    Anleitung von Maddeen

    PCI-ROOT-PFADE UND UUIDS für Custom Entries und verstecken von Partitionen (Detailversion)


    Ich denke mal, dass uns karacho hier wieder helfend zur Seite steht.

    Images

  • Das ist strange, denn die Tables die SSDTTime generiert, sind eigentlich viel genauer auf das jeweilige System abgestimmt, als die, die bei OpenCore dabei sind.

    Das macht ja auch am meisten Sinn, da SSDTtime dann ja ein genaues Abbild von den Parametern des Mainboards erstellt oder? Und da unterscheiden sich die Mainboards ja alle untereinander was Powermanagement und all das Gedönse angeht :)


    Arkturus


    Ich habe die Erfahrung, das Windows zum Booten XOSI-Patch und SSDT-XOSI.aml im ACPI haben will. CostumSMBIOSGuid muss ich mal prüfen. Wäre glaube ich eine gute Lösung, soweit ich das noch nicht habe.

    Wenn man "CustomSMBIOSGuid" aktiviert, nutzt nur MacOS das SMBios. Zumindest nach meinem Verständnis :) Sonst hatte ich immer das Problem, dass Windows den PC als "iMacPro" erkannt hat oder meinen MSI Laptop als "MacBookPro". Dadurch konnte ich dann manche Programme nicht installieren unter WIndows.

  • Hatte ich mal gemacht. Da war ein Dummy n der configf.plist, wie lediglich die UUID einzutragen war. Habe ich aber schon lange nicht mehr. Die Microsof/Boot/Bootx64.efi liegt neben OC in der ESP und gut ist.


    In meiner config.plist war "CustomSMBIOSGuid" aktiviert. Dav1310 Ich nutze Windows nur sehr gelegentlich, da ist mir das nicht weiter aufgefallen.

    Grüße

    Arkturus

    "Ein Hackintosh ist wie ein Garten - es gibt immer was zu tun"

  • In meiner config.plist war "CustomSMBIOSGuid" aktiviert. Ich nutze Windows nur sehr gelegentlich, da ist mir das nicht weiter aufgefallen.

    Ich nutze Mac immer für meinen Kreativkram, Musikbearbeitung, amateurmäßiges Videoediting mit Davinci. Windows ist zum Zocken da :)


    Aber zb kann ich bei meinem MSI Laptop die Lüfterkurven nicht im Bios einstellen. Nur in einer MSI App für Windows. Das war halt ultranervig, dass ich diese App dann nicht ausführen konnte, da WIndows "dachte", es liefe auf einem Mac und jedes mal wenn ich auch nur eine Datei kopiert habe, hatte ich das Gefühl, dass jemand in meinem Kopf saugen würde.

  • Ich hatte das Problem auch schinmal, dass Windows in nem blue screen enddete, wenn es aus OC gestartet wurde. Am Ende lag es aber nicht an den SSDTs, sondern an einer Config Einstellung – ich weiß aber nicht mehr genau welche es war; eventuell EnableWriteUnprotector oder ProtectUefiServices.

    hey danke, es lag tatsächlich an EnableWriteUnprotector


    ST3R30 bei SSDT-PNLF bin ich wieder auf die Dortania Version zurück, weil mit der SSDTtime erstellten die Helligkeit nicht mehr eingestellt werden konnte. Wobei hier die Dortania tatsächlich nur 1 KB groß ist und SSDTtime 105

  • Guten Morgen Leute, ich brauch mal eure Hilfe.

    Ich bin gerade dabei am T15 die PCIROOT-Pfade für meine Einträge in Misc-Entries mit dem Befehl "map > XXXX.txt" auszulesen.

    Dabei ist mir aufgefallen, dass nach dem Eintrag der Partition-UUID zwei HEX-Werte fehlen.


    PciRoot(0x0)/Pci(0x1D,0x4)/Pci(0x0,0x0)/NVMe(0x1,4A-01-00-90-6C-A7-79-64)/HD(1,GPT,3BEC26D1-14A9-45F5-A829-1C38EBFCCAE8)


    Das war früher anders. Nach dem roten Eintrag müssten eigentlich zwei HEX-Werte folgen.


    So wie bei diesem Eintrag, den ich früher in der Openshell generiert habe.


    PciRoot(0x0)/Pci(0x1B,0x4)/Pci(0x0,0x0)/NVMe(0x1,13-01-00-E0-9F-A7-79-64)/HD(2,GPT,A3F5C908-5BDA-44D3-BCFF-B3F3EC0DEDD0,0x109000,0x31800)/\EFI\Microsoft\Boot\bootmgfw.efi


    Ich habe es nochmal bei meinem Z490 getestet.

    Ist dort genauso.


    Daher meine Frage: "Hat sich was in der Openshell geändert? Oder sich da eventuell sogar ein Bug eingeschlichen?"


    Es hat sich tatsächlich was geändert.

    Ich habe mir mal aus der Version 0.65 die Openshell geladen.

    Warum Version 0.65? Weil ich zu der Zeit mein Gigabyte Z490 bekommen habe.

    In meinen Tools liegt jetzt Openshell.efi und Openshell065.efi

    Habe aus dem Picker die alte Openshell gestartet.

    Die HEX-Werte werden jetzt angezeigt.


    FS1: Alias(s):HD1b:;BLK3:

    PciRoot(0x0)/Pci(0x1D,0x4)/Pci(0x0,0x0)/NVMe(0x1,4A-01-00-90-6C-A7-79-64)/HD(1,GPT,3BEC26D1-14A9-45F5-A829-1C38EBFCCAE8,0x28,0x64000)


    Der Boot-Manager für Windows liegt somit bei


    PciRoot(0x0)/Pci(0x1D,0x4)/Pci(0x0,0x0)/NVMe(0x1,4A-01-00-90-6C-A7-79-64)/HD(1,GPT,3BEC26D1-14A9-45F5-A829-1C38EBFCCAE8,0x28,0x64000)/\EFI\Microsoft\Boot\bootmgfw.efi


    Daran tüftele ich schon eine Woche. <X

    Edited 4 times, last by bluebyte ().

  • bluebyte Ob sich an der Shell was geändert hat, kann ich dir nicht sagen. Habe seit langem keine UUID-Pfade mehr exportiert. Evtl. kann mhaeuser was dazu sagen. Mir ist aber schon vor 2 oder 3 Jahren aufgefallen, dass meine config.plist nach dem bearbeiten/editieren via Shell geschrottet war, so wie im Thread von Dav1310 beschrieben OC: Fail to open configuration/invalid plist obwohl ich nur ein Bootargument hinzugefügt hatte.

    Gruß, karacho



    Bitte keine Supportanfragen via PN. Eure fragen gehören ins Forum!

    Ich hab noch drei Patronen, eine für dich und zwei für mich...

  • bluebyte Das ist kein Bug: https://github.com/tianocore/e…9d793ee21e9c2f2e7ddbb2176


    Das selbe "Problem" gibt es auch für andere Node-Typen, u.a. PciRoot, PcieRoot, Ata, usw. Es gibt leider auch keinen Konfigurationsparameter innerhalb der Shell, um den Modus umzustellen. Deshalb immer die DPs aus der OC-Log verwenden.


    karacho Würde niemals in der UEFI-Umgebung auf Dateisysteme schreiben, gerade der Standard-FAT32-Treiber von AMI-Firmware hat teils schwerwiegende Bugs.

  • mhaeuser vielen Dank für die Rückmeldung.

    Es gab mir nur zu den denken, weil "Openshell" von Opencore V.0.65 die Pfade korrekt ausgibt. Läuft ja mit der alten Shell auf meinen beiden Desktop und auf meinen beiden Notebooks.

  • Ja, es läuft "zufällig", weil andere Nodes schon immer von solchen Verkürzungen betroffen waren. Bei gewissen Pfaden wird auch die alte Shell nicht funktionieren.

  • bluebyte Um Windows zu booten ist nicht zwingend ein Eintrag in den Entries nötig. Stell die ScanPolicy auf 0 und blende per Auxiliary aus, was du im Picker nicht sehen willst.

    Gruß, karacho



    Bitte keine Supportanfragen via PN. Eure fragen gehören ins Forum!

    Ich hab noch drei Patronen, eine für dich und zwei für mich...

  • Wenn Scanpolice auf 0 gesetzt wird muss in UEFI/Apfs Fastboot aktiv sein, was dann nicht mehr mit den apfs dingsbums Treiber wegen FV2 in Tahoe korrespondiert karacho Außerdem habe ich Zweifel das dadurch das APCI Problem gelöst wird.


    warum Fastboot deaktiviert werden muss habe ich nicht verstanden, denn es läuft auch mit der der geladenen apfs_ xy.efi.

    Grüße

    Arkturus

    "Ein Hackintosh ist wie ein Garten - es gibt immer was zu tun"

  • Außerdem habe ich Zweifel das dadurch das APCI Problem gelöst wird.

    Darum ging es mir auch nicht, sondern nur darum Windows ohne einen Eintrag in Entries zu booten. Ich nutze den von dir besagten apfs_aligned.efi Treiber nicht, daher habe ich Jumpstart bei mir eingeschaltet.


    PS. Ich boote Windows und Linux auch nicht per OpenCore, sondern per F8 über das BIOS Bootmenü.

    Gruß, karacho



    Bitte keine Supportanfragen via PN. Eure fragen gehören ins Forum!

    Ich hab noch drei Patronen, eine für dich und zwei für mich...

  • karacho viele Wege führen nach Rom. Ich mach dass halt so, weil ich dadurch auch die Möglichkeit habe, den Eintrag nach meinen Wünschen zu benennen. Früher hatte ich auch mal den Eintrag "Boot Camp". :D Und so wild ist das nun auch nicht. Beim Z490 habe ich das mal vor 5 Jahren gemacht, als ich den Rechner zusammengebaut habe. In der Zeit habe ich sogar die NVME für Windows getauscht. Alte 1TB auf neue 4TB geklont. Dadurch blieb die UUID erhalten. So lange man sich an gewisse Regeln hält, ist der Eintrag auch in 100 Jahren noch gültig. Dann haben wir bestimmt schon Holo-Speicher mit 1000 Exa-Byte.8)