Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Cindori

macrumors 68040
Original poster
Jan 17, 2008
3,528
378
Sweden
freyicon.png

What is Freya?
Freya is a Mac Pro Firmware Database.
Freya is a Firmware Review System.
Freya is a Mac Pro Firmware Editor.
Freya is a Automatic Firmware Generator.

Freya is here to help anyone looking to maximize the graphics power in their Mac Pro, by offering easy modifying and sharing of EFI graphics card firmwares.

Flashing PC cards for use in Mac Pro is pretty common these days, but to do that you need a compatible firmware. Most people get sick and tired of looking though the topics here for pre-made ones, and I don't blame them. For example, my 4890-thread is about 120 pages. And most people are not familiar with the process of modifying firmwares. So they end up paying overprice at Apple or buying pre-flashed ones at ebay (also overpriced).

Time to organize things!

How does Freya work?

Freya has three different panes/tabs: Info, Modify and Database.

In the Info pane you can view details about your graphic cards and for instance, see if Quartz Extreme / Core Image is working properly.

In the Database pane, you have access to every firmware uploaded to the Freya Backend Server. The firmwares are listed by card models, so it's super easy to locate compatible firmwares for your card. Furthermore, firmwares are accompanied by several attributes such as Author, Upload date, Rating, ID, and Description.

This information will help you find a firmware that works well for your card. You can rate the firmware by how well it worked. The ability to disclose Author will help to bring credit to the people who actually modified the firmware (note: it's Author, not Uploader). The ID will help you find your way back to a firmware, and you can use it to generate a web URL directly to the firmware file: http://groths.org/firmware.php?id=xx replacing xx with the firmware ID, for linking firmwares to other people or when you need to download in Windows.

But there's more. I also created a Comment System, so you can comment on individual firmwares. Reports of success stories or problems will greatly help other people, so commenting is very encouraged.

When you download a firmware or script, you don't have to specify a save location, because everything you download is stored in your Local Download Storage (Application Support/Freya). This helps you keep track of your downloads, because we all know our desktops tend to get a bit cluttered when messing around with firmwares. To view your Local Download Storage, simply press the Downloads toolbar item. A drawer will appear, with tabs to switch between downloaded firmwares and scripts. If you want to remove an item, or import one from outside of Freya, you can use the Add and Remove buttons. If you want to copy something out of the storage, simply drag it out to your desired destination.

You can Upload a firmware or script at any time by the Upload toolbar item. A Drag-n-Drop panel will drop down, allowing .rom, .rb, .applescript or .py files. You may have to change the file extension of your firmware file to .rom. This made implementation slightly easier, but it also makes firmware management more consistent to just use .rom and not .rom / .bin / .nothing.

When you drop a file, Freya will present a new panel where you enter the details of your upload. You give the file a relevant Title and Description, declare what Model of cards it is for, if it is Modified with Mac EFI or just original PC rom, and provide the name of the Author of the file. Note that this field is for Author, not uploader. If you did not make / modify it, you should not put your name here. If you found it on a forum, put the user name of the person who uploaded it. If you don't know who made it, put Anonymous or Unknown. You get the picture. To scavenge netkas / Macrumors for old firmwares and uploading them to Freya is a great way to contribute, but don't try to do it in order to put your name on all of them and look cool. If you did not modify it, put your name in the description instead.

When you're finished, press Done and the firmware will upload to Freya Backend Server, and become available immediately. If it's a script though, it will have to be personally reviewed by me before it becomes publicly available, to prevent any harm to users computers.

I also made sure that all uploads are compared by checksum, to prevent any duplicates.

Then there's the Modify pane. This pane is basically a Hex Editor specifically for firmwares. Together with the Downloads drawer, you can easily and quickly edit any of your firmwares, compare them, and apply Firmware Generating Scripts to them.

The thought is that through uploading scripts to Freya Backend Server, people can share mods and apply them in the Modify tab. Kind of like plugins. Crowdsourced Firmware Alteration Plugins. Ok I'm done with the fancy words. But listen to this:
I made 4870 / 5870 EFI sewing scripts for Zeus. I'm going to upload them to Freya, and people can review them just like firmwares. They will be viewable (source) and so will all other uploaded scripts. This way, people can learn from each others scripts, and some people can create new scripts.

It doesn't have to be just EFI-adding scripts. EFI decompressing, patch-applying, you name it. You invented some great firmware mod, cool. Script it and upload to Freya instead of writing up a guide for it.

This tab is not completed, and support for uploading scripts are not either. I'm going to focus on implementing it in the near future.

There is still much to be done, but I need to focus on some other projects for the moment and I figured since the database is pretty functional I would release an early version of the app.

The app is maintained through automatic updates, which I suggest you turn on since they may be quite frequent.

Btw, all of this is completely FREE .
If you want to, you can donate through Paypal.
I can honestly say that if it weren't for the support and the donations I've recieved, I never would have been motivated to make this. Big thanks to you guys.



Initial Beta release uploaded

http://groths.org/freya/freya.zip

Keep in mind this is an very early release, there are many bugs and stuff not implemented.

Some known bugs:
Not images for all cards
May crash on card select box in Info View
Comments are not sorted by date
Rating not implemented
Buttons on download drawer not implemented
Still some test comments left, will remove them later

and several more. Please report anything else you find though :)

P.S There really is not a good way yet to export firmwares (I will add) but for now you can locate your downloaded firmwares manually in Application Support / Freya / Firmwares

Some screens (click for full size):











 
Last edited:
Am I allowed to nitpick the UI? The left side of the download screen should be an outline view, not a table view. :p

But besides the OCD developer part of me, this looks great.
 
Hopefully you have thought to include a means for people who write modified firmwares to have their work "opted out".

I would rather not have roms I spend weeks writing become part of everyone's collection.

Hopefully you will have some respect for others who have spent much time helping the Mac community.

Also, each and every Mac 5870,5770, 6870, and 6970 rom should AUTOMATICALLY list Netkas as co-author as none of these would work if he had not written a de-protected EFI for everyone.
 
Initial Beta release uploaded

http://groths.org/freya/freya.zip

Keep in mind this is an very early release, there are many bugs and stuff not implemented.

Some known bugs:
Not images for all cards
May crash on card select box in Info View
Comments are not sorted by date
Rating not implemented
Buttons on download drawer not implemented
Still some test comments left, will remove them later

and several more. Please report anything else you find though :)

P.S There really is not a good way yet to export firmwares (I will add) but for now you can locate your downloaded firmwares manually in Application Support / Freya / Firmwares
 
How big is the community working behind this app?
I'm looking forward when the firmware for the GTX570 is there. Cindori, be sure that I will donate you something for this superb app.
 
Not sure wha you mean by "community behind" but the app & database/server is made by me. But it's not going to be of any use without individual peoples contributions. Just throw any firmwares you can find up there, provided you also put useful description etc. The database will cross compare all uploads by checksum, so there is no risc of uploading duplicates. The topics around here are filled with firmware contributions, and are a good place to scavenge firmwares for this database.
 
Hey, its not my comment there on sshots, and its pretty bad one!!
 
Last edited:
Hey, its my comment there on sshots, and its pretty bad one!!

I am sorry! I only meant as attempt to be humorous, not to offend. :( I have removed it.

I also found another bug (actually not bug), all Uploaded dates are the same, I think it's because Ive hardcoded it. Will add that to the todo list.
 
Last edited:
The first beta version is released, see a few posts up. Updated main post also.
 
Hopefully you have thought to include a means for people who write modified firmwares to have their work "opted out".

I would rather not have roms I spend weeks writing become part of everyone's collection.

Hopefully you will have some respect for others who have spent much time helping the Mac community.

Also, each and every Mac 5870,5770, 6870, and 6970 rom should AUTOMATICALLY list Netkas as co-author as none of these would work if he had not written a de-protected EFI for everyone.

You can't stop firmwares being shared unfortunately, because if it isn't uploaded via Freya it can be uploaded anywhere else. Your firmware may as well be 'open source'.

I agree that people like yourself should 100% be noted for your work, as I wouldn't have a 6870 if it wasn't for everyone working on it.

I'll download Freya and have a play, good work :)
 
Hi,Cindori
Can't find the downloaded rom.(Can't find the folder: Application Support/Freya)
Where to find stored rom ?
Thanks.

The application support folder is in your User/Library folder. The Library folder in User is hidden, you need to activate hidden files in Finder. Sorry for missing important functionality. Having exams atm and not had time to work on it.

A easier way is to use this link
https://s3.amazonaws.com/Firmwares/id/firmware.rom

and replace "id" with the ID-number of the firmware which you can see in the description in Freya
 

What is Freya?
Freya is a Mac Pro Firmware Database.
Freya is a Firmware Review System.
Freya is a Mac Pro Firmware Editor.
Freya is a Automatic Firmware Generator.

Freya is here to help anyone looking to maximize the graphics power in their Mac Pro, by offering easy modifying and sharing of EFI graphics card firmwares.

Flashing PC cards for use in Mac Pro is pretty common these days, but to do that you need a compatible firmware. Most people get sick and tired of looking though the topics here for pre-made ones, and I don't blame them. For example, my 4890-thread is about 120 pages. And most people are not familiar with the process of modifying firmwares. So they end up paying overprice at Apple or buying pre-flashed ones at ebay (also overpriced).

Time to organize things!

How does Freya work?

Freya has three different panes/tabs: Info, Modify and Database.

In the Info pane you can view details about your graphic cards and for instance, see if Quartz Extreme / Core Image is working properly.

In the Database pane, you have access to every firmware uploaded to the Freya Backend Server. The firmwares are listed by card models, so it's super easy to locate compatible firmwares for your card. Furthermore, firmwares are accompanied by several attributes such as Author, Upload date, Rating, ID, and Description.

This information will help you find a firmware that works well for your card. You can rate the firmware by how well it worked. The ability to disclose Author will help to bring credit to the people who actually modified the firmware (note: it's Author, not Uploader). The ID will help you find your way back to a firmware, and you can use it to generate a web URL directly to the firmware file: http://groths.org/firmware.php?id=xx replacing xx with the firmware ID, for linking firmwares to other people or when you need to download in Windows.

But there's more. I also created a Comment System, so you can comment on individual firmwares. Reports of success stories or problems will greatly help other people, so commenting is very encouraged.

When you download a firmware or script, you don't have to specify a save location, because everything you download is stored in your Local Download Storage (Application Support/Freya). This helps you keep track of your downloads, because we all know our desktops tend to get a bit cluttered when messing around with firmwares. To view your Local Download Storage, simply press the Downloads toolbar item. A drawer will appear, with tabs to switch between downloaded firmwares and scripts. If you want to remove an item, or import one from outside of Freya, you can use the Add and Remove buttons. If you want to copy something out of the storage, simply drag it out to your desired destination.

You can Upload a firmware or script at any time by the Upload toolbar item. A Drag-n-Drop panel will drop down, allowing .rom, .rb, .applescript or .py files. You may have to change the file extension of your firmware file to .rom. This made implementation slightly easier, but it also makes firmware management more consistent to just use .rom and not .rom / .bin / .nothing.

When you drop a file, Freya will present a new panel where you enter the details of your upload. You give the file a relevant Title and Description, declare what Model of cards it is for, if it is Modified with Mac EFI or just original PC rom, and provide the name of the Author of the file. Note that this field is for Author, not uploader. If you did not make / modify it, you should not put your name here. If you found it on a forum, put the user name of the person who uploaded it. If you don't know who made it, put Anonymous or Unknown. You get the picture. To scavenge netkas / Macrumors for old firmwares and uploading them to Freya is a great way to contribute, but don't try to do it in order to put your name on all of them and look cool. If you did not modify it, put your name in the description instead.

When you're finished, press Done and the firmware will upload to Freya Backend Server, and become available immediately. If it's a script though, it will have to be personally reviewed by me before it becomes publicly available, to prevent any harm to users computers.

I also made sure that all uploads are compared by checksum, to prevent any duplicates.

Then there's the Modify pane. This pane is basically a Hex Editor specifically for firmwares. Together with the Downloads drawer, you can easily and quickly edit any of your firmwares, compare them, and apply Firmware Generating Scripts to them.

The thought is that through uploading scripts to Freya Backend Server, people can share mods and apply them in the Modify tab. Kind of like plugins. Crowdsourced Firmware Alteration Plugins. Ok I'm done with the fancy words. But listen to this:
I made 4870 / 5870 EFI sewing scripts for Zeus. I'm going to upload them to Freya, and people can review them just like firmwares. They will be viewable (source) and so will all other uploaded scripts. This way, people can learn from each others scripts, and some people can create new scripts.

It doesn't have to be just EFI-adding scripts. EFI decompressing, patch-applying, you name it. You invented some great firmware mod, cool. Script it and upload to Freya instead of writing up a guide for it.

This tab is not completed, and support for uploading scripts are not either. I'm going to focus on implementing it in the near future.

There is still much to be done, but I need to focus on some other projects for the moment and I figured since the database is pretty functional I would release an early version of the app.

The app is maintained through automatic updates, which I suggest you turn on since they may be quite frequent.

Btw, all of this is completely FREE .
If you want to, you can donate through Paypal.
I can honestly say that if it weren't for the support and the donations I've recieved, I never would have been motivated to make this. Big thanks to you guys.



Initial Beta release uploaded

http://groths.org/freya/freya.zip

Keep in mind this is an very early release, there are many bugs and stuff not implemented.

Some known bugs:
Not images for all cards
May crash on card select box in Info View
Comments are not sorted by date
Rating not implemented
Buttons on download drawer not implemented
Still some test comments left, will remove them later

and several more. Please report anything else you find though :)

P.S There really is not a good way yet to export firmwares (I will add) but for now you can locate your downloaded firmwares manually in Application Support / Freya / Firmwares


Awesome work. I'm wondering if in the future I would be able to reflash my mobile GPU 6770m on the macbook pro (2012).

----------

Not sure wha you mean by "community behind" but the app & database/server is made by me. But it's not going to be of any use without individual peoples contributions. Just throw any firmwares you can find up there, provided you also put useful description etc. The database will cross compare all uploads by checksum, so there is no risc of uploading duplicates. The topics around here are filled with firmware contributions, and are a good place to scavenge firmwares for this database.

Would be really awesome if you put it on Github / GoogleCode etc so dev's could help out, but I realize if you not comfortable going open source too.
 
Would be really awesome if you put it on Github / GoogleCode etc so dev's could help out, but I realize if you not comfortable going open source too.

Hi, this is a great idea actually! I think Freya is the first project of such magnitude that it can benefit from collaboration. Hence, I will open source Freya. :D

https://github.com/OskarGroth/Freya

I need to go over server access a bit, so noone can tamper with the database :) But in exams right now, so I will do that and initialize the repo during the weekend. Looking forward to any contributions! There is alot to improve!
 
Hi, this is a great idea actually! I think Freya is the first project of such magnitude that it can benefit from collaboration. Hence, I will open source Freya. :D

https://github.com/OskarGroth/Freya

I need to go over server access a bit, so noone can tamper with the database :) But in exams right now, so I will do that and initialize the repo during the weekend. Looking forward to any contributions! There is alot to improve!

What a legend! This is fantastic news. Hope I have time to contribute.

Coincidentally SMCFancontrol's, Hendrik Holtmann just opensourced the project on Github too (https://github.com/hholtmann/smcFanControl)
 
Speaking as that guy who barely understands this stuff, has spent more time than should be necessary trying to figure graphics card option in Mac pros, and have put off trying to upgrade for at least 6 months, Just want to say thank you for the effort you put into helping the community on these forums as well as on netkas, and your own groths site.

It is appreciated Cindori, even by those that don't post often!

edit: and yes, i'm still somewhat confused ;)!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.