Jump to content

[GUIDA] Integrare Ozmosis nel bios UEFI


166 posts in this topic

Recommended Posts

Diciamo che in questo momento non ho nessun tipo di Mac installato, mi serviva l'ssd per provare la cache sul syno e ho zappato via tutto :)

Mi rimetto completamente nelle tue mani :)

 

Se abbiamo la stessa mobo, potresti inserirmi anche il tuo dsdt o potrebbe dare problemi?

non ce l'ho un dsdt funzionante quella parte ( il DSDT ) e' il mio tallone di achille, non riesco a capire come diamine funziona  :wallbash:

Link to comment
Share on other sites

Ciao Aigors una domand  per a mia scherda madre in firma (z87) e possibile ?

Ciao Ludox si e' possibile, il problema sorge nel flashing del bios.

I bios ASUS sono firmati digitalmente infatti si chiamano capsule file, qualunque modifica ne altera i valori per cui il software a bordo non riconosce come valido un bios modificato.

ci sono diversi sistemi per ovviare a questo, il piu' "radicale" e' riprogrammare il bios con un programmatore hardware, cosa che non tutti vogliono fare, la seconda opzione e' usare i tool appositi ma che girano sotto windows. 

Link to comment
Share on other sites

@Aigor per caso riesci a passarmi il bios mod che faccio qualche test? :)

In allegato trovi il bios che attualmente uso io ed il programma per flasharlo, ma devi usare windows7-64 bit per farlo e lo fai da prompt del dos aperto come administrator 

il comando e':

afuwinx64.exe Z97I-PLUS.rom /P

naturalmente assumo che l'archivio zip sia stato scompattato in una directory e che tu ti sia posizionato in quella directory, se hai dubbi, chiedi pure.

 

 

Ricordo che le operazioni svolte sul bios sono potenzialmente pericolose e possono portare al blocco della mainboard, io non mi assumo nessuna responsabilita per eventuali danni, le informazioni ed i programmi li usate a vostro rischio e pericolo.

 

Non mi piace ribadire l'ovvio ma meglio avvertire :D 

Bios-e-tools.zip

Link to comment
Share on other sites

:) da win 8 si riesce?

 

Mi rispondo da solo : si e sembra già funzionare

Ora mi manca da capire come iniettare l'id della mia hd4600

Because almost everything was changed, improved, re-factored and bug-fixed since last release,
here are highlighted the most important ones for the end-user:

Start-up HotKeys
================

 'Function'        || 'Shortcut'           || 'Notes'
===================||======================||=========
 Disable Ozmosis   ||  Escape              ||  Press at start-up, screen will flash red to indicate Ozmosis is disabled.
 Reset NVRAM       ||  Option+Command+P+R  || From F12 menu, Ozmosis GUI, Shell or BIOS Setup.
 Start Ozmosis GUI ||  Option/Home         || It can be controlled with mouse only for now.
 Safe Boot Mode    ||  Shift               ||
 Verbose Mode      ||  Command+V           ||
 Single-User Mode  ||  Command+S           ||
 32 Bit Boot Mode  ||  3+2                 || Start Up In 32 Bit Mode
 64 Bit Boot Mode  ||  6+4                 || Start Up In 64 Bit Mode


Mac/PC Keyboard Legend
======================

'Mac' Key  || 'PC' Key
 Option    || Alt
 Command   || WinLogo


Added the ability to control graphics and audio injection using NVRAM variables, complete list of variables:

Default Settings 1F8E0C02-58A9-4E34-AE22-2B63745FA101
======================================================

 'Key'                        || 'Value' || 'Note/Example'
==============================||=========||==================================
 AcpiLoaderMode               || INTEGER || Control ACPI Loader
 UserInterface                || BOOLEAN || Display User Interface/GUI
 TimeOut                      || INTEGER || Time-out In Seconds
 DisableAtiInjection          || BOOLEAN || De/activate ATI GFX device property injection
 AtiFramebuffer               || STRING  || Name of the specific ATI framebuffer
 DisableNvidaInjection        || BOOLEAN || De/activate Nvidia GFX device property injection
 DisableIntelInjection        || BOOLEAN || De/activate Intel GFX device property injection
 DisableVoodooHda             || BOOLEAN || Disables loading VoodooHDA from firmware
 EnableVoodooHdaInternalSpdif || BOOLEAN || Enable/Disable onboard S/PDIF header when using VoodooHDA from firmware
 DisableBootEntriesFilter     || BOOLEAN || Disables filtering of firmware generated boot entries
 AAPL,snb_platform_id         || INTEGER ||
 AAPL,ig-platform-id          || INTEGER ||
 BootEntryTemplate            || STRING  || $label $guid
 DarwinDiskTemplate           || STRING  || $label $platform $major $minor $build
 DarwinRecoveryDiskTemplate   || STRING  || $label $platform $major $minor $build

Examples:
=========

  !! Note on VoodooHDA, it covers ONLY the onboard codec and is enabled for the moment only for ALC892/ALC1150 !!
  !! For discrete graphics HDMI/DP audio AppleHDA is used instead. Those who use internal GPU (IGPU) only will !!
  !! have to disable VoodooHda and use AppleHda for HDMI/DP audio                                              !!

  To Disable loading VoodooHda.kext from Firmware

    sudo nvram 1F8E0C02-58A9-4E34-AE22-2B63745FA101:DisableVoodooHda=%01

  To Enable loading VoodooHda.kext from Firmware

    sudo nvram 1F8E0C02-58A9-4E34-AE22-2B63745FA101:DisableVoodooHda=%00


 Changing ATI Framebuffers
=========================

  sudo nvram 1F8E0C02-58A9-4E34-AE22-2B63745FA101:AtiFramebuffer=Futomaki

 Or based on VendorSubsystemId

  sudo nvram 1F8E0C02-58A9-4E34-AE22-2B63745FA101:AtiFramebuffer10029440=Futomaki

 Or based on pci addressing

  sudo nvram 1F8E0C02-58A9-4E34-AE22-2B63745FA101:AtiFramebuffer00.01.00=Futomaki

Changing AAPL,ig-platform-id
============================

  sudo nvram 1F8E0C02-58A9-4E34-AE22-2B63745FA101:AAPL,ig-platform-id=0x01620005

Changing AcpiLoader Mode
============================

  Add The Following Values Together For Default Acpi Loader Mode

  ACPI_LOADER_MODE_DISABLE        0x00000000
  ACPI_LOADER_MODE_ENABLE         0x00000001
  ACPI_LOADER_MODE_DUMP           0x00000002
  ACPI_LOADER_MODE_WINDOWS        0x00000008
  ACPI_LOADER_MODE_UPDATE_LEGACY  0x00000040

  Default Value : ACPI_LOADER_MODE_ENABLE | ACPI_LOADER_MODE_DARWIN | ACPI_LOADER_MODE_UPDATE_LEGACY = 0x45

  To Change

  sudo nvram 1F8E0C02-58A9-4E34-AE22-2B63745FA101:AcpiLoaderMode=0x45

Note: They can also be controlled by using Defaults.plist placed on boot hard-drive efi system partition and path is /EFI/OZ/Defaults.plist, see bellow for example.

WARNING! Defaults.plist will override the one found in firmware and values are used only if variables are not already added.
For example if you want to set BiosVersion using Defaults.plist and was already set by Defaults from Firmware, you will need
to do a 4 finger NVRAM reset or delete the BiosVersion variable from shell, for the new one to be used.

Default Settings Example of Modifications on Defaults.plist
===========================================================

// If AcpiLoaderMode NEEDS to be changed, change second line, put desired value, then add both line in Defaults.plist
<key>AcpiLoaderMode</key>
<integer>0x45</integer>

// If UserInterface NEEDS to be enabled on every boot, change second line and set to true, then add both line in Defaults.plist
<key>UserInterface</key>
<false/>

// If TimeOut NEEDS to be changed, change second line and put desired value in seconds, then add both line in Defaults.plist
<key>TimeOut</key>
<integer>5</integer>

// If DisableAtiInjection NEEDS to be enabled, change second line bellow and set to true, then add both line in Defaults.plist
<key>DisableAtiInjection</key>
<false/>

// If AtiFramebuffer NEEDS to be changed, modify second line bellow and set to correct one, then add both line in Defaults.plist
<key>AtiFramebuffer</key>
<string>ReplaceMe</string>
!! WARNING DisableAtiInjection needs to be set to false to function !!

// If DisableNvidaInjection NEEDS to be enabled, change second line bellow and set to true, then add both line in Defaults.plist
<key>DisableNvidaInjection</key>
<false/>

// If DisableIntelInjection NEEDS to be enabled, change second line bellow and set to true, then add both line in Defaults.plist
<key>DisableIntelInjection</key>
<false/>

// If AAPL,snb_platform_id NEEDS to be changed, change second line bellow and set to correct one, then add both line in Defaults.plist
<key>AAPL,snb_platform_id</key>
<integer>0x00030010</integer>
!! WARNING DisableIntelInjection needs to be set to false to function !!

// If AAPL,ig-platform-id NEEDS to be changed, modify second line bellow and set to correct one, then add both line in Defaults.plist
<key>AAPL,ig-platform-id</key>
<integer>0x0166000A</integer>
!! WARNING DisableIntelInjection needs to be set to false to function !!

// If DisableVoodooHda NEEDS to be enabled, change second line bellow and set to true, then add both line in Defaults.plist
<key>DisableVoodooHda</key>
<false/>

// If EnableVoodooHdaInternalSpdif NEEDS to be enabled, change second line bellow and set to true, then add both line in Defaults.plist
<key>EnableVoodooHdaInternalSpdif</key>
<false/>
!! WARNING DisableVoodooHda needs to be set to false to function !!

// If DisableBootEntriesFilter NEEDS to be enabled, change second line bellow and set to true, then add both line in Defaults.plist
<key>DisableBootEntriesFilter</key>
<false/>

Questo e' il readme del nuovo ozmosis, nella nostra mobo pare non funzionare l nvram,cioe' non e' possibile scrivere nella nvram in modo che i parametri che puoi leggere da questo readme, sopravvivano al boot.

Una soluzione c'e', se leggi la mia guida c'e' un file nel bios che si chiama ozmosisdefault in questo file ci si possono scrivere quesi parametri in modo che ad ogni boot siano letti e scritti nella nvram, il problema e' che essendo un file plist deve essere scritto come tale, poi passato ad un software che lo trasforma in .ffs che e' un formato digeribile dal bios, poi, reintegrato nel bios di nuovo, il tutto va fatto da un osx, se leggi la mia guida trovi tutti i software e le spiegazioni su come fare la trasformazione, non c'e' un tutorial su come editare tale file col plist editor, ma assumo che chi sta usando un Mac sappia come fare.

Link to comment
Share on other sites

Da me l'nvram funziona : ho inserito imac 27, spento e riacceso ed ha tenuto l'impostazione

 

Come non detto...ovviamente hai ragione tu :)

 

A questo punto devo proprio editare il plist. Mi documento su come fare.

Poi dovrei aggiungere anche alcuni kext, anche qui mi devo documentare

Link to comment
Share on other sites

In clover avevo questa stringa :
 
<key>IntelGFX</key>
<string>0x0d228086</string>
 
in Ozmosis si potrebbe tradurre in :
 
<key>DisableIntelInjection</key>
<false/>
<key>AAPL,ig-platform-id</key>
<integer>0x0d228086</integer>
 
oppure in 
 
<key>DisableIntelInjection</key>
<false/>
<key>AAPL,snb_platform_id</key>
<integer>0x0d228086</integer>
 
?
 
altra cosa, potrebbe andare bene il plist fatto così per ozmosis :
 

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Defaults:4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102</key>
<dict>
<key>BaseBoardAssetTag</key>
<string>Base Board Asset Tag#</string>
<key>BaseBoardSerial</key>
<string>C02K7BXEF8JC</string>
<key>BiosDate</key>
<string>09/03/2013</string>
<key>BiosVersion</key>
<string>IM142.88Z.0118.B00.1309031249</string>
<key>BoardVersion</key>
<string>Proto1</string>
<key>ChassisAssetTag</key>
<string>Asset Tag#</string>
<key>Manufacturer</key>
<string>Apple Inc.</string>
<key>ProcessorSerial</key>
<string>C02K7BXEF8JC</string>
<key>ProductFamily</key>
<string>iMac</string>
<key>ProductId</key>
<string>Mac-27ADBB7B4CEE8E61</string>
<key>ProductName</key>
<string>iMac14,2</string>
<key>SystemSKU</key>
<string>System SKU#</string>
<key>SystemSerial</key>
<string>C02K7BXEF8JC</string>
<key>SystemVersion</key>
<string>1.0</string>
</dict>
<key>Defaults:7C436110-AB2A-4BBB-A880-FE41995C9F82</key>
<dict>
<key>boot-args</key>
<string>kext-dev-mode=1 -v</string>
 
<key>DisableIntelInjection</key>
<false/>
<key>AAPL,ig-platform-id</key>
<integer>0x0d228086</integer>
 
</dict>
<key>Version</key>
<string>1.0.0</string>
</dict>
</plist>
 
se il plist dovesse andare bene così, lo passo come hai spiegato tu (da osx) nella cartella kext e lo trasformo con KextToffs.command e poi da windows lo sostituisco con il ozmosisdefaults?
 
 
Link to comment
Share on other sites

Si il plist e' corretto.

Se leggi il readme che ho postato noterai che c'e' un altra soluzione, ossia lasciare il plist non convertito e metterlo nella partizione 

 /EFI/OZ/

Montando prima la stessa con i comandi da terminale, se non sai come si fa, dimmelo che lo scrivo, dopo averla montata la vedrai nei dischi a qiuesto punto puoi mettere il file Default.plist, in quella cartella /Efi/EFI/OZ.

Tieni presente che eventuali opzioni contenute in questo file nella cartella /Efi/EFI/OZ sovrascrivono le eventuali presenti nel file ozmosisdefault.ffs presente nel bios.

Sempre nella stessa folder noterai anche un altra folder che si chiama /Efi/EFI/OZ/ACPI/LOAD in questa puoi mettere l'eventuale DSDT da te editato.

Per i kext, devi vedere se hai spazio disponibile nel bios, io ci tengo solo il fakesmc gli altri li metto nel posto standard

Link to comment
Share on other sites

Perfetto allora provo a fare un plist "perfetto" in efi/oz e poi quanto  è tutto ok mel o metto nel bios :)


Niente devo avere qualche problema :

 

14:190 00:000  Injected PciRoot(0x0)/Pci(0x2,0x0) - "AAPL,ig-platform-id" = 0D 22 00 03  (4) - Success

 

ma non viene caricato il kext, senti potresti postarmi la tua EFI così controllo con i tuoi file dove sono le differenze?

  • Like 1
Link to comment
Share on other sites

@Aigor 

 

scusa ma tutte le modifiche che faccio nel defaults.plist dentro /EFI/Oz non vengono lette, continua a prendere quelle presenti nel tuo bios.

Non è che bisogna aggiornare il tuo bios con l'Ozmosis più recente ?

 

PS: Puoi allegarmi anche tutta la tue EFI pls?

Link to comment
Share on other sites

Il mio bios e' aggiornato con la recente versione di ozmosis, fai una cosa, leggi il readme che ho allegato e prova a fare un reset a 4 dita come spiegato

Link to comment
Share on other sites

Niente da fare, ma da te funziona?

Ecco ho fatto la minkiata! 

 

Mi sono detto reinstallo, forse ho smanettato qualche kext e sorpresa : non posso installare Yosemite perchè non è collegato ad internet.

 

Ti chiedo l'ultimo favore poi giuro che cerco di non romperti più....

 

Mi potresti preparare il bios da flashare contenente il kext della scheda di rete ?

 

grazie mille

Link to comment
Share on other sites

@Ultralaser, non e' possibile integrare direttamente nel bios la scheda di rete in quanto non c'e' spazio a disposizione, per integrare la scheda di rete oltre al kext della stessa occorre il flle IONetworkingFamily e questo e' abbastanza corposo per cui passandolo all utility kext2ffs ed usando entrambi i kext compressi, non ci entrano nel bios.

Io pero' yosemite l'ho installato senza essere collegato ad internet, come fai l'installazione? io mi sono fatto una chiavetta bootable con cui installo yosemite ma l'ho fatta avendo a disposizione l'app di yosemite scaricata dall apple store, e ovviamente un osx, non importa se fisico o virtuale, comunque, se usi il mio bios cosi' come e' deve funzionare, e' quello che attualmente uso.

 

@Magnifico, se leggi a pagina 91 del thread in inglese c'e' il link al post su che e' questo http://www.insanelymac.com/forum/topic/291655-ozmosis/?p=2061647 li trovi i link per scvaricare il tutto.

Non ho purtroppo molto tempo ma vedo nei prossimi giorni di prepapare una guida per ozmosis nuovo, anche se non varia moltissimo, insieme a questa inseriro' anche la guida per un tool che si chiama ozmotools che serve a fare il tutto con un comando e su un solo sistema, chiaramente l'editing del DSDT deve essere sempre fatto su OSX.

  • Like 1
Link to comment
Share on other sites

@Aigors : se utilizzo la partizione di recovery allora mi richiede la connessione ad Internet. Alla fine ho tirato fuori la chiavetta "vanilla" che mi ero preparato ed effettivamente sono riuscito ad installarlo nuovamente (poi sono scappato al lavoro); non vedo l'ora di tornare a casa e smanettarci sopra.... il tempo è sempre trooooopo poco :(

 

 

PS : dalla tua guida :

 

"Injector Kext serve per iniettare dei parametri in alcune kext, personalmente non ce l'ho caricato nel mio bios e mi funziona tutto benissimo."

 

non è che per caso manca nel tuo bios e forse per questo motivo le modifiche al defaults.plist non vengono viste? (chiedo ma dubito)

Link to comment
Share on other sites

@aigors,

 

Sai come si trasforma una stringa in integer per ozsmosis?

 

<key>IntelGFX</key><string>0x0d228086</string>

Scusa per la tarda risposta, io ho usato plistedit convertendo quel valore in decimale con la calcolatrice, e mettendolo di fianco la chiave in plistedit

Link to comment
Share on other sites

Figurati, anzi grazie a te e alla tua pazienza.

Per me ozmosis é assolutamente nuovo e fatico a trovare documentazione e così ho fatto di te il mio punto di riferimento :)

 

Ho provato a fare un bios mod da nuovo scaricando l'ultimo cap ma non riesco a flasharlo ne con l'utility che hai postato ne direttamente dalla mobo.

 

Cosa sbaglio?

Posso chiederti anche gentilmente la copia della tua efi così da poter confrontare i miei casini ed imparare da tali?

 

La cosa che non capisco proprio é che per alcune modifiche come il seriale non viene considerato e mi da in default quello che trova in ozmosis bios

Link to comment
Share on other sites

La mia te la vorrei dare, ma ho fatto un DSDT a cacchio di cane per cui non mi parte piu' il sistema  :wallbash:

Dunque, per avere un bios che sia possibile flashare con l'utility da windows, devi scaricarti il software Uefitool

https://github.com/LongSoft/UEFITool/releases/tag/0.19.2

Installatolo sotto windows, lancialo, dal menu' file carica il bios della tua mobo, selezionalo cliccandoci sopra, poi dal menu' action, sposta il cursore del mouse su capsule file, vedrai due opzioni, extract as is e extract body, scegli extract body, salvati questo file come bios-nocap.rom o quello che vuoi, su questo fai le tue modifiche, poi potrai flasharlo con l'utility sotto windows.

Piccola spiegazione, asus usa un formato detto capsule che aggiunge 2048 byte di header in testa al bios vero e proprio, questo e' detto capsule header e serve come impronta digitale all utility bios per il flash, per cui ogni modifica che fai al bios non rispecchia i dati contenuti nell header, ecco perche' l'utility nel bios non te lo riconosce, ma non viene considerato dall afuwin64 per cui e' possibile flasharlo, a, non so se te l'ho detto, ma il prompt del dos da cui poi lancerai afuwin64 lo devi aprire con i privilegi di administrator.

Spero di non aver scritto fregnacce :D data l'ora tarda e' possibile, se non capisci qualcosa, cosa possibile visto che non sono un "docente", chiedi pure :D 

  • Like 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...