Apple Branded 5870 and Mac Pro 1.1

Discussion in 'Mac Pro' started by hugodrax, Jul 28, 2010.

  1. hugodrax macrumors 6502a

    Joined:
    Jul 15, 2007
    #1
    Knowing ATI's history of providing both 32 and 64bit EFI on the Apple Branded card, I wonder if the 5870 will work on an 06 model.

    The Card only requires 2 power connections, so the 4870 cables should work on the 5870 or the ones that ship with the 5870.

    When I bought the 4870 it had the two cables inside the box inside.

    Anyone looking at installing the 5870 on their 06 systems?

    The 27inch LED screen is tempting as well.
     
  2. Spanky Deluxe macrumors 601

    Spanky Deluxe

    Joined:
    Mar 17, 2005
    Location:
    London, UK
    #2
    No one will know for sure until they are released as BTO options. Everyone's hoping that they will follow tradition with ATI cards and keep EFI32 support intact.
     
  3. MacVidCards Suspended

    Joined:
    Nov 17, 2008
    Location:
    Hollywood, CA
    #3
    Ebc

    It is a common misconception that there re 2 separate EFIs on ATI cards.

    Their original efforts at EFI on the X1300 and X1900 were pure EFI and had no PC BIOS as second half of ROM. This meant that the cards were not bootable in DOS/Windows, which was gotten around with PC X1900 BIOS as part of Mac Boot Rom. The X1300 won't boot into DOS or Windows, though perhaps an X-Serve has the BIOS in it's ROM. I don't know as I only have the card, not the Xserve.

    All later ATI cards have used a combo of an EBC part for Mac that introduces the second half, which is the PC BIOS, which ends up running the card.

    From http://osxbook.com/book/bonus/chapter4/firmware/

    "EFI Byte Code
    Option ROMs require different executable images for different processors and platforms. EFI defines an EFI Byte Code (EBC) Virtual Machine to abstract such differences. The interpreter for this virtual machine is part of the firmware. C source can be compiled into EBC, then linked to yield drivers that "run" on the interpreter.

    The EBC virtual machine uses two sets of 64-bit registers: 8 general purpose, and 2 dedicated registers. Further, it uses natural indexing for data offsets (relative to a base address) -- instead of a fixed number of bytes as an "offset unit", it uses a "natural unit", which is defined as the operation (as opposed to a constant) sizeof(void *). This allows EFI byte code to execute seamlessly on 64-bit and 32-bit systems.

    There exists a C to EBC compiler. Note that you have several restrictions for the kind of C you can use: floating point and inline assembly are not supported, for example. You cannot use C++ either."

    So, EFI can be written that works on either 32 or 64. The real question is why Nvidia chose to use strict EFI/32 and EFI/64 for their cards. Hopefully there is something resembling a good reason.

    It is possible that ATI will switch toEFI64 instead of EBC, but I am doubtful. But it is always possible that Apple will have "encouraged" them to switch. Would be rather mean spirited of them but possible.

    Apple could also hide some code in their drivers to look for the model identifier and disable the cards on "unsupported" Macs. (anything that they have already sold) But I doubt this too and it would be more easily "fixed".

    So my guess is that the cards will either work in all Macs out of the box, or work with some effort.

    I think this is going to result in some serious demand if they work in all, especially for 5770, which is literally HALF of a 5870, much cheaper and uses less energy.

    Thinking about this, I wonder why we can't recompile the Nvidia EFI into EBC, though I suppose it could very well be using addresses that only exist in 64bit space, but this too could be dealt with some bother. If we could solve this, we could be certain to use future cards in ALL Mac Pros for the foreseeable future.
     
  4. nanofrog macrumors G4

    Joined:
    May 6, 2008
    #4
    IIRC, ATI does the firmware and driver work themselves (contracted by Apple), then they contract out the actual manufacturing work. What I recall, is that they made a statement that they would continue to use EBC for the Mac versions. But like you, I'm not sure if they wouldn't bend to pressure from Apple if they had to. So the 5770 and 5870 really should be confirmed before EFI32 system owners rush out to buy.

    Apple does the firmware and drivers for the nVidia products as I understand it, which would make sense as to why they're equiped with EFI64 rather than EBC.
     
  5. cured.not.dried macrumors member

    Joined:
    Nov 23, 2008
    #5
    do you guys offer lessons in building ROMs?

    i seriously just felt my brain add more wrinkles.
    you guys are giving me dmt trips from all this learning.

    keep doing this, it tickles my nerd chills.
     

Share This Page