Jump to content

Apple iMac11,1+MacBookPro5,3+MacBookPro8,1 UEFI firmware dump, extracted modules and firmware volume map

iMac11.1 firmware Apple EFI

  • Please log in to reply
25 replies to this topic

#1
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,693 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

I decided to dump a friend of mine's iMac's firmware.

I used phoenix tools to extract all the modules uncompressed.

The result is thus also all .ffs (.mod) files.

I generated a firmware map report using mmtools for Aptio.

Both are capable of extracting and modding Apple's firmware files.

Hopefully somebody will be able to put these modules to good use ;)

Enjoy... :D

EDIT: For the Info - Apple seems to use Tiano style EFI BIOS...

EDIT2: I borrowed a friends MacBookPro5,3 and did the same to it... now we also have the same dump of a MacBook Pro

EDIT3: Got my hands on a rom of a MacBookPro8,1, did the same.

Also have one for MacBookPro8,2 but that is for tomorrow... :)

Attached Files


Edited by Andy Vandijck, 29 September 2013 - 09:30 PM.


#2
STLVNUB

STLVNUB

    InsanelyMac Legend

  • Coders
  • 1,143 posts
  • Gender:Male

And now the "Fun" starts ;)

But only after knowing which module is which and naming then so.



#3
xpamamadeus

xpamamadeus

    InsanelyMac Legend

  • Donators
  • 588 posts
  • Gender:Male
  • Location:Croatia

And now the "Fun" starts ;)

But only after knowing which module is which and naming then so.

i know 2 modules that i use(used in past) for clover.

 

HFSPlus driver and firewire driver to solve console spam about invalid GUID



#4
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,693 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

Et voila!

MacBookPro5,3 dump + info + extracted modules...

Enjoy :D



#5
VanillaCracker

VanillaCracker

    InsanelyMac Protégé

  • Members
  • Pip
  • 7 posts

A bit of info about modules

Old stuff but still useful i believe   :)

Spoiler


#6
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,693 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

Added MacBookPro8,1 extracted modules + rom + info.

Tomorrow I'll also do the MacBookPro8,2 rom I have...

Enjoy :D



#7
STLVNUB

STLVNUB

    InsanelyMac Legend

  • Coders
  • 1,143 posts
  • Gender:Male

This "may" come in handy now

https://www.dropbox....z/Apple_EFI.zip

 

Puts Names to those GUID's ;)


A bit of info about modules

Old stuff but still useful i believe   :)

Spoiler

Would be nice to get updated list, using it as part of the tool, see #7



#8
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,693 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

This "may" come in handy now

https://www.dropbox....z/Apple_EFI.zip

 

Puts Names to those GUID's ;)


Would be nice to get updated list, using it as part of the tool, see #7

This works real well, thx.

It doesn't do every module but a lot of them... :D



#9
STLVNUB

STLVNUB

    InsanelyMac Legend

  • Coders
  • 1,143 posts
  • Gender:Male

This works real well, thx.

It doesn't do every module but a lot of them... :D

Thanks, yeah we need updated list, though I think the ones skipped may be result of different Mac's and the ones done are common to most.

The skipped ones i.e SmmCoreDispatcher.efi

240612B5-A063-11D4-9A3A-0090273FC14D in dump as against 240612B5-A063-11D4-9A3A-0090273FC18E in list, so I assume that last digits are for different model. Should check against first 4, I suppose.



#10
STLVNUB

STLVNUB

    InsanelyMac Legend

  • Coders
  • 1,143 posts
  • Gender:Male

Slightly updated script

https://www.dropbox....z/Apple_EFI.zip



#11
Riley Freeman

Riley Freeman

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 936 posts
  • Gender:Male
  • Location:The Streets

I had to try AppleBootBeep on my Ozmosis-ed Z68 to see if it would give me a startup chime, but no joy.

 

It'd be nice to gather a list of modules that will work when loaded with Ozmosis or Clover.



#12
RehabMan

RehabMan

    InsanelyMac Deity

  • Coders
  • 1,578 posts
  • Gender:Male
  • Location:Bellingham, WA
  • Interests:skiing, software, classic cars

I decided to dump a friend of mine's iMac's firmware.
I used phoenix tools to extract all the modules uncompressed.
The result is thus also all .ffs (.mod) files.
I generated a firmware map report using mmtools for Aptio.
Both are capable of extracting and modding Apple's firmware files.
Hopefully somebody will be able to put these modules to good use ;)
Enjoy... :D
EDIT: For the Info - Apple seems to use Tiano style EFI BIOS...
EDIT2: I borrowed a friends MacBookPro5,3 and did the same to it... now we also have the same dump of a MacBook Pro
EDIT3: Got my hands on a rom of a MacBookPro8,1, did the same.
Also have one for MacBookPro8,2 but that is for tomorrow... :)


Andy,

Do you have any tips for how to go about this? I'm having some issues with Clover on a Haswell HP laptop. Clover UEFI won't boot it without caches enabled (it is not the end of the world, as it does boot with caches and legacy Clover can boot it without caches). The errors appear to have something to do with HFSPlus.efi (problem reading some directories).

My thought is that perhaps the HFSPlus.efi needs an update (not sure from what machine the Clover version came from). I happen to own a MacBookAir6,2 (Haswell) and would entertain the idea of extracting the HFSPlus.efi from it if I had a clue how. Not versed in phoenixtools/mmtools, etc (not sure where to get them from), but I thought maybe you had an idea or some pointers.

Thanks.

#13
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,693 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

Andy,

Do you have any tips for how to go about this? I'm having some issues with Clover on a Haswell HP laptop. Clover UEFI won't boot it without caches enabled (it is not the end of the world, as it does boot with caches and legacy Clover can boot it without caches). The errors appear to have something to do with HFSPlus.efi (problem reading some directories).

My thought is that perhaps the HFSPlus.efi needs an update (not sure from what machine the Clover version came from). I happen to own a MacBookAir6,2 (Haswell) and would entertain the idea of extracting the HFSPlus.efi from it if I had a clue how. Not versed in phoenixtools/mmtools, etc (not sure where to get them from), but I thought maybe you had an idea or some pointers.

Thanks.

Dump the EFI rom with DarwinDumper and give it to me.
I can extract it for you ;)

#14
RehabMan

RehabMan

    InsanelyMac Deity

  • Coders
  • 1,578 posts
  • Gender:Male
  • Location:Bellingham, WA
  • Interests:skiing, software, classic cars

Dump the EFI rom with DarwinDumper and give it to me.
I can extract it for you ;)


I tried DarwinDumper v2.8.8. It doesn't dump the ROM... only flashrom_log.txt in BIOS/System. The log shows 'No EEPROM/flash device found.', so I guess DarwinDumnper does not support the device used on the MacBookAir6,2.

I guess I'll install Windows and see what I can do with phoenixtool/mmtool (assuming I can figure them out...)

#15
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 3,202 posts
  • Gender:Male
  • Location:Moscow

I tried DarwinDumper v2.8.8. It doesn't dump the ROM... only flashrom_log.txt in BIOS/System. The log shows 'No EEPROM/flash device found.', so I guess DarwinDumnper does not support the device used on the MacBookAir6,2.

I guess I'll install Windows and see what I can do with phoenixtool/mmtool (assuming I can figure them out...)

DurwinDumper uses access to LPC chip to extract ROM. But laptops don't contain such chip. So, extracting ROM usually is impossible on books.



#16
shiecldk

shiecldk

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 233 posts
  • Gender:Male
  • Location:Taiwan

I've checked these three HFSPlus drivers in binary:

http://www.projectos...c=2562&st=11860

https://github.com/J...les/HFSPlus/X64  (this one is used by QUO motherboard)

 

Basically, they have no difference. You can compare the files with HexEdit yourself.



#17
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,693 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

DurwinDumper uses access to LPC chip to extract ROM. But laptops don't contain such chip. So, extracting ROM usually is impossible on books.

Apple's laptops do...
LPCB device...
Flashrom -p internal
Command can dump an Apple firmware.
I got a rom from a MacBook Pro that way.

#18
sbg

sbg

    InsanelyMac Protégé

  • Donators
  • 66 posts

Dump the EFI rom with DarwinDumper and give it to me.
I can extract it for you ;)

 How can I convert the extracted .mod files to .efi?

 

Thanks.



#19
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,693 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

How can I convert the extracted .mod files to .efi?

Thanks.

by removing the efi header.
most .efi files start with MZ in the beginning.
so throw it in a hex editor, search for MZ and remove all bytes before it. save as .efi
apple's updates (the .scap files in the pkg) for firmware can also be extracted by phoenix tools.

#20
RehabMan

RehabMan

    InsanelyMac Deity

  • Coders
  • 1,578 posts
  • Gender:Male
  • Location:Bellingham, WA
  • Interests:skiing, software, classic cars

by removing the efi header.
most .efi files start with MZ in the beginning.
so throw it in a hex editor, search for MZ and remove all bytes before it. save as .efi
apple's updates (the .scap files in the pkg) for firmware can also be extracted by phoenix tools.


Thanks Andy for all the info you provided here.

I eventually found the time to extract HFSPlus.efi from some recent EFI firmware updates (both MBA6,1 and MacBookPro11,1). I was able to use them (surprisingly, both were different), but unfortunately, it didn't help my problem booting "without caches" with Clover.





Also tagged with one or more of these keywords: iMac11.1, firmware, Apple, EFI


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy