Jump to content

-Archive- Macefix86 2006 -Archive-


bofors
 Share

443 posts in this topic

Recommended Posts

I think they might depend on each other in some way, so you need to load some before others.

 

There are 106 .efi modules, that is a lot potential loading orders. Does anybody have any good ideas about how to probe for depenencies? Doesn't Apple firmware specify a loading a order? Perhaps there is some kind of loading batch command or script in one of the .efi modules?

Link to comment
Share on other sites

After alot of Intensive Work. Urby, Simon and I would like to introduce the newest environment to work on EFI in.

New Features are

  • It comes with the Apple EFI modules (courtesy of Urby)
  • A script which loads all of the Compatible Apple Modules
  • Auto-Mounting of HFS+ Drives
  • Tianocore Shell

Download it here:

 

http://rapidshare.de/files/28376421/Mac_EFi_x86_v.2.zip.html

 

Bon Appetit :thumbsup_anim:

Link to comment
Share on other sites

thanks NeoPheus let us know how you get on!

 

Ok right now...

tested a little bit and found out that rEFIt is WORKING now... the only thing is, it cant find any bootable devices (this is logical)!

Then I looked into the diskutility of Mac OS and at the tab "Partitioning" you can choose in the options GUID...

This is the Partition Table from the new iMacs (intel)! Maybe this can be helpful... I don't know!

Now I'm looking at this mkext...

cYa later!

Link to comment
Share on other sites

Yes, i was gonna include the readme, but i forgo tot when i was uploading it :). So later this week i will upload a new one with the readme and some more fies (if we make more progress)

Link to comment
Share on other sites

I tested all with the load command in the intel sample implementation and here is the result

 

...
Radeon.efi							INT5 Bound Halt
...

 

And of the most success was the yukonethernet which found my ethernet controller. So i will experiment more with that later.

 

Kiko, have you tried to load Radeon.efi on your machine with the x1600 card?

Link to comment
Share on other sites

There are 106 .efi modules, that is a lot potential loading orders. Does anybody have any good ideas about how to probe for depenencies? Doesn't Apple firmware specify a loading a order? Perhaps there is some kind of loading batch command or script in one of the .efi modules?

 

Specify a loading order, probable. Finding out what it is is simple as long as there are no memory mappings going on that put them in a different order. If there are loaded in the order that they appear in memory, then we already know which order they should be loaded in because when saving the dumps, i included the handle number in the filenames. I'll get to work on that soon. I'll make one with all those known to work, and one with all of them.

Link to comment
Share on other sites

As many halts are on invalid opcodes, maybe they need to be loaded on a core duo processor. I want to also try to change the efi-loader to return back and not halt on int6. But I am not good at assembler and exception programming.

Link to comment
Share on other sites

I havent yet, but i will today, it should/might work.

 

Tried this in our environment and it doesn't work... I can't boot the environment native because there is no boot CD in the new release (0.2)!

Maybe someone could make a boot CD with the new EFI environment?!

Link to comment
Share on other sites

If there are loaded in the order that they appear in memory, then we already know which order they should be loaded in because when saving the dumps, i included the handle number in the filenames.

 

That would be convenient if true. You guys should be able to test the idea simply by loading some EFI modules and then looking to see where the stored in memory.

Link to comment
Share on other sites

Yes we were in the process of making a Cd but we stumbled across a large problem which has a higher priority than a cd, apparentely QEMU is freezing as it does not have MMX/SSE support, we are now trying to port the environment over to VmWAre.

Link to comment
Share on other sites

Nope, :) Radeon.efi doesnt work, i stil get the INT6 error.

 

I think getting Radeon.efi to load should be a priority. I am also wondering if it is possible to call the BIOS bootloader from the EFI shell.

 

The idea here would be use Radeon.efi (or other new Apple graphics firmware) to initialize graphics cards, so that Apple's graphics drivers work perfectly.

Link to comment
Share on other sites

Radeon.efi doesn tload as Apple cards use a efi firmware.

 

I think Radeon.efi is the EFI firmware for the x1600 on the iMac and MBP.

 

so we need to get the efi firmware from an apple x1600 and flash it onto a vga bios x1600

 

No, I think we just need to load it from disk. Flashing should not be neccessary, nor desirable for testing.

 

~~~~~~~~~~~~~~~~~~~

 

I am looking over the iMac firmware restoration .fd file ("IM41_0039_00B.fd") and noticing what appear to be several EFI modules missing from what Urby3 extracted:

 

PeiMain

PlatformStage1

CpuPeim

MemoryInitWrapper

MonoStatusCode

Capsule

ApplePpiPlatformInfoDB

PlatformStage2

IchSmbusArpDisabled

S3Resume

PciExpress

DxeIpl

SecCore

 

While I do not know the function of these .efi modules, and I suppose they could be exclusive to the firmware restoration/flashing mechanism, I think we also have to consider the possibility that during the firmware initialization sequence that some modules are unloaded.

 

Again, I think we need to find the script(s) which determines the order of module loading (and potential unloading).

 

~~~~~~~~~~~~~~~~~~~

 

I also noticed that the "SMC" firmware update seems to apply two files to the firmware: "m38.smc" and "m39.smc". I think these, "m" numbers, like "m38" have some organizational significance and perhaps described groups of related firmware modueles.

 

For example, HFIPlus.efi might appears to have been in the "m38" group by this:

 

\buildtools\fware\m38main.proj\projectfiles\sandbox\Platform\IntelMpg\M38\Release\IA32

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...