Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
The echo command doesn't really do anything that would fix whatever the problems is. However, the comment to add it was to help diagnose where the error is. Echo will simply print what is being stored in each of those variables. One is based off of the value of the other, so if the first one is wrong, they both will be. Let's see what the values are for each and see if we can't help.

Here's the latest attempt with those echo lines included:

kts-mac-pro: ~ kt$ cd /Users/kt/Desktop
kts-mac-pro: Desktop kt$ dd if=4870.ROM of=efi.part bs=1 skip=63488 count=49152
49152+0 records in
49152+0 records out
49152 bytes transferred in 0.315280 secs (155900 bytes/sec)
kts-mac-pro: Desktop kt$ blocknum=`printf %d "'\`dd if=pc4870.rom bs=1 skip=2 count=1 2>/dev/null\`"`
kts-mac-pro: Desktop kt$ size=$(($blocknum * 512))
kts-mac-pro: Desktop kt$ echo $blocknum
-128
kts-mac-pro: Desktop kt$ echo $size
-65536
kts-mac-pro: Desktop kt$ dd if=efi.part of=pc4870.rom bs=$size seek=1 conv=notrunc
dd: bs must be between 1 and 2147483647
kts-mac-pro: Desktop kt$ python fixrom.py pc4870.rom pc4870.rom
Before:
OpRom (size=65536, indicator_offset=0x275, indicator=0x80, checksum=0x9e)
RawData (size=65536)

After:
OpRom (size=65536, indicator_offset=0x275, indicator=0x80, checksum=0x9e)
RawData (size=65536)​

Something interesting: to rule out the possibility of a bad dumped ROM, I attempted to re-dump it using a different utility (ATIFlash instead of GPU-Z). Except I got a SIGSEV error that denied me every single time, of which I don't know exactly what that means. Worked fine, however, as far as I can tell, using Winflash and GPU-Z. Both ROMs are 128k. However, I'm still experiencing failed attempts with the script above. :confused:
 
@skyhand

Can you insert some more commands for debug ?

Show us the permission / size of your dumped rom and run the basic dd command (without printing usefull debug output to /dev/null) to see whats going on.

$blocknum should not be negativ!

cd /Users/kt/Desktop
ls -l pc4870.rom
dd if=pc4870.rom bs=1 skip=2 count=1

which dd ; which printf; echo $SHELL ; echo $PATH ; whoami


Bye, jaberwocky
 
@skyhand

Can you insert some more commands for debug ?

Show us the permission / size of your dumped rom and run the basic dd command (without printing usefull debug output to /dev/null) to see whats going on.

$blocknum should not be negativ!

cd /Users/kt/Desktop
ls -l pc4870.rom
dd if=pc4870.rom bs=1 skip=2 count=1

which dd ; which printf; echo $SHELL ; echo $PATH ; whoami

Thanks for helping me out further on this. Here's the data from Terminal running the commands above:

kts-mac-pro:~ kt$ cd /Users/kim/Desktop
kts-mac-pro: Desktop kt$ ls -l pc4870.rom
-rwxr-xr-x 1 kt kt 131072 Apr 3 15:53 pc4870.rom
kts-mac-pro: Desktop kt$ dd if=pc4870.rom bs=1 skip=2 count=1
?1+0 records in
1+0 records out
1 bytes transferred in 0.010084 secs (99 bytes/sec)
kts-mac-pro: Desktop kt$
kts-mac-pro: Desktop kt$ which dd ; which printf; echo $SHELL ; echo $PATH ; whoami
/bin/dd
/usr/bin/printf
/bin/bash
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
kt

Would it be helpful for me to post the error I get while trying to dump the ROM via ATIflash? If so, I'll fire up the Windows side and grab it.

Only other steps I can think of mentioning is that I'd installed the latest ATI drivers, didn't install those included on the CD (which are notoriously old). Also, would it make a difference if I dump the ROM with or without my other graphics card (ATI 2600) installed? I can try it both ways...
 
Has anyone tried booting from a system with Snow Leopard 10a314 or a 10a314 install disc with a flashed 4870? Does it work? I'm concerned that these flashed cards won't work properly with Snow Leopard.

That´s a very good and important question. My flashed 4870 won´t boot with SL 10a286. :(
 
I just installed it in BootCamp, but I don't see an option to "backup" the factory ROM. Can Winflash do this?

Yes it will. The commands are the same as in atiflash only you use atiwinflash insead. You do this via command line (don't use the GUI).

Start --> Run --> CMD
<navigate to your winflash directory>
Run this code:
Code:
atiwinflash -i
To verify the rom size and card number you will be attempting to dump/flash. (don't worry when it says flashing after the command... it' not actually flashing it's just checking).

If everything looks ok, run this to create a rom dump named pc4870.rom from card number "0" with a filesize of 128k.
Code:
atiwinflash -s 0 pc4870.rom 20000


Thanx to pipomolo42 for these instructions (found it on another post)
 
Thanks again everyone. I reinstalled GPU-Z and was able to back up my original ROM. Now ready to flash.

Once again another obstical! WinFlash doesn't like it for some reason, gives me the "Device ID Subsystems Mismatch" and it doesn't appear to continue with the flash.

medsource, I tried using the CMD prompt to run it, but will try it again like you said. It didn't work the previous time I tried!
 
Ya, I just wish we could sort out the 5.0 GT/s problem. I'm back to my Apple 512 MB 4870, so I now have a Quadro and a 4870 that aren't used. what a mess

Do us a favor and see if that 2.5 vs 5.0 makes any difference.

Run GLView or Doom 3 timedemo or SOMETHING that compares GPU speed.

I'm gonna guess that it won't make any difference.

When AGP went from 4X t 8X we weren't saturating the 4X bus....doubt that this makes any difference.
 
I run Mudbox RC (I'm a beta tester for Autodesk) and it's slower on the flashed 2.5 GT/s card. It has a built in benchmark - one mesh gets 104 FPS on the 5.0 GT/s Apple Radeon 4870 and 80 FPS on the flashed 2.5 GT/s. This app is all about bandwidth and does sculpting on the card (not with the CPU) and it's noticeably faster on the 5.0 GT/s one. Maya and Cinebench are also faster on the 512 MB card

The whole reason I bought this flashed one was for Mudbox since it's so GPU memory hungry. I have a PS3 for games so I don't bother with gaming stuff.
 
and as far as Snow Leopard support goes, I think that considering Apple hasn't finished beta testing 10.5.7 (with updated Radeon drivers) and that Snow Leopard requires 64-bit drivers, SL support isn't ready yet. If the card loads in Leopard, then I'm sure that it will work in SL.
 
Hmmmm...then we need to research this a little more.

It is in one of two places........either the driver is checking subsystem ids or there is something in the PC portion of BIOS which enables/disables the PCIE 2 functionality.

Either of these things can be fixed by a little ROM work.

The final possibility is a more nefarious one....that Apple altered something hardware wise...either a moved resistor or a actually re-assigning a pin on PCIE bus. They did this with AGP...hence the "Tape 3 & 11 pins" debacle.

To find the answer will require a few things.

1. I need Hi-Res scans of Apple OEM board. Ideally both sides but I could live with just the backside for now. Needs to be high enough res to read the little numbers and see which position the resistors are in. If you can't make it small enough to attach, I can PM you my idisk info and you can put it there.

2. Somebody with a PCIE 2 Mac and a flashed 512 version needs to report on this 2.5 vs 5.0 thing. If the cards that flash A-OK with Apple OEM ROM work fine...then problem is DEFINETELY hardware.
 
well I have an OEM Apple 4870 board, a nehalem Mac and a Sapphire that's working save for this and dual head so I'll be glad to help. If I can get 5.0 GT/s working, I can sell the OEM board and break even.

But I will continue to shake my fist at Apple for costing me $2000 on a Quadro will piss poor drivers in the first place.

Get the scan up in a minute
 
here's the Apple board
 

Attachments

  • apple4870oem.jpg
    apple4870oem.jpg
    889 KB · Views: 190
So, I'm back on my 8800GT and I'm much happier with the ability to use my mouse as expected.

Sadly, the experiment with the 1gb sapphire cards from amazon comes to a close for me... at least they took them back for full refunds (shipping too!).

All in all I'm out $10 for pins and connectors for the pcie cables; but, hey I learned a new skill: rolling my own cables. I also am now a bit more adept with this whole flashing business... and I got to nerd-out for hours on this project which was fun!

Maybe later on if the link speed issue gets fixed and there are no more incidents of mouse jump, then I might take the plunge again.
 
here's the Apple board


Excellent.

They just bought a couple of Nehalems at a place I freelance for....gonna try to nip in there tomorrow with my Diamond 512 card (which runs the OEM ROM A-OK) and verify if it runs at 2.5GTS or 5.0GTS....this will tell us if issue is software or hardware.

Comparing to your scan, I see several small resistors in different spots.

I will move some of them after I do my baseline in the Nehalem with the DIamond.

If anyone has first hand experience with one of the cards that run OEM ROM A-OK on a Nehalem, please tell which speed it runs at.
 
Big thanks goes out to all you who have sacrificed time and headaches to help the community! Rominator, pipomolo42, netkas and many others . . . Thanks again.

I bought a Sapphire 512 4870 (reference board, same board that pipomolo42 has, exactly). That saved me a ton of work, no custom ROMs to make for myself as it was already done! So far its working great. Once it was flashed, it booted just fine! Haven't tested bootcamp yet, but I am at the disposition to help you guys with anything as I am in debt.

Here is my process. I was a n00b and uncertain about the whole flashing thing. I read more and more and once I understood what I needed to do, it made sense. I ran into a few roadblocks, so thought I'd share my knowledge.

1. Found my Sapphire reference board, downloaded the custom ROM pipimolo42 had made. Also found the drives and atiflash and got all the files ready.
2. I didn't have a PC, so I spent countless hours trying to DUMP or backup my original ROM with GPU-Z. It didn't work at first, but I reinstalled GPU-Z and then was able to back it up.
3. Since I didn't have a PC, I could not boot to a USB drive. I tried the WinME boot disc and FreeDOS (both worked at booting to DOS) but then DOS would NOT recognize the USB drive to get atiflash and the new ROM on there. Don't bother, I tried it with a Mac and it wouldn't work.
4. Some suggested using WinFlash to flash the card, but that wouldn't work as it gave me "Device ID subsystem mismatch" and WinFlash would NOT flash the new ROM. This forced me to find a PC, boot to DOS and force atiflash to flash the new ROM.

So, don't give up. Once I figured it out, it was just getting a PC to take care of it, as it took me 5 minutes when I wasted hours of my time trying to get my MP and bootcamp to Dump and Flash my new card.

Thanks again to all who have helped, this is truly awesome :)
 
@BEIGE

Could you tell us if the Apple OEM Card still works with VDDC's? I'm asking because the original ATI-Cards were "well known" for the high temperatures on this digital elements (with high 3D-load).

Most of the OEM's switch back to analog regulators, resulting in lower total heat for this card.

You can check it easy with GPU-Z, if you find at the sensor tab lines beginning with "VDDC .." the use the digital version.

Example for my card (without them):

4870withoutvddc.th.jpg

http://img12.imageshack.us/img12/793/4870withoutvddc.jpg

@skyhand
Sorry, no idea

Thank you, jaberwocky
 
Sapphire 1GB 4870

I will post more tomorrow, but the 1GB sapphire card I bought from newegg flashed fine, running 10.5.6 and no cursor jump. At the moment, even with the 2.5 GT/s link speed the card benches openGL on cinenbench better than my nVidia 8800 OEM in the same speed mac (I have three 8-core Mac Pros).

Anyway, the card works great, it's quiet, no glitches or visual weirdness of any kind. Really happy for 200 hundred bucks, when the mac 4870 with tax would cost almost $ 400.

Also, on the cursor jump, I wonder if it is the mouse, or the driver you use. Is it a logitech? The logitech drivers were always bad news - I went to steermouse and every device works like a charm.
 
To Skyhand

Thanks for helping me out further on this. Here's the data from Terminal running the commands above:

kts-mac-pro:~ kt$ cd /Users/kim/Desktop
kts-mac-pro: Desktop kt$ ls -l pc4870.rom
-rwxr-xr-x 1 kt kt 131072 Apr 3 15:53 pc4870.rom
kts-mac-pro: Desktop kt$ dd if=pc4870.rom bs=1 skip=2 count=1
?1+0 records in
1+0 records out
1 bytes transferred in 0.010084 secs (99 bytes/sec)
kts-mac-pro: Desktop kt$
kts-mac-pro: Desktop kt$ which dd ; which printf; echo $SHELL ; echo $PATH ; whoami
/bin/dd
/usr/bin/printf
/bin/bash
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
kt

Would it be helpful for me to post the error I get while trying to dump the ROM via ATIflash? If so, I'll fire up the Windows side and grab it.

Only other steps I can think of mentioning is that I'd installed the latest ATI drivers, didn't install those included on the CD (which are notoriously old). Also, would it make a difference if I dump the ROM with or without my other graphics card (ATI 2600) installed? I can try it both ways...


Skyhand,
I'm a newb at this and have only been monitoring this thread as I've not purchased the 4870 yet. I've tried downloading your flash and experiment it a little, no good I get the same error. I then downloaded some sample bios from techpowerup and the script works flawlessly. I was able to find another bios dump from here for an Asus 1gb card DK,
http://www.overclock.net/ati/461202-bios-request-eah4870-dk-htdi-1gd5.html

... Same error as your bios dump. Your card is the Asus Dark Knight 1gb edition rite? There must be something different on the bios of this card that result an error on the script BIOS size maybe? I'm not sure as I'm no expert in this. I hope the gurus will be able to help you. Till then I think this card is in the non-working list i guess.

Hope this helps.

Cheers
 
Excellent.

They just bought a couple of Nehalems at a place I freelance for....gonna try to nip in there tomorrow with my Diamond 512 card (which runs the OEM ROM A-OK) and verify if it runs at 2.5GTS or 5.0GTS....this will tell us if issue is software or hardware.

Comparing to your scan, I see several small resistors in different spots.

I will move some of them after I do my baseline in the Nehalem with the DIamond.

If anyone has first hand experience with one of the cards that run OEM ROM A-OK on a Nehalem, please tell which speed it runs at.

I updated my 4870 card with the OEM ROM, but it won't run. Just continuous boot up chime. Is the OEM ROM (from the first ROM post) different than OEM-ROM A-OK?

ps. needs to update my 4870 card on a PC on Monday when I'm back to office..
 
alright - I just got off the horn with someone at Nvidia and they confirmed that Apple writes the drivers for all Nvidia products. Call them for yourself if you don't believe me: Tel: 408-486-2000.

The secretary forwarded me to a pretty bad connection in what was likely India but he confirmed it. Free advice: never challenge a journalist about "the facts" without some good **** to back it up

if I seem a bit pissy about this, it's because I'm currently selling a Quadro FX 5600 on eBay at a great loss because the drivers absolutely suck, thanks to Apple.

Well, thanks.

seems like nvidia just gave apple sources of their opengl driver and apple made rest.
 
... Same error as your bios dump. Your card is the Asus Dark Knight 1gb edition rite? There must be something different on the bios of this card that result an error on the script BIOS size maybe? I'm not sure as I'm no expert in this. I hope the gurus will be able to help you. Till then I think this card is in the non-working list i guess.

Hope this helps.

Cheers

Thanks, zoney, for doing that research and taking a crack at the ROM. I admit, it's good to know that it's not just on my end that it's not cooperating. And yep, it's an ASUS Dark Knight 1GB and we can add it to the list of non-working cards. I'm returning it for a Sapphire. If I can't flash the ASUS to be functional in OS X like it is in Bootcamp/XP, it's not worth keeping. It's too much of a pain to have a different card installed for each OS, swapping the monitor cable each time, etc.

Something strange that I noticed — even in using the same slot, Winflash reads the ASUS a regular PCIe, NOT 2.0 like it's advertised. I've tried it in different slots, same readout. My ATI 2600 reads 2.0 though. WTF?

Okay, to New Egg I go to pick a Sapphire. Thanks to everyone for your help with this. I appreciate all the responses!

Cheers
 
I think we'll need to get a newer build than A286 to see if the flashed Radeons work in it or not. I doubt that they have 64-bit drivers done already though.
 
Thanks, zoney, for doing that research and taking a crack at the ROM. I admit, it's good to know that it's not just on my end that it's not cooperating. And yep, it's an ASUS Dark Knight 1GB and we can add it to the list of non-working cards. I'm returning it for a Sapphire. If I can't flash the ASUS to be functional in OS X like it is in Bootcamp/XP, it's not worth keeping. It's too much of a pain to have a different card installed for each OS, swapping the monitor cable each time, etc.

Something strange that I noticed — even in using the same slot, Winflash reads the ASUS a regular PCIe, NOT 2.0 like it's advertised. I've tried it in different slots, same readout. My ATI 2600 reads 2.0 though. WTF?

Okay, to New Egg I go to pick a Sapphire. Thanks to everyone for your help with this. I appreciate all the responses!

Cheers

Hey, as far as I know, all the Saphire cards are single display only...except for the old school ones that NEWEGG WON'T HAVE.

As fire as this ROM problem.

You should check to see that those place counting numbers are skipping ALL the way past end of the section of the ROM they are meant to skip.

When rihldanger did his rom for XFX, he found that the standard script did't work due to the PC BIOS being just a touch bigger than it should be.

He had to skooch it further back.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.