ATI MAC UNDERGROUND
Home Page

Instructions and Links

Email


Flashing Instructions for PC Radeon with Mac ROM
To flash a PC Radeon with the ROM from a Mac Radeon:
1. Install the PC Radeon card in a PC system as a second video card. This may require modifying the PC BIOS settings to set another video card as the primary display.
2. Create a bootable DOS floppy disk. In Windows, open a command prompt and format a floppy disk with the '/s' option, or type 'sys a:' to make the floppy bootable.
3. Download the 'flashrom.zip' file and extract the contents. Copy the files to the DOS floppy.
4. Boot the PC system to the DOS floppy.
5. Type 'flashrom -i' to display a listing of ATI display adapters in the system. If the PC Radeon is the only ATI card in the system, it will be identified as adapter '0'.
6. Type 'flashrom -s 0 radpc.rom' to save a backup copy of the ROM from the PC Radeon to a file. The name 'radpc.rom' is just an example and you can name the file whatever you wish. You will want this backup copy in case you want to restore the original PC ROM to the Radeon card.
7. Shutdown the system. Remove the PC Radeon and install a Mac Radeon card so that you can save the ROM from the Mac Radeon. If you downloaded a Mac ROM you can skip this step.
8. Boot the PC system to the DOS floppy.
9. Type 'flashrom -s 0 radmac.rom' to save the Mac ROM from the Mac Radeon to a file. You can name the file whatever you wish. If you downloaded a Mac ROM you can skip this step.
10. Shutdown the system. Reinstall the PC Radeon so that you can flash it with the Mac ROM.
11. Boot the PC system to the DOS floppy.
12. Type 'flashrom -pm 0 radmac.rom' to flash the PC Radeon card with the Mac ROM. Use the name of the Mac ROM you saved or downloaded. You should see a message that '65536 bytes written' and '65536 bytes verified'. This is the size of the eeprom chip on the Radeon. The actual size of the ROM file is smaller and this is OK. You may also see a message 'flashrom is locked'. I am not certain of the meaning of this, but the ROM should still flash onto the card successfully.
13. Shutdown the system. Remove the flashed PC Radeon and install it into your Mac.
14. Startup the Mac. It should boot up normally and with luck you will get video on the Radeon.
I have a Beige G3 Mac and I tried flashing a PC Radeon PCI with SDR memory. After flashing, I got only scrambled video on the Radeon and could not get it working properly. However, the Radeon was recognized correctly in Apple System Profiler, Monitors Control Panel, and ATI Displays. I suspect that the SDR memory is the problem, since the Mac Radeon uses DDR memory. Perhaps the Mac ROM requires DDR memory to work properly. I am examing the Mac ROM in HexEdit to see if I can find a parameter that controls the memory type. The PC Radeon AGP has DDR memory and may work better. I have not tried this however, and cannot report if it works or not. Please let me know your results so that I can update the site with user reports.

Downloads
flash204.zip This zip file contains the pc based flash utility flash.exe which is a menu driven ATI flash program. It was used for flashing Rage based cards but may also work with Radeon cards.
flashrom.zip This zip file contains the pc based flash utility flashrom.exe which is a command line ATI flash program. It is newer than the previous program and contains a Mac-specific command switch (-pm) option. Recommended for flashing Radeon cards.
hexdiff.exe This is a pc program to compare the contents of two ROM files for differences.
rdmacpci.zip Zip file with the ROM saved from the retail Mac Radeon PCI DDR card.
rdpcpci.zip Zip file with the ROM saved from the retail PC Radeon PCI SDR card.
R128_136_Radeon_125_Flasher.sit Stuffit file with the Mac Radeon flasher program that shipped with the Apple 17" LCD display

Favorite Links
www.xlr8yourmac.com The premier site for Mac related upgrade information, hardware reviews, and user forums.
www.rage3d.com Excellent PC site for ATI Radeon and Rage tweaking and overclocking information and forums.
www.rageunderground.com Another good PC site for Radeon and Rage news information.
www.macgamer.com Focused on Mac gaming and video card reviews.
www.macnn.com Mac news, reviews, and forums.
www.innermac.com Lots of Mac related reviews, articles, and forums.

Status Reports
Here's the latest update on the project:

I finally went ahead and bought the Mac Radeon PCI card with the goal of saving the ROM from it and flashing it onto a PC version Radeon PCI card.

I installed the Mac Radeon PCI in my PC as a second video card, booted into DOS, and ran the ATI flash program FLASHROM.EXE with the following command:
c:\flashrom -s 0 rdmacpci.rom
SUCCESS! I was able to save the Mac ROM to a file on my PC. There is no visible output from the command, other than the creation of the file, which was about 32K in size.

I also ran the program with the following command to view information about the Mac Radeon:
c:\flashrom -i
This displayed information on the version of the card, the eeprom, etc. and I saved this to a text file to compare later with the PC Radeon.

I removed the Mac Radeon from my PC, installed a PC Radeon PCI card, and ran the following command to program the card with the Mac ROM saved in the previous step:
c:\flashrom -pm 0 rdmacpci.rom
SUCCESS AGAIN! I was able to program the PC Radeon with the Mac ROM. The program displayed output that 65536 bytes written and 65536 bytes verified. This seemed strange, because the actual ROM file was only about 32K, but my previous flashing experiments with different PC ROM files showed that the program always reported 65536 bytes. regardless of the actual size of the ROM file. Perhaps this is the max size of the eeprom itself.

I removed the Mac-flashed PC Radeon from my PC and installed it in my Beige G3. I also have a Newer G4 chip and MacAlly FW/USB card in the machine and was concerned about possible conflicts with the Radeon, but left the configuration as it was. I connected my ViewSonic A90 19 inch monitor to the Radeon, and fired up the Mac.
NO VIDEO! I got the chime, heard the disk spin up, and the boot process completed normally. I have a startup sound in the Mac and it played to indicate that bootup was successful. The monitor LED blinked on momentarily early in the boot process, but then went off and I had only a blank screen. I tried various attempts at zapping the PRAM, deleting Display and Monitors preferences, etc with no effect.

It occured to me that since the Beige G3 has onboard video, it is probably defaulting to that as the startup screen. Reconnected the monitor to the onboard video, and the desktop appeared normally.

I then went into the Monitors control panel, and only one monitor displayed. There was no listing of the flashed Radeon, and the Arrange button was not present.

I loaded the Mac Radeon drivers, version 1.1.1 and installation completed successfully. I rebooted with the monitor reconnected to the Radeon. Still no video on the Radeon. Reconnected to the onboard, again desktop displayed ok.

I tried launching the ATI Displays control panel, but it failed with a message that it could not find any ATI display devices. I went back into the Monitors control panel, and still no Arrange button and no evidence that the Radeon was present.

I went into Apple System Profiler and observed that it did recognize and report info on the flashed PC Radeon card. It showed all the normal information and everything looked ok in ASP. This seemed to be good, the card is at least recognized at a hardware level.

To verify the problem, I removed the flashed PC Radeon, installed the real Mac Radeon, and started up. Interestingly, the exact same results occurred. No video on the Radeon, not recognized by ATI Displays or Monitors control panel, but recognized correctly by ASP. I observed that ASP displayed the EXACT SAME info on the real Mac Radeon as it did with the flashed PC Radeon. I took this as a great sign, and figured the trouble must be elsewhere.

It then occurred to me that the Radeon may not activate if no monitor is connected to BOTH the onboard video and the Radeon. I connected ViewSonic to the onboard video, and another monitor to the Mac Radeon.
SUCCESS! The onboard video displayed the startup screen and Finder, while the Mac Radeon displayed additional desktop area.

The ATI Displays control panel now recongized the Mac Radeon, and the Monitors control panel also recognized the additional monitor and displayed the Arrange button. I was able to control both displays and alter settings as expected.

With renewed confidence, I then removed the Mac Radeon, and reinstalled the flashed PC Radeon with both monitors connected as previously.
GARBAGE VIDEO! The onboard video displayed the desktop properly, but the flashed PC Radeon displayed only a black screen full of what looked like equals "=" characters. The Mac booted up normally so I went into ATI Displays, and it detected the flashed PC Radeon as if it were the real Mac Radeon. All the controls were present and active, but I could not get the Radeon monitor to display anything but junk. I did get it to display different background colors and resolutions of junk characters by changing Display settings. I went into the Monitors control panel, and again everything looked fine just as with the Mac Radeon, but again nothing but garbage video. I again tried zapping PRAM and deleting preferences but no good.

It seems that for now, the experiment is a failure, although I feel I was very close to success based on these facts:
The ROM saved and flashed with no problems or errors.
The Apple System Profiler recognized the flashed card as if it were the real Mac Radeon with identical information.
The ATI Displays and Monitors control panels both recognized and controlled the card as if it were the real Mac Radeon.
The flashed Radeon displayed something, although it was garbage.
My main concern going in to this was the fact that the PC Radeon I used has SDR memory, while the Mac Radeon has DDR memory. There is no PC Radeon PCI with DDR memory afaik so this was my only option for the Beige G3. I suspect that the memory may be the key difference preventing this from working. I am going to try opening the Mac ROM in Resurrection or HexEdit to see if I can find any references to control the memory type, and also try a few other things.
I think it would definitely be worth trying a PC Radeon AGP with DDR memory, such as the Radeon LE or the 64MB DDR version. Based on my partial success, I think it has a better chance at working in the Mac if somebody wants to give it a shot.
I started setting up a website to share info on the project at <http://atimacunderground.freeservers.com> and I have the flash program available for download, and will post these results there also.
Please post if you have any comments or suggestions on my efforts, or if you want more info on how to perform the flash process. Hopefully we can get it working. Also, my email is jhebert99@yahoo.com

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

Status update:

The memory amount on the flashed PC Radeon is being correctly recognized as 32MB in Apple System Profiler. ASP just lists it as "VRAM Amount 32MB" on both the PC Radeon and Mac Radeon but doesn't specify SDR or DDR. I'm pretty sure the core and memory clock speed is also OK, and is set in the ROM on the card. PC forums have reported that flashing the ROM controls these speeds.
I tried looking in the Mac ROM file using HexEdit and did find a few references that may prove worth tweaking, including parameters "ATY,MCLK" and "ATY,SCLK" and several others. Unfortunately most of it of course does not have plain english descriptions.
I also opened the original PC ROM file and tried to compare it to the Mac ROM, but found few common features between them, and nothing obvious about the RAM type. It seemed like the command syntax was different, I guess because of the different architectures. My knowledge in this area is somewhat limited. I also have another PC ROM from a DDR card and will try looking at it.
Finally, I also opened the ATI ROM XTender extension in HexEdit. It contained ROM info for not just the Radeon but also several different Rage series cards. It looks like the ROM XTender picks up where the card ROM leaves off, and replaces some information and adds additional parameters. Again, I saw some parameters that may be worth tweaking. The ROM XTender seemed to be grouped in sections by the chip type, and in the Rage sections there were actually readable references to memory type and amount including what looked like memory chip density and SDR or DDR if I read correctly. I'm not sure if these were also related to the Radeon settings. There were also what looked like Open Firmware commands in the ROM XTender and the Radeon Mac ROM, similar to those that Fatmac posted in the GeForce2 MX thread a while ago. I'm not sure if there may be something there worth modifying.
Let me know if anyone has any more suggestions, and any ATI or ROM experts out there please step forward! I still think my PCI SDR version has a shot at working, and I would really like to see somebody try the AGP DDR versions. I think it has a good chance of success.

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

A quick status update:


I am continuing to try to get the flashed PC Radeon PCI card working in my Beige G3. After some experimentation and research I found out a few things.
1. The Radeon cards use an Atmel AT49F512 eeprom for the flash rom. It is 512Kbits or 65,536 bytes in size which explains the message I saw during flashing although the Mac ROM is only 32K in size. This eeprom has a 'boot block' area of 8K that can be write protected. This might mean that there is code in this block that is not saved or overwritten during the my flash process. If so, this could be why its not working. The flashrom.exe program displays a message 'flashrom is locked' during flashing, although I verified that the Mac ROM is definitely being saved and flashed onto the card.
2. Flashing the Mac ROM onto the card definitely allows the Mac to recognize the card. If I reflash the card with the PC ROM or with a 'junk' ROM, the Mac no longer reads it correctly in Apple System Profiler.
3. The ATI ROM XTender extension appears to be reading the flashed card and trying to replace the ROM in memory. At initial bootup, the card only turns the monitor on then off immediately. When the ATI ROM Xtender loads, the monitor turns back on and displays scrambled video. If I disable the ATI ROM Xtender the monitor does not turn back on. Also, if I reflash with the PC ROM, the monitor never turns on at all, regardless of whether the ATI ROM Xtender is enabled or disabled.
For anyone who tried downloading the flash files and ROM from my site, I had a few broken links which should be fixed now. You can email me if you have problems.
Lionel from <http://www.macbidouille.com/> contacted me and I sent him the files so he can try it out. He is the guy who made the overclocking modification for flashing the GeForce2 MX cards so I welcome his knowledge and input. He is going to try to figure out how to overclock the Mac Radeon. This would be great because there is no Radeon Tweaker like PC users have.