Jump to content

I GOT MY INTEL IMAC TODAY!!!


377 posts in this topic

Recommended Posts

Of course, the next thing is getting the Apple's "Boot ROM" (System BIOS). Is there some way to read it (copy it), perhaps with an EFI "application"?

 

The documentation says:

 

Using Nero* Enterprise Edition to Burn EFI Visible/Bootable CD-ROMs

--------------------------------------------------------------------

Do the following to burn an EFI visible/bootable CD-ROM or DVD-ROM using Nero* Enterprise Edition:

1. Start Nero Enterprise Edition.

 

blablabla

 

5. In the lower left pane of the New Compilation window, select CD-ROM (EFI boot).

6. In the New Compilation window, click the Label tab. Fill in the CD-ROM volume label information and any other relevant text you want on the CD-ROM. The top pull-down should say ISO9660.

7. Click the New button in the New Compilation window, which should open a left-hand window pane with the contents of what will be burned on the CD-ROM/DVD-ROM. The right-hand pane should be the File Browser.

8. From the File Browser pane, right-click on any files/directories you want and drag them to the left-hand pane.

9. If you want the CD-ROM to be bootable, you must copy the boot file from the File Browser pane into the following directory and rename it as indicated:

 

10. For ItaniumÆ-based systems: \EFI\BOOT\BOOTIA64.efi

11. For IA-32 processor-based systems: \EFI\BOOT\BOOTIA32.efi

 

12. After all the files have been copied to the left-hand pane, click the Burn button to burn the CD-ROM. The bottom bar will tell you how much of the CD-ROM will be used by the files that you have put into the left-hand pane or NEW FATISO1.

 

So the bold folders is where to look in. Or some similar in OSX. EFI is located on the harddisk. But maybe it is a supersmall hidden fat32 partition. also, we have no nero, but it should work with toast or such.

 

.

Edited by xtraa
Link to comment
Share on other sites

hey if there's a way, i'll be more than happy to be the guinea pig

 

Not likely. The Intel file was built to enter a shell instead of boot an OS, the Apple file was not built to enter a shell. I'm sure there is a version that will enter a shell, but it was kept from us.

 

Maybe once the source for Darwin 8.4 is released we can combine the Apple .efi and the Intel shell version to make one that brings up a boot menu instead of just diving into OS X. Give us options at startup.

Link to comment
Share on other sites

Of course, the next thing is getting the Apple's "Boot ROM" (System BIOS). Is there some way to read it (copy it), perhaps with an EFI "application"?

 

It's not immediately clear why you think this is required.

 

You can build EFI applications on Linux or Windows; there's abundant documentation on doing this, and you can look at the Tiano distribution for examples.

 

The EFI specification is also freely available, and it tells you what you need to do to boot an operating system.

 

I would recommend some practice and experience doing both before you look for "next things" to work on.

Link to comment
Share on other sites

Hmm... I think we need to get to the bottom of Apple's legal requirements with respect to x86 Darwin.

 

Apple's Darwin has been BIOS-based until now... so the version they might release for EFI may give hackers the tools they need to crack OS X. So it may remain in BIOS for now... making it useless for EFI development and research.

 

There's nothing that says Apple has to give away everything, especially if they can cite security concerns.

 

I hope we do see the EFI Darwin, cause I'd love to play with it on my Mac.

Link to comment
Share on other sites

that's for GNU, but it's built on a BSD code, and the bsd license i don't believe they have to.

Not even that. They have their own licensing model, the Apple Public Source License (APSL). reading as follows:

 

11. Ownership.

[...]

Apple retains all rights, title and interest in and to the Original Code and any Modifications made by or on behalf of Apple ("Apple Modifications"), and such Apple Modifications will not be automatically subject to this License. Apple may, at its sole discretion, choose to license such Apple Modifications under this License, or on different terms from those contained in this License or may choose not to license them at all.

http://www.opensource.apple.com/apsl/

(Bolded by me.)

Link to comment
Share on other sites

Apple's Darwin has been BIOS-based until now... so the version they might release for EFI may give hackers the tools they need to crack OS X. So it may remain in BIOS for now... making it useless for EFI development and research.

 

That's right.

 

EDIT: OK Terry wins.

 

But there is also an Apple Driver Liscense here:

 

http://www.opendarwin.org/downloads/7.2.1/...VER_LICENSE.txt

Edited by bofors
Link to comment
Share on other sites

The documentation says:

 

[...]

 

So the bold folders is where to look in. Or some similar in OSX.

He is talking about the contents of the flash ROM in the machine, dude. What are YOU talking about? ;-)

 

EFI is located on the harddisk.
No, it's not.
Link to comment
Share on other sites

So Apple can simple choose to not release x86 Darwin 8.4 for the indefinite future, and I guess that is what we should expect. Well, it's not like we need it, it was just a matter of convience and perhaps an easy way to get an Apple EFI Boot Rom.

 

Now, I have a related question about graphics cards.

 

Are they going to be dual-use (BIOS and EFI) off the shelf? Or are we going to EFI cards sold that do not work with XP (Vista only)? Of course, I expect these cards to be flashable between BIOS and EFI, but my question is can one ROM do both? Was EFI designed to support this with perhaps a CSM at the card level?

Edited by bofors
Link to comment
Share on other sites

Hey guys, great work so far!

 

What it seems to me, though, is that in order to boot a current version of Vista or XP we are going to need a sort of compatability layer EFI application to be made. A sort of BIOS emulator, i suppose. Correct me if this is completely off...but it seems it could be hard to do without that?

Link to comment
Share on other sites

Hey guys, great work so far!

 

What it seems to me, though, is that in order to boot a current version of Vista or XP we are going to need a sort of compatability layer EFI application to be made. A sort of BIOS emulator, i suppose. Correct me if this is completely off...but it seems it could be hard to do without that?

I'm just guessing that all "PCs" will ship with the CSM included in their EFI, thereby negating this issue.

Link to comment
Share on other sites

I'm just guessing that all "PCs" will ship with the CSM included in their EFI, thereby negating this issue.

 

Traditionally we couldn't use standart retail video cards because of Open Firmware. It wasn't profitable enough to brand every board with both for compatibility.

 

Now that Apple is using EFI, and EFI will be a major player in the future of PCs. I expect there to either be:

 

- 2 versions, like the PCI/AGP variety.

- Dual compatibility onboard. Will work with both type of systems.

 

But only time will tell.

 

EDIT: I doubt that companies like ATI and nVidia will just presume that everyone with EFI has the CSM installed since, by it's design, it's an optional component. I think Video Card makers will take the initiative to be compatible with both.

Link to comment
Share on other sites

Did anyone notice this folder :

 

D:\EFI1_10_14_62\EDK\Protocol\LegacyBoot

 

Maybe someone would hack around the GraphicConsole and try open that protocol ... something like this:

 

GraficConsole.c:215

 

Status = gBS->OpenProtocol (

Controller,

&gEfiUgaDrawProtocolGuid,

(VOID **)&UgaDraw,

This->DriverBindingHandle,

Controller,

EFI_OPEN_PROTOCOL_BY_DRIVER

);

 

then :

 

Status = gBS->OpenProtocol (

Controller,

&gEfiLegacyBootProtocolGuid,

(VOID **)&LegacyBoot,

This->DriverBindingHandle,

Controller,

EFI_OPEN_PROTOCOL_BY_DRIVER

);

 

:(

Edited by eledu
Link to comment
Share on other sites

EFI is located on the harddisk.

No, it's not.

 

man you guys really confuse me now :D I mean when I search for the specs@google, every f*ckin intel

document tells me aboout EFI, the EFI FAT boot partition, that it needs FAT, FAT32 etc. Also in the intel

specifications.

 

And everytime I post it here, some other guy tells me, it is NOT located on the haddisc. it is not fat32.

 

So what the HECK :D Pleeaazze I am really getting issues here icon6.gif

 

And thats where we come to this:

 

He is talking about the contents of the flash ROM in the machine, dude. What are YOU talking about? ;-)

 

I read about EFI, (what is in fact nothing more than a small OS without a gui) that you can add informations,

behaviors and additional fetures for the target OS on the FAT (lol) partition :(

 

xtraa

Edited by xtraa
Link to comment
Share on other sites

man you guys really confuse me now :D I mean when I search for the specs@google, every f*ckin intel

document tells me aboout EFI, the EFI FAT boot partition, that it needs FAT, FAT32 etc. Also in the intel

specifications.

 

And everytime I post it here, some other guy tells me, it is NOT located on the haddisc. it is not fat32.

 

So what the HECK :D Pleeaazze I am really getting issues here icon6.gif

 

And thats where we come to this:

I read about EFI, (what is in fact nothing more than a small OS without a gui) that you can add informations,

behaviors and additional fetures for the target OS on the FAT (lol) partition :(

 

xtraa

 

EFI is two things apparently.

 

- Hardware on the motherboard that is designed to seek a .efi file on the hard drive. This hardware is the shell that runs the .efi file's commands. It's a syntax similar to DOS, but it's not.

 

- The binary .efi file located on the hard drive that boots the OS.

 

That is my understanding of what we're seeing here.

Link to comment
Share on other sites

Did anyone notice this folder :

 

D:\EFI1_10_14_62\EDK\Protocol\LegacyBoot

 

Umm.. what is this? Some Windows file or was it included in the EFI download from Intel?

 

EFI is two things apparently.

 

- Hardware on the motherboard that is designed to seek a .efi file on the hard drive. This hardware is the shell that runs the .efi file's commands. It's a syntax similar to DOS, but it's not.

 

- The binary .efi file located on the hard drive that boots the OS.

 

That is my understanding of what we're seeing here.

 

This image implies that "EFI" does not exist as firmware on the motherboard per se, but rather is an interface between the firmware and the OS

 

block_diagram.gif

 

http://developer.intel.com/technology/efi/index.htm

Link to comment
Share on other sites

This image implies that "EFI" does not exist as firmware on the motherboard per se, but rather is an interface between the firmware and the OS

 

block_diagram.gif

 

http://developer.intel.com/technology/efi/index.htm

 

So in this case, the .efi file is just the OS Loader communicating through EFI to the Apple firmware (like the system picker, Hold C at startup, and other stuff.)

Link to comment
Share on other sites

man you guys really confuse me now :D

Have you read my posting above, #294, and, well, umm, bofors' "interpretation" :D of it? That's the key.

 

I mean when I search for the specs@google, every f*ckin intel

document tells me aboout EFI, the EFI FAT boot partition, that it needs FAT, FAT32 etc. Also in the intel

specifications.

It doesn't seem to need it actually. Well, I haven't read the documents, but that's what it looks to me like. Obviously EFI can be enhanced (for instance with special boot loaders, IIRC), and if you want to enhance it, that's the way to go, to put the enhancements on a FAT32 partition, so you're correct in that matter.

 

And everytime I post it here, some other guy tells me, it is NOT located on the haddisc. it is not fat32.

First and foremost, it is in the computer's ROM. Enhancements can be put on the FAT32 partition.

 

And thats where we come to this:

I read about EFI, (what is in fact nothing more than a small OS without a gui) that you can add informations,

behaviors and additional fetures for the target OS on the FAT (lol) partition :(

Yep, that's it. You said it already. The magic words are "can", "add" and "additional features".

Link to comment
Share on other sites

So in this case, the .efi file is just the OS Loader communicating through EFI to the Apple firmware (like the system picker, Hold C at startup, and other stuff.)

 

Yes, I am getting the idea that the firmware itself is, well... BIOS.

 

By the way, Intel has an 85 page "How To" guide for EFI that might be useful in answering some basic questions on booting.

 

2 Disk Utilities.......................................................................

..............................9

How to Partition an EFI GPT Disk............................................................................

..............9

Help List for DiskPart........................................................................

...........................10

Help List for Create Command in DiskPart..................................................................11

How to Format an EFI GPT Disk............................................................................

..............12

Help List for Efifmt..........................................................................

.............................13

How to Make an EFI Bootable CD-ROM/DVD-ROM............................................................14

Using Nero* Enterprise Edition to Burn EFI Visible/Bootable CD-ROMs.....................15

Using Nero* 5.5 Edition to Burn EFI Visible/Bootable CD-ROMs................................15

Making an EFI Bootable CD-ROM on Itanium®-Based Systems.................................17

Making an EFI Bootable CD-ROM on IA-32 Processor-Based Systems.....................18

3 Boot Manager.........................................................................

.......................19

How to Add an Executable to the Boot Menu.......................................................................19

How to Delete an Executable from the Boot Menu...............................................................22

How to Change the Execution Order of the Boot Menu........................................................24

How to View an OS Boot Option in the Boot Manager..........................................................27

Dmpstore........................................................................

.............................................28

4 Configuration Driver Boot............................................................................

29

How to Install an EFI 1.10 Driver..........................................................................

...............29

How to Alter Boot Options in the EFI Shell ...........................................................................30

Bcfg Help List............................................................................

...........................................31

How to View an EFI Boot Device Path............................................................................

.....32

 

http://developer.intel.com/technology/efi/howto.htm

 

Now, two more questions...

 

(1) Does some form of DOS boot on the new iMacs (I have heard something about FreeDOS)?

 

(2) Is there some DOS utility that can extract, copy or otherwise read the BIOS on a normal PC?

Edited by bofors
Link to comment
Share on other sites

Just thought I'd add something I just noticed about Vista Beta 1 ISOs.

 

Build 5112 doesn't seem to have the efi files in its boot folder, it only has:

 

boot.sdi 3166208

bootfix.bin 1024

 

Whereas Build 5270 has the following:

 

bcd 262144

boot.sdi 3166208

bootfix.bin 1024

cdboot.efi 240640

etfsboot.com 2048

 

Also Build 5270 has the following files in the root directory:

 

bootmgr 399196

bootmgr.efi 382464

 

Build 5112 doesn't have bootmgr.efi but it does have bootmgr with a size of 399196 and a boot.ini file.

 

So if anyone's trying to do anything with Vista make sure you're using Build 5270 or later.

Link to comment
Share on other sites

Not likely. The Intel file was built to enter a shell instead of boot an OS, the Apple file was not built to enter a shell. I'm sure there is a version that will enter a shell, but it was kept from us.

 

Maybe once the source for Darwin 8.4 is released we can combine the Apple .efi and the Intel shell version to make one that brings up a boot menu instead of just diving into OS X. Give us options at startup.

 

 

not likely i'll be happy to be a guinea pig? We can find a way, just may not be anytime soon. all i'm saying is that if there is a good chance something would work, i'd be more than happy to give it a shot. Right now there aren't many of these machines on the market, so really most of what we're talking about is theoretical.

Link to comment
Share on other sites

Yes, I am getting the idea that the firmware itself is, well... BIOS.

 

:(

 

What gave you that idea? BIOS doesn't support any of those things that the Mac does, like the system picker (OPT) or CD Boot (hold C).

 

It's LIKE BIOS, but it's not really BIOS that would be compatible with DOS or FreeDOS. Those require a real BIOS, EFI on the Mac doesn't support legacy BIOS.

Link to comment
Share on other sites

Just thought I'd add something I just noticed about Vista Beta 1 ISOs.

 

So if anyone's trying to do anything with Vista make sure you're using Build 5270 or later.

 

Maybe you have to bless the .efi file before the system will boot from it?

 

Does any body know what Apple was using for a BIOS on the Developer Transition Kits (DTKs)?

 

Or does anybody have a link to the System Profilier output from a DTK?

 

It was a standard Phoenix BIOS. Just like you'd find on any PC. EFI was only introduced for the retail Macs

Link to comment
Share on other sites

:(

 

What gave you that idea? BIOS doesn't support any of those things that the Mac does, like the system picker (OPT) or CD Boot (hold C).

 

It's LIKE BIOS, but it's not really BIOS that would be compatible with DOS or FreeDOS. Those require a real BIOS, EFI on the Mac doesn't support legacy BIOS.

 

Ok, then how much like BIOS is it? But again, I think we have a terminology problem here with BIOS being used to refer to the firmware itself and also the interface.

 

Here, I am just concerned about the firmware, we know the iMac interface is EFI not BIOS.

 

So, what precisely is the difference between EFI-firmware and BIOS-firmware? Is there really any?

 

Let's say I have some BIOS-firmware and I want to covert it to EFI-firmware... what do I need to do?

 

I mean, what do we think Apple did here?

 

If the DTK just used a regular BIOS, it sounds like all Apple had to do is get the EFI version, put their name on it and perhaps tweak it slightly.

 

Who is selling EFI-firmware for x86? I know they are availble for at least servers.

Edited by bofors
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...