Slashdot Mirror


EFI Modifications Leaves iMac Unbootable?

jerbare writes "In attempting to run Linux and Windows on the new iMac Core Duo, people experimenting with configuring the EFI Console/Boot loader have found they can no longer boot the machine at all. Dave Schroeder of appleintelfaq.com comments, 'We have already irreversibly lost a couple of iMacs trying to load various EFI modules'. Instructions for breaking the iMac's are presently located at the bottom of the comments."

23 of 288 comments (clear)

  1. Ugh...been there by TripMaster+Monkey · · Score: 5, Interesting


    Reminds me of a situation I faced back in the day when I was a tech at a small mom-and-pop computer repair establishment. We received a shipment of motherboards, and found out that the BIOS on every single one of them was corrupt. Since the boards wouldn't even post, the traditional remedy of flashing the BIOS via a bootable floppy was not available. Normally, we would have just boxed up the boards again and returned them for replacements, but we desperately needed those boards to fill orders.

    Well, desperate times call for desperate measures...

    I got to thinking, "you know...once you've started booting to an OS, that BIOS chip isn't even being used anymore....hmmm". With this in mind, I pulled a working BIOS from another board, swapped it out with the bad BIOS, and powered the system on, booting from the BIOS flash floppy. Once the board had booted to the flash program, I carefully pulled the good chip back out, and put in the bad chip. I then ran the flash program to overwrite the bad BIOS.

    Long story short, it worked like a charm. I managed to revive every board in the bad shipment without incident using this unorthodox technique.

    Anyway, it should be possible to rig up a similar arrangement here, although as I am unfamilliar with EFI, I'll leave the details up to someone else.

    --
    ____

    ~ |rip/\/\aster /\/\onkey

    1. Re:Ugh...been there by GmAz · · Score: 5, Interesting

      I did the same thing on my ASUS A7N8X-Deluxe motherboard. They shipped a bunch with their 3.3v batters running about 2.9v. Apparently this would corrupt your bios chip. Well, it did do that to mine and instead of ripping my machine apart and RMAing it, I took the bios chip from my brother-in-laws machine (I built his too and we pretty much had identical machiens) and did the swap trick. Here's a little trick for any of you wanting to try this. Before you boot up your good machine, take the bios chip out and put a piece of dental floss under it and put the chip back in. That way, when the machine is booted and you need to take it out to do the swap, just tug gently on the floss. I didn't wanna stick a metal screwdriver in there to pop it out when it was running. It worked great for me and spent $2 for two 3.3v batteries for the computers.

      --
      Click Click Bloody Click PANCAKES!
    2. Re:Ugh...been there by iCEBaLM · · Score: 3, Interesting

      I did the same thing with my 486. A BIOS flash went bad and my high end 486 (yeah I know how rediculous it sounds now, but it was high end back then!) machine was a boat anchor. My server machine had a different mobo, but the BIOS EEPROM slots were the same. I booted it into DOS, popped its EEPROM out and put the toasted one in, ran the BIOS flasher for the server machine but used the image for my 486 mobo to flash it and powered it off.

      Put the right chips in the right sockets and everything was golden!

    3. Re:Ugh...been there by tigersha · · Score: 2, Interesting

      I once saved a RAID config on a Maxtor card like that. We had a broken controller and ordered a new one second hand from EBay (with hand-delivered courier delivery, pronto! pronto! I need it now! No I do not care that delivery will be 4 times the price of the bloody card, I will throw in 20% more for you too!) and since the stupid Maxtor RAID controllers did not save the RAID configon the HDD's as it should I, in a desperate move, transferred the NVRAM chip from the bad card to the newish good one. Never was I so happy to see Windows NT 4.0 boot.

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    4. Re:Ugh...been there by Kadin2048 · · Score: 2, Interesting

      Seems like the socket ought to be the thing that you'd prefer to destroy, rather than the chip...no?

      When I had EEPROMs stuck or glued in sockets -- really stuck -- and we needed what was on the EEPROMs, our solution was to remove the board, desolder and remove the socket from the board, and put the whole socket assembly into the reader/programmer. If you were really desperate to get at the physical chip, or the socket wouldn't fit in the reader, Dremel time. Afterwards, new socket.

      I've always found that the worst part of desoldering a part (I'm talking regular DIPs here, not surface-mount crap) was getting the board out and disconnected from everything else. Once you have it laid out on your workbench, provided you have good light, a heatsink, a good desoldering iron and a reasonably steady hand, desoldering itself was always the least of the operation. Of course it probably helped that we had a very nice workbench set up for soldering and desoldering. Doing it on your dining room table with a $15 radioshack iron might be a lot more painful.

      --
      "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
  2. Dual Booting is not the answer by ZachPruckowski · · Score: 4, Interesting

    I have a feeling that a virtualization/emulation with hardware graphics support will be available within 6 months that'll make dual booting pointless. I have a feeling that dual-booting OS X with XP or Vista will not work because it's got EFI/BIOS issues and the hard drive formatting issue. And any number of issues that haven't come up yet.

    1. Re:Dual Booting is not the answer by Incongruity · · Score: 4, Interesting

      Moreover, running a full windows install within OS X, through some sort of emulation/virtualization is going to be fairly easy as compared to, say PPC versions of virtual pc and it will potentially allow you to sandbox windows and thereby keep it much more secure than the standard installation on commodity hardware. Furthermore, there are few reasons to dual-boot if you can simul-boot? Done right, that method could really make the Intel/OS X macs a major player (think swiss-army knife) -- I know there's been talk of a similar sort of thing w/ linux and windows via WINE but it really looks like the OS X side might come to fruition first, though this really is all conjecture on my part, so whatever.

    2. Re:Dual Booting is not the answer by killtherat · · Score: 4, Interesting

      And why do you think that OSX will be able to run windows binaries better than WINE and/or Cedega considering that the people at WINE etc. have been trying to reverse engineer the windows libraries for many years now.

      One word: Money.

      Apple has lots of it. They can through gobs of money at the problem, and that will always move things faster then a grass roots problem. Just imagine 150 engineers working full time on Wine. They've previously gotten MacOS9 programs to run in MacOSX, so they probably already have a pool of engineers with the needed talents.

      Given that MacOSX is based off of BSD Unix, and they've already plugged a great deal of work into the KHTML rendering engine, it's not completely insane to suggest that Apple could pick up Wine, through a large number of engineers at it, and get it to the point were it can run Office and DirectX 9 games.

    3. Re:Dual Booting is not the answer by Incongruity · · Score: 2, Interesting
      One word: Money.
      Apple has lots of it. They can through gobs of money at the problem, and that will always move things faster then a grass roots problem. Just imagine 150 engineers working full time on Wine. They've previously gotten MacOS9 programs to run in MacOSX, so they probably already have a pool of engineers with the needed talents.

      Exactly -- and to be clear, my thought was more that Apple and the apple user base (new and old) would give the momentum and sheer technolust required (as well as the money) to get it to the point that a copy of windows works transparently within OS X sooner than WINE on OS X becomes a reality.

      I feel as though WINE has an additional or different aim than a sandboxed Windows in OS X project would (regardless of who does it), at the moment. Put simply, one of the not so subtle aims of the WINE project (as an outside observer) is clearly to shut Microsoft out of the picture and simply reverse engineer the requisite libraries, etc. to get apps written for windows to work with Linux -- there's a wholesome F/OSS ideal wrapped up in that and I philosophically support that notion.

      However, you must admit that's not the primary aim of what Apple or a majority of the OS X user-base would be after in getting a copy Windows working in OS X. At the moment, I don't care so much if I have to buy a copy of Windows to get it to run on my (hypothetical) new intel powered mac -- I just care that I can do it, and even better if I can do it w/in the safer confines of OS X, sandboxing Windows, or if nothing else, just along side OS X using processor level virtualization to run both OS's at the same time. If I cared more about the ideal of not giving money to a corporate/closed-source software vendor, I'd already be using Linux. Moreover, I want that functionality sooner rather than later, so spending a bit of cash on a copy of Windows to install on my intel mac is still cheaper than buying a PC to go along side my mac -- assuming that mac ownership is a must, this is still a win, costwise.

  3. Sometimes fix by Anonymous Coward · · Score: 4, Interesting

    If you can get it to boot at all, try reinstalling from the 10.4.4 media. That's supposed to fix some changes in the EFI.

  4. Malware by msbsod · · Score: 2, Interesting

    Great. How about attacks on EFI by malware? An iMac costs just a few hundred bucks. Bad enough. But, what about those shiny new Itanium systems with EFI for 10 grants per box?

  5. Denial Of Service - Putting people at threat by NZheretic · · Score: 4, Interesting
    Hackers discover vulnerabilities and someone creates malware ( Worm, Trojan, Attack kit or Virus ) that screws with the BIOS settings effectively turning your DRM restricted system into a useless brick.

    Just substitute Apple for Microsoft, Mac for Xbox and Internet for Xbox Live in the following...
    Denial Of Service - Putting people at threat:

    Want to guess how long it will take?

    It is inevitable that someone mucking around trying to get their XBox360 to do something will trip the hardwired Trusted Platform Modules lock down. Effectively turning the trusted black box into a useless dead heap.

    It is inevitable that this and other methods discovered will be publicly known, since the discoverer will want to warn others.

    It is also inevitable this and other methods will become the basis for a widespread denial of service attack. Firstly through a fake Email campaign ( "Microsoft alert - follow these instructions to secure your XBox" or "Get Free games/porn - do this to your XBox" ) and later through viruses and networked worms embedded in Microsoft's mediaplayer formats.

    Soon a worm that locks users out of their Xbox will be spread via Microsoft's Xbox live service.

    Then it will be inevitable that criminals adapt the malware to display a message instructing the hapless victim how to make a payment to fix the problem. The messages would soon contain threats that their Xbox now contains contraband installed by the malware that would get the user in legal peril if they choose to take the Xbox back for repair or to the authorities. The potential rewards to the offshore cyber-criminals would far outweigh the risks.

    http://itheresies.blogspot.com/2005_08_01_itheresi es_archive.html
    Hollywood and the recording industry hold an effective monopoly on a large section of popular content. Both Microsoft and Apple are now offering the ability to content providers to demand that users must use unmodified systems to view said content. It locks you out of parts of your system that will inevitably be abused by third parties wanting to abuse you.

    Posted by: David Mohring Posted on: 11/29/05

    1. Re:Denial Of Service - Putting people at threat by TheRaven64 · · Score: 5, Interesting

      When the first flash BIOSes came out in the PC world there were a few viruses that would re-flash the BIOS with junk, turning the machine into a doorstop. These days most virus writers want to add your machine to a botnet, rather than destroy it, so it's probably less likely. More likely is hiding a copy of the virus in the EFI code so that it is automatically reinstated if removed when the system invokes an EFI call (resume from sleep would be my choice).

      --
      I am TheRaven on Soylent News
  6. In case of Slashdotting... by Anonymous Coward · · Score: 3, Interesting

    **WARNING** The following instructions will render the iMac Core Duo (Intel) TOTALLY USELESS. There is NO KNOWN METHOD OF RESTORING the iMac Core Duo to a previous functioning state. **WARNING**

    I AM NOT KIDDING. THE FOLLOWING METHODS WILL PUT THE IMAC IN A STATE OF DISREPAIR BY AN END USER, EVEN WITH ACCESS TO THE INTERNAL HARDWARE.

    With that said, here is how I killed the iMac Core Duo:

    1. Downloaded EFI sample implementation and unzipped
    2. Moved the 'Binary' folder to the hidden EFI partition (sudo mkdir /Volumes/EFI; sudo mount_msdos /dev/disk0s1 /Volumes/EFI)

    *NOTE: this partition appeared EMPTY*

    3. 'blessed' /Volumes/EFI/BIOS32/Bin/GraphicsConsole.efi
    4. Rebooted in to GraphicsConsole
    5. Attempted to load an EFI 'Driver' via GraphicsConsole (I forget the process, but it was a submenu. The drivers I attempted were AtapiPassThru.efi and Partition.efi)
    6. Reboot and stare at your new broken iMac Core Duo. It's dead, Jim...

    Just as Dave mentioned, unplugging the Hard Drive, removing the battery and leaving the iMac without power WILL NOT RESET IT TO ITS FACTORY DEFAULTS.

    Because settings are stored in NVRAM, POWER IS NOT REQUIRED TO KEEP THE SETTINGS INTACT.

    http://en.wikipedia.org/wiki/Flash_memory

    BECAUSE THE APPLE EFI SOFTWARE DOES NOT LOAD THERE IS NO WAY TO 'ZAP' or 'FLASH' THE NVRAM TO DEFAULTS.

    The caps are really necessary, folks. Apples implementation of EFI allows software to modify the computers ability to boot - or NOT.

    I am unsure if modifying Apple boot software voids the warranty. I was fortunate to get a replacement iMac, but I did not explain what I did to render it unable to boot. Because of that, I'm staying anonymous...

  7. Ugly reality from the article (no joke)... by Orrin+Bloquy · · Score: 4, Interesting

    "Apples implementation of EFI allows software to modify the computers ability to boot - or NOT. "

    Enough of this firmware is flash-based that software can trash it to the point that it no longer boots from optical media. Key-mashers need to understand that EFI *precedes* the Apple Option-key tricks, so if EFI is hung you are crap out of luck. Unless there's some jumper inside the case which resets EFI to a factory state, that EFI will have to be pulled and reflashed.

    We're going to pretend Apple doesn't really release mistakes like this and that there's a failsafe for restoring the EFI. Otherwise, you potentially have the mother of all DRM traps in front of you.

    --
    "Made up/misattributed quote that makes me look smart. I am on /. and I must look smart."
    1. Re:Ugly reality from the article (no joke)... by Budenny · · Score: 4, Interesting

      The inability to reflash the EFI has all the marks of being deliberate. The issue is not whether other OSs are supported. There is no reason why any company has to support them. The issue is not like trying to run BSD on your Thinkpad, where you just reboot when you don't have the drivers and restart, and reinstall XP. Not having the drivers does not reduce your machine to junk.

      The issue is, or rather, one should be cautious, the issue may be, that this could be the first instance of a company having deliberately implemented something that reduces your computer to a doorstop if you just take reasonable steps to run something they don't like on it.

      They are under no obligation to support Windows, Linux or Plan 9. What they are under an obligation to do is give you a way of reflashing your EFL.

      If they do not. If it does turn out that the aim is and always was to sell hardware that you can only run what they choose on it, then it is indeed the first shot in a war. It will be the first of many such attempts by a lot of people. The OP in this thread, and some others, is right: it will be the first of many efforts to stop you altering your machine in any way from its purchased state, because someone feels it is less profitable for them if you do, and it will be the first of many measures taken to reduce your machine to junk as a sanction.

      Its one of those test cases the community has to win. If it turns out to be what it looks like, there's no melodrama at all in looking at it like this.

    2. Re:Ugly reality from the article (no joke)... by The+Wicked+Priest · · Score: 2, Interesting

      I don't buy this for a minute. Apple has repeatedly said "We won't do anything to prevent you from running Windows on it." And they'd accomplish nothing except alienating customers.

      Apple is a hardware company. They're perfectly happy to sell you a Mac to run Windows or Linux, or to use as a shotput. They get the same money regardless.

      It has all the earmarks of being an oversight, not deliberate.

      --
      Share and Enjoy: 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
  8. EFI? by StikyPad · · Score: 2, Interesting

    Is the EFI cachable? And if so, wouldn't it be possible to create a custom boot which cached custom EFIs so you could experiement without overwriting the nvram/eeprom/whatever? Alternatively, if everything else is the same between intelMacs and typical PCs, wouldn't you be able to cache an EFI to boot MacOS?

  9. Re:Update by Drakino · · Score: 2, Interesting

    Windows XP 64-bit and Windows Server 2003 64-bit support EFI, but the Intel Core Duo is a 32-bit architecture.

    I haven't seen anyone who has tried booting to the XP 64 bit CD yet, thus I am recommending someone try. Sure, the Core Duo is 32 bit, but the 64 bit (at least the X64 versions) will boot on a 32 bit machine and eventually say installation is not supported on the machine. If someone can get these CDs past the "Press any key" prompt on an Intel Mac, it might expose something that can be used elsewhere.

    Having a final production OS bootloader to play with might work out better then tinkering with the Vista betas.

  10. Re:Not quite by Anonymous Coward · · Score: 1, Interesting

    Did you try reverse psychology?

  11. Try This by nbritton · · Score: 2, Interesting

    Try This:
    1. Remove the primary battery on the notebook
    2. Open up the notebook and remove it's internal battery.
    3. Power on the notebook (without it's batteries installed).
    4. With the notebook on, turn it off by removing the power cord.
    5. Leave notebook sit for at least 1 hour, the longer the better.

    Now plug the notebook back in and turn it on, if it starts up and displays an error message saying it's lost it's CMOS settings or something like that then your good to go.

  12. Update: iMacs restored to working state by daveschroeder · · Score: 4, Interesting

    By following these steps, the iMacs that had difficulty with certain EFI modules appear to have been restored to a functioning state:

    1. Disconnect the internal hard disk

    2. Disconnect the iMac from AC power

    3. Plug in AC while holding the power button

    4. Power up the iMac and zap NVRAM (cmd-opt-P-R)

    The hard disk can be reformatted and the operating system restored.

  13. Re:Hey, Is this possible ? by blueio69 · · Score: 4, Interesting

    I think the best way to go about this would be to do something that was done to enable Linux to boot on old world Macs. On a PowerMac 8600 (for example) the best way to boot into PPC Linux, was to use a special boot loader called BootX http://penguinppc.org/bootloaders/bootx/. Basically, it was an OS 9 program that immediately ran as OS 9 had a basic initialization startup. It gave you a choice to ether to continue to boot into OS 9 or boot into Linux. It is unique from other boot loaders in that it bypasses a computer's firmware and lets Mac OS handle it. I think this is the way to go....let OS X handle the boot process that deals with the firmware, then give users a choice to boot into Windows or finish with the OS X boot process.