Help - Search - Members - Calendar
Full Version: HowTo: EFI
InsanelyMac Forum > OSx86 Project > Your Language > Deutsch > Anleitungen
fassl
EDIT: Es gibt jetzt eine alternative zu PC_EFI und nennt sich Chameleon, gibts in #chameleon im osx86 irc oder chameleon.osx86.hu

Vorteile:
  • Software RAID Support
  • Eine boot0 und boot1h für MBR als auch für GUID
  • Neuer Bootloader kann installiert werden indem man ihn einfach nach root kopiert -> /boot
  • Braucht kein startupfiletool mehr, d.h. man kann es im laufenden Betrieb installieren.


EFI (Extensible Firmware Interface)

ist sozusagen der Nachfoler des BIOS und wird von Apple benutzt.
Wer mehr dazu erfahren will: http://de.wikipedia.org/wiki/Extensible_Firmware_Interface

Für uns ist aber in erster Linie PC_EFI interessant.


Was ist PC_EFI eigentlich?
  • es ist ein modifizierter Darwin Bootloader der ein paar Informationen in den RAM schreibt, das macht normalerweise EFI, aber da wir kein EFI sondern BIOS haben, müssen wir auf dieses fake EFI zurückgreifen
  • es erlaubt uns Vanilla Kernel (ungepatcht/original Apple) zu benutzen (dsmos.kext muss "installiert" sein)
  • unsere Hackmacs werden oder sollten bei Geekbench und System Profiler nicht mehr als Hackintoshe angezeigt werden
  • die neueste Version V8 unterstützt schon GUID und GFX-STRINGS
  • GUID ist die Apple Partitionstabelle
    • Vorteil: ist die Platte mit GUID formatiert kann man problemlos Partition vergrößern/erstellen etc.
    • Nachteil: Dual/Triple Booting kann ein schweres Unterfangen werden
  • GFX-STRING
    • macht eigentlich nichts anderes als die Injektoren, wie zB alcINJECT, nvINJECT, atiINJECT... wie man am Namen erkennen kann, ijezieren diese Kexte etwas. Sie sind keine Treiber, sie senden nur wertvolle Informationen an den Kernel, damit dieser weiß welchen Treiber er laden soll.
    • GFX-Strings machen eigentlich genau dasselbe wie diese Injektoren
    • hat man sich seine Strings gebastelt kann man auf die Injektoren verzichten (natürlich nur auf diese, für die man sich einen String gebastelt hat wink.gif )
    • man kann mit GFX-Strings auch Time Machine und den UUID 35 Error fixen
    • man kann sich diesen String von echten Macs holen. Wenn deine Grafikkarte zB nicht vollständig läuft mit Natit Nvinject etc. kann man sich von einem Mac der dieselbe Grafikkarte hat, diesen String holen. Mit ziemlich großer Sicherheit wird es dann voll kompatibel sein.

PC_EFI Bootloader Installieren
  1. Holt euch das PC_EFI Package: PC_EFI
  2. Kopiert euch das Package ins Root Verzeichnis damit wir später leichter zugreifen können

    im Terminal: cp -R "hier den efi ordner reinziehen" /
    oder einfach im Finder den Ordner nach root ziehen
    nennt den Ordner am besten /pcefi

  3. Jetzt müssen wir herausfinden wie deine Festplatte anzusprechen ist

    diskutil list
    das schaut dann ca. so aus:

    CODE
    /dev/disk0
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     FDisk_partition_scheme                        *111.8 Gi   disk0
       1:                  Apple_HFS MacOSXLeopard           25.0 Gi    disk0s1
       2:                  Apple_HFS Kalyway                 20.0 Gi    disk0s2
       3:                  Apple_HFS Files                   66.8 Gi    disk0s3


    was wir brauchen, ist der Identifier deiner Leopard Partition, in meinem Fall disk0s1
    merken!!
  4. (Optional aber empfohlen!) Jetzt werden wir AppleEFIRuntime umbenennen, weil sie bei manchen das Booten mit PC_EFI verhindert
    EDIT: Anscheinend wurde das mit boot_v8 gefixt, und es besteht keine Notwengigkeit mehr diese kext zu löschen.

    mv /System/Library/Extensions/AppleEFIRuntime.kext /System/Library/Extensions/AppleEFIRuntime.kext.old
  5. Wir müssen nun im Single User Mode (booten mit -s Parameter) den neuen Bootloader schreiben

    cd /pcefi (oder je nachdem wie ihr den Ordner benannt habt)
    ./startupfiletool /dev/rdiskXsY ./boot_v8
    reboot

    Nun is der PC_EFI Bootloader installiert. Falls ihr eine Bootschleife bekommt versucht mal im Bios den No Executable (NX/XD) zu aktivieren. HPET sollte aktiviert sein und cpuid limit aus. Vielleicht auch noch hilfreich Netkas' Forum -> PC_EFI
PC_EFI deinstallieren

Falls es aber patout nicht funktioniert und ihr PC_EFI rückgängig machen wollt, macht folgendes:
p.s. Du brauchst einen UST-Stick
  1. DVD booten
  2. Terminal öffnen
  3. PC_EFI auf den Stick kopieren

    cp -R /Volumes/NAME_DEINE_LEO_PARTITION/pcefi /Volumes/USB_STICK/

  4. Leo Partition unmounten

    diskutil unmount /dev/diskXsY
    oder
    diskutil unmount NAME_DEINER_LEO_PARTITION

  5. Standard Darwin Bootloader installieren

    cd /Volumes/USB_STICK/PC_EFI
    ./startupfiletool /dev/rdiskXsY ./usr/standalone/i386/boot
    reboot


    Fertig.
EFI Strings erstellen
Für Grafikkarten
  1. Was wir brauchen:

    PC_EFI_V8 installiert

    gfxutil
    Property List Editor

    Die Tools kriegst du hier: plist_gfxutil

    Einen funktionierenden Injector (Natit/Nvinject/NvinjectGo/Atiinject/....)
    Einen Beispiel-String
  2. Device-Path auslesen
    • Terminal öffnen
    • cd "Ordner wo sich GFXUTIL befindet"
    • ./gfxutil -f display
    Nun kriegt ihr euren Device-Path angezeigt, der schaut ca. so aus:

    CODE
    DevicePath = PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)

  3. Plist editieren

    Sofern in den Dateien mit dem Beispiels String, die ihr runtergeladen habt, keine Plist vorhanden ist, müssen wir diese zuerst generieren. Andernfalls muss die vorhandene Plist modifiziert werden.
    • ./gfxutil -i hex -o xml "hier die hex datei ins terminal ziehen" string.plist
    Öffnet die Plist mit dem Property List Editor



    hier hervogehoben ist der Device-Path, kopiert hier euren rein (siehe Punkt 2)
  4. Informationen vom Injector holen:
    • Konsole öffnen (Konsole und nicht Terminal!! wink.gif )
    • Links system.log auswählen
    • rechts oben im Suchfeld euren Injector eingeben (zB NVinject)

      schaut dann ca. so aus:

      CODE
      NVinject: Probing.
      NVinject: Setting NVPM=<data not shown>
      NVinject: Setting @0,device_type=display
      NVinject: Setting NVCAP=<data not shown>
      NVinject: Setting @0,compatible=NVDA,NVMac
      NVinject: Setting model=Graphics by NVIDIA
      NVinject: Setting @1,name=NVDA,Display-B
      NVinject: Setting device_type=NVDA,Parent
      NVinject: Setting name=display
      NVinject: Setting rom-revision=NVinject 0.2.1
      NVinject: Setting @0,name=NVDA,Display-A
      NVinject: Setting @1,compatible=NVDA,NVMac
      NVinject: Setting @1,device_type=display
    • tragt diese Infos nun in eure Plist ein
    • ändert nur die Werte die ihr von der Konsole bekommen habt
    Beachte: Wahrscheinlich werden die Werte als Data (Hex) eingetragen sein, aber ihr könnt getrost die Class auf String ändern und als Text eingeben (NUR bei Infos wie name, model, etc. NICHT bei zahlenwerten wie zB NVCAP:


    NVCAP und NVPM erhalten wir mit (oder andere Werte die als <data not shown> angezeigt werden):
    • ioreg -lw 0 -p IODeviceTree | grep NVCAP
    • ioreg -lw 0 -p IODeviceTree | grep NVPM
    Speichere die modifizierte Plist ab.
  5. Jetzt konvertieren wir diese Plist wieder in einen Hex String
    • ./gfxutil -i xml -o hex string.plist string.hex
    Unser String befindet sich jetzt in string.hex (könnt ihr mit TextEdit öffnen)
  6. Nun müssen wir den String noch in die Boot.plist eintragen:

    • Backup: cp /Library/Preferences/SystemConfiguration/com.apple.Boot.plist /Library/Preferences/SystemConfiguration/com.apple.Boot.plist.old
    • Öffnet die Boot.plist mit Property List Editor
    • klickt auf Root -> New Child "device-properties" ; Class = String ; Value = Euer generierter hex-string


    • speichert die plist in einem Ordner wo du Zugriff hast, zB Desktop
    • sudo cp ~/Desktop/com.apple.Boot.plist /Library/Preferences/SystemConfiguration/
    Nun, wir wären fertig wink.gif

    Eins noch: der Injector muss deaktiviert werden, das machen wir mit
    • sudo mv /System/Library/Extensions/"euer Injector".kext /System/Library/Extensions/"euer Injector".kext.old
    Rebooten und viel Glück wink.gif

    Ob der String auch übergeben wurde überprüft ihr mit
    • ioreg -lw 0 -p IODeviceTree | grep device-prop
EFI Strings erstellen


Für Netzwerk (Time Machine + UUID35 Error fix)
  1. Was wir brauchen:

    PC_EFI_V8 installiert

    gfxutil
    Property List Editor
    plist_gfxutil
  2. Device-Path auslesen

    * Terminal öffnen
    * cd "Ordner wo sich GFXUTIL befindet"
    * ./gfxutil -f ethernet

    Nun kriegt ihr euren Device-Path angezeigt, der schaut ca. so aus:
    CODE
    DevicePath = PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)

  3. Plist editieren

    Sofern ihr schon einen existieren String in Form von einer plist habt fügt ihr einfach euren Network device-path hinzu, ansonsten erstellt ihr einfach eine neue .plist:

    Öffnet die Plist mit dem Property List Editor

    hier hervogehoben ist der Device-Path, kopiert hier euren rein (siehe Punkt 2)


    Speichere die modifizierte Plist ab.
  4. Jetzt konvertieren wir diese Plist in einen Hex String

    * ./gfxutil -i xml -o hex "hier die erzeugte plist in das terminal ziehen" string.hex
    Unser String befindet sich jetzt in string.hex (könnt ihr mit TextEdit öffnen)
  5. Nun müssen wir den String noch in die Boot.plist eintragen:

    * Backup: cp /Library/Preferences/SystemConfiguration/com.apple.Boot.plist /Library/Preferences/SystemConfiguration/com.apple.Boot.plist.old
    * Öffnet die Boot.plist mit Property List Editor
    * klickt auf Root -> New Child "device-properties" ; Class = String ; Value = Euer generierter hex-string
    * speichert die plist in einem Ordner wo du Zugriff hast, zB Desktop
    * sudo cp ~/Desktop/com.apple.Boot.plist /Library/Preferences/SystemConfiguration/
Nun, wir wären fertig wink.gif

Rebooten und viel Glück wink.gif

Ob es funktioniert hat überprüft ihr am besten mit IORegistryExplorer oder sucht in der Konsole nach firewire, er sollte jetzt keinen "failed to determine security mode" fehler mehr anzeigen.
Auch wenn ihr mit diskutil repairPermissions / keinen UUID 35 Error mehr bekommt hat es funktioniert.
Links rund um PC_EFI:
Netkas' Forum
PC_EFI_v8

Hoffe das war hilfreich und bitte informiert mich wenn mir wo ein Fehler unterlaufen ist.

greetz fassl
lord_webi
ich weiß, die Frage wird kommen ... die genaue "Anleitung" zu Chameleon:

auf benannter Seite den Loader ziehen und entpacken ... aus dem entpackten Verzeichnis das file "boot" ins Root-Verzeichnis kopieren/ziehen ... im Terminal zu dem entpackten Verzeichnis wechseln und folgendes eingeben:

vorher natürlich die Disknummer (X) und die Partition (Y) per "diskutil list" ermitteln, also

diskutil list

sudo -s

fdisk -u -f boot0 -y /dev/rdiskX

dd if=boot1h of=/dev/rdiskXsY bs=512 count=2


und jetzt kommt der Knüller ... mein 10.5.3 System bootet jetzt doppelt so schnell !!! Danke fassl für den geilen Hinweis !!!!
fassl
Oder einfach die .pkg doppelklicken tongue.gif

Kann sein dass pc_efi bei dir den FSB nicht korrekt ausgelesen hat und deshalb hast du jetzt nen schnelleren boot. Oder was weiß ich biggrin.gif
lord_webi
.pkg ? ... die gabs auf der Seite nicht, oder ich habs übersehen ?! ... oder nur im IRC ?

hatte eh bisher nur per DVD gebootet ... dachte, das is egal ... aber die Kiste rennt auf einmal wie Sau *freu* ... man lernt ja nie aus tongue.gif
fassl
ahjo, pkg gibts nur im irc, ist wahrscheinlich noch eine ältere version
case11
Richtig blöde Frage wahrscheinlich ... diese Dinge funktionieren immer nur mit Intel-CPUs, oder? Vermisse Details, mit was es kompatibel ist. :-(
fassl
Nein chameleon funktioniert auch mit AMD
Crady
hmmm, Fassl danke!

Doch So hatte ich etliche Male PC_EFI V8 installiert. Mein System ist danach immer gebootet (ohne GFX String) doch EFI hat anscheinend nicht funktioniert sad.gif


Denn mit:

QUOTE
terminal: ioreg -lw0 -p IODeviceTree | grep EFI

wenn nix kommt -> nicht installiert


Kommt nix...

CODE
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *298.1 Gi   disk0
   1:               Windows_NTFS Untitled               53.7 Gi    disk0s1
   2:                  Apple_HFS Alt                     9.8 Gi     disk0s5
   3:               Windows_NTFS Daten2                 175.8 Gi   disk0s6
   4:                  Apple_HFS Leopard                 58.8 Gi    disk0s7
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *186.3 Gi   disk1
   1:                  Apple_HFS Download                186.3 Gi   disk1s1
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *57.3 Gi    disk2
   1:                  Apple_HFS Backup                  57.3 Gi    disk2s1
/dev/disk3
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *74.6 Gi    disk3
   1:                  Apple_HFS Daten Mac               74.6 Gi    disk3s1
/dev/disk4
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *149.1 Gi   disk4
   1:                  Apple_HFS Music                   149.1 Gi   disk4s1


Das ist meine Partitionstabelle. Ich habe PC_EFI in Disk0S7 installiert. Auf Alt ist ein kleines Sicherheitssystem (iAtkos 2.0i zum Testen; Backup ist ein Backup meiner Leopard Platte - aber leider nicht Bootfähig)

Chameleon hatte ich mal mit dem PKG installiert. Der Erfolg war, dass ich immer einen Boot0: Error hatte und per Script.sh von der ToH DVD Darvin neu installieren musste...

Ich hätte gerne EFI, damit ich einen 9.3.0 Kernel nutzen kann. Vanilla wird zwar nicht laufen (erst mit dem Q6600), aber wohl ein Binpatched sollte es...

Hat irgend jemad eine Idee?
fassl
Hau sicherheits halber pc_efi sowohl auf Alt als auch auf Leopard
Crady
Habe ich auch beides schon probiert...

Sowohl Leopard in Single User als auch Alt in Single User..

Auch habe ich mal von jedem Single User Mode startupfile Tool sowohl für BEIDE Partitionen als auch nur für die jeweils gebootete Partition installiert...

Auch habe ich bei der iAtkos Installation in ALT PC_Efi angegeben...

Schon komisch...
lord_webi
chameleon ist ne gute Alternative tongue.gif
Crady
naja, wie gesagt:

1x probiert und dann ging nix mehr sad.gif
fassl
Dann probier mal chameleon manuell zu installieren, anleitung hat lord_webi oben gepostet
Crady
Werde ich machen...

Aber jetzt gleich ist erstmal F1 und dann EM...

Werde aber berichten!

Danke erstmal!


Doch eine Frage: Wenn Chameleo, dann brauche ich auch KEIN EFI mehr, oder?
fassl
Chameleon besteht aus 3 loadern, stage 0 (boot0), stage 1(boot1h) und stage 2(boot) in stage 2 is die EFI simulation eingebaut, sowohl in Chameleon als auch in pc_efi
Crady
Ok, hab es dann doch jetzt noch probiert...

Boot0: error


habe es so gemacht: File Boot aus dem Archiv ins Leopard Root gezogen (vorhandene ersetzt), dann im Terminal:

CODE
sudo -s
cd in/das/verzeichnis/wo/chmeleon/entpackt/wurde
fdisk -u -f boot0 -y /dev/rdisk0

dd if=boot1h of=/dev/rdisk0s7 bs=512 count=2


ohne Erfolg...

Dann habe ich sogar die Files boot0, boot1h und cdboot nach usr/standalone/i386 kopier und die vorhandenen ersetzt... Gleiches Ergebnis..

Schade!
case11
Es funktioniert auch mit AMD, das wäre ja der Wahnsinn schlechthin. Backup jetzt und dann gehts los, danke für die Antwort. Ich werde berichten!

//edit:
Die Installation von EFI scheint funktioniert zu haben (Konsole: kein Eintrag zu firewire "failed to dertermine ..."), bei diskutil repairPermissions / keine UUID 35-Fehler. Siehe Systeminfos in der Signatur.

In welcher Weise bin ich jetzt mit einem AMD überhaupt in der Lage, einen Vanilla-Kernel zu nutzen? Ist es richtig, dass nur der Vanilla-Kernel dafür sorgt, kurz gesagt, dass ein Rechner als Mac (bei Apple-Updates etc.) erkannt wird?
Selbst wenn dies dann der Fall ist, ist es doch weiterhin problematisch, mit AMD diverse Updates von Apple zu fahren (z. B. 10.5.3), liege ich damit richtg oder falsch? Danke für Antworten! :-)
fassl
QUOTE(case11 @ Jun 8 2008, 05:58 PM) *
In welcher Weise bin ich jetzt mit einem AMD überhaupt in der Lage, einen Vanilla-Kernel zu nutzen?

gar nicht, vanilla geht nur mit Core Intel CPU's


QUOTE(case11 @ Jun 8 2008, 05:58 PM) *
Ist es richtig, dass nur der Vanilla-Kernel dafür sorgt, kurz gesagt, dass ein Rechner als Mac (bei Apple-Updates etc.) erkannt wird?

nein, wenn du vanillla kernel und eine unmodifizierte appleacpiplatform.kext verwendest wird er dir als model nicht MacPro oder was auch immer anzeigen sondern die information die er aus deinem SMBIOS liest. bei mir zB AMILO PI 1556 (laptop modellbezeichnung)

QUOTE(case11 @ Jun 8 2008, 05:58 PM) *
Selbst wenn dies dann der Fall ist, ist es doch weiterhin problematisch, mit AMD diverse Updates von Apple zu fahren (z. B. 10.5.3), liege ich damit richtg oder falsch? Danke für Antworten! :-)

Mit AMD ist so ziemlich alles problematisch smile.gif
case11
Danke für die Antwort. :-)

Nächste und eigentlich fast letzte Frage. Zum Surfen und Arbeiten habe ich einen Dell Vostro 1400 gekauft, der morgen geliefert wird, Celeron 540 CPU, ist es mit dem möglich, einen Vanilla-Kernel zu nutzen? Es muss nicht unbedingt funktionieren, ich spiele auch gerne, wie hier auf AMD, damit rum, aber es wäre natürlich geil ... :-)
fassl
Ne Celeron ziemlich sicher ned, aber solangs bin patched und gehackte kernel gibt is das ja wayne smile.gif

EDIT: hmm, obwohl der supported ziemlich viel:"MMX, SSE, SSE2, SSE3, SSSE3, Intel 64 (Intel's x86-64 implementation), XD bit (an NX bit implementation)"

naja, probieren kann mans ja mal smile.gif
case11
Ja, habe noch ein paar Tage Zeit, freu mich schon auf die ganzen neuen Probleme. :-)
Crady
So, ich nochmal...

Also es scheint an meinem System - oder dem Windows auf meiner HDD zu liegen...

Habe gerade iATOKOS 2.0i auf meinem Notebook installiert und da geht EFI... - bringt aber nichts, da viel zu Langsam...


/EDIT:

Ich habe jetzt den Native Mode im BIOS für AHCI 0-3 deaktiviert. Jetzt funzt EFI - jedoch der Boot mit nem 9.3er Kernel bleibt hängen - ohne Fehlermeldung...

/EDIT2:

Kernel 9.3.0.0 (aus dem IRC) mit -64bit flag läuft jetzt auch perfekt! (dsmos.kext - vor allem mit richtigen Rechten sollte man nicht vergessen smile.gif )
FuRiuS
Wäre sehr cool wenn du das ganze nochmal so super verständlich für den Audio string z.B für die ALC889 Karte machen könntest.

Vielen Dank!

Greetz
FuRiuS
pilsator
Hat vielleicht schon jemand einen EFI String für den Grafikchip meines boards (GMA 950, Geräte-ID: 0x2772, Versions-ID: 0x0002) gebastelt? So dass ich nur noch Schritt 6 der Anleitung nachvollziehen müsste. Für Experten sind die vorhergehenden Schritte wahrscheinlich Kinderkram, für Laien bleiben aber noch ein paar Fragen offen.
Oder bestünde Interesse, die Anleitung anfängersicher zu formulieren?


10.5.2 und 10.5.3 laufen zwar auch so auf meinem Rechner, allerdings mit leichten Grafikunebenheiten, die z.B. auftreten, wenn man Findernamen editiert. Diese Macken verschwinden zwar, wenn man das Leopard Graphic update installiert, aber dann funktioniert der Ruhezustand (S3) nicht mehr.

Grüsse, pilsator
pilsator
Der erste Stolperstein im Kapitel "EFI Strings erstellen Für Grafikkarten" war für mich der Satz

"Sofern in dem Beispiels String den ihr geladen habt keine Plist vorhanden ist müssen wir diese zuerst generieren" (Abschnitt 3).

Ich hatte "geladen" zunächst verstanden als "zur weiteren Bearbeitung mit einem Programm geöffnet" - wovon vorher ja nicht die Rede gewesen war. Dann fiel mir ein, dass wohl "runtergeladen" gemeint war.
Runtergeladen als "Beispiel String" für den Intel GMA 950 hatte ich von dem mediafire-link einen Ordner, der 2 Dateien enthielt: gma950.hst und gma 950.plist. Ich habe das einfach mal etwas willkürlich interpretiert als "Plist vorhanden". An dieser Stelle fragt sich der Laie: kann ein string eine plist enthalten, ohne dass man das so auf Anhieb sieht (Stringtheorie?). Handelt es sich eventuell bei einer der beiden Dateien im Ordner um den string und müsste der auf Vorhandensein einer plist untersucht werden? Ich habe mich letztlich gegen diese Interpretation entschieden, weil eine plist nach meiner Kenntnis eine Datei mit eben diesem suffix ist und nicht ein Bestandteil einer anderen Datei.
Ich bin also davon ausgegangen, dass nicht erst eine plist generiert werden muss und ich direkt mit Punkt 6 fortfahren kann.
Welche der beiden Dateien im Ordner ist nun der Hex String? Keine hat das suffix .hex. Während die .plist-Datei in TextEdit ein bisschen wie html aussieht, sieht die .hst-Datei mit der Folge von Zahlen und Buchstaben schon eher so aus, wie wohl ein string aussehen sollte.
Ich habe also die com.apple.Boot.plist wie beschrieben im Terminal gebackupt und im Property List Editor wie beschrieben die Folge von Zahlen und Buchstaben eingetragen, die man zu sehen bekommt, wenn man die Datei gma950.hst mit TextEdit öffnet.
Abschliessend sollte der Injector deaktiviert werden. Ich habe aber im Erweiterungsordner nichts gefunden, was irgendwie nach einem Injector aussah. Kein Natit/Nvinject/NvinjectGo/Atiinject etc.
Ich habe mehrere Systeme installiert, in anderen System findet sich eine natit.kext, aber nicht in diesem.
Wo nichts ist, kann man nichts deaktivieren, also habe ich einfach einen Neustart gemacht.

Ich muss noch erwähnen, dass ich vor der Modifikation der com.apple.Boot.plist das Leopard Graphic update installiert hatte, weil fassl irgendwo in einem anderen thread sowas geschrieben hatte wie "Graphic update installieren, gfx string eintragen und fertig". Aus Erfahrung wusste ich, dass ohne gfx string dann der Ruhezustand (S3) nicht mehr funktioniert und die Auflösung nur durch Editieren der com.apple.Boot.plist verändert werden kann, nicht mehr in den Systemeinstellungen.
Also Neustart...Ruhezustand funktioniert nicht, Auflösung kann in den Systemeinstellungen nicht verändert werden.

Wenn ich das versuche:

"Ob der String auch übergeben wurde überprüft ihr mit ioreg -lw 0 -p IODeviceTree | grep device-prop"

vermeldet das Terminal:

~ normalo$ ioreg -lw 0 -p IODeviceTree | grep device-prop
| | "device-properties" = <6d0000000100000001000000610000000200000002010c00d041030a000000000101060000027
ff0400100000006d006f00640065006c0000000b000000474d412039353020000000410041005000
c002c00480061007300500061006e0065006c0000000800000001000000>
| | "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}

Es dürfte kein Problem sein, den vorherigen Zustand wiederherzustellen - das backup der com.apple.Boot.plist durch Umbenennen aktivieren und AppleIntelGMA950.kext und AppleIntelIntegratedFramebuffer.kext von einem anderen 10.5.2 System mit kext helper installieren. Aber jetzt habe ich Blut geleckt, das mit den gfx strings kann doch nicht so schwer sein.
pilsator
QUOTE(FuRiuS @ Jun 10 2008, 07:57 PM) *
Wäre sehr cool wenn du das ganze nochmal so super verständlich für den Audio string z.B für die ALC889 Karte machen könntest.

Vielen Dank!

Greetz
FuRiuS


Hier findest du ein "EFI GFX+Audio Introduction & Tutorial".
pilsator
ioreg -lw 0 -p IODeviceTree | grep device-prop
| | "device-properties" = <6d0000000100000001000000610000000200000002010c00d041030a000000000101060001027
ff0400100000006d006f00640065006c0000000b000000474d412039353020000000410041005000
c002c00480061007300500061006e0065006c0000000800000001000000>
| | "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}

______________________________

Meldet das Terminal, nachdem ich den device path ermittelt, in die Beispiel-plist eingetragen, diese in einen hex-string konvertiert und diesen string in die com.apple.Boot.plist eingetragen habe. Durch die ganze Operation scheint sich gegenüber dem ersten Versuch, bei dem ich einfach den unmodifizierten Beispielstring in die com.apple.Boot.plist eingetragen habe, nichts geändert zu haben. Liegt es an mir? Im netkas-forum scheint man der Meinung zu sein, die stringmethode funktioniere bei laptops, aber noch nicht bei desktops.
fassl
Was ich weiß bzw. was ich dem irc entnehmen konnte braucht man für diese Karte (GMA950) weder string noch einen injector.... modifizierte AppleIntelGMA950.kext und AppleIntelIntegratedFramebuffer.kext sollten reichen.

greetz
pilsator
Es geht auch ohne string ganz gut wenn auch nicht perfekt (siehe post #24). Von den EFI-strings verspricht man sich ja, dass es noch runder läuft.

Danke für die sichtlich mit dem Willen zur Verständlichkeit geschriebene Anleitung. Eine Anmerkung aus der Laienperspektive: meine anfänglichen Missverständnisse wären nicht passiert, wenn es geheissen hätte: "Sofern in den Dateien mit dem Beispiels String, die ihr runtergeladen habt, keine Plist vorhanden ist, müssen wir diese zuerst generieren. Andernfalls muss die vorhandene Plist modifiziert werden."
xtraa
Hat gefunzt, superdanke für die guide smile.gif

Falls hier noch jemand ne geforce 6600gt pcie hat, hier ist der string


CODE
830200000100000001000000770200000e00000002010c00d041030a0100000001010600000e0101
60000007fff04000e0000004e00560050004d0000002000000001000000000000000000000000000
0000000000000000000000000024000000400030002c005600520041004d002c006d0065006d0073
069007a00650000000c00000000000004000000081c0000006400650076006900630065005f00740
7900700065000000100000004e5644412c4765466f7263650e0000006e0061006d00650000000f00
0004e5644412c506172656e7422000000400030002c006400650076006900630065005f007400790
7000650000000b000000646973706c617922000000400031002c006400650076006900630065005f
0740079007000650000000b000000646973706c6179100000006d006f00640065006c0000001a000
004e5649444941204765466f726365203636303020475420000000400031002c0063006f006d0070
061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0
61006d0065000000120000004e5644412c446973706c61792d4114000000400031002c006e006100
d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d007
0061007400690062006c00650000000e0000004e5644412c4e564d61631e00000072006f006d002d
07200650076006900730069006f006e0000000a000000d316b6d34d34100000004e0056004300410
500000001800000004000000000003000c000000000000070000000024000000400031002c005600
20041004d002c006d0065006d00730069007a00650000000c0000000000000400000008
fassl
QUOTE(pilsator @ Jun 15 2008, 01:25 PM) *
"Sofern in den Dateien mit dem Beispiels String, die ihr runtergeladen habt, keine Plist vorhanden ist, müssen wir diese zuerst generieren. Andernfalls muss die vorhandene Plist modifiziert werden."


Is geändert tongue.gif
DarkUser89
man kann sowas doch für jede graka machen oder ??? ich wollte sowas für meine RX 1650 pro PCIe(71c6)machen !

hab 2 stunde davor gehuckt ist aber leider nichts dabei rausgekommen :-(

QUOTE
ATIinject: Setting ATY,DeviceID=0x000071c6
ATIinject: Setting ATY,EFIVersion=01.00.068
ATIinject: Setting @1,name=ATY,Wormy
ATIinject: Setting @0,name=ATY,Wormy
ATIinject: Setting @1,compatible=ATY,Wormy
ATIinject: Setting ATY,VendorID=0x00001002
ATIinject: Setting model=ATY,RadeonX1650
ATIinject: Starting.
ATIinject: Setting @1,device_type=display
ATIinject: Setting @0,device_type=display
ATIinject: Setting @0,compatible=ATY,Wormy
ATIinject: Setting name=ATY,WormyParent
ATIinject: Setting ATY,Copyright=Copyright ATI


kann mir da mal einer bitte helfen ??
Timor1993
verändert efi das standart BIOS vom pc?
muss ich efi installieren oder reicht auch der darwin bootloader?
DarkUser89
QUOTE(Timor1993 @ Jul 12 2008, 10:27 AM) *
verändert efi das standart BIOS vom pc?
muss ich efi installieren oder reicht auch der darwin bootloader?


lese dir erst Was ist PC_EFI eigentlich? durch!!!

  • es ist ein modifizierter Darwin Bootloader der ein paar Informationen in den RAM schreibt, das macht normalerweise EFI, aber da wir kein EFI sondern BIOS haben, müssen wir auf dieses fake EFI zurückgreifen
der macht nix am bios !
Muffinmann
Ich habe erfolgreich die Retail DVD installiert, funzt wunderbar! Das Chameleon ist auch installiert und alles rennt wie Tier!

Jetzt hab ich mich an das Theman EFI Strings erstellen für Grafikkarten gewagt. Ich habe es wirklich versucht und die Anleitung gelesen und nochmals gelesen, ich verstehe nur Bahnhof!

Welche Hex sollich für eine PCI-E 7800 GT 256MB verwenden, was muß ich wie und wo abgleichen usw...

Ich denke das die Anleitung für Leute die DEN Durchblick haben geschrieben ist, ich verstehe wie gesagt nur Bahnhof...


Gibt es denn keine EFI-STRING-VGA Anleitung die für so kleine Nullblicker wie mich geeignet sind?
FuRiuS
Hallo,
ich habe einen Asus G1 Laptop mit einer Nvidia 7700 Go 512MB. Mit nvinject funktioniert unter 10.5.2 alles perfekt nun möchte ich aber wie auf meinem Desktop System einen gfx efi string nutzen. Ich habe auch sofort einen erstellt aber leider hänge ich seit 2Stunden an dem Problem das er zwa bootet aber dann kommt nur ein schwarzer Bildschirm mit meiner Maus.

Was kann ich tun?

Ich habe einmal ein Bild von meinem gfx string und der Ausgabe von Nvinjectgo hochgeladen.

Click to view attachment

Ich hoffe ihr könnt mir helfen.

Greetz
FuRiuS
Duc-Man
QUOTE(FuRiuS @ Aug 28 2008, 03:42 PM) *
Hallo,
ich habe einen Asus G1 Laptop mit einer Nvidia 7700 Go 512MB. Mit nvinject funktioniert unter 10.5.2 alles perfekt nun möchte ich aber wie auf meinem Desktop System einen gfx efi string nutzen. Ich habe auch sofort einen erstellt aber leider hänge ich seit 2Stunden an dem Problem das er zwa bootet aber dann kommt nur ein schwarzer Bildschirm mit meiner Maus.

Was kann ich tun?

Ich habe einmal ein Bild von meinem gfx string und der Ausgabe von Nvinjectgo hochgeladen.

Click to view attachment

Ich hoffe ihr könnt mir helfen.

Greetz
FuRiuS


Hallo
ich habe ein Anliegen... mit meiner ATI X1959XT bin ich mit Deren Leistung sehr zufrieden ! (Natit)
Jetzt habe ich mich mal an die EFI-String drangewagt, und bin nach der Anleitung gegangen....
Ich weis leider nicht welche Werte in der Proberty-List stehen müssen, wahrscheinlich nicht alle die ich vom Injector erhalte,
ich habe eine Beispiel-List von Nvidia gefunden..... aber an die kann ich mich wohl nicht anlehnen.
Hat jemand von EUCH für die X1950XT ein Beispiel, oder den HEX-String für mich?
Wäre sehr dankbar.
Mit den Nvidia-Gra-Ka geht es ja sehr einfach, es sind viele im EFI-Studio vorhanden.

Grüsse
H

aprodigy
QUOTE(Duc-Man @ Sep 18 2008, 01:32 PM) *
Hat jemand von EUCH für die X1950XT ein Beispiel, oder den HEX-String für mich?
Wäre sehr dankbar.


Sapphire 1950XT, Device-ID: 7244, DevicePath: PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x1)

CODE

<key>device-properties</key>
<string>6c0200000100000001000000600200000d00000002010c00d041030a000000000101060000010
01060000007fff04001e0000004100540059002c00560065006e0064006f00720049004400000006
0000002101c0000006400650076006900630065005f00740079007000650000000f0000004154592
416c6f70696173220000004100540059002c00450046004900560065007200730069006f006e0000
00e00000030312e30302e323139001e0000004100540059002c00440065007600690063006500490
440000000600000080720e0000006e0061006d0065000000150000004154592c416c6f7069617350
172656e7422000000400030002c006400650076006900630065005f00740079007000650000000b0
0000646973706c617922000000400031002c006400650076006900630065005f0074007900700065
000000b000000646973706c6179100000006d006f00640065006c000000130000004154492c52616
656f6e583139353020000000400031002c0063006f006d00700061007400690062006c0065000000
f0000004154592c416c6f7069617314000000400030002c006e0061006d00650000000f000000415
592c416c6f7069617314000000400031002c006e0061006d00650000000f0000004154592c416c6f
0696173200000004100540059002c0043006f0070007900720069006700680074000000350000004
6f7079726967687420414d4420496e632e20416c6c205269676874732052657365727665642e2032
030352d3230303820000000400030002c0063006f006d00700061007400690062006c00650000000
0000004154592c416c6f70696173</string>


ab 10.5.4 wollte mein pc_efi die efi-trings partout nicht mehr anwenden. hab dann einfach chameleon installiert und alles war wieder gut.

gruß.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.