LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (http://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Need a utility decompress and recompress Phoenix BIOS on HP notebook. (http://www.linuxquestions.org/questions/linux-hardware-18/need-a-utility-decompress-and-recompress-phoenix-bios-on-hp-notebook-626919/)

r00tb33r 03-10-2008 01:02 AM

Need a utility decompress and recompress Phoenix BIOS on HP notebook.
 
I need to decompress and manually edit a few values in the BIOS image and then recompress it and flash the BIOS. This is done to add my new wireless card to the whitelist.
It is awful of HP to practice hardware whitelists.
The images are in Phoenix WinFlash .wph format.
phoenixdeco does not work with images for my system. Phoenix BIOS Editor does not work with images for my particular systems. HP created classes that are not in the original Phoenix specification and are not interpreted by Phoenix BIOS Editor, and the BIOS is not properly rebuilt because of that.
I just need a simple utility that will decompress the image into separate ROMs by class and then compress them back into the image once I'm done editing.
I really need help with this. For now I have no wireless.
Thanks in advance.

aus9 03-10-2008 08:25 PM

you have not named the model etc but search for Mark Wrightson in this forum post and check the knoppix solution offered.

http://forums11.itrc.hp.com/service/...hreadId=567021

I do not have your hw BTW

r00tb33r 03-15-2008 12:01 PM

Quote:

Originally Posted by aus9 (Post 3084506)
you have not named the model etc but search for Mark Wrightson in this forum post and check the knoppix solution offered.

http://forums11.itrc.hp.com/service/...hreadId=567021

I do not have your hw BTW

Thanks for the reply... The card I have is Atheros, so I guess I would need a tool for an Atheros card, or if ethtool works with it, I would need to know what values to write for this card.
This thread is about BIOS tools, not about writing to EEPROM of wireless cards. I have a 0 reply thread about that which I posted like a week ago.
This thread now has replies so I guess there is no chance I will get a solution.
Thanks anyway.

aus9 03-15-2008 07:32 PM

look I did read your question so felt if you could trick the current bios into thinking your wireless card was one supported by the bios....all would be good.

so, now you no longer have a zero reply post.....why not install virtualbox...or any other emulator...and run PBE from there.....or install wine and see if it works from within your current systems?

However, not that you need me to warn you....but I still will....it looks like you need to care a lot of care
http://www.wimsbios.com/phpBB2/bios-...rams-vf36.html

aus9 03-15-2008 07:38 PM

http://forums.mydigitallife.info/showthread.php?t=172

post 7 is the instruction and post 9 is telling a replier like me....to read the darn post

r00tb33r 03-16-2008 05:36 PM

Quote:

Originally Posted by aus9 (Post 3089901)
look I did read your question so felt if you could trick the current bios into thinking your wireless card was one supported by the bios....all would be good.

so, now you no longer have a zero reply post.....why not install virtualbox...or any other emulator...and run PBE from there.....or install wine and see if it works from within your current systems?

However, not that you need me to warn you....but I still will....it looks like you need to care a lot of care
http://www.wimsbios.com/phpBB2/bios-...rams-vf36.html

Although my BIOS is Phoenix brand, it is modified by HP to the extent that PBE is unable to understand about half of all section classes in it. Basically after rebuilding the BIOS with PBE, the image if you look at it from a HEX editor is almost completely blank. PBE simply omits everything that HP has put in there, and first time I did it, it bricked a motherboard. These boards are $180 so I don't think its such a good idea to try to reproduce that result again. PBE produces such bad image for my machine that it makes BIOS recovery impossible.
So again as my original question states, need some utility that decompresses and recompresses and does nothing else.
Yes, PBE does work with some recent HP notebooks but it does not work with a lot of them.
Thanks for your continued assistance. I'm just about ready to get myself another laptop, although specifications of this one are hard to beat or match, meaning this is about as powerful as they come right now.

aus9 03-16-2008 07:41 PM

ok a forewarning on new pc with phoenix
http://linux.wordpress.com/2007/04/1...-except-vista/

lq search for wph gives an acer post that you may like to read
http://www.linuxquestions.org/questi...?highlight=wph

it mentions uniflash. check out the supported hw
http://www.uniflash.org/hardware.htm


------

a diff slant is linuxbios now called coreboot.
use the links to see if your motherboard and chipset are supported if you wish
http://www.coreboot.org/Welcome_to_coreboot

r00tb33r 03-17-2008 12:26 AM

Quote:

Originally Posted by aus9 (Post 3090742)
ok a forewarning on new pc with phoenix
http://linux.wordpress.com/2007/04/1...-except-vista/

lq search for wph gives an acer post that you may like to read
http://www.linuxquestions.org/questi...?highlight=wph

it mentions uniflash. check out the supported hw
http://www.uniflash.org/hardware.htm


------

a diff slant is linuxbios now called coreboot.
use the links to see if your motherboard and chipset are supported if you wish
http://www.coreboot.org/Welcome_to_coreboot

Nope, thats all in the wrong direction. I can flash just fine with WinFlash. If you read my original post I need to decompress and then, after modifications, recompress the BIOS image. In case you don't understand what that means, modern Phoenix BIOS is much like an archive, different parts of it are compressed in it. Modern Phoenix BIOS images cannot be modified directly because of that, you will not find the code you are looking for. I can't really explain any better what "archive" means.
The output I need from such program is a bunch of files, which all have purpose, ACPI settings, CPU lists, etc, all in separate files, the sum of those files is greater than the size of the image (once again the image is an archive).
One of those files contains the PCI whitelist. I've looked at the part of code in the PBE temporary files, I see it, I modify it. Too bad PBE can't put my BIOS back together even if I don't modify anything.
I know what uniflash is, its just a universal flasher. Too bad it does not perform compression operations.
I've been at this for about a month now... So unless there is an expert on Phoenix BIOSes on this forum it might be time to call it quits.
Theres a cross platform program called PhoenixDeco. It does decompression. It doesn't work. At least it doesn't interpret the image for my machine. Not surprising considering the PBE result. I guess HP won this round.
I've spent quite a few hours on the line with their support and I finally got their lame excuse for the whitelist. "We discourage the end user from installing non-approved devices that could potentially damage their system."
I guess I'm going to start looking for a new laptop now.
Looking for something of Intel dual core and nVidia video card with 256mb+ non-shared.
Current specs:
Intel Core Duo 1.73GHz
1GB DDR2 667Mhz
nVidia GeForce Go 7600 256mb, onboard non-shared
two 120GB SATA hard drives (yes, two, in a laptop)
Lightscribe DVD-RAM
17" widescreen 1440x900
full keyboard, with the number pad
It weighs like those desktop replacement class laptops, but its a lot slimmer.
Tough to find something matching... nVidia is a must, I've had too many issues with ATI linux drivers.

aus9 03-17-2008 03:19 AM

hmmmm, can you upload your wph to a file sharing site so others can have a peek?

I realise you have done a lot of research your self and I have just googled.

1) how about archive unpackers unzip and zip to repack?

2) or cabextract?
http://www.cabextract.org.uk/

I am not sure but it may unpack wph according to this
http://209.85.175.104/linux?q=cache:...lnk&cd=1&gl=au

3) ms product Phlash16.exe
http://209.85.175.104/search?q=cache...lnk&cd=3&gl=au

r00tb33r 03-17-2008 06:45 PM

Quote:

Originally Posted by aus9 (Post 3091050)
hmmmm, can you upload your wph to a file sharing site so others can have a peek?

I realise you have done a lot of research your self and I have just googled.

1) how about archive unpackers unzip and zip to repack?

2) or cabextract?
http://www.cabextract.org.uk/

I am not sure but it may unpack wph according to this
http://209.85.175.104/linux?q=cache:...lnk&cd=1&gl=au

3) ms product Phlash16.exe
http://209.85.175.104/search?q=cache...lnk&cd=3&gl=au

The latest image for my machine, the one I'm working with:
http://rapidshare.com/files/100342685/Bios.wph.html

Phlash16.exe = WinFlash = WinPhlash, all names for the Phoenix flasher program. This is what I use to flash the BIOS. It does nothing else.
Phlash16.exe is the 16bit version is for use with DOS based BIOS recovery diskette, only functions with certain flavours of DOS.

I didn't mean for you to understand me literally, the BIOS image is not a common archive we use but similar in a way. No unfortunately cabextract does not work with Phoenix BIOS images.

PhoenixDeco is the tool intended for this, but it doesn't work with the HP image for some reason. And afterwards I still have to have a tool that puts it all back together.

Electro 03-17-2008 08:37 PM

I doubt Phoenix and other BIOS manufactures will or are creating Windows dependent BIOS. These BIOS manufactures creates a BIOS framework or skeleton for motherboard developers to modify and tweak. If HP is doing what you are saying, you are paranoid. I think the new hardware should work just fine in Linux, but may not work in Windows because how Linux can get around problems in the BIOS.

Putting a wireless NIC in a computer introduces RF interference. Not all wireless NIC have good enough shielding, so it is more likely that HP is doing you a favor. Also the antenna may not match. You will lose efficiency and create over heat problems of the NIC when the RF antenna does not have the correct impedance that the card uses. I suggest use a PCMCIA (Cardbus) or ExpressCard to upgrade the wirless NIC. I have Intel 3945 WiFi NIC that connected internally and I am planning for future WiFi upgrades is to use a ExpressCard.

I suggest backup the notebook BIOS and find if coreboot or LinuxBIOS supports your hardware (Northbridge, Southbridghe, Super I/O, etc). If the chip that contains the BIOS can be removed, replace it with an upgrade version that can store more data.

IMHO, rapidshare sucks for sharing data. Use something better like mediamax.

unSpawn 03-17-2008 09:46 PM

... and if you love the smell of burning stuff in the morning you could try http://www.richud.com/HP-Pavilion-104-Bios-Fix/ or http://joshuawise.com/Wireless-Whitelist.html

aus9 03-18-2008 02:12 AM

unSpawn, I love the smell of napalm in the morning

woohoo unSpawn to the rescue.

r00tb33r 03-18-2008 04:46 AM

Quote:

Originally Posted by unSpawn (Post 3092128)
... and if you love the smell of burning stuff in the morning you could try http://www.richud.com/HP-Pavilion-104-Bios-Fix/ or http://joshuawise.com/Wireless-Whitelist.html

I've encountered both articles before. The first method bricked a $180 board for me, as my system is too recent for all the tools available. Recovery was impossible in this particular case.

The second method is for mini PCI and I have mini PCI Express. There is probably a pin to do that as well but I do not like the idea of having to flip a switch every time I reboot... As this is a laptop, I use hibernate feature of both linux and windows. Hibernation envolves a complete shutdown and a boot. So every time I close and open the laptop I would have to hit the switch, or else encounter the 104.

Sadly neither solve my problem.

r00tb33r 03-18-2008 05:01 AM

Quote:

Originally Posted by Electro (Post 3092067)
I doubt Phoenix and other BIOS manufactures will or are creating Windows dependent BIOS. These BIOS manufactures creates a BIOS framework or skeleton for motherboard developers to modify and tweak. If HP is doing what you are saying, you are paranoid. I think the new hardware should work just fine in Linux, but may not work in Windows because how Linux can get around problems in the BIOS.

Putting a wireless NIC in a computer introduces RF interference. Not all wireless NIC have good enough shielding, so it is more likely that HP is doing you a favor. Also the antenna may not match. You will lose efficiency and create over heat problems of the NIC when the RF antenna does not have the correct impedance that the card uses. I suggest use a PCMCIA (Cardbus) or ExpressCard to upgrade the wirless NIC. I have Intel 3945 WiFi NIC that connected internally and I am planning for future WiFi upgrades is to use a ExpressCard.

I suggest backup the notebook BIOS and find if coreboot or LinuxBIOS supports your hardware (Northbridge, Southbridghe, Super I/O, etc). If the chip that contains the BIOS can be removed, replace it with an upgrade version that can store more data.

IMHO, rapidshare sucks for sharing data. Use something better like mediamax.

I wish I was paranoid. For now I am someone who gets a post code because I insert a wireless card that HP did not approve. Recent HP laptops like mine do not boot at all when code 104 is encountered. unSpawn posted a link to the article that shows the code on the screen and a screenshot of BIOS code where HP buried the whitelist.
Now I found those as well, and I change the IDs to those of my Atheros card, however there is no tool that can assemble my BIOS back together, and the only way I can get it apart with is PBE which does not understand some things in this BIOS.

Now this might sound crazy and reckless to you, but I did in fact insert the card while the system was in standby, and guess what? It works. So its just the BIOS whitelist check thats the issue.

I would really appreciate if someone could help me out at decompressing the BIOS image and putting it back together.
I still have a lot of hope left.

Thanks everyone for your support so far.

PS I think those alternative BIOS solutions are a bit of a long shot. I am an advanced user but not quite that hardcore. After all one board is already bricked.
Lets try to do it in a less intrusive way for now.

*EDIT*
The BIOS chip is really just an SST 1Mbyte flash chip. Its a 40 pin TSOP/SOP package and I haven't found a single BIOS service in continental USA that programs those.(I did find a chinese dude in Canada that does it though) Everyone does 32 pin chips. Just thought I throw it out there. 1Mbyte would probably be enough for pretty much any BIOS solution though.


All times are GMT -5. The time now is 03:27 AM.