Skocz do zawartości

Natywny zapis do NVRAM - modyfikacje BIOS


314TeR
 Udostępnij

Rekomendowane odpowiedzi

Chyba spróbuję i u siebie AptioMemoryFix . W tej chwili na zmodyfikowanym biosie przec Ciebie @314Ter nvram działa bez problemu ale wgram niemodyfikowany i zobaczymy czy ruszy.

Czy nie warto się bawić skoro działa? A może wnosi jakieś dodatkowe usprawnienia?

 

Modowany bios pod NVRAM na Z97 musimy mieć. Zapisem NVRAM na naszych mobasach popsuł ASUS wstawiając w kod modułu od NVRAM tzw białą listę dozwolonych komend. Trzeba ją usunąć. 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 3 tygodnie później...

z tym dużo łatwiej, w sumie dobrze zrobiłem poprzednio, tylko pewnie rejestry miały złe dane. IsBootVariable ustawcie zawsze na true. Nie wiem czy ona tylko tam się odwołuje więc może lepiej bezpośrednio w funkcji Set. Na razie jestem na Windows, więc ciężko mi coś zrobić. Niech ktoś na telegram pisze @r3yder to pomogę.

1F 00 00 E8 58 0A 00 00  48 3B C3 75 1E 49 8B D5
48 8B CE E8 9C FC FF FF  3A C3 75 0F 48 BB 0F 00
00 00 00 00 00 80 E9 F8  00 00 00 49 8D 4E 08 41
B8 10 00 00 00 49 8B D5  41 C6 46 28 02 41 C7 06
4E 56 41 52 45 89 66 04  49 89 7E 18 49 89 6E 20
NA

 

1F 00 00 E8 58 0A 00 00  48 3B C3 EB 1E 49 8B D5
48 8B CE E8 9C FC FF FF  3A C3 75 0F 48 BB 0F 00
00 00 00 00 00 80 E9 F8  00 00 00 49 8D 4E 08 41
B8 10 00 00 00 49 8B D5  41 C6 46 28 02 41 C7 06
4E 56 41 52 45 89 66 04  49 89 7E 18 49 89 6E 20
To jest ten sam moduł, nie najnowszy z ostatniego postu. Tylko jeden bit zmieniony.

 

 

@Reyder - pytanie - czy jesteś w stanie sprawdzić, czy da się utworzyć uniwersalny patch binarny na odblokowanie whitelisty? Procedura ściągania jest strasznie zagmatwana i trzeba łącznie użyć UEFITool, MMTool 5.x, jak i starej 4.x. Natomiast nowy UEFIPatch którego używam do modyfikacji BIOSów do X299 i ściągania PM działa dobrze z nowymi BIOSami, i mam pomysł jak go zaprzęgnąć to ściągania whitelisty, tylko musiałbym mieć tylko solidną powtarzalną maskę, ewentualnie maski binarne zamian jeśli się okaże, że nie wystarczy jedna.

Odnośnik do komentarza
Udostępnij na innych stronach

Ech... no to lipa...

 

A mógłbyś opisać jak/czym wykonać dokładnie tylko 2 kroki?:

  1. Dekompilację wyciągniętego i zdekompresowanego modułu nvram,
  2. Na podstawie w/w następnie czego w nim szukać?

Ja pomyślę jak uprościć metodę metodę podmiany już samego zmodyfikowanego modułu*, oraz poprzyglądam się samym modułom nvram/smi i popatrzę czy się faktycznie jakoś różnią między płytami i czy da radę np "zgrupować" pewne moduły. W końcu skoro działała podmiana modułu z wersji 0202 do 3002 to może tych wersji tak wiele nie ma.

 

*Na razie sama podmiana UEFITool działa, ale ubija działanie profili XMP - jest coś z samą wymianą modułu - natomiast oba MMTool nie potrafią wszystkiego i trzeba użyć konkretnej kombinacji ich trzech aby uzyskać finalnie działający wsad.

Odnośnik do komentarza
Udostępnij na innych stronach

Darmowa IDA powinna się nadać do tego. Możesz zmodyfikować moduł na kilka sposobów. Najprostszym z nich jest zwrócenie w funkcji odpowiedzialnej za sprawdzanie czy dana zmienna to ta dozwolona, czy systemowa (już nie pamiętam) zawsze TRUE IsBootVariable. Czyli na jej początku wpisujemy

mov al, 1
ret

To powinno wystarczyć, chociaż nie wiem czy ta funkcja nie robi czegoś więcej. Inną metodą jest spatchowanie "jmp".

 

Masz 3 możliwości patrz na kod:

 if ( !gVarWhiteList[LastIndex].VarName  // The variable is not in the list #1
          && !CompareMemUNCHANGED(&gVarWhiteList[LastIndex].VarGuid, &gNullGuid, sizeof(EFI_GUID))// The variable is not in the list #2
          && !IsBootVariable(

Jak sobie znajdziesz w hex to co ja edytowałem i popatrzysz na graph view to będzie łatwiej zrozumieć.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 3 miesiące temu...

Powinno działać, chyba takiej wersji używałem niedawno.

 

 

Właśnie tak z ciekawości odpaliłem i wszystko działa jak trzeba sleep/wake, wsparcie dla kodowania h264, a z profitów jest w zasadzie tylko to, że intel nie stoi na maksymalnym zegarze, ale pracuje płynnie 0,2 do 1,25 Ghz. Sprawdzę jeszcze tak z grubsza czasy kodowania.

 

Dzięki za sprawdzenie. Wkrótce będę uruchamiał swojego pierwszego hackintosha, więc nie będę musiał emulować NVRAM-u w Cloverze.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Właśnie tak z ciekawości odpaliłem i wszystko działa jak trzeba sleep/wake, wsparcie dla kodowania h264, a z profitów jest w zasadzie tylko to, że intel nie stoi na maksymalnym zegarze, ale pracuje płynnie 0,2 do 1,25 Ghz. Sprawdzę jeszcze tak z grubsza czasy kodowania.

Aktualizacja biosu rozwiązała problem stojących zegarów hd4600 przy konfiguracji igpu+dgpu ? Mam właśnie ten sam problem.

Odnośnik do komentarza
Udostępnij na innych stronach

Aktualizacja biosu rozwiązała problem stojących zegarów hd4600 przy konfiguracji igpu+dgpu ? Mam właśnie ten sam problem.

 

Ktoś coś namieszał - pewnie ja. Nie miałem zamiaru pisać w tym wątku. Głowę bym dał sobie uciąć, że napisałem to tu: http://hamac.pl/topic/14928-prawidłowa-konfiguracja-pod-imac-i-inne-smbiosy-z-igpudgpu/page-4

 

ale widać słaby dzień miałem i coś namieszałem. Wszystkich przepraszam za zamieszanie :(

Odnośnik do komentarza
Udostępnij na innych stronach

Ktoś coś namieszał - pewnie ja. Nie miałem zamiaru pisać w tym wątku. Głowę bym dał sobie uciąć, że napisałem to tu: http://hamac.pl/topic/14928-prawidłowa-konfiguracja-pod-imac-i-inne-smbiosy-z-igpudgpu/page-4

 

ale widać słaby dzień miałem i coś namieszałem. Wszystkich przepraszam za zamieszanie :(

Ok, ale nadal nie wiem co rozwiązało problem stojących zegarów. Co spowodowało że teraz częstotliwość igpu się zmienia?
Odnośnik do komentarza
Udostępnij na innych stronach

Ok, ale nadal nie wiem co rozwiązało problem stojących zegarów. Co spowodowało że teraz częstotliwość igpu się zmienia?

Po prostu botowanie z dwoma monitorami jeden podpięty do igpu a drugi do dGPU i obowiązkowo usunięty w Cloverze  ig-platform-id 0x04120004. Ale w tym przypadku do iGPU musi być podpiety monitor. Jeśli tego nie zrobisz przy kodowaniu filmów do h264 pojawią się błędy - glitche, zielone plamy itp Osobiście wróciłem do używania monitorów z radeonem i wpisem 0x04120004, czyli pracuję z intelem na 1.25GHz

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1 miesiąc temu...

I jak jest jakiś nowy sposób na modyfikację by nie tracić XMP? Ja siedzę na najstarszym biosie 0401 dla Maximus VII Hero na nim działa bez problemu Nvram. Do najnowszego (3503) wrzuciłbym ten moduł od starego ale jak nie działa XMP to słabo. Spróbuję jak to zadziała i najwyżej wrócę do niemodyfikowanego. W płycie mam BIOS Flashback i posiadam programator SPI więc próbować mogę wszystkiego bez problemu.

Odnośnik do komentarza
Udostępnij na innych stronach

@MrVanosh - a którą najnowszą wersję BIOS do swojej płyty sprawdzałeś?

 

Widzę że najnowsza to 3503 co prawda beta ale z 2018/04/26 więc generalnie bardzo świeża jak na Z97.

 

EDIT: ooo i do mojejgo IMPACT VII też jest nowy 3503 - zaraz wezmę tę wersję na warsztat, zobaczymy co w niej piszczy. Jest szansa, że i Twoja płyta ma identyczne moduły.

Odnośnik do komentarza
Udostępnij na innych stronach

@314TeR nie działał, sprawdzałem kilka razy. Po podmianie modułu od razu śmigało. Pamiętam wcześniej też wgrywałem jeszcze tą poprzednią wersję przed betą(bo jej jeszcze nie było) i na niej też brak zapisu do NVRAM i wtedy wróciłem znowu do najstarszej, na której śmigał. Niestety ta najstarsza wersja zawierała kilka bugów (np. powielone elementy bootowania np. 10x windows boot manager) ale jakoś to przebolałem i na niej siedziałem. Teraz siedzę na tej becie zmodyfikowanej i RAM muszę mieć na 1600MHz i SSD podłączony do kontrolera Intela :/

Odnośnik do komentarza
Udostępnij na innych stronach

W każdym biosie Asusa widziałem Bug z dublowaniem wpisów startowych uefi. Pomaga na to odpięcie wszystkich dysków i start komputera, lub ręczna edycja wpisów w Easy UEFI.

 

Jak wrócę z wakacji to sprawdzę betę do mojej płyty, może się uda zrobić mod też do Twojej.

Odnośnik do komentarza
Udostępnij na innych stronach

W każdym biosie Asusa widziałem Bug z dublowaniem wpisów startowych uefi. Pomaga na to odpięcie wszystkich dysków i start komputera, lub ręczna edycja wpisów w Easy UEFI.

Jak wrócę z wakacji to sprawdzę betę do mojej płyty, może się uda zrobić mod też do Twojej.

Zdublowane wpisy można usunąć w łatwiejszy sposób, u mnie sprawdza się w przestawienie kontrolera z ahci na disabled, zapisanie ustawień, restart i ponowne przestawienie na ahci.

U mnie po każdej aktualizacji systemu wpisy się mnożą i muszę stosować ten trik. Jeśli tego nie zrobię robi się ich tak dużo że pomaga tylko odpięcie dysków bo nawet do biosu nie można wejść bootowanie zatrzymuje się na logo asusa.....dziwne że do tej pory nie rozwiązali tego problemu.

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.