Jump to content
CodeRush

[UEFIPatch] UEFI patching utility

1,991 posts in this topic

Recommended Posts

Nothing to do here with software methods now, if your ASUS x8x board doesn't support USB BIOS Flashback.

There is no way to flash modified BIOS on such boards, except external SPI programmer.

I heard some rumors about AMI Flash Utility able to flash BIOS on this platform, but I have no chance to test, that is why I don't recommend to try, unless you have SPI programmer to correct possible failure. But if you ask me about that, it appears that you don't have one.

 

I am having this same problem. I was told that this board (H87i-plus) most likely had the MSR unlocked. Is this true?

If not, am I able to flash the board using FTK?

Share this post


Link to post
Share on other sites
Advertisement

I am having this same problem. I was told that this board (H87i-plus) most likely had the MSR unlocked. Is this true?

If not, am I able to flash the board using FTK?

just try it, nothing bad happens than an error message [280?] if flashlocked. Before you'll have to cut the capsule header, bios starts at 800h in your case.

Or the better way:

 

dump with:

fpt -d bios.bin

rewrite with:

fpt -rewrite -f bios.bin
fpt -greset

for sure it's locked ;)

Share this post


Link to post
Share on other sites

just try it, nothing bad happens than an error message [280?] if flashlocked. Before you'll have to cut the capsule header, bios starts at 800h in your case.

I apologize, I'm not terribly familiar with all of this. Could you go into a little more detail?

 

I thought I read something about the first part of the bios file being for security -- so I assume you're telling me I have to cut this out?

I've only tried to update it through the EZ flash 2 updater in the UEFI, and it failed the security verification.

How would I go about cutting this out? What tools do I need?

Share this post


Link to post
Share on other sites

I apologize, I'm not terribly familiar with all of this. Could you go into a little more detail?

 

I thought I read something about the first part of the bios file being for security -- so I assume you're telling me I have to cut this out?

I've only tried to update it through the EZ flash 2 updater in the UEFI, and it failed the security verification.

How would I go about cutting this out? What tools do I need?

That's long ago, you mean

descriptor region hack,

it doesn't work anymore for latest intel hardware and especially ASUS is sealing their ROMs against modifications.

 

You won't be able to flash any kind of modified ROM without special hardware, as CodeRush mentioned an SPI programmer.

But you can even try it with intel ftk version for Intel series 8 ;) and see what happens.

 

For sure EZflash won't accept a modified bios as it's from ASUS.

 

From a technical point of view the #WP (write-protect) pin of the bios chip is

undervolted or unpowered but needs a #WP-high signal to get flashed. The power is triggered via GPIO and it's off by default.

Only unlock with SPI programmer help in this case.

 

Or recalculation of the capsule header checksum which is impossible - it's RSA signed and the key has not been leaked for now.

 

But I've been thinking about somthing else: reverse engineering afuwinx64.exe ; ) so it could accept any firmware.

We've been discussing it here earlier.

Share this post


Link to post
Share on other sites

That's long ago, you mean descriptor region, it doesn't work anymore for latest intel hardware and especially asus is sealing their ROMs against modifications.

So you won't be able to flash any kind of modified bios without special hardware, as CodeRush mentioned an SPI programmer.

But you can even try it with intel ftk version for Intel series 8 ;) and see what happens.

I'm in a little over my head. If I get a board with bios flashback, will that work for sure? If so, why will that work, but the method through the UEFI won't work?

Also, can anyone tell me how to tell if these boards even need flashed to load OS X? I was under the impression that some of the newer asus boards didn't need patching.

Share this post


Link to post
Share on other sites

I'm in a little over my head. If I get a board with bios flashback, will that work for sure? If so, why will that work, but the method through the UEFI won't work?

Also, can anyone tell me how to tell if these boards even need flashed to load OS X? I was under the impression that some of the newer asus boards didn't need patching.

but as I read here it HAS bios flashback!

 

"Just plug in a USB flash drive containing the BIOS file and press the RESET button for 3 seconds with the power supply connected. Hassle-free updating for ultimate convenience!"

 

sounds just good, wait I'll create an unlocked pmpatched ROM and you can flashback as described.

 

Put it on a FAT32 formatted USB stick as is, don't rename the extracted file H87IP.CAP < that's the recovery filename

and start the recovery process. Would be nice - for the community - to report if it worked for you!

 

This procedure won't work when the recovery checks for a functional capsule header too, don't know.

Share this post


Link to post
Share on other sites

but as I read here it HAS bios flashback!

 

"Just plug in a USB flash drive containing the BIOS file and press the RESET button for 3 seconds with the power supply connected. Hassle-free updating for ultimate convenience!"

 

sounds just good, wait I'll create an unlocked pmpatched ROM and you can flashback as described.

 

Put it on a FAT32 formatted USB stick as is, don't rename the extracted file H87IP.CAP < that's the recovery filename

and start the recovery process. Would be nice - for the community - to report if it worked for you!

 

This procedure won't work when the recovery checks for a functional capsule header too, don't know.

That might be an earlier revision or something.

http://www.tonymacx86.com/mavericks/103788-just-warning-asus-mobos.html

 

I don't see a flashback button on my board.

 

Also, how do I know if my board need flashing in the first place?

Share this post


Link to post
Share on other sites

That might be an earlier revision or something.

http://www.tonymacx86.com/mavericks/103788-just-warning-asus-mobos.html

 

I don't see a flashback button on my board.

 

Also, how do I know if my board need flashing in the first place?

you can try to force recovery mode on AMI boards powering off the machine,

keep pressing <ctrl>+<home> while powering on & keep holding this shortcut until you hear two beeps and 

the USB port gets accessed to reflash the ROM.

Share this post


Link to post
Share on other sites

you can try to force recovery mode on AMI boards powering off the machine,

keep pressing <ctrl>+<home> while powering on & keep holding this shortcut until you hear two beeps and 

the USB port gets accessed to reflash the ROM.

Which USB port would I use? And do you know how to tell if I need to flash the BIOS in the first place?

Share this post


Link to post
Share on other sites

Which USB port would I use? And do you know how to tell if I need to flash the BIOS in the first place?

 

I'd recommend using USB2.0 port, not the blue USB3.0 ones.

Also you can cut the first 800h byte and save the cut copy as amiboot.rom - more info here.

 

I figured it out, there's a secret switch : )

skip the damn capsule header check and flash! no more lock.

 

Just created a description @ MDL.

Share this post


Link to post
Share on other sites

This is great. Can't say it makes SPI programmer unneeded, but it really makes things easier for desktop users.

Yeah, all this RSA-signed capsule code is unimportant and no more tinkering cause of that.

It would be really interesting to get out the piece of code that triggers the GPIO on, with something

like a visual debugger. It could help on other bios types either.

Share this post


Link to post
Share on other sites

I think it's not about GPIO toggle, but about right way to call build-in SMI handler, that disables all protection routines.

We need to study afuwin code now to know more, but I have no time for anything except work now.

---

Development of PMPatch successor is not stalled, BTW, and the FFS traversal code now works as supposed for PI 2.0 UEFIs, support for PI 1.x is about to be added in 1-2 weeks.

I will not release it until all things will work as supposed, but if someone (;)) with SPI programmer willing to test the alpha versions - you are welcome.

There are much work to do in that project, and now one can only extract all regions, volumes, files and sections from BIOS image (repacking code is in active development and comes later), but it is written in pure C, so it can be compiled for everything, OSX included.

Share this post


Link to post
Share on other sites

I think it's not about GPIO toggle, but about right way to call build-in SMI handler, that disables all protection routines.

We need to study afuwin code now to know more, but I have no time for anything except work now.

---

Development of PMPatch successor is not stalled, BTW, and the FFS traversal code now works as supposed for PI 2.0 UEFIs, support for PI 1.x is about to be added in 1-2 weeks.

I will not release it until all things will work as supposed, but if someone ( ;)) with SPI programmer willing to test the alpha versions - you are welcome.

There are much work to do in that project, and now one can only extract all regions, volumes, files and sections from BIOS image (repacking code is in active development and comes later), but it is written in pure C, so it can be compiled for everything, OSX included.

there's also a switch called /OEMSMI: but I don't know any arguments ;)

Share this post


Link to post
Share on other sites

can somebody please help me?

 

i got the bios rom and pmpatched it, but my BIOS says it cannot be flashed (i think for CRC-signed code reason)

the mainboard is the asrock z87extreme3 and this is the bios

 

ftp://europe.asrock.com/bios/1150/Z87%20Extreme3(2.10)ROM.zip

 

this is the dos flash program

 

ftp://europe.asrock.com/bios/1150/Z87%20Extreme3(2.10)DOS.zip

 

thank you guys. ^_^

Share this post


Link to post
Share on other sites

can somebody please help me?

 

i got the bios rom and pmpatched it, but my BIOS says it cannot be flashed (i think for CRC-signed code reason)

the mainboard is the asrock z87extreme3 and this is the bios

 

ftp://europe.asrock.com/bios/1150/Z87%20Extreme3(2.10)ROM.zip

 

this is the dos flash program

 

ftp://europe.asrock.com/bios/1150/Z87%20Extreme3(2.10)DOS.zip

 

thank you guys. ^_^

 

http://rghost.net/49098964

 

upgrade method for DOS, Win x86, Win x64 included.

Just execute upgrade.bat. Check your inbox for pass.

 

best regardz

Share this post


Link to post
Share on other sites

It worked, thank you very much. I definetly got a boot and install, on actual system boot i get a not so random (boots fine 1 in 30 tries) "PCI Configuration begin" hang but i think it can be resolved by a working DSDT.

I tried the various -x -f npci pcirootuid dart darkwake options with no luck

any advice?

Share this post


Link to post
Share on other sites

It worked, thank you very much. I definetly got a boot and install, on actual system boot i get a not so random (boots fine 1 in 30 tries) "PCI Configuration begin" hang but i think it can be resolved by a working DSDT.

I tried the various -x -f npci pcirootuid dart darkwake options with no luck

any advice?

use

 

dart=0 -v npci=0x2000

 

alternative

 

dart=0 -v npci=0x3000

 

A fixed DSDT can be burnt in also in your ROM ;)

Btw. download counter shows 0. If you used the ROM I patched, you can flash now with fpt (dos, win) and flashrom (linux,mac,win), it's flashunlocked.

Share this post


Link to post
Share on other sites

Hi CodeRush,

 

So sorry if I'm being stupid here.  I've read through the instructions so many times.  The attached screenshot shows what I'm trying to do with my Z87 Deluxe Dual Asus board.  I open the patch in terminal, drag in the BIOS file twice, write PATCHED at the end of the second file and it say's it's output the file  But I can't see it?

 

Apologies if I'm wasting your time, but wanted to check I've got this right.  Thanks in advance!

 

Nick

post-1218968-0-26377100-1380734944.png

Share this post


Link to post
Share on other sites

Successfully patched and flashed BIOS 2104 for ASUS P8Z77-V Pro. Thanks again CodeRush!

 

Note that the only way to flash a modified BIOS on these boards is with "USB BIOS Flashback" - see your motherboard manual for more info.

Share this post


Link to post
Share on other sites

hi

 

any chance someone send me a patched bios for an AsRock H87M pro4...

I can't install mavericks...it reboots just after loading drivers ..extra/extensions.mkext, ganged video card,subs,hds.and so on

used several boot loaders..just after choose the HD ..it reboots

 

'cause I have no idea or expertise to patch one...

thank you for any information about...

c.frio

Share this post


Link to post
Share on other sites

hi

 

any chance someone send me a patched bios for an AsRock H87M pro4...

I can't install mavericks...it reboots just after loading drivers ..extra/extensions.mkext, ganged video card,subs,hds.and so on

used several boot loaders..just after choose the HD ..it reboots

 

'cause I have no idea or expertise to patch one...

thank you for any information about...

c.frio

patched ROM

Share this post


Link to post
Share on other sites

Successfully patched and flashed BIOS 2104 for ASUS P8Z77-V Pro. Thanks again CodeRush!

 

Note that the only way to flash a modified BIOS on these boards is with "USB BIOS Flashback" - see your motherboard manual for more info.

Can you upload your patched bios 2104 ple

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Slice
      Now I want to add vector graphics support in Clover. See rev 4560 and later.
      It is not working yet but designers may begin to create Vector Themes.
      It supposed to consist of SVG elements and has design size. It will be rendered to any screen size scaled from design size.
       
      What application in macOS can create SVG graphics?
      Inkscape is not working in macOS 10.11+. Pity.
      LibreOffice Draw works with SVG but buggy.
      Boxy SVG cost 10$ but looks good enough. It creates the best in simplicity files and have more then enough features.
      Illustrator is good but expensive.
       
      How to improve SVG file?
      Clover has restricted support for SVG. It is your job to make compatible file and as small as possible to speedup rendering.
      Some helps:
      Help:Inkscape – From invalid to valid SVG Inkscape files
      From invalid to valid SVG Adobe Illustrator files
      From invalid to valid SVG files of other editors: BKchem, ChemDraw and CorelDRAW
      Help:Illustrator – Assistance with creating and saving SVG images in Adobe Illustrator that will pass W3C validation
      User:Quibik/Cleaning up SVG files manually
      Later I will write own instructions specific to Clover abilities.
       
      How to create SVG fonts?
      You can google to find ready-to-use SVG fonts.  I found some problems with too beaty fonts: slow rendering and overflow crash. Be careful.
      You can get ttf or otf fonts and convert them into svg by using online WEB services. Not a problem to google.
      But then I want to find a way to simplify the font to reduce a size and speedup rendering.
      You can create own font by FontForge It is opensource and available for Windows, Mac and GNU+Linux. It creates otf font which you can convert to svg font.
       
      Pictures from Badruzeus
      https://www.insanelymac.com/forum/applications/core/interface/file/attachment.php?id=301597
    • By ErmaC
      Please be advised that this is not a discussion topic.
       

      This topic is a "direct" line of communication between the Developers of Clover (Clover Team).
      Unless a Developer/Coder asks for more information, all the critical information of a post should be contained in the subject and first post.
      Every post will be responded to in some fashion before being locked.
       
       
       
       

      Invalid Posts
      Since we are strictly interested in issue reports on this topic, the following post/reply are likely to be deleted immediately:
      1. Discussion topic aka OFF-TOPIC (What do you all think?)
      2. Invalid issue reports
      3. Feedback / Suggestion threads.
      4. Posts requesting information about the bootloader.
      5. Posts made on other forums (Don't spam.)
      6. "Accomplishment" threads, threads to advertise screenshots unrelated to bug reports.
      7. Posts requesting status updates on existing issues.
       
       
    • By nysander
      I start this topic to make my Lenovo Thinkpad W540 usable with High Sierra
       
      I followed many guides but this one started by @tluck made me most progress: 
      My setup as in signature
       
      I will update first post with statuses of working features:
       
      Graphics:
      Nvidia Quadro - disabled
      Intel HD 4600 - working @ 1920x1080 and 1,5GB RAM (had to set ig-plaform-id as Haswell desktop, mobile do not work)
      using intelGraphicsFixUp.kext
       
      Sound:
      internal speakers and mic works with AppleACL.kext and profile 28

      USB:
      i boot MacOS from USB drive and it works, mouse and pendrive also works
      USB power not work yet, so USB WiFi dongle and iPhone connection not work (no power @ USB)
      IOReq finds only USB 3.0 controller not USB 2.0 even though I have 2 ports USB 3.0 and 2 ports USB 2.0
       
       
      Integrated Camera:
      recognised in IOReq but not working now (probably due to USB)
       
      Bluetooth:
      as USB but works without problem

      Ethernet:
      works with intelMausiEthernet.kext

      Keyboard:
      internal is PS2 so VoodooPS2Controller.kext is needed - some mappings I would like to have different but works

      Touchpad:
      works with VoodooPS2Controller.kext from @tluck topic
       
      Trackpoint:
      One time works mostly not - debugging in progress
       
      Batery Status:
      not working
       
      Integrated WiFi:
      intel -  not working
       
      Sleep / Hibernate:
      not working
       
      Backlight:
      not working
       
      Other found issues:
      besides that graphics works @ 1920x1080 and have a lots of ram window shadows (especially dock shadow) looks bad
       
      External VGA:
      not tested yet
       
      External Mini Display Port / Thunderbolt:
      not tested yet
       
      I will post my clover / debug config later
       
       
    • By prince537
      Hello, I have set up a new desktop Mac and I have this problem. One of my fans is not working but in this picture is showing that you have two fans. could someone help me with this? I'm totally newb.

    • By notacone
      These are the Original iMac17,1 Firmware 0105_B20 ACPI Tables.
      They have been extracted from the firmware file provided in 10.12.4 update, so they are clean and unloaded.
      All tables are available in hex cut/new file/paste order so they are untouched and unloaded.
      I believe these files can serve to better study Skylake architecture implementation in Sierra.
      10.12.4-10.12.6 : IM171_0105_B20-10.12.4.firmware update ACPI Tables.zip
      10.13.0+ : IM171_0110_B00 10.13.0GM ACPI Tables.zip
×